Update app.py
Browse files
app.py
CHANGED
|
@@ -1114,15 +1114,17 @@ def get_column_config(df):
|
|
| 1114 |
"""Generera kolumnkonfiguration för data_editor med beskrivningar och dropdowns"""
|
| 1115 |
config = {}
|
| 1116 |
|
| 1117 |
-
# Beskrivningar för editerbara kolumner
|
|
|
|
|
|
|
| 1118 |
editable_descriptions = {
|
| 1119 |
-
'Namn': 'Huvudkontaktperson för detta område. Personen vi kontaktar vid frågor eller problem.',
|
| 1120 |
-
'Email adress': 'Ange individuell e-postadress till kontaktpersonen för detta område.',
|
| 1121 |
-
'Telefon': 'Telefonnummer till huvudkontaktpersonen. Format: +46XXXXXXXXX eller 07X-XXXXXXX',
|
| 1122 |
-
'Tillgänglighet': 'Välj i dropdown-menyn om detta är ett område som vi alltid kan komma åt, eller om det är stängt. Om det är stängt var vänlig fyll i fältet Access info.',
|
| 1123 |
-
'Access info': 'Om området inte alltid är tillgängligt, vänligen ange hur vi kan få tillgång. T.ex. "Nycklar finns i receptionen" eller "Ring Pelle på 07XXXXXXXX när ni är på gång".',
|
| 1124 |
-
'Fritext meddelande': 'Övrig information eller meddelanden som är viktiga för oss att veta.',
|
| 1125 |
-
'Main Contact': 'Ange om denna person är huvudansvarig för kontot. Välj "Huvudkontakt" för helst endast en person per företag.'
|
| 1126 |
}
|
| 1127 |
|
| 1128 |
# Beskrivningar för readonly kolumner
|
|
@@ -1146,7 +1148,7 @@ def get_column_config(df):
|
|
| 1146 |
if col == 'Tillgänglighet':
|
| 1147 |
# Dropdown för tillgänglighet
|
| 1148 |
config[col] = st.column_config.SelectboxColumn(
|
| 1149 |
-
col,
|
| 1150 |
help=editable_descriptions.get(col, ''),
|
| 1151 |
width="medium",
|
| 1152 |
options=[
|
|
@@ -1158,7 +1160,7 @@ def get_column_config(df):
|
|
| 1158 |
elif col == 'Main Contact':
|
| 1159 |
# Dropdown för huvudkontakt
|
| 1160 |
config[col] = st.column_config.SelectboxColumn(
|
| 1161 |
-
col,
|
| 1162 |
help=editable_descriptions.get(col, ''),
|
| 1163 |
width="medium",
|
| 1164 |
options=[
|
|
@@ -1170,7 +1172,7 @@ def get_column_config(df):
|
|
| 1170 |
else:
|
| 1171 |
# Vanlig textkolumn
|
| 1172 |
config[col] = st.column_config.TextColumn(
|
| 1173 |
-
col,
|
| 1174 |
help=editable_descriptions.get(col, ''),
|
| 1175 |
width="medium",
|
| 1176 |
required=False
|
|
@@ -1207,6 +1209,31 @@ st.markdown("""
|
|
| 1207 |
padding-bottom: 0rem;
|
| 1208 |
}
|
| 1209 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1210 |
.excel-info-box {
|
| 1211 |
background-color: #E3F2FD;
|
| 1212 |
border-left: 4px solid #2196F3;
|
|
@@ -1841,17 +1868,17 @@ else:
|
|
| 1841 |
st.markdown(f"*...och {len(visible_readonly) - 15} fält till*")
|
| 1842 |
|
| 1843 |
with col_help2:
|
| 1844 |
-
st.markdown("####
|
| 1845 |
-
st.markdown("Dessa fält
|
| 1846 |
visible_editable = [col for col in EDITABLE_COLUMNS if col not in HIDDEN_COLUMNS]
|
| 1847 |
for col in visible_editable:
|
| 1848 |
if col in company_areas.columns:
|
| 1849 |
-
st.markdown(f"•
|
| 1850 |
|
| 1851 |
# Huvudtabell
|
| 1852 |
st.markdown("## 📊 Dataöversikt")
|
| 1853 |
st.markdown("""
|
| 1854 |
-
Kolumner med **
|
| 1855 |
|
| 1856 |
**Kontrollera att uppgifterna i låsta celler stämmer.** Om något verkar fel, mejla till [migration@chargenode.eu](mailto:migration@chargenode.eu) så hjälper vi dig.
|
| 1857 |
""")
|
|
|
|
| 1114 |
"""Generera kolumnkonfiguration för data_editor med beskrivningar och dropdowns"""
|
| 1115 |
config = {}
|
| 1116 |
|
| 1117 |
+
# Beskrivningar för editerbara kolumner - med gemensam suffix
|
| 1118 |
+
base_suffix = "\n\n🔺 Vänligen fyll i detta fält. Data uppdateras automatiskt."
|
| 1119 |
+
|
| 1120 |
editable_descriptions = {
|
| 1121 |
+
'Namn': 'Huvudkontaktperson för detta område. Personen vi kontaktar vid frågor eller problem.' + base_suffix,
|
| 1122 |
+
'Email adress': 'Ange individuell e-postadress till kontaktpersonen för detta område.' + base_suffix,
|
| 1123 |
+
'Telefon': 'Telefonnummer till huvudkontaktpersonen. Format: +46XXXXXXXXX eller 07X-XXXXXXX' + base_suffix,
|
| 1124 |
+
'Tillgänglighet': 'Välj i dropdown-menyn om detta är ett område som vi alltid kan komma åt, eller om det är stängt. Om det är stängt var vänlig fyll i fältet Access info.' + base_suffix,
|
| 1125 |
+
'Access info': 'Om området inte alltid är tillgängligt, vänligen ange hur vi kan få tillgång. T.ex. "Nycklar finns i receptionen" eller "Ring Pelle på 07XXXXXXXX när ni är på gång".' + base_suffix,
|
| 1126 |
+
'Fritext meddelande': 'Övrig information eller meddelanden som är viktiga för oss att veta.' + base_suffix,
|
| 1127 |
+
'Main Contact': 'Ange om denna person är huvudansvarig för kontot. Välj "Huvudkontakt" för helst endast en person per företag.' + base_suffix
|
| 1128 |
}
|
| 1129 |
|
| 1130 |
# Beskrivningar för readonly kolumner
|
|
|
|
| 1148 |
if col == 'Tillgänglighet':
|
| 1149 |
# Dropdown för tillgänglighet
|
| 1150 |
config[col] = st.column_config.SelectboxColumn(
|
| 1151 |
+
f"🔺 {col}",
|
| 1152 |
help=editable_descriptions.get(col, ''),
|
| 1153 |
width="medium",
|
| 1154 |
options=[
|
|
|
|
| 1160 |
elif col == 'Main Contact':
|
| 1161 |
# Dropdown för huvudkontakt
|
| 1162 |
config[col] = st.column_config.SelectboxColumn(
|
| 1163 |
+
f"🔺 {col}",
|
| 1164 |
help=editable_descriptions.get(col, ''),
|
| 1165 |
width="medium",
|
| 1166 |
options=[
|
|
|
|
| 1172 |
else:
|
| 1173 |
# Vanlig textkolumn
|
| 1174 |
config[col] = st.column_config.TextColumn(
|
| 1175 |
+
f"🔺 {col}",
|
| 1176 |
help=editable_descriptions.get(col, ''),
|
| 1177 |
width="medium",
|
| 1178 |
required=False
|
|
|
|
| 1209 |
padding-bottom: 0rem;
|
| 1210 |
}
|
| 1211 |
|
| 1212 |
+
/* Röd triangel-indikator för editerbara kolumner */
|
| 1213 |
+
/* Lägger till en röd triangel i övre högra hörnet av editerbara kolumnrubriker */
|
| 1214 |
+
[data-testid="stDataFrame"] thead th:not([aria-label*="🔒"]) {
|
| 1215 |
+
position: relative;
|
| 1216 |
+
background-color: #FFF9F0 !important;
|
| 1217 |
+
}
|
| 1218 |
+
|
| 1219 |
+
[data-testid="stDataFrame"] thead th:not([aria-label*="🔒"])::after {
|
| 1220 |
+
content: "";
|
| 1221 |
+
position: absolute;
|
| 1222 |
+
top: 0;
|
| 1223 |
+
right: 0;
|
| 1224 |
+
width: 0;
|
| 1225 |
+
height: 0;
|
| 1226 |
+
border-style: solid;
|
| 1227 |
+
border-width: 0 15px 15px 0;
|
| 1228 |
+
border-color: transparent #DC3545 transparent transparent;
|
| 1229 |
+
z-index: 10;
|
| 1230 |
+
}
|
| 1231 |
+
|
| 1232 |
+
/* Hover-effekt för editerbara kolumner */
|
| 1233 |
+
[data-testid="stDataFrame"] thead th:not([aria-label*="🔒"]):hover {
|
| 1234 |
+
background-color: #FFF3E0 !important;
|
| 1235 |
+
}
|
| 1236 |
+
|
| 1237 |
.excel-info-box {
|
| 1238 |
background-color: #E3F2FD;
|
| 1239 |
border-left: 4px solid #2196F3;
|
|
|
|
| 1868 |
st.markdown(f"*...och {len(visible_readonly) - 15} fält till*")
|
| 1869 |
|
| 1870 |
with col_help2:
|
| 1871 |
+
st.markdown("#### 🔺 Editerbara fält")
|
| 1872 |
+
st.markdown("Dessa fält har **🔺 (röd triangel)** i kolumnrubriken och kan redigeras. Håll muspekaren över kolumnnamnet för att se detaljerad hjälptext:")
|
| 1873 |
visible_editable = [col for col in EDITABLE_COLUMNS if col not in HIDDEN_COLUMNS]
|
| 1874 |
for col in visible_editable:
|
| 1875 |
if col in company_areas.columns:
|
| 1876 |
+
st.markdown(f"• 🔺 {col}")
|
| 1877 |
|
| 1878 |
# Huvudtabell
|
| 1879 |
st.markdown("## 📊 Dataöversikt")
|
| 1880 |
st.markdown("""
|
| 1881 |
+
Kolumner med **🔺** (röd triangel) är editerbara - klicka i fälten för att fylla i eller redigera. Kolumner med **🔒** (gult hänglås) kan inte editeras. **Ändringar sparas automatiskt.**
|
| 1882 |
|
| 1883 |
**Kontrollera att uppgifterna i låsta celler stämmer.** Om något verkar fel, mejla till [migration@chargenode.eu](mailto:migration@chargenode.eu) så hjälper vi dig.
|
| 1884 |
""")
|