diff --git a/ChangeLog b/ChangeLog
index 8aed3e0775ac9b22d4a87666919abf3b1208dc1d..229fd1bac856257772af0a53e7f59bfbf64c82d4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -187,6 +187,109 @@ This is list of hooks modified:
 
 
  
+***** ChangeLog for 3.8.4 compared to 3.8.3 *****
+FIX: #3694
+FIX: #3798 #2519 Cron jobs would never be executed
+FIX: #4155 Search Categories error
+FIX: #4239
+FIX: #4272 Error when trying to print the page "Linked objects" of a Thirdparty
+FIX: #4291 Correctly filter bank card GETPOSTs
+FIX: #4291 Correctly filter external calendar GETPOSTs
+FIX: #4341
+FIX: #4394 Untranslated label in list of expense reports
+FIX: #4414 Supplier invoices use FAC_FORCE_DATE_VALIDATION client invoices property
+FIX: #4418
+FIX: #4425 Missing "VAT" translation in supplier order popup
+FIX: #4434 Weird behaviour when enabling multiprices
+FIX: #4440 Wrong price is filled by Product::fetch into multiprices arrays
+FIX: #4453 SEPA Direct Debit generated XML shows a trailing comma in RmtInf field
+FIX: #4528
+FIX: #4556 desiredstock and seuil_stock_alerte cleared on modify product card
+FIX: #4580
+FIX: #4583 Incorrect call of Categories::containing throws a DoliDB error
+FIX: #4649 Wrong parameters order
+FIX: #4768
+FIX: #4785
+FIX: Add a test to show bugged module with a bad declaration of dictionaries to avoid to see clean module to be breaked.
+FIX: add Croatia into list of country in EEC
+FIX: add missing global def for ttc column
+FIX: ajax error with multicompany module
+FIX: Avoid errors when batch stock is negative
+FIX: bad field in select
+FIX: bad path
+FIX: bad transaction level due to code of situation invoices
+FIX: best sql request
+FIX: bookmark's user change after update if the user hasn't superadmin right
+FIX: call trigger LINEBILL_SUPPLIER_CREATE
+FIX: Can not disabled an opened service line in a contract
+FIX: can't clone event
+FIX: can't send mail to thirdparty contact if no mail defined on thirdparty card
+FIX: Check stock of batch on shippment
+FIX: code corrupting database
+FIX: compatibility with multicompany transversal mode
+FIX: compatibility with multicompany transversal mode and more security issue
+FIX: Contrat card don't consider user permissions to show active/unactive service button
+FIX: CVE CVE-2015-8685
+FIX: Deadlock situation. Can't edit anymore contract. FIX: List of automatic events was not visible.
+FIX: disable main.inc.php hooks
+FIX: do not show warning if account defined
+FIX: don't see the sales representative of anothers entities
+FIX: duration format
+FIX: Correct problem of rights beetween tax and salaries module
+FIX: Email templates not compatible with Multicompany
+FIX: $fileparams is not defined
+FIX: filter by socid if from customer card
+FIX: for avoid conflict with "global $m" in memory.lib.php
+FIX: for avoid division by 0
+FIX: hover css
+FIX: If option to hide automatic ECM is on, dont show menu.
+FIX: if we dont use SUPPLIER_ORDER_USE_HOUR_FOR_DELIVERY_DATE the hour is displayed on pdf
+FIX: Introduce hidden option to disable feature than hangs when too much data
+FIX: ISSUE #4506 : make working the PROPAL_CLONE_ON_CREATE_PAGE hidden constant
+FIX: issue when bank module is disabled FIX: missing entity filter for lines of payment
+FIX: list of leave request was not showing label correctly.
+FIX: MAIN_THIRDPARTY_CREATION_INDIVIDUAL syntax error in name
+FIX: markRate can be 100
+FIX: minor css error (pixel size must have "px"). Compatibility with old behaviour.
+FIX: missing field "label"
+FIX: missing signature and uniformize code between card and script
+FIX: missing traduction
+FIX: missing translation
+FIX: missing translation key
+FIX: nblignes not calculated after hook and hook can't modify this value. Usefull for modules
+FIX: no database structure change is allowed into minor versions
+FIX: no transaction in this place
+FIX: Noway to validate a leave request for some uer even if they have permission for.
+FIX: Option to disable meteo was not set correctly in edit mode
+FIX: $outputlangs is not defined (dolibarr 3.7, 3.8, 3.9)
+FIX: path to copyrighted files
+FIX: php unit to work both with old and new setup
+FIX: Purge of temp files was broken
+FIX: Relative discount decimals are not saved
+FIX: Removed a bugged list. Fixed another one to not count data of previous year.
+FIX: retrieve correct pu_ttc (set by printObjectLine function) like in 3.7
+FIX: search product in customer product prices doesn't work
+FIX: Some filters are lost when paging
+FIX: sql injection #4341
+FIX: sql injection even when code is on several lines
+FIX: sql request and total for time spen for current month
+FIX: Sql syntax error in doc_generic_task_odt
+FIX: Status filter don't work
+FIX: Strict Standards: Only variables should be passed by reference
+FIX: The part added with hidden option MAIN_DOC_USE_TIMING was included with a . instead of -. This make os think it is part of extension instead of file name.
+FIX: The third dashboard don't consider user permissions
+FIX: the view my task must show only task you are assigned to
+FIX: to allow phpunit of migration process for 3.4 to 3.5
+FIX: to allow phpunit of migration process for 3.5 to 3.6
+FIX: userlocaltax
+FIX: view of product image when using old path 
+FIX: size of image uploaded on user.
+FIX: We must ue the "small" size of imge to show on card pages.
+FIX: When we make a direct assignement on a task to a user, we must check he is also assigned to project (and if not assign it)
+FIX: wrong fk_parent_line in credit note with invoiceAvoirWithLines option
+FIX: wrong modelpdf var name
+FIX: wrong object name
+
 ***** ChangeLog for 3.8.3 compared to 3.8.2 *****
 FIX: #3805
 FIX: #3231 [Members] Public subscription page displays GeoIP error
