diff --git a/.tx/config b/.tx/config
index c20f75769ae293f1f0f025dbe5181ffdae2a6805..d6e339462e3f0fdcb342a92e4f4b316bec49d5f4 100644
--- a/.tx/config
+++ b/.tx/config
@@ -260,6 +260,12 @@ source_file = htdocs/langs/en_US/propal.lang
 source_lang = en_US
 type = MOZILLAPROPERTIES
 
+[dolibarr.resource]
+file_filter = htdocs/langs/<lang>/resource.lang
+source_file = htdocs/langs/en_US/resource.lang
+source_lang = en_US
+type = MOZILLAPROPERTIES
+
 [dolibarr.salaries]
 file_filter = htdocs/langs/<lang>/salaries.lang
 source_file = htdocs/langs/en_US/salaries.lang
diff --git a/ChangeLog b/ChangeLog
index 22b1631390f50f6a74b0f0847d607d4ed500f748..c567d47a9bc52b7ab1f1394d21ce17876c4b2182 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -174,7 +174,10 @@ Dolibarr better:
 - Fix: Civility & birthdate wasn't save into adherent module.
 - Fix: webservice Thirdparty parameter lastname for invidual creation is now lastname and not ref
 - Fix: Chars - is no more allowed into value for code for extra fields.
-( Fix: [ bug #1622 ] Requesting holiday than spans across two years cause high CPU usage by Apache
+- Fix: [ bug #1622 ] Requesting holiday than spans across two years cause high CPU usage by Apache
+- Fix: [ bug #1595 ] Selected boolean extrafield in intervention creation page, does not save state
+- Fix: Show sender Country on PDF docs when sender Country <> receiver Country
+- Fix: [ bug #1624 ] Use lowest buying price for margin when selling with POS
 
 ***** ChangeLog for 3.6.1 compared to 3.6.* *****
 For users:
diff --git a/build/doxygen/doxygen_footer.html b/build/doxygen/doxygen_footer.html
index 1f4cbd00215c7db9ae4bd1536c7604137dad96b6..e11df270ddcf1f4e0a27da5ddd9a76b1a73a9787 100755
--- a/build/doxygen/doxygen_footer.html
+++ b/build/doxygen/doxygen_footer.html
@@ -26,7 +26,7 @@ for <a href="http://www.dolibarr.org">$projectname</a> by Doxygen $doxygenversio
 
 
 <!--  Google AdSense -->
-<center>
+<div class="center">
 <script type="text/javascript"><!--
 google_ad_client = "pub-1071905880519467";
 /* PUBBANDEAUDOLIBARR */
@@ -36,7 +36,7 @@ google_ad_height = 60;
 //-->
 </script>
 <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
-</center>
+</div>
 <!-- End google adsense -->
 <br>
 
diff --git a/build/doxygen/doxygen_header.html b/build/doxygen/doxygen_header.html
index 363d408d43c85ec96dd5c424445fdf44bd451df0..0c2e189136b7f40fe9947795a92c2a72ca6d3e17 100755
--- a/build/doxygen/doxygen_header.html
+++ b/build/doxygen/doxygen_header.html
@@ -24,7 +24,7 @@ File added into doxygen generated documentation
 </div>
 
 <div id="logodol">
-<center>
+<div class="center">
 <table width="100%">
 	<tr>
 		<td><div id="projectname">$projectname</div> - <span id="projectnumber">$projectnumber</span></td>
@@ -54,7 +54,7 @@ File added into doxygen generated documentation
 		<!-- banner end --></td>
 	</tr>
 </table>
-</center>
+</div>
 
 </div>
 
diff --git a/dev/skeletons/skeleton_page.php b/dev/skeletons/skeleton_page.php
index deaecd955267b0999a2257ea0459c4d37741df09..ac329318ae53c58b500d01b345f4821cecb4f54f 100644
--- a/dev/skeletons/skeleton_page.php
+++ b/dev/skeletons/skeleton_page.php
@@ -282,7 +282,7 @@ if ($action == 'create')
 
 	print '<br>';
 
-	print '<center><input type="submit" class="button" name="add" value="'.$langs->trans("Create").'"> &nbsp; <input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+	print '<div class="center"><input type="submit" class="button" name="add" value="'.$langs->trans("Create").'"> &nbsp; <input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></div>';
 
 	print '</form>';
 
@@ -304,7 +304,7 @@ if (($id || $ref) && $action == 'edit')
 
 	print '<br>';
 
-	print '<center><input type="submit" class="button" name="add" value="'.$langs->trans("Create").'"></center>';
+	print '<div class="center"><input type="submit" class="button" name="add" value="'.$langs->trans("Create").'"></div>';
 
 	print '</form>';
 
diff --git a/dev/test/testdiv.php b/dev/test/testdiv.php
index 8700be5b2ab4ac364195ad1124b41a969cca2546..2f1bd9182ae5f43b5ea3370e9ce14fc923dda32a 100644
--- a/dev/test/testdiv.php
+++ b/dev/test/testdiv.php
@@ -19,14 +19,14 @@
 </head>
 <body class="body">
 
-<center>
+<div class="center">
 
 <div class="login_table" align="center">
 
 <!-- <tr><td colspan="2" valign="middle"> -->
 <div id="login_line1" align="center">
 
-<div id="login_left" style="display: inline-block; min-width: 250px; margin: 0 auto;"><center>
+<div id="login_left" style="display: inline-block; min-width: 250px; margin: 0 auto;"><div class="center">
 
 <table class="none" summary="Login pass" cellpadding="2" align="center">
 
@@ -46,7 +46,7 @@
 
 </table>
 
-</center>
+</div>
 </div> <!-- end div left -->
 
 <!-- </td>
@@ -64,7 +64,7 @@
 
 </div>
 
-</center>
+</div>
 
 </body>
 </html>
diff --git a/htdocs/accountancy/admin/card.php b/htdocs/accountancy/admin/card.php
index ad6ca01b6ca8deffb9666fe078e24ae8e58bb6ab..fdc2f78be6446b25d7e567643108214e5397c118 100644
--- a/htdocs/accountancy/admin/card.php
+++ b/htdocs/accountancy/admin/card.php
@@ -164,8 +164,11 @@ if ($action == 'create')
 	
 	print '</table>';
 	
-	print '<br><center><input class="button" type="submit" value="' . $langs->trans("Save") . '"> &nbsp; &nbsp; ';
-	print '<input class="button" type="submit" name="cancel" value="' . $langs->trans("Cancel") . '"></center';
+	print '<br><div class="center">';
+	print '<input class="button" type="submit" value="' . $langs->trans("Save") . '">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+	print '<input class="button" type="submit" name="cancel" value="' . $langs->trans("Cancel") . '">';
+	print '</div>';
 	
 	print '</form>';
 }
@@ -214,9 +217,11 @@ else if ($id)
 			
 			print '</table>';
 			
-			print '<br><center><input type="submit" class="button" value="' . $langs->trans("Save") . '"> &nbsp; ';
+			print '<br><div class="center">';
+			print '<input type="submit" class="button" value="' . $langs->trans("Save") . '">';
+			print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 			print '<input type="submit" name="cancel" class="button" value="' . $langs->trans("Cancel") . '">';
-			print '</center>';
+			print '</div>';
 			
 			print '</form>';
 			
diff --git a/htdocs/accountancy/admin/fiscalyear_card.php b/htdocs/accountancy/admin/fiscalyear_card.php
index 423ac88b490cf5dbeac2c495af910ec15972e9f0..4958749f0a531b1846129dbdc3a8bbffc04976d5 100644
--- a/htdocs/accountancy/admin/fiscalyear_card.php
+++ b/htdocs/accountancy/admin/fiscalyear_card.php
@@ -200,8 +200,11 @@ if ($action == 'create')
 
     print '</table>';
 
-    print '<br><center><input class="button" type="submit" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; ';
-    print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'"></center';
+    print '<br><div class="center">';
+	print '<input class="button" type="submit" value="'.$langs->trans("Save").'">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+    print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
     print '</form>';
 }
@@ -251,9 +254,11 @@ else if ($id)
 
             print '</table>';
 
-            print '<br><center><input type="submit" class="button" value="'.$langs->trans("Save").'"> &nbsp; ';
+            print '<br><div class="center">';
+			print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+			print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
             print '<input type="submit" name="cancel" class="button" value="'.$langs->trans("Cancel").'">';
-            print '</center>';
+            print '</div>';
 
             print '</form>';
 
diff --git a/htdocs/accountancy/customer/card.php b/htdocs/accountancy/customer/card.php
index 28d3d0c1f7958485ef13888bb5c2bdb58bf48c5a..4249688fabec20402b42dc6a4940e0afa484633d 100644
--- a/htdocs/accountancy/customer/card.php
+++ b/htdocs/accountancy/customer/card.php
@@ -127,8 +127,11 @@ if (! empty($id)) {
 			print '</td></tr>';
 			print '</table>';
 			
-			print '<br><center><input class="button" type="submit" value="' . $langs->trans("Save") . '"> &nbsp; &nbsp; ';
-			print '<input class="button" type="submit" name="cancel" value="' . $langs->trans("Cancel") . '"></center';
+			print '<br><div class="center">';
+			print '<input class="button" type="submit" value="' . $langs->trans("Save") . '">';
+			print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+			print '<input class="button" type="submit" name="cancel" value="' . $langs->trans("Cancel") . '">';
+			print '</div>';
 	
 			print '</form>';
 		} else {
diff --git a/htdocs/adherents/admin/public.php b/htdocs/adherents/admin/public.php
index 740a5c978790c044d5bfb9841dd36468eb79c8d4..0f92e0174373acdf7fd122f78a219f2855366155 100644
--- a/htdocs/adherents/admin/public.php
+++ b/htdocs/adherents/admin/public.php
@@ -203,9 +203,9 @@ if (! empty($conf->paybox->enabled) || ! empty($conf->paypal->enabled))
 
 print '</table>';
 
-print '<center>';
-print '<br><input type="submit" class="button" value="'.$langs->trans("Modify").'">';
-print '</center>';
+print '<br><div class="center">';
+print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">';
+print '</div>';
 
 print '</form>';
 
diff --git a/htdocs/adherents/card.php b/htdocs/adherents/card.php
index d629598158685e34268b990fb538ea4ecd943068..a4463766278978f7c2c8cbeebe32ab10e24342ae 100644
--- a/htdocs/adherents/card.php
+++ b/htdocs/adherents/card.php
@@ -915,7 +915,7 @@ else
 		print "</table>\n";
 		print '<br>';
 
-		print '<center><input type="submit" class="button" value="'.$langs->trans("AddMember").'"></center>';
+		print '<div class="center"><input type="submit" class="button" value="'.$langs->trans("AddMember").'"></div>';
 
 		print "</form>\n";
 
@@ -1164,11 +1164,11 @@ else
 
 		print '</table>';
 
-		print '<br><center>';
+		print '<br><div class="center">';
 		print '<input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
-		print ' &nbsp; &nbsp; &nbsp; ';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 		print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-		print '</center';
+		print '</div>';
 
 		print '</form>';
 
diff --git a/htdocs/adherents/card_subscriptions.php b/htdocs/adherents/card_subscriptions.php
index ded8e8ab50aafabc176e0640cd4b85489b523cdb..eade4bf7373012fd3adc771cf887f0cf1bba70d2 100644
--- a/htdocs/adherents/card_subscriptions.php
+++ b/htdocs/adherents/card_subscriptions.php
@@ -1078,11 +1078,11 @@ if ($rowid)
         print '</table>';
         print '<br>';
 
-        print '<center>';
+        print '<div class="center">';
         print '<input type="submit" class="button" name="add" value="'.$langs->trans("AddSubscription").'">';
-        print ' &nbsp; &nbsp; ';
+        print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
         print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-        print '</center>';
+        print '</div>';
 
         print '</form>';
 
diff --git a/htdocs/adherents/type.php b/htdocs/adherents/type.php
index 0ffdc8b7e7f6e55952298d2b1cebf3121b5eb621..a17350a379dabeea6d0055e8c768826746e816b0 100644
--- a/htdocs/adherents/type.php
+++ b/htdocs/adherents/type.php
@@ -271,9 +271,11 @@ if ($action == 'create')
 	}
 	print "</table>\n";
 
-	print '<br>';
-	print '<center><input type="submit" name="button" class="button" value="'.$langs->trans("Add").'"> &nbsp; &nbsp; ';
-	print '<input type="submit" name="button" class="button" value="'.$langs->trans("Cancel").'"></center>';
+	print '<br><div class="center">';
+	print '<input type="submit" name="button" class="button" value="'.$langs->trans("Add").'">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+	print '<input type="submit" name="button" class="button" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
 	print "</form>\n";
 }
@@ -678,8 +680,11 @@ if ($rowid > 0)
 			print '</table><br><br>';
 		}
 
-		print '<center><input type="submit" class="button" value="'.$langs->trans("Save").'"> &nbsp; &nbsp;';
-		print '<input type="submit" name="button" class="button" value="'.$langs->trans("Cancel").'"></center>';
+		print '<div class="center">';
+		print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+		print '<input type="submit" name="button" class="button" value="'.$langs->trans("Cancel").'">';
+		print '</div>';
 
 		print "</form>";
 	}
diff --git a/htdocs/admin/agenda.php b/htdocs/admin/agenda.php
index 5ad9673a16fcde966572137019b03e81f2898a5b..5d10f4614cc6cc66760f49edc19cdd7259d6cee3 100644
--- a/htdocs/admin/agenda.php
+++ b/htdocs/admin/agenda.php
@@ -184,9 +184,9 @@ if (! empty($triggers))
 }
 print '</table>';
 
-print '<br><center>';
+print '<br><div class="center">';
 print '<input type="submit" name="save" class="button" value="'.$langs->trans("Save").'">';
-print "</center>";
+print "</div>";
 
 print "</form>\n";
 
diff --git a/htdocs/admin/agenda_extsites.php b/htdocs/admin/agenda_extsites.php
index 6b683c8b52b87afea874c7842a7edeb14c3c9a26..d6ddf70528be719bdc9bd288d88356acbf7b52de 100644
--- a/htdocs/admin/agenda_extsites.php
+++ b/htdocs/admin/agenda_extsites.php
@@ -220,9 +220,9 @@ while ($i <= $MAXAGENDA)
 print '</table>';
 print '<br>';
 
-print '<center>';
-print "<input type=\"submit\" id=\"save\" name=\"save\" class=\"button hideifnotset\" value=\"".$langs->trans("Save")."\">";
-print "</center>";
+print '<div class="center">';
+print '<input type="submit" id="save" name="save" class="button hideifnotset" value="'.$langs->trans("Save").'">';
+print '</div>';
 
 print "</form>\n";
 
diff --git a/htdocs/admin/agenda_other.php b/htdocs/admin/agenda_other.php
index a069a0718c9cbd2e8189a14da9a60fcdcb1f4fe8..033c5d35c189a3938564b155b900d1e42e4454f6 100644
--- a/htdocs/admin/agenda_other.php
+++ b/htdocs/admin/agenda_other.php
@@ -157,7 +157,7 @@ print '</td></tr>'."\n";
 
 print '</table>';
 
-print '<center><input class="button" type="submit" name="save" value="'.dol_escape_htmltag($langs->trans("Save")).'"></center>';
+print '<div class="center"><input class="button" type="submit" name="save" value="'.dol_escape_htmltag($langs->trans("Save")).'"></div>';
 
 print '</form>';
 
diff --git a/htdocs/admin/agenda_xcal.php b/htdocs/admin/agenda_xcal.php
index 40454ed1302759e95942a891340a3062f6b76c50..671c24880bcb93d7bce2c31183da30cbfbd52d47 100644
--- a/htdocs/admin/agenda_xcal.php
+++ b/htdocs/admin/agenda_xcal.php
@@ -136,9 +136,9 @@ print "</tr>";
 
 print '</table>';
 
-print '<br><center>';
+print '<br><div class="center">';
 print "<input type=\"submit\" name=\"save\" class=\"button\" value=\"".$langs->trans("Save")."\">";
-print "</center>";
+print "</div>";
 
 print "</form>\n";
 
diff --git a/htdocs/admin/clicktodial.php b/htdocs/admin/clicktodial.php
index 3e85d377055a2996a018e5f961678c536ac2e8bb..414e0ed1e99cb7ba82066407b0aa8b8849b3f6e2 100644
--- a/htdocs/admin/clicktodial.php
+++ b/htdocs/admin/clicktodial.php
@@ -94,7 +94,7 @@ print '</td></tr>';
 
 print '</table>';
 
-print '<center><br><input type="submit" class="button" value="'.$langs->trans("Modify").'"></center>';
+print '<div class="center"><br><input type="submit" class="button" value="'.$langs->trans("Modify").'"></div>';
 
 print '</form><br><br>';
 
diff --git a/htdocs/admin/company.php b/htdocs/admin/company.php
index 96dff7755afd19b7645a4b2c03e36ad684dc8f66..a349973b3dc10ac51877058b6d5134ab77e6ef74 100644
--- a/htdocs/admin/company.php
+++ b/htdocs/admin/company.php
@@ -668,11 +668,11 @@ if ($action == 'edit' || $action == 'updateedit')
     }
 
 
-    print '<br><center>';
+    print '<br><div class="center">';
     print '<input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
-    print ' &nbsp; &nbsp; ';
+    print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
     print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-    print '</center>';
+    print '</div>';
     print '<br>';
 
     print '</form>';
diff --git a/htdocs/admin/delais.php b/htdocs/admin/delais.php
index 274d1adc34ea8494b5a0c234cef8e08681bc81f0..b795f121234ac2e8a38ae6cd262922c8df50e93d 100644
--- a/htdocs/admin/delais.php
+++ b/htdocs/admin/delais.php
@@ -177,7 +177,7 @@ if ($action == 'edit')
 
 	print '<br>';
 
-    print '<br><center><input type="submit" class="button" value="'.$langs->trans("Save").'"></center>';
+    print '<br><div class="center"><input type="submit" class="button" value="'.$langs->trans("Save").'"></div>';
     print '<br>';
 
     print '</form>';
diff --git a/htdocs/admin/external_rss.php b/htdocs/admin/external_rss.php
index f23e80f78ff7d9bb24ef62d237d41b517427133e..520193a81c3c94ea933df786c48372aa090c7804 100644
--- a/htdocs/admin/external_rss.php
+++ b/htdocs/admin/external_rss.php
@@ -214,11 +214,11 @@ print '<td>http://news.google.com/news?ned=us&topic=h&output=rss<br>http://www.d
 print '</tr>';
 print '</table>';
 
-print '<center><br>';
+print '<br><div class="center">';
 print '<input type="submit" class="button" value="'.$langs->trans("Add").'">';
 print '<input type="hidden" name="action" value="add">';
 print '<input type="hidden" name="norss" value="'.($lastexternalrss+1).'">';
-print '<br><br>';
+print '</div><br><br>';
 
 print '</form>';
 
diff --git a/htdocs/admin/fckeditor.php b/htdocs/admin/fckeditor.php
index 2541a6265e7b282b06f860a12ba5e0e6c8ea865b..a66c417923bd20046e53fdbb90833d0d378bd386 100644
--- a/htdocs/admin/fckeditor.php
+++ b/htdocs/admin/fckeditor.php
@@ -165,7 +165,7 @@ else
     $readonly=($mode=='dolibarr_readonly'?1:0);
     $editor=new DolEditor('formtestfield',isset($conf->global->FCKEDITOR_TEST)?$conf->global->FCKEDITOR_TEST:'Test','',200,$mode,'In', true, $uselocalbrowser, 1, 120, 8, $readonly);
     $editor->Create();
-    print '<center><br><input class="button" type="submit" name="save" value="'.$langs->trans("Save").'"></center>'."\n";
+    print '<br><div class="center"><input class="button" type="submit" name="save" value="'.$langs->trans("Save").'"></div>'."\n";
     print '<div id="divforlog"></div>';
     print '</form>'."\n";
 
diff --git a/htdocs/admin/ihm.php b/htdocs/admin/ihm.php
index bd2ffa6634271fa16651e543e6854ed3259b9590..23e7cc963637bcbb51909cb6a39e9cf5f4b8fa9a 100644
--- a/htdocs/admin/ihm.php
+++ b/htdocs/admin/ihm.php
@@ -287,9 +287,9 @@ if ($action == 'edit')	// Edit
 	print '</table>'."\n";
 
 
-    print '<br><center>';
+    print '<br><div class="center">';
     print '<input class="button" type="submit" value="'.$langs->trans("Save").'">';
-    print '</center>';
+    print '</div>';
 
     print '</form>';
     print '<br>';
diff --git a/htdocs/admin/index.php b/htdocs/admin/index.php
index bbedab346d1c971901affa331efb752a8dfdbb7a..6ec184d68ecfdfc2e72a22a4184069e004361817 100644
--- a/htdocs/admin/index.php
+++ b/htdocs/admin/index.php
@@ -109,7 +109,7 @@ if (empty($reshook))
 	print "<br>";
 
 	// Show logo
-	print '<center><div class="logo_setup"></div></center>';
+	print '<div class="center"><div class="logo_setup"></div></div>';
 }
 
 
diff --git a/htdocs/admin/ldap.php b/htdocs/admin/ldap.php
index ef893031db171601909a4c2425f5275be6b6fb56..e84a3abfffae646cf40efd6c58e2179dedbfbca0 100644
--- a/htdocs/admin/ldap.php
+++ b/htdocs/admin/ldap.php
@@ -239,7 +239,7 @@ print '</td><td>secret</td></tr>';
 
 print '</table>';
 
-print '<center><input type="submit" class="button" value="'.$langs->trans("Modify").'"></center>';
+print '<div class="center"><input type="submit" class="button" value="'.$langs->trans("Modify").'"></div>';
 
 print '</form>';
 
diff --git a/htdocs/admin/limits.php b/htdocs/admin/limits.php
index 5896ffc5416a60e6bcd0ddb17a96c57cca8c98a8..2281f83bdd14cc79f596d50d87b5ffb2a5c62c8e 100644
--- a/htdocs/admin/limits.php
+++ b/htdocs/admin/limits.php
@@ -126,9 +126,9 @@ if ($action == 'edit')
 
     print '</table>';
 
-    print '<br><center>';
+    print '<br><div class="center">';
     print '<input class="button" type="submit" value="'.$langs->trans("Save").'">';
-    print '</center>';
+    print '</div>';
 
     print '</form>';
     print '<br>';
diff --git a/htdocs/admin/mails.php b/htdocs/admin/mails.php
index 61914d1a09c6d960d0148103e30340c60e00000a..b39760c69077b16358e0b57dccf041db2813969d 100644
--- a/htdocs/admin/mails.php
+++ b/htdocs/admin/mails.php
@@ -477,11 +477,11 @@ if ($action == 'edit')
 	print '"></td></tr>';
 	print '</table>';
 
-	print '<br><center>';
+	print '<br><div class="center">';
 	print '<input class="button" type="submit" name="save" value="'.$langs->trans("Save").'">';
-	print ' &nbsp; &nbsp; ';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 	print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'">';
-	print '</center>';
+	print '</div>';
 
 	print '</form>';
 	print '<br>';
diff --git a/htdocs/admin/menus.php b/htdocs/admin/menus.php
index 6dfefd14feb0f5bc0e07754eee201262e9276bcd..c5fb55cbce50c0c029e200aaf96ff554b0164948 100644
--- a/htdocs/admin/menus.php
+++ b/htdocs/admin/menus.php
@@ -203,11 +203,11 @@ if ($action == 'edit')
 
 	print '</table>';
 
-	print '<br><center>';
+	print '<br><div class="center">';
 	print '<input class="button" type="submit" name="save" value="'.$langs->trans("Save").'">';
-	print ' &nbsp; &nbsp; ';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 	print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'">';
-	print '</center>';
+	print '</div>';
 
 	print '</form>';
 }
diff --git a/htdocs/admin/menus/edit.php b/htdocs/admin/menus/edit.php
index ff015884bbc0bc90c6a054d45c47198d6c0e0aa6..c8964d7bbaa6fba0dfd009a4f3cad0e279736ffd 100644
--- a/htdocs/admin/menus/edit.php
+++ b/htdocs/admin/menus/edit.php
@@ -369,9 +369,11 @@ if ($action == 'create')
     print '</table>';
 
     // Boutons
-    print '<center><br><input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
-    print ' &nbsp; &nbsp; ';
-    print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+    print '<br><div class="center">';
+	print '<input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
+    print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+    print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
     print '</form>';
 }
@@ -453,9 +455,11 @@ elseif ($action == 'edit')
     print '</table>';
 
     // Bouton
-    print '<center><br><input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
-    print ' &nbsp; &nbsp; ';
-    print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+    print '<br><div class="center">';
+	print '<input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
+    print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+    print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
     print '</form>';
 
diff --git a/htdocs/admin/notification.php b/htdocs/admin/notification.php
index 14aeba65c29aa4993d5c0b2576233e592e55888d..ce3c8d10f732879d7a362c782a19d44ffe2822af 100644
--- a/htdocs/admin/notification.php
+++ b/htdocs/admin/notification.php
@@ -142,7 +142,7 @@ print '</table>';
 
 print '<br>';
 
-print '<center><input type="submit" class="button" value="'.$langs->trans("Save").'"></center>';
+print '<div class="center"><input type="submit" class="button" value="'.$langs->trans("Save").'"></div>';
 
 print '</form>';
 
diff --git a/htdocs/admin/pdf.php b/htdocs/admin/pdf.php
index f21687eecf72f3ccb8301745242bded4d614ba5b..64a213467d42d7e93829bd0fed687f25f303c32c 100644
--- a/htdocs/admin/pdf.php
+++ b/htdocs/admin/pdf.php
@@ -250,9 +250,9 @@ if ($action == 'edit')	// Edit
 
 	print '</table>';
 
-    print '<br><center>';
+    print '<br><div class="center">';
     print '<input class="button" type="submit" value="'.$langs->trans("Save").'">';
-    print '</center>';
+    print '</div>';
 
     print '</form>';
     print '<br>';
diff --git a/htdocs/admin/prelevement.php b/htdocs/admin/prelevement.php
index 6094bb7e4f128682ada02a5e099caf6104542d6f..c5e7ddfabf674c40944c23827b470d99dc169788 100644
--- a/htdocs/admin/prelevement.php
+++ b/htdocs/admin/prelevement.php
@@ -161,7 +161,7 @@ print '</td></tr>';
 print '</table>';
 print '<br>';
 
-print '<center><input type="submit" class="button" value="'.$langs->trans("Save").'"></center>';
+print '<div class="center"><input type="submit" class="button" value="'.$langs->trans("Save").'"></div>';
 
 print '</form>';
 
diff --git a/htdocs/admin/propal.php b/htdocs/admin/propal.php
index 328866eb9647f20c71e8d5c1a4b2e73b3122f856..aef978ec6ad73e635fc565946d07df5e8d065295 100644
--- a/htdocs/admin/propal.php
+++ b/htdocs/admin/propal.php
@@ -163,6 +163,22 @@ if ($action == 'setdefaultduration')
 	}
 }
 
+if ($action == 'set_BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL')
+{
+    $res = dolibarr_set_const($db, "BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL",$value,'chaine',0,'',$conf->entity);
+
+    if (! $res > 0) $error++;
+
+    if (! $error)
+    {
+        setEventMessage($langs->trans("SetupSaved"));
+    }
+    else
+    {
+        setEventMessage($langs->trans("Error"),'errors');
+    }
+}
+
 // Define constants for submodules that contains parameters (forms with param1, param2, ... and value1, value2, ...)
 if ($action == 'setModuleOptions')
 {
@@ -582,6 +598,35 @@ print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">'
 print "</td></tr>\n";
 print '</form>';
 
+if ($conf->banque->enabled)
+{
+    $var=!$var;
+    print '<tr '.$bc[$var].'><td>';
+    print $langs->trans("BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL").'</td><td>&nbsp</td><td align="center">';
+    if (! empty($conf->use_javascript_ajax))
+    {
+        print ajax_constantonoff('BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL');
+    }
+    else
+    {
+        if (empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL))
+        {
+            print '<a href="'.$_SERVER['PHP_SELF'].'?action=set_BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL&amp;value=1">'.img_picto($langs->trans("Disabled"),'switch_off').'</a>';
+        }
+        else
+        {
+            print '<a href="'.$_SERVER['PHP_SELF'].'?action=set_BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL&amp;value=0">'.img_picto($langs->trans("Enabled"),'switch_on').'</a>';
+        }
+    }
+    print '</td></tr>';
+}
+else
+{
+    $var=!$var;
+    print '<tr '.$bc[$var].'><td>';
+    print $langs->trans("BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL").'</td><td>&nbsp;</td><td align="center">'.$langs->trans('NotAvailable').'</td></tr>';
+}
+
 print '</table>';
 
 
diff --git a/htdocs/admin/sms.php b/htdocs/admin/sms.php
index 0ba8427cca5f90eb8801cd4c8d099b62fc54de5a..6213acec5b7fa6579d7b21ac70e8f54b5191310d 100644
--- a/htdocs/admin/sms.php
+++ b/htdocs/admin/sms.php
@@ -203,11 +203,11 @@ if ($action == 'edit')
 	*/
 	print '</table>';
 
-	print '<br><center>';
+	print '<br><div class="center">';
 	print '<input class="button" type="submit" name="save" value="'.$langs->trans("Save").'"'.(!count($listofmethods)?' disabled="disbaled"':'').'>';
-	print ' &nbsp; &nbsp; ';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 	print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'">';
-	print '</center>';
+	print '</div>';
 
 	print '</form>';
 	print '<br>';
diff --git a/htdocs/admin/tools/index.php b/htdocs/admin/tools/index.php
index ec72b30864f9ea516b0b4544bfcd82fe2dd82ccb..abb9710cc031472bbc08bcebfa1665be7a427cff 100644
--- a/htdocs/admin/tools/index.php
+++ b/htdocs/admin/tools/index.php
@@ -53,7 +53,7 @@ print '<br><br>';
 
 
 // Show logo
-print '<center><div class="logo_setup"></div></center>';
+print '<div class="center"><div class="logo_setup"></div></div>';
 
 llxFooter();
 $db->close();
diff --git a/htdocs/admin/tools/purge.php b/htdocs/admin/tools/purge.php
index 4f3f14302fd69f8272b4d0ccab352545beb67ea6..a872c0676f2b069c2c68e9fc26b156d30ceb671a 100644
--- a/htdocs/admin/tools/purge.php
+++ b/htdocs/admin/tools/purge.php
@@ -151,7 +151,7 @@ print '</td></tr></table>';
 if ($choice != 'confirm_allfiles')
 {
 	print '<br>';
-	print '<center><input class="button" type="submit" value="'.$langs->trans("PurgeRunNow").'"></center>';
+	print '<div class="center"><input class="button" type="submit" value="'.$langs->trans("PurgeRunNow").'"></div>';
 }
 
 print '</form>';
diff --git a/htdocs/bookmarks/admin/bookmark.php b/htdocs/bookmarks/admin/bookmark.php
index 68adb30f7abf6f6f12ce603393497a88bf49ca03..95be1b5251a71829d8e5762bdd676b9c60bf7f07 100644
--- a/htdocs/bookmarks/admin/bookmark.php
+++ b/htdocs/bookmarks/admin/bookmark.php
@@ -80,7 +80,7 @@ print '<tr '.$bc[$var].'><td>';
 print $langs->trans("NbOfBoomarkToShow").'</td><td>';
 print '<input size="3" type="text" name="BOOKMARKS_SHOW_IN_MENU" value="'.$conf->global->BOOKMARKS_SHOW_IN_MENU.'">';
 print '</td></tr>';
-print '</table><br /><center><input type="submit" class="button" value="'.$langs->trans("Modify").'"></center></form>';
+print '</table><br><div class="center"><input type="submit" class="button" value="'.$langs->trans("Modify").'"></div></form>';
 
 $db->close();
 
diff --git a/htdocs/bookmarks/card.php b/htdocs/bookmarks/card.php
index 640e7e72c57471c941acce7256d8a1707ddfe6b2..6f3b306af72ac52f624fd2d76929762c23c9ae57 100644
--- a/htdocs/bookmarks/card.php
+++ b/htdocs/bookmarks/card.php
@@ -1,6 +1,7 @@
 <?php
 /* Copyright (C) 2001-2003 Rodolphe Quiedeville <rodolphe@quiedeville.org>
  * Copyright (C) 2005-2013 Laurent Destailleur  <eldy@users.sourceforge.net>
+ * Copyright (C) 2014      Marcos García        <marcosgdf@gmail.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
@@ -50,6 +51,13 @@ $backtopage=GETPOST('backtopage','alpha');
 
 if ($action == 'add' || $action == 'addproduct' || $action == 'update')
 {
+
+	if ($action == 'update') {
+		$invertedaction = 'edit';
+	} else {
+		$invertedaction = 'create';
+	}
+
 	$error = 0;
 
 	if (GETPOST("cancel"))
@@ -69,12 +77,12 @@ if ($action == 'add' || $action == 'addproduct' || $action == 'update')
 
 	if (! $title) {
 		$error++;
-		setEventMessage($langs->trans("ErrorFieldRequired",$langs->trans("BookmarkTitle")), 'errors');
+		setEventMessage($langs->transnoentities("ErrorFieldRequired",$langs->trans("BookmarkTitle")), 'errors');
 	}
 
 	if (! $url) {
 		$error++;
-		setEventMessage($langs->trans("ErrorFieldRequired",$langs->trans("UrlOrLink")), 'errors');
+		setEventMessage($langs->transnoentities("ErrorFieldRequired",$langs->trans("UrlOrLink")), 'errors');
 	}
 
 	if (! $error)
@@ -95,43 +103,21 @@ if ($action == 'add' || $action == 'addproduct' || $action == 'update')
 			if ($bookmark->errno == 'DB_ERROR_RECORD_ALREADY_EXISTS')
 			{
 				$langs->load("errors");
-				setEventMessage($langs->trans("WarningBookmarkAlreadyExists"), 'warnings');
+				setEventMessage($langs->transnoentities("WarningBookmarkAlreadyExists"), 'warnings');
 			}
 			else
 			{
 				setEventMessage($bookmark->error, 'errors');
 			}
-			$action='create';
+			$action = $invertedaction;
 		}
 	}
 	else
 	{
-		$action='create';
+		$action = $invertedaction;
 	}
 }
 
-if ($action == 'delete')
-{
-	$bookmark=new Bookmark($db);
-	$bookmark->id=$_GET["bid"];
-	$bookmark->url=$user->id;
-	$bookmark->target=$user->id;
-	$bookmark->title='xxx';
-	$bookmark->favicon='xxx';
-
-	$res=$bookmark->remove();
-	if ($res > 0)
-	{
-		header("Location: ".$_SERVER["PHP_SELF"]);
-		exit;
-	}
-	else
-	{
-		setEventMessage($bookmark->error, 'errors');
-	}
-}
-
-
 /*
  * View
  */
