diff --git a/htdocs/accountancy/class/accountancyaccount.class.php b/htdocs/accountancy/class/accountancyaccount.class.php index dfd591ae6cd..3d5814d143a 100644 --- a/htdocs/accountancy/class/accountancyaccount.class.php +++ b/htdocs/accountancy/class/accountancyaccount.class.php @@ -59,9 +59,11 @@ class AccountancyAccount */ function create($user) { + $now=dol_now(); + $sql = "INSERT INTO ".MAIN_DB_PREFIX."accountingaccount"; $sql.= " (date_creation, fk_user_author, numero,intitule)"; - $sql.= " VALUES (".$this->db->idate(gmmktime()).",".$user->id.",'".$this->numero."','".$this->intitule."')"; + $sql.= " VALUES (".$this->db->idate($now).",".$user->id.",'".$this->numero."','".$this->intitule."')"; $resql = $this->db->query($sql); if ($resql) diff --git a/htdocs/adherents/index.php b/htdocs/adherents/index.php index dc3d8f3c689..924aa8e100d 100644 --- a/htdocs/adherents/index.php +++ b/htdocs/adherents/index.php @@ -87,14 +87,15 @@ if ($result) $db->free($result); } +$now=dol_now(); // List members up to date // current rule: uptodate = the end date is in future whatever is type // old rule: uptodate = if type does not need payment, that end date is null, if type need payment that end date is in future) $sql = "SELECT count(*) as somme , d.fk_adherent_type"; $sql.= " FROM ".MAIN_DB_PREFIX."adherent as d, ".MAIN_DB_PREFIX."adherent_type as t"; -//$sql.= " WHERE d.statut = 1 AND ((t.cotisation = 0 AND d.datefin IS NULL) OR d.datefin >= ".$db->idate(gmmktime()).')'; -$sql.= " WHERE d.statut = 1 AND d.datefin >= ".$db->idate(gmmktime()); +//$sql.= " WHERE d.statut = 1 AND ((t.cotisation = 0 AND d.datefin IS NULL) OR d.datefin >= ".$db->idate($now).')'; +$sql.= " WHERE d.statut = 1 AND d.datefin >= ".$db->idate($now); $sql.= " AND t.rowid = d.fk_adherent_type"; $sql.= " GROUP BY d.fk_adherent_type"; @@ -321,7 +322,7 @@ foreach ($AdherentType as $key => $adhtype) print ''.img_object($langs->trans("ShowType"),"group").' '.$adhtype->getNomUrl(0,dol_size(16)).''; print ''.(isset($MemberToValidate[$key]) && $MemberToValidate[$key] > 0?$MemberToValidate[$key]:'').' '.$staticmember->LibStatut(-1,$adhtype->cotisation,0,3).''; print ''.(isset($MembersValidated[$key]) && ($MembersValidated[$key]-$MemberUpToDate[$key] > 0) ? $MembersValidated[$key]-$MemberUpToDate[$key]:'').' '.$staticmember->LibStatut(1,$adhtype->cotisation,0,3).''; - print ''.(isset($MemberUpToDate[$key]) && $MemberUpToDate[$key] > 0 ? $MemberUpToDate[$key]:'').' '.$staticmember->LibStatut(1,$adhtype->cotisation,gmmktime(),3).''; + print ''.(isset($MemberUpToDate[$key]) && $MemberUpToDate[$key] > 0 ? $MemberUpToDate[$key]:'').' '.$staticmember->LibStatut(1,$adhtype->cotisation,$now,3).''; print ''.(isset($MembersResiliated[$key]) && $MembersResiliated[$key]> 0 ?$MembersResiliated[$key]:'').' '.$staticmember->LibStatut(0,$adhtype->cotisation,0,3).''; print "\n"; } @@ -329,7 +330,7 @@ print ''; print ''.$langs->trans("Total").''; print ''.$SommeA.' '.$staticmember->LibStatut(-1,$adhtype->cotisation,0,3).''; print ''.$SommeB.' '.$staticmember->LibStatut(1,$adhtype->cotisation,0,3).''; -print ''.$SommeC.' '.$staticmember->LibStatut(1,$adhtype->cotisation,gmmktime(),3).''; +print ''.$SommeC.' '.$staticmember->LibStatut(1,$adhtype->cotisation,$now,3).''; print ''.$SommeD.' '.$staticmember->LibStatut(0,$adhtype->cotisation,0,3).''; print ''; diff --git a/htdocs/admin/commande.php b/htdocs/admin/commande.php index 852c8751d5c..7472191a48a 100644 --- a/htdocs/admin/commande.php +++ b/htdocs/admin/commande.php @@ -312,7 +312,7 @@ foreach ($dirmodels as $reldir) // Info $htmltooltip=''; $htmltooltip.=''.$langs->trans("Version").': '.$module->getVersion().'
'; - $facture->type=0; + $commande->type=0; $nextval=$module->getNextValue($mysoc,$commande); if ("$nextval" != $langs->trans("NotAvailable")) // Keep " on nextval { diff --git a/htdocs/admin/propal.php b/htdocs/admin/propal.php index 10ebb20ebb8..4e186d24db9 100644 --- a/htdocs/admin/propal.php +++ b/htdocs/admin/propal.php @@ -344,7 +344,7 @@ foreach ($dirmodels as $reldir) // Info $htmltooltip=''; $htmltooltip.=''.$langs->trans("Version").': '.$module->getVersion().'
'; - $facture->type=0; + $propal->type=0; $nextval=$module->getNextValue($mysoc,$propal); if ("$nextval" != $langs->trans("NotAvailable")) // Keep " on nextval { diff --git a/htdocs/bookmarks/class/bookmark.class.php b/htdocs/bookmarks/class/bookmark.class.php index a92d43ed23f..d3d30d7c723 100644 --- a/htdocs/bookmarks/class/bookmark.class.php +++ b/htdocs/bookmarks/class/bookmark.class.php @@ -101,6 +101,8 @@ class Bookmark $this->url=trim($this->url); $this->title=trim($this->title); if (empty($this->position)) $this->position=0; + + $now=dol_now(); $this->db->begin(); @@ -109,7 +111,7 @@ class Bookmark if ($this->fk_soc) $sql.=",fk_soc"; $sql.= ") VALUES ("; $sql.= ($this->fk_user > 0?"'".$this->fk_user."'":"0").","; - $sql.= " ".$this->db->idate(gmmktime()).","; + $sql.= " ".$this->db->idate($now).","; $sql.= " '".$this->url."', '".$this->target."',"; $sql.= " '".$this->db->escape($this->title)."', '".$this->favicon."', '".$this->position."'"; if ($this->fk_soc) $sql.=",".$this->fk_soc; diff --git a/htdocs/comm/mailing/class/mailing.class.php b/htdocs/comm/mailing/class/mailing.class.php index 0dd7b00c318..397c5df77e5 100644 --- a/htdocs/comm/mailing/class/mailing.class.php +++ b/htdocs/comm/mailing/class/mailing.class.php @@ -314,8 +314,10 @@ class Mailing extends CommonObject */ function valid($user) { + $now=dol_now(); + $sql = "UPDATE ".MAIN_DB_PREFIX."mailing "; - $sql .= " SET statut = 1, date_valid = ".$this->db->idate(gmmktime()).", fk_user_valid=".$user->id; + $sql .= " SET statut = 1, date_valid = ".$this->db->idate($now).", fk_user_valid=".$user->id; $sql .= " WHERE rowid = ".$this->id; dol_syslog("Mailing::valid sql=".$sql, LOG_DEBUG); diff --git a/htdocs/comm/mailing/fiche.php b/htdocs/comm/mailing/fiche.php index 736a46e7036..7da91cd5146 100644 --- a/htdocs/comm/mailing/fiche.php +++ b/htdocs/comm/mailing/fiche.php @@ -1,6 +1,7 @@ - * Copyright (C) 2005-2011 Laurent Destailleur +/* Copyright (C) 2004 Rodolphe Quiedeville + * Copyright (C) 2005-2011 Laurent Destailleur + * Copyright (C) 2005-2012 Regis Houssin * * 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 @@ -34,8 +35,14 @@ $langs->load("mails"); if (! $user->rights->mailing->lire || $user->societe_id > 0) accessforbidden(); +$id=(GETPOST('mailid','int') ? GETPOST('mailid','int') : GETPOST('id','int')); +$action=GETPOST('action','alpha'); +$confirm=GETPOST('confirm','alpha'); $message = ''; +$object=new Mailing($db); + + // Tableau des substitutions possibles $substitutionarray=array( '__ID__' => 'IdRecord', @@ -70,7 +77,7 @@ $substitutionarrayfortest=array( // Action clone object -if ($_POST["action"] == 'confirm_clone' && $_POST['confirm'] == 'yes') +if ($action == 'confirm_clone' && $confirm == 'yes') { if (empty($_REQUEST["clone_content"]) && empty($_REQUEST["clone_receivers"])) { @@ -78,8 +85,7 @@ if ($_POST["action"] == 'confirm_clone' && $_POST['confirm'] == 'yes') } else { - $object=new Mailing($db); - $result=$object->createFromClone($_REQUEST['id'],$_REQUEST["clone_content"],$_REQUEST["clone_receivers"]); + $result=$object->createFromClone($id,$_REQUEST["clone_content"],$_REQUEST["clone_receivers"]); if ($result > 0) { header("Location: ".$_SERVER['PHP_SELF'].'?id='.$result); @@ -88,48 +94,46 @@ if ($_POST["action"] == 'confirm_clone' && $_POST['confirm'] == 'yes') else { $mesg=$object->error; - $_GET['action']=''; - $_GET['id']=$_REQUEST['id']; + $action=''; } } } // Action send emailing for everybody -if ($_REQUEST["action"] == 'sendallconfirmed' && $_REQUEST['confirm'] == 'yes') +if ($action == 'sendallconfirmed' && $confirm == 'yes') { if (empty($conf->global->MAILING_LIMIT_SENDBYWEB)) { // Pour des raisons de securite, on ne permet pas cette fonction via l'IHM, // on affiche donc juste un message $message='
'.$langs->trans("MailingNeedCommand").'
'; - $message.='
'; + $message.='
'; $message.='

