diff --git a/htdocs/adherents/admin/adherent_extrafields.php b/htdocs/adherents/admin/adherent_extrafields.php
index d94686da7ef81d9748c99606744f6f946bafd423..2fa5af1cc1b32fe400e830324ee051aeed723452 100755
--- a/htdocs/adherents/admin/adherent_extrafields.php
+++ b/htdocs/adherents/admin/adherent_extrafields.php
@@ -70,7 +70,7 @@ print_fiche_titre($langs->trans("MembersSetup"),$linkback,'setup');
 
 $head = member_admin_prepare_head();
 
-dol_fiche_head($head, 'attributes', $langs->trans("Member"), 0, 'user');
+dol_fiche_head($head, 'attributes', $langs->trans("Members"), 0, 'user');
 
 
 print $langs->trans("DefineHereComplementaryAttributes",$textobject).'<br>'."\n";
@@ -105,7 +105,6 @@ foreach($extrafields->attribute_type as $key => $value)
 	print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=edit&attrname='.$key.'">'.img_edit().'</a>';
 	print "&nbsp; <a href=\"".$_SERVER["PHP_SELF"]."?action=delete&attrname=".$key."\">".img_delete()."</a></td>\n";
 	print "</tr>";
-	//      $i++;
 }
 
 print "</table>";
@@ -124,8 +123,8 @@ if ($action != 'create' && $action != 'edit')
 
 /* ************************************************************************** */
 /*                                                                            */
-/* Creation d'un champ optionnel
- /*                                                                            */
+/* Creation d'un champ optionnel											  */
+/*                                                                            */
 /* ************************************************************************** */
 
 if ($action == 'create')
diff --git a/htdocs/adherents/admin/adherent_type_extrafields.php b/htdocs/adherents/admin/adherent_type_extrafields.php
index 416be0d9f6381782622dde7881c51ea2825927d1..7873573ff340d18b79351fd5ee0fb53676ccef6f 100644
--- a/htdocs/adherents/admin/adherent_type_extrafields.php
+++ b/htdocs/adherents/admin/adherent_type_extrafields.php
@@ -59,7 +59,7 @@ require DOL_DOCUMENT_ROOT.'/core/admin_extrafields.inc.php';
  * View
  */
 
-$textobject=$langs->transnoentitiesnoconv("Members");
+$textobject=$langs->transnoentitiesnoconv("MembersTypes");
 
 $help_url='EN:Module_Foundations|FR:Module_Adh&eacute;rents|ES:M&oacute;dulo_Miembros';
 llxHeader('',$langs->trans("MembersSetup"),$help_url);
@@ -71,7 +71,7 @@ print_fiche_titre($langs->trans("MembersSetup"),$linkback,'setup');
 
 $head = member_admin_prepare_head();
 
-dol_fiche_head($head, 'attributes_type', $langs->trans("Member"), 0, 'user');
+dol_fiche_head($head, 'attributes_type', $langs->trans("Members"), 0, 'user');
 
 
 print $langs->trans("DefineHereComplementaryAttributes",$textobject).'<br>'."\n";
@@ -106,7 +106,6 @@ foreach($extrafields->attribute_type as $key => $value)
 	print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=edit&attrname='.$key.'">'.img_edit().'</a>';
 	print "&nbsp; <a href=\"".$_SERVER["PHP_SELF"]."?action=delete&attrname=".$key."\">".img_delete()."</a></td>\n";
 	print "</tr>";
-	//      $i++;
 }
 
 print "</table>";
@@ -125,8 +124,8 @@ if ($action != 'create' && $action != 'edit')
 
 /* ************************************************************************** */
 /*                                                                            */
-/* Creation d'un champ optionnel
- /*                                                                            */
+/* Creation d'un champ optionnel											  */
+/*                                                                            */
 /* ************************************************************************** */
 
 if ($action == 'create')
diff --git a/htdocs/admin/agenda_extrafields.php b/htdocs/admin/agenda_extrafields.php
index 901ddfa2148056b24aa3525435309a97afad75b9..d66a91ba62cc36194d522ea3588b6f73d8473472 100644
--- a/htdocs/admin/agenda_extrafields.php
+++ b/htdocs/admin/agenda_extrafields.php
@@ -35,6 +35,7 @@ if (!$user->admin)
 
 $langs->load("admin");
 $langs->load("other");
+$langs->load("agenda");
 
 $extrafields = new ExtraFields($db);
 $form = new Form($db);
@@ -63,8 +64,9 @@ require DOL_DOCUMENT_ROOT.'/core/admin_extrafields.inc.php';
  * View
  */
 
+$textobject=$langs->transnoentitiesnoconv("Agenda");
 
-llxHeader();
+llxHeader('',$langs->trans("AgendaSetup"));
 
 $linkback='<a href="'.DOL_URL_ROOT.'/admin/modules.php">'.$langs->trans("BackToModuleList").'</a>';
 print_fiche_titre($langs->trans("AgendaSetup"),$linkback,'setup');
@@ -107,7 +109,6 @@ foreach($extrafields->attribute_type as $key => $value)
     print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=edit&attrname='.$key.'">'.img_edit().'</a>';
     print "&nbsp; <a href=\"".$_SERVER["PHP_SELF"]."?action=delete&attrname=$key\">".img_delete()."</a></td>\n";
     print "</tr>";
-    //      $i++;
 }
 
 print "</table>";
@@ -126,8 +127,8 @@ if ($action != 'create' && $action != 'edit')
 
 /* ************************************************************************** */
 /*                                                                            */
-/* Creation d'un champ optionnel
- /*                                                                            */
+/* Creation d'un champ optionnel											  */
+/*                                                                            */
 /* ************************************************************************** */
 
 if ($action == 'create')
diff --git a/htdocs/admin/commande.php b/htdocs/admin/commande.php
index 47b16c11e49f4a9c1d42a1b85226f4ac9b1ce58d..ebcb94110e9c0afcfa5bca70c83d5b62e731ff0b 100644
--- a/htdocs/admin/commande.php
+++ b/htdocs/admin/commande.php
@@ -146,7 +146,7 @@ else if ($action == 'setdoc')
 	}
 }
 
-if ($action == 'setmod')
+else if ($action == 'setmod')
 {
 	// TODO Verifier si module numerotation choisi peut etre active
 	// par appel methode canBeActivated
@@ -154,7 +154,7 @@ if ($action == 'setmod')
 	dolibarr_set_const($db, "COMMANDE_ADDON",$value,'chaine',0,'',$conf->entity);
 }
 
-if ($action == 'set_COMMANDE_DRAFT_WATERMARK')
+else if ($action == 'set_COMMANDE_DRAFT_WATERMARK')
 {
 	$draft = GETPOST("COMMANDE_DRAFT_WATERMARK");
 	$res = dolibarr_set_const($db, "COMMANDE_DRAFT_WATERMARK",trim($draft),'chaine',0,'',$conf->entity);
@@ -171,7 +171,7 @@ if ($action == 'set_COMMANDE_DRAFT_WATERMARK')
     }
 }
 
