Skip to content

Commit

Permalink
Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into d…
Browse files Browse the repository at this point in the history
…evelop
  • Loading branch information
eldy committed Nov 6, 2024
2 parents 451c903 + 71cde0e commit c816756
Show file tree
Hide file tree
Showing 24 changed files with 120 additions and 58 deletions.
6 changes: 1 addition & 5 deletions htdocs/accountancy/admin/report_list.php
Original file line number Diff line number Diff line change
Expand Up @@ -742,7 +742,7 @@
// Active
print '<td class="center" class="nowrap">';
if ($canbedisabled) {
print '<a href="'.$url.'action='.$acts[$obj->active].'">'.$actl[$obj->active].'</a>';
print '<a class="reposition" href="'.$url.'action='.$acts[$obj->active].'&token='.newToken().'">'.$actl[$obj->active].'</a>';
} else {
print $langs->trans("AlwaysActive");
}
Expand Down Expand Up @@ -796,12 +796,8 @@
*/
function fieldListAccountingReport($fieldlist, $obj = null, $tabname = '', $context = '')
{
global $db;
global $form, $mysoc;

$formadmin = new FormAdmin($db);
$formcompany = new FormCompany($db);

foreach ($fieldlist as $field => $value) {
if ($fieldlist[$field] == 'country') {
print '<td>';
Expand Down
7 changes: 7 additions & 0 deletions htdocs/adherents/class/adherent.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -1836,6 +1836,13 @@ public function subscriptionComplementaryActions($subscriptionid, $option, $acco
}
}
$invoice->socid = $this->fk_soc;
// set customer's bank account on the invoice
if (!empty($customer->fk_account)) {
$invoice->fk_account = $customer->fk_account;
} elseif (getDolGlobalString('FACTURE_RIB_NUMBER')) {
// set default bank account from invoice module settings
$invoice->fk_account = (int) getDolGlobalString('FACTURE_RIB_NUMBER');
}
//$invoice->date = $datesubscription;
$invoice->date = dol_now();

Expand Down
4 changes: 2 additions & 2 deletions htdocs/admin/delivery.php
Original file line number Diff line number Diff line change
Expand Up @@ -235,8 +235,8 @@
print ' <a class="inline-block valignmiddle" href="'.$_SERVER["PHP_SELF"].'?action=disable_delivery&token='.newToken().'">'.img_picto($langs->trans("Enabled"), 'switch_on').'</a>';
}

print '<br><span class="opacitymedium">'.info_admin($langs->trans("NoNeedForDeliveryReceipts"), 0, 1).'</span>';
print '<br>';
print '<br><br><span class="opacitymedium">'.info_admin($langs->trans("NoNeedForDeliveryReceipts"), 0, 1).'</span>';
print '<br><br>';
print '<br>';


Expand Down
4 changes: 2 additions & 2 deletions htdocs/commande/list.php
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,7 @@
'c.multicurrency_total_ht' => array('label' => 'MulticurrencyAmountHT', 'checked' => 0, 'enabled' => (!isModEnabled("multicurrency") ? 0 : 1), 'position' => 100),
'c.multicurrency_total_vat' => array('label' => 'MulticurrencyAmountVAT', 'checked' => 0, 'enabled' => (!isModEnabled("multicurrency") ? 0 : 1), 'position' => 105),
'c.multicurrency_total_ttc' => array('label' => 'MulticurrencyAmountTTC', 'checked' => 0, 'enabled' => (!isModEnabled("multicurrency") ? 0 : 1), 'position' => 110),
'u.login' => array('label' => "Author", 'checked' => 1, 'position' => 115),
'u.login' => array('label' => "Author", 'checked' => -1, 'position' => 115),
'sale_representative' => array('label' => "SaleRepresentativesOfThirdParty", 'checked' => 0, 'position' => 116),
'total_pa' => array('label' => (getDolGlobalString('MARGIN_TYPE') == '1' ? 'BuyingPrice' : 'CostPrice'), 'checked' => 0, 'position' => 300, 'enabled' => (!isModEnabled('margin') || !$user->hasRight("margins", "liretous") ? 0 : 1)),
'total_margin' => array('label' => 'Margin', 'checked' => 0, 'position' => 301, 'enabled' => (!isModEnabled('margin') || !$user->hasRight("margins", "liretous") ? 0 : 1)),
Expand Down Expand Up @@ -2569,7 +2569,7 @@

// Author
if (!empty($arrayfields['u.login']['checked'])) {
print '<td class="tdoverflowmax150">';
print '<td class="tdoverflowmax125">';
if ($userstatic->id) {
print $userstatic->getNomUrl(-1);
} else {
Expand Down
4 changes: 2 additions & 2 deletions htdocs/compta/cashcontrol/cashcontrol_list.php
Original file line number Diff line number Diff line change
Expand Up @@ -344,7 +344,7 @@
// Output page
// --------------------------------------------------------------------

llxHeader('', $title, $help_url, '', 0, 0, '', '', '', 'classforhorizontalscrolloftabs');
llxHeader('', $title, $help_url, '', 0, 0, '', '', '', 'bodyforlist');

$arrayofselected = is_array($toselect) ? $toselect : array();

Expand Down Expand Up @@ -497,7 +497,7 @@
$formadmin = new FormAdmin($db);
print $formadmin->select_language((isset($search[$key]) ? $search[$key] : ''), 'search_lang', 0, array(), 1, 0, 0, 'minwidth100imp maxwidth125', 2);
} else {
print '<input type="text" class="flat maxwidth'.($val['type'] == 'integer' ? '50' : '75').'" name="search_'.$key.'" value="'.dol_escape_htmltag(isset($search[$key]) ? $search[$key] : '').'">';
print '<input type="text" class="flat maxwidth'.(in_array($val['type'], array('integer', 'price')) ? '50' : '75').'" name="search_'.$key.'" value="'.dol_escape_htmltag(isset($search[$key]) ? $search[$key] : '').'">';
}
print '</td>';
}
Expand Down
2 changes: 1 addition & 1 deletion htdocs/compta/cashcontrol/class/cashcontrol.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ class CashControl extends CommonObject
'entity' => array('type' => 'integer', 'label' => 'Entity', 'enabled' => 1, 'visible' => 0, 'notnull' => 1, 'position' => 15),
'ref' => array('type' => 'varchar(64)', 'label' => 'Ref', 'enabled' => 1, 'visible' => 1, 'notnull' => 1, 'position' => 18),
'posmodule' => array('type' => 'varchar(30)', 'label' => 'Module', 'enabled' => 1, 'visible' => 1, 'notnull' => 1, 'position' => 19),
'posnumber' => array('type' => 'varchar(30)', 'label' => 'Terminal', 'enabled' => 1, 'visible' => 1, 'notnull' => 1, 'position' => 20, 'css' => 'center'),
'posnumber' => array('type' => 'varchar(30)', 'label' => 'Terminal', 'enabled' => 1, 'visible' => 1, 'notnull' => 1, 'position' => 20, 'csslist' => 'width50 center'),
'label' => array('type' => 'varchar(255)', 'label' => 'Label', 'enabled' => 1, 'visible' => 0, 'position' => 24),
'opening' => array('type' => 'price', 'label' => 'Opening', 'enabled' => 1, 'visible' => 1, 'position' => 25, 'csslist' => 'amount'),
'cash' => array('type' => 'price', 'label' => 'Cash', 'enabled' => 1, 'visible' => 1, 'position' => 30, 'csslist' => 'amount'),
Expand Down
1 change: 1 addition & 0 deletions htdocs/compta/localtax/clients.php
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
* @var Conf $conf
* @var DoliDB $db
* @var HookManager $hookmanager
* @var Societe $mysoc
* @var Translate $langs
* @var User $user
*/
Expand Down
1 change: 1 addition & 0 deletions htdocs/compta/localtax/index.php
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
* @var Conf $conf
* @var DoliDB $db
* @var HookManager $hookmanager
* @var Societe $mysoc
* @var Translate $langs
* @var User $user
*/
Expand Down
2 changes: 1 addition & 1 deletion htdocs/compta/resultat/clientfourn.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* Copyright (C) 2004-2017 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@inodbox.com>
* Copyright (C) 2012 Cédric Salvador <csalvador@gpcsolutions.fr>
* Copyright (C) 2012-2014 Raphaël Dourseanud <rdoursenaud@gpcsolutions.fr>
* Copyright (C) 2012-2014 Raphaël Doursenaud <rdoursenaud@gpcsolutions.fr>
* Copyright (C) 2014-2106 Ferran Marcet <fmarcet@2byte.es>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2014 Florian Henry <florian.henry@open-concept.pro>
Expand Down
82 changes: 57 additions & 25 deletions htdocs/compta/resultat/projects.php
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
<?php
/* Copyright (C) 2002-2006 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2004-2017 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@inodbox.com>
* Copyright (C) 2012 Cédric Salvador <csalvador@gpcsolutions.fr>
* Copyright (C) 2012-2014 Raphaël Dourseanud <rdoursenaud@gpcsolutions.fr>
* Copyright (C) 2014-2106 Ferran Marcet <fmarcet@2byte.es>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2018 Frédéric France <frederic.france@netlogic.fr>
* Copyright (C) 2020 Maxime DEMAREST <maxime@indelog.fr>
* Copyright (C) 2021 Alexandre Spangaro <aspangaro@open-dsi.fr>
* Copyright (C) 2024 Yoan Mollard <ymollard@users.noreply.github.com>
/* Copyright (C) 2002-2006 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2004-2017 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005-2012 Regis Houssin <regis.houssin@inodbox.com>
* Copyright (C) 2012 Cédric Salvador <csalvador@gpcsolutions.fr>
* Copyright (C) 2012-2014 Raphaël Doursenaud <rdoursenaud@gpcsolutions.fr>
* Copyright (C) 2014-2016 Ferran Marcet <fmarcet@2byte.es>
* Copyright (C) 2014 Juanjo Menent <jmenent@2byte.es>
* Copyright (C) 2014 Florian Henry <florian.henry@open-concept.pro>
* Copyright (C) 2018 Frédéric France <frederic.france@free.fr>
* Copyright (C) 2020 Maxime DEMAREST <maxime@indelog.fr>
* Copyright (C) 2021-2024 Alexandre Spangaro <alexandre@inovea-conseil.com>
* Copyright (C) 2024 Yoan Mollard <ymollard@users.noreply.github.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
Expand Down Expand Up @@ -44,6 +44,14 @@
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountancycategory.class.php';
require_once DOL_DOCUMENT_ROOT.'/accountancy/class/accountingaccount.class.php';

/**
* @var Conf $conf
* @var DoliDB $db
* @var HookManager $hookmanager
* @var Translate $langs
* @var User $user
*/

// Load translation files required by the page
$langs->loadLangs(array('compta', 'bills', 'donation', 'salaries', 'accountancy', 'loan'));

Expand All @@ -55,6 +63,8 @@
$date_endyear = GETPOSTINT('date_endyear');
$showaccountdetail = GETPOST('showaccountdetail', 'aZ09') ? GETPOST('showaccountdetail', 'aZ09') : 'yes';

$search_project_ref = GETPOST('search_project_ref', 'alpha');

$limit = GETPOSTINT('limit') ? GETPOSTINT('limit') : $conf->liste_limit;
$sortfield = GETPOST('sortfield', 'aZ09comma');
$sortorder = GETPOST('sortorder', 'aZ09comma');
Expand Down Expand Up @@ -139,7 +149,8 @@
// Define modecompta ('CREANCES-DETTES' or 'RECETTES-DEPENSES' or 'BOOKKEEPING')
$modecompta = getDolGlobalString('ACCOUNTING_MODE');
if (isModEnabled('accounting')) {
$modecompta = 'BOOKKEEPING';
// $modecompta = 'BOOKKEEPING';
$modecompta = 'CREANCES-DETTES';
}
if (GETPOST("modecompta", 'alpha')) {
$modecompta = GETPOST("modecompta", 'alpha');
Expand Down Expand Up @@ -175,7 +186,11 @@
$total_ht = 0;
$total_ttc = 0;

// Affiche en-tete de rapport
$name = $langs->trans("ReportInOut").', '.$langs->trans("ByProjects");
$period = $form->selectDate($date_start, 'date_start', 0, 0, 0, '', 1, 0).' - '.$form->selectDate($date_end, 'date_end', 0, 0, 0, '', 1, 0);
$builddate = dol_now();

// Display report header
if ($modecompta == "CREANCES-DETTES") {
$name = $langs->trans("ReportInOut").', '.$langs->trans("ByProjects");
$period = $form->selectDate($date_start, 'date_start', 0, 0, 0, '', 1, 0).' - '.$form->selectDate($date_end, 'date_end', 0, 0, 0, '', 1, 0);
Expand All @@ -200,10 +215,12 @@

// Define $calcmode line
$calcmode = '';
/*
if (isModEnabled('accounting')) {
$calcmode .= '<input type="radio" name="modecompta" id="modecompta3" value="BOOKKEEPING"'.($modecompta == 'BOOKKEEPING' ? ' checked="checked"' : '').'><label for="modecompta3"> '.$langs->trans("CalcModeBookkeeping").'</label>';
$calcmode .= '<br>';
}
*/
$calcmode .= '<input type="radio" name="modecompta" id="modecompta1" value="RECETTES-DEPENSES"'.($modecompta == 'RECETTES-DEPENSES' ? ' checked="checked"' : '').'><label for="modecompta1"> '.$langs->trans("CalcModePayment");
if (isModEnabled('accounting')) {
$calcmode .= ' <span class="opacitymedium hideonsmartphone">('.$langs->trans("CalcModeNoBookKeeping").')</span>';
Expand Down Expand Up @@ -270,19 +287,21 @@
$total_ht_outcome = $total_ttc_outcome = $total_ht_income = $total_ttc_income = 0;

if ($modecompta == 'BOOKKEEPING') {
echo "<p>BOOKKEEPING mode not implemented for this report type by project. Contribute to Dolibarr source code :)</p>";
echo "<p>BOOKKEEPING mode not implemented for this report type by project.</p>";
} else {
/*
* Customer invoices
*/
print '<tr class="trforbreak"><td colspan="4">'.$langs->trans("CustomersInvoices").'</td></tr>';

$sql = '';
if ($modecompta == 'CREANCES-DETTES') {
$sql = "SELECT p.rowid as rowid, p.ref as project_name, sum(f.total_ht) as amount_ht, sum(f.total_ttc) as amount_ttc";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s";
$sql .= ", ".MAIN_DB_PREFIX."facture as f";
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."projet as p ON f.fk_projet = p.rowid";
$sql .= " WHERE f.fk_soc = s.rowid";
$sql .= " AND f.entity IN (".getEntity('invoice').")";
$sql .= " AND f.fk_statut IN (1,2)";
if (getDolGlobalString('FACTURE_DEPOSITS_ARE_JUST_PAYMENTS')) {
$sql .= " AND f.type IN (0,1,2,5)";
Expand All @@ -292,6 +311,11 @@
if (!empty($date_start) && !empty($date_end)) {
$sql .= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'";
}
if ($socid) {
$sql .= " AND f.fk_soc = ".((int) $socid);
}
$sql .= " GROUP BY p.rowid, project_name";
$sql .= $db->order($sortfield, $sortorder);
} elseif ($modecompta == 'RECETTES-DEPENSES') {
$sql = "SELECT p.rowid as rowid, p.ref as project_name, sum(pf.amount) as amount_ttc";
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s";
Expand All @@ -302,16 +326,16 @@
$sql .= " WHERE pa.rowid = pf.fk_paiement";
$sql .= " AND pf.fk_facture = f.rowid";
$sql .= " AND f.fk_soc = s.rowid";
$sql .= " AND f.entity IN (".getEntity('invoice').")";
if (!empty($date_start) && !empty($date_end)) {
$sql .= " AND pa.datep >= '".$db->idate($date_start)."' AND pa.datep <= '".$db->idate($date_end)."'";
}
if ($socid) {
$sql .= " AND f.fk_soc = ".((int) $socid);
}
$sql .= " GROUP BY p.rowid, project_name";
$sql .= $db->order($sortfield, $sortorder);
}
$sql .= " AND f.entity IN (".getEntity('invoice').")";
if ($socid) {
$sql .= " AND f.fk_soc = ".((int) $socid);
}
$sql .= " GROUP BY p.rowid, project_name";
$sql .= $db->order($sortfield, $sortorder);

dol_syslog("by project, get customer invoices", LOG_DEBUG);
$result = $db->query($sql);
Expand All @@ -328,7 +352,8 @@
} else {
echo $langs->trans("None");
}
$detailed_list_url = '?search_project_ref='.urlencode($search_project_ref);
$detailed_list_url = '';
//$detailed_list_url .= '?search_project_ref='.urlencode($search_project_ref);
$detailed_list_url .= empty($objp->project_name)? "!*": $objp->project_name;
$detailed_list_url .= $search_date_url;
echo ' (<a href="'.DOL_URL_ROOT.'/compta/facture/list.php'.$detailed_list_url.'">'.$langs->trans("DetailedListLowercase")."</a>)\n";
Expand All @@ -340,7 +365,7 @@
echo "</td>\n";
echo '<td class="right"><span class="amount">'.price($objp->amount_ttc)."</span></td>\n";

$total_ht += (isset($objp->amount_ht) ? $objp->amount_ht : 0);
$total_ht += ($objp->amount_ht ?? 0);
$total_ttc += $objp->amount_ttc;
echo "</tr>\n";
$i++;
Expand Down Expand Up @@ -525,7 +550,8 @@
} else {
echo $langs->trans("None");
}
$detailed_list_url = '?search_project='.urlencode($search_project_ref);
$detailed_list_url = '';
//$detailed_list_url .= '?search_project='.urlencode($search_project_ref);
$detailed_list_url .= empty($objp->project_name)? "!*": $objp->project_name;
$detailed_list_url .= $search_date_url;
echo ' (<a href="'.DOL_URL_ROOT.'/fourn/facture/list.php'.$detailed_list_url.'">'.$langs->trans("DetailedListLowercase")."</a>)\n";
Expand Down Expand Up @@ -639,7 +665,13 @@
$subtotal_ttc += $obj->amount;

echo '<tr class="oddeven"><td>&nbsp;</td>';
echo "<td>".$langs->trans("Project")." <a href=\"".DOL_URL_ROOT."/projet/card.php?id=".urlencode($project_name)."\">".$project_name."</a></td>\n";
echo "<td>".$langs->trans("Project")." ";
if (!empty($objp->project_name)) {
echo ' <a href="'.DOL_URL_ROOT.'/projet/card.php?id='.$objp->rowid.'">'.$objp->project_name.'</a>';
} else {
echo $langs->trans("None");
}
echo "</td>\n";
echo '<td class="right">';
if ($modecompta == 'CREANCES-DETTES') {
echo '<span class="amount">'.price(-$obj->amount).'</span>';
Expand Down
17 changes: 14 additions & 3 deletions htdocs/core/class/commonobjectline.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -341,14 +341,25 @@ public function fetchAll($sortorder = '', $sortfield = '', $limit = 0, $offset =
*/
public function getNomUrl($withpicto = 0)
{
$parentattribute = $this->fk_parent_attribute;

/*
if ($parentattribute) {
return 'Parent #'.$this->$parentattribute.' - Line #'.$this->id;
} else {
return 'Line #'.$this->id;
}
*/

$parent_element_properties = getElementProperties($this->parent_element);
$parent_classname = $parent_element_properties['classname'];
$parent_element = new $parent_classname($this->db);
/** @var CommonObject $parent_element */
$parentattribute = $this->fk_parent_attribute;
if ($parentattribute) {
$parent_element->fetch($this->$parentattribute);
if ($parentattribute && method_exists($parent_element, 'fetch')) {
$parent_element->fetch($this->$parentattribute); // @phan-suppress-current-line PhanPluginUnknownObjectMethodCall
}

return $parent_element->getNomUrl($withpicto).' - Line #'.$this->id;
return $parent_element->getNomUrl($withpicto).' - Line #'.$this->id; // @phan-suppress-current-line PhanPluginUnknownObjectMethodCall
}
}
2 changes: 1 addition & 1 deletion htdocs/core/class/discount.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -778,7 +778,7 @@ public function getSumFromThisCreditNotesNotUsed($invoice, $multicurrency = 0)
* @param string $option Where to link to ('invoice' or 'discount')
* @return string String with URL
*/
public function getNomUrl($withpicto, $option = 'invoice')
public function getNomUrl($withpicto = 0, $option = 'invoice')
{
global $langs;

Expand Down
2 changes: 1 addition & 1 deletion htdocs/core/tpl/admin_extrafields_add.tpl.php
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ function init_typeoffields(type)
<!-- Label -->
<tr><td class="titlefieldcreate fieldrequired"><?php echo $langs->trans("LabelOrTranslationKey"); ?></td><td class="valeur"><input type="text" name="label" id="label" class="width200" value="<?php echo GETPOST('label', 'alpha'); ?>" autofocus></td></tr>
<!-- Code -->
<tr><td class="fieldrequired"><?php echo $langs->trans("AttributeCode"); ?></td><td class="valeur"><input type="text" name="attrname" id="attrname" size="10" value="<?php echo GETPOST('attrname', 'alpha'); ?>" pattern="\w+"> <span class="opacitymedium">(<?php echo $langs->trans("AlphaNumOnlyLowerCharsAndNoSpace"); ?>)</span></td></tr>
<tr><td class="fieldrequired"><?php echo $form->textwithpicto($langs->trans("AttributeCode"), $langs->trans("AttributeCodeHelp")); ?></td><td class="valeur"><input type="text" name="attrname" id="attrname" size="10" value="<?php echo GETPOST('attrname', 'alpha'); ?>" pattern="\w+"> <span class="opacitymedium">(<?php echo $langs->trans("AlphaNumOnlyLowerCharsAndNoSpace"); ?>)</span></td></tr>
<!-- Type -->
<tr><td class="fieldrequired"><?php echo $langs->trans("Type"); ?></td><td class="valeur">
<?php
Expand Down
2 changes: 1 addition & 1 deletion htdocs/core/tpl/admin_extrafields_edit.tpl.php
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,7 @@ function init_typeoffields(type)
<tr><td class="titlefieldcreate fieldrequired"><?php echo $langs->trans("LabelOrTranslationKey"); ?></td><td class="valeur"><input type="text" name="label" size="40" value="<?php echo $label; ?>"></td></tr>

<!-- Code -->
<tr><td class="fieldrequired"><?php echo $langs->trans("AttributeCode"); ?></td><td class="valeur"><?php echo $attrname; ?></td></tr>
<tr><td class="fieldrequired"><?php echo $form->textwithpicto($langs->trans("AttributeCode"), $langs->trans("AttributeCodeHelp")); ?></td><td class="valeur"><?php echo $attrname; ?></td></tr>

<!-- Type -->
<tr><td class="fieldrequired"><?php echo $langs->trans("Type"); ?></td><td class="valeur">
Expand Down
Loading

0 comments on commit c816756

Please sign in to comment.