Pārlūkot izejas kodu

Fix css and look 5.0

Laurent Destailleur 8 gadi atpakaļ
vecāks
revīzija
65f7de8f64
70 mainītis faili ar 382 papildinājumiem un 305 dzēšanām
  1. 2 2
      dev/tools/test/testdiv.php
  2. 1 1
      htdocs/accountancy/admin/fiscalyear_card.php
  3. 1 1
      htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php
  4. 1 1
      htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php
  5. 1 1
      htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php
  6. 1 1
      htdocs/adherents/card.php
  7. 1 1
      htdocs/adherents/subscription.php
  8. 6 6
      htdocs/adherents/type.php
  9. 2 2
      htdocs/admin/company.php
  10. 2 2
      htdocs/admin/modules.php
  11. 2 2
      htdocs/admin/tools/dolibarr_export.php
  12. 2 2
      htdocs/admin/tools/dolibarr_import.php
  13. 2 2
      htdocs/admin/triggers.php
  14. 42 37
      htdocs/bookmarks/card.php
  15. 17 1
      htdocs/bookmarks/class/bookmark.class.php
  16. 1 1
      htdocs/categories/card.php
  17. 17 2
      htdocs/categories/class/categorie.class.php
  18. 22 19
      htdocs/categories/photos.php
  19. 72 46
      htdocs/categories/traduction.php
  20. 26 19
      htdocs/categories/viewcat.php
  21. 2 2
      htdocs/comm/address.php
  22. 1 1
      htdocs/comm/multiprix.php
  23. 1 1
      htdocs/comm/propal/card.php
  24. 1 1
      htdocs/commande/orderstoinvoice.php
  25. 3 3
      htdocs/compta/deplacement/card.php
  26. 1 1
      htdocs/compta/facture.php
  27. 1 1
      htdocs/compta/paiement.php
  28. 3 3
      htdocs/compta/paiement_charge.php
  29. 1 1
      htdocs/contact/canvas/default/tpl/contactcard_create.tpl.php
  30. 1 1
      htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php
  31. 1 1
      htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php
  32. 2 2
      htdocs/contrat/card.php
  33. 1 1
      htdocs/core/class/html.form.class.php
  34. 1 1
      htdocs/core/lib/admin.lib.php
  35. 1 1
      htdocs/core/lib/functions.lib.php
  36. 21 21
      htdocs/core/modules/dons/html_cerfafr.html
  37. 1 1
      htdocs/core/tpl/passwordforgotten.tpl.php
  38. 2 2
      htdocs/don/payment/payment.php
  39. 1 1
      htdocs/ecm/docdir.php
  40. 1 1
      htdocs/ecm/docfile.php
  41. 1 1
      htdocs/ecm/search.php
  42. 2 2
      htdocs/expensereport/card.php
  43. 2 2
      htdocs/expensereport/payment/payment.php
  44. 1 1
      htdocs/fourn/facture/paiement.php
  45. 10 10
      htdocs/install/fileconf.php
  46. 2 2
      htdocs/loan/card.php
  47. 3 3
      htdocs/loan/payment/payment.php
  48. 1 1
      htdocs/product/canvas/product/tpl/card_create.tpl.php
  49. 1 1
      htdocs/product/canvas/product/tpl/card_edit.tpl.php
  50. 2 2
      htdocs/product/canvas/product/tpl/card_view.tpl.php
  51. 1 1
      htdocs/product/canvas/service/tpl/card_create.tpl.php
  52. 1 1
      htdocs/product/canvas/service/tpl/card_edit.tpl.php
  53. 2 2
      htdocs/product/canvas/service/tpl/card_view.tpl.php
  54. 3 3
      htdocs/product/stock/fiche-valo.php
  55. 52 47
      htdocs/product/traduction.php
  56. 1 1
      htdocs/projet/card.php
  57. 1 1
      htdocs/projet/tasks.php
  58. 2 2
      htdocs/projet/tasks/task.php
  59. 2 2
      htdocs/public/members/new.php
  60. 1 1
      htdocs/public/members/public_card.php
  61. 1 1
      htdocs/societe/canvas/company/tpl/card_create.tpl.php
  62. 1 1
      htdocs/societe/canvas/company/tpl/card_edit.tpl.php
  63. 1 1
      htdocs/societe/canvas/company/tpl/card_view.tpl.php
  64. 1 1
      htdocs/societe/canvas/individual/tpl/card_create.tpl.php
  65. 1 1
      htdocs/societe/canvas/individual/tpl/card_edit.tpl.php
  66. 1 1
      htdocs/societe/canvas/individual/tpl/card_view.tpl.php
  67. 2 2
      htdocs/supplier_proposal/card.php
  68. 10 10
      htdocs/user/bank.php
  69. 4 4
      htdocs/user/group/card.php
  70. 1 1
      htdocs/websites/index.php

+ 2 - 2
dev/tools/test/testdiv.php

@@ -39,8 +39,8 @@
 </tr>
 
 <!-- Password -->
-<tr><td valign="top" class="nowrap"> &nbsp; <strong><label for="password">Mot de passe</label></strong> &nbsp; </td>
-<td valign="top" class="nowrap">
+<tr><td class="tdtop nowrap"> &nbsp; <strong><label for="password">Mot de passe</label></strong> &nbsp; </td>
+<td class="tdtop nowrap">
 <input id="password" name="password" class="flat" type="password" size="15" maxlength="30" value="" tabindex="2" />
 </td></tr>
 

+ 1 - 1
htdocs/accountancy/admin/fiscalyear_card.php

@@ -268,7 +268,7 @@ if ($action == 'create')
 			print '</td></tr>';
 
 			// Label
-			print '<tr><td valign="top">';
+			print '<tr><td class="tdtop">';
 			print $form->editfieldkey("Label", 'label', $object->label, $object, $conf->global->MAIN_EDIT_ALSO_INLINE, 'alpha:32');
 			print '</td><td colspan="2">';
 			print $form->editfieldval("Label", 'label', $object->label, $object, $conf->global->MAIN_EDIT_ALSO_INLINE, 'alpha:32');

+ 1 - 1
htdocs/adherents/canvas/default/tpl/adherentcard_create.tpl.php

@@ -108,7 +108,7 @@ echo $this->control->tpl['ajax_selectcountry']; ?>
 </tr>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans("Note"); ?></td>
+	<td class="tdtop"><?php echo $langs->trans("Note"); ?></td>
 	<td colspan="3" valign="top"><textarea name="note" cols="70" rows="<?php echo ROWS_3; ?>"><?php echo $this->control->tpl['note']; ?></textarea></td>
 </tr>
 

+ 1 - 1
htdocs/adherents/canvas/default/tpl/adherentcard_edit.tpl.php

@@ -117,7 +117,7 @@ echo $this->control->tpl['ajax_selectcountry'];
 </tr>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans("Note"); ?></td>
+	<td class="tdtop"><?php echo $langs->trans("Note"); ?></td>
 	<td colspan="3" valign="top"><textarea name="note" cols="70" rows="<?php echo ROWS_3; ?>"><?php echo $this->control->tpl['note']; ?></textarea></td>
 </tr>
 

+ 1 - 1
htdocs/adherents/canvas/default/tpl/adherentcard_view.tpl.php

@@ -102,7 +102,7 @@ dol_htmloutput_errors($this->control->tpl['error'],$this->control->tpl['errors']
 </tr>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans("Note"); ?></td>
+	<td class="tdtop"><?php echo $langs->trans("Note"); ?></td>
 	<td colspan="3"><?php echo $this->control->tpl['note']; ?></td>
 </tr>
 

+ 1 - 1
htdocs/adherents/card.php

@@ -873,7 +873,7 @@ else
 		}
 
 		// Address
-		print '<tr><td valign="top">'.$langs->trans("Address").'</td><td>';
+		print '<tr><td class="tdtop">'.$langs->trans("Address").'</td><td>';
 		print '<textarea name="address" wrap="soft" class="quatrevingtpercent" rows="2">'.(GETPOST('address','alpha')?GETPOST('address','alpha'):$object->address).'</textarea>';
 		print '</td></tr>';
 

+ 1 - 1
htdocs/adherents/subscription.php

@@ -1039,7 +1039,7 @@ if ($rowid > 0)
                 //print '<tr><td colspan="2"><b>'.$langs->trans("Payment").'</b></td></tr>';
 
                 // No more action
-                print '<tr><td valign="top" class="fieldrequired">'.$langs->trans('MoreActions');
+                print '<tr><td class="tdtop fieldrequired">'.$langs->trans('MoreActions');
                 print '</td>';
                 print '<td>';
                 print '<input type="radio" class="moreaction" id="none" name="paymentsave" value="none"'.(empty($bankdirect) && empty($invoiceonly) && empty($bankviainvoice)?' checked':'').'> '.$langs->trans("None").'<br>';

+ 6 - 6
htdocs/adherents/type.php

@@ -251,10 +251,10 @@ if ($action == 'create')
 	print $form->selectyesno("vote",0,1);
 	print '</td></tr>';
 
-	print '<tr><td valign="top">'.$langs->trans("Description").'</td><td>';
+	print '<tr><td class="tdtop">'.$langs->trans("Description").'</td><td>';
 	print '<textarea name="comment" wrap="soft" class="centpercent" rows="3"></textarea></td></tr>';
 
-	print '<tr><td valign="top">'.$langs->trans("WelcomeEMail").'</td><td>';
+	print '<tr><td class="tdtop">'.$langs->trans("WelcomeEMail").'</td><td>';
 	require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
 	$doleditor=new DolEditor('mail_valid',$object->mail_valid,'',280,'dolibarr_notes','',false,true,$conf->fckeditor->enabled,15,'90%');
 	$doleditor->Create();
@@ -314,10 +314,10 @@ if ($rowid > 0)
 		print yn($object->vote);
 		print '</tr>';
 
-		print '<tr><td valign="top">'.$langs->trans("Description").'</td><td>';
+		print '<tr><td class="tdtop">'.$langs->trans("Description").'</td><td>';
 		print nl2br($object->note)."</td></tr>";
 
-		print '<tr><td valign="top">'.$langs->trans("WelcomeEMail").'</td><td>';
+		print '<tr><td class="tdtop">'.$langs->trans("WelcomeEMail").'</td><td>';
 		print nl2br($object->mail_valid)."</td></tr>";
 
 		// Other attributes
@@ -647,10 +647,10 @@ if ($rowid > 0)
 		print $form->selectyesno("vote",$object->vote,1);
 		print '</td></tr>';
 
-		print '<tr><td valign="top">'.$langs->trans("Description").'</td><td>';
+		print '<tr><td class="tdtop">'.$langs->trans("Description").'</td><td>';
 		print '<textarea name="comment" wrap="soft" class="centpercent" rows="3">'.$object->note.'</textarea></td></tr>';
 
-		print '<tr><td valign="top">'.$langs->trans("WelcomeEMail").'</td><td>';
+		print '<tr><td class="tdtop">'.$langs->trans("WelcomeEMail").'</td><td>';
 		require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
 		$doleditor=new DolEditor('mail_valid',$object->mail_valid,'',280,'dolibarr_notes','',false,true,$conf->fckeditor->enabled,15,'90%');
 		$doleditor->Create();

+ 2 - 2
htdocs/admin/company.php

@@ -786,7 +786,7 @@ else
 	print '</td></tr>';
 
 	$var=!$var;
-	print '<tr '.$bc[$var].'><td valign="top">'.$langs->trans("Note").'</td><td>' . (! empty($conf->global->MAIN_INFO_SOCIETE_NOTE) ? nl2br($conf->global->MAIN_INFO_SOCIETE_NOTE) : '') . '</td></tr>';
+	print '<tr '.$bc[$var].'><td class="tdtop">'.$langs->trans("Note").'</td><td>' . (! empty($conf->global->MAIN_INFO_SOCIETE_NOTE) ? nl2br($conf->global->MAIN_INFO_SOCIETE_NOTE) : '') . '</td></tr>';
 
 	print '</table>';
 
@@ -952,7 +952,7 @@ else
 	print '</tr>';
 	
 	$var=!$var;
-	print '<tr '.$bc[$var].'><td valign="top">'.$langs->trans("CompanyObject").'</td><td>' . (! empty($conf->global->MAIN_INFO_SOCIETE_OBJECT) ? nl2br($conf->global->MAIN_INFO_SOCIETE_OBJECT) : '') . '</td></tr>';
+	print '<tr '.$bc[$var].'><td class="tdtop">'.$langs->trans("CompanyObject").'</td><td>' . (! empty($conf->global->MAIN_INFO_SOCIETE_OBJECT) ? nl2br($conf->global->MAIN_INFO_SOCIETE_OBJECT) : '') . '</td></tr>';
 
 	print '</table>';
 	print '</form>';

+ 2 - 2
htdocs/admin/modules.php