@@ -150,11 +136,11 @@ if ($action == 'create')
 	print '<form action="'.$_SERVER["PHP_SELF"].'" method="POST" enctype="multipart/form-data">'."\n";
 	print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
 	print '<input type="hidden" name="action" value="add">';
-	
+
 	print_fiche_titre($langs->trans("NewBookmark"));
 
 	dol_fiche_head($head, $hselected, $langs->trans("Bookmark"),0,'bookmark');
-	
+
 	print '<table class="border" width="100%">';
 
 	print '<tr><td width="25%" class="fieldrequired">'.$langs->trans("BookmarkTitle").'</td><td><input class="flat" name="title" size="30" value="'.$title.'"></td><td class="hideonsmartphone">'.$langs->trans("SetHereATitleForLink").'</td></tr>';
@@ -175,16 +161,16 @@ if ($action == 'create')
 	print '<input class="flat" name="position" size="5" value="'.(isset($_POST["position"])?$_POST["position"]:$bookmark->position).'">';
 	print '</td><td class="hideonsmartphone">&nbsp;</td></tr>';
 
-	print '</table><br>';
-	
+	print '</table>';
+
+	dol_fiche_end();
+
 	print '<div align="center">';
 	print '<input type="submit" class="button" value="'.$langs->trans("CreateBookmark").'" name="create"> &nbsp; ';
 	print '<input type="submit" class="button" value="'.$langs->trans("Cancel").'" name="cancel">';
 	print '</div>';
 
 	print '</form>';
-	
-	dol_fiche_end();
 }
 
 
@@ -196,8 +182,13 @@ if ($id > 0 && ! preg_match('/^add/i',$action))
 	$bookmark=new Bookmark($db);
 	$bookmark->fetch($id);
 
-
-	dol_fiche_head($head, $hselected, $langs->trans("Bookmark"),0,'bookmark');
+	$head = array(
+		array(
+			'',
+			$langs->trans('Card'),
+			'card'
+		)
+	);
 
 	if ($action == 'edit')
 	{
@@ -209,16 +200,37 @@ if ($id > 0 && ! preg_match('/^add/i',$action))
 		print '<input type="hidden" name="backtopage" value="'.$backtopage.'">';
 	}
 
+	dol_fiche_head($head, $hselected, $langs->trans("Bookmark"),0,'bookmark');
+
 	print '<table class="border" width="100%">';
 
 	print '<tr><td width="25%">'.$langs->trans("Ref").'</td><td>'.$bookmark->ref.'</td></tr>';
 
-	print '<tr><td>'.$langs->trans("BookmarkTitle").'</td><td>';
+	print '<tr><td>';
+	if ($action == 'edit') {
+		print '<span class="fieldrequired">';
+	}
+
+	print $langs->trans("BookmarkTitle");
+
+	if ($action == 'edit') {
+		print '</span>';
+	}
+
+	print '</td><td>';
 	if ($action == 'edit') print '<input class="flat" name="title" size="30" value="'.(isset($_POST["title"])?$_POST["title"]:$bookmark->title).'">';
 	else print $bookmark->title;
 	print '</td></tr>';
 
-	print '<tr><td>'.$langs->trans("UrlOrLink").'</td><td>';
+	print '<tr><td>';
+	if ($action == 'edit') {
+		print '<span class="fieldrequired">';
+	}
+	print $langs->trans("UrlOrLink");
+	if ($action == 'edit') {
+		print '</span>';
+	}
+	print '</td><td>';
 	if ($action == 'edit') print '<input class="flat" name="url" size="80" value="'.(isset($_POST["url"])?$_POST["url"]:$bookmark->url).'">';
 	else print '<a href="'.(preg_match('/^http/i',$bookmark->url)?$bookmark->url:DOL_URL_ROOT.$bookmark->url).'"'.($bookmark->target?' target="_blank"':'').'>'.$bookmark->url.'</a>';
 	print '</td></tr>';
@@ -267,12 +279,14 @@ if ($id > 0 && ! preg_match('/^add/i',$action))
 
 	print '</table>';
 
-	if ($action == 'edit') print '<br><div align="center"><input class="button" type="submit" name="save" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; <input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'"></div>';
-	
-	if ($action == 'edit') print '</form>';
-
 	dol_fiche_end();
 
+	if ($action == 'edit')
+	{
+		print '<div align="center"><input class="button" type="submit" name="save" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; <input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'"></div>';
+		print '</form>';
+	}
+
 
 	print "<div class=\"tabsAction\">\n";
 
diff --git a/htdocs/bookmarks/list.php b/htdocs/bookmarks/list.php
index a22b24388b1518fc137db65acde3df0ce80c9e48..748a4d9b7fa4d7e9c757e0b07c2189d7cafe4202 100644
--- a/htdocs/bookmarks/list.php
+++ b/htdocs/bookmarks/list.php
@@ -59,7 +59,7 @@ if ($_GET["action"] == 'delete')
     }
     else
     {
-        $setEventMessage($bookmark->error, 'errors');
+        setEventMessage($bookmark->error, 'errors');
     }
 }
 
diff --git a/htdocs/cashdesk/admin/cashdesk.php b/htdocs/cashdesk/admin/cashdesk.php
index 277dc81820b57865444128c911dbc0871f48617b..18bb626507fbc171ca40cbc9d9c78ed9cfcde279 100644
--- a/htdocs/cashdesk/admin/cashdesk.php
+++ b/htdocs/cashdesk/admin/cashdesk.php
@@ -148,7 +148,7 @@ if (! empty($conf->service->enabled))
 print '</table>';
 print '<br>';
 
-print '<center><input type="submit" class="button" value="'.$langs->trans("Save").'"></center>';
+print '<div class="center"><input type="submit" class="button" value="'.$langs->trans("Save").'"></div>';
 
 print "</form>\n";
 
diff --git a/htdocs/cashdesk/tpl/liste_articles.tpl.php b/htdocs/cashdesk/tpl/liste_articles.tpl.php
index 2fac2e2a16a954e92e16ff30ba53edaaf4052a0b..e640113e562bec513983672fff826f6a6f9320b7 100644
--- a/htdocs/cashdesk/tpl/liste_articles.tpl.php
+++ b/htdocs/cashdesk/tpl/liste_articles.tpl.php
@@ -42,7 +42,7 @@ $tab=array();
 $tab = $_SESSION['poscart'];
 
 $tab_size=count($tab);
-if ($tab_size <= 0) print '<center>'.$langs->trans("NoArticle").'<center><br>';
+if ($tab_size <= 0) print '<div class="center">'.$langs->trans("NoArticle").'</div><br>';
 else
 {
     for ($i=0;$i < $tab_size;$i++)
diff --git a/htdocs/categories/card.php b/htdocs/categories/card.php
index 672c92b9508abf41a72e14390923ba85c3acfaf1..98eaa053635d7f5cb4272c2504f86d4f82a17165 100644
--- a/htdocs/categories/card.php
+++ b/htdocs/categories/card.php
@@ -256,11 +256,11 @@ if ($user->rights->categorie->creer)
 
 		print '</table>';
 
-		print '<center><br>';
+		print '<br><div class="center">';
 		print '<input type="submit" class="button" value="'.$langs->trans("CreateThisCat").'" name="creation" />';
-		print ' &nbsp; &nbsp; ';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 		print '<input type="submit" class="button" value="'.$langs->trans("Cancel").'" name="cancel" />';
-		print '</center>';
+		print '</div>';
 
 		print '</form>';
 	}
diff --git a/htdocs/categories/edit.php b/htdocs/categories/edit.php
index aa82fdb455d82aecb7981225c8c768c3d2bf0951..245509578d0e684762b3dc9086553569631c9d4b 100644
--- a/htdocs/categories/edit.php
+++ b/htdocs/categories/edit.php
@@ -163,8 +163,7 @@ if (empty($reshook) && ! empty($extrafields->attribute_label))
 print '</table>';
 print '<br>';
 
-print '<center><input type="submit" class="button" value="'.$langs->trans("Modify").'">';
-print '</center>';
+print '<div class="center"><input type="submit" class="button" value="'.$langs->trans("Modify").'"></div>';
 
 print '</form>';
 
diff --git a/htdocs/categories/traduction.php b/htdocs/categories/traduction.php
index 0c154a0b72f04789cd9dc3e18614bf3e27cd77f3..98d4fb2b93033264c84a8eeb50dc26adea7bda2c 100644
--- a/htdocs/categories/traduction.php
+++ b/htdocs/categories/traduction.php
@@ -190,9 +190,11 @@ if ($action == 'edit')
 		}
 	}
 
-	print '<br /><center>';
-	print '<input type="submit" class="button" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; ';
-	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+	print '<br /><div class="center">';
+	print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
 	print '</form>';
 
@@ -266,9 +268,11 @@ if ($action == 'add' && ($user->rights->produit->creer || $user->rights->service
 	print '</tr>';
 	print '</table>';
 
-	print '<br><center>';
-	print '<input type="submit" class="button" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; ';
-	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+	print '<br><div class="center">';
+	print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
 	print '</form>';
 
diff --git a/htdocs/comm/action/card.php b/htdocs/comm/action/card.php
index 1cb3bc741bcae11f65fc2d3663ea8e71fadf3ee9..596ce207f9b79609ba1465012d7015610943ab88 100644
--- a/htdocs/comm/action/card.php
+++ b/htdocs/comm/action/card.php
@@ -779,11 +779,11 @@ if ($action == 'create')
 
 	print '</table>';
 
-	print '<center><br>';
+	print '<br><div class="center">';
 	print '<input type="submit" class="button" value="'.$langs->trans("Add").'">';
-	print ' &nbsp; &nbsp; ';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-	print '</center>';
+	print '</div>';
 
 	print "</form>";
 }
@@ -1013,9 +1013,11 @@ if ($id > 0)
 
 		dol_fiche_end();
 
-		print '<center><input type="submit" class="button" name="edit" value="'.$langs->trans("Save").'">';
-		print ' &nbsp; &nbsp; <input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-		print '</center>';
+		print '<div class="center">';
+		print '<input type="submit" class="button" name="edit" value="'.$langs->trans("Save").'">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+		print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+		print '</div>';
 
 		print '</form>';
 	}
diff --git a/htdocs/comm/address.php b/htdocs/comm/address.php
index 0ffcb35150053e2cabdb1d8d0231fea6c029ea37..963847aee18d19ddc2572a0d562c1d8a46dca753 100644
--- a/htdocs/comm/address.php
+++ b/htdocs/comm/address.php
@@ -281,14 +281,14 @@ if ($action == 'create')
 
         print '</table>'."\n";
 
-        print '<br><center>';
+        print '<br><div class="center">';
         print '<input type="submit" class="button" value="'.$langs->trans('Add').'">';
         if (! empty($backtopage))
         {
-        	print ' &nbsp; &nbsp; ';
+        	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
         	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
         }
-        print '</center>'."\n";
+        print '</div>'."\n";
 
         print '</form>'."\n";
 
@@ -381,11 +381,11 @@ elseif ($action == 'edit')
 
         print '</table><br>';
 
-        print '<center>';
+        print '<div class="center">';
         print '<input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
-        print ' &nbsp; ';
+        print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
         print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-        print '</center>';
+        print '</div>';
 
         print '</form>';
     }
diff --git a/htdocs/comm/mailing/card.php b/htdocs/comm/mailing/card.php
index 678ea8f622deb4d7328faf49b09d7260ec22e953..15a74483411c87eac891a2f1ebdc07c84c0b8cca 100644
--- a/htdocs/comm/mailing/card.php
+++ b/htdocs/comm/mailing/card.php
@@ -701,7 +701,7 @@ if ($action == 'create')
 	print '</td></tr>';
 	print '</table>';
 
-	print '<br><center><input type="submit" class="button" value="'.$langs->trans("CreateMailing").'"></center>';
+	print '<br><div class="center"><input type="submit" class="button" value="'.$langs->trans("CreateMailing").'"></div>';
 
 	print '</form>';
 }
@@ -1139,11 +1139,11 @@ else
 
 			print '</table>';
 
-			print '<br><center>';
+			print '<br><div class="center">';
 			print '<input type="submit" class="button" value="'.$langs->trans("Save").'" name="save">';
-			print ' &nbsp; ';
+			print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 			print '<input type="submit" class="button" value="'.$langs->trans("Cancel").'" name="cancel">';
-			print '</center>';
+			print '</div>';
 
 			print '</form>';
 			print '<br>';
diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php
index 6d23d3a982d1f84818a6d23335a91142c22de524..465fe5e2d767bfd301a1bf91de5fc91a7b707377 100644
--- a/htdocs/comm/propal.php
+++ b/htdocs/comm/propal.php
@@ -1310,9 +1310,11 @@ if ($action == 'create')
 	print '</td></tr>';
 
     // Bank Account
-    print '<tr><td>' . $langs->trans('BankAccount') . '</td><td colspan="2">';
-    $form->select_comptes($fk_account, 'fk_account', 0, '', 1);
-    print '</td></tr>';
+    if (! empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL) && $conf->module->banque->enabled) {
+        print '<tr><td>' . $langs->trans('BankAccount') . '</td><td colspan="2">';
+        $form->select_comptes($fk_account, 'fk_account', 0, '', 1);
+        print '</td></tr>';
+    }
 
 	// What trigger creation
 	print '<tr><td>' . $langs->trans('Source') . '</td><td>';
@@ -1514,10 +1516,11 @@ if ($action == 'create')
 
 
 	$langs->load("bills");
-	print '<center>';
+	print '<div class="center">';
 	print '<input type="submit" class="button" value="' . $langs->trans("CreateDraft") . '">';
-	print '&nbsp;<input type="button" class="button" value="' . $langs->trans("Cancel") . '" onClick="javascript:history.go(-1)">';
-	print '</center>';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+	print '<input type="button" class="button" value="' . $langs->trans("Cancel") . '" onClick="javascript:history.go(-1)">';
+	print '</div>';
 
 	print "</form>";
 
@@ -1892,7 +1895,7 @@ if ($action == 'create')
 		print '</tr>';
 	}
 
-	if (! empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL))
+	if (! empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL) && $conf->banque->enabled)
 	{
 	    // Bank Account
 	    print '<tr><td>';
diff --git a/htdocs/comm/propal/apercu.php b/htdocs/comm/propal/apercu.php
index e575c8f27fc41be61d8d5b6d809610630c0d9ace..87281e7ea6321d784d05472e35fa7e3eae9ef7c7 100644
--- a/htdocs/comm/propal/apercu.php
+++ b/htdocs/comm/propal/apercu.php
@@ -3,7 +3,8 @@
  * Copyright (C) 2004      Eric Seigne          <eric.seigne@ryxeo.com>
  * Copyright (C) 2004-2007 Laurent Destailleur  <eldy@users.sourceforge.net>
  * Copyright (C) 2005-2012 Regis Houssin        <regis.houssin@capnetworks.com>
- * Copyright (C) 2011	   Juanjo Menent        <jmenent@2byte.es>
+ * Copyright (C) 2011      Juanjo Menent        <jmenent@2byte.es>
+ * Copyright (C) 2014      Frederic France      <frederic.france@free.fr>
  *
  * 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
@@ -22,14 +23,13 @@
 /**
  *  \file		htdocs/comm/propal/apercu.php
  *  \ingroup	propal
- *  \brief		Page de l'onglet apercu d'une propal
+ *  \brief		Preview tab of propal
  */
 
 require '../../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/propal.lib.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
-if (! empty($conf->projet->enabled)) require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
 
 $langs->load('propal');
 $langs->load("bills");
@@ -44,18 +44,11 @@ $result = restrictedArea($user, 'propal', $id);
 
 
 /*
- * View
+ * View Mode
  */
 
 llxHeader();
 
-$form = new Form($db);
-
-/* *************************************************************************** */
-/*                                                                             */
-/* Mode fiche                                                                  */
-/*                                                                             */
-/* *************************************************************************** */
 
 if ($id > 0 || ! empty($ref))
 {
@@ -73,29 +66,30 @@ if ($id > 0 || ! empty($ref))
 		/*
 		 *   Propal
 		 */
-		print '<table class="border" width="100%">';
+        print '<table class="border" width="100%">';
+
+        // Ref
+        print '<tr><td width="25%">'.$langs->trans('Ref').'</td>';
+        print '<td colspan="5">'.$object->ref.'</td>';
+        print '</tr>';
 
-		// Ref
-		print '<tr><td width="25%">'.$langs->trans('Ref').'</td><td colspan="5">'.$object->ref.'</td></tr>';
+        // Ref client
+        print '<tr><td>'.$langs->trans('RefCustomer').'</td>';
+        print '<td colspan="5">'.$object->ref_client.'</td>';
+        print '</tr>';
 
-		// Ref client
-		print '<tr><td>';
-		print '<table class="nobordernopadding" width="100%"><tr><td class="nowrap">';
-		print $langs->trans('RefCustomer').'</td><td align="left">';
-		print '</td>';
-		print '</tr></table>';
-		print '</td><td colspan="5">';
-		print $object->ref_client;
-		print '</td>';
-		print '</tr>';
 
-		$rowspan=2;
+        // Thirdparty
+        print '<tr><td>'.$langs->trans('Company').'</td>';
+        print '<td colspan="5">'.$soc->getNomUrl(1).'</td>';
+        print '</tr>';
 
-		// Tiers
-		print '<tr><td>'.$langs->trans('Company').'</td><td colspan="5">'.$soc->getNomUrl(1).'</td>';
-		print '</tr>';
+        // Status
+        print '<tr><td>'.$langs->trans("Status").'</td>';
+        print '<td colspan="5">'.$object->getLibStatut(4).'</td>';
+        print '</tr>';
 
-		// Ligne info remises tiers
+        // Discount
 		print '<tr><td>'.$langs->trans('Discounts').'</td><td colspan="5">';
 		if ($soc->remise_percent) print $langs->trans("CompanyHasRelativeDiscount",$soc->remise_percent);
 		else print $langs->trans("CompanyHasNoRelativeDiscount");
@@ -103,44 +97,43 @@ if ($id > 0 || ! empty($ref))
 		print '. ';
 		if ($absolute_discount) print $langs->trans("CompanyHasAbsoluteDiscount",$absolute_discount,$langs->trans("Currency".$conf->currency));
 		else print $langs->trans("CompanyHasNoAbsoluteDiscount");
-		print '.';
-		print '</td></tr>';
-
-		// ligne
-		// partie Gauche
-		print '<tr><td>'.$langs->trans('Date').'</td><td colspan="3">';
-		print dol_print_date($object->date,'daytext');
-		print '</td>';
-
-		// partie Droite sur $rowspan lignes
-		print '<td colspan="2" rowspan="'.$rowspan.'" valign="top" width="50%">';
-
-		/*
-		 * Documents
-		 */
-		$objectref = dol_sanitizeFileName($object->ref);
-		$dir_output = $conf->propal->dir_output . "/";
-		$filepath = $dir_output . $objectref . "/";
-		$file = $filepath . $objectref . ".pdf";
-		$filedetail = $filepath . $objectref . "-detail.pdf";
+        print '.</td>';
+        print '</tr>';
+
+        // Date
+        print '<tr><td>'.$langs->trans('Date').'</td>';
+        print '<td>'.dol_print_date($object->date,'daytext').'</td>';
+
+        // Right part with $rowspan lines
+        $rowspan=4;
+        print '<td rowspan="'.$rowspan.'" valign="top" width="50%">';
+
+        /*
+         * Documents
+         */
+        $objectref = dol_sanitizeFileName($object->ref);
+        $dir_output = $conf->propal->dir_output . "/";
+        $filepath = $dir_output . $objectref . "/";
+        $file = $filepath . $objectref . ".pdf";
+        $filedetail = $filepath . $objectref . "-detail.pdf";
         $relativepath = $objectref.'/'.$objectref.'.pdf';
         $relativepathdetail = $objectref.'/'.$objectref.'-detail.pdf';
 
         // Define path to preview pdf file (preview precompiled "file.ext" are "file.ext_preview.png")
-        $fileimage = $file.'_preview.png';          	// If PDF has 1 page
+        $fileimage = $file.'_preview.png';              // If PDF has 1 page
         $fileimagebis = $file.'_preview-0.pdf.png';     // If PDF has more than one page
         $relativepathimage = $relativepath.'_preview.png';
 
-		$var=true;
+        $var=true;
 
 		// Si fichier PDF existe
 		if (file_exists($file))
 		{
 			$encfile = urlencode($file);
-			print_titre($langs->trans("Documents"));
-			print '<table class="border" width="100%">';
+            print '<table class="nobordernopadding" width="100%">';
+            print '<tr class="liste_titre"><td colspan="4">'.$langs->trans("Documents").'</td></tr>';
 
-			print "<tr ".$bc[$var]."><td>".$langs->trans("Propal")." PDF</td>";
+            print '<tr '.$bc[$var].'><td>'.$langs->trans("Proposal").' PDF</td>';
 
 			print '<td><a data-ajax="false" href="'.DOL_URL_ROOT . '/document.php?modulepart=propal&file='.urlencode($relativepath).'">'.$object->ref.'.pdf</a></td>';
 
@@ -166,13 +159,25 @@ if ($id > 0 || ! empty($ref))
 			}
 		}
 
-		print "</td>";
-		print '</tr>';
+        print '</td>';
+        print '</tr>';
+
+        // Total HT - left part
+        print '<tr><td>'.$langs->trans('AmountHT').'</td>';
+        print '<td align="right" class="nowrap"><b>' . price($object->total_ht, '', $langs, 0, - 1, - 1, $conf->currency) . '</b></td>';
+        print '</tr>';
+
+        // Total VAT - left part
+        print '<tr><td>'.$langs->trans('AmountVAT').'</td>';
+        print '<td align="right" class="nowrap"><b>' . price($object->total_tva, '', $langs, 0, - 1, - 1, $conf->currency) . '</b></td>';
+        print '</tr>';
+
+        // Total TTC - left part
+        print '<tr><td>'.$langs->trans('AmountTTC').'</td>';
+        print '<td align="right" class="nowrap"><b>' . price($object->total_ttc, '', $langs, 0, - 1, - 1, $conf->currency) . '</b></td>';
+        print '</tr>';
 
-		print '<tr><td height="10">'.$langs->trans('AmountHT').'</td>';
-		print '<td align="right" colspan="2"><b>'.price($object->price).'</b></td>';
-		print '<td>'.$langs->trans("Currency".$conf->currency).'</td></tr>';
-		print '</table>';
+        print '</table>';
 
 		dol_fiche_end();
 	}
@@ -183,10 +188,13 @@ if ($id > 0 || ! empty($ref))
 	}
 }
 
+print '<table class="border" width="100%">';
+print '<tr><td>';
+print '<div class="photolist">';
 // Si fichier png PDF d'1 page trouve
 if (file_exists($fileimage))
 {
-	print '<img style="background: #FFF" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercupropal&file='.urlencode($relativepathimage).'">';
+	print '<img class="photo photowithmargin" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercupropal&amp;file='.urlencode($relativepathimage).'">';
 }
 // Si fichier png PDF de plus d'1 page trouve
 elseif (file_exists($fileimagebis))
@@ -199,10 +207,13 @@ elseif (file_exists($fileimagebis))
 
 		if (file_exists($dir_output.$preview))
 		{
-			print '<img style="background: #FFF" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercupropal&file='.urlencode($preview).'"><p>';
+			print '<img class="photo photowithmargin" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercupropal&amp;file='.urlencode($preview).'"><p>';
 		}
 	}
 }
+print '</div>';
+print '</td></tr>';
+print '</table>';
 
 
 llxFooter();
diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php
index 12dbbe7d1c1b25b336df70ddd0a9ff18cc0e6047..fb9d5257d4980dab0b3c2b6ea0fe4d4b7e9edea0 100644
--- a/htdocs/comm/propal/class/propal.class.php
+++ b/htdocs/comm/propal/class/propal.class.php
@@ -416,7 +416,15 @@ class Propal extends CommonObject
 
 
 			// infos marge
-			$this->line->fk_fournprice = $fk_fournprice;
+			if (!empty($fk_product) && empty($fk_fournprice) && empty($pa_ht)) {
+			    // by external module, take lowest buying price
+			    include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.product.class.php';
+			    $productFournisseur = new ProductFournisseur($this->db);
+			    $productFournisseur->find_min_price_product_fournisseur($fk_product);
+			    $this->line->fk_fournprice = $productFournisseur->product_fourn_price_id;
+			} else {
+			    $this->line->fk_fournprice = $fk_fournprice;
+			}
 			$this->line->pa_ht = $pa_ht;
 
             // Mise en option de la ligne
@@ -567,7 +575,15 @@ class Propal extends CommonObject
             $this->line->skip_update_total	= $skip_update_total;
 
             // infos marge
-            $this->line->fk_fournprice = $fk_fournprice;
+            if (!empty($fk_product) && empty($fk_fournprice) && empty($pa_ht)) {
+                // by external module, take lowest buying price
+                include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.product.class.php';
+			    $productFournisseur = new ProductFournisseur($this->db);
+			    $productFournisseur->find_min_price_product_fournisseur($fk_product);
+			    $this->line->fk_fournprice = $productFournisseur->product_fourn_price_id;
+			} else {
+			    $this->line->fk_fournprice = $fk_fournprice;
+			}
             $this->line->pa_ht = $pa_ht;
 
             $this->line->date_start=$date_start;
diff --git a/htdocs/comm/remise.php b/htdocs/comm/remise.php
index fe3e39d266d69ffa09910b4f5b0c5f1f3783ec4e..b2d92dd55dcad219f9a5415d50ec6c70d368b0d1 100644
--- a/htdocs/comm/remise.php
+++ b/htdocs/comm/remise.php
@@ -136,14 +136,14 @@ if ($socid > 0)
 
 	print "</table>";
 
-	print '<center>';
+	print '<div class="center">';
 	print '<input type="submit" class="button" value="'.$langs->trans("Modify").'">';
     if (! empty($backtopage))
     {
-        print '&nbsp; &nbsp; ';
+        print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 	    print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
     }
-	print '</center>';
+	print '</div>';
 
 	print "</form>";
 
diff --git a/htdocs/comm/remx.php b/htdocs/comm/remx.php
index 79f952fe7fdec7f31a3322655a8978b51c598a33..b04758714582e524940807ef96e9c61cb52f62db 100644
--- a/htdocs/comm/remx.php
+++ b/htdocs/comm/remx.php
@@ -278,14 +278,14 @@ if ($socid > 0)
 
 	print "</table>";
 
-	print '<center>';
+	print '<div class="center">';
 	print '<input type="submit" class="button" name="submit" value="'.$langs->trans("AddGlobalDiscount").'">';
     if (! empty($backtopage))
     {
-        print '&nbsp; &nbsp; ';
+        print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 	    print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
     }
-	print '</center>';
+	print '</div>';
 
 	print '</form>';
 
diff --git a/htdocs/commande/apercu.php b/htdocs/commande/apercu.php
index 839ca73d5b95f9d9a87f86cf260145d8dc79de5d..e6878eef1792ca61b72ba0b720f0f19121d7087c 100644
--- a/htdocs/commande/apercu.php
+++ b/htdocs/commande/apercu.php
@@ -3,7 +3,8 @@
  * Copyright (C) 2004      Eric Seigne          <eric.seigne@ryxeo.com>
  * Copyright (C) 2004-2011 Laurent Destailleur  <eldy@users.sourceforge.net>
  * Copyright (C) 2005-2011 Regis Houssin        <regis.houssin@capnetworks.com>
- * Copyright (C) 2011	   Juanjo Menent        <jmenent@2byte.es>
+ * Copyright (C) 2011      Juanjo Menent        <jmenent@2byte.es>
+ * Copyright (C) 2014      Frederic France      <frederic.france@free.fr>
  *
  * 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
@@ -22,21 +23,17 @@
 /**
  *		\file		htdocs/commande/apercu.php
  *		\ingroup	commande
- *		\brief		Page de l'onglet apercu d'une commande
+ *		\brief		Preview tab of order
  */
 
 require '../main.inc.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/order.lib.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
 require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
-if (! empty($conf->propal->enabled)) require_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
-if (! empty($conf->projet->enabled)) require_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
 
 $langs->load('orders');
-$langs->load('propal');
 $langs->load("bills");
 $langs->load('compta');
-$langs->load('sendings');
 
 // Security check
 $socid=0;
@@ -47,19 +44,11 @@ $result=restrictedArea($user,'commande',$id,'');
 
 
 /*
- * View
+ * View Mode
  */
 
 llxHeader('',$langs->trans('Order'),'EN:Customers_Orders|FR:Commandes_Clients|ES:Pedidos de clientes');
 
-$form = new Form($db);
-
-/* *************************************************************************** */
-/*                                                                             */
-/* Mode fiche                                                                  */
-/*                                                                             */
-/* *************************************************************************** */
-
 if ($id > 0 || ! empty($ref))
 {
 	$object = new Commande($db);
@@ -70,40 +59,46 @@ if ($id > 0 || ! empty($ref))
 		$soc->fetch($object->socid);
 
 
-		$head = commande_prepare_head($object);
+        $head = commande_prepare_head($object);
         dol_fiche_head($head, 'preview', $langs->trans("CustomerOrder"), 0, 'order');
 
-		print '<table class="border" width="100%">';
+        print '<table class="border" width="100%">';
 
         // Ref
-        print '<tr><td width="18%">'.$langs->trans("Ref")."</td>";
-        print '<td colspan="2">'.$object->ref.'</td>';
-        print '<td width="50%">'.$langs->trans("Source").' : '.$object->getLabelSource();
-        if ($object->source == 0)
-        {
-            // Propale
-            $propal = new Propal($db);
-            $propal->fetch($object->propale_id);
-            print ' -> <a href="'.DOL_URL_ROOT.'/comm/propal.php?id='.$propal->id.'">'.$propal->ref.'</a>';
-        }
-        print "</td></tr>";
+        print '<tr><td width="25%">'.$langs->trans("Ref")."</td>";
+        print '<td colspan="5">'.$object->ref.'</td></tr>';
 
         // Ref cde client
-		print '<tr><td>';
-        print '<table class="nobordernopadding" width="100%"><tr><td class="nowrap">';
-		print $langs->trans('RefCustomer').'</td><td align="left">';
-        print '</td>';
-        print '</tr></table>';
-		print '</td>';
-        print '<td colspan="2">';
-		print $object->ref_client;
-        print '</td>';
-        $nbrow=6;
-		print '<td rowspan="'.$nbrow.'" valign="top">';
-
-		/*
-		 * Documents
-		 */
+        print '<tr><td>'.$langs->trans('RefCustomer').'</td>';
+        print '<td colspan="5">'.$object->ref_client.'</td>';
+        print '</tr>';
+
+        // Client
+        print '<tr><td>'.$langs->trans("Customer").'</td>';
+        print '<td colspan="5">'.$soc->getNomUrl(1).'</td>';
+        print '</tr>';
+
+        // Statut
+        print '<tr><td>'.$langs->trans("Status").'</td>';
+        print '<td colspan="5">'.$object->getLibStatut(4).'</td>';
+        print '</tr>';
+
+        // Discount - left part
+        print '<tr><td>'.$langs->trans('Discounts').'</td>';
+        print '<td colspan="5">'.$object->remise_percent.'%</td>';
+        print '</tr>';
+
+        // Date - left part
+        print '<tr><td>'.$langs->trans("Date").'</td>';
+        print '<td colspan="3">'.dol_print_date($object->date,"daytext").'</td>';
+
+        // Right part with $rowspan lines
+        $rowspan=4;
+        print '<td rowspan="'.$rowspan.'" valign="top" width="50%">';
+
+        /*
+         * Documents
+         */
 		$objectref = dol_sanitizeFileName($object->ref);
 		$dir_output = $conf->commande->dir_output . "/";
 		$filepath = $dir_output . $objectref . "/";
@@ -119,16 +114,16 @@ if ($id > 0 || ! empty($ref))
 
 		$var=true;
 
-		// Si fichier PDF existe
+		// if PDF file exist
 		if (file_exists($file))
 		{
 			$encfile = urlencode($file);
-			print_titre($langs->trans("Documents"));
-			print '<table class="border" width="100%">';
+            print '<table class="nobordernopadding" width="100%">';
+            print '<tr class="liste_titre"><td colspan="4">'.$langs->trans("Documents").'</td></tr>';
 
 			print "<tr ".$bc[$var]."><td>".$langs->trans("Order")." PDF</td>";
 
-			print '<td><a data-ajax="false" href="'.DOL_URL_ROOT . '/document.php?modulepart=commande&file='.urlencode($relativepath).'">'.$object->ref.'.pdf</a></td>';
+			print '<td><a data-ajax="false" href="'.DOL_URL_ROOT . '/document.php?modulepart=commande&amp;file='.urlencode($relativepath).'">'.$object->ref.'.pdf</a></td>';
 			print '<td align="right">'.dol_print_size(dol_filesize($file)).'</td>';
 			print '<td align="right">'.dol_print_date(dol_filemtime($file),'dayhour').'</td>';
 			print '</tr>';
@@ -139,7 +134,7 @@ if ($id > 0 || ! empty($ref))
 			{
 				print "<tr ".$bc[$var]."><td>Commande detaillee</td>";
 
-				print '<td><a data-ajax="false" href="'.DOL_URL_ROOT . '/document.php?modulepart=commande&file='.urlencode($relativepathdetail).'">'.$object->ref.'-detail.pdf</a></td>';
+				print '<td><a data-ajax="false" href="'.DOL_URL_ROOT . '/document.php?modulepart=commande&amp;file='.urlencode($relativepathdetail).'">'.$object->ref.'-detail.pdf</a></td>';
 				print '<td align="right">'.dol_print_size(dol_filesize($filedetail)).'</td>';
 				print '<td align="right">'.dol_print_date(dol_filemtime($filedetail),'dayhour').'</td>';
 				print '</tr>';
@@ -162,37 +157,24 @@ if ($id > 0 || ! empty($ref))
 			}
 		}
 
-		print "</td></tr>";
+        print '</td></tr>';
 
-        // Client
-        print "<tr><td>".$langs->trans("Customer")."</td>";
-        print '<td colspan="2">';
-        print '<a href="'.DOL_URL_ROOT.'/comm/card.php?socid='.$soc->id.'">'.$soc->getNomUrl(1).'</a>';
-        print '</td>';
+        // Total HT - left part
+        print '<tr><td>'.$langs->trans('AmountHT').'</td>';
+        print '<td align="right" class="nowrap"><b>' . price($object->total_ht, '', $langs, 0, - 1, - 1, $conf->currency) . '</b></td>';
         print '</tr>';
 
-        // Statut
-        print '<tr><td>'.$langs->trans("Status").'</td>';
-        print "<td colspan=\"2\">".$object->getLibStatut(4)."</td>\n";
+        // Total VAT - left part
+        print '<tr><td>'.$langs->trans('AmountVAT').'</td>';
+        print '<td align="right" class="nowrap"><b>' . price($object->total_tva, '', $langs, 0, - 1, - 1, $conf->currency) . '</b></td>';
         print '</tr>';
 
-        // Date
-        print '<tr><td>'.$langs->trans("Date").'</td>';
-        print "<td colspan=\"2\">".dol_print_date($object->date,"daytext")."</td>\n";
-		print '</tr>';
-
-		// ligne 6
-		// partie Gauche
-		print '<tr><td height="10" nowrap>'.$langs->trans('GlobalDiscount').'</td>';
-		print '<td colspan="2">'.$object->remise_percent.'%</td>';
-		print '</tr>';
-
-		// ligne 7
-		// partie Gauche
-		print '<tr><td height="10">'.$langs->trans('AmountHT').'</td>';
-		print '<td align="right" colspan="1"><b>'.price($object->total_ht).'</b></td>';
-		print '<td>'.$langs->trans("Currency".$conf->currency).'</td></tr>';
-		print '</table>';
+        // Total TTC - left part
+        print '<tr><td>'.$langs->trans('AmountTTC').'</td>';
+        print '<td align="right" class="nowrap"><b>' . price($object->total_ttc, '', $langs, 0, - 1, - 1, $conf->currency) . '</b></td>';
+        print '</tr>';
+
+        print '</table>';
 
 		dol_fiche_end();
 	}
