diff --git a/htdocs/admin/compta.php b/htdocs/admin/compta.php
index e45a316858fcb6495590b933082f17bea3ec9b10..a5213413d546a925a226bfe435670eae17bbc5e1 100644
--- a/htdocs/admin/compta.php
+++ b/htdocs/admin/compta.php
@@ -2,7 +2,8 @@
 /* Copyright (C) 2004      Rodolphe Quiedeville <rodolphe@quiedeville.org>
  * Copyright (C) 2004-2008 Laurent Destailleur  <eldy@users.sourceforge.net>
  * Copyright (C) 2005-2009 Regis Houssin        <regis.houssin@capnetworks.com>
- * Copyright (C) 2011-2012 Juanjo Menent	      <jmenent@2byte.es>
+ * Copyright (C) 2011-2012 Juanjo Menent	    <jmenent@2byte.es>
+ * 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
@@ -35,6 +36,10 @@ accessforbidden();
 
 $action = GETPOST('action','alpha');
 
+/*
+ * Actions
+ */
+
 $compta_mode = defined('COMPTA_MODE')?COMPTA_MODE:'RECETTES-DEPENSES';
 
 if ($action == 'setcomptamode')
@@ -87,7 +92,7 @@ if ($action == 'update' || $action == 'add')
 }*/
 
 /*
- * Affichage page
+ * View
  */
 
 llxHeader();
@@ -97,9 +102,18 @@ $form=new Form($db);
 $linkback='<a href="'.DOL_URL_ROOT.'/admin/modules.php">'.$langs->trans("BackToModuleList").'</a>';
 print_fiche_titre($langs->trans('ComptaSetup'),$linkback,'setup');
 
-
 print '<br>';
 
+$h = 0;
+
+$head[$h][0] = DOL_URL_ROOT."/admin/compta.php";
+$head[$h][1] = $langs->trans("Compta");
+$head[$h][2] = 'Compta';
+$hselected=$h;
+$h++;
+
+dol_fiche_head($head, $hselected, $langs->trans("ModuleSetup"));
+
 print '<table class="noborder" width="100%">';
 
 // Cas du parametre COMPTA_MODE
diff --git a/htdocs/admin/contract.php b/htdocs/admin/contract.php
index 80e1547b33fbc22321b5c470937c658d75a08186..5e32dd097d08167bc4e036b49ba37da0c9ddd26a 100644
--- a/htdocs/admin/contract.php
+++ b/htdocs/admin/contract.php
@@ -1,5 +1,6 @@
 <?php
 /* Copyright (C) 2011-2012      Juanjo Menent	    <jmenent@2byte.es>
+ * 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
@@ -27,6 +28,7 @@ require_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php';
 
 $langs->load("admin");
 $langs->load("errors");
+$langs->load("contracts");
 
 if (!$user->admin) accessforbidden();
 
@@ -88,6 +90,20 @@ print_fiche_titre($langs->trans("ContractsSetup"),$linkback,'setup');
 
 print "<br>";
 
+$h = 0;
+
+$head[$h][0] = DOL_URL_ROOT."/admin/contract.php";
+$head[$h][1] = $langs->trans("Contracts");
+$head[$h][2] = 'Contract';
+$hselected=$h;
+$h++;
+
+dol_fiche_head($head, $hselected, $langs->trans("ModuleSetup"));
+
+/*
+ * Contracts Numbering model
+ */
+
 print_titre($langs->trans("ContractsNumberingModules"));
 
 print '<table class="noborder" width="100%">';
@@ -129,7 +145,7 @@ if (is_resource($handle))
                 print $module->info();
                 print '</td>';
 
-                // Show example of numbering module
+                // Show example of numbering model
                 print '<td nowrap="nowrap">';
                 $tmp=$module->getExample();
                 if (preg_match('/^Error/',$tmp)) { $langs->load("errors"); print '<div class="error">'.$langs->trans($tmp).'</div>'; }
