diff --git a/htdocs/comm/action/card.php b/htdocs/comm/action/card.php
index a1e6f89f6635a734f2e7b431d2730010c9c3f9c1..96db3133cf9edc1300deffa64e7c4b6a50d369de 100644
--- a/htdocs/comm/action/card.php
+++ b/htdocs/comm/action/card.php
@@ -251,11 +251,11 @@ if ($action == 'add')
 	if (! empty($conf->phenix->enabled) && GETPOST('add_phenix') == 'on') $object->use_phenix=1;
 
 	// Check parameters
-	if (empty($object->userownerid))
+	if (empty($object->userownerid) && empty($_SESSION['assignedtouser']))
 	{
 		$error++; $donotclearsession=1;
 		$action = 'create';
-		setEventMessage($langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("ActionAffectedTo")), 'errors');
+		setEventMessage($langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("ActionsOwnedBy")), 'errors');
 	}
 	if ($object->type_code == 'AC_RDV' && ($datep == '' || ($datef == '' && empty($fulldayevent))))
 	{
@@ -423,7 +423,7 @@ if ($action == 'update')
 		{
 			$error++; $donotclearsession=1;
 			$action = 'edit';
-			setEventMessage($langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("ActionAffectedTo")), 'errors');
+			setEventMessage($langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("ActionsOwnedBy")), 'errors');
 		}
 
 		// Fill array 'array_options' with data from add form
diff --git a/htdocs/comm/index.php b/htdocs/comm/index.php
index c534724671982b458562683b16d475163c575c70..4129b561ed1abfd82afac9d520c4d18f754fabd2 100644
--- a/htdocs/comm/index.php
+++ b/htdocs/comm/index.php
@@ -118,6 +118,23 @@ if (! empty($conf->contrat->enabled) && $user->rights->contrat->lire)
 	print "<br>";
 }
 
+// Search contract
+if (! empty($conf->ficheinter->enabled) && $user->rights->ficheinter->lire)
+{
+	$var=false;
+	print '<form method="post" action="'.DOL_URL_ROOT.'/fichinter/list.php">';
+	print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
+	print '<table class="noborder nohover" width="100%">';
+	print '<tr class="liste_titre"><td colspan="3">'.$langs->trans("SearchAnIntervention").'</td></tr>';
+	print '<tr '.$bc[$var].'>';
+	print '<td class="nowrap"><label for="search_contract">'.$langs->trans("Ref").'</label>:</td><td><input type="text" class="flat" name="search_inter" id="search_inter" size="18"></td>';
+	print '<td rowspan="2"><input type="submit" value="'.$langs->trans("Search").'" class="button"></td></tr>';
+	print '<tr '.$bc[$var].'><td class="nowrap"><label for="sall">'.$langs->trans("Other").'</label>:</td><td><input type="text" class="flat" name="sall" id="sall" size="18"></td>';
+	print '</tr>';
+	print "</table></form>\n";
+	print "<br>";
+}
+
 /*
  * Draft proposals
  */
diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php
index 189f1f9c041056e70515476f5d9b504a6b1d031b..fcdda5eaaa170ed1d69c987282f641caa2296b6b 100644
--- a/htdocs/comm/propal.php
+++ b/htdocs/comm/propal.php
@@ -535,7 +535,7 @@ else if ($action == 'classifybilled' && $user->rights->propal->cloturer) {
 // Reopen proposal
 else if ($action == 'confirm_reopen' && $user->rights->propal->cloturer && ! GETPOST('cancel')) {
 	// prevent browser refresh from reopening proposal several times
-	if ($object->statut == 2 || $object->statut == 3) {
+	if ($object->statut == 2 || $object->statut == 3 || $object->statut == 4) {
 		$object->reopen($user, 1);
 	}
 }
@@ -2201,7 +2201,7 @@ if ($action == 'create')
 				}
 
 				// ReOpen
-				if (($object->statut == 2 || $object->statut == 3) && $user->rights->propal->cloturer) {
+				if (($object->statut == 2 || $object->statut == 3 || $object->statut == 4) && $user->rights->propal->cloturer) {
 					print '<div class="inline-block divButAction"><a class="butAction" href="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . '&amp;action=reopen' . (empty($conf->global->MAIN_JUMP_TAG) ? '' : '#reopen') . '"';
 					print '>' . $langs->trans('ReOpen') . '</a></div>';
 				}
@@ -2368,13 +2368,13 @@ if ($action == 'create')
 		$formmail->withcancel = 1;
 
 		// Tableau des substitutions
-		$formmail->substit ['__PROPREF__'] = $object->ref;
-		$formmail->substit ['__SIGNATURE__'] = $user->signature;
-		$formmail->substit ['__REFCLIENT__'] = $object->ref_client;
-		$formmail->substit ['__THIRPARTY_NAME__'] = $object->thirdparty->name;
-		$formmail->substit ['__PROJECT_REF__'] = (is_object($object->projet)?$object->projet->ref:'');
-		$formmail->substit ['__PERSONALIZED__'] = '';
-		$formmail->substit ['__CONTACTCIVNAME__'] = '';
+		$formmail->substit['__PROPREF__'] = $object->ref;
+		$formmail->substit['__SIGNATURE__'] = $user->signature;
+		$formmail->substit['__REFCLIENT__'] = $object->ref_client;
+		$formmail->substit['__THIRPARTY_NAME__'] = $object->thirdparty->name;
+		$formmail->substit['__PROJECT_REF__'] = (is_object($object->projet)?$object->projet->ref:'');
+		$formmail->substit['__PERSONALIZED__'] = '';
+		$formmail->substit['__CONTACTCIVNAME__'] = '';
 
 		// Find the good contact adress
 		$custcontact = '';
@@ -2391,15 +2391,15 @@ if ($action == 'create')
 			}
 
 			if (! empty($custcontact)) {
-				$formmail->substit ['__CONTACTCIVNAME__'] = $custcontact;
+				$formmail->substit['__CONTACTCIVNAME__'] = $custcontact;
 			}
 		}
 
 		// Tableau des parametres complementaires