@@ -203,10 +185,13 @@ if ($id > 0 || ! empty($ref))
 	}
 }
 
+print '<table class="border" width="100%">';
+print '<tr><td>';
+print '<div class="photolist">';
 // Si fichier png PDF d'1 page trouve
 if (file_exists($fileimage))
 {
-	print '<img style="background: #FFF" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercucommande&file='.urlencode($relativepathimage).'">';
+	print '<img class="photo photowithmargin" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercucommande&amp;file='.urlencode($relativepathimage).'">';
 }
 // Si fichier png PDF de plus d'1 page trouve
 elseif (file_exists($fileimagebis))
@@ -219,10 +204,13 @@ elseif (file_exists($fileimagebis))
 
 		if (file_exists($dir_output.$preview))
 		{
-			print '<img style="background: #FFF" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercucommande&file='.urlencode($preview).'"><p>';
+			print '<img class="photo photowithmargin" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercucommande&amp;file='.urlencode($preview).'"><p>';
 		}
 	}
 }
+print '</div>';
+print '</td></tr>';
+print '</table>';
 
 
 llxFooter();
diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php
index 4bf1eceb6dc8c0e96cdf19c123a88c38ca876ce4..56511f43c97bb8cd9b5d395b291a4657689c5098 100644
--- a/htdocs/commande/card.php
+++ b/htdocs/commande/card.php
@@ -1391,10 +1391,13 @@ if ($action == 'create' && $user->rights->commande->creer) {
 	print '</td></tr>';
 
     // Bank Account
-    print '<tr><td>' . $langs->trans('BankAccount') . '</td><td colspan="2">';
-    $form->select_comptes($fk_account, 'fk_account', 0, '', 1);
-    print '</td></tr>';
-
+	if (! empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_ORDER) && ! empty($conf->banque->enabled))
+	{
+		print '<tr><td>' . $langs->trans('BankAccount') . '</td><td colspan="2">';
+    	$form->select_comptes($fk_account, 'fk_account', 0, '', 1);
+    	print '</td></tr>';
+	}
+	
 	// Delivery delay
 	print '<tr><td>' . $langs->trans('AvailabilityPeriod') . '</td><td colspan="2">';
 	$form->selectAvailabilityDelay($availability_id, 'availability_id', '', 1);
@@ -1530,7 +1533,7 @@ if ($action == 'create' && $user->rights->commande->creer) {
 	print '</table>';
 
 	// Button "Create Draft"
-	print '<br><center><input type="submit" class="button" name="bouton" value="' . $langs->trans('CreateDraft') . '"></center>';
+	print '<br><div class="center"><input type="submit" class="button" name="bouton" value="' . $langs->trans('CreateDraft') . '"></div>';
 
 	print '</form>';
 
@@ -1995,22 +1998,25 @@ if ($action == 'create' && $user->rights->commande->creer) {
 			$rowspan ++;
 
         // Bank Account
-        print '<tr><td class="nowrap">';
-        print '<table width="100%" class="nobordernopadding"><tr><td class="nowrap">';
-        print $langs->trans('BankAccount');
-        print '<td>';
-        if ($action != 'editbankaccount' && $user->rights->commande->creer)
-            print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=editbankaccount&amp;id='.$object->id.'">'.img_edit($langs->trans('SetBankAccount'),1).'</a></td>';
-        print '</tr></table>';
-        print '</td><td colspan="3">';
-        if ($action == 'editbankaccount') {
-            $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'fk_account', 1);
-        } else {
-            $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'none');
-        }
-        print '</td>';
-        print '</tr>';
-
+		if (! empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_ORDER) && ! empty($conf->banque->enabled))
+		{	
+	        print '<tr><td class="nowrap">';
+        	print '<table width="100%" class="nobordernopadding"><tr><td class="nowrap">';
+        	print $langs->trans('BankAccount');
+        	print '<td>';
+        	if ($action != 'editbankaccount' && $user->rights->commande->creer)
+        	    print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=editbankaccount&amp;id='.$object->id.'">'.img_edit($langs->trans('SetBankAccount'),1).'</a></td>';
+        	print '</tr></table>';
+        	print '</td><td colspan="3">';
+        	if ($action == 'editbankaccount') {
+        	    $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'fk_account', 1);
+        	} else {
+        	    $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'none');
+        	}
+        	print '</td>';
+        	print '</tr>';
+		}
+		
 		// Total HT
 		print '<tr><td>' . $langs->trans('AmountHT') . '</td>';
 		print '<td align="right">' . price($object->total_ht, 1, '', 1, - 1, - 1, $conf->currency) . '</td>';
diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php
index ed308394e6cd368e84aacaf5e0dae0ac48a96768..49ba2536bfae232cff9a2d2c3d29a4a633260025 100644
--- a/htdocs/commande/class/commande.class.php
+++ b/htdocs/commande/class/commande.class.php
@@ -1224,7 +1224,15 @@ class Commande extends CommonOrder
             $this->line->date_end=$date_end;
 
 			// infos marge
-			$this->line->fk_fournprice = $fk_fournprice;
+			if (!empty($fk_product) && empty($fk_fournprice) && empty($pa_ht)) {
+			    // by external module, take lowest buying price
+			    include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.product.class.php';
+			    $productFournisseur = new ProductFournisseur($this->db);
+			    $productFournisseur->find_min_price_product_fournisseur($fk_product);
+			    $this->line->fk_fournprice = $productFournisseur->product_fourn_price_id;
+			} else {
+			    $this->line->fk_fournprice = $fk_fournprice;
+			}
 			$this->line->pa_ht = $pa_ht;
 
             // TODO Ne plus utiliser
@@ -2421,7 +2429,15 @@ class Commande extends CommonOrder
             $this->line->skip_update_total=$skip_update_total;
 
 			// infos marge
-			$this->line->fk_fournprice = $fk_fournprice;
+			if (!empty($fk_product) && empty($fk_fournprice) && empty($pa_ht)) {
+			    //by external module, take lowest buying price
+			    include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.product.class.php';
+			    $productFournisseur = new ProductFournisseur($this->db);
+			    $productFournisseur->find_min_price_product_fournisseur($fk_product);
+			    $this->line->fk_fournprice = $productFournisseur->product_fourn_price_id;
+			} else {
+			    $this->line->fk_fournprice = $fk_fournprice;
+			}
 			$this->line->pa_ht = $pa_ht;
 
             // TODO deprecated
diff --git a/htdocs/commande/orderstoinvoice.php b/htdocs/commande/orderstoinvoice.php
index 1009b0302107c4288b0321507c04d32cabf185ef..99458e3aea0a2f25be55f08ffdc6d8b421f1cfa6 100644
--- a/htdocs/commande/orderstoinvoice.php
+++ b/htdocs/commande/orderstoinvoice.php
@@ -496,7 +496,7 @@ if ($action == 'create' && !$error)
 	}
 
 	// Button "Create Draft"
-	print '<br><center><input type="submit" class="button" name="bouton" value="'.$langs->trans('CreateDraft').'" /></center>';
+	print '<br><div class="center"><input type="submit" class="button" name="bouton" value="'.$langs->trans('CreateDraft').'" /></div>';
 	print "</form>\n";
 
 	print '</td></tr>';
@@ -683,7 +683,7 @@ if (($action != 'create' && $action != 'add') || !$error)
 		/*
 		 * Boutons actions
 		*/
-		print '<center><br><input type="checkbox" checked="checked" name="autocloseorders"> '.$langs->trans("CloseProcessedOrdersAutomatically");
+		print '<br><div class="center"><input type="checkbox" checked="checked" name="autocloseorders"> '.$langs->trans("CloseProcessedOrdersAutomatically");
 		print '<div align="right">';
 		print '<input type="hidden" name="socid" value="'.$socid.'">';
 		print '<input type="hidden" name="action" value="create">';
@@ -691,6 +691,7 @@ if (($action != 'create' && $action != 'add') || !$error)
 		//print '<a class="butAction" href="index.php">'.$langs->trans("GoBack").'</a>';
 		print '<input type="submit" class="butAction" value="'.$langs->trans("GenerateBill").'">';
 		print '</div>';
+		print '</div>';
 		print '</form>';
 		$db->free($resql);
 	}
diff --git a/htdocs/compta/bank/annuel.php b/htdocs/compta/bank/annuel.php
index 30cf5b9c5ace1a89a40425ef377c15dd7d7a5f92..e5bafe8fed66ed794da3e7e89f2d9d2a922ab30b 100644
--- a/htdocs/compta/bank/annuel.php
+++ b/htdocs/compta/bank/annuel.php
@@ -496,11 +496,11 @@ else
 	unset($tblyear[1]);
 	unset($tblyear[2]);
 
-	print '<div class="fichecenter"><div class="fichehalfleft"><center>';
+	print '<div class="fichecenter"><div class="fichehalfleft"><div class="center">';
 	print $show1;
-	print '</center></div><div class="fichehalfright"><div class="ficheaddleft"><center>';
+	print '</div></div><div class="fichehalfright"><div class="ficheaddleft"><div class="center">';
 	print $show2;
-	print '</center></div></div></div>';
+	print '</div></div></div></div>';
 	print '<div style="clear:both"></div>';
 }
 
diff --git a/htdocs/compta/bank/card.php b/htdocs/compta/bank/card.php
index b18527854666116a6ba6bf49ffcac9c923072c6d..fd1f3f9ee8e15147b693f5df4f89f085e4adfcc5 100644
--- a/htdocs/compta/bank/card.php
+++ b/htdocs/compta/bank/card.php
@@ -354,7 +354,7 @@ if ($action == 'create')
 
 	print '</table>';
 
-	print '<center><br><input value="'.$langs->trans("CreateAccount").'" type="submit" class="button"></center>';
+	print '<br><div class="center"><input value="'.$langs->trans("CreateAccount").'" type="submit" class="button"></div>';
 
 	print '</form>';
 }
@@ -647,8 +647,11 @@ else
 
 		print '</table>';
 
-		print '<center><br><input value="'.$langs->trans("Modify").'" type="submit" class="button">';
-		print ' &nbsp; <input name="cancel" value="'.$langs->trans("Cancel").'" type="submit" class="button"></center>';
+		print '<br><div class="center">';
+		print '<input value="'.$langs->trans("Modify").'" type="submit" class="button">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+		print '<input name="cancel" value="'.$langs->trans("Cancel").'" type="submit" class="button">';
+		print '</div>';
 
 		print '</form>';
 	}
diff --git a/htdocs/compta/bank/class/account.class.php b/htdocs/compta/bank/class/account.class.php
index 978fc2b3838b2829b4833795792f131c3eb0c0ac..4343e2cb921b71f89c4252c9e5d69e22954a5218 100644
--- a/htdocs/compta/bank/class/account.class.php
+++ b/htdocs/compta/bank/class/account.class.php
@@ -220,7 +220,7 @@ class Account extends CommonObject
     /**
      *  Add an entry into table ".MAIN_DB_PREFIX."bank
      *
-     *  @param	timsestmap	$date			Date operation
+     *  @param	timestamp	$date			Date operation
      *  @param	string		$oper			1,2,3,4... (deprecated) or TYP,VIR,PRE,LIQ,VAD,CB,CHQ...
      *  @param	string		$label			Descripton
      *  @param	float		$amount			Amount
diff --git a/htdocs/compta/bank/virement.php b/htdocs/compta/bank/virement.php
index 601db34c964a16db3b22f264d64fdfd61339d7e1..0672104ff60bf5631281a798404b60fdf0818666 100644
--- a/htdocs/compta/bank/virement.php
+++ b/htdocs/compta/bank/virement.php
@@ -182,7 +182,7 @@ print '<td><input name="amount" class="flat" type="text" size="8" value="'.$amou
 
 print "</table>";
 
-print '<br><center><input type="submit" class="button" value="'.$langs->trans("Add").'"></center>';
+print '<br><div class="center"><input type="submit" class="button" value="'.$langs->trans("Add").'"></div>';
 
 print "</form>";
 
diff --git a/htdocs/compta/deplacement/card.php b/htdocs/compta/deplacement/card.php
index 20433118bbf2c842e961dfb5386c2e7218e0fbf2..bcef3512c33da3060194627b5c526ccbf569a030 100644
--- a/htdocs/compta/deplacement/card.php
+++ b/htdocs/compta/deplacement/card.php
@@ -303,8 +303,11 @@ if ($action == 'create')
 
     print '</table>';
 
-    print '<br><center><input class="button" type="submit" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; ';
-    print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'"></center';
+    print '<br><div class="center">';
+	print '<input class="button" type="submit" value="'.$langs->trans("Save").'">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+    print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
     print '</form>';
 }
@@ -396,9 +399,11 @@ else if ($id)
 
             print '</table>';
 
-            print '<br><center><input type="submit" class="button" value="'.$langs->trans("Save").'"> &nbsp; ';
+            print '<br><div class="center">';
+			print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+			print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
             print '<input type="submit" name="cancel" class="button" value="'.$langs->trans("Cancel").'">';
-            print '</center>';
+            print '</div>';
 
             print '</form>';
 
diff --git a/htdocs/compta/dons/card.php b/htdocs/compta/dons/card.php
index e453ef623c3244b5e7dd026fecd057756355f0c4..c365aa0928abbcf8ec935682cc80e8468f4f0254 100644
--- a/htdocs/compta/dons/card.php
+++ b/htdocs/compta/dons/card.php
@@ -76,7 +76,7 @@ if ($action == 'update')
 
 	if (empty($amount))
 	{
-		$setEventMessage($langs->trans("ErrorFieldRequired",$langs->trans("Amount")), 'errors');
+		setEventMessage($langs->trans("ErrorFieldRequired",$langs->trans("Amount")), 'errors');
 		$action = "create";
 		$error++;
 	}
@@ -329,7 +329,7 @@ if ($action == 'create')
     $reshook=$hookmanager->executeHooks('formObjectOptions',$parameters,$don,$action);    // Note that $action and $object may have been modified by hook
 
 	print "</table>\n";
-	print '<br><center><input type="submit" class="button" name="save" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; <input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+	print '<br><div class="center"><input type="submit" class="button" name="save" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; <input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></div>';
 	print "</form>\n";
 }
 
@@ -429,7 +429,7 @@ if (! empty($id) && $action == 'edit')
 
 	print "</table>\n";
 
-	print '<br><center><input type="submit" class="button" name="save" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; <input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+	print '<br><div class="center"><input type="submit" class="button" name="save" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; <input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></div>';
 
 	print "</form>\n";
 
diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php
index 9d003ae0aa7e7f9c88d05d9573b23d5b0e28dda9..56b8cbd5e5f59b7c26368daadce8ae5399b0b67d 100644
--- a/htdocs/compta/facture.php
+++ b/htdocs/compta/facture.php
@@ -2275,10 +2275,11 @@ if ($action == 'create')
 	print "</table>\n";
 
 	// Button "Create Draft"
-	print '<br><center>';
+	print '<br><div class="center">';
 	print '<input type="submit" class="button" name="bouton" value="' . $langs->trans('CreateDraft') . '">';
-	print '&nbsp;<input type="button" class="button" value="' . $langs->trans("Cancel") . '" onClick="javascript:history.go(-1)">';
-	print '</center>';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+	print '<input type="button" class="button" value="' . $langs->trans("Cancel") . '" onClick="javascript:history.go(-1)">';
+	print '</div>';
 
 	print "</form>\n";
 
@@ -3486,7 +3487,7 @@ if ($action == 'create')
 					$i ++;
 				}
 				print '</table>';
-				print '<br><center><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"> &nbsp; <input type="submit" class="button" name="cancel" value="' . $langs->trans('Cancel') . '"></center>';
+				print '<br><div class="center"><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"> &nbsp; <input type="submit" class="button" name="cancel" value="' . $langs->trans('Cancel') . '"></div>';
 				print '</form>';
 				$db->free($resqlorderlist);
 			} else {
diff --git a/htdocs/compta/facture/apercu.php b/htdocs/compta/facture/apercu.php
index 211d9241a8f973856231b66c0093b977e5a8c005..8f03e33bb03cc87c164bb09f6e75bd567131288c 100644
--- a/htdocs/compta/facture/apercu.php
+++ b/htdocs/compta/facture/apercu.php
@@ -3,7 +3,8 @@
  * Copyright (C) 2004      Eric Seigne          <eric.seigne@ryxeo.com>
  * Copyright (C) 2004-2007 Laurent Destailleur  <eldy@users.sourceforge.net>
  * Copyright (C) 2005-2011 Regis Houssin        <regis.houssin@capnetworks.com>
- * Copyright (C) 2011	   Juanjo Menent        <jmenent@2byte.es>
+ * Copyright (C) 2011      Juanjo Menent        <jmenent@2byte.es>
+ * Copyright (C) 2014      Frederic France      <frederic.france@free.fr>
  *
  * 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
@@ -21,9 +22,9 @@
  */
 
 /**
- * 	    \file       htdocs/compta/facture/apercu.php
- * 		\ingroup    facture
- * 		\brief      Page de l'onglet apercu d'une facture
+ *      \file       htdocs/compta/facture/apercu.php
+ *      \ingroup    facture
+ *      \brief      Preview Tab of invoice
  */
 
 require '../../main.inc.php';
@@ -67,12 +68,6 @@ if ($id > 0 || ! empty($ref))
         $soc = new Societe($db);
         $soc->fetch($object->socid);
 
-        $author = new User($db);
-        if ($object->user_author)
-        {
-            $author->fetch($object->user_author);
-        }
-
         $head = facture_prepare_head($object);
         dol_fiche_head($head, 'preview', $langs->trans("InvoiceCustomer"), 0, 'bill');
 
@@ -80,32 +75,28 @@ if ($id > 0 || ! empty($ref))
         $totalpaye  = $object->getSommePaiement();
 
         /*
-         *   Facture
+         *   Invoice
          */
         print '<table class="border" width="100%">';
-        $rowspan=3;
 
         // Ref
-        print '<tr><td width="20%">'.$langs->trans('Ref').'</td><td colspan="5">'.$object->ref.'</td></tr>';
+        print '<tr><td width="25%">'.$langs->trans('Ref').'</td>';
+        print '<td colspan="5">'.$object->ref.'</td>';
+        print '</tr>';
 
         // Ref customer
-        print '<tr><td width="20%">';
-        print '<table class="nobordernopadding" width="100%"><tr><td>';
-        print $langs->trans('RefCustomer');
-        print '</td>';
-        print '</tr></table>';
-        print '</td>';
-        print '<td colspan="5">';
-        print $object->ref_client;
-        print '</td></tr>';
+        print '<tr><td>'.$langs->trans('RefCustomer').'</td>';
+        print '<td colspan="5">'.$object->ref_client.'</td>';
+        print '</tr>';
 
-        // Societe
+        // Thirdparty
         print '<tr><td>'.$langs->trans("Company").'</td>';
         print '<td colspan="5">'.$soc->getNomUrl(1,'compta').'</td>';
         print '</tr>';
 
         // Type
-        print '<tr><td>'.$langs->trans('Type').'</td><td colspan="5">';
+        print '<tr><td>'.$langs->trans('Type').'</td>';
+        print '<td colspan="5">';
         print $object->getLibType();
         if ($object->type == Facture::TYPE_REPLACEMENT)
         {
@@ -141,14 +132,15 @@ if ($id > 0 || ! empty($ref))
             $facthatreplace->fetch($objectidnext);
             print ' ('.$langs->transnoentities("ReplacedByInvoice",$facthatreplace->getNomUrl(1)).')';
         }
-        print '</td></tr>';
+        print '</td>';
+        print '</tr>';
 
         // Relative and absolute discounts
         $addabsolutediscount=' <a href="'.DOL_URL_ROOT.'/comm/remx.php?id='.$soc->id.'&backtopage='.urlencode($_SERVER["PHP_SELF"]).'?facid='.$object->id.'">'.$langs->trans("AddGlobalDiscount").'</a>';
         $addcreditnote=' <a href="'.DOL_URL_ROOT.'/compta/facture.php?action=create&socid='.$soc->id.'&type=2&backtopage='.urlencode($_SERVER["PHP_SELF"]).'?facid='.$object->id.'">'.$langs->trans("AddCreditNote").'</a>';
 
-        print '<tr><td>'.$langs->trans('Discounts');
-        print '</td><td colspan="5">';
+        print '<tr><td>'.$langs->trans('Discounts').'</td>';
+        print '<td colspan="5">';
         if ($soc->remise_percent) print $langs->trans("CompanyHasRelativeDiscount",$soc->remise_percent);
         else print $langs->trans("CompanyHasNoRelativeDiscount");
 
@@ -187,7 +179,7 @@ if ($id > 0 || ! empty($ref))
         }
         else
         {
-            if ($absolute_creditnote > 0)    // If not linke will be added later
+            if ($absolute_creditnote > 0)    // If not linked will be added later
             {
                 if ($object->statut == 0 && $object->type != Facture::TYPE_CREDIT_NOTE && $object->type != Facture::TYPE_DEPOSIT) print ' - '.$addabsolutediscount.'<br>';
                 else print '.';
@@ -230,66 +222,17 @@ if ($id > 0 || ! empty($ref))
          print $addabsolutediscount;
          //print ' &nbsp; - &nbsp; '.$addcreditnote;      // We disbale link to credit note
          }*/
-        print '</td></tr>';
+        print '</td>';
+        print '</tr>';
 
         // Dates
         print '<tr><td>'.$langs->trans("Date").'</td>';
-        print '<td colspan="5">'.dol_print_date($object->date,"daytext").'</td>';
-        print "</tr>";
-
-        // Date payment term
-        print '<tr><td>';
-        print '<table class="nobordernopadding" width="100%"><tr><td>';
-        print $langs->trans('DateMaxPayment');
-        print '</td>';
-        if ($object->type != Facture::TYPE_CREDIT_NOTE && $action != 'editpaymentterm' && $object->brouillon && $user->rights->facture->creer) print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=editpaymentterm&amp;facid='.$object->id.'">'.img_edit($langs->trans('SetDate'),1).'</a></td>';
-        print '</tr></table>';
-        print '</td><td colspan="5">';
-        if ($object->type != Facture::TYPE_CREDIT_NOTE)
-        {
-            if ($action == 'editpaymentterm')
-            {
-                $form->form_date($_SERVER['PHP_SELF'].'?facid='.$object->id,$object->date_lim_reglement,'paymentterm');
-            }
-            else
-            {
-                print dol_print_date($object->date_lim_reglement,'daytext');
-                if ($object->date_lim_reglement < ($now - $conf->facture->client->warning_delay) && ! $object->paye && $object->statut == 1 && ! $object->am) print img_warning($langs->trans('Late'));
-            }
-        }
-        else
-        {
-            print '&nbsp;';
-        }
-        print '</td></tr>';
+        print '<td>'.dol_print_date($object->date,"daytext").'</td>';
 
-        // Conditions reglement
-        print '<tr><td>'.$langs->trans("PaymentConditionsShort").'</td><td colspan="5">';
-        $form->form_conditions_reglement($_SERVER["PHP_SELF"]."?facid=$object->id",$object->cond_reglement_id,"none");
-        print '</td>';
-        print '</td></tr>';
-
-        // Mode de reglement
-        print '<tr><td>';
-        print '<table class="nobordernopadding" width="100%"><tr><td>';
-        print $langs->trans('PaymentMode');
-        print '</td>';
-        if ($action != 'editmode' && $object->brouillon && $user->rights->facture->creer) print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=editmode&amp;facid='.$object->id.'">'.img_edit($langs->trans('SetMode'),1).'</a></td>';
-        print '</tr></table>';
-        print '</td><td colspan="3">';
-        if ($action == 'editmode')
-        {
-            $form->form_modes_reglement($_SERVER['PHP_SELF'].'?facid='.$object->id,$object->mode_reglement_id,'mode_reglement_id');
-        }
-        else
-        {
-            $form->form_modes_reglement($_SERVER['PHP_SELF'].'?facid='.$object->id,$object->mode_reglement_id,'none');
-        }
-        print '</td>';
-
-        $nbrows=5;
-        if (! empty($conf->projet->enabled)) $nbrows++;
-        print '<td rowspan="'.$nbrows.'" colspan="2" valign="top">';
+        // Right part with $rowspan lines
+        $rowspan=5;
+        if (! empty($conf->projet->enabled)) $rowspan++;
+        print '<td rowspan="'.$rowspan.'" valign="top" width="50%">';
 
         /*
          * Documents
@@ -303,7 +246,7 @@ if ($id > 0 || ! empty($ref))
         $relativepathdetail = $objectref.'/'.$objectref.'-detail.pdf';
 
         // Define path to preview pdf file (preview precompiled "file.ext" are "file.ext_preview.png")
-        $fileimage = $file.'_preview.png';          	// If PDF has 1 page
+        $fileimage = $file.'_preview.png';              // If PDF has 1 page
         $fileimagebis = $file.'_preview-0.pdf.png';     // If PDF has more than one page
         $relativepathimage = $relativepath.'_preview.png';
 
@@ -313,8 +256,8 @@ if ($id > 0 || ! empty($ref))
         if (file_exists($file))
         {
             $encfile = urlencode($file);
-            print_titre($langs->trans("Documents"));
-            print '<table class="border" width="100%">';
+            print '<table class="nobordernopadding" width="100%">';
+            print '<tr class="liste_titre"><td colspan="4">'.$langs->trans("Documents").'</td></tr>';
 
             print "<tr ".$bc[$var]."><td>".$langs->trans("Bill")." PDF</td>";
 
@@ -353,24 +296,32 @@ if ($id > 0 || ! empty($ref))
         }
         print "</td></tr>";
 
+        // Total HT
         print '<tr><td>'.$langs->trans("AmountHT").'</td>';
-        print '<td align="right" colspan="2"><b>'.price($object->total_ht).'</b></td>';
-        print '<td>'.$langs->trans("Currency".$conf->currency).'</td></tr>';
+        print '<td align="right" class="nowrap"><b>' . price($object->total_ht, '', $langs, 0, - 1, - 1, $conf->currency) . '</b></td>';
+        print '</tr>';
 
-        print '<tr><td>'.$langs->trans('AmountVAT').'</td><td align="right" colspan="2" nowrap>'.price($object->total_tva).'</td>';
-        print '<td>'.$langs->trans('Currency'.$conf->currency).'</td></tr>';
-        print '<tr><td>'.$langs->trans('AmountTTC').'</td><td align="right" colspan="2" nowrap>'.price($object->total_ttc).'</td>';
-        print '<td>'.$langs->trans('Currency'.$conf->currency).'</td></tr>';
+        // Total VAT
+        print '<tr><td>'.$langs->trans('AmountVAT').'</td>';
+        print '<td align="right" class="nowrap"><b>' . price($object->total_tva, '', $langs, 0, - 1, - 1, $conf->currency) . '</b></td>';
+        print '</tr>';
+
+        // Total TTC
+        print '<tr><td>'.$langs->trans('AmountTTC').'</td>';
+        print '<td align="right" class="nowrap"><b>' . price($object->total_ttc, '', $langs, 0, - 1, - 1, $conf->currency) . '</b></td>';
+        print '</tr>';
 
         // Statut
-        print '<tr><td>'.$langs->trans('Status').'</td><td align="left" colspan="3">'.($object->getLibStatut(4,$totalpaye)).'</td></tr>';
+        print '<tr><td>'.$langs->trans('Status').'</td>';
+        print '<td align="left">'.($object->getLibStatut(4,$totalpaye)).'</td>';
+        print '</tr>';
 
         // Projet
         if (! empty($conf->projet->enabled))
         {
             $langs->load("projects");
-            print '<tr>';
-            print '<td>'.$langs->trans("Project").'</td><td colspan="3">';
+            print '<tr><td>'.$langs->trans("Project").'</td>';
+            print '<td>';
             if ($object->fk_project > 0)
             {
                 $project = New Project($db);
@@ -391,14 +342,17 @@ if ($id > 0 || ! empty($ref))
     else
     {
         // Facture non trouvee
-        print $langs->trans("ErrorBillNotFound",$_GET["facid"]);
+        print $langs->trans("ErrorBillNotFound",$id);
     }
 }
 
+print '<table class="border" width="100%">';
+print '<tr><td>';
+print '<div class="photolist">';
 // Si fichier png PDF d'1 page trouve
 if (file_exists($fileimage))
 {
-    print '<img style="background: #FFF" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercufacture&file='.urlencode($relativepathimage).'">';
+    print '<img class="photo photowithmargin" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercufacture&amp;file='.urlencode($relativepathimage).'">';
 }
 // Si fichier png PDF de plus d'1 page trouve
 elseif (file_exists($fileimagebis))
@@ -411,11 +365,13 @@ elseif (file_exists($fileimagebis))
 
         if (file_exists($dir_output.$preview))
         {
-            print '<img style="background: #FFF" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercufacture&file='.urlencode($preview).'"><p>';
+            print '<img class="photo photowithmargin" src="'.DOL_URL_ROOT . '/viewimage.php?modulepart=apercufacture&amp;file='.urlencode($preview).'"><p>';
         }
     }
 }
-
+print '</div>';
+print '</td></tr>';
+print '</table>';
 
 llxFooter();
 
diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php
index 4331d80925f43b7f5e8d934a140446ac929aaa86..a6877ad9ed8252b7a2c3211dddfb47ce060ba781 100644
--- a/htdocs/compta/facture/class/facture.class.php
+++ b/htdocs/compta/facture/class/facture.class.php
@@ -2203,7 +2203,15 @@ class Facture extends CommonInvoice
 			$this->line->skip_update_total	= $skip_update_total;
 
 			// infos marge
-			$this->line->fk_fournprice = $fk_fournprice;
+			if (!empty($fk_product) && empty($fk_fournprice) && empty($pa_ht)) {
+			    // POS or external module, take lowest buying price
+			    include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.product.class.php';
+			    $productFournisseur = new ProductFournisseur($this->db);
+			    $productFournisseur->find_min_price_product_fournisseur($fk_product);
+			    $this->line->fk_fournprice = $productFournisseur->product_fourn_price_id;
+			} else {
+			    $this->line->fk_fournprice = $fk_fournprice;
+			}
 			$this->line->pa_ht = $pa_ht;
 
 			if (is_array($array_option) && count($array_option)>0) {
@@ -3498,6 +3506,14 @@ class FactureLigne extends CommonInvoiceLine
 				return -1;
 			}
 		}
+		
+		// POS or by external module, take lowest buying price
+		if (!empty($this->fk_product) && empty($this->fk_fournprice) && empty($this->pa_ht)) {
+		    include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.product.class.php';
+		    $productFournisseur = new ProductFournisseur($this->db);
+		    $productFournisseur->find_min_price_product_fournisseur($this->fk_product);
+		    $this->fk_fournprice = $productFournisseur->product_fourn_price_id;
+		}
 
 		$this->db->begin();
 
diff --git a/htdocs/compta/index.php b/htdocs/compta/index.php
index fc2943f05e0c2be3629fb54c9daffd0502560a89..2359d70d07b16472d053804dffb522cb0889c1bd 100644
--- a/htdocs/compta/index.php
+++ b/htdocs/compta/index.php
@@ -678,7 +678,7 @@ if (! empty($conf->facture->enabled) && ! empty($conf->commande->enabled) && $us
                 $societestatic->name=$obj->name;
                 $societestatic->client=1;
                 print $societestatic->getNomUrl(1,'customer',44);
-				print '</a></td>';
+				print '</td>';
 				if (! empty($conf->global->MAIN_SHOW_HT_ON_SUMMARY)) print '<td align="right">'.price($obj->total_ht).'</td>';
 				print '<td align="right">'.price($obj->total_ttc).'</td>';
 				print '<td align="right">'.price($obj->total_ttc-$obj->tot_fttc).'</td>';
@@ -777,7 +777,7 @@ if (! empty($conf->facture->enabled) && $user->rights->facture->lire)
                 $societestatic->name=$obj->name;
                 $societestatic->client=1;
 				print $societestatic->getNomUrl(1,'customer',44);
-				print '</a></td>';
+				print '</td>';
 				if (! empty($conf->global->MAIN_SHOW_HT_ON_SUMMARY)) print '<td align="right">'.price($obj->total).'</td>';
 				print '<td align="right">'.price($obj->total_ttc).'</td>';
 				print '<td align="right">'.price($obj->am).'</td>';
diff --git a/htdocs/compta/localtax/card.php b/htdocs/compta/localtax/card.php
index 1b16064ed9e19da67862a5cdcd3c1eaad3393b6f..308bcac6dc92800aa81898c6157204126f097814 100644
--- a/htdocs/compta/localtax/card.php
+++ b/htdocs/compta/localtax/card.php
@@ -190,8 +190,11 @@ if ($_GET["action"] == 'create')
 
 	print "<br>";
 
-	print '<center><input type="submit" class="button" value="'.$langs->trans("Save").'"> &nbsp; ';
-    print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+	print '<div class="center">';
+	print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+    print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
     print '</form>';
 }
diff --git a/htdocs/compta/paiement.php b/htdocs/compta/paiement.php
index 56278f15c5d7e09e34da49edfca00b61e1bcd7ec..0ccf0dee6bfc06174afc620d060cda6c096330b0 100644
--- a/htdocs/compta/paiement.php
+++ b/htdocs/compta/paiement.php
@@ -626,7 +626,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
         	$buttontitle=$langs->trans('ToMakePayment');
         	if ($facture->type == 2) $buttontitle=$langs->trans('ToMakePaymentBack');
 
-        	print '<center><br>';
+        	print '<br><div class="center">';
         	print '<input type="checkbox" checked="checked" name="closepaidinvoices"> '.$checkboxlabel;
             /*if (! empty($conf->prelevement->enabled))
             {
@@ -634,7 +634,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
                 if (! empty($conf->global->WITHDRAW_DISABLE_AUTOCREATE_ONPAYMENTS)) print '<br>'.$langs->trans("IfInvoiceNeedOnWithdrawPaymentWontBeClosed");
             }*/
             print '<br><input type="submit" class="button" value="'.dol_escape_htmltag($buttontitle).'"><br><br>';
-            print '</center>';
+            print '</div>';
         }
 
         // Form to confirm payment
