diff --git a/build/makepack-dolibarr.pl b/build/makepack-dolibarr.pl index f407f16b152..49237a38220 100644 --- a/build/makepack-dolibarr.pl +++ b/build/makepack-dolibarr.pl @@ -464,24 +464,24 @@ if ($nboftargetok) { $cmd="cp -pr '$BUILDROOT/$PROJECT' '$BUILDROOT/$FILENAMETGZ2'"; $ret=`$cmd`; - print "Fix filefunc.inc.php, install/inc.php, support/inc.php\n"; - $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/filefunc.inc.php\" | - sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | - sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | - sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$FILENAMETGZ2/htdocs/filefunc.inc.php\""; - $ret=`$cmd`; - $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/install/inc.php\" | - sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | - sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | - sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$FILENAMETGZ2/htdocs/install/inc.php\""; - $ret=`$cmd`; - $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/support/inc.php\" | - sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | - sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | - sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$FILENAMETGZ2/htdocs/support/inc.php\""; - $ret=`$cmd`; - - print "Remove other files\n"; +# print "Fix filefunc.inc.php, install/inc.php, support/inc.php\n"; +# $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/filefunc.inc.php\" | +# sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | +# sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | +# sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$FILENAMETGZ2/htdocs/filefunc.inc.php\""; +# $ret=`$cmd`; +# $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/install/inc.php\" | +# sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | +# sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | +# sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$FILENAMETGZ2/htdocs/install/inc.php\""; +# $ret=`$cmd`; +# $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/support/inc.php\" | +# sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | +# sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | +# sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$FILENAMETGZ2/htdocs/support/inc.php\""; +# $ret=`$cmd`; + + #print "Remove other files\n"; #$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/ChangeLog`; #$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/COPYING`; #$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/INSTALL`; @@ -503,13 +503,13 @@ if ($nboftargetok) { #$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/build/zip`; #$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/build/perl`; # We remove embedded libraries or fonts - if ($target !~ /GENE/i) - { - $ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/includes/artichow/font`, - $ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/includes/barcode/php-barcode/fonts`, - } + #if ($target !~ /GENE/i) + #{ + # $ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/includes/artichow/font`, + # $ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/includes/barcode/php-barcode/fonts`, + #} #$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/includes/odtphp/zip/pclzip`; - $ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/includes/odtphp/zip/pclzip/gnu-lgpl.txt`; + #$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/includes/odtphp/zip/pclzip/gnu-lgpl.txt`; # Conf files #print "Copy config files into $BUILDROOT/$FILENAMETGZ2/etc/$PROJECT\n"; @@ -570,6 +570,10 @@ if ($nboftargetok) { close SPECFROM; close SPECTO; + print "Copy patch file to $RPMDIR/SOURCES\n"; + $ret=`cp "$SOURCE/build/rpm/dolibarr-forrpm.patch" "$RPMDIR/SOURCES"`; + $ret=`chmod 644 $RPMDIR/SOURCES/dolibarr-forrpm.patch`; + print "Launch RPM build (rpmbuild --clean -ba $BUILDROOT/${BUILDFIC})\n"; #$ret=`rpmbuild -vvvv --clean -ba $BUILDROOT/${BUILDFIC}`; $ret=`rpmbuild --clean -ba $BUILDROOT/${BUILDFIC}`; diff --git a/build/rpm/dolibarr-forrpm.patch b/build/rpm/dolibarr-forrpm.patch new file mode 100755 index 00000000000..d7b0037d59d --- /dev/null +++ b/build/rpm/dolibarr-forrpm.patch @@ -0,0 +1,42 @@ +diff -up htdocs/filefunc.inc.php.patch htdocs/filefunc.inc.php +--- htdocs/filefunc.inc.php.patch 2011-09-03 02:32:48.666952000 +0200 ++++ htdocs/filefunc.inc.php 2011-09-03 02:33:00.510952001 +0200 +@@ -65,8 +65,8 @@ $conffiletoshowshort = "conf.php"; + $conffile = "conf/conf.php"; + $conffiletoshow = "htdocs/conf/conf.php"; + # For debian/redhat like systems +-#$conffile = "/etc/dolibarr/conf.php"; +-#$conffiletoshow = "/etc/dolibarr/conf.php"; ++$conffile = "/etc/dolibarr/conf.php"; ++$conffiletoshow = "/etc/dolibarr/conf.php"; + + + // Include configuration +diff -up htdocs/install/inc.php.patch htdocs/install/inc.php +--- htdocs/install/inc.php.patch 2011-09-03 02:33:26.450952000 +0200 ++++ htdocs/install/inc.php 2011-09-03 02:33:36.286952001 +0200 +@@ -75,8 +75,8 @@ $conffiletoshowshort = "conf.php"; + $conffile = "../conf/conf.php"; + $conffiletoshow = "htdocs/conf/conf.php"; + # For debian/redhat like systems +-#$conffile = "/etc/dolibarr/conf.php"; +-#$conffiletoshow = "/etc/dolibarr/conf.php"; ++$conffile = "/etc/dolibarr/conf.php"; ++$conffiletoshow = "/etc/dolibarr/conf.php"; + + + if (! defined('DONOTLOADCONF') && file_exists($conffile)) +diff -up htdocs/support/inc.php.patch htdocs/support/inc.php +--- htdocs/support/inc.php.patch 2011-09-03 02:34:39.606952000 +0200 ++++ htdocs/support/inc.php 2011-09-03 02:33:59.814952000 +0200 +@@ -69,8 +69,8 @@ $conffiletoshowshort = "conf.php"; + $conffile = "../conf/conf.php"; + $conffiletoshow = "htdocs/conf/conf.php"; + # For debian/redhat like systems +-#$conffile = "/etc/dolibarr/conf.php"; +-#$conffiletoshow = "/etc/dolibarr/conf.php"; ++$conffile = "/etc/dolibarr/conf.php"; ++$conffiletoshow = "/etc/dolibarr/conf.php"; + + $charset="UTF-8"; // If not output format found in any conf file + if (! defined('DONOTLOADCONF') && file_exists($conffile)) diff --git a/build/rpm/dolibarr_fedora.spec b/build/rpm/dolibarr_fedora.spec index b954c518463..c7d80b32f12 100755 --- a/build/rpm/dolibarr_fedora.spec +++ b/build/rpm/dolibarr_fedora.spec @@ -20,6 +20,7 @@ Vendor: Dolibarr dev team URL: http://www.dolibarr.org Source0: http://www.dolibarr.org/files/fedora/%{name}-%{version}.tgz +Patch0: %{name}-forrpm.patch BuildArch: noarch #BuildArchitectures: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -67,6 +68,7 @@ cui hai bisogno ed essere facile da usare. #---- prep %prep %setup -q +%patch0 -p0 -b .patch @@ -193,13 +195,13 @@ fi # Show result echo -echo "----- Dolibarr %version - (c) Dolibarr dev team -----" +echo "----- Dolibarr %version-%release - (c) Dolibarr dev team -----" echo "Dolibarr files are now installed (into /usr/share/dolibarr)." echo "To finish installation and use Dolibarr, click on the menu" echo "entry Dolibarr ERP-CRM or call the following page from your" echo "web browser:" echo "http://localhost/dolibarr/" -echo "--------------------------------------------------" +echo "-------------------------------------------------------" echo diff --git a/build/rpm/dolibarr_generic.spec b/build/rpm/dolibarr_generic.spec index 977805491c9..9e82c9f8611 100755 --- a/build/rpm/dolibarr_generic.spec +++ b/build/rpm/dolibarr_generic.spec @@ -20,6 +20,7 @@ Vendor: Dolibarr dev team URL: http://www.dolibarr.org Source0: http://www.dolibarr.org/files/fedora/%{name}-%{version}.tgz +Patch0: %{name}-forrpm.patch BuildArch: noarch #BuildArchitectures: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -68,7 +69,7 @@ cui hai bisogno ed essere facile da usare. #---- prep %prep %setup -q - +%patch0 -p0 -b .patch #---- build @@ -258,7 +259,7 @@ fi # Show result echo -echo "----- Dolibarr %version - (c) Dolibarr dev team -----" +echo "----- Dolibarr %version-%release - (c) Dolibarr dev team -----" echo "Dolibarr files are now installed (into /usr/share/dolibarr)." echo "To finish installation and use Dolibarr, click on the menu" echo "entry Dolibarr ERP-CRM or call the following page from your" @@ -315,5 +316,5 @@ fi %changelog -* Wed Jul 31 2011 Laurent Destailleur 3.1.0-0.2.beta1 +* Wed Jul 31 2011 Laurent Destailleur 3.2.0-0.1.a - Initial version (#723326) diff --git a/build/rpm/dolibarr_mandriva.spec b/build/rpm/dolibarr_mandriva.spec index cc8b3d2b7b6..937a0c85116 100755 --- a/build/rpm/dolibarr_mandriva.spec +++ b/build/rpm/dolibarr_mandriva.spec @@ -20,6 +20,7 @@ Vendor: Dolibarr dev team URL: http://www.dolibarr.org Source0: http://www.dolibarr.org/files/mandriva/%{name}-%{version}.tgz +Patch0: %{name}-forrpm.patch BuildArch: noarch #BuildArchitectures: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -67,6 +68,7 @@ cui hai bisogno ed essere facile da usare. #---- prep %prep %setup -q +%patch0 -p0 -b .patch @@ -183,7 +185,7 @@ fi # Show result echo -echo "----- Dolibarr %version - (c) Dolibarr dev team -----" +echo "----- Dolibarr %version-%release - (c) Dolibarr dev team -----" echo "Dolibarr files are now installed (into /usr/share/dolibarr)." echo "To finish installation and use Dolibarr, click on the menu" echo "entry Dolibarr ERP-CRM or call the following page from your" @@ -223,5 +225,5 @@ fi %changelog -* Wed Jul 31 2011 Laurent Destailleur 3.1.0-0.2.beta1 +* Wed Jul 31 2011 Laurent Destailleur 3.2.0-0.1.a - Initial version (#723326) diff --git a/build/rpm/dolibarr_opensuse.spec b/build/rpm/dolibarr_opensuse.spec index eedefe7982e..90edf95845c 100755 --- a/build/rpm/dolibarr_opensuse.spec +++ b/build/rpm/dolibarr_opensuse.spec @@ -20,6 +20,7 @@ Vendor: Dolibarr dev team URL: http://www.dolibarr.org Source0: http://www.dolibarr.org/files/opensuse/%{name}-%{version}.tgz +Patch0: %{name}-forrpm.patch BuildArch: noarch #BuildArchitectures: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -67,6 +68,7 @@ cui hai bisogno ed essere facile da usare. #---- prep %prep %setup -q +%patch0 -p0 -b .patch #---- build @@ -187,7 +189,7 @@ fi # Show result echo -echo "----- Dolibarr %version - (c) Dolibarr dev team -----" +echo "----- Dolibarr %version-%release - (c) Dolibarr dev team -----" echo "Dolibarr files are now installed (into /usr/share/dolibarr)." echo "To finish installation and use Dolibarr, click on the menu" echo "entry Dolibarr ERP-CRM or call the following page from your" @@ -227,5 +229,5 @@ fi %changelog -* Wed Jul 31 2011 Laurent Destailleur 3.1.0-0.2.beta1 +* Wed Jul 31 2011 Laurent Destailleur 3.2.0-0.1.a - Initial version (#723326) diff --git a/htdocs/adherents/class/adherent.class.php b/htdocs/adherents/class/adherent.class.php index 77ac39628e3..48f9a089747 100644 --- a/htdocs/adherents/class/adherent.class.php +++ b/htdocs/adherents/class/adherent.class.php @@ -116,8 +116,9 @@ class Adherent extends CommonObject /** - * Adherent - * @param DB base de donnees + * Constructor + * + * @param DoliDB $DB Database handler */ function Adherent($DB) { diff --git a/htdocs/adherents/class/adherent_type.class.php b/htdocs/adherents/class/adherent_type.class.php index 782949a2f92..3793be3b38d 100644 --- a/htdocs/adherents/class/adherent_type.class.php +++ b/htdocs/adherents/class/adherent_type.class.php @@ -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() diff --git a/htdocs/adherents/class/adherentstats.class.php b/htdocs/adherents/class/adherentstats.class.php index 6ad16b59fdb..5ea122c80d3 100755 --- a/htdocs/adherents/class/adherentstats.class.php +++ b/htdocs/adherents/class/adherentstats.class.php @@ -45,12 +45,12 @@ class AdherentStats extends Stats /** - * Constructor + * Constructor * - * @param $DB Database handler - * @param $socid Id third party - * @param $userid Id user for filter - * @return AdherentStats + * @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) { diff --git a/htdocs/adherents/class/cotisation.class.php b/htdocs/adherents/class/cotisation.class.php index 7ce4ca1d80d..75c7749e465 100644 --- a/htdocs/adherents/class/cotisation.class.php +++ b/htdocs/adherents/class/cotisation.class.php @@ -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) { diff --git a/htdocs/adherents/stats/geo.php b/htdocs/adherents/stats/geo.php index fc7e09f60b6..5ac68ded510 100755 --- a/htdocs/adherents/stats/geo.php +++ b/htdocs/adherents/stats/geo.php @@ -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").'
'; print '
'; @@ -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"; diff --git a/htdocs/admin/barcode.php b/htdocs/admin/barcode.php index 5e95f3366ca..dd47597da4e 100644 --- a/htdocs/admin/barcode.php +++ b/htdocs/admin/barcode.php @@ -1,6 +1,6 @@ - * Copyright (C) 2004-2009 Laurent Destailleur + * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2005-2009 Regis Houssin * * 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"); diff --git a/htdocs/admin/menus/edit.php b/htdocs/admin/menus/edit.php index d9487e658de..df5d7c740f3 100644 --- a/htdocs/admin/menus/edit.php +++ b/htdocs/admin/menus/edit.php @@ -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']; diff --git a/htdocs/admin/menus/index.php b/htdocs/admin/menus/index.php index 9a72df931d8..c21503b15d2 100644 --- a/htdocs/admin/menus/index.php +++ b/htdocs/admin/menus/index.php @@ -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']); diff --git a/htdocs/admin/menus/menu.js.php b/htdocs/admin/menus/menu.js.php index 89a04a11dee..8526569f1fc 100644 --- a/htdocs/admin/menus/menu.js.php +++ b/htdocs/admin/menus/menu.js.php @@ -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"); diff --git a/htdocs/admin/notification.php b/htdocs/admin/notification.php index 150122461e7..58617e87df4 100644 --- a/htdocs/admin/notification.php +++ b/htdocs/admin/notification.php @@ -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").'