-		$formmail->param ['action'] = 'send';
-		$formmail->param ['models'] = 'propal_send';
-		$formmail->param ['id'] = $object->id;
-		$formmail->param ['returnurl'] = $_SERVER["PHP_SELF"] . '?id=' . $object->id;
+		$formmail->param['action'] = 'send';
+		$formmail->param['models'] = 'propal_send';
+		$formmail->param['id'] = $object->id;
+		$formmail->param['returnurl'] = $_SERVER["PHP_SELF"] . '?id=' . $object->id;
 		// Init list of files
 		if (GETPOST("mode") == 'init') {
 			$formmail->clear_attached_files();
diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php
index c056e5aa1c550605f0c84d6be897360d4a317749..15d85afec07cfd29210b4a2301dabeebb7b70417 100644
--- a/htdocs/comm/propal/class/propal.class.php
+++ b/htdocs/comm/propal/class/propal.class.php
@@ -1739,8 +1739,14 @@ class Propal extends CommonObject
         $resql=$this->db->query($sql);
         if ($resql)
         {
+        	$modelpdf=$conf->global->PROPALE_ADDON_PDF_ODT_CLOSED?$conf->global->PROPALE_ADDON_PDF_ODT_CLOSED:$this->modelpdf;
+        	$trigger_name='PROPAL_CLOSE_REFUSED';
+
             if ($statut == 2)
             {
+            	$trigger_name='PROPAL_CLOSE_SIGNED';
+				$modelpdf=$conf->global->PROPALE_ADDON_PDF_ODT_TOBILL?$conf->global->PROPALE_ADDON_PDF_ODT_TOBILL:$this->modelpdf;
+
                 // The connected company is classified as a client
                 $soc=new Societe($this->db);
                 $soc->id = $this->socid;
@@ -1752,48 +1758,31 @@ class Propal extends CommonObject
                     $this->db->rollback();
                     return -2;
                 }
-
-                if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE))
-                {
-                	// Define output language
-                	$outputlangs = $langs;
-                	if (! empty($conf->global->MAIN_MULTILANGS))
-                	{
-                		$outputlangs = new Translate("",$conf);
-                		$newlang=(GETPOST('lang_id') ? GETPOST('lang_id') : $this->client->default_lang);
-                		$outputlangs->setDefaultLang($newlang);
-                	}
-                	//$ret=$object->fetch($id);    // Reload to get new records
-	                $this->generateDocument($conf->global->PROPALE_ADDON_PDF_ODT_TOBILL?$conf->global->PROPALE_ADDON_PDF_ODT_TOBILL:$this->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
-                }
-
-                // Call trigger
-                $result=$this->call_trigger('PROPAL_CLOSE_SIGNED',$user);
-                if ($result < 0) { $error++; }
-                // End call triggers
             }
-            else
+            if ($statut == 4)
             {
+            	$trigger_name='PROPAL_CLASSIFY_BILLED';
+            }
 