diff --git a/htdocs/compta/paiement/cheque/card.php b/htdocs/compta/paiement/cheque/card.php
index 0c5eeca3689418be72af93caee18ff5fd68fcc07..fbf9512e43849636ec29b5616a262a3498ca8ae7 100644
--- a/htdocs/compta/paiement/cheque/card.php
+++ b/htdocs/compta/paiement/cheque/card.php
@@ -358,14 +358,14 @@ if ($action == 'new')
     print $form->select_comptes($filteraccountid,'accountid',0,'courant <> 2',1);
     print '</td></tr>';
 	print '</table>';
-    print '<center>';
+    print '<div class="center">';
 	print '<input type="submit" class="button" name="filter" value="'.dol_escape_htmltag($langs->trans("ToFilter")).'">';
     if ($filterdate || $filteraccountid > 0)
     {
     	print ' &nbsp; ';
     	print '<input type="submit" class="button" name="removefilter" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
     }
-	print '</center>';
+	print '</div>';
     //print '</fieldset>';
 	print '</form>';
 	print '<br>';
diff --git a/htdocs/compta/paiement_charge.php b/htdocs/compta/paiement_charge.php
index 7e26fa5789f579ff2beaddb7d18768e9e9e1fdf1..1c452bc0b02797ad8c48f2c7767e3238bb52c9be 100644
--- a/htdocs/compta/paiement_charge.php
+++ b/htdocs/compta/paiement_charge.php
@@ -312,13 +312,11 @@ if ($_GET["action"] == 'create')
 
 	print "</table>";
 
-	print '<br><center>';
-
+	print '<br><div class="center">';
 	print '<input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
-	print '&nbsp; &nbsp;';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-
-	print '</center>';
+	print '</div>';
 
 	print "</form>\n";
 }
diff --git a/htdocs/compta/prelevement/card.php b/htdocs/compta/prelevement/card.php
index e2a5e846b0a17a7c62ea668f12578628da53022a..9875c8df906f9f0b116e7e9230d3631836ce9293 100644
--- a/htdocs/compta/prelevement/card.php
+++ b/htdocs/compta/prelevement/card.php
@@ -218,7 +218,7 @@ if ($id > 0)
 		print '<input class="flat" type="file" name="userfile"><br>';
 		print '</td></tr>';*/
 		print '</table><br>';
-		print '<center><input type="submit" class="button" value="'.dol_escape_htmltag($langs->trans("SetToStatusSent")).'">';
+		print '<div class="center"><input type="submit" class="button" value="'.dol_escape_htmltag($langs->trans("SetToStatusSent")).'"></div>';
 		print '</form>';
 	}
 
@@ -235,7 +235,7 @@ if ($id > 0)
 		print '</td></tr>';
 		print '</table>';
 		print '<br>'.$langs->trans("ThisWillAlsoAddPaymentOnInvoice");
-		print '<center><input type="submit" class="button" value="'.dol_escape_htmltag($langs->trans("ClassCredited")).'">';
+		print '<div class="center"><input type="submit" class="button" value="'.dol_escape_htmltag($langs->trans("ClassCredited")).'"></div>';
 		print '</form>';
 	}
 
diff --git a/htdocs/compta/prelevement/ligne.php b/htdocs/compta/prelevement/ligne.php
index f16179796451881c88579c79218c387b2bab5c01..2af8a25b003f750e4fba5ea8d0a32da43ce1f377 100644
--- a/htdocs/compta/prelevement/ligne.php
+++ b/htdocs/compta/prelevement/ligne.php
@@ -216,7 +216,7 @@ if ($id)
 		print '</table><br>';
 
 		//Confirm Button
-		print '<center><input type="submit" class="button" value='.$langs->trans("Confirm").'><center>';
+		print '<div class="center"><input type="submit" class="button" value='.$langs->trans("Confirm").'></div>';
 		print '</form>';
 	}
 
diff --git a/htdocs/compta/salaries/card.php b/htdocs/compta/salaries/card.php
index 3ee796c61346228e47ce82a9a02aa96cb83cc9b7..16ef809f7131f65c18a687ba1e08282014422f64 100644
--- a/htdocs/compta/salaries/card.php
+++ b/htdocs/compta/salaries/card.php
@@ -274,8 +274,11 @@ if ($action == 'create')
 
 	print "<br>";
 
-	print '<center><input type="submit" class="button" value="'.$langs->trans("Save").'"> &nbsp; ';
-	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+	print '<div class="center">';
+	print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
 	print '</form>';
 }
diff --git a/htdocs/compta/tva/card.php b/htdocs/compta/tva/card.php
index 268a1af8e6616cb9ff4fa26d0673f95f32b99e68..b612a9b6459d680cf87220d42ab49cbb914a61f1 100644
--- a/htdocs/compta/tva/card.php
+++ b/htdocs/compta/tva/card.php
@@ -230,8 +230,11 @@ if ($action == 'create')
 
 	print "<br>";
 
-	print '<center><input type="submit" class="button" value="'.$langs->trans("Save").'"> &nbsp; ';
-    print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+	print '<div class="center">';
+	print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+    print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
     print '</form>';
 }
diff --git a/htdocs/contact/card.php b/htdocs/contact/card.php
index db83554c7ae7fc18bbb7d13c74f3124d70694ac0..bcdea083c3f76cf85621b05f475f6ccf49080a40 100644
--- a/htdocs/contact/card.php
+++ b/htdocs/contact/card.php
@@ -614,14 +614,14 @@ else
             print "</table><br><br>";
 
 
-            print '<center>';
+            print '<div class="center">';
             print '<input type="submit" class="button" name="add" value="'.$langs->trans("Add").'">';
             if (! empty($backtopage))
             {
                 print ' &nbsp; &nbsp; ';
                 print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
             }
-            print '</center>';
+            print '</div>';
 
             print "</form>";
         }
@@ -858,11 +858,11 @@ else
 
             print '</table><br>';
 
-            print '<center>';
+            print '<div class="center">';
             print '<input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
-            print ' &nbsp; ';
+            print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
             print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-            print '</center>';
+            print '</div>';
 
             print "</form>";
         }
diff --git a/htdocs/contact/perso.php b/htdocs/contact/perso.php
index 92ba03e9861dab3c07b36cbc7cc1294826d56d32..19644fe5bf5962a02abbcbd39d2b50bfe4ce20bb 100644
--- a/htdocs/contact/perso.php
+++ b/htdocs/contact/perso.php
@@ -145,11 +145,11 @@ if ($action == 'edit')
 
     print "</table><br>";
 
-    print '<center>';
+    print '<div class="center">';
     print '<input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
-    print ' &nbsp; ';
+    print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
     print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-    print '</center>';
+    print '</div>';
 
     print "</form>";
 }
diff --git a/htdocs/contrat/card.php b/htdocs/contrat/card.php
index 20fd6939f5d46ba1f96d2d3dc1f2bd9d40606d78..cea29c9679390f3196b634bb3b53ea28ed62cee6 100644
--- a/htdocs/contrat/card.php
+++ b/htdocs/contrat/card.php
@@ -536,10 +536,10 @@ else if ($action == 'addline' && $user->rights->contrat->creer)
 					$outputlangs = new Translate("", $conf);
 					$outputlangs->setDefaultLang($newlang);
 				}
-				$model=$object->modelpdf;
-				if (empty($model)) { $tmp=getListOfModels($db, 'contract'); $keys=array_keys($tmp); $model=$keys[0]; }
+
 				$ret = $object->fetch($id); // Reload to get new records
-				$object->generateDocument($model, $outputlangs, $hidedetails, $hidedesc, $hideref);
+				
+				$object->generateDocument($object->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
 			}
 
 			unset($_POST ['prod_entry_mode']);
@@ -1026,7 +1026,7 @@ if ($action == 'create')
         print '<input type="hidden" name="originid"       value="'.$objectsrc->id.'">';
 	}
 
-    print '<br><center><input type="submit" class="button" value="'.$langs->trans("Create").'"></center>';
+    print '<br><div class="center"><input type="submit" class="button" value="'.$langs->trans("Create").'"></div>';
 
     print "</form>\n";
 
diff --git a/htdocs/contrat/class/contrat.class.php b/htdocs/contrat/class/contrat.class.php
index 4abfb1f9c86f4fa85ee8e46c3805244704919bf8..1399ae402150025f02c80eddf163cea4e5d644a6 100644
--- a/htdocs/contrat/class/contrat.class.php
+++ b/htdocs/contrat/class/contrat.class.php
@@ -2385,39 +2385,4 @@ class ContratLigne extends CommonObject
 		}
 	}
 
-	/**
-	 *  Create a contract document on disk using template defined into CONTRACT_ADDON_PDF
-	 *
-	 *  @param	string		$modele			force le modele a utiliser ('' par defaut)
-	 *  @param	Translate	$outputlangs	objet lang a utiliser pour traduction
-	 *  @param  int			$hidedetails    Hide details of lines
-	 *  @param  int			$hidedesc       Hide description
-	 *  @param  int			$hideref        Hide ref
-	 *  @return int         				0 if KO, 1 if OK
-	 */
-	public function generateDocument($modele, $outputlangs, $hidedetails=0, $hidedesc=0, $hideref=0)
-	{
-		global $conf,$langs,$user,$hookmanager;
-
-		$langs->load("contracts");
-
-		// Positionne modele sur le nom du modele de contrat a utiliser
-		if (! dol_strlen($modele))
-		{
-			if (! empty($conf->global->CONTRACT_ADDON_PDF))
-			{
-				$modele = $conf->global->CONTRACT_ADDON_PDF;
-			}
-			else
-			{
-				$modele = 'strato';
-			}
-		}
-
-		$modelpath = "core/modules/contract/doc/";
-
-		return $this->commonGenerateDocument($modelpath, $modele, $outputlangs, $hidedetails, $hidedesc, $hideref);
-	}
 }
-
-
diff --git a/htdocs/contrat/list.php b/htdocs/contrat/list.php
index debe18e995eb95cd359ce5a2b44e63d3ae390bc9..b83ecc329b7eb185da81fe19a12b2b4b82fcd3c5 100644
--- a/htdocs/contrat/list.php
+++ b/htdocs/contrat/list.php
@@ -118,6 +118,7 @@ if ($resql)
 
     print_barre_liste($langs->trans("ListOfContracts"), $page, $_SERVER["PHP_SELF"], '&search_contract='.$search_contract.'&search_name='.$search_name, $sortfield, $sortorder,'',$num);
 
+    print '<form method="POST" action="'.$_SERVER['PHP_SELF'].'">';
     print '<table class="liste" width="100%">';
 
     print '<tr class="liste_titre">';
@@ -136,7 +137,6 @@ if ($resql)
     print '<td class="liste_titre" width="16">'.$staticcontratligne->LibStatut(5,3).'</td>';
     print "</tr>\n";
 
-    print '<form method="POST" action="'.$_SERVER['PHP_SELF'].'">';
     print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
     print '<tr class="liste_titre">';
     print '<td class="liste_titre">';
@@ -153,7 +153,6 @@ if ($resql)
     print '<td colspan="4" class="liste_titre" align="right"><input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
 	print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("Search"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
     print "</td></tr>\n";
-    print '</form>';
 
     $var=true;
     while ($i < min($num,$limit))
@@ -179,7 +178,8 @@ if ($resql)
     }
     $db->free($resql);
 
-    print "</table>";
+    print '</table>';
+    print '</form>';
 }
 else
 {
diff --git a/htdocs/core/boxes/box_graph_invoices_permonth.php b/htdocs/core/boxes/box_graph_invoices_permonth.php
index b272f35071737909c39db0f1a9679da8286e16ec..9b2a5437b8a71966efcc218cb327d2a3173b6f7f 100644
--- a/htdocs/core/boxes/box_graph_invoices_permonth.php
+++ b/htdocs/core/boxes/box_graph_invoices_permonth.php
@@ -215,9 +215,9 @@ class box_graph_invoices_permonth extends ModeleBoxes
 				$stringtoshow.='<form class="flat formboxfilter" method="POST" action="'.$_SERVER["PHP_SELF"].'">';
 				$stringtoshow.='<input type="hidden" name="action" value="'.$refreshaction.'">';
 				$stringtoshow.='<input type="hidden" name="DOL_AUTOSET_COOKIE" value="DOLUSERCOOKIE_box_'.$this->boxcode.':year,shownb,showtot">';
-				$stringtoshow.='<input type="checkbox" name="'.$param_shownb.'"'.($shownb?' checked="true"':'').'"> '.$langs->trans("NumberOfBillsByMonth");
+				$stringtoshow.='<input type="checkbox" name="'.$param_shownb.'"'.($shownb?' checked="true"':'').'> '.$langs->trans("NumberOfBillsByMonth");
 				$stringtoshow.=' &nbsp; ';
-				$stringtoshow.='<input type="checkbox" name="'.$param_showtot.'"'.($showtot?' checked="true"':'').'"> '.$langs->trans("AmountOfBillsByMonthHT");
+				$stringtoshow.='<input type="checkbox" name="'.$param_showtot.'"'.($showtot?' checked="true"':'').'> '.$langs->trans("AmountOfBillsByMonthHT");
 				$stringtoshow.='<br>';
 				$stringtoshow.=$langs->trans("Year").' <input class="flat" size="4" type="text" name="'.$param_year.'" value="'.$endyear.'">';
 				$stringtoshow.='<input type="image" alt="'.$langs->trans("Refresh").'" src="'.img_picto($langs->trans("Refresh"),'refresh.png','','',1).'">';
diff --git a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php
index c882acd40c155ea35b76689f2da8ac63fee2beda..7c2aa53da97887c5a55ab4c432bac82700067fbd 100644
--- a/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php
+++ b/htdocs/core/boxes/box_graph_invoices_supplier_permonth.php
@@ -214,9 +214,9 @@ class box_graph_invoices_supplier_permonth extends ModeleBoxes
 				$stringtoshow.='<form class="flat formboxfilter" method="POST" action="'.$_SERVER["PHP_SELF"].'">';
 				$stringtoshow.='<input type="hidden" name="action" value="'.$refreshaction.'">';
 				$stringtoshow.='<input type="hidden" name="DOL_AUTOSET_COOKIE" value="DOLUSERCOOKIE_box_'.$this->boxcode.':year,shownb,showtot">';
-				$stringtoshow.='<input type="checkbox" name="'.$param_shownb.'"'.($shownb?' checked="true"':'').'"> '.$langs->trans("NumberOfBillsByMonth");
+				$stringtoshow.='<input type="checkbox" name="'.$param_shownb.'"'.($shownb?' checked="true"':'').'> '.$langs->trans("NumberOfBillsByMonth");
 				$stringtoshow.=' &nbsp; ';
-				$stringtoshow.='<input type="checkbox" name="'.$param_showtot.'"'.($showtot?' checked="true"':'').'"> '.$langs->trans("AmountOfBillsByMonthHT");
+				$stringtoshow.='<input type="checkbox" name="'.$param_showtot.'"'.($showtot?' checked="true"':'').'> '.$langs->trans("AmountOfBillsByMonthHT");
 				$stringtoshow.='<br>';
 				$stringtoshow.=$langs->trans("Year").' <input class="flat" size="4" type="text" name="'.$param_year.'" value="'.$endyear.'">';
 				$stringtoshow.='<input type="image" alt="'.$langs->trans("Refresh").'" src="'.img_picto($langs->trans("Refresh"),'refresh.png','','',1).'">';
diff --git a/htdocs/core/boxes/box_graph_orders_permonth.php b/htdocs/core/boxes/box_graph_orders_permonth.php
index 5084691d321695bc4ea196601ea2b977d9762aa2..75f0f60660fe9adcb9af9538e2044e1655b588b1 100644
--- a/htdocs/core/boxes/box_graph_orders_permonth.php
+++ b/htdocs/core/boxes/box_graph_orders_permonth.php
@@ -215,9 +215,9 @@ class box_graph_orders_permonth extends ModeleBoxes
 				$stringtoshow.='<form class="flat formboxfilter" method="POST" action="'.$_SERVER["PHP_SELF"].'">';
 				$stringtoshow.='<input type="hidden" name="action" value="'.$refreshaction.'">';
 				$stringtoshow.='<input type="hidden" name="DOL_AUTOSET_COOKIE" value="DOLUSERCOOKIE_box_'.$this->boxcode.':year,shownb,showtot">';
-				$stringtoshow.='<input type="checkbox" name="'.$param_shownb.'"'.($shownb?' checked="true"':'').'"> '.$langs->trans("NumberOfOrdersByMonth");
+				$stringtoshow.='<input type="checkbox" name="'.$param_shownb.'"'.($shownb?' checked="true"':'').'> '.$langs->trans("NumberOfOrdersByMonth");
 				$stringtoshow.=' &nbsp; ';
-				$stringtoshow.='<input type="checkbox" name="'.$param_showtot.'"'.($showtot?' checked="true"':'').'"> '.$langs->trans("AmountOfOrdersByMonthHT");
+				$stringtoshow.='<input type="checkbox" name="'.$param_showtot.'"'.($showtot?' checked="true"':'').'> '.$langs->trans("AmountOfOrdersByMonthHT");
 				$stringtoshow.='<br>';
 				$stringtoshow.=$langs->trans("Year").' <input class="flat" size="4" type="text" name="'.$param_year.'" value="'.$endyear.'">';
 				$stringtoshow.='<input type="image" alt="'.$langs->trans("Refresh").'" src="'.img_picto($langs->trans("Refresh"),'refresh.png','','',1).'">';
diff --git a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php
index f398ae9dcb1f64d324276078f454d243b57fe27a..70d62cac34852fcaf9a3af4e2aff4c00b3db5bba 100644
--- a/htdocs/core/boxes/box_graph_orders_supplier_permonth.php
+++ b/htdocs/core/boxes/box_graph_orders_supplier_permonth.php
@@ -214,9 +214,9 @@ class box_graph_orders_supplier_permonth extends ModeleBoxes
 				$stringtoshow.='<form class="flat formboxfilter" method="POST" action="'.$_SERVER["PHP_SELF"].'">';
 				$stringtoshow.='<input type="hidden" name="action" value="'.$refreshaction.'">';
 				$stringtoshow.='<input type="hidden" name="DOL_AUTOSET_COOKIE" value="DOLUSERCOOKIE_box_'.$this->boxcode.':year,shownb,showtot">';
-				$stringtoshow.='<input type="checkbox" name="'.$param_shownb.'"'.($shownb?' checked="true"':'').'"> '.$langs->trans("NumberOfOrdersByMonth");
+				$stringtoshow.='<input type="checkbox" name="'.$param_shownb.'"'.($shownb?' checked="true"':'').'> '.$langs->trans("NumberOfOrdersByMonth");
 				$stringtoshow.=' &nbsp; ';
-				$stringtoshow.='<input type="checkbox" name="'.$param_showtot.'"'.($showtot?' checked="true"':'').'"> '.$langs->trans("AmountOfOrdersByMonthHT");
+				$stringtoshow.='<input type="checkbox" name="'.$param_showtot.'"'.($showtot?' checked="true"':'').'> '.$langs->trans("AmountOfOrdersByMonthHT");
 				$stringtoshow.='<br>';
 				$stringtoshow.=$langs->trans("Year").' <input class="flat" size="4" type="text" name="'.$param_year.'" value="'.$endyear.'">';
 				$stringtoshow.='<input type="image" alt="'.$langs->trans("Refresh").'" src="'.img_picto($langs->trans("Refresh"),'refresh.png','','',1).'">';
diff --git a/htdocs/core/boxes/box_graph_propales_permonth.php b/htdocs/core/boxes/box_graph_propales_permonth.php
index 974ccaed446c21bba6ced530dadc84aa251cee90..fd866f5df89c3475abf9ada2e262a3297b4d3f5a 100644
--- a/htdocs/core/boxes/box_graph_propales_permonth.php
+++ b/htdocs/core/boxes/box_graph_propales_permonth.php
@@ -218,9 +218,9 @@ class box_graph_propales_permonth extends ModeleBoxes
 				$stringtoshow.='<form class="flat formboxfilter" method="POST" action="'.$_SERVER["PHP_SELF"].'">';
 				$stringtoshow.='<input type="hidden" name="action" value="'.$refreshaction.'">';
 				$stringtoshow.='<input type="hidden" name="DOL_AUTOSET_COOKIE" value="DOLUSERCOOKIE_box_'.$this->boxcode.':year,shownb,showtot">';
-				$stringtoshow.='<input type="checkbox" name="'.$param_shownb.'"'.($shownb?' checked="true"':'').'"> '.$langs->trans("NumberOfProposalsByMonth");
+				$stringtoshow.='<input type="checkbox" name="'.$param_shownb.'"'.($shownb?' checked="true"':'').'> '.$langs->trans("NumberOfProposalsByMonth");
 				$stringtoshow.=' &nbsp; ';
-				$stringtoshow.='<input type="checkbox" name="'.$param_showtot.'"'.($showtot?' checked="true"':'').'"> '.$langs->trans("AmountOfProposalsByMonthHT");
+				$stringtoshow.='<input type="checkbox" name="'.$param_showtot.'"'.($showtot?' checked="true"':'').'> '.$langs->trans("AmountOfProposalsByMonthHT");
 				$stringtoshow.='<br>';
 				$stringtoshow.=$langs->trans("Year").' <input class="flat" size="4" type="text" name="'.$param_year.'" value="'.$endyear.'">';
 				$stringtoshow.='<input type="image" alt="'.$langs->trans("Refresh").'" src="'.img_picto($langs->trans("Refresh"),'refresh.png','','',1).'">';
diff --git a/htdocs/core/boxes/modules_boxes.php b/htdocs/core/boxes/modules_boxes.php
index c2918ddf1ee7fbf625f934acf84728b66ba3432e..c6b6dad7acb337ca84393fba5d13f7f6facb5e76 100644
--- a/htdocs/core/boxes/modules_boxes.php
+++ b/htdocs/core/boxes/modules_boxes.php
@@ -228,7 +228,7 @@ class ModeleBoxes    // Can't be abtract as it is instantiated to build "empty"
 				print '</td><td class="nocellnopadd boxclose nowrap">';
 				// The image must have the class 'boxhandle' beause it's value used in DOM draggable objects to define the area used to catch the full object
 				print img_picto($langs->trans("MoveBox",$this->box_id),'grip_title','class="boxhandle hideonsmartphone" style="cursor:move;"');
-				print img_picto($langs->trans("Close",$this->box_id),'close_title','class="boxclose" rel="x:y" style="cursor:pointer;" id="imgclose'.$this->box_id.'"');
+				print img_picto($langs->trans("Close2",$this->box_id),'close_title','class="boxclose" rel="x:y" style="cursor:pointer;" id="imgclose'.$this->box_id.'"');
 				$label=$head['text'];
 				if (! empty($head['graph'])) $label.=' ('.$langs->trans("Graph").')';
 				print '<input type="hidden" id="boxlabelentry'.$this->box_id.'" value="'.dol_escape_htmltag($label).'">';
diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php
index a4d491683b5172a152ea0c4a2c2265262661430f..b70820463b067d3adb6b7e28e32f8fef82d89b07 100644
--- a/htdocs/core/class/html.form.class.php
+++ b/htdocs/core/class/html.form.class.php
@@ -2622,7 +2622,7 @@ class Form
                     $i++;
                 }
                 print "</select>";
-                if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionnarySetup"),1);
+                if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionarySetup"),1);
             } else {
                 print $langs->trans("NoShippingMethodDefined");
             }
diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php
index 308534f3ebfe20ac086ffa45016632e283192029..07edb962371f57847d0d3a04de6f39a8edfc19b9 100644
--- a/htdocs/core/class/html.formmail.class.php
+++ b/htdocs/core/class/html.formmail.class.php
@@ -651,7 +651,7 @@ class FormMail
 
         	if ($this->withform == 1 || $this->withform == -1)
         	{
-        		$out.= '<tr><td align="center" colspan="2"><center>';
+        		$out.= '<tr><td align="center" colspan="2"><div class="center">';
         		$out.= '<input class="button" type="submit" id="sendmail" name="sendmail" value="'.$langs->trans("SendMail").'"';
         		// Add a javascript test to avoid to forget to submit file before sending email
         		if ($this->withfile == 2 && $conf->use_javascript_ajax)
@@ -664,7 +664,7 @@ class FormMail
         			$out.= ' &nbsp; &nbsp; ';
         			$out.= '<input class="button" type="submit" id="cancel" name="cancel" value="'.$langs->trans("Cancel").'" />';
         		}
-        		$out.= '</center></td></tr>'."\n";
+        		$out.= '</div></td></tr>'."\n";
         	}
 
         	$out.= '</table>'."\n";
diff --git a/htdocs/core/class/html.formsms.class.php b/htdocs/core/class/html.formsms.class.php
index 941cef40be609c92fca5a436a6645baedd830e4c..51841a27e24cfdcce59eec235318415501d372e0 100644
--- a/htdocs/core/class/html.formsms.class.php
+++ b/htdocs/core/class/html.formsms.class.php
@@ -320,15 +320,14 @@ function limitChars(textarea, limit, infodiv)
 
         print "</table>\n";
 
-        print '<center>';
-        print "<input class=\"button\" type=\"submit\" name=\"sendmail\" value=\"".$langs->trans("SendSms")."\"";
-        print ">";
+        print '<div class="center">';
+        print '<input class="button" type="submit" name="sendmail" value="'.$langs->trans("SendSms").'">';
         if ($this->withcancel)
         {
-            print " &nbsp; &nbsp; ";
-            print "<input class=\"button\" type=\"submit\" name=\"cancel\" value=\"".$langs->trans("Cancel")."\">";
+            print '&nbsp;&nbsp;&nbnp;&nbsp;&nbsp;';
+            print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'">';
         }
-        print "</center>\n";
+        print '</div>';
 
         print "</form>\n";
         print "<!-- End form SMS -->\n";
diff --git a/htdocs/core/class/infobox.class.php b/htdocs/core/class/infobox.class.php
index ab26ee6831745933df0bde9218252b9f495865f5..14d1bec08416aaae9e2df6564dbf00010231715e 100644
--- a/htdocs/core/class/infobox.class.php
+++ b/htdocs/core/class/infobox.class.php
@@ -40,14 +40,14 @@ class InfoBox
     /**
      *  Return array of boxes qualified for area and user
      *
-     *  @param	DoliDB	$db				Database handler
-     *  @param	string	$mode			'available' or 'activated'
-     *  @param	string	$zone			Name or area (-1 for all, 0 for Homepage, 1 for xxx, ...)
-     *  @param  User    $user	  		Object user to filter
-     *  @param	array	$excludelist	Array of box id (box.box_id = boxes_def.rowid) to exclude
-     *  @return array               	Array of boxes
+     *  @param	DoliDB		$db				Database handler
+     *  @param	string		$mode			'available' or 'activated'
+     *  @param	string		$zone			Name or area (-1 for all, 0 for Homepage, 1 for xxx, ...)
+     *  @param  User|null   $user	  		Object user to filter
+     *  @param	array		$excludelist	Array of box id (box.box_id = boxes_def.rowid) to exclude
+     *  @return array       	        	Array of boxes
      */
-    static function listBoxes($db, $mode, $zone, $user, $excludelist=array())
+    static function listBoxes($db, $mode, $zone, $user=null, $excludelist=array())
     {
         global $conf;
 
diff --git a/htdocs/core/lib/ecm.lib.php b/htdocs/core/lib/ecm.lib.php
index 2f12976e49f89ccf126be8a3ee978268897951dd..83059f5d49815b1c95bd91827317191af2735f8c 100644
--- a/htdocs/core/lib/ecm.lib.php
+++ b/htdocs/core/lib/ecm.lib.php
@@ -31,19 +31,21 @@
  */
 function ecm_prepare_dasboard_head($object)
 {
-	global $langs, $conf, $user;
+	global $langs, $conf, $user, $form;
 	$h = 0;
 	$head = array();
+    $helptext =$langs->trans("ECMAreaDesc").'<br>';
+    $helptext.=$langs->trans("ECMAreaDesc2");
 
 	$head[$h][0] = DOL_URL_ROOT.'/ecm/index.php';
-	$head[$h][1] = $langs->trans("ECMSectionsManual").img_help(1,$helptext1);
+	$head[$h][1] = $langs->trans("ECMSectionsManual").$form->textwithpicto('', $helptext, 1, 'info', '', 0, 3);
 	$head[$h][2] = 'index';
 	$h++;
 
 	if (! empty($conf->global->ECM_AUTO_TREE_ENABLED))
 	{
 		$head[$h][0] = DOL_URL_ROOT.'/ecm/index_auto.php';
-		$head[$h][1] = $langs->trans("ECMSectionsAuto").img_help(1,$helptext2);
+		$head[$h][1] = $langs->trans("ECMSectionsAuto").$form->textwithpicto('', $helptext, 1, 'info', '', 0, 3);
 		$head[$h][2] = 'index_auto';
 		$h++;
 	}
diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php
index cc06786e6021896eabb5fb34630e3eb890998225..84bf351e7b958601c89c35e6b1ac5c1641a05225 100644
--- a/htdocs/core/lib/functions.lib.php
+++ b/htdocs/core/lib/functions.lib.php
@@ -766,11 +766,12 @@ function dol_bc($var,$moreclass='')
  *      @param  Object		$object         A company or contact object
  * 	    @param	int			$withcountry	1=Add country into address string
  *      @param	string		$sep			Separator to use to build string
+ *      @param	Tranlsate	$outputlangs	Object lang that contains language for text translation.
  *      @return string          			Formated string
  */
-function dol_format_address($object,$withcountry=0,$sep="\n")
+function dol_format_address($object,$withcountry=0,$sep="\n",$outputlangs='')
 {
-	global $conf;
+	global $conf,$langs;
 
 	$ret='';
 	$countriesusingstate=array('AU','US','IN','GB','ES','UK','TR');
@@ -815,8 +816,8 @@ function dol_format_address($object,$withcountry=0,$sep="\n")
 			$ret.=", ".$object->state;
 		}
 	}
-
-	if ($withcountry) $ret.=($object->country?$sep.$object->country:'');
+	if (! is_object($outputlangs)) $outputlangs=$langs;
+	if ($withcountry) $ret.=($object->country_code?$sep.$outputlangs->convToOutputCharset($outputlangs->transnoentitiesnoconv("Country".$object->country_code)):'');
 
 	return $ret;
 }
