lucagianneschi / Jam

Sviluppo della piattaforma basata su framework
0 stars 0 forks source link

Realizzazione LoveController #65

Open lucagianneschi opened 10 years ago

lucagianneschi commented 10 years ago

Realizzare tabella di love con le seguenti colonne:

  1. id, chiave primaria, intero;
  2. id_user, id dell'user che effettua l'operazione di love;
  3. classname, nome della classe su cui viene fatto love;
  4. id_object, object id dell'oggetto su cui viene fatto love;

Il LoveController realizza l'operazione di love e unlove su una della seguenti classi:

L'azione di love esegue le seguenti operazioni:

  1. controlla che la classe su cui viene fatta l'azione di love sia una di quelle sopra elencate;
  2. controlla che l'utente non abbia già effettuato l'azione di love sullo stesso elemento, in caso sia già stato fatto non dà la possibilità di effettuare il love e mostra un messaggio di errore;
  3. se l'utente non ha fatto love, allora effettua l'operazione di love, che consiste nell'aumentare il lovecounter (+1) dell'oggetto su cui è stata fatta l'operazione di love e scrive sulla tabella di love l'oggetto su cui è stata fatta l'operazione di love;

L'azione di unlove esegue le seguenti operazioni:

  1. controlla che la classe su cui viene fatta l'azione di love sia una di quelle sopra elencate;
  2. controlla che l'utente abbia già effettuato l'azione di love sullo stesso elemento, se l'azione di love non esiste viene generato messaggio di errore;
  3. se l'utente ha fatto love, allora effettua l'operazione di unlove, che consiste nel diminuire il lovecounter (-1) dell'oggetto su cui è stata fatta l'operazione di unlove e cancella il recor sulla tabella di love l'oggetto su cui è stata fatta l'operazione di unlove;

Per il controllo sull'azione di love, che esista già o meno realizzare funzione a parte che sia accessibile anche esternamente al controller, in modo tale che possa essere utilizzata anche per le viste, poiché si deve presentare volta volta o il bottone di love o quello di unlove (utilizzare un component appositamente realizzato).

lucagianneschi commented 10 years ago

tabella creata sul DB chinata loveaction. Aggiunto anche campo createdat per stabilire eventuale ordine temporale delle azioni di love. E' conveniente anche generare il modello relativo a questa tabella, poiché per il controller sono necessarie le azioni di create e delete