diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index c236df18199..51582886af2 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -818,15 +818,16 @@ class Form * * @param string $selected Preselected type * @param string $htmlname Name of field in form - * @param string $filter optional filters criteras (example: 's.rowid <> x') + * @param string $filter optional filters criteras (example: 's.rowid <> x', 's.client IN (1,3)') * @param int $showempty Add an empty field * @param int $showtype Show third party type in combolist (customer, prospect or supplier) * @param int $forcecombo Force to use combo box * @param array $events Ajax event options to run on change. Example: array(array('method'=>'getContacts', 'url'=>dol_buildpath('/core/ajax/contacts.php',1), 'htmlname'=>'contactid', 'params'=>array('add-customer-contact'=>'disabled'))) * @param int $limit Maximum number of elements + * @param string $morecss Add more css styles to the SELECT component * @return string HTML string with select box for thirdparty. */ - function select_company($selected='', $htmlname='socid', $filter='', $showempty=0, $showtype=0, $forcecombo=0, $events=array(), $limit=0) + function select_company($selected='', $htmlname='socid', $filter='', $showempty=0, $showtype=0, $forcecombo=0, $events=array(), $limit=0, $morecss='minwidth100') { $out=''; @@ -860,7 +861,7 @@ class Form } else {*/ - $out.=$this->select_thirdparty_list($selected, $htmlname, $filter, $showempty, $showtype, $forcecombo, $events, '', 0, $limit); + $out.=$this->select_thirdparty_list($selected, $htmlname, $filter, $showempty, $showtype, $forcecombo, $events, '', 0, $limit, $morecss); //} return $out; @@ -879,9 +880,10 @@ class Form * @param string $filterkey Filter on key value * @param int $outputmode 0=HTML select string, 1=Array * @param int $limit Limit number of answers + * @param string $morecss Add more css styles to the SELECT component * @return string HTML string with */ - function select_thirdparty_list($selected='',$htmlname='socid',$filter='',$showempty=0, $showtype=0, $forcecombo=0, $events=array(), $filterkey='', $outputmode=0, $limit=0) + function select_thirdparty_list($selected='',$htmlname='socid',$filter='',$showempty=0, $showtype=0, $forcecombo=0, $events=array(), $filterkey='', $outputmode=0, $limit=0, $morecss='minwidth100') { global $conf,$user,$langs; @@ -935,7 +937,7 @@ class Form } // Construct $out and $outarray - $out.= ''."\n"; $textifempty=''; // Do not use textempty = ' ' or ' ' here, or search on key will search on ' key'. diff --git a/htdocs/product/price.php b/htdocs/product/price.php index 1e454ca724b..915f1988843 100644 --- a/htdocs/product/price.php +++ b/htdocs/product/price.php @@ -110,7 +110,9 @@ if (empty($reshook)) break; // We found submited price } } - } else { + } + else + { $level = 0; $newprice = price2num($_POST ["price"], 'MU'); $newprice_min = price2num($_POST ["price_min"], 'MU'); @@ -128,7 +130,8 @@ if (empty($reshook)) $action='edit_price'; } - if ($newprice < $newprice_min && ! empty($object->fk_price_expression)) { + if ($newprice < $newprice_min && ! empty($object->fk_price_expression)) + { $newprice = $newprice_min; //Set price same as min, the user will not see the } @@ -185,11 +188,13 @@ if (empty($reshook)) $object->updatePrice(0, $object->price_base_type, $user, $object->tva_tx, 0, $level, $object->tva_npr, 1); } - if ($action == 'edit_price_by_qty') { // Edition d'un prix par quantité + if ($action == 'edit_price_by_qty') + { // Edition d'un prix par quantité $rowid = GETPOST('rowid'); } - if ($action == 'update_price_by_qty') { // Ajout / Mise à jour d'un prix par quantité + if ($action == 'update_price_by_qty') + { // Ajout / Mise à jour d'un prix par quantité // Récupération des variables $rowid = GETPOST('rowid'); @@ -237,7 +242,8 @@ if (empty($reshook)) } } - if ($action == 'delete_price_by_qty') { + if ($action == 'delete_price_by_qty') + { $rowid = GETPOST('rowid'); $sql = "DELETE FROM " . MAIN_DB_PREFIX . "product_price_by_qty"; @@ -246,7 +252,8 @@ if (empty($reshook)) $result = $db->query($sql); } - if ($action == 'delete_all_price_by_qty') { + if ($action == 'delete_all_price_by_qty') + { $priceid = GETPOST('priceid'); $sql = "DELETE FROM " . MAIN_DB_PREFIX . "product_price_by_qty"; @@ -289,14 +296,15 @@ if (empty($reshook)) if ($result < 0) { setEventMessage($prodcustprice->error, 'errors'); } else { - setEventMessage($langs->trans('Save'), 'mesgs'); + setEventMessage($langs->trans('RecordSaved'), 'mesgs'); } $action = ''; } } - if ($action == 'delete_customer_price' && ($user->rights->produit->supprimer || $user->rights->service->supprimer)) { + if ($action == 'delete_customer_price' && ($user->rights->produit->supprimer || $user->rights->service->supprimer)) + { // Delete price by customer $prodcustprice->id = GETPOST('lineid'); $result = $prodcustprice->delete($user); @@ -304,13 +312,13 @@ if (empty($reshook)) if ($result < 0) { setEventMessage($prodcustprice->error, 'mesgs'); } else { - setEventMessage($langs->trans('Delete'), 'errors'); + setEventMessage($langs->trans('RecordDeleted'), 'errors'); } $action = ''; } - if ($action == 'update_customer_price_confirm' && !$cancel && ($user->rights->produit->creer || $user->rights->service->creer)) { - + if ($action == 'update_customer_price_confirm' && !$cancel && ($user->rights->produit->creer || $user->rights->service->creer)) + { $maxpricesupplier = $object->min_recommended_price(); $update_child_soc = GETPOST('updatechildprice'); @@ -644,7 +652,7 @@ print ''; print "\n"; -print "\n"; +dol_fiche_end(); /* ************************************************************************** */ @@ -653,7 +661,7 @@ print "\n"; /* */ /* ************************************************************************** */ -if (! $action || $action == 'delete') +if (! $action || $action == 'delete' || $action == 'showlog_customer_price' || $action == 'add_customer_price') { print "\n" . '
' . "\n"; @@ -669,7 +677,7 @@ if (! $action || $action == 'delete') */ if ($action == 'edit_price' && ($user->rights->produit->creer || $user->rights->service->creer)) { - print_fiche_titre($langs->trans("NewPrice"), '', ''); + print_fiche_titre($langs->trans("NewPrice"), ''); if (empty($conf->global->PRODUIT_MULTIPRICES)) { @@ -853,8 +861,6 @@ if ($result) if ($num > 0) { - print '
'; - if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) print_fiche_titre($langs->trans("DefaultPrice"),'',''); print ''; @@ -932,7 +938,8 @@ if ($result) print ''; // Action - if ($user->rights->produit->supprimer) { + if ($user->rights->produit->supprimer) + { print ''; print ''; print ''; print ''; @@ -1165,9 +1172,10 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) $option = '&socid=' . GETPOST('socid', 'int') . '&id=' . $object->id; - print_barre_liste($langs->trans('PriceByCustomerLog'), $page, $_SERVEUR ['PHP_SELF'], $option, $sortfield, $sortorder, '', count($prodcustprice->lines), $nbtotalofrecords); + print_barre_liste($langs->trans('PriceByCustomerLog'), $page, $_SERVEUR['PHP_SELF'], $option, $sortfield, $sortorder, '', count($prodcustprice->lines), $nbtotalofrecords, ''); - if (count($prodcustprice->lines) > 0) { + if (count($prodcustprice->lines) > 0) + { print ''; print ''; @@ -1189,9 +1197,9 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) $var = True; - foreach ($prodcustprice->lines as $line) { - - print ""; + foreach ($prodcustprice->lines as $line) + { + print ""; // Date $staticsoc = new Societe($db); $staticsoc->fetch($line->fk_soc); @@ -1219,7 +1227,7 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) } print "\n" . '
' . "\n"; - print ''; + print ''; print "\n

\n"; } else @@ -1268,12 +1276,12 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) print ''; print ''; - if (count($prodcustprice->lines) > 0) { - - $var = True; - - foreach ($prodcustprice->lines as $line) { + if (count($prodcustprice->lines) > 0) + { + $var = False; + foreach ($prodcustprice->lines as $line) + { print ""; // Date $staticsoc = new Societe($db); @@ -1298,26 +1306,33 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) // Todo Edit or delete button // Action - if ($user->rights->produit->supprimer || $user->rights->service->supprimer) { + if ($user->rights->produit->supprimer || $user->rights->service->supprimer) + { print ''; } print "\n"; } - } else { + } + else + { $colspan=9; if ($user->rights->produit->supprimer || $user->rights->service->supprimer) $colspan+=1; + print ""; print ''; + print ""; } print "
' . img_object($langs->trans("ShowUser"), 'user') . ' ' . $objp->login . ''; if ($i > 0) { print 'id . '&lineid=' . $objp->rowid . '">'; @@ -955,9 +962,9 @@ if ($result) } +// Add area to show/add/edit a price for a dedicated customer if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) { - $prodcustprice = new Productcustomerprice($db); $sortfield = GETPOST("sortfield", 'alpha'); @@ -979,7 +986,7 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) $search_soc = GETPOST('search_soc'); if (! empty($search_soc)) { - $filter ['soc.nom'] = $search_soc; + $filter['soc.nom'] = $search_soc; } if ($action == 'add_customer_price') @@ -997,7 +1004,7 @@ if (! empty($conf->global->PRODUIT_CUSTOMER_PRICES)) print '
' . $langs->trans('ThirdParty') . ''; - print $form->select_company('', 'socid', 's.rowid NOT IN (SELECT fk_soc FROM ' . MAIN_DB_PREFIX . 'product_customer_price WHERE fk_product='.$object->id.')', 1); + print $form->select_company('', 'socid', 's.client in (1,2,3) AND s.rowid NOT IN (SELECT fk_soc FROM ' . MAIN_DB_PREFIX . 'product_customer_price WHERE fk_product='.$object->id.')', 1, 0, 0, array(), 0, 'minwidth300'); print '
'; - print 'id . '&lineid=' . $line->id . '">'; - print img_delete(); - print ''; - print 'id . '&lineid=' . $line->id . '">'; - print img_edit(); - print ''; print 'id . '&socid=' . $line->fk_soc . '">'; print img_info(); print ''; + print ' '; + print 'id . '&lineid=' . $line->id . '">'; + print img_edit('default', 0, 'style="vertical-align: middle;"'); + print ''; + print ' '; + print 'id . '&lineid=' . $line->id . '">'; + print img_delete('default', 'style="vertical-align: middle;"'); + print ''; print '
'.$langs->trans('None').'
";