@@ -2905,7 +2906,7 @@ function price($amount, $form=0, $outlangs='', $trunc=1, $rounding=-1, $forcerou
  *									'MT'=Round to Max for totals with Tax (MAIN_MAX_DECIMALS_TOT)
  *									'MS'=Round to Max Shown (MAIN_MAX_DECIMALS_SHOWN)
  * 	@param	int		$alreadysqlnb	Put 1 if you know that content is already universal format number
- *	@return	string					Amount with universal numeric format (Example: '99.99999')
+ *	@return	string					Amount with universal numeric format (Example: '99.99999') or unchanged text if conversion fails.
  *
  *	@see    price					Opposite function of price2num
  */
diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php
index 3223412dc5f36764fe4e9dfb7492db3503242313..15cb2f87b0b447721070185c3260ed293c02824d 100644
--- a/htdocs/core/lib/pdf.lib.php
+++ b/htdocs/core/lib/pdf.lib.php
@@ -312,7 +312,10 @@ function pdf_build_address($outputlangs,$sourcecompany,$targetcompany='',$target
 
 	if ($mode == 'source')
 	{
-		$stringaddress .= ($stringaddress ? "\n" : '' ).$outputlangs->convToOutputCharset(dol_format_address($sourcecompany))."\n";
+		$withCountry = 0;
+		if (!empty($sourcecompany->country_code) && ($targetcompany->country_code != $sourcecompany->country_code)) $withCountry = 1;
+
+		$stringaddress .= ($stringaddress ? "\n" : '' ).$outputlangs->convToOutputCharset(dol_format_address($sourcecompany, $withCountry, "\n", $outputlangs))."\n";
 
 		if (empty($conf->global->MAIN_PDF_DISABLESOURCEDETAILS))
 		{
diff --git a/htdocs/core/menus/standard/auguria.lib.php b/htdocs/core/menus/standard/auguria.lib.php
index c411ef96039e80650b54e01fd5ae2d5516c197a6..8d5cc6378985498520d6df3e6169f34e9523ab61 100644
--- a/htdocs/core/menus/standard/auguria.lib.php
+++ b/htdocs/core/menus/standard/auguria.lib.php
@@ -231,7 +231,7 @@ function print_left_auguria_menu($db,$menu_array_before,$menu_array_after,&$tabM
 			print '<div class="menu_titre" id="menu_titre_logo"></div>';
 			print '<div class="menu_top" id="menu_top_logo"></div>';
 			print '<div class="menu_contenu" id="menu_contenu_logo">';
-			print '<center><img title="" src="'.$urllogo.'"></center>'."\n";
+			print '<div class="center"><img title="" src="'.$urllogo.'"></div>'."\n";
 			print '</div>';
 			print '<div class="menu_end" id="menu_end_logo"></div>';
 			print '</div>'."\n";
diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php
index 781de5f2913f8cc94637289dd784bfdfa36ac01e..aaf24d5b07ed9b47082235835d7b7a6cf7fad01c 100644
--- a/htdocs/core/menus/standard/eldy.lib.php
+++ b/htdocs/core/menus/standard/eldy.lib.php
@@ -436,7 +436,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu
 			print '<div class="menu_titre" id="menu_titre_logo"></div>';
 			print '<div class="menu_top" id="menu_top_logo"></div>';
 			print '<div class="menu_contenu" id="menu_contenu_logo">';
-			print '<center><img title="" src="'.$urllogo.'"></center>'."\n";
+			print '<div class="center"><img title="" src="'.$urllogo.'"></div>'."\n";
 			print '</div>';
 			print '<div class="menu_end" id="menu_end_logo"></div>';
 			print '</div>'."\n";
diff --git a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php
index 3e7803af70afedafa78c7846d4d604e287e40600..510a1bd88a1d620098eb7c9d4e83e7e1361aa914 100644
--- a/htdocs/core/modules/commande/doc/pdf_einstein.modules.php
+++ b/htdocs/core/modules/commande/doc/pdf_einstein.modules.php
@@ -1188,7 +1188,7 @@ class pdf_einstein extends ModelePDFCommandes
 		if ($showaddress)
 		{
 			// Sender properties
-			$carac_emetteur = pdf_build_address($outputlangs,$this->emetteur);
+			$carac_emetteur = pdf_build_address($outputlangs, $this->emetteur, $object->client);
 
 			// Show sender
 			$posy=42;
diff --git a/htdocs/core/modules/commande/doc/pdf_proforma.modules.php b/htdocs/core/modules/commande/doc/pdf_proforma.modules.php
index 0216bd4163aac9aa16d5c622c92b82c686014d5a..2b8aaa21818228fcae1d3ac28c0cbfeb7c87923d 100644
--- a/htdocs/core/modules/commande/doc/pdf_proforma.modules.php
+++ b/htdocs/core/modules/commande/doc/pdf_proforma.modules.php
@@ -1145,7 +1145,7 @@ class pdf_proforma extends ModelePDFCommandes
 		if ($showaddress)
 		{
 			// Sender properties
-			$carac_emetteur = pdf_build_address($outputlangs,$this->emetteur);
+			$carac_emetteur = pdf_build_address($outputlangs, $this->emetteur, $object->client);
 
 			// Show sender
 			$posy=42;
diff --git a/htdocs/core/modules/contract/doc/pdf_strato.modules.php b/htdocs/core/modules/contract/doc/pdf_strato.modules.php
index bd4cc3337430d652a0737b1b8973de36d09c97c2..be686377ce39e1aa5fe90b674ac18a63316708b2 100644
--- a/htdocs/core/modules/contract/doc/pdf_strato.modules.php
+++ b/htdocs/core/modules/contract/doc/pdf_strato.modules.php
@@ -53,6 +53,18 @@ class pdf_strato extends ModelePDFContract
 	var	$marge_haute;
 	var	$marge_basse;
 
+	/**
+	 * Issuer
+	 * @var Societe
+	 */
+	public $emetteur;
+
+	/**
+	 * Recipient
+	 * @var Societe
+	 */
+	public $recipient;
+
 	/**
 	 *	Constructor
 	 *
@@ -543,7 +555,7 @@ class pdf_strato extends ModelePDFContract
 				$carac_emetteur .= ($carac_emetteur ? "\n" : '' ).$outputlangs->transnoentities("Name").": ".$outputlangs->convToOutputCharset($object->user->getFullName($outputlangs))."\n";
 			}
 
-			$carac_emetteur .= pdf_build_address($outputlangs,$this->emetteur);
+			$carac_emetteur .= pdf_build_address($outputlangs, $this->emetteur, $object->client);
 
 			// Show sender
 			$posy=42;
@@ -581,17 +593,17 @@ class pdf_strato extends ModelePDFContract
 				$result=$object->fetch_contact($arrayidcontact[0]);
 			}
 
+			$this->recipient = $object->client;
+
 			// Recipient name
-			if (! empty($usecontact))
-			{
+			if (! empty($usecontact)) {
 				// On peut utiliser le nom de la societe du contact
 				if (! empty($conf->global->MAIN_USE_COMPANY_NAME_OF_CONTACT)) $socname = $object->contact->socname;
 				else $socname = $object->client->name;
-				$this->recipient->name=$outputlangs->convToOutputCharset($socname);
+				$this->recipient->name = $outputlangs->convToOutputCharset($socname);
 			}
-			else
-			{
-				$this->recipient->name=$outputlangs->convToOutputCharset($object->client->name);
+			else {
+				$this->recipient->name = $outputlangs->convToOutputCharset($object->client->name);
 			}
 
 			$carac_client=pdf_build_address($outputlangs, $this->emetteur, $object->client, (isset($object->contact)?$object->contact:''), $usecontact, 'target');
diff --git a/htdocs/core/modules/dons/html_cerfafr.html b/htdocs/core/modules/dons/html_cerfafr.html
index 2dc9c72968c4e8369415977673974481061949d1..ca3f3510eee19b27ffaaef3ea2d522408348b447 100644
--- a/htdocs/core/modules/dons/html_cerfafr.html
+++ b/htdocs/core/modules/dons/html_cerfafr.html
@@ -157,8 +157,8 @@
 			  <table border="0" bgcolor="#ffffff" cellspacing="0" cellpadding="3">
 			    <tr>
 			      <td width="160" height="100" valign="top">
-				<center>__Date__ & __Signature__</center>
-				<center>__NOW__</center>
+					<div class="center">__Date__ & __Signature__</div>
+					<div class="center">__NOW__</div>
 			      </td>
 			    </tr>
 			  </table>
diff --git a/htdocs/core/modules/expedition/doc/pdf_merou.modules.php b/htdocs/core/modules/expedition/doc/pdf_merou.modules.php
index bdf61e3ea72da8d840cf019a8a35e7fd33a491e9..145eeafcddedb49b046b81914ab71104c0f71676 100644
--- a/htdocs/core/modules/expedition/doc/pdf_merou.modules.php
+++ b/htdocs/core/modules/expedition/doc/pdf_merou.modules.php
@@ -539,7 +539,7 @@ class pdf_merou extends ModelePdfExpedition
 		$pdf->SetTextColor(0,0,0);
 
 		// Sender properties
-		$carac_emetteur = pdf_build_address($outputlangs,$this->emetteur);
+		$carac_emetteur = pdf_build_address($outputlangs, $this->emetteur, $object->client);
 
 		$pdf->SetFont('','', $default_font_size - 3);
 		$pdf->SetXY($blSocX,$blSocY+4);
diff --git a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php
index ccb4f93a611b37ab0844ca936c66b289761c6313..ea6601b839656f345adb7a8d296f712a4aafe2f2 100644
--- a/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php
+++ b/htdocs/core/modules/expedition/doc/pdf_rouget.modules.php
@@ -587,7 +587,7 @@ class pdf_rouget extends ModelePdfExpedition
 		 		$carac_emetteur .= ($carac_emetteur ? "\n" : '' ).$outputlangs->transnoentities("Name").": ".$outputlangs->convToOutputCharset($object->user->getFullName($outputlangs))."\n";
 		 	}
 
-		 	$carac_emetteur .= pdf_build_address($outputlangs,$this->emetteur);
+		 	$carac_emetteur .= pdf_build_address($outputlangs, $this->emetteur, $object->client);
 
 			// Show sender
 			$posx=$this->marge_gauche;
diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php
index 35a0ff47aa076419863b97ed3b62eef71aa16694..6d1f5636b851ac0c6a9d9c88b6b3c463be3774df 100644
--- a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php
+++ b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php
@@ -1434,7 +1434,7 @@ class pdf_crabe extends ModelePDFFactures
 		if ($showaddress)
 		{
 			// Sender properties
-			$carac_emetteur = pdf_build_address($outputlangs,$this->emetteur);
+			$carac_emetteur = pdf_build_address($outputlangs, $this->emetteur, $object->client);
 
 			// Show sender
 			$posy=42;
diff --git a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php
index 0d09aa7ce6cde028e7ebbd190780c2e670867501..626c28309819d57aff3f088436672af4ffef4d3c 100644
--- a/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php
+++ b/htdocs/core/modules/fichinter/doc/pdf_soleil.modules.php
@@ -522,7 +522,7 @@ class pdf_soleil extends ModelePDFFicheinter
 				$carac_emetteur .= ($carac_emetteur ? "\n" : '' ).$outputlangs->transnoentities("Name").": ".$outputlangs->convToOutputCharset($object->user->getFullName($outputlangs))."\n";
 			}
 
-			$carac_emetteur .= pdf_build_address($outputlangs,$this->emetteur);
+			$carac_emetteur .= pdf_build_address($outputlangs, $this->emetteur, $object->client);
 
 			// Show sender
 			$posy=42;
diff --git a/htdocs/core/modules/propale/doc/pdf_azur.modules.php b/htdocs/core/modules/propale/doc/pdf_azur.modules.php
index 1cafa394e667bda997de96fe5e5008ca1a9cd220..35953b8521f00b2e263f6f9d1afdd76b57ffce31 100644
--- a/htdocs/core/modules/propale/doc/pdf_azur.modules.php
+++ b/htdocs/core/modules/propale/doc/pdf_azur.modules.php
@@ -1284,7 +1284,7 @@ class pdf_azur extends ModelePDFPropales
 		 		$carac_emetteur .= ($carac_emetteur ? "\n" : '' ).$outputlangs->transnoentities("Name").": ".$outputlangs->convToOutputCharset($object->user->getFullName($outputlangs))."\n";
 		 	}
 
-		 	$carac_emetteur .= pdf_build_address($outputlangs,$this->emetteur);
+		 	$carac_emetteur .= pdf_build_address($outputlangs, $this->emetteur, $object->client);
 
 			// Show sender
 			$posy=42;
diff --git a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php
index 5865d431132346c4b4af8e151d99ce9693389f1c..6b57b961da45e38d42ffb436c7c3d078f9f28f18 100644
--- a/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php
+++ b/htdocs/core/modules/supplier_invoice/pdf/pdf_canelle.modules.php
@@ -970,7 +970,7 @@ class pdf_canelle extends ModelePDFSuppliersInvoices
 		if ($showaddress)
 		{
 			// Sender properties
-			$carac_emetteur = pdf_build_address($outputlangs,$this->emetteur);
+			$carac_emetteur = pdf_build_address($outputlangs, $this->emetteur, $object->client);
 
 			// Show sender
 			$posy=42;
diff --git a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php
index 5faed78985c244548bc7303304cf3e788a7c349d..29bd483b39b3078c3620306efa40e498caeff419 100644
--- a/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php
+++ b/htdocs/core/modules/supplier_order/pdf/pdf_muscadet.modules.php
@@ -1022,7 +1022,7 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
 		if ($showaddress)
 		{
 			// Sender properties
-			$carac_emetteur = pdf_build_address($outputlangs,$this->emetteur);
+			$carac_emetteur = pdf_build_address($outputlangs, $this->emetteur, $object->client);
 
 			// Show sender
 			$posy=42;
diff --git a/htdocs/core/photos_resize.php b/htdocs/core/photos_resize.php
index 2d18c6154f82142a13eae85fb3d356497d8d0b31..3a51a5f7567aa72f68674942d3327320b4b1a495 100644
--- a/htdocs/core/photos_resize.php
+++ b/htdocs/core/photos_resize.php
@@ -173,11 +173,11 @@ if (! empty($conf->use_javascript_ajax))
 	print '<fieldset id="redim_file">';
 	print '<legend>'.$langs->trans("Recenter").'</legend>';
 	print $langs->trans("DefineNewAreaToPick").'...<br>';
-	print '<br><center>';
+	print '<br><div class="center">';
 	print '<div style="border: 1px solid #888888; width: '.$widthforcrop.'px;">';
 	print '<img src="'.DOL_URL_ROOT.'/viewimage.php?modulepart=product&entity='.$object->entity.'&file='.$original_file.'" alt="" id="cropbox" width="'.$widthforcrop.'px"/>';
 	print '</div>';
-	print '</center><br>';
+	print '</div><br>';
 	print '<form action="'.$_SERVER["PHP_SELF"].'?id='.$id.'" method="post" onsubmit="return checkCoords();">
 	      <div class="jc_coords">
 	         '.$langs->trans("NewSizeAfterCropping").':
diff --git a/htdocs/core/tpl/login.tpl.php b/htdocs/core/tpl/login.tpl.php
index 23d8dd4f3265c904defa2bdfc9e84b64908f85d1..61c262446922b0be6d8503aef59d768e8b7d5a61 100644
--- a/htdocs/core/tpl/login.tpl.php
+++ b/htdocs/core/tpl/login.tpl.php
@@ -46,7 +46,7 @@ $(document).ready(function () {
 </script>
 <?php } ?>
 
-<center>
+<div align="center">
 <div class="login_vertical_align">
 
 
@@ -67,7 +67,7 @@ $(document).ready(function () {
 <input type="hidden" name="dol_no_mouse_hover" id="dol_no_mouse_hover" value="<?php echo $dol_no_mouse_hover; ?>" />
 <input type="hidden" name="dol_use_jmobile" id="dol_use_jmobile" value="<?php echo $dol_use_jmobile; ?>" />
 
-<table class="login_table_title center" summary="<?php echo dol_escape_htmltag($title); ?>">
+<table align="center" class="login_table_title" summary="<?php echo dol_escape_htmltag($title); ?>">
 <tr class="vmenu"><td align="center"><?php echo dol_escape_htmltag($title); ?></td></tr>
 </table>
 <br>
@@ -134,7 +134,6 @@ if (! empty($hookmanager->resArray['options'])) {
 
 <img alt="Logo" title="" src="<?php echo $urllogo; ?>" id="img_logo" />
 
-</div>
 </div>
 
 <div id="login_line2" style="clear: both">
@@ -152,7 +151,7 @@ if ($forgetpasslink || $helpcenterlink)
 	if ($dol_use_jmobile)    $moreparam.=(strpos($moreparam,'?')===false?'?':'&').'dol_use_jmobile='.$dol_use_jmobile;
 
 	echo '<br>';
-	echo '<div align="center" style="margin-top: 4px;">';
+	echo '<div class="center" style="margin-top: 4px;">';
 	if ($forgetpasslink) {
 		echo '<a class="alogin" href="'.DOL_URL_ROOT.'/user/passwordforgotten.php'.$moreparam.'">(';
 		echo $langs->trans('PasswordForgotten');
@@ -179,7 +178,7 @@ if (isset($conf->file->main_authentication) && preg_match('/openid/',$conf->file
 
 	//if (! empty($conf->global->MAIN_OPENIDURL_PERUSER)) $url=
 	echo '<br>';
-	echo '<div align="center" style="margin-top: 4px;">';
+	echo '<div class="center" style="margin-top: 4px;">';
 
 	$url=$conf->global->MAIN_AUTHENTICATION_OPENID_URL;
 	if (! empty($url)) print '<a class="alogin" href="'.$url.'">'.$langs->trans("LoginUsingOpenID").'</a>';
@@ -217,7 +216,7 @@ if (isset($conf->file->main_authentication) && preg_match('/openid/',$conf->file
 <?php if ($main_home)
 {
 ?>
-	<div class="center" class="login_main_home" style="max-width: 80%">
+	<div class="login_main_home center" style="max-width: 80%">
 	<?php echo $main_home; ?>
 	</div><br>
 <?php
@@ -261,7 +260,7 @@ if (! empty($conf->google->enabled) && ! empty($conf->global->MAIN_GOOGLE_AD_CLI
 	if (empty($conf->dol_use_jmobile))
 	{
 ?>
-	<div align="center"><br>
+	<div class="center"><br>
 		<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 ?>";
@@ -280,7 +279,6 @@ if (! empty($conf->google->enabled) && ! empty($conf->global->MAIN_GOOGLE_AD_CLI
 
 
 </div>
-</center>	<!-- end of center -->
 
 
 </body>
diff --git a/htdocs/core/tpl/objectline_create.tpl.php b/htdocs/core/tpl/objectline_create.tpl.php
index a69ab60c2547eb0086c8f3f0591141ff8b016b2c..543b0724de22abb554be4f83980e375f13d7bf35 100644
--- a/htdocs/core/tpl/objectline_create.tpl.php
+++ b/htdocs/core/tpl/objectline_create.tpl.php
@@ -50,25 +50,23 @@ if (in_array($object->element,array('propal','facture','invoice','commande','ord
 	<td<?php echo (! empty($conf->global->MAIN_VIEW_LINE_NUMBER) ? ' colspan="2"' : ''); ?>>
 	<div id="add"></div><span class="hideonsmartphone"><?php echo $langs->trans('AddNewLine'); ?></span><?php // echo $langs->trans("FreeZone"); ?>
 	</td>
-	<td align="right"><span id="title_vat"><label for="tva_tx"><?php echo $langs->trans('VAT'); ?></label></span></td>
-	<td align="right"><span id="title_up_ht"><label for="price_ht"><?php echo $langs->trans('PriceUHT'); ?></label></span></td>
+	<td align="right"><span id="title_vat"><?php echo $langs->trans('VAT'); ?></span></td>
+	<td align="right"><span id="title_up_ht"><?php echo $langs->trans('PriceUHT'); ?></span></td>
 	<?php if (! empty($inputalsopricewithtax)) { ?>
-	<td align="right"><span id="title_up_ttc"><label for="price_ttc"><?php echo $langs->trans('PriceUTTC'); ?></label></span></td>
+	<td align="right"><span id="title_up_ttc"><?php echo $langs->trans('PriceUTTC'); ?></span></td>
 	<?php } ?>
-	<td align="right"><label for="qty"><?php echo $langs->trans('Qty'); ?></label></td>
-	<td align="right"><label for="remise_percent"><?php echo $langs->trans('ReductionShort'); ?></label></td>
+	<td align="right"><?php echo $langs->trans('Qty'); ?></td>
+	<td align="right"><?php echo $langs->trans('ReductionShort'); ?></td>
 	<?php
 	if (! empty($usemargins))
 	{
 		?>
 		<td align="right" class="margininfos">
 		<?php
-		echo '<label for="buying_price">';
 		if ($conf->global->MARGIN_TYPE == "1")
 			echo $langs->trans('BuyingPrice');
 		else
 			echo $langs->trans('CostPrice');
-		echo '</label>';
 		?>
 		</td>
 		<?php
@@ -103,20 +101,25 @@ else {
 	// Show radio free line
 	if ($forceall >= 0 && (! empty($conf->product->enabled) || ! empty($conf->service->enabled)))
 	{
+		echo '<label for="prod_entry_mode_free">';
 		echo '<input type="radio" name="prod_entry_mode" id="prod_entry_mode_free" value="free"';
 		//echo (GETPOST('prod_entry_mode')=='free' ? ' checked="true"' : ((empty($forceall) && (empty($conf->product->enabled) || empty($conf->service->enabled)))?' checked="true"':'') );
 		echo (GETPOST('prod_entry_mode')=='free' ? ' checked="true"' : '');
 		echo '> ';
-	}
-	else echo '<input type="hidden" id="prod_entry_mode_free" name="prod_entry_mode" value="free">';
-
-	// Show type selector
-	if ($forceall >= 0)
-	{
-		echo '<label for="select_type">';
+		// Show type selector
 		echo $langs->trans("FreeLineOfType");
-		echo '</label>';
 		echo ' ';
+		echo '</label>';
+	}
+	else 
+	{
+		echo '<input type="hidden" id="prod_entry_mode_free" name="prod_entry_mode" value="free">';
+		// Show type selector
+		if ($forceall >= 0)
+		{
+			echo $langs->trans("FreeLineOfType");
+			echo ' ';
+		}
 	}
 
 	echo $form->select_type_of_lines(isset($_POST["type"])?$_POST["type"]:-1,'type',1,1,$forceall);
@@ -128,9 +131,8 @@ else {
 	{
 		if ($forceall >= 0) echo '<br>';
 		echo '<span>';
-		echo '<input type="radio" name="prod_entry_mode" id="prod_entry_mode_predef" value="predef"'.(GETPOST('prod_entry_mode')=='predef'?' checked="true"':'').'> ';
-
 		echo '<label for="prod_entry_mode_predef">';
+		echo '<input type="radio" name="prod_entry_mode" id="prod_entry_mode_predef" value="predef"'.(GETPOST('prod_entry_mode')=='predef'?' checked="true"':'').'> ';
 		if (empty($senderissupplier))
 		{
 			if (! empty($conf->product->enabled) && empty($conf->service->enabled)) echo $langs->trans('PredefinedProductsToSell');
diff --git a/htdocs/core/tpl/passwordforgotten.tpl.php b/htdocs/core/tpl/passwordforgotten.tpl.php
index af27aff944b401ad47a761483e30ed0dfe6cd018..9a740c0960eaef8e0150cafb756641df7634dfd1 100644
--- a/htdocs/core/tpl/passwordforgotten.tpl.php
+++ b/htdocs/core/tpl/passwordforgotten.tpl.php
@@ -44,8 +44,7 @@ $(document).ready(function () {
 <?php } ?>
 
 
-<center>
-<div class="login_vertical_align">
+<div align="center" class="login_vertical_align">
 
 
 <form id="login" name="login" method="post" action="<?php echo $php_self; ?>">
@@ -53,7 +52,7 @@ $(document).ready(function () {
 <input type="hidden" name="action" value="buildnewpassword">
 
 <table class="login_table_title center" summary="<?php echo dol_escape_htmltag($title); ?>">
-<tr class="vmenu"><td align="center"><?php echo $title; ?></td></tr>
+<tr class="vmenu"><td class="center"><?php echo $title; ?></td></tr>
 </table>
 <br>
 
@@ -122,7 +121,7 @@ if (! empty($hookmanager->resArray['options'])) {
 <br><input id="password" type="submit" <?php echo $disabled; ?> class="button" name="password" value="<?php echo $langs->trans('SendNewPassword'); ?>" tabindex="4" />
 
 <br>
-<div align="center" style="margin-top: 4px;">
+<div class="center" style="margin-top: 4px;">
 	<?php
 	$moreparam='';
 	if (! empty($conf->dol_hide_topmenu))   $moreparam.=(strpos($moreparam,'?')===false?'?':'&').'dol_hide_topmenu='.$conf->dol_hide_topmenu;
@@ -147,7 +146,7 @@ if (! empty($hookmanager->resArray['options'])) {
 	<?php echo $langs->trans('SendNewPasswordDesc'); ?>
 	</font>
 <?php }else{ ?>
-	<div class="warning" align="center">
+	<div class="warning center">
 	<?php echo $langs->trans('AuthenticationDoesNotAllowSendNewPassword', $mode); ?>
 	</div>
 <?php } ?>
@@ -164,9 +163,8 @@ if (! empty($hookmanager->resArray['options'])) {
 
 
 </div>
-</center>	<!-- end of center -->
 
 
 </body>
 </html>
-<!-- END PHP TEMPLATE -->
+<!-- END PHP TEMPLATE -->
\ No newline at end of file
diff --git a/htdocs/core/tpl/resource_view.tpl.php b/htdocs/core/tpl/resource_view.tpl.php
index ef2963b28c198ac20b1f350f4433e292a8c2a6f1..d57b66cc331e40115fdf8c315a237e0d69c52263 100644
--- a/htdocs/core/tpl/resource_view.tpl.php
+++ b/htdocs/core/tpl/resource_view.tpl.php
@@ -32,7 +32,7 @@ if( (array) $linked_resources && count($linked_resources) > 0)
 		print '<div class="tagtd">'.$langs->trans('Resource').'</div>';
 		print '<div class="tagtd">'.$langs->trans('Busy').'</div>';
 		print '<div class="tagtd">'.$langs->trans('Mandatory').'</div>';
-		print '<div class="tagtd">'.$langs->trans('Edit').'</div>';
+		print '<div class="tagtd">'.$langs->trans('Action').'</div>';
 		print '</form>';
 		//print '</div>';
 
@@ -86,8 +86,13 @@ if( (array) $linked_resources && count($linked_resources) > 0)
 			print '</div>';
 
 			print '<div class="tagtd">';
-			print '<a href="'.$_SERVER['PHP_SELF'].'?action=delete_resource&element='.$element.'&element_id='.$element_id.'&lineid='.$linked_resource['rowid'].'">'.$langs->trans('Delete').'</a>';
-			print '<a href="'.$_SERVER['PHP_SELF'].'?mode=edit&resource_type='.$linked_resource['resource_type'].'&element='.$element.'&element_id='.$element_id.'&lineid='.$linked_resource['rowid'].'">'.$langs->trans('Edit').'</a>';
+			print '<a href="'.$_SERVER['PHP_SELF'].'?mode=edit&resource_type='.$linked_resource['resource_type'].'&element='.$element.'&element_id='.$element_id.'&lineid='.$linked_resource['rowid'].'">';
+			print img_edit();
+			print '</a>';
+			print '&nbsp;';
+			print '<a href="'.$_SERVER['PHP_SELF'].'?action=delete_resource&element='.$element.'&element_id='.$element_id.'&lineid='.$linked_resource['rowid'].'">';			
+			print img_delete();
+			print '</a>';
 			print '</div>';
 
 			print '</div>';
@@ -105,4 +110,4 @@ else {
 	print '<div class="warning">'.$langs->trans('NoResourceLinked').'</div>';
 
 }
-// FIN DU TPL
+// FIN DU TPL
\ No newline at end of file
diff --git a/htdocs/cron/admin/cron.php b/htdocs/cron/admin/cron.php
index ba87e1172e12f2fc39e13a59bc5e99f175c7efee..d03dff03b3e79fe9d651319d8bbce093acc875d5 100644
--- a/htdocs/cron/admin/cron.php
+++ b/htdocs/cron/admin/cron.php
@@ -96,9 +96,9 @@ print '</tr>';
 
 print '</table>';
 
-print '<br><center>';
+print '<br><div class="center">';
 print '<input type="submit" name="save" class="button" value="'.$langs->trans("Save").'">';
-print '</center>';
+print '</div>';
 
 print '</form>';
 
diff --git a/htdocs/cron/card.php b/htdocs/cron/card.php
index 17704972170674124c0dedd065bcb5e0c1f1dfaa..4c3ac6b69284ecc9a0722f882164199cca20f260 100644
--- a/htdocs/cron/card.php
+++ b/htdocs/cron/card.php
@@ -472,8 +472,9 @@ if (($action=="create") || ($action=="edit"))
 
 	print '<div align="center"><br>';
 	print '<input type="submit" name="save" class="button" value="'.$langs->trans("Save").'">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 	print '<input type="submit" name="cancel" class="button" value="'.$langs->trans("Cancel").'">';
-	print "</center>";
+	print "</div>";
 
 	print "</form>\n";
 
diff --git a/htdocs/ecm/docdir.php b/htdocs/ecm/docdir.php
index dd40205fc1330480adc87777254bb6773f50e4a5..b1f09ffcb22306148a5f80a9d1a3a9e7a1dc79d3 100644
--- a/htdocs/ecm/docdir.php
+++ b/htdocs/ecm/docdir.php
@@ -175,11 +175,11 @@ if ($action == 'create')
 
 	print '</table><br>';
 
-	print '<center>';
+	print '<div class="center">';
 	print '<input type="submit" class="button" name="create" value="'.$langs->trans("Create").'">';
-	print ' &nbsp; &nbsp; ';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-	print '</center>';
+	print '</div>';
 	print '</form>';
 }
 
diff --git a/htdocs/ecm/index.php b/htdocs/ecm/index.php
index 8f9bd5573bf782bc0d8b6562d50ac316ce463344..d675542140ca9bb4745f4c79cb46488f57085163 100644
--- a/htdocs/ecm/index.php
+++ b/htdocs/ecm/index.php
@@ -416,12 +416,6 @@ if (! empty($conf->global->ECM_AUTO_TREE_ENABLED))
 
 print_fiche_titre($langs->trans("ECMArea").' - '.$langs->trans("ECMFileManager"));
 
-$helptext1=''; $helptext2='';
-$helptext1.=$langs->trans("ECMAreaDesc");
-$helptext1.=$langs->trans("ECMAreaDesc2");
-$helptext2.=$langs->trans("ECMAreaDesc");
-$helptext2.=$langs->trans("ECMAreaDesc2");
-
 /*
 print '<div class="hideonsmartphone">';
 print $langs->trans("ECMAreaDesc")."<br>";
diff --git a/htdocs/expedition/card.php b/htdocs/expedition/card.php
index 8984e4c54248d788eddd98a218f82546f7236605..b4ca350434797e509f7da246c46890a10b7475a5 100644
--- a/htdocs/expedition/card.php
+++ b/htdocs/expedition/card.php
@@ -962,7 +962,7 @@ if ($action == 'create')
 
             print "</table>";
 
-            print '<br><center><input type="submit" class="button" value="'.$langs->trans("Create").'"></center>';
+            print '<br><div class="center"><input type="submit" class="button" value="'.$langs->trans("Create").'"></div>';
 
             print '</form>';
 
diff --git a/htdocs/exports/index.php b/htdocs/exports/index.php
index 442bb13acb291f4e0e18b1d1f7196ed641eebfd5..1178a20b23632a74aead632cabedcf7ba3aff02c 100644
--- a/htdocs/exports/index.php
+++ b/htdocs/exports/index.php
@@ -90,7 +90,7 @@ else
 print '</table>';
 print '<br>';
 
-print '<center>';
+print '<div class="center">';
 if (count($export->array_export_code))
 {
 	if ($user->rights->export->creer)
@@ -102,12 +102,12 @@ if (count($export->array_export_code))
 		print '<a class="butActionRefused" href="#" title="'.dol_escape_htmltag($langs->transnoentitiesnoconv("NotEnoughPermissions")).'">'.$langs->trans("NewExport").'</a>';
 	}
 	/*
-	 print '<center><form action="'.DOL_URL_ROOT.'/exports/export.php?leftmenu=export"><input type="submit" class="button" value="'.$langs->trans("NewExport").'"';
+	 print '<form action="'.DOL_URL_ROOT.'/exports/export.php?leftmenu=export"><input type="submit" class="button" value="'.$langs->trans("NewExport").'"';
 	print ($user->rights->export->creer?'':' disabled="disabled"');
-	print '></form></center>';
+	print '><div class="center"></div></form>';
 	*/
 }
-print '</center>';
+print '</div>';
 print '<br>';
 
 print '</div><div class="fichetwothirdright"><div class="ficheaddleft">';
diff --git a/htdocs/externalsite/admin/externalsite.php b/htdocs/externalsite/admin/externalsite.php
index 93595b2cb9f70f2fd49ce2b173de540342587fb1..45f47c7d824aae8800bf8bd02880d05a76e44ba7 100644
--- a/htdocs/externalsite/admin/externalsite.php
+++ b/htdocs/externalsite/admin/externalsite.php
@@ -114,9 +114,9 @@ print "</tr>";
 print "</table>";
 
 
-print '<br><center>';
-print "<input type=\"submit\" name=\"save\" class=\"button\" value=\"".$langs->trans("Save")."\">";
-print "</center>";
+print '<br><div class="center">';
+print '<input type="submit" name="save" class="button" value="'.$langs->trans("Save").'">';
+print '</div>';
 
 print "</form>\n";
 
diff --git a/htdocs/externalsite/frames.php b/htdocs/externalsite/frames.php
index 0fca246e9ee88e6e134181f5f6e2b4852f1a8d86..3832408818090ba28744676dc07727da1bc10efc 100644
--- a/htdocs/externalsite/frames.php
+++ b/htdocs/externalsite/frames.php
@@ -58,10 +58,10 @@ print "
 
 <noframes>
 <body>
-	<br><center>
+	<br><div class="center">
 	Sorry, your browser is too old or not correctly configured to view this area.<br>
 	Your browser must support frames.<br>
-	</center>
+	</div>
 </body>
 </noframes>
 
diff --git a/htdocs/fichinter/card.php b/htdocs/fichinter/card.php
index 4ffc31c9cabe0e1e5be81ce517c172532bde036f..2f067efeae2a95863e972a138cf0b37384af1212 100644
--- a/htdocs/fichinter/card.php
+++ b/htdocs/fichinter/card.php
@@ -1122,9 +1122,9 @@ if ($action == 'create')
 	        print '<input type="hidden" name="originid"       value="'.$objectsrc->id.'">';
 		}
 
-		print '<center><br>';
+		print '<br><div class="center">';
 		print '<input type="submit" class="button" value="'.$langs->trans("CreateDraftIntervention").'">';
-		print '</center>';
+		print '</div>';
 
 		print '</form>';
 	}
@@ -1137,10 +1137,10 @@ if ($action == 'create')
 		print '</td></tr>';
 		print '</table>';
 
-		print '<br><center>';
+		print '<br><div class="center">';
 		print '<input type="hidden" name="action" value="create">';
 		print '<input type="submit" class="button" value="'.$langs->trans("CreateDraftIntervention").'">';
-		print '</center>';
+		print '</div>';
 
 		print '</form>';
 	}
diff --git a/htdocs/fourn/commande/card.php b/htdocs/fourn/commande/card.php
index 0273dea94b9c2e7ba7a0b3ce3096a3e725c9189f..f1e5449cca71dfc04a7ab444a9cf6e82cd2e7c13 100644
--- a/htdocs/fourn/commande/card.php
+++ b/htdocs/fourn/commande/card.php
@@ -136,9 +136,10 @@ else if ($action == 'setmode' && $user->rights->fournisseur->commande->creer)
 }
 
 // bank account
-else if ($action == 'setbankaccount' && $user->rights->fournisseur->commande->creer) {
+else if ($action == 'setbankaccount' && $user->rights->fournisseur->commande->creer) 
+{
      $result=$object->setBankAccount(GETPOST('fk_account', 'int'));
-    }
+}
 
 // date de livraison
 if ($action == 'setdate_livraison' && $user->rights->fournisseur->commande->creer)
@@ -1268,10 +1269,14 @@ if ($action=="create")
 	print '</td></tr>';
 
     // Bank Account
-    print '<tr><td>' . $langs->trans('BankAccount') . '</td><td colspan="2">';
-    $form->select_comptes($fk_account, 'fk_account', 0, '', 1);
-    print '</td></tr>';
-
+    if (! empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER) && ! empty($conf->banque->enabled))
+    {
+    	$langs->load("bank");
+	    print '<tr><td>' . $langs->trans('BankAccount') . '</td><td colspan="2">';
+	    $form->select_comptes($fk_account, 'fk_account', 0, '', 1);
+	    print '</td></tr>';
+    }
+    
 	print '<tr><td>'.$langs->trans('NotePublic').'</td>';
 	print '<td>';
 	$doleditor = new DolEditor('note_public', GETPOST('note_public'), '', 80, 'dolibarr_notes', 'In', 0, false, true, ROWS_3, 70);
@@ -1302,7 +1307,7 @@ if ($action=="create")
 	// Bouton "Create Draft"
     print "</table>\n";
 
-	print '<br><center><input type="submit" class="button" name="bouton" value="'.$langs->trans('CreateDraft').'"></center>';
+	print '<br><div class="center"><input type="submit" class="button" name="bouton" value="'.$langs->trans('CreateDraft').'"></div>';
 
 	print "</form>\n";
 }
@@ -1539,22 +1544,25 @@ elseif (! empty($object->id))
 	print '</td></tr>';
 
     // Bank Account