@@ -485,11 +485,11 @@ if ($mode != 'marketplace')
         print '</td>';
 
         // Name
-        print '<td valign="top">'.$objMod->getName();
+        print '<td class="tdtop">'.$objMod->getName();
         print "</td>\n";
 
         // Desc
-        print '<td valign="top">';
+        print '<td class="tdtop">';
         print nl2br($objMod->getDesc());
         print "</td>\n";
 

+ 2 - 2
htdocs/admin/tools/dolibarr_export.php

@@ -145,7 +145,7 @@ print '<tr '.$bc[false].'><td style="padding-left: 8px">';
 ?>
 <table class="centpercent">
 	<tr>
-		<td valign="top">
+		<td class="tdtop">
 
 		<div id="div_container_exportoptions">
 		<fieldset id="exportoptions"><legend><?php echo $langs->trans("ExportMethod"); ?></legend>
@@ -179,7 +179,7 @@ print '<tr '.$bc[false].'><td style="padding-left: 8px">';
 		</div>
 
 		</td>
-		<td valign="top">
+		<td class="tdtop">
 
 
 		<div id="div_container_sub_exportoptions">

+ 2 - 2
htdocs/admin/tools/dolibarr_import.php

@@ -86,7 +86,7 @@ print $langs->trans("RestoreDesc3",$dolibarr_main_db_name).'<br><br>';
 
 <?php print $langs->trans("DatabaseName").' : <b>'.$dolibarr_main_db_name.'</b>'; ?><br><br>
 
-<table><tr><td valign="top">
+<table><tr><td class="tdtop">
 
 <?php if ($conf->use_javascript_ajax) { ?>
 <div id="div_container_exportoptions">
@@ -120,7 +120,7 @@ print $langs->trans("RestoreDesc3",$dolibarr_main_db_name).'<br><br>';
 </div>
 <?php } ?>
 
-</td><td valign="top">
+</td><td class="tdtop">
 
 
 <div id="div_container_sub_exportoptions">

+ 2 - 2
htdocs/admin/triggers.php

@@ -67,9 +67,9 @@ foreach ($triggers as $trigger)
 	$var=!$var;
 	print '<tr '.$bc[$var].'>';
 	print '<td valign="top" width="14" align="center">'.$trigger['picto'].'</td>';
-	print '<td valign="top">'.$trigger['file'].'</td>';
+	print '<td class="tdtop">'.$trigger['file'].'</td>';
 	print '<td valign="top" align="center">'.$trigger['status'].'</td>';
-	print '<td valign="top">';
+	print '<td class="tdtop">';
 	$text=$trigger['info'];
 	$text.="<br>\n<strong>".$langs->trans("File")."</strong>:<br>\n".$trigger['relpath'];
 	//$text.="\n".$langs->trans("ExternalModule",$trigger['isocreorexternal']);

+ 42 - 37
htdocs/bookmarks/card.php

@@ -44,7 +44,7 @@ $userid=GETPOST("userid","int");
 $position=GETPOST("position","int");
 $backtopage=GETPOST('backtopage','alpha');
 
-$bookmark=new Bookmark($db);
+$object=new Bookmark($db);
 
 
 /*
@@ -69,14 +69,14 @@ if ($action == 'add' || $action == 'addproduct' || $action == 'update')
 		exit;
 	}
 
-	if ($action == 'update') $bookmark->fetch(GETPOST("id",'int'));
+	if ($action == 'update') $object->fetch(GETPOST("id",'int'));
 	// Check if null because user not admin can't set an user and send empty value here.
 	if(!empty($userid))
-		$bookmark->fk_user=$userid;
-	$bookmark->title=$title;
-	$bookmark->url=$url;
-	$bookmark->target=$target;
-	$bookmark->position=$position;
+		$object->fk_user=$userid;
+	$object->title=$title;
+	$object->url=$url;
+	$object->target=$target;
+	$object->position=$position;
 
 	if (! $title) {
 		$error++;
@@ -90,10 +90,10 @@ if ($action == 'add' || $action == 'addproduct' || $action == 'update')
 
 	if (! $error)
 	{
-		$bookmark->favicon='none';
+		$object->favicon='none';
 
-		if ($action == 'update') $res=$bookmark->update();
-		else $res=$bookmark->create();
+		if ($action == 'update') $res=$object->update();
+		else $res=$object->create();
 
 		if ($res > 0)
 		{
@@ -103,14 +103,14 @@ if ($action == 'add' || $action == 'addproduct' || $action == 'update')
 		}
 		else
 		{
-			if ($bookmark->errno == 'DB_ERROR_RECORD_ALREADY_EXISTS')
+			if ($object->errno == 'DB_ERROR_RECORD_ALREADY_EXISTS')
 			{
 				$langs->load("errors");
 				setEventMessages($langs->transnoentities("WarningBookmarkAlreadyExists"), null, 'warnings');
 			}
 			else
 			{
-				setEventMessages($bookmark->error, $bookmark->errors, 'errors');
+				setEventMessages($object->error, $object->errors, 'errors');
 			}
 			$action = $invertedaction;
 		}
@@ -133,7 +133,7 @@ $form=new Form($db);
 $head = array();
 $h=1;
 
-$head[$h][0] = $_SERVER["PHP_SELF"].($bookmark->id?'id='.$bookmark->id:'');
+$head[$h][0] = $_SERVER["PHP_SELF"].($object->id?'id='.$object->id:'');
 $head[$h][1] = $langs->trans("Card");
 $head[$h][2] = 'card';
 $h++;
@@ -157,7 +157,7 @@ if ($action == 'create')
 
 	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>';
+	print '<tr><td class="titlefieldcreate fieldrequired">'.$langs->trans("BookmarkTitle").'</td><td><input class="flat" name="title" size="30" value="'.$title.'"></td><td class="hideonsmartphone">'.$langs->trans("SetHereATitleForLink").'</td></tr>';
 
 	print '<tr><td class="fieldrequired">'.$langs->trans("UrlOrLink").'</td><td><input class="flat" name="url" size="50" value="'.$url.'"></td><td class="hideonsmartphone">'.$langs->trans("UseAnExternalHttpLinkOrRelativeDolibarrLink").'</td></tr>';
 
@@ -172,7 +172,7 @@ if ($action == 'create')
 
 	// Position
 	print '<tr><td>'.$langs->trans("Position").'</td><td>';
-	print '<input class="flat" name="position" size="5" value="'.(isset($_POST["position"])?$_POST["position"]:$bookmark->position).'">';
+	print '<input class="flat" name="position" size="5" value="'.(isset($_POST["position"])?$_POST["position"]:$object->position).'">';
 	print '</td><td class="hideonsmartphone">&nbsp;</td></tr>';
 
 	print '</table>';
@@ -193,8 +193,9 @@ if ($id > 0 && ! preg_match('/^add/i',$action))
 	/*
 	 * Fact bookmark mode or visually edition
 	 */
-	$bookmark->fetch($id);
-
+	$object->fetch($id);
+	
+	$hselected = 'card';
 	$head = array(
 		array(
 			'',
@@ -208,18 +209,22 @@ if ($id > 0 && ! preg_match('/^add/i',$action))
 		print '<form name="edit" method="POST" action="'.$_SERVER["PHP_SELF"].'" enctype="multipart/form-data">';
 		print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
 		print '<input type="hidden" name="action" value="update">';
-		print '<input type="hidden" name="id" value="'.$bookmark->id.'">';
-		print '<input type="hidden" name="urlsource" value="'.DOL_URL_ROOT.'/bookmarks/card.php?id='.$bookmark->id.'">';
+		print '<input type="hidden" name="id" value="'.$object->id.'">';
+		print '<input type="hidden" name="urlsource" value="'.DOL_URL_ROOT.'/bookmarks/card.php?id='.$object->id.'">';
 		print '<input type="hidden" name="backtopage" value="'.$backtopage.'">';
 	}
 
+
 	dol_fiche_head($head, $hselected, $langs->trans("Bookmark"),0,'bookmark');
+	
+	$linkback = '<a href="'.DOL_URL_ROOT.'/bookmarks/list.php">'.$langs->trans("BackToList").'</a>';
+	
+	dol_banner_tab($object, 'id', $linkback, 1, 'rowid', 'ref', '' , '', 0, '', '', 0);
 
+    print '<div class="underbanner clearboth"></div>';
 	print '<table class="border" width="100%">';
 
-	print '<tr><td class="titlefield">'.$langs->trans("Ref").'</td><td>'.$bookmark->ref.'</td></tr>';
-
-	print '<tr><td>';
+	print '<tr><td class="titlefield">';
 	if ($action == 'edit') {
 		print '<span class="fieldrequired">';
 	}
@@ -231,8 +236,8 @@ if ($id > 0 && ! preg_match('/^add/i',$action))
 	}
 
 	print '</td><td>';
-	if ($action == 'edit') print '<input class="flat minwidth200" name="title" value="'.(isset($_POST["title"])?GETPOST("title",'',2):$bookmark->title).'">';
-	else print $bookmark->title;
+	if ($action == 'edit') print '<input class="flat minwidth200" name="title" value="'.(isset($_POST["title"])?GETPOST("title",'',2):$object->title).'">';
+	else print $object->title;
 	print '</td></tr>';
 
 	print '<tr><td>';
@@ -244,34 +249,34 @@ if ($id > 0 && ! preg_match('/^add/i',$action))
 		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>';
+	if ($action == 'edit') print '<input class="flat" name="url" size="80" value="'.(isset($_POST["url"])?$_POST["url"]:$object->url).'">';
+	else print '<a href="'.(preg_match('/^http/i',$object->url)?$object->url:DOL_URL_ROOT.$object->url).'"'.($object->target?' target="_blank"':'').'>'.$object->url.'</a>';
 	print '</td></tr>';
 
 	print '<tr><td>'.$langs->trans("BehaviourOnClick").'</td><td>';
 	if ($action == 'edit')
 	{
 		$liste=array(1=>$langs->trans("OpenANewWindow"),0=>$langs->trans("ReplaceWindow"));
-		print $form->selectarray('target',$liste,isset($_POST["target"])?$_POST["target"]:$bookmark->target);
+		print $form->selectarray('target',$liste,isset($_POST["target"])?$_POST["target"]:$object->target);
 	}
 	else
 	{
-		if ($bookmark->target == 0) print $langs->trans("ReplaceWindow");
-		if ($bookmark->target == 1) print $langs->trans("OpenANewWindow");
+		if ($object->target == 0) print $langs->trans("ReplaceWindow");
+		if ($object->target == 1) print $langs->trans("OpenANewWindow");
 	}
 	print '</td></tr>';
 
 	print '<tr><td>'.$langs->trans("Owner").'</td><td>';
 	if ($action == 'edit' && $user->admin)
 	{
-		print $form->select_dolusers(isset($_POST['userid'])?$_POST['userid']:($bookmark->fk_user?$bookmark->fk_user:''), 'userid', 1, '', 0, '', '', 0, 0, 0, '', 0, '', 'maxwidth300');
+		print $form->select_dolusers(isset($_POST['userid'])?$_POST['userid']:($object->fk_user?$object->fk_user:''), 'userid', 1, '', 0, '', '', 0, 0, 0, '', 0, '', 'maxwidth300');
 	}
 	else
 	{
-		if ($bookmark->fk_user)
+		if ($object->fk_user)
 		{
 			$fuser=new User($db);
-			$fuser->fetch($bookmark->fk_user);
+			$fuser->fetch($object->fk_user);
 			print $fuser->getNomUrl(1);
 		}
 		else
@@ -283,12 +288,12 @@ if ($id > 0 && ! preg_match('/^add/i',$action))
 
 	// Position
 	print '<tr><td>'.$langs->trans("Position").'</td><td>';
-	if ($action == 'edit') print '<input class="flat" name="position" size="5" value="'.(isset($_POST["position"])?$_POST["position"]:$bookmark->position).'">';
-	else print $bookmark->position;
+	if ($action == 'edit') print '<input class="flat" name="position" size="5" value="'.(isset($_POST["position"])?$_POST["position"]:$object->position).'">';
+	else print $object->position;
 	print '</td></tr>';
 
 	// Date creation
-	print '<tr><td>'.$langs->trans("DateCreation").'</td><td>'.dol_print_date($bookmark->datec,'dayhour').'</td></tr>';
+	print '<tr><td>'.$langs->trans("DateCreation").'</td><td>'.dol_print_date($object->datec,'dayhour').'</td></tr>';
 
 	print '</table>';
 
@@ -308,13 +313,13 @@ if ($id > 0 && ! preg_match('/^add/i',$action))
 	// Edit
 	if ($user->rights->bookmark->creer && $action != 'edit')
 	{
-		print "  <a class=\"butAction\" href=\"".$_SERVER["PHP_SELF"]."?id=".$bookmark->id."&amp;action=edit\">".$langs->trans("Edit")."</a>\n";
+		print "  <a class=\"butAction\" href=\"".$_SERVER["PHP_SELF"]."?id=".$object->id."&amp;action=edit\">".$langs->trans("Edit")."</a>\n";
 	}
 
 	// Remove
 	if ($user->rights->bookmark->supprimer && $action != 'edit')
 	{
-		print "  <a class=\"butActionDelete\" href=\"list.php?bid=".$bookmark->id."&amp;action=delete\">".$langs->trans("Delete")."</a>\n";
+		print "  <a class=\"butActionDelete\" href=\"list.php?bid=".$object->id."&amp;action=delete\">".$langs->trans("Delete")."</a>\n";
 	}
 
 	print '</div>';

+ 17 - 1
htdocs/bookmarks/class/bookmark.class.php

@@ -26,8 +26,13 @@
 /**
  *		Class to manage bookmarks
  */
-class Bookmark
+class Bookmark extends CommonObject
 {
+    public $element='bookmark';
+    public $table_element='bookmark';
+    protected $ismultientitymanaged = 1;	// 0=No test on entity, 1=Test with field entity, 2=Test with link by societe
+    public $picto = 'bookmark';
+    
     var $db;
 
     var $id;
@@ -228,4 +233,15 @@ class Bookmark
 		return CommonObject::commonReplaceThirdparty($db, $origin_id, $dest_id, $tables);
 	}
 
+	/**
+	 *	Return label of contact status
+	 *
+	 *	@param      int			$mode       0=libelle long, 1=libelle court, 2=Picto + Libelle court, 3=Picto, 4=Picto + Libelle long, 5=Libelle court + Picto
+	 * 	@return 	string					Label of contact status
+	 */
+	function getLibStatut($mode)
+	{
+	    return '';
+	}
+	
 }