'.$langs->trans("MailingNeedCommand2").'
'; - $_GET["action"]=''; + $action=''; } else if ($conf->global->MAILING_LIMIT_SENDBYWEB < 0) { $message='
'.$langs->trans("NotEnoughPermissions").'
'; - $_GET["action"]=''; + $action=''; } else { - $mil=new Mailing($db); - $result=$mil->fetch($_REQUEST['id']); + $result=$object->fetch($id); - $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($mil->id,2,0,1); + $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($object->id,2,0,1); - if ($mil->statut == 0) + if ($object->statut == 0) { dol_print_error('','ErrorMailIsNotValidated'); exit; } - $id = $mil->id; - $subject = $mil->sujet; - $message = $mil->body; - $from = $mil->email_from; - $replyto = $mil->email_replyto; - $errorsto = $mil->email_errorsto; + $id = $object->id; + $subject = $object->sujet; + $message = $object->body; + $from = $object->email_from; + $replyto = $object->email_replyto; + $errorsto = $object->email_errorsto; // Le message est-il en html $msgishtml=-1; // Unknown by default if (preg_match('/[\s\t]*/i',$message)) $msgishtml=1; @@ -143,7 +147,7 @@ if ($_REQUEST["action"] == 'sendallconfirmed' && $_REQUEST['confirm'] == 'yes') // ou envoyes en erreur (statut=-1) $sql = "SELECT mc.rowid, mc.nom, mc.prenom, mc.email, mc.other, mc.source_url, mc.source_id, mc.source_type, mc.tag"; $sql .= " FROM ".MAIN_DB_PREFIX."mailing_cibles as mc"; - $sql .= " WHERE mc.statut < 1 AND mc.fk_mailing = ".$id; + $sql .= " WHERE mc.statut < 1 AND mc.fk_mailing = ".$object->id; dol_syslog("fiche.php: select targets sql=".$sql, LOG_DEBUG); $resql=$db->query($sql); @@ -154,9 +158,11 @@ if ($_REQUEST["action"] == 'sendallconfirmed' && $_REQUEST['confirm'] == 'yes') if ($num) { dol_syslog("comm/mailing/fiche.php: nb of targets = ".$num, LOG_DEBUG); + + $now=dol_now(); // Positionne date debut envoi - $sql="UPDATE ".MAIN_DB_PREFIX."mailing SET date_envoi=".$db->idate(gmmktime())." WHERE rowid=".$id; + $sql="UPDATE ".MAIN_DB_PREFIX."mailing SET date_envoi=".$db->idate($now)." WHERE rowid=".$object->id; $resql2=$db->query($sql); if (! $resql2) { @@ -245,7 +251,7 @@ if ($_REQUEST["action"] == 'sendallconfirmed' && $_REQUEST['confirm'] == 'yes') dol_syslog("comm/mailing/fiche.php: ok for #".$i.($mail->error?' - '.$mail->error:''), LOG_DEBUG); $sql="UPDATE ".MAIN_DB_PREFIX."mailing_cibles"; - $sql.=" SET statut=1, date_envoi=".$db->idate(gmmktime())." WHERE rowid=".$obj->rowid; + $sql.=" SET statut=1, date_envoi=".$db->idate($now)." WHERE rowid=".$obj->rowid; $resql2=$db->query($sql); if (! $resql2) { @@ -260,7 +266,7 @@ if ($_REQUEST["action"] == 'sendallconfirmed' && $_REQUEST['confirm'] == 'yes') dol_syslog("comm/mailing/fiche.php: error for #".$i.($mail->error?' - '.$mail->error:''), LOG_WARNING); $sql="UPDATE ".MAIN_DB_PREFIX."mailing_cibles"; - $sql.=" SET statut=-1, date_envoi=".$db->idate(gmmktime())." WHERE rowid=".$obj->rowid; + $sql.=" SET statut=-1, date_envoi=".$db->idate($now)." WHERE rowid=".$obj->rowid; $resql2=$db->query($sql); if (! $resql2) { @@ -283,7 +289,7 @@ if ($_REQUEST["action"] == 'sendallconfirmed' && $_REQUEST['confirm'] == 'yes') else $statut=2; // Status 'sent partially' (because not send to everybody) } - $sql="UPDATE ".MAIN_DB_PREFIX."mailing SET statut=".$statut." WHERE rowid=".$id; + $sql="UPDATE ".MAIN_DB_PREFIX."mailing SET statut=".$statut." WHERE rowid=".$object->id; dol_syslog("comm/mailing/fiche.php: update global status sql=".$sql, LOG_DEBUG); $resql2=$db->query($sql); if (! $resql2) @@ -297,23 +303,22 @@ if ($_REQUEST["action"] == 'sendallconfirmed' && $_REQUEST['confirm'] == 'yes') dol_print_error($db); } $message=''; - $_GET["action"] = ''; + $action = ''; } } // Action send test emailing -if ($_POST["action"] == 'send' && empty($_POST["cancel"])) +if ($action == 'send' && empty($_POST["cancel"])) { - $mil = new Mailing($db); - $result=$mil->fetch($_POST["mailid"]); + $result=$object->fetch($id); $error=0; - $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($mil->id,2,0,1); + $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($object->id,2,0,1); - $mil->sendto = $_POST["sendto"]; - if (! $mil->sendto) + $object->sendto = $_POST["sendto"]; + if (! $object->sendto) { $message='
'.$langs->trans("ErrorFieldRequired",$langs->trans("MailTo")).'
'; $error++; @@ -326,8 +331,8 @@ if ($_POST["action"] == 'send' && empty($_POST["cancel"])) if (preg_match('/[\s\t]*/i',$message)) $msgishtml=1; // Pratique les substitutions sur le sujet et message - $mil->sujet=make_substitutions($mil->sujet,$substitutionarrayfortest,$langs); - $mil->body=make_substitutions($mil->body,$substitutionarrayfortest,$langs); + $object->sujet=make_substitutions($object->sujet,$substitutionarrayfortest,$langs); + $object->body=make_substitutions($object->body,$substitutionarrayfortest,$langs); $arr_file = array(); $arr_mime = array(); @@ -335,8 +340,8 @@ if ($_POST["action"] == 'send' && empty($_POST["cancel"])) $arr_css = array(); // Ajout CSS - if (!empty($mil->bgcolor)) $arr_css['bgcolor'] = (preg_match('/^#/',$mil->bgcolor)?'':'#').$mil->bgcolor; - if (!empty($mil->bgimage)) $arr_css['bgimage'] = $mil->bgimage; + if (!empty($object->bgcolor)) $arr_css['bgcolor'] = (preg_match('/^#/',$object->bgcolor)?'':'#').$object->bgcolor; + if (!empty($object->bgimage)) $arr_css['bgimage'] = $object->bgimage; // Attached files $listofpaths=dol_dir_list($upload_dir,'all',0,'','','name',SORT_ASC,0); @@ -350,86 +355,81 @@ if ($_POST["action"] == 'send' && empty($_POST["cancel"])) } } - $mailfile = new CMailFile($mil->sujet,$mil->sendto,$mil->email_from,$mil->body, $arr_file,$arr_mime,$arr_name,'', '', 0, $msgishtml,$mil->email_errorsto,$arr_css); + $mailfile = new CMailFile($object->sujet,$object->sendto,$object->email_from,$object->body, $arr_file,$arr_mime,$arr_name,'', '', 0, $msgishtml,$object->email_errorsto,$arr_css); $result=$mailfile->sendfile(); if ($result) { - $message='
'.$langs->trans("MailSuccessfulySent",$mailfile->getValidAddress($mil->email_from,2),$mailfile->getValidAddress($mil->sendto,2)).'
'; + $message='
'.$langs->trans("MailSuccessfulySent",$mailfile->getValidAddress($object->email_from,2),$mailfile->getValidAddress($object->sendto,2)).'
'; } else { $message='
'.$langs->trans("ResultKo").'
'.$mailfile->error.' '.$result.'
'; } - $_GET["action"]=''; - $_GET["id"]=$mil->id; + $action=''; } } // Action add emailing -if ($_POST["action"] == 'add') +if ($action == 'add') { $message=''; - $mil = new Mailing($db); + $object->email_from = trim($_POST["from"]); + $object->email_replyto = trim($_POST["replyto"]); + $object->email_errorsto = trim($_POST["errorsto"]); + $object->titre = trim($_POST["titre"]); + $object->sujet = trim($_POST["sujet"]); + $object->body = trim($_POST["body"]); + $object->bgcolor = trim($_POST["bgcolor"]); + $object->bgimage = trim($_POST["bgimage"]); - $mil->email_from = trim($_POST["from"]); - $mil->email_replyto = trim($_POST["replyto"]); - $mil->email_errorsto = trim($_POST["errorsto"]); - $mil->titre = trim($_POST["titre"]); - $mil->sujet = trim($_POST["sujet"]); - $mil->body = trim($_POST["body"]); - $mil->bgcolor = trim($_POST["bgcolor"]); - $mil->bgimage = trim($_POST["bgimage"]); - - if (! $mil->titre) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->trans("MailTitle")); - if (! $mil->sujet) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->trans("MailTopic")); - if (! $mil->body) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->trans("MailBody")); + if (! $object->titre) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->trans("MailTitle")); + if (! $object->sujet) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->trans("MailTopic")); + if (! $object->body) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->trans("MailBody")); if (! $message) { - if ($mil->create($user) >= 0) + if ($object->create($user) >= 0) { - Header("Location: fiche.php?id=".$mil->id); + Header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; } - $message=$mil->error; + $message=$object->error; } $message='
'.$message.'
'; - $_GET["action"]="create"; + $action="create"; } // Action update description of emailing -if ($_REQUEST["action"] == 'setdesc' || $_REQUEST["action"] == 'setfrom' || $_REQUEST["action"] == 'setreplyto' || $_REQUEST["action"] == 'seterrorsto') +if ($action == 'settitre' || $action == 'setemail_from' || $actino == 'setreplyto' || $action == 'setemail_errorsto') { - $mil = new Mailing($db); - $mil->fetch($_POST["id"]); + $object->fetch($id); - $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($mil->id,2,0,1); + $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($object->id,2,0,1); - if ($_REQUEST["action"] == 'setdesc') $mil->titre = trim($_REQUEST["desc"]); - if ($_REQUEST["action"] == 'setfrom') $mil->email_from = trim($_REQUEST["from"]); - if ($_REQUEST["action"] == 'setreplyto') $mil->email_replyto = trim($_REQUEST["replyto"]); - if ($_REQUEST["action"] == 'seterrorsto') $mil->email_errorsto = trim($_REQUEST["errorsto"]); + if ($action == 'settitre') $object->titre = trim(GETPOST('titre','alpha')); + else if ($action == 'setemail_from') $object->email_from = trim(GETPOST('email_from','alpha')); + else if ($action == 'setemail_replyto') $object->email_replyto = trim(GETPOST('email_replyto','alpha')); + else if ($action == 'setemail_errorsto') $object->email_errorsto = trim(GETPOST('email_errorsto','alpha')); - if ($_REQUEST["action"] == 'setdesc' && empty($mil->titre)) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->transnoentities("MailTitle")); - if ($_REQUEST["action"] == 'setfrom' && empty($mil->email_from)) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->transnoentities("MailFrom")); + else if ($action == 'settitre' && empty($object->titre)) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->transnoentities("MailTitle")); + else if ($action == 'setfrom' && empty($object->email_from)) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->transnoentities("MailFrom")); if (! $message) { - if ($mil->update($user) >= 0) + if ($object->update($user) >= 0) { - Header("Location: fiche.php?id=".$mil->id); + Header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; } - $message=$mil->error; + $message=$object->error; } $message='
'.$message.'
'; - $_GET["action"]=""; - $_GET["id"]=$_REQUEST["id"]; + $action=""; } /* @@ -437,165 +437,132 @@ if ($_REQUEST["action"] == 'setdesc' || $_REQUEST["action"] == 'setfrom' || $_RE */ if (! empty($_POST['addfile'])) { - $mil = new Mailing($db); - $mil->fetch($_POST["id"]); + $object->fetch($id); - $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($mil->id,2,0,1); + $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($object->id,2,0,1); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); // Set tmp user directory $mesg=dol_add_file_process($upload_dir,0,0); - $_POST["action"]=$_GET["action"]="edit"; - $_GET["id"]=$_POST["id"]; + $action="edit"; } // Action update emailing if (! empty($_POST["removedfile"])) { - $mil = new Mailing($db); - $mil->fetch($_POST["id"]); + $object->fetch($id); - $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($mil->id,2,0,1); + $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($object->id,2,0,1); require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); $mesg=dol_remove_file_process($_POST['removedfile'],0); - $_POST["action"]=$_GET["action"]="edit"; - $_GET["id"]=$_POST["id"]; + $action="edit"; } // Action update emailing -if ($_POST["action"] == 'update' && empty($_POST["removedfile"]) && empty($_POST["cancel"])) +if ($action == 'update' && empty($_POST["removedfile"]) && empty($_POST["cancel"])) { require_once(DOL_DOCUMENT_ROOT."/core/lib/files.lib.php"); - $mil = new Mailing($db); - $mil->fetch($_POST["id"]); + $object->fetch($id); $isupload=0; if (! $isupload) { - $mil->sujet = trim($_POST["sujet"]); - $mil->body = trim($_POST["body"]); - $mil->bgcolor = trim($_POST["bgcolor"]); - $mil->bgimage = trim($_POST["bgimage"]); + $object->sujet = trim($_POST["sujet"]); + $object->body = trim($_POST["body"]); + $object->bgcolor = trim($_POST["bgcolor"]); + $object->bgimage = trim($_POST["bgimage"]); - if (! $mil->sujet) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->trans("MailTopic")); - if (! $mil->body) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->trans("MailBody")); + if (! $object->sujet) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->trans("MailTopic")); + if (! $object->body) $message.=($message?'
':'').$langs->trans("ErrorFieldRequired",$langs->trans("MailBody")); if (! $message) { - if ($mil->update($user) >= 0) + if ($object->update($user) >= 0) { - Header("Location: fiche.php?id=".$mil->id); + Header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); exit; } - $message=$mil->error; + $message=$object->error; } $message='
'.$message.'
'; - $_GET["action"]="edit"; - $_GET["id"]=$_POST["id"]; + $action="edit"; } else { - $_GET["action"]="edit"; - $_GET["id"]=$_POST["id"]; + $action="edit"; } } // Action confirmation validation -if ($_REQUEST["action"] == 'confirm_valid') -{ - - if ($_REQUEST["confirm"] == 'yes') - { - $mil = new Mailing($db); - - if ($mil->fetch($_REQUEST["id"]) >= 0) - { - $mil->valid($user); - - Header("Location: fiche.php?id=".$mil->id); - exit; - } - else - { - dol_print_error($db); - } - } - else - { - Header("Location: fiche.php?id=".$_REQUEST["id"]); - exit; +if ($action == 'confirm_valid' && $confirm == 'yes') +{ + if ($object->fetch($id) >= 0) + { + $object->valid($user); + + Header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); + exit; + } + else + { + dol_print_error($db); } } // Resend -if ($_REQUEST["action"] == 'confirm_reset') -{ - if ($_REQUEST["confirm"] == 'yes') - { - $mil = new Mailing($db); - - if ($mil->fetch($_REQUEST["id"]) >= 0) - { - $db->begin(); - - $result=$mil->valid($user); - if ($result > 0) - { - $result=$mil->reset_targets_status($user); - } - - if ($result > 0) - { - $db->commit(); - Header("Location: fiche.php?id=".$mil->id); - exit; - } - else - { - $mesg=$mil->error; - $db->rollback(); - } - } - else - { - dol_print_error($db); - } - } - else - { - Header("Location: fiche.php?id=".$_REQUEST["id"]); - exit; +if ($action == 'confirm_reset' && $confirm == 'yes') +{ + if ($object->fetch($id) >= 0) + { + $db->begin(); + + $result=$object->valid($user); + if ($result > 0) + { + $result=$object->reset_targets_status($user); + } + + if ($result > 0) + { + $db->commit(); + Header("Location: ".$_SERVER['PHP_SELF']."?id=".$object->id); + exit; + } + else + { + $mesg=$object->error; + $db->rollback(); + } + } + else + { + dol_print_error($db); } } // Action confirmation suppression -if ($_REQUEST["action"] == 'confirm_delete') -{ - if ($_REQUEST["confirm"] == 'yes') - { - $mil = new Mailing($db); - $mil->fetch($_REQUEST["id"]); - - if ($mil->delete($mil->id)) - { - Header("Location: ".DOL_URL_ROOT."/comm/mailing/liste.php"); - exit; - } +if ($action == 'confirm_delete' && $confirm == 'yes') +{ + $object->fetch($id); + + if ($object->delete($object->id)) + { + Header("Location: liste.php"); + exit; } } if (! empty($_POST["cancel"])) { $action = ''; - $_GET["id"] = isset($_POST["mailid"])?$_POST["mailid"]:$_POST["id"]; } @@ -609,13 +576,11 @@ llxHeader('',$langs->trans("Mailing"),$help_url); $form = new Form($db); $htmlother = new FormOther($db); -$mil = new Mailing($db); - -if ($_GET["action"] == 'create') +if ($action == 'create') { // EMailing in creation mode - print '
'."\n"; + print ''."\n"; print ''; print ''; @@ -656,44 +621,43 @@ if ($_GET["action"] == 'create') } else { - if ($mil->fetch($_GET["id"]) >= 0) + if ($object->fetch($id) >= 0) { - $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($mil->id,2,0,1); + $upload_dir = $conf->mailing->dir_output . "/" . get_exdir($object->id,2,0,1); - $head = emailing_prepare_head($mil); + $head = emailing_prepare_head($object); dol_fiche_head($head, 'card', $langs->trans("Mailing"), 0, 'email'); dol_htmloutput_mesg($message); // Confirmation de la validation du mailing - if ($_GET["action"] == 'valid') + if ($action == 'valid') { - $ret=$form->form_confirm($_SERVER["PHP_SELF"]."?id=".$mil->id,$langs->trans("ValidMailing"),$langs->trans("ConfirmValidMailing"),"confirm_valid",'','',1); + $ret=$form->form_confirm($_SERVER["PHP_SELF"]."?id=".$object->id,$langs->trans("ValidMailing"),$langs->trans("ConfirmValidMailing"),"confirm_valid",'','',1); if ($ret == 'html') print '
'; } // Confirm reset - if ($_GET["action"] == 'reset') + else if ($action == 'reset') { - $ret=$form->form_confirm($_SERVER["PHP_SELF"]."?id=".$mil->id,$langs->trans("ResetMailing"),$langs->trans("ConfirmResetMailing",$mil->ref),"confirm_reset",'','',2); + $ret=$form->form_confirm($_SERVER["PHP_SELF"]."?id=".$object->id,$langs->trans("ResetMailing"),$langs->trans("ConfirmResetMailing",$object->ref),"confirm_reset",'','',2); if ($ret == 'html') print '
'; } // Confirm delete - if ($_GET["action"] == 'delete') + else if ($action == 'delete') { - $ret=$form->form_confirm($_SERVER["PHP_SELF"]."?id=".$mil->id,$langs->trans("DeleteAMailing"),$langs->trans("ConfirmDeleteMailing"),"confirm_delete",'','',1); + $ret=$form->form_confirm($_SERVER["PHP_SELF"]."?id=".$object->id,$langs->trans("DeleteAMailing"),$langs->trans("ConfirmDeleteMailing"),"confirm_delete",'','',1); if ($ret == 'html') print '
'; } - - if ($_GET["action"] != 'edit') + else if ($action != 'edit') { /* * Mailing en mode visu */ - if ($_GET["action"] == 'sendall') + if ($action == 'sendall') { // Define message to recommand from command line @@ -705,7 +669,7 @@ else // Pour des raisons de securite, on ne permet pas cette fonction via l'IHM, // on affiche donc juste un message $mesg.='
'.$langs->trans("MailingNeedCommand").'
'; - $mesg.='
'; + $mesg.='
'; $mesg.='