-if ($action == 'set_COMMANDE_FREE_TEXT')
+else if ($action == 'set_COMMANDE_FREE_TEXT')
 {
 	$freetext = GETPOST("COMMANDE_FREE_TEXT");	// No alpha here, we want exact string
 
@@ -188,6 +188,14 @@ if ($action == 'set_COMMANDE_FREE_TEXT')
         $mesg = "<font class=\"error\">".$langs->trans("Error")."</font>";
     }
 }
+else if ($action='setModuleOptions') {
+	if (dolibarr_set_const($db, "COMMANDE_ADDON_PDF_ODT_PATH",GETPOST('value1'),'chaine',0,'',$conf->entity))
+	{
+		// La constante qui a ete lue en avant du nouveau set
+		// on passe donc par une variable pour avoir un affichage coherent
+		$conf->global->COMMANDE_ADDON_PDF_ODT_PATH = GETPOST('value1');
+	}
+}
 
 
 /*
diff --git a/htdocs/admin/company.php b/htdocs/admin/company.php
index a3696b7a24da595310d6922ab9099603924c0a4c..0b1f6f41d25150d947fec4afe4472f78cb0a1d2f 100644
--- a/htdocs/admin/company.php
+++ b/htdocs/admin/company.php
@@ -1,6 +1,6 @@
 <?php
 /* Copyright (C) 2001-2007	Rodolphe Quiedeville	<rodolphe@quiedeville.org>
- * Copyright (C) 2004-2012	Laurent Destailleur		<eldy@users.sourceforge.net>
+ * Copyright (C) 2004-2013	Laurent Destailleur		<eldy@users.sourceforge.net>
  * Copyright (C) 2005-2012	Regis Houssin			<regis.houssin@capnetworks.com>
  * Copyright (C) 2010		Juanjo Menent			<jmenent@2byte.es>
  * Copyright (C) 2011		Philippe Grand			<philippe.grand@atoo-net.com>
@@ -268,7 +268,7 @@ if ($action == 'edit' || $action == 'updateedit')
     $var=true;
 
     print '<table class="noborder" width="100%">';
-    print '<tr class="liste_titre"><td width="35%">'.$langs->trans("CompanyInfo").'</td><td>'.$langs->trans("Value").'</td></tr>'."\n";
+    print '<tr class="liste_titre"><th width="35%">'.$langs->trans("CompanyInfo").'</th><th>'.$langs->trans("Value").'</th></tr>'."\n";
 
     $var=!$var;
     print '<tr '.$bc[$var].'><td class="fieldrequired">'.$langs->trans("CompanyName").'</td><td>';
@@ -336,7 +336,7 @@ if ($action == 'edit' || $action == 'updateedit')
 
     // Logo
     $var=!$var;
-    print '<tr '.$bc[$var].'><td>'.$langs->trans("Logo").' (png,jpg)</td><td>';
+    print '<tr'.dol_bc($var,'hideonsmartphone').'><td>'.$langs->trans("Logo").' (png,jpg)</td><td>';
     print '<table width="100%" class="nocellnopadd"><tr class="nocellnopadd"><td valign="middle" class="nocellnopadd">';
     print '<input type="file" class="flat" name="logo" size="50">';
     print '</td><td valign="middle" align="right">';
diff --git a/htdocs/admin/order_extrafields.php b/htdocs/admin/order_extrafields.php
index 5d740593a5fbe557d1f226673348158df9eaec1a..cb57c0d2e45b2ccd0d365be7a52320ae4d056a77 100644
--- a/htdocs/admin/order_extrafields.php
+++ b/htdocs/admin/order_extrafields.php
@@ -4,6 +4,7 @@
  * Copyright (C) 2004-2013	Laurent Destailleur		<eldy@users.sourceforge.net>
  * Copyright (C) 2012		Regis Houssin			<regis.houssin@capnetworks.com>
  * Copyright (C) 2012		Florian Henry			<florian.henry@open-concept.pro>
+ * Copyright (C) 2013		Philippe Grand			<philippe.grand@atoo-net.com>
  *
  * 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
@@ -20,9 +21,9 @@
  */
 
 /**
- *      \file       htdocs/admin/agenda_extrafields.php
- *		\ingroup    agenda
- *		\brief      Page to setup extra fields of agenda
+ *      \file       htdocs/admin/order_extrafields.php
+ *		\ingroup    order
+ *		\brief      Page to setup extra fields of order
  */
 
 require '../main.inc.php';
@@ -35,6 +36,7 @@ if (!$user->admin)
 
 $langs->load("admin");
 $langs->load("other");
+$langs->load("orders");
 
 $extrafields = new ExtraFields($db);
 $form = new Form($db);
@@ -63,11 +65,12 @@ require DOL_DOCUMENT_ROOT.'/core/admin_extrafields.inc.php';
  * View
  */
 
+$textobject=$langs->transnoentitiesnoconv("Orders");
 
-llxHeader();
+llxHeader('',$langs->trans("OrdersSetup"));
 
 $linkback='<a href="'.DOL_URL_ROOT.'/admin/modules.php">'.$langs->trans("BackToModuleList").'</a>';
-print_fiche_titre($langs->trans("AgendaSetup"),$linkback,'setup');
+print_fiche_titre($langs->trans("OrdersSetup"),$linkback,'setup');
 print "<br>\n";
 
 $head = order_admin_prepare_head(null);
@@ -107,7 +110,6 @@ foreach($extrafields->attribute_type as $key => $value)
     print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=edit&attrname='.$key.'">'.img_edit().'</a>';
     print "&nbsp; <a href=\"".$_SERVER["PHP_SELF"]."?action=delete&attrname=$key\">".img_delete()."</a></td>\n";
     print "</tr>";
-    //      $i++;
 }
 
 print "</table>";
@@ -126,8 +128,8 @@ if ($action != 'create' && $action != 'edit')
 
 /* ************************************************************************** */
 /*                                                                            */
-/* Creation d'un champ optionnel
- /*                                                                            */
+/* Creation d'un champ optionnel											  */
+/*                                                                            */
 /* ************************************************************************** */
 
 if ($action == 'create')
diff --git a/htdocs/admin/project.php b/htdocs/admin/project.php
index 8bb1baae575e48844c5ab7406ed6cb6934223af8..9f28b57be5b491d87933d0f4cef5a590cf5de12d 100644
--- a/htdocs/admin/project.php
+++ b/htdocs/admin/project.php
@@ -152,7 +152,14 @@ else if ($action == 'setmod')
 
 	dolibarr_set_const($db, "PROJECT_ADDON",$value,'chaine',0,'',$conf->entity);
 }
-
+else if ($action='setModuleOptions') {
+	if (dolibarr_set_const($db, "PROJECT_ADDON_PDF_ODT_PATH",GETPOST('value1'),'chaine',0,'',$conf->entity))
+	{
+		// La constante qui a ete lue en avant du nouveau set
+		// on passe donc par une variable pour avoir un affichage coherent
+		$conf->global->PROJECT_ADDON_PDF_ODT_PATH = GETPOST('value1');
+	}
+}
 /*
  * View
 */
