diff --git a/ChangeLog b/ChangeLog index 8d204454579..965ff2b3443 100644 --- a/ChangeLog +++ b/ChangeLog @@ -24,9 +24,6 @@ For users: - New: Add object_hour and object_date_rfc as substitution tag for open document generation. - New: Add options to send an email when paypal or paybox payment is done. - New: Clone product/service composition. -- New: [ task #926 ] Add extrafield feature on order lines. -- New: [ task #927 ] Add extrafield feature on Proposal lines. -- New: [ task #928 ] Add extrafield feature on invoice lines. - New: Add option ADHERENT_LOGIN_NOT_REQUIRED. - New: Add a cron module to define scheduled jobs. - New: Add new graphical boxes (customer and supplier invoices and orders per month). diff --git a/build/makepack-dolibarrmodule.pl b/build/makepack-dolibarrmodule.pl index 28220e9df95..e708340266d 100755 --- a/build/makepack-dolibarrmodule.pl +++ b/build/makepack-dolibarrmodule.pl @@ -88,18 +88,6 @@ print "Source directory: $SOURCE\n"; print "Target directory: $NEWDESTI\n"; -# Ask and set version $MAJOR, $MINOR and $BUILD -print "Enter value for version: "; -$PROJVERSION=; -chomp($PROJVERSION); -($MAJOR,$MINOR,$BUILD)=split(/\./,$PROJVERSION,3); -if ($MINOR eq '') -{ - print "Enter value for minor version: "; - $MINOR=; - chomp($MINOR); -} - # Ask module print "Enter name for your module (mymodule, mywonderfulmondule, ... or 'all') : "; $PROJECTINPUT=; @@ -130,6 +118,8 @@ else # Loop on each projects foreach my $PROJECT (@PROJECTLIST) { + $PROJECTLC=lc($PROJECT); + if (! -f "makepack-".$PROJECT.".conf") { print "Error: can't open conf file makepack-".$PROJECT.".conf\n"; @@ -141,9 +131,28 @@ foreach my $PROJECT (@PROJECTLIST) { exit 2; } - $FILENAME="$PROJECT"; - $FILENAMETGZ="module_$PROJECT-$MAJOR.$MINOR".($BUILD ne ''?".$BUILD":""); - $FILENAMEZIP="module_$PROJECT-$MAJOR.$MINOR".($BUILD ne ''?".$BUILD":""); + # Get version $MAJOR, $MINOR and $BUILD + print "Version detected for module ".$PROJECT.": "; + $result=open(IN,"<".$SOURCE."/htdocs/".$PROJECTLC."/core/modules/mod".$PROJECT.".class.php"); + if (! $result) { die "Error: Can't open descriptor file ".$SOURCE."/htdocs/".$PROJECTLC."/core/modules/mod".$PROJECT.".class.php for reading.\n"; } + while() + { + if ($_ =~ /this->version\s*=\s*'([\d\.]+)'/) { $PROJVERSION=$1; break; } + } + close IN; + print $PROJVERSION."\n"; + + ($MAJOR,$MINOR,$BUILD)=split(/\./,$PROJVERSION,3); + if ($MINOR eq '') + { + print "Enter value for minor version for module ".$PROJECT.": "; + $MINOR=; + chomp($MINOR); + } + + $FILENAME="$PROJECTLC"; + $FILENAMETGZ="module_$PROJECTLC-$MAJOR.$MINOR".($BUILD ne ''?".$BUILD":""); + $FILENAMEZIP="module_$PROJECTLC-$MAJOR.$MINOR".($BUILD ne ''?".$BUILD":""); if (-d "/usr/src/redhat") { # redhat $RPMDIR="/usr/src/redhat"; @@ -230,7 +239,7 @@ foreach my $PROJECT (@PROJECTLIST) { $ret=`rm -fr "$BUILDROOT"`; mkdir "$BUILDROOT"; - mkdir "$BUILDROOT/$PROJECT"; + mkdir "$BUILDROOT/$PROJECTLC"; $result=open(IN,"$BUILDROOT/$PROJECT/build/version-".$PROJECT.".txt"); + open(VF,">$BUILDROOT/$PROJECTLC/build/version-".$PROJECTLC.".txt"); - print "Create version file $BUILDROOT/$PROJECT/build/version-".$PROJECT.".txt with date ".$fulldate."\n"; - $ret=`mkdir -p "$BUILDROOT/$PROJECT/build"`; + print "Create version file $BUILDROOT/$PROJECTLC/build/version-".$PROJECTLC.".txt with date ".$fulldate."\n"; + $ret=`mkdir -p "$BUILDROOT/$PROJECTLC/build"`; print VF "Version: ".$MAJOR.".".$MINOR.($BUILD ne ''?".$BUILD":"")."\n"; print VF "Build : ".$fulldate."\n"; close VF; } print "Clean $BUILDROOT\n"; - $ret=`rm -fr $BUILDROOT/$PROJECT/.cache`; - $ret=`rm -fr $BUILDROOT/$PROJECT/.project`; - $ret=`rm -fr $BUILDROOT/$PROJECT/.settings`; - $ret=`rm -fr $BUILDROOT/$PROJECT/index.php`; - $ret=`rm -fr $BUILDROOT/$PROJECT/build/html`; - $ret=`rm -fr $BUILDROOT/$PROJECT/documents`; - $ret=`rm -fr $BUILDROOT/$PROJECT/document`; - $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/conf/conf.php.mysql`; - $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/conf/conf.php.old`; - $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/conf/conf.php.postgres`; - $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/conf/conf*sav*`; - $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/custom`; - $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/custom2`; - $ret=`rm -fr $BUILDROOT/$PROJECT/test`; - $ret=`rm -fr $BUILDROOT/$PROJECT/Thumbs.db $BUILDROOT/$PROJECT/*/Thumbs.db $BUILDROOT/$PROJECT/*/*/Thumbs.db $BUILDROOT/$PROJECT/*/*/*/Thumbs.db $BUILDROOT/$PROJECT/*/*/*/*/Thumbs.db`; - $ret=`rm -fr $BUILDROOT/$PROJECT/CVS* $BUILDROOT/$PROJECT/*/CVS* $BUILDROOT/$PROJECT/*/*/CVS* $BUILDROOT/$PROJECT/*/*/*/CVS* $BUILDROOT/$PROJECT/*/*/*/*/CVS* $BUILDROOT/$PROJECT/*/*/*/*/*/CVS*`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/.cache`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/.project`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/.settings`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/index.php`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/build/html`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/documents`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/document`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/htdocs/conf/conf.php.mysql`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/htdocs/conf/conf.php.old`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/htdocs/conf/conf.php.postgres`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/htdocs/conf/conf*sav*`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/htdocs/custom`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/htdocs/custom2`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/test`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/Thumbs.db $BUILDROOT/$PROJECTLC/*/Thumbs.db $BUILDROOT/$PROJECTLC/*/*/Thumbs.db $BUILDROOT/$PROJECTLC/*/*/*/Thumbs.db $BUILDROOT/$PROJECTLC/*/*/*/*/Thumbs.db`; + $ret=`rm -fr $BUILDROOT/$PROJECTLC/CVS* $BUILDROOT/$PROJECTLC/*/CVS* $BUILDROOT/$PROJECTLC/*/*/CVS* $BUILDROOT/$PROJECTLC/*/*/*/CVS* $BUILDROOT/$PROJECTLC/*/*/*/*/CVS* $BUILDROOT/$PROJECTLC/*/*/*/*/*/CVS*`; } # Build package for each target @@ -314,9 +324,9 @@ foreach my $PROJECT (@PROJECTLIST) { unlink "$NEWDESTI/$FILENAMEZIP.zip"; print "Compress $FILENAMEZIP into $FILENAMEZIP.zip...\n"; - print "Go to directory $BUILDROOT/$PROJECT\n"; + print "Go to directory $BUILDROOT/$PROJECTLC\n"; $olddir=getcwd(); - chdir("$BUILDROOT/$PROJECT"); + chdir("$BUILDROOT/$PROJECTLC"); $cmd= "7z a -r -tzip -mx $BUILDROOT/$FILENAMEZIP.zip *"; print $cmd."\n"; $ret= `$cmd`; diff --git a/htdocs/admin/barcode.php b/htdocs/admin/barcode.php index 2e815919672..ebc5e46946c 100644 --- a/htdocs/admin/barcode.php +++ b/htdocs/admin/barcode.php @@ -289,8 +289,8 @@ if (! isset($_SERVER['WINDIR'])) print ''; } -// Module produits -if (! empty($conf->societe->enabled)) +// Module products +if (! empty($conf->product->enabled)) { $var=!$var; print "
"; @@ -307,8 +307,8 @@ if (! empty($conf->societe->enabled)) print '
'; } -// Module produits -if (! empty($conf->product->enabled)) +// Module thirdparty +if (! empty($conf->societe->enabled)) { $var=!$var; print "
"; diff --git a/htdocs/comm/action/fiche.php b/htdocs/comm/action/fiche.php index 0e8843579fe..18bf3ecc7ed 100644 --- a/htdocs/comm/action/fiche.php +++ b/htdocs/comm/action/fiche.php @@ -586,11 +586,10 @@ if ($action == 'create') // Project if (! empty($conf->projet->enabled)) { - $formproject=new FormProjets($db); // Projet associe - $langs->load("project"); + $langs->load("projects"); print ''.$langs->trans("Project").''; diff --git a/htdocs/compta/facture/impayees.php b/htdocs/compta/facture/impayees.php index d1750755835..dd374eb1a6f 100644 --- a/htdocs/compta/facture/impayees.php +++ b/htdocs/compta/facture/impayees.php @@ -1,7 +1,7 @@ * Copyright (C) 2004 Eric Seigne - * Copyright (C) 2004-2012 Laurent Destailleur + * Copyright (C) 2004-2014 Laurent Destailleur * Copyright (C) 2005-2012 Regis Houssin * * This program is free software; you can redistribute it and/or modify @@ -38,12 +38,13 @@ $id = (GETPOST('facid','int') ? GETPOST('facid','int') : GETPOST('id','int')); $action = GETPOST('action','alpha'); $option = GETPOST('option'); -$diroutputpdf=$conf->facture->dir_output . '/unpaid/temp'; - // Security check if ($user->societe_id) $socid=$user->societe_id; $result = restrictedArea($user,'facture',$id,''); +$diroutputpdf=$conf->facture->dir_output . '/unpaid/temp'; +if (! $user->rights->societe->client->voir || $socid) $diroutputpdf.='/private/'.$user->id; // If user has no permission to see all, output dir is specific to user + /* * Action @@ -221,7 +222,7 @@ if ($search_societe) $sql .= " AND s.nom LIKE '%".$db->escape($search_societ if ($search_montant_ht) $sql .= " AND f.total = '".$db->escape($search_montant_ht)."'"; if ($search_montant_ttc) $sql .= " AND f.total_ttc = '".$db->escape($search_montant_ttc)."'"; if (GETPOST('sf_ref')) $sql .= " AND f.facnumber LIKE '%".$db->escape(GETPOST('sf_ref'))."%'"; -$sql.= " GROUP BY s.nom, s.rowid, f.facnumber, f.increment, f.total, f.tva, f.total_ttc, f.datef, f.date_lim_reglement, f.paye, f.rowid, f.fk_statut, f.type "; +$sql.= " GROUP BY s.nom, s.rowid, f.rowid, f.facnumber, f.increment, f.total, f.tva, f.total_ttc, f.localtax1, f.localtax2, f.revenuestamp, f.datef, f.date_lim_reglement, f.paye, f.fk_statut, f.type "; if (! $user->rights->societe->client->voir && ! $socid) $sql .= ", sc.fk_soc, sc.fk_user "; $sql.= " ORDER BY "; $listfield=explode(',',$sortfield); diff --git a/htdocs/compta/paiement/liste.php b/htdocs/compta/paiement/liste.php index 16a6c1410e6..32400cf29cc 100644 --- a/htdocs/compta/paiement/liste.php +++ b/htdocs/compta/paiement/liste.php @@ -29,6 +29,7 @@ require_once DOL_DOCUMENT_ROOT.'/compta/paiement/class/paiement.class.php'; require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; $langs->load("bills"); +$langs->load("compta"); // Security check $facid =GETPOST('facid','int'); diff --git a/htdocs/compta/paiement/rapport.php b/htdocs/compta/paiement/rapport.php index 9c8febe9e1a..eeeaa715718 100644 --- a/htdocs/compta/paiement/rapport.php +++ b/htdocs/compta/paiement/rapport.php @@ -1,6 +1,6 @@ - * Copyright (C) 2004-2011 Laurent Destailleur + * Copyright (C) 2004-2014 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 @@ -32,16 +32,16 @@ if (! $user->rights->facture->lire) accessforbidden(); $action=GETPOST('action'); -$dir = $conf->facture->dir_output.'/payments'; - $socid=0; if ($user->societe_id > 0) { $action = ''; $socid = $user->societe_id; - $dir = $conf->facture->dir_output.'/payments/private/'.$user->id; } +$dir = $conf->facture->dir_output.'/payments'; +if (! $user->rights->societe->client->voir || $socid) $dir.='/private/'.$user->id; // If user has no permission to see all, output dir is specific to user + $year = $_GET["year"]; if (! $year) { $year=date("Y"); } diff --git a/htdocs/contact/class/contact.class.php b/htdocs/contact/class/contact.class.php index 64cef78239d..91e814be7c9 100644 --- a/htdocs/contact/class/contact.class.php +++ b/htdocs/contact/class/contact.class.php @@ -7,6 +7,7 @@ * Copyright (C) 2008 Raphael Bertrand (Resultic) * Copyright (C) 2013 Florian Henry * Copyright (C) 2013 Alexandre Spangaro + * Copyright (C) 2013 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 @@ -66,7 +67,7 @@ class Contact extends CommonObject var $code; var $email; - var $skype; + var $skype; var $jabberid; var $phone_pro; var $phone_perso; @@ -102,6 +103,7 @@ class Contact extends CommonObject function __construct($db) { $this->db = $db; + $this->statut = 1; // By default, status is enabled } /** @@ -124,9 +126,9 @@ class Contact extends CommonObject $this->firstname=trim($this->firstname); if (! empty($conf->global->MAIN_FIRST_TO_UPPER)) $this->lastname=ucwords($this->lastname); if (! empty($conf->global->MAIN_FIRST_TO_UPPER)) $this->firstname=ucwords($this->firstname); - if (! $this->socid) $this->socid = 0; - if (! $this->priv) $this->priv = 0; - if (empty($this->statut)) $this->statut = 0; + if (empty($this->socid)) $this->socid = 0; + if (empty($this->priv)) $this->priv = 0; + if (empty($this->statut)) $this->statut = 0; // This is to convert '' into '0' to avoid bad sql request $sql = "INSERT INTO ".MAIN_DB_PREFIX."socpeople ("; $sql.= " datec"; @@ -236,7 +238,7 @@ class Contact extends CommonObject $this->phone_perso=trim($this->phone_perso); $this->phone_mobile=trim($this->phone_mobile); $this->jabberid=trim($this->jabberid); - $this->skype=trim($this->skype); + $this->skype=trim($this->skype); $this->fax=trim($this->fax); $this->zip=(empty($this->zip)?'':$this->zip); $this->town=(empty($this->town)?'':$this->town); @@ -260,7 +262,7 @@ class Contact extends CommonObject $sql .= ", poste='".$this->db->escape($this->poste)."'"; $sql .= ", fax='".$this->db->escape($this->fax)."'"; $sql .= ", email='".$this->db->escape($this->email)."'"; - $sql .= ", skype='".$this->db->escape($this->skype)."'"; + $sql .= ", skype='".$this->db->escape($this->skype)."'"; $sql .= ", note_private = ".(isset($this->note_private)?"'".$this->db->escape($this->note_private)."'":"null"); $sql .= ", note_public = ".(isset($this->note_public)?"'".$this->db->escape($this->note_public)."'":"null"); $sql .= ", phone = ".(isset($this->phone_pro)?"'".$this->db->escape($this->phone_pro)."'":"null"); @@ -1099,7 +1101,5 @@ class Contact extends CommonObject } } - - } ?> diff --git a/htdocs/contact/fiche.php b/htdocs/contact/fiche.php index 88585a230af..0becec81abb 100644 --- a/htdocs/contact/fiche.php +++ b/htdocs/contact/fiche.php @@ -744,11 +744,17 @@ else print $form->selectarray('priv',$selectarray,$object->priv,0); print ''; - // Note - print ''.$langs->trans("Note").''; - print ''; + // Note Public + print ''.$langs->trans("NotePublic").''; + $doleditor = new DolEditor('note_public', $object->note_public, '', 80, 'dolibarr_notes', 'In', 0, false, true, ROWS_3, 70); + print $doleditor->Create(1); + print ''; + + // Note Private + print ''.$langs->trans("NotePrivate").''; + $doleditor = new DolEditor('note_private', $object->note_private, '', 80, 'dolibarr_notes', 'In', 0, false, true, ROWS_3, 70); + print $doleditor->Create(1); + print ''; // Statut print ''.$langs->trans("Status").''; @@ -961,10 +967,14 @@ else print $object->LibPubPriv($object->priv); print ''; - // Note - print ''.$langs->trans("Note").''; - print nl2br($object->note); + // Note Public + print ''.$langs->trans("NotePublic").''; + print nl2br($object->note_public); print ''; + + // Note Private + print ''.$langs->trans("NotePrivate").''; + print nl2br($object->note_private); // Statut print ''.$langs->trans("Status").''; diff --git a/htdocs/contrat/fiche.php b/htdocs/contrat/fiche.php index 06b408d4fa2..613b235826e 100644 --- a/htdocs/contrat/fiche.php +++ b/htdocs/contrat/fiche.php @@ -241,8 +241,8 @@ if ($action == 'add' && $user->rights->contrat->creer) for ($i=0;$i<$num;$i++) { $product_type=($lines[$i]->product_type?$lines[$i]->product_type:0); - - if ($product_type == 1) { //only services + + if ($product_type == 1) { //only services // TODO Exclude also deee // service prédéfini if ($lines[$i]->fk_product > 0) { @@ -286,8 +286,8 @@ if ($action == 'add' && $user->rights->contrat->creer) $lines[$i]->localtax2_tx, $lines[$i]->fk_product, $lines[$i]->remise_percent, - $date_start =0, - $date_end =0, + $lines[$i]->date_start, + $lines[$i]->date_end, 'HT', 0, $lines[$i]->info_bits, @@ -303,7 +303,6 @@ if ($action == 'add' && $user->rights->contrat->creer) } } - } else { diff --git a/htdocs/core/boxes/box_graph_product_distribution.php b/htdocs/core/boxes/box_graph_product_distribution.php index a39b0acf1cb..521dd33f0e2 100644 --- a/htdocs/core/boxes/box_graph_product_distribution.php +++ b/htdocs/core/boxes/box_graph_product_distribution.php @@ -103,9 +103,9 @@ class box_graph_product_distribution extends ModeleBoxes $showordernb=$tmparray['showordernb']; } if (empty($showinvoicenb) && empty($showpropalnb) && empty($showordernb)) { $showpropalnb=1; $showinvoicenb=1; $showordernb=1; } - if (empty($conf->facture->enabled) || empty($user->rights->facture->lire)) $showinvoicenb=0; - if (empty($conf->propal->enabled) || empty($user->rights->propal->lire)) $showpropalnb=0; - if (empty($conf->commande->enabled) || empty($user->rights->commande->lire)) $showordernb=0; + if (empty($conf->facture->enabled) || empty($user->rights->facture->lire)) $showinvoicenb=0; + if (empty($conf->propal->enabled) || empty($user->rights->propal->lire)) $showpropalnb=0; + if (empty($conf->commande->enabled) || empty($user->rights->commande->lire)) $showordernb=0; $nowarray=dol_getdate(dol_now(),true); if (empty($year)) $year=$nowarray['year']; @@ -114,30 +114,30 @@ class box_graph_product_distribution extends ModeleBoxes if ($showinvoicenb) $nbofgraph++; if ($showpropalnb) $nbofgraph++; if ($showordernb) $nbofgraph++; - + $paramtitle=$langs->trans("Products").'/'.$langs->trans("Services"); if (empty($conf->produit->enabled)) $paramtitle=$langs->trans("Services"); if (empty($conf->service->enabled)) $paramtitle=$langs->trans("Products"); $socid=empty($user->societe_id)?0:$user->societe_id; $userid=0; // No filter on user creation - + + $WIDTH=($nbofgraph >= 2 || ! empty($conf->dol_optimize_smallscreen))?'160':'320'; + $HEIGHT='192'; + if (! empty($conf->facture->enabled) && ! empty($user->rights->facture->lire)) { - - $WIDTH=($nbofgraph >= 2 || ! empty($conf->dol_optimize_smallscreen))?'160':'320'; - $HEIGHT='192'; - + // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showinvoicenb) { include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facturestats.class.php'; - + $showpointvalue = 1; $nocolor = 0; $mode='customer'; $stats_invoice = new FactureStats($this->db, $socid, $mode, ($userid>0?$userid:0)); $data1 = $stats_invoice->getAllByProductEntry($year,(GETPOST('action')==$refreshaction?-1:(3600*24))); - if (empty($data1)) + if (empty($data1)) { $showpointvalue=0; $nocolor=1; @@ -157,10 +157,10 @@ class box_graph_product_distribution extends ModeleBoxes $legend[]=$data1[$i][0]; $i++; } - + $px1->SetData($data1); unset($data1); - + if ($nocolor) $px1->SetDataColor(array(array(220,220,220))); $px1->SetPrecisionY(0); $px1->SetLegend($legend); @@ -178,29 +178,29 @@ class box_graph_product_distribution extends ModeleBoxes //$px1->mode='depth'; $px1->SetType(array('pie')); $px1->SetTitle($langs->trans("BoxProductDistributionFor",$paramtitle,$langs->transnoentitiesnoconv("Invoices"))); - + $px1->draw($filenamenb,$fileurlnb); } } } - + if (! empty($conf->propal->enabled) && ! empty($user->rights->propal->lire)) { // Build graphic number of object. $data = array(array('Lib',val1,val2,val3),...) if ($showpropalnb) { include_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propalestats.class.php'; - + $showpointvalue = 1; $nocolor = 0; $stats_proposal = new PropaleStats($this->db, $socid, ($userid>0?$userid:0)); $data2 = $stats_proposal->getAllByProductEntry($year,(GETPOST('action')==$refreshaction?-1:(3600*24))); - if (empty($data2)) + if (empty($data2)) { $showpointvalue = 0; $nocolor = 1; $data2=array(array(0=>$langs->trans("None"),1=>1)); } - + $filenamenb = $dir."/prodserforpropal-".$year.".png"; $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=proposalstats&file=prodserforpropal-'.$year.'.png'; @@ -215,10 +215,10 @@ class box_graph_product_distribution extends ModeleBoxes $legend[]=$data2[$i][0]; $i++; } - + $px2->SetData($data2); unset($data2); - + if ($nocolor) $px2->SetDataColor(array(array(220,220,220))); $px2->SetPrecisionY(0); $px2->SetLegend($legend); @@ -248,18 +248,18 @@ class box_graph_product_distribution extends ModeleBoxes if ($showordernb) { include_once DOL_DOCUMENT_ROOT.'/commande/class/commandestats.class.php'; - + $showpointvalue = 1; $nocolor = 0; $mode='customer'; $stats_order = new CommandeStats($this->db, $socid, $mode, ($userid>0?$userid:0)); $data3 = $stats_order->getAllByProductEntry($year,(GETPOST('action')==$refreshaction?-1:(3600*24))); - if (empty($data3)) + if (empty($data3)) { $showpointvalue = 0; $nocolor = 1; $data3=array(array(0=>$langs->trans("None"),1=>1)); } - + $filenamenb = $dir."/prodserfororder-".$year.".png"; $fileurlnb = DOL_URL_ROOT.'/viewimage.php?modulepart=orderstats&file=prodserfororder-'.$year.'.png'; @@ -274,10 +274,10 @@ class box_graph_product_distribution extends ModeleBoxes $legend[]=$data3[$i][0]; $i++; } - + $px3->SetData($data3); unset($data3); - + if ($nocolor) $px3->SetDataColor(array(array(220,220,220))); $px3->SetPrecisionY(0); $px3->SetLegend($legend); @@ -299,7 +299,7 @@ class box_graph_product_distribution extends ModeleBoxes } } } - + if (! $mesg) { $stringtoshow=''; @@ -314,17 +314,17 @@ class box_graph_product_distribution extends ModeleBoxes $stringtoshow.=''; $stringtoshow.=''; $stringtoshow.=''; - if (! empty($conf->facture->enabled) || ! empty($user->rights->facture->lire)) + if (! empty($conf->facture->enabled) || ! empty($user->rights->facture->lire)) { $stringtoshow.=' '.$langs->trans("ForCustomersInvoices"); $stringtoshow.='   '; } - if (! empty($conf->propal->enabled) || ! empty($user->rights->propal->lire)) + if (! empty($conf->propal->enabled) || ! empty($user->rights->propal->lire)) { $stringtoshow.=' '.$langs->trans("ForProposals"); $stringtoshow.=' '; } - if (! empty($conf->commande->enabled) || ! empty($user->rights->commande->lire)) + if (! empty($conf->commande->enabled) || ! empty($user->rights->commande->lire)) { $stringtoshow.=' '.$langs->trans("ForCustomersOrders"); } diff --git a/htdocs/core/class/extrafields.class.php b/htdocs/core/class/extrafields.class.php index 39916775507..277ee0c5ccd 100644 --- a/htdocs/core/class/extrafields.class.php +++ b/htdocs/core/class/extrafields.class.php @@ -939,17 +939,20 @@ class ExtraFields { $sql.= ' as main'; } - $sql.= ' WHERE '.$selectkey.'=\''.$this->db->escape($value).'\''; + $sql.= " WHERE ".$selectkey."='".$this->db->escape($value)."'"; //$sql.= ' AND entity = '.$conf->entity; + dol_syslog(get_class($this).':showOutputField:$type=sellist sql='.$sql); $resql = $this->db->query($sql); if ($resql) { + $value=''; // value was used, so now we reste it to use it to build final output + $obj = $this->db->fetch_object($resql); // Several field into label (eq table:code|libelle:rowid) $fields_label = explode('|',$InfoFieldList[1]); - + if(is_array($fields_label)) { foreach ($fields_label as $field_toshow) @@ -972,6 +975,7 @@ class ExtraFields } } } + else dol_syslog(get_class($this).'::showOutputField error '.$this->db->lasterror(), LOG_WARNING); } elseif ($type == 'radio') { diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index f2a3ea58754..8b572bc5635 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -3735,15 +3735,16 @@ class Form * @param int $maxlen Length maximum for labels * @param int $disabled Html select box is disabled * @param int $sort 'ASC' or 'DESC' =Sort on label, '' or 'NONE'=Do not sort + * @param string $morecss Add more class to css styles * @return string HTML select string */ - function selectarray($htmlname, $array, $id='', $show_empty=0, $key_in_label=0, $value_as_key=0, $option='', $translate=0, $maxlen=0, $disabled=0, $sort='') + function selectarray($htmlname, $array, $id='', $show_empty=0, $key_in_label=0, $value_as_key=0, $option='', $translate=0, $maxlen=0, $disabled=0, $sort='', $morecss='') { global $langs; if ($value_as_key) $array=array_combine($array, $array); - $out=''; if ($show_empty) { diff --git a/htdocs/core/lib/agenda.lib.php b/htdocs/core/lib/agenda.lib.php index 8fd4eda6010..e66d24e576e 100644 --- a/htdocs/core/lib/agenda.lib.php +++ b/htdocs/core/lib/agenda.lib.php @@ -46,7 +46,7 @@ function print_actions_filter($form, $canedit, $status, $year, $month, $day, $showbirthday, $filtera, $filtert, $filterd, $pid, $socid, $showextcals=array(), $actioncode='') { global $conf, $user, $langs, $db; - + // Filters print ''; print ''; @@ -56,63 +56,63 @@ function print_actions_filter($form, $canedit, $status, $year, $month, $day, $sh print ''; print ''; print ''; - + print ''; - + // Buttons print ''; - + // Legend if ($conf->use_javascript_ajax && is_array($showextcals)) { @@ -144,22 +144,24 @@ function print_actions_filter($form, $canedit, $status, $year, $month, $day, $sh foreach ($showextcals as $val) { $htmlname = dol_string_nospecial($val['name']); + print ''; + print ' ' . $val ['name']; + print ''; } } } - print ''; + print ''; print '
'; - + print ''; - + if ($canedit) { print ''; print ''; print ''; - + print ''; print ''; - + print ''; print ''; - + include_once DOL_DOCUMENT_ROOT . '/core/class/html.formactions.class.php'; $formactions=new FormActions($db); print ''; print ''; } - + if (! empty($conf->projet->enabled) && $user->rights->projet->lire) { require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php'; $formproject=new FormProjets($db); - + print ''; print ''; } - + print '
'; print $langs->trans("ActionsAskedBy"); - print '  '; + print '  '; print $form->select_dolusers($filtera, 'userasked', 1, '', ! $canedit); print '
'; print $langs->trans("or") . ' ' . $langs->trans("ActionsToDoBy"); - print '  '; + print '  '; print $form->select_dolusers($filtert, 'usertodo', 1, '', ! $canedit); print '
'; print $langs->trans("or") . ' ' . $langs->trans("ActionsDoneBy"); - print '  '; + print '  '; print $form->select_dolusers($filterd, 'userdone', 1, '', ! $canedit); print '
'; print $langs->trans("Type"); - print '  '; - + print '  '; + print $formactions->select_type_actions($actioncode, "actioncode", '', (empty($conf->global->AGENDA_USE_EVENT_TYPE) ? 1 : 0)); - + print '
'; print $langs->trans("Project").'   '; - print ''; + print ''; $formproject->select_projects($socid?$socid:-1, $pid, 'projectid', 64); print '
'; print '
'; print img_picto($langs->trans("ViewCal"), 'object_calendar', 'class="hideonsmartphone"') . ' '; @@ -123,7 +123,7 @@ function print_actions_filter($form, $canedit, $status, $year, $month, $day, $sh print '
'; print img_picto($langs->trans("ViewList"), 'object_list', 'class="hideonsmartphone"') . ' '; print '
'; print '' . "\n"; - print '
' . $val ['name'] . '
' . $langs->trans("AgendaShowBirthdayEvents") . '
'.$langs->trans("AgendaShowBirthdayEvents").'
'; print ''; } - + print ''; - + print ''; print ''; } @@ -432,6 +434,10 @@ function actions_prepare_head($object) $head[$h][1] = $langs->trans('Info'); $head[$h][2] = 'info'; $h++; + + complete_head_from_modules($conf,$langs,$object,$head,$h,'action'); + + complete_head_from_modules($conf,$langs,$object,$head,$h,'action','remove'); return $head; } diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index a81eff0e5c3..4de405e3567 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -127,7 +127,7 @@ function societe_prepare_head($object) // Attached files require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; $upload_dir = $conf->societe->dir_output . "/" . $object->id; - $nbFiles = count(dol_dir_list($upload_dir)); + $nbFiles = count(dol_dir_list($upload_dir,'files')); $head[$h][0] = DOL_URL_ROOT.'/societe/document.php?socid='.$object->id; $head[$h][1] = $langs->trans("Documents"); if($nbFiles > 0) $head[$h][1].= ' ('.$nbFiles.')'; @@ -620,7 +620,7 @@ function show_contacts($conf,$langs,$db,$object,$backtopage='') // Copy to clipboard print " "; - + // Add to agenda if (! empty($conf->agenda->enabled) && $user->rights->agenda->myactions->create) { @@ -725,7 +725,7 @@ function show_contacts($conf,$langs,$db,$object,$backtopage='') if (!empty($object->country)) $coords .= "
".addslashes($object->country); } - + print ''; print img_picto($langs->trans("Address"), 'object_address.png'); print ''; @@ -744,7 +744,7 @@ function show_contacts($conf,$langs,$db,$object,$backtopage='') print img_object($langs->trans("Event"),"action"); print ''; } - + // Edit if ($user->rights->societe->contact->creer) { diff --git a/htdocs/core/lib/functions2.lib.php b/htdocs/core/lib/functions2.lib.php index 3fc40f8c8fe..c315939d327 100644 --- a/htdocs/core/lib/functions2.lib.php +++ b/htdocs/core/lib/functions2.lib.php @@ -551,9 +551,9 @@ function get_next_value($db,$mask,$table,$field,$where='',$objsoc='',$date='',$m // For debugging //include_once(DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php'); - //$mask='{yyyy}-{0000}'; + //$mask='FA{yy}{mm}-{0000@99}'; //$date=dol_mktime(12, 0, 0, 1, 1, 1900); - //$date=dol_stringtotime('20121001'); + //$date=dol_stringtotime('20130101'); // Extract value for mask counter, mask raz and mask offset if (! preg_match('/\{(0+)([@\+][0-9\-\+\=]+)?([@\+][0-9\-\+\=]+)?\}/i',$mask,$reg)) return 'ErrorBadMask'; diff --git a/htdocs/core/lib/invoice.lib.php b/htdocs/core/lib/invoice.lib.php index 3ad2787826f..b3983a0c5ab 100644 --- a/htdocs/core/lib/invoice.lib.php +++ b/htdocs/core/lib/invoice.lib.php @@ -132,11 +132,13 @@ function invoice_admin_prepare_head($object) $head[$h][2] = 'attributes'; $h++; + if ($conf->global->MAIN_FEATURES_LEVEL >= 2) // FIXME This feature will works when form for predefined and free product will be merged, otherwise there is duplicate fields with same name + { $head[$h][0] = DOL_URL_ROOT.'/compta/facture/admin/facturedet_cust_extrafields.php'; $head[$h][1] = $langs->trans("ExtraFieldsLines"); $head[$h][2] = 'attributeslines'; $h++; - + } complete_head_from_modules($conf,$langs,$object,$head,$h,'invoice_admin','remove'); diff --git a/htdocs/core/lib/order.lib.php b/htdocs/core/lib/order.lib.php index 216887139d4..46dca55fb3a 100644 --- a/htdocs/core/lib/order.lib.php +++ b/htdocs/core/lib/order.lib.php @@ -138,10 +138,13 @@ function order_admin_prepare_head($object) $head[$h][2] = 'attributes'; $h++; + if ($conf->global->MAIN_FEATURES_LEVEL >= 2) // FIXME This feature will works when form for predefined and free product will be merged, otherwise there is duplicate fields with same name + { $head[$h][0] = DOL_URL_ROOT.'/admin/orderdet_extrafields.php'; $head[$h][1] = $langs->trans("ExtraFieldsLines"); $head[$h][2] = 'attributeslines'; $h++; + } complete_head_from_modules($conf,$langs,$object,$head,$h,'order_admin','remove'); diff --git a/htdocs/core/lib/product.lib.php b/htdocs/core/lib/product.lib.php index ccebd10cea5..3eb364e7eb6 100644 --- a/htdocs/core/lib/product.lib.php +++ b/htdocs/core/lib/product.lib.php @@ -120,7 +120,7 @@ function product_prepare_head($object, $user) require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; if (! empty($conf->product->enabled)) $upload_dir = $conf->product->multidir_output[$object->entity].'/'.dol_sanitizeFileName($object->ref); elseif (! empty($conf->service->enabled)) $upload_dir = $conf->service->multidir_output[$object->entity].'/'.dol_sanitizeFileName($object->ref); - $nbFiles = count(dol_dir_list($upload_dir)); + $nbFiles = count(dol_dir_list($upload_dir,'files')); $head[$h][0] = DOL_URL_ROOT.'/product/document.php?id='.$object->id; $head[$h][1] = $langs->trans('Documents'); if($nbFiles > 0) $head[$h][1].= ' ('.$nbFiles.')'; diff --git a/htdocs/core/lib/propal.lib.php b/htdocs/core/lib/propal.lib.php index d43885adf95..8f5e61eecee 100644 --- a/htdocs/core/lib/propal.lib.php +++ b/htdocs/core/lib/propal.lib.php @@ -136,10 +136,13 @@ function propal_admin_prepare_head($object) $head[$h][2] = 'attributes'; $h++; + if ($conf->global->MAIN_FEATURES_LEVEL >= 2) // FIXME This feature will works when form for predefined and free product will be merged, otherwise there is duplicate fields with same name + { $head[$h][0] = DOL_URL_ROOT.'/comm/admin/propaldet_extrafields.php'; $head[$h][1] = $langs->trans("ExtraFieldsLines"); $head[$h][2] = 'attributeslines'; $h++; + } complete_head_from_modules($conf,$langs,$object,$head,$h,'propal_admin','remove'); diff --git a/htdocs/core/modules/rapport/pdf_paiement.class.php b/htdocs/core/modules/rapport/pdf_paiement.class.php index b7e2f8e5d91..3d3c45e1963 100644 --- a/htdocs/core/modules/rapport/pdf_paiement.class.php +++ b/htdocs/core/modules/rapport/pdf_paiement.class.php @@ -1,6 +1,6 @@ - * Copyright (C) 2006-2009 Laurent Destailleur + * Copyright (C) 2006-2014 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 @@ -93,6 +93,9 @@ class pdf_paiement global $user,$langs,$conf; + $socid=0; + if ($user->societe_id) $socid=$user->societe_id; + if (! is_object($outputlangs)) $outputlangs=$langs; // For backward compatibility with FPDF, force output charset to ISO, because FPDF expect text to be encoded in ISO if (! empty($conf->global->MAIN_USE_FPDF)) $outputlangs->charset_output='ISO-8859-1'; @@ -136,11 +139,21 @@ class pdf_paiement $sql.= ", pf.amount as pf_amount "; $sql.= ", p.rowid as prowid"; $sql.= " FROM ".MAIN_DB_PREFIX."paiement as p, ".MAIN_DB_PREFIX."facture as f,"; - $sql.= " ".MAIN_DB_PREFIX."c_paiement as c, ".MAIN_DB_PREFIX."paiement_facture as pf"; - $sql.= " WHERE pf.fk_facture = f.rowid AND pf.fk_paiement = p.rowid"; + $sql.= " ".MAIN_DB_PREFIX."c_paiement as c, ".MAIN_DB_PREFIX."paiement_facture as pf,"; + $sql.= " ".MAIN_DB_PREFIX."societe as s"; + if (! $user->rights->societe->client->voir && ! $socid) + { + $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; + } + $sql.= " WHERE f.fk_soc = s.rowid AND pf.fk_facture = f.rowid AND pf.fk_paiement = p.rowid"; $sql.= " AND f.entity = ".$conf->entity; $sql.= " AND p.fk_paiement = c.id "; $sql.= " AND p.datep BETWEEN '".$this->db->idate(dol_get_first_day($year,$month))."' AND '".$this->db->idate(dol_get_last_day($year,$month))."'"; + if (! $user->rights->societe->client->voir && ! $socid) + { + $sql .= " AND s.rowid = sc.fk_soc AND sc.fk_user = " .$user->id; + } + if (! empty($socid)) $sql .= " AND s.rowid = ".$socid; $sql.= " ORDER BY p.datep ASC, pf.fk_paiement ASC"; dol_syslog(get_class($this)."::write_file sql=".$sql); diff --git a/htdocs/core/tpl/document_actions_post_headers.tpl.php b/htdocs/core/tpl/document_actions_post_headers.tpl.php index 20005b08528..eeb598d20f8 100644 --- a/htdocs/core/tpl/document_actions_post_headers.tpl.php +++ b/htdocs/core/tpl/document_actions_post_headers.tpl.php @@ -25,6 +25,7 @@ $langs->load("link"); if ($action == 'delete') { + $langs->load("companies"); // Need for string DeleteFile+ConfirmDeleteFiles $ret = $form->form_confirm( $_SERVER["PHP_SELF"] . '?id=' . $object->id . '&urlfile=' . urlencode(GETPOST("urlfile")) . '&linkid=' . GETPOST('linkid', 'int'), $langs->trans('DeleteFile'), diff --git a/htdocs/document.php b/htdocs/document.php index 9815bbdd7e6..bb6bd032301 100644 --- a/htdocs/document.php +++ b/htdocs/document.php @@ -66,6 +66,14 @@ $entity=GETPOST('entity')?GETPOST('entity','int'):$conf->entity; // Security check if (empty($modulepart)) accessforbidden('Bad value for parameter modulepart'); +$socid=0; +if ($user->societe_id > 0) $socid = $user->societe_id; + +// For some module part, dir may be privates +if (in_array($modulepart,array('facture_paiement','unpaid'))) +{ + if (! $user->rights->societe->client->voir || $socid) $original_file='private/'.$user->id.'/'.$original_file; // If user has no permission to see all, output dir is specific to user +} /* * Action diff --git a/htdocs/ecm/index.php b/htdocs/ecm/index.php index e7e4498f99d..8cdcc3c2000 100644 --- a/htdocs/ecm/index.php +++ b/htdocs/ecm/index.php @@ -1,5 +1,5 @@ +/* Copyright (C) 2008-2014 Laurent Destailleur * Copyright (C) 2008-2010 Regis Houssin * * This program is free software; you can redistribute it and/or modify @@ -401,8 +401,9 @@ llxHeader($moreheadcss.$moreheadjs,$langs->trans("ECMArea"),'','','','',$morejs, // Add sections to manage $rowspan=0; $sectionauto=array(); -if (!empty($conf->global->ECM_AUTO_TREE_ENABLED)) { - if (! empty($conf->product->enabled) || ! empty($conf->service->enabled)) { $rowspan++; $sectionauto[]=array('level'=>1, 'module'=>'product', 'test'=>(! empty($conf->product->enabled) || ! empty($conf->service->enabled)), 'label'=>$langs->trans("ProductsAndServices"), 'desc'=>$langs->trans("ECMDocsByProducts")); } +if (! empty($conf->global->ECM_AUTO_TREE_ENABLED)) +{ + if (! empty($conf->product->enabled) || ! empty($conf->service->enabled)) { $langs->load("products"); $rowspan++; $sectionauto[]=array('level'=>1, 'module'=>'product', 'test'=>(! empty($conf->product->enabled) || ! empty($conf->service->enabled)), 'label'=>$langs->trans("ProductsAndServices"), 'desc'=>$langs->trans("ECMDocsByProducts")); } if (! empty($conf->societe->enabled)) { $rowspan++; $sectionauto[]=array('level'=>1, 'module'=>'company', 'test'=>$conf->societe->enabled, 'label'=>$langs->trans("ThirdParties"), 'desc'=>$langs->trans("ECMDocsByThirdParties")); } if (! empty($conf->propal->enabled)) { $rowspan++; $sectionauto[]=array('level'=>1, 'module'=>'propal', 'test'=>$conf->propal->enabled, 'label'=>$langs->trans("Prop"), 'desc'=>$langs->trans("ECMDocsByProposals")); } if (! empty($conf->contrat->enabled)) { $rowspan++; $sectionauto[]=array('level'=>1, 'module'=>'contract','test'=>$conf->contrat->enabled, 'label'=>$langs->trans("Contracts"), 'desc'=>$langs->trans("ECMDocsByContracts")); } @@ -410,7 +411,7 @@ if (!empty($conf->global->ECM_AUTO_TREE_ENABLED)) { if (! empty($conf->facture->enabled)) { $rowspan++; $sectionauto[]=array('level'=>1, 'module'=>'invoice', 'test'=>$conf->facture->enabled, 'label'=>$langs->trans("CustomersInvoices"), 'desc'=>$langs->trans("ECMDocsByInvoices")); } if (! empty($conf->fournisseur->enabled)) { $rowspan++; $sectionauto[]=array('level'=>1, 'module'=>'order_supplier', 'test'=>$conf->fournisseur->enabled, 'label'=>$langs->trans("SuppliersOrders"), 'desc'=>$langs->trans("ECMDocsByOrders")); } if (! empty($conf->fournisseur->enabled)) { $rowspan++; $sectionauto[]=array('level'=>1, 'module'=>'invoice_supplier', 'test'=>$conf->fournisseur->enabled, 'label'=>$langs->trans("SuppliersInvoices"), 'desc'=>$langs->trans("ECMDocsByInvoices")); } - if (! empty($conf->tax->enabled)) { $rowspan++; $sectionauto[]=array('level'=>1, 'module'=>'tax', 'test'=>$conf->tax->enabled, 'label'=>$langs->trans("SocialContributions"), 'desc'=>$langs->trans("ECMDocsBySocialContributions")); } + if (! empty($conf->tax->enabled)) { $langs->load("compta"); $rowspan++; $sectionauto[]=array('level'=>1, 'module'=>'tax', 'test'=>$conf->tax->enabled, 'label'=>$langs->trans("SocialContributions"), 'desc'=>$langs->trans("ECMDocsBySocialContributions")); } if (! empty($conf->projet->enabled)) { $rowspan++; $sectionauto[]=array('level'=>1, 'module'=>'project', 'test'=>$conf->projet->enabled, 'label'=>$langs->trans("Projects"), 'desc'=>$langs->trans("ECMDocsByProjects")); } } @@ -803,7 +804,7 @@ if ((! empty($conf->use_javascript_ajax) && empty($conf->global->MAIN_ECM_DISABL form_attach_new_file(DOL_URL_ROOT.'/ecm/index.php', 'none', 0, ($section?$section:-1), $user->rights->ecm->upload, 48, null, '', 0, '', 0, 'formuserfile'); } diff --git a/htdocs/fourn/facture/contact.php b/htdocs/fourn/facture/contact.php index c5205c47815..9010abbb50f 100644 --- a/htdocs/fourn/facture/contact.php +++ b/htdocs/fourn/facture/contact.php @@ -155,7 +155,7 @@ if ($id > 0 || ! empty($ref)) // Third party print "".$langs->trans("Supplier").""; - print ''.$object->client->getNomUrl(1,'compta').''; + print ''.$object->thirdparty->getNomUrl(1,'supplier').''; print ""; print ''; diff --git a/htdocs/fourn/facture/document.php b/htdocs/fourn/facture/document.php index 1cd4d982466..6c47f66ec7d 100644 --- a/htdocs/fourn/facture/document.php +++ b/htdocs/fourn/facture/document.php @@ -120,7 +120,7 @@ if ($object->id > 0) print "\n"; // Thirdparty - print ''.$langs->trans('Supplier').''.$object->thirdparty->getNomUrl(1).''; + print ''.$langs->trans('Supplier').''.$object->thirdparty->getNomUrl(1,'supplier').''; // Type print ''.$langs->trans('Type').''; diff --git a/htdocs/fourn/facture/fiche.php b/htdocs/fourn/facture/fiche.php index 06c8d9d590d..cf47afcf10c 100644 --- a/htdocs/fourn/facture/fiche.php +++ b/htdocs/fourn/facture/fiche.php @@ -1520,7 +1520,7 @@ else print ''; // Third party - print ''.$langs->trans('Supplier').''.$societe->getNomUrl(1); + print ''.$langs->trans('Supplier').''.$societe->getNomUrl(1,'supplier'); print '   ('.$langs->trans('OtherBills').')'; print ''; diff --git a/htdocs/fourn/facture/note.php b/htdocs/fourn/facture/note.php index b4bb99dcefc..7947b9be020 100644 --- a/htdocs/fourn/facture/note.php +++ b/htdocs/fourn/facture/note.php @@ -101,7 +101,7 @@ if ($object->id > 0) print "\n"; // Company - print ''.$langs->trans('Supplier').''.$object->thirdparty->getNomUrl(1).''; + print ''.$langs->trans('Supplier').''.$object->thirdparty->getNomUrl(1,'supplier').''; // Type print ''.$langs->trans('Type').''; diff --git a/htdocs/index.php b/htdocs/index.php index a93e0f10a54..1c30610ba73 100644 --- a/htdocs/index.php +++ b/htdocs/index.php @@ -52,7 +52,11 @@ if (!isset($conf->global->MAIN_INFO_SOCIETE_NOM) || empty($conf->global->MAIN_IN * View */ -llxHeader('',$langs->trans("HomeArea")); +// Title +$title=$langs->trans("HomeArea").' - Dolibarr '.DOL_VERSION; +if (! empty($conf->global->MAIN_APPLICATION_TITLE)) $title=$langs->trans("HomeArea").' - '.$conf->global->MAIN_APPLICATION_TITLE; + +llxHeader('',$title); print_fiche_titre($langs->trans("HomeArea")); @@ -238,20 +242,15 @@ if (empty($user->societe_id)) $var=!$var; if ($langfile[$key]) $langs->load($langfile[$key]); - $title=$langs->trans($titres[$key]); - /*print ''.img_object($title,$icons[$key]).''; - print ''.$title.''; - print ''.$board->nb[$val].''; - print ''; - */ + $text=$langs->trans($titres[$key]); print ''; print ''; + print ''; } } } diff --git a/htdocs/public/demo/index.php b/htdocs/public/demo/index.php index c962227f18c..0948be50631 100644 --- a/htdocs/public/demo/index.php +++ b/htdocs/public/demo/index.php @@ -308,7 +308,7 @@ llxHeaderVierge($langs->trans("DolibarrDemo"), $head); print "\n"; -print ''; +print '
'; print '
'; print '
Dolibarr logo

