Merge remote-tracking branch 'origin/3.8' into 3.9
Conflicts: htdocs/core/lib/admin.lib.php
This commit is contained in:
commit
3b70bbb05a
@ -1280,7 +1280,7 @@ class Categorie extends CommonObject
|
|||||||
|
|
||||||
$sql = "SELECT ct.fk_categorie, c.label, c.rowid";
|
$sql = "SELECT ct.fk_categorie, c.label, c.rowid";
|
||||||
$sql .= " FROM " . MAIN_DB_PREFIX . "categorie_" . $this->MAP_CAT_TABLE[$type] . " as ct, " . MAIN_DB_PREFIX . "categorie as c";
|
$sql .= " FROM " . MAIN_DB_PREFIX . "categorie_" . $this->MAP_CAT_TABLE[$type] . " as ct, " . MAIN_DB_PREFIX . "categorie as c";
|
||||||
$sql .= " WHERE ct.fk_categorie = c.rowid AND ct.fk_" . $this->MAP_CAT_FK[$type] . " = " . $id . " AND c.type = " . $this->MAP_ID[$type];
|
$sql .= " WHERE ct.fk_categorie = c.rowid AND ct.fk_" . $this->MAP_CAT_FK[$type] . " = " . (int) $id . " AND c.type = " . $this->MAP_ID[$type];
|
||||||
$sql .= " AND c.entity IN (" . getEntity( 'category', 1 ) . ")";
|
$sql .= " AND c.entity IN (" . getEntity( 'category', 1 ) . ")";
|
||||||
|
|
||||||
$res = $this->db->query($sql);
|
$res = $this->db->query($sql);
|
||||||
|
|||||||
@ -556,7 +556,7 @@ if ($id > 0)
|
|||||||
if ( ($db->jdate($objp->dp) < ($now - $conf->propal->cloture->warning_delay)) && $objp->fk_statut == 1 ) {
|
if ( ($db->jdate($objp->dp) < ($now - $conf->propal->cloture->warning_delay)) && $objp->fk_statut == 1 ) {
|
||||||
print " ".img_warning();
|
print " ".img_warning();
|
||||||
}
|
}
|
||||||
print '</td><td align="right" width="80">'.dol_print_date($db->jdate($objp->dp),'day')."</td>\n";
|
print '</td><td align="right" width="80px">'.dol_print_date($db->jdate($objp->dp),'day')."</td>\n";
|
||||||
print '<td align="right" style="min-width: 60px">'.price($objp->total_ht).'</td>';
|
print '<td align="right" style="min-width: 60px">'.price($objp->total_ht).'</td>';
|
||||||
print '<td align="right" style="min-width: 60px" class="nowrap">'.$propal_static->LibStatut($objp->fk_statut,5).'</td></tr>';
|
print '<td align="right" style="min-width: 60px" class="nowrap">'.$propal_static->LibStatut($objp->fk_statut,5).'</td></tr>';
|
||||||
$i++;
|
$i++;
|
||||||
@ -637,7 +637,7 @@ if ($id > 0)
|
|||||||
$commande_static->total_tva = $objp->total_tva;
|
$commande_static->total_tva = $objp->total_tva;
|
||||||
$commande_static->total_ttc = $objp->total_ttc;
|
$commande_static->total_ttc = $objp->total_ttc;
|
||||||
print $commande_static->getNomUrl(1);
|
print $commande_static->getNomUrl(1);
|
||||||
print '</td><td align="right" width="80">'.dol_print_date($db->jdate($objp->dc),'day')."</td>\n";
|
print '</td><td align="right" width="80px">'.dol_print_date($db->jdate($objp->dc),'day')."</td>\n";
|
||||||
print '<td align="right" style="min-width: 60px">'.price($objp->total_ht).'</td>';
|
print '<td align="right" style="min-width: 60px">'.price($objp->total_ht).'</td>';
|
||||||
print '<td align="right" style="min-width: 60px" class="nowrap">'.$commande_static->LibStatut($objp->fk_statut,$objp->facture,5).'</td></tr>';
|
print '<td align="right" style="min-width: 60px" class="nowrap">'.$commande_static->LibStatut($objp->fk_statut,$objp->facture,5).'</td></tr>';
|
||||||
$i++;
|
$i++;
|
||||||
@ -700,7 +700,7 @@ if ($id > 0)
|
|||||||
print $sendingstatic->getNomUrl(1);
|
print $sendingstatic->getNomUrl(1);
|
||||||
print '</td>';
|
print '</td>';
|
||||||
if ($objp->date_creation > 0) {
|
if ($objp->date_creation > 0) {
|
||||||
print '<td align="right" width="80">'.dol_print_date($db->jdate($objp->date_creation),'day').'</td>';
|
print '<td align="right" width="80px">'.dol_print_date($db->jdate($objp->date_creation),'day').'</td>';
|
||||||
} else {
|
} else {
|
||||||
print '<td align="right"><b>!!!</b></td>';
|
print '<td align="right"><b>!!!</b></td>';
|
||||||
}
|
}
|
||||||
@ -760,8 +760,8 @@ if ($id > 0)
|
|||||||
print $contrat->getNomUrl(1,12);
|
print $contrat->getNomUrl(1,12);
|
||||||
print "</td>\n";
|
print "</td>\n";
|
||||||
print '<td class="nowrap">'.dol_trunc($objp->refsup,12)."</td>\n";
|
print '<td class="nowrap">'.dol_trunc($objp->refsup,12)."</td>\n";
|
||||||
print '<td align="right" width="80">'.dol_print_date($db->jdate($objp->dc),'day')."</td>\n";
|
print '<td align="right" width="80px">'.dol_print_date($db->jdate($objp->dc),'day')."</td>\n";
|
||||||
print '<td align="right" width="80">'.dol_print_date($db->jdate($objp->dcon),'day')."</td>\n";
|
print '<td align="right" width="80px">'.dol_print_date($db->jdate($objp->dcon),'day')."</td>\n";
|
||||||
print '<td width="20"> </td>';
|
print '<td width="20"> </td>';
|
||||||
print '<td align="right" class="nowrap">';
|
print '<td align="right" class="nowrap">';
|
||||||
$contrat->fetch_lines();
|
$contrat->fetch_lines();
|
||||||
@ -818,9 +818,9 @@ if ($id > 0)
|
|||||||
|
|
||||||
print "<tr ".$bc[$var].">";
|
print "<tr ".$bc[$var].">";
|
||||||
print '<td class="nowrap"><a href="'.DOL_URL_ROOT.'/fichinter/card.php?id='.$objp->id.'">'.img_object($langs->trans("ShowPropal"),"propal").' '.$objp->ref.'</a></td>'."\n";
|
print '<td class="nowrap"><a href="'.DOL_URL_ROOT.'/fichinter/card.php?id='.$objp->id.'">'.img_object($langs->trans("ShowPropal"),"propal").' '.$objp->ref.'</a></td>'."\n";
|
||||||
//print '<td align="right" width="80">'.dol_print_date($db->jdate($objp->startdate)).'</td>'."\n";
|
//print '<td align="right" width="80px">'.dol_print_date($db->jdate($objp->startdate)).'</td>'."\n";
|
||||||
print '<td align="right" width="120">'.convertSecondToTime($objp->duration).'</td>'."\n";
|
print '<td align="right" style="min-width: 60px">'.convertSecondToTime($objp->duration).'</td>'."\n";
|
||||||
print '<td align="right" width="100">'.$fichinter_static->getLibStatut(5).'</td>'."\n";
|
print '<td align="right" class="nowrap" style="min-width: 60px">'.$fichinter_static->getLibStatut(5).'</td>'."\n";
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
$var=!$var;
|
$var=!$var;
|
||||||
$i++;
|
$i++;
|
||||||
@ -869,7 +869,7 @@ if ($id > 0)
|
|||||||
print '<table class="noborder" width="100%">';
|
print '<table class="noborder" width="100%">';
|
||||||
|
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print '<td colspan="4"><table width="100%" class="nobordernopadding"><tr><td>'.$langs->trans("LastCustomersBills",($num<=$MAXLIST?"":$MAXLIST)).'</td><td align="right"><a href="'.DOL_URL_ROOT.'/compta/facture/list.php?socid='.$object->id.'">'.$langs->trans("AllBills").' <span class="badge">'.$num.'</span></a></td>';
|
print '<td colspan="5"><table width="100%" class="nobordernopadding"><tr><td>'.$langs->trans("LastCustomersBills",($num<=$MAXLIST?"":$MAXLIST)).'</td><td align="right"><a href="'.DOL_URL_ROOT.'/compta/facture/list.php?socid='.$object->id.'">'.$langs->trans("AllBills").' <span class="badge">'.$num.'</span></a></td>';
|
||||||
print '<td width="20px" align="right"><a href="'.DOL_URL_ROOT.'/compta/facture/stats/index.php?socid='.$object->id.'">'.img_picto($langs->trans("Statistics"),'stats').'</a></td>';
|
print '<td width="20px" align="right"><a href="'.DOL_URL_ROOT.'/compta/facture/stats/index.php?socid='.$object->id.'">'.img_picto($langs->trans("Statistics"),'stats').'</a></td>';
|
||||||
print '</tr></table></td>';
|
print '</tr></table></td>';
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
@ -891,15 +891,24 @@ if ($id > 0)
|
|||||||
print '</td>';
|
print '</td>';
|
||||||
if ($objp->df > 0)
|
if ($objp->df > 0)
|
||||||
{
|
{
|
||||||
print '<td align="right" width="80">'.dol_print_date($db->jdate($objp->df),'day').'</td>';
|
print '<td align="right" width="80px">'.dol_print_date($db->jdate($objp->df),'day').'</td>';
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
print '<td align="right"><b>!!!</b></td>';
|
print '<td align="right"><b>!!!</b></td>';
|
||||||
}
|
}
|
||||||
print '<td align="right" width="120">'.price($objp->total_ht).'</td>';
|
print '<td align="right" style="min-width: 60px">';
|
||||||
|
print price($objp->total_ht);
|
||||||
|
print '</td>';
|
||||||
|
|
||||||
print '<td align="right" class="nowrap" width="100" >'.($facturestatic->LibStatut($objp->paye,$objp->statut,5,$objp->am)).'</td>';
|
if (! empty($conf->global->MAIN_SHOW_PRICE_WITH_TAX_IN_SUMMARIES))
|
||||||
|
{
|
||||||
|
print '<td align="right" style="min-width: 60px">';
|
||||||
|
print price($objp->total_ttc);
|
||||||
|
print '</td>';
|
||||||
|
}
|
||||||
|
|
||||||
|
print '<td align="right" class="nowrap" style="min-width: 60px">'.($facturestatic->LibStatut($objp->paye,$objp->statut,5,$objp->am)).'</td>';
|
||||||
print "</tr>\n";
|
print "</tr>\n";
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1260,26 +1260,24 @@ class BonPrelevement extends CommonObject
|
|||||||
$fileDebiteurSection = '';
|
$fileDebiteurSection = '';
|
||||||
$fileEmetteurSection = '';
|
$fileEmetteurSection = '';
|
||||||
$i = 0;
|
$i = 0;
|
||||||
$j = 0;
|
|
||||||
$this->total = 0;
|
$this->total = 0;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* section Debiteur (sepa Debiteurs bloc lines)
|
* section Debiteur (sepa Debiteurs bloc lines)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
$tmp_invoices = array();
|
||||||
|
|
||||||
$sql = "SELECT f.facnumber as fac FROM ".MAIN_DB_PREFIX."prelevement_lignes as pl, ".MAIN_DB_PREFIX."facture as f, ".MAIN_DB_PREFIX."prelevement_facture as pf, ".MAIN_DB_PREFIX."societe as soc, ".MAIN_DB_PREFIX."c_country as p, ".MAIN_DB_PREFIX."societe_rib as rib WHERE pl.fk_prelevement_bons = ".$this->id." AND pl.rowid = pf.fk_prelevement_lignes AND pf.fk_facture = f.rowid AND soc.fk_pays = p.rowid AND soc.rowid = f.fk_soc AND rib.fk_soc = f.fk_soc AND rib.default_rib = 1";
|
$sql = "SELECT f.facnumber as fac FROM ".MAIN_DB_PREFIX."prelevement_lignes as pl, ".MAIN_DB_PREFIX."facture as f, ".MAIN_DB_PREFIX."prelevement_facture as pf, ".MAIN_DB_PREFIX."societe as soc, ".MAIN_DB_PREFIX."c_country as p, ".MAIN_DB_PREFIX."societe_rib as rib WHERE pl.fk_prelevement_bons = ".$this->id." AND pl.rowid = pf.fk_prelevement_lignes AND pf.fk_facture = f.rowid AND soc.fk_pays = p.rowid AND soc.rowid = f.fk_soc AND rib.fk_soc = f.fk_soc AND rib.default_rib = 1";
|
||||||
$resql=$this->db->query($sql);
|
$resql=$this->db->query($sql);
|
||||||
if ($resql)
|
if ($resql) {
|
||||||
{
|
while ($objfac = $this->db->fetch_object($resql)) {
|
||||||
$num = $this->db->num_rows($resql);
|
$tmp_invoices[] = $objfac->fac;
|
||||||
while ($j < $num)
|
|
||||||
{
|
|
||||||
$objfac = $this->db->fetch_object($resql);
|
|
||||||
$ListOfFactures = $ListOfFactures . $objfac->fac . ",";
|
|
||||||
$j++;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$ListOfFactures = implode($tmp_invoices);
|
||||||
|
|
||||||
$sql = "SELECT soc.code_client as code, soc.address, soc.zip, soc.town, c.code as country_code,";
|
$sql = "SELECT soc.code_client as code, soc.address, soc.zip, soc.town, c.code as country_code,";
|
||||||
$sql.= " pl.client_nom as nom, pl.code_banque as cb, pl.code_guichet as cg, pl.number as cc, pl.amount as somme,";
|
$sql.= " pl.client_nom as nom, pl.code_banque as cb, pl.code_guichet as cg, pl.number as cc, pl.amount as somme,";
|
||||||
$sql.= " f.facnumber as fac, pf.fk_facture as idfac, rib.datec, rib.iban_prefix as iban, rib.bic as bic, rib.rowid as drum";
|
$sql.= " f.facnumber as fac, pf.fk_facture as idfac, rib.datec, rib.iban_prefix as iban, rib.bic as bic, rib.rowid as drum";
|
||||||
|
|||||||
@ -909,27 +909,24 @@ function complete_dictionary_with_modules(&$taborder,&$tabname,&$tablib,&$tabsql
|
|||||||
if (! empty($objMod->dictionaries))
|
if (! empty($objMod->dictionaries))
|
||||||
{
|
{
|
||||||
//var_dump($objMod->dictionaries['tabname']);
|
//var_dump($objMod->dictionaries['tabname']);
|
||||||
$taborder[] = 0;
|
$nbtabname=$nbtablib=$nbtabsql=$nbtabsqlsort=$nbtabfield=$nbtabfieldvalue=$nbtabfieldinsert=$nbtabrowid=$nbtabcond=$nbtabfieldcheck=$nbtabhelp=0;
|
||||||
$tabfieldcheck[] = array(); $tabhelp[] = array();
|
foreach($objMod->dictionaries['tabname'] as $val) { $nbtabname++; $taborder[] = count($tabname)+1; $tabname[] = $val; }
|
||||||
foreach($objMod->dictionaries['tabname'] as $val)
|
foreach($objMod->dictionaries['tablib'] as $val) { $nbtablib++; $tablib[] = $val; }
|
||||||
|
foreach($objMod->dictionaries['tabsql'] as $val) { $nbtabsql++; $tabsql[] = $val; }
|
||||||
|
foreach($objMod->dictionaries['tabsqlsort'] as $val) { $nbtabsqlsort++; $tabsqlsort[] = $val; }
|
||||||
|
foreach($objMod->dictionaries['tabfield'] as $val) { $nbtabfield++; $tabfield[] = $val; }
|
||||||
|
foreach($objMod->dictionaries['tabfieldvalue'] as $val) { $nbtabfieldvalue++; $tabfieldvalue[] = $val; }
|
||||||
|
foreach($objMod->dictionaries['tabfieldinsert'] as $val) { $nbtabfieldinsert++; $tabfieldinsert[] = $val; }
|
||||||
|
foreach($objMod->dictionaries['tabrowid'] as $val) { $nbtabrowid++; $tabrowid[] = $val; }
|
||||||
|
foreach($objMod->dictionaries['tabcond'] as $val) { $nbtabcond++; $tabcond[] = $val; }
|
||||||
|
if (! empty($objMod->dictionaries['tabhelp'])) foreach($objMod->dictionaries['tabhelp'] as $val) { $nbtabhelp++; $tabhelp[] = $val; }
|
||||||
|
if (! empty($objMod->dictionaries['tabfieldcheck'])) foreach($objMod->dictionaries['tabfieldcheck'] as $val) { $nbtabfieldcheck++; $tabfieldcheck[] = $val; }
|
||||||
|
|
||||||
|
if ($nbtabname != $nbtablib || $nbtablib != $nbtabsql || $nbtabsql != $nbtabsqlsort)
|
||||||
{
|
{
|
||||||
$taborder[] = count($tabname)+1;
|
print 'Error in descriptor of module '.$const_name.'. Array ->dictionaries has not same number of record for key "tabname", "tablib", "tabsql" and "tabsqlsort"';
|
||||||
$tabname[] = $val;
|
//print "$const_name: $nbtabname=$nbtablib=$nbtabsql=$nbtabsqlsort=$nbtabfield=$nbtabfieldvalue=$nbtabfieldinsert=$nbtabrowid=$nbtabcond=$nbtabfieldcheck=$nbtabhelp\n";
|
||||||
}
|
}
|
||||||
foreach($objMod->dictionaries['tablib'] as $val) $tablib[] = $val;
|
|
||||||
foreach($objMod->dictionaries['tabsql'] as $val) $tabsql[] = $val;
|
|
||||||
foreach($objMod->dictionaries['tabsqlsort'] as $val) $tabsqlsort[] = $val;
|
|
||||||
foreach($objMod->dictionaries['tabfield'] as $val) $tabfield[] = $val;
|
|
||||||
foreach($objMod->dictionaries['tabfieldvalue'] as $val) $tabfieldvalue[] = $val;
|
|
||||||
foreach($objMod->dictionaries['tabfieldinsert'] as $val) $tabfieldinsert[] = $val;
|
|
||||||
foreach($objMod->dictionaries['tabrowid'] as $val) $tabrowid[] = $val;
|
|
||||||
foreach($objMod->dictionaries['tabcond'] as $val) $tabcond[] = $val;
|
|
||||||
if (! empty($objMod->dictionaries['tabfieldcheck'])) foreach($objMod->dictionaries['tabfieldcheck'] as $val) $tabfieldcheck[] = $val;
|
|
||||||
if (! empty($objMod->dictionaries['tabhelp'])) foreach($objMod->dictionaries['tabhelp'] as $val) $tabhelp[] = $val;
|
|
||||||
//foreach($objMod->dictionaries['tabsqlsort'] as $val) $tablib[] = $val;
|
|
||||||
//$tabname = array_merge ($tabname, $objMod->dictionaries['tabname']);
|
|
||||||
//var_dump($tabcond);
|
|
||||||
//exit;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$j++;
|
$j++;
|
||||||
@ -1031,7 +1028,6 @@ function complete_elementList_with_modules(&$elementList)
|
|||||||
if (! empty($objMod->module_parts['contactelement']))
|
if (! empty($objMod->module_parts['contactelement']))
|
||||||
{
|
{
|
||||||
$elementList[$objMod->name] = $langs->trans($objMod->name);
|
$elementList[$objMod->name] = $langs->trans($objMod->name);
|
||||||
//exit;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$j++;
|
$j++;
|
||||||
|
|||||||
@ -339,7 +339,7 @@ if ($resql)
|
|||||||
print '<input class="flat" type="text" size="6" name="search_amount_all_tax" value="'.$search_amount_all_tax.'">';
|
print '<input class="flat" type="text" size="6" name="search_amount_all_tax" value="'.$search_amount_all_tax.'">';
|
||||||
print '</td><td class="liste_titre" align="right">';
|
print '</td><td class="liste_titre" align="right">';
|
||||||
$liststatus=array('0'=>$langs->trans("Draft"),'1'=>$langs->trans("Unpaid"), '2'=>$langs->trans("Paid"));
|
$liststatus=array('0'=>$langs->trans("Draft"),'1'=>$langs->trans("Unpaid"), '2'=>$langs->trans("Paid"));
|
||||||
print $form->selectarray('filtre', $liststatus, $search_status, 1);
|
print $form->selectarray('search_status', $liststatus, $search_status, 1);
|
||||||
print '</td><td class="liste_titre" align="right">';
|
print '</td><td class="liste_titre" align="right">';
|
||||||
print '<input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
|
print '<input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
|
||||||
print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("Search"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
|
print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("Search"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
|
||||||
|
|||||||
@ -57,7 +57,9 @@ if ($conf->global->MAIN_FEATURES_LEVEL >= 2)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Clean param
|
// Clean param
|
||||||
if (! empty($conf->global->PRODUIT_MULTIPRICES) && empty($conf->global->PRODUIT_MULTIPRICES_LIMIT)) $conf->global->PRODUIT_MULTIPRICES_LIMIT = 5;
|
if (! empty($conf->global->PRODUIT_MULTIPRICES) && empty($conf->global->PRODUIT_MULTIPRICES_LIMIT)) {
|
||||||
|
dolibarr_set_const($db, 'PRODUIT_MULTIPRICES_LIMIT', 5, 'chaine', 0, '', $conf->entity);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -385,7 +385,7 @@ if (! empty($conf->global->PROJECT_TASK_TIME_YEAR))
|
|||||||
print '</div><div class="fichetwothirdright"><div class="ficheaddleft">';
|
print '</div><div class="fichetwothirdright"><div class="ficheaddleft">';
|
||||||
|
|
||||||
|
|
||||||
if (empty($conf->global->PROJECT_HIDE_TASKS))
|
if (empty($conf->global->PROJECT_HIDE_TASKS) && empty($conf->global->PROJECT_HIDE_LIST_HOME_AREA))
|
||||||
{
|
{
|
||||||
// Get id of types of contacts for projects (This list never contains a lot of elements)
|
// Get id of types of contacts for projects (This list never contains a lot of elements)
|
||||||
$listofprojectcontacttype=array();
|
$listofprojectcontacttype=array();
|
||||||
@ -513,13 +513,13 @@ if (empty($conf->global->PROJECT_HIDE_TASKS))
|
|||||||
print '<td align="center">'.dol_print_date($db->jdate($obj->dateo),'day').'</td>';
|
print '<td align="center">'.dol_print_date($db->jdate($obj->dateo),'day').'</td>';
|
||||||
print '<td align="center">'.dol_print_date($db->jdate($obj->datee),'day').'</td>';
|
print '<td align="center">'.dol_print_date($db->jdate($obj->datee),'day').'</td>';
|
||||||
print '<td align="right"><a href="'.DOL_URL_ROOT.'/projet/tasks/time.php?id='.$obj->taskid.'&withproject=1">';
|
print '<td align="right"><a href="'.DOL_URL_ROOT.'/projet/tasks/time.php?id='.$obj->taskid.'&withproject=1">';
|
||||||
print convertSecondToTime($obj->planned_workload, 'all');
|
print convertSecondToTime($obj->planned_workload, 'allhourmin');
|
||||||
print '</a></td>';
|
print '</a></td>';
|
||||||
print '<td align="right">';
|
print '<td align="right">';
|
||||||
print ($obj->taskid>0)?$obj->progress.'%':'';
|
print ($obj->taskid>0)?$obj->progress.'%':'';
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '<td align="right"><a href="'.DOL_URL_ROOT.'/projet/tasks/time.php?id='.$obj->taskid.'&withproject=1">';
|
print '<td align="right"><a href="'.DOL_URL_ROOT.'/projet/tasks/time.php?id='.$obj->taskid.'&withproject=1">';
|
||||||
print convertSecondToTime($obj->timespent, 'all');
|
print convertSecondToTime($obj->timespent, 'allhourmin');
|
||||||
print '</a></td>';
|
print '</a></td>';
|
||||||
print '<td align="right">';
|
print '<td align="right">';
|
||||||
if (! empty($obj->taskid))
|
if (! empty($obj->taskid))
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user