-    print '<tr><td class="nowrap">';
-    print '<table width="100%" class="nobordernopadding"><tr><td class="nowrap">';
-    print $langs->trans('BankAccount');
-    print '<td>';
-    if ($action != 'editbankaccount' && $user->rights->fournisseur->commande->creer)
-        print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=editbankaccount&amp;id='.$object->id.'">'.img_edit($langs->trans('SetBankAccount'),1).'</a></td>';
-    print '</tr></table>';
-    print '</td><td colspan="3">';
-    if ($action == 'editbankaccount') {
-        $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'fk_account', 1);
-    } else {
-        $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'none');
-    }
-    print '</td>';
-    print '</tr>';
-
+	if (! empty($conf->global->BANK_ASK_PAYMENT_BANK_DURING_SUPPLIER_ORDER) && ! empty($conf->banque->enabled))
+	{
+	    print '<tr><td class="nowrap">';
+	    print '<table width="100%" class="nobordernopadding"><tr><td class="nowrap">';
+	    print $langs->trans('BankAccount');
+	    print '<td>';
+	    if ($action != 'editbankaccount' && $user->rights->fournisseur->commande->creer)
+	        print '<td align="right"><a href="'.$_SERVER["PHP_SELF"].'?action=editbankaccount&amp;id='.$object->id.'">'.img_edit($langs->trans('SetBankAccount'),1).'</a></td>';
+	    print '</tr></table>';
+	    print '</td><td colspan="3">';
+	    if ($action == 'editbankaccount') {
+	        $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'fk_account', 1);
+	    } else {
+	        $form->formSelectAccount($_SERVER['PHP_SELF'].'?id='.$object->id, $object->fk_account, 'none');
+	    }
+	    print '</td>';
+	    print '</tr>';
+	}
+	
 	// Delivery date planed
 	print '<tr><td>';
 	print '<table class="nobordernopadding" width="100%"><tr><td>';
diff --git a/htdocs/fourn/commande/dispatch.php b/htdocs/fourn/commande/dispatch.php
index bea467340e65747a047a65056ddbec9dc70a9a0d..11158b21f60f233c88e2c2537d49b3bd1fa24489 100644
--- a/htdocs/fourn/commande/dispatch.php
+++ b/htdocs/fourn/commande/dispatch.php
@@ -405,9 +405,9 @@ if ($id > 0 || ! empty($ref))
 				// print ' / '.$commande->ref_supplier;	// Not yet available
 				print '" class="flat"><br><br>';
 
-				print '<center><input type="submit" class="button" value="'.$langs->trans("DispatchVerb").'"';
+				print '<div class="center"><input type="submit" class="button" value="'.$langs->trans("DispatchVerb").'"';
 				if (count($listwarehouses) <= 0) print ' disabled="disabled"';
-				print '></center>';
+				print '></div>';
 			}
 			if (! $nbproduct && $nbfreeproduct)
 			{
diff --git a/htdocs/fourn/commande/list.php b/htdocs/fourn/commande/list.php
index 6affbae304569a93b22d42010263953724231204..4f0974abd10e50b61f77956a7c16f444a7ce3bb0 100644
--- a/htdocs/fourn/commande/list.php
+++ b/htdocs/fourn/commande/list.php
@@ -123,7 +123,7 @@ if ($search_user)
 }
 if ($search_ttc)
 {
-	$sql .= " AND total_ttc = ".price2num($search_ttc);
+	$sql .= " AND total_ttc = '".$db->escape(price2num($search_ttc))."'";
 }
 if ($sall)
 {
diff --git a/htdocs/fourn/commande/orderstoinvoice.php b/htdocs/fourn/commande/orderstoinvoice.php
index 6c5ce8aa11c19b5ba11bdf2eb1b463a37e311cf5..b0825a8cc45f47377a1485844e59cbd9b60632bb 100644
--- a/htdocs/fourn/commande/orderstoinvoice.php
+++ b/htdocs/fourn/commande/orderstoinvoice.php
@@ -389,7 +389,7 @@ if ($action == 'create' && empty($mesgs)) {
 	}
 	
 	// Button "Create Draft"
-	print '<br><center><input type="submit" class="button" name="bouton" value="' . $langs->trans('CreateDraft') . '" /></center>';
+	print '<br><div class="center"><input type="submit" class="button" name="bouton" value="' . $langs->trans('CreateDraft') . '" /></div>';
 	print "</form>\n";
 	
 	print '</td></tr>';
@@ -558,7 +558,7 @@ if (($action != 'create' && $action != 'add') || ! empty($mesgs)) {
 			print '<td align="right" class="nowrap">' . $generic_commande->LibStatut($objp->fk_statut, 5) . '</td>';
 			
 			// Checkbox
-			print '<td align="center">';
+			print '<td class="center">';
 			print '<input class="flat checkformerge" type="checkbox" name="orders_to_invoice[]" value="' . $objp->rowid . '">';
 			print '</td>';
 			
@@ -573,14 +573,15 @@ if (($action != 'create' && $action != 'add') || ! empty($mesgs)) {
 		/*
 		 * Boutons actions
 		*/
-		print '<center>';
-		print '<div align="right">';
+		print '<div class="center">';
+		print '<div class="right">';
 		print '<input type="hidden" name="socid" value="' . $socid . '">';
 		print '<input type="hidden" name="action" value="create">';
 		print '<input type="hidden" name="origin" value="commande"><br>';
 		// print '<a class="butAction" href="index.php">'.$langs->trans("GoBack").'</a>';
 		print '<input type="submit" class="butAction" value="' . $langs->trans("GenerateBill") . '">';
 		print '</div>';
+		print '</div>';
 		print '</form>';
 		$db->free($resql);
 	} else {
diff --git a/htdocs/fourn/facture/card.php b/htdocs/fourn/facture/card.php
index 38a0f79a6ea3588973d01e9527c4f29a1be10f23..248fa0af59afe0b9ba67670533464c5cd87877fc 100644
--- a/htdocs/fourn/facture/card.php
+++ b/htdocs/fourn/facture/card.php
@@ -1503,7 +1503,7 @@ if ($action == 'create')
     // Bouton "Create Draft"
     print "</table>\n";
 
-    print '<br><center><input type="submit" class="button" name="bouton" value="'.$langs->trans('CreateDraft').'"></center>';
+    print '<br><div class="center"><input type="submit" class="button" name="bouton" value="'.$langs->trans('CreateDraft').'"></div>';
 
     print "</form>\n";
 
@@ -2368,7 +2368,7 @@ else
                 			$i ++;
                 		}
                 		print '</table>';
-                		print '<br><center><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"> &nbsp; <input type="submit" class="button" name="cancel" value="' . $langs->trans('Cancel') . '"></center>';
+                		print '<br><div class="center"><input type="submit" class="button" value="' . $langs->trans('ToLink') . '"> &nbsp; <input type="submit" class="button" name="cancel" value="' . $langs->trans('Cancel') . '"></div>';
                 		print '</form>';
                 		$db->free($resqlorderlist);
                 	} else {
diff --git a/htdocs/fourn/facture/paiement.php b/htdocs/fourn/facture/paiement.php
index 65428cd138ee7df98f6701cb1db49680f87c6284..afd914546a66400ec4b2f45b6da9face7d1b1e59 100644
--- a/htdocs/fourn/facture/paiement.php
+++ b/htdocs/fourn/facture/paiement.php
@@ -417,8 +417,8 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
 	        // Bouton Enregistrer
 	        if ($action != 'add_paiement')
 	        {
-				print '<center><br><input type="checkbox" checked="checked" name="closepaidinvoices"> '.$langs->trans("ClosePaidInvoicesAutomatically");
-				print '<br><input type="submit" class="button" value="'.$langs->trans('Save').'"></center>';
+				print '<<br><div class="center"><input type="checkbox" checked="checked" name="closepaidinvoices"> '.$langs->trans("ClosePaidInvoicesAutomatically");
+				print '<br><input type="submit" class="button" value="'.$langs->trans('Save').'"></div>';
 	        }
 
             // Form to confirm payment
diff --git a/htdocs/fourn/paiement/card.php b/htdocs/fourn/paiement/card.php
index 824919400a21f513b2a0db426d37801c36a82908..179e810d182145440193076d174be3ab959c3681 100644
--- a/htdocs/fourn/paiement/card.php
+++ b/htdocs/fourn/paiement/card.php
@@ -107,7 +107,7 @@ if ($action == 'setnum_paiement' && ! empty($_POST['num_paiement']))
     $res = $object->update_num($_POST['num_paiement']);
 	if ($res === 0)
 	{
-		$setEventMessage($langs->trans('PaymentNumberUpdateSucceeded'));
+		setEventMessage($langs->trans('PaymentNumberUpdateSucceeded'));
 	}
 	else
 	{
diff --git a/htdocs/ftp/admin/ftpclient.php b/htdocs/ftp/admin/ftpclient.php
index 1b252c480af25ad7c977ac371a98649f561a9ac4..91d6aef388b6e4014445403d0cf163b08ecf9924 100644
--- a/htdocs/ftp/admin/ftpclient.php
+++ b/htdocs/ftp/admin/ftpclient.php
@@ -198,7 +198,8 @@ else
 	
 	print '</table>';
 	
-	?><br><center><input type="submit" class="button" value="<?php echo $langs->trans("Add") ?>"></center>
+	?>
+	<br><div class="center"><input type="submit" class="button" value="<?php echo $langs->trans("Add") ?>"></div>
 	<input type="hidden" name="action" value="add">
 	<input type="hidden" name="numero_entry" value="<?php echo ($lastftpentry+1) ?>">
 	<?php
diff --git a/htdocs/holiday/card.php b/htdocs/holiday/card.php
index bbffe26cf9ccf34367f01b9eefc7310c45f0509c..4e405cf920aeb4442c4e2e0539138be917330230 100644
--- a/htdocs/holiday/card.php
+++ b/htdocs/holiday/card.php
@@ -822,11 +822,11 @@ if (empty($id) || $action == 'add' || $action == 'request' || $action == 'create
         print '</div>';
         print '</from>'."\n";
 
-        print '<center>';
+        print '<div class="center">';
         print '<input type="submit" value="'.$langs->trans("SendRequestCP").'" name="bouton" class="button">';
         print '&nbsp; &nbsp; ';
         print '<input type="button" value="'.$langs->trans("Cancel").'" class="button" onclick="history.go(-1)">';
-        print '</center>';
+        print '</div>';
     }
 
 }
diff --git a/htdocs/holiday/define_holiday.php b/htdocs/holiday/define_holiday.php
index 217cb16bad15f4d93cd41efd9beec69a4e52cda4..fa3f745de81f744bcc5750381847273597936a73 100644
--- a/htdocs/holiday/define_holiday.php
+++ b/htdocs/holiday/define_holiday.php
@@ -144,17 +144,14 @@ if($cp_events == 1)
 	print '</form><br>';
 }
 
-dol_fiche_head();
-
 print '<form method="POST" action="'.$_SERVER["PHP_SELF"].'">'."\n";
 print '<input type="hidden" name="action" value="update" />';
 print '<table class="noborder" width="100%;">';
 print "<tr class=\"liste_titre\">";
-print '<td width="5%">'.$langs->trans('ID').'</td>';
-print '<td width="50%">'.$langs->trans('Employee').'</td>';
+print '<td width="55%">'.$langs->trans('Employee').'</td>';
 print '<td width="20%" style="text-align:center">'.$langs->trans('Available').'</td>';
 print '<td width="20%" style="text-align:center">'.$langs->trans('Note').'</td>';
-print '<td style="text-align:center">'.$langs->trans('UpdateButtonCP').'</td>';
+print '<td></td>';
 print '</tr>';
 
 foreach($listUsers as $users)
@@ -163,7 +160,6 @@ foreach($listUsers as $users)
     $var=!$var;
 
     print '<tr '.$bc[$var].' style="height: 20px;">';
-    print '<td>'.$users['rowid'].'</td>';
     print '<td>';
     $userstatic->id=$users['rowid'];
     $userstatic->lastname=$users['name'];
@@ -183,9 +179,6 @@ foreach($listUsers as $users)
 print '</table>';
 print '</form>';
 
-dol_fiche_end();
-
-
 llxFooter();
 
 $db->close();
diff --git a/htdocs/imports/import.php b/htdocs/imports/import.php
index 125b8dc02852a435d75b6d5554baec75c183e70e..9314059fb03a149d80ccb63a93fedcf5c894dcda 100644
--- a/htdocs/imports/import.php
+++ b/htdocs/imports/import.php
@@ -1278,7 +1278,7 @@ if ($step == 5 && $datatoimport)
         print '<br>';
 
         // Actions
-        print '<center>';
+        print '<div class="center">';
         if ($user->rights->import->run)
         {
             print '<a class="butAction" href="'.DOL_URL_ROOT.'/imports/import.php?leftmenu=import&step=5&action=launchsimu'.$param.'">'.$langs->trans("RunSimulateImportFile").'</a>';
@@ -1287,7 +1287,7 @@ if ($step == 5 && $datatoimport)
         {
             print '<a class="butActionRefused" href="#" title="'.dol_escape_htmltag($langs->transnoentitiesnoconv("NotEnoughPermissions")).'">'.$langs->trans("RunSimulateImportFile").'</a>';
         }
-        print '</center>';
+        print '</div>';
     }
     else
     {
@@ -1401,15 +1401,15 @@ if ($step == 5 && $datatoimport)
         // Show import id
         $importid=dol_print_date(dol_now(),'%Y%m%d%H%M%S');
 
-        print '<center>';
+        print '<div class="center">';
         print $langs->trans("NowClickToRunTheImport",$langs->transnoentitiesnoconv("RunImportFile")).'<br>';
         print $langs->trans("DataLoadedWithId",$importid).'<br>';
-        print '</center>';
+        print '</div>';
 
         print '<br>';
 
         // Actions
-        print '<center>';
+        print '<div class="center">';
         if ($user->rights->import->run)
         {
             if (empty($nboferrors))
@@ -1429,7 +1429,7 @@ if ($step == 5 && $datatoimport)
 
             print '<a class="butActionRefused" href="#" title="'.dol_escape_htmltag($langs->transnoentitiesnoconv("NotEnoughPermissions")).'">'.$langs->trans("RunImportFile").'</a>';
         }
-        print '</center>';
+        print '</div>';
     }
 }
 
@@ -1664,12 +1664,12 @@ if ($step == 6 && $datatoimport)
 
 
 	// Show result
-	print '<center>';
 	print '<br>';
+	print '<div class="center">';
 	print $langs->trans("NbOfLinesImported",$nbok).'</b><br><br>';
 	print $langs->trans("FileWasImported",$importid).'<br>';
 	print $langs->trans("YouCanUseImportIdToFindRecord",$importid).'<br>';
-	print '</center>';
+	print '</div>';
 }
 
 
diff --git a/htdocs/imports/index.php b/htdocs/imports/index.php
index 2ccb92e197057c554d06a23f8c2d5364c8a49012..ada73d97559807735e5282a47922d7464b112712 100644
--- a/htdocs/imports/index.php
+++ b/htdocs/imports/index.php
@@ -85,7 +85,7 @@ else
 print '</table>';
 print '<br>';
 
-print '<center>';
+print '<div class="center">';
 if (count($import->array_import_code))
 {
 	//if ($user->rights->import->run)
@@ -97,7 +97,7 @@ if (count($import->array_import_code))
 	//	print '<a class="butActionRefused" href="#" title="'.dol_escape_htmltag($langs->trans("NotEnoughPermissions")).'">'.$langs->trans("NewImport").'</a>';
 	//}
 }
-print '</center>';
+print '</div>';
 print '<br>';
 
 
diff --git a/htdocs/install/check.php b/htdocs/install/check.php
index d815d67dd592ec2c6ce7c34fe61ce8fd866c0afd..dc4bcd0e55731c965316347da0243c6c571105e2 100644
--- a/htdocs/install/check.php
+++ b/htdocs/install/check.php
@@ -349,7 +349,7 @@ else
 		{
             $choice .= '<br>';
 			//print $langs->trans("InstallChoiceRecommanded",DOL_VERSION,$conf->global->MAIN_VERSION_LAST_UPGRADE);
-			$choice .= '<center><div class="ok">'.$langs->trans("InstallChoiceSuggested").'</div></center>';
+			$choice .= '<div class="center"><div class="ok">'.$langs->trans("InstallChoiceSuggested").'</div></div>';
 			// <img src="../theme/eldy/img/tick.png" alt="Ok"> ';
 			$foundrecommandedchoice=1;	// To show only once
 		}
@@ -449,12 +449,12 @@ else
             {
                 $choice .= '<br>';
                 //print $langs->trans("InstallChoiceRecommanded",DOL_VERSION,$conf->global->MAIN_VERSION_LAST_UPGRADE);
-                $choice .= '<center><div class="ok">'.$langs->trans("InstallChoiceSuggested").'</div>';
+                $choice .= '<div class="center"><div class="ok">'.$langs->trans("InstallChoiceSuggested").'</div>';
                 if ($count < count($migarray))	// There is other choices after
                 {
                     print $langs->trans("MigrateIsDoneStepByStep",DOL_VERSION);
                 }
-                $choice .= '</center>';
+                $choice .= '</div>';
             }
 
             $choice .= '</td>';
diff --git a/htdocs/install/etape5.php b/htdocs/install/etape5.php
index 4238884a6f524aca79b486dc6ffc2cbf42370390..ba51b41aa3404f855ae82cdd193e21b3db881cff 100644
--- a/htdocs/install/etape5.php
+++ b/htdocs/install/etape5.php
@@ -341,9 +341,9 @@ if ($action == "set")
 
         print $langs->trans("YouNeedToPersonalizeSetup")."<br><br>";
 
-        print '<center><a href="../admin/index.php?mainmenu=home&leftmenu=setup'.(isset($_POST["login"])?'&username='.urlencode($_POST["login"]):'').'">';
+        print '<div class="center"><a href="../admin/index.php?mainmenu=home&leftmenu=setup'.(isset($_POST["login"])?'&username='.urlencode($_POST["login"]):'').'">';
         print $langs->trans("GoToSetupArea");
-        print '</a></center>';
+        print '</a></div>';
     }
     else
     {
@@ -353,9 +353,9 @@ if ($action == "set")
         print $langs->trans("MigrationNotFinished").'<br>';
         print "<br>";
 
-        print '<center><a href="'.$dolibarr_main_url_root .'/install/index.php">';
+        print '<div class="center"><a href="'.$dolibarr_main_url_root .'/install/index.php">';
         print $langs->trans("GoToUpgradePage");
-        print '</a></center>';
+        print '</a></div>';
     }
 }
 // If upgrade
@@ -389,9 +389,9 @@ elseif (empty($action) || preg_match('/upgrade/i',$action))
 
         print "<br>";
 
-        print '<center><a href="../index.php?mainmenu=home'.(isset($_POST["login"])?'&username='.urlencode($_POST["login"]):'').'">';
+        print '<div class="center"><a href="../index.php?mainmenu=home'.(isset($_POST["login"])?'&username='.urlencode($_POST["login"]):'').'">';
         print $langs->trans("GoToDolibarr");
-        print '</a></center>';
+        print '</a></div>';
     }
     else
     {
@@ -401,9 +401,9 @@ elseif (empty($action) || preg_match('/upgrade/i',$action))
 
         print "<br>";
 
-        print '<center><a href="../install/index.php">';
+        print '<div class="center"><a href="../install/index.php">';
         print $langs->trans("GoToUpgradePage");
-        print '</a></center>';
+        print '</a></div>';
     }
 }
 else
diff --git a/htdocs/install/index.php b/htdocs/install/index.php
index fb346ea003363e3812d7f543ab038f219e36a0fc..4508a266b087c38c7cfca16330b078e1e230415a 100644
--- a/htdocs/install/index.php
+++ b/htdocs/install/index.php
@@ -49,7 +49,7 @@ pHeader("", "check");   // Etape suivante = check
 
 
 // Ask installation language
-print '<br><br><center>';
+print '<br><br><div class="center">';
 print '<table>';
 
 print '<tr>';
@@ -58,7 +58,7 @@ print $formadmin->select_language('auto','selectlang',1,0,0,1);
 print '</td>';
 print '</tr>';
 
-print '</table></center>';
+print '</table></div>';
 
 print '<br><br>'.$langs->trans("SomeTranslationAreUncomplete");
 
diff --git a/htdocs/install/repair.php b/htdocs/install/repair.php
index 48f4b5a6aa65d2346eff0808e83215c90a02c0a0..a8bbfdd09af4ebbe3de06ee86c1abe28f1333967 100644
--- a/htdocs/install/repair.php
+++ b/htdocs/install/repair.php
@@ -510,9 +510,9 @@ if (empty($actiondone))
 }
 
 
-print '<center><a href="../index.php?mainmenu=home'.(isset($_POST["login"])?'&username='.urlencode($_POST["login"]):'').'">';
+print '<div class="center"><a href="../index.php?mainmenu=home'.(isset($_POST["login"])?'&username='.urlencode($_POST["login"]):'').'">';
 print $langs->trans("GoToDolibarr");
-print '</a></center>';
+print '</a></div>';
 
 pFooter(1,$setuplang);
 
diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang
index e69168dbc21a198b9423312a8483163b5a6546eb..a524ff8a5fe196410fe512eb224031dd4304ec02 100644
--- a/htdocs/langs/en_US/admin.lang
+++ b/htdocs/langs/en_US/admin.lang
@@ -1139,6 +1139,7 @@ AddDeliveryAddressAbility=Add delivery date ability
 UseOptionLineIfNoQuantity=A line of product/service with a zero amount is considered as an option
 FreeLegalTextOnProposal=Free text on commercial proposals
 WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty)
+BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal
 ##### Orders #####
 OrdersSetup=Order management setup
 OrdersNumberingModules=Orders numbering models
diff --git a/htdocs/langs/en_US/holiday.lang b/htdocs/langs/en_US/holiday.lang
index 698d34eb539493458fc8e10cc2e213d6984be5bd..f5b87fefb0878c40cc75768a1d1c4bcf4cb80c72 100644
--- a/htdocs/langs/en_US/holiday.lang
+++ b/htdocs/langs/en_US/holiday.lang
@@ -48,7 +48,6 @@ ConfirmDeleteCP=Confirm the deletion of this leave request?
 ErrorCantDeleteCP=Error you don't have the right to delete this leave request.
 CantCreateCP=You don't have the right to make leave requests.
 InvalidValidatorCP=You must choose an approbator to your leave request.
-UpdateButtonCP=Update
 CantUpdate=You cannot update this leave request.
 NoDateDebut=You must select a start date.
 NoDateFin=You must select an end date.
diff --git a/htdocs/main.inc.php b/htdocs/main.inc.php
index c8553f29291d6348a133801492a08e1ab47aad88..d248a8c19fff288379a74b28a91be9c4cf25636b 100644
--- a/htdocs/main.inc.php
+++ b/htdocs/main.inc.php
@@ -1629,9 +1629,12 @@ function left_menu($menu_array_before, $helppagename='', $moresearchform='', $me
 	        print "<!-- End Bookmarks -->\n";
 	    }
 
-		//Dolibarr version
-	    $doliurl='http://www.dolibarr.org';
+        print "\n";
+        print "<!-- Begin Help Block-->\n";
+        print '<div id="blockvmenuhelp" class="blockvmenuhelp">'."\n";
 
+        //Dolibarr version
+        $doliurl='http://www.dolibarr.org';
 		//local communities
 		if (preg_match('/fr/i',$langs->defaultlang)) $doliurl='http://www.dolibarr.fr';
 		if (preg_match('/es/i',$langs->defaultlang)) $doliurl='http://www.dolibarr.es';
@@ -1650,11 +1653,11 @@ function left_menu($menu_array_before, $helppagename='', $moresearchform='', $me
 	    	else $appli.=" ".DOL_VERSION;
 	    }
 	    else $appli.=" ".DOL_VERSION;
-	    print '<div id="blockvmenuhelp" class="blockvmenuhelp">';
+	    print '<div id="blockvmenuhelpapp" class="blockvmenuhelp">';
 	    if ($doliurl) print '<a class="help" target="_blank" href="'.$doliurl.'">';
 	    print $appli;
 	    if ($doliurl) print '</a>';
-	    print '</div>';
+	    print '</div>'."\n";
 
 	    // Link to Dolibarr wiki pages
 	    if ($helppagename && empty($conf->global->MAIN_HELP_DISABLELINK))