'.$langs->trans("MailingNeedCommand2").'
'; $_GET["action"]=''; } @@ -715,12 +679,12 @@ else if ($conf->file->mailing_limit_sendbyweb == 0) { $text.=$langs->trans("MailingNeedCommand"); - $text.='
'; + $text.='
'; $text.='

'; } $text.=$langs->trans('ConfirmSendingEmailing').'
'; $text.=$langs->trans('LimitSendingEmailing',$conf->global->MAILING_LIMIT_SENDBYWEB); - $ret=$form->form_confirm($_SERVER['PHP_SELF'].'?id='.$_REQUEST['id'],$langs->trans('SendMailing'),$text,'sendallconfirmed',$formquestion,'',1,260); + $ret=$form->form_confirm($_SERVER['PHP_SELF'].'?id='.$object->id,$langs->trans('SendMailing'),$text,'sendallconfirmed',$formquestion,'',1,260); if ($ret == 'html') print '
'; } } @@ -729,32 +693,32 @@ else print ''.$langs->trans("Ref").''; print ''; - print $form->showrefnav($mil,'id'); + print $form->showrefnav($object,'id'); print ''; // Description - print ''.$form->editfieldkey("MailTitle",'desc',$mil->titre,$mil,$user->rights->mailing->creer).''; - print $form->editfieldval("MailTitle",'desc',$mil->titre,$mil,$user->rights->mailing->creer); + print ''.$form->editfieldkey("MailTitle",'titre',$object->titre,$object,$user->rights->mailing->creer && $object->statut < 3,'string').''; + print $form->editfieldval("MailTitle",'titre',$object->titre,$object,$user->rights->mailing->creer && $object->statut < 3,'string'); print ''; // From - print ''.$form->editfieldkey("MailFrom",'from',$mil->email_from,$mil,$user->rights->mailing->creer && $mil->statut < 3,'email').''; - print $form->editfieldval("MailFrom",'from',$mil->email_from,$mil,$user->rights->mailing->creer && $mil->statut < 3,'email'); + print ''.$form->editfieldkey("MailFrom",'email_from',$object->email_from,$object,$user->rights->mailing->creer && $object->statut < 3,'string').''; + print $form->editfieldval("MailFrom",'email_from',$object->email_from,$object,$user->rights->mailing->creer && $object->statut < 3,'string'); print ''; // Errors to - print ''.$form->editfieldkey("MailErrorsTo",'errorsto',$mil->email_errorsto,$mil,$user->rights->mailing->creer && $mil->statut < 3,'email').''; - print $form->editfieldval("MailErrorsTo",'errorsto',$mil->email_errorsto,$mil,$user->rights->mailing->creer && $mil->statut < 3,'email'); + print ''.$form->editfieldkey("MailErrorsTo",'email_errorsto',$object->email_errorsto,$object,$user->rights->mailing->creer && $object->statut < 3,'string').''; + print $form->editfieldval("MailErrorsTo",'email_errorsto',$object->email_errorsto,$object,$user->rights->mailing->creer && $object->statut < 3,'string'); print ''; // Status - print ''.$langs->trans("Status").''.$mil->getLibStatut(4).''; + print ''.$langs->trans("Status").''.$object->getLibStatut(4).''; // Nb of distinct emails print ''; print $langs->trans("TotalNbOfDistinctRecipients"); print ''; - $nbemail = ($mil->nbemail?$mil->nbemail:img_warning('').' '.$langs->trans("NoTargetYet").''); + $nbemail = ($object->nbemail?$object->nbemail:img_warning('').' '.$langs->trans("NoTargetYet").''); if (!empty($conf->global->MAILING_LIMIT_SENDBYWEB) && is_numeric($nbemail) && $conf->global->MAILING_LIMIT_SENDBYWEB < $nbemail) { if ($conf->global->MAILING_LIMIT_SENDBYWEB > 0) @@ -781,7 +745,7 @@ else // Clone confirmation - if ($_GET["action"] == 'clone') + if ($action == 'clone') { // Create an array for form $formquestion=array( @@ -790,7 +754,7 @@ else array('type' => 'checkbox', 'name' => 'clone_receivers', 'label' => $langs->trans("CloneReceivers").' ('.$langs->trans("FeatureNotYetAvailable").')', 'value' => 0, 'disabled' => true) ); // Paiement incomplet. On demande si motif = escompte ou autre - $form->form_confirm($_SERVER["PHP_SELF"].'?id='.$mil->id,$langs->trans('CloneEMailing'),$langs->trans('ConfirmCloneEMailing',$mil->ref),'confirm_clone',$formquestion,'yes'); + $form->form_confirm($_SERVER["PHP_SELF"].'?id='.$object->id,$langs->trans('CloneEMailing'),$langs->trans('ConfirmCloneEMailing',$object->ref),'confirm_clone',$formquestion,'yes'); print '
'; } @@ -802,23 +766,22 @@ else * Boutons d'action */ - if (GETPOST("cancel") || GETPOST("confirm")=='no' || GETPOST("action") == '' - || in_array(GETPOST('action'),array('valid','delete','sendall'))) + if (GETPOST("cancel") || $confirm=='no' || $action == '' || in_array($action,array('valid','delete','sendall'))) { print "\n\n
\n"; - if ($mil->statut == 0 && $user->rights->mailing->creer) + if ($object->statut == 0 && $user->rights->mailing->creer) { - print ''.$langs->trans("EditMailing").''; + print ''.$langs->trans("EditMailing").''; } - //print ''.$langs->trans("PreviewMailing").''; + //print ''.$langs->trans("PreviewMailing").''; - print ''.$langs->trans("TestMailing").''; + print ''.$langs->trans("TestMailing").''; - if ($mil->statut == 0) + if ($object->statut == 0) { - if ($mil->nbemail <= 0) + if ($object->nbemail <= 0) { print ''.$langs->trans("ValidMailing").''; } @@ -828,11 +791,11 @@ else } else { - print ''.$langs->trans("ValidMailing").''; + print ''.$langs->trans("ValidMailing").''; } } - if (($mil->statut == 1 || $mil->statut == 2) && $mil->nbemail > 0 && $user->rights->mailing->valider) + if (($object->statut == 1 || $object->statut == 2) && $object->nbemail > 0 && $user->rights->mailing->valider) { if ($conf->global->MAILING_LIMIT_SENDBYWEB < 0) { @@ -840,38 +803,38 @@ else } else { - print ''.$langs->trans("SendMailing").''; + print ''.$langs->trans("SendMailing").''; } } if ($user->rights->mailing->creer) { - print ''.$langs->trans("ToClone").''; + print ''.$langs->trans("ToClone").''; } - if (($mil->statut == 2 || $mil->statut == 3) && $user->rights->mailing->valider) + if (($object->statut == 2 || $object->statut == 3) && $user->rights->mailing->valider) { - print ''.$langs->trans("ResetMailing").''; + print ''.$langs->trans("ResetMailing").''; } - if (($mil->statut <= 1 && $user->rights->mailing->creer) || $user->rights->mailing->supprimer) + if (($object->statut <= 1 && $user->rights->mailing->creer) || $user->rights->mailing->supprimer) { - print ''.$langs->trans("DeleteMailing").''; + print ''.$langs->trans("DeleteMailing").''; } print '

'; } // Affichage formulaire de TEST - if ($_GET["action"] == 'test') + if ($action == 'test') { print_titre($langs->trans("TestMailing")); // Create l'objet formulaire mail include_once(DOL_DOCUMENT_ROOT.'/core/class/html.formmail.class.php'); $formmail = new FormMail($db); - $formmail->fromname = $mil->email_from; - $formmail->frommail = $mil->email_from; + $formmail->fromname = $object->email_from; + $formmail->frommail = $object->email_from; $formmail->withsubstit=1; $formmail->withfrom=0; $formmail->withto=$user->email?$user->email:1; @@ -889,8 +852,8 @@ else // Tableau des parametres complementaires du post $formmail->param["action"]="send"; $formmail->param["models"]="body"; - $formmail->param["mailid"]=$mil->id; - $formmail->param["returnurl"]=DOL_URL_ROOT."/comm/mailing/fiche.php?id=".$mil->id; + $formmail->param["mailid"]=$object->id; + $formmail->param["returnurl"]=$_SERVER['PHP_SELF']."?id=".$object->id; $formmail->show_form(); @@ -902,7 +865,7 @@ else print ''; // Subject - print ''; + print ''; // Joined files print '';*/ // Message print ''; - print ''; print ''; @@ -948,19 +911,19 @@ else print '
'.$langs->trans("MailTopic").''.$mil->sujet.'
'.$langs->trans("MailTopic").''.$object->sujet.'
'.$langs->trans("MailFile").''; @@ -924,13 +887,13 @@ else // Background color /*print '
'.$langs->trans("BackgroundColorByDefault").''; - $htmlother->select_color($mil->bgcolor,'bgcolor','edit_mailing',0); + $htmlother->select_color($object->bgcolor,'bgcolor','edit_mailing',0); print '
'.$langs->trans("MailMessage").''; - print dol_htmlentitiesbr($mil->body); + print ''; + print dol_htmlentitiesbr($object->body); print '
'; - print ''; - print ''; - print ''; - print ''; + print ''; + print ''; + print ''; + print ''; // Status - print ''; + print ''; // Nb of distinct emails print '
'.$langs->trans("Ref").''.$mil->id.'
'.$langs->trans("MailTitle").''.$mil->titre.'
'.$langs->trans("MailFrom").''.dol_print_email($mil->email_from,0,0,0,0,1).'
'.$langs->trans("MailErrorsTo").''.dol_print_email($mil->email_errorsto,0,0,0,0,1).'
'.$langs->trans("Ref").''.$object->id.'
'.$langs->trans("MailTitle").''.$object->titre.'
'.$langs->trans("MailFrom").''.dol_print_email($object->email_from,0,0,0,0,1).'
'.$langs->trans("MailErrorsTo").''.dol_print_email($object->email_errorsto,0,0,0,0,1).'
'.$langs->trans("Status").''.$mil->getLibStatut(4).'
'.$langs->trans("Status").''.$object->getLibStatut(4).'
'; print $langs->trans("TotalNbOfDistinctRecipients"); print ''; - $nbemail = ($mil->nbemail?$mil->nbemail:''.$langs->trans("NoTargetYet").''); + $nbemail = ($object->nbemail?$object->nbemail:''.$langs->trans("NoTargetYet").''); if (!empty($conf->global->MAILING_LIMIT_SENDBYWEB) && is_numeric($nbemail) && $conf->global->MAILING_LIMIT_SENDBYWEB < $nbemail) { $text=$langs->trans('LimitSendingEmailing',$conf->global->MAILING_LIMIT_SENDBYWEB); @@ -979,14 +942,14 @@ else print ''."\n"; print ''; print ''; - print ''; + print ''; // Print mail content print_fiche_titre($langs->trans("EMail"),'',''); print ''; // Subject - print ''; + print ''; dol_init_file_process($upload_dir); @@ -1028,7 +991,7 @@ else // Background color print ''; // Message @@ -1049,7 +1012,7 @@ else print ''; @@ -1067,12 +1030,11 @@ else } else { - dol_print_error($db,$mil->error); + dol_print_error($db,$object->error); } - } -$db->close(); llxFooter(); +$db->close(); ?> diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 0b7d018136c..9d20775a287 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -2072,7 +2072,7 @@ class Propal extends CommonObject { global $conf, $user; - $now=gmmktime(); + $now=dol_now(); $this->nbtodo=$this->nbtodolate=0; $clause = " WHERE"; diff --git a/htdocs/comm/propal/note.php b/htdocs/comm/propal/note.php index 961112151ac..fde8d2411d3 100644 --- a/htdocs/comm/propal/note.php +++ b/htdocs/comm/propal/note.php @@ -74,7 +74,7 @@ if ($id > 0 || ! empty($ref)) { if ($mesg) print $mesg; - $now=gmmktime(); + $now=dol_now(); if ($object->fetch($id, $ref)) { diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index 8c4a8b6f06e..252200cf6df 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -620,7 +620,8 @@ class Commande extends CommonObject // $date_commande is deprecated $date = ($this->date_commande ? $this->date_commande : $this->date); - + + $now=dol_now(); $this->db->begin(); @@ -630,7 +631,7 @@ class Commande extends CommonObject $sql.= ", remise_absolue, remise_percent"; $sql.= ", entity"; $sql.= ")"; - $sql.= " VALUES ('(PROV)',".$this->socid.", ".$this->db->idate(gmmktime()).", ".$user->id; + $sql.= " VALUES ('(PROV)',".$this->socid.", ".$this->db->idate($now).", ".$user->id; $sql.= ", ".($this->fk_project?$this->fk_project:"null"); $sql.= ", ".$this->db->idate($date); $sql.= ", ".($this->source>=0 && $this->source != '' ?$this->source:'null'); @@ -2348,7 +2349,7 @@ class Commande extends CommonObject { global $conf, $user; - $now=gmmktime(); + $now=dol_now(); $this->nbtodo=$this->nbtodolate=0; $clause = " WHERE"; diff --git a/htdocs/compta/bank/class/account.class.php b/htdocs/compta/bank/class/account.class.php index 9158f11148b..a828a22a5aa 100644 --- a/htdocs/compta/bank/class/account.class.php +++ b/htdocs/compta/bank/class/account.class.php @@ -91,7 +91,7 @@ class Account extends CommonObject * * @param DoliDB $db Database handler */ - function Account($db) + function __construct($db) { global $langs; @@ -344,10 +344,9 @@ class Account extends CommonObject /** * Create bank account into database * - * @param User $user Object user making action * @return int < 0 if KO, > 0 if OK */ - function create($user='') + function create() { global $langs,$conf; @@ -597,14 +596,13 @@ class Account extends CommonObject * * @param int $id Id of bank account to get * @param string $ref Ref of bank account to get - * @param string $ref_ext External ref of bank account to get * @return int <0 if KO, >0 if OK */ - function fetch($id,$ref='',$ref_ext='') + function fetch($id,$ref='') { global $conf; - if (empty($id) && empty($ref) && empty($ref_ext)) + if (empty($id) && empty($ref)) { $this->error="ErrorBadParameters"; return -1; diff --git a/htdocs/contrat/class/contrat.class.php b/htdocs/contrat/class/contrat.class.php index 7771520978d..de54bcdd128 100644 --- a/htdocs/contrat/class/contrat.class.php +++ b/htdocs/contrat/class/contrat.class.php @@ -1323,7 +1323,7 @@ class Contrat extends CommonObject { global $conf, $user; - $now=gmmktime(); + $now=dol_now(); $this->nbtodo=$this->nbtodolate=0; diff --git a/htdocs/contrat/liste.php b/htdocs/contrat/liste.php index 177e27f2598..e72774e3dac 100644 --- a/htdocs/contrat/liste.php +++ b/htdocs/contrat/liste.php @@ -1,7 +1,7 @@ * Copyright (C) 2004-2010 Laurent Destailleur - * Copyright (C) 2005-2009 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * 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 @@ -59,7 +59,7 @@ $staticcontratligne=new ContratLigne($db); * View */ -$now=gmmktime(); +$now=dol_now(); llxHeader(); diff --git a/htdocs/core/boxes/box_contracts.php b/htdocs/core/boxes/box_contracts.php index 72901e87a18..259a31ea998 100644 --- a/htdocs/core/boxes/box_contracts.php +++ b/htdocs/core/boxes/box_contracts.php @@ -87,7 +87,7 @@ class box_contracts extends ModeleBoxes if ($resql) { $num = $db->num_rows($resql); - $now=gmmktime(); + $now=dol_now(); $i = 0; diff --git a/htdocs/core/boxes/box_factures.php b/htdocs/core/boxes/box_factures.php index fc18d2ee453..736c13ce88a 100644 --- a/htdocs/core/boxes/box_factures.php +++ b/htdocs/core/boxes/box_factures.php @@ -93,7 +93,7 @@ class box_factures extends ModeleBoxes if ($result) { $num = $db->num_rows($result); - $now=gmmktime(); + $now=dol_now(); $i = 0; $l_due_date = $langs->trans('Late').' ('.strtolower($langs->trans('DateEcheance')).': %s)'; diff --git a/htdocs/core/boxes/box_factures_fourn.php b/htdocs/core/boxes/box_factures_fourn.php index 394934438fd..45cccf95a97 100644 --- a/htdocs/core/boxes/box_factures_fourn.php +++ b/htdocs/core/boxes/box_factures_fourn.php @@ -93,7 +93,7 @@ class box_factures_fourn extends ModeleBoxes if ($result) { $num = $db->num_rows($result); - $now=gmmktime(); + $now=dol_now(); $i = 0; $l_due_date = $langs->trans('Late').' ('.strtolower($langs->trans('DateEcheance')).': %s)'; diff --git a/htdocs/core/boxes/box_factures_fourn_imp.php b/htdocs/core/boxes/box_factures_fourn_imp.php index ebbba5def70..571d3c3e558 100644 --- a/htdocs/core/boxes/box_factures_fourn_imp.php +++ b/htdocs/core/boxes/box_factures_fourn_imp.php @@ -91,7 +91,7 @@ class box_factures_fourn_imp extends ModeleBoxes if ($result) { $num = $db->num_rows($result); - $now=gmmktime(); + $now=dol_now(); $i = 0; $l_due_date = $langs->trans('Late').' ('.$langs->trans('DateEcheance').': %s)'; diff --git a/htdocs/core/boxes/box_factures_imp.php b/htdocs/core/boxes/box_factures_imp.php index a98ec274bfc..70487fca5ad 100644 --- a/htdocs/core/boxes/box_factures_imp.php +++ b/htdocs/core/boxes/box_factures_imp.php @@ -94,7 +94,7 @@ class box_factures_imp extends ModeleBoxes if ($result) { $num = $db->num_rows($result); - $now=gmmktime(); + $now=dol_now(); $i = 0; $l_due_date = $langs->trans('Late').' ('.strtolower($langs->trans('DateEcheance')).': %s)'; diff --git a/htdocs/core/boxes/box_propales.php b/htdocs/core/boxes/box_propales.php index dee694e72f6..9f818bc63f7 100644 --- a/htdocs/core/boxes/box_propales.php +++ b/htdocs/core/boxes/box_propales.php @@ -90,7 +90,7 @@ class box_propales extends ModeleBoxes if ($result) { $num = $db->num_rows($result); - $now=gmmktime(); + $now=dol_now(); $i = 0; diff --git a/htdocs/core/boxes/box_services_contracts.php b/htdocs/core/boxes/box_services_contracts.php index a706254ee0b..646be1ca90c 100644 --- a/htdocs/core/boxes/box_services_contracts.php +++ b/htdocs/core/boxes/box_services_contracts.php @@ -95,7 +95,7 @@ class box_services_contracts extends ModeleBoxes if ($result) { $num = $db->num_rows($result); - $now=gmmktime(); + $now=dol_now(); $i = 0; diff --git a/htdocs/core/class/canvas.class.php b/htdocs/core/class/canvas.class.php index 73713118b51..41bab9dee8a 100644 --- a/htdocs/core/class/canvas.class.php +++ b/htdocs/core/class/canvas.class.php @@ -132,7 +132,7 @@ class Canvas { if (empty($this->template_dir)) return 0; - if (file_exists($this->template_dir.($this->card?$this->card.'_':'').$this->action.'.tpl.php')) return 1; + if (file_exists($this->template_dir.($this->card?$this->card.'_':'').$this->actiontype.'.tpl.php')) return 1; else return 0; } @@ -148,7 +148,7 @@ class Canvas global $db, $conf, $langs, $user, $canvas; global $form, $formfile; - include($this->template_dir.($this->card?$this->card.'_':'').$this->action.'.tpl.php'); // Include native PHP template + include($this->template_dir.($this->card?$this->card.'_':'').$this->actiontype.'.tpl.php'); // Include native PHP template } diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index dc62d653afe..3d50a867fe1 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -2140,10 +2140,12 @@ abstract class CommonObject function setExtraParameters() { $this->db->begin(); + + $extraparams = (! empty($this->extraparams) ? json_encode($this->extraparams) : null); - $sql = 'UPDATE '.MAIN_DB_PREFIX.$this->table_element; - $sql.= ' SET extraparams = "'.$this->db->escape(json_encode($this->extraparams)).'"'; - $sql.= ' WHERE rowid = '.$this->id; + $sql = "UPDATE ".MAIN_DB_PREFIX.$this->table_element; + $sql.= " SET extraparams = ".(! empty($extraparams) ? "'".$this->db->escape($extraparams)."'" : "null"); + $sql.= " WHERE rowid = ".$this->id; dol_syslog(get_class($this)."::setExtraParameters sql=".$sql, LOG_DEBUG); $resql = $this->db->query($sql); diff --git a/htdocs/core/class/conf.class.php b/htdocs/core/class/conf.class.php index e8dc3fbbe80..71cabf3f68d 100644 --- a/htdocs/core/class/conf.class.php +++ b/htdocs/core/class/conf.class.php @@ -84,49 +84,36 @@ class Conf */ function Conf() { - // Avoid warnings when filling this->xxx - $this->file = (object) array(); - $this->db = (object) array(); - $this->global = (object) array(); - $this->mycompany = (object) array(); - $this->admin = (object) array(); - $this->user = (object) array(); - $this->syslog = (object) array(); - $this->browser = (object) array(); - $this->multicompany = (object) array(); - - $this->expedition_bon = (object) array(); - $this->livraison_bon = (object) array(); - $this->fournisseur = (object) array(); - $this->fournisseur->commande = (object) array(); - $this->fournisseur->facture = (object) array(); - $this->product = (object) array(); - $this->service = (object) array(); - $this->contrat = (object) array(); - $this->actions = (object) array(); - $this->commande = (object) array(); - $this->commande->client = (object) array(); - $this->commande->fournisseur = (object) array(); - $this->propal = (object) array(); - $this->propal->cloture = (object) array(); - $this->propal->facturation = (object) array(); - $this->facture = (object) array(); - $this->facture->client = (object) array(); - $this->facture->fournisseur = (object) array(); - $this->contrat = (object) array(); - $this->contrat->services = (object) array(); - $this->contrat->services->inactifs = (object) array(); - $this->contrat->services->expires = (object) array(); - $this->adherent = (object) array(); - $this->adherent->cotisation = (object) array(); - $this->bank = (object) array(); - $this->bank->rappro = (object) array(); - $this->bank->cheque = (object) array(); - $this->notification = (object) array(); - $this->mailing = (object) array(); - - //! Charset for HTML output and for storing data in memory - $this->file->character_set_client='UTF-8'; // UTF-8, ISO-8859-1 + // Avoid warnings when filling this->xxx + $this->file = (object) array(); + $this->db = (object) array(); + $this->global = (object) array(); + $this->mycompany = (object) array(); + $this->admin = (object) array(); + $this->user = (object) array(); + $this->syslog = (object) array(); + $this->browser = (object) array(); + $this->multicompany = (object) array(); + + // First level object + $this->expedition_bon = (object) array(); + $this->livraison_bon = (object) array(); + $this->fournisseur = (object) array(); + $this->product = (object) array(); + $this->service = (object) array(); + $this->contrat = (object) array(); + $this->actions = (object) array(); + $this->commande = (object) array(); + $this->propal = (object) array(); + $this->facture = (object) array(); + $this->contrat = (object) array(); + $this->adherent = (object) array(); + $this->bank = (object) array(); + $this->notification = (object) array(); + $this->mailing = (object) array(); + + //! Charset for HTML output and for storing data in memory + $this->file->character_set_client='UTF-8'; // UTF-8, ISO-8859-1 } @@ -225,6 +212,22 @@ class Conf } //var_dump($this->modules); //var_dump($this->modules_parts); + + // Second or others levels object + $this->propal->cloture = (object) array(); + $this->propal->facturation = (object) array(); + $this->commande->client = (object) array(); + $this->commande->fournisseur = (object) array(); + $this->facture->client = (object) array(); + $this->facture->fournisseur = (object) array(); + $this->fournisseur->commande = (object) array(); + $this->fournisseur->facture = (object) array(); + $this->contrat->services = (object) array(); + $this->contrat->services->inactifs = (object) array(); + $this->contrat->services->expires = (object) array(); + $this->adherent->cotisation = (object) array(); + $this->bank->rappro = (object) array(); + $this->bank->cheque = (object) array(); // Clean some variables if (empty($this->global->MAIN_MENU_STANDARD)) $this->global->MAIN_MENU_STANDARD="eldy_backoffice.php"; diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 67d2d96883d..29fcbf81180 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -3389,6 +3389,8 @@ class Form function selectarray($htmlname, $array, $id='', $show_empty=0, $key_in_label=0, $value_as_key=0, $option='', $translate=0, $maxlen=0, $disabled=0) { global $langs; + + if ($value_as_key) $array=array_combine($array, $array); $out=''."\n"; + + return $out; + } /** diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php index e7e1682bc31..bbd1cc108b1 100644 --- a/htdocs/core/class/html.formfile.class.php +++ b/htdocs/core/class/html.formfile.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2010-2011 Regis Houssin + * Copyright (C) 2010-2012 Regis Houssin * Copyright (c) 2010 Juanjo Menent * * This program is free software; you can redistribute it and/or modify @@ -435,7 +435,7 @@ class FormFile // Execute hooks $parameters=array('socid'=>$GLOBALS['socid'],'id'=>$GLOBALS['id'],'modulepart'=>$modulepart); - if (is_object($hookmanager)) $out.= $hookmanager->executeHooks('formBuilddocOptions',$parameters); + if (is_object($hookmanager)) $out.= $hookmanager->executeHooks('formBuilddocOptions',$parameters,$GLOBALS['object']); } // Get list of files diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 2d9c8b9d029..46bc67cee43 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -275,7 +275,7 @@ function dol_shutdown() * Return value of a param into GET or POST supervariable * * @param string $paramname Name of parameter to found - * @param string $check Type of check (''=no check, 'int'=check it's numeric, 'alpha'=check it's alpha only) + * @param string $check Type of check (''=no check, 'int'=check it's numeric, 'alpha'=check it's alpha only, 'array'=check it's array) * @param int $method Type of method (0 = get then post, 1 = only get, 2 = only post, 3 = post then get) * @return string Value found or '' if check fails */ @@ -289,17 +289,25 @@ function GETPOST($paramname,$check='',$method=0) if (! empty($check)) { - $out=trim($out); // Check if numeric - if ($check == 'int' && ! preg_match('/^[-\.,0-9]+$/i',$out)) $out=''; + if ($check == 'int' && ! preg_match('/^[-\.,0-9]+$/i',$out)) + { + $out=trim($out); + $out=''; + } // Check if alpha elseif ($check == 'alpha') { + $out=trim($out); // '"' is dangerous because param in url can close the href= or src= and add javascript functions. // '../' is dangerous because it allows dir transversals if (preg_match('/"/',$out)) $out=''; else if (preg_match('/\.\.\//',$out)) $out=''; } + elseif ($check == 'array') + { + if (! is_array($out) || empty($out)) $out=array(); + } } return $out; @@ -1102,6 +1110,7 @@ function dol_mktime($hour,$minute,$second,$month,$day,$year,$gm=false,$check=1) function dol_now($mode='gmt') { // Note that gmmktime and mktime return same value (GMT) whithout parameters + //if ($mode == 'gmt') $ret=gmmktime(); // Strict Standards: gmmktime(): You should be using the time() function instead if ($mode == 'gmt') $ret=time(); // Time for now at greenwich. else if ($mode == 'tzserver') // Time for now with PHP server timezone added { diff --git a/htdocs/core/modules/cheque/pdf/modules_chequereceipts.php b/htdocs/core/modules/cheque/pdf/modules_chequereceipts.php index 64f3ad48635..5943e534ca3 100644 --- a/htdocs/core/modules/cheque/pdf/modules_chequereceipts.php +++ b/htdocs/core/modules/cheque/pdf/modules_chequereceipts.php @@ -45,7 +45,7 @@ abstract class ModeleChequeReceipts extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of templates */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; diff --git a/htdocs/core/modules/commande/modules_commande.php b/htdocs/core/modules/commande/modules_commande.php index 5baecd279bf..e327b84bab9 100644 --- a/htdocs/core/modules/commande/modules_commande.php +++ b/htdocs/core/modules/commande/modules_commande.php @@ -48,7 +48,7 @@ abstract class ModelePDFCommandes extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of templates */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; @@ -73,18 +73,20 @@ abstract class ModeleNumRefCommandes { var $error=''; - /** Return if a module can be used or not + /** + * Return if a module can be used or not * - * @return boolean true if module can be used + * @return boolean true if module can be used */ function isEnabled() { return true; } - /** Renvoie la description par defaut du modele de numerotation + /** + * Renvoie la description par defaut du modele de numerotation * - * @return string Texte descripif + * @return string Texte descripif */ function info() { @@ -93,9 +95,10 @@ abstract class ModeleNumRefCommandes return $langs->trans("NoDescription"); } - /** Renvoie un exemple de numerotation + /** + * Renvoie un exemple de numerotation * - * @return string Example + * @return string Example */ function getExample() { @@ -104,28 +107,33 @@ abstract class ModeleNumRefCommandes return $langs->trans("NoExample"); } - /** Test si les numeros deja en vigueur dans la base ne provoquent pas de conflits qui empecheraient cette numerotation de fonctionner. + /** + * Test si les numeros deja en vigueur dans la base ne provoquent pas de conflits qui empecheraient cette numerotation de fonctionner. * - * @return boolean false si conflit, true si ok + * @return boolean false si conflit, true si ok */ function canBeActivated() { return true; } - /** Renvoie prochaine valeur attribuee + /** + * Renvoie prochaine valeur attribuee * - * @return string Valeur + * @param Societe $objsoc Object thirdparty + * @param Object $object Object we need next value for + * @return string Valeur */ - function getNextValue() + function getNextValue($objsoc,$object) { global $langs; return $langs->trans("NotAvailable"); } - /** Renvoie version du module numerotation + /** + * Renvoie version du module numerotation * - * @return string Valeur + * @return string Valeur */ function getVersion() { diff --git a/htdocs/core/modules/dons/html_cerfafr.modules.php b/htdocs/core/modules/dons/html_cerfafr.modules.php index 0b9bdaaa778..afb971642fc 100644 --- a/htdocs/core/modules/dons/html_cerfafr.modules.php +++ b/htdocs/core/modules/dons/html_cerfafr.modules.php @@ -71,7 +71,7 @@ class html_cerfafr extends ModeleDon { global $user,$conf,$langs,$mysoc; - $now=gmmktime(); + $now=dol_now(); if (! is_object($outputlangs)) $outputlangs=$langs; diff --git a/htdocs/core/modules/dons/modules_don.php b/htdocs/core/modules/dons/modules_don.php index 079c22afa92..e651320de34 100644 --- a/htdocs/core/modules/dons/modules_don.php +++ b/htdocs/core/modules/dons/modules_don.php @@ -43,7 +43,7 @@ abstract class ModeleDon extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of templates */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; diff --git a/htdocs/core/modules/expedition/methode_expedition.modules.php b/htdocs/core/modules/expedition/methode_expedition.modules.php index 19a7ce6296f..1ad8bc4bbba 100644 --- a/htdocs/core/modules/expedition/methode_expedition.modules.php +++ b/htdocs/core/modules/expedition/methode_expedition.modules.php @@ -51,7 +51,7 @@ class ModeleShippingMethod * @param string $maxfilenamelength Max length of value to show * @return array List of templates */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; diff --git a/htdocs/core/modules/expedition/modules_expedition.php b/htdocs/core/modules/expedition/modules_expedition.php index 9c69070e0c7..8215ca19aaa 100644 --- a/htdocs/core/modules/expedition/modules_expedition.php +++ b/htdocs/core/modules/expedition/modules_expedition.php @@ -45,7 +45,7 @@ abstract class ModelePdfExpedition extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of templates */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; diff --git a/htdocs/core/modules/facture/modules_facture.php b/htdocs/core/modules/facture/modules_facture.php index c8b2b8a12e9..43b0dae3c33 100644 --- a/htdocs/core/modules/facture/modules_facture.php +++ b/htdocs/core/modules/facture/modules_facture.php @@ -46,7 +46,7 @@ abstract class ModelePDFFactures extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of templates */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; diff --git a/htdocs/core/modules/fichinter/modules_fichinter.php b/htdocs/core/modules/fichinter/modules_fichinter.php index f286717caf5..389d2b6facb 100644 --- a/htdocs/core/modules/fichinter/modules_fichinter.php +++ b/htdocs/core/modules/fichinter/modules_fichinter.php @@ -44,7 +44,7 @@ abstract class ModelePDFFicheinter extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of templates */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; diff --git a/htdocs/core/modules/livraison/modules_livraison.php b/htdocs/core/modules/livraison/modules_livraison.php index b0ae1760ef9..906b26d1e94 100644 --- a/htdocs/core/modules/livraison/modules_livraison.php +++ b/htdocs/core/modules/livraison/modules_livraison.php @@ -44,7 +44,7 @@ abstract class ModelePDFDeliveryOrder extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of templates */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; diff --git a/htdocs/core/modules/modSociete.class.php b/htdocs/core/modules/modSociete.class.php index a1471ed6f70..aaa28a2917c 100644 --- a/htdocs/core/modules/modSociete.class.php +++ b/htdocs/core/modules/modSociete.class.php @@ -296,7 +296,7 @@ class modSociete extends DolibarrModules ); //$this->import_convertvalue_array[$r]=array('s.fk_soc'=>array('rule'=>'lastrowid',table='t'); $this->import_regex_array[$r]=array('s.status'=>'^[0|1]','s.client'=>'^[0|1|2|3]','s.fournisseur'=>'^[0|1]','s.fk_typent'=>'id@'.MAIN_DB_PREFIX.'c_typent','s.datec'=>'^[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]$'); - $this->import_examplevalues_array[$r]=array('s.nom'=>"MyBigCompany",'s.status'=>"0 (closed) or 1 (active)",'s.client'=>'0 (no customer no prospect)/1 (customer)/2 (prospect)/3 (customer and prospect)','s.fournisseur'=>'0 or 1','s.datec'=>dol_print_date(mktime(),'%Y-%m-%d'),'s.code_client'=>"CU01-0001 or auto",'s.code_fournisseur'=>"SU01-0001 or auto",'s.address'=>"61 jump street",'s.cp'=>"123456",'s.ville'=>"Big town",'s.fk_pays'=>'US, FR, DE...','s.tel'=>"0101010101",'s.fax'=>"0101010102",'s.url'=>"http://mycompany.com",'s.email'=>"test@mycompany.com",'s.siret'=>"",'s.siren'=>"",'s.ape'=>"",'s.idprof4'=>"",'s.tva_intra'=>"FR0123456789",'s.capital'=>"10000",'s.note'=>"This is an example of note for record",'s.fk_typent'=>"2",'s.fk_effectif'=>"3","s.fk_forme_juridique"=>"1",'s.fk_prospectlevel'=>'PL_MEDIUM','s.fk_stcomm'=>'0','s.default_lang'=>'en_US','s.barcode'=>'123456789'); + $this->import_examplevalues_array[$r]=array('s.nom'=>"MyBigCompany",'s.status'=>"0 (closed) or 1 (active)",'s.client'=>'0 (no customer no prospect)/1 (customer)/2 (prospect)/3 (customer and prospect)','s.fournisseur'=>'0 or 1','s.datec'=>dol_print_date(dol_now(),'%Y-%m-%d'),'s.code_client'=>"CU01-0001 or auto",'s.code_fournisseur'=>"SU01-0001 or auto",'s.address'=>"61 jump street",'s.cp'=>"123456",'s.ville'=>"Big town",'s.fk_pays'=>'US, FR, DE...','s.tel'=>"0101010101",'s.fax'=>"0101010102",'s.url'=>"http://mycompany.com",'s.email'=>"test@mycompany.com",'s.siret'=>"",'s.siren'=>"",'s.ape'=>"",'s.idprof4'=>"",'s.tva_intra'=>"FR0123456789",'s.capital'=>"10000",'s.note'=>"This is an example of note for record",'s.fk_typent'=>"2",'s.fk_effectif'=>"3","s.fk_forme_juridique"=>"1",'s.fk_prospectlevel'=>'PL_MEDIUM','s.fk_stcomm'=>'0','s.default_lang'=>'en_US','s.barcode'=>'123456789'); // Import list of contact and attributes $r++; diff --git a/htdocs/core/modules/project/modules_project.php b/htdocs/core/modules/project/modules_project.php index 59a44ae3907..03885e85a16 100644 --- a/htdocs/core/modules/project/modules_project.php +++ b/htdocs/core/modules/project/modules_project.php @@ -40,7 +40,7 @@ abstract class ModelePDFProjects extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of templates */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; diff --git a/htdocs/core/modules/propale/mod_propale_marbre.php b/htdocs/core/modules/propale/mod_propale_marbre.php index e30770cf9ce..31289342198 100644 --- a/htdocs/core/modules/propale/mod_propale_marbre.php +++ b/htdocs/core/modules/propale/mod_propale_marbre.php @@ -1,6 +1,6 @@ - * Copyright (C) 2005-2010 Regis Houssin + * Copyright (C) 2005-2012 Regis Houssin * * 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 diff --git a/htdocs/core/modules/propale/modules_propale.php b/htdocs/core/modules/propale/modules_propale.php index 5957640c76c..dd67007f789 100644 --- a/htdocs/core/modules/propale/modules_propale.php +++ b/htdocs/core/modules/propale/modules_propale.php @@ -45,7 +45,7 @@ abstract class ModelePDFPropales extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of templates */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; @@ -115,9 +115,11 @@ abstract class ModeleNumRefPropales /** * Renvoi prochaine valeur attribuee * - * @return string Valeur + * @param Societe $objsoc Object third party + * @param Propal $propal Object commercial proposal + * @return string Valeur */ - function getNextValue() + function getNextValue($objsoc,$propal) { global $langs; return $langs->trans("NotAvailable"); diff --git a/htdocs/core/modules/societe/mod_codeclient_monkey.php b/htdocs/core/modules/societe/mod_codeclient_monkey.php index 8c0024e4632..9c5033158b9 100644 --- a/htdocs/core/modules/societe/mod_codeclient_monkey.php +++ b/htdocs/core/modules/societe/mod_codeclient_monkey.php @@ -135,10 +135,9 @@ class mod_codeclient_monkey extends ModeleThirdPartyCode return -1; } - //$date=time(); - $date=gmmktime(); - $yymm = strftime("%y%m",$date); - $num = sprintf("%04s",$max+1); + $date = dol_now(); + $yymm = strftime("%y%m",$date); + $num = sprintf("%04s",$max+1); dol_syslog(get_class($this)."::getNextValue return ".$prefix.$yymm."-".$num); return $prefix.$yymm."-".$num; diff --git a/htdocs/core/modules/societe/modules_societe.class.php b/htdocs/core/modules/societe/modules_societe.class.php index 83f21e98320..582368b6695 100644 --- a/htdocs/core/modules/societe/modules_societe.class.php +++ b/htdocs/core/modules/societe/modules_societe.class.php @@ -42,7 +42,7 @@ abstract class ModeleThirdPartyDoc extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of templates */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; @@ -144,7 +144,7 @@ abstract class ModeleThirdPartyCode * @param string $maxfilenamelength Max length of value to show * @return array List of numbers */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { $liste=array(); $sql =""; diff --git a/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php b/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php index 64f2f7dbe31..72d6658801b 100755 --- a/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php +++ b/htdocs/core/modules/supplier_invoice/modules_facturefournisseur.php @@ -41,7 +41,7 @@ abstract class ModelePDFSuppliersInvoices extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of numbers */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; diff --git a/htdocs/core/modules/supplier_order/modules_commandefournisseur.php b/htdocs/core/modules/supplier_order/modules_commandefournisseur.php index 537bd1b31c4..9ce56d8e186 100644 --- a/htdocs/core/modules/supplier_order/modules_commandefournisseur.php +++ b/htdocs/core/modules/supplier_order/modules_commandefournisseur.php @@ -47,7 +47,7 @@ abstract class ModelePDFSuppliersOrders extends CommonDocGenerator * @param string $maxfilenamelength Max length of value to show * @return array List of numbers */ - function liste_modeles($db,$maxfilenamelength=0) + static function liste_modeles($db,$maxfilenamelength=0) { global $conf; diff --git a/htdocs/core/triggers/interface_20_all_Logevents.class.php b/htdocs/core/triggers/interface_20_all_Logevents.class.php index a41ea6f0f66..425b1d2983c 100755 --- a/htdocs/core/triggers/interface_20_all_Logevents.class.php +++ b/htdocs/core/triggers/interface_20_all_Logevents.class.php @@ -111,7 +111,7 @@ class InterfaceLogevents if (empty($conf->entity)) $conf->entity = $entity; // forcing of the entity if it's not defined (ex: in login form) - $this->date=gmmktime(); + $this->date=dol_now(); $this->duree=0; // Actions diff --git a/htdocs/expedition/class/expedition.class.php b/htdocs/expedition/class/expedition.class.php index dd34f0ae8ac..b34c255f61b 100644 --- a/htdocs/expedition/class/expedition.class.php +++ b/htdocs/expedition/class/expedition.class.php @@ -155,6 +155,8 @@ class Expedition extends CommonObject function create($user) { global $conf, $langs; + + $now=dol_now(); require_once DOL_DOCUMENT_ROOT ."/product/stock/class/mouvementstock.class.php"; $error = 0; @@ -192,7 +194,7 @@ class Expedition extends CommonObject $sql.= ", ".$conf->entity; $sql.= ", ".($this->ref_customer?"'".$this->ref_customer."'":"null"); $sql.= ", ".($this->ref_int?"'".$this->ref_int."'":"null"); - $sql.= ", '".$this->db->idate(gmmktime())."'"; + $sql.= ", '".$this->db->idate($now)."'"; $sql.= ", ".$user->id; $sql.= ", ".($this->date_expedition>0?"'".$this->db->idate($this->date_expedition)."'":"null"); $sql.= ", ".($this->date_delivery>0?"'".$this->db->idate($this->date_delivery)."'":"null"); diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index bedafa87fdd..96525557ced 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -1665,7 +1665,7 @@ class CommandeFournisseur extends Commande { global $conf, $user; - $now=gmmktime(); + $now=dol_now(); $this->nbtodo=$this->nbtodolate=0; $clause = " WHERE"; diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index e6941ab7a33..23b3b703d0a 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -1166,7 +1166,7 @@ class FactureFournisseur extends Facture { global $conf, $user; - $now=gmmktime(); + $now=dol_now(); $this->nbtodo=$this->nbtodolate=0; $sql = 'SELECT ff.rowid, ff.date_lim_reglement as datefin'; diff --git a/htdocs/fourn/commande/fiche.php b/htdocs/fourn/commande/fiche.php index 7e7b638571d..ae043472587 100644 --- a/htdocs/fourn/commande/fiche.php +++ b/htdocs/fourn/commande/fiche.php @@ -926,7 +926,7 @@ if ($id > 0 || ! empty($ref)) */ if ($action == 'valid') { - $object->date_commande=gmmktime(); + $object->date_commande=dol_now(); // We check if number is temporary number if (preg_match('/^[\(]?PROV/i',$object->ref)) $newref = $object->getNextNumRef($soc); diff --git a/htdocs/fourn/commande/history.php b/htdocs/fourn/commande/history.php index 46c95b95aa4..1dcd927f2ae 100644 --- a/htdocs/fourn/commande/history.php +++ b/htdocs/fourn/commande/history.php @@ -44,7 +44,7 @@ $result = restrictedArea($user, 'commande_fournisseur', $id,''); $form = new Form($db); -$now=gmmktime(); +$now=dol_now(); $ref= $_GET['ref']; diff --git a/htdocs/fourn/facture/impayees.php b/htdocs/fourn/facture/impayees.php index 194bb318da4..01b8f7453cb 100644 --- a/htdocs/fourn/facture/impayees.php +++ b/htdocs/fourn/facture/impayees.php @@ -49,7 +49,7 @@ if ($user->societe_id > 0) * View */ -$now=gmmktime(); +$now=dol_now(); llxHeader('',$langs->trans("BillsSuppliersUnpaid")); diff --git a/htdocs/fourn/facture/index.php b/htdocs/fourn/facture/index.php index eabafefda14..9b6ff5cb080 100644 --- a/htdocs/fourn/facture/index.php +++ b/htdocs/fourn/facture/index.php @@ -94,7 +94,7 @@ if ($mode == 'search') * View */ -$now=gmmktime(); +$now=dol_now(); $form=new Form($db); $htmlother=new FormOther($db); diff --git a/htdocs/includes/jquery/plugins/multiselect/MIT-LICENSE.txt b/htdocs/includes/jquery/plugins/multiselect/MIT-LICENSE.txt new file mode 100644 index 00000000000..1076f8b4b2b --- /dev/null +++ b/htdocs/includes/jquery/plugins/multiselect/MIT-LICENSE.txt @@ -0,0 +1,20 @@ +Copyright (c) 2009 Michael Aufreiter, http://www.quasipartikel.at + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/htdocs/includes/jquery/plugins/multiselect/css/ui.multiselect.css b/htdocs/includes/jquery/plugins/multiselect/css/ui.multiselect.css new file mode 100644 index 00000000000..7d3a44801d2 --- /dev/null +++ b/htdocs/includes/jquery/plugins/multiselect/css/ui.multiselect.css @@ -0,0 +1,31 @@ +/* Multiselect +----------------------------------*/ + +.ui-multiselect { border: solid 1px; font-size: 0.8em; } +.ui-multiselect ul { -moz-user-select: none; } +.ui-multiselect li { margin: 0; padding: 0; cursor: default; line-height: 20px; height: 20px; font-size: 11px; list-style: none; padding-right: 18px; overflow: hidden; } +.ui-multiselect li a { color: #999; text-decoration: none; padding: 0; display: block; float: left; cursor: pointer;} +.ui-multiselect li.ui-draggable-dragging { padding-left: 10px; } + +.ui-multiselect div.selected { position: relative; padding: 0; margin: 0; border: 0; float:left; } +.ui-multiselect ul.selected { position: relative; padding: 0; overflow: auto; overflow-x: hidden; background: #fff; margin: 0; list-style: none; border: 0; position: relative; width: 100%; } + +.ui-multiselect div.available { position: relative; padding: 0; margin: 0; border: 0; float:left; } +.ui-multiselect ul.available { position: relative; padding: 0; overflow: auto; overflow-x: hidden; background: #fff; margin: 0; list-style: none; border: 0; width: 100%; } +.ui-multiselect ul.available li { padding-left: 10px; } + +.ui-multiselect div.right-column { border-left: 1px solid; } + +.ui-multiselect .ui-state-default { border: none; margin-bottom: 1px; position: relative; padding-left: 20px;} +.ui-multiselect .ui-state-hover { border: none; } +.ui-multiselect .ui-widget-header {border: none; font-size: 11px; margin-bottom: 1px;} + +.ui-multiselect .add-all { float: right; padding: 7px;} +.ui-multiselect .remove-all { float: right; padding: 7px;} +.ui-multiselect .search { float: left; padding: 4px;} +.ui-multiselect .count { float: left; padding: 7px;} + +.ui-multiselect li span.ui-icon-arrowthick-2-n-s { position: absolute; left: 2px; } +.ui-multiselect li a.action { position: absolute; right: 2px; top: 2px; } + +.ui-multiselect input.search { height: 14px; padding: 1px; opacity: 0.5; margin: 4px; width: 100px; } \ No newline at end of file diff --git a/htdocs/includes/jquery/plugins/multiselect/js/ui.multiselect.js b/htdocs/includes/jquery/plugins/multiselect/js/ui.multiselect.js new file mode 100644 index 00000000000..eb4578fc782 --- /dev/null +++ b/htdocs/includes/jquery/plugins/multiselect/js/ui.multiselect.js @@ -0,0 +1,480 @@ +/* + * jQuery UI Multiselect + * + * Authors: + * Michael Aufreiter (quasipartikel.at) + * Yanick Rochon (yanick.rochon[at]gmail[dot]com) + * + * Dual licensed under the MIT (MIT-LICENSE.txt) + * and GPL (GPL-LICENSE.txt) licenses. + * + * http://www.quasipartikel.at/multiselect/ + * + * + * Depends: + * ui.core.js + * ui.sortable.js + * + * Optional: + * localization (http://plugins.jquery.com/project/localisation) + * scrollTo (http://plugins.jquery.com/project/ScrollTo) + * + * Todo: + * Make batch actions faster + * Implement dynamic insertion through remote calls + */ + + +(function($) { + +$.widget("ui.multiselect", { + options: { + sortable: true, + dragToAdd: true, + searchable: true, + doubleClickable: true, + animated: 'fast', + show: 'slideDown', + hide: 'slideUp', + dividerLocation: 0.6, + selectedContainerOnLeft: true, + width: null, + height: null, + nodeComparator: function(node1,node2) { + var text1 = node1.text(), + text2 = node2.text(); + return text1 == text2 ? 0 : (text1 < text2 ? -1 : 1); + }, + includeRemoveAll: true, + includeAddAll: true, + pressEnterKeyToAddAll: false + }, + _create: function() { + this.element.hide(); + this.id = this.element.attr("id"); + this.container = $('
').insertAfter(this.element); + this.count = 0; // number of currently selected options + this.selectedContainer = $('
'); + if (this.options.selectedContainerOnLeft) { + this.selectedContainer.appendTo(this.container); + this.availableContainer = $('
').appendTo(this.container); + this.availableContainer.addClass('right-column'); + } + else + { + this.availableContainer = $('
').appendTo(this.container); + this.selectedContainer.appendTo(this.container); + this.selectedContainer.addClass('right-column'); + } + this.selectedActions = $('
0 '+$.ui.multiselect.locale.itemsCount+''+(this.options.includeRemoveAll?''+$.ui.multiselect.locale.removeAll+'':' ')+'
').appendTo(this.selectedContainer); + this.availableActions = $('
'+(this.options.includeAddAll?''+$.ui.multiselect.locale.addAll+'':' ')+'
').appendTo(this.availableContainer); + this.selectedList = $('
').bind('selectstart', function(){return false;}).appendTo(this.selectedContainer); + this.availableList = $('
').bind('selectstart', function(){return false;}).appendTo(this.availableContainer); + + var that = this; + + var width = this.options.width; + if (!width) { + width = this.element.width(); + } + var height = this.options.height; + if (!height) { + height = this.element.height(); + } + + // set dimensions + this.container.width(width-2); + if (this.options.selectedContainerOnLeft) { + this.selectedContainer.width(Math.floor(width*this.options.dividerLocation)-1); + this.availableContainer.width(Math.floor(width*(1-this.options.dividerLocation))-2); + } + else + { + this.selectedContainer.width(Math.floor(width*this.options.dividerLocation)-2); + this.availableContainer.width(Math.floor(width*(1-this.options.dividerLocation))-1); + } + + // fix list height to match
'.$langs->trans("MailTopic").'
'.$langs->trans("MailTopic").'
'.$langs->trans("BackgroundColorByDefault").''; - $htmlother->select_color($mil->bgcolor,'bgcolor','edit_mailing',0); + $htmlother->select_color($object->bgcolor,'bgcolor','edit_mailing',0); print '
'; // Editeur wysiwyg require_once(DOL_DOCUMENT_ROOT."/core/class/doleditor.class.php"); - $doleditor=new DolEditor('body',$mil->body,'',320,'dolibarr_mailings','',true,true,$conf->global->FCKEDITOR_ENABLE_MAILING,20,70); + $doleditor=new DolEditor('body',$object->body,'',320,'dolibarr_mailings','',true,true,$conf->global->FCKEDITOR_ENABLE_MAILING,20,70); $doleditor->Create(); print '