diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php index 92e63c6fa67..86b9964bd03 100644 --- a/htdocs/comm/propal.php +++ b/htdocs/comm/propal.php @@ -1180,37 +1180,6 @@ if ($action == 'create') $object = new Propal($db); - $numpr=''; - $obj = $conf->global->PROPALE_ADDON; - if ($obj) - { - if (! empty($conf->global->PROPALE_ADDON) && is_readable(DOL_DOCUMENT_ROOT ."/core/modules/propale/".$conf->global->PROPALE_ADDON.".php")) - { - require_once DOL_DOCUMENT_ROOT ."/core/modules/propale/".$conf->global->PROPALE_ADDON.'.php'; - $modPropale = new $obj; - $numpr = $modPropale->getNextValue($soc,$object); - } - } - - // Fix pour modele numerotation qui deconne - // Si numero deja pris (ne devrait pas arriver), on incremente par .num+1 - $sql = "SELECT count(*) as nb"; - $sql.= " FROM ".MAIN_DB_PREFIX."propal"; - $sql.= " WHERE ref LIKE '".$numpr."%'"; - $sql.= " AND entity = ".$conf->entity; - - $resql=$db->query($sql); - if ($resql) - { - $obj=$db->fetch_object($resql); - $num = $obj->nb; - $db->free($resql); - if ($num > 0) - { - $numpr .= "." . ($num + 1); - } - } - print '
'; print ''; print ''; @@ -1222,12 +1191,9 @@ if ($action == 'create') } print ''; - - // Ref - print ''; - print ''; - print ''; - print ''; + + // Reference + print ''; // Ref customer print '
'.$langs->trans("Ref").''.$numpr.'
'.$langs->trans('Ref').''.$langs->trans("Draft").'
'.$langs->trans('RefCustomer').''; @@ -1990,10 +1956,10 @@ else if ($action != 'statut' && $action <> 'editline') { // Validate - if ($object->statut == 0 && $user->rights->propal->valider) + if ($object->statut == 0 && $object->total_ttc >= 0 && count($object->lines) > 0 && $user->rights->propal->valider) { if (count($object->lines) > 0) print ''.$langs->trans('Validate').''; - else print ''.$langs->trans('Validate').''; + //else print ''.$langs->trans('Validate').''; } // Edit diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index c80007c8947..4b3686db511 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -6,7 +6,7 @@ * Copyright (C) 2005-2013 Regis Houssin * Copyright (C) 2006 Andre Cianfarani * Copyright (C) 2008 Raphael Bertrand - * Copyright (C) 2010-2012 Juanjo Menent + * Copyright (C) 2010-2013 Juanjo Menent * Copyright (C) 2010-2011 Philippe Grand * Copyright (C) 2012 Christophe Battarel * @@ -720,7 +720,7 @@ class Propal extends CommonObject if ($this->id) { - if (empty($this->ref)) $this->ref='(PROV'.$this->id.')'; + $this->ref='(PROV'.$this->id.')'; $sql = 'UPDATE '.MAIN_DB_PREFIX."propal SET ref='".$this->ref."' WHERE rowid=".$this->id; dol_syslog(get_class($this)."::create sql=".$sql); @@ -1178,11 +1178,29 @@ class Propal extends CommonObject $now=dol_now(); if ($user->rights->propale->valider) - { + { $this->db->begin(); + + // Numbering module definition + $soc = new Societe($this->db); + $soc->fetch($this->socid); + + // Class of company linked to propal + $result=$soc->set_as_client(); + + // Define new ref + if (! $error && (preg_match('/^[\(]?PROV/i', $this->ref))) + { + $num = $this->getNextNumRef($soc); + } + else + { + $num = $this->ref; + } $sql = "UPDATE ".MAIN_DB_PREFIX."propal"; - $sql.= " SET fk_statut = 1, date_valid='".$this->db->idate($now)."', fk_user_valid=".$user->id; + $sql.= " SET ref = '".$num."',"; + $sql.= " fk_statut = 1, date_valid='".$this->db->idate($now)."', fk_user_valid=".$user->id; $sql.= " WHERE rowid = ".$this->id." AND fk_statut = 0"; dol_syslog(get_class($this).'::valid sql='.$sql); diff --git a/htdocs/langs/ca_ES/propal.lang b/htdocs/langs/ca_ES/propal.lang index 0d862ce19a9..6da060d91f8 100644 --- a/htdocs/langs/ca_ES/propal.lang +++ b/htdocs/langs/ca_ES/propal.lang @@ -19,7 +19,7 @@ DeleteProp=Eliminar pressupost ValidateProp=Validar pressupost AddProp=Crear pressupost ConfirmDeleteProp=Esteu segur de voler eliminar aquest pressupost? -ConfirmValidateProp=Esteu segur de voler validar aquest pressupost? +ConfirmValidateProp=Esteu segur de voler validar aquest pressupost sota la referència %s? LastPropals=Els %s darrers pressupostos LastClosedProposals=Els %s darrers pressupostos tancats LastModifiedProposals=Els %s darrers pressupostos modificats diff --git a/htdocs/langs/en_US/propal.lang b/htdocs/langs/en_US/propal.lang index 3f76ca5ecda..197a9f52146 100644 --- a/htdocs/langs/en_US/propal.lang +++ b/htdocs/langs/en_US/propal.lang @@ -19,7 +19,7 @@ DeleteProp=Delete commercial proposal ValidateProp=Validate commercial proposal AddProp=Add proposal ConfirmDeleteProp=Are you sure you want to delete this commercial proposal ? -ConfirmValidateProp=Are you sure you want to validate this commercial proposal ? +ConfirmValidateProp=Are you sure you want to validate this commercial proposal under name %s ? LastPropals=Last %s proposals LastClosedProposals=Last %s closed proposals LastModifiedProposals=Last %s modified proposals diff --git a/htdocs/langs/es_ES/propal.lang b/htdocs/langs/es_ES/propal.lang index c342baac8f4..03f7a7a9e64 100644 --- a/htdocs/langs/es_ES/propal.lang +++ b/htdocs/langs/es_ES/propal.lang @@ -20,7 +20,7 @@ DeleteProp=Eliminar presupuesto ValidateProp=Validar presupuesto AddProp=Crear presupuesto ConfirmDeleteProp=¿Está seguro de querer eliminar este presupuesto? -ConfirmValidateProp=¿Está seguro de querer validar este presupuesto? +ConfirmValidateProp=¿Está seguro de querer validar este presupuesto bajo la referencia %s ? LastPropals=Los %s últimos presupuestos LastClosedProposals=Los %s últimos presupuestos cerrados LastModifiedProposals=Los %s últimos presupuestos modificados diff --git a/htdocs/langs/fr_FR/propal.lang b/htdocs/langs/fr_FR/propal.lang index 124910b907e..5a4c05f0d6d 100644 --- a/htdocs/langs/fr_FR/propal.lang +++ b/htdocs/langs/fr_FR/propal.lang @@ -19,7 +19,7 @@ DeleteProp=Supprimer proposition ValidateProp=Valider proposition AddProp=Créer proposition ConfirmDeleteProp=Êtes-vous sûr de vouloir effacer cette proposition commerciale ? -ConfirmValidateProp=Êtes-vous sûr de vouloir valider cette proposition commerciale ? +ConfirmValidateProp=Êtes-vous sûr de vouloir valider cette proposition commerciale sous la référence %s ? LastPropals=Les %s dernières propales LastClosedProposals=Les %s dernières propositions commerciales fermées LastModifiedProposals=Les %s dernières propositions commerciales modifiées