'; -if ($mesg) print $mesg.'
'; +dol_htmloutput_mesg($mesg); print '
'; print ''; @@ -80,6 +81,7 @@ $var=!$var; print ''; print $langs->trans("NotificationEMailFrom").''; print ''; +if (! empty($conf->global->NOTIFICATION_EMAIL_FROM) && ! isValidEmail($conf->global->NOTIFICATION_EMAIL_FROM)) print ' '.img_warning($langs->trans("BadEMail")); print ''; print ''; @@ -121,5 +123,4 @@ $db->close(); llxFooter(); - ?> diff --git a/htdocs/admin/project.php b/htdocs/admin/project.php index dc58d8c77f6..26c95ece302 100644 --- a/htdocs/admin/project.php +++ b/htdocs/admin/project.php @@ -1,6 +1,7 @@ * Copyright (C) 2011 Laurent Destailleur + * Copyright (C) 2011 Juanjo Menent * * 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 = "".$langs->trans("SetupSaved").""; + } + else + { + $mesg = "".$langs->trans("Error").""; + } } -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 '
'; +dol_htmloutput_mesg($mesg); + +$db->close(); + llxFooter(); ?> diff --git a/htdocs/admin/societe.php b/htdocs/admin/societe.php index d8db16d4810..f761ff03b72 100644 --- a/htdocs/admin/societe.php +++ b/htdocs/admin/societe.php @@ -88,9 +88,9 @@ if ($action == 'COMPANY_USE_SEARCH_TO_SELECT') if ($action == 'setModuleOptions') { $post_size=count($_POST); - + $db->begin(); - + for($i=0;$i < $post_size;$i++) { if (array_key_exists('param'.$i,$_POST)) @@ -118,7 +118,7 @@ if ($action == 'set') { $label = GETPOST("label"); $scandir = GETPOST("scandir"); - + $type='company'; $sql = "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity, libelle, description)"; $sql.= " VALUES ('".$db->escape($value)."','".$type."',".$conf->entity.", "; @@ -150,7 +150,7 @@ if ($action == 'setdoc') { $label = GETPOST("label"); $scandir = GETPOST("scandir"); - + $db->begin(); if (dolibarr_set_const($db, "COMPANY_ADDON_PDF",$value,'chaine',0,'',$conf->entity)) @@ -189,7 +189,7 @@ if ($action == 'setdoc') if ($action == 'setprofid') { $status = GETPOST("status"); - + $idprof="SOCIETE_IDPROF".$value."_UNIQUE"; if (dolibarr_set_const($db, $idprof,$status,'chaine',0,'',$conf->entity) > 0) { @@ -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; diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php index 0775afdf83f..b9fe58eed1f 100644 --- a/htdocs/comm/propal.php +++ b/htdocs/comm/propal.php @@ -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 ' '; + print_liste_field_titre(''); print "\n"; // Lignes des champs de filtre print ''; diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 0d89e763953..29d37ca6c06 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -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; diff --git a/htdocs/compta/bank/admin/bank.php b/htdocs/compta/bank/admin/bank.php index 4c33f0e3bd5..4d1608b7bd2 100644 --- a/htdocs/compta/bank/admin/bank.php +++ b/htdocs/compta/bank/admin/bank.php @@ -47,7 +47,7 @@ if ($action == 'set_BANK_CHEQUERECEIPT_FREE_TEXT') { $free = GETPOST("BANK_CHEQUERECEIPT_FREE_TEXT"); $res = dolibarr_set_const($db, "BANK_CHEQUERECEIPT_FREE_TEXT",$free,'chaine',0,'',$conf->entity); - + if (! $res > 0) $error++; if (! $error) @@ -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 ''; } print ' '; - print "\n"; + print ''."\n"; $i++; } -print "\n"; +print ''."\n"; dol_htmloutput_mesg($mesg); diff --git a/htdocs/compta/paiement/cheque/class/remisecheque.class.php b/htdocs/compta/paiement/cheque/class/remisecheque.class.php index 624fa15de78..571563521d7 100644 --- a/htdocs/compta/paiement/cheque/class/remisecheque.class.php +++ b/htdocs/compta/paiement/cheque/class/remisecheque.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2007-2008 Laurent Destailleur + * Copyright (C) 2007-2011 Laurent Destailleur * Copyright (C) 2005-2009 Regis Houssin * Copyright (C) 2011 Juanjo Menent * @@ -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 diff --git a/htdocs/compta/prelevement/class/ligne-prelevement.class.php b/htdocs/compta/prelevement/class/ligne-prelevement.class.php index a9ec795657b..e286e5a2fa2 100644 --- a/htdocs/compta/prelevement/class/ligne-prelevement.class.php +++ b/htdocs/compta/prelevement/class/ligne-prelevement.class.php @@ -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 */ @@ -46,12 +46,12 @@ class LignePrelevement function LignePrelevement($DB, $user) { global $conf,$langs; - + $this->db = $DB ; $this->user = $user; // List of language codes for status - + $langs->load("withdrawals"); $this->statuts[0]=$langs->trans("StatusWaiting"); $this->statuts[2]=$langs->trans("StatusCredited"); @@ -107,7 +107,7 @@ class LignePrelevement return $result; } - + /** * Return status label of object * @param mode 0=Label, 1=Picto + label, 2=Picto, 3=Label + Picto @@ -132,7 +132,7 @@ class LignePrelevement { return $langs->trans($this->statuts[$statut]); } - + if ($mode == 1) { if ($statut==0) return img_picto($langs->trans($this->statuts[$statut]),'statut0').' '.$langs->trans($this->statuts[$statut]); @@ -145,7 +145,7 @@ class LignePrelevement if ($statut==2) return img_picto($langs->trans($this->statuts[$statut]),'statut4'); if ($statut==3) return img_picto($langs->trans($this->statuts[$statut]),'statut8'); } - + if ($mode == 3) { if ($statut==0) return $langs->trans($this->statuts[$statut]).' '.img_picto($langs->trans($this->statuts[$statut]),'statut0'); diff --git a/htdocs/compta/stats/index.php b/htdocs/compta/stats/index.php index c98a7b4e1eb..338a47a5d85 100644 --- a/htdocs/compta/stats/index.php +++ b/htdocs/compta/stats/index.php @@ -401,7 +401,7 @@ print ""; print '
'; // 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"; diff --git a/htdocs/compta/tva/class/tva.class.php b/htdocs/compta/tva/class/tva.class.php index 02312e6d45b..8417972d104 100644 --- a/htdocs/compta/tva/class/tva.class.php +++ b/htdocs/compta/tva/class/tva.class.php @@ -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; diff --git a/htdocs/compta/tva/quadri.php b/htdocs/compta/tva/quadri.php index c94dc2cd8cc..d02ebf630d6 100644 --- a/htdocs/compta/tva/quadri.php +++ b/htdocs/compta/tva/quadri.php @@ -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) { diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 6e2642c0cb1..1856b452608 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -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 "
"; - - // Topic - if ($withtopic) - { - print ""; - print ""; - print ""; - } - - // Message - if ($withbody) - { - print ""; - print ""; - print ""; - } - - // Si fichier joint - if ($withfile) - { - print ""; - print ""; - print ""; - } - - print "
".$langs->trans("MailTopic").""; - print ""; - print "
".$langs->trans("MailText").""; - print ""; - print "
".$langs->trans("MailFile").""; - print "trans("Upload")."\"/>"; - print "
"; - } - } ?> diff --git a/htdocs/core/class/notify.class.php b/htdocs/core/class/notify.class.php index 6bc26636542..155ca106014 100644 --- a/htdocs/core/class/notify.class.php +++ b/htdocs/core/class/notify.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2004-2008 Laurent Destailleur + * Copyright (C) 2004-2011 Laurent Destailleur * * 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) { diff --git a/htdocs/core/class/rssparser.class.php b/htdocs/core/class/rssparser.class.php index 6b61cedc60a..fbe033ec3a6 100755 --- a/htdocs/core/class/rssparser.class.php +++ b/htdocs/core/class/rssparser.class.php @@ -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; } diff --git a/htdocs/core/class/smtps.php b/htdocs/core/class/smtps.class.php similarity index 98% rename from htdocs/core/class/smtps.php rename to htdocs/core/class/smtps.class.php index d4d37affff1..f4a8c4008a8 100755 --- a/htdocs/core/class/smtps.php +++ b/htdocs/core/class/smtps.class.php @@ -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,21 +2120,23 @@ class SMTPs // DOL_CHANGE LDR + /** - * Method public void setImageInline( string ) - * - * Image attachments are added to the content array as sub-arrays, - * allowing for multiple images for each outbound email - * - * @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 - * @return void - * - */ - function setImageInline ( $strContent, $strImageName = 'unknown', $strMimeType = 'unknown', $strImageCid = 'unknown' ) + * Method public void setImageInline( string ) + * + * Image attachments are added to the content array as sub-arrays, + * allowing for multiple images for each outbound email + * + * @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') { - 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 * diff --git a/htdocs/includes/modules/barcode/barcodecoder.modules.php b/htdocs/includes/modules/barcode/barcodecoder.modules.php index 91d13885f4f..57ea4b4e4a9 100644 --- a/htdocs/includes/modules/barcode/barcodecoder.modules.php +++ b/htdocs/includes/modules/barcode/barcodecoder.modules.php @@ -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 . * or see http://www.gnu.org/ */ @@ -31,183 +30,189 @@ require_once(DOL_DOCUMENT_ROOT ."/includes/modules/barcode/modules_barcode.php") */ class modBarcodeCoder extends ModeleBarCode { - var $version='dolibarr'; // 'development', 'experimental', 'dolibarr' - var $error=''; + var $version='dolibarr'; // 'development', 'experimental', 'dolibarr' + var $error=''; - /** - * Return if a module can be used or not - * @return boolean true if module can be used - */ - function isEnabled() - { - return true; - } - - - /** - * Return description - * @return string Texte descripif - */ - function info() - { - global $langs; - - return 'Barcode Coder'; - } - - /** - * Test si les numeros deja en vigueur dans la base ne provoquent pas de - * de conflits qui empechera cette numerotation de fonctionner. - * @return boolean false si conflit, true si ok - */ - function canBeActivated() - { - global $langs; - - return true; - } - - - /** - * Return true if encodinf is supported - * @return int >0 if supported, 0 if not - */ - function encodingIsSupported($encoding) - { - global $genbarcode_loc; - - $supported=0; - if ($encoding == 'EAN13') $supported=1; - if ($encoding == 'ISBN') $supported=1; - if ($encoding == 'EAN8') $supported=1; - if ($encoding == 'UPC') $supported=1; - if ($encoding == 'C39') $supported=1; - if ($encoding == 'C128') $supported=1; - - return $supported; - } - /** - * 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 + * Return if a module can be used or not + * + * @return boolean true if module can be used */ - function buildBarCode($code,$encoding,$readable='Y') - { - global $_GET,$_SERVER; - global $conf; - global $genbarcode_loc, $bar_color, $bg_color, $text_color, $font_loc; + function isEnabled() + { + return true; + } - if (! $this->encodingIsSupported($encoding)) return -1; - if ($encoding == 'EAN8' || $encoding == 'EAN13') $encoding = 'EAN'; - if ($encoding == 'C39' || $encoding == 'C128') $encoding = substr($encoding,1); + /** + * Return description + * + * @return string Texte descripif + */ + function info() + { + global $langs; - $scale=1; $mode='png'; + return 'Barcode Coder'; + } - $_GET["code"]=$code; - $_GET["encoding"]=$encoding; - $_GET["scale"]=$scale; - $_GET["mode"]=$mode; - - $font = DOL_DOCUMENT_ROOT.'/includes/barcode/barcode-coder/NOTTB___.TTF'; - - $fontSize = 10; // GD1 in px ; GD2 in point - $marge = 10; // between barcode and hri in pixel - $x = 125; // barcode center - $y = 125; // barcode center - $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'; + /** + * Test si les numeros deja en vigueur dans la base ne provoquent pas de + * de conflits qui empechera cette numerotation de fonctionner + * + * @return boolean false si conflit, true si ok + */ + function canBeActivated() + { + global $langs; -$im = imagecreatetruecolor(300, 300); - $black = ImageColorAllocate($im,0x00,0x00,0x00); - $white = ImageColorAllocate($im,0xff,0xff,0xff); - $red = ImageColorAllocate($im,0xff,0x00,0x00); - $blue = ImageColorAllocate($im,0x00,0x00,0xff); - imagefilledrectangle($im, 0, 0, 300, 300, $white); - - require_once(DOL_DOCUMENT_ROOT.'/includes/barcode/barcode-coder/php-barcode-latest.php'); - dol_syslog("modBarcodeCoder::buildBarCode $code,$encoding,$scale,$mode"); - - - if ($code) $data = Barcode::gd($im, $black, $x, $y, $angle, $type, array('code'=>$code), $width, $height); - if ( isset($font) ){ - $box = imagettfbbox($fontSize, 0, $font, $data['hri']); - $len = $box[2] - $box[0]; - Barcode::rotate(-$len / 2, ($data['height'] / 2) + $fontSize + $marge, $angle, $xt, $yt); - imagettftext($im, $fontSize, $angle, $x + $xt, $y + $yt, $blue, $font, $data['hri']); - } + return true; + } - - $rot = imagerotate($im, 45, $white); - //imagedestroy($im); - $im = imagecreatetruecolor(900, 300); - $black = ImageColorAllocate($im,0x00,0x00,0x00); - $white = ImageColorAllocate($im,0xff,0xff,0xff); - $red = ImageColorAllocate($im,0xff,0x00,0x00); - $blue = ImageColorAllocate($im,0x00,0x00,0xff); - imagefilledrectangle($im, 0, 0, 900, 300, $white); - - // Barcode rotation : 90° - $angle = 90; - $data = Barcode::gd($im, $black, $x, $y, $angle, $type, array('code'=>$code), $width, $height); - Barcode::rotate(-$len / 2, ($data['height'] / 2) + $fontSize + $marge, $angle, $xt, $yt); - imagettftext($im, $fontSize, $angle, $x + $xt, $y + $yt, $blue, $font, $data['hri']); - imagettftext($im, 10, 0, 60, 290, $black, $font, 'BARCODE ROTATION : 90°'); - - // barcode rotation : 135 - $angle = 135; - Barcode::gd($im, $black, $x+300, $y, $angle, $type, array('code'=>$code), $width, $height); - Barcode::rotate(-$len / 2, ($data['height'] / 2) + $fontSize + $marge, $angle, $xt, $yt); - imagettftext($im, $fontSize, $angle, $x + 300 + $xt, $y + $yt, $blue, $font, $data['hri']); - imagettftext($im, 10, 0, 360, 290, $black, $font, 'BARCODE ROTATION : 135°'); - - // last one : image rotation - imagecopy($im, $rot, 580, -50, 0, 0, 300, 300); - imagerectangle($im, 0, 0, 299, 299, $black); - imagerectangle($im, 299, 0, 599, 299, $black); - imagerectangle($im, 599, 0, 899, 299, $black); - imagettftext($im, 10, 0, 690, 290, $black, $font, 'IMAGE ROTATION'); - - /* - if (! is_array($result)) - { - $this->error=$result; - print $this->error;exit; - return -1; - } - */ - - imagepng($im); - imagedestroy($im); - return 1; - } + /** + * Return true if encodinf is supported + * + * @return int >0 if supported, 0 if not + */ + function encodingIsSupported($encoding) + { + global $genbarcode_loc; - /** - * 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 - */ - function writeBarCode($code,$encoding,$readable='Y') - { - global $conf,$filebarcode; + $supported=0; + if ($encoding == 'EAN13') $supported=1; + if ($encoding == 'ISBN') $supported=1; + if ($encoding == 'EAN8') $supported=1; + if ($encoding == 'UPC') $supported=1; + if ($encoding == 'C39') $supported=1; + if ($encoding == 'C128') $supported=1; - create_exdir($conf->barcode->dir_temp); + return $supported; + } - $file=$conf->barcode->dir_temp.'/barcode_'.$code.'_'.$encoding.'.png'; + /** + * 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 + */ + function buildBarCode($code,$encoding,$readable='Y') + { + global $_GET,$_SERVER; + global $conf; + global $genbarcode_loc, $bar_color, $bg_color, $text_color, $font_loc; - $filebarcode=$file; // global var to be used in barcode_outimage called by barcode_print in buildBarCode + if (! $this->encodingIsSupported($encoding)) return -1; - $result=$this->buildBarCode($code,$encoding,$readable); + if ($encoding == 'EAN8' || $encoding == 'EAN13') $encoding = 'EAN'; + if ($encoding == 'C39' || $encoding == 'C128') $encoding = substr($encoding,1); - return $result; - } + $scale=1; $mode='png'; + + $_GET["code"]=$code; + $_GET["encoding"]=$encoding; + $_GET["scale"]=$scale; + $_GET["mode"]=$mode; + + $font = DOL_DOCUMENT_ROOT.'/includes/barcode/barcode-coder/NOTTB___.TTF'; + + $fontSize = 10; // GD1 in px ; GD2 in point + $marge = 10; // between barcode and hri in pixel + $x = 125; // barcode center + $y = 125; // barcode center + $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'; + + $im = imagecreatetruecolor(300, 300); + $black = ImageColorAllocate($im,0x00,0x00,0x00); + $white = ImageColorAllocate($im,0xff,0xff,0xff); + $red = ImageColorAllocate($im,0xff,0x00,0x00); + $blue = ImageColorAllocate($im,0x00,0x00,0xff); + imagefilledrectangle($im, 0, 0, 300, 300, $white); + + require_once(DOL_DOCUMENT_ROOT.'/includes/barcode/barcode-coder/php-barcode-latest.php'); + dol_syslog("modBarcodeCoder::buildBarCode $code,$encoding,$scale,$mode"); + + + if ($code) $data = Barcode::gd($im, $black, $x, $y, $angle, $type, array('code'=>$code), $width, $height); + if ( isset($font) ){ + $box = imagettfbbox($fontSize, 0, $font, $data['hri']); + $len = $box[2] - $box[0]; + Barcode::rotate(-$len / 2, ($data['height'] / 2) + $fontSize + $marge, $angle, $xt, $yt); + imagettftext($im, $fontSize, $angle, $x + $xt, $y + $yt, $blue, $font, $data['hri']); + } + + + $rot = imagerotate($im, 45, $white); + //imagedestroy($im); + $im = imagecreatetruecolor(900, 300); + $black = ImageColorAllocate($im,0x00,0x00,0x00); + $white = ImageColorAllocate($im,0xff,0xff,0xff); + $red = ImageColorAllocate($im,0xff,0x00,0x00); + $blue = ImageColorAllocate($im,0x00,0x00,0xff); + imagefilledrectangle($im, 0, 0, 900, 300, $white); + + // Barcode rotation : 90° + $angle = 90; + $data = Barcode::gd($im, $black, $x, $y, $angle, $type, array('code'=>$code), $width, $height); + Barcode::rotate(-$len / 2, ($data['height'] / 2) + $fontSize + $marge, $angle, $xt, $yt); + imagettftext($im, $fontSize, $angle, $x + $xt, $y + $yt, $blue, $font, $data['hri']); + imagettftext($im, 10, 0, 60, 290, $black, $font, 'BARCODE ROTATION : 90°'); + + // barcode rotation : 135 + $angle = 135; + Barcode::gd($im, $black, $x+300, $y, $angle, $type, array('code'=>$code), $width, $height); + Barcode::rotate(-$len / 2, ($data['height'] / 2) + $fontSize + $marge, $angle, $xt, $yt); + imagettftext($im, $fontSize, $angle, $x + 300 + $xt, $y + $yt, $blue, $font, $data['hri']); + imagettftext($im, 10, 0, 360, 290, $black, $font, 'BARCODE ROTATION : 135°'); + + // last one : image rotation + imagecopy($im, $rot, 580, -50, 0, 0, 300, 300); + imagerectangle($im, 0, 0, 299, 299, $black); + imagerectangle($im, 299, 0, 599, 299, $black); + imagerectangle($im, 599, 0, 899, 299, $black); + imagettftext($im, 10, 0, 690, 290, $black, $font, 'IMAGE ROTATION'); + + /* + if (! is_array($result)) + { + $this->error=$result; + print $this->error;exit; + return -1; + } + */ + + imagepng($im); + imagedestroy($im); + + return 1; + } + + /** + * 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 + */ + function writeBarCode($code,$encoding,$readable='Y') + { + global $conf,$filebarcode; + + create_exdir($conf->barcode->dir_temp); + + $file=$conf->barcode->dir_temp.'/barcode_'.$code.'_'.$encoding.'.png'; + + $filebarcode=$file; // global var to be used in barcode_outimage called by barcode_print in buildBarCode + + $result=$this->buildBarCode($code,$encoding,$readable); + + return $result; + } } diff --git a/htdocs/install/check.php b/htdocs/install/check.php index bbcdfc2ff5b..44369ab7634 100644 --- a/htdocs/install/check.php +++ b/htdocs/install/check.php @@ -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 diff --git a/htdocs/lib/CMailFile.class.php b/htdocs/lib/CMailFile.class.php index 2a719fc4085..307c2f7391c 100644 --- a/htdocs/lib/CMailFile.class.php +++ b/htdocs/lib/CMailFile.class.php @@ -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); diff --git a/htdocs/lib/functions.lib.php b/htdocs/lib/functions.lib.php index afb4aea298c..c5f2144ce8c 100644 --- a/htdocs/lib/functions.lib.php +++ b/htdocs/lib/functions.lib.php @@ -2572,78 +2572,70 @@ 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
\n"; + //print "$name, $file, $field, $begin, $options, $moreattrib, $sortfield, $sortorder
\n"; $out=''; - - if ($thead) + // 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.= ''.$name.''; + $out.= ''; } else { - // Le champ de tri est mis en evidence. - // Exemple si (sortfield,field)=("nom","xxx.nom") ou (sortfield,field)=("nom","nom") - if ($field && ($sortfield == $field || $sortfield == preg_replace("/^[^\.]+\./","",$field))) - { - $out.= ''; - } - else - { - $out.= ''; - } - $out.= $name; - - // If this is a sort field - if ($field) - { - $options=preg_replace('/sortfield=([a-zA-Z0-9,\s\.]+)/i','',$moreparam); - $options=preg_replace('/sortorder=([a-zA-Z0-9,\s\.]+)/i','',$options); - $options=preg_replace('/&+/i','&',$options); - if (! preg_match('/^&/',$options)) $options='&'.$options; - - //print " "; - $out.= ''; - if (! $sortorder) - { - $out.= ''.img_down("A-Z",0).''; - $out.= ''.img_up("Z-A",0).''; - } - else - { - if ($field != $sortfield) - { - $out.= ''.img_down("A-Z",0).''; - $out.= ''.img_up("Z-A",0).''; - } - else { - $sortorder=strtoupper($sortorder); - if ($sortorder == 'DESC' ) { - $out.= ''.img_down("A-Z",0).''; - $out.= ''.img_up("Z-A",1).''; - } - if ($sortorder == 'ASC' ) { - $out.= ''.img_down("A-Z",1).''; - $out.= ''.img_up("Z-A",0).''; - } - } - } - } - $out.= ""; + $out.= ''; } + $out.=$name; + + 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); + $options=preg_replace('/&+/i','&',$options); + if (! preg_match('/^&/',$options)) $options='&'.$options; + + //print " "; + $out.= ''; + if (! $sortorder) + { + $out.= ''.img_down("A-Z",0).''; + $out.= ''.img_up("Z-A",0).''; + } + else + { + if ($field != $sortfield) + { + $out.= ''.img_down("A-Z",0).''; + $out.= ''.img_up("Z-A",0).''; + } + else { + $sortorder=strtoupper($sortorder); + if ($sortorder == 'DESC' ) { + $out.= ''.img_down("A-Z",0).''; + $out.= ''.img_up("Z-A",1).''; + } + if ($sortorder == 'ASC' ) { + $out.= ''.img_down("A-Z",1).''; + $out.= ''.img_up("Z-A",0).''; + } + } + } + } + $out.=''; 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
, true=Use
@@ -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
, 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
+ * * @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) diff --git a/htdocs/lib/tax.lib.php b/htdocs/lib/tax.lib.php index 1cd19bc8765..29bf272ebd6 100644 --- a/htdocs/lib/tax.lib.php +++ b/htdocs/lib/tax.lib.php @@ -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 diff --git a/htdocs/product/canvas/service/actions_card_service.class.php b/htdocs/product/canvas/service/actions_card_service.class.php index ad9f1cb5666..225eeca5f29 100755 --- a/htdocs/product/canvas/service/actions_card_service.class.php +++ b/htdocs/product/canvas/service/actions_card_service.class.php @@ -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 */ diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index b803dce5844..1babd5f2e19 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -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); diff --git a/htdocs/societe/class/companybankaccount.class.php b/htdocs/societe/class/companybankaccount.class.php index dd149caf89a..fcb39a66b56 100644 --- a/htdocs/societe/class/companybankaccount.class.php +++ b/htdocs/societe/class/companybankaccount.class.php @@ -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 */ @@ -26,159 +26,159 @@ require_once(DOL_DOCUMENT_ROOT ."/compta/bank/class/account.class.php"); /** - * \brief Class to manage bank accounts description of third parties + * \brief Class to manage bank accounts description of third parties */ class CompanyBankAccount extends Account { - var $rowid; - var $socid; + var $rowid; + var $socid; - var $bank; - var $courant; - var $clos; - var $code_banque; - var $code_guichet; - var $number; - var $cle_rib; - var $bic; - var $iban; - var $iban_prefix; // deprecated - var $proprio; - var $adresse_proprio; + var $bank; + var $courant; + var $clos; + var $code_banque; + var $code_guichet; + var $number; + var $cle_rib; + var $bic; + var $iban; + var $iban_prefix; // deprecated + var $proprio; + var $adresse_proprio; - /** - * Constructor - */ - function CompanyBankAccount($DB) - { - $this->db = $DB; + /** + * Constructor + */ + function CompanyBankAccount($DB) + { + $this->db = $DB; - $this->socid = 0; - $this->clos = 0; - $this->solde = 0; - $this->error_number = 0; - return 1; - } + $this->socid = 0; + $this->clos = 0; + $this->solde = 0; + $this->error_number = 0; + return 1; + } - /** - * Create bank information record - * - */ - function create() - { - $sql = "INSERT INTO ".MAIN_DB_PREFIX."societe_rib (fk_soc, datec) values ($this->socid, ".$this->db->idate(mktime()).")"; + /** + * Create bank information record + * + */ + function create() + { + $sql = "INSERT INTO ".MAIN_DB_PREFIX."societe_rib (fk_soc, datec) values ($this->socid, ".$this->db->idate(mktime()).")"; $resql=$this->db->query($sql); - if ($resql) - { - if ($this->db->affected_rows($resql)) - { - return 1; - } - } - else - { - print $this->db->error(); - return 0; - } - } + if ($resql) + { + if ($this->db->affected_rows($resql)) + { + return 1; + } + } + else + { + print $this->db->error(); + return 0; + } + } - /** - * - * - */ - function update($user='') - { + /** + * + * + */ + function update($user='') + { - $sql = "SELECT fk_soc FROM ".MAIN_DB_PREFIX."societe_rib"; - $sql .= " WHERE fk_soc = ".$this->socid; + $sql = "SELECT fk_soc FROM ".MAIN_DB_PREFIX."societe_rib"; + $sql .= " WHERE fk_soc = ".$this->socid; - $result = $this->db->query($sql); - if ($result) - { - if ($this->db->num_rows($result) == 0) - { - $this->create(); - } - } - else - { - dol_print_error($this->db); - return 0; - } + $result = $this->db->query($sql); + if ($result) + { + if ($this->db->num_rows($result) == 0) + { + $this->create(); + } + } + else + { + dol_print_error($this->db); + return 0; + } - $sql = "UPDATE ".MAIN_DB_PREFIX."societe_rib SET "; - $sql .= " bank = '" .$this->db->escape($this->bank)."'"; - $sql .= ",code_banque='".$this->code_banque."'"; - $sql .= ",code_guichet='".$this->code_guichet."'"; - $sql .= ",number='".$this->number."'"; - $sql .= ",cle_rib='".$this->cle_rib."'"; - $sql .= ",bic='".$this->bic."'"; - $sql .= ",iban_prefix = '".$this->iban_prefix."'"; - $sql .= ",domiciliation='".$this->db->escape($this->domiciliation)."'"; - $sql .= ",proprio = '".$this->db->escape($this->proprio)."'"; - $sql .= ",adresse_proprio = '".$this->db->escape($this->adresse_proprio)."'"; - $sql .= " WHERE fk_soc = ".$this->socid; + $sql = "UPDATE ".MAIN_DB_PREFIX."societe_rib SET "; + $sql .= " bank = '" .$this->db->escape($this->bank)."'"; + $sql .= ",code_banque='".$this->code_banque."'"; + $sql .= ",code_guichet='".$this->code_guichet."'"; + $sql .= ",number='".$this->number."'"; + $sql .= ",cle_rib='".$this->cle_rib."'"; + $sql .= ",bic='".$this->bic."'"; + $sql .= ",iban_prefix = '".$this->iban_prefix."'"; + $sql .= ",domiciliation='".$this->db->escape($this->domiciliation)."'"; + $sql .= ",proprio = '".$this->db->escape($this->proprio)."'"; + $sql .= ",adresse_proprio = '".$this->db->escape($this->adresse_proprio)."'"; + $sql .= " WHERE fk_soc = ".$this->socid; - $result = $this->db->query($sql); - if ($result) - { - return 1; - } - else - { - dol_print_error($this->db); - return 0; - } - } + $result = $this->db->query($sql); + if ($result) + { + return 1; + } + else + { + dol_print_error($this->db); + return 0; + } + } - /** - * Load record from database - * @param id Id of record - * @param socid Id of company - */ - function fetch($id,$socid=0) - { - if (empty($id) && empty($socid)) return -1; + /** + * Load record from database + * @param id Id of record + * @param socid Id of company + */ + function fetch($id,$socid=0) + { + if (empty($id) && empty($socid)) return -1; - $sql = "SELECT rowid, fk_soc, bank, number, code_banque, code_guichet, cle_rib, bic, iban_prefix as iban, domiciliation, proprio, adresse_proprio"; - $sql.= " FROM ".MAIN_DB_PREFIX."societe_rib"; - if ($id) $sql.= " WHERE rowid = ".$id; - if ($socid) $sql.= " WHERE fk_soc = ".$socid; + $sql = "SELECT rowid, fk_soc, bank, number, code_banque, code_guichet, cle_rib, bic, iban_prefix as iban, domiciliation, proprio, adresse_proprio"; + $sql.= " FROM ".MAIN_DB_PREFIX."societe_rib"; + if ($id) $sql.= " WHERE rowid = ".$id; + if ($socid) $sql.= " WHERE fk_soc = ".$socid; - $resql = $this->db->query($sql); - if ($resql) - { - if ($this->db->num_rows($resql)) - { - $obj = $this->db->fetch_object($resql); + $resql = $this->db->query($sql); + if ($resql) + { + if ($this->db->num_rows($resql)) + { + $obj = $this->db->fetch_object($resql); - $this->id = $obj->rowid; + $this->id = $obj->rowid; $this->socid = $obj->fk_soc; - $this->bank = $obj->bank; - $this->courant = $obj->courant; - $this->clos = $obj->clos; - $this->code_banque = $obj->code_banque; - $this->code_guichet = $obj->code_guichet; - $this->number = $obj->number; - $this->cle_rib = $obj->cle_rib; - $this->bic = $obj->bic; - $this->iban = $obj->iban; - $this->iban_prefix = $obj->iban; // deprecated - $this->domiciliation = $obj->domiciliation; - $this->proprio = $obj->proprio; - $this->adresse_proprio = $obj->adresse_proprio; - } - $this->db->free($resql); + $this->bank = $obj->bank; + $this->courant = $obj->courant; + $this->clos = $obj->clos; + $this->code_banque = $obj->code_banque; + $this->code_guichet = $obj->code_guichet; + $this->number = $obj->number; + $this->cle_rib = $obj->cle_rib; + $this->bic = $obj->bic; + $this->iban = $obj->iban; + $this->iban_prefix = $obj->iban; // deprecated + $this->domiciliation = $obj->domiciliation; + $this->proprio = $obj->proprio; + $this->adresse_proprio = $obj->adresse_proprio; + } + $this->db->free($resql); - return 1; - } - else - { - dol_print_error($this->db); - return -1; - } - } + return 1; + } + else + { + dol_print_error($this->db); + return -1; + } + } } diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index 348d1d3255d..b766c82ac11 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -1545,14 +1545,16 @@ class Societe extends CommonObject /** * Return list of contacts emails existing for third party - * @return array Array of contacts emails + * + * @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() { diff --git a/htdocs/societe/notify/fiche.php b/htdocs/societe/notify/fiche.php index 4cd8d8b046f..13f9dd0dcc0 100644 --- a/htdocs/societe/notify/fiche.php +++ b/htdocs/societe/notify/fiche.php @@ -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,41 +52,71 @@ $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') { - $sql = "DELETE FROM ".MAIN_DB_PREFIX."notify_def"; - $sql .= " WHERE fk_soc=".$socid." AND fk_contact=".$_POST["contactid"]." AND fk_action=".$_POST["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"].")"; + $error=0; - if ($db->query($sql)) - { + if (empty($contactid)) + { + $mesg='
'.$langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("Contact")).'
'; + $error++; + } + if ($actionid <= 0) + { + $mesg='
'.$langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("Action")).'
'; + $error++; + } - } - else - { - dol_print_error($db); - } - } - else - { - dol_print_error($db); - } + if (! $error) + { + $db->begin(); + + $sql = "DELETE FROM ".MAIN_DB_PREFIX."notify_def"; + $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($now)."',".$socid.",".$contactid.",".$actionid.")"; + + if ($db->query($sql)) + { + + } + else + { + $error++; + dol_print_error($db); + } + } + else + { + 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); + $sql = "DELETE FROM ".MAIN_DB_PREFIX."notify_def where rowid=".$_GET["actid"].";"; + $db->query($sql); } @@ -95,79 +129,106 @@ $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"); + $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'); + dol_fiche_head($head, 'notify', $langs->trans("ThirdParty"),0,'company'); - print ''; + print '
'; - print ''; + print ''; - print ''; - print ''; - print '
'.$langs->trans("ThirdPartyName").''; - print $form->showrefnav($soc,'socid','',($user->societe_id?0:1),'rowid','nom'); - print '
'.$langs->trans("ThirdPartyName").''; + print $form->showrefnav($object,'socid','',($user->societe_id?0:1),'rowid','nom'); + print '
'.$langs->trans("NbOfActiveNotifications").''; - $sql = "SELECT COUNT(n.rowid) as nb"; - $sql.= " FROM ".MAIN_DB_PREFIX."notify_def as n"; - $sql.= " WHERE fk_soc = ".$soc->id; - $resql=$db->query($sql); - if ($resql) - { - $num = $db->num_rows($resql); - $i = 0; - while ($i < $num) - { - $obj = $db->fetch_object($resql); - $nb=$obj->nb; - $i++; - } - } - else { - dol_print_error($db); - } - print $nb; - print '
'; + // Prefix + if (! empty($conf->global->SOCIETE_USEPREFIX)) // Old not used prefix field + { + print ''.$langs->trans('Prefix').''.$object->prefix_comm.''; + } - print ''; + if ($object->client) + { + print ''; + print $langs->trans('CustomerCode').''; + print $object->code_client; + if ($object->check_codeclient() <> 0) print ' ('.$langs->trans("WrongCustomerCode").')'; + print ''; + } + + if ($object->fournisseur) + { + print ''; + print $langs->trans('SupplierCode').''; + print $object->code_fournisseur; + if ($object->check_codefournisseur() <> 0) print ' ('.$langs->trans("WrongSupplierCode").')'; + print ''; + } + + print ''.$langs->trans("NbOfActiveNotifications").''; + print ''; + $sql = "SELECT COUNT(n.rowid) as nb"; + $sql.= " FROM ".MAIN_DB_PREFIX."notify_def as n"; + $sql.= " WHERE fk_soc = ".$object->id; + $resql=$db->query($sql); + if ($resql) + { + $num = $db->num_rows($resql); + $i = 0; + while ($i < $num) + { + $obj = $db->fetch_object($resql); + $nb=$obj->nb; + $i++; + } + } + else { + dol_print_error($db); + } + print $nb; + print ''; + print ''; + + // Help + print '
'.$langs->trans("NotificationsDesc").'
'; - // Help - print $langs->trans("NotificationsDesc").'