+ 1 - 1
htdocs/categories/card.php

@@ -250,7 +250,7 @@ if ($user->rights->categorie->creer)
 		print'</td></tr>';
 
 		// Description
-		print '<tr><td valign="top">'.$langs->trans("Description").'</td><td>';
+		print '<tr><td class="tdtop">'.$langs->trans("Description").'</td><td>';
 		require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php';
 		$doleditor=new DolEditor('description',$description,'',200,'dolibarr_notes','',false,true,$conf->global->FCKEDITOR_ENABLE_PRODUCTDESC,ROWS_6,'90%');
 		$doleditor->Create();

+ 17 - 2
htdocs/categories/class/categorie.class.php

@@ -49,8 +49,10 @@ class Categorie extends CommonObject
 	const TYPE_MEMBER = 3;     // TODO Replace this value with 'member'
 	const TYPE_CONTACT = 4;    // TODO Replace this value with 'contact'
 	const TYPE_USER = 4;       // categorie contact and user are same !   TODO Replace this value with 'user'
-    	const TYPE_ACCOUNT = 5;    // for bank account TODO Replace this value with 'account'
-    	const TYPE_PROJECT = 6;
+    const TYPE_ACCOUNT = 5;    // for bank account TODO Replace this value with 'account'
+    const TYPE_PROJECT = 6;
+    public $picto = 'category';
+    
 
 	/**
 	 * @var array ID mapping from type string
@@ -205,6 +207,7 @@ class Categorie extends CommonObject
 				$res = $this->db->fetch_array($resql);
 
 				$this->id			= $res['rowid'];
+				//$this->ref			= $res['rowid'];
 				$this->fk_parent	= $res['fk_parent'];
 				$this->label		= $res['label'];
 				$this->description	= $res['description'];
@@ -1703,6 +1706,18 @@ class Categorie extends CommonObject
 	    }
 	}
 
+	/**
+	 *	Return label of contact status
+	 *
+	 *	@param      int			$mode       0=libelle long, 1=libelle court, 2=Picto + Libelle court, 3=Picto, 4=Picto + Libelle long, 5=Libelle court + Picto
+	 * 	@return 	string					Label of contact status
+	 */
+	function getLibStatut($mode)
+	{
+	    return '';
+	}
+	
+	
     /**
      *  Initialise an instance with random values.
      *  Used to build previews or test instances.

+ 22 - 19
htdocs/categories/photos.php

@@ -36,8 +36,6 @@ $langs->load("categories");
 $langs->load("bills");
 
 
-$mesg = '';
-
 $id=GETPOST('id','int');
 $ref=GETPOST('ref');
 $type=GETPOST('type');
@@ -105,33 +103,38 @@ if ($object->id)
     else                                        $title=$langs->trans("Category");
 
 	$head = categories_prepare_head($object,$type);
-	dol_fiche_head($head, 'photos', $title, 0, 'category');
 
+
+	dol_fiche_head($head, 'photos', $title, 0, 'category');
+	
+	$linkback = '<a href="'.DOL_URL_ROOT.'/categories/index.php?leftmenu=cat&type='.$type.'">'.$langs->trans("BackToList").'</a>';
+	
+	$object->ref = $object->label;
+	$morehtmlref='<br><div class="refidno"><a href="'.DOL_URL_ROOT.'/categories/index.php?leftmenu=cat&type='.$type.'">'.$langs->trans("Root").'</a> >> ';
+	$ways = $object->print_all_ways(" &gt;&gt; ", '', 1);
+	foreach ($ways as $way)
+	{
+	    $morehtmlref.=$way."<br>\n";
+	}
+	$morehtmlref.='</div>';
+	
+	dol_banner_tab($object, 'ref', $linkback, ($user->societe_id?0:1), 'ref', 'ref', $morehtmlref, '', 0, '', '', 1);
+	
 	/*
 	 * Confirmation de la suppression de photo
 	*/
 	if ($action == 'delete')
 	{
-		print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&type='.$type.'&file='.$_GET["file"], $langs->trans('DeletePicture'), $langs->trans('ConfirmDeletePicture'), 'confirm_delete', '', 0, 1);
+	    print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&type='.$type.'&file='.$_GET["file"], $langs->trans('DeletePicture'), $langs->trans('ConfirmDeletePicture'), 'confirm_delete', '', 0, 1);
 	}
 
-	print($mesg);
-
+	print '<br>';
+	
+	print '<div class="underbanner clearboth"></div>';
 	print '<table class="border" width="100%">';
 
-	// Path of category
-	print '<tr><td class="titlefield notopnoleft">';
-	$ways = $object->print_all_ways(" &gt;&gt; ", '', 1);
-	print $langs->trans("Ref").'</td><td>';
-	print '<a href="'.DOL_URL_ROOT.'/categories/index.php?leftmenu=cat&type='.$type.'">'.$langs->trans("Root").'</a> >> ';
-	foreach ($ways as $way)
-	{
-		print $way."<br>\n";
-	}
-	print '</td></tr>';
-
 	// Description
-	print '<tr><td class="notopnoleft">';
+	print '<tr><td class="titlefield notopnoleft">';
 	print $langs->trans("Description").'</td><td>';
 	print dol_htmlentitiesbr($object->description);
 	print '</td></tr>';
@@ -144,7 +147,7 @@ if ($object->id)
 
 	print "</table>\n";
 
-	print "</div>\n";
+	print dol_fiche_end();
 
 
 

+ 72 - 46
htdocs/categories/traduction.php

@@ -1,7 +1,7 @@
 <?php
 /* Copyright (C) 2005-2012  Regis Houssin           <regis.houssin@capnetworks.com>
  * Copyright (C) 2007       Rodolphe Quiedeville    <rodolphe@quiedeville.org>
- * Copyright (C) 2010-2012  Destailleur Laurent     <eldy@users.sourceforge.net>
+ * Copyright (C) 2010-2016  Destailleur Laurent     <eldy@users.sourceforge.net>
  * Copyright (C) 2015       Raphaël Doursenaud      <rdoursenaud@gpcsolutions.fr>
  *
  * This program is free software; you can redistribute it and/or modify
@@ -156,25 +156,40 @@ elseif ($type == Categorie::TYPE_PROJECT)   $title=$langs->trans("ProjectsCatego
 else                                        $title=$langs->trans("Category");
 
 $head = categories_prepare_head($object,$type);
+
+// Calculate $cnt_trans
+$cnt_trans = 0;
+if (! empty($object->multilangs))
+{
+    foreach ($object->multilangs as $key => $value)
+    {
+        $cnt_trans++;
+    }
+}
+
 dol_fiche_head($head, 'translation', $title, 0, 'category');
 
-print '<table class="border" width="100%">';
+$linkback = '<a href="'.DOL_URL_ROOT.'/categories/index.php?leftmenu=cat&type='.$type.'">'.$langs->trans("BackToList").'</a>';
 
-// Reference
-print '<tr>';
-print '<td class="titlefield notopnoleft">';
+$object->ref = $object->label;
+$morehtmlref='<br><div class="refidno"><a href="'.DOL_URL_ROOT.'/categories/index.php?leftmenu=cat&type='.$type.'">'.$langs->trans("Root").'</a> >> ';
 $ways = $object->print_all_ways(" &gt;&gt; ", '', 1);
-print $langs->trans("Ref").'</td><td>';
-print '<a href="'.DOL_URL_ROOT.'/categories/index.php?leftmenu=cat&type='.$type.'">'.$langs->trans("Root").'</a> >> ';
 foreach ($ways as $way)
 {
-    print $way."<br>\n";
+    $morehtmlref.=$way."<br>\n";
 }
-print '</td>';
-print '</tr>';
+$morehtmlref.='</div>';
+
+dol_banner_tab($object, 'ref', $linkback, ($user->societe_id?0:1), 'ref', 'ref', $morehtmlref, '', 0, '', '', 1);
+
+print '<br>';
+
+print '<div class="underbanner clearboth"></div>';
+
+print '<table class="border" width="100%">';
 
 // Description
-print '<tr><td class="notopnoleft tdtop">';
+print '<tr><td class="titlefield notopnoleft">';
 print $langs->trans("Description").'</td><td>';
 print dol_htmlentitiesbr($object->description);
 print '</td></tr>';
@@ -187,6 +202,32 @@ print '</td></tr>';
 
 print '</table>';
 
+dol_fiche_end();
+
+
+
+
+/* ************************************************************************** */
+/*                                                                            */
+/* Barre d'action                                                             */
+/*                                                                            */
+/* ************************************************************************** */
+
+print "\n<div class=\"tabsAction\">\n";
+
+if ($action == '')
+{
+    if ($user->rights->produit->creer || $user->rights->service->creer)
+    {
+        print '<a class="butAction" href="'.$_SERVER['PHP_SELF'].'?action=add&id='.$object->id.'">'.$langs->trans("Add").'</a>';
+        if ($cnt_trans > 0) print '<a class="butAction" href="'.$_SERVER['PHP_SELF'].'?action=edit&id='.$object->id.'">'.$langs->trans("Update").'</a>';
+    }
+}
+
+print "\n</div>\n";
+
+
+
 if ($action == 'edit')
 {
 	//WYSIWYG Editor
@@ -201,9 +242,9 @@ if ($action == 'edit')
 	{
 		foreach ($object->multilangs as $key => $value)
 		{
-			print "<br><b><u>".$langs->trans('Language_'.$key)." :</u></b><br>";
+		    print "<br><b><u>".$langs->trans('Language_'.$key)." :</u></b><br>";
 			print '<table class="border" width="100%">';
-			print '<tr><td class="fieldtitlecreate fieldrequired">'.$langs->trans('Label').'</td><td><input name="libelle-'.$key.'" size="40" value="'.$object->multilangs[$key]["label"].'"></td></tr>';
+			print '<tr><td class="titlefield fieldrequired">'.$langs->trans('Label').'</td><td><input name="libelle-'.$key.'" size="40" value="'.$object->multilangs[$key]["label"].'"></td></tr>';
 			print '<tr><td class="tdtop">'.$langs->trans('Description').'</td><td>';
 			$doleditor = new DolEditor("desc-$key", $object->multilangs[$key]["description"], '', 160, 'dolibarr_notes', '', false, true, $conf->global->FCKEDITOR_ENABLE_PRODUCTDESC, ROWS_3,'90%');
 			$doleditor->Create();
@@ -213,7 +254,9 @@ if ($action == 'edit')
 			print '</table>';
 		}
 	}
-
+    
+	print '<br>';
+	
 	print '<div class="center">';
 	print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
 	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
@@ -223,46 +266,29 @@ if ($action == 'edit')
 	print '</form>';
 
 }
