diff --git a/htdocs/install/mysql/migration/4.0.0-5.0.0.sql b/htdocs/install/mysql/migration/4.0.0-5.0.0.sql index 81872e8d10df25647762e194b3d25625b7546018..a44cc81eef44aab0e525c59c882a75de5cf0a333 100644 --- a/htdocs/install/mysql/migration/4.0.0-5.0.0.sql +++ b/htdocs/install/mysql/migration/4.0.0-5.0.0.sql @@ -24,6 +24,7 @@ ALTER TABLE llx_user DROP COLUMN phenix_login; ALTER TABLE llx_user DROP COLUMN phenix_pass; +ALTER TABLE llx_user ADD COLUMN dateemployment datetime; ALTER TABLE llx_societe ADD COLUMN fk_account integer; diff --git a/htdocs/install/mysql/tables/llx_user.sql b/htdocs/install/mysql/tables/llx_user.sql index 6b3c5b83f6dbc7d7ad9463af23a47bed3e813b07..84a368810204177cc7690e034cb0456d157b3d33 100644 --- a/htdocs/install/mysql/tables/llx_user.sql +++ b/htdocs/install/mysql/tables/llx_user.sql @@ -80,5 +80,6 @@ create table llx_user tjm double(24,8), salary double(24,8), salaryextra double(24,8), + dateemployment datetime, weeklyhours double(16,8) )ENGINE=innodb; diff --git a/htdocs/langs/en_US/users.lang b/htdocs/langs/en_US/users.lang index a84475042359a923402211841e65092f938384a4..2c6eb77eec18b3e07b7f0abba8cbc948225aa958 100644 --- a/htdocs/langs/en_US/users.lang +++ b/htdocs/langs/en_US/users.lang @@ -100,3 +100,4 @@ WeeklyHours=Weekly hours ColorUser=Color of the user DisabledInMonoUserMode=Disabled in maintenance mode UserAccountancyCode=User accountancy code +DateEmployment=Date of Employment diff --git a/htdocs/langs/fr_FR/users.lang b/htdocs/langs/fr_FR/users.lang index 5e549f607a46e456771f5376ff76f8595e381ddf..1000fd233d416694045fdc7855be99fc69b3c325 100644 --- a/htdocs/langs/fr_FR/users.lang +++ b/htdocs/langs/fr_FR/users.lang @@ -100,3 +100,4 @@ WeeklyHours=Heures de travail hebdomadaires ColorUser=Couleur de l'utilisateur DisabledInMonoUserMode=Désactivé en mode maintenance UserAccountancyCode=Code comptable utilisateur +DateEmployment=Date d'embauche diff --git a/htdocs/user/card.php b/htdocs/user/card.php index 032628e4e673235d0969408b5979361954ea68c7..bbbf738ddf29cb820a62c07b4e86e629310aa737 100644 --- a/htdocs/user/card.php +++ b/htdocs/user/card.php @@ -215,7 +215,9 @@ if (empty($reshook)) { $object->salaryextra = GETPOST("salaryextra") != '' ? GETPOST("salaryextra") : ''; $object->weeklyhours = GETPOST("weeklyhours") != '' ? GETPOST("weeklyhours") : ''; + $date = dol_mktime(0, 0, 0, GETPOST('dateemploymentmonth'), GETPOST('dateemploymentday'), GETPOST('dateemploymentyear')); $object->color = GETPOST("color") != '' ? GETPOST("color") : ''; + $object->dateemployment = $date != '' ? $date : ''; // Fill array 'array_options' with data from add form $ret = $extrafields->setOptionalsFromPost($extralabels, $object); @@ -360,6 +362,8 @@ if (empty($reshook)) { $object->weeklyhours = GETPOST("weeklyhours") != '' ? GETPOST("weeklyhours") : ''; $object->color = GETPOST("color") != '' ? GETPOST("color") : ''; + $date = dol_mktime(0, 0, 0, GETPOST('dateemploymentmonth'), GETPOST('dateemploymentday'), GETPOST('dateemploymentyear')); + $object->dateemployment = $date != '' ? $date : ''; if (! empty($conf->multicompany->enabled)) { @@ -1060,6 +1064,13 @@ if (($action == 'create') || ($action == 'adduserldap')) print '<input size="8" type="text" name="weeklyhours" value="'.GETPOST('weeklyhours').'">'; print '</td>'; print "</tr>\n"; + + // Date employment + print '<tr><td>'.$langs->trans("DateEmployment").'</td>'; + print '<td>'; + echo $form->select_date(GETPOST('dateemployment'),'dateemployment',0,0,1,'form'.'dateemployment',1,0,1); + print '</td>'; + print "</tr>\n"; // Accountancy code if ($conf->accounting->enabled) @@ -1415,6 +1426,13 @@ else print '<td>'.$object->accountancy_code.'</td>'; } + // Date employment + print '<tr><td>'.$langs->trans("DateEmployment").'</td>'; + print '<td>'; + print $object->dateemployment; + print '</td>'; + print "</tr>\n"; + print '</table>'; print '</div>'; @@ -2189,6 +2207,13 @@ else print '</td>'; print "</tr>\n"; + // Date employment + print '<tr><td>'.$langs->trans("DateEmployment").'</td>'; + print '<td>'; + echo $form->select_date(GETPOST('dateemployment')?GETPOST('dateemployment'):$object->dateemployment,'dateemployment',0,0,1,'form'.'dateemployment',1,0,1); + print '</td>'; + print "</tr>\n"; + // Accountancy code if ($conf->accounting->enabled) { diff --git a/htdocs/user/class/user.class.php b/htdocs/user/class/user.class.php index d10585fe12dd789743bc8880e98b93156487b194..c26a040543de177810cc6253408b2e55e0df5626 100644 --- a/htdocs/user/class/user.class.php +++ b/htdocs/user/class/user.class.php @@ -122,6 +122,8 @@ class User extends CommonObject var $weeklyhours; // Weekly hours var $color; // Define background color for user in agenda + + var $dateemployment; // Define date of employment by company /** * Constructor de la classe @@ -187,6 +189,7 @@ class User extends CommonObject $sql.= " u.salaryextra,"; $sql.= " u.weeklyhours,"; $sql.= " u.color,"; + $sql.= " u.dateemployment,"; $sql.= " u.ref_int, u.ref_ext,"; $sql.= " c.code as country_code, c.label as country,"; $sql.= " d.code_departement as state_code, d.nom as state"; @@ -286,6 +289,7 @@ class User extends CommonObject $this->salaryextra = $obj->salaryextra; $this->weeklyhours = $obj->weeklyhours; $this->color = $obj->color; + $this->dateemployment = $obj->dateemployment; $this->datec = $this->db->jdate($obj->datec); $this->datem = $this->db->jdate($obj->datem); @@ -1260,6 +1264,7 @@ class User extends CommonObject $this->town = empty($this->town)?'':$this->town; $this->accountancy_code = trim($this->accountancy_code); $this->color = empty($this->color)?'':$this->color; + $this->dateemployment = empty($this->dateemployment)?'':$this->dateemployment; // Check parameters if (! empty($conf->global->USER_MAIL_REQUIRED) && ! isValidEMail($this->email)) @@ -1300,6 +1305,11 @@ class User extends CommonObject $sql.= ", signature = '".$this->db->escape($this->signature)."'"; $sql.= ", accountancy_code = '".$this->db->escape($this->accountancy_code)."'"; $sql.= ", color = '".$this->db->escape($this->color)."'"; + if (!empty($this->dateemployment)) { + $sql.= ", dateemployment = '".$this->db->idate($this->dateemployment)."'"; + } else { + $sql.= ", dateemployment = NULL"; + } $sql.= ", note = '".$this->db->escape($this->note)."'"; $sql.= ", photo = ".($this->photo?"'".$this->db->escape($this->photo)."'":"null"); $sql.= ", openid = ".($this->openid?"'".$this->db->escape($this->openid)."'":"null"); @@ -1311,7 +1321,7 @@ class User extends CommonObject $sql.= ", weeklyhours= ".($this->weeklyhours != ''?"'".$this->db->escape($this->weeklyhours)."'":"null"); $sql.= ", entity = '".$this->db->escape($this->entity)."'"; $sql.= " WHERE rowid = ".$this->id; - + dol_syslog(get_class($this)."::update", LOG_DEBUG); $resql = $this->db->query($sql); if ($resql)