passwordHash($data); return $data; } protected function beforeUpdate(array $data){ $data = $this->passwordHash($data); return $data; } protected function passwordHash(array $data){ if(isset($data['data']['lvPassword'])) $data['data']['lvPassword'] = password_hash($data['data']['lvPassword'], PASSWORD_DEFAULT); return $data; } //-------------------------------------------------------------------- /** * Ritorna le coppie val,txt per compilare il select dei lavoratori, in base al filtro attivo */ public function get_select_on_orari(){ // Creo la string SQL: // - join fra le tabelle $sql = 'SELECT Lavoratori.lvIDlavoratore AS val, Lavoratori.lvNickname AS txt FROM Lavoratori, Orari WHERE Lavoratori.lvIDlavoratore=Orari.orIDlavoratore'; // - Filtro fra i lavoratori Guest o i cancellati: $sql .= " AND lvDeletedAt IS null AND lvLevel>0"; // - Applico il filtro temporale: $sql .= ' AND Orari.orData>=\'' . session()->get('filter_dal') . '\' AND Orari.orData<=\'' . session()->get('filter_al') . " 23:59:59" . '\''; // - applico eventuale filtro per lavoratore if ((null !== session()->get('filter_lavoratore')) && (session()->get('filter_lavoratore')!='-1')) { $sql .= ' AND Lavoratori.lvIDlavoratore=\'' . session()->get('filter_lavoratore') . '\''; } // - applico eventuale filtro per commessa if ((null !== session()->get('filter_commessa')) && (session()->get('filter_commessa')!='-1')) { $sql .= ' AND Orari.orIDcommessa=\'' . session()->get('filter_commessa') . '\''; } // - applico eventuale filtro per tipologia di ora: if ((null !== session()->get('filter_tipo_ore')) && (session()->get('filter_tipo_ore')!='-1')) { $sql .= ' AND Orari.orIDTipoOre=\'' . session()->get('filter_tipo_ore') . '\''; } // - Raggruppo i risultati: $sql .= ' GROUP BY(txt)'; // - Ordino in modo decrescente sul numero di presenze e in modo alfabetico. $sql .= ' ORDER BY COUNT(val) DESC, txt'; // Creo la query: $query = $this->query($sql); // Eseguo la query sul DB: return $query->getResult(); } // function select_on_orari //-------------------------------------------------------------------- // Ritorna le coppie val,txt per compilare il select dei lavoratori, in base al filtro attivo public function get_select_on_spese(){ // Creo la string SQL: // - join fra le tabelle $sql = 'SELECT Lavoratori.lvIDlavoratore AS val, Lavoratori.lvNickname AS txt FROM Lavoratori, Spese WHERE Lavoratori.lvIDlavoratore=Spese.spIDlavoratore'; // - Filtro fra i lavoratori Guest o i cancellati: $sql .= " AND lvDeletedAt IS null AND lvLevel>0"; // - Applico il filtro temporale: $sql .= ' AND Spese.spData>=\'' . session()->get('filter_dal') . '\' AND Spese.spData<=\'' . session()->get('filter_al') . " 23:59:59" . '\''; // - applico eventuale filtro per lavoratore if ((null !== session()->get('filter_lavoratore')) && (session()->get('filter_lavoratore')!='-1')) { $sql .= ' AND Lavoratori.lvIDlavoratore=\'' . session()->get('filter_lavoratore') . '\''; } // - applico eventuale filtro per commessa if ((null !== session()->get('filter_commessa')) && (session()->get('filter_commessa')!='-1')) { $sql .= ' AND Spese.spIDcommessa=\'' . session()->get('filter_commessa') . '\''; } // - applico eventuale filtro per tipologia di rimborso: if ((null !== session()->get('filter_rimborso')) && (session()->get('filter_rimborso')!='-1')) { $sql .= ' AND Spese.spDaRimborsare=\'' . session()->get('filter_rimborso') . '\''; } // - Raggruppo i risultati: $sql .= ' GROUP BY(txt)'; // - Ordino in modo decrescente sul numero di presenze e in modo alfabetico. $sql .= ' ORDER BY COUNT(val) DESC, txt'; // Creo la query: $query = $this->query($sql); // Eseguo la query sul DB: return $query->getResult(); } // function select_on_spese //-------------------------------------------------------------------- /** * Ritorna le coppie val,txt per compilare il select dei lavoratori */ public function get_select() { // Filtro fra i lavoratori cancellati e quelli solo guest: $query = $this->query('SELECT lvIDlavoratore AS val, lvNickname AS txt FROM Lavoratori WHERE lvDeletedAt IS null AND lvLevel>0 ORDER BY lvNickname'); return $query->getResult(); }//function get_select //-------------------------------------------------------------------- }//class Lavoratori_Model