-else
+else if ($action != 'add')
 {
-	$cnt_trans = 0;
-	if (! empty($object->multilangs))
+    if ($cnt_trans) print '<div class="underbanner clearboth"></div>';
+    
+    if (! empty($object->multilangs))
 	{
 		foreach ($object->multilangs as $key => $value)
 		{
-			$cnt_trans++;
-			$s=picto_from_langcode($key);
-			print "<br>".($s?$s.' ':'')." <b>".$langs->trans('Language_'.$key).":</b><br>";
+		    $s=picto_from_langcode($key);
 			print '<table class="border" width="100%">';
-			print '<tr><td class="fieldtitlecreate>'.$langs->trans('Label').'</td><td>'.$object->multilangs[$key]["label"].'</td></tr>';
-			print '<tr><td class="tdtop">'.$langs->trans('Description').'</td><td>'.$object->multilangs[$key]["description"].'</td></tr>';
-			print '<tr><td>'.$langs->trans('Note').'</td><td>'.$object->multilangs[$key]["note"].'</td></tr>';
+			print '<tr class="liste_titre"><td colspan="2">'.($s?$s.' ':'')." <b>".$langs->trans('Language_'.$key).":</b> ".'<a href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&action=delete&langtodelete='.$key.'">'.img_delete('', '').'</a></td></tr>';
+			print '<tr><td class="titlefield">'.$langs->trans('Label').'</td><td>'.$object->multilangs[$key]["label"].'</td></tr>';
+			print '<tr><td>'.$langs->trans('Description').'</td><td>'.$object->multilangs[$key]["description"].'</td></tr>';
+			if (! empty($conf->global->CATEGORY_USE_OTHER_FIELD_IN_TRANSLATION))
+			{
+                print '<tr><td>'.$langs->trans('Other').' ('.$langs->trans("NotUsed").')</td><td>'.$object->multilangs[$key]["other"].'</td></tr>';
+			}
 			print '</table>';
 		}
 	}
-	if (! $cnt_trans) print '<br>'. $langs->trans('NoTranslation');
-}
-
-print "</div>\n";
-
-
-/* ************************************************************************** */
-/*                                                                            */
-/* Barre d'action                                                             */
-/*                                                                            */
-/* ************************************************************************** */
-
-print "\n<div class=\"tabsAction\">\n";
-
-if ($action == '')
-if ($user->rights->produit->creer || $user->rights->service->creer)
-{
-	print '<a class="butAction" href="'.$_SERVER['PHP_SELF'].'?action=add&id='.$object->id.'">'.$langs->trans("Add").'</a>';
-	print '<a class="butAction" href="'.$_SERVER['PHP_SELF'].'?action=edit&id='.$object->id.'">'.$langs->trans("Update").'</a>';
+	if (! $cnt_trans && $action != 'add') print '<div class="opacitymedium">'. $langs->trans('NoTranslation').'</div>';
 }
 
-print "\n</div>\n";
-
 
 /*
  * Form to add a new translation
@@ -280,11 +306,11 @@ if ($action == 'add' && ($user->rights->produit->creer || $user->rights->service
 	print '<input type="hidden" name="id" value="'.$id.'">';
 
 	print '<table class="border" width="100%">';
-	print '<tr><td class="fieldtitlecreate fieldrequired">'.$langs->trans('Translation').'</td><td>';
+	print '<tr><td class="titlefield fieldrequired">'.$langs->trans('Translation').'</td><td>';
     print $formadmin->select_language('','forcelangprod',0,$object->multilangs);
 	print '</td></tr>';
 	print '<tr><td class="fieldrequired">'.$langs->trans('Label').'</td><td><input name="libelle" size="40"></td></tr>';
-	print '<tr><td class="tdtop">'.$langs->trans('Description').'</td><td>';
+	print '<tr><td>'.$langs->trans('Description').'</td><td>';
 	$doleditor = new DolEditor('desc', '', '', 160, 'dolibarr_notes', '', false, true, $conf->global->FCKEDITOR_ENABLE_PRODUCTDESC, ROWS_3,'90%');
 	$doleditor->Create();
 	print '</td></tr>';

+ 26 - 19
htdocs/categories/viewcat.php

@@ -68,6 +68,7 @@ $extralabels = $extrafields->fetch_name_optionals_label($object->table_element);
 // Initialize technical object to manage hooks. Note that conf->hooks_modules contains array array
 $hookmanager->initHooks(array('categorycard'));
 
+
 /*
  *	Actions
  */
@@ -190,8 +191,22 @@ else                                        $title=$langs->trans("Category");
 
 $head = categories_prepare_head($object,$type);
 
+
 dol_fiche_head($head, 'card', $title, 0, 'category');
 
