EGYADMIN commited on
Commit
740a11b
·
verified ·
1 Parent(s): 9ec1864

Update utils/components/sidebar.py

Browse files
Files changed (1) hide show
  1. utils/components/sidebar.py +91 -91
utils/components/sidebar.py CHANGED
@@ -1,92 +1,92 @@
1
- """
2
- مكون الشريط الجانبي
3
- """
4
-
5
- import streamlit as st
6
- from datetime import datetime
7
- import config
8
- from streamlit_option_menu import option_menu
9
-
10
-
11
- def render_sidebar():
12
- """
13
- عرض وإدارة الشريط الجانبي
14
-
15
- الإرجاع:
16
- اسم الوحدة المحددة
17
- """
18
- with st.sidebar:
19
- st.image("static/images/logo.png", width=150)
20
-
21
- # إنشاء قائمة الخيارات باستخدام مكتبة streamlit_option_menu
22
- selected_module = option_menu(
23
- "نظام العقود والمناقصات",
24
- [
25
- "الرئيسية",
26
- "إدارة المشاريع",
27
- "التسعير المتكاملة",
28
- "الموارد والتكاليف",
29
- "تحليل المستندات",
30
- "تحليل المخاطر",
31
- "التقارير والتحليلات",
32
- "المساعد الذكي"
33
- ],
34
- icons=[
35
- 'house-fill',
36
- 'folder-fill',
37
- 'calculator-fill',
38
- 'tools',
39
- 'file-earmark-text-fill',
40
- 'exclamation-triangle-fill',
41
- 'bar-chart-fill',
42
- 'robot'
43
- ],
44
- menu_icon="cast",
45
- default_index=0,
46
- styles={
47
- "container": {"padding": "5px", "background-color": "#f0f2f6", "direction": "rtl"},
48
- "icon": {"color": "orange", "font-size": "18px"},
49
- "nav-link": {"font-size": "14px", "text-align": "right", "margin": "0px"},
50
- "nav-link-selected": {"background-color": "#ff9a3c"},
51
- }
52
- )
53
-
54
- # إضافة فاصل
55
- st.markdown("---")
56
-
57
- # إضافة معلومات المشروع الحالي
58
- if 'current_project' in st.session_state and st.session_state.current_project:
59
- project = st.session_state.current_project
60
-
61
- st.markdown("### المشروع الحالي")
62
- st.markdown(f"**{project['name']}**")
63
- st.markdown(f"رقم المناقصة: {project['number']}")
64
- st.markdown(f"الجهة المالكة: {project['client']}")
65
-
66
- # إضافة زر للتبديل بين المشاريع
67
- if st.button("تبديل المشروع"):
68
- # لتنفيذ في مرحلة لاحقة
69
- pass
70
-
71
- # إضافة معلومات المستخدم
72
- if 'user_info' in st.session_state and st.session_state.user_info:
73
- user = st.session_state.user_info
74
-
75
- st.markdown("---")
76
- st.markdown("### معلومات المستخدم")
77
- st.markdown(f"**{user['full_name']}**")
78
- st.markdown(f"الدور: {user['role']}")
79
-
80
- # إضافة زر لتسجيل الخروج
81
- if st.button("تسجيل الخروج"):
82
- st.session_state.is_authenticated = False
83
- st.session_state.user_info = None
84
- st.rerun()
85
-
86
- # إضافة معلومات النسخة
87
- st.markdown("---")
88
- st.markdown(f"الإصدار: 1.0.0")
89
- st.markdown(f"تاريخ الإصدار: 2025-03-15")
90
- st.markdown(f"© 2025 شركة شبه الجزيرة للمقاولات")
91
-
92
  return selected_module
 
1
+ """
2
+ مكون الشريط الجانبي
3
+ """
4
+
5
+ import streamlit as st
6
+ from datetime import datetime
7
+ import config
8
+ from streamlit_option_menu import option_menu
9
+
10
+
11
+ def render_sidebar():
12
+ """
13
+ عرض وإدارة الشريط الجانبي
14
+
15
+ الإرجاع:
16
+ اسم الوحدة المحددة
17
+ """
18
+ with st.sidebar:
19
+ st.image("static/images/logo.png", width=250)
20
+
21
+ # إنشاء قائمة الخيارات باستخدام مكتبة streamlit_option_menu
22
+ selected_module = option_menu(
23
+ "نظام العقود والمناقصات",
24
+ [
25
+ "الرئيسية",
26
+ "إدارة المشاريع",
27
+ "التسعير المتكاملة",
28
+ "الموارد والتكاليف",
29
+ "تحليل المستندات",
30
+ "تحليل المخاطر",
31
+ "التقارير والتحليلات",
32
+ "المساعد الذكي"
33
+ ],
34
+ icons=[
35
+ 'house-fill',
36
+ 'folder-fill',
37
+ 'calculator-fill',
38
+ 'tools',
39
+ 'file-earmark-text-fill',
40
+ 'exclamation-triangle-fill',
41
+ 'bar-chart-fill',
42
+ 'robot'
43
+ ],
44
+ menu_icon="cast",
45
+ default_index=0,
46
+ styles={
47
+ "container": {"padding": "5px", "background-color": "#f0f2f6", "direction": "rtl"},
48
+ "icon": {"color": "orange", "font-size": "18px"},
49
+ "nav-link": {"font-size": "14px", "text-align": "right", "margin": "0px"},
50
+ "nav-link-selected": {"background-color": "#ff9a3c"},
51
+ }
52
+ )
53
+
54
+ # إضافة فاصل
55
+ st.markdown("---")
56
+
57
+ # إضافة معلومات المشروع الحالي
58
+ if 'current_project' in st.session_state and st.session_state.current_project:
59
+ project = st.session_state.current_project
60
+
61
+ st.markdown("### المشروع الحالي")
62
+ st.markdown(f"**{project['name']}**")
63
+ st.markdown(f"رقم المناقصة: {project['number']}")
64
+ st.markdown(f"الجهة المالكة: {project['client']}")
65
+
66
+ # إضافة زر للتبديل بين المشاريع
67
+ if st.button("تبديل المشروع"):
68
+ # لتنفيذ في مرحلة لاحقة
69
+ pass
70
+
71
+ # إضافة معلومات المستخدم
72
+ if 'user_info' in st.session_state and st.session_state.user_info:
73
+ user = st.session_state.user_info
74
+
75
+ st.markdown("---")
76
+ st.markdown("### معلومات المستخدم")
77
+ st.markdown(f"**{user['full_name']}**")
78
+ st.markdown(f"الدور: {user['role']}")
79
+
80
+ # إضافة زر لتسجيل الخروج
81
+ if st.button("تسجيل الخروج"):
82
+ st.session_state.is_authenticated = False
83
+ st.session_state.user_info = None
84
+ st.rerun()
85
+
86
+ # إضافة معلومات النسخة
87
+ st.markdown("---")
88
+ st.markdown(f"الإصدار: 1.0.0")
89
+ st.markdown(f"تاريخ الإصدار: 2025-03-15")
90
+ st.markdown(f"© 2025 شركة شبه الجزيرة للمقاولات")
91
+
92
  return selected_module