Skip to content

Commit

Permalink
Merge branch '3.5' of https://github.com/Dolibarr/dolibarr into 3.5
Browse files Browse the repository at this point in the history
  • Loading branch information
grandoc committed Nov 28, 2013
2 parents d5606b6 + bdf8100 commit 1ac5bd3
Show file tree
Hide file tree
Showing 9 changed files with 138 additions and 141 deletions.
4 changes: 3 additions & 1 deletion ChangeLog
Expand Up @@ -136,7 +136,9 @@ Fix: Bad rounding on margin calculations and display.
Fix: Option drop table into backup was broken.
Fix: [ bug #1105 ] Searching Boxes other search option
Fix: wrong buy price update
Fix :[ bug #1142 ] Set paiement on invoice (PGSql)
Fix: [ bug #1142 ] Set paiement on invoice (PGSql)
Fix: [ bug #1145 ] Agenda button list type do not display
Fix: [ bug #1148 ] Product consomation : supplier order bad status

***** ChangeLog for 3.4.1 compared to 3.4.0 *****
Fix: Display buying price on line edit when no supplier price is defined
Expand Down
3 changes: 2 additions & 1 deletion build/makepack-dolibarr.pl
Expand Up @@ -495,11 +495,12 @@
$newbuild =~ s/(dev|alpha)/0.1.a/gi; # dev
$newbuild =~ s/beta/0.2.beta1/gi; # beta
$newbuild =~ s/rc./0.3.rc1/gi; # rc
if ($newbuild !~ /-/) { $newbuild.='-3'; } # finale
if ($newbuild !~ /-/) { $newbuild.='-0.3'; } # finale
#$newbuild =~ s/(dev|alpha)/0/gi; # dev
#$newbuild =~ s/beta/1/gi; # beta
#$newbuild =~ s/rc./2/gi; # rc
#if ($newbuild !~ /-/) { $newbuild.='-3'; } # finale
#print "newbuild=".$newbuild."\n";exit;
$REL1 = $newbuild; $REL1 =~ s/-.*$//gi;
if ($RPMSUBVERSION eq 'auto') { $RPMSUBVERSION = $newbuild; $RPMSUBVERSION =~ s/^.*-//gi; }
print "Version is $MAJOR.$MINOR.$REL1-$RPMSUBVERSION\n";
Expand Down
2 changes: 1 addition & 1 deletion htdocs/core/class/html.form.class.php
Expand Up @@ -195,7 +195,7 @@ function editfieldval($text, $htmlname, $value, $object, $perm, $typeofdata='str
}
else
{
if ($typeofdata == 'email') $ret.=dol_print_email($value,0,0,0,0,1);
if ($typeofdata == 'email') $ret.=dol_print_email($value,0,0,0,0,1);
elseif ($typeofdata == 'amount') $ret.=($value != '' ? price($value,'',$langs) : '');
elseif (preg_match('/^text/',$typeofdata) || preg_match('/^note/',$typeofdata)) $ret.=dol_htmlentitiesbr($value);
elseif ($typeofdata == 'day' || $typeofdata == 'datepicker') $ret.=dol_print_date($value,'day');
Expand Down
224 changes: 110 additions & 114 deletions htdocs/core/lib/agenda.lib.php
Expand Up @@ -43,129 +43,125 @@
* @param string $actioncode Preselected value of actioncode for filter on type
* @return void
*/
function print_actions_filter($form,$canedit,$status,$year,$month,$day,$showbirthday,$filtera,$filtert,$filterd,$pid,$socid,$showextcals=array(),$actioncode='')
{
global $conf,$user,$langs,$db;
function print_actions_filter($form, $canedit, $status, $year, $month, $day, $showbirthday, $filtera, $filtert, $filterd, $pid, $socid, $showextcals=array(), $actioncode='') {

global $conf, $user, $langs, $db;

// Filters
if ($canedit || ! empty($conf->projet->enabled))
print '<form name="listactionsfilter" class="listactionsfilter" action="' . $_SERVER ["PHP_SELF"] . '" method="POST">';
print '<input type="hidden" name="token" value="' . $_SESSION ['newtoken'] . '">';
print '<input type="hidden" name="status" value="' . $status . '">';
print '<input type="hidden" name="year" value="' . $year . '">';
print '<input type="hidden" name="month" value="' . $month . '">';
print '<input type="hidden" name="day" value="' . $day . '">';
print '<input type="hidden" name="showbirthday" value="' . $showbirthday . '">';
print '<table class="nobordernopadding" width="100%">';

print '<tr><td class="nowrap">';

print '<table class="nobordernopadding">';

if ($canedit)
{
print '<form name="listactionsfilter" class="listactionsfilter" action="'.$_SERVER["PHP_SELF"].'" method="POST">';
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
print '<input type="hidden" name="status" value="'.$status.'">';
print '<input type="hidden" name="year" value="'.$year.'">';
print '<input type="hidden" name="month" value="'.$month.'">';
print '<input type="hidden" name="day" value="'.$day.'">';
print '<input type="hidden" name="showbirthday" value="'.$showbirthday.'">';
print '<table class="nobordernopadding" width="100%">';
if ($canedit || ! empty($conf->projet->enabled))
{
print '<tr><td class="nowrap">';

print '<table class="nobordernopadding">';

if ($canedit)
{
print '<tr>';
print '<td class="nowrap">';
print $langs->trans("ActionsAskedBy");
print ' &nbsp;</td><td class="nowrap">';
print $form->select_dolusers($filtera,'userasked',1,'',!$canedit);
print '</td>';
print '</tr>';

print '<tr>';
print '<td class="nowrap">';
print $langs->trans("or").' '.$langs->trans("ActionsToDoBy");
print ' &nbsp;</td><td class="nowrap">';
print $form->select_dolusers($filtert,'usertodo',1,'',!$canedit);
print '</td></tr>';

print '<tr>';
print '<td class="nowrap">';
print $langs->trans("or").' '.$langs->trans("ActionsDoneBy");
print ' &nbsp;</td><td class="nowrap">';
print $form->select_dolusers($filterd,'userdone',1,'',!$canedit);
print '</td></tr>';

include_once DOL_DOCUMENT_ROOT.'/core/class/html.formactions.class.php';
$formactions=new FormActions($db);
print '<tr>';
print '<td class="nowrap">';
print $langs->trans("Type");
print ' &nbsp;</td><td class="nowrap">';

print $formactions->select_type_actions($actioncode, "actioncode", '', (empty($conf->global->AGENDA_USE_EVENT_TYPE)?1:0));

print '</td></tr>';
}

if (! empty($conf->projet->enabled) && $user->rights->projet->lire)
{
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
$formproject=new FormProjets($db);
print '<tr>';
print '<td class="nowrap">';
print $langs->trans("ActionsAskedBy");
print ' &nbsp;</td><td class="nowrap">';
print $form->select_dolusers($filtera, 'userasked', 1, '', ! $canedit);
print '</td>';
print '</tr>';

print '<tr>';
print '<td class="nowrap">';
print $langs->trans("or") . ' ' . $langs->trans("ActionsToDoBy");
print ' &nbsp;</td><td class="nowrap">';
print $form->select_dolusers($filtert, 'usertodo', 1, '', ! $canedit);
print '</td></tr>';

print '<tr>';
print '<td class="nowrap">';
print $langs->trans("or") . ' ' . $langs->trans("ActionsDoneBy");
print ' &nbsp;</td><td class="nowrap">';
print $form->select_dolusers($filterd, 'userdone', 1, '', ! $canedit);
print '</td></tr>';

include_once DOL_DOCUMENT_ROOT . '/core/class/html.formactions.class.php';
$formactions = new FormActions ( $db );
print '<tr>';
print '<td class="nowrap">';
print $langs->trans("Type");
print ' &nbsp;</td><td class="nowrap">';

print $formactions->select_type_actions($actioncode, "actioncode", '', (empty($conf->global->AGENDA_USE_EVENT_TYPE) ? 1 : 0));

print '</td></tr>';
}

if (! empty($conf->projet->enabled) && $user->rights->projet->lire)
{
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formprojet.class.php';
$formproject=new FormProjets($db);

print '<tr>';
print '<td class="nowrap">';
print $langs->trans("Project").' &nbsp; ';
print '</td><td class="nowrap">';
$formproject->select_projects($socid?$socid:-1, $pid, 'projectid', 64);
print '</td></tr>';
}

print '</table>';
print '</td>';

// Buttons
print '<td align="center" valign="middle" class="nowrap">';
print img_picto($langs->trans("ViewCal"),'object_calendar','class="hideonsmartphone"').' <input type="submit" class="button" style="min-width:120px" name="viewcal" value="'.$langs->trans("ViewCal").'">';
print '<br>';
print img_picto($langs->trans("ViewWeek"),'object_calendarweek','class="hideonsmartphone"').' <input type="submit" class="button" style="min-width:120px" name="viewweek" value="'.$langs->trans("ViewWeek").'">';
print '<br>';
print img_picto($langs->trans("ViewDay"),'object_calendarday','class="hideonsmartphone"').' <input type="submit" class="button" style="min-width:120px" name="viewday" value="'.$langs->trans("ViewDay").'">';
print '<br>';
print img_picto($langs->trans("ViewList"),'object_list','class="hideonsmartphone"').' <input type="submit" class="button" style="min-width:120px" name="viewlist" value="'.$langs->trans("ViewList").'">';
print '</td>';

// Legend
if ($conf->use_javascript_ajax && is_array($showextcals))
print '<tr>';
print '<td class="nowrap">';
print $langs->trans("Project").' &nbsp; ';
print '</td><td class="nowrap">';
$formproject->select_projects($socid?$socid:-1, $pid, 'projectid', 64);
print '</td></tr>';
}

print '</table>';
print '</td>';

// Buttons
print '<td align="center" valign="middle" class="nowrap">';
print img_picto ( $langs->trans ( "ViewCal" ), 'object_calendar', 'class="hideonsmartphone"' ) . ' <input type="submit" class="button" style="min-width:120px" name="viewcal" value="' . $langs->trans ( "ViewCal" ) . '">';
print '<br>';
print img_picto ( $langs->trans ( "ViewWeek" ), 'object_calendarweek', 'class="hideonsmartphone"' ) . ' <input type="submit" class="button" style="min-width:120px" name="viewweek" value="' . $langs->trans ( "ViewWeek" ) . '">';
print '<br>';
print img_picto ( $langs->trans ( "ViewDay" ), 'object_calendarday', 'class="hideonsmartphone"' ) . ' <input type="submit" class="button" style="min-width:120px" name="viewday" value="' . $langs->trans ( "ViewDay" ) . '">';
print '<br>';
print img_picto ( $langs->trans ( "ViewList" ), 'object_list', 'class="hideonsmartphone"' ) . ' <input type="submit" class="button" style="min-width:120px" name="viewlist" value="' . $langs->trans ( "ViewList" ) . '">';
print '</td>';

// Legend
if ($conf->use_javascript_ajax && is_array($showextcals))
{
print '<td align="center" valign="middle" class="nowrap">';
print '<script type="text/javascript">' . "\n";
print 'jQuery(document).ready(function () {' . "\n";
print 'jQuery("#check_mytasks").click(function() { jQuery(".family_mytasks").toggle(); jQuery(".family_other").toggle(); });' . "\n";
print 'jQuery("#check_birthday").click(function() { jQuery(".family_birthday").toggle(); });' . "\n";
print 'jQuery(".family_birthday").toggle();' . "\n";
print '});' . "\n";
print '</script>' . "\n";
print '<table>';
if (! empty($conf->global->MAIN_JS_SWITCH_AGENDA))
{
if (count($showextcals) > 0)
{
print '<td align="center" valign="middle" class="nowrap">';
print '<script type="text/javascript">'."\n";
print 'jQuery(document).ready(function () {'."\n";
print 'jQuery("#check_mytasks").click(function() { jQuery(".family_mytasks").toggle(); jQuery(".family_other").toggle(); });'."\n";
print 'jQuery("#check_birthday").click(function() { jQuery(".family_birthday").toggle(); });'."\n";
print 'jQuery(".family_birthday").toggle();'."\n";
print '});'."\n";
print '</script>'."\n";
print '<table>';
if (! empty($conf->global->MAIN_JS_SWITCH_AGENDA))
{
if (count($showextcals) > 0)
{
print '<tr><td><input type="checkbox" id="check_mytasks" name="check_mytasks" checked="true" disabled="disabled"> '.$langs->trans("LocalAgenda").'</td></tr>';
foreach($showextcals as $val)
{
$htmlname=dol_string_nospecial($val['name']);
print '<script type="text/javascript">'."\n";
print 'jQuery(document).ready(function () {'."\n";
print 'jQuery("#check_'.$htmlname.'").click(function() { jQuery(".family_'.$htmlname.'").toggle(); });'."\n";
print '});'."\n";
print '</script>'."\n";
print '<tr><td><input type="checkbox" id="check_'.$htmlname.'" name="check_'.$htmlname.'" checked="true"> '.$val['name'].'</td></tr>';
}
}
}
print '<tr><td><input type="checkbox" id="check_birthday" name="check_birthday checked="false"> '.$langs->trans("AgendaShowBirthdayEvents").'</td></tr>';
print '</table>';
print '</td>';
print '<tr><td><input type="checkbox" id="check_mytasks" name="check_mytasks" checked="true" disabled="disabled"> ' . $langs->trans ( "LocalAgenda" ) . '</td></tr>';
foreach ($showextcals as $val)
{
$htmlname = dol_string_nospecial ( $val ['name'] );
print '<script type="text/javascript">' . "\n";
print 'jQuery(document).ready(function () {' . "\n";
print 'jQuery("#check_' . $htmlname . '").click(function() { jQuery(".family_' . $htmlname . '").toggle(); });' . "\n";
print '});' . "\n";
print '</script>' . "\n";
print '<tr><td><input type="checkbox" id="check_' . $htmlname . '" name="check_' . $htmlname . '" checked="true"> ' . $val ['name'] . '</td></tr>';
}
}

print '</tr>';
}
print '<tr><td><input type="checkbox" id="check_birthday" name="check_birthday checked="false"> ' . $langs->trans ( "AgendaShowBirthdayEvents" ) . '</td></tr>';
print '</table>';
print '</form>';
print '</td>';
}

print '</tr>';

print '</table>';
print '</form>';
}


Expand Down
6 changes: 1 addition & 5 deletions htdocs/core/lib/ajax.lib.php
Expand Up @@ -146,11 +146,7 @@ function ajax_autocompleter($selected, $htmlname, $url, $urloption='', $minLengt
}
// Update an input
if (ui.item.update) {
// clear old data before update
$.each(ui.item.update, function(key, value) {
$("#" + key).val("");
});
// update fields
// loop on each "update" fields
$.each(ui.item.update, function(key, value) {
$("#" + key).val(value).trigger("change");
});
Expand Down
10 changes: 5 additions & 5 deletions htdocs/fourn/commande/fiche.php
Expand Up @@ -1226,9 +1226,9 @@

// Ref supplier
print '<tr><td>';
print $form->editfieldkey("RefSupplier",'ref_supplier',$langs->trans($object->ref_supplier),$object,$user->rights->fournisseur->commande->creer);
print $form->editfieldkey("RefSupplier",'ref_supplier',$object->ref_supplier,$object,$user->rights->fournisseur->commande->creer);
print '</td><td colspan="2">';
print $form->editfieldval("RefSupplier",'ref_supplier',$langs->trans($object->ref_supplier),$object,$user->rights->fournisseur->commande->creer);
print $form->editfieldval("RefSupplier",'ref_supplier',$object->ref_supplier,$object,$user->rights->fournisseur->commande->creer);
print '</td></tr>';

// Fournisseur
Expand Down Expand Up @@ -1678,9 +1678,9 @@
print '<td colspan="3">';

$ajaxoptions=array(
'update' => array('qty_predef' => 'qty_predef', 'remise_percent_predef' => 'remise_percent_predef'),
'option_disabled' => 'addPredefinedProductButton',
'error' => $langs->trans("NoPriceDefinedForThisSupplier")
'update' => array('qty_predef'=>'qty','remise_percent_predef' => 'discount'), // html id tag will be edited with which ajax json response key
'option_disabled' => 'addPredefinedProductButton', // html id to disable once select is done
'error' => $langs->trans("NoPriceDefinedForThisSupplier") // translation of an error saved into var 'error'
);
$form->select_produits_fournisseurs($object->fourn_id, GETPOST('idprodfournprice'), 'idprodfournprice', '', '', $ajaxoptions);

Expand Down
6 changes: 3 additions & 3 deletions htdocs/fourn/facture/fiche.php
Expand Up @@ -2116,9 +2116,9 @@
print '<td colspan="4">';

$ajaxoptions=array(
'update' => array('qty_predef' => 'qty_predef', 'remise_percent_predef' => 'remise_percent_predef'),
'disabled' => 'addPredefinedProductButton',
'error' => $langs->trans("NoPriceDefinedForThisSupplier")
'update' => array('qty_predef'=>'qty','remise_percent_predef' => 'discount'), // html id tag will be edited with which ajax json response key
'disabled' => 'addPredefinedProductButton', // html id to disable once select is done
'error' => $langs->trans("NoPriceDefinedForThisSupplier") // translation of an error saved into var 'error'
);
$form->select_produits_fournisseurs($object->socid, GETPOST('idprodfournprice'), 'idprodfournprice', '', '', $ajaxoptions);

Expand Down
4 changes: 2 additions & 2 deletions htdocs/product/admin/product_tools.php
Expand Up @@ -107,7 +107,7 @@
$newlevel=$level;

//print "$objectstatic->id $newprice, $price_base_type, $newvat, $newminprice, $newlevel, $newnpr<br>\n";
$retm=$objectstatic->updatePrice($newprice, $price_base_type, $user, $newvat, $newminprice, $newlevel, $newnpr);
$retm=$objectstatic->updatePrice($objectstatic->id, $newprice, $price_base_type, $user, $newvat, $newminprice, $newlevel, $newnpr);
if ($retm < 0)
{
$error++;
Expand Down Expand Up @@ -136,7 +136,7 @@
if (! empty($price_base_type) && ! $updatelevel1)
{
//print "$objectstatic->id $newprice, $price_base_type, $newvat, $newminprice, $newlevel, $newnpr<br>\n";
$ret=$objectstatic->updatePrice($newprice, $price_base_type, $user, $newvat, $newminprice, $newlevel, $newnpr);
$ret=$objectstatic->updatePrice($objectstatic->id,$newprice, $price_base_type, $user, $newvat, $newminprice, $newlevel, $newnpr);
}

if ($ret < 0 || $retm < 0) $error++;
Expand Down
20 changes: 11 additions & 9 deletions htdocs/product/stats/commande_fournisseur.php
Expand Up @@ -25,7 +25,7 @@

require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/product.lib.php';
require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
require_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php';
require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';

$langs->load("orders");
Expand Down Expand Up @@ -145,26 +145,28 @@
print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"c.fk_statut","","&amp;id=".$product->id,'align="right"',$sortfield,$sortorder);
print "</tr>\n";

$commandestatic=new Commande($db);

$commandestatic=new CommandeFournisseur($db);
if ($num > 0)
{
$var=True;
while ($i < $num && $i < $conf->liste_limit)
{
$objp = $db->fetch_object($result);
$var=!$var;

$commandestatic->id=$objp->commandeid;
$commandestatic->ref=$objp->ref;
$commandestatic->statut=$objp->statut;

print "<tr ".$bc[$var].">";
print '<td><a href="'.DOL_URL_ROOT.'/fourn/commande/fiche.php?id='.$objp->commandeid.'">'.img_object($langs->trans("ShowOrder"),"order").' ';
print $objp->ref;
print '<td>'.$commandestatic->getNomUrl(1)."</td>\n";
print "</a></td>\n";
print '<td><a href="'.DOL_URL_ROOT.'/fourn/fiche.php?socid='.$objp->socid.'">'.img_object($langs->trans("ShowCompany"),"company").' '.dol_trunc($objp->nom,44).'</a></td>';
print "<td>".$objp->code_client."</td>\n";
print "<td align=\"center\">";
print dol_print_date($db->jdate($objp->date_commande))."</td>";
print "<td align=\"right\">".price($objp->total_ht)."</td>\n";
print '<td align="right">'.$commandestatic->LibStatut($objp->statut,$objp->facture,5).'</td>';
print '<td align="center">'.dol_print_date($db->jdate($objp->date_commande))."</td>";
print '<td align="right">'.price($objp->total_ht)."</td>\n";
print '<td align="right">'.$commandestatic->getLibStatut(4).'</td>';
print "</tr>\n";
$i++;
}
Expand Down

0 comments on commit 1ac5bd3

Please sign in to comment.