Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into

develop

Conflicts:
	htdocs/langs/fr_FR/admin.lang
	htdocs/langs/fr_FR/companies.lang
This commit is contained in:
Laurent Destailleur 2013-11-11 22:29:54 +01:00
commit 2b12c492e2
34 changed files with 139 additions and 114 deletions

View File

@ -611,6 +611,7 @@ class ActionComm extends CommonObject
$resql=$this->db->query($sql);
if ($resql)
{
// This assignment in condition is not a bug. It allows walking the results.
while ($obj=$this->db->fetch_object($resql))
{
$this->nbtodo++;
@ -933,6 +934,7 @@ class ActionComm extends CommonObject
if ($resql)
{
// Note: Output of sql request is encoded in $conf->file->character_set_client
// This assignment in condition is not a bug. It allows walking the results.
while ($obj=$this->db->fetch_object($resql))
{
$qualified=true;

View File

@ -78,14 +78,14 @@ class CActionComm
$this->libelle = $obj->libelle;
$this->active = $obj->active;
$this->db->free($resql);
return 1;
}
else
{
$this->db->free($resql);
return 0;
}
$this->db->free($resql);
}
else
{

View File

@ -270,7 +270,7 @@ class ICal
* Return Unix time from ical date time fomrat (YYYYMMDD[T]HHMMSS[Z] or YYYYMMDD[T]HHMMSS)
*
* @param string $ical_date String date
* @return timestamp
* @return int
*/
function ical_date_to_unix($ical_date)
{
@ -395,4 +395,4 @@ class ICal
return $this->cal;
}
}
?>
?>

View File

@ -167,7 +167,8 @@ if ($action == 'add_action')
$actioncomm->datep = $datep;
$actioncomm->datef = $datef;
$actioncomm->percentage = $percentage;
$actioncomm->duree=((GETPOST('dureehour') * 60) + GETPOST('dureemin')) * 60;
$actioncomm->duree=((float) (GETPOST('dureehour') * 60) + (float) GETPOST('dureemin')) *
60;
$usertodo=new User($db);
if ($_POST["affectedto"] > 0)
@ -518,7 +519,7 @@ if ($action == 'create')
if (GETPOST("afaire") == 1) $percent=0;
else if (GETPOST("afaire") == 2) $percent=100;
}
print $htmlactions->form_select_status_action('formaction',$percent,1,'complete');
$htmlactions->form_select_status_action('formaction',$percent,1,'complete');
print '</td></tr>';
// Location
@ -774,7 +775,7 @@ if ($id > 0)
// Status
print '<tr><td class="nowrap">'.$langs->trans("Status").' / '.$langs->trans("Percentage").'</td><td colspan="3">';
$percent=GETPOST("percentage")?GETPOST("percentage"):$act->percentage;
print $htmlactions->form_select_status_action('formaction',$percent,1);
$htmlactions->form_select_status_action('formaction',$percent,1);
print '</td></tr>';
// Location

View File

@ -296,7 +296,7 @@ class Propal extends CommonObject
* @param int $fk_product Id du produit/service predefini
* @param double $remise_percent Pourcentage de remise de la ligne
* @param string $price_base_type HT or TTC
* @param dobule $pu_ttc Prix unitaire TTC
* @param double $pu_ttc Prix unitaire TTC
* @param int $info_bits Bits de type de lignes
* @param int $type Type of line (product, service)
* @param int $rang Position of line
@ -305,8 +305,8 @@ class Propal extends CommonObject
* @param int $fk_fournprice Id supplier price
* @param int $pa_ht Buying price without tax
* @param string $label ???
* @param timestamp $date_start Start date of the line
* @param timestamp $date_end End date of the line
* @param int $date_start Start date of the line
* @param int $date_end End date of the line
* @param array $array_option extrafields array
* @return int >0 if OK, <0 if KO
*
@ -479,8 +479,8 @@ class Propal extends CommonObject
* @param int $pa_ht Price (without tax) of product when it was bought
* @param string $label ???
* @param int $type 0/1=Product/service
* @param timestamp $date_start Start date of the line
* @param timestamp $date_end End date of the line
* @param int $date_start Start date of the line
* @param int $date_end End date of the line
* @param array $array_option extrafields array
* @return int 0 if OK, <0 if KO
*/
@ -1370,7 +1370,7 @@ class Propal extends CommonObject
* Define proposal date
*
* @param User $user Object user that modify
* @param timestamp $date Date
* @param int $date Date
* @return int <0 if KO, >0 if OK
*/
function set_date($user, $date)
@ -1407,7 +1407,7 @@ class Propal extends CommonObject
* Define end validity date
*
* @param User $user Object user that modify
* @param timestamp $date_fin_validite End of validity date
* @param int $date_fin_validite End of validity date
* @return int <0 if KO, >0 if OK
*/
function set_echeance($user, $date_fin_validite)
@ -1434,7 +1434,7 @@ class Propal extends CommonObject
* Set delivery date
*
* @param User $user Object user that modify
* @param timestamp $date_livraison Delivery date
* @param int $date_livraison Delivery date
* @return int <0 if ko, >0 if ok
*/
function set_date_livraison($user, $date_livraison)
@ -1625,7 +1625,7 @@ class Propal extends CommonObject
*
* @param User $user Object user that close
* @param int $statut Statut
* @param text $note Comment
* @param string $note Comment
* @param int $notrigger 1=Does not execute triggers, 0= execuete triggers
* @return int <0 if KO, >0 if OK
*/
@ -1688,7 +1688,7 @@ class Propal extends CommonObject
*
* @param User $user Object user that close
* @param int $statut Statut
* @param text $note Comment
* @param string $note Comment
* @return int <0 if KO, >0 if OK
*/
function cloture($user, $statut, $note)
@ -2368,6 +2368,7 @@ class Propal extends CommonObject
if ($mode == 'opened') $delay_warning=$conf->propal->cloture->warning_delay;
if ($mode == 'signed') $delay_warning=$conf->propal->facturation->warning_delay;
// This assignment in condition is not a bug. It allows walking the results.
while ($obj=$this->db->fetch_object($resql))
{
$this->nbtodo++;
@ -2506,6 +2507,7 @@ class Propal extends CommonObject
$resql=$this->db->query($sql);
if ($resql)
{
// This assignment in condition is not a bug. It allows walking the results.
while ($obj=$this->db->fetch_object($resql))
{
$this->nb["proposals"]=$obj->nb;

View File

@ -585,7 +585,7 @@ if ($id > 0 || ! empty($ref))
$banklinestatic->fetch($links[$key]['url_id']);
$bankstatic->id=$banklinestatic->fk_account;
$bankstatic->label=$banklinestatic->bank_account_label;
print ' ('.$langs->trans("from").' ';
print ' ('.$langs->trans("TransferFrom").' ';
print $bankstatic->getNomUrl(1,'transactions');
print ' '.$langs->trans("toward").' ';
$bankstatic->id=$objp->bankid;
@ -597,7 +597,7 @@ if ($id > 0 || ! empty($ref))
{
$bankstatic->id=$objp->bankid;
$bankstatic->label=$objp->bankref;
print ' ('.$langs->trans("from").' ';
print ' ('.$langs->trans("TransferFrom").' ';
print $bankstatic->getNomUrl(1,'');
print ' '.$langs->trans("toward").' ';
$banklinestatic->fetch($links[$key]['url_id']);

View File

@ -2135,7 +2135,7 @@ abstract class CommonObject
* Add/Update all extra fields values for the current object.
* All data to describe values to insert are stored into $this->array_options=array('keyextrafield'=>'valueextrafieldtoadd')
*
* @return void
* @return int -1=error, O=did nothing, 1=OK
*/
function insertExtraFields()
{

View File

@ -3942,7 +3942,7 @@ class Form
* Return a HTML area with the reference of object and a navigation bar for a business object
* To add a particular filter on select, you must set $object->next_prev_filter to SQL criteria.
*
* @param Object $object Object to show
* @param object $object Object to show
* @param string $paramid Name of parameter to use to name the id into the URL link
* @param string $morehtml More html content to output just before the nav bar
* @param int $shownav Show Condition (navigation is shown if value is 1)

View File

@ -503,13 +503,13 @@ class FormCompany
/**
* Return list of third parties
*
* @param Object $object Object we try to find contacts
* @param object $object Object we try to find contacts
* @param string $var_id Name of id field
* @param string $selected Pre-selected third party
* @param string $htmlname Name of HTML form
* @param array $limitto Disable answers that are not id in this array list
* @param int $forceid This is to force another object id than object->id
* @return void
* @return int The selected third party ID
* TODO obsolete ?
* cette fonction doit utiliser du javascript quoi qu'il en soit !
* autant utiliser le système combobox sans rechargement de page non ?
@ -616,7 +616,7 @@ class FormCompany
/**
* Return a select list with types of contacts
*
* @param Object $object Object to use to find type of contact
* @param object $object Object to use to find type of contact
* @param string $selected Default selected value
* @param string $htmlname HTML select name
* @param string $source Source ('internal' or 'external')

View File

@ -48,7 +48,7 @@ class Interfaces
* This function call all qualified triggers.
*
* @param string $action Trigger event code
* @param Object $object Objet concern
* @param object $object Objet concern
* @param User $user Objet user
* @param Lang $langs Objet lang
* @param Conf $conf Objet conf

View File

@ -214,7 +214,7 @@ function getTop(theitem){
offsetTrail = offsetTrail.offsetParent;
}
if (navigator.userAgent.indexOf("Mac") != -1 && typeof document.body.leftMargin != "undefined")
offsetLeft += document.body.TopMargin;
offsetTop += document.body.TopMargin;
return offsetTop;
}

View File

@ -404,7 +404,7 @@ function agenda_prepare_head()
/**
* Prepare array with list of tabs
*
* @param Object $object Object related to tabs
* @param object $object Object related to tabs
* @return array Array of tabs to shoc
*/
function actions_prepare_head($object)

View File

@ -166,10 +166,10 @@ function getParentCompanyTimeZoneInt($refgmtdate='now')
/**
* Add a delay to a date
*
* @param timestamp $time Date timestamp (or string with format YYYY-MM-DD)
* @param int $time Date timestamp (or string with format YYYY-MM-DD)
* @param int $duration_value Value of delay to add
* @param int $duration_unit Unit of added delay (d, m, y, w)
* @return timestamp New timestamp
* @return int New timestamp
*/
function dol_time_plus_duree($time,$duration_value,$duration_unit)
{
@ -317,7 +317,7 @@ function convertSecondToTime($iSecond, $format='all', $lengthOfDay=86400, $lengt
* DD/MM/YY HH:MM:SS or DD/MM/YYYY HH:MM:SS (this format should not be used anymore)
* @param int $gm 1 =Input date is GM date,
* 0 =Input date is local date using PHP server timezone
* @return date Date
* @return int Date as a timestamp
* 19700101020000 -> 7200 with gm=1
*
* @see dol_print_date, dol_mktime, dol_getdate
@ -812,4 +812,4 @@ function monthArray($outputlangs)
return $montharray;
}
?>
?>

View File

@ -26,7 +26,7 @@
/**
* Prepare array with list of tabs
*
* @param Object $object Object related to tabs
* @param object $object Object related to tabs
* @return array Array of tabs to shoc
*/
function ecm_prepare_head($object)
@ -66,7 +66,7 @@ function ecm_file_prepare_head($object)
/**
* Prepare array with list of tabs
*
* @param Object $object Object related to tabs
* @param object $object Object related to tabs
* @return array Array of tabs to shoc
*/
function ecm_prepare_head_fm($object)

View File

@ -398,16 +398,17 @@ function dol_dir_is_emtpy($folder)
if (is_dir($newfolder))
{
$handle = opendir($newfolder);
$folder_content = '';
while ((gettype($name = readdir($handle)) != "boolean"))
{
$name_array[] = $name;
}
foreach($name_array as $temp) $folder_content .= $temp;
closedir($handle);
if ($folder_content == "...") return true;
else return false;
closedir($handle);
}
else
return true; // Dir does not exists
@ -448,7 +449,7 @@ function dol_count_nb_of_line($file)
/**
* Return size of a file
*
* @param tring $pathoffile Path of file
* @param string $pathoffile Path of file
* @return string File size
*/
function dol_filesize($pathoffile)
@ -461,7 +462,7 @@ function dol_filesize($pathoffile)
* Return time of a file
*
* @param string $pathoffile Path of file
* @return timestamp Time of file
* @return int Time of file
*/
function dol_filemtime($pathoffile)
{
@ -830,7 +831,7 @@ function dol_delete_dir_recursive($dir,$count=0,$nophperrors=0)
/**
* Delete all preview files linked to object instance
*
* @param Object $object Object to clean
* @param object $object Object to clean
* @return int 0 if error, 1 if OK
*/
function dol_delete_preview($object)

View File

@ -45,7 +45,7 @@ if (! function_exists('json_encode'))
*
* @param string $class Class name
* @param string $member Name of property
* @return string Return value of static property.
* @return mixed Return value of static property
*/
function getStaticMember($class, $member)
{
@ -776,7 +776,7 @@ function dol_strftime($fmt, $ts=false, $is_gmt=false)
* Output date in a string format according to outputlangs (or langs if not defined).
* Return charset is always UTF-8, except if encodetoouput is defined. In this case charset is output charset
*
* @param timestamp $time GM Timestamps date
* @param int $time GM Timestamps date
* @param string $format Output date format
* "%d %b %Y",
* "%d/%m/%Y %H:%M",
@ -932,7 +932,7 @@ function dol_print_date($time,$format='',$tzoutput='tzserver',$outputlangs='',$e
* WARNING: This function always use PHP server timezone to return locale informations.
* Usage must be avoid.
*
* @param timestamp $timestamp Timestamp
* @param int $timestamp Timestamp
* @param boolean $fast Fast mode
* @return array Array of informations
* If no fast mode:
@ -989,7 +989,7 @@ function dol_getdate($timestamp,$fast=false)
* @param int $year Year
* @param int $gm 1=Input informations are GMT values, otherwise local to server TZ
* @param int $check 0=No check on parameters (Can use day 32, etc...)
* @return timestamp Date as a timestamp, '' if error
* @return int Date as a timestamp, '' if error
* @see dol_print_date, dol_stringtotime, dol_getdate
*/
function dol_mktime($hour,$minute,$second,$month,$day,$year,$gm=false,$check=1)
@ -1048,7 +1048,7 @@ function dol_mktime($hour,$minute,$second,$month,$day,$year,$gm=false,$check=1)
* 'tzserver' => we add the PHP server timezone
* 'tzref' => we add the company timezone
* 'tzuser' => we add the user timezone
* @return timestamp $date Timestamp
* @return int $date Timestamp
*/
function dol_now($mode='gmt')
{
@ -2920,7 +2920,7 @@ function get_localtax($tva, $local, $thirdparty_buyer="", $thirdparty_seller="")
* Instead this function must be called when adding a line to get (array of localtax and type) and
* provide it to the function calcul_price_total.
*
* @param real $vatrate VAT Rate
* @param float $vatrate VAT Rate
* @param int $local Number of localtax (1 or 2, or 0 to return 1 & 2)
* @param int $thirdparty Company object
* @return array array(localtax_type1(1-6 / 0 if not found), rate of localtax1, ...)

View File

@ -178,7 +178,7 @@ function dol_print_file($langs,$filename,$searchalt=0)
* Show informations on an object
* TODO Move this into html.formother
*
* @param Object $object Objet to show
* @param object $object Objet to show
* @return void
*/
function dol_print_object_info($object)

View File

@ -1512,7 +1512,7 @@ function pdf_getTotalQty($object,$type,$outputlangs)
*
* @param object $object Object
* @param Translate $outputlangs Object lang for output
* @return void
* @return array Linked objects
*/
function pdf_getLinkedObjects($object,$outputlangs)
{

View File

@ -26,7 +26,7 @@
/**
* Prepare array with list of tabs
*
* @param Object $object Object related to tabs
* @param object $object Object related to tabs
* @return array Array of tabs to shoc
*/
function propal_prepare_head($object)
@ -147,4 +147,4 @@ function propal_admin_prepare_head($object)
}
?>
?>

View File

@ -98,7 +98,7 @@
<tr>
<td>
<b>__Name__ :</b><br>
__DONATOR_NAME__<br>
__DONATOR_FIRSTNAME__ __DONATOR_LASTNAME__<br>
<b>__Address__ :</b><br>
__DONATOR_ADDRESS__<br>
<b>__Zip__ :</b> __DONATOR_ZIP__<br>

View File

@ -143,7 +143,8 @@ class html_cerfafr extends ModeleDon
$form = str_replace('__MAIN_INFO_SOCIETE_ADDRESS__',$mysoc->address,$form);
$form = str_replace('__MAIN_INFO_SOCIETE_ZIP__',$mysoc->zip,$form);
$form = str_replace('__MAIN_INFO_SOCIETE_TOWN__',$mysoc->town,$form);
$form = str_replace('__DONATOR_NAME__',$don->nom,$form);
$form = str_replace('__DONATOR_FIRSTNAME__',$don->firstname,$form);
$form = str_replace('__DONATOR_LASTNAME__',$don->lastname,$form);
$form = str_replace('__DONATOR_ADDRESS__',$don->address,$form);
$form = str_replace('__DONATOR_ZIP__',$don->zip,$form);
$form = str_replace('__DONATOR_TOWN__',$don->town,$form);

View File

@ -147,7 +147,7 @@ abstract class ModeleNumRefPropales
* Create a document onto disk according to template module.
*
* @param DoliDB $db Database handler
* @param Object $object Object proposal
* @param object $object Object proposal
* @param string $modele Force model to use ('' to not force)
* @param Translate $outputlangs Object langs to use for output
* @param int $hidedetails Hide details of lines

View File

@ -39,12 +39,20 @@ class EcmDirectory // extends CommonObject
var $cachenbofdoc=-1; // By default cache initialized with value 'not calculated'
var $date_c;
var $date_m;
public $fk_user_m;
public $fk_user_c;
public $ref;
var $cats=array();
var $motherof=array();
var $forbiddenchars = array('<','>',':','/','\\','?','*','|','"');
public $full_arbo_loaded;
public $error;
public $errors;
/**
* Constructor
@ -490,7 +498,8 @@ class EcmDirectory // extends CommonObject
$resql = $this->db->query($sql);
if ($resql)
{
while ($obj= $this->db->fetch_object($resql))
// This assignment in condition is not a bug. It allows walking the results.
while ($obj=$this->db->fetch_object($resql))
{
$this->motherof[$obj->id_son]=$obj->id_parent;
}
@ -555,6 +564,7 @@ class EcmDirectory // extends CommonObject
{
$this->cats = array();
$i=0;
// This assignment in condition is not a bug. It allows walking the results.
while ($obj = $this->db->fetch_object($resql))
{
$this->cats[$obj->rowid]['id'] = $obj->rowid;
@ -642,8 +652,6 @@ class EcmDirectory // extends CommonObject
$this->build_path_from_id_categ($val,$protection);
}
}
return 1;
}
/**

View File

@ -71,7 +71,7 @@ $ftp_user=$conf->global->$s_ftp_user;
$ftp_password=$conf->global->$s_ftp_password;
$ftp_passive=$conf->global->$s_ftp_passive;
$conn_id=0; // FTP connection ID
$conn_id=null; // FTP connection ID

View File

@ -1,26 +0,0 @@
-- ============================================================================
-- Copyright (C) 2013 Juanjo Menent <regis.houssin@capnetworks.com>
--
-- 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
-- the Free Software Foundation; either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
--
-- ===========================================================================
create table llx_soc_localtaxes
(
rowid integer AUTO_INCREMENT PRIMARY KEY,
fk_soc integer,
fk_tva integer,
localtax1_tx double(6,3) DEFAULT 0, -- localtax1 rate
localtax2_tx double(6,3) DEFAULT 0, -- localtax2 rate
)ENGINE=innodb;

View File

@ -1,22 +0,0 @@
-- ============================================================================
-- Copyright (C) 2013 Juanjo Menent <jmenent@2byte.es>
--
-- 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
-- the Free Software Foundation; either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
--
-- ============================================================================
ALTER TABLE llx_soc_localtax ADD UNIQUE INDEX uk_soc_localtax_tax (fk_soc, fk_tax);
ALTER TABLE llx_propal ADD INDEX idx_soc_localtax_fk_soc (fk_soc);

View File

@ -487,8 +487,8 @@ Module2700Desc= Utilise le service en ligne Gravatar (www.gravatar.com) pour aff
Module2800Desc=Client FTP
Module2900Name= GeoIPMaxmind
Module2900Desc= Capacités de conversion GeoIP Maxmind
# Module3100Name= Skype
# Module3100Desc= Add a Skype button into card of adherents / third parties / contacts
Module3100Name= Skype
Module3100Desc= Ajouter un button Skype dans les fiches adhérents / tiers / contacts
Module5000Name=Multi-société
Module5000Desc=Permet de gérer plusieurs sociétés
Module6000Name=Workflow

View File

@ -66,8 +66,8 @@ Country=Pays
CountryCode=Code pays
CountryId=Identifiant pays
Phone=Téléphone
# Skype=Skype
# Call=Call
Skype=Skype
Call=Appeler
PhonePro=Tél pro.
PhonePerso=Tél perso.
PhoneMobile=Tél portable

View File

@ -158,7 +158,7 @@ print '</form>';
$sql = "SELECT p.label, p.rowid, p.fk_product_type, p.ref,";
$sql.= " d.fk_product,";
$sql.= " f.rowid as facid, f.facnumber, f.total as total_ht,";
$sql.= " f.datef, f.paye, f.fk_statut as statut";
$sql.= " f.datef, f.paye, f.fk_statut as statut,";
$sql.= " sum(d.total_ht) as selling_price,";
$sql.= " sum(".$db->ifsql('d.total_ht <=0','d.qty * d.buy_price_ht * -1','d.qty * d.buy_price_ht').") as buying_price,";
$sql.= " sum(".$db->ifsql('d.total_ht <=0','-1 * (abs(d.total_ht) - (d.buy_price_ht * d.qty))','d.total_ht - (d.buy_price_ht * d.qty)').") as marge";

View File

@ -215,7 +215,7 @@ $sql.= ' GROUP BY p.rowid, p.ref, p.label, p.price';
$sql.= ', p.price_ttc, p.price_base_type,p.fk_product_type, p.tms';
$sql.= ', p.duration, p.tobuy, p.seuil_stock_alerte';
$sql.= ', p.desiredstock, s.fk_product';
$sql.= ' HAVING p.desiredstock > SUM('.$db->ifsql("s.reel IS NULL", "s.reel", "0").')';
$sql.= ' HAVING p.desiredstock > SUM('.$db->ifsql("s.reel IS NULL", "0", "s.reel").')';
$sql.= ' AND p.desiredstock > 0';
if ($salert == 'on') // Option to see when stock is lower than alert
{

View File

@ -92,7 +92,7 @@ $filter=GETPOST('filter');
$statut=GETPOST('statut');
if (! $sortorder) { $sortorder="ASC"; }
if (! $sortfield) { $sortfield="nom"; }
if (! $sortfield) { $sortfield="lastname"; }
/*

View File

@ -2784,7 +2784,7 @@ class Societe extends CommonObject
* @param User $user User making change
* @return int <0 if KO, >0 if OK
*/
function set_outstanding($user)
function set_OutstandingBill ($user)
{
if ($this->id)
{

View File

@ -8,6 +8,7 @@
* Copyright (C) 2005 Lionel Cousteix <etm_ltd@tiscali.co.uk>
* Copyright (C) 2011 Herve Prot <herve.prot@symeos.com>
* Copyright (C) 2013 Philippe Grand <philippe.grand@atoo-net.com>
* Copyright (C) 2013 Alexandre Spangaro <alexandre.spangaro@gmail.com>
*
* 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
@ -50,6 +51,7 @@ class User extends CommonObject
var $firstname;
var $note;
var $email;
var $skype;
var $job;
var $signature;
var $office_phone;
@ -140,7 +142,7 @@ class User extends CommonObject
$login=trim($login);
// Get user
$sql = "SELECT u.rowid, u.lastname, u.firstname, u.email, u.job, u.signature, u.office_phone, u.office_fax, u.user_mobile,";
$sql = "SELECT u.rowid, u.lastname, u.firstname, u.email, u.job, u.skype, u.signature, u.office_phone, u.office_fax, u.user_mobile,";
$sql.= " u.admin, u.login, u.note,";
$sql.= " u.pass, u.pass_crypted, u.pass_temp,";
$sql.= " u.fk_societe, u.fk_socpeople, u.fk_member, u.fk_user, u.ldap_sid,";
@ -203,6 +205,7 @@ class User extends CommonObject
$this->office_fax = $obj->office_fax;
$this->user_mobile = $obj->user_mobile;
$this->email = $obj->email;
$this->skype = $obj->skype;
$this->job = $obj->job;
$this->signature = $obj->signature;
$this->admin = $obj->admin;
@ -917,6 +920,7 @@ class User extends CommonObject
$this->lastname = $contact->lastname;
$this->firstname = $contact->firstname;
$this->email = $contact->email;
$this->skype = $contact->skype;
$this->office_phone = $contact->phone_pro;
$this->office_fax = $contact->fax;
$this->user_mobile = $contact->phone_mobile;
@ -1110,6 +1114,7 @@ class User extends CommonObject
$this->office_fax = trim($this->office_fax);
$this->user_mobile = trim($this->user_mobile);
$this->email = trim($this->email);
$this->skype = trim($this->skype);
$this->job = trim($this->job);
$this->signature = trim($this->signature);
$this->note = trim($this->note);
@ -1145,6 +1150,7 @@ class User extends CommonObject
$sql.= ", office_fax = '".$this->db->escape($this->office_fax)."'";
$sql.= ", user_mobile = '".$this->db->escape($this->user_mobile)."'";
$sql.= ", email = '".$this->db->escape($this->email)."'";
$sql.= ", skype = '".$this->db->escape($this->skype)."'";
$sql.= ", job = '".$this->db->escape($this->job)."'";
$sql.= ", signature = '".$this->db->escape($this->signature)."'";
$sql.= ", accountancy_code = '".$this->db->escape($this->accountancy_code)."'";
@ -1206,6 +1212,7 @@ class User extends CommonObject
$adh->societe=(empty($adh->societe) && $this->societe_id ? $this->societe_id : $adh->societe);
$adh->email=$this->email;
$adh->skype=$this->skype;
$adh->phone=$this->office_phone;
$adh->phone_mobile=$this->user_mobile;
@ -1914,6 +1921,7 @@ class User extends CommonObject
if ($this->office_fax && ! empty($conf->global->LDAP_FIELD_FAX)) $info[$conf->global->LDAP_FIELD_FAX] = $this->office_fax;
if ($this->note && ! empty($conf->global->LDAP_FIELD_DESCRIPTION)) $info[$conf->global->LDAP_FIELD_DESCRIPTION] = $this->note;
if ($this->email && ! empty($conf->global->LDAP_FIELD_MAIL)) $info[$conf->global->LDAP_FIELD_MAIL] = $this->email;
if ($this->skype && ! empty($conf->global->LDAP_FIELD_SKYPE)) $info[$conf->global->LDAP_FIELD_SKYPE] = $this->skype;
if ($conf->global->LDAP_SERVER_TYPE == 'egroupware')
{
@ -1966,6 +1974,7 @@ class User extends CommonObject
$this->firstname='SPECIMEN';
$this->note='This is a note';
$this->email='email@specimen.com';
$this->skype='tom.hanson';
$this->office_phone='0999999999';
$this->office_fax='0999999998';
$this->user_mobile='0999999997';
@ -2113,6 +2122,7 @@ class User extends CommonObject
$this->user_mobile=$ldapuser->{$conf->global->LDAP_FIELD_MOBILE};
$this->office_fax=$ldapuser->{$conf->global->LDAP_FIELD_FAX};
$this->email=$ldapuser->{$conf->global->LDAP_FIELD_MAIL};
$this->skype=$ldapuser->{$conf->global->LDAP_FIELD_SKYPE};
$this->ldap_sid=$ldapuser->{$conf->global->LDAP_FIELD_SID};
$this->job=$ldapuser->{$conf->global->LDAP_FIELD_TITLE};

View File

@ -8,6 +8,7 @@
* Copyright (C) 2011 Herve Prot <herve.prot@symeos.com>
* Copyright (C) 2012 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2013 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2013 Alexandre Spangaro <alexandre.spangaro@gmail.com>
*
* 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
@ -184,6 +185,7 @@ if ($action == 'add' && $canadduser)
$object->office_phone = GETPOST("office_phone");
$object->office_fax = GETPOST("office_fax");
$object->user_mobile = GETPOST("user_mobile");
$object->skype = GETPOST("skype");
$object->email = GETPOST("email");
$object->job = GETPOST("job");
$object->signature = GETPOST("signature");
@ -321,10 +323,11 @@ if ($action == 'update' && ! $_POST["cancel"])
$object->office_phone=GETPOST("office_phone");
$object->office_fax = GETPOST("office_fax");
$object->user_mobile= GETPOST("user_mobile");
$object->skype =GETPOST("skype");
$object->email = GETPOST("email");
$object->job = GETPOST("job");
$object->signature = GETPOST("signature");
$object->accountancy_code = GETPOST("accountancy_code");
$object->accountancy_code = GETPOST("accountancy_code");
$object->openid = GETPOST("openid");
$object->fk_user = GETPOST("fk_user")>0?GETPOST("fk_user"):0;
@ -520,6 +523,7 @@ if ($action == 'adduserldap')
$conf->global->LDAP_FIELD_PHONE,
$conf->global->LDAP_FIELD_FAX,
$conf->global->LDAP_FIELD_MOBILE,
$conf->global->LDAP_FIELD_SKYPE,
$conf->global->LDAP_FIELD_MAIL,
$conf->global->LDAP_FIELD_TITLE,
$conf->global->LDAP_FIELD_DESCRIPTION,
@ -548,6 +552,7 @@ if ($action == 'adduserldap')
$ldap_phone = $attribute[$conf->global->LDAP_FIELD_PHONE];
$ldap_fax = $attribute[$conf->global->LDAP_FIELD_FAX];
$ldap_mobile = $attribute[$conf->global->LDAP_FIELD_MOBILE];
$ldap_skype = $attribute[$conf->global->LDAP_FIELD_SKYPE];
$ldap_mail = $attribute[$conf->global->LDAP_FIELD_MAIL];
$ldap_sid = $attribute[$conf->global->LDAP_FIELD_SID];
}
@ -605,9 +610,10 @@ if (($action == 'create') || ($action == 'adduserldap'))
$conf->global->LDAP_FIELD_LOGIN_SAMBA,
$conf->global->LDAP_FIELD_PASSWORD,
$conf->global->LDAP_FIELD_PASSWORD_CRYPTED,
$conf->global->LDAP_FIELD_PHONE,
$conf->global->LDAP_FIELD_PHONE,
$conf->global->LDAP_FIELD_FAX,
$conf->global->LDAP_FIELD_MOBILE,
$conf->global->LDAP_FIELD_SKYPE,
$conf->global->LDAP_FIELD_MAIL,
$conf->global->LDAP_FIELD_TITLE,
$conf->global->LDAP_FIELD_DESCRIPTION,
@ -858,6 +864,23 @@ if (($action == 'create') || ($action == 'adduserldap'))
print '<input size="20" type="text" name="office_fax" value="'.GETPOST('office_fax').'">';
}
print '</td></tr>';
// Skype
if (! empty($conf->skype->enabled))
{
print '<tr><td valign="top">'.$langs->trans("Skype").'</td>';
print '<td>';
if (! empty($ldap_skype))
{
print '<input type="hidden" name="skype" value="'.$ldap_skype.'">';
print $ldap_skype;
}
else
{
print '<input size="40" type="text" name="skype" value="'.GETPOST('skype').'">';
}
print '</td></tr>';
}
// EMail
print '<tr><td valign="top"'.(! empty($conf->global->USER_MAIL_REQUIRED)?' class="fieldrequired"':'').'>'.$langs->trans("EMail").'</td>';
@ -1166,6 +1189,14 @@ else
print '<tr><td valign="top">'.$langs->trans("Fax").'</td>';
print '<td>'.dol_print_phone($object->office_fax,'',0,0,1).'</td>';
print '</tr>'."\n";
// Skype
if (! empty($conf->skype->enabled))
{
print '<tr><td valign="top">'.$langs->trans("Skype").'</td>';
print '<td>'.dol_print_skype($object->skype,0,0,1).'</td>';
print "</tr>\n";
}
// EMail
print '<tr><td valign="top">'.$langs->trans("EMail").'</td>';
@ -1761,6 +1792,23 @@ else
}
print '</td></tr>';
// Skype
if (! empty($conf->skype->enabled))
{
print '<tr><td valign="top">'.$langs->trans("Skype").'</td>';
print '<td>';
if ($caneditfield && empty($object->ldap_sid))
{
print '<input size="40" type="text" name="skype" class="flat" value="'.$object->skype.'">';
}
else
{
print '<input type="hidden" name="skype" value="'.$object->skype.'">';
print $object->skype;
}
print '</td></tr>';
}
// EMail
print "<tr>".'<td valign="top"'.(! empty($conf->global->USER_MAIL_REQUIRED)?' class="fieldrequired"':'').'>'.$langs->trans("EMail").'</td>';
print '<td>';