diff --git a/htdocs/admin/supplier_invoice.php b/htdocs/admin/supplier_invoice.php
index a5331bca70c045d0d4dc9087f62f004beb71e609..d99698473a46e12e0d51ba73e32a3da9712b609b 100644
--- a/htdocs/admin/supplier_invoice.php
+++ b/htdocs/admin/supplier_invoice.php
@@ -29,6 +29,7 @@
 
 require '../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
 require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php';
 require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php';
 
@@ -197,20 +198,9 @@ print_fiche_titre($langs->trans("SuppliersSetup"),$linkback,'setup');
 
 print "<br>";
 
-$h = 0;
+$head = supplierorder_admin_prepare_head(null);
 
-$head[$h][0] = DOL_URL_ROOT."/admin/supplier_order.php";
-$head[$h][1] = $langs->trans("SupplierOrder");
-$head[$h][2] = 'Order';
-$h++;
-
-$head[$h][0] = DOL_URL_ROOT."/admin/supplier_invoice.php";
-$head[$h][1] = $langs->trans("SuppliersInvoice");
-$head[$h][2] = 'Invoice';
-$hselected=$h;
-$h++;
-
-dol_fiche_head($head, $hselected, $langs->trans("ModuleSetup"));
+dol_fiche_head($head, 'invoice', $langs->trans("ModuleSetup"));
 
 
 // Supplier invoice numbering module
diff --git a/htdocs/admin/supplier_order.php b/htdocs/admin/supplier_order.php
index ab8569b15b0497ec026509dd5775aca8d92d8ef7..f80e6c3b28b55bff6d5759c4fb3a855f2dc0f934 100644
--- a/htdocs/admin/supplier_order.php
+++ b/htdocs/admin/supplier_order.php
@@ -29,6 +29,7 @@
 
 require '../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
 require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.class.php';
 require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php';
 
@@ -197,21 +198,9 @@ print_fiche_titre($langs->trans("SuppliersSetup"),$linkback,'setup');
 
 print "<br>";
 
-$h = 0;
+$head = supplierorder_admin_prepare_head(null);
 
-$head[$h][0] = DOL_URL_ROOT."/admin/supplier_order.php";
-$head[$h][1] = $langs->trans("SupplierOrder");
-$head[$h][2] = 'Order';
-$hselected=$h;
-$h++;
-
-$head[$h][0] = DOL_URL_ROOT."/admin/supplier_invoice.php";
-$head[$h][1] = $langs->trans("SuppliersInvoice");
-$head[$h][2] = 'Invoice';
-
-$h++;
-
-dol_fiche_head($head, $hselected, $langs->trans("ModuleSetup"));
+dol_fiche_head($head, 'order', $langs->trans("ModuleSetup"));
 
 
 // Supplier order numbering module
diff --git a/htdocs/admin/supplierorder_extrafields.php b/htdocs/admin/supplierorder_extrafields.php
new file mode 100644
index 0000000000000000000000000000000000000000..9322d034931dc3410067528509d0bccca4025b52
--- /dev/null
+++ b/htdocs/admin/supplierorder_extrafields.php
@@ -0,0 +1,159 @@
+<?php
+/* Copyright (C) 2001-2002	Rodolphe Quiedeville	<rodolphe@quiedeville.org>
+ * Copyright (C) 2003		Jean-Louis Bergamo		<jlb@j1b.org>
+ * Copyright (C) 2004-2013	Laurent Destailleur		<eldy@users.sourceforge.net>
+ * Copyright (C) 2012		Regis Houssin			<regis.houssin@capnetworks.com>
+ * Copyright (C) 2012		Florian Henry			<florian.henry@open-concept.pro>
+ * Copyright (C) 2013		Philippe Grand			<philippe.grand@atoo-net.com>
+ *
+ * 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
+ * the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * 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, see <http://www.gnu.org/licenses/>.
+ */
+
+/**
+ *      \file       htdocs/admin/supplierorder_extrafields.php
+ *		\ingroup    fourn
+ *		\brief      Page to setup extra fields of supplierorder
+ */
+
+require '../main.inc.php';
+require_once DOL_DOCUMENT_ROOT.'/core/lib/fourn.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
+
+
+if (!$user->admin)
+	accessforbidden();
+
+$langs->load("admin");
+$langs->load("other");
+$langs->load("orders");
+
+$extrafields = new ExtraFields($db);
+$form = new Form($db);
+
+// List of supported format
+$tmptype2label=getStaticMember(get_class($extrafields),'type2label');
+$type2label=array('');
+foreach ($tmptype2label as $key => $val) $type2label[$key]=$langs->trans($val);
+
+$action=GETPOST('action', 'alpha');
+$attrname=GETPOST('attrname', 'alpha');
+$elementtype='commande_fournisseur';
+
+if (!$user->admin) accessforbidden();
+
+
+/*
+ * Actions
+ */
+
+require DOL_DOCUMENT_ROOT.'/core/admin_extrafields.inc.php';
+
+
+
+/*
+ * View
+ */
+
+$textobject=$langs->transnoentitiesnoconv("SupplierOrder");
+
+llxHeader('',$langs->trans("SuppliersSetup"));
+
+$linkback='<a href="'.DOL_URL_ROOT.'/admin/modules.php">'.$langs->trans("BackToModuleList").'</a>';
+print_fiche_titre($langs->trans("SuppliersSetup"),$linkback,'setup');
+print "<br>\n";
+
+$head = supplierorder_admin_prepare_head(null);
+
+dol_fiche_head($head, 'attributes', $langs->trans("ModuleSetup"), 0, 'order');
+
+
+print $langs->trans("DefineHereComplementaryAttributes",$textobject).'<br>'."\n";
+print '<br>';
+
+// Load attribute_label
+$extrafields->fetch_name_optionals_label($elementtype);
+
+print "<table summary=\"listofattributes\" class=\"noborder\" width=\"100%\">";
+
+print '<tr class="liste_titre">';
+print '<td>'.$langs->trans("Label").'</td>';
+print '<td>'.$langs->trans("AttributeCode").'</td>';
+print '<td>'.$langs->trans("Type").'</td>';
+print '<td align="right">'.$langs->trans("Size").'</td>';
+print '<td align="center">'.$langs->trans("Unique").'</td>';
+print '<td align="center">'.$langs->trans("Required").'</td>';
+print '<td width="80">&nbsp;</td>';
+print "</tr>\n";
+
+$var=True;
+foreach($extrafields->attribute_type as $key => $value)
+{
+    $var=!$var;
+    print "<tr ".$bc[$var].">";
+    print "<td>".$extrafields->attribute_label[$key]."</td>\n";
+    print "<td>".$key."</td>\n";
+    print "<td>".$type2label[$extrafields->attribute_type[$key]]."</td>\n";
+    print '<td align="right">'.$extrafields->attribute_size[$key]."</td>\n";
+    print '<td align="center">'.yn($extrafields->attribute_unique[$key])."</td>\n";
+    print '<td align="center">'.yn($extrafields->attribute_required[$key])."</td>\n";
+    print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=edit&attrname='.$key.'">'.img_edit().'</a>';
+    print "&nbsp; <a href=\"".$_SERVER["PHP_SELF"]."?action=delete&attrname=$key\">".img_delete()."</a></td>\n";
+    print "</tr>";
+}
+
+print "</table>";
+
+dol_fiche_end();
+
+
+// Buttons
+if ($action != 'create' && $action != 'edit')
+{
+    print '<div class="tabsAction">';
+    print "<a class=\"butAction\" href=\"".$_SERVER["PHP_SELF"]."?action=create\">".$langs->trans("NewAttribute")."</a>";
+    print "</div>";
+}
+
+
+/* ************************************************************************** */
+/*                                                                            */
+/* Creation d'un champ optionnel											  */
+/*                                                                            */
+/* ************************************************************************** */
+
+if ($action == 'create')
+{
+    print "<br>";
+    print_titre($langs->trans('NewAttribute'));
+
+    require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_add.tpl.php';
+}
+
+/* ************************************************************************** */
+/*                                                                            */
+/* Edition d'un champ optionnel                                               */
+/*                                                                            */
+/* ************************************************************************** */
+if ($action == 'edit' && ! empty($attrname))
+{
+    print "<br>";
+    print_titre($langs->trans("FieldEdition", $attrname));
+
+    require DOL_DOCUMENT_ROOT.'/core/tpl/admin_extrafields_edit.tpl.php';
+}
+
+llxFooter();
+
+$db->close();
+?>
\ No newline at end of file
diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php
index 47f18b8e5e86af830210ebbd9495297a8db05ee5..cab6e77be23cac898bc68200fd8645cc77c5b273 100644
--- a/htdocs/commande/class/commande.class.php
+++ b/htdocs/commande/class/commande.class.php
@@ -150,7 +150,7 @@ class Commande extends CommonOrder
                 }
                 else
                 {
-                    dol_print_error($db,"Commande::getNextNumRef ".$obj->error);
+                    dol_print_error($db,get_class($this)."::getNextNumRef ".$obj->error);
                     return "";
                 }
             }