+$linkback = '<a href="'.DOL_URL_ROOT.'/categories/index.php?leftmenu=cat&type='.$type.'">'.$langs->trans("BackToList").'</a>';
+
+$object->ref = $object->label;
+$morehtmlref='<br><div class="refidno"><a href="'.DOL_URL_ROOT.'/categories/index.php?leftmenu=cat&type='.$type.'">'.$langs->trans("Root").'</a> >> ';
+$ways = $object->print_all_ways(" &gt;&gt; ", '', 1);
+foreach ($ways as $way)
+{
+    $morehtmlref.=$way."<br>\n";
+}
+$morehtmlref.='</div>';
+
+dol_banner_tab($object, 'ref', $linkback, ($user->societe_id?0:1), 'ref', 'ref', $morehtmlref, '', 0, '', '', 1);
+
 
 /*
  * Confirmation suppression
@@ -202,21 +217,13 @@ if ($action == 'delete')
 	print $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&amp;type='.$type, $langs->trans('DeleteCategory'), $langs->trans('ConfirmDeleteCategory'), 'confirm_delete', '', '', 1);
 }
 
-print '<table width="100%" class="border">';
+print '<br>';
 
-// Path of category
-print '<tr><td class="titlefield notopnoleft">';
-$ways = $object->print_all_ways(" &gt;&gt; ", '', 1);
-print $langs->trans("Ref").'</td><td>';
-print '<a href="'.DOL_URL_ROOT.'/categories/index.php?leftmenu=cat&type='.$type.'">'.$langs->trans("Root").'</a> >> ';
-foreach ($ways as $way)
-{
-	print $way."<br>\n";
-}
-print '</td></tr>';
+print '<div class="underbanner clearboth"></div>';
+print '<table width="100%" class="border">';
 
 // Description
-print '<tr><td class="notopnoleft">';
+print '<tr><td class="titlefield notopnoleft">';
 print $langs->trans("Description").'</td><td>';
 print dol_htmlentitiesbr($object->description);
 print '</td></tr>';
@@ -359,7 +366,7 @@ if ($object->type == Categorie::TYPE_PRODUCT)
 				print '<td class="nowrap" valign="top">';
 				print $prod->getNomUrl(1);
 				print "</td>\n";
-				print '<td valign="top">'.$prod->label."</td>\n";
+				print '<td class="tdtop">'.$prod->label."</td>\n";
 				// Link to delete from category
 				print '<td align="right">';
 				$typeid=$object->type;
@@ -520,8 +527,8 @@ if ($object->type == Categorie::TYPE_MEMBER)
 				$member->ref=$member->login;
 				print $member->getNomUrl(1,0);
 				print "</td>\n";
-				print '<td valign="top">'.$member->lastname."</td>\n";
-				print '<td valign="top">'.$member->firstname."</td>\n";
+				print '<td class="tdtop">'.$member->lastname."</td>\n";
+				print '<td class="tdtop">'.$member->firstname."</td>\n";
 				// Link to delete from category
 				print '<td align="right">';
 				$typeid=$object->type;
@@ -628,8 +635,8 @@ if ($object->type == Categorie::TYPE_ACCOUNT)
                 print '<td class="nowrap" valign="top">';
                 print $account->getNomUrl(1,0);
                 print "</td>\n";
-                print '<td valign="top">'.$account->bank."</td>\n";
-                print '<td valign="top">'.$account->number."</td>\n";
+                print '<td class="tdtop">'.$account->bank."</td>\n";
+                print '<td class="tdtop">'.$account->number."</td>\n";
                 // Link to delete from category
                 print '<td align="right">';
                 $typeid=$object->type;
@@ -683,8 +690,8 @@ if ($object->type == Categorie::TYPE_PROJECT)
 				print '<td class="nowrap" valign="top">';
 				print $project->getNomUrl(1,0);
 				print "</td>\n";
-				print '<td valign="top">'.$project->ref."</td>\n";
-				print '<td valign="top">'.$project->title."</td>\n";
+				print '<td class="tdtop">'.$project->ref."</td>\n";
+				print '<td class="tdtop">'.$project->title."</td>\n";
 				// Link to delete from category
 				print '<td align="right">';
 				$typeid=$object->type;

+ 2 - 2
htdocs/comm/address.php

@@ -253,7 +253,7 @@ if ($action == 'create')
         print '<tr><td class="fieldrequired">'.$langs->trans('Label').'</td><td><input type="text" size="30" name="label" id="label" value="'.($object->label?$object->label:$langs->trans('RequiredField')).'"></td></tr>';
         print '<tr><td class="fieldrequired">'.$langs->trans('Name').'</td><td><input type="text" size="30" name="name" id="name" value="'.($object->name?$object->name:$langs->trans('RequiredField')).'"></td></tr>';
 
-        print '<tr><td valign="top">'.$langs->trans('Address').'</td><td colspan="3"><textarea name="address" class="quatrevingtpercent" rows="3" wrap="soft">';
+        print '<tr><td class="tdtop">'.$langs->trans('Address').'</td><td colspan="3"><textarea name="address" class="quatrevingtpercent" rows="3" wrap="soft">';
         print $object->address;
         print '</textarea></td></tr>';
 
@@ -353,7 +353,7 @@ elseif ($action == 'edit')
         print '<tr><td>'.$langs->trans('AddressLabel').'</td><td colspan="3"><input type="text" size="40" name="label" value="'.$object->label.'"></td></tr>';
         print '<tr><td>'.$langs->trans('Name').'</td><td colspan="3"><input type="text" size="40" name="name" value="'.$object->name.'"></td></tr>';
 
-        print '<tr><td valign="top">'.$langs->trans('Address').'</td><td colspan="3"><textarea name="address" class="quatrevingtpercent" rows="3" wrap="soft">';
+        print '<tr><td class="tdtop">'.$langs->trans('Address').'</td><td colspan="3"><textarea name="address" class="quatrevingtpercent" rows="3" wrap="soft">';
         print $object->address;
         print '</textarea></td></tr>';
 

+ 1 - 1
htdocs/comm/multiprix.php

@@ -91,7 +91,7 @@ if ($_socid > 0)
 	dol_fiche_head($head, $tabchoice, $langs->trans("ThirdParty"), 0, 'company');
 
 	print '<table width="100%" border="0">';
-	print '<tr><td valign="top">';
+	print '<tr><td class="tdtop">';
 	print '<table class="border" width="100%">';
 
 	print '<tr><td colspan="2" width="25%">';

+ 1 - 1
htdocs/comm/propal/card.php

@@ -1601,7 +1601,7 @@ if ($action == 'create')
 		}
 		print '</td></tr>';
 
-		print '<tr><td valign="top"><input type="radio" name="createmode" value="empty" checked></td>';
+		print '<tr><td class="tdtop"><input type="radio" name="createmode" value="empty" checked></td>';
 		print '<td valign="top" colspan="2">' . $langs->trans("CreateEmptyPropal") . '</td></tr>';
 	}
 

+ 1 - 1
htdocs/commande/orderstoinvoice.php

@@ -421,7 +421,7 @@ if ($action == 'create' && !$error)
 	print '</tr>'."\n";
 
 	// Type
-	print '<tr><td valign="top" class="fieldrequired">'.$langs->trans('Type').'</td><td colspan="2">';
+	print '<tr><td class="tdtop fieldrequired">'.$langs->trans('Type').'</td><td colspan="2">';
 	print '<table class="nobordernopadding">'."\n";
 
 	// Standard invoice

+ 3 - 3
htdocs/compta/deplacement/card.php

@@ -373,7 +373,7 @@ else if ($id)
             print '</td></tr>';
 
             // Public note
-            print '<tr><td valign="top">'.$langs->trans("NotePublic").'</td>';
+            print '<tr><td class="tdtop">'.$langs->trans("NotePublic").'</td>';
             print '<td valign="top" colspan="3">';
 
             $doleditor = new DolEditor('note_public', $object->note_public, '', 200, 'dolibarr_notes', 'In', false, true, true, ROWS_8, '90%');
@@ -384,7 +384,7 @@ else if ($id)
             // Private note
             if (empty($user->societe_id))
             {
-                print '<tr><td valign="top">'.$langs->trans("NotePrivate").'</td>';
+                print '<tr><td class="tdtop">'.$langs->trans("NotePrivate").'</td>';
                 print '<td valign="top" colspan="3">';
 
                 $doleditor = new DolEditor('note_private', $object->note_private, '', 200, 'dolibarr_notes', 'In', false, true, true, ROWS_8, '90%');
@@ -456,7 +456,7 @@ else if ($id)
             print '</td></tr>';
 
             // Km/Price
-            print '<tr><td valign="top">';
+            print '<tr><td class="tdtop">';
             print $form->editfieldkey("FeesKilometersOrAmout",'km',$object->km,$object,$conf->global->MAIN_EDIT_ALSO_INLINE && $user->rights->deplacement->creer,'numeric:6');
             print '</td><td>';
             print $form->editfieldval("FeesKilometersOrAmout",'km',$object->km,$object,$conf->global->MAIN_EDIT_ALSO_INLINE && $user->rights->deplacement->creer,'numeric:6');

+ 1 - 1
htdocs/compta/facture.php

@@ -2208,7 +2208,7 @@ if ($action == 'create')
 		$optionsav .= '</option>';
 	}
 
-	print '<tr><td valign="top" class="fieldrequired">' . $langs->trans('Type') . '</td><td colspan="2">';
+	print '<tr><td class="tdtop fieldrequired">' . $langs->trans('Type') . '</td><td colspan="2">';
 
 	print '<div class="tagtable">' . "\n";
 

+ 1 - 1
htdocs/compta/paiement.php

@@ -512,7 +512,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
 
 		// Comments
 		print '<tr><td>'.$langs->trans('Comments').'</td>';
-		print '<td valign="top">';
+		print '<td class="tdtop">';
 		print '<textarea name="comment" wrap="soft" class="quatrevingtpercent" rows="'.ROWS_3.'">'.GETPOST('comment').'</textarea></td></tr>';
         
         print '</table>';

+ 3 - 3
htdocs/compta/paiement_charge.php

@@ -203,7 +203,7 @@ if ($action == 'create')
 		$db->free();
 	}
 	print '<tr><td>'.$langs->trans("AlreadyPaid").'</td><td>'.price($sumpaid,0,$outputlangs,1,-1,-1,$conf->currency).'</td></tr>';
-	print '<tr><td valign="top">'.$langs->trans("RemainderToPay").'</td><td>'.price($total-$sumpaid,0,$outputlangs,1,-1,-1,$conf->currency).'</td></tr>';
+	print '<tr><td class="tdtop">'.$langs->trans("RemainderToPay").'</td><td>'.price($total-$sumpaid,0,$outputlangs,1,-1,-1,$conf->currency).'</td></tr>';
 
 	print '<tr class="liste_titre">';
 	print "<td colspan=\"2\">".$langs->trans("Payment").'</td>';
@@ -234,8 +234,8 @@ if ($action == 'create')
 	print '<td><input name="num_paiement" type="text" value="'.GETPOST('num_paiement').'"></td></tr>'."\n";
 
 	print '<tr>';
-	print '<td valign="top">'.$langs->trans("Comments").'</td>';
-	print '<td valign="top"><textarea name="note" wrap="soft" cols="60" rows="'.ROWS_3.'"></textarea></td>';
+	print '<td class="tdtop">'.$langs->trans("Comments").'</td>';
+	print '<td class="tdtop"><textarea name="note" wrap="soft" cols="60" rows="'.ROWS_3.'"></textarea></td>';
 	print '</tr>';
 
 	print '</table>';

+ 1 - 1
htdocs/contact/canvas/default/tpl/contactcard_create.tpl.php

@@ -114,7 +114,7 @@ echo $this->control->tpl['ajax_selectcountry']; ?>
 </tr>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans("Note"); ?></td>
+	<td class="tdtop"><?php echo $langs->trans("Note"); ?></td>
 	<td colspan="3" valign="top"><textarea name="note" cols="70" rows="<?php echo ROWS_3; ?>"><?php echo $this->control->tpl['note']; ?></textarea></td>
 </tr>
 

+ 1 - 1
htdocs/contact/canvas/default/tpl/contactcard_edit.tpl.php

@@ -129,7 +129,7 @@ echo $this->control->tpl['ajax_selectcountry'];
 </tr>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans("Note"); ?></td>
+	<td class="tdtop"><?php echo $langs->trans("Note"); ?></td>
 	<td colspan="3" valign="top"><textarea name="note" cols="70" rows="<?php echo ROWS_3; ?>"><?php echo $this->control->tpl['note']; ?></textarea></td>
 </tr>
 

+ 1 - 1
htdocs/contact/canvas/default/tpl/contactcard_view.tpl.php

@@ -114,7 +114,7 @@ dol_htmloutput_errors($this->control->tpl['error'],$this->control->tpl['errors']
 </tr>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans("Note"); ?></td>
+	<td class="tdtop"><?php echo $langs->trans("Note"); ?></td>
 	<td colspan="3"><?php echo $this->control->tpl['note']; ?></td>
 </tr>
 

+ 2 - 2
htdocs/contrat/card.php

@@ -1161,14 +1161,14 @@ if ($action == 'create')
         print "</td></tr>";
     }
 
-    print '<tr><td>'.$langs->trans("NotePublic").'</td><td valign="top">';
+    print '<tr><td>'.$langs->trans("NotePublic").'</td><td class="tdtop">';
     $doleditor=new DolEditor('note_public', $note_public, '', '100', 'dolibarr_notes', 'In', 1, true, true, ROWS_3, '90%');
     print $doleditor->Create(1);
     print '</td></tr>';
 
     if (empty($user->societe_id))
     {
-        print '<tr><td>'.$langs->trans("NotePrivate").'</td><td valign="top">';
+        print '<tr><td>'.$langs->trans("NotePrivate").'</td><td class="tdtop">';
         $doleditor=new DolEditor('note_private', $note_private, '', '100', 'dolibarr_notes', 'In', 1, true, true, ROWS_3, '90%');
         print $doleditor->Create(1);
         print '</td></tr>';

+ 1 - 1
htdocs/core/class/html.form.class.php

@@ -3445,7 +3445,7 @@ class Form
                         foreach($input['values'] as $selkey => $selval)
                         {
                             $more.='<tr>';
-                            if ($i==0) $more.='<td valign="top">'.$input['label'].'</td>';
+                            if ($i==0) $more.='<td class="tdtop">'.$input['label'].'</td>';
                             else $more.='<td>&nbsp;</td>';
                             $more.='<td width="20"><input type="radio" class="flat" id="'.$input['name'].'" name="'.$input['name'].'" value="'.$selkey.'"';
                             if ($input['disabled']) $more.=' disabled';

+ 1 - 1
htdocs/core/lib/admin.lib.php

@@ -260,7 +260,7 @@ function run_sql($sqlfile,$silent=1,$entity='',$usesavepoint=1,$handler='',$oker
             $newsql=preg_replace('/__ENTITY__/i',(!empty($entity)?$entity:$conf->entity),$sql);
 
             // Ajout trace sur requete (eventuellement a commenter si beaucoup de requetes)
-            if (! $silent) print '<tr><td valign="top">'.$langs->trans("Request").' '.($i+1)." sql='".dol_htmlentities($newsql,ENT_NOQUOTES)."'</td></tr>\n";
+            if (! $silent) print '<tr><td class="tdtop">'.$langs->trans("Request").' '.($i+1)." sql='".dol_htmlentities($newsql,ENT_NOQUOTES)."'</td></tr>\n";
             dol_syslog('Admin.lib::run_sql Request '.($i+1), LOG_DEBUG);
 			$sqlmodified=0;
 

+ 1 - 1
htdocs/core/lib/functions.lib.php

@@ -1090,7 +1090,7 @@ function dol_banner_tab($object, $paramid, $morehtml='', $shownav=1, $fieldid='r
 	if (! empty($object->name_alias)) $morehtmlref.='<div class="refidno">'.$object->name_alias.'</div>';      // For thirdparty
 	if ($object->element == 'product' && ! empty($object->label)) $morehtmlref.='<div class="refidno">'.$object->label.'</div>';
 
-	if ($object->element != 'product') 
+	if ($object->element != 'product' && $object->element != 'bookmark') 
 	{
     	$morehtmlref.='<div class="refidno">';
     	$morehtmlref.=$object->getBannerAddress('refaddress',$object);

+ 21 - 21
htdocs/core/modules/dons/html_cerfafr.html

@@ -57,87 +57,87 @@
                                 <font size="+1"><b>Cochez la case concernée (1) :</b></font><br>
                                 <table width="100%" border="0" bgcolor="#ffffff" cellspacing="0" cellpadding="3">
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Association ou fondation reconnue d'utilité publique par décret en date du ........./ ..... /........... publié au Journal
                                             officiel du ......./ ....../ .......... . ou association située dans le département de la Moselle, du Bas-Rhin ou
                                             du Haut-Rhin dont la mission a été reconnue d'utilité publique par arrêté préfectoral en date du …./.…/……..</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Fondation universitaire ou fondation partenariale mentionnées respectivement aux articles L. 719-12 et
                                             L. 719-13 du code de l'éducation</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Fondation d'entreprise</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox" checked="checked"></td>
+                                        <td class="tdtop"><INPUT type="checkbox" checked="checked"></td>
                                         <td>Oeuvre ou organisme d'intérêt général</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Musée de France</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Établissement d'enseignement supérieur ou d’enseignement artistique public ou privé, d’intérêt général, à but
                                             non lucratif</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Organisme ayant pour objet exclusif de participer financièrement à la création d'entreprises</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Association cultuelle ou de bienfaisance et établissement public des cultes reconnus d'Alsace-Moselle</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Organisme ayant pour activité principale l'organisation de festivals</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Association fournissant gratuitement une aide alimentaire ou des soins médicaux à des personnes en difficulté ou
                                             favorisant leur logement</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Fondation du patrimoine ou fondation ou association qui affecte irrévocablement les dons à la Fondation du
                                             patrimoine, en vue de subventionner les travaux prévus par les conventions conclues entre la Fondation du
                                             patrimoine et les propriétaires des immeubles (article L. 143-2-1 du code du patrimoine)</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Établissement de recherche public ou privé, d’intérêt général, à but non lucratif</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Entreprise d’insertion ou entreprise de travail temporaire d’insertion (articles L. 5132-5 et L. 5132-6 du code du
                                             travail).</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Associations intermédiaires (article L. 5132-7 du code du travail)</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Ateliers et chantiers d’insertion (article L. 5132-15 du code du travail)</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Entreprises adaptées (article L. 5213-13 du code du travail)</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Agence nationale de la recherche (ANR)</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Société ou organisme agréé de recherche scientifique ou technique (2)</td>
                                     </tr>
                                     <tr>
-                                        <td valign="top"><INPUT type="checkbox"></td>
+                                        <td class="tdtop"><INPUT type="checkbox"></td>
                                         <td>Autre organisme : ………………………………………………………………………………………………</td>
                                     </tr>
                                 </table>
@@ -250,7 +250,7 @@
 		<font size="-1">
         <table>
             <tr>
-                <td valign="top">(3)</td>
+                <td class="tdtop">(3)</td>
                 <td>
                     L’organisme bénéficiaire peut cocher une ou plusieurs cases.<br>
                     L’organisme bénéficiaire peut, en application de l’article L. 80 C du livre des procédures fiscales, demander à l’administration s’il relève
@@ -261,7 +261,7 @@
                 </td>
             </tr>
             <tr>
-                <td valign="top">(4)</td>
+                <td class="tdtop">(4)</td>
                 <td>
                     Notamment : abandon de revenus ou de produits ; frais engagés par les bénévoles, dont ils renoncent expressément au remboursement<br>
                 </td>

+ 1 - 1
htdocs/core/tpl/passwordforgotten.tpl.php

@@ -102,7 +102,7 @@ if (! empty($hookmanager->resArray['options'])) {
 	?>
 	<!-- Captcha -->
 	<tr>
-	<td valign="top" class="nowrap none center">
+	<td class="tdtop nowrap none center">
 
 	<table class="login_table_securitycode centpercent"><tr>
 	<td>

+ 2 - 2
htdocs/don/payment/payment.php

@@ -196,7 +196,7 @@ if (GETPOST("action") == 'create')
 		$db->free();
 	}
 	print '<tr><td>'.$langs->trans("AlreadyPaid").'</td><td colspan="2">'.price($sumpaid,0,$outputlangs,1,-1,-1,$conf->currency).'</td></tr>';
-	print '<tr><td valign="top">'.$langs->trans("RemainderToPay").'</td><td colspan="2">'.price($total-$sumpaid,0,$outputlangs,1,-1,-1,$conf->currency).'</td></tr>';
+	print '<tr><td class="tdtop">'.$langs->trans("RemainderToPay").'</td><td colspan="2">'.price($total-$sumpaid,0,$outputlangs,1,-1,-1,$conf->currency).'</td></tr>';
 
 	print '<tr class="liste_titre">';
 	print "<td colspan=\"3\">".$langs->trans("Payment").'</td>';
@@ -227,7 +227,7 @@ if (GETPOST("action") == 'create')
 	print '<td colspan="2"><input name="num_payment" type="text" value="'.GETPOST('num_payment').'"></td></tr>'."\n";
 
 	print '<tr>';
-	print '<td valign="top">'.$langs->trans("Comments").'</td>';
+	print '<td class="tdtop">'.$langs->trans("Comments").'</td>';
 	print '<td valign="top" colspan="2"><textarea name="note" wrap="soft" cols="60" rows="'.ROWS_3.'"></textarea></td>';
 	print '</tr>';
 

+ 1 - 1
htdocs/ecm/docdir.php

@@ -166,7 +166,7 @@ if ($action == 'create')
 	print '</td></tr>'."\n";
 
 	// Description
-	print '<tr><td valign="top">'.$langs->trans("Description").'</td><td>';
+	print '<tr><td class="tdtop">'.$langs->trans("Description").'</td><td>';
 	print '<textarea name="desc" rows="4" cols="90">';
 	print $ecmdir->description;
 	print '</textarea>';

+ 1 - 1
htdocs/ecm/docfile.php

@@ -207,7 +207,7 @@ print ' -> ';
 if (GETPOST('action') == 'edit') print '<input type="text" name="label" class="quatrevingtpercent" value="'.$urlfile.'">';
 else print $urlfile;
 print '</td></tr>';
-/*print '<tr><td valign="top">'.$langs->trans("Description").'</td><td>';
+/*print '<tr><td class="tdtop">'.$langs->trans("Description").'</td><td>';
 if ($_GET["action"] == 'edit')
 {
 	print '<textarea class="flat" name="description" cols="80">';

+ 1 - 1
htdocs/ecm/search.php

@@ -182,7 +182,7 @@ print "</table></form>";
 
 
 
-print '</td><td valign="top">';
+print '</td><td class="tdtop">';
 
 // Right area
 $relativepath=$ecmdir->getRelativePath();

+ 2 - 2
htdocs/expensereport/card.php

@@ -1266,7 +1266,7 @@ if ($action == 'create')
 	// Public note
 	print '<tr>';
 	print '<td class="border" valign="top">' . $langs->trans('NotePublic') . '</td>';
-	print '<td valign="top">';
+	print '<td class="tdtop">';
 
 	$doleditor = new DolEditor('note_public', $note_public, '', 80, 'dolibarr_notes', 'In', 0, false, true, ROWS_3, '90%');
 	print $doleditor->Create(1);
@@ -1276,7 +1276,7 @@ if ($action == 'create')
 	if (empty($user->societe_id)) {
 		print '<tr>';
 		print '<td class="border" valign="top">' . $langs->trans('NotePrivate') . '</td>';
-		print '<td valign="top">';
+		print '<td class="tdtop">';
 
 		$doleditor = new DolEditor('note_private', $note_private, '', 80, 'dolibarr_notes', 'In', 0, false, true, ROWS_3, '90%');
 		print $doleditor->Create(1);

+ 2 - 2
htdocs/expensereport/payment/payment.php

@@ -204,7 +204,7 @@ if (GETPOST("action") == 'create')
 		$db->free();
 	}
 	print '<tr><td>'.$langs->trans("AlreadyPaid").'</td><td colspan="2">'.price($sumpaid,0,$outputlangs,1,-1,-1,$conf->currency).'</td></tr>';
-	print '<tr><td valign="top">'.$langs->trans("RemainderToPay").'</td><td colspan="2">'.price($total-$sumpaid,0,$outputlangs,1,-1,-1,$conf->currency).'</td></tr>';
+	print '<tr><td class="tdtop">'.$langs->trans("RemainderToPay").'</td><td colspan="2">'.price($total-$sumpaid,0,$outputlangs,1,-1,-1,$conf->currency).'</td></tr>';
 
 	print '<tr class="liste_titre">';
 	print "<td colspan=\"3\">".$langs->trans("Payment").'</td>';
@@ -235,7 +235,7 @@ if (GETPOST("action") == 'create')
 	print '<td colspan="2"><input name="num_payment" type="text" value="'.GETPOST('num_payment').'"></td></tr>'."\n";
 
 	print '<tr>';
-	print '<td valign="top">'.$langs->trans("Comments").'</td>';
+	print '<td class="tdtop">'.$langs->trans("Comments").'</td>';
 	print '<td valign="top" colspan="2"><textarea name="note" wrap="soft" cols="60" rows="'.ROWS_3.'"></textarea></td>';
 	print '</tr>';
 

+ 1 - 1
htdocs/fourn/facture/paiement.php

@@ -379,7 +379,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie
             }
             print '<tr><td>'.$langs->trans('Numero').'</td><td><input name="num_paiement" type="text" value="'.(empty($_POST['num_paiement'])?'':$_POST['num_paiement']).'"></td></tr>';
             print '<tr><td>'.$langs->trans('Comments').'</td>';
-            print '<td valign="top">';
+            print '<td class="tdtop">';
             print '<textarea name="comment" wrap="soft" class="quatrevingtpercent" rows="'.ROWS_3.'">'.(empty($_POST['comment'])?'':$_POST['comment']).'</textarea></td></tr>';
             print '</table>';
             dol_fiche_end();

+ 10 - 10
htdocs/install/fileconf.php

@@ -117,7 +117,7 @@ if (! empty($force_install_message))
 	<!-- Documents root $dolibarr_main_document_root -->
 	<tr>
 	<?php
-	print '<td valign="top" class="label"><b>';
+	print '<td class="tdtop label"><b>';
 	print $langs->trans("WebPagesDirectory");
 	print "</b></td>";
 
@@ -148,7 +148,7 @@ if (! empty($force_install_message))
 
 	<!-- Documents URL $dolibarr_main_data_root -->
 	<tr>
-		<td valign="top" class="label"><b> <?php print $langs->trans("DocumentsDirectory"); ?></b>
+		<td class="tdtop label"><b> <?php print $langs->trans("DocumentsDirectory"); ?></b>
 		</td>
 		<?php
 		$dolibarr_main_data_root = @$force_install_main_data_root;
@@ -185,9 +185,9 @@ if (! empty($force_install_message))
 	}
 	?>
 	<tr>
-		<td valign="top" class="label"><b> <?php echo $langs->trans("URLRoot"); ?></b>
+		<td class="tdtop label"><b> <?php echo $langs->trans("URLRoot"); ?></b>
 		</td>
-		<td valign="top" class="label">
+		<td class="tdtop label">
 			<input type="text"
 			       class="minwidth300"
 			       name="main_url"
@@ -209,7 +209,7 @@ if (! empty($force_install_message))
 	if (! empty($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == 'on') {   // Enabled if the installation process is "https://"
 	    ?>
 	<tr>
-		<td valign="top" class="label"><?php echo $langs->trans("ForceHttps"); ?></td>
+		<td class="tdtop label"><?php echo $langs->trans("ForceHttps"); ?></td>
 		<td class="label" valign="top">
 			<input type="checkbox"
 			       name="main_force_https"
@@ -261,7 +261,7 @@ if (! empty($force_install_message))
 	?>
 	<tr>
 		<!-- Driver type -->
-		<td valign="top" class="label"><b> <?php echo $langs->trans("DriverType"); ?>
+		<td class="tdtop label"><b> <?php echo $langs->trans("DriverType"); ?>
 		</b></td>
 
 		<td class="label">
@@ -337,9 +337,9 @@ if (! empty($force_install_message))
 	</tr>
 
 	<tr class="hidesqlite">
-		<td valign="top" class="label"><b> <?php echo $langs->trans("DatabaseServer"); ?>
+		<td class="tdtop label"><b> <?php echo $langs->trans("DatabaseServer"); ?>
 		</b></td>
-		<td valign="top" class="label">
+		<td class="tdtop label">
 			<input type="text"
 			       name="db_host"
 			       value="<?php print (!empty($force_install_dbserver) ? $force_install_dbserver : (!empty($dolibarr_main_db_host) ? $dolibarr_main_db_host : 'localhost')); ?>"
@@ -354,8 +354,8 @@ if (! empty($force_install_message))
 	</tr>
 
 	<tr class="hidesqlite">
-		<td valign="top" class="label"><?php echo $langs->trans("Port"); ?></td>
-		<td valign="top" class="label">
+		<td class="tdtop label"><?php echo $langs->trans("Port"); ?></td>
+		<td class="tdtop label">
 			<input type="text"
 			       name="db_port"
 			       id="db_port"

+ 2 - 2
htdocs/loan/card.php

@@ -253,7 +253,7 @@ if ($action == 'create')
     // Note Private
     print '<tr>';
     print '<td class="border" valign="top">'.$langs->trans('NotePrivate').'</td>';
-    print '<td valign="top">';
+    print '<td class="tdtop">';
 
     $doleditor = new DolEditor('note_private', GETPOST('note_private', 'alpha'), '', 160, 'dolibarr_notes', 'In', false, true, true, ROWS_6, '90%');
     print $doleditor->Create(1);
@@ -263,7 +263,7 @@ if ($action == 'create')
     // Note Public
     print '<tr>';
     print '<td class="border" valign="top">'.$langs->trans('NotePublic').'</td>';
-    print '<td valign="top">';
+    print '<td class="tdtop">';
     $doleditor = new DolEditor('note_public', GETPOST('note_public', 'alpha'), '', 160, 'dolibarr_notes', 'In', false, true, true, ROWS_6, '90%');
     print $doleditor->Create(1);
     print '</td></tr>';

+ 3 - 3
htdocs/loan/payment/payment.php

@@ -186,7 +186,7 @@ if ($action == 'create')
 		$db->free();
 	}
 	print '<tr><td>'.$langs->trans("AlreadyPaid").'</td><td colspan="2">'.price($sumpaid, 0, $outputlangs, 1, -1, -1, $conf->currency).'</td></tr>';
-	print '<tr><td valign="top">'.$langs->trans("RemainderToPay").'</td><td colspan="2">'.price($total-$sumpaid, 0, $outputlangs, 1, -1, -1, $conf->currency).'</td></tr>';
+	print '<tr><td class="tdtop">'.$langs->trans("RemainderToPay").'</td><td colspan="2">'.price($total-$sumpaid, 0, $outputlangs, 1, -1, -1, $conf->currency).'</td></tr>';
 	print '</tr>';
 
 	print '</table>';
@@ -223,12 +223,12 @@ if ($action == 'create')
 	print '<td colspan="2"><input name="num_payment" type="text" value="'.GETPOST('num_payment').'"></td></tr>'."\n";
 
 	print '<tr>';
-	print '<td valign="top">'.$langs->trans("NotePrivate").'</td>';
+	print '<td class="tdtop">'.$langs->trans("NotePrivate").'</td>';
 	print '<td valign="top" colspan="2"><textarea name="note_private" wrap="soft" cols="60" rows="'.ROWS_3.'"></textarea></td>';
 	print '</tr>';
 
 	print '<tr>';
-	print '<td valign="top">'.$langs->trans("NotePublic").'</td>';
+	print '<td class="tdtop">'.$langs->trans("NotePublic").'</td>';
 	print '<td valign="top" colspan="2"><textarea name="note_public" wrap="soft" cols="60" rows="'.ROWS_3.'"></textarea></td>';
 	print '</tr>';
 

+ 1 - 1
htdocs/product/canvas/product/tpl/card_create.tpl.php

@@ -90,7 +90,7 @@ $statutarray=array('1' => $langs->trans("OnSell"), '0' => $langs->trans("NotOnSe
 <?php echo $object->volume_units; ?>
 </td></tr>
 
-<tr><td valign="top"><?php echo $langs->trans("NoteNotVisibleOnBill"); ?></td><td>
+<tr><td class="tdtop"><?php echo $langs->trans("NoteNotVisibleOnBill"); ?></td><td>
 <?php echo $object->textarea_note; ?>
 </td></tr>
 </table>

+ 1 - 1
htdocs/product/canvas/product/tpl/card_edit.tpl.php

@@ -90,7 +90,7 @@ dol_htmloutput_errors($object->error,$object->errors);
 <?php echo $object->volume_units; ?>
 </td></tr>
 
-<tr><td valign="top"><?php echo $langs->trans("NoteNotVisibleOnBill"); ?></td><td>
+<tr><td class="tdtop"><?php echo $langs->trans("NoteNotVisibleOnBill"); ?></td><td>
 <?php echo $object->textarea_note; ?>
 </td></tr>
 </table>

+ 2 - 2
htdocs/product/canvas/product/tpl/card_view.tpl.php

@@ -53,7 +53,7 @@ $object=$GLOBALS['object'];
 </tr>
 
 <tr>
-<td valign="top"><?php echo $langs->trans("Description"); ?></td>
+<td class="tdtop"><?php echo $langs->trans("Description"); ?></td>
 <td colspan="2"><?php echo $object->description; ?></td>
 </tr>
 
@@ -83,7 +83,7 @@ $object=$GLOBALS['object'];
 </tr>
 
 <tr>
-<td valign="top"><?php echo $langs->trans("Note"); ?></td>
+<td class="tdtop"><?php echo $langs->trans("Note"); ?></td>
 <td colspan="2"><?php echo $object->note; ?></td>
 </tr>
 

+ 1 - 1
htdocs/product/canvas/service/tpl/card_create.tpl.php

@@ -63,7 +63,7 @@ $statutarray=array('1' => $langs->trans("OnSell"), '0' => $langs->trans("NotOnSe
 <?php echo $object->duration_unit; ?>
 </td></tr>
 
-<tr><td valign="top"><?php echo $langs->trans("NoteNotVisibleOnBill"); ?></td><td>
+<tr><td class="tdtop"><?php echo $langs->trans("NoteNotVisibleOnBill"); ?></td><td>
 <?php echo $object->textarea_note; ?>
 </td></tr>
 </table>

+ 1 - 1
htdocs/product/canvas/service/tpl/card_edit.tpl.php

@@ -62,7 +62,7 @@ dol_htmloutput_errors($object->error,$object->errors);
 <?php echo $object->duration_unit; ?>
 </td></tr>
 
-<tr><td valign="top"><?php echo $langs->trans("NoteNotVisibleOnBill"); ?></td><td>
+<tr><td class="tdtop"><?php echo $langs->trans("NoteNotVisibleOnBill"); ?></td><td>
 <?php echo $object->textarea_note; ?>
 </td></tr>
 </table>

+ 2 - 2
htdocs/product/canvas/service/tpl/card_view.tpl.php

@@ -53,7 +53,7 @@ $object=$GLOBALS['object'];
 </tr>
 
 <tr>
-<td valign="top"><?php echo $langs->trans("Description"); ?></td>
+<td class="tdtop"><?php echo $langs->trans("Description"); ?></td>
 <td colspan="2"><?php echo $object->description; ?></td>
 </tr>
 
@@ -63,7 +63,7 @@ $object=$GLOBALS['object'];
 </td></tr>
 
 <tr>
-<td valign="top"><?php echo $langs->trans("Note"); ?></td>
+<td class="tdtop"><?php echo $langs->trans("Note"); ?></td>
 <td colspan="2"><?php echo $object->note; ?></td>
 </tr>
 

+ 3 - 3
htdocs/product/stock/fiche-valo.php

@@ -71,7 +71,7 @@ if ($_GET["id"])
 	print '<tr><td>'.$langs->trans("LocationSummary").'</td><td colspan="3">'.$entrepot->lieu.'</td></tr>';
 
 	// Description
-	print '<tr><td valign="top">'.$langs->trans("Description").'</td><td colspan="3">'.nl2br($entrepot->description).'</td></tr>';
+	print '<tr><td class="tdtop">'.$langs->trans("Description").'</td><td colspan="3">'.nl2br($entrepot->description).'</td></tr>';
 
 	print '<tr><td>'.$langs->trans('Address').'</td><td colspan="3">';
 	print $entrepot->address;
@@ -90,12 +90,12 @@ if ($_GET["id"])
 	$calcproducts=$entrepot->nb_products();
 
 	// Nb of products
-	print '<tr><td valign="top">'.$langs->trans("NumberOfProducts").'</td><td colspan="3">';
+	print '<tr><td class="tdtop">'.$langs->trans("NumberOfProducts").'</td><td colspan="3">';
 	print empty($calcproducts['nb'])?'0':$calcproducts['nb'];
 	print "</td></tr>";
 
 	// Value
-	print '<tr><td valign="top">'.$langs->trans("EstimatedStockValueShort").'</td><td colspan="3">';
+	print '<tr><td class="tdtop">'.$langs->trans("EstimatedStockValueShort").'</td><td colspan="3">';
 	print empty($calcproducts['value'])?'0':$calcproducts['value'];
 	print "</td></tr>";
 

+ 52 - 47
htdocs/product/traduction.php

@@ -187,6 +187,48 @@ $titre=$langs->trans("CardProduct".$object->type);
 $picto=($object->type==Product::TYPE_SERVICE?'service':'product');
 
 
+// Calculate $cnt_trans
+$cnt_trans = 0;
+if (! empty($object->multilangs))
+{
+    foreach ($object->multilangs as $key => $value)
+    {
+        $cnt_trans++;
+    }
+}
+
+
+dol_fiche_head($head, 'translation', $titre, 0, $picto);
+
+$linkback = '<a href="'.DOL_URL_ROOT.'/product/list.php">'.$langs->trans("BackToList").'</a>';
+
+dol_banner_tab($object, 'ref', $linkback, ($user->societe_id?0:1), 'ref', 'ref', '', '', 0, '', '', 1);
+
+dol_fiche_end();
+
+
+
+/* ************************************************************************** */
+/*                                                                            */
+/* Barre d'action                                                             */
+/*                                                                            */
+/* ************************************************************************** */
+
+print "\n<div class=\"tabsAction\">\n";
+
+if ($action == '')
+{
+    if ($user->rights->produit->creer || $user->rights->service->creer)
+    {
+        print '<a class="butAction" href="'.DOL_URL_ROOT.'/product/traduction.php?action=add&id='.$object->id.'">'.$langs->trans("Add").'</a>';
+        if ($cnt_trans > 0) print '<a class="butAction" href="'.DOL_URL_ROOT.'/product/traduction.php?action=edit&id='.$object->id.'">'.$langs->trans("Update").'</a>';
+    }
+}
+
+print "\n</div>\n";
+
+
+
 if ($action == 'edit')
 {
 	//WYSIWYG Editor
@@ -197,12 +239,6 @@ if ($action == 'edit')
 	print '<input type="hidden" name="action" value="vedit">';
 	print '<input type="hidden" name="id" value="'.$object->id.'">';
 
-    dol_fiche_head($head, 'translation', $titre, 0, $picto);
-    
-    $linkback = '<a href="'.DOL_URL_ROOT.'/product/list.php">'.$langs->trans("BackToList").'</a>';
-    
-    dol_banner_tab($object, 'ref', $linkback, ($user->societe_id?0:1), 'ref');
-	
 	if (! empty($object->multilangs))
 	{
 		foreach ($object->multilangs as $key => $value)
@@ -211,14 +247,14 @@ if ($action == 'edit')
 			print "<br>".($s?$s.' ':'')." <b>".$langs->trans('Language_'.$key).":</b> ".'<a href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&action=delete&langtodelete='.$key.'">'.img_delete('', '')."</a><br>";
 		    
 			print '<table class="border" width="100%">';
-			print '<tr><td valign="top" class="titlefieldcreate fieldrequired">'.$langs->trans('Label').'</td><td><input name="libelle-'.$key.'" size="40" value="'.$object->multilangs[$key]["label"].'"></td></tr>';
-			print '<tr><td valign="top">'.$langs->trans('Description').'</td><td>';
+			print '<tr><td class="tdtop titlefieldcreate fieldrequired">'.$langs->trans('Label').'</td><td><input name="libelle-'.$key.'" size="40" value="'.$object->multilangs[$key]["label"].'"></td></tr>';
+			print '<tr><td class="tdtop">'.$langs->trans('Description').'</td><td>';
 			$doleditor = new DolEditor("desc-$key", $object->multilangs[$key]["description"], '', 160, 'dolibarr_notes', '', false, true, $conf->global->FCKEDITOR_ENABLE_PRODUCTDESC, ROWS_3, '90%');
 			$doleditor->Create();
 			print '</td></tr>';
 			if (! empty($conf->global->PRODUCT_USE_OTHER_FIELD_IN_TRANSLATION))
 			{
-                print '<tr><td valign="top">'.$langs->trans('Other').' ('.$langs->trans("NotUsed").')</td><td>';
+                print '<tr><td class="tdtop">'.$langs->trans('Other').' ('.$langs->trans("NotUsed").')</td><td>';
                 $doleditor = new DolEditor("other-$key", $object->multilangs[$key]["other"], '', 160, 'dolibarr_notes', '', false, true, $conf->global->FCKEDITOR_ENABLE_PRODUCTDESC, ROWS_3, '90%');
                 $doleditor->Create();
 			}
@@ -227,8 +263,6 @@ if ($action == 'edit')
 		}
 	}
 
