File size: 3,621 Bytes
597fb2d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83

import streamlit as st


HEADERS_MAPPING = {
    "إغاثة" : "Rescue | إغاثة | Secours",
    "مساعدة طبية": "Medical Assistance | مساعدة طبية | Assistance médicale",
    "مأوى": "Shelter | مأوى | Abri",
    "طعام وماء": "Food & Water | طعام وماء | Nourriture et eau",
    "مخاطر (تسرب الغاز، تلف في الخدمات العامة...)": "Danger | مخاطر | Danger",
}


def show_requests_filters():
    options = [
        "إغاثة",
        "مساعدة طبية",
        "مأوى",
        "طعام وماء",
        "مخاطر (تسرب الغاز، تلف في الخدمات العامة...)",
    ]
    selected_options = []

    col1, col2 = st.columns([1, 1])
    with col1:
        show_unverified = st.checkbox(
            "Display unverified requests / عرض الطلبات غير المؤكدة / Afficher les demandes non vérifiées",
            value=False,
        )
    with col2:
        show_interventions = st.checkbox(
            "Display Interventions | Afficher les interventions | عرض عمليات المساعدة",
            value=True,
        )

    st.markdown("👉 **Choose request type | Choissisez le type de demande | اختر نوع الطلب**")
    col1, col2, col3, col4, col5 = st.columns([2, 4, 2, 3, 2])
    cols = [col1, col2, col3, col4, col5]

    for i, option in enumerate(options):
        checked = cols[i].checkbox(HEADERS_MAPPING[option], value=True)
        if checked:
            selected_options.append(option)
    
    return selected_options, options, show_unverified, show_interventions

def show_interventions_filters():
    st.markdown(
        "👉 **State of villages visited by NGOs| Etat de villages visités par les ONGs | وضعية القرى التي زارتها الجمعيات**",
        unsafe_allow_html=True,
    )
    col_1, col_2, col_3 = st.columns([1, 1, 1])
    critical_villages = col_1.checkbox(
        "🚨 Critical, in urgent need of help / وضع حرج، في حاجة عاجلة للمساعدة",
        value=True,
    )
    partially_satisfied_villages = col_2.checkbox(
        "⚠️ Partially served / مساعدة جزئية، بحاجة للمزيد من التدخلات",
        value=True,
    )
    fully_satisfied_villages = col_3.checkbox(
        "✅ Fully served  / تمت المساعدة بشكل كامل",
        value=True,
    )
    selected_village_types = []
    if critical_villages:
        selected_village_types.append("🚨 Critical, in urgent need of help / وضع حرج، في حاجة عاجلة للمساعدة")

    if partially_satisfied_villages:
        selected_village_types.append("⚠️ Partially served / مساعدة جزئية، بحاجة للمزيد من التدخلات")

    if fully_satisfied_villages:
        selected_village_types.append("✅ Fully served  / تمت المساعدة بشكل كامل")

    status_mapping = {
        "🚨 Critical, in urgent need of help / وضع حرج، في حاجة عاجلة للمساعدة": "Critique, Besoin d'aide en urgence / Critical, in urgent need of help",
        "⚠️ Partially served / مساعدة جزئية، بحاجة للمزيد من التدخلات": "Partiellement satisfait / Partially Served",
        "✅ Fully served  / تمت المساعدة بشكل كامل": "Entièrement satisfait / Fully served",
    }
    selected_statuses = [status_mapping[status] for status in selected_village_types]

    return selected_statuses, critical_villages, partially_satisfied_villages, fully_satisfied_villages