mtornani Claude Sonnet 4.6 commited on
Commit
393c8e2
·
1 Parent(s): cc445f8

Italianize terminology: board → direttivo across all display labels

Browse files

Labels only — stored values (role='board', URL params, JS vars) unchanged
to preserve existing questionnaire data.

Changes:
- questionnaire_index.html: title, subtitle, ruolo option label
- club_hub.html: meta, invite section, completion gauge
- dashboard_hybrid.html: hero text, card headers
- questionnaire_schema.py: docstring

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

questionnaire_schema.py CHANGED
@@ -1,6 +1,6 @@
1
  """
2
  Schema questionari Rooting Future.
3
- Struttura dati per i form digitali compilati dal Board.
4
  Ogni questionario corrisponde a un DOCX originale.
5
  """
6
 
 
1
  """
2
  Schema questionari Rooting Future.
3
+ Struttura dati per i form digitali compilati dal Direttivo.
4
  Ogni questionario corrisponde a un DOCX originale.
5
  """
6
 
templates/club_hub.html CHANGED
@@ -224,7 +224,7 @@
224
  {% if profile and profile.sede %}
225
  <span class="club-meta-item">📍 {{ profile.sede }}</span>
226
  {% endif %}
227
- <span class="club-meta-item">👥 {{ member_count }} membro/i nel board</span>
228
  <span class="club-meta-item">📝 {{ total_q_filled }}/{{ total_q_possible }} questionari completati</span>
229
  </div>
230
  </div>
@@ -241,7 +241,7 @@
241
  <h3>🚀 Genera Piano Strategico</h3>
242
  <p>
243
  {% if total_q_filled == 0 %}
244
- Nessun questionario completato. Invita i membri del board.
245
  {% elif total_q_filled < 3 %}
246
  {{ total_q_filled }} questionari compilati — puoi già generare o raccogliere più risposte.
247
  {% else %}
@@ -269,7 +269,7 @@
269
  <div class="gauge">
270
  {% set pct = (total_q_filled / total_q_possible * 100) | int if total_q_possible > 0 else 0 %}
271
  <div class="gauge-label">
272
- <span>Completamento board</span>
273
  <span>{{ pct }}%</span>
274
  </div>
275
  <div class="gauge-bar"><div class="gauge-fill" style="width: {{ pct }}%"></div></div>
@@ -303,9 +303,9 @@
303
  <div style="display: flex; flex-direction: column; gap: 1rem;">
304
  <!-- Invite -->
305
  <div class="section-card">
306
- <h2>🔗 Link Invito Board</h2>
307
  <p style="font-size: 0.85rem; color: var(--text-muted); margin-bottom: 0.75rem;">
308
- Condividi con i membri del board per raccogliere le loro risposte ai questionari.
309
  </p>
310
  <div class="invite-box">
311
  <div class="invite-label">Link questionari</div>
 
224
  {% if profile and profile.sede %}
225
  <span class="club-meta-item">📍 {{ profile.sede }}</span>
226
  {% endif %}
227
+ <span class="club-meta-item">👥 {{ member_count }} membro/i nel direttivo</span>
228
  <span class="club-meta-item">📝 {{ total_q_filled }}/{{ total_q_possible }} questionari completati</span>
229
  </div>
230
  </div>
 
241
  <h3>🚀 Genera Piano Strategico</h3>
242
  <p>
243
  {% if total_q_filled == 0 %}
244
+ Nessun questionario completato. Invita i dirigenti del club.
245
  {% elif total_q_filled < 3 %}
246
  {{ total_q_filled }} questionari compilati — puoi già generare o raccogliere più risposte.
247
  {% else %}
 
269
  <div class="gauge">
270
  {% set pct = (total_q_filled / total_q_possible * 100) | int if total_q_possible > 0 else 0 %}
271
  <div class="gauge-label">
272
+ <span>Completamento direttivo</span>
273
  <span>{{ pct }}%</span>
274
  </div>
275
  <div class="gauge-bar"><div class="gauge-fill" style="width: {{ pct }}%"></div></div>
 
303
  <div style="display: flex; flex-direction: column; gap: 1rem;">
304
  <!-- Invite -->
305
  <div class="section-card">
306
+ <h2>🔗 Link Invito Direttivo</h2>
307
  <p style="font-size: 0.85rem; color: var(--text-muted); margin-bottom: 0.75rem;">
308
+ Condividi con i dirigenti del club per raccogliere le loro risposte ai questionari.
309
  </p>
310
  <div class="invite-box">
311
  <div class="invite-label">Link questionari</div>
templates/dashboard_hybrid.html CHANGED
@@ -370,11 +370,11 @@
370
  <div class="hero-top">
371
  <div>
372
  <h2>🏟️ Club Hub — Flusso Digitale</h2>
373
- <p>Raccogli le risposte del board tramite questionari digitali, poi genera il piano strategico con un click.</p>
374
  <div class="hero-badges">
375
  <span class="badge badge-green">✓ Questionari digitali</span>
376
  <span class="badge badge-blue">✓ Multi-agente AI</span>