-    dol_fiche_end();
-    
 	print '<div class="center">';
 	print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
 	print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
@@ -238,23 +272,14 @@ if ($action == 'edit')
 	print '</form>';
 
 }
-else
+else if ($action != 'add')
 {
-    dol_fiche_head($head, 'translation', $titre, 0, $picto);
-    
-    $linkback = '<a href="'.DOL_URL_ROOT.'/product/list.php">'.$langs->trans("BackToList").'</a>';
+    if ($cnt_trans) print '<div class="underbanner clearboth"></div>';
     
-    dol_banner_tab($object, 'ref', $linkback, ($user->societe_id?0:1), 'ref');
-    
-    print '<div class="underbanner clearboth"></div>';
-    
-    
-    $cnt_trans = 0;
 	if (! empty($object->multilangs))
 	{
 		foreach ($object->multilangs as $key => $value)
 		{
-			$cnt_trans++;
 			$s=picto_from_langcode($key);
 			print '<table class="border" width="100%">';
 			print '<tr class="liste_titre"><td colspan="2">'.($s?$s.' ':'')." <b>".$langs->trans('Language_'.$key).":</b> ".'<a href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&action=delete&langtodelete='.$key.'">'.img_delete('', '').'</a></td></tr>';
@@ -267,29 +292,9 @@ else
 			print '</table>';
 		}
 	}
-	if (! $cnt_trans) print '<br>'. $langs->trans('NoTranslation');
-
-	dol_fiche_end();
-}
-
-
-
-/* ************************************************************************** */
-/*                                                                            */
-/* Barre d'action                                                             */
-/*                                                                            */
-/* ************************************************************************** */
-
-print "\n<div class=\"tabsAction\">\n";
-
-if ($action == '')
-if ($user->rights->produit->creer || $user->rights->service->creer)
-{
-	print '<a class="butAction" href="'.DOL_URL_ROOT.'/product/traduction.php?action=add&id='.$object->id.'">'.$langs->trans("Add").'</a>';
-	print '<a class="butAction" href="'.DOL_URL_ROOT.'/product/traduction.php?action=edit&id='.$object->id.'">'.$langs->trans("Update").'</a>';
+	if (! $cnt_trans && $action != 'add') print '<div class="opacitymedium">'. $langs->trans('NoTranslation').'</div>';
 }
 