'; diff --git a/htdocs/public/test/test_arrays.php b/htdocs/public/test/test_arrays.php index 4a4e7bc6f74..fb8274e5524 100644 --- a/htdocs/public/test/test_arrays.php +++ b/htdocs/public/test/test_arrays.php @@ -4,7 +4,7 @@ define("NOCSRFCHECK",1); // We accept to go on this page from external web site. require '../../main.inc.php'; -if (!empty($conf->global->MAIN_FEATURES_LEVEL)) +if (empty($conf->global->MAIN_FEATURES_LEVEL)) { print "Page available onto dev environment only"; exit; diff --git a/htdocs/societe/admin/societe.php b/htdocs/societe/admin/societe.php index 98f8e79fd1c..9834959273c 100644 --- a/htdocs/societe/admin/societe.php +++ b/htdocs/societe/admin/societe.php @@ -68,33 +68,36 @@ if ($action == 'setcodecompta') } } -if ($action == 'COMPANY_USE_SEARCH_TO_SELECT') +if ($action == 'updateoptions') { - $companysearch = GETPOST('activate_COMPANY_USE_SEARCH_TO_SELECT','alpha'); - $res = dolibarr_set_const($db, "COMPANY_USE_SEARCH_TO_SELECT", $companysearch,'chaine',0,'',$conf->entity); - if (! $res > 0) $error++; - if (! $error) - { - $mesg = "".$langs->trans("SetupSaved").""; - } - else - { - $mesg = "".$langs->trans("Error").""; - } -} - -if ($action == 'CONTACT_USE_SEARCH_TO_SELECT') -{ - $contactsearch = GETPOST('activate_CONTACT_USE_SEARCH_TO_SELECT','alpha'); - $res = dolibarr_set_const($db, "CONTACT_USE_SEARCH_TO_SELECT", $contactsearch,'chaine',0,'',$conf->entity); - if (! $res > 0) $error++; - if (! $error) + if (GETPOST('COMPANY_USE_SEARCH_TO_SELECT')) { - $mesg = "".$langs->trans("SetupSaved").""; + $companysearch = GETPOST('activate_COMPANY_USE_SEARCH_TO_SELECT','alpha'); + $res = dolibarr_set_const($db, "COMPANY_USE_SEARCH_TO_SELECT", $companysearch,'chaine',0,'',$conf->entity); + if (! $res > 0) $error++; + if (! $error) + { + $mesg = "".$langs->trans("SetupSaved").""; + } + else + { + $mesg = "".$langs->trans("Error").""; + } } - else + + if (GETPOST('CONTACT_USE_SEARCH_TO_SELECT')) { - $mesg = "".$langs->trans("Error").""; + $contactsearch = GETPOST('activate_CONTACT_USE_SEARCH_TO_SELECT','alpha'); + $res = dolibarr_set_const($db, "CONTACT_USE_SEARCH_TO_SELECT", $contactsearch,'chaine',0,'',$conf->entity); + if (! $res > 0) $error++; + if (! $error) + { + $mesg = "".$langs->trans("SetupSaved").""; + } + else + { + $mesg = "".$langs->trans("Error").""; + } } } @@ -698,6 +701,11 @@ print_titre($langs->trans("Other")); // Autres options $form=new Form($db); $var=true; + +print '
'; +print ''; +print ''; + print ''; print ''; print "\n"; @@ -706,9 +714,6 @@ print ''."\n"; // Utilisation formulaire Ajax sur choix societe $var=!$var; -print ''; -print ''; -print ''; print ""; print ''; if (! $conf->use_javascript_ajax) @@ -727,35 +732,13 @@ else ); print $form->selectarray("activate_COMPANY_USE_SEARCH_TO_SELECT",$arrval,$conf->global->COMPANY_USE_SEARCH_TO_SELECT); print '"; } print ''; -print ''; $var=!$var; print ""; -print ''; -if (!empty($conf->global->SOCIETE_ADD_REF_IN_LIST)) -{ - print ''; -} -else -{ - print ''; -} -print ''; - - -$var=!$var; -print ''; -print ''; -print ''; -print ""; print ''; if (! $conf->use_javascript_ajax) { @@ -773,11 +756,30 @@ else ); print $form->selectarray("activate_CONTACT_USE_SEARCH_TO_SELECT",$arrval,$conf->global->CONTACT_USE_SEARCH_TO_SELECT); print '"; } print ''; + +$var=!$var; +print ""; +print ''; +if (!empty($conf->global->SOCIETE_ADD_REF_IN_LIST)) +{ + print ''; +} +else +{ + print ''; +} +print ''; + + /* // COMPANY_USE_SEARCH_TO_SELECT $var=!$var; @@ -800,6 +802,7 @@ print ''; print '
".$langs->trans("Parameters")." 
'.$langs->trans("UseSearchToSelectCompany").''; - print ''; + print ''; print "
'.$langs->trans("AddRefInList").''; - print img_picto($langs->trans("Activated"),'switch_on'); - print ''; - print img_picto($langs->trans("Disabled"),'switch_off'); - print '
'.$langs->trans("UseSearchToSelectContact").''; - print ''; + print ''; print "
'.$langs->trans("AddRefInList").''; + print img_picto($langs->trans("Activated"),'switch_on'); + print ''; + print img_picto($langs->trans("Disabled"),'switch_off'); + print '
'; +print ''; dol_fiche_end(); diff --git a/htdocs/theme/amarok/style.css.php b/htdocs/theme/amarok/style.css.php index a7011f06a68..1a6149b76fb 100644 --- a/htdocs/theme/amarok/style.css.php +++ b/htdocs/theme/amarok/style.css.php @@ -70,7 +70,6 @@ if (! empty($conf->global->MAIN_OVERWRITE_THEME_RES)) { $path='/'.$conf->global- $fontlist='helvetica,arial,tahoma,verdana'; //$fontlist='Verdana,Helvetica,Arial,sans-serif'; //'/theme/auguria/img/menus/trtitle.png'; $img_liste_titre=dol_buildpath($path.'/theme/'.$theme.'/img/menus/trtitle.png',1); -$img_head=dol_buildpath($path.'/theme/'.$theme.'/img/headbg2.jpg',1); $img_button=dol_buildpath($path.'/theme/'.$theme.'/img/button_bg.png',1); $dol_hide_topmenu=$conf->dol_hide_topmenu; $dol_hide_leftmenu=$conf->dol_hide_leftmenu;