Fix: Fix GNU address

Doxygen
This commit is contained in:
Laurent Destailleur
2011-09-03 01:24:09 +00:00
parent f39c932b2e
commit d53b179102
41 changed files with 1049 additions and 979 deletions

View File

@@ -116,8 +116,9 @@ class Adherent extends CommonObject
/**
* Adherent
* @param DB base de donnees
* Constructor
*
* @param DoliDB $DB Database handler
*/
function Adherent($DB)
{

View File

@@ -49,8 +49,9 @@ class AdherentType extends CommonObject
/**
* \brief AdherentType
* \param DB handler acces base de donnees
* Constructor
*
* @param DoliDB $DB Database handler
*/
function AdherentType($DB)
{
@@ -194,6 +195,7 @@ class AdherentType extends CommonObject
/**
* Return list of members' type
*
* @return array List of types of members
*/
function liste_array()
@@ -233,11 +235,12 @@ class AdherentType extends CommonObject
/**
* \brief Renvoie nom clicable (avec eventuellement le picto)
* \param withpicto 0=Pas de picto, 1=Inclut le picto dans le lien, 2=Picto seul
* \param maxlen length max libelle
* \param option Page lien
* \return string Chaine avec URL
* Renvoie nom clicable (avec eventuellement le picto)
*
* @param withpicto 0=Pas de picto, 1=Inclut le picto dans le lien, 2=Picto seul
* @param maxlen length max libelle
* @param option Page lien
* @return string Chaine avec URL
*/
function getNomUrl($withpicto=0,$maxlen=0)
{
@@ -260,6 +263,7 @@ class AdherentType extends CommonObject
/**
* getMailOnValid
*
* @return Return mail model
*/
function getMailOnValid()
@@ -278,6 +282,7 @@ class AdherentType extends CommonObject
/**
* getMailOnSubscription
*
* @return Return mail model
*/
function getMailOnSubscription()
@@ -296,6 +301,7 @@ class AdherentType extends CommonObject
/**
* getMailOnResiliate
*
* @return Return mail model
*/
function getMailOnResiliate()

View File

@@ -47,9 +47,9 @@ class AdherentStats extends Stats
/**
* Constructor
*
* @param $DB Database handler
* @param $socid Id third party
* @param $userid Id user for filter
* @param DoliDB $DB Database handler
* @param int $socid Id third party
* @param int $userid Id user for filter
* @return AdherentStats
*/
function AdherentStats($DB, $socid=0, $userid=0)

View File

@@ -49,8 +49,9 @@ class Cotisation extends CommonObject
/**
* \brief Constructor
* \param DB Handler base de donnees
* Constructor
*
* @param DoliDB $DB Database handler
*/
function Cotisation($DB)
{
@@ -59,9 +60,10 @@ class Cotisation extends CommonObject
/**
* \brief Fonction qui permet de creer la cotisation
* \param userid userid de celui qui insere
* \return int <0 si KO, Id cotisation cree si OK
* Fonction qui permet de creer la cotisation
*
* @param userid userid de celui qui insere
* @return int <0 si KO, Id cotisation cree si OK
*/
function create($userid)
{
@@ -95,9 +97,10 @@ class Cotisation extends CommonObject
/**
* \brief Fonction qui permet de recuperer une cotisation
* \param rowid Id cotisation
* \return int <0 si KO, =0 si OK mais non trouve, >0 si OK
* Fonction qui permet de recuperer une cotisation
*
* @param rowid Id cotisation
* @return int <0 si KO, =0 si OK mais non trouve, >0 si OK
*/
function fetch($rowid)
{
@@ -144,10 +147,11 @@ class Cotisation extends CommonObject
/**
* \brief Met a jour en base la cotisation
* \param user Objet user qui met a jour
* \param notrigger 0=Desactive les triggers
* \param int <0 if KO, >0 if OK
* Met a jour en base la cotisation
*
* @param user Objet user qui met a jour
* @param notrigger 0=Desactive les triggers
* @param int <0 if KO, >0 if OK
*/
function update($user,$notrigger=0)
{
@@ -184,9 +188,10 @@ class Cotisation extends CommonObject
}
/**
* \brief Delete a subscription
* \param rowid Id cotisation
* \return int <0 si KO, 0 si OK mais non trouve, >0 si OK
* Delete a subscription
*
* @param rowid Id cotisation
* @return int <0 si KO, 0 si OK mais non trouve, >0 si OK
*/
function delete($user)
{
@@ -250,9 +255,10 @@ class Cotisation extends CommonObject
/**
* \brief Renvoie nom clicable (avec eventuellement le picto)
* \param withpicto 0=Pas de picto, 1=Inclut le picto dans le lien, 2=Picto seul
* \return string Chaine avec URL
* Renvoie nom clicable (avec eventuellement le picto)
*
* @param withpicto 0=Pas de picto, 1=Inclut le picto dans le lien, 2=Picto seul
* @return string Chaine avec URL
*/
function getNomUrl($withpicto=0)
{
@@ -274,8 +280,9 @@ class Cotisation extends CommonObject
/**
* \brief Charge les informations d'ordre info dans l'objet cotisation
* \param id Id adhesion a charger
* Charge les informations d'ordre info dans l'objet cotisation
*
* @param id Id adhesion a charger
*/
function info($id)
{

View File

@@ -168,7 +168,7 @@ dol_fiche_head($head, $tab, $langs->trans("Statistics"), 0, 'user');
// Print title
if ($mode && ! sizeof($data))
if ($mode && ! count($data))
{
print $langs->trans("NoValidatedMemberYet").'<br>';
print '<br>';
@@ -202,7 +202,7 @@ if ($mode == 'memberbycountry')
print "function drawMap() {\n\tvar data = new google.visualization.DataTable();\n";
// Get the total number of rows
print "\tdata.addRows(".sizeof($data).");\n";
print "\tdata.addRows(".count($data).");\n";
print "\tdata.addColumn('string', 'Country');\n";
print "\tdata.addColumn('number', 'Number');\n";

View File

@@ -79,11 +79,8 @@ if ($action == "save" && empty($_POST["cancel"]))
//print "param=".$param." - ".$_POST[$param];
if (! empty($_POST[$param])) $res = dolibarr_set_const($db,$param,$_POST[$param],'chaine',0,'',$conf->entity);
else $res = dolibarr_del_const($db,$param,$conf->entity);
}
$db->commit();
if (! $res > 0) $error++;
}
if (! $error)
{

View File

@@ -1,6 +1,6 @@
<?php
/* Copyright (C) 2003-2004 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2004-2009 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005-2009 Regis Houssin <regis@dolibarr.fr>
*
* This program is free software; you can redistribute it and/or modify
@@ -18,9 +18,9 @@
*/
/**
* \file htdocs/includes/modules/barcode/admin/barcode.php
* \file htdocs/admin/barcode.php
* \ingroup barcode
* \brief Page d'administration/configuration du module Code barre
* \brief Page to setup barcode module
*/
require("../main.inc.php");

View File

@@ -261,7 +261,7 @@ if ($action == 'create')
if ($res)
{
while ($menu = $db->fetch_array ($res))
while ($menu = $db->fetch_array($res))
{
$parent_rowid = $menu['rowid'];
$parent_mainmenu = $menu['mainmenu'];

View File

@@ -300,7 +300,7 @@ if ($conf->use_javascript_ajax)
$num = $db->num_rows($res);
$i = 1;
while ($menu = $db->fetch_array ($res))
while ($menu = $db->fetch_array($res))
{
if (! empty($menu['langs'])) $langs->load($menu['langs']);
$titre = $langs->trans($menu['titre']);

View File

@@ -32,7 +32,7 @@ if (! defined('NOREQUIREMENU')) define('NOREQUIREMENU',1);
if (! defined('NOREQUIREHTML')) define('NOREQUIREHTML',1);
if (! defined('NOREQUIREAJAX')) define('NOREQUIREAJAX','1');
session_cache_limiter( FALSE );
session_cache_limiter(FALSE);
require_once("../../master.inc.php");
require_once(DOL_DOCUMENT_ROOT."/lib/functions.lib.php");

View File

@@ -27,6 +27,7 @@ require_once(DOL_DOCUMENT_ROOT."/lib/admin.lib.php");
require_once(DOL_DOCUMENT_ROOT."/includes/triggers/interface_modNotification_Notification.class.php");
$langs->load("admin");
$langs->load("mails");
// Security check
if (!$user->admin)
@@ -63,7 +64,7 @@ print_fiche_titre($langs->trans("NotificationSetup"),$linkback,'setup');
print $langs->trans("NotificationsDesc").'<br><br>';
if ($mesg) print $mesg.'<br>';
dol_htmloutput_mesg($mesg);
print '<form method="post" action="'.$_SERVER["PHP_SELF"].'">';
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
@@ -80,6 +81,7 @@ $var=!$var;
print '<tr '.$bc[$var].'><td>';
print $langs->trans("NotificationEMailFrom").'</td><td>';
print '<input size="32" type="text" name="email_from" value="'.$conf->global->NOTIFICATION_EMAIL_FROM.'">';
if (! empty($conf->global->NOTIFICATION_EMAIL_FROM) && ! isValidEmail($conf->global->NOTIFICATION_EMAIL_FROM)) print ' '.img_warning($langs->trans("BadEMail"));
print '</td></tr>';
print '</table>';
@@ -121,5 +123,4 @@ $db->close();
llxFooter();
?>

View File

@@ -40,9 +40,11 @@ $action = GETPOST("action");
if ($action == "set")
{
$db->begin();
for ($i = 0 ; $i < 2 ; $i++)
{
$res = dolibarr_set_const($db, $_POST["nom$i"], $_POST["value$i"],'chaine',0,'',$conf->entity);
if (! $res > 0) $error++;
}
$id=$_POST["PRELEVEMENT_ID_BANKACCOUNT"];
@@ -51,23 +53,32 @@ if ($action == "set")
if($account->fetch($id)>0)
{
$res = dolibarr_set_const($db, "PRELEVEMENT_ID_BANKACCOUNT", $id,'chaine',0,'',$conf->entity);
$res = dolibarr_set_const($db, "PRELEVEMENT_CODE_BANQUE", $account->code_banque,'chaine',0,'',$conf->entity);
$res = dolibarr_set_const($db, "PRELEVEMENT_CODE_GUICHET", $account->code_guichet,'chaine',0,'',$conf->entity);
$res = dolibarr_set_const($db, "PRELEVEMENT_NUMERO_COMPTE", $account->number,'chaine',0,'',$conf->entity);
$res = dolibarr_set_const($db, "PRELEVEMENT_NUMBER_KEY", $account->cle_rib,'chaine',0,'',$conf->entity);
$res = dolibarr_set_const($db, "PRELEVEMENT_IBAN", $account->iban,'chaine',0,'',$conf->entity);
$res = dolibarr_set_const($db, "PRELEVEMENT_BIC", $account->bic,'chaine',0,'',$conf->entity);
$res = dolibarr_set_const($db, "PRELEVEMENT_RAISON_SOCIALE", $account->proprio,'chaine',0,'',$conf->entity);
}
if (! $res > 0) $error++;
$res = dolibarr_set_const($db, "PRELEVEMENT_CODE_BANQUE", $account->code_banque,'chaine',0,'',$conf->entity);
if (! $res > 0) $error++;
$res = dolibarr_set_const($db, "PRELEVEMENT_CODE_GUICHET", $account->code_guichet,'chaine',0,'',$conf->entity);
if (! $res > 0) $error++;
$res = dolibarr_set_const($db, "PRELEVEMENT_NUMERO_COMPTE", $account->number,'chaine',0,'',$conf->entity);
if (! $res > 0) $error++;
$res = dolibarr_set_const($db, "PRELEVEMENT_NUMBER_KEY", $account->cle_rib,'chaine',0,'',$conf->entity);
if (! $res > 0) $error++;
$res = dolibarr_set_const($db, "PRELEVEMENT_IBAN", $account->iban,'chaine',0,'',$conf->entity);
if (! $res > 0) $error++;
$res = dolibarr_set_const($db, "PRELEVEMENT_BIC", $account->bic,'chaine',0,'',$conf->entity);
if (! $res > 0) $error++;
$res = dolibarr_set_const($db, "PRELEVEMENT_RAISON_SOCIALE", $account->proprio,'chaine',0,'',$conf->entity);
if (! $res > 0) $error++;
}
else $error++;
if (! $error)
{
$db->commit();
$mesg = "<font class=\"ok\">".$langs->trans("SetupSaved")."</font>";
}
else
{
$db->rollback();
$mesg = "<font class=\"error\">".$langs->trans("Error")."</font>";
}
}

View File

@@ -1,6 +1,7 @@
<?php
/* Copyright (C) 2010 Regis Houssin <regis@dolibarr.fr>
* Copyright (C) 2011 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2011 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
@@ -42,16 +43,27 @@ $action=GETPOST('action');
* Actions
*/
if ($_POST["action"] == 'updateMask')
if ($action == 'updateMask')
{
$maskconstproject=$_POST['maskconstproject'];
$maskproject=$_POST['maskproject'];
if ($maskconstproject) dolibarr_set_const($db,$maskconstproject,$maskproject,'chaine',0,'',$conf->entity);
$maskconstproject=GETPOST("maskconstproject");
$maskproject=GETPOST("maskproject");
if ($maskconstproject) $res = dolibarr_set_const($db,$maskconstproject,$maskproject,'chaine',0,'',$conf->entity);
if (! $res > 0) $error++;
if (! $error)
{
$mesg = "<font class=\"ok\">".$langs->trans("SetupSaved")."</font>";
}
else
{
$mesg = "<font class=\"error\">".$langs->trans("Error")."</font>";
}
}
if ($_GET["action"] == 'specimen')
if ($action == 'specimen')
{
$modele=$_GET["module"];
$modele=GETPOST("module");
$project = new Project($db);
$project->initAsSpecimen();
@@ -84,13 +96,16 @@ if ($_GET["action"] == 'specimen')
}
}
if ($_GET["action"] == 'set')
if ($action == 'set')
{
$label = GETPOST("label");
$scandir = GETPOST("scandir");
$type='project';
$sql = "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity, libelle, description)";
$sql.= " VALUES ('".$db->escape($_GET["value"])."','".$type."',".$conf->entity.", ";
$sql.= ($_GET["label"]?"'".$db->escape($_GET["label"])."'":'null').", ";
$sql.= (! empty($_GET["scandir"])?"'".$db->escape($_GET["scandir"])."'":"null");
$sql.= " VALUES ('".$db->escape($value)."','".$type."',".$conf->entity.", ";
$sql.= ($label?"'".$db->escape($label)."'":'null').", ";
$sql.= (! empty($scandir)?"'".$db->escape($scandir)."'":"null");
$sql.= ")";
if ($db->query($sql))
{
@@ -98,7 +113,7 @@ if ($_GET["action"] == 'set')
}
}
if ($_GET["action"] == 'del')
if ($action == 'del')
{
$type='project';
$sql = "DELETE FROM ".MAIN_DB_PREFIX."document_model";
@@ -111,27 +126,30 @@ if ($_GET["action"] == 'del')
}
}
if ($_GET["action"] == 'setdoc')
if ($action == 'setdoc')
{
$label = GETPOST("label");
$scandir = GETPOST("scandir");
$db->begin();
if (dolibarr_set_const($db, "PROJECT_ADDON_PDF",$_GET["value"],'chaine',0,'',$conf->entity))
if (dolibarr_set_const($db, "PROJECT_ADDON_PDF",$value,'chaine',0,'',$conf->entity))
{
$conf->global->PROJECT_ADDON_PDF = $_GET["value"];
$conf->global->PROJECT_ADDON_PDF = $value;
}
// On active le modele
$type='project';
$sql_del = "DELETE FROM ".MAIN_DB_PREFIX."document_model";
$sql_del.= " WHERE nom = '".$db->escape($_GET["value"])."'";
$sql_del.= " WHERE nom = '".$db->escape($value)."'";
$sql_del.= " AND type = '".$type."'";
$sql_del.= " AND entity = ".$conf->entity;
$result1=$db->query($sql_del);
$sql = "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity, libelle, description)";
$sql.= " VALUES ('".$db->escape($_GET["value"])."', '".$type."', ".$conf->entity.", ";
$sql.= ($_GET["label"]?"'".$db->escape($_GET["label"])."'":'null').", ";
$sql.= (! empty($_GET["scandir"])?"'".$db->escape($_GET["scandir"])."'":"null");
$sql.= " VALUES ('".$db->escape($value)."', '".$type."', ".$conf->entity.", ";
$sql.= ($label?"'".$db->escape($label)."'":'null').", ";
$sql.= (! empty($scandir)?"'".$db->escape($scandir)."'":"null");
$sql.= ")";
$result2=$db->query($sql);
if ($result1 && $result2)
@@ -144,7 +162,7 @@ if ($_GET["action"] == 'setdoc')
}
}
if ($_GET["action"] == 'setmod')
if ($action == 'setmod')
{
// TODO Verifier si module numerotation choisi peut etre active
// par appel methode canBeActivated
@@ -380,5 +398,9 @@ if (is_resource($handle))
print '</table><br/>';
dol_htmloutput_mesg($mesg);
$db->close();
llxFooter();
?>

View File

@@ -518,7 +518,8 @@ $profid[3][1]=$langs->transcountry('ProfId4' ,$mysoc->pays_code);
$var = true;
$i=0;
while ($i < sizeof($profid))
$nbofloop=count($profid);
while ($i < $nbofloop)
{
$var = !$var;

View File

@@ -1804,7 +1804,7 @@ else
print_liste_field_titre($langs->trans('Price'),$_SERVER["PHP_SELF"],'p.total_ht','',$param, 'align="right"',$sortfield,$sortorder);
print_liste_field_titre($langs->trans('Author'),$_SERVER["PHP_SELF"],'u.login','',$param,'align="right"',$sortfield,$sortorder);
print_liste_field_titre($langs->trans('Status'),$_SERVER["PHP_SELF"],'p.fk_statut','',$param,'align="right"',$sortfield,$sortorder);
print '<td class="liste_titre">&nbsp;</td>';
print_liste_field_titre('');
print "</tr>\n";
// Lignes des champs de filtre
print '<form method="get" action="'.$_SERVER["PHP_SELF"].'">';

View File

@@ -2094,7 +2094,7 @@ class Propal extends CommonObject
$this->nbtodolate++;
}
}
// \todo Definir regle des propales a facturer en retard
// TODO Definir regle des propales a facturer en retard
// if ($mode == 'signed' && ! sizeof($this->FactureListeArray($obj->rowid))) $this->nbtodolate++;
}
return 1;

View File

@@ -78,7 +78,7 @@ if ($action == 'setbankorder')
* view
*/
llxHeader("","");
llxHeader("",$langs->trans("BankSetupModule"));
$html=new Form($db);
@@ -144,7 +144,8 @@ $bankorder[1][2]='BankCode DeskCode BankAccountNumberKey AccountNumber';
$var = true;
$i=0;
while ($i < sizeof($bankorder))
$nbofbank=count($bankorder);
while ($i < $nbofbank)
{
$var = !$var;
@@ -174,11 +175,11 @@ while ($i < sizeof($bankorder))
print '</a></td>';
}
print '<td>&nbsp;</td>';
print "</tr>\n";
print '</tr>'."\n";
$i++;
}
print "</table>\n";
print '</table>'."\n";
dol_htmloutput_mesg($mesg);

View File

@@ -1,6 +1,6 @@
<?php
/* Copyright (C) 2006 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2007-2008 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2007-2011 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005-2009 Regis Houssin <regis@dolibarr.fr>
* Copyright (C) 2011 Juanjo Menent <jmenent@2byte.es>
*
@@ -44,9 +44,9 @@ class RemiseCheque extends CommonObject
var $errno;
/**
* \brief Constructeur de la classe
* \param DB handler acces base de donnees
* \param id id compte (0 par defaut)
* Constructor
*
* @param DoliDB $DB Database handler
*/
function RemiseCheque($DB)
{
@@ -56,10 +56,11 @@ class RemiseCheque extends CommonObject
}
/**
* \brief Load record
* \param id Id record
* \param ref Ref record
* \return int <0 if KO, > 0 if OK
* Load record
*
* @param id Id record
* @param ref Ref record
* @return int <0 if KO, > 0 if OK
*/
function fetch($id,$ref='')
{
@@ -113,6 +114,7 @@ class RemiseCheque extends CommonObject
/**
* Create a receipt to send cheques
*
* @param user User making creation
* @param account_id Bank account for cheque receipt
* @param limit Limit number of cheque to this
@@ -270,6 +272,7 @@ class RemiseCheque extends CommonObject
/**
* Supprime la remise en base
*
* @param user utilisateur qui effectue l'operation
*/
function delete($user='')
@@ -324,6 +327,7 @@ class RemiseCheque extends CommonObject
/**
* Validate a receipt
*
* @param user User
* @return int <0 if KO, >0 if OK
*/
@@ -387,7 +391,7 @@ class RemiseCheque extends CommonObject
/**
* Old module for cheque receipt numbering
*
* @return string
* @return int Next number of cheque
*/
function getNextNumber()
{
@@ -421,6 +425,7 @@ class RemiseCheque extends CommonObject
/**
* Load indicators for dashboard (this->nbtodo and this->nbtodolate)
*
* @param user Objet user
* @param filteraccountid To get info for a particular account id
* @return int <0 if KO, >0 if OK

View File

@@ -19,7 +19,7 @@
*/
/**
* \file htdocs/compta/prelevement/ligne-prelevement.class.php
* \file htdocs/compta/prelevement/class/ligne-prelevement.class.php
* \ingroup prelevement
* \brief Fichier de la classe des lignes de prelevements
*/

View File

@@ -401,7 +401,7 @@ print "</table>";
print '<br><table width="100%" class="noborder">';
// Factures non reglees
// \todo Y a bug ici. Il faut prendre le reste a payer et non le total des factures non reglees !
// Y a bug ici. Il faut prendre le reste a payer et non le total des factures non reglees !
$sql = "SELECT f.facnumber, f.rowid, s.nom, s.rowid as socid, f.total_ttc, sum(pf.amount) as am";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."facture as f left join ".MAIN_DB_PREFIX."paiement_facture as pf on f.rowid=pf.fk_facture";

View File

@@ -511,7 +511,7 @@ class Tva extends CommonObject
$result = $this->db->query($sql);
if ($result)
{
$this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."tva"); // \todo devrait s'appeler paiementtva
$this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."tva"); // TODO devrait s'appeler paiementtva
if ($this->id > 0)
{
$ok=1;

View File

@@ -114,10 +114,11 @@ function tva_coll($db,$y,$q)
/**
* Gets VAT to pay for the given month of the given year
* The function gets the VAT in split results, as the VAT declaration asks
* to report the amounts for different VAT rates as different lines.
* @param object Database handler object
* @param y Year
* @param q Year quarter (1-4)
* to report the amounts for different VAT rates as different lines
*
* @param DoliDB $db Database handler object
* @param int $y Year
* @param int $q Year quarter (1-4)
*/
function tva_paye($db, $y,$q)
{

View File

@@ -380,7 +380,7 @@ class FormMail
$liste=array();
$soc=new Societe($this->db);
$soc->fetch($this->withtosocid);
foreach ($soc->thirdparty_and_contact_email_array() as $key=>$value)
foreach ($soc->thirdparty_and_contact_email_array(1) as $key=>$value)
{
$liste[$key]=$value;
}
@@ -414,7 +414,7 @@ class FormMail
$liste=array();
$soc=new Societe($this->db);
$soc->fetch($this->withtoccsocid);
foreach ($soc->thirdparty_and_contact_email_array() as $key=>$value)
foreach ($soc->thirdparty_and_contact_email_array(1) as $key=>$value)
{
$liste[$key]=$value;
}
@@ -448,7 +448,7 @@ class FormMail
$liste=array();
$soc=new Societe($this->db);
$soc->fetch($this->withtosocid);
foreach ($soc->thirdparty_and_contact_email_array() as $key=>$value)
foreach ($soc->thirdparty_and_contact_email_array(1) as $key=>$value)
{
$liste[$key]=$value;
}
@@ -630,58 +630,6 @@ class FormMail
return $out;
}
/**
* \brief Affiche la partie de formulaire pour saisie d'un mail
* \param withtopic 1 pour proposer a la saisie le sujet
* \param withbody 1 pour proposer a la saisie le corps du message
* \param withfile 1 pour proposer a la saisie l'ajout d'un fichier joint
* \todo Fonction a virer quand fichier /comm/mailing.php vire (= quand ecran dans /comm/mailing prets)
*/
function mail_topicmessagefile($withtopic=1,$withbody=1,$withfile=1,$defaultbody)
{
global $langs;
$langs->load("other");
print "<table class=\"border\" width=\"100%\">";
// Topic
if ($withtopic)
{
print "<tr>";
print "<td width=\"180\">".$langs->trans("MailTopic")."</td>";
print "<td>";
print "<input type=\"text\" size=\"60\" name=\"subject\" value=\"\">";
print "</td></tr>";
}
// Message
if ($withbody)
{
print "<tr>";
print "<td width=\"180\" valign=\"top\">".$langs->trans("MailText")."</td>";
print "<td>";
print "<textarea rows=\"8\" cols=\"72\" name=\"message\">";
print $defaultbody;
print "</textarea>";
print "</td></tr>";
}
// Si fichier joint
if ($withfile)
{
print "<tr>";
print "<td width=\"180\">".$langs->trans("MailFile")."</td>";
print "<td>";
print "<input type=\"file\" name=\"addedfile\" value=\"".$langs->trans("Upload")."\"/>";
print "</td></tr>";
}
print "</table>";
}
}
?>

View File

@@ -1,6 +1,6 @@
<?php
/* Copyright (C) 2003-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2004-2008 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
*
* 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
@@ -42,13 +42,11 @@ class Notify
var $fk_project;
// Les codes actions sont definis dans la table llx_notify_def
// \todo utiliser des codes texte plutot que numerique
// 1 = Validation fiche inter
// 2 = Validation facture
/**
* \brief Constructeur
* \param DB Handler acces base
* Constructor
*
* @param DoliDB $DB Database handler
*/
function Notify($DB)
{

View File

@@ -448,10 +448,10 @@ class RssParser
* Triggered when CDATA is found
*
* @param $p
* @param $element Tag
* @param $attrs Attributes of tags
* @param $text Tag
*/
function feed_cdata ($p, $text) {
function feed_cdata($p, $text)
{
if ($this->_format == 'atom' and $this->incontent)
{
$this->append_content( $text );
@@ -466,9 +466,10 @@ class RssParser
* Triggered when closed tag is found
*
* @param $p
* @param $element Tag
* @param $el Tag
*/
function feed_end_element ($p, $el) {
function feed_end_element($p, $el)
{
$el = strtolower($el);
if ( $el == 'item' or $el == 'entry' )
@@ -520,7 +521,8 @@ class RssParser
* @param $str1
* @param $str2
*/
function concat (&$str1, $str2="") {
function concat(&$str1, $str2="")
{
if (!isset($str1) ) {
$str1="";
}
@@ -529,7 +531,8 @@ class RssParser
/**
*/
function append_content($text) {
function append_content($text)
{
if ( $this->initem ) {
$this->concat( $this->current_item[ $this->incontent ], $text );
}
@@ -541,7 +544,8 @@ class RssParser
/**
* smart append - field and namespace aware
*/
function append($el, $text) {
function append($el, $text)
{
if (!$el) {
return;
}

View File

@@ -2103,7 +2103,7 @@ class SMTPs
* @return void
*
*/
function setAttachment ( $strContent, $strFileName = 'unknown', $strMimeType = 'unknown' )
function setAttachment($strContent, $strFileName = 'unknown', $strMimeType = 'unknown')
{
if ( $strContent )
{
@@ -2120,6 +2120,7 @@ class SMTPs
// DOL_CHANGE LDR
/**
* Method public void setImageInline( string )
*
@@ -2129,12 +2130,13 @@ class SMTPs
* @param string $strContent Image data to attach to message
* @param string $strImageName Image Name to give to attachment
* @param string $strMimeType Image Mime Type of attachment
* @param string $strImageCid CID
* @return void
*
*/
function setImageInline ( $strContent, $strImageName = 'unknown', $strMimeType = 'unknown', $strImageCid = 'unknown' )
function setImageInline($strContent, $strImageName = 'unknown', $strMimeType = 'unknown', $strImageCid = 'unknown')
{
if ( $strContent )
if ($strContent)
{
$this->_msgContent['image'][$strImageName]['mimeType'] = $strMimeType;
$this->_msgContent['image'][$strImageName]['imageName'] = $strImageName;
@@ -2170,7 +2172,7 @@ class SMTPs
* @return void
*
*/
function setSensitivity ( $_value = 0 )
function setSensitivity($_value = 0)
{
if ( ( is_numeric ($_value) ) &&
( ( $_value >= 0 ) && ( $_value <= 3 ) ) )
@@ -2516,7 +2518,10 @@ class SMTPs
// ** CSV Version Control Info
/**
* $Log: smtps.php,v $
* $Log: smtps.class.php,v $
* Revision 1.1 2011/09/03 00:14:27 eldy
* Doxygen
*
* Revision 1.4 2011/08/28 14:24:23 eldy
* Doxygen
*

View File

@@ -12,8 +12,7 @@
* 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, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* or see http://www.gnu.org/
*/
@@ -37,6 +36,7 @@ class modBarcodeCoder extends ModeleBarCode
/**
* Return if a module can be used or not
*
* @return boolean true if module can be used
*/
function isEnabled()
@@ -47,6 +47,7 @@ class modBarcodeCoder extends ModeleBarCode
/**
* Return description
*
* @return string Texte descripif
*/
function info()
@@ -58,7 +59,8 @@ class modBarcodeCoder extends ModeleBarCode
/**
* Test si les numeros deja en vigueur dans la base ne provoquent pas de
* de conflits qui empechera cette numerotation de fonctionner.
* de conflits qui empechera cette numerotation de fonctionner
*
* @return boolean false si conflit, true si ok
*/
function canBeActivated()
@@ -71,6 +73,7 @@ class modBarcodeCoder extends ModeleBarCode
/**
* Return true if encodinf is supported
*
* @return int >0 if supported, 0 if not
*/
function encodingIsSupported($encoding)
@@ -90,6 +93,7 @@ class modBarcodeCoder extends ModeleBarCode
/**
* Return an image file on the fly (no need to write on disk)
*
* @param $code Value to encode
* @param $encoding Mode of encoding
* @param $readable Code can be read
@@ -121,9 +125,9 @@ class modBarcodeCoder extends ModeleBarCode
$height = 50; // barcode height in 1D ; module size in 2D
$width = 2; // barcode height in 1D ; not use in 2D
$angle = 90; // rotation in degrees : nb : non horizontable barcode might not be usable because of pixelisation
$type = 'ean13';
$type = 'ean13';
$im = imagecreatetruecolor(300, 300);
$im = imagecreatetruecolor(300, 300);
$black = ImageColorAllocate($im,0x00,0x00,0x00);
$white = ImageColorAllocate($im,0xff,0xff,0xff);
$red = ImageColorAllocate($im,0xff,0x00,0x00);
@@ -190,6 +194,7 @@ $im = imagecreatetruecolor(300, 300);
/**
* Save an image file on disk (with no output)
*
* @param $code Value to encode
* @param $encoding Mode of encoding
* @param $readable Code can be read

View File

@@ -193,7 +193,7 @@ else
else
{
# If failed, we try to create an empty file
dolibarr_install_syslog("failed to copy file ".$conffile.".example into ".$conffile.". We try to create it.");
dolibarr_install_syslog("failed to copy file ".$conffile.".example into ".$conffile.". We try to create it.", LOG_WARNING);
$fp = @fopen($conffile, "w");
if ($fp)
@@ -203,6 +203,7 @@ else
@fputs($fp,"?>");
fclose($fp);
}
else dolibarr_install_syslog("failed to create a new file ".$conffile." into current dir ".getcwd().". Check permission.", LOG_ERR);
}
// First install, on ne peut pas upgrader

View File

@@ -234,7 +234,7 @@ class CMailFile
// Use SMTPS library
// ------------------------------------------
require_once(DOL_DOCUMENT_ROOT."/core/class/smtps.php");
require_once(DOL_DOCUMENT_ROOT."/core/class/smtps.class.php");
$smtps = new SMTPs();
$smtps->setCharSet($conf->file->character_set_client);

View File

@@ -2572,43 +2572,36 @@ function print_liste_field_titre($name, $file="", $field="", $begin="", $morepar
/**
* Get title line of an array
*
* @param name Label of field
* @param thead For thead format
* @param file Url used when we click on sort picto
* @param field Field to use for new sorting
* @param begin ("" by defaut)
* @param moreparam Add more parameters on sort url links ("" by default)
* @param td Options of attribute td ("" by defaut)
* @param moreattrib Add more attributes on th ("" by defaut)
* @param sortfield Current field used to sort
* @param sortorder Current sort order
*/
function getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $moreparam="", $td="", $sortfield="", $sortorder="")
function getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $moreparam="", $moreattrib="", $sortfield="", $sortorder="")
{
global $conf;
//print "$name, $file, $field, $begin, $options, $td, $sortfield, $sortorder<br>\n";
//print "$name, $file, $field, $begin, $options, $moreattrib, $sortfield, $sortorder<br>\n";
$out='';
if ($thead)
{
$out.= '<th>'.$name.'</th>';
}
else
{
// Le champ de tri est mis en evidence.
// Exemple si (sortfield,field)=("nom","xxx.nom") ou (sortfield,field)=("nom","nom")
// If field is used as sort criteria we use a specific class
// Example if (sortfield,field)=("nom","xxx.nom") or (sortfield,field)=("nom","nom")
if ($field && ($sortfield == $field || $sortfield == preg_replace("/^[^\.]+\./","",$field)))
{
$out.= '<td class="liste_titre_sel" '. $td.'>';
$out.= '<th class="liste_titre_sel" '. $moreattrib.'>';
}
else
{
$out.= '<td class="liste_titre" '. $td.'>';
$out.= '<th class="liste_titre" '. $moreattrib.'>';
}
$out.= $name;
$out.=$name;
// If this is a sort field
if ($field)
if (empty($thead) && $field) // If this is a sort field
{
$options=preg_replace('/sortfield=([a-zA-Z0-9,\s\.]+)/i','',$moreparam);
$options=preg_replace('/sortorder=([a-zA-Z0-9,\s\.]+)/i','',$options);
@@ -2642,8 +2635,7 @@ function getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $m
}
}
}
$out.= "</td>";
}
$out.='</th>';
return $out;
}
@@ -2672,6 +2664,7 @@ function print_fiche_titre($titre, $mesg='', $picto='title.png', $pictoisfullpat
/**
* Load a title with picto
*
* @param titre Title to show
* @param mesg Added message to show on right
* @param picto Icon to use before title (should be a 32x32 transparent png file)
@@ -2704,6 +2697,7 @@ function load_fiche_titre($titre, $mesg='', $picto='title.png', $pictoisfullpath
/**
* Print a title with navigation controls for pagination
*
* @param titre Title to show (required)
* @param page Numero of page (required)
* @param file Url of page (required)
@@ -2813,6 +2807,7 @@ function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $so
/**
* Fonction servant a afficher les fleches de navigation dans les pages de listes
*
* @param page Numero of page
* @param file Lien
* @param options Autres parametres d'url a propager dans les liens ("" par defaut)
@@ -2837,6 +2832,7 @@ function print_fleche_navigation($page,$file,$options='',$nextpage,$betweenarrow
/**
* Fonction qui retourne un taux de tva formate pour visualisation
* Utilisee dans les pdf et les pages html
*
* @param rate Rate value to format (19.6 19,6 19.6% 19,6%,...)
* @param addpercent Add a percent % sign in output
* @param info_bits Miscellanous information on vat
@@ -2865,6 +2861,7 @@ function vatrate($rate,$addpercent=false,$info_bits=0)
/**
* Fonction qui formate un montant pour visualisation
* Fonction utilisee dans les pdf et les pages html
*
* @param amount Montant a formater
* @param html Type de formatage, html ou pas (par defaut)
* @param outlangs Objet langs pour formatage text
@@ -2937,7 +2934,8 @@ function price($amount, $html=0, $outlangs='', $trunc=1, $rounding=-1, $forcerou
/**
* Function that return a number with universal decimal format (decimal separator is '.') from
* an amount typed by a user.
* Function to use on each input amount before any numeric test or database insert.
* Function to use on each input amount before any numeric test or database insert
*
* @param amount Amount to convert/clean
* @param rounding ''=No rounding
* 'MU'=Round to Max unit price (MAIN_MAX_DECIMALS_UNIT)
@@ -3022,6 +3020,7 @@ function price2num($amount,$rounding='',$alreadysqlnb=0)
/**
* Return localtaxe rate for a particular tva
*
* @param tva Vat taxe
* @param local Local taxe to search and return
* @param societe_acheteuse Object of buying third party
@@ -3060,7 +3059,8 @@ function get_localtax($tva, $local, $societe_acheteuse="")
/**
* Return vat rate of a product in a particular selling country or default country
* vat if product is unknown.
* vat if product is unknown
*
* @param idprod Id of product or 0 if not a predefined product
* @param countrycode Country code (FR, US, IT, ...)
* @return int <0 if KO, Vat rate if OK
@@ -3119,6 +3119,7 @@ function get_product_vat_for_country($idprod, $countrycode)
/**
* Return localtax rate of a product in a particular selling country
*
* @param idprod Id of product
* @package local 1 for localtax1, 2 for localtax 2
* @param countrycode Country code (FR, US, IT, ...)
@@ -3276,6 +3277,7 @@ function get_default_localtax($societe_vendeuse, $societe_acheteuse, $local, $id
/**
* Return yes or no in current language
*
* @param yesno Value to test (1, 'yes', 'true' or 0, 'no', 'false')
* @param case 1=Yes/No, 0=yes/no
* @param color 0=texte only, 1=Text is formated with a color font style ('ok' or 'error'), 2=Text is formated with 'ok' color.
@@ -3304,6 +3306,7 @@ function yn($yesno, $case=1, $color=0)
* Return a path to have a directory according to an id
* Examples: '001' with level 3->"0/0/1/", '015' with level 3->"0/1/5/"
* Examples: 'ABC-1' with level 3 ->"0/0/1/", '015' with level 1->"5/"
*
* @param $num Id to develop
* @param $level Level of development (1, 2 or 3 level)
* @param $alpha Use alpha ref
@@ -3330,6 +3333,7 @@ function create_exdir($dir)
/**
* Creation of a directory (recursive)
*
* @param $dir Directory to create
* @return int < 0 if KO, 0 = already exists, > 0 if OK
*/
@@ -3391,6 +3395,7 @@ function dol_mkdir($dir)
/**
* Return picto saying a field is required
*
* @return string Chaine avec picto obligatoire
*/
function picto_required()
@@ -3401,6 +3406,7 @@ function picto_required()
/**
* Clean a string from all HTML tags and entities
*
* @param StringHtml String to clean
* @param removelinefeed Replace also all lines feeds by a space
* @return string String cleaned
@@ -3425,7 +3431,8 @@ function dol_string_nohtmltag($StringHtml,$removelinefeed=1)
/**
* Replace CRLF in string with a HTML BR tag.
* Replace CRLF in string with a HTML BR tag
*
* @param stringtoencode String to encode
* @param nl2brmode 0=Adding br before \n, 1=Replacing \n by br
* @param forxml false=Use <br>, true=Use <br />
@@ -3455,7 +3462,8 @@ function dol_nl2br($stringtoencode,$nl2brmode=0,$forxml=false)
* - writeHTMLCell -> param must be encoded into HTML.
* - MultiCell -> param must not be encoded into HTML.
* Because writeHTMLCell convert also \n into <br>, if function
* is used to build PDF, nl2brmode must be 1.
* is used to build PDF, nl2brmode must be 1
*
* @param stringtoencode String to encode
* @param nl2brmode 0=Adding br before \n, 1=Replacing \n by br (for use with FPDF writeHTMLCell function for example)
* @param pagecodefrom Pagecode stringtoencode is encoded
@@ -3482,6 +3490,7 @@ function dol_htmlentitiesbr($stringtoencode,$nl2brmode=0,$pagecodefrom='UTF-8')
/**
* This function is called to decode a HTML string (it decodes entities and br tags)
*
* @param stringtodecode String to decode
* @param pagecodeto Page code for result
*/
@@ -3497,6 +3506,7 @@ function dol_htmlentitiesbr_decode($stringtodecode,$pagecodeto='UTF-8')
/**
* This function remove all ending \n and br at end
*
* @param stringtodecode String to decode
*/
function dol_htmlcleanlastbr($stringtodecode)
@@ -3507,6 +3517,7 @@ function dol_htmlcleanlastbr($stringtodecode)
/**
* This function is called to decode a string with HTML entities (it decodes entities tags)
*
* @param stringhtml stringhtml
* @param pagecodeto Encoding of input string
* @return string decodestring
@@ -3519,6 +3530,7 @@ function dol_entity_decode($stringhtml,$pagecodeto='UTF-8')
/**
* Replace html_entity_decode functions to manage errors
*
* @param a
* @param b
* @param c
@@ -3533,6 +3545,7 @@ function dol_html_entity_decode($a,$b,$c)
/**
* Replace htmlentities functions to manage errors
*
* @param a
* @param b
* @param c
@@ -3549,7 +3562,8 @@ function dol_htmlentities($a,$b,$c)
/**
* Check if a string is a correct iso string
* If not, it will we considered not HTML encoded even if it is by FPDF.
* Example, if string contains euro symbol that has ascii code 128.
* Example, if string contains euro symbol that has ascii code 128
*
* @param s String to check
* @return int 0 if bad iso, 1 if good iso
*/
@@ -3570,6 +3584,7 @@ function dol_string_is_good_iso($s)
/**
* Return nb of lines of a clear text
*
* @param s String to check
* @param maxchar Not yet used
* @return int Number of lines
@@ -3586,6 +3601,7 @@ function dol_nboflines($s,$maxchar=0)
/**
* Return nb of lines of a formated text with \n and <br>
*
* @param text Text
* @param maxlinesize Largeur de ligne en caracteres (ou 0 si pas de limite - defaut)
* @param charset Give the charset used to encode the $text variable in memory.
@@ -3622,6 +3638,7 @@ function dol_nboflines_bis($text,$maxlinesize=0,$charset='UTF-8')
/**
* Same function than microtime in PHP 5 but compatible with PHP4
*
* @return float Time (millisecondes) with microsecondes in decimal part
*/
function dol_microtime_float()
@@ -3632,6 +3649,7 @@ function dol_microtime_float()
/**
* Return if a text is a html content
*
* @param msg Content to check
* @param option 0=Full detection, 1=Fast check
* @return boolean true/false
@@ -4094,7 +4112,8 @@ function verifCond($strRights)
/**
* Replace eval function to add more security.
* This function is called by verifCond().
* This function is called by verifCond()
*
* @param string $s
*/
function dol_eval($s)

View File

@@ -64,7 +64,7 @@ function vat_by_thirdparty($db, $y, $date_start, $date_end, $modetax, $direction
// If vat paid on due invoices (non draft)
if ($conf->global->MAIN_MODULE_ACCOUNTING)
{
// \todo a ce jour on se sait pas la compter car le montant tva d'un payment
// TODO a ce jour on se sait pas la compter car le montant tva d'un payment
// n'est pas stocke dans la table des payments.
// Seul le module compta expert peut resoudre ce probleme.
// (Il faut quand un payment a lieu, stocker en plus du montant du paiement le
@@ -102,7 +102,7 @@ function vat_by_thirdparty($db, $y, $date_start, $date_end, $modetax, $direction
if ($conf->global->MAIN_MODULE_ACCOUNTING)
{
// If vat paid on payments
// \todo a ce jour on se sait pas la compter car le montant tva d'un payment
// TODO a ce jour on se sait pas la compter car le montant tva d'un payment
// n'est pas stocke dans la table des payments.
// Seul le module compta expert peut resoudre ce probleme.
// (Il faut quand un payment a lieu, stocker en plus du montant du paiement le
@@ -215,7 +215,7 @@ function vat_by_date($db, $y, $q, $date_start, $date_end, $modetax, $direction,
{
if ($conf->global->MAIN_MODULE_ACCOUNTING)
{
// \todo a ce jour on se sait pas la compter car le montant tva d'un payment
// TODO a ce jour on se sait pas la compter car le montant tva d'un payment
// n'est pas stocke dans la table des payments.
// Seul le module compta expert peut resoudre ce probleme.
// (Il faut quand un payment a lieu, stocker en plus du montant du paiement le
@@ -261,7 +261,7 @@ function vat_by_date($db, $y, $q, $date_start, $date_end, $modetax, $direction,
{
if ($conf->global->MAIN_MODULE_ACCOUNTING)
{
// \todo a ce jour on se sait pas la compter car le montant tva d'un payment
// TODO a ce jour on se sait pas la compter car le montant tva d'un payment
// n'est pas stocke dans la table des payments.
// Seul le module compta expert peut resoudre ce probleme.
// (Il faut quand un payment a lieu, stocker en plus du montant du paiement le
@@ -376,7 +376,7 @@ function vat_by_date($db, $y, $q, $date_start, $date_end, $modetax, $direction,
if ($conf->global->MAIN_MODULE_ACCOUNTING)
{
// Count on invoice date
// \todo a ce jour on se sait pas la compter car le montant tva d'un payment
// TODO a ce jour on se sait pas la compter car le montant tva d'un payment
// n'est pas stocke dans la table des payments.
// Seul le module compta expert peut resoudre ce probleme.
// (Il faut quand un payment a lieu, stocker en plus du montant du paiement le
@@ -423,7 +423,7 @@ function vat_by_date($db, $y, $q, $date_start, $date_end, $modetax, $direction,
if ($conf->global->MAIN_MODULE_ACCOUNTING)
{
// Count on payments date
// \todo a ce jour on se sait pas la compter car le montant tva d'un payment
// TODO a ce jour on se sait pas la compter car le montant tva d'un payment
// n'est pas stocke dans la table des payments.
// Seul le module compta expert peut resoudre ce probleme.
// (Il faut quand un paiement a lieu, stocker en plus du montant du paiement le

View File

@@ -16,7 +16,7 @@
*/
/**
* \file htdocs/product/canvas/service/product.service.class.php
* \file htdocs/product/canvas/service/actions_card_service.class.php
* \ingroup service
* \brief Fichier de la classe des services par defaut
*/

View File

@@ -2485,7 +2485,7 @@ class Product extends CommonObject
if (file_exists($dir_osencoded))
{
// Cree fichier en taille vignette
// \todo A faire
// TODO A faire
// Cree fichier en taille origine
$content = @file_get_contents($file);

View File

@@ -17,7 +17,7 @@
*/
/**
* \files htdocs/societe/class/companybankaccount.class.php
* \file htdocs/societe/class/companybankaccount.class.php
* \ingroup societe
* \brief File of class to manage bank accounts description of third parties
*/

View File

@@ -1545,14 +1545,16 @@ class Societe extends CommonObject
/**
* Return list of contacts emails existing for third party
*
* @param int $addthirdparty 1=Add also a record for thirdparty email
* @return array Array of contacts emails
*/
function thirdparty_and_contact_email_array()
function thirdparty_and_contact_email_array($addthirdparty=0)
{
global $langs;
$contact_emails = $this->contact_property_array('email');
if ($this->email)
if ($this->email && $addthirdparty)
{
if (empty($this->name)) $this->name=$this->nom;
// TODO: Tester si email non deja present dans tableau contact
@@ -1563,6 +1565,7 @@ class Societe extends CommonObject
/**
* Return list of contacts mobile phone existing for third party
*
* @return array Array of contacts emails
*/
function thirdparty_and_contact_phone_array()
@@ -1581,6 +1584,7 @@ class Societe extends CommonObject
/**
* Return list of contacts emails or mobile existing for third party
*
* @param mode 'email' or 'mobile'
* @return array Array of contacts emails or mobile
*/
@@ -1591,6 +1595,7 @@ class Societe extends CommonObject
$sql = "SELECT rowid, email, phone_mobile, name, firstname";
$sql.= " FROM ".MAIN_DB_PREFIX."socpeople";
$sql.= " WHERE fk_soc = '".$this->id."'";
$resql=$this->db->query($sql);
if ($resql)
{
@@ -1617,8 +1622,9 @@ class Societe extends CommonObject
/**
* \brief Renvoie la liste des contacts de cette societe
* \return array tableau des contacts
* Renvoie la liste des contacts de cette societe
*
* @return array tableau des contacts
*/
function contact_array()
{
@@ -1649,6 +1655,7 @@ class Societe extends CommonObject
/**
* Return property of contact from its id
*
* @param rowid id of contact
* @param mode 'email' or 'mobile'
* @return string email of contact
@@ -1684,7 +1691,9 @@ class Societe extends CommonObject
/**
* \brief Affiche le rib
* Return bank number property of thirdparty
*
* @return string Bank number
*/
function display_rib()
{

View File

@@ -33,8 +33,12 @@ $langs->load("mails");
$langs->load("admin");
$langs->load("other");
$socid = GETPOST("socid",'int');
$action = GETPOST('action');
$contactid=GETPOST('contactid'); // May be an int or 'thirdparty'
$actionid=GETPOST('actionid');
// Security check
$socid = isset($_GET["socid"])?$_GET["socid"]:'';
if ($user->societe_id) $socid=$user->societe_id;
$result = restrictedArea($user, 'societe','','');
@@ -48,20 +52,39 @@ $pagenext = $page + 1;
if (! $sortorder) $sortorder="ASC";
if (! $sortfield) $sortfield="c.name";
$now=dol_now();
/*
* Action
* Actions
*/
// Add a notification
if ($_POST["action"] == 'add')
if ($action == 'add')
{
$error=0;
if (empty($contactid))
{
$mesg='<div class="error">'.$langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("Contact")).'</div>';
$error++;
}
if ($actionid <= 0)
{
$mesg='<div class="error">'.$langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("Action")).'</div>';
$error++;
}
if (! $error)
{
$db->begin();
$sql = "DELETE FROM ".MAIN_DB_PREFIX."notify_def";
$sql .= " WHERE fk_soc=".$socid." AND fk_contact=".$_POST["contactid"]." AND fk_action=".$_POST["actionid"];
$sql .= " WHERE fk_soc=".$socid." AND fk_contact=".$contactid." AND fk_action=".$actionid;
if ($db->query($sql))
{
$sql = "INSERT INTO ".MAIN_DB_PREFIX."notify_def (datec,fk_soc, fk_contact, fk_action)";
$sql .= " VALUES (".$db->idate(mktime()).",".$socid.",".$_POST["contactid"].",".$_POST["actionid"].")";
$sql .= " VALUES ('".$db->idate($now)."',".$socid.",".$contactid.",".$actionid.")";
if ($db->query($sql))
{
@@ -69,6 +92,7 @@ if ($_POST["action"] == 'add')
}
else
{
$error++;
dol_print_error($db);
}
}
@@ -76,10 +100,20 @@ if ($_POST["action"] == 'add')
{
dol_print_error($db);
}
if (! $error)
{
$db->commit();
}
else
{
$db->rollback();
}
}
}
// Remove a notification
if ($_GET["action"] == 'delete')
if ($action == 'delete')
{
$sql = "DELETE FROM ".MAIN_DB_PREFIX."notify_def where rowid=".$_GET["actid"].";";
$db->query($sql);
@@ -95,16 +129,16 @@ $form = new Form($db);
llxHeader();
$soc = new Societe($db);
$soc->id = $socid;
$object = new Societe($db);
$result=$object->fetch($socid);
if ( $soc->fetch($soc->id) )
if ($result > 0)
{
$html = new Form($db);
$langs->load("other");
$head = societe_prepare_head($soc);
$head = societe_prepare_head($object);
dol_fiche_head($head, 'notify', $langs->trans("ThirdParty"),0,'company');
@@ -112,14 +146,38 @@ if ( $soc->fetch($soc->id) )
print '<table class="border"width="100%">';
print '<tr><td width="20%">'.$langs->trans("ThirdPartyName").'</td><td colspan="3">';
print $form->showrefnav($soc,'socid','',($user->societe_id?0:1),'rowid','nom');
print $form->showrefnav($object,'socid','',($user->societe_id?0:1),'rowid','nom');
print '</td></tr>';
// Prefix
if (! empty($conf->global->SOCIETE_USEPREFIX)) // Old not used prefix field
{
print '<tr><td>'.$langs->trans('Prefix').'</td><td colspan="3">'.$object->prefix_comm.'</td></tr>';
}
if ($object->client)
{
print '<tr><td>';
print $langs->trans('CustomerCode').'</td><td colspan="3">';
print $object->code_client;
if ($object->check_codeclient() <> 0) print ' <font class="error">('.$langs->trans("WrongCustomerCode").')</font>';
print '</td></tr>';
}
if ($object->fournisseur)
{
print '<tr><td>';
print $langs->trans('SupplierCode').'</td><td colspan="3">';
print $object->code_fournisseur;
if ($object->check_codefournisseur() <> 0) print ' <font class="error">('.$langs->trans("WrongSupplierCode").')</font>';
print '</td></tr>';
}
print '<tr><td width="30%">'.$langs->trans("NbOfActiveNotifications").'</td>';
print '<td colspan="3">';
$sql = "SELECT COUNT(n.rowid) as nb";
$sql.= " FROM ".MAIN_DB_PREFIX."notify_def as n";
$sql.= " WHERE fk_soc = ".$soc->id;
$sql.= " WHERE fk_soc = ".$object->id;
$resql=$db->query($sql);
if ($resql)
{
@@ -139,11 +197,11 @@ if ( $soc->fetch($soc->id) )
print '</td></tr>';
print '</table>';
print '</div>';
// Help
print $langs->trans("NotificationsDesc").'<br><br>';
print '<br>'.$langs->trans("NotificationsDesc").'<br>';
dol_fiche_end();
print "\n";
@@ -153,19 +211,22 @@ if ( $soc->fetch($soc->id) )
print '<form action="fiche.php?socid='.$socid.'" method="post">';
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
print '<input type="hidden" name="action" value="add">';
$param="&socid=".$socid;
// Line with titles
print '<table width="100%" class="noborder">';
print '<tr class="liste_titre">';
$param="&socid=".$socid;
print_liste_field_titre($langs->trans("Contact"),"fiche.php","c.name",'',$param,'"width="45%"',$sortfield,$sortorder);
print_liste_field_titre($langs->trans("Action"),"fiche.php","a.titre",'',$param,'"width="35%"',$sortfield,$sortorder);
print_liste_field_titre($langs->trans("Type"),"fiche.php","",'',$param,'"width="10%"',$sortfield,$sortorder);
print '<td>&nbsp;</td>';
print_liste_field_titre('');
print '</tr>';
$var=false;
if (count($soc->thirdparty_and_contact_email_array()) > 0)
$listofemails=$object->thirdparty_and_contact_email_array();
if (count($listofemails) > 0)
{
$actions=array();
@@ -178,9 +239,8 @@ if ( $soc->fetch($soc->id) )
$label=$langs->trans("Notify_".$notifiedevent['code'])!=$langs->trans("Notify_".$notifiedevent['code'])?$langs->trans("Notify_".$notifiedevent['code']):$notifiedevent['label'];
$actions[$notifiedevent['rowid']]=$label;
}
print '<input type="hidden" name="action" value="add">';
print '<tr '.$bc[$var].'><td>';
print $html->selectarray("contactid",$soc->thirdparty_and_contact_email_array());
print $html->selectarray("contactid",$listofemails);
print '</td>';
print '<td>';
print $html->selectarray("actionid",$actions,'',1);
@@ -204,6 +264,7 @@ if ( $soc->fetch($soc->id) )
print '</form>';
print '<br>';
dol_htmloutput_mesg($mesg);
// List of active notifications
print_fiche_titre($langs->trans("ListOfActiveNotifications"),'','');
@@ -227,7 +288,7 @@ if ( $soc->fetch($soc->id) )
$sql.= " ".MAIN_DB_PREFIX."socpeople c";
$sql.= " WHERE a.rowid = n.fk_action";
$sql.= " AND c.rowid = n.fk_contact";
$sql.= " AND c.fk_soc = ".$soc->id;
$sql.= " AND c.fk_soc = ".$object->id;
$resql=$db->query($sql);
if ($resql)
@@ -290,9 +351,9 @@ if ( $soc->fetch($soc->id) )
// Line with titles
print '<table width="100%" class="noborder">';
print '<tr class="liste_titre">';
print_liste_field_titre($langs->trans("Contact"),"fiche.php","c.name",'',"&socid=$socid",'',$sortfield,$sortorder);
print_liste_field_titre($langs->trans("Action"),"fiche.php","a.titre",'',"&socid=$socid",'',$sortfield,$sortorder);
print_liste_field_titre($langs->trans("Date"),"fiche.php","a.titre",'',"&socid=$socid",'align="right"',$sortfield,$sortorder);
print_liste_field_titre($langs->trans("Contact"),"fiche.php","c.name",'',$param,'',$sortfield,$sortorder);
print_liste_field_titre($langs->trans("Action"),"fiche.php","a.titre",'',$param,'',$sortfield,$sortorder);
print_liste_field_titre($langs->trans("Date"),"fiche.php","a.daten",'',$param,'align="right"',$sortfield,$sortorder);
print '</tr>';
// List
@@ -304,7 +365,7 @@ if ( $soc->fetch($soc->id) )
$sql.= " ".MAIN_DB_PREFIX."socpeople as c";
$sql.= " WHERE a.rowid = n.fk_action";
$sql.= " AND c.rowid = n.fk_contact";
$sql.= " AND c.fk_soc = ".$soc->id;
$sql.= " AND c.fk_soc = ".$object->id;
$resql=$db->query($sql);
if ($resql)
@@ -345,6 +406,7 @@ if ( $soc->fetch($soc->id) )
print '</table>';
}
else dol_print_error('','RecordNotFound');
$db->close();

View File

@@ -1200,64 +1200,68 @@ padding: 0px 0px;
/* For lists */
table.liste {
width: 100%;
border-collapse: collapse;
border-top-color: #FEFEFE;
width: 100%;
border-collapse: collapse;
border-top-color: #FEFEFE;
border-left-width: 1px;
border-left-color: #BBBBBB;
border-left-style: solid;
border-left-width: 1px;
border-left-color: #BBBBBB;
border-left-style: solid;
border-right-width: 1px;
border-right-color: #BBBBBB;
border-right-style: solid;
border-right-width: 1px;
border-right-color: #BBBBBB;
border-right-style: solid;
border-bottom-width: 1px;
border-bottom-color: #BBBBBB;
border-bottom-style: solid;
border-bottom-width: 1px;
border-bottom-color: #BBBBBB;
border-bottom-style: solid;
margin-bottom: 2px;
margin-top: 0px;
margin-bottom: 2px;
margin-top: 0px;
-moz-box-shadow: 4px 4px 4px #CCC;
-webkit-box-shadow: 4px 4px 4px #CCC;
box-shadow: 4px 4px 4px #CCC;
-moz-box-shadow: 4px 4px 4px #CCC;
-webkit-box-shadow: 4px 4px 4px #CCC;
box-shadow: 4px 4px 4px #CCC;
}
table.liste td {
padding-right: 2px;
padding-right: 2px;
}
tr.liste_titre {
height: 24px;
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
}
td.liste_titre {
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
font-weight: normal;
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
}
td.liste_titre_sel
tr.liste_titre
{
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
font-weight: normal;
/* text-decoration: underline; */
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
height: 24px;
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
}
th.liste_titre, td.liste_titre
{
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
font-weight: normal;
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
text-align: <?php echo $left; ?>;
}
th.liste_titre_sel, td.liste_titre_sel
{
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
font-weight: normal;
/* text-decoration: underline; */
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
text-align: <?php echo $left; ?>;
}
input.liste_titre {
background: transparent;
@@ -1274,19 +1278,6 @@ font-weight: normal;
white-space: nowrap;
}
th {
/* background: #7699A9; */
background: #91ABB3;
color: #334444;
font-family: <?php print $fontlist ?>;
font-weight: bold;
border-left: 1px solid #FFFFFF;
border-right: 1px solid #FFFFFF;
border-top: 1px solid #FFFFFF;
border-bottom: 1px solid #FFFFFF;
white-space: nowrap;
}
.impair {
/* background: #d0d4d7; */
background: #eaeaea;

View File

@@ -1402,7 +1402,7 @@ tr.liste_titre:first-child {
background-position: top right;
}
td.liste_titre_sel,
th.liste_titre_sel, td.liste_titre_sel,
tr.liste_titre:first-child td {
color: #FFFFFF !important;
}
@@ -1430,7 +1430,8 @@ tr.liste_titre td {
background: none !important;
}
td.liste_titre {
th.liste_titre, td.liste_titre
{
background-repeat: repeat-x;
color: #333333;
font-family: <?php print $fontlist ?>;
@@ -1438,6 +1439,7 @@ td.liste_titre {
white-space: nowrap;
background-image: none;
background: none;
text-align: <?php echo $left; ?>;
}
/*tr.liste_titre select.flat {
@@ -1453,7 +1455,8 @@ tr.liste_titre input.button {
/*margin: 30px 10px 10px 0px;*/
}
td.liste_titre_sel {
th.liste_titre_sel, td.liste_titre_sel
{
background: #505050;
background-repeat: repeat-x;
color: #FFFFFF;
@@ -1462,6 +1465,7 @@ td.liste_titre_sel {
/* text-decoration: underline; */
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
text-align: <?php echo $left; ?>;
}
input.liste_titre {
@@ -1481,19 +1485,6 @@ white-space: nowrap;
padding: 5px;
}
th {
/* background: #7699A9; */
background: #91ABB3;
color: #334444;
font-family: <?php print $fontlist ?>;
font-weight: bold;
border-left: 1px solid #FFFFFF;
border-right: 1px solid #FFFFFF;
border-top: 1px solid #FFFFFF;
border-bottom: 1px solid #FFFFFF;
white-space: nowrap;
}
.impair {
/* background: #d0d4d7; */
background: #eaeaea;

View File

@@ -1339,30 +1339,31 @@ table.liste td {
}
tr.liste_titre {
height: 20px;
color: #842F00;
font-weight: bold;
font-family: "Trebuchet MS",Arial,Helvetica,sans-serif;
/*border-bottom: 1px solid #FDFFFF;*/
border-radius: 8px;
line-height: 18px;
padding-left: 10px;
padding-right: 10px;
white-space: nowrap;
height: 20px;
color: #842F00;
font-weight: bold;
font-family: "Trebuchet MS",Arial,Helvetica,sans-serif;
/*border-bottom: 1px solid #FDFFFF;*/
border-radius: 8px;
line-height: 18px;
padding-left: 10px;
padding-right: 10px;
white-space: nowrap;
}
tr.liste_titre td {
th.liste_titre, td.liste_titre
{
padding-left: 6px;
padding-right: 6px;
/*vertical-align: text-top;*/
text-align: <?php echo $left; ?>;
}
td.liste_titre_sel
th.liste_titre_sel, td.liste_titre_sel
{
background-position: top right;
color: #A51B00;
font-weight: bold;
white-space: nowrap;
background-position: top right;
color: #A51B00;
font-weight: bold;
white-space: nowrap;
text-align: <?php echo $left; ?>;
}
input.liste_titre {
@@ -1383,19 +1384,6 @@ font-weight: normal;
white-space: nowrap;
}
th {
/* background: #7699A9; */
background: #91ABB3;
color: #334444;
font-family: <?php print $fontlist ?>;
font-weight: bold;
border-left: 1px solid #FFFFFF;
border-right: 1px solid #FFFFFF;
border-top: 1px solid #FFFFFF;
border-bottom: 1px solid #FFFFFF;
white-space: nowrap;
}
.impair {
/* background: #d0d4d7; */
background: #eaeaea;

View File

@@ -1222,59 +1222,63 @@ padding: 0px 0px;
/* For lists */
table.liste {
width: 100%;
border-collapse: collapse;
border-top-color: #FEFEFE;
width: 100%;
border-collapse: collapse;
border-top-color: #FEFEFE;
border-right-width: 1px;
border-right-color: #BBBBBB;
border-right-style: solid;
border-right-width: 1px;
border-right-color: #BBBBBB;
border-right-style: solid;
border-bottom-width: 1px;
border-bottom-color: #BBBBBB;
border-bottom-style: solid;
border-bottom-width: 1px;
border-bottom-color: #BBBBBB;
border-bottom-style: solid;
margin-bottom: 2px;
margin-top: 0px;
margin-bottom: 2px;
margin-top: 0px;
-moz-box-shadow: 4px 4px 4px #CCC;
-webkit-box-shadow: 4px 4px 4px #CCC;
box-shadow: 4px 4px 4px #CCC;
-moz-box-shadow: 4px 4px 4px #CCC;
-webkit-box-shadow: 4px 4px 4px #CCC;
box-shadow: 4px 4px 4px #CCC;
}
table.liste td {
padding-right: 2px;
padding-right: 2px;
}
tr.liste_titre {
height: 20px !important;
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #334444;
font-family: <?php print $fontlist ?>;
border-bottom: 1px solid #FDFFFF;
white-space: nowrap;
}
td.liste_titre {
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #334444;
font-family: <?php print $fontlist ?>;
font-weight: normal;
border-bottom: 1px solid #FDFFFF;
white-space: nowrap;
}
td.liste_titre_sel
tr.liste_titre
{
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #F5FFFF;
font-family: <?php print $fontlist ?>;
font-weight: normal;
border-bottom: 1px solid #FDFFFF;
white-space: nowrap;
height: 20px !important;
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #334444;
font-family: <?php print $fontlist ?>;
border-bottom: 1px solid #FDFFFF;
white-space: nowrap;
}
th.liste_titre, td.liste_titre
{
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #334444;
font-family: <?php print $fontlist ?>;
font-weight: normal;
border-bottom: 1px solid #FDFFFF;
white-space: nowrap;
text-align: <?php echo $left; ?>;
}
th.liste_titre_sel, td.liste_titre_sel
{
background: #7699A9;
background-image: url(<?php echo $img_liste_titre ?>);
background-repeat: repeat-x;
color: #F5FFFF;
font-family: <?php print $fontlist ?>;
font-weight: normal;
border-bottom: 1px solid #FDFFFF;
white-space: nowrap;
text-align: <?php echo $left; ?>;
}
input.liste_titre {
background: #7699A9;
@@ -1292,18 +1296,6 @@ font-weight: normal;
white-space: nowrap;
}
th {
/* background: #7699A9; */
background: #91ABB3;
color: #334444;
font-family: <?php print $fontlist ?>;
font-weight: bold;
border-left: 1px solid #FFFFFF;
border-right: 1px solid #FFFFFF;
border-top: 1px solid #FFFFFF;
border-bottom: 1px solid #FFFFFF;
white-space: nowrap;
}
.impair {
/* background: #d0d4d7; */

View File

@@ -127,8 +127,8 @@ input.ui-input-text, textarea.ui-input-text {
/* ============================================================================== */
div.fiche {
margin-<?php print $left; ?>: <?php print empty($conf->browser->phone)?'10':'2'; ?>px;
margin-<?php print $right; ?>: <?php print empty($conf->browser->phone)?'6':''; ?>px;
margin-<?php print $left; ?>: <?php print (empty($conf->browser->phone)?'10':'2'); ?>px;
margin-<?php print $right; ?>: <?php print (empty($conf->browser->phone)?'6':''); ?>px;
}
div.fichecenter {
@@ -316,33 +316,37 @@ padding: 0px 0px;
tr.liste_titre {
height: 24px;
background: -moz-linear-gradient(center top , #81A8CE, #5E87B0) repeat scroll 0 0 #5E87B0;
border: 1px solid #456F9A;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
}
td.liste_titre {
background: -moz-linear-gradient(center top , #81A8CE, #5E87B0) repeat scroll 0 0 #5E87B0;
border: 1px solid #456F9A;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
font-weight: normal;
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
}
td.liste_titre_sel
tr.liste_titre
{
background: -moz-linear-gradient(center top , #81A8CE, #5E87B0) repeat scroll 0 0 #5E87B0;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
font-weight: normal;
/* text-decoration: underline; */
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
height: 24px;
background: -moz-linear-gradient(center top , #81A8CE, #5E87B0) repeat scroll 0 0 #5E87B0;
border: 1px solid #456F9A;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
}
th.liste_titre, td.liste_titre
{
background: -moz-linear-gradient(center top , #81A8CE, #5E87B0) repeat scroll 0 0 #5E87B0;
border: 1px solid #456F9A;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
font-weight: normal;
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
text-align: <?php echo $left; ?>;
}
th.liste_titre_sel, td.liste_titre_sel
{
background: -moz-linear-gradient(center top , #81A8CE, #5E87B0) repeat scroll 0 0 #5E87B0;
color: #FFFFFF;
font-family: <?php print $fontlist ?>;
font-weight: normal;
/* text-decoration: underline; */
/* border-bottom: 1px solid #FDFFFF; */
white-space: nowrap;
text-align: <?php echo $left; ?>;
}
input.liste_titre {
background: transparent;