浏览代码

Merge remote-tracking branch 'origin/3.3' into develop

Conflicts:
	htdocs/.gitignore
Laurent Destailleur 12 年之前
父节点
当前提交
142f171e50

+ 2 - 2
ChangeLog

@@ -76,14 +76,14 @@ New experimental modules:
 
 
 - Fix: [ bug #499 ] Supplier order input method not translated
-- Fix: No images into product description lines as PDF generation does
-  not work with this.
+- Fix: No images into product description lines as PDF generation does not work with this.
 - Fix: Errors weren't being shown in customer's & supplier's orders
 - Fix: Lastname wasn't being recorded in xinputuser emailing module.
 - Fix: [ bug #653 ] Error while creating agenda additional attributes
 - Fix: [ bug #654 ] Event rapport PDF showing ActionAC_OTH_AUTO
 - Fix: [ bug #658 ] Search on bank do not work for description
 - Fix: [ bug #659 ] Comment in recurrent invoices is not stored
+- Fix: [ bug #622 ] Attaching wrong file when sending the invoice via e-mail
 
 For developers:
 - New: Add webservice for thirdparty creation and list.

+ 1 - 0
htdocs/.gitignore

@@ -5,3 +5,4 @@
 /ovh
 /numberingpack
 /google
+/skincoloreditor

+ 3 - 4
htdocs/comm/action/class/actioncomm.class.php

@@ -541,7 +541,7 @@ class ActionComm extends CommonObject
      * 	 @param		int		$fk_element		Id of element action is linked to
      *   @param		string	$elementtype	Type of element action is linked to
      *   @param		string	$filter			Other filter
-     *   @return	array					<0 if KO, array with actions
+     *   @return	array or string			Error string if KO, array with actions if OK
      */
     static function getActions($db, $socid=0, $fk_element=0, $elementtype='', $filter='')
     {
@@ -580,9 +580,8 @@ class ActionComm extends CommonObject
             return $resarray;
         }
         else
-        {
-            $this->error=$db->lasterror();
-            return -1;
+       {
+            return $db->lasterror();
         }
     }
 

+ 2 - 2
htdocs/comm/propal.php

@@ -1817,7 +1817,7 @@ if ($action == 'presend')
 {
 	$ref = dol_sanitizeFileName($object->ref);
     include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
-    $fileparams = dol_most_recent_file($conf->propal->dir_output . '/' . $ref);
+    $fileparams = dol_most_recent_file($conf->propal->dir_output . '/' . $ref, preg_quote($object->ref,'/'));
     $file=$fileparams['fullname'];
 
     // Build document if it not exists
@@ -1840,7 +1840,7 @@ if ($action == 'presend')
             dol_print_error($db,$result);
             exit;
         }
-        $fileparams = dol_most_recent_file($conf->propal->dir_output . '/' . $ref);
+        $fileparams = dol_most_recent_file($conf->propal->dir_output . '/' . $ref, preg_quote($object->ref,'/'));
         $file=$fileparams['fullname'];
     }
 

+ 26 - 26
htdocs/commande/fiche.php

@@ -204,14 +204,14 @@ else if ($action == 'add' && $user->rights->commande->creer)
 		$action='create';
 		$error++;
 	}
-	
+
 	if (! $error)
 	{
 		$object->socid=$socid;
 		$object->fetch_thirdparty();
-	
+
 		$db->begin();
-	
+
 		$object->date_commande        = $datecommande;
 		$object->note                 = GETPOST('note');
 		$object->note_public          = GETPOST('note_public');
@@ -226,7 +226,7 @@ else if ($action == 'add' && $user->rights->commande->creer)
 		$object->date_livraison       = $datelivraison;
 		$object->fk_delivery_address  = GETPOST('fk_address');
 		$object->contactid            = GETPOST('contactidp');
-	
+
 		// If creation from another object of another module (Example: origin=propal, originid=1)
 		if (! empty($origin) && ! empty($originid))
 		{
@@ -237,7 +237,7 @@ else if ($action == 'add' && $user->rights->commande->creer)
 				$element = $regs[1];
 				$subelement = $regs[2];
 			}
-	
+
 			// For compatibility
 			if ($element == 'order')    {
 				$element = $subelement = 'commande';
@@ -248,10 +248,10 @@ else if ($action == 'add' && $user->rights->commande->creer)
 			if ($element == 'contract') {
 				$element = $subelement = 'contrat';
 			}
-	
+
 			$object->origin    = $origin;
 			$object->origin_id = $originid;
-	
+
 			// Possibility to add external linked objects with hooks
 			$object->linked_objects[$object->origin] = $object->origin_id;
 			$other_linked_objects=GETPOST('other_linked_objects','array');
@@ -259,32 +259,32 @@ else if ($action == 'add' && $user->rights->commande->creer)
 			{
 				$object->linked_objects = array_merge($object->linked_objects, $other_linked_objects);
 			}
-	
+
 			$object_id = $object->create($user);
-	
+
 			if ($object_id > 0)
 			{
 				dol_include_once('/'.$element.'/class/'.$subelement.'.class.php');
-	
+
 				$classname = ucfirst($subelement);
 				$srcobject = new $classname($db);
-	
+
 				dol_syslog("Try to find source object origin=".$object->origin." originid=".$object->origin_id." to add lines");
 				$result=$srcobject->fetch($object->origin_id);
 				if ($result > 0)
 				{
 					$lines = $srcobject->lines;
 					if (empty($lines) && method_exists($srcobject,'fetch_lines'))  $lines = $srcobject->fetch_lines();
-	
+
 					$fk_parent_line=0;
 					$num=count($lines);
-	
+
 					for ($i=0;$i<$num;$i++)
 					{
 						$label=(! empty($lines[$i]->label)?$lines[$i]->label:'');
 						$desc=(! empty($lines[$i]->desc)?$lines[$i]->desc:$lines[$i]->libelle);
 						$product_type=(! empty($lines[$i]->product_type)?$lines[$i]->product_type:0);
-	
+
 						// Dates
 						// TODO mutualiser
 						$date_start=$lines[$i]->date_debut_prevue;
@@ -293,12 +293,12 @@ else if ($action == 'add' && $user->rights->commande->creer)
 						$date_end=$lines[$i]->date_fin_prevue;
 						if ($lines[$i]->date_fin_reel) $date_end=$lines[$i]->date_fin_reel;
 						if ($lines[$i]->date_end) $date_end=$lines[$i]->date_end;
-	
+
 						// Reset fk_parent_line for no child products and special product
 						if (($lines[$i]->product_type != 9 && empty($lines[$i]->fk_parent_line)) || $lines[$i]->product_type == 9) {
 							$fk_parent_line = 0;
 						}
-	
+
 						$result = $object->addline(
 							$object_id,
 							$desc,
@@ -323,19 +323,19 @@ else if ($action == 'add' && $user->rights->commande->creer)
 							$lines[$i]->pa_ht,
 							$label
 						);
-	
+
 						if ($result < 0)
 						{
 							$error++;
 							break;
 						}
-	
+
 						// Defined the new fk_parent_line
 						if ($result > 0 && $lines[$i]->product_type == 9) {
 							$fk_parent_line = $result;
 						}
 					}
-	
+
 					// Hooks
 					$parameters=array('objFrom'=>$srcobject);
 					$reshook=$hookmanager->executeHooks('createFrom',$parameters,$object,$action);    // Note that $action and $object may have been modified by hook
@@ -356,7 +356,7 @@ else if ($action == 'add' && $user->rights->commande->creer)
 		else
 		{
 			$object_id = $object->create($user);
-	
+
 			// If some invoice's lines already known
 			$NBLINES=8;
 			for ($i = 1 ; $i <= $NBLINES ; $i++)
@@ -370,7 +370,7 @@ else if ($action == 'add' && $user->rights->commande->creer)
 				}
 			}
 		}
-	
+
 		// Insert default contacts if defined
 		if ($object_id > 0)
 		{
@@ -383,11 +383,11 @@ else if ($action == 'add' && $user->rights->commande->creer)
 					$error++;
 				}
 			}
-	
+
 			$id = $object_id;
 			$action = '';
 		}
-	
+
 		// End of object creation, we show it
 		if ($object_id > 0 && ! $error)
 		{
@@ -1405,7 +1405,7 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G
 				$dateinvoice		= empty($conf->global->MAIN_AUTOFILL_DATE)?-1:0;
 
 				$datedelivery		= (!empty($objectsrc->date_livraison)?$objectsrc->date_livraison:'');
-				
+
 				$note_private		= (! empty($objectsrc->note) ? $objectsrc->note : (! empty($objectsrc->note_private) ? $objectsrc->note_private : ''));
 				$note_public		= (! empty($objectsrc->note_public) ? $objectsrc->note_public : '');
 
@@ -2347,7 +2347,7 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G
 			{
 				$ref = dol_sanitizeFileName($object->ref);
 				include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
-				$fileparams = dol_most_recent_file($conf->commande->dir_output . '/' . $ref);
+				$fileparams = dol_most_recent_file($conf->commande->dir_output . '/' . $ref, preg_quote($object->ref,'/'));
 				$file=$fileparams['fullname'];
 
 				// Build document if it not exists
@@ -2370,7 +2370,7 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G
 						dol_print_error($db,$result);
 						exit;
 					}
-					$fileparams = dol_most_recent_file($conf->commande->dir_output . '/' . $ref);
+					$fileparams = dol_most_recent_file($conf->commande->dir_output . '/' . $ref, preg_quote($object->ref,'/'));
 					$file=$fileparams['fullname'];
 				}
 

+ 3 - 3
htdocs/compta/facture.php

@@ -2689,7 +2689,7 @@ else if ($id > 0 || ! empty($ref))
         {
             $num = $db->num_rows($result);
             $i = 0;
-			
+
 			//if ($object->type != 2)
             //{
                 if ($num > 0)
@@ -3343,7 +3343,7 @@ else if ($id > 0 || ! empty($ref))
 
             $ref = dol_sanitizeFileName($object->ref);
             include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
-            $fileparams = dol_most_recent_file($conf->facture->dir_output . '/' . $ref);
+            $fileparams = dol_most_recent_file($conf->facture->dir_output . '/' . $ref, preg_quote($object->ref,'/'));
             $file=$fileparams['fullname'];
 
             // Build document if it not exists
@@ -3366,7 +3366,7 @@ else if ($id > 0 || ! empty($ref))
                     dol_print_error($db,$result);
                     exit;
                 }
-                $fileparams = dol_most_recent_file($conf->facture->dir_output . '/' . $ref);
+                $fileparams = dol_most_recent_file($conf->facture->dir_output . '/' . $ref, preg_quote($object->ref,'/'));
                 $file=$fileparams['fullname'];
             }
 

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

@@ -145,7 +145,7 @@ class FormActions
         require_once DOL_DOCUMENT_ROOT.'/comm/action/class/actioncomm.class.php';
 
         $listofactions=ActionComm::getActions($this->db, $socid, $object->id, $typeelement);
-		if (is_numeric($listofactions) && $listofactions < 0) dol_print_error($this->db,'FailedToGetActions');
+		if (! is_array($listofactions)) dol_print_error($this->db,'FailedToGetActions');
 
         $num = count($listofactions);
         if ($num)

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

@@ -378,7 +378,7 @@ class FormFile
             $out.= '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
 
             $out.= '<div class="titre">'.$titletoshow.'</div>';
-            $out.= '<table class="liste formdoc" summary="listofdocumentstable" width="100%">';
+            $out.= '<table class="liste formdoc noborder" summary="listofdocumentstable" width="100%">';
 
             $out.= '<tr class="liste_titre">';
 

+ 2 - 2
htdocs/core/lib/files.lib.php

@@ -140,7 +140,7 @@ function dol_dir_list($path, $types="all", $recursive=0, $filter="", $excludefil
 							if ($loaddate || $sortcriteria == 'date') $filedate=dol_filemtime($path."/".$file);
 							if ($loadsize || $sortcriteria == 'size') $filesize=dol_filesize($path."/".$file);
 
-							if (! $filter || preg_match('/'.$filter.'/i',$path.'/'.$file))
+							if (! $filter || preg_match('/'.$filter.'/i',$file))	// We do not search key $filter into $path, only into $file
 							{
 								$file_list[] = array(
 										"name" => $file,
@@ -164,7 +164,7 @@ function dol_dir_list($path, $types="all", $recursive=0, $filter="", $excludefil
 						if ($loaddate || $sortcriteria == 'date') $filedate=dol_filemtime($path."/".$file);
 						if ($loadsize || $sortcriteria == 'size') $filesize=dol_filesize($path."/".$file);
 
-						if (! $filter || preg_match('/'.$filter.'/i',$path.'/'.$file))
+						if (! $filter || preg_match('/'.$filter.'/i',$file))	// We do not search key $filter into $path, only into $file
 						{
 							$file_list[] = array(
 									"name" => $file,

+ 3 - 2
htdocs/core/lib/usergroups.lib.php

@@ -229,8 +229,9 @@ function show_theme($fuser,$edit=0,$foruserprofile=false)
     	$dirthemes=array_merge(array($forcethemedir.'/theme'),(array) $conf->modules_parts['themes']);
     }
 
-    $selected_theme=$conf->global->MAIN_THEME;
-    if (! empty($fuser->conf->MAIN_THEME)) $selected_theme=$fuser->conf->MAIN_THEME;
+    $selected_theme='';
+    if (empty($foruserprofile)) $selected_theme=$conf->global->MAIN_THEME;
+    else $selected_theme=empty($fuser->conf->MAIN_THEME)?'':$fuser->conf->MAIN_THEME;
 
     $colspan=2;
     if ($foruserprofile) $colspan=4;

+ 2 - 2
htdocs/expedition/fiche.php

@@ -1407,7 +1407,7 @@ else
         {
             $ref = dol_sanitizeFileName($object->ref);
             include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
-            $fileparams = dol_most_recent_file($conf->expedition->dir_output . '/sending/' . $ref);
+            $fileparams = dol_most_recent_file($conf->expedition->dir_output . '/sending/' . $ref, preg_quote($object->ref,'/'));
             $file=$fileparams['fullname'];
 
             // Build document if it not exists
@@ -1430,7 +1430,7 @@ else
                     dol_print_error($db,$result);
                     exit;
                 }
-                $fileparams = dol_most_recent_file($conf->expedition->dir_output . '/sending/' . $ref);
+                $fileparams = dol_most_recent_file($conf->expedition->dir_output . '/sending/' . $ref, preg_quote($object->ref,'/'));
                 $file=$fileparams['fullname'];
             }
 

+ 2 - 2
htdocs/fichinter/fiche.php

@@ -1451,7 +1451,7 @@ else if ($id > 0 || ! empty($ref))
     {
         $ref = dol_sanitizeFileName($object->ref);
         include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
-        $fileparams = dol_most_recent_file($conf->ficheinter->dir_output . '/' . $ref);
+        $fileparams = dol_most_recent_file($conf->ficheinter->dir_output . '/' . $ref, preg_quote($object->ref,'/'));
         $file=$fileparams['fullname'];
 
         // Build document if it not exists
@@ -1474,7 +1474,7 @@ else if ($id > 0 || ! empty($ref))
                 dol_print_error($db,$result);
                 exit;
             }
-            $fileparams = dol_most_recent_file($conf->ficheinter->dir_output . '/' . $ref);
+            $fileparams = dol_most_recent_file($conf->ficheinter->dir_output . '/' . $ref, preg_quote($object->ref,'/'));
             $file=$fileparams['fullname'];
         }
 

+ 4 - 4
htdocs/fourn/commande/fiche.php

@@ -1071,7 +1071,7 @@ if (! empty($object->id))
 		if($mysoc->localtax1_assuj=="1") $nbrow++;
 		if($object->thirdparty->localtax2_assuj=="1") $nbrow++;
 	}
-	else 
+	else
 	{
 		if($mysoc->localtax1_assuj=="1") $nbrow++;
 		if($mysoc->localtax2_assuj=="1") $nbrow++;
@@ -1245,7 +1245,7 @@ if (! empty($object->id))
 			print '<td>'.$langs->trans("Currency".$conf->currency).'</td></tr>';
 		}
 	}
-	else 
+	else
 	{
 		if ($mysoc->localtax1_assuj=="1") //Localtax1
 		{
@@ -1781,7 +1781,7 @@ if (! empty($object->id))
 	{
 		$ref = dol_sanitizeFileName($object->ref);
 		include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
-		$fileparams = dol_most_recent_file($conf->fournisseur->commande->dir_output . '/' . $ref);
+		$fileparams = dol_most_recent_file($conf->fournisseur->commande->dir_output . '/' . $ref, preg_quote($object->ref,'/'));
 		$file=$fileparams['fullname'];
 
 		// Build document if it not exists
@@ -1804,7 +1804,7 @@ if (! empty($object->id))
 				dol_print_error($db,$result);
 				exit;
 			}
-			$fileparams = dol_most_recent_file($conf->fournisseur->commande->dir_output . '/' . $ref);
+			$fileparams = dol_most_recent_file($conf->fournisseur->commande->dir_output . '/' . $ref, preg_quote($object->ref,'/'));
 			$file=$fileparams['fullname'];
 		}
 

+ 2 - 2
htdocs/fourn/facture/fiche.php

@@ -2036,7 +2036,7 @@ else
         {
             $ref = dol_sanitizeFileName($object->ref);
             include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
-            $fileparams = dol_most_recent_file($conf->fournisseur->facture->dir_output.'/'.get_exdir($object->id,2).$ref);
+            $fileparams = dol_most_recent_file($conf->fournisseur->facture->dir_output.'/'.get_exdir($object->id,2).$ref, preg_quote($object->ref,'/'));
             $file=$fileparams['fullname'];
 
             // Build document if it not exists
@@ -2059,7 +2059,7 @@ else
                     dol_print_error($db,$result);
                     exit;
                 }
-                $fileparams = dol_most_recent_file($conf->fournisseur->facture->dir_output.'/'.get_exdir($object->id,2).$ref);
+                $fileparams = dol_most_recent_file($conf->fournisseur->facture->dir_output.'/'.get_exdir($object->id,2).$ref, preg_quote($object->ref,'/'));
                 $file=$fileparams['fullname'];
             }
 

+ 1 - 1
htdocs/install/etape5.php

@@ -338,7 +338,7 @@ if ($action == "set")
 
         print $langs->trans("YouNeedToPersonalizeSetup")."<br><br>";
 
-        print '<center><a href="../admin/company.php?mainmenu=home&leftmenu=setup'.(isset($_POST["login"])?'&username='.urlencode($_POST["login"]):'').'">';
+        print '<center><a href="../admin/index.php?mainmenu=home&leftmenu=setup'.(isset($_POST["login"])?'&username='.urlencode($_POST["login"]):'').'">';
         print $langs->trans("GoToSetupArea");
         print '</a></center>';
     }

+ 5 - 5
htdocs/theme/amarok/graph-color.php

@@ -22,10 +22,10 @@
  *      \ingroup    core
  */
 
-global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet;
-$theme_bordercolor = array(235,235,224);
-$theme_datacolor = array(array(101,191,112), array(164,206,230), array(248,128,128), array(252,245,184), array(190,190,190));
-$theme_bgcolor = array(hexdec('F4'),hexdec('F4'),hexdec('F4'));
-$theme_bgcoloronglet = array(hexdec('DE'),hexdec('E7'),hexdec('EC'));
+global $theme_bordercolor, $theme_datacolor, $theme_bgcolor, $theme_bgcoloronglet;
+$theme_bordercolor = array(235,235,224);
+$theme_datacolor = array(array(125,135,150), array(200,160,180), array(190,190,220), array(170,140,190), array(190,190,170));
+$theme_bgcolor = array(hexdec('F4'),hexdec('F4'),hexdec('F4'));
+$theme_bgcoloronglet = array(hexdec('DE'),hexdec('E7'),hexdec('EC'));
 
 ?>

二进制
htdocs/theme/amarok/img/object_holiday.png


二进制
htdocs/theme/amarok/img/vmenu.png


+ 18 - 24
htdocs/theme/amarok/style.css.php

@@ -303,23 +303,6 @@ td.showDragHandle {cursor:move;}
 .tdlineupdown {white-space:nowrap;}
 
 
-/* ============================================================================== */
-/* Styles de positionnement des zones                                             */
-/* ============================================================================== */
-
-td.vmenu {
-	<?php if (GETPOST("optioncss") != 'print') {?>
-    margin-right:2px;
-    padding:0px;
-    width:170px;
-    <?php } ?>
-}
-
-div.fiche {
-	padding:8px 12px 10px;
-}
-
-
 /* ============================================================================== */
 /* Menu top et 1ère ligne tableau                                                 */
 /* ============================================================================== */
@@ -424,7 +407,6 @@ div.vmenu {
 	display:none;
 	<?php } else {?>
 	width:170px;
-	background-color:#dde2e9;
 	<?php } ?>
 }
 
@@ -632,8 +614,18 @@ a.tabTitle img {
 /* Styles de positionnement des zones                                             */
 /* ============================================================================== */
 
+td.vmenu {
+	<?php if (GETPOST("optioncss") != 'print') {?>
+    margin-right:2px;
+    padding:0px;
+    width:170px;
+    /* border-right: 1px solid #666666; */
+    <?php } ?>
+}
+
 div.fiche {
-	margin-<?php print $left; ?>: <?php print (empty($conf->browser->phone) || empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT))?'20':'24'; ?>px;
+	padding:8px 12px 10px;
+	margin-<?php print $left; ?>: <?php print (empty($conf->browser->phone) || empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT))?'16':'24'; ?>px;
 	margin-<?php print $right; ?>: <?php print empty($conf->browser->phone)?'12':'6'; ?>px;
 }
 
@@ -670,9 +662,9 @@ div.ficheaddleft {
 /* ============================================================================== */
 
 /* boutons : */
-.button, .butAction {background: #999;border: solid 1px #666;}
-.butActionRefused {background: #eaeaea; color:rgba(0,0,0,0.6)}
-.butActionDelete {background: #b33c37;border:solid 1px #8d2f2b;}
+.button, .butAction {background: #999; border: solid 1px #888; font-weight: normal; }
+.butActionRefused {background: #eaeaea; color:rgba(0,0,0,0.6); font-weight: normal;}
+.butActionDelete {background: #b33c37; border:solid 1px #8d2f2b; font-weight: normal;}
 
 .button, .butAction, .butActionRefused, .butActionDelete {
 	padding:2px;
@@ -701,9 +693,9 @@ border-left: solid 1px rgba(0,0,0,.3);
 	);
 	}
 
-.button,  a.butAction{color:black;}
+.button, a.butAction {color: white; font-weight: normal !important;}
 
-.butActionDelete{color:white;}
+.butAction, .butActionDelete {color:white;}
 
 td.formdocbutton {padding-top:6px;}
 
@@ -720,6 +712,7 @@ td.formdocbutton {padding-top:6px;}
 		color-stop(1, rgba(255,255,255,.3)),
 		color-stop(0, rgba(0,0,0,.3))
 	);
+	color:white;
 }
 
 /* ============================================================================== */
@@ -873,6 +866,7 @@ tr.liste_titre, tr.box_titre {
 		color-stop(0, rgba(255,255,255,.3)),
 		color-stop(1, rgba(0,0,0,.3))
 	);
+	height: 22px;
 }
 
 tr.box_titre td.boxclose {

+ 25 - 23
htdocs/theme/eldy/style.css.php

@@ -108,7 +108,7 @@ if (empty($conf->global->THEME_ELDY_ENABLE_PERSONALIZED))
 {
 	$conf->global->THEME_ELDY_TOPMENU_BACK1='180,196,216';    // topmenu
     $conf->global->THEME_ELDY_TOPMENU_BACK2='190,206,226';
-	$conf->global->THEME_ELDY_VERMENU_BACK1='246,248,250';    // vmenu
+	$conf->global->THEME_ELDY_VERMENU_BACK1='253,253,253';    // vmenu
     $conf->global->THEME_ELDY_VERMENU_BACK1b='226,228,230';   // vmenu (not menu)
     $conf->global->THEME_ELDY_VERMENU_BACK2='220,224,227';
     $conf->global->THEME_ELDY_BACKTITLE1='140,160,185';       // title of arrays
@@ -239,7 +239,10 @@ input:-webkit-autofill {
 input.liste_titre {
 	box-shadow: none !important;
 }
-
+input.removedfile {
+	padding: 0px !important;
+	border: 0px !important;
+}
 textarea:disabled {
 	background:#ddd;
 }
@@ -394,12 +397,9 @@ div#tmenu_tooltip {
 ?>
 	background: rgb(<?php echo $colorback1 ?>);
 <?php } else {
-    //if ($usecss3) $colortexttopmenu='FFFFFF';
-    //else
     $colortexttopmenu='000000';
 ?>
 	background: rgb(<?php echo $colorback1 ?>);
-	/* background: #305582; *//* 2C68A3 */
 <?php
     }
 ?>
@@ -416,7 +416,6 @@ div.tmenudiv {
     border-top: 0px solid #D3E5EC;
     border-<?php print $left; ?>: 0px;
     border-<?php print $right; ?>: 0px solid #555555;
-    border-bottom: 1px solid #FFFFFF;
     padding: 0px 0px 0px 0px;	/* t r b l */
     margin: 0px 0px 0px 0px;	/* t r b l */
 	font-size: 13px;
@@ -430,8 +429,11 @@ div.tmenudiv {
     /*    background-image: -ms-linear-gradient(bottom, rgb(<?php echo $colorback1; ?>) 75%, rgb(<?php echo $colorback2; ?>) 100%);*/
     /*    background-image: linear-gradient(bottom, rgb(<?php echo $colorback1; ?>) 75%, rgb(<?php echo $colorback2; ?>) 100%); */
 	background: url(<?php echo DOL_URL_ROOT.'/theme/eldy/img/nav-overlay3.png' ?>) 50% 0% repeat-x;
+    border-bottom: 1px solid rgb(<?php echo $colorback2; ?>);
+	box-shadow: 0 0 6px rgba(0, 0, 0, .4) !important;
 <?php } else { ?>
-    background-image: url(<?php echo DOL_URL_ROOT.'/theme/eldy/img/tmenu2.jpg' ?>);
+    border-bottom: 1px solid #DDDDDD;
+	background-image: url(<?php echo DOL_URL_ROOT.'/theme/eldy/img/tmenu2.jpg' ?>);
     background-position:top;
     background-repeat:repeat-x;
 <?php } ?>
@@ -837,11 +839,12 @@ div.blockvmenupair, div.blockvmenuimpair, div.blockvmenubookmarks
     margin: 1px 0px 8px 2px;
 
 <?php if ($usecss3) { ?>
-    background-image: -o-linear-gradient(bottom, rgb(<?php echo $colorbacktab1; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: -moz-linear-gradient(bottom, rgb(<?php echo $colorbacktab1; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: -webkit-linear-gradient(bottom, rgb(<?php echo $colorbacktab1; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: -ms-linear-gradient(bottom, rgb(<?php echo $colorbacktab1; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: linear-gradient(bottom, rgb(<?php echo $colorbacktab1; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: -o-linear-gradient(bottom, rgb(<?php echo $colorbacktab1; ?>) 80%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: -moz-linear-gradient(bottom, rgb(<?php echo $colorbacktab1; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+/*    background-image: -webkit-linear-gradient(bottom, rgb(<?php echo $colorbacktab1; ?>) 20px, rgb(<?php echo $colorbacktab2; ?>) 100%); */
+    background-image: -webkit-linear-gradient(top, rgb(<?php echo $colorbacktab2; ?>) 0px, rgb(<?php echo $colorbacktab1; ?>) 10px);
+    background-image: -ms-linear-gradient(bottom, rgb(<?php echo $colorbacktab1; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: linear-gradient(bottom, rgb(<?php echo $colorbacktab1; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
 <?php } else { ?>
 	background-image: url(<?php echo DOL_URL_ROOT.'/theme/eldy/img/tmenu.jpg' ?>);
     background-position:top;
@@ -855,7 +858,6 @@ div.blockvmenupair, div.blockvmenuimpair, div.blockvmenubookmarks
     -moz-box-shadow: 4px 4px 4px #CCC;
     -webkit-box-shadow: 4px 4px 4px #CCC;
     box-shadow: 4px 4px 4px #CCC;
-
 }
 
 div.blockvmenusearch
@@ -873,11 +875,11 @@ div.blockvmenusearch
 	background: #E3E6E8;
 
 <?php if ($usecss3) { ?>
-    background-image: -o-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: -moz-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: -webkit-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: -ms-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: -o-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: -moz-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: -webkit-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: -ms-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
 <?php } ?>
 
     border-left: 1px solid #CCCCCC;
@@ -907,11 +909,11 @@ div.blockvmenubookmarksold
     background: #E3E6E8;
 
 <?php if ($usecss3) { ?>
-    background-image: -o-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: -moz-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: -webkit-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: -ms-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
-    background-image: linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 85%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: -o-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: -moz-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: -webkit-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: -ms-linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
+    background-image: linear-gradient(bottom, rgb(<?php echo $colorbacktab1b; ?>) 90%, rgb(<?php echo $colorbacktab2; ?>) 100%);
 <?php } ?>
 
     border-left: 1px solid #CCCCCC;