public void RimuoviLista(Lista lista, string username) { try { ListePreferite listePrefe = null; ISession sessione = _gestisciUtente.OpenConnection(); sessione.BeginTransaction(); ICriteria criteria = sessione.CreateCriteria <ListePreferite>(); listePrefe = (ListePreferite)criteria.Add(Expression.Like("Username", username)).UniqueResult(); List <Lista> listeSalvateNew = new List <Lista>(); foreach (Lista l in listePrefe.ListeSalvate) { if (l.Id != lista.Id) { listeSalvateNew.Add(l); } } listePrefe.ListeSalvate = listeSalvateNew; sessione.Update(listePrefe); sessione.Transaction.Commit(); sessione.Transaction.Dispose(); _gestisciUtente.RegisterOperazione("rimozione lista personale", username); } catch (Exception e) { throw new FaultException <BookFault>(new BookFault(e.Message)); } }
public void SalvaLista(Lista lista, string username) { try { ListePreferite listePrefe = null; ISession sessione = _gestisciUtente.OpenConnection(); sessione.BeginTransaction(); ICriteria criteria = sessione.CreateCriteria <ListePreferite>(); listePrefe = (ListePreferite)criteria.Add(Expression.Like("Username", username)).UniqueResult(); Lista trovata = null; ICriteria criteria2 = sessione.CreateCriteria <Lista>(); trovata = (Lista)criteria2.Add(Expression.Like("Id", lista.Id)).UniqueResult(); if (trovata != null) { listePrefe.ListeSalvate.Add(trovata); } sessione.Update(listePrefe); sessione.Transaction.Commit(); sessione.Transaction.Dispose(); _gestisciUtente.RegisterOperazione("salvataggio lista personale", username); } catch (Exception e) { throw new FaultException <BookFault>(new BookFault(e.Message)); } }
public List <Lista> GetListeSalvate(string username) { List <Lista> listePrefe = null; try { if (username == null) { throw new ArgumentException("Username nullo"); } ListePreferite listeReceived = null; ISession sessione = GetConnection(); sessione.BeginTransaction(); ICriteria criteria = sessione.CreateCriteria <ListePreferite>(); listeReceived = (ListePreferite)criteria.Add(Expression.Like("Username", username)).UniqueResult(); sessione.Transaction.Commit(); sessione.Transaction.Dispose(); listePrefe = new List <Lista>(); foreach (Lista l in listeReceived.ListeSalvate) { if (l.Username != null) { Lista listaTemp = new Lista() { Nome = l.Nome, Gen = l.Gen, IsVisibile = l.IsVisibile, ListaLibri = new List <Libro>(), Username = l.Username, Id = l.Id }; foreach (Libro lib in l.ListaLibri) { Libro temp = new Libro { Anno = lib.Anno, Autore = lib.Autore, FilePath = lib.FilePath, Gen = lib.Gen, Titolo = lib.Titolo }; listaTemp.ListaLibri.Add(temp); } listePrefe.Add(listaTemp); } } RegisterOperazione("get liste salvate", username); return(listePrefe); } catch (Exception e) { throw new FaultException <BookFault>(new BookFault(e.Message)); } }
public void RegistraDati(string username, string password, string email) { if (String.IsNullOrEmpty(username)) { throw new ArgumentException("Username nullo"); } if (String.IsNullOrEmpty(password)) { throw new ArgumentException("Password nulla"); } if (String.IsNullOrEmpty(email)) { throw new ArgumentException("Email nulla"); } if (username.Length < 3) { throw new ArgumentException("Lunghezza minima username: 3 caratteri"); } if (password.Length < 10) { throw new ArgumentException("Lunghezza minima password: 10 caratteri"); } try { ISession sessione = GetConnection(); sessione.BeginTransaction(); Iscritto iscritto = new Iscritto { Username = username, Email = email, Password = password, Ruolo = "utente" }; sessione.Save(iscritto); RecensioniPreferite recensioniPreferite = new RecensioniPreferite(username); sessione.Save(recensioniPreferite); ListePreferite listePreferite = new ListePreferite(username); sessione.Save(listePreferite); sessione.Transaction.Commit(); sessione.Transaction.Dispose(); PrintAccesso("login", username); } catch (Exception e) { throw new ArgumentException("Credenziali non valide: " + e.ToString()); } }