v3 / utils /helpers /__init__.py
EGYADMIN's picture
Upload 115 files
82676b8 verified
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""حزمة المساعدات العامة المستخدمة في النظام"""
import streamlit as st
import pandas as pd
import numpy as np
import os
import sqlite3
from .utils import (
create_directory_if_not_exists,
get_data_folder,
format_time,
get_user_info,
load_css,
render_credits,
load_icons,
format_number,
format_currency,
styled_button,
filter_dataframe,
get_file_extension,
extract_numbers_from_text
)
def get_connection():
"""
إنشاء اتصال وهمي لقاعدة البيانات للاستخدام عند عدم توفر اتصال PostgreSQL
الإرجاع:
اتصال وهمي لقاعدة البيانات
"""
# إنشاء مجلد البيانات إذا لم يكن موجوداً
data_dir = os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))), 'data')
os.makedirs(data_dir, exist_ok=True)
# إنشاء اتصال قاعدة بيانات SQLite محلية
db_path = os.path.join(data_dir, 'local_db.sqlite')
conn = sqlite3.connect(db_path)
# إعادة محاكاة سلوك اتصال PostgreSQL
conn.execute = conn.cursor().execute
# إضافة وظيفة وهمية للاقتطاع (commit) والإغلاق
original_close = conn.close
def enhanced_close():
conn.commit()
original_close()
conn.close = enhanced_close
return conn
__all__ = [
'create_directory_if_not_exists',
'get_data_folder',
'format_time',
'get_user_info',
'load_css',
'render_credits',
'load_icons',
'format_number',
'format_currency',
'styled_button',
'filter_dataframe',
'get_file_extension',
'extract_numbers_from_text',
'get_connection'
]