377
- <span class="badge badge-amber">{{ q_filled_count }} risposte raccolte</span>
378
  </div>
379
  </div>
380
  <div class="hero-actions">
@@ -399,7 +399,7 @@
399
  <div class="grid2">
400
  <!-- Questionari overview -->
401
  <div class="card">
402
- <div class="card-h">📋 Questionari</div>
403
  <div class="q-list">
404
  {% set q_icons = [
405
  ('identita', '🏟️', 'Identità Club'),
@@ -417,7 +417,7 @@
417
  {% endfor %}
418
  </div>
419
  <div style="margin-top:0.875rem;">
420
- <div class="card-h" style="margin-bottom:0.5rem;">🔗 Link invito board</div>
421
  <div class="invite-row">
422
  <div class="invite-url" id="inviteUrl">{{ request.host_url }}questionnaires</div>
423
  <button class="btn btn-ghost btn-sm" onclick="copyInvite()">📋</button>
 
370
  <div class="hero-top">
371
  <div>
372
  <h2>🏟️ Club Hub — Flusso Digitale</h2>
373
+ <p>Raccogli le risposte del direttivo tramite questionari digitali, poi genera il piano strategico con un click.</p>
374
  <div class="hero-badges">
375
  <span class="badge badge-green">✓ Questionari digitali</span>
376
  <span class="badge badge-blue">✓ Multi-agente AI</span>
377
+ <span class="badge badge-amber">{{ q_filled_count }} questionari compilati</span>
378
  </div>
379
  </div>
380
  <div class="hero-actions">
 
399
  <div class="grid2">
400
  <!-- Questionari overview -->
401
  <div class="card">
402
+ <div class="card-h">📋 Questionari Direttivo</div>
403
  <div class="q-list">
404
  {% set q_icons = [
405
  ('identita', '🏟️', 'Identità Club'),
 
417
  {% endfor %}
418
  </div>
419
  <div style="margin-top:0.875rem;">
420
+ <div class="card-h" style="margin-bottom:0.5rem;">🔗 Link invito direttivo</div>
421
  <div class="invite-row">
422
  <div class="invite-url" id="inviteUrl">{{ request.host_url }}questionnaires</div>
423
  <button class="btn btn-ghost btn-sm" onclick="copyInvite()">📋</button>
templates/questionnaire_index.html CHANGED
@@ -3,7 +3,7 @@
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Questionari Board - Rooting Future</title>
7
  <link rel="manifest" href="/static/manifest.json">
8
  <meta name="theme-color" content="#1a365d">
9
  <style>
@@ -83,7 +83,7 @@
83
  <body>
84
  <div class="header">
85
  <h1>🌱 Rooting Future</h1>
86
- <p>Questionari Strategici per il Board</p>
87
  <div style="margin-top: 10px; display: flex; gap: 8px; justify-content: center; flex-wrap: wrap;">
88
  <a href="{{ url_for('index') }}" style="color:rgba(255,255,255,0.7); font-size:0.8rem; text-decoration:none; padding:4px 12px; border:1px solid rgba(255,255,255,0.3); border-radius:16px;">Dashboard</a>
89
  <a href="{{ url_for('club_profile') }}" style="color:rgba(255,255,255,0.7); font-size:0.8rem; text-decoration:none; padding:4px 12px; border:1px solid rgba(255,255,255,0.3); border-radius:16px;">🏟️ Profilo Club</a>
@@ -98,7 +98,7 @@
98
  <div class="field">
99
  <label>Ruolo</label>
100
  <select id="memberRole">
101
- <option value="board" {% if member_role == 'board' %}selected{% endif %}>Board</option>
102
  <option value="collaboratore" {% if member_role == 'collaboratore' %}selected{% endif %}>Collaboratore</option>
103
  </select>
104
  </div>
 
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Questionari Direttivo - Rooting Future</title>
7
  <link rel="manifest" href="/static/manifest.json">
8
  <meta name="theme-color" content="#1a365d">
9
  <style>
 
83
  <body>
84
  <div class="header">
85
  <h1>🌱 Rooting Future</h1>
86
+ <p>Questionari Strategici per il Direttivo</p>
87
  <div style="margin-top: 10px; display: flex; gap: 8px; justify-content: center; flex-wrap: wrap;">
88
  <a href="{{ url_for('index') }}" style="color:rgba(255,255,255,0.7); font-size:0.8rem; text-decoration:none; padding:4px 12px; border:1px solid rgba(255,255,255,0.3); border-radius:16px;">Dashboard</a>
89
  <a href="{{ url_for('club_profile') }}" style="color:rgba(255,255,255,0.7); font-size:0.8rem; text-decoration:none; padding:4px 12px; border:1px solid rgba(255,255,255,0.3); border-radius:16px;">🏟️ Profilo Club</a>
 
98
  <div class="field">
99
  <label>Ruolo</label>
100
  <select id="memberRole">
101
+ <option value="board" {% if member_role == 'board' %}selected{% endif %}>Direttivo</option>
102
  <option value="collaboratore" {% if member_role == 'collaboratore' %}selected{% endif %}>Collaboratore</option>
103
  </select>
104
  </div>