Movimento5StelleLazio / ParlamentoElettronicoM5S

"Parlamento Elettronico M5S" is a fork of the "Liquid Feedback Frontend" Project for the Movimento 5 Stelle Italy
Other
22 stars 17 forks source link

Design 3 UI [Task C1] - Creazione di una pagina addizionale che viene servita come Start Page di Liquid Feedback. #18

Closed ralzakark closed 11 years ago

ralzakark commented 11 years ago

[Task C1]

pierangelo commented 11 years ago

ale hai preso tutti e tre i task?

ralzakark commented 11 years ago

Solo la start page (Task C1).

Butto lì un po' di cose per eventuali commenti:

1) La start page l'ho chiamata app/main/index/welcome.lua e sarà chiamata da index al posto di _index_member.lua. Quest'ultima invece dovrebbe essere la homepage effettiva e quindi dovrà essere sostituita dalla pagina creata al Task C2.

2) Abbiamo l'immagine del parlamento (quella che va sopra i bottoni) ?

3) Per quanto riguarda la scritta di welcome ("ultimo collegamento da Citta, Regione") rimando a questo articolo sull'affidabilità della geolocalizzazione ip: http://www.goanalytics.info/quanto-e-affidabile-la-geolocalizzazione-degli-ip/ (n.b. E' del 2008 e nel frattempo google ha lavorato parecchio sulla cosa) Ho letto un po' in giro e ho visto che alcuni database in Italia hanno una percentuale di errore che arriva anche al 29%. In caso potremmo aggiungere una nota a margine del tipo "Non è questo il posto da dove ti sei collegato?" linkata a spiegazioni approfondite sulla localizzazione. Avete dati statistici diversi a riguardo?

EmanueleSabetta commented 11 years ago

1) riguardo la start page e la home page, ok ma rendi tutto configurabile. Dovrebbe essere possibile per l'admin scegliere la normale start page di liquid o quella nostra o un altra ancora di cui si da il path, e poterle cambiare in qualsiasi momento.

2) si te la mando via email.

3) si, ma considera che la geolocalizzazione e' implementata in modo diverso e indipendente da ogni browser, a noi non interessa come. Comunque stanno migliorando sempre di piu', e ormai se si ha un router wifi non si usano gli ip ma i dati di posizione trasmessi con il wifi o direttamente o tramite triangolazione, e sono precisissimi, anche piu' del gps. Comunque devi prevedere il caso in cui non ci sia risposta, o ci sia una risposta sbagliata e comunque registrarla, tanto noi controlleremo gli account che si connettono da zone diverse di seguito, quindi se l'errore e' costante ci accorgiamo comunque di un cambiamento. E' importante registrare anche i dati del browser, se e' desktop o mobile, in modo da distinguere i casi in cui l'utente usa il suo smartphone (e quindi ci si aspetta che vari spesso posizione) da quelli in cui usa un browser desktop che e' probabile sia sempre nella stessa abitazione o ufficio. nel db sql di liquid c'e' una tabella con le connessioni degli utenti, bisogna espandere quella.

pierangelo commented 11 years ago

ti ho corretto il titolo cosi si vede subito che task si sta eseguendo :+1:

ralzakark commented 11 years ago

Mi faceva notare pierangelo che nella start page c'è sia il messaggio di benvenuto (che presuppone che ho fatto il login), sia la nota ed il link per la registrazione (che presuppone che NON mi sono ancora registrato)...

EmanueleSabetta commented 11 years ago

Ovviamente in caso non si è registrati quella frase NON APPARE.

Inoltre, essendo anche la landing page dell'invito, devono apparire anche le due frasi in rosso che appaiono la prima volta che ci si registra, linkate alla verifica via email.

pierangelo commented 11 years ago

Ale come procede con il layouting?

ralzakark commented 11 years ago

Andrebbero fatti dei CSS decenti, i bottoni e mettere i controlli per IE... Questa è la pagina cmq: https://github.com/ralzakark/ParlamentoElettronicoM5S/blob/task_c1/app/main/index/welcome.lua Tu in caso riesci ad aggiustarla in tal senso? Magari la puoi scaricare ed integrare con il tuo fork ? Io ora sto lavorando per la parte backend per la registrazione dei dati di login e coordinate gps.

pierangelo commented 11 years ago

ok. appena finisco con il task C2 prendo in carico il C1.

ralzakark commented 11 years ago

C'è ancora qualcosa che non mi è chiaro riguardo la pagina.

La start page è la PRIMA pagina visualizzata ? Sostituisce cioè la pagina index ? Se si, non dovrebbe anche avere le text box per il login ?

Mi spiego meglio: Nella situazione standard, liquid mostra una pagina di index (app/main/index/index.lua). Questa pagina, a seconda che l'utente abbia o meno fatto il login mostra cose differenti. Nel primo caso viene chiamata una sub-view (app/main/index/_index_member.lua) che contiene i tab di navigazione con le aree etc.. (che noi dovremmo sostituire con la "homepage" al task c2) Nel secondo caso la index renderizza le text box per il login.

Se la nostra start page sostituisce completamente la index allora potremmo copiarne il comportamento.

Per rendere la cosa modulare e configurabile proporrei di sostituire la index di base con un frontend che, a seconda del gui_preset configurato renderizza la index giusta.

In questo caso, nella nostra start page (cioè una index alternativa) potremmo mettere 4 div:

  1. "PARLAMENTO ELETTRONICO..."
  2. "BENVENUTO Tizio Caio..." ed i bottoni per le due assemblee.
  3. LOGO M5S + "..SCOPRI COME:.." + Bottone registrazione
  4. textboxes di login

In caso di accesso anonimo viene renderizzato 1, 3 e 4. In caso di accesso autorizzato la 1 e 2. (Volendo si potrebbero renderizzare i bottoni delle assemblee al punto 3 anche se l'utente non è registrato e ovviamente disattivare i bottoni)

Per quanto riguarda la configurazione delle pagine avevo pensato di inserire nel file di configurazione una cosa del genere:

config.gui_preset = {
  {
    name="M5S",
    index="welcome"
  },
  {
    name="Maintenance",
    index="maintenance"
  },
  {
    name="default",
    index="default_index"
  }
}

...ed aggiungere una colonna alla tabella system_setting chiamata gui_preset (la tabella è mono-row e ha un parametro per colonna)

CREATE TABLE system_setting
(
  member_ttl interval,
  gui_preset text
)

Nel frontend di index viene controllato se il valore di gui_preset matcha uno dei nomi nell'array config.gui_preset e viene caricata la index corrispondente.

Che ne pensate?

EmanueleSabetta commented 11 years ago

Mi sembra una buona idea, io infatti davo per scontato che se anonimo al div "Benvenuto Tizio Caio" si sostituisse il div di liquid con il login form, e non l'ho indicato specificatamente nel design.

pierangelo commented 11 years ago

ok Ale, dovresti creare anche la pagina per consentire all'admin di salvare lo stato gui_preset

pierangelo commented 11 years ago

attualmente al file config.lua va aggiunto questo oggetto:

config.gui_preset = { { name="M5S", start_page="_welcome" }, { name="Maintenance", start_page="_maintenance" }, { name="default", start_page="_index_default" } }