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 . '&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").': '; 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 ' '; 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;