diff --git a/htdocs/admin/dons.php b/htdocs/admin/dons.php
index 21c2b3a1a599e645b9b37d3dccce82b96bda13ee..2e62048e32957696c5742a2ecd6c862ba6e84b03 100644
--- a/htdocs/admin/dons.php
+++ b/htdocs/admin/dons.php
@@ -1,6 +1,7 @@
 <?php
 /* Copyright (C) 2005-2010  Laurent Destailleur  	<eldy@users.sourceforge.net>
  * Copyright (C) 2012		Juanjo Menent			<jmenent@2byte.es>
+ * 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
@@ -47,7 +48,7 @@ if ($action == 'specimen')
     $don = new Don($db);
     $don->initAsSpecimen();
 
-    // Charge le modele
+    // Search template files
     $dir = DOL_DOCUMENT_ROOT . "/core/modules/dons/";
     $file = $modele.".modules.php";
     if (file_exists($dir.$file))
@@ -75,67 +76,39 @@ if ($action == 'specimen')
     }
 }
 
-if ($action == 'setdoc')
+// Set default model
+else if ($action == 'setdoc')
 {
-	$value = GETPOST('value','alpha');
-	$label = GETPOST('label','alpha');
-	$scandir = GETPOST('scandir','alpha');
-	
-    $db->begin();
-
-    if (dolibarr_set_const($db, "DON_ADDON_MODEL",$value,'chaine',0,'',$conf->entity))
-    {
-        $conf->global->DON_ADDON_MODEL = $value;
-    }
-
-    // On active le modele
-    $type='donation';
-    $sql_del = "DELETE FROM ".MAIN_DB_PREFIX."document_model";
-    $sql_del.= " WHERE nom = '".$db->escape($value)."' AND type = '".$type."'";
-    $result1=$db->query($sql_del);
-
-    $sql = "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity, libelle, description)";
-    $sql.= " VALUES ('".$db->escape($value)."', '".$type."', ".$conf->entity.", ";
-    $sql.= ($label?"'".$db->escape($label)."'":'null').", ";
-    $sql.= (! empty($scandir)?"'".$db->escape($scandir)."'":"null");
-    $sql.= ")";
-    $result2=$db->query($sql);
-    if ($result1 && $result2)
-    {
-        $db->commit();
-    }
-    else
-    {
-        $db->rollback();
-    }
+	if (dolibarr_set_const($db, "COMMANDE_ADDON_PDF",$value,'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 = $value;
+	}
+
+	// On active le modele
+	$ret = delDocumentModel($value, $type);
+	if ($ret > 0)
+	{
+		$ret = addDocumentModel($value, $type, $label, $scandir);
+	}
 }
 
-if ($action == 'set')
+// Activate a model
+else if ($action == 'set')
 {
-	$value = GETPOST('value','alpha');
-	$label = GETPOST('label','alpha');
-	$scandir = GETPOST('scandir','alpha');
-	
-    $type='donation';
-    $sql = "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity, libelle, description)";
-    $sql.= " VALUES ('".$db->escape($value)."','".$type."',".$conf->entity.", ";
-    $sql.= ($label?"'".$db->escape($label)."'":'null').", ";
-    $sql.= (! empty($scandir)?"'".$db->escape($scandir)."'":"null");
-    $sql.= ")";
-    $resql=$db->query($sql);
+	$ret = addDocumentModel($value, $type, $label, $scandir);
 }
 
-if ($action == 'del')
+else if ($action == 'del')
 {
-	$value = GETPOST('value','alpha');
-	
-    $type='donation';
-    $sql = "DELETE FROM ".MAIN_DB_PREFIX."document_model";
-    $sql .= "  WHERE nom = '".$value."' AND type = '".$type."'";
-    $resql=$db->query($sql);
+	$ret = delDocumentModel($value, $type);
+	if ($ret > 0)
+	{
+        if ($conf->global->COMMANDE_ADDON_PDF == "$value") dolibarr_del_const($db, 'COMMANDE_ADDON_PDF',$conf->entity);
+	}
 }
 
-
 /*
  * View
  */
@@ -147,6 +120,17 @@ llxHeader('',$langs->trans("DonationsSetup"),'DonConfiguration');
 
 $linkback='<a href="'.DOL_URL_ROOT.'/admin/modules.php">'.$langs->trans("BackToModuleList").'</a>';
 print_fiche_titre($langs->trans("DonationsSetup"),$linkback,'setup');
+print '<br>';
+
+$h = 0;
+
+$head[$h][0] = DOL_URL_ROOT."/admin/dons.php";
+$head[$h][1] = $langs->trans("Donations");
+$head[$h][2] = 'Donation';
+$hselected=$h;
+$h++;
+
+dol_fiche_head($head, $hselected, $langs->trans("ModuleSetup"));
 
 
 // Document templates
