|
@@ -1364,330 +1364,10 @@ class Holiday extends CommonObject
|
|
|
{
|
|
|
if (empty($userCP)) $userCP=0;
|
|
|
dol_syslog(get_class($this).'::verifNbUsers userDolibarr='.$userDolibarrWithoutCP.' userCP='.$userCP);
|
|
|
-/*
|
|
|
- // On vérifie les users Dolibarr sans CP
|
|
|
- if ($userDolibarrWithoutCP > 0)
|
|
|
- {
|
|
|
- $this->db->begin();
|
|
|
-
|
|
|
- //$this->updateConfCP('nbUser',$userDolibarrWithoutCP);
|
|
|
-
|
|
|
- $listUsersCP = $this->fetchUsers(true,false);
|
|
|
-
|
|
|
- // On séléctionne les utilisateurs qui ne sont pas déjà dans le module
|
|
|
- $sql = "SELECT u.rowid, u.lastname, u.firstname";
|
|
|
- $sql.= " FROM ".MAIN_DB_PREFIX."user as u";
|
|
|
- if ($listUsersCP != '') $sql.= " WHERE u.rowid NOT IN(".$listUsersCP.")";
|
|
|
-
|
|
|
- $resql = $this->db->query($sql);
|
|
|
- if ($resql)
|
|
|
- {
|
|
|
- $i = 0;
|
|
|
- $num = $this->db->num_rows($resql);
|
|
|
-
|
|
|
- while($i < $num)
|
|
|
- {
|
|
|
- $obj = $this->db->fetch_object($resql);
|
|
|
- $uid = $obj->rowid;
|
|
|
-
|
|
|
- // On ajoute l'utilisateur
|
|
|
- //print "Add user rowid = ".$uid." into database holiday";
|
|
|
-
|
|
|
- $result = $this->createCPusers(true,$uid);
|
|
|
-
|
|
|
- $i++;
|
|
|
- }
|
|
|
-
|
|
|
- $this->db->commit();
|
|
|
- } else {
|
|
|
- // Erreur SQL
|
|
|
- $this->error="Error ".$this->db->lasterror();
|
|
|
- dol_syslog(get_class($this)."::verifNbUsers ".$this->error, LOG_ERR);
|
|
|
- $this->db->rollback();
|
|
|
- return -1;
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- $this->db->begin();
|
|
|
-
|
|
|
- // Si il y a moins d'utilisateur Dolibarr que dans le module CP
|
|
|
-
|
|
|
- $this->updateConfCP('nbUser',$userDolibarrWithoutCP);
|
|
|
-
|
|
|
- $listUsersDolibarr = $this->fetchUsers(true,true);
|
|
|
-
|
|
|
- // On séléctionne les utilisateurs qui ne sont pas déjà dans le module
|
|
|
- $sql = "SELECT u.fk_user";
|
|
|
- $sql.= " FROM ".MAIN_DB_PREFIX."holiday_users as u";
|
|
|
- $sql.= " WHERE u.fk_user NOT IN (".$listUsersDolibarr.")";
|
|
|
-
|
|
|
- $resql = $this->db->query($sql);
|
|
|
-
|
|
|
- // Si pas d'erreur SQL
|
|
|
- if ($resql) {
|
|
|
-
|
|
|
- $i = 0;
|
|
|
- $num = $this->db->num_rows($resql);
|
|
|
-
|
|
|
- while($i < $num) {
|
|
|
-
|
|
|
- $obj = $this->db->fetch_object($resql);
|
|
|
-
|
|
|
- // On supprime l'utilisateur
|
|
|
- $this->deleteCPuser($obj->fk_user);
|
|
|
-
|
|
|
- $i++;
|
|
|
- }
|
|
|
-
|
|
|
- $this->db->commit();
|
|
|
- } else {
|
|
|
- // Erreur SQL
|
|
|
- $this->error="Error ".$this->db->lasterror();
|
|
|
- dol_syslog(get_class($this)."::verifNbUsers ".$this->error, LOG_ERR);
|
|
|
- $this->db->rollback();
|
|
|
- return -1;
|
|
|
- }
|
|
|
- }
|
|
|
-*/
|
|
|
return 1;
|
|
|
}
|
|
|
|
|
|
|
|
|
- /**
|
|
|
- * Liste les évènements de congés payés enregistré
|
|
|
- *
|
|
|
- * @return int -1 si erreur, 1 si OK et 2 si pas de résultat
|
|
|
- */
|
|
|
- function fetchEventsCP()
|
|
|
- {
|
|
|
- global $langs;
|
|
|
-
|
|
|
- $sql = "SELECT";
|
|
|
- $sql.= " cpe.rowid,";
|
|
|
- $sql.= " cpe.name,";
|
|
|
- $sql.= " cpe.value";
|
|
|
-
|
|
|
- $sql.= " FROM ".MAIN_DB_PREFIX."holiday_events as cpe";
|
|
|
-
|
|
|
- dol_syslog(get_class($this)."::fetchEventsCP", LOG_DEBUG);
|
|
|
- $resql=$this->db->query($sql);
|
|
|
-
|
|
|
- // Si pas d'erreur SQL
|
|
|
- if ($resql) {
|
|
|
-
|
|
|
- $i = 0;
|
|
|
- $tab_result = $this->events;
|
|
|
- $num = $this->db->num_rows($resql);
|
|
|
-
|
|
|
- // Si pas d'enregistrement
|
|
|
- if(!$num) {
|
|
|
- return 2;
|
|
|
- }
|
|
|
-
|
|
|
- // On liste les résultats et on les ajoutent dans le tableau
|
|
|
- while($i < $num) {
|
|
|
-
|
|
|
- $obj = $this->db->fetch_object($resql);
|
|
|
-
|
|
|
- $tab_result[$i]['rowid'] = $obj->rowid;
|
|
|
- $tab_result[$i]['name'] = $obj->name;
|
|
|
- $tab_result[$i]['value'] = $obj->value;
|
|
|
-
|
|
|
- $i++;
|
|
|
- }
|
|
|
- // Retourne 1 et ajoute le tableau à la variable
|
|
|
- $this->events = $tab_result;
|
|
|
- return 1;
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- // Erreur SQL
|
|
|
- $this->error="Error ".$this->db->lasterror();
|
|
|
- return -1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * Créer un évènement de congés payés
|
|
|
- *
|
|
|
- * @param User $user User
|
|
|
- * @param int $notrigger No trigger
|
|
|
- * @return int -1 si erreur, id si OK
|
|
|
- */
|
|
|
- function createEventCP($user, $notrigger=0)
|
|
|
- {
|
|
|
- global $conf, $langs;
|
|
|
- $error=0;
|
|
|
-
|
|
|
- // Insert request
|
|
|
- $sql = "INSERT INTO ".MAIN_DB_PREFIX."holiday_events (";
|
|
|
-
|
|
|
- $sql.= "name,";
|
|
|
- $sql.= "value";
|
|
|
-
|
|
|
- $sql.= ") VALUES (";
|
|
|
-
|
|
|
- $sql.= " '".$this->db->escape($this->optName)."',";
|
|
|
- $sql.= " '".$this->optValue."'";
|
|
|
- $sql.= ")";
|
|
|
-
|
|
|
- $this->db->begin();
|
|
|
-
|
|
|
- dol_syslog(get_class($this)."::createEventCP", LOG_DEBUG);
|
|
|
- $resql=$this->db->query($sql);
|
|
|
- if (! $resql) {
|
|
|
- $error++; $this->errors[]="Error ".$this->db->lasterror();
|
|
|
- }
|
|
|
-
|
|
|
- if (! $error)
|
|
|
- {
|
|
|
- $this->optRowid = $this->db->last_insert_id(MAIN_DB_PREFIX."holiday_events");
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- // Commit or rollback
|
|
|
- if ($error)
|
|
|
- {
|
|
|
- foreach($this->errors as $errmsg)
|
|
|
- {
|
|
|
- dol_syslog(get_class($this)."::createEventCP ".$errmsg, LOG_ERR);
|
|
|
- $this->error.=($this->error?', '.$errmsg:$errmsg);
|
|
|
- }
|
|
|
- $this->db->rollback();
|
|
|
- return -1*$error;
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- $this->db->commit();
|
|
|
- return $this->optRowid;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * Met à jour les évènements de congés payés
|
|
|
- *
|
|
|
- * @param int $rowid Row id
|
|
|
- * @param string $name Name
|
|
|
- * @param value $value Value
|
|
|
- * @return int -1 si erreur, id si OK
|
|
|
- */
|
|
|
- function updateEventCP($rowid, $name, $value) {
|
|
|
-
|
|
|
- $sql = "UPDATE ".MAIN_DB_PREFIX."holiday_events SET";
|
|
|
- $sql.= " name = '".$this->db->escape($name)."', value = '".$value."'";
|
|
|
- $sql.= " WHERE rowid = '".$rowid."'";
|
|
|
-
|
|
|
- $result = $this->db->query($sql);
|
|
|
-
|
|
|
- if($result) {
|
|
|
- return true;
|
|
|
- }
|
|
|
-
|
|
|
- return false;
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * Select event
|
|
|
- *
|
|
|
- * @return string|false Select Html to select type of holiday
|
|
|
- */
|
|
|
- function selectEventCP()
|
|
|
- {
|
|
|
-
|
|
|
- $sql = "SELECT rowid, name, value";
|
|
|
- $sql.= " FROM ".MAIN_DB_PREFIX."holiday_events";
|
|
|
-
|
|
|
- $result = $this->db->query($sql);
|
|
|
- if ($result)
|
|
|
- {
|
|
|
- $num = $this->db->num_rows($result);
|
|
|
- $i = 0;
|
|
|
-
|
|
|
- $out = '<select name="list_event" class="flat" >';
|
|
|
- $out.= '<option value="-1"> </option>';
|
|
|
- while ($i < $num)
|
|
|
- {
|
|
|
- $obj = $this->db->fetch_object($result);
|
|
|
-
|
|
|
- $out.= '<option value="'.$obj->rowid.'">'.$obj->name.' ('.$obj->value.')</option>';
|
|
|
- $i++;
|
|
|
- }
|
|
|
- $out.= '</select>';
|
|
|
-
|
|
|
- return $out;
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * deleteEvent
|
|
|
- *
|
|
|
- * @param int $rowid Row id
|
|
|
- * @return boolean Success or not
|
|
|
- */
|
|
|
- function deleteEventCP($rowid) {
|
|
|
-
|
|
|
- $sql = "DELETE FROM ".MAIN_DB_PREFIX."holiday_events";
|
|
|
- $sql.= " WHERE rowid = '".$rowid."'";
|
|
|
-
|
|
|
- $result = $this->db->query($sql);
|
|
|
-
|
|
|
- if($result) {
|
|
|
- return true;
|
|
|
- } else {
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * getValueEventCp
|
|
|
- *
|
|
|
- * @param int $rowid Row id
|
|
|
- * @return string|false
|
|
|
- */
|
|
|
- function getValueEventCp($rowid) {
|
|
|
-
|
|
|
- $sql = "SELECT value";
|
|
|
- $sql.= " FROM ".MAIN_DB_PREFIX."holiday_events";
|
|
|
- $sql.= " WHERE rowid = '".$rowid."'";
|
|
|
-
|
|
|
- $result = $this->db->query($sql);
|
|
|
-
|
|
|
- if($result) {
|
|
|
- $obj = $this->db->fetch_array($result);
|
|
|
- return number_format($obj['value'],2);
|
|
|
- } else {
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * getNameEventCp
|
|
|
- *
|
|
|
- * @param int $rowid Row id
|
|
|
- * @return unknown|boolean
|
|
|
- */
|
|
|
- function getNameEventCp($rowid) {
|
|
|
-
|
|
|
- $sql = "SELECT name";
|
|
|
- $sql.= " FROM ".MAIN_DB_PREFIX."holiday_events";
|
|
|
- $sql.= " WHERE rowid = '".$rowid."'";
|
|
|
-
|
|
|
- $result = $this->db->query($sql);
|
|
|
-
|
|
|
- if($result) {
|
|
|
- $obj = $this->db->fetch_array($result);
|
|
|
- return $obj['name'];
|
|
|
- } else {
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
/**
|
|
|
* addLogCP
|
|
|
*
|