*
@@ -237,8 +237,9 @@ complete_head_from_modules($conf,$langs,null,$head,$h,$type);
dol_fiche_head($head,'byyear',$langs->trans("Statistics"));
-print '';
-print '';
+
+print '';
+
//if (empty($socid))
//{
@@ -305,8 +306,8 @@ foreach ($data as $val)
print ' |
';
-print '';
-print '';
+print '';
+
// Show graphs
print ' | ';
@@ -320,7 +321,9 @@ else {
}
print ' |
';
-print ' | ';
+
+print '';
+print '';
dol_fiche_end();
diff --git a/htdocs/compta/deplacement/stats/index.php b/htdocs/compta/deplacement/stats/index.php
index 75f059751a3..eade2e3c13d 100755
--- a/htdocs/compta/deplacement/stats/index.php
+++ b/htdocs/compta/deplacement/stats/index.php
@@ -204,8 +204,9 @@ complete_head_from_modules($conf,$langs,null,$head,$h,'trip_stats');
dol_fiche_head($head,'byyear',$langs->trans("Statistics"));
-print '';
-print '';
+
+print '';
+
// Show filter box
print ' |
';
-print '';
-print '';
+print '';
+
// Show graphs
print ' | ';
@@ -281,7 +282,10 @@ else {
}
print ' |
';
-print ' | ';
+
+print '';
+print '';
+
dol_fiche_end();
diff --git a/htdocs/compta/facture/stats/index.php b/htdocs/compta/facture/stats/index.php
index 733d8f467c5..bfc50b11ae8 100644
--- a/htdocs/compta/facture/stats/index.php
+++ b/htdocs/compta/facture/stats/index.php
@@ -214,8 +214,9 @@ complete_head_from_modules($conf,$langs,null,$head,$h,$type);
dol_fiche_head($head,'byyear',$langs->trans("Statistics"));
-print '';
-print '';
+
+print '';
+
//if (empty($socid))
//{
@@ -280,8 +281,8 @@ foreach ($data as $val)
print ' |
';
-print '';
-print '';
+print '';
+
// Show graphs
print ' | ';
@@ -295,7 +296,10 @@ else {
}
print ' |
';
-print ' | ';
+
+print '';
+print '';
+
dol_fiche_end();
diff --git a/htdocs/core/class/menubase.class.php b/htdocs/core/class/menubase.class.php
index 5ebccdeb1bd..6777c37b374 100644
--- a/htdocs/core/class/menubase.class.php
+++ b/htdocs/core/class/menubase.class.php
@@ -535,7 +535,7 @@ class Menubase
if ($menu['perms'])
{
$tmpcond=$menu['perms'];
- if ($leftmenu == 'all') $tmpcond=preg_replace('/\$leftmenu\s*==\s*["\'a-zA-Z]+/','1==1',$tmpcond); // Force part of condition to true
+ if ($leftmenu == 'all') $tmpcond=preg_replace('/\$leftmenu\s*==\s*["\'a-zA-Z_]+/','1==1',$tmpcond); // Force part of condition to true
$perms = verifCond($tmpcond);
//print "verifCond rowid=".$menu['rowid']." ".$tmpcond.":".$perms."
\n";
}
@@ -545,7 +545,7 @@ class Menubase
if ($menu['enabled'])
{
$tmpcond=$menu['enabled'];
- if ($leftmenu == 'all') $tmpcond=preg_replace('/\$leftmenu\s*==\s*["\'a-zA-Z]+/','1==1',$tmpcond); // Force part of condition to true
+ if ($leftmenu == 'all') $tmpcond=preg_replace('/\$leftmenu\s*==\s*["\'a-zA-Z_]+/','1==1',$tmpcond); // Force part of condition to true
$enabled = verifCond($tmpcond);
if ($conf->use_javascript_ajax && ! empty($conf->global->MAIN_MENU_USE_JQUERY_ACCORDION) && preg_match('/^\$leftmenu/',$menu['enabled'])) $enabled=1;
//print "verifCond rowid=".$menu['rowid']." ".$tmpcond.":".$enabled."
\n";
diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php
index 91636c795a8..818345a2f2f 100644
--- a/htdocs/core/lib/functions.lib.php
+++ b/htdocs/core/lib/functions.lib.php
@@ -3598,7 +3598,9 @@ function complete_substitutions_array(&$substitutionarray,$outputlangs,$object='
$module=$reg[1];
dol_syslog("Library functions_".$substitfile['name']." found into ".$dir);
+ // Include the user's functions file
require_once $dir.$substitfile['name'];
+ // Call the user's function, and only if it is defined
$function_name=$module."_".$callfunc;
if (function_exists($function_name)) $function_name($substitutionarray,$outputlangs,$object,$parameters);
}
diff --git a/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php b/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php
index 85da9b96015..5ab40fd1e86 100644
--- a/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php
+++ b/htdocs/core/modules/commande/doc/doc_generic_order_odt.modules.php
@@ -121,14 +121,14 @@ class doc_generic_order_odt extends ModelePDFCommandes
'object_note_private'=>$object->note,
'object_note'=>$object->note_public,
);
-
+
// Add vat by rates
foreach ($object->lines as $line)
{
if (empty($resarray['object_total_vat_'.$line->tva_tx])) $resarray['object_total_vat_'.$line->tva_tx]=0;
$resarray['object_total_vat_'.$line->tva_tx]+=$line->total_tva;
}
-
+
return $resarray;
}
@@ -260,6 +260,15 @@ class doc_generic_order_odt extends ModelePDFCommandes
return -1;
}
+ // Add odtgeneration hook
+ if (! is_object($hookmanager))
+ {
+ include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php';
+ $hookmanager=new HookManager($this->db);
+ }
+ $hookmanager->initHooks(array('odtgeneration'));
+ global $action;
+
if (! is_object($outputlangs)) $outputlangs=$langs;
$sav_charset_output=$outputlangs->charset_output;
$outputlangs->charset_output='UTF-8';
@@ -346,6 +355,9 @@ class doc_generic_order_odt extends ModelePDFCommandes
'__TOTAL_VAT__' => $object->total_vat
);
complete_substitutions_array($substitutionarray, $langs, $object);
+ // Call the ODTSubstitution hook
+ $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs,'substitutionarray'=>&$substitutionarray);
+ $reshook=$hookmanager->executeHooks('ODTSubstitution',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
// Line of free text
$newfreetext='';
@@ -445,6 +457,9 @@ class doc_generic_order_odt extends ModelePDFCommandes
// Replace tags of object + external modules
$tmparray=$this->get_substitutionarray_object($object,$outputlangs);
complete_substitutions_array($tmparray, $outputlangs, $object);
+ // Call the ODTSubstitution hook
+ $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs,'substitutionarray'=>&$tmparray);
+ $reshook=$hookmanager->executeHooks('ODTSubstitution',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
foreach($tmparray as $key=>$value)
{
try {
@@ -470,6 +485,9 @@ class doc_generic_order_odt extends ModelePDFCommandes
{
$tmparray=$this->get_substitutionarray_lines($line,$outputlangs);
complete_substitutions_array($tmparray, $outputlangs, $object, $line, "completesubstitutionarray_lines");
+ // Call the ODTSubstitutionLine hook
+ $parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs,'substitutionarray'=>&$tmparray,'line'=>$line);
+ $reshook=$hookmanager->executeHooks('ODTSubstitutionLine',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
foreach($tmparray as $key => $val)
{
try
@@ -494,15 +512,8 @@ class doc_generic_order_odt extends ModelePDFCommandes
return -1;
}
- // Add odtgeneration hook
- if (! is_object($hookmanager))
- {
- include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php';
- $hookmanager=new HookManager($this->db);
- }
- $hookmanager->initHooks(array('odtgeneration'));
- $parameters=array('odfHandler'=>$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
- global $action;
+ // Call the beforeODTSave hook
+ $parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
// Write new file
diff --git a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php
index fbdccd73eb8..77f673f2220 100644
--- a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php
+++ b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php
@@ -283,6 +283,15 @@ class doc_generic_invoice_odt extends ModelePDFFactures
return -1;
}
+ // Add odtgeneration hook
+ if (! is_object($hookmanager))
+ {
+ include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php';
+ $hookmanager=new HookManager($this->db);
+ }
+ $hookmanager->initHooks(array('odtgeneration'));
+ global $action;
+
if (! is_object($outputlangs)) $outputlangs=$langs;
$sav_charset_output=$outputlangs->charset_output;
$outputlangs->charset_output='UTF-8';
@@ -375,6 +384,9 @@ class doc_generic_invoice_odt extends ModelePDFFactures
'__TOTAL_VAT__' => $object->total_tva
);
complete_substitutions_array($substitutionarray, $langs, $object);
+ // Call the ODTSubstitution hook
+ $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs,'substitutionarray'=>&$substitutionarray);
+ $reshook=$hookmanager->executeHooks('ODTSubstitution',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
// Line of free text
$newfreetext='';
@@ -417,9 +429,12 @@ class doc_generic_invoice_odt extends ModelePDFFactures
$array_objet=$this->get_substitutionarray_object($object,$outputlangs);
$array_propal=is_object($propal_object)?$this->get_substitutionarray_propal($propal_object,$outputlangs,'propal'):array();
$array_other=$this->get_substitutionarray_other($user,$outputlangs);
-
+
$tmparray = array_merge($array_user,$array_soc,$array_thirdparty,$array_objet,$array_propal);
complete_substitutions_array($tmparray, $outputlangs, $object);
+ // Call the ODTSubstitution hook
+ $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs,'substitutionarray'=>&$tmparray);
+ $reshook=$hookmanager->executeHooks('ODTSubstitution',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
//var_dump($tmparray); exit;
foreach($tmparray as $key=>$value)
@@ -448,6 +463,9 @@ class doc_generic_invoice_odt extends ModelePDFFactures
{
$tmparray=$this->get_substitutionarray_lines($line,$outputlangs);
complete_substitutions_array($tmparray, $outputlangs, $object, $line, "completesubstitutionarray_lines");
+ // Call the ODTSubstitutionLine hook
+ $parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs,'substitutionarray'=>&$tmparray,'line'=>$line);
+ $reshook=$hookmanager->executeHooks('ODTSubstitutionLine',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
foreach($tmparray as $key => $val)
{
try
@@ -472,15 +490,8 @@ class doc_generic_invoice_odt extends ModelePDFFactures
return -1;
}
- // Add odtgeneration hook
- if (! is_object($hookmanager))
- {
- include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php';
- $hookmanager=new HookManager($this->db);
- }
- $hookmanager->initHooks(array('odtgeneration'));
- $parameters=array('odfHandler'=>$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
- global $action;
+ // Call the beforeODTSave hook
+ $parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
// Write new file
diff --git a/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php b/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php
index 0878e4da181..df61cbed461 100644
--- a/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php
+++ b/htdocs/core/modules/propale/doc/doc_generic_proposal_odt.modules.php
@@ -149,10 +149,10 @@ class doc_generic_proposal_odt extends ModelePDFPropales
$texte.= '';
// Scan directories
- if (count($listofdir))
+ if (count($listofdir))
{
$texte.=$langs->trans("NumberOfModelFilesFound").': '.count($listoffiles).'';
-
+
if ($conf->global->MAIN_PROPAL_CHOOSE_ODT_DOCUMENT > 0)
{
// Model for creation
@@ -163,14 +163,14 @@ class doc_generic_proposal_odt extends ModelePDFPropales
$texte.= '';
$texte.= $form->selectarray('value2',$liste,$conf->global->PROPALE_ADDON_PDF_ODT_DEFAULT);
$texte.= " | ";
-
+
$texte.= '';
$texte.= '| '.$langs->trans("DefaultModelPropalToBill").' | ';
$texte.= '';
$texte.= $form->selectarray('value3',$liste,$conf->global->PROPALE_ADDON_PDF_ODT_TOBILL);
$texte.= " |
";
$texte.= '';
-
+
$texte.= '| '.$langs->trans("DefaultModelPropalClosed").' | ';
$texte.= '';
$texte.= $form->selectarray('value4',$liste,$conf->global->PROPALE_ADDON_PDF_ODT_CLOSED);
@@ -178,9 +178,9 @@ class doc_generic_proposal_odt extends ModelePDFPropales
$texte.= '';
}
}
-
-
+
+
$texte.= ' | ';
@@ -222,6 +222,15 @@ class doc_generic_proposal_odt extends ModelePDFPropales
return -1;
}
+ // Add odtgeneration hook
+ if (! is_object($hookmanager))
+ {
+ include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php';
+ $hookmanager=new HookManager($this->db);
+ }
+ $hookmanager->initHooks(array('odtgeneration'));
+ global $action;
+
if (! is_object($outputlangs)) $outputlangs=$langs;
$sav_charset_output=$outputlangs->charset_output;
$outputlangs->charset_output='UTF-8';
@@ -308,6 +317,9 @@ class doc_generic_proposal_odt extends ModelePDFPropales
'__TOTAL_VAT__' => $object->total_vat
);
complete_substitutions_array($substitutionarray, $langs, $object);
+ // Call the ODTSubstitution hook
+ $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs,'substitutionarray'=>&$substitutionarray);
+ $reshook=$hookmanager->executeHooks('ODTSubstitution',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
// Line of free text
$newfreetext='';
@@ -408,6 +420,9 @@ class doc_generic_proposal_odt extends ModelePDFPropales
$tmparray=$this->get_substitutionarray_propal($object,$outputlangs);
//print_r($tmparray); exit;
complete_substitutions_array($tmparray, $outputlangs, $object);
+ // Call the ODTSubstitution hook
+ $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs,'substitutionarray'=>&$tmparray);
+ $reshook=$hookmanager->executeHooks('ODTSubstitution',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
foreach($tmparray as $key=>$value)
{
try {
@@ -433,6 +448,9 @@ class doc_generic_proposal_odt extends ModelePDFPropales
{
$tmparray=$this->get_substitutionarray_propal_lines($line,$outputlangs);
complete_substitutions_array($tmparray, $outputlangs, $object, $line, "completesubstitutionarray_lines");
+ // Call the ODTSubstitutionLine hook
+ $parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs,'substitutionarray'=>&$tmparray,'line'=>$line);
+ $reshook=$hookmanager->executeHooks('ODTSubstitutionLine',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
foreach($tmparray as $key => $val)
{
try
@@ -457,10 +475,8 @@ class doc_generic_proposal_odt extends ModelePDFPropales
return -1;
}
- // Add odtgeneration hook
- $hookmanager->initHooks(array('odtgeneration'));
- $parameters=array('odfHandler'=>$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
- global $action;
+ // Call the beforeODTSave hook
+ $parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
// Write new file
diff --git a/htdocs/core/modules/societe/doc/doc_generic_odt.modules.php b/htdocs/core/modules/societe/doc/doc_generic_odt.modules.php
index 0146ebfc253..acf14c67139 100644
--- a/htdocs/core/modules/societe/doc/doc_generic_odt.modules.php
+++ b/htdocs/core/modules/societe/doc/doc_generic_odt.modules.php
@@ -173,6 +173,15 @@ class doc_generic_odt extends ModeleThirdPartyDoc
return -1;
}
+ // Add odtgeneration hook
+ if (! is_object($hookmanager))
+ {
+ include_once DOL_DOCUMENT_ROOT.'/core/class/hookmanager.class.php';
+ $hookmanager=new HookManager($this->db);
+ }
+ $hookmanager->initHooks(array('odtgeneration'));
+ global $action;
+
if (! is_object($outputlangs)) $outputlangs=$langs;
$sav_charset_output=$outputlangs->charset_output;
$outputlangs->charset_output='UTF-8';
@@ -276,6 +285,9 @@ class doc_generic_odt extends ModeleThirdPartyDoc
// Make substitutions into odt of thirdparty + external modules
$tmparray=$this->get_substitutionarray_thirdparty($object,$outputlangs);
complete_substitutions_array($tmparray, $outputlangs, $object);
+ // Call the ODTSubstitution hook
+ $parameters=array('file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs,'substitutionarray'=>&$tmparray);
+ $reshook=$hookmanager->executeHooks('ODTSubstitution',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
//var_dump($object->id); exit;
foreach($tmparray as $key=>$value)
{
@@ -296,10 +308,8 @@ class doc_generic_odt extends ModeleThirdPartyDoc
}
}
- // Add odtgeneration hook
- $hookmanager->initHooks(array('odtgeneration'));
- $parameters=array('odfHandler'=>$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
- global $action;
+ // Call the beforeODTSave hook
+ $parameters=array('odfHandler'=>&$odfHandler,'file'=>$file,'object'=>$object,'outputlangs'=>$outputlangs);
$reshook=$hookmanager->executeHooks('beforeODTSave',$parameters,$this,$action); // Note that $action and $object may have been modified by some hooks
// Write new file
diff --git a/htdocs/install/mysql/data/llx_c_tva.sql b/htdocs/install/mysql/data/llx_c_tva.sql
index b6d38949451..7cc8c36549e 100644
--- a/htdocs/install/mysql/data/llx_c_tva.sql
+++ b/htdocs/install/mysql/data/llx_c_tva.sql
@@ -219,13 +219,13 @@ insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 6
insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 64, 6, '0','0','VAT Rate 0', 1);
-- TUNISIA (id country=10)
-insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (101,10, '6','0','VAT 6%', 1, 1, '4', 0, null);
-insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (102,10, '12','0','VAT 12%',1, 1, '4', 0, null);
-insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (103,10, '18','0','VAT 18%',1, 1, '4', 0, null);
-insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (104,10, '7.5','0','VAT 6% Majoré à 25% (7.5%)',1, 1, '4', 0, null);
-insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (105,10, '15','0','VAT 12% Majoré à 25% (15%)',1, 1, '4', 0, null);
-insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (106,10, '22.5','0','VAT 18% Majoré à 25% (22.5%)',1, 1, '4', 0, null);
-insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (107,10, '0','0','VAT Rate 0', 1, 1, '4', 0, null);
+insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (101,10, '6','0','VAT 6%', 1, 1, '4', 0, 0);
+insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (102,10, '12','0','VAT 12%',1, 1, '4', 0, 0);
+insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (103,10, '18','0','VAT 18%',1, 1, '4', 0, 0);
+insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (104,10, '7.5','0','VAT 6% Majoré à 25% (7.5%)',1, 1, '4', 0, 0);
+insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (105,10, '15','0','VAT 12% Majoré à 25% (15%)',1, 1, '4', 0, 0);
+insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (106,10, '22.5','0','VAT 18% Majoré à 25% (22.5%)',1, 1, '4', 0, 0);
+insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (107,10, '0','0','VAT Rate 0', 1, 1, '4', 0, 0);
-- UKRAINE (id country=226)
INSERT INTO llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values (2261,226, '20','0','VAT standart rate',1);
diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php
index 37b81403acd..205e88c8272 100644
--- a/htdocs/societe/class/societe.class.php
+++ b/htdocs/societe/class/societe.class.php
@@ -249,7 +249,11 @@ class Societe extends CommonObject
$result=$interface->run_triggers('COMPANY_CREATE',$this,$user,$langs,$conf);
if ($result < 0) { $error++; $this->errors=$interface->errors; }
// Fin appel triggers
-
+ }
+ else $error++;
+
+ if (! $error)
+ {
dol_syslog(get_class($this)."::Create success id=".$this->id);
$this->db->commit();
return $this->id;
diff --git a/htdocs/theme/amarok/style.css.php b/htdocs/theme/amarok/style.css.php
index 4b9c8438456..41f96d10d20 100755
--- a/htdocs/theme/amarok/style.css.php
+++ b/htdocs/theme/amarok/style.css.php
@@ -867,7 +867,7 @@ div.ficheaddleft {
div.divButAction { margin-bottom: 1.4em; }
.button, .butAction {background: #999; border: solid 1px #888; font-weight: normal; }
-.butActionRefused {background: #eaeaea; color:rgba(0,0,0,0.6); font-weight: normal;}
+.butActionRefused {background: #eaeaea; color:rgba(0,0,0,0.6); font-weight: normal; cursor: not-allowed; }
.butActionDelete {background: #b33c37; border:solid 1px #8d2f2b; font-weight: normal;}
.button, .butAction, .butActionRefused, .butActionDelete {