diff --git a/build/makepack-dolibarr.pl b/build/makepack-dolibarr.pl
index db61a84d1339dcefec761404fa154d54bd0d8253..58f1514b632b1cf5ce0a7f563bf0649478529d6c 100755
--- a/build/makepack-dolibarr.pl
+++ b/build/makepack-dolibarr.pl
@@ -1108,6 +1108,14 @@ if ($nboftargetok) {
 			"$DESTI/standard/$FILENAMETGZ.tgz"=>'Dolibarr ERP-CRM',
 			"$DESTI/standard/$FILENAMETGZ.zip"=>'Dolibarr ERP-CRM'
 		);
+		%filestoscanstableasso=(
+			"$DESTI/package_rpm_generic/$FILENAMERPM"=>'package_rpm_generic',
+			"$DESTI/package_debian-ubuntu/${FILENAMEDEB}_all.deb"=>'package_debian-ubuntu',
+			"$DESTI/package_windows/$FILENAMEEXEDOLIWAMP.exe"=>'package_windows',
+			"$DESTI/standard/$FILENAMETGZ.tgz"=>'standard',
+			"$DESTI/standard/$FILENAMETGZ.zip"=>'standard'
+		);
+
 		use POSIX qw/strftime/;
 		foreach my $file (sort keys %filestoscansf)
 		{
@@ -1150,8 +1158,10 @@ if ($nboftargetok) {
 	    		
 	    		if ($target eq 'SF') { 
 	    			$destFolder="$NEWPUBLISH/$filestoscan{$file}/".$MAJOR.'.'.$MINOR.'.'.$BUILD;
-		    		print "Publish file ".$file." to $NEWPUBLISH/".$filestoscan{$file}."/".$MAJOR.'.'.$MINOR.'.'.$BUILD."\n";
 	    		}
+	    		elsif ($target eq 'ASSO' && $NEWPUBLISH =~ /stable/) {
+	    			$destFolder="$NEWPUBLISH/$filestoscanstableasso{$file}";
+	    		} 
 	    		else
 	    		{
 	    			$dirnameonly=$file;
@@ -1159,8 +1169,8 @@ if ($nboftargetok) {
 	    			$filenameonly=$file;
 	    			$filenameonly =~ s/.*\/[^\/]+\/([^\/])+$/$1/;  
 	    			$destFolder="$NEWPUBLISH/$dirnameonly";
-		    		print "Publish file ".$file." to $NEWPUBLISH/".$dirnameonly."\n";
 	    		}
+	    		print "Publish file ".$file." to ".$destFolder."\n";
 
 				# mkdir	   
 				#my $ssh = Net::SSH::Perl->new("frs.sourceforge.net");
diff --git a/dev/initdemo/initdemo.sh b/dev/initdemo/initdemo.sh
index e8ea47c71b21b498a52e8a4338ef4f6a4f7260cd..10dc671e09dbcf0da6a74b8e852f57d7851e5f61 100755
--- a/dev/initdemo/initdemo.sh
+++ b/dev/initdemo/initdemo.sh
@@ -171,6 +171,8 @@ then
 fi
 #echo "mysql -P$port -u$admin $passwd $base < $mydir/$dumpfile"
 #mysql -P$port -u$admin $passwd $base < $mydir/$dumpfile
+#echo "drop old table"
+echo "drop table llx_accounting_account;" | mysql -P$port -u$admin $passwd $base
 echo "mysql -P$port -u$admin -p***** $base < $mydir/$dumpfile"
 mysql -P$port -u$admin $passwd $base < $mydir/$dumpfile
 export res=$?
diff --git a/htdocs/accountancy/journal/bankjournal.php b/htdocs/accountancy/journal/bankjournal.php
index b9eef03481ca2e29ab99b0c3270e96a9c3856549..f995b2684ee9d2c02e1b144ef0e479473839d256 100644
--- a/htdocs/accountancy/journal/bankjournal.php
+++ b/htdocs/accountancy/journal/bankjournal.php
@@ -312,7 +312,6 @@ if ($action == 'writebookkeeping') {
 				if ($resultmid) {
 					$objmid = $db->fetch_object($resultmid);
 					$bookkeeping->doc_ref = $objmid->ref_supplier . ' (' . $objmid->ref . ')';
-					;
 				}
 			}
 
@@ -414,7 +413,8 @@ if ($action == 'export_csv') {
 	$companystatic = new Client($db);
 
 	// Model Cegid Expert Export
-	if ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 2) {
+	if ($conf->global->ACCOUNTING_EXPORT_MODELCSV == 2)
+	{
 		$sep = ";";
 
 		foreach ( $tabpay as $key => $val ) {
diff --git a/htdocs/accountancy/journal/sellsjournal.php b/htdocs/accountancy/journal/sellsjournal.php
index 961f3f3347c9eb21015ff32542bfbf45c2893422..8ffb4690dba8980703044141468c92e6ee1576cb 100644
--- a/htdocs/accountancy/journal/sellsjournal.php
+++ b/htdocs/accountancy/journal/sellsjournal.php
@@ -141,14 +141,15 @@ if ($result) {
 
 		// Situation invoices handling
 		$line = new FactureLigne($db);
-		$line->fetch($obj->rowid);
-		$prev_progress = $line->get_prev_progress();
+		$line->fetch($obj->fdid); // id of line
+		$prev_progress = 0;
 		if ($obj->type == Facture::TYPE_SITUATION) {
-			// Avoid divide by 0
+		    // Avoid divide by 0
 			if ($obj->situation_percent == 0) {
 				$situation_ratio = 0;
 			} else {
-				$situation_ratio = ($obj->situation_percent - $prev_progress) / $obj->situation_percent;
+		        $prev_progress = $line->get_prev_progress($obj->rowid);   // id of invoice
+			    $situation_ratio = ($obj->situation_percent - $prev_progress) / $obj->situation_percent;
 			}
 		} else {
 			$situation_ratio = 1;
diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php
index 8a493f73adc0daaaa2b93c3e5a24bc5127b4e787..c37a9bb1b33f46e825a97f3016290e35a83b660b 100644
--- a/htdocs/commande/card.php
+++ b/htdocs/commande/card.php
@@ -1321,6 +1321,7 @@ if ($action == 'create' && $user->rights->commande->creer)
 
 	$projectid = 0;
 	$remise_absolue = 0;
+
 	$currency_code = $conf->currency;
 	
 	if (! empty($origin) && ! empty($originid)) {
@@ -1333,7 +1334,7 @@ if ($action == 'create' && $user->rights->commande->creer)
 
 		if ($element == 'project') {
 			$projectid = $originid;
-			
+
 			if (!$cond_reglement_id) {
 				$cond_reglement_id = $soc->cond_reglement_id;
 			}
@@ -1669,7 +1670,7 @@ if ($action == 'create' && $user->rights->commande->creer)
 			default:
 				$newclassname = $classname;
 		}
-		
+
 		print '<tr><td>' . $langs->trans($newclassname) . '</td><td colspan="2">' . $objectsrc->getNomUrl(1) . '</td></tr>';
 		print '<tr><td>' . $langs->trans('TotalHT') . '</td><td colspan="2">' . price($objectsrc->total_ht) . '</td></tr>';
 		print '<tr><td>' . $langs->trans('TotalVAT') . '</td><td colspan="2">' . price($objectsrc->total_tva) . "</td></tr>";
@@ -2605,6 +2606,7 @@ if ($action == 'create' && $user->rights->commande->creer)
 
 			$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, preg_quote($ref, '/').'[^\-]+');
 			$file = $fileparams['fullname'];
 
 			// Define output language
diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php
index 7415aec80c2ccc49a481c2a87a3979020e6f487b..7298eb1813551fa6e3a749d190faa374770f146a 100644
--- a/htdocs/compta/facture.php
+++ b/htdocs/compta/facture.php
@@ -783,10 +783,17 @@ if (empty($reshook))
 	                $facture_source = new Facture($db); // fetch origin object
 	                if ($facture_source->fetch($object->fk_facture_source)>0)
 	                {
+	                	$fk_parent_line = 0;
 
 	                    foreach($facture_source->lines as $line)
 	                    {
+	                    	// Reset fk_parent_line for no child products and special product
+	                    	if (($line->product_type != 9 && empty($line->fk_parent_line)) || $line->product_type == 9) {
+	                    		$fk_parent_line = 0;
+	                    	}
+
 	                        $line->fk_facture = $object->id;
+	                        $line->fk_parent_line = $fk_parent_line;
 
 	                        $line->subprice =-$line->subprice; // invert price for object
 	                        $line->pa_ht = -$line->pa_ht;
@@ -796,9 +803,14 @@ if (empty($reshook))
 	                        $line->total_localtax1=-$line->total_localtax1;
 	                        $line->total_localtax2=-$line->total_localtax2;
 
-	                        $line->insert();
+	                        $result = $line->insert();
 
 	                        $object->lines[] = $line; // insert new line in current object
+
+	                        // Defined the new fk_parent_line
+	                        if ($result > 0 && $line->product_type == 9) {
+	                        	$fk_parent_line = $result;
+	                        }
 	                    }
 
 	                    $object->update_price(1);
@@ -1594,7 +1606,7 @@ if (empty($reshook))
 
 		$line = new FactureLigne($db);
 		$line->fetch(GETPOST('lineid'));
-		$percent = $line->get_prev_progress();
+		$percent = $line->get_prev_progress($object->id);
 
 		if (GETPOST('progress') < $percent)
 		{
@@ -1712,7 +1724,7 @@ if (empty($reshook))
 		{
 			foreach ($object->lines as $line)
 			{
-				$percent = $line->get_prev_progress();
+				$percent = $line->get_prev_progress($object->id);
 				if (GETPOST('all_progress') < $percent) {
 					$mesg = '<div class="warning">' . $langs->trans("CantBeLessThanMinPercent") . '</div>';
 					$result = -1;
@@ -1911,7 +1923,7 @@ if ($action == 'create')
 
 		if ($element == 'project') {
 			$projectid = $originid;
-			
+
 			if (!$cond_reglement_id) {
 				$cond_reglement_id = $soc->cond_reglement_id;
 			}
@@ -1924,7 +1936,7 @@ if ($action == 'create')
 			if (!$dateinvoice) {
 				// Do not set 0 here (0 for a date is 1970)
 				$dateinvoice = (empty($dateinvoice)?(empty($conf->global->MAIN_AUTOFILL_DATE)?-1:''):$dateinvoice);
-			}			
+			}
 		} else {
 			// For compatibility
 			if ($element == 'order' || $element == 'commande') {
@@ -2667,7 +2679,7 @@ else if ($id > 0 || ! empty($ref))
 			$qualified_for_stock_change = $object->hasProductsOrServices(1);
 		}
 
-		if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL) && $qualified_for_stock_change && $object->statut >= 1) 
+		if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL) && $qualified_for_stock_change && $object->statut >= 1)
 		{
 			$langs->load("stocks");
 			require_once DOL_DOCUMENT_ROOT . '/product/class/html.formproduct.class.php';
@@ -2858,7 +2870,7 @@ else if ($id > 0 || ! empty($ref))
 	}
 
 	// Clone confirmation
-	if ($action == 'clone') 
+	if ($action == 'clone')
 	{
 		// Create an array for form
 		$formquestion = array(
@@ -2869,7 +2881,7 @@ else if ($id > 0 || ! empty($ref))
 		$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"] . '?facid=' . $object->id, $langs->trans('CloneInvoice'), $langs->trans('ConfirmCloneInvoice', $object->ref), 'confirm_clone', $formquestion, 'yes', 1);
 	}
 
-	if (! $formconfirm) 
+	if (! $formconfirm)
 	{
 		$parameters = array('lineid' => $lineid);
 		$reshook = $hookmanager->executeHooks('formConfirm', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
@@ -3818,14 +3830,14 @@ else if ($id > 0 || ! empty($ref))
 		                                                                                          // modified by hook
 		if (empty($reshook)) {
 			// Editer une facture deja validee, sans paiement effectue et pas exporte en compta
-			if ($object->statut == 1) 
+			if ($object->statut == 1)
 			{
 				// On verifie si les lignes de factures ont ete exportees en compta et/ou ventilees
 				$ventilExportCompta = $object->getVentilExportCompta();
 
-				if ($resteapayer == $object->total_ttc && empty($object->paye) && $ventilExportCompta == 0) 
+				if ($resteapayer == $object->total_ttc && empty($object->paye) && $ventilExportCompta == 0)
 				{
-					if (! $objectidnext) 
+					if (! $objectidnext && $object->is_last_in_cycle())
 					{
 					    if ((empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->facture->creer))
        						|| (! empty($conf->global->MAIN_USE_ADVANCED_PERMS) && ! empty($user->rights->facture->invoice_advance->unvalidate)))
diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php
index 09b253e08a08dabc5ce39790ea0fb874ab7b7f36..f5aadddeaf9bf6a300d0e8b5064dfa2a18688844 100644
--- a/htdocs/compta/facture/class/facture.class.php
+++ b/htdocs/compta/facture/class/facture.class.php
@@ -4533,15 +4533,22 @@ class FactureLigne extends CommonInvoiceLine
 	}
 
 	/**
-	 * Returns situation_percent of the previous line
+	 * Returns situation_percent of the previous line.
+	 * Warning: If invoice is a replacement invoice, this->fk_prev_id is id of the replaced line. 
 	 *
-	 * @return int >= 0
+	 * @param  int     $invoiceid      Invoice id
+	 * @return int                     >= 0
 	 */
-	function get_prev_progress()
+	function get_prev_progress($invoiceid)
 	{
 		if (is_null($this->fk_prev_id) || empty($this->fk_prev_id) || $this->fk_prev_id == "") {
 			return 0;
 		} else {
+		    // If invoice is a not a situation invoice, this->fk_prev_id is used for something else
+            $tmpinvoice=new Facture($this->db);
+            $tmpinvoice->fetch($invoiceid);
+            if ($tmpinvoice->type != Facture::TYPE_SITUATION) return 0;
+
 			$sql = 'SELECT situation_percent FROM ' . MAIN_DB_PREFIX . 'facturedet WHERE rowid=' . $this->fk_prev_id;
 			$resql = $this->db->query($sql);
 			if ($resql && $resql->num_rows > 0) {
diff --git a/htdocs/compta/journal/sellsjournal.php b/htdocs/compta/journal/sellsjournal.php
index cddbdcaa064746046f1a9a169dff426847e7a738..0cbd5068077d02ce25f8a2ffe007d8a82d60f670 100644
--- a/htdocs/compta/journal/sellsjournal.php
+++ b/htdocs/compta/journal/sellsjournal.php
@@ -166,14 +166,15 @@ if ($result)
 
 		// Situation invoices handling
 		$line = new FactureLigne($db);
-		$line->fetch($obj->id);
-		$prev_progress = $line->get_prev_progress();
+		$line->fetch($obj->id);   // id of line
+		$prev_progress = 0;
 		if ($obj->type==Facture::TYPE_SITUATION) {
 			// Avoid divide by 0
 			if ($obj->situation_percent == 0) { 
 				$situation_ratio = 0;
 			} else {
-				$situation_ratio = ($obj->situation_percent - $prev_progress) / $obj->situation_percent;
+		        $prev_progress = $line->get_prev_progress($obj->rowid);   // id on invoice
+			    $situation_ratio = ($obj->situation_percent - $prev_progress) / $obj->situation_percent;
 			}
 		} else {
 			$situation_ratio = 1;
diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php
index 0c535ef0b2239f6584939f2f6de107eecd689156..25ce63a087f3a32df3ce5b608d791db3a25565ab 100644
--- a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php
+++ b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php
@@ -166,7 +166,7 @@ class pdf_crabe extends ModelePDFFactures
 	function write_file($object,$outputlangs,$srctemplatepath='',$hidedetails=0,$hidedesc=0,$hideref=0)
 	{
 		global $user,$langs,$conf,$mysoc,$db,$hookmanager;
-
+		
 		if (! is_object($outputlangs)) $outputlangs=$langs;
 		// For backward compatibility with FPDF, force output charset to ISO, because FPDF expect text to be encoded in ISO
 		if (! empty($conf->global->MAIN_USE_FPDF)) $outputlangs->charset_output='ISO-8859-1';
@@ -539,7 +539,7 @@ class pdf_crabe extends ModelePDFFactures
 					$pdf->MultiCell($this->page_largeur-$this->marge_droite-$this->postotalht, 3, $total_excl_tax, 0, 'R', 0);
 
 					// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
-					$prev_progress = $object->lines[$i]->get_prev_progress();
+					$prev_progress = $object->lines[$i]->get_prev_progress($object->id);
 					if ($prev_progress > 0) // Compute progress from previous situation
 					{
 						if ($conf->multicurrency->enabled && $object->multicurrency_tx != 1) $tvaligne = $object->lines[$i]->multicurrency_total_tva * ($object->lines[$i]->situation_percent - $prev_progress) / $object->lines[$i]->situation_percent;
@@ -548,6 +548,7 @@ class pdf_crabe extends ModelePDFFactures
 						if ($conf->multicurrency->enabled && $object->multicurrency_tx != 1) $tvaligne=$object->lines[$i]->multicurrency_total_tva;
 						else $tvaligne=$object->lines[$i]->total_tva;
 					}
+					
 					$localtax1ligne=$object->lines[$i]->total_localtax1;
 					$localtax2ligne=$object->lines[$i]->total_localtax2;
 					$localtax1_rate=$object->lines[$i]->localtax1_tx;
@@ -1106,7 +1107,8 @@ class pdf_crabe extends ModelePDFFactures
 							}
 						}
 					}
-				//}
+
+                //}
 				// VAT
 				foreach($this->tva as $tvakey => $tvaval)
 				{
diff --git a/htdocs/includes/ccampbell/chromephp/ChromePhp.php b/htdocs/includes/ccampbell/chromephp/ChromePhp.php
old mode 100755
new mode 100644
diff --git a/htdocs/includes/mobiledetect/mobiledetectlib/tests/BasicsTest.php b/htdocs/includes/mobiledetect/mobiledetectlib/tests/BasicsTest.php
old mode 100755
new mode 100644
diff --git a/htdocs/includes/tecnickcom/tcpdf/tools/tcpdf_addfont.php b/htdocs/includes/tecnickcom/tcpdf/tools/tcpdf_addfont.php
old mode 100755
new mode 100644
diff --git a/htdocs/theme/md/style.css.php b/htdocs/theme/md/style.css.php
index 6b0a9d78b4a6608509db7c26195ca114801d4d10..4935ec1ff8122b4fb3b18703c53af4352124434a 100644
--- a/htdocs/theme/md/style.css.php
+++ b/htdocs/theme/md/style.css.php
@@ -889,13 +889,14 @@ ul.tmenu {	/* t r b l */
 }
 ul.tmenu li {
 	background: rgb(<?php echo $colorbackhmenu1 ?>);
-
+	/*
 	background-image: linear-gradient(top, rgba(255,255,255,.3) 0%, rgba(0,0,0,.3) 100%);
 	background-image: -o-linear-gradient(top, rgba(255,255,255,.3) 0%, rgba(0,0,0,.3) 100%);
 	background-image: -moz-linear-gradient(top, rgba(255,255,255,.3) 0%, rgba(0,0,0,.3) 100%);
 	background-image: -webkit-linear-gradient(top, rgba(255,255,255,.3) 0%, rgba(0,0,0,.3) 100%);
 	background-image: -ms-linear-gradient(top, rgba(255,255,255,.3) 0%, rgba(0,0,0,.3) 100%);
 	background-image: -webkit-gradient( linear, left top, left bottom, color-stop(0, rgba(255,255,255,.3)), color-stop(1, rgba(0,0,0,.3)) );
+	*/
 }
 li.tmenu, li.tmenusel {
 	<?php print $minwidthtmenu?'min-width: '.$minwidthtmenu.'px;':''; ?>