Modification de l'appel de create ajout du parametre user
This commit is contained in:
parent
9b0d084d1c
commit
56ca62a92b
@ -623,97 +623,97 @@ class User
|
||||
* \brief Crée un utilisateur en base
|
||||
* \return int si erreur <0, si ok renvoie id compte créé
|
||||
*/
|
||||
function create()
|
||||
{
|
||||
global $conf,$langs;
|
||||
|
||||
// Nettoyage parametres
|
||||
$this->login = trim($this->login);
|
||||
|
||||
$this->db->begin();
|
||||
|
||||
$sql = "SELECT login FROM ".MAIN_DB_PREFIX."user";
|
||||
$sql.= " WHERE login ='".addslashes($this->login)."'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql)
|
||||
{
|
||||
$num = $this->db->num_rows($resql);
|
||||
$this->db->free($resql);
|
||||
|
||||
if ($num)
|
||||
{
|
||||
$this->error = $langs->trans("ErrorLoginAlreadyExists");
|
||||
return -6;
|
||||
}
|
||||
else
|
||||
{
|
||||
$sql = "INSERT INTO ".MAIN_DB_PREFIX."user (datec,login,ldap_sid) VALUES(now(),'".addslashes($this->login)."','".$this->ldap_sid."')";
|
||||
$result=$this->db->query($sql);
|
||||
|
||||
if ($result)
|
||||
{
|
||||
$table = "".MAIN_DB_PREFIX."user";
|
||||
$this->id = $this->db->last_insert_id($table);
|
||||
|
||||
// Set default rights
|
||||
if ($this->set_default_rights() < 0)
|
||||
{
|
||||
$this->error=$this->db->error();
|
||||
$this->db->rollback();
|
||||
return -5;
|
||||
}
|
||||
|
||||
// Update minor fields
|
||||
if ($this->update() < 0)
|
||||
{
|
||||
$this->error=$this->db->error();
|
||||
$this->db->rollback();
|
||||
return -4;
|
||||
}
|
||||
|
||||
// Appel des triggers
|
||||
include_once(DOL_DOCUMENT_ROOT . "/interfaces.class.php");
|
||||
$interface=new Interfaces($this->db);
|
||||
$result=$interface->run_triggers('USER_CREATE',$this,$user,$lang,$conf);
|
||||
if ($result < 0) $error++;
|
||||
// Fin appel triggers
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
$this->db->commit();
|
||||
return $this->id;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->error=$interface->error;
|
||||
$this->db->rollback();
|
||||
return -3;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->error=$this->db->error();
|
||||
$this->db->rollback();
|
||||
return -2;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->error=$this->db->error();
|
||||
$this->db->rollback();
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
function create($user)
|
||||
{
|
||||
global $conf,$langs;
|
||||
|
||||
// Nettoyage parametres
|
||||
$this->login = trim($this->login);
|
||||
|
||||
$this->db->begin();
|
||||
|
||||
$sql = "SELECT login FROM ".MAIN_DB_PREFIX."user";
|
||||
$sql.= " WHERE login ='".addslashes($this->login)."'";
|
||||
$resql=$this->db->query($sql);
|
||||
if ($resql)
|
||||
{
|
||||
$num = $this->db->num_rows($resql);
|
||||
$this->db->free($resql);
|
||||
|
||||
if ($num)
|
||||
{
|
||||
$this->error = $langs->trans("ErrorLoginAlreadyExists");
|
||||
return -6;
|
||||
}
|
||||
else
|
||||
{
|
||||
$sql = "INSERT INTO ".MAIN_DB_PREFIX."user (datec,login,ldap_sid) VALUES(now(),'".addslashes($this->login)."','".$this->ldap_sid."')";
|
||||
$result=$this->db->query($sql);
|
||||
|
||||
if ($result)
|
||||
{
|
||||
$table = "".MAIN_DB_PREFIX."user";
|
||||
$this->id = $this->db->last_insert_id($table);
|
||||
|
||||
// Set default rights
|
||||
if ($this->set_default_rights() < 0)
|
||||
{
|
||||
$this->error=$this->db->error();
|
||||
$this->db->rollback();
|
||||
return -5;
|
||||
}
|
||||
|
||||
// Update minor fields
|
||||
if ($this->update() < 0)
|
||||
{
|
||||
$this->error=$this->db->error();
|
||||
$this->db->rollback();
|
||||
return -4;
|
||||
}
|
||||
|
||||
// Appel des triggers
|
||||
include_once(DOL_DOCUMENT_ROOT . "/interfaces.class.php");
|
||||
$interface = new Interfaces($this->db);
|
||||
$result = $interface->run_triggers('USER_CREATE',$this,$user,$lang,$conf);
|
||||
if ($result < 0) $error++;
|
||||
// Fin appel triggers
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
$this->db->commit();
|
||||
return $this->id;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->error=$interface->error;
|
||||
$this->db->rollback();
|
||||
return -3;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->error=$this->db->error();
|
||||
$this->db->rollback();
|
||||
return -2;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->error=$this->db->error();
|
||||
$this->db->rollback();
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* \brief Créé en base un utilisateur depuis l'objet contact
|
||||
* \param contact Objet du contact source
|
||||
* \return int si erreur <0, si ok renvoie id compte créé
|
||||
*/
|
||||
function create_from_contact($contact)
|
||||
{
|
||||
/**
|
||||
* \brief Créé en base un utilisateur depuis l'objet contact
|
||||
* \param contact Objet du contact source
|
||||
* \return int si erreur <0, si ok renvoie id compte créé
|
||||
*/
|
||||
function create_from_contact($contact)
|
||||
{
|
||||
global $langs;
|
||||
|
||||
// Positionne paramètres
|
||||
@ -782,7 +782,7 @@ class User
|
||||
* \brief Affectation des permissions par défaut
|
||||
* \return si erreur <0, si ok renvoi le nbre de droits par defaut positionnés
|
||||
*/
|
||||
function set_default_rights()
|
||||
function set_default_rights()
|
||||
{
|
||||
$sql = "SELECT id FROM ".MAIN_DB_PREFIX."rights_def WHERE bydefault = 1";
|
||||
|
||||
@ -820,7 +820,7 @@ class User
|
||||
* \param notrigger 1 si update durant le create, 0 sinon
|
||||
* \return int <0 si KO, >=0 si OK
|
||||
*/
|
||||
function update($notrigger=0)
|
||||
function update($notrigger=0)
|
||||
{
|
||||
global $conf,$langs,$user;
|
||||
|
||||
@ -904,7 +904,7 @@ class User
|
||||
* Fonction appelée lors d'une nouvelle connexion
|
||||
* \return <0 si echec, >=0 si ok
|
||||
*/
|
||||
function update_last_login_date()
|
||||
function update_last_login_date()
|
||||
{
|
||||
dolibarr_syslog ("Mise a jour date derniere connexion pour user->id=".$this->id);
|
||||
|
||||
@ -1049,7 +1049,7 @@ class User
|
||||
/**
|
||||
* \brief Lecture des infos de click to dial
|
||||
*/
|
||||
function fetch_clicktodial()
|
||||
function fetch_clicktodial()
|
||||
{
|
||||
|
||||
$sql = "SELECT login, pass, poste FROM ".MAIN_DB_PREFIX."user_clicktodial as u";
|
||||
@ -1416,17 +1416,22 @@ class User
|
||||
{
|
||||
$err=0;
|
||||
$this->entrepots = array();
|
||||
$sql = "SELECT fk_entrepot,consult,send";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."user_entrepot";
|
||||
$sql = "SELECT e.rowid,ue.consult,ue.send,e.label";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."user_entrepot as ue,".MAIN_DB_PREFIX."entrepot as e";
|
||||
$sql.= " WHERE fk_user = '".$this->id."'";
|
||||
$sql .= " AND e.statut = 1";
|
||||
$sql .= " AND e.rowid = ue.fk_entrepot";
|
||||
|
||||
if ( $this->db->query($sql) )
|
||||
{
|
||||
$i=0;
|
||||
while ($obj = $this->db->fetch_object($result) )
|
||||
{
|
||||
$this->entrepots[$i]['id'] = $obj->consult;
|
||||
$this->entrepots[$i]['consult'] = $obj->consult;
|
||||
$this->entrepots[$i]['send'] = $obj->send;
|
||||
$this->entrepots[$i]['label'] = $obj->label;
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
Loading…
Reference in New Issue
Block a user