Merge remote-tracking branch 'upstream/develop' into 10.0_accoutancy_stats
This commit is contained in:
commit
0c6f6b80cb
@ -1286,8 +1286,11 @@ else
|
|||||||
$cate_arbo = $form->select_all_categories(Categorie::TYPE_MEMBER, null, null, null, null, 1);
|
$cate_arbo = $form->select_all_categories(Categorie::TYPE_MEMBER, null, null, null, null, 1);
|
||||||
$c = new Categorie($db);
|
$c = new Categorie($db);
|
||||||
$cats = $c->containing($object->id, Categorie::TYPE_MEMBER);
|
$cats = $c->containing($object->id, Categorie::TYPE_MEMBER);
|
||||||
foreach ($cats as $cat) {
|
$arrayselected = array();
|
||||||
$arrayselected[] = $cat->id;
|
if (is_array($cats)) {
|
||||||
|
foreach ($cats as $cat) {
|
||||||
|
$arrayselected[] = $cat->id;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
print $form->multiselectarray('memcats', $cate_arbo, $arrayselected, '', 0, '', 0, '100%');
|
print $form->multiselectarray('memcats', $cate_arbo, $arrayselected, '', 0, '', 0, '100%');
|
||||||
print "</td></tr>";
|
print "</td></tr>";
|
||||||
|
|||||||
@ -59,6 +59,9 @@ class Adherent extends CommonObject
|
|||||||
|
|
||||||
public $mesgs;
|
public $mesgs;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string login of member
|
||||||
|
*/
|
||||||
public $login;
|
public $login;
|
||||||
|
|
||||||
//! Clear password in memory
|
//! Clear password in memory
|
||||||
@ -68,29 +71,70 @@ class Adherent extends CommonObject
|
|||||||
//! Encrypted password in database (always defined)
|
//! Encrypted password in database (always defined)
|
||||||
public $pass_indatabase_crypted;
|
public $pass_indatabase_crypted;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string company name
|
||||||
|
* @deprecated
|
||||||
|
*/
|
||||||
public $societe;
|
public $societe;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var Societe $company {@type Societe}
|
* @var string company name
|
||||||
*/
|
*/
|
||||||
public $company;
|
public $company;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var int Thirdparty ID
|
||||||
|
*/
|
||||||
|
public $fk_soc;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var string Address
|
* @var string Address
|
||||||
*/
|
*/
|
||||||
public $address;
|
public $address;
|
||||||
|
|
||||||
public $zip;
|
/**
|
||||||
|
* @var string zipcode
|
||||||
|
*/
|
||||||
|
public $zip;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string town
|
||||||
|
*/
|
||||||
public $town;
|
public $town;
|
||||||
|
|
||||||
public $state_id; // Id of department
|
/**
|
||||||
public $state_code; // Code of department
|
* @var int Id of state
|
||||||
public $state; // Label of department
|
*/
|
||||||
|
public $state_id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string Code of state
|
||||||
|
*/
|
||||||
|
public $state_code;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string Label of state
|
||||||
|
*/
|
||||||
|
public $state;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string email
|
||||||
|
*/
|
||||||
public $email;
|
public $email;
|
||||||
|
|
||||||
public $skype;
|
/**
|
||||||
public $twitter;
|
* @var string skype account
|
||||||
|
*/
|
||||||
|
public $skype;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string twitter account
|
||||||
|
*/
|
||||||
|
public $twitter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string facebook account
|
||||||
|
*/
|
||||||
public $facebook;
|
public $facebook;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -120,8 +164,12 @@ class Adherent extends CommonObject
|
|||||||
|
|
||||||
public $morphy;
|
public $morphy;
|
||||||
public $public;
|
public $public;
|
||||||
public $statut; // -1:brouillon, 0:resilie, >=1:valide,paye
|
|
||||||
public $photo;
|
// -1:brouillon, 0:resilie, >=1:valide,paye
|
||||||
|
// def in common object
|
||||||
|
//public $statut;
|
||||||
|
|
||||||
|
public $photo;
|
||||||
|
|
||||||
public $datec;
|
public $datec;
|
||||||
public $datem;
|
public $datem;
|
||||||
@ -129,21 +177,20 @@ class Adherent extends CommonObject
|
|||||||
|
|
||||||
public $birth;
|
public $birth;
|
||||||
|
|
||||||
public $note_public;
|
/**
|
||||||
public $note_private;
|
* @var int id type member
|
||||||
|
*/
|
||||||
|
public $typeid;
|
||||||
|
|
||||||
public $typeid; // Id type adherent
|
/**
|
||||||
public $type; // Libelle type adherent
|
* @var string label type member
|
||||||
|
*/
|
||||||
|
public $type;
|
||||||
public $need_subscription;
|
public $need_subscription;
|
||||||
|
|
||||||
public $user_id;
|
public $user_id;
|
||||||
public $user_login;
|
public $user_login;
|
||||||
|
|
||||||
/**
|
|
||||||
* @var int Thirdparty ID
|
|
||||||
*/
|
|
||||||
public $fk_soc;
|
|
||||||
|
|
||||||
public $datefin; // From member table
|
public $datefin; // From member table
|
||||||
|
|
||||||
// Fields loaded by fetch_subscriptions()
|
// Fields loaded by fetch_subscriptions()
|
||||||
@ -155,7 +202,10 @@ class Adherent extends CommonObject
|
|||||||
public $last_subscription_amount;
|
public $last_subscription_amount;
|
||||||
public $subscriptions=array();
|
public $subscriptions=array();
|
||||||
|
|
||||||
public $oldcopy; // To contains a clone of this when we need to save old properties of object
|
/**
|
||||||
|
* @var Adherent To contains a clone of this when we need to save old properties of object
|
||||||
|
*/
|
||||||
|
public $oldcopy;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var int Entity
|
* @var int Entity
|
||||||
@ -593,11 +643,11 @@ class Adherent extends CommonObject
|
|||||||
$luser->societe_id=$this->societe;
|
$luser->societe_id=$this->societe;
|
||||||
|
|
||||||
$luser->birth=$this->birth;
|
$luser->birth=$this->birth;
|
||||||
$luser->address=$this->address;
|
$luser->address=$this->address;
|
||||||
$luser->zip=$this->zip;
|
$luser->zip=$this->zip;
|
||||||
$luser->town=$this->town;
|
$luser->town=$this->town;
|
||||||
$luser->country_id=$this->country_id;
|
$luser->country_id=$this->country_id;
|
||||||
$luser->state_id=$this->state_id;
|
$luser->state_id=$this->state_id;
|
||||||
|
|
||||||
$luser->email=$this->email;
|
$luser->email=$this->email;
|
||||||
$luser->skype=$this->skype;
|
$luser->skype=$this->skype;
|
||||||
|
|||||||
@ -11,6 +11,7 @@
|
|||||||
* Copyright (C) 2011-2016 Alexandre Spangaro <aspangaro.dolibarr@gmail.com>
|
* Copyright (C) 2011-2016 Alexandre Spangaro <aspangaro.dolibarr@gmail.com>
|
||||||
* Copyright (C) 2015 Ferran Marcet <fmarcet@2byte.es>
|
* Copyright (C) 2015 Ferran Marcet <fmarcet@2byte.es>
|
||||||
* Copyright (C) 2016 Raphaël Doursenaud <rdoursenaud@gpcsolutions.fr>
|
* Copyright (C) 2016 Raphaël Doursenaud <rdoursenaud@gpcsolutions.fr>
|
||||||
|
* Copyright (C) 2018 Frédéric France <frederic.france@netlogic.fr>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -995,7 +996,7 @@ function fieldList($fieldlist, $obj='', $tabname='', $context='')
|
|||||||
print '<td>';
|
print '<td>';
|
||||||
if (! empty($conf->global->MAIN_MULTILANGS))
|
if (! empty($conf->global->MAIN_MULTILANGS))
|
||||||
{
|
{
|
||||||
$selectedlang = GETPOSTISSET('langcode','aZ09')?GETPOST('langcode','aZ09'):$langs->defaultlang;
|
$selectedlang = GETPOSTISSET('langcode')?GETPOST('langcode', 'aZ09'):$langs->defaultlang;
|
||||||
if ($context == 'edit') $selectedlang = $obj->{$fieldlist[$field]};
|
if ($context == 'edit') $selectedlang = $obj->{$fieldlist[$field]};
|
||||||
print $formadmin->select_language($selectedlang, 'langcode', 0, null, 1, 0, 0, 'maxwidth150');
|
print $formadmin->select_language($selectedlang, 'langcode', 0, null, 1, 0, 0, 'maxwidth150');
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6861,10 +6861,10 @@ class Form
|
|||||||
$dir=$conf->user->dir_output;
|
$dir=$conf->user->dir_output;
|
||||||
if (! empty($object->photo))
|
if (! empty($object->photo))
|
||||||
{
|
{
|
||||||
if ((string) $imagesize == 'mini') $file=get_exdir($id, 2, 0, 0, $object, 'user').getImageFileNameForSize($object->photo, '_mini');
|
if ((string) $imagesize == 'mini') $file=get_exdir(0, 0, 0, 0, $object, 'user').$object->id.'/'.getImageFileNameForSize($object->photo, '_mini');
|
||||||
else if ((string) $imagesize == 'small') $file=get_exdir($id, 2, 0, 0, $object, 'user').getImageFileNameForSize($object->photo, '_small');
|
else if ((string) $imagesize == 'small') $file=get_exdir(0, 0, 0, 0, $object, 'user').$object->id.'/'.getImageFileNameForSize($object->photo, '_small');
|
||||||
else $file=get_exdir($id, 2, 0, 0, $object, 'user').$object->photo;
|
else $file=get_exdir(0, 0, 0, 0, $object, 'user').'/'.$object->id.'/'.$object->photo;
|
||||||
$originalfile=get_exdir($id, 2, 0, 0, $object, 'user').$object->photo;
|
$originalfile=get_exdir(0, 0, 0, 0, $object, 'user').'/'.$object->id.'/'.$object->photo;
|
||||||
}
|
}
|
||||||
if (! empty($conf->global->MAIN_OLD_IMAGE_LINKS)) $altfile=$object->id.".jpg"; // For backward compatibility
|
if (! empty($conf->global->MAIN_OLD_IMAGE_LINKS)) $altfile=$object->id.".jpg"; // For backward compatibility
|
||||||
$email=$object->email;
|
$email=$object->email;
|
||||||
|
|||||||
@ -377,7 +377,7 @@ function ajax_combobox($htmlname, $events=array(), $minLengthToAutocomplete=0, $
|
|||||||
|
|
||||||
// select2 disabled for smartphones with standard browser.
|
// select2 disabled for smartphones with standard browser.
|
||||||
// TODO With select2 v4, it seems ok, except that responsive style on table become crazy when scrolling at end of array)
|
// TODO With select2 v4, it seems ok, except that responsive style on table become crazy when scrolling at end of array)
|
||||||
if ($conf->browser->layout == 'phone') return '';
|
if (! empty($conf->browser->layout) && $conf->browser->layout == 'phone') return '';
|
||||||
|
|
||||||
if (! empty($conf->global->MAIN_DISABLE_AJAX_COMBOX)) return '';
|
if (! empty($conf->global->MAIN_DISABLE_AJAX_COMBOX)) return '';
|
||||||
if (empty($conf->use_javascript_ajax)) return '';
|
if (empty($conf->use_javascript_ajax)) return '';
|
||||||
|
|||||||
@ -446,7 +446,7 @@ if (! GETPOST('action','aZ09') || preg_match('/upgrade/i',GETPOST('action','aZ09
|
|||||||
$beforeversionarray=explode('.','9.0.9');
|
$beforeversionarray=explode('.','9.0.9');
|
||||||
if (versioncompare($versiontoarray,$afterversionarray) >= 0 && versioncompare($versiontoarray,$beforeversionarray) <= 0)
|
if (versioncompare($versiontoarray,$afterversionarray) >= 0 && versioncompare($versiontoarray,$beforeversionarray) <= 0)
|
||||||
{
|
{
|
||||||
//migrate_rename_directories($db,$langs,$conf,'/contracts','/contract');
|
migrate_user_photospath();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4826,7 +4826,76 @@ function migrate_reload_menu($db,$langs,$conf,$versionto)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Migrate file from old path to new one for users
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
function migrate_user_photospath()
|
||||||
|
{
|
||||||
|
global $conf, $db, $langs;
|
||||||
|
|
||||||
|
print '<tr><td colspan="4">';
|
||||||
|
|
||||||
|
print '<b>'.$langs->trans('MigrationUserPhotoPath')."</b><br>\n";
|
||||||
|
|
||||||
|
include_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
|
||||||
|
$fuser = new User($db);
|
||||||
|
|
||||||
|
$sql = "SELECT rowid as uid from ".MAIN_DB_PREFIX."user"; // Get list of all users
|
||||||
|
$resql = $db->query($sql);
|
||||||
|
if ($resql)
|
||||||
|
{
|
||||||
|
while ($obj = $db->fetch_object($resql))
|
||||||
|
{
|
||||||
|
$fuser->fetch($obj->uid);
|
||||||
|
//echo '<hr>'.$fuser->id.' -> '.$fuser->entity;
|
||||||
|
$entity = (!empty($fuser->entity)) ? $fuser->entity : 1;
|
||||||
|
$dir = $conf->user->multidir_output[$entity];
|
||||||
|
$origin = $dir .'/'. get_exdir($fuser->id,2,0,0,$fuser,'user');
|
||||||
|
$destin = $dir.'/'.$fuser->id;
|
||||||
|
|
||||||
|
$error = 0;
|
||||||
|
|
||||||
|
$origin_osencoded=dol_osencode($origin);
|
||||||
|
$destin_osencoded=dol_osencode($destin);
|
||||||
|
dol_mkdir($destin);
|
||||||
|
//echo '<hr>'.$origin.' -> '.$destin;
|
||||||
|
if (dol_is_dir($origin))
|
||||||
|
{
|
||||||
|
$handle=opendir($origin_osencoded);
|
||||||
|
if (is_resource($handle))
|
||||||
|
{
|
||||||
|
while (($file = readdir($handle)) !== false)
|
||||||
|
{
|
||||||
|
if ($file != '.' && $file != '..' && is_dir($origin_osencoded.'/'.$file))
|
||||||
|
{
|
||||||
|
$thumbs = opendir($origin_osencoded.'/'.$file);
|
||||||
|
if (is_resource($thumbs))
|
||||||
|
{
|
||||||
|
dol_mkdir($destin.'/'.$file);
|
||||||
|
while (($thumb = readdir($thumbs)) !== false)
|
||||||
|
{
|
||||||
|
dol_move($origin.'/'.$file.'/'.$thumb, $destin.'/'.$file.'/'.$thumb);
|
||||||
|
}
|
||||||
|
// dol_delete_dir($origin.'/'.$file);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (dol_is_file($origin.'/'.$file) )
|
||||||
|
{
|
||||||
|
dol_move($origin.'/'.$file, $destin.'/'.$file);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
print '</td></tr>';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* A faire egalement: Modif statut paye et fk_facture des factures payes completement
|
/* A faire egalement: Modif statut paye et fk_facture des factures payes completement
|
||||||
|
|||||||
@ -34,6 +34,8 @@ ECMDocsByProjects=Documents linked to projects
|
|||||||
ECMDocsByUsers=Documents linked to users
|
ECMDocsByUsers=Documents linked to users
|
||||||
ECMDocsByInterventions=Documents linked to interventions
|
ECMDocsByInterventions=Documents linked to interventions
|
||||||
ECMDocsByExpenseReports=Documents linked to expense reports
|
ECMDocsByExpenseReports=Documents linked to expense reports
|
||||||
|
ECMDocsByHolidays=Documents linked to holidays
|
||||||
|
ECMDocsBySupplierProposals=Documents linked to supplier proposals
|
||||||
ECMNoDirectoryYet=No directory created
|
ECMNoDirectoryYet=No directory created
|
||||||
ShowECMSection=Show directory
|
ShowECMSection=Show directory
|
||||||
DeleteSection=Remove directory
|
DeleteSection=Remove directory
|
||||||
|
|||||||
@ -200,6 +200,7 @@ MigrationRemiseEntity=Update entity field value of llx_societe_remise
|
|||||||
MigrationRemiseExceptEntity=Update entity field value of llx_societe_remise_except
|
MigrationRemiseExceptEntity=Update entity field value of llx_societe_remise_except
|
||||||
MigrationUserRightsEntity=Update entity field value of llx_user_rights
|
MigrationUserRightsEntity=Update entity field value of llx_user_rights
|
||||||
MigrationUserGroupRightsEntity=Update entity field value of llx_usergroup_rights
|
MigrationUserGroupRightsEntity=Update entity field value of llx_usergroup_rights
|
||||||
|
MigrationUserPhotoPath=Migration of photo paths for users
|
||||||
MigrationReloadModule=Reload module %s
|
MigrationReloadModule=Reload module %s
|
||||||
MigrationResetBlockedLog=Reset module BlockedLog for v7 algorithm
|
MigrationResetBlockedLog=Reset module BlockedLog for v7 algorithm
|
||||||
ShowNotAvailableOptions=Show unavailable options
|
ShowNotAvailableOptions=Show unavailable options
|
||||||
|
|||||||
@ -449,14 +449,14 @@ if (empty($reshook)) {
|
|||||||
|
|
||||||
if (!$error && !count($object->errors)) {
|
if (!$error && !count($object->errors)) {
|
||||||
if (GETPOST('deletephoto') && $object->photo) {
|
if (GETPOST('deletephoto') && $object->photo) {
|
||||||
$fileimg = $conf->user->dir_output.'/'.get_exdir($object->id, 2, 0, 1, $object, 'user').'/logos/'.$object->photo;
|
$fileimg = $conf->user->dir_output.'/'.get_exdir(0, 0, 0, 0, $object, 'user').'/'.$object->id.'/logos/'.$object->photo;
|
||||||
$dirthumbs = $conf->user->dir_output.'/'.get_exdir($object->id, 2, 0, 1, $object, 'user').'/logos/thumbs';
|
$dirthumbs = $conf->user->dir_output.'/'.get_exdir(0, 0, 0, 0, $object, 'user').'/'.$object->id.'/logos/thumbs';
|
||||||
dol_delete_file($fileimg);
|
dol_delete_file($fileimg);
|
||||||
dol_delete_dir_recursive($dirthumbs);
|
dol_delete_dir_recursive($dirthumbs);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($_FILES['photo']['tmp_name']) && trim($_FILES['photo']['tmp_name'])) {
|
if (isset($_FILES['photo']['tmp_name']) && trim($_FILES['photo']['tmp_name'])) {
|
||||||
$dir = $conf->user->dir_output.'/'.get_exdir($object->id, 2, 0, 1, $object, 'user');
|
$dir = $conf->user->dir_output.'/'.get_exdir(0, 0, 0, 0, $object, 'user').'/'.$object->id;
|
||||||
|
|
||||||
dol_mkdir($dir);
|
dol_mkdir($dir);
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user