/** * Updates informations related to a tutor * * @access public * * @param $id the tutor's id * $tutor_ar the informations. empty fields are not updated * * @return an error if something goes wrong * */ public function set_tutor($id, $tutor_ha) { // backup old values $old_values_ha = $this->get_tutor($id); $result = $this->set_user($id, $tutor_ha); if (self::isError($result)) { // $result is an AMA_Error object return $result; } $update_tutor_sql = 'UPDATE tutor SET tariffa=?, profilo=? WHERE id_utente_tutor=?'; $valuesAr = array(0, $tutor_ha['profilo'], $id); $result = $this->queryPrepared($update_tutor_sql, $valuesAr); if (AMA_DB::isError($result)) { $valuesAr = array($old_values_ha['nome'], $old_values_ha['cognome'], $old_values_ha['email'], $old_values_ha['telefono'], $old_values_ha['password'], $old_values_ha['layout'], $old_values_ha['indirizzo'], $old_values_ha['citta'], $old_values_ha['provincia'], $old_values_ha['nazione'], $old_values_ha['codice_fiscale'], AMA_Common_DataHandler::date_to_ts($old_values_ha['birthdate']), $old_values_ha['sesso'], $old_values_ha['stato'], $old_values_ha['lingua'], $old_values_ha['timezone'], $old_values_ha['cap'], $old_values_ha['matricola'], $old_values_ha['avatar'], $old_values_ha['birthcity'], $old_values_ha['birthprovince'], $id); $update_user_sql = 'UPDATE utente SET nome=?, cognome=?, e_mail=?, telefono=?, password=?, layout=?, ' . 'indirizzo=?, citta=?, provincia=?, nazione=?, codice_fiscale=?, birthdate=?, sesso=?, ' . 'stato=?, lingua=?,timezone=?,cap=?,matricola=?,avatar=?, birthcity=?, birthprovince=? WHERE id_utente=?'; $result = $this->executeCriticalPrepared($update_user_sql, $valuesAr); // qui andrebbe differenziato il tipo di errore if (AMA_DB::isError($result)) { return new AMA_Error(AMA_ERR_UPDATE); } return new AMA_Error(AMA_ERR_UPDATE); } return true; }