@@ -1674,7 +1677,7 @@ function left_menu($menu_array_before, $helppagename='', $moresearchform='', $me
 	        // Link to help pages
 	        if ($helpbaseurl && $helppage)
 	        {
-	            print '<div id="blockvmenuhelp" class="blockvmenuhelp">';
+	            print '<div id="blockvmenuhelpwiki" class="blockvmenuhelp">';
 	            print '<a class="help" target="_blank" title="'.$langs->trans($mode == 'wiki' ? 'GoToWikiHelpPage': 'GoToHelpPage');
 	            if ($mode == 'wiki') print ' - '.$langs->trans("PageWiki").' &quot;'.dol_escape_htmltag(strtr($helppage,'_',' ')).'&quot;';
 	            print '" href="';
@@ -1685,7 +1688,7 @@ function left_menu($menu_array_before, $helppagename='', $moresearchform='', $me
 	            print $langs->trans($mode == 'wiki' ? 'OnlineHelp': 'Help');
 	            //if ($mode == 'wiki') print ' ('.dol_trunc(strtr($helppage,'_',' '),8).')';
 	            print '</a>';
-	            print '</div>';
+	            print '</div>'."\n";
 	        }
 	    }
 
@@ -1702,14 +1705,16 @@ function left_menu($menu_array_before, $helppagename='', $moresearchform='', $me
 	        $bugbaseurl.=urlencode($langs->trans("Server").": ".$_SERVER["SERVER_SOFTWARE"]."\n");
 	        $bugbaseurl.=urlencode($langs->trans("PHP").": ".version_php()."\n");
 	        $bugbaseurl.=urlencode($langs->trans("Url").": ".$_SERVER["REQUEST_URI"]."\n");
-	        print '<div id="blockvmenubugtracker" class="blockvmenuhelp"><a class="help" target="_blank" href="'.$bugbaseurl.'">'.$langs->trans("FindBug").'</a></div>';
+	        print '<div id="blockvmenuhelpbugreport" class="blockvmenuhelp"><a class="help" target="_blank" href="'.$bugbaseurl.'">'.$langs->trans("FindBug").'</a></div>';
 	    }
-	    print "\n";
 
-	    print "</div>\n";
-	    print "<!-- End left menu -->\n";
+        print "</div>\n";
+        print "<!-- End Help Block-->\n";
+        print "\n";
 
-	    print "\n";
+        print "</div>\n";
+        print "<!-- End left menu -->\n";
+        print "\n";
 
 	    // Execute hook printLeftBlock
 	    $parameters=array();
@@ -1810,13 +1815,13 @@ function printSearchForm($urlaction,$urlobject,$title,$htmlmodesearch,$htmlinput
 
     $ret='';
     $ret.='<form action="'.$urlaction.'" method="post">';
-	$ret.='<label for="'.$htmlinputname.'">';
 	$ret.='<div class="menu_titre menu_titre_search">';
+	$ret.='<label for="'.$htmlinputname.'">';
 	$ret.='<a class="vsmenu" href="'.$urlobject.'">';
 	$ret.=$title;
 	$ret.='</a>';
-	$ret.='</div>';
 	$ret.='</label>';
+	$ret.='</div>';
     $ret.='<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
     $ret.='<input type="hidden" name="mode" value="search">';
     $ret.='<input type="hidden" name="mode_search" value="'.$htmlmodesearch.'">';
diff --git a/htdocs/opensurvey/card.php b/htdocs/opensurvey/card.php
index 884d5124126af7842e9cb68635203c3d72fcba2b..a4cbc99e7062a8da38de554e5b689e4d661ac5b9 100644
--- a/htdocs/opensurvey/card.php
+++ b/htdocs/opensurvey/card.php
@@ -313,7 +313,7 @@ print $urllink;
 
 print '</table>';
 
-if ($action == 'edit') print '<center><br><input type="submit" class="button" name="save" value="'.dol_escape_htmltag($langs->trans("Save")).'"></center>';
+if ($action == 'edit') print '<br><div class="center"><input type="submit" class="button" name="save" value="'.dol_escape_htmltag($langs->trans("Save")).'"></div>';
 
 print '</form>'."\n";
 
diff --git a/htdocs/opensurvey/wizard/choix_date.php b/htdocs/opensurvey/wizard/choix_date.php
index e835c274e7d29e0581772a2c60b7fb0f51d89988..0d52b360ddbec3caab36157c43128dd1b78c4abc 100644
--- a/htdocs/opensurvey/wizard/choix_date.php
+++ b/htdocs/opensurvey/wizard/choix_date.php
@@ -338,7 +338,7 @@ print $langs->trans("OpenSurveyStep2")."\n";
 print '</div>'."\n";
 
 //debut du tableau qui affiche le calendrier
-print '<center><div class="corps">'."\n";
+print '<div class="center"><div class="corps">'."\n";
 print '<table align=center>'."\n";
 print '<tr><td><input type="image" name="anneeavant" value="<<" src="../img/rewind.png"></td><td><input type="image" name="moisavant" value="<" src="../img/previous.png"></td>';
 print '<td width="150px" align="center"> '.$motmois.' '.$_SESSION["annee"].'<br>';
@@ -490,9 +490,9 @@ for ($i = 0; $i < $nbrejourmois + $premierjourmois; $i++) {
 //fin du tableau
 print '</tr>'."\n";
 print '</table>'."\n";
-print '</div></center>'."\n";
+print '</div></div>'."\n";
 
-print '<div class="bodydate"><center>'."\n";
+print '<div class="bodydate"><div class="center">'."\n";
 
 // affichage de tous les jours choisis
 if (issetAndNoEmpty('totalchoixjour', $_SESSION) || $erreur)
@@ -507,7 +507,7 @@ if (issetAndNoEmpty('totalchoixjour', $_SESSION) || $erreur)
 
 	for ($i = 0; $i < $_SESSION["nbrecaseshoraires"]; $i++) {
 		$j = $i+1;
-		print '<td classe="somme">'. $langs->trans("Time") .' '.$j.'</center></td>'."\n";
+		print '<td classe="somme"><div class="center">'. $langs->trans("Time") .' '.$j.'</div></td>'."\n";
 	}
 
 	if ($_SESSION["nbrecaseshoraires"] < 10) {
@@ -555,7 +555,7 @@ print '<a name=bas></a>'."\n";
 print '</form>'."\n";
 //bandeau de pied
 print '<br><br><br><br>'."\n";
-print '</center></div>'."\n";
+print '</div></div>'."\n";
 
 llxFooter();
 
diff --git a/htdocs/opensurvey/wizard/index.php b/htdocs/opensurvey/wizard/index.php
index db2948a1cd37b383c0577399aadf5d53e136c24d..3c10c256742e620227f0c1ad633c6b5bedd916c7 100644
--- a/htdocs/opensurvey/wizard/index.php
+++ b/htdocs/opensurvey/wizard/index.php
@@ -43,15 +43,15 @@ llxHeader('', $langs->trans("OpenSurvey"), '', "", 0, 0, $arrayofjs, $arrayofcss
 
 print_fiche_titre($langs->trans("CreatePoll"));
 
-print '<center>
-<form name="formulaire" action="create_survey.php" method="POST">';
-print '<p>'.$langs->trans("OrganizeYourMeetingEasily").'</p>
-<div class="corps">
-<br>
-<div class="index_date"><div><img class="opacity" src="../img/date.png" onclick="document.formulaire.date.click()"></div><button id="date" name="choix_sondage" value="date" type="submit" class="button orange bigrounded"><img src="../img/calendar-32.png" alt="'.dol_escape_htmltag($langs->trans("CreateSurveyDate")).'"><strong>&nbsp;'.dol_escape_htmltag($langs->trans("CreateSurveyDate")).'</strong></button></div>
-<div class="index_sondage"><div><img class="opacity" src="../img/sondage2.png" onclick="document.formulaire.autre.click()"></div><button id="autre" name="choix_sondage" value="autre" type="submit" class="button blue bigrounded"><img src="../img/chart-32.png" alt="'.dol_escape_htmltag($langs->trans("CreateSurveyStandard")).'"><strong>&nbsp;'.dol_escape_htmltag($langs->trans("CreateSurveyStandard")).'</strong></button></div><div style="clear:both;"></div>
-</div>
-</form></center>';
+print '<form name="formulaire" action="create_survey.php" method="POST">';
+print '<div class="center">';
+print '<p>'.$langs->trans("OrganizeYourMeetingEasily").'</p>';
+print '<div class="corps">';
+print '<br>';
+print '<div class="index_date"><div><img class="opacity" src="../img/date.png" onclick="document.formulaire.date.click()"></div><button id="date" name="choix_sondage" value="date" type="submit" class="button orange bigrounded"><img src="../img/calendar-32.png" alt="'.dol_escape_htmltag($langs->trans("CreateSurveyDate")).'"><strong>&nbsp;'.dol_escape_htmltag($langs->trans("CreateSurveyDate")).'</strong></button></div>';
+print '<div class="index_sondage"><div><img class="opacity" src="../img/sondage2.png" onclick="document.formulaire.autre.click()"></div><button id="autre" name="choix_sondage" value="autre" type="submit" class="button blue bigrounded"><img src="../img/chart-32.png" alt="'.dol_escape_htmltag($langs->trans("CreateSurveyStandard")).'"><strong>&nbsp;'.dol_escape_htmltag($langs->trans("CreateSurveyStandard")).'</strong></button></div><div style="clear:both;"></div>';
+print '</div>';
+print '</div></form>';
 
 llxFooter();
 
diff --git a/htdocs/paybox/admin/paybox.php b/htdocs/paybox/admin/paybox.php
index 30e02591190214c7b6fd73be5449275cc5515b1d..19ce68c750cafa55cd90f576449f0a54a6fc7905 100644
--- a/htdocs/paybox/admin/paybox.php
+++ b/htdocs/paybox/admin/paybox.php
@@ -195,7 +195,7 @@ print '<input size="32" type="email" name="PAYBOX_PAYONLINE_SENDEMAIL" value="'.
 print ' &nbsp; '.$langs->trans("Example").': myemail@myserver.com';
 print '</td></tr>';
 
-print '</table><br><center><input type="submit" class="button" value="'.$langs->trans("Modify").'"></center></form>';
+print '</table><br><div class="center"><input type="submit" class="button" value="'.$langs->trans("Modify").'"></div></form>';
 
 print '<br><br>';
 
diff --git a/htdocs/paybox/lib/paybox.lib.php b/htdocs/paybox/lib/paybox.lib.php
index 78c500c75513a761c88ca5939b2be1ed8a52fc2a..a55687db823758ae023f6fb47572e1d832345055 100644
--- a/htdocs/paybox/lib/paybox.lib.php
+++ b/htdocs/paybox/lib/paybox.lib.php
@@ -131,7 +131,7 @@ function print_paybox_redirect($PRICE,$CURRENCY,$EMAIL,$urlok,$urlko,$TAG)
     $IBS_MODE=1;            	// Mode formulaire
     $IBS_PORTEUR=$EMAIL;
 	$IBS_RETOUR="montant:M;ref:R;auto:A;trans:T";   // Format des parametres du get de validation en reponse (url a definir sous paybox)
-    //$IBS_TXT="<center><b>".$langsiso->trans("YouWillBeRedirectedOnPayBox")."</b><br><i>".$langsiso->trans("PleaseBePatient")."...</i><br></center>";
+    //$IBS_TXT="<div class="center"><b>".$langsiso->trans("YouWillBeRedirectedOnPayBox")."</b><br><i>".$langsiso->trans("PleaseBePatient")."...</i><br></div>";
     $IBS_TXT=' ';	// Use a space
     $IBS_BOUTPI=$langs->trans("Wait");
     //$IBS_BOUTPI='';
@@ -280,10 +280,10 @@ function html_print_paybox_footer($fromcompany,$langs)
 	}
 
 	print '<br><br><hr>'."\n";
-	print '<center><font style="font-size: 10px;">'."\n";
+	print '<div class="center"><font style="font-size: 10px;">'."\n";
 	print $fromcompany->name.'<br>';
 	print $line1.'<br>';
 	print $line2;
-	print '</font></center>'."\n";
+	print '</font></div>'."\n";
 }
 
diff --git a/htdocs/paypal/admin/paypal.php b/htdocs/paypal/admin/paypal.php
index 69b0664eb9d99b58cf58553480e00113da3d0492..7385342c90586dd6d8684a18f6329167673d18ee 100644
--- a/htdocs/paypal/admin/paypal.php
+++ b/htdocs/paypal/admin/paypal.php
@@ -232,7 +232,7 @@ print '</td></tr>';
 
 print '</table>';
 
-print '<br><center><input type="submit" class="button" value="'.$langs->trans("Modify").'"></center>';
+print '<br><div class="center"><input type="submit" class="button" value="'.$langs->trans("Modify").'"></div>';
 
 print '</form>';
 
diff --git a/htdocs/paypal/lib/paypal.lib.php b/htdocs/paypal/lib/paypal.lib.php
index b40b0f9fd4cfeb4492aea46ef799d555a971175d..2e8ab4bf0b87ef53b8ca6116199215ed4b924739 100644
--- a/htdocs/paypal/lib/paypal.lib.php
+++ b/htdocs/paypal/lib/paypal.lib.php
@@ -153,11 +153,11 @@ function html_print_paypal_footer($fromcompany,$langs)
 	}
 
 	print '<br><br><hr>'."\n";
-	print '<center><font style="font-size: 10px;">'."\n";
+	print '<div class="center"><font style="font-size: 10px;">'."\n";
 	print $fromcompany->name.'<br>';
 	print $line1.'<br>';
 	print $line2;
-	print '</font></center>'."\n";
+	print '</font></div>'."\n";
 }
 
 /**
diff --git a/htdocs/product/card.php b/htdocs/product/card.php
index 92d588d19fe70895ef4560f757be60a135e56b48..4b3c0a4cd48e1ec67fde86ae8f520aad8b87c933 100644
--- a/htdocs/product/card.php
+++ b/htdocs/product/card.php
@@ -1053,7 +1053,7 @@ else
             print '<br>';
         //}
 
-        print '<center><input type="submit" class="button" value="'.$langs->trans("Create").'"></center>';
+        print '<div class="center"><input type="submit" class="button" value="'.$langs->trans("Create").'"></div>';
 
         print '</form>';
     }
@@ -1289,8 +1289,11 @@ else
                 print '<br>';
             //}
 
-            print '<center><input type="submit" class="button" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; ';
-            print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+            print '<div class="center">';
+			print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+			print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+            print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+			print '</div>';
 
             print '</form>';
         }
@@ -1419,7 +1422,7 @@ else
 
             // Status (to sell)
             print '<tr><td>'.$langs->trans("Status").' ('.$langs->trans("Sell").')</td><td colspan="2">';
-            if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer) {
+            if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer && ! empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) {
                 print ajax_object_onoff($object, 'status', 'tosell', 'ProductStatusOnSell', 'ProductStatusNotOnSell');
             } else {
                 print $object->getLibStatut(2,0);
@@ -1428,7 +1431,7 @@ else
 
             // Status (to buy)
             print '<tr><td>'.$langs->trans("Status").' ('.$langs->trans("Buy").')</td><td colspan="2">';
-            if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer) {
+            if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer && ! empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) {
                 print ajax_object_onoff($object, 'status_buy', 'tobuy', 'ProductStatusOnBuy', 'ProductStatusNotOnBuy');
             } else {
                 print $object->getLibStatut(2,1);
@@ -1438,7 +1441,7 @@ else
             // Batch number management (to batch)
             if ($conf->productbatch->enabled) {
                 print '<tr><td>'.$langs->trans("Status").' ('.$langs->trans("Lot").')</td><td colspan="2">';
-                if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer) {
+                if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer && ! empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) {
                     print ajax_object_onoff($object, 'status_batch', 'tobatch', 'ProductStatusOnBatch', 'ProductStatusNotOnBatch');
                 } else {
                     print $object->getLibStatut(2,2);
diff --git a/htdocs/product/composition/card.php b/htdocs/product/composition/card.php
index ec616b2f22297b15d64edc6d21eb55e93b90340c..ca139a879655d3a2125e3883659653372f390e7c 100644
--- a/htdocs/product/composition/card.php
+++ b/htdocs/product/composition/card.php
@@ -537,9 +537,11 @@ if ($id > 0 || ! empty($ref))
 
 			if($num > 0)
 			{
-				print '<br><center><input type="submit" class="button" value="'.$langs->trans("Add").'/'.$langs->trans("Update").'">';
-				print ' &nbsp; &nbsp; <input type="submit" class="button" value="'.$langs->trans("Cancel").'">';
-				print '</center>';
+				print '<br><div class="center">';
+				print '<input type="submit" class="button" value="'.$langs->trans("Add").'/'.$langs->trans("Update").'">';
+				print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+				print '<input type="submit" class="button" value="'.$langs->trans("Cancel").'">';
+				print '</div>';
 			}
 
 			print '</form>';
diff --git a/htdocs/product/fournisseurs.php b/htdocs/product/fournisseurs.php
index 9832e57eb6d06e287471cb8013223dfc5e219913..220b6ad758e41a8235213959d3837e90cb9917f4 100644
--- a/htdocs/product/fournisseurs.php
+++ b/htdocs/product/fournisseurs.php
@@ -400,9 +400,11 @@ if ($id || $ref)
 
 				print '</table>';
 
-				print '<br><center><input class="button" type="submit" value="'.$langs->trans("Save").'">';
-				print '&nbsp; &nbsp;';
-				print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+				print '<br><div class="center">';
+				print '<input class="button" type="submit" value="'.$langs->trans("Save").'">';
+				print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+				print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'">';
+				print '</div>';
 
 				print '</form>';
 			}
diff --git a/htdocs/product/list.php b/htdocs/product/list.php
index 907181634ee623303be09ef61e73e8c9e4e554f9..a5cc97defa72352bacbf8d3dcce62927e845dfd3 100644
--- a/htdocs/product/list.php
+++ b/htdocs/product/list.php
@@ -511,7 +511,7 @@ else
                 $product_static->status     = $objp->tosell;
                 // Status (to sell)
                 print '<td align="center" nowrap="nowrap">';
-                if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer) {
+                if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer && ! empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) {
                     print ajax_object_onoff($product_static, 'status', 'tosell', 'ProductStatusOnSell', 'ProductStatusNotOnSell');
                 } else {
                     print $product_static->LibStatut($objp->tosell,5,0);
@@ -520,7 +520,7 @@ else
 
                 // Status (to buy)
                 print '<td align="center" nowrap="nowrap">';
-                if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer) {
+                if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer && ! empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) {
                     print ajax_object_onoff($product_static, 'status_buy', 'tobuy', 'ProductStatusOnBuy', 'ProductStatusNotOnBuy');
                 } else {
                     print $product_static->LibStatut($objp->tobuy,5,1);
diff --git a/htdocs/product/price.php b/htdocs/product/price.php
index 3ff496356a8db6f760381df8578a070a196dc678..bfd0b91fc5f9a9336302f731900ac944f2395742 100644
--- a/htdocs/product/price.php
+++ b/htdocs/product/price.php
@@ -669,8 +669,11 @@ if ($action == 'edit_price' && ($user->rights->produit->creer || $user->rights->
 
 		print '</table>';
 
-		print '<center><br><input type="submit" class="button" value="' . $langs->trans("Save") . '">&nbsp;';
-		print '<input type="submit" class="button" name="cancel" value="' . $langs->trans("Cancel") . '"></center>';
+		print '<br><div class="center">';
+		print '<input type="submit" class="button" value="' . $langs->trans("Save") . '">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+		print '<input type="submit" class="button" name="cancel" value="' . $langs->trans("Cancel") . '">';
+		print '</div>';
 
 		print '<br></form>';
 	} else {
@@ -930,8 +933,11 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) {
 
 		print '</table>';
 
-		print '<center><br><input type="submit" class="button" value="' . $langs->trans("Save") . '">&nbsp;';
-		print '<input type="submit" class="button" name="cancel" value="' . $langs->trans("Cancel") . '"></center>';
+		print '<br><div class="center">';
+		print '<input type="submit" class="button" value="' . $langs->trans("Save") . '">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+		print '<input type="submit" class="button" name="cancel" value="' . $langs->trans("Cancel") . '">';
+		print '</div>';
 
 		print '<br></form>';
 	} elseif ($action == 'edit_customer_price') {
@@ -1012,8 +1018,11 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) {
 
 		print '</table>';
 
-		print '<center><br><input type="submit" class="button" value="' . $langs->trans("Save") . '">&nbsp;';
-		print '<input type="submit" class="button" name="cancel" value="' . $langs->trans("Cancel") . '"></center>';
+		print '<br><div class="center">';
+		print '<input type="submit" class="button" value="' . $langs->trans("Save") . '">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+		print '<input type="submit" class="button" name="cancel" value="' . $langs->trans("Cancel") . '">';
+		print '</div>';
 
 		print '<br></form>';
 	} elseif ($action == 'showlog_customer_price') {
diff --git a/htdocs/product/stock/card.php b/htdocs/product/stock/card.php
index 051a0575aaa1e88451b6dcee011581d7c3f4208b..74cb33e02e750a0d2d753cc62f14f58a45319051 100644
--- a/htdocs/product/stock/card.php
+++ b/htdocs/product/stock/card.php
@@ -206,7 +206,9 @@ if ($action == 'create')
 
 	print '</table>';
 
-	print '<center><br><input type="submit" class="button" value="'.$langs->trans("Create").'"></center>';
+	print '<br><div class="center">';
+	print '<input type="submit" class="button" value="'.$langs->trans("Create").'">';
+	print '</div>';
 
 	print '</form>';
 }
@@ -538,8 +540,11 @@ else
 
 			print '</table>';
 
-			print '<center><br><input type="submit" class="button" value="'.$langs->trans("Save").'">&nbsp;';
-			print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+			print '<br><div class="center">';
+			print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+			print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+			print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+			print '</div>';
 
 			print '</form>';
 
diff --git a/htdocs/product/stock/mouvement.php b/htdocs/product/stock/mouvement.php
index 83d856ed0cc9271d87a2a768753c96120949f953..1bac6b9fef56a45964ef98b0a7bb0cfe74632d7b 100644
--- a/htdocs/product/stock/mouvement.php
+++ b/htdocs/product/stock/mouvement.php
@@ -332,9 +332,13 @@ if ($resql)
 
         print '</table>';
 
-        print '<center><input type="submit" class="button" value="'.$langs->trans('Save').'">&nbsp;';
-        print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
-        print '</form>';
+        print '<div class="center">';
+		print '<input type="submit" class="button" value="'.$langs->trans('Save').'">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+        print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+		print '</div>';
+        
+		print '</form>';
     }
 
     /*
@@ -370,8 +374,11 @@ if ($resql)
 
         print '</table>';
 
-        print '<center><input type="submit" class="button" value="'.$langs->trans('Save').'">&nbsp;';
-        print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+        print '<div class="center">';
+		print '<input type="submit" class="button" value="'.$langs->trans('Save').'">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+        print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+		print '</div>';
 
         print '</form>';
     }
diff --git a/htdocs/product/stock/product.php b/htdocs/product/stock/product.php
index 96ecdb1d95df8ebdb5a76aa3d4d83ae314a5b33a..7ccc75bc3570a5ba0ab200ae73659c618327a85b 100644
--- a/htdocs/product/stock/product.php
+++ b/htdocs/product/stock/product.php
@@ -279,7 +279,7 @@ if ($id > 0 || $ref)
 
         // Status (to sell)
         print '<tr><td>'.$langs->trans("Status").' ('.$langs->trans("Sell").')</td><td>';
-        if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer) {
+        if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer && ! empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) {
             print ajax_object_onoff($product, 'status', 'tosell', 'ProductStatusOnSell', 'ProductStatusNotOnSell');
         } else {
             print $product->getLibStatut(2,0);
@@ -288,7 +288,7 @@ if ($id > 0 || $ref)
 
         // Status (to buy)
         print '<tr><td>'.$langs->trans("Status").' ('.$langs->trans("Buy").')</td><td colspan="2">';
-        if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer) {
+        if (! empty($conf->use_javascript_ajax) && $user->rights->produit->creer && ! empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) {
             print ajax_object_onoff($product, 'status_buy', 'tobuy', 'ProductStatusOnBuy', 'ProductStatusNotOnBuy');
         } else {
             print $product->getLibStatut(2,1);
@@ -340,7 +340,7 @@ if ($id > 0 || $ref)
         }
         print '</td>';
         print '</tr>';
-        
+
         print '<tr><td>';
         $text_stock_options = '';
         $text_stock_options.= (! empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT)?$langs->trans("DeStockOnShipment").'<br>':'');
@@ -483,8 +483,11 @@ if ($id > 0 || $ref)
 		}
 		print '</table>';
 
-		print '<center><input type="submit" class="button" value="'.$langs->trans('Save').'">&nbsp;';
-		print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+		print '<div class="center">';
+		print '<input type="submit" class="button" value="'.$langs->trans('Save').'">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+		print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+		print '</div>';
 		print '</form>';
 	}
 
@@ -519,8 +522,11 @@ if ($id > 0 || $ref)
 
 		print '</table>';
 
-		print '<center><input type="submit" class="button" value="'.dol_escape_htmltag($langs->trans('Save')).'">&nbsp;';
-		print '<input type="submit" class="button" name="cancel" value="'.dol_escape_htmltag($langs->trans("Cancel")).'"></center>';
+		print '<div class="center">';
+		print '<input type="submit" class="button" value="'.dol_escape_htmltag($langs->trans('Save')).'">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+		print '<input type="submit" class="button" name="cancel" value="'.dol_escape_htmltag($langs->trans("Cancel")).'">';
+		print '</div>';
 
 		print '</form>';
 	}
diff --git a/htdocs/product/traduction.php b/htdocs/product/traduction.php
index cd7e4cdcb3c3886b6333a564bf097f739f4b57cb..34b38fe8919ac9a93ebfee285c482dd838cec1a7 100644
--- a/htdocs/product/traduction.php
+++ b/htdocs/product/traduction.php
@@ -217,9 +217,11 @@ if ($action == 'edit')
 		}
 	}
 
-	print '<br><center>';
-	print '<input type="submit" class="button" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; ';
-	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+	print '<br><div class="center">';
+	print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
 	print '</form>';
 
@@ -300,9 +302,11 @@ if ($action == 'add' && ($user->rights->produit->creer || $user->rights->service
 	print '</tr>';
 	print '</table>';
 
-	print '<br><center>';
-	print '<input type="submit" class="button" value="'.$langs->trans("Save").'"> &nbsp; &nbsp; ';
-	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'"></center>';
+	print '<br><div class="center">';
+	print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
+	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+	print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
+	print '</div>';
 
 	print '</form>';
 
diff --git a/htdocs/projet/card.php b/htdocs/projet/card.php
index f60d56cb633501784859195ab5c15d5b8468893a..1f6f430fccb2d7d1ae8ca3b02e9635c2d10a00e5 100644
--- a/htdocs/projet/card.php
+++ b/htdocs/projet/card.php
@@ -434,9 +434,13 @@ if ($action == 'create' && $user->rights->projet->creer)
 
     // Customer
     print '<tr><td>'.$langs->trans("ThirdParty").'</td><td>';
-    $text=$form->select_company(GETPOST('socid','int'),'socid','',1,1);
-    $texthelp=$langs->trans("IfNeedToUseOhterObjectKeepEmpty");
-    print $form->textwithtooltip($text.' '.img_help(),$texthelp,1);
+   	$text=$form->select_company(GETPOST('socid','int'),'socid','',1,1);
+    if (empty($conf->global->PROJECT_CAN_ALWAYS_LINK_TO_ALL_SUPPLIERS) && empty($conf->dol_use_jmobile))
+    {
+    	$texthelp=$langs->trans("IfNeedToUseOhterObjectKeepEmpty");
+    	print $form->textwithtooltip($text.' '.img_help(),$texthelp,1);
+    }
+    else print $text;
     print '</td></tr>';
 
     // Public
@@ -471,14 +475,14 @@ if ($action == 'create' && $user->rights->projet->creer)
 
     print '</table>';
 
-    print '<br><center>';
+    print '<br><div class="center">';
     print '<input type="submit" class="button" value="'.$langs->trans("Create").'">';
     if (! empty($backtopage))
     {
         print ' &nbsp; &nbsp; ';
 	    print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
     }
-    print '</center>';
+    print '</div>';
 
     print '</form>';
 
diff --git a/htdocs/projet/list.php b/htdocs/projet/list.php
index b4260e8ea91a57c015edb19023fbb25daea6ab70..614f91468cc885fbbda332641d632b600e1fb3ff 100644
--- a/htdocs/projet/list.php
+++ b/htdocs/projet/list.php
@@ -63,6 +63,14 @@ $search_label=GETPOST("search_label");
 $search_societe=GETPOST("search_societe");
 $search_all=GETPOST("search_all");
 
+// Purge criteria
+if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both test are required to be compatible with all browsers
+{
+	$search_ref="";
+	$search_label="";
+	$search_societe="";
+	$search_all=0;
+}
 
 /*
  * View
@@ -147,8 +155,10 @@ if ($resql)
 	print '<input type="text" class="flat" name="search_societe" value="'.$search_societe.'">';
 	print '</td>';
 	print '<td class="liste_titre">&nbsp;</td>';
-	print '<td class="liste_titre" align="right"><input class="liste_titre" type="image" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'"></td>';
-	print "</tr>\n";
+	print '<td class="liste_titre nowrap" align="right">';
+    print '<input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
+    print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("RemoveFilter"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
+    print '</td>';
 
 	while ($i < $num)
 	{
diff --git a/htdocs/projet/tasks/index.php b/htdocs/projet/tasks/index.php
index cdf90a918a31cb3266fe18eef3a787ab6e29e235..4354fc23b2c24485abcb9c1bd3d55bfeabebaf96 100644
--- a/htdocs/projet/tasks/index.php
+++ b/htdocs/projet/tasks/index.php
@@ -51,7 +51,13 @@ $page = $page == -1 ? 0 : $page;
 
 $mine = $_REQUEST['mode']=='mine' ? 1 : 0;
 
-
+// Purge criteria
+if (GETPOST("button_removefilter_x") || GETPOST("button_removefilter")) // Both test are required to be compatible with all browsers
+{
+	$search_project="";
+	$search_status="";
+}
+if (empty($search_status)) $search_status=1;
 
 /*
  * View
@@ -122,9 +128,10 @@ print $form->selectarray('search_status', $listofstatus, $search_status);
 print '</td>';
 print '<td class="liste_titre" colspan="7">';
 print '&nbsp;';
+print '<td class="liste_titre nowrap" align="right">';
+print '<input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
+print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("RemoveFilter"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
 print '</td>';
-print '<td class="liste_titre" align="right"><input class="liste_titre" type="image" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'"></td>';
-print "</tr>\n";
 
 if (count($tasksarray) > (empty($conf->global->PROJECT_LIMIT_TASK_PROJECT_AREA)?1000:$conf->global->PROJECT_LIMIT_TASK_PROJECT_AREA))
 {
diff --git a/htdocs/projet/tasks/task.php b/htdocs/projet/tasks/task.php
index 73400bbcc6e807923591e25903569871ee9ce850..5d5c4f08e40e0f2d16b36f01f751092369199e1b 100644
--- a/htdocs/projet/tasks/task.php
+++ b/htdocs/projet/tasks/task.php
@@ -372,10 +372,11 @@ if ($id > 0 || ! empty($ref))
 
 			print '</table>';
 
-			print '<center><br>';
-			print '<input type="submit" class="button" name="update" value="'.$langs->trans("Modify").'"> &nbsp; ';
+			print '<br><div class="center">';
+			print '<input type="submit" class="button" name="update" value="'.$langs->trans("Modify").'">';
+			print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 			print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-			print '<center>';
+			print '</div>';
 
 			print '</form>';
 		}
diff --git a/htdocs/projet/tasks/time.php b/htdocs/projet/tasks/time.php
index 676b17a5951e4ffa69b0baaade6eb40bfcf0703e..6e7ab74b94165789edc3bdf60ef52b2858403243 100644
--- a/htdocs/projet/tasks/time.php
+++ b/htdocs/projet/tasks/time.php
@@ -296,22 +296,22 @@ if ($id > 0 || ! empty($ref))
 		print '<tr><td>'.$langs->trans("DateStart").'</td><td colspan="3">';
 		print dol_print_date($object->date_start,'dayhour');
 		print '</td></tr>';
-		
+
 		// Date end
 		print '<tr><td>'.$langs->trans("DateEnd").'</td><td colspan="3">';
 		print dol_print_date($object->date_end,'dayhour');
 		print '</td></tr>';
-		
+
 		// Planned workload
 		print '<tr><td>'.$langs->trans("PlannedWorkload").'</td><td colspan="3">';
 		print convertSecondToTime($object->planned_workload,'allhourmin');
 		print '</td></tr>';
-		
+
 		// Progress declared
 		print '<tr><td>'.$langs->trans("ProgressDeclared").'</td><td colspan="3">';
 		print $object->progress.' %';
 		print '</td></tr>';
-		
+
 		// Progress calculated
 		print '<tr><td>'.$langs->trans("ProgressCalculated").'</td><td colspan="3">';
 		if ($object->planned_workload)
@@ -322,7 +322,7 @@ if ($id > 0 || ! empty($ref))
 		}
 		else print '';
 		print '</td></tr>';
-		
+
 		// Project
 		if (empty($withproject))
 		{
@@ -400,11 +400,11 @@ if ($id > 0 || ! empty($ref))
 
 			// Contributor
 			print '<td class="nowrap">';
-			print img_object('','user');
+			print img_object('','user','class="hideonsmartphone"');
 			$contactsoftask=$object->getListContactId('internal');
 			if (count($contactsoftask)>0) {
 				$userid=$contactsoftask[0];
-				$form->select_users($userid,'userid',0,'',0,'',$contactsoftask);
+				print $form->select_dolusers($userid,'userid',0,'',0,'',$contactsoftask);
 			}else {
 				print img_error($langs->trans('FirstAddRessourceToAllocateTime')).$langs->trans('FirstAddRessourceToAllocateTime');
 			}
@@ -506,7 +506,7 @@ if ($id > 0 || ! empty($ref))
 					$contactsoftask[]=$task_time->fk_user;
 				}
 				if (count($contactsoftask)>0) {
-					$form->select_users($task_time->fk_user,'userid_line',0,'',0,'',$contactsoftask);
+					print $form->select_dolusers($task_time->fk_user,'userid_line',0,'',0,'',$contactsoftask);
 				}else {
 					print img_error($langs->trans('FirstAddRessourceToAllocateTime')).$langs->trans('FirstAddRessourceToAllocateTime');
 				}
diff --git a/htdocs/public/demo/index.php b/htdocs/public/demo/index.php
index 8ee00d83515aba0fca2f8e76606b5ca5300efaca..dba28538780d1ae54819fab6f255b153f0802c36 100644
--- a/htdocs/public/demo/index.php
+++ b/htdocs/public/demo/index.php
@@ -305,7 +305,7 @@ print "\n";
 print '<table style="font-size:14px;" class="centpercent" summary="Main table for Dolibarr demos">';
 
 print '<tr><td>';
-print '<center><img src="'.DOL_URL_ROOT.'/theme/dolibarr_logo.png" alt="Dolibarr logo"></center><br>';
+print '<div class="center"><img src="'.DOL_URL_ROOT.'/theme/dolibarr_logo.png" alt="Dolibarr logo"></div><br>';
 print '<br>';
 
 print $langs->trans("DemoDesc").'<br>';
diff --git a/htdocs/public/members/new.php b/htdocs/public/members/new.php
index c8628bd26a0e63205ecd08db7d630e64fcd8a2a3..bb218e4c0cfa3b8be67a6f722624d9221fe9c6a4 100644
--- a/htdocs/public/members/new.php
+++ b/htdocs/public/members/new.php
@@ -110,9 +110,9 @@ function llxHeaderVierge($title, $head="", $disablejs=0, $disablehead=0, $arrayo
     {
         $urllogo=DOL_URL_ROOT.'/theme/dolibarr_logo.png';
     }
-    print '<center>';
+    print '<div class="center">';
     print '<img alt="Logo" id="logosubscribe" title="" src="'.$urllogo.'" />';
-    print '</center><br>';
+    print '</div><br>';
 
     print '<div style="margin-left: 50px; margin-right: 50px;">';
 }
@@ -343,9 +343,9 @@ if ($action == 'added')
 
     // Si on a pas ete redirige
     print '<br>';
-    print '<center>';
+    print '<div class="center">';
     print $langs->trans("NewMemberbyWeb");
-    print '</center>';
+    print '</div>';
 
     llxFooterVierge();
     exit;
@@ -591,13 +591,13 @@ if (! empty($conf->global->MEMBER_NEWFORM_AMOUNT)
 print "</table>\n";
 
 // Save
-print '<br><center>';
+print '<br><div class="center">';
 print '<input type="submit" value="'.$langs->trans("Save").'" id="submitsave" class="button">';
 if (! empty($backtopage))
 {
     print ' &nbsp; &nbsp; <input type="submit" value="'.$langs->trans("Cancel").'" id="submitcancel" class="button">';
 }
-print '</center>';
+print '</div>';
 
 print "<br></div></form>\n";
 print '</div>';
diff --git a/htdocs/public/paybox/newpayment.php b/htdocs/public/paybox/newpayment.php
index 47a93e39c325ca043ab0dbd3138d4a3a959a470c..0213ee7f6fa2381f86d596e6528f5789bd9c8716 100644
--- a/htdocs/public/paybox/newpayment.php
+++ b/htdocs/public/paybox/newpayment.php
@@ -166,7 +166,7 @@ if (! empty($conf->global->$paramcreditor)) $creditor=$conf->global->$paramcredi
 else if (! empty($conf->global->PAYBOX_CREDITOR)) $creditor=$conf->global->PAYBOX_CREDITOR;
 
 print '<span id="dolpaymentspan"></span>'."\n";
-print '<center>';
+print '<div class="center">';
 print '<form id="dolpaymentform" name="paymentform" action="'.$_SERVER["PHP_SELF"].'" method="POST">';
 print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
 print '<input type="hidden" name="action" value="dopayment">';
@@ -778,7 +778,7 @@ print '</td></tr>'."\n";
 
 print '</table>'."\n";
 print '</form>'."\n";
-print '</center>'."\n";
+print '</div>'."\n";
 print '<br>';
 
 
diff --git a/htdocs/public/paypal/newpayment.php b/htdocs/public/paypal/newpayment.php
index afe685fb6ac19578279681fabc1eaf401da44f45..2cd56778f83533db2fc4dbbdd1257a9f78748ef9 100644
--- a/htdocs/public/paypal/newpayment.php
+++ b/htdocs/public/paypal/newpayment.php
@@ -268,7 +268,7 @@ if (! empty($conf->global->$paramcreditor)) $creditor=$conf->global->$paramcredi
 else if (! empty($conf->global->PAYPAL_CREDITOR)) $creditor=$conf->global->PAYPAL_CREDITOR;
 
 print '<span id="dolpaymentspan"></span>'."\n";
-print '<center>'."\n";
+print '<div class="center">'."\n";
 print '<form id="dolpaymentform" name="paymentform" action="'.$_SERVER["PHP_SELF"].'" method="POST">'."\n";
 print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">'."\n";
 print '<input type="hidden" name="action" value="dopayment">'."\n";
@@ -959,7 +959,7 @@ print '</td></tr>'."\n";
 
 print '</table>'."\n";
 print '</form>'."\n";
-print '</center>'."\n";
+print '</div>'."\n";
 print '<br>';
 
 
diff --git a/htdocs/resource/add.php b/htdocs/resource/add.php
index fde152b6185c2c07ee3afe8fbe451581c5a52c04..679644ac9e02c3cf99a85dc1611f02ebe82a68bb 100644
--- a/htdocs/resource/add.php
+++ b/htdocs/resource/add.php
@@ -32,7 +32,7 @@ if (! $res) die("Include of main fails");
 require_once 'class/resource.class.php';
 require_once 'class/html.formresource.class.php';
 
-// Load traductions files requiredby by page
+// Load traductions files required by page
 $langs->load("resource");
 $langs->load("companies");
 $langs->load("other");
@@ -41,6 +41,7 @@ $langs->load("resource@resource");
 // Get parameters
 $id			= GETPOST('id','int');
 $action		= GETPOST('action','alpha');
+$cancel		= GETPOST('cancel','alpha');
 if (empty($sortorder)) $sortorder="DESC";
 if (empty($sortfield)) $sortfield="t.rowid";
 if (empty($arch)) $arch = 0;
@@ -65,57 +66,64 @@ $object = new Resource($db);
 
 if ($action == 'confirm_add_resource')
 {
-	$error='';
-		
-	$ref=GETPOST('ref','alpha');
-	$description=GETPOST('description','alpha');
-	$fk_code_type_resource=GETPOST('fk_code_type_resource','alpha');
-		
-	if (empty($ref))
+	if (! $cancel)
 	{
-		$mesg=$langs->trans("ErrorFieldRequired",$langs->transnoentities("Ref"));
-		setEventMessage($mesg, 'errors');
-		$error++;
-	}
-		
-	if (! $error)
-	{
-		$object=new Resource($db);
-		$object->ref=$ref;
-		$object->description=$description;
-		$object->fk_code_type_resource=$fk_code_type_resource;
+		$error='';
+			
+		$ref=GETPOST('ref','alpha');
+		$description=GETPOST('description','alpha');
+		$fk_code_type_resource=GETPOST('fk_code_type_resource','alpha');
+			
+		if (empty($ref))
+		{
+			$mesg=$langs->trans("ErrorFieldRequired",$langs->transnoentities("Ref"));
+			setEventMessage($mesg, 'errors');
+			$error++;
+		}
 			
-		$result=$object->create($user);
-		if ($result > 0)
+		if (! $error)
 		{
-			// Creation OK
-			$db->commit();
-			setEventMessage($langs->trans('ResourceCreatedWithSuccess'));
-			Header("Location: card.php?id=" . $object->id);
-			return;
+			$object=new Resource($db);
+			$object->ref=$ref;
+			$object->description=$description;
+			$object->fk_code_type_resource=$fk_code_type_resource;
+				
+			$result=$object->create($user);
+			if ($result > 0)
+			{
+				// Creation OK
+				$db->commit();
+				setEventMessage($langs->trans('ResourceCreatedWithSuccess'));
+				Header("Location: card.php?id=" . $object->id);
+				return;
+			}
+			else
+			{
+				// Creation KO
+				setEventMessage($object->error, 'errors');
+				$action = '';
+			}
 		}
 		else
 		{
-			// Creation KO
-			setEventMessage($object->error, 'errors');
 			$action = '';
 		}
 	}
 	else
 	{
-		$action = '';
+		Header("Location: list.php");
 	}
 }
 
-/***************************************************
-* VIEW
-*
-****************************************************/
+/*
+ * View
+ *
+ */
 
 $form=new Form($db);
 $formresource = new FormResource($db);
 
-if ( !$action ) 
+if (! $action) 
 {
 	$pagetitle=$langs->trans('AddResource');
 	llxHeader('',$pagetitle,'');
@@ -161,8 +169,10 @@ if ( !$action )
 
 	print '</table>';
 
-	echo '<div style="text-align: center">',
-	'	<input type="submit"  class="button" name="" value="'.$langs->trans('Save').'" />',
+	echo '<br><div align="center">',
+	'<input type="submit" class="button" name="add" value="'.$langs->trans('Save').'" />',
+	'&nbsp;',
+	'<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'" />',
 	'</div>';
 
 	print '</form>';
diff --git a/htdocs/resource/card.php b/htdocs/resource/card.php
index b2ee3ae181477f2880a99db972bf6a77570d850f..33a27796aaf05a8dd8ac60db59f4b50cd34adab2 100644
--- a/htdocs/resource/card.php
+++ b/htdocs/resource/card.php
@@ -139,7 +139,7 @@ if ( $object->fetch($id) > 0 )
 
 		/*---------------------------------------
 		 * Edit object
-		*/
+		 */
 		print '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">';
 		print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
 		print '<input type="hidden" name="action" value="update">';
@@ -171,7 +171,7 @@ if ( $object->fetch($id) > 0 )
 	}
 	else
 	{
-	    // Confirmation suppression resource line
+	    // Confirm deleting resource line
 	    if ($action == 'delete')
 	    {
 	        print $form->formconfirm("card.php?&id=".$id,$langs->trans("DeleteResource"),$langs->trans("ConfirmDeleteResource"),"confirm_delete_resource",'','',1);
@@ -228,9 +228,9 @@ if ( $object->fetch($id) > 0 )
 				print '</div>';
 			}
 		}
-		if ($action != "delete" )
+		if ($action != "delete" && $action != "edit")
 		{
-		    // Edit resource
+		    // Delete resource
 		    if($user->rights->resource->delete)
 		    {
 		        print '<div class="inline-block divButAction">';
diff --git a/htdocs/resource/element_resource.php b/htdocs/resource/element_resource.php
index 02a24735454bc527b39d30d22d42ff182ccf591d..d50c9a4ec6f14be363a498ee2623ad197ec67ce3 100644
--- a/htdocs/resource/element_resource.php
+++ b/htdocs/resource/element_resource.php
@@ -1,6 +1,5 @@
 <?php
-/* Module to manage locations, buildings, floors and rooms into Dolibarr ERP/CRM
- * Copyright (C) 2013	Jean-François Ferry	<jfefe@aternatik.fr>
+/* Copyright (C) 2013	Jean-François Ferry	<jfefe@aternatik.fr>
  *
  * 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,7 +31,7 @@ require 'class/resource.class.php';
 require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
 
 // Load traductions files requiredby by page
-$langs->load("resource@resource");
+$langs->load("resource");
 $langs->load("other");
 
 // Get parameters
@@ -70,8 +69,9 @@ $resource_id 	= GETPOST('fk_resource','int');
 $resource_type	= GETPOST('resource_type','alpha');
 $busy 			= GETPOST('busy','int');
 $mandatory 		= GETPOST('mandatory','int');
+$cancel			= GETPOST('cancel','alpha');
 
-if($action == 'add_element_resource' && !GETPOST('cancel'))
+if($action == 'add_element_resource' && ! $cancel)
 {
 	$objstat = fetchObjectByElement($element_id,$element);
 	$res = $objstat->add_element_resource($resource_id,$resource_type,$busy,$mandatory);
@@ -251,9 +251,6 @@ else
 
 	foreach ($object->available_resources as $modresources => $resources)
 	{
-		$langs->load($resources);
-		//print '<h2>'.$modresources.'</h2>';
-
 		$resources=(array) $resources;	// To be sure $resources is an array
 		foreach($resources as $resource_obj)
 		{
@@ -301,7 +298,7 @@ else
 			{
 				print '<div class="tabsAction">';
 				print '<div class="inline-block divButAction">';
-				print '<a class="butAction" href="'.$_SERVER['PHP_SELF'].'?mode=add&resource_type='.$resource_obj.'&element='.$element.'&element_id='.$element_id.'">Add resource</a>';
+				print '<a class="butAction" href="'.$_SERVER['PHP_SELF'].'?mode=add&resource_type='.$resource_obj.'&element='.$element.'&element_id='.$element_id.'">'.$langs->trans('AddResource').'</a>';
 				print '</div>';
 				print '</div>';
 			}
diff --git a/htdocs/resource/list.php b/htdocs/resource/list.php
index 9a0fca19781928c59847008345108c8422cc6d66..ab70bc9a3385daf1b88368c9dc62c76fae4d28d1 100644
--- a/htdocs/resource/list.php
+++ b/htdocs/resource/list.php
@@ -1,6 +1,5 @@
 <?php
-/* Module to manage resources into Dolibarr ERP/CRM
- * Copyright (C) 2013-2014	Jean-François Ferry	<jfefe@aternatik.fr>
+/* Copyright (C) 2013-2014	Jean-François Ferry	<jfefe@aternatik.fr>
  *
  * 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
@@ -116,7 +115,7 @@ else
 	print_liste_field_titre($langs->trans('Id'),$_SERVER['PHP_SELF'],'t.rowid','',$param,'',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans('Ref'),$_SERVER['PHP_SELF'],'t.ref','',$param,'',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans('ResourceType'),$_SERVER['PHP_SELF'],'ty.code','',$param,'',$sortfield,$sortorder);
-	print_liste_field_titre($langs->trans('Edit'));
+	print_liste_field_titre($langs->trans('Action'),"","","","",'width="60" align="center"',"","");
 	print '</tr>';
 
 	foreach ($object->lines as $resource)
@@ -128,7 +127,7 @@ else
 			$style='style="background: orange;"';
 
 		print '<tr '.$bc[$var].' '.$style.'><td>';
-		print $resource->id;
+		print '<a href="./card.php?id='.$resource->id.'">'.$resource->id.'</a>';
 		print '</td>';
 
 		print '<td>';
@@ -139,9 +138,14 @@ else
 		print $resource->type_label;
 		print '</td>';
 
-		print '<td>';
-		print '<a href="card.php?id='.$resource->id.'">'.$langs->trans('View').'</a> ';
-		print '<a href="card.php?action=edit&id='.$resource->id.'">'.$langs->trans('Edit').'</a>';
+		print '<td align="center">';
+		print '<a href="./card.php?action=update&id='.$resource->id.'">';
+		print img_edit();
+		print '</a>';
+		print '&nbsp;';
+		print '<a href="./card.php?action=delete&id='.$resource->id.'">';
+		print img_delete();
+		print '</a>';
 		print '</td>';
 
 		print '</tr>';
diff --git a/htdocs/societe/checkvat/checkVatPopup.php b/htdocs/societe/checkvat/checkVatPopup.php
index 20c9068d4f64dce2f138a9f5011fff4aa12357d3..748ba690ea088a7e6d417e97496330bde8ca3769 100644
--- a/htdocs/societe/checkvat/checkVatPopup.php
+++ b/htdocs/societe/checkvat/checkVatPopup.php
@@ -158,7 +158,7 @@ else
 print '<br>';
 print $langs->trans("VATIntraManualCheck",$langs->trans("VATIntraCheckURL"),$langs->trans("VATIntraCheckURL")).'<br>';
 print '<br>';
-print '<center><input type="button" class="button" value="'.$langs->trans("CloseWindow").'" onclick="javascript: window.close()"></center>';
+print '<div class="center"><input type="button" class="button" value="'.$langs->trans("CloseWindow").'" onclick="javascript: window.close()"></div>';
 
 if ($messagetoshow)
 {
diff --git a/htdocs/societe/price.php b/htdocs/societe/price.php
index 7ab39a10ddc8cf9662cf41ce4dc41f1de625d1b6..0932144a86059f2c2c7aa3095be054b90fd57ba3 100644
--- a/htdocs/societe/price.php
+++ b/htdocs/societe/price.php
@@ -292,8 +292,11 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) {
 
 		print '</table>';
 
-		print '<center><br><input type="submit" class="button" value="' . $langs->trans("Save") . '">&nbsp;';
-		print '<input type="submit" class="button" name="cancel" value="' . $langs->trans("Cancel") . '"></center>';
+		print '<br><div align="center">';
+		print '<input type="submit" class="button" value="' . $langs->trans("Save") . '">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+		print '<input type="submit" class="button" name="cancel" value="' . $langs->trans("Cancel") . '">';
+		print '</div>';
 
 		print '<br></form>';
 	} elseif ($action == 'edit_customer_price') {
@@ -368,8 +371,11 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) {
 
 		print '</table>';
 
-		print '<center><br><input type="submit" class="button" value="' . $langs->trans("Save") . '">&nbsp;';
-		print '<input type="submit" class="button" name="cancel" value="' . $langs->trans("Cancel") . '"></center>';
+		print '<br><div class="center">';
+		print '<input type="submit" class="button" value="' . $langs->trans("Save") . '">';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+		print '<input type="submit" class="button" name="cancel" value="' . $langs->trans("Cancel") . '">';
+		print '</div>';
 
 		print '<br></form>';
 	} elseif ($action == 'showlog_customer_price') {
diff --git a/htdocs/societe/rib.php b/htdocs/societe/rib.php
index 01d82ac086750744edf89481e1aaaaad052cd7b1..68ade0431aa834757f7486c46ceb978391c759d3 100644
--- a/htdocs/societe/rib.php
+++ b/htdocs/societe/rib.php
@@ -497,9 +497,11 @@ if ($socid && $action == 'edit' && $user->rights->societe->creer)
 
     print '</table><br>';
 
-    print '<center><input class="button" value="'.$langs->trans("Modify").'" type="submit">';
-    print ' &nbsp; <input name="cancel" class="button" value="'.$langs->trans("Cancel").'" type="submit">';
-    print '</center>';
+    print '<div align="center">';
+	print '<input class="button" value="'.$langs->trans("Modify").'" type="submit">';
+    print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
+	print '<input class="button" name="cancel" value="'.$langs->trans("Cancel").'" type="submit">';
+    print '</div>';
 
     print '</form>';
 }
@@ -577,9 +579,11 @@ if ($socid && $action == 'create' && $user->rights->societe->creer)
 
     print '</table><br>';
 
-    print '<center><input class="button" value="'.$langs->trans("Add").'" type="submit">';
-    print ' &nbsp; <input name="cancel" class="button" value="'.$langs->trans("Cancel").'" type="submit">';
-    print '</center>';
+    print '<div align="center">';
+	print '<input class="button" value="'.$langs->trans("Add").'" type="submit">';
+    print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'; 
+	print '<input name="cancel" class="button" value="'.$langs->trans("Cancel").'" type="submit">';
+    print '</div>';
 
     print '</form>';
 }
diff --git a/htdocs/societe/soc.php b/htdocs/societe/soc.php
index 62869daf3661b2ea6b099d5e4a431954ceef562a..2eff193a5fd1496be4d9655bb5be1a6fe3a2efae 100644
--- a/htdocs/societe/soc.php
+++ b/htdocs/societe/soc.php
@@ -782,16 +782,18 @@ else
             print '<div class="hideonsmartphone float">';
             print $langs->trans("ThirdPartyType").': &nbsp; &nbsp; ';
             print '</div>';
-            print '<input type="radio" id="radiocompany" class="flat" name="private"  value="0"'.($private?'':' checked="checked"').'>';
 	        print '<label for="radiocompany">';
+            print '<input type="radio" id="radiocompany" class="flat" name="private"  value="0"'.($private?'':' checked="checked"').'>';
 	        print '&nbsp;';
             print $langs->trans("Company/Fundation");
 	        print '</label>';
             print ' &nbsp; &nbsp; ';
+	        print '<label for="radioprivate">';
             print '<input type="radio" id="radioprivate" class="flat" name="private" value="1"'.($private?' checked="checked"':'').'>';
 	        print '&nbsp;';
             print $langs->trans("Individual");
-            print ' ('.$langs->trans("ToCreateContactWithSameName").')';
+            print '<div class="hideonsmartphone">('.$langs->trans("ToCreateContactWithSameName").')</div>';
+            print '</label>';
             print '</div>';
             print "<br>\n";
         }
@@ -1095,9 +1097,9 @@ else
 
         print '</table>'."\n";
 
-        print '<br><center>';
+        print '<br><div align="center">';
         print '<input type="submit" class="button" value="'.$langs->trans('AddThirdParty').'">';
-        print '</center>'."\n";
+        print '</div>'."\n";
 
         print '</form>'."\n";
     }
@@ -1608,11 +1610,11 @@ else
             print '</table>';
             print '<br>';
 
-            print '<center>';
+            print '<div align="center">';
             print '<input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
-            print ' &nbsp; &nbsp; ';
+            print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
             print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-            print '</center>';
+            print '</div>';
 
             print '</form>';
 
@@ -1727,7 +1729,7 @@ else
         // Status
         print '<tr><td>'.$langs->trans("Status").'</td>';
         print '<td colspan="'.(2+(($showlogo || $showbarcode)?0:1)).'">';
-        if (! empty($conf->use_javascript_ajax) && $user->rights->societe->creer) {
+        if (! empty($conf->use_javascript_ajax) && $user->rights->societe->creer && ! empty($conf->global->MAIN_DIRECT_STATUS_UPDATE)) {
             print ajax_object_onoff($object, 'status', 'status', 'InActivity', 'ActivityCeased');
         } else {
             print $object->getLibStatut(2);
diff --git a/htdocs/user/agenda_extsites.php b/htdocs/user/agenda_extsites.php
index 1993f12bd5ccd0807356a21bb0402c1adfcd94be..2077c7e73e19ac639c59ce256d98b597dec9fe02 100644
--- a/htdocs/user/agenda_extsites.php
+++ b/htdocs/user/agenda_extsites.php
@@ -174,9 +174,9 @@ while ($i <= $MAXAGENDA)
 print '</table>';
 print '<br>';
 
-print '<center>';
+print '<div class="center">';
 print "<input type=\"submit\" id=\"save\" name=\"save\" class=\"button hideifnotset\" value=\"".$langs->trans("Save")."\">";
-print "</center>";
+print "</div>";
 
 print "</form>\n";
 
diff --git a/htdocs/user/card.php b/htdocs/user/card.php
index 429bcc9113027f14f790e5e73853978d9c955d09..fe86717a4c9581b58888d2933a915bcf6db29578 100644
--- a/htdocs/user/card.php
+++ b/htdocs/user/card.php
@@ -1009,7 +1009,7 @@ if (($action == 'create') || ($action == 'adduserldap'))
 
  	print "</table>\n";
 
-    print '<center><br><input class="button" value="'.$langs->trans("CreateUser").'" name="create" type="submit"></center>';
+    print '<br><div align="center"><input class="button" value="'.$langs->trans("CreateUser").'" name="create" type="submit"></div>';
 
     print "</form>";
 }
@@ -2126,11 +2126,11 @@ else
 
             print '</table>';
 
-            print '<br><center>';
+            print '<br><div align="center">';
             print '<input value="'.$langs->trans("Save").'" class="button" type="submit" name="save">';
-            print ' &nbsp; ';
+            print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
             print '<input value="'.$langs->trans("Cancel").'" class="button" type="submit" name="cancel">';
-            print '</center>';
+            print '</div>';
 
             print '</form>';
 
diff --git a/htdocs/user/clicktodial.php b/htdocs/user/clicktodial.php
index 3dc3c14cc12ab731e71a5282e2533edb9ec8e8f0..f72a8eb0f15f097657e83962f84c122282b0f642 100644
--- a/htdocs/user/clicktodial.php
+++ b/htdocs/user/clicktodial.php
@@ -155,10 +155,10 @@ if ($id > 0)
 
         print '</table>';
 
-        print '<br><center><input class="button" type="submit" value="'.$langs->trans("Save").'">';
-        print ' &nbsp; &nbsp; ';
+        print '<br><div align="center"><input class="button" type="submit" value="'.$langs->trans("Save").'">';
+        print '&nbsp;&nbsp;&nbsp;&nbsp&nbsp;';
         print '<input class="button" type="submit" name="cancel" value="'.$langs->trans("Cancel").'">';
-        print '</center>';
+        print '</div>';
 
         print '</form>';
     }
diff --git a/htdocs/user/document.php b/htdocs/user/document.php
index b18424625ced76908000ab5a4d7caaef592a4a1b..2659b9427c883b67044aaa035b1976a53dc10a47 100644
--- a/htdocs/user/document.php
+++ b/htdocs/user/document.php
@@ -88,10 +88,11 @@ if ($id > 0 || ! empty($ref))
 {
 	$result = $object->fetch($id, $ref);
 
-	$upload_dir = $conf->user->multidir_output[$object->entity] . "/" . $object->id ;
+	$entitytouseforuserdir = $object->entity;
+	if (empty($entitytouseforuserdir)) $entitytouseforuserdir=1;
+	$upload_dir = $conf->user->multidir_output[$entitytouseforuserdir] . "/" . $object->id ;
 }
 
-
 /*
  * Actions
  */
@@ -159,8 +160,8 @@ if ($object->id)
 
 	print '</div>';
 
-	$modulepart = 'societe';
-	$permission = $user->rights->societe->creer;
+	$modulepart = 'user';
+	$permission = $user->rights->user->user->creer;
 	$param = '&id=' . $object->id;
 	include_once DOL_DOCUMENT_ROOT . '/core/tpl/document_actions_post_headers.tpl.php';
 }
diff --git a/htdocs/user/group/card.php b/htdocs/user/group/card.php
index a1930f7c027eac8362a01d32892df51d03e1b3ea..5f79c939432f1464b8153527afb492dac84ae089 100644
--- a/htdocs/user/group/card.php
+++ b/htdocs/user/group/card.php
@@ -264,7 +264,7 @@ if ($action == 'create')
 
     print "</table>\n";
 
-    print '<center><br><input class="button" value="'.$langs->trans("CreateGroup").'" type="submit"></center>';
+    print '<br><div class="center"><input class="button" value="'.$langs->trans("CreateGroup").'" type="submit"></div>';
 
     print "</form>";
 }
@@ -536,7 +536,7 @@ else
 
             print "</table>\n";
 
-            print '<center><br><input class="button" value="'.$langs->trans("Save").'" type="submit"></center>';
+            print '<br><div class="center"><input class="button" value="'.$langs->trans("Save").'" type="submit"></div>';
 
             print '</form>';
 
diff --git a/htdocs/user/group/index.php b/htdocs/user/group/index.php
index 00af5b0e6d24744569aa7dd4eb9dda91e5c88d6a..1f06fa3a3c2401798c77e5efbcb14c439b38c266 100644
--- a/htdocs/user/group/index.php
+++ b/htdocs/user/group/index.php
@@ -91,7 +91,7 @@ if ($resql)
     {
     	print_liste_field_titre($langs->trans("Entity"),$_SERVER["PHP_SELF"],"g.entity",$param,"",'align="center"',$sortfield,$sortorder);
     }
-    print_liste_field_titre($langs->trans("NbOfUsers"),$_SERVER["PHP_SELF"],"g.nb",$param,"",'align="center"',$sortfield,$sortorder);
+    print_liste_field_titre($langs->trans("NbOfUsers"),$_SERVER["PHP_SELF"],"nb",$param,"",'align="center"',$sortfield,$sortorder);
     print_liste_field_titre($langs->trans("DateCreation"),$_SERVER["PHP_SELF"],"g.datec",$param,"",'align="right"',$sortfield,$sortorder);
     print "</tr>\n";
     $var=True;
diff --git a/htdocs/user/note.php b/htdocs/user/note.php
index 448dd76d147cc05201f7cc49087be8c693498427..2a992aa321280314f0d3727e0a19f55d380b50bc 100644
--- a/htdocs/user/note.php
+++ b/htdocs/user/note.php
@@ -133,11 +133,11 @@ if ($id)
 
 	if ($action == 'edit')
 	{
-		print '<center><br>';
+		print '<br><div class="center">';
 		print '<input type="submit" class="button" name="update" value="'.$langs->trans("Save").'">';
-		print '&nbsp; &nbsp;';
+		print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 		print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-		print '</center>';
+		print '</div>';
 	}
 
 	print "</form>\n";
diff --git a/htdocs/user/param_ihm.php b/htdocs/user/param_ihm.php
index 65e9e4ca7a61f76b44993dc30d9fded4fd61df2e..3bca4cbee47ac362c6eaf258b7c257e4f316ebd5 100644
--- a/htdocs/user/param_ihm.php
+++ b/htdocs/user/param_ihm.php
@@ -202,11 +202,11 @@ if ($action == 'edit')
     dol_fiche_end();
 
 
-    print '<center>';
+    print '<div class="center">';
     print '<input type="submit" class="button" name="save" value="'.$langs->trans("Save").'">';
-    print ' &nbsp; &nbsp; ';
+    print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
     print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
-    print '</center>';
+    print '</div>';
 
     print '</form>';
 
diff --git a/htdocs/webservices/admin/webservices.php b/htdocs/webservices/admin/webservices.php
index a12f638a17481c4bd9c8bda1fc6ce4dac376d56b..431150bd9e948e60fe094f3774a8c0f22647eb9a 100644
--- a/htdocs/webservices/admin/webservices.php
+++ b/htdocs/webservices/admin/webservices.php
@@ -90,9 +90,9 @@ print '</tr>';
 
 print '</table>';
 
-print '<br><center>';
+print '<br><div class="center">';
 print '<input type="submit" name="save" class="button" value="'.$langs->trans("Save").'">';
-print '</center>';
+print '</div>';
 
 print '</form>';
 
diff --git a/htdocs/webservices/server_order.php b/htdocs/webservices/server_order.php
index 9903c6b4ed928f61f6d6e78bd23975899ca7da39..2318780608cac2c019ad2c683d6c27ef4bccdb8d 100644
--- a/htdocs/webservices/server_order.php
+++ b/htdocs/webservices/server_order.php
@@ -29,6 +29,7 @@ set_include_path($_SERVER['DOCUMENT_ROOT'].'/htdocs');
 require_once '../master.inc.php';
 require_once NUSOAP_PATH.'/nusoap.php';        // Include SOAP
 require_once DOL_DOCUMENT_ROOT.'/core/lib/ws.lib.php';
+require_once DOL_DOCUMENT_ROOT.'/core/class/extrafields.class.php';
 
 require_once(DOL_DOCUMENT_ROOT."/commande/class/commande.class.php");
 
@@ -84,6 +85,52 @@ $server->wsdl->addComplexType(
 		)
 );
 