diff --git a/htdocs/admin/project.php b/htdocs/admin/project.php
index 8ea4910541ce1b6d1dda792c1bfbdcbd457e2382..f2f216d7b5257bea7e0d7cff60d80de458124048 100644
--- a/htdocs/admin/project.php
+++ b/htdocs/admin/project.php
@@ -2,7 +2,7 @@
 /* Copyright (C) 2010 		Regis Houssin		<regis.houssin@capnetworks.com>
  * Copyright (C) 2011 		Laurent Destailleur	<eldy@users.sourceforge.net>
  * Copyright (C) 2011-2012 	Juanjo Menent		<jmenent@2byte.es>
- * Copyright (C) 2011-2012  Philippe Grand	    <philippe.grand@atoo-net.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
@@ -66,7 +66,7 @@ if ($action == 'updateMask')
     }
 }
 
-if ($action == 'specimen')
+else if ($action == 'specimen')
 {
 	$modele=GETPOST('module','alpha');
 
@@ -111,12 +111,13 @@ if ($action == 'specimen')
 	}
 }
 
-if ($action == 'set')
+// Activate a model
+else if ($action == 'set')
 {
 	$ret = addDocumentModel($value, $type, $label, $scandir);
 }
 
-if ($action == 'del')
+else if ($action == 'del')
 {
 	$ret = delDocumentModel($value, $type);
 	if ($ret > 0)
@@ -125,7 +126,8 @@ if ($action == 'del')
 	}
 }
 
-if ($action == 'setdoc')
+// Set default model
+else if ($action == 'setdoc')
 {
 	if (dolibarr_set_const($db, "PROJECT_ADDON_PDF",$value,'chaine',0,'',$conf->entity))
 	{
@@ -142,7 +144,7 @@ if ($action == 'setdoc')
 	}
 }
 
-if ($action == 'setmod')
+else if ($action == 'setmod')
 {
 	// TODO Verifier si module numerotation choisi peut etre active
 	// par appel methode canBeActivated
@@ -156,7 +158,7 @@ if ($action == 'setmod')
 
 $dirmodels=array_merge(array('/'),(array) $conf->modules_parts['models']);
 
-llxHeader();
+llxHeader("",$langs->trans("ProjectsSetup"));
 
 $form=new Form($db);
 
@@ -165,8 +167,20 @@ print_fiche_titre($langs->trans("ProjectsSetup"),$linkback,'setup');
 
 print "<br>";
 
+$h = 0;
 
-// Project numbering module
+$head[$h][0] = DOL_URL_ROOT."/admin/project.php";
+$head[$h][1] = $langs->trans("Projects");
+$head[$h][2] = 'Project';
+$hselected=$h;
+$h++;
+
+dol_fiche_head($head, $hselected, $langs->trans("ModuleSetup"));
+
+/*
+ * Projects Numbering model
+ */
+ 
 print_titre($langs->trans("ProjectsNumberingModules"));
 
 print '<table class="noborder" width="100%">';
@@ -198,7 +212,7 @@ foreach ($dirmodels as $reldir)
 					$file = $reg[1];
 					$classname = substr($file,4);
 
-					require_once DOL_DOCUMENT_ROOT ."/core/modules/project/".$file.'.php';
+					require_once $dir.$file.'.php';
 
 					$module = new $file;
 
@@ -213,7 +227,7 @@ foreach ($dirmodels as $reldir)
 						print $module->info();
 						print '</td>';
 
-						// Show example of numbering module
+						// Show example of numbering model
 						print '<td nowrap="nowrap">';
 						$tmp=$module->getExample();
 						if (preg_match('/^Error/',$tmp)) print '<div class="error">'.$langs->trans($tmp).'</div>';
@@ -269,7 +283,7 @@ print '</table><br>';
 
 
 /*
- * Modeles documents for projects
+ * Document templates generators
  */
 
 print_titre($langs->trans("ProjectsModelModule"));
@@ -352,7 +366,7 @@ foreach ($dirmodels as $reldir)
 						print "</td>";
 					}
 
-					// Defaut
+					// Default
 					print "<td align=\"center\">";
 					if ($conf->global->PROJECT_ADDON_PDF == "$name")
 					{