@@ -419,7 +419,7 @@ class Commande extends CommonOrder
         $sql.= ' SET fk_statut=1, facture=0';
         $sql.= ' WHERE rowid = '.$this->id;
 
-        dol_syslog("Commande::set_reopen sql=".$sql);
+        dol_syslog(get_class($this)."::set_reopen sql=".$sql);
         $resql = $this->db->query($sql);
         if ($resql)
         {
@@ -530,7 +530,7 @@ class Commande extends CommonOrder
 		$sql.= " WHERE rowid = ".$this->id;
 		$sql.= " AND fk_statut = 1";
 
-		dol_syslog("Commande::cancel sql=".$sql, LOG_DEBUG);
+		dol_syslog(get_class($this)."::cancel sql=".$sql, LOG_DEBUG);
 		if ($this->db->query($sql))
 		{
 			// If stock is decremented on validate order, we must reincrement it
@@ -604,7 +604,7 @@ class Commande extends CommonOrder
         // Clean parameters
         $this->brouillon = 1;		// On positionne en mode brouillon la commande
 
-        dol_syslog("Commande::create user=".$user->id);
+        dol_syslog(get_class($this)."::create user=".$user->id);
 
         // Check parameters
         $soc = new Societe($this->db);
@@ -612,13 +612,13 @@ class Commande extends CommonOrder
         if ($result < 0)
         {
             $this->error="Failed to fetch company";
-            dol_syslog("Commande::create ".$this->error, LOG_ERR);
+            dol_syslog(get_class($this)."::create ".$this->error, LOG_ERR);
             return -2;
         }
         if (! empty($conf->global->COMMANDE_REQUIRE_SOURCE) && $this->source < 0)
         {
             $this->error=$langs->trans("ErrorFieldRequired",$langs->trans("Source"));
-            dol_syslog("Commande::create ".$this->error, LOG_ERR);
+            dol_syslog(get_class($this)."::create ".$this->error, LOG_ERR);
             return -1;
         }
 
@@ -655,7 +655,7 @@ class Commande extends CommonOrder
         $sql.= ", ".$conf->entity;
         $sql.= ")";
 
-        dol_syslog("Commande::create sql=".$sql);
+        dol_syslog(get_class($this)."::create sql=".$sql);
         $resql=$this->db->query($sql);
         if ($resql)
         {
@@ -1460,7 +1460,7 @@ class Commande extends CommonOrder
         if ($only_product) $sql .= ' AND p.fk_product_type = 0';
         $sql .= ' ORDER BY l.rang';
 
-        dol_syslog("Commande::fetch_lines sql=".$sql,LOG_DEBUG);
+        dol_syslog(get_class($this)."::fetch_lines sql=".$sql,LOG_DEBUG);
         $result = $this->db->query($sql);
         if ($result)
         {
@@ -1587,7 +1587,7 @@ class Commande extends CommonOrder
         $sql.= ' GROUP BY cd.rowid, cd.fk_product';
         //print $sql;
 
-        dol_syslog("Commande::loadExpeditions sql=".$sql,LOG_DEBUG);
+        dol_syslog(get_class($this)."::loadExpeditions sql=".$sql,LOG_DEBUG);
         $result = $this->db->query($sql);
         if ($result)
         {
@@ -1605,7 +1605,7 @@ class Commande extends CommonOrder
         else
         {
             $this->error=$this->db->lasterror();
-            dol_syslog("Commande::loadExpeditions ".$this->error,LOG_ERR);
+            dol_syslog(get_class($this)."::loadExpeditions ".$this->error,LOG_ERR);
             return -1;
         }
 
@@ -1820,7 +1820,7 @@ class Commande extends CommonOrder
             $sql.= ' SET remise_absolue = '.$remise;
             $sql.= ' WHERE rowid = '.$this->id.' AND fk_statut = 0 ;';
 
-            dol_syslog("Commande::set_remise_absolue sql=$sql");
+            dol_syslog(get_class($this)."::set_remise_absolue sql=$sql");
 
             if ($this->db->query($sql))
             {
@@ -1852,7 +1852,7 @@ class Commande extends CommonOrder
             $sql.= " SET date_commande = ".($date ? $this->db->idate($date) : 'null');
             $sql.= " WHERE rowid = ".$this->id." AND fk_statut = 0";
 
-            dol_syslog("Commande::set_date sql=$sql",LOG_DEBUG);
+            dol_syslog(get_class($this)."::set_date sql=$sql",LOG_DEBUG);
             $resql=$this->db->query($sql);
             if ($resql)
             {
@@ -1862,7 +1862,7 @@ class Commande extends CommonOrder
             else
             {
                 $this->error=$this->db->error();
-                dol_syslog("Commande::set_date ".$this->error,LOG_ERR);
+                dol_syslog(get_class($this)."::set_date ".$this->error,LOG_ERR);
                 return -1;
             }
         }
@@ -1887,7 +1887,7 @@ class Commande extends CommonOrder
             $sql.= " SET date_livraison = ".($date_livraison ? "'".$this->db->idate($date_livraison)."'" : 'null');
             $sql.= " WHERE rowid = ".$this->id;
 
-            dol_syslog("Commande::set_date_livraison sql=".$sql,LOG_DEBUG);
+            dol_syslog(get_class($this)."::set_date_livraison sql=".$sql,LOG_DEBUG);
             $resql=$this->db->query($sql);
             if ($resql)
             {
@@ -1897,7 +1897,7 @@ class Commande extends CommonOrder
             else
             {
                 $this->error=$this->db->error();
-                dol_syslog("Commande::set_date_livraison ".$this->error,LOG_ERR);
+                dol_syslog(get_class($this)."::set_date_livraison ".$this->error,LOG_ERR);
                 return -1;
             }
         }
@@ -1930,7 +1930,7 @@ class Commande extends CommonOrder
             else
             {
                 $this->error=$this->db->error();
-                dol_syslog("Commande::set_availability Erreur SQL");
+                dol_syslog(get_class($this)."::set_availability Erreur SQL");
                 return -1;
             }
         }
@@ -1959,7 +1959,7 @@ class Commande extends CommonOrder
             else
             {
                 $this->error=$this->db->error();
-                dol_syslog("Commande::set_demand_reason Erreur SQL");
+                dol_syslog(get_class($this)."::set_demand_reason Erreur SQL");
                 return -1;
             }
         }
diff --git a/htdocs/core/lib/fourn.lib.php b/htdocs/core/lib/fourn.lib.php
index f834bdd557035a0d50fa57e3bbc283d7d52e2e29..4d3ebbb0b05ced8d3c87c8035b93429c4378b458 100644
--- a/htdocs/core/lib/fourn.lib.php
+++ b/htdocs/core/lib/fourn.lib.php
@@ -2,6 +2,7 @@
 /* Copyright (C) 2005-2009	Laurent Destailleur	<eldy@users.sourceforge.net>
  * Copyright (C) 2005-2012	Regis Houssin		<regis.houssin@capnetworks.com>
  * Copyright (C) 2006		Marc Barilley		<marc@ocebo.com>
+ * Copyright (C) 2011-2013  Philippe Grand      <philippe.grand@atoo-net.com>
  *
  * 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
@@ -148,5 +149,42 @@ function ordersupplier_prepare_head($object)
 	return $head;
 }
 
+/**
+ *  Return array head with list of tabs to view object informations.
+ *
+ *  @param	Object	$object		order
+ *  @return	array   	        head array with tabs
+ */
+function supplierorder_admin_prepare_head($object)
+{
+	global $langs, $conf, $user;
+
+	$h = 0;
+	$head = array();
+
+	$head[$h][0] = DOL_URL_ROOT."/admin/supplier_order.php";
+	$head[$h][1] = $langs->trans("SupplierOrder");
+	$head[$h][2] = 'order';
+	$h++;
+	
+	complete_head_from_modules($conf,$langs,$object,$head,$h,'supplierorder_admin');
+
+	$head[$h][0] = DOL_URL_ROOT.'/admin/supplierorder_extrafields.php';
+	$head[$h][1] = $langs->trans("ExtraFieldsSupplierOrders");
+	$head[$h][2] = 'attributes';
+	$h++;
+
+	complete_head_from_modules($conf,$langs,$object,$head,$h,'supplierorder_admin');
+
+	$head[$h][0] = DOL_URL_ROOT."/admin/supplier_invoice.php";
+	$head[$h][1] = $langs->trans("SuppliersInvoice");
+	$head[$h][2] = 'invoice';
+	$h++;
+
+	complete_head_from_modules($conf,$langs,$object,$head,$h,'supplierorder_admin','remove');
+
+	return $head;
+}
+
 
 ?>
\ No newline at end of file
diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php
index 3fac6b6734638870ea996bd61715d09c4c5ccaaa..04c92c8be0d55bdec5dbc3e7984f01df03096bbe 100644
--- a/htdocs/core/lib/functions.lib.php
+++ b/htdocs/core/lib/functions.lib.php
@@ -671,6 +671,21 @@ function dol_get_fiche_end($notab=0)
 	else return '';
 }
 
+/**
+ * Return string to add class property on html element with pair/impair.
+ * 
+ * @param	string	$var			0 or 1
+ * @param	string	$moreclass		More class to add
+ * @return	string					String to add class onto HTML element
+ */
+function dol_bc($var,$moreclass='')
+{
+	global $bc;
+	$ret=' '.$bc[$var];
+	if ($moreclass) $ret=preg_replace('/class=\"/','class="'.$moreclass.' ',$ret);
+	return $ret;
+}
+
 /**
  *      Return a formated address (part address/zip/town/state) according to country rules
  *
diff --git a/htdocs/core/lib/order.lib.php b/htdocs/core/lib/order.lib.php
index 8e8700ac7417a0433c1c6a1a11b5115f036e3a63..16aae46f9fcffaff8d42c1817b050974c8f4986a 100644
--- a/htdocs/core/lib/order.lib.php
+++ b/htdocs/core/lib/order.lib.php
@@ -122,7 +122,7 @@ function order_admin_prepare_head($object)
 	$h = 0;
 	$head = array();
 
-	$head[$h][0] = DOL_URL_ROOT.'/admin/order.php';
+	$head[$h][0] = DOL_URL_ROOT.'/admin/commande.php';
 	$head[$h][1] = $langs->trans("Miscellaneous");
 	$head[$h][2] = 'general';
 	$h++;
diff --git a/htdocs/core/modules/modProjet.class.php b/htdocs/core/modules/modProjet.class.php
index a17835ddcc640f7c19fd5803b59ca3a57597d63e..9bd71e50dcee559726cfe7da10cb0a9430c76344 100644
--- a/htdocs/core/modules/modProjet.class.php
+++ b/htdocs/core/modules/modProjet.class.php
@@ -89,7 +89,7 @@ class modProjet extends DolibarrModules
 		$r++;
 		$this->const[$r][0] = "PROJECT_ADDON_PDF_ODT_PATH";
 		$this->const[$r][1] = "chaine";
-		$this->const[$r][2] = "DOL_DATA_ROOT/doctemplates/project";
+		$this->const[$r][2] = "DOL_DATA_ROOT/doctemplates/projects";
 		$this->const[$r][3] = "";
 		$this->const[$r][4] = 0;
 
diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php
index d8487fc82b080d6f9890c8faadac628c10c5af11..99a443c71db8455ea212743f2825fd809b3d5f15 100644
--- a/htdocs/fourn/class/fournisseur.commande.class.php
+++ b/htdocs/fourn/class/fournisseur.commande.class.php
@@ -4,7 +4,7 @@
  * Copyright (C) 2005-2012	Regis Houssin			<regis.houssin@capnetworks.com>
  * Copyright (C) 2007		Franky Van Liedekerke	<franky.van.liedekerke@telenet.be>
  * Copyright (C) 2010-2013	Juanjo Menent			<jmenent@2byte.es>
- * Copyright (C) 2010-2012	Philippe Grand			<philippe.grand@atoo-net.com>
+ * Copyright (C) 2010-2013	Philippe Grand			<philippe.grand@atoo-net.com>
  * Copyright (C) 2012       Marcos García           <marcosgdf@gmail.com>
  *
  * This program is free software; you can redistribute it and/or modify
@@ -914,7 +914,7 @@ class CommandeFournisseur extends CommonOrder
      */
     function create($user, $notrigger=0)
     {
-        global $langs,$conf;
+        global $langs,$conf,$hookmanager;
 
         $this->db->begin();
 
@@ -1001,7 +1001,28 @@ class CommandeFournisseur extends CommonOrder
 	                // On logue creation pour historique
 	                $this->log($user, 0, time());
 
-	                if (! $notrigger)
+	                if (! $error)
+                    {
+	                    // Actions on extra fields (by external module or standard code)
+	                    // FIXME le hook fait double emploi avec le trigger !!
+	                    $hookmanager->initHooks(array('supplierorderdao'));
+	                    $parameters=array('socid'=>$this->id);
+	                    $reshook=$hookmanager->executeHooks('insertExtraFields',$parameters,$this,$action);    // Note that $action and $object may have been modified by some hooks
+	                    if (empty($reshook))
+	                    {
+	                    	if (empty($conf->global->MAIN_EXTRAFIELDS_DISABLED)) // For avoid conflicts if trigger used
+	                    	{
+	                    		$result=$this->insertExtraFields();
+	                    		if ($result < 0)
+	                    		{
+	                    			$error++;
+	                    		}
+	                    	}
+	                    }
+	                    else if ($reshook < 0) $error++;
+                    }
+					
+					if (! $notrigger)
 	                {
 	                    // Appel des triggers
 	                    include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php';
diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang
index 07ba4abfa1b56502bdc5446a18a93eec4e9b9702..c941d3c1c50255e3add575d94bb39d96c2d43f8a 100644
--- a/htdocs/langs/en_US/admin.lang
+++ b/htdocs/langs/en_US/admin.lang
@@ -883,7 +883,7 @@ LogEventDesc=You can enable here the logging for Dolibarr security events. Admin
 AreaForAdminOnly=Those features can be used by <b>administrator users</b> only.
 SystemInfoDesc=System information is miscellaneous technical information you get in read only mode and visible for administrators only.
 SystemAreaForAdminOnly=This area is available for administrator users only. None of the Dolibarr permissions can reduce this limit.
-CompanyFundationDesc=Edit on this page all known information of the company or foundation you need to manage (For this click, on "Modify" button at bottom of page)
+CompanyFundationDesc=Edit on this page all known information of the company or foundation you need to manage (For this, click on "Modify" button at bottom of page)
 DisplayDesc=You can choose each parameter related to the Dolibarr look and feel here
 AvailableModules=Available modules
 ToActivateModule=To activate modules, go on setup Area (Home->Setup->Modules).
diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang
index d1add32c5050146618d12c4db329988247794283..70dc7fe2555ae8c4e3257b35150e13aafa72c63b 100644
--- a/htdocs/langs/fr_FR/admin.lang
+++ b/htdocs/langs/fr_FR/admin.lang
@@ -953,6 +953,7 @@ ExtraFieldsContacts=Attributs supplémentaires (contacts/adresses)
 ExtraFieldsMember=Attributs supplémentaires (adhérents)
 ExtraFieldsMemberType=Attributs supplémentaires (type d'adhérents)
 ExtraFieldsCustomerInvoices=Attributs supplémentaires (factures clients)
+ExtraFieldsSupplierOrders=Attributs supplémentaires (commandes fournisseurs)
 ExtraFieldHasWrongValue=L'attribut %s a une valeur incorrecte.
 AlphaNumOnlyCharsAndNoSpace=uniquement caractères alphanumériques sans espace
 SendingMailSetup=Configuration de l'envoi par mail
diff --git a/htdocs/theme/bureau2crea/tpl/login.tpl.php b/htdocs/theme/bureau2crea/tpl/login.tpl.php
deleted file mode 100644
index 05c6aab3cdbe1c2ce0320e52696c70c9fa368815..0000000000000000000000000000000000000000
--- a/htdocs/theme/bureau2crea/tpl/login.tpl.php
+++ /dev/null
@@ -1,214 +0,0 @@
-<?php
-/* Copyright (C) 2009-2012 Regis Houssin <regis.houssin@capnetworks.com>
- *
- * 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
- * the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * 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, see <http://www.gnu.org/licenses/>.
- *
- */
-
-header('Cache-Control: Public, must-revalidate');
-header("Content-type: text/html; charset=".$conf->file->character_set_client);
-
-?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<!-- BEGIN PHP TEMPLATE -->
-<html>
-
-<?php
-print '<head>
-<meta name="robots" content="noindex,nofollow" />
-<meta name="author" content="Dolibarr Development Team">
-<link rel="shortcut icon" type="image/x-icon" href="'.$favicon.'"/>
-<title>'.$langs->trans('Login').' '.$title.'</title>'."\n";
-print '<!-- Includes for JQuery (Ajax library) -->'."\n";
-if (constant('JS_JQUERY_UI')) print '<link rel="stylesheet" type="text/css" href="'.JS_JQUERY_UI.'css/'.$jquerytheme.'/jquery-ui.min.css" />'."\n";  // JQuery
-else print '<link rel="stylesheet" type="text/css" href="'.DOL_URL_ROOT.'/includes/jquery/css/'.$jquerytheme.'/jquery-ui-latest.custom.css" />'."\n";    // JQuery
-// CSS forced by modules (relative url starting with /)
-if (isset($conf->modules_parts['css']))
-{
-	$arraycss=(array) $conf->modules_parts['css'];
-	foreach($arraycss as $modcss => $filescss)
-	{
-		$filescss=(array) $filescss;	// To be sure filecss is an array
-		foreach($filescss as $cssfile)
-		{
-			// cssfile is a relative path
-			print '<link rel="stylesheet" type="text/css" title="default" href="'.dol_buildpath($cssfile,1);
-			// We add params only if page is not static, because some web server setup does not return content type text/css if url has parameters, so browser cache is not used.
-			if (!preg_match('/\.css$/i',$cssfile)) print $themeparam;
-			print '"><!-- Added by module '.$modcss. '-->'."\n";
-		}
-	}
-}
-// JQuery. Must be before other includes
-$ext='.js';
-print '<!-- Includes JS for JQuery -->'."\n";
-if (constant('JS_JQUERY')) print '<script type="text/javascript" src="'.JS_JQUERY.'jquery.min'.$ext.'"></script>'."\n";
-else print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/js/jquery-latest.min'.$ext.'"></script>'."\n";
-print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/core/js/dst.js"></script>'."\n";
-print '<link rel="stylesheet" type="text/css" href="'.dol_escape_htmltag($conf_css).'" />
-<style type="text/css">
-<!--
-#login {
-	margin-top: 70px;
-	margin-bottom: 30px;
-}
-.login_table {
-	width: 512px;
-	border: 1px solid #C0C0C0;
-	background: #F0F0F0 url('.$login_background.') repeat-x;
-}
--->
-</style>'."\n";
-if (! empty($conf->global->MAIN_HTML_HEADER)) print $conf->global->MAIN_HTML_HEADER;
-print '<!-- HTTP_USER_AGENT = '.$_SERVER['HTTP_USER_AGENT'].' -->
-</head>';
-
-?>
-
-<body class="body">
-
-<!-- Javascript code on logon page only to detect user tz, dst_observed, dst_first, dst_second -->
-<script type="text/javascript">
-$(document).ready(function () {
-	// Set focus on correct field
-	<?php if ($focus_element) { ?>$('#<?php echo $focus_element; ?>').focus(); <?php } ?>		// Warning to use this only on visible element
-});
-</script>
-
-<form id="login" name="login" method="post" action="<?php echo $php_self; ?>">
-<input type="hidden" name="token" value="<?php echo $_SESSION['newtoken']; ?>" />
-<input type="hidden" name="loginfunction" value="loginfunction" />
-<!-- Add fields to send local user information -->
-<input type="hidden" name="tz" id="tz" value="" />
-<input type="hidden" name="tz_string" id="tz_string" value="" />
-<input type="hidden" name="dst_observed" id="dst_observed" value="" />
-<input type="hidden" name="dst_first" id="dst_first" value="" />
-<input type="hidden" name="dst_second" id="dst_second" value="" />
-<input type="hidden" name="screenwidth" id="screenwidth" value="" />
-<input type="hidden" name="screenheight" id="screenheight" value="" />
-<input type="hidden" name="dol_hide_topmenu" id="dol_hide_topmenu" value="" />
-<input type="hidden" name="dol_hide_leftmenu" id="dol_hide_leftmenu" value="" />
-<input type="hidden" name="dol_optimize_smallscreen" id="dol_optimize_smallscreen" value="<?php echo $dol_optimize_smallscreen; ?>" />
-<input type="hidden" name="dol_no_mouse_hover" id="dol_no_mouse_over" value="<?php echo $dol_no_mouse_hover; ?>" />
-<input type="hidden" name="dol_use_jmobile" id="dol_use_jmobile" value="<?php echo $dol_use_jmobile; ?>" />
-
-<div id="infoVersion"><?php echo $title; ?></div>
-
-<div id="logoBox">
-  <img alt="Logo" title="" src="<?php echo $urllogo; ?>" />
-</div>
-
-<div id="parameterBox">
-
-<div id="logBox"><strong><label for="username"><?php echo $langs->trans('Login'); ?></label></strong><input type="text" id="username" name="username" class="flat" size="15" maxlength="40" value="<?php echo dol_escape_htmltag($login); ?>" tabindex="1" /></div>
-<div id="passBox"><strong><label for="password"><?php echo $langs->trans('Password'); ?></label></strong><input id="password" name="password" class="flat" type="password" size="15" maxlength="30" value="<?php echo dol_escape_htmltag($password); ?>" tabindex="2" /></div>
-
-	<?php
-	if (! empty($hookmanager->resArray['options'])) {
-		foreach ($hookmanager->resArray['options'] as $format => $option)
-		{
-			if ($format == 'div') {
-				echo '<!-- Option by hook -->';
-				echo $option;
-			}
-		}
-	}
-	?>
-
-	<?php if ($captcha) { ?>
-		<div class="captchaBox">
-        	<strong><label><?php echo $langs->trans('SecurityCode'); ?></label></strong>
-			<input id="securitycode" class="flat" type="text" size="6" maxlength="5" name="code" tabindex="4" />
-        </div>
-        <div class="captchaImg">
-			<img src="<?php echo DOL_URL_ROOT ?>/core/antispamimage.php" border="0" width="80" height="32" id="captcha" />
-			<a href="<?php echo $php_self; ?>"><?php echo $captcha_refresh; ?></a>
-		</div>
-	<?php } ?>
-
-<div id="connectionLine">
-  <input type="submit" class="button" value="&nbsp; <?php echo $langs->trans('Connection'); ?> &nbsp;" tabindex="5" />
-</div>
-
-<?php
-	if ($forgetpasslink || $helpcenterlink) {
-		echo '<div class="other">';
-		if ($forgetpasslink) {
-			echo '<a style="color: #888888; font-size: 10px" href="'.DOL_URL_ROOT.'/user/passwordforgotten.php">(';
-			echo $langs->trans('PasswordForgotten');
-			if (! $helpcenterlink) {
-				echo ')';
-			}
-			echo '</a>';
-		}
-
-		if ($helpcenterlink) {
-			echo '<a style="color: #888888; font-size: 10px" href="'.DOL_URL_ROOT.'/support/index.php" target="_blank">';
-			if ($forgetpasslink) {
-				echo '&nbsp;-&nbsp;';
-			} else {
-				echo '(';
-			}
-			echo $langs->trans('NeedHelpCenter').')</a>';
-		}
-		echo '</div>';
-	}
-?>
-
-</div>
-
-<?php if ($main_home) { ?>
-	<div id="infoLogin">
-	<?php echo $main_home; ?>
-	</div>
-<?php } ?>
-
-<?php if ($_SESSION['dol_loginmesg']) { ?>
-	<div class="error">
-	<?php echo $_SESSION['dol_loginmesg']; ?>
-	</div>
-<?php } ?>
-
-	<?php
-	if (! empty($conf->global->MAIN_GOOGLE_AD_CLIENT) && ! empty($conf->global->MAIN_GOOGLE_AD_SLOT))
-	{
-	?>
-		<div align="center">
-			<script type="text/javascript"><!--
-				google_ad_client = "<?php echo $conf->global->MAIN_GOOGLE_AD_CLIENT ?>";
-				google_ad_slot = "<?php echo $conf->global->MAIN_GOOGLE_AD_SLOT ?>";
-				google_ad_width = <?php echo $conf->global->MAIN_GOOGLE_AD_WIDTH ?>;
-				google_ad_height = <?php echo $conf->global->MAIN_GOOGLE_AD_HEIGHT ?>;
-				//-->
-			</script>
-			<script type="text/javascript"
-				src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
-			</script>
-		</div>
-	<?php } ?>
-</form>
-
-
-
-
-<!-- authentication mode = <?php echo $main_authentication ?> -->
-<!-- cookie name used for this session = <?php echo $session_name ?> -->
-<!-- urlfrom in this session = <?php echo $_SESSION["urlfrom"] ?> -->
-
-<?php if (! empty($conf->global->MAIN_HTML_FOOTER)) print $conf->global->MAIN_HTML_FOOTER; ?>
-
-</body>
-</html>
-
-<!-- END PHP TEMPLATE -->
diff --git a/htdocs/theme/bureau2crea/tpl/passwordforgotten.tpl.php b/htdocs/theme/bureau2crea/tpl/passwordforgotten.tpl.php
deleted file mode 100644
index 8751ed6eb84347192beffec003f961a3a61af322..0000000000000000000000000000000000000000
--- a/htdocs/theme/bureau2crea/tpl/passwordforgotten.tpl.php
+++ /dev/null
@@ -1,144 +0,0 @@
-<?php
-/* Copyright (C) 2009-2010 Regis Houssin <regis.houssin@capnetworks.com>
- * Copyright (C) 2011-2012 Laurent Destailleur <eldy@users.sourceforge.net>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * 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, see <http://www.gnu.org/licenses/>.
- *
- */
-header('Cache-Control: Public, must-revalidate');
-header("Content-type: text/html; charset=".$conf->file->character_set_client);
-
-?>
-
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<!-- BEGIN PHP TEMPLATE -->
-<html>
-
-<?php
-print '<head>
-<meta name="robots" content="noindex,nofollow" />
-<meta name="author" content="Dolibarr Development Team">
-<link rel="shortcut icon" type="image/x-icon" href="'.$favicon.'"/>
-<title>'.$langs->trans('Login').' '.$title.'</title>'."\n";
-print '<!-- Includes for JQuery (Ajax library) -->'."\n";
-if (constant('JS_JQUERY_UI')) print '<link rel="stylesheet" type="text/css" href="'.JS_JQUERY_UI.'css/'.$jquerytheme.'/jquery-ui.min.css" />'."\n";  // JQuery
-else print '<link rel="stylesheet" type="text/css" href="'.DOL_URL_ROOT.'/includes/jquery/css/'.$jquerytheme.'/jquery-ui-latest.custom.css" />'."\n";    // JQuery
-// CSS forced by modules (relative url starting with /)
-if (isset($conf->modules_parts['css']))
-{
-	$arraycss=(array) $conf->modules_parts['css'];
-	foreach($arraycss as $modcss => $filescss)
-	{
-		$filescss=(array) $filescss;	// To be sure filecss is an array
-		foreach($filescss as $cssfile)
-		{
-			// cssfile is a relative path
-			print '<link rel="stylesheet" type="text/css" title="default" href="'.dol_buildpath($cssfile,1);
-			// We add params only if page is not static, because some web server setup does not return content type text/css if url has parameters, so browser cache is not used.
-			if (!preg_match('/\.css$/i',$cssfile)) print $themeparam;
-			print '"><!-- Added by module '.$modcss. '-->'."\n";
-		}
-	}
-}
-// JQuery. Must be before other includes
-$ext='.js';
-print '<!-- Includes JS for JQuery -->'."\n";
-if (constant('JS_JQUERY')) print '<script type="text/javascript" src="'.JS_JQUERY.'jquery.min'.$ext.'"></script>'."\n";
-else print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/js/jquery-latest.min'.$ext.'"></script>'."\n";
-print '<link rel="stylesheet" type="text/css" href="'.dol_escape_htmltag($conf_css).'" />'."\n";
-if (! empty($conf->global->MAIN_HTML_HEADER)) print $conf->global->MAIN_HTML_HEADER;
-print '<!-- HTTP_USER_AGENT = '.$_SERVER['HTTP_USER_AGENT'].' -->
-</head>';
-
-?>
-
-<body class="body">
-<form id="login" name="login" method="post" action="<?php echo $php_self; ?>">
-<input type="hidden" name="token" value="<?php echo $_SESSION['newtoken']; ?>">
-<input type="hidden" name="action" value="buildnewpassword">
-
-<div id="infoVersion"><?php echo $title; ?></div>
-
-<div id="logoBox">
-  <img alt="Logo" title="" src="<?php echo $urllogo; ?>" />
-</div>
-
-<div id="parameterBox">
-	<div id="logBox">
-		<strong><label for="username"><?php echo $langs->trans('Login'); ?></label></strong>
-		<input type="text" <?php echo $disabled; ?> id="username" name="username" class="flat" size="15" maxlength="25" value="<?php echo $login; ?>" tabindex="1" />
-	</div>
-
-	<?php
-	if (! empty($hookmanager->resArray['options'])) {
-		foreach ($hookmanager->resArray['options'] as $format => $option)
-		{
-			if ($format == 'div') {
-				echo '<!-- Option by hook -->';
-				echo $option;
-			}
-		}
-	}
-	?>
-
-    <?php if ($captcha) { ?>
-        <div class="captchaBox">
-            <strong><label><?php echo $langs->trans('SecurityCode'); ?></label></strong>
-            <input id="securitycode" class="flat" type="text" size="6" maxlength="5" name="code" tabindex="3">
-        </div>
-        <div class="captchaImg">
-            <img src="<?php echo $dol_url_root.'/core/antispamimage.php'; ?>" border="0" width="80" height="32" id="captcha">
-            <a href="<?php echo $php_self; ?>"><?php echo $captcha_refresh; ?></a>
-        </div>
-
-    <?php } ?>
-
-
-    <div id="connectionLine">
-        <input id="password" type="submit" <?php echo $disabled; ?> class="button" name="password" value="<?php echo $langs->trans('SendNewPassword'); ?>" tabindex="4" />
-    </div>
-</div>
-
-</form>
-
-<div class="other">
-<?php if ($mode == 'dolibarr' || ! $disabled) { ?>
-	<font style="font-size: 12px;">
-	<?php echo $langs->trans('SendNewPasswordDesc'); ?>
-	</font>
-<?php }else{ ?>
-	<div class="warning" align="center">
-	<?php echo $langs->trans('AuthenticationDoesNotAllowSendNewPassword', $mode); ?>
-	</div>
-<?php } ?>
-</div>
-
-<br>
-
-<?php if ($message) { ?>
-	<div class="other">
-	<?php echo $message; ?>
-	</div>
-<?php } ?>
-
-<div class="other">
-<a href="<?php echo $dol_url_root; ?>/">
-	<?php echo $langs->trans('BackToLoginPage'); ?>
-</a>
-</div>
-
-</body>
-</html>
-
-<!-- END PHP TEMPLATE -->
\ No newline at end of file
diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php
index 6c497620fbedcda97134e8045432fca63f200fc0..eba9a7cc86d2894dc9c0d9244bea647d527326e4 100644
--- a/htdocs/theme/eldy/style.css.php
+++ b/htdocs/theme/eldy/style.css.php
@@ -346,6 +346,7 @@ th .button {
 }
 
 
+
 /* ============================================================================== */
 /* Styles to hide objects                                                         */
 /* ============================================================================== */
@@ -1633,29 +1634,25 @@ div.liste_titre, tr.liste_titre, tr.liste_titre_sel
     font-family: <?php print $fontlist ?>;
     font-weight: normal;
     border-bottom: 1px solid #FDFFFF;
-    white-space: nowrap;
+    white-space: <?php echo $dol_optimize_smallscreen?'normal':'nowrap'; ?>;
     text-align: <?php echo $left; ?>;
 }
 tr.liste_titre th, th.liste_titre, tr.liste_titre td, td.liste_titre
 {
-	/*border-top: 1px solid #DDDDDD;*/
     font-family: <?php print $fontlist ?>;
     font-weight: normal;
     border-bottom: 1px solid #FDFFFF;
-    white-space: nowrap;
+    white-space: <?php echo $dol_optimize_smallscreen?'normal':'nowrap'; ?>;
 }
 tr.liste_titre_sel th, th.liste_titre_sel, tr.liste_titre_sel td, td.liste_titre_sel
 {
-/*    color: #FFFFFF !important; */
     font-family: <?php print $fontlist ?>;
     font-weight: normal;
     border-bottom: 1px solid #FDFFFF;
-    white-space: nowrap;
+    white-space: <?php echo $dol_optimize_smallscreen?'normal':'nowrap'; ?>;
     text-decoration: underline;
 }
 input.liste_titre {
-    /*background: #7699A9;*/
-    /*background-repeat: repeat-x;*/
     background: transparent;
     border: 0px;
 }