-            	if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE))
-            	{
-            		// Define output language
-            		$outputlangs = $langs;
-            		if (! empty($conf->global->MAIN_MULTILANGS))
-            		{
-            			$outputlangs = new Translate("",$conf);
-            			$newlang=(GETPOST('lang_id') ? GETPOST('lang_id') : $this->client->default_lang);
-            			$outputlangs->setDefaultLang($newlang);
-            		}
-            		//$ret=$object->fetch($id);    // Reload to get new records
-		            $this->generateDocument($conf->global->PROPALE_ADDON_PDF_ODT_CLOSED?$conf->global->PROPALE_ADDON_PDF_ODT_CLOSED:$this->modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
-            	}
-
-                // Call trigger
-                $result=$this->call_trigger('PROPAL_CLOSE_REFUSED',$user);
-                if ($result < 0) { $error++; }
-                // End call triggers
+            if (empty($conf->global->MAIN_DISABLE_PDF_AUTOUPDATE))
+            {
+             	// Define output language
+              	$outputlangs = $langs;
+               	if (! empty($conf->global->MAIN_MULTILANGS))
+               	{
+               		$outputlangs = new Translate("",$conf);
+               		$newlang=(GETPOST('lang_id') ? GETPOST('lang_id') : $this->client->default_lang);
+               		$outputlangs->setDefaultLang($newlang);
+               	}
+               	//$ret=$object->fetch($id);    // Reload to get new records
+	               $this->generateDocument($modelpdf, $outputlangs, $hidedetails, $hidedesc, $hideref);
             }
+
+            // Call trigger
+            $result=$this->call_trigger($trigger_name,$user);
+            if ($result < 0) { $error++; }
+            // End call triggers
+
             if ( ! $error )
             {
                 $this->db->commit();
diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php
index 23981b1a34324cd72a25e992032f370670c26eed..ad9149d48b004dc57deba3b7a51040e7b28c3676 100644
--- a/htdocs/core/class/commonobject.class.php
+++ b/htdocs/core/class/commonobject.class.php
@@ -2074,7 +2074,8 @@ abstract class CommonObject
         	if (! $error)
 			{
 				$trigkey='';
-				if ($this->element == 'fichinter' && $status == 2) $trigkey='FICHINTER_CLASSIFYBILLED';
+				if ($this->element == 'fichinter' && $status == 2) $trigkey='FICHINTER_CLASSIFY_BILLED';
+				if ($this->element == 'fichinter' && $status == 1) $trigkey='FICHINTER_CLASSIFY_UNBILLED';
 
 				if ($trigkey)
 				{
@@ -2566,7 +2567,7 @@ abstract class CommonObject
 					$parameters = array('line'=>$line,'var'=>$var,'num'=>$num,'i'=>$i,'dateSelector'=>$dateSelector,'seller'=>$seller,'buyer'=>$buyer,'selected'=>$selected, 'extrafieldsline'=>$extrafieldsline);
 					$reshook=$hookmanager->executeHooks('printObjectLine', $parameters, $this, $action);    // Note that $action and $object may have been modified by some hooks
 				}
-				else 
+				else
 				{
 					$parameters = array('line'=>$line,'var'=>$var,'num'=>$num,'i'=>$i,'dateSelector'=>$dateSelector,'seller'=>$seller,'buyer'=>$buyer,'selected'=>$selected, 'extrafieldsline'=>$extrafieldsline);
 					$reshook=$hookmanager->executeHooks('printObjectSubLine', $parameters, $this, $action);    // Note that $action and $object may have been modified by some hooks
diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php
index 8e369151fd7030e2f8e19d570d96908b0e17ab75..eb7b3d8af4f4d3c4cb8c31e14b52b73f2d288d90 100644
--- a/htdocs/core/class/html.form.class.php
+++ b/htdocs/core/class/html.form.class.php
@@ -4166,18 +4166,18 @@ class Form
     /**
      *	Return an html string with a select combo box to choose yes or no
      *
-     *	@param	string	$htmlname		Name of html select field
-     *	@param	string	$value			Pre-selected value
-     *	@param	int		$option			0 return yes/no, 1 return 1/0
-     *	@param	bool	$disabled		true or false
-     *	@return	mixed					See option
+     *	@param	string		$htmlname		Name of html select field
+     *	@param	string		$value			Pre-selected value
+     *	@param	int			$option			0 return yes/no, 1 return 1/0
+     *	@param	bool		$disabled		true or false
+     *  @param	useempty	$useempty		1=Add empty line
+     *	@return	mixed						See option
      */
-    function selectyesno($htmlname,$value='',$option=0,$disabled=false)
+    function selectyesno($htmlname,$value='',$option=0,$disabled=false,$useempty='')
     {
         global $langs;
 
         $yes="yes"; $no="no";
-
         if ($option)
         {
             $yes="1";
@@ -4187,15 +4187,17 @@ class Form
         $disabled = ($disabled ? ' disabled="disabled"' : '');
 
         $resultyesno = '<select class="flat" id="'.$htmlname.'" name="'.$htmlname.'"'.$disabled.'>'."\n";
+        if ($useempty) $resultyesno .= '<option value="-1"'.(($value < 0)?' selected="selected"':'').'></option>'."\n";
         if (("$value" == 'yes') || ($value == 1))
         {
             $resultyesno .= '<option value="'.$yes.'" selected="selected">'.$langs->trans("Yes").'</option>'."\n";
             $resultyesno .= '<option value="'.$no.'">'.$langs->trans("No").'</option>'."\n";
         }
         else
-        {
+       {
+       		$selected=($useempty?'':' selected="selected"');
             $resultyesno .= '<option value="'.$yes.'">'.$langs->trans("Yes").'</option>'."\n";
-            $resultyesno .= '<option value="'.$no.'" selected="selected">'.$langs->trans("No").'</option>'."\n";
+            $resultyesno .= '<option value="'.$no.'"'.$selected.'>'.$langs->trans("No").'</option>'."\n";
         }
         $resultyesno .= '</select>'."\n";
         return $resultyesno;
diff --git a/htdocs/core/lib/agenda.lib.php b/htdocs/core/lib/agenda.lib.php
index d2270cb55846f8d2f200aab7a19289c83cc8e58e..44e962de3ea6249ff34b97623f290f2b5efc7265 100644
--- a/htdocs/core/lib/agenda.lib.php
+++ b/htdocs/core/lib/agenda.lib.php
@@ -206,7 +206,7 @@ function show_array_actions_to_do($max=5)
 	include_once DOL_DOCUMENT_ROOT.'/societe/class/client.class.php';
 
 	$sql = "SELECT a.id, a.label, a.datep as dp, a.datep2 as dp2, a.fk_user_author, a.percent,";
-	$sql.= " c.code, c.libelle,";
+	$sql.= " c.code, c.libelle as type_label,";
 	$sql.= " s.nom as sname, s.rowid, s.client";
 	$sql.= " FROM ".MAIN_DB_PREFIX."c_actioncomm as c LEFT JOIN ";
 	$sql.= " ".MAIN_DB_PREFIX."actioncomm as a ON c.id = a.fk_action";
@@ -243,7 +243,7 @@ function show_array_actions_to_do($max=5)
             print '<tr '.$bc[$var].'>';
 
             $staticaction->type_code=$obj->code;
-            $staticaction->libelle=$obj->label;
+            $staticaction->label=($obj->label?$obj->label:$obj->type_label);
             $staticaction->id=$obj->id;
             print '<td>'.$staticaction->getNomUrl(1,34).'</td>';
 
diff --git a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php
index d4fe47c0faacc48a85dd9a9f14a0c5db2d02890c..346932ec61e05ec3b330648343a39ff0c8c4aa9b 100644
--- a/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php
+++ b/htdocs/core/triggers/interface_50_modAgenda_ActionsAuto.class.php
@@ -145,6 +145,17 @@ class InterfaceActionsAuto extends DolibarrTriggers
 			$object->actiontypecode='AC_OTH_AUTO';
             if (empty($object->actionmsg2)) $object->actionmsg2=$langs->transnoentities("PropalClosedSignedInDolibarr",$object->ref);
             $object->actionmsg=$langs->transnoentities("PropalClosedSignedInDolibarr",$object->ref);
+            $object->actionmsg.="\n".$langs->transnoentities("Author").': '.$user->login;
+
+			$object->sendtoid=0;
+		}
+		elseif ($action == 'PROPAL_CLASSIFY_BILLED')
+        {
+            $langs->load("propal");
+
+			$object->actiontypecode='AC_OTH_AUTO';
+            if (empty($object->actionmsg2)) $object->actionmsg2=$langs->transnoentities("PropalClassifiedBilledInDolibarr",$object->ref);
+            $object->actionmsg=$langs->transnoentities("PropalClassifiedBilledInDolibarr",$object->ref);
             $object->actionmsg.="\n".$langs->transnoentities("Author").': '.$user->login;
 
 			$object->sendtoid=0;
@@ -222,7 +233,7 @@ class InterfaceActionsAuto extends DolibarrTriggers
                 $object->actionmsg=$langs->transnoentities("InvoiceSentByEMail",$object->ref);
                 $object->actionmsg.="\n".$langs->transnoentities("Author").': '.$user->login;
             }
-            
+
             // Parameters $object->sendtoid defined by caller
             //$object->sendtoid=0;
 		}
@@ -253,7 +264,7 @@ class InterfaceActionsAuto extends DolibarrTriggers
 		}
 		elseif ($action == 'FICHINTER_CREATE')
         {
-            $langs->load("other");
+        	$langs->load("other");
             $langs->load("interventions");
 
 			$object->actiontypecode='AC_OTH_AUTO';
@@ -281,7 +292,7 @@ class InterfaceActionsAuto extends DolibarrTriggers
 		}
 		elseif ($action == 'FICHINTER_MODIFY')
         {
-            $langs->load("other");
+        	$langs->load("other");
             $langs->load("interventions");
 
 			$object->actiontypecode='AC_OTH_AUTO';
@@ -293,7 +304,7 @@ class InterfaceActionsAuto extends DolibarrTriggers
 			$object->fk_element=0;
 			$object->elementtype='';
 		}
-        elseif ($action == 'FICHINTER_SENTBYMAIL')
+		elseif ($action == 'FICHINTER_SENTBYMAIL')
         {
         	$langs->load("other");
             $langs->load("interventions");
@@ -305,19 +316,31 @@ class InterfaceActionsAuto extends DolibarrTriggers
             // Parameters $object->sendtoid defined by caller
             //$object->sendtoid=0;
         }
-        elseif ($action == 'FICHINTER_CLASSIFYBILLED')
+        elseif ($action == 'FICHINTER_CLASSIFY_BILLED')
+        {
+            $langs->load("other");
+            $langs->load("interventions");
+
+            $object->actiontypecode='AC_OTH_AUTO';
+           	if (empty($object->actionmsg2)) $object->actionmsg2=$langs->transnoentities("InterventionClassifiedBilledInDolibarr",$object->ref);
+           	$object->actionmsg=$langs->transnoentities("InterventionClassifiedBilledInDolibarr",$object->ref);
+            $object->actionmsg.="\n".$langs->transnoentities("Author").': '.$user->login;
+
+            $object->sendtoid=0;
+        }
+	    elseif ($action == 'FICHINTER_CLASSIFY_UNBILLED')
         {
             $langs->load("other");
             $langs->load("interventions");
 
             $object->actiontypecode='AC_OTH_AUTO';
-            if (empty($object->actionmsg2)) $object->actionmsg2=$langs->transnoentities("InterventionClassifiedBilled",$object->ref);
-            $object->actionmsg=$langs->transnoentities("InterventionClassifiedBilled",$object->ref);
+           	if (empty($object->actionmsg2)) $object->actionmsg2=$langs->transnoentities("InterventionClassifiedUnbilledInDolibarr",$object->ref);
+           	$object->actionmsg=$langs->transnoentities("InterventionClassifiedUnbilledInDolibarr",$object->ref);
             $object->actionmsg.="\n".$langs->transnoentities("Author").': '.$user->login;
 
             $object->sendtoid=0;
         }
-		elseif ($action == 'FICHINTER_DELETE')
+        elseif ($action == 'FICHINTER_DELETE')
         {
             $langs->load("other");
             $langs->load("interventions");
diff --git a/htdocs/fichinter/list.php b/htdocs/fichinter/list.php
index 28dad4bbb8970e32e654280e8b867bd5925130dc..524feec13df54984b281adc61c9a2d6156ff8077 100644
--- a/htdocs/fichinter/list.php
+++ b/htdocs/fichinter/list.php
@@ -56,10 +56,11 @@ if (! $sortfield)
 }
 $limit = $conf->liste_limit;
 
-$search_ref=GETPOST('search_ref','alpha');
+$search_ref=GETPOST('search_ref')?GETPOST('search_ref','alpha'):GETPOST('search_inter','alpha');
 $search_company=GETPOST('search_company','alpha');
 $search_desc=GETPOST('search_desc','alpha');
 $search_status=GETPOST('search_status');
+$sall=GETPOST('sall');
 
 if (GETPOST("button_removefilter"))
 {
@@ -106,6 +107,11 @@ if (! $user->rights->societe->client->voir && empty($socid))
 	$sql .= " AND s.rowid = sc.fk_soc AND sc.fk_user = " .$user->id;
 if ($socid)
 	$sql.= " AND s.rowid = " . $socid;
+if ($sall) {
+	$arraytosearch=array('f.ref', 'f.description', 's.nom');
+	if (empty($conf->global->FICHINTER_DISABLE_DETAILS)) $arraytosearch=array('f.ref', 'f.description', 's.nom', 'fd.description');
+	$sql .= natural_search($arraytosearch, $sall);
+}
 $sql.= $db->order($sortfield,$sortorder);
 $sql.= $db->plimit($limit+1, $offset);
 //print $sql;
diff --git a/htdocs/install/mysql/data/llx_c_action_trigger.sql b/htdocs/install/mysql/data/llx_c_action_trigger.sql
index 67363b98c72a7f3f83a911b94a606ae8f75274f9..29adb70c46e04631434f9ae6dc9d08f1a3ae29ac 100644
--- a/htdocs/install/mysql/data/llx_c_action_trigger.sql
+++ b/htdocs/install/mysql/data/llx_c_action_trigger.sql
@@ -60,11 +60,14 @@ insert into llx_c_action_trigger (code,label,description,elementtype,rang) value
 insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('MEMBER_DELETE','Member deleted','Executed when a member is deleted','member',25);
 insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('BILL_UNVALIDATE','Customer invoice unvalidated','Executed when a customer invoice status set back to draft','facture',10);
 insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_VALIDATE','Intervention validated','Executed when a intervention is validated','ficheinter',19);
-insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_CLASSIFYBILLED','Intervention set billed','Executed when a intervention is set to billed (when option FICHINTER_DISABLE_DETAILS is set)','ficheinter',19);
+insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_CLASSIFY_BILLED','Intervention set billed','Executed when a intervention is set to billed (when option FICHINTER_CLASSIFY_BILLED is set)','ficheinter',19);
+insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_CLASSIFY_UNBILLED','Intervention set unbilled','Executed when a intervention is set to unbilled (when option FICHINTER_CLASSIFY_BILLED is set)','ficheinter',19);
+insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_REOPEN','Intervention opened','Executed when a intervention is re-opened','ficheinter',19);
 insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_SENTBYMAIL','Intervention sent by mail','Executed when a intervention is sent by mail','ficheinter',19);
 insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROJECT_CREATE','Project creation','Executed when a project is created','project',30);
 insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROPAL_CLOSE_SIGNED','Customer proposal closed signed','Executed when a customer proposal is closed signed','propal',2);
 insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROPAL_CLOSE_REFUSED','Customer proposal closed refused','Executed when a customer proposal is closed refused','propal',2);
+insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROPAL_CLASSIFY_BILLED','Customer proposal set billed','Executed when a customer proposal is set to billed','propal',2);
 insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('TASK_CREATE','Task created','Executed when a project task is created','project',35);
 insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('TASK_MODIFY','Task modified','Executed when a project task is modified','project',36);
 insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('TASK_DELETE','Task deleted','Executed when a project task is deleted','project',37);
diff --git a/htdocs/install/mysql/migration/3.6.0-3.7.0.sql b/htdocs/install/mysql/migration/3.6.0-3.7.0.sql
index 93aa4df80830b16d29fd2672182df35da8993451..4c31bef80557e0e0d99631eaa95821cf5e41091b 100644
--- a/htdocs/install/mysql/migration/3.6.0-3.7.0.sql
+++ b/htdocs/install/mysql/migration/3.6.0-3.7.0.sql
@@ -21,8 +21,11 @@
 
 --insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_MODIFY','Intervention modified','Executed when a intervention is modified','ficheinter',19);
 --insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_DELETE','Intervention delete','Executed when a intervention is delete','ficheinter',19);
-insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_CLASSIFYBILLED','Intervention set billed','Executed when a intervention is set to billed (when option FICHINTER_DISABLE_DETAILS is set)','ficheinter',19);
+insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_CLASSIFY_BILLED','Intervention set billed','Executed when a intervention is set to billed (when option FICHINTER_CLASSIFY_BILLED is set)','ficheinter',19);
+insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_CLASSIFY_UNBILLED','Intervention set unbilled','Executed when a intervention is set to unbilled (when option FICHINTER_CLASSIFY_BILLED is set)','ficheinter',19);
 insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_SENTBYMAIL','Intervention sent by mail','Executed when a intervention is sent by mail','ficheinter',19);
+insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('FICHINTER_REOPEN','Intervention opened','Executed when a intervention is re-opened','ficheinter',19);
+insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROPAL_CLASSIFY_BILLED','Customer proposal set billed','Executed when a customer proposal is set to billed','propal',2);
 
 ALTER TABLE llx_notify ADD COLUMN fk_soc integer NULL after fk_action;
 
@@ -46,8 +49,6 @@ ALTER TABLE llx_fichinter ADD COLUMN ref_ext 	varchar(255);
 -- Defined only to have specific list for countries that can't use generic list (like argentina that need type A or B)
 ALTER TABLE llx_c_typent ADD COLUMN fk_country integer NULL AFTER libelle;
 
-INSERT INTO llx_c_action_trigger (rowid,code,label,description,elementtype,rang) values (29,'FICHINTER_CLASSIFY_BILLED','Classify intervention as billed','Executed when a intervention is classified as billed (when option FICHINTER_DISABLE_DETAILS is set)','ficheinter',19);
-
 INSERT INTO llx_c_actioncomm (id, code, type, libelle, module, active, position) values (11,'AC_INT','system','Intervention on site',NULL, 1, 4);
 
 ALTER TABLE llx_user ADD COLUMN fk_user_creat integer AFTER tms;
diff --git a/htdocs/langs/en_US/agenda.lang b/htdocs/langs/en_US/agenda.lang
index e1ca9d2a5c3066272fea0987ebc2760e43259ee6..45f5017671f3b0ecf51c880a9c6f4693643b8b9e 100644
--- a/htdocs/langs/en_US/agenda.lang
+++ b/htdocs/langs/en_US/agenda.lang
@@ -51,7 +51,6 @@ OrderApprovedInDolibarr=Order %s approved
 OrderRefusedInDolibarr=Order %s refused
 OrderBackToDraftInDolibarr=Order %s go back to draft status
 OrderCanceledInDolibarr=Order %s canceled
-InterventionValidatedInDolibarr=Intervention %s validated
 ProposalSentByEMail=Commercial proposal %s sent by EMail
 OrderSentByEMail=Customer order %s sent by EMail
 InvoiceSentByEMail=Customer invoice %s sent by EMail
@@ -59,8 +58,6 @@ SupplierOrderSentByEMail=Supplier order %s sent by EMail
 SupplierInvoiceSentByEMail=Supplier invoice %s sent by EMail
 ShippingSentByEMail=Shipping %s sent by EMail
 ShippingValidated= Shipping %s validated
-InterventionSentByEMail=Intervention %s sent by EMail
-InterventionClassifiedBilled=Intervention %s classified as Billed
 NewCompanyToDolibarr= Third party created
 DateActionPlannedStart= Planned start date
 DateActionPlannedEnd= Planned end date
diff --git a/htdocs/langs/en_US/interventions.lang b/htdocs/langs/en_US/interventions.lang
index 7655616ffc5a8886c1deb0b75c03751d00c05bb9..c79da05364e615bb2b234ce4211a373fc94e9168 100644
--- a/htdocs/langs/en_US/interventions.lang
+++ b/htdocs/langs/en_US/interventions.lang
@@ -31,6 +31,14 @@ RelatedInterventions=Related interventions
 ShowIntervention=Show intervention
 SendInterventionRef=Submission of intervention %s
 SendInterventionByMail=Send intervention by Email
+InterventionCreatedInDolibarr=Intervention %s created
+InterventionValidatedInDolibarr=Intervention %s validated
+InterventionModifiedInDolibarr=Intervention %s modified
+InterventionClassifiedBilledInDolibarr=Intervention %s set as billed
+InterventionClassifiedUnbilledInDolibarr=Intervention %s set as unbilled
+InterventionSentByEMail=Intervention %s sent by EMail
+InterventionDeletedInDolibarr=Intervention %s deleted
+SearchAnIntervention=Search an intervention
 ##### Types de contacts #####
 TypeContact_fichinter_internal_INTERREPFOLL=Representative following-up intervention
 TypeContact_fichinter_internal_INTERVENING=Intervening
diff --git a/htdocs/langs/en_US/other.lang b/htdocs/langs/en_US/other.lang
index 1e74b72f635c87a6b1905bbade5e207e40286aee..f5b39b3f704ea18fcdedfd0196860f7ca29bd38d 100644
--- a/htdocs/langs/en_US/other.lang
+++ b/htdocs/langs/en_US/other.lang
@@ -203,25 +203,26 @@ ForgetIfNothing=If you didn't request this change, just forget this email. Your
 
 ##### Calendar common #####
 AddCalendarEntry=Add entry in calendar %s
-NewCompanyToDolibarr=Company %s added into Dolibarr
-ContractValidatedInDolibarr=Contract %s validated in Dolibarr
-ContractCanceledInDolibarr=Contract %s canceled in Dolibarr
-ContractClosedInDolibarr=Contract %s closed in Dolibarr
-PropalClosedSignedInDolibarr=Proposal %s signed in Dolibarr
-PropalClosedRefusedInDolibarr=Proposal %s refused in Dolibarr
-PropalValidatedInDolibarr=Proposal %s validated in Dolibarr
-InvoiceValidatedInDolibarr=Invoice %s validated in Dolibarr
-InvoicePaidInDolibarr=Invoice %s changed to paid in Dolibarr
-InvoiceCanceledInDolibarr=Invoice %s canceled in Dolibarr
-PaymentDoneInDolibarr=Payment %s done in Dolibarr
-CustomerPaymentDoneInDolibarr=Customer payment %s done in Dolibarr
-SupplierPaymentDoneInDolibarr=Supplier payment %s done in Dolibarr
-MemberValidatedInDolibarr=Member %s validated in Dolibarr
-MemberResiliatedInDolibarr=Member %s resiliated in Dolibarr
-MemberDeletedInDolibarr=Member %s deleted from Dolibarr
-MemberSubscriptionAddedInDolibarr=Subscription for member %s added in Dolibarr
-ShipmentValidatedInDolibarr=Shipment %s validated in Dolibarr
-ShipmentDeletedInDolibarr=Shipment %s deleted from Dolibarr
+NewCompanyToDolibarr=Company %s added
+ContractValidatedInDolibarr=Contract %s validated
+ContractCanceledInDolibarr=Contract %s canceled
+ContractClosedInDolibarr=Contract %s closed
+PropalClosedSignedInDolibarr=Proposal %s signed
+PropalClosedRefusedInDolibarr=Proposal %s refused
+PropalValidatedInDolibarr=Proposal %s validated
+PropalClassifiedBilledInDolibarr=Proposal %s classified billed
+InvoiceValidatedInDolibarr=Invoice %s validated
+InvoicePaidInDolibarr=Invoice %s changed to paid
+InvoiceCanceledInDolibarr=Invoice %s canceled
+PaymentDoneInDolibarr=Payment %s done
+CustomerPaymentDoneInDolibarr=Customer payment %s done
+SupplierPaymentDoneInDolibarr=Supplier payment %s done
+MemberValidatedInDolibarr=Member %s validated
+MemberResiliatedInDolibarr=Member %s resiliated
+MemberDeletedInDolibarr=Member %s deleted
+MemberSubscriptionAddedInDolibarr=Subscription for member %s added
+ShipmentValidatedInDolibarr=Shipment %s validated
+ShipmentDeletedInDolibarr=Shipment %s deleted
 ##### Export #####
 Export=Export
 ExportsArea=Exports area
diff --git a/htdocs/societe/soc.php b/htdocs/societe/soc.php
index 54effb54b208d565390674f155cc26d39e72ffda..d9c5e70283cd797178c7de1b0d049c10c43cffc2 100644
--- a/htdocs/societe/soc.php
+++ b/htdocs/societe/soc.php
@@ -781,7 +781,7 @@ else
             print '<div class="hideonsmartphone float">';
             print $langs->trans("ThirdPartyType").': &nbsp; &nbsp; ';
             print '</div>';
-            print '<input type="radio" id="1radiocompany" class="flat" name="private"  value="0"'.($private?'':' checked="checked"').'>';
+            print '<input type="radio" id="radiocompany" class="flat" name="private"  value="0"'.($private?'':' checked="checked"').'>';
 	        print '<label for="radiocompany">';
 	        print '&nbsp;';
             print $langs->trans("Company/Fundation");
diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php
index b8467076f4000f12a64b07858285105e26e7c779..0f5644dc4061170aba822c41d7bd0a5678a0e573 100644
--- a/htdocs/theme/eldy/style.css.php
+++ b/htdocs/theme/eldy/style.css.php
@@ -830,7 +830,7 @@ foreach($mainmenuusedarray as $val)
 
 .bodylogin
 {
-	background: #fbfbfb;
+	background: #f0f0f0;
 	/* -moz-box-shadow:    inset 0 0 10px #000000;
    	-webkit-box-shadow: inset 0 0 10px #000000;
    	box-shadow:         inset 0 0 10px #000000; */
@@ -861,22 +861,27 @@ form#login {
 	padding-bottom:12px;
 	max-width: 540px;
 
-	border: 1px solid #C0C0C0;
-	background-color: #E0E0E0;
-
-    -moz-box-shadow: 3px 2px 20px #CCC;
+	background-color: #FFFFFF;
+	
+	-moz-box-shadow: 0 4px 23px 5px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(60,60,60,0.15);
+	-webkit-box-shadow: 0 4px 23px 5px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(60,60,60,0.15);
+	box-shadow: 0 4px 23px 5px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(60,60,60,0.15);
+	/*-moz-box-shadow: 3px 2px 20px #CCC;
     -webkit-box-shadow: 3px 2px 20px #CCC;
-    box-shadow: 3px 2px 20px #CCC;
+    box-shadow: 3px 2px 20px #CCC;*/
 
 	border-radius: 8px;
-	border:solid 1px rgba(128,128,128,.4);
+	border:solid 1px rgba(80,80,80,.4);
+	
 	border-top:solid 1px f8f8f8;
+	/*
 	background-color: #f8f8f8;
 	background-image: -o-linear-gradient(top, rgba(250,250,250,.6) 0%, rgba(192,192,192,.3) 100%);
 	background-image: -moz-linear-gradient(top, rgba(250,250,250,.6) 0%, rgba(192,192,192,.3) 100%);
 	background-image: -webkit-linear-gradient(top, rgba(250,250,250,.6) 0%, rgba(192,192,192,.3) 100%);
 	background-image: -ms-linear-gradient(top, rgba(250,250,250,.6) 0%, rgba(192,192,192,.3) 100%);
 	background-image: linear-gradient(top, rgba(250,250,250,.6) 0%, rgba(192,192,192,.3) 100%);
+	*/
 }
 div#login_left, div#login_right {
 	display: inline-block;