+$line_fields = array(
+	'id' => array('name'=>'id','type'=>'xsd:string'),
+	'type' => array('name'=>'type','type'=>'xsd:int'),
+	'fk_commande' => array('name'=>'fk_commande','type'=>'xsd:int'),
+	'fk_parent_line' => array('name'=>'fk_parent_line','type'=>'xsd:int'),
+	'desc' => array('name'=>'desc','type'=>'xsd:string'),
+	'qty' => array('name'=>'qty','type'=>'xsd:double'),
+	'price' => array('name'=>'price','type'=>'xsd:double'),
+	'unitprice' => array('name'=>'unitprice','type'=>'xsd:double'),
+	'vat_rate' => array('name'=>'vat_rate','type'=>'xsd:double'),
+
+	'remise' => array('name'=>'remise','type'=>'xsd:double'),
+	'remise_percent' => array('name'=>'remise_percent','type'=>'xsd:double'),
+
+	'total_net' => array('name'=>'total_net','type'=>'xsd:double'),
+	'total_vat' => array('name'=>'total_vat','type'=>'xsd:double'),
+	'total' => array('name'=>'total','type'=>'xsd:double'),
+
+	'date_start' => array('name'=>'date_start','type'=>'xsd:date'),
+	'date_end' => array('name'=>'date_end','type'=>'xsd:date'),
+
+	// From product
+	'product_id' => array('name'=>'product_id','type'=>'xsd:int'),
+	'product_ref' => array('name'=>'product_ref','type'=>'xsd:string'),
+	'product_label' => array('name'=>'product_label','type'=>'xsd:string'),
+	'product_desc' => array('name'=>'product_desc','type'=>'xsd:string')
+);
+
+
+//Retreive all extrafield for thirdsparty
+// fetch optionals attributes and labels
+$extrafields=new ExtraFields($db);
+$extralabels=$extrafields->fetch_name_optionals_label('commandedet',true);
+if (count($extrafields)>0) {
+	$extrafield_line_array = array();
+}
+foreach($extrafields->attribute_label as $key=>$label)
+{
+	//$value=$object->array_options["options_".$key];
+	$type =$extrafields->attribute_type[$key];
+	if ($type=='date' || $type=='datetime') {$type='xsd:dateTime';}
+	else {$type='xsd:string';}
+	$extrafield_line_array['options_'.$key]=array('name'=>'options_'.$key,'type'=>$type);
+}
+$line_fields=array_merge($line_fields,$extrafield_line_array);
+
 // Define other specific objects
 $server->wsdl->addComplexType(
 		'line',
@@ -91,33 +138,7 @@ $server->wsdl->addComplexType(
 		'struct',
 		'all',
 		'',
-		array(
-				'id' => array('name'=>'id','type'=>'xsd:string'),
-		        'type' => array('name'=>'type','type'=>'xsd:int'),
-				'fk_commande' => array('name'=>'fk_commande','type'=>'xsd:int'),
-				'fk_parent_line' => array('name'=>'fk_parent_line','type'=>'xsd:int'),
-				'desc' => array('name'=>'desc','type'=>'xsd:string'),
-				'qty' => array('name'=>'qty','type'=>'xsd:double'),
-				'price' => array('name'=>'price','type'=>'xsd:double'),
-				'unitprice' => array('name'=>'unitprice','type'=>'xsd:double'),
-				'vat_rate' => array('name'=>'vat_rate','type'=>'xsd:double'),
-
-				'remise' => array('name'=>'remise','type'=>'xsd:double'),
-				'remise_percent' => array('name'=>'remise_percent','type'=>'xsd:double'),
-
-				'total_net' => array('name'=>'total_net','type'=>'xsd:double'),
-				'total_vat' => array('name'=>'total_vat','type'=>'xsd:double'),
-				'total' => array('name'=>'total','type'=>'xsd:double'),
-
-				'date_start' => array('name'=>'date_start','type'=>'xsd:date'),
-				'date_end' => array('name'=>'date_end','type'=>'xsd:date'),
-
-				// From product
-		        'product_id' => array('name'=>'product_id','type'=>'xsd:int'),
-				'product_ref' => array('name'=>'product_ref','type'=>'xsd:string'),
-				'product_label' => array('name'=>'product_label','type'=>'xsd:string'),
-				'product_desc' => array('name'=>'product_desc','type'=>'xsd:string')
-		)
+		$line_fields
 );
 
 /*$server->wsdl->addComplexType(
@@ -151,53 +172,73 @@ $server->wsdl->addComplexType(
 		)
 );
 
+$order_fields = array(
+	'id' => array('name'=>'id','type'=>'xsd:string'),
+	'ref' => array('name'=>'ref','type'=>'xsd:string'),
+	'ref_client' => array('name'=>'ref_client','type'=>'xsd:string'),
+	'ref_ext' => array('name'=>'ref_ext','type'=>'xsd:string'),
+	'ref_int' => array('name'=>'ref_int','type'=>'xsd:string'),
+	'thirdparty_id' => array('name'=>'thirdparty_id','type'=>'xsd:int'),
+	'status' => array('name'=>'status','type'=>'xsd:int'),
+	'facturee' => array('name'=>'facturee','type'=>'xsd:string'),
+	'total_net' => array('name'=>'total_net','type'=>'xsd:double'),
+	'total_vat' => array('name'=>'total_vat','type'=>'xsd:double'),
+	'total_localtax1' => array('name'=>'total_localtax1','type'=>'xsd:double'),
+	'total_localtax2' => array('name'=>'total_localtax2','type'=>'xsd:double'),
+	'total' => array('name'=>'total','type'=>'xsd:double'),
+	'date' => array('name'=>'date','type'=>'xsd:date'),
+	'date_creation' => array('name'=>'date_creation','type'=>'xsd:dateTime'),
+	'date_validation' => array('name'=>'date_validation','type'=>'xsd:dateTime'),
+	'date_modification' => array('name'=>'date_modification','type'=>'xsd:dateTime'),
+	'remise' => array('name'=>'remise','type'=>'xsd:string'),
+	'remise_percent' => array('name'=>'remise_percent','type'=>'xsd:string'),
+	'remise_absolue' => array('name'=>'remise_absolue','type'=>'xsd:string'),
+	'source' => array('name'=>'source','type'=>'xsd:string'),
+	'note_private' => array('name'=>'note_private','type'=>'xsd:string'),
+	'note_public' => array('name'=>'note_public','type'=>'xsd:string'),
+	'project_id' => array('name'=>'project_id','type'=>'xsd:string'),
+
+	'mode_reglement_id' => array('name'=>'mode_reglement_id','type'=>'xsd:string'),
+	'mode_reglement_code' => array('name'=>'mode_reglement_code','type'=>'xsd:string'),
+	'mode_reglement' => array('name'=>'mode_reglement','type'=>'xsd:string'),
+	'cond_reglement_id' => array('name'=>'cond_reglement_id','type'=>'xsd:string'),
+	'cond_reglement_code' => array('name'=>'cond_reglement_code','type'=>'xsd:string'),
+	'cond_reglement' => array('name'=>'cond_reglement','type'=>'xsd:string'),
+	'cond_reglement_doc' => array('name'=>'cond_reglement_doc','type'=>'xsd:string'),
+
+	'date_livraison' => array('name'=>'date_livraison','type'=>'xsd:date'),
+	'fk_delivery_address' => array('name'=>'fk_delivery_address','type'=>'xsd:int'),
+	'demand_reason_id' => array('name'=>'demand_reason_id','type'=>'xsd:string'),
+
+	'lines' => array('name'=>'lines','type'=>'tns:LinesArray2')
+);
+
+//Retreive all extrafield for thirdsparty
+// fetch optionals attributes and labels
+$extrafields=new ExtraFields($db);
+$extralabels=$extrafields->fetch_name_optionals_label('commande',true);
+if (count($extrafields)>0) {
+	$extrafield_array = array();
+}
+foreach($extrafields->attribute_label as $key=>$label)
+{
+	//$value=$object->array_options["options_".$key];
+	$type =$extrafields->attribute_type[$key];
+	if ($type=='date' || $type=='datetime') {$type='xsd:dateTime';}
+	else {$type='xsd:string';}
+	$extrafield_array['options_'.$key]=array('name'=>'options_'.$key,'type'=>$type);
+}
+$order_fields=array_merge($order_fields,$extrafield_array);
+
 $server->wsdl->addComplexType(
 		'order',
 		'complexType',
 		'struct',
 		'all',
 		'',
-		array(
-				'id' => array('name'=>'id','type'=>'xsd:string'),
-				'ref' => array('name'=>'ref','type'=>'xsd:string'),
-				'ref_client' => array('name'=>'ref_client','type'=>'xsd:string'),
-				'ref_ext' => array('name'=>'ref_ext','type'=>'xsd:string'),
-				'ref_int' => array('name'=>'ref_int','type'=>'xsd:string'),
-				'thirdparty_id' => array('name'=>'thirdparty_id','type'=>'xsd:int'),
-				'status' => array('name'=>'status','type'=>'xsd:int'),
-				'facturee' => array('name'=>'facturee','type'=>'xsd:string'),
-				'total_net' => array('name'=>'total_net','type'=>'xsd:double'),
-				'total_vat' => array('name'=>'total_vat','type'=>'xsd:double'),
-				'total_localtax1' => array('name'=>'total_localtax1','type'=>'xsd:double'),
-				'total_localtax2' => array('name'=>'total_localtax2','type'=>'xsd:double'),
-				'total' => array('name'=>'total','type'=>'xsd:double'),
-				'date' => array('name'=>'date','type'=>'xsd:date'),
-		        'date_creation' => array('name'=>'date_creation','type'=>'xsd:dateTime'),
-		        'date_validation' => array('name'=>'date_validation','type'=>'xsd:dateTime'),
-	    	    'date_modification' => array('name'=>'date_modification','type'=>'xsd:dateTime'),
-				'remise' => array('name'=>'remise','type'=>'xsd:string'),
-				'remise_percent' => array('name'=>'remise_percent','type'=>'xsd:string'),
-				'remise_absolue' => array('name'=>'remise_absolue','type'=>'xsd:string'),
-				'source' => array('name'=>'source','type'=>'xsd:string'),
-				'note_private' => array('name'=>'note_private','type'=>'xsd:string'),
-				'note_public' => array('name'=>'note_public','type'=>'xsd:string'),
-				'project_id' => array('name'=>'project_id','type'=>'xsd:string'),
-
-				'mode_reglement_id' => array('name'=>'mode_reglement_id','type'=>'xsd:string'),
-				'mode_reglement_code' => array('name'=>'mode_reglement_code','type'=>'xsd:string'),
-				'mode_reglement' => array('name'=>'mode_reglement','type'=>'xsd:string'),
-				'cond_reglement_id' => array('name'=>'cond_reglement_id','type'=>'xsd:string'),
-				'cond_reglement_code' => array('name'=>'cond_reglement_code','type'=>'xsd:string'),
-				'cond_reglement' => array('name'=>'cond_reglement','type'=>'xsd:string'),
-				'cond_reglement_doc' => array('name'=>'cond_reglement_doc','type'=>'xsd:string'),
-
-				'date_livraison' => array('name'=>'date_livraison','type'=>'xsd:date'),
-				'fk_delivery_address' => array('name'=>'fk_delivery_address','type'=>'xsd:int'),
-				'demand_reason_id' => array('name'=>'demand_reason_id','type'=>'xsd:string'),
-
-				'lines' => array('name'=>'lines','type'=>'tns:LinesArray2')
-		)
+		$order_fields
 );
+
 /*
 $server->wsdl->addComplexType(
 		'OrdersArray',
@@ -643,6 +684,16 @@ function createOrder($authentication,$order)
 		$newobject->cond_reglement_id=$order['cond_reglement_id'];
 		$newobject->demand_reason_id=$order['demand_reason_id'];
 		$newobject->date_creation=$now;
+		
+		// Retrieve all extrafield for order
+		// fetch optionals attributes and labels
+		$extrafields=new ExtraFields($db);
+		$extralabels=$extrafields->fetch_name_optionals_label('commandet',true);
+		foreach($extrafields->attribute_label as $key=>$label)
+		{
+			$key='options_'.$key;
+			$newobject->array_options[$key]=$order[$key];
+		}
 
 		// Trick because nusoap does not store data with same structure if there is one or several lines
 		$arrayoflines=array();
@@ -666,6 +717,17 @@ function createOrder($authentication,$order)
 			$newline->total_ttc=$line['total'];
 			$newline->date_start=$line['date_start'];
 			$newline->date_end=$line['date_end'];
+			
+			// Retrieve all extrafield for lines
+			// fetch optionals attributes and labels
+			$extrafields=new ExtraFields($db);
+			$extralabels=$extrafields->fetch_name_optionals_label('commandedet',true);
+			foreach($extrafields->attribute_label as $key=>$label)
+			{
+				$key='options_'.$key;
+				$newline->array_options[$key]=$line[$key];
+			}
+			
 			$newobject->lines[]=$newline;
 		}
 
diff --git a/test/phpunit/FunctionsLibTest.php b/test/phpunit/FunctionsLibTest.php
index f26718f1dd951b30c0ab6b7cfd501b3272c223d3..af5f3393672cf42e1221f058776ccb2e752163fa 100755
--- a/test/phpunit/FunctionsLibTest.php
+++ b/test/phpunit/FunctionsLibTest.php
@@ -824,4 +824,32 @@ class FunctionsLibTest extends PHPUnit_Framework_TestCase
 		$this->assertEquals(dol_nl2br($string, 1, 1), "a<br />a");
 	}
 
+	/**
+	 * testDolPrice2Num
+	 *
+	 * @return boolean
+	 */
+	public function testDolPrice2Num()
+	{
+		$this->assertEquals(1000, price2num('1 000.0'));
+		$this->assertEquals(1000, price2num('1 000','MT'));
+		$this->assertEquals(1000, price2num('1 000','MU'));
+		
+		$this->assertEquals(1000.123456, price2num('1 000.123456'));
+
+		// Round down
+		$this->assertEquals(1000.12, price2num('1 000.123452','MT'));
+		$this->assertEquals(1000.12345, price2num('1 000.123452','MU'),"Test MU");
+
+		// Round up
+		$this->assertEquals(1000.13, price2num('1 000.125456','MT'));
+		$this->assertEquals(1000.12546, price2num('1 000.125456','MU'),"Test MU");
+
+		// Text can't be converted
+		$this->assertEquals('12.4$',price2num('12.4$'));
+		$this->assertEquals('12r.4$',price2num('12r.4$'));
+		
+		return true;		
+	}
+
 }