-print "\n</div>\n";
 
 
 /*
@@ -308,18 +313,18 @@ if ($action == 'add' && ($user->rights->produit->creer || $user->rights->service
 	print '<input type="hidden" name="id" value="'.GETPOST("id",'int').'">';
 
 	print '<table class="border" width="100%">';
-	print '<tr><td valign="top" class="titlefieldcreate fieldrequired">'.$langs->trans('Language').'</td><td>';
+	print '<tr><td class="tdtop titlefieldcreate fieldrequired">'.$langs->trans('Language').'</td><td>';
     print $formadmin->select_language('','forcelangprod',0,$object->multilangs,1);
 	print '</td></tr>';
-	print '<tr><td valign="top" class="fieldrequired">'.$langs->trans('Label').'</td><td><input name="libelle" size="40"></td></tr>';
-	print '<tr><td valign="top">'.$langs->trans('Description').'</td><td>';
+	print '<tr><td class="tdtop fieldrequired">'.$langs->trans('Label').'</td><td><input name="libelle" size="40"></td></tr>';
+	print '<tr><td class="tdtop">'.$langs->trans('Description').'</td><td>';
 	$doleditor = new DolEditor('desc', '', '', 160, 'dolibarr_notes', '', false, true, $conf->global->FCKEDITOR_ENABLE_PRODUCTDESC, ROWS_3, '90%');
 	$doleditor->Create();
 	print '</td></tr>';
     // Other field (not used)
     if (! empty($conf->global->PRODUCT_USE_OTHER_FIELD_IN_TRANSLATION))
     {
-        print '<tr><td valign="top">'.$langs->trans('Other').' ('.$langs->trans("NotUsed").'</td><td>';
+        print '<tr><td class="tdtop">'.$langs->trans('Other').' ('.$langs->trans("NotUsed").'</td><td>';
     	$doleditor = new DolEditor('other', '', '', 160, 'dolibarr_notes', '', false, true, $conf->global->FCKEDITOR_ENABLE_PRODUCTDESC, ROWS_3, '90%');
     	$doleditor->Create();
     	print '</td></tr>';

+ 1 - 1
htdocs/projet/card.php

@@ -766,7 +766,7 @@ elseif ($object->id > 0)
 	    print '</tr>';
 
 	    // Description
-        print '<tr><td valign="top">'.$langs->trans("Description").'</td>';
+        print '<tr><td class="tdtop">'.$langs->trans("Description").'</td>';
         print '<td>';
         print '<textarea name="description" wrap="soft" class="centpercent" rows="'.ROWS_3.'">'.$object->description.'</textarea>';
         print '</td></tr>';

+ 1 - 1
htdocs/projet/tasks.php

@@ -392,7 +392,7 @@ if ($action == 'create' && $user->rights->projet->creer && (empty($object->third
 	print '</td></tr>';
 
 	// Description
-	print '<tr><td valign="top">'.$langs->trans("Description").'</td>';
+	print '<tr><td class="tdtop">'.$langs->trans("Description").'</td>';
 	print '<td>';
 	print '<textarea name="description" wrap="soft" cols="80" rows="'.ROWS_3.'">'.$description.'</textarea>';
 	print '</td></tr>';

+ 2 - 2
htdocs/projet/tasks/task.php

@@ -398,7 +398,7 @@ if ($id > 0 || ! empty($ref))
 			print '</td></tr>';
 
 			// Description
-			print '<tr><td valign="top">'.$langs->trans("Description").'</td>';
+			print '<tr><td class="tdtop">'.$langs->trans("Description").'</td>';
 			print '<td>';
 			print '<textarea name="description" wrap="soft" cols="80" rows="'.ROWS_3.'">'.$object->description.'</textarea>';
 			print '</td></tr>';
@@ -509,7 +509,7 @@ if ($id > 0 || ! empty($ref))
 			print '</td></tr>';
 
 			// Description
-			print '<td valign="top">'.$langs->trans("Description").'</td><td colspan="3">';
+			print '<td class="tdtop">'.$langs->trans("Description").'</td><td colspan="3">';
 			print nl2br($object->description);
 			print '</td></tr>';
 

+ 2 - 2
htdocs/public/members/new.php

@@ -518,8 +518,8 @@ foreach($extrafields->attribute_label as $key=>$value)
 }
 // Comments
 print '<tr>';
-print '<td valign="top">'.$langs->trans("Comments").'</td>';
-print '<td valign="top"><textarea name="note_private" id="note_private" wrap="soft" class="quatrevingtpercent" rows="'.ROWS_3.'">'.dol_escape_htmltag(GETPOST('note_private')).'</textarea></td>';
+print '<td class="tdtop">'.$langs->trans("Comments").'</td>';
+print '<td class="tdtop"><textarea name="note_private" id="note_private" wrap="soft" class="quatrevingtpercent" rows="'.ROWS_3.'">'.dol_escape_htmltag(GETPOST('note_private')).'</textarea></td>';
 print '</tr>'."\n";
 
 // Add specific fields used by Dolibarr foundation for example

+ 1 - 1
htdocs/public/members/public_card.php

@@ -111,7 +111,7 @@ if ($id > 0)
 		//    print "<tr><td>$value</td><td>".$object->array_options["options_$key"]."&nbsp;</td></tr>\n";
 		//  }
 
-		print '<tr><td valign="top">'.$langs->trans("Comments").'</td><td>'.nl2br($object->note_public).'</td></tr>';
+		print '<tr><td class="tdtop">'.$langs->trans("Comments").'</td><td>'.nl2br($object->note_public).'</td></tr>';
 
 		print '</table>';
 	}

+ 1 - 1
htdocs/societe/canvas/company/tpl/card_create.tpl.php

@@ -104,7 +104,7 @@
 <?php } ?>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans('Address'); ?></td>
+	<td class="tdtop"><?php echo $langs->trans('Address'); ?></td>
 	<td colspan="3"><textarea name="adress" cols="40" rows="3"><?php echo $this->control->tpl['address']; ?></textarea></td>
 </tr>
 

+ 1 - 1
htdocs/societe/canvas/company/tpl/card_edit.tpl.php

@@ -119,7 +119,7 @@ if ($this->control->tpl['fournisseur']) {
 <?php } ?>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans('Address'); ?></td>
+	<td class="tdtop"><?php echo $langs->trans('Address'); ?></td>
 	<td colspan="3"><textarea name="adress" cols="40" rows="3"><?php echo $this->control->tpl['address']; ?></textarea></td>
 </tr>
 

+ 1 - 1
htdocs/societe/canvas/company/tpl/card_view.tpl.php

@@ -77,7 +77,7 @@ dol_fiche_head($head, 'card', $langs->trans("ThirdParty"),0,'company');
 <?php } ?>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans('Address'); ?></td>
+	<td class="tdtop"><?php echo $langs->trans('Address'); ?></td>
 	<td colspan="3"><?php echo $this->control->tpl['address']; ?></td>
 </tr>
 

+ 1 - 1
htdocs/societe/canvas/individual/tpl/card_create.tpl.php

@@ -114,7 +114,7 @@
 <?php } ?>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans('Address'); ?></td>
+	<td class="tdtop"><?php echo $langs->trans('Address'); ?></td>
 	<td colspan="3"><textarea name="adresse" cols="40" rows="3"><?php echo $this->control->tpl['address']; ?></textarea></td>
 </tr>
 

+ 1 - 1
htdocs/societe/canvas/individual/tpl/card_edit.tpl.php

@@ -116,7 +116,7 @@ if ($this->control->tpl['fournisseur']) {
 <?php } ?>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans('Address'); ?></td>
+	<td class="tdtop"><?php echo $langs->trans('Address'); ?></td>
 	<td colspan="3"><textarea name="adresse" cols="40" rows="3"><?php echo $this->control->tpl['address']; ?></textarea></td>
 </tr>
 

+ 1 - 1
htdocs/societe/canvas/individual/tpl/card_view.tpl.php

@@ -76,7 +76,7 @@ dol_fiche_head($head, 'card', $langs->trans("ThirdParty"),0,'company');
 <?php } ?>
 
 <tr>
-	<td valign="top"><?php echo $langs->trans('Address'); ?></td>
+	<td class="tdtop"><?php echo $langs->trans('Address'); ?></td>
 	<td colspan="3"><?php echo $this->control->tpl['address']; ?></td>
 </tr>
 

+ 2 - 2
htdocs/supplier_proposal/card.php

@@ -1132,7 +1132,7 @@ if ($action == 'create')
 			$projectid = ($originid ? $originid : 0);
 
 		print '<tr>';
-		print '<td valign="top">' . $langs->trans("Project") . '</td><td colspan="2">';
+		print '<td class="tdtop">' . $langs->trans("Project") . '</td><td colspan="2">';
 
 		$numprojet = $formproject->select_projects($soc->id, $projectid);
 		if ($numprojet == 0) {
@@ -1243,7 +1243,7 @@ if ($action == 'create')
 		}
 		print '</td></tr>';
 
-		print '<tr><td valign="top"><input type="radio" name="createmode" value="empty" checked></td>';
+		print '<tr><td class="tdtop"><input type="radio" name="createmode" value="empty" checked></td>';
 		print '<td valign="top" colspan="2">' . $langs->trans("CreateEmptyAsk") . '</td></tr>';
 	}
 

+ 10 - 10
htdocs/user/bank.php

@@ -165,7 +165,7 @@ if ($id && $action != 'edit')
 		print '</tr>';
 	}
 
-	print '<tr><td valign="top">'.$langs->trans("IBAN").'</td>';
+	print '<tr><td class="tdtop">'.$langs->trans("IBAN").'</td>';
 	print '<td colspan="4">'.$account->iban . '&nbsp;';
     if (! empty($account->iban)) {
         if (! checkIbanForAccount($account)) {
@@ -176,7 +176,7 @@ if ($id && $action != 'edit')
     }
     print '</td></tr>';
 
-	print '<tr><td valign="top">'.$langs->trans("BIC").'</td>';
+	print '<tr><td class="tdtop">'.$langs->trans("BIC").'</td>';
 	print '<td colspan="4">'.$account->bic.'&nbsp;';
     if (! empty($account->bic)) {
         if (! checkSwiftForAccount($account)) {
@@ -187,15 +187,15 @@ if ($id && $action != 'edit')
     }
     print '</td></tr>';
 
-	print '<tr><td valign="top">'.$langs->trans("BankAccountDomiciliation").'</td><td colspan="4">';
+	print '<tr><td class="tdtop">'.$langs->trans("BankAccountDomiciliation").'</td><td colspan="4">';
 	print $account->domiciliation;
 	print "</td></tr>\n";
 
-	print '<tr><td valign="top">'.$langs->trans("BankAccountOwner").'</td><td colspan="4">';
+	print '<tr><td class="tdtop">'.$langs->trans("BankAccountOwner").'</td><td colspan="4">';
 	print $account->proprio;
 	print "</td></tr>\n";
 
-	print '<tr><td valign="top">'.$langs->trans("BankAccountOwnerAddress").'</td><td colspan="4">';
+	print '<tr><td class="tdtop">'.$langs->trans("BankAccountOwnerAddress").'</td><td colspan="4">';
 	print $account->owner_address;
 	print "</td></tr>\n";
 
@@ -271,22 +271,22 @@ if ($id && $action == 'edit' && $user->rights->user->user->creer)
 	}
 
     // IBAN
-    print '<tr><td valign="top" class="fieldrequired">'.$langs->trans("IBAN").'</td>';
+    print '<tr><td class="tdtop fieldrequired">'.$langs->trans("IBAN").'</td>';
     print '<td colspan="4"><input size="30" type="text" name="iban" value="'.$account->iban.'"></td></tr>';
 
-    print '<tr><td valign="top" class="fieldrequired">'.$langs->trans("BIC").'</td>';
+    print '<tr><td class="tdtop fieldrequired">'.$langs->trans("BIC").'</td>';
     print '<td colspan="4"><input size="12" type="text" name="bic" value="'.$account->bic.'"></td></tr>';
 
-    print '<tr><td valign="top">'.$langs->trans("BankAccountDomiciliation").'</td><td colspan="4">';
+    print '<tr><td class="tdtop">'.$langs->trans("BankAccountDomiciliation").'</td><td colspan="4">';
     print '<textarea name="domiciliation" rows="4" cols="40">';
     print $account->domiciliation;
     print "</textarea></td></tr>";
 
-    print '<tr><td valign="top">'.$langs->trans("BankAccountOwner").'</td>';
+    print '<tr><td class="tdtop">'.$langs->trans("BankAccountOwner").'</td>';
     print '<td colspan="4"><input size="30" type="text" name="proprio" value="'.$account->proprio.'"></td></tr>';
     print "</td></tr>\n";
 
-    print '<tr><td valign="top">'.$langs->trans("BankAccountOwnerAddress").'</td><td colspan="4">';
+    print '<tr><td class="tdtop">'.$langs->trans("BankAccountOwnerAddress").'</td><td colspan="4">';
     print "<textarea name=\"owner_address\" rows=\"4\" cols=\"40\">";
     print $account->owner_address;
     print "</textarea></td></tr>";

+ 4 - 4
htdocs/user/group/card.php

@@ -244,7 +244,7 @@ if ($action == 'create')
 	{
 		if (empty($conf->multicompany->transverse_mode) && $conf->entity == 1 && $user->admin && ! $user->entity)
 		{
-			print "<tr>".'<td valign="top">'.$langs->trans("Entity").'</td>';
+			print "<tr>".'<td class="tdtop">'.$langs->trans("Entity").'</td>';
 			print "<td>".$mc->select_entities($conf->entity);
 			print "</td></tr>\n";
 		}
@@ -330,7 +330,7 @@ else
 			if (! empty($conf->multicompany->enabled) && is_object($mc) && empty($conf->multicompany->transverse_mode) && $conf->entity == 1 && $user->admin && ! $user->entity)
 			{
 				$mc->getInfo($object->entity);
-				print "<tr>".'<td valign="top">'.$langs->trans("Entity").'</td>';
+				print "<tr>".'<td class="tdtop">'.$langs->trans("Entity").'</td>';
 				print '<td width="75%" class="valeur">'.$mc->label;
 				print "</td></tr>\n";
 			}
@@ -406,7 +406,7 @@ else
                 {
                     if ($conf->entity == 1 && $conf->multicompany->transverse_mode)
                     {
-                        print '</td><td valign="top">'.$langs->trans("Entity").'</td>';
+                        print '</td><td class="tdtop">'.$langs->trans("Entity").'</td>';
                         print "<td>".$mc->select_entities($conf->entity);
                     }
                     else
@@ -518,7 +518,7 @@ else
             {
                 if (empty($conf->multicompany->transverse_mode) && $conf->entity == 1 && $user->admin && ! $user->entity)
                 {
-                    print "<tr>".'<td valign="top">'.$langs->trans("Entity").'</td>';
+                    print "<tr>".'<td class="tdtop">'.$langs->trans("Entity").'</td>';
                     print "<td>".$mc->select_entities($object->entity);
                     print "</td></tr>\n";
                 }

+ 1 - 1
htdocs/websites/index.php

@@ -867,7 +867,7 @@ if ($action == 'editcss')
     print $website;
     print '</td></tr>';
 
-    print '<tr><td valign="top">';
+    print '<tr><td class="tdtop">';
     print $langs->trans('WEBSITE_CSS_INLINE');
     print '</td><td>';
     print '<textarea class="flat centpercent" rows="32" name="WEBSITE_CSS_INLINE">';