'; + dol_fiche_end(); - print "\n"; + print "\n"; - // Add notification form - print_fiche_titre($langs->trans("AddNewNotification"),'',''); + // Add notification form + print_fiche_titre($langs->trans("AddNewNotification"),'',''); - print ''; - print ''; + print ''; + print ''; + print ''; - // Line with titles - print ''; - print ''; - $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); + $param="&socid=".$socid; + + // Line with titles + print '
'; + print ''; + 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 ''; - print ''; + print_liste_field_titre(''); + print ''; - $var=false; - if (count($soc->thirdparty_and_contact_email_array()) > 0) - { - $actions=array(); + $var=false; + $listofemails=$object->thirdparty_and_contact_email_array(); + if (count($listofemails) > 0) + { + $actions=array(); // Load array of available notifications $notificationtrigger=new InterfaceNotification($db); @@ -178,173 +239,174 @@ 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 ''; - print ''; - print ''; + print ''; + print ''; print ''; - print ''; - print ''; - } - else - { - print ''; - } + print ''; + print ''; + } + else + { + print ''; + } - print '
 
'; - print $html->selectarray("contactid",$soc->thirdparty_and_contact_email_array()); - print ''; - print $html->selectarray("actionid",$actions,'',1); - print '
'; + print $html->selectarray("contactid",$listofemails); + print ''; + print $html->selectarray("actionid",$actions,'',1); + print ''; $type=array('email'=>$langs->trans("EMail")); print $html->selectarray("typeid",$type); print '
'; - print $langs->trans("YouMustCreateContactFirst"); - print '
'; + print $langs->trans("YouMustCreateContactFirst"); + print '
'; + print ''; - print ''; - print '
'; + print ''; + print '
'; + dol_htmloutput_mesg($mesg); - // List of active notifications - print_fiche_titre($langs->trans("ListOfActiveNotifications"),'',''); - $var=true; + // List of active notifications + print_fiche_titre($langs->trans("ListOfActiveNotifications"),'',''); + $var=true; - // Line with titles - print ''; - print ''; - 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); + // Line with titles + print '
'; + print ''; + 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_liste_field_titre('','',''); - print ''; + print_liste_field_titre('','',''); + print ''; - // List of notifications for contacts - $sql = "SELECT n.rowid, n.type,"; - $sql.= " a.code, a.label,"; + // List of notifications for contacts + $sql = "SELECT n.rowid, n.type,"; + $sql.= " a.code, a.label,"; $sql.= " c.rowid as contactid, c.name, c.firstname, c.email"; - $sql.= " FROM ".MAIN_DB_PREFIX."c_action_trigger as a,"; - $sql.= " ".MAIN_DB_PREFIX."notify_def as n,"; - $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.= " FROM ".MAIN_DB_PREFIX."c_action_trigger as a,"; + $sql.= " ".MAIN_DB_PREFIX."notify_def as n,"; + $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 = ".$object->id; - $resql=$db->query($sql); - if ($resql) - { - $num = $db->num_rows($resql); - $i = 0; + $resql=$db->query($sql); + if ($resql) + { + $num = $db->num_rows($resql); + $i = 0; - $contactstatic=new Contact($db); + $contactstatic=new Contact($db); - while ($i < $num) - { - $var = !$var; + while ($i < $num) + { + $var = !$var; - $obj = $db->fetch_object($resql); + $obj = $db->fetch_object($resql); - $contactstatic->id=$obj->contactid; - $contactstatic->name=$obj->name; - $contactstatic->firstname=$obj->firstname; - print ''; - print ''; + $contactstatic->id=$obj->contactid; + $contactstatic->name=$obj->name; + $contactstatic->firstname=$obj->firstname; + print ''; + print ''; print ''; print ''; - print ''; - $i++; - } - $db->free($resql); - } - else - { - dol_print_error($db); - } + print ''; + $i++; + } + $db->free($resql); + } + else + { + dol_print_error($db); + } - print '
'.$contactstatic->getNomUrl(1); - if ($obj->type == 'email') - { - if (isValidEmail($obj->email)) - { - print ' <'.$obj->email.'>'; - } - else - { - $langs->load("errors"); - print '   '.img_warning().' '.$langs->trans("ErrorBadEMail",$obj->email); - } - } - print ''; - $label=($langs->trans("Notify_".$obj->code)!="Notify_".$obj->code?$langs->trans("Notify_".$obj->code):$obj->label); - print $label; - print '
'.$contactstatic->getNomUrl(1); + if ($obj->type == 'email') + { + if (isValidEmail($obj->email)) + { + print ' <'.$obj->email.'>'; + } + else + { + $langs->load("errors"); + print '   '.img_warning().' '.$langs->trans("ErrorBadEMail",$obj->email); + } + } + print ''; + $label=($langs->trans("Notify_".$obj->code)!="Notify_".$obj->code?$langs->trans("Notify_".$obj->code):$obj->label); + print $label; + print ''; if ($obj->type == 'email') print $langs->trans("Email"); if ($obj->type == 'sms') print $langs->trans("SMS"); print ''.img_delete().'
'; - print '
'; + print ''; + print '
'; - // List of notifications done - print_fiche_titre($langs->trans("ListOfNotificationsDone"),'',''); - $var=true; + // List of notifications done + print_fiche_titre($langs->trans("ListOfNotificationsDone"),'',''); + $var=true; - // Line with titles - print ''; - print ''; - 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 ''; + // Line with titles + print '
'; + print ''; + 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 ''; - // List - $sql = "SELECT n.rowid, n.daten, n.email, n.objet_type, n.objet_id,"; - $sql.= " c.rowid as id, c.name, c.firstname, c.email,"; - $sql.= " a.code, a.label"; - $sql.= " FROM ".MAIN_DB_PREFIX."c_action_trigger as a,"; - $sql.= " ".MAIN_DB_PREFIX."notify as n, "; + // List + $sql = "SELECT n.rowid, n.daten, n.email, n.objet_type, n.objet_id,"; + $sql.= " c.rowid as id, c.name, c.firstname, c.email,"; + $sql.= " a.code, a.label"; + $sql.= " FROM ".MAIN_DB_PREFIX."c_action_trigger as a,"; + $sql.= " ".MAIN_DB_PREFIX."notify as n, "; $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) - { - $num = $db->num_rows($resql); - $i = 0; + $resql=$db->query($sql); + if ($resql) + { + $num = $db->num_rows($resql); + $i = 0; - $contactstatic=new Contact($db); + $contactstatic=new Contact($db); - while ($i < $num) - { - $var = !$var; + while ($i < $num) + { + $var = !$var; - $obj = $db->fetch_object($resql); + $obj = $db->fetch_object($resql); - $contactstatic->id=$obj->id; - $contactstatic->name=$obj->name; - $contactstatic->firstname=$obj->firstname; - print ''; - print ''; - // TODO Add link to object here - // print - print''; - print ''; - $i++; - } - $db->free($resql); - } - else - { - dol_print_error($db); - } + $contactstatic->id=$obj->id; + $contactstatic->name=$obj->name; + $contactstatic->firstname=$obj->firstname; + print ''; + print ''; + // TODO Add link to object here + // print + print''; + print ''; + $i++; + } + $db->free($resql); + } + else + { + dol_print_error($db); + } - print '
'.$contactstatic->getNomUrl(1); - print $obj->email?' <'.$obj->email.'>':$langs->trans("NoMail"); - print ''; - $label=($langs->trans("Notify_".$obj->code)!="Notify_".$obj->code?$langs->trans("Notify_".$obj->code):$obj->label); - print $label; - print ''.dol_print_date($db->jdate($obj->daten), 'dayhour').'
'.$contactstatic->getNomUrl(1); + print $obj->email?' <'.$obj->email.'>':$langs->trans("NoMail"); + print ''; + $label=($langs->trans("Notify_".$obj->code)!="Notify_".$obj->code?$langs->trans("Notify_".$obj->code):$obj->label); + print $label; + print ''.dol_print_date($db->jdate($obj->daten), 'dayhour').'
'; + print ''; } +else dol_print_error('','RecordNotFound'); $db->close(); diff --git a/htdocs/theme/auguria/style.css.php b/htdocs/theme/auguria/style.css.php index e8c7b805f8f..fb0d19d721c 100644 --- a/htdocs/theme/auguria/style.css.php +++ b/htdocs/theme/auguria/style.css.php @@ -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(); -background-repeat: repeat-x; -color: #FFFFFF; -font-family: ; -/* border-bottom: 1px solid #FDFFFF; */ -white-space: nowrap; -} -td.liste_titre { -background: #7699A9; -background-image: url(); -background-repeat: repeat-x; -color: #FFFFFF; -font-family: ; -font-weight: normal; -/* border-bottom: 1px solid #FDFFFF; */ -white-space: nowrap; -} -td.liste_titre_sel +tr.liste_titre { -background: #7699A9; -background-image: url(); -background-repeat: repeat-x; -color: #FFFFFF; -font-family: ; -font-weight: normal; -/* text-decoration: underline; */ -/* border-bottom: 1px solid #FDFFFF; */ -white-space: nowrap; + height: 24px; + background: #7699A9; + background-image: url(); + background-repeat: repeat-x; + color: #FFFFFF; + font-family: ; + /* border-bottom: 1px solid #FDFFFF; */ + white-space: nowrap; +} +th.liste_titre, td.liste_titre +{ + background: #7699A9; + background-image: url(); + background-repeat: repeat-x; + color: #FFFFFF; + font-family: ; + font-weight: normal; + /* border-bottom: 1px solid #FDFFFF; */ + white-space: nowrap; + text-align: ; +} +th.liste_titre_sel, td.liste_titre_sel +{ + background: #7699A9; + background-image: url(); + background-repeat: repeat-x; + color: #FFFFFF; + font-family: ; + font-weight: normal; + /* text-decoration: underline; */ + /* border-bottom: 1px solid #FDFFFF; */ + white-space: nowrap; + text-align: ; } input.liste_titre { background: transparent; @@ -1274,19 +1278,6 @@ font-weight: normal; white-space: nowrap; } -th { -/* background: #7699A9; */ -background: #91ABB3; -color: #334444; -font-family: ; -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; diff --git a/htdocs/theme/bureau2crea/style.css.php b/htdocs/theme/bureau2crea/style.css.php index 4aa1e974344..7312b757d11 100644 --- a/htdocs/theme/bureau2crea/style.css.php +++ b/htdocs/theme/bureau2crea/style.css.php @@ -1402,8 +1402,8 @@ tr.liste_titre:first-child { background-position: top right; } -td.liste_titre_sel, -tr.liste_titre:first-child td { +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: ; @@ -1438,6 +1439,7 @@ td.liste_titre { white-space: nowrap; background-image: none; background: none; + text-align: ; } /*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: ; } input.liste_titre { @@ -1481,19 +1485,6 @@ white-space: nowrap; padding: 5px; } -th { -/* background: #7699A9; */ -background: #91ABB3; -color: #334444; -font-family: ; -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; @@ -2221,7 +2212,7 @@ a.cke_dialog_ui_button margin-left: -240px; margin-bottom: 30px; } - + div#infoVersion { position: relative; width: 100%; @@ -2231,14 +2222,14 @@ div#infoVersion { font-size: 10px; background-color: #D6D6D6; } - + div#logoBox { position: relative; width: 100%; height: auto; margin-top: 30px; } - + div#parameterBox { position: relative; width: 100%; @@ -2249,14 +2240,14 @@ div#parameterBox { background-repeat: no-repeat; background-position: top center; } - + div#parameterBox div { width: 100%; height: 20px; position: relative; line-height: 20px; } - + div#parameterBox div label { width: 190px; text-align: right; @@ -2264,7 +2255,7 @@ div#parameterBox div label { float: left; margin-right: 10px; } - + div#parameterBox div input[type="text"], div#parameterBox div input[type="password"] { width: 180px; @@ -2272,12 +2263,12 @@ div#parameterBox div input[type="password"] { font-size: 10px; margin-top: 2px; } - + div#connectionLine { margin: 10px 0px; text-align: center; } - + div#logBox { margin-top: 25px; } @@ -2285,7 +2276,7 @@ margin-top: 25px; div.captchaBox { margin-top: 10px; } - + div.captchaImg { margin-bottom: 10px; margin-top: 5px; @@ -2295,7 +2286,7 @@ div.captchaImg { img#captcha { margin-left: 200px; } - + div#infoLogin { width: 100%; height: auto; @@ -2314,11 +2305,11 @@ div.other { left: 50%; margin-left: -240px; } - + form.listactionsfilter img { display: none; } - + form.listactionsfilter input[type="submit"] { margin: 2px 0px; } diff --git a/htdocs/theme/cameleo/style.css.php b/htdocs/theme/cameleo/style.css.php index 4af783fde2d..42f43efc8c8 100644 --- a/htdocs/theme/cameleo/style.css.php +++ b/htdocs/theme/cameleo/style.css.php @@ -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 { - padding-left: 6px; - padding-right: 6px; - /*vertical-align: text-top;*/ -} - -td.liste_titre_sel +th.liste_titre, td.liste_titre { -background-position: top right; -color: #A51B00; -font-weight: bold; -white-space: nowrap; + padding-left: 6px; + padding-right: 6px; + /*vertical-align: text-top;*/ + text-align: ; +} +th.liste_titre_sel, td.liste_titre_sel +{ + background-position: top right; + color: #A51B00; + font-weight: bold; + white-space: nowrap; + text-align: ; } input.liste_titre { @@ -1383,19 +1384,6 @@ font-weight: normal; white-space: nowrap; } -th { -/* background: #7699A9; */ -background: #91ABB3; -color: #334444; -font-family: ; -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; diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index 9de61eaaa77..58e2ced4c1e 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -228,12 +228,12 @@ div.fichecenter { div.fichethirdleft { browser->phone)) { print "float: ".$left.";\n"; } ?> browser->phone)) { print "width: 35%;\n"; } ?> - browser->phone)) { print "padding-bottom: 6px;\n"; } ?> + browser->phone)) { print "padding-bottom: 6px;\n"; } ?> } div.fichetwothirdright { browser->phone)) { print "float: ".$left.";\n"; } ?> browser->phone)) { print "width: 65%;\n"; } ?> - browser->phone)) { print "padding-bottom: 6px\n"; } ?> + browser->phone)) { print "padding-bottom: 6px\n"; } ?> } div.fichehalfleft { browser->phone)) { print "float: ".$left.";\n"; } ?> @@ -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(); -background-repeat: repeat-x; -color: #334444; -font-family: ; -border-bottom: 1px solid #FDFFFF; -white-space: nowrap; -} -td.liste_titre { -background: #7699A9; -background-image: url(); -background-repeat: repeat-x; -color: #334444; -font-family: ; -font-weight: normal; -border-bottom: 1px solid #FDFFFF; -white-space: nowrap; -} -td.liste_titre_sel +tr.liste_titre { -background: #7699A9; -background-image: url(); -background-repeat: repeat-x; -color: #F5FFFF; -font-family: ; -font-weight: normal; -border-bottom: 1px solid #FDFFFF; -white-space: nowrap; + height: 20px !important; + background: #7699A9; + background-image: url(); + background-repeat: repeat-x; + color: #334444; + font-family: ; + border-bottom: 1px solid #FDFFFF; + white-space: nowrap; +} +th.liste_titre, td.liste_titre +{ + background: #7699A9; + background-image: url(); + background-repeat: repeat-x; + color: #334444; + font-family: ; + font-weight: normal; + border-bottom: 1px solid #FDFFFF; + white-space: nowrap; + text-align: ; +} +th.liste_titre_sel, td.liste_titre_sel +{ + background: #7699A9; + background-image: url(); + background-repeat: repeat-x; + color: #F5FFFF; + font-family: ; + font-weight: normal; + border-bottom: 1px solid #FDFFFF; + white-space: nowrap; + text-align: ; } input.liste_titre { background: #7699A9; @@ -1292,18 +1296,6 @@ font-weight: normal; white-space: nowrap; } -th { -/* background: #7699A9; */ -background: #91ABB3; -color: #334444; -font-family: ; -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; */ diff --git a/htdocs/theme/phones/smartphone/theme/default/default.css.php b/htdocs/theme/phones/smartphone/theme/default/default.css.php index 89048687034..fc8f9494057 100644 --- a/htdocs/theme/phones/smartphone/theme/default/default.css.php +++ b/htdocs/theme/phones/smartphone/theme/default/default.css.php @@ -127,8 +127,8 @@ input.ui-input-text, textarea.ui-input-text { /* ============================================================================== */ div.fiche { - margin-: browser->phone)?'10':'2'; ?>px; - margin-: browser->phone)?'6':''; ?>px; + margin-: browser->phone)?'10':'2'); ?>px; + margin-: 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: ; -/* 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: ; -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: ; -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: ; + /* 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: ; + font-weight: normal; + /* border-bottom: 1px solid #FDFFFF; */ + white-space: nowrap; + text-align: ; +} +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: ; + font-weight: normal; + /* text-decoration: underline; */ + /* border-bottom: 1px solid #FDFFFF; */ + white-space: nowrap; + text-align: ; } input.liste_titre { background: transparent;