mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2025-12-12 04:21:30 +01:00
Can split a discount into two lower discounts
This commit is contained in:
@@ -346,7 +346,7 @@ else
|
|||||||
foreach ($searchform as $key => $value)
|
foreach ($searchform as $key => $value)
|
||||||
{
|
{
|
||||||
$var=!$var;
|
$var=!$var;
|
||||||
print '<tr '.$bc[$var].'"><td width="35%">'.$searchformtitle[$key].'</td><td>' . ($searchformconst[$key]?$langs->trans("yes"):$langs->trans("no")).'</td>';
|
print '<tr '.$bc[$var].'"><td width="35%">'.$searchformtitle[$key].'</td><td>'.yn($searchformconst[$key]).'</td>';
|
||||||
print '<td align="left">'.$langs->trans("IfModuleEnabled",$langs->transnoentitiesnoconv($searchformmodule[$key]));
|
print '<td align="left">'.$langs->trans("IfModuleEnabled",$langs->transnoentitiesnoconv($searchformmodule[$key]));
|
||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
}
|
}
|
||||||
@@ -360,7 +360,7 @@ else
|
|||||||
// Link to help center
|
// Link to help center
|
||||||
$var=!$var;
|
$var=!$var;
|
||||||
print '<tr '.$bc[$var].'><td width="35%">'.$langs->trans("DisableLinkToHelpCenter").'</td><td>';
|
print '<tr '.$bc[$var].'><td width="35%">'.$langs->trans("DisableLinkToHelpCenter").'</td><td>';
|
||||||
print yn($conf->global->MAIN_HELPCENTER_DISABLELINK);
|
print yn($conf->global->MAIN_HELPCENTER_DISABLELINK,1);
|
||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
|
|
||||||
// Message login
|
// Message login
|
||||||
|
|||||||
@@ -92,15 +92,6 @@ if ($_socid > 0)
|
|||||||
dol_fiche_head($head, 'relativediscount', $langs->trans("ThirdParty"),0,'company');
|
dol_fiche_head($head, 'relativediscount', $langs->trans("ThirdParty"),0,'company');
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
*
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
print '<form method="POST" action="remise.php?id='.$objsoc->id.'">';
|
|
||||||
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
|
||||||
print '<input type="hidden" name="action" value="setremise">';
|
|
||||||
print '<table width="100%" border="0">';
|
|
||||||
print '<tr><td valign="top">';
|
|
||||||
print '<table class="border" width="100%">';
|
print '<table class="border" width="100%">';
|
||||||
|
|
||||||
// Name
|
// Name
|
||||||
@@ -113,6 +104,17 @@ if ($_socid > 0)
|
|||||||
print '<tr><td colspan="2" width="25%">';
|
print '<tr><td colspan="2" width="25%">';
|
||||||
print $langs->trans("CustomerRelativeDiscount").'</td><td colspan="2">'.$objsoc->remise_client."%</td></tr>";
|
print $langs->trans("CustomerRelativeDiscount").'</td><td colspan="2">'.$objsoc->remise_client."%</td></tr>";
|
||||||
|
|
||||||
|
print '</table>';
|
||||||
|
print '<br>';
|
||||||
|
|
||||||
|
print_fiche_titre($langs->trans("NewRelativeDiscount"),'','');
|
||||||
|
|
||||||
|
print '<form method="POST" action="remise.php?id='.$objsoc->id.'">';
|
||||||
|
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||||
|
print '<input type="hidden" name="action" value="setremise">';
|
||||||
|
|
||||||
|
print '<table class="border" width="100%">';
|
||||||
|
|
||||||
// Nouvelle valeur
|
// Nouvelle valeur
|
||||||
print '<tr><td colspan="2">';
|
print '<tr><td colspan="2">';
|
||||||
print $langs->trans("NewValue").'</td><td colspan="2"><input type="text" size="5" name="remise" value="'.$objsoc->remise_client.'">%</td></tr>';
|
print $langs->trans("NewValue").'</td><td colspan="2"><input type="text" size="5" name="remise" value="'.$objsoc->remise_client.'">%</td></tr>';
|
||||||
@@ -124,8 +126,7 @@ if ($_socid > 0)
|
|||||||
print '<tr><td colspan="4" align="center"><input type="submit" class="button" value="'.$langs->trans("Modify").'"></td></tr>';
|
print '<tr><td colspan="4" align="center"><input type="submit" class="button" value="'.$langs->trans("Modify").'"></td></tr>';
|
||||||
|
|
||||||
print "</table>";
|
print "</table>";
|
||||||
print "</td></tr>";
|
|
||||||
print '</table>';
|
|
||||||
print "</form>";
|
print "</form>";
|
||||||
|
|
||||||
print "</div>\n";
|
print "</div>\n";
|
||||||
|
|||||||
@@ -28,12 +28,13 @@
|
|||||||
require_once("./pre.inc.php");
|
require_once("./pre.inc.php");
|
||||||
require_once(DOL_DOCUMENT_ROOT."/lib/company.lib.php");
|
require_once(DOL_DOCUMENT_ROOT."/lib/company.lib.php");
|
||||||
require_once(DOL_DOCUMENT_ROOT."/facture.class.php");
|
require_once(DOL_DOCUMENT_ROOT."/facture.class.php");
|
||||||
|
require_once(DOL_DOCUMENT_ROOT."/discount.class.php");
|
||||||
|
|
||||||
$langs->load("orders");
|
$langs->load("orders");
|
||||||
$langs->load("bills");
|
$langs->load("bills");
|
||||||
$langs->load("companies");
|
$langs->load("companies");
|
||||||
|
|
||||||
// S<EFBFBD>curit<EFBFBD> si un client essaye d'acc<63>der <20> une autre fiche que la sienne
|
// Security check
|
||||||
$_socid = $_GET["id"];
|
$_socid = $_GET["id"];
|
||||||
if ($user->societe_id > 0)
|
if ($user->societe_id > 0)
|
||||||
{
|
{
|
||||||
@@ -44,9 +45,88 @@ if ($user->societe_id > 0)
|
|||||||
/*
|
/*
|
||||||
* Actions
|
* Actions
|
||||||
*/
|
*/
|
||||||
|
if ($_REQUEST["action"] == 'confirm_split' && $_REQUEST["confirm"] == 'yes')
|
||||||
|
{
|
||||||
|
//if ($user->rights->societe->creer)
|
||||||
|
//if ($user->rights->facture->creer)
|
||||||
|
|
||||||
|
$error=0;
|
||||||
|
$remid=isset($_REQUEST["remid"])?$_REQUEST["remid"]:0;
|
||||||
|
$discount=new DiscountAbsolute($db);
|
||||||
|
$res=$discount->fetch($remid);
|
||||||
|
if (! $res > 0)
|
||||||
|
{
|
||||||
|
$error++;
|
||||||
|
$mesg='<div class="error">'.$langs->trans("ErrorFailedToLoadDiscount").'</div>';
|
||||||
|
}
|
||||||
|
if (! $error && price2num($_POST["amount_ttc_1"]+$_POST["amount_ttc_2"]) != $discount->amount_ttc)
|
||||||
|
{
|
||||||
|
$error++;
|
||||||
|
$mesg='<div class="error">'.$langs->trans("TotalOfTwoDiscountMustEqualsOriginal").'</div>';
|
||||||
|
}
|
||||||
|
if (! $error && $discount->fk_facture_line)
|
||||||
|
{
|
||||||
|
$error++;
|
||||||
|
$mesg='<div class="error">'.$langs->trans("ErrorCantSplitAUsedDiscount").'</div>';
|
||||||
|
}
|
||||||
|
if (! $error)
|
||||||
|
{
|
||||||
|
$newdiscount1=new DiscountAbsolute($db);
|
||||||
|
$newdiscount2=new DiscountAbsolute($db);
|
||||||
|
$newdiscount1->fk_facture_source=$discount->fk_facture_source;
|
||||||
|
$newdiscount2->fk_facture_source=$discount->fk_facture_source;
|
||||||
|
$newdiscount1->fk_facture=$discount->fk_facture;
|
||||||
|
$newdiscount2->fk_facture=$discount->fk_facture;
|
||||||
|
$newdiscount1->fk_facture_line=$discount->fk_facture_line;
|
||||||
|
$newdiscount2->fk_facture_line=$discount->fk_facture_line;
|
||||||
|
if ($discount->description == '(CREDIT_NOTE)')
|
||||||
|
{
|
||||||
|
$newdiscount1->description=$discount->description;
|
||||||
|
$newdiscount2->description=$discount->description;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$newdiscount1->description=$discount->description.' (1)';
|
||||||
|
$newdiscount2->description=$discount->description.' (2)';
|
||||||
|
}
|
||||||
|
$newdiscount1->fk_user=$discount->fk_user;
|
||||||
|
$newdiscount2->fk_user=$discount->fk_user;
|
||||||
|
$newdiscount1->fk_soc=$discount->fk_soc;
|
||||||
|
$newdiscount2->fk_soc=$discount->fk_soc;
|
||||||
|
$newdiscount1->datec=$discount->datec;
|
||||||
|
$newdiscount2->datec=$discount->datec;
|
||||||
|
$newdiscount1->tva_tx=$discount->tva_tx;
|
||||||
|
$newdiscount2->tva_tx=$discount->tva_tx;
|
||||||
|
$newdiscount1->amount_ttc=$_POST["amount_ttc_1"];
|
||||||
|
$newdiscount2->amount_ttc=price2num($discount->amount_ttc-$newdiscount1->amount_ttc);
|
||||||
|
$newdiscount1->amount_ht=price2num($newdiscount1->amount_ttc/(1+$newdiscount1->tva_tx/100),'MT');
|
||||||
|
$newdiscount2->amount_ht=price2num($newdiscount2->amount_ttc/(1+$newdiscount2->tva_tx/100),'MT');
|
||||||
|
$newdiscount1->amount_tva=price2num($newdiscount1->amount_ttc-$newdiscount2->amount_ht);
|
||||||
|
$newdiscount2->amount_tva=price2num($newdiscount2->amount_ttc-$newdiscount2->amount_ht);
|
||||||
|
|
||||||
|
$db->begin();
|
||||||
|
$discount->fk_facture_source=0; // This is to delete only the require record (that we will recreate with two records) and not all family with same fk_facture_source
|
||||||
|
$res=$discount->delete($user);
|
||||||
|
$newid1=$newdiscount1->create($user);
|
||||||
|
$newid2=$newdiscount2->create($user);
|
||||||
|
if ($res > 0 && $newid1 > 0 && $newid2 > 0)
|
||||||
|
{
|
||||||
|
$db->commit();
|
||||||
|
header("Location: ".$_SERVER["PHP_SELF"].'?id='.$_REQUEST['id']); // To avoid pb whith back
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$db->rollback();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if ($_POST["action"] == 'setremise')
|
if ($_POST["action"] == 'setremise')
|
||||||
{
|
{
|
||||||
|
//if ($user->rights->societe->creer)
|
||||||
|
//if ($user->rights->facture->creer)
|
||||||
|
|
||||||
if (price2num($_POST["amount_ht"]) > 0)
|
if (price2num($_POST["amount_ht"]) > 0)
|
||||||
{
|
{
|
||||||
$error=0;
|
$error=0;
|
||||||
@@ -80,22 +160,26 @@ if ($_POST["action"] == 'setremise')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($_GET["action"] == 'remove')
|
if ($_REQUEST["action"] == 'confirm_remove' && $_REQUEST["confirm"]=='yes')
|
||||||
{
|
{
|
||||||
|
//if ($user->rights->societe->creer)
|
||||||
|
//if ($user->rights->facture->creer)
|
||||||
|
|
||||||
$db->begin();
|
$db->begin();
|
||||||
|
|
||||||
$soc = new Societe($db);
|
$discount = new DiscountAbsolute($db);
|
||||||
$soc->fetch($_GET["id"]);
|
$result=$discount->fetch($_REQUEST["remid"]);
|
||||||
$result=$soc->del_remise_except($_GET["remid"]);
|
$result=$discount->delete($user);
|
||||||
|
|
||||||
if ($result > 0)
|
if ($result > 0)
|
||||||
{
|
{
|
||||||
$db->commit();
|
$db->commit();
|
||||||
|
header("Location: ".$_SERVER["PHP_SELF"].'?id='.$_REQUEST['id']); // To avoid pb whith back
|
||||||
|
exit;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
$mesg='<div class="error">'.$discount->error.'</div>';
|
||||||
$db->rollback();
|
$db->rollback();
|
||||||
$mesg='<div class="error">'.$soc->error.'</div>';
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -126,7 +210,7 @@ if ($_socid > 0)
|
|||||||
dol_fiche_head($head, 'absolutediscount', $langs->trans("ThirdParty"),0,'company');
|
dol_fiche_head($head, 'absolutediscount', $langs->trans("ThirdParty"),0,'company');
|
||||||
|
|
||||||
|
|
||||||
print '<form method="POST" action="remx.php?id='.$objsoc->id.'">';
|
print '<form method="POST" action="'.$_SERVER["PHP_SELF"].'?id='.$objsoc->id.'">';
|
||||||
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||||
print '<input type="hidden" name="action" value="setremise">';
|
print '<input type="hidden" name="action" value="setremise">';
|
||||||
|
|
||||||
@@ -162,11 +246,12 @@ if ($_socid > 0)
|
|||||||
|
|
||||||
print '<tr><td>'.$langs->trans("CustomerAbsoluteDiscountMy").'</td>';
|
print '<tr><td>'.$langs->trans("CustomerAbsoluteDiscountMy").'</td>';
|
||||||
print '<td>'.$remise_user.' '.$langs->trans("Currency".$conf->monnaie).'</td></tr>';
|
print '<td>'.$remise_user.' '.$langs->trans("Currency".$conf->monnaie).'</td></tr>';
|
||||||
print "</table>";
|
print '</table>';
|
||||||
print '<br>';
|
print '<br>';
|
||||||
|
|
||||||
|
print_fiche_titre($langs->trans("NewGlobalDiscount"),'','');
|
||||||
print '<table class="border" width="100%">';
|
print '<table class="border" width="100%">';
|
||||||
print '<tr><td width="38%">'.$langs->trans("NewGlobalDiscount").'</td>';
|
print '<tr><td width="38%">'.$langs->trans("AmountHT").'</td>';
|
||||||
print '<td><input type="text" size="5" name="amount_ht" value="'.$_POST["amount_ht"].'"> '.$langs->trans("Currency".$conf->monnaie).'</td></tr>';
|
print '<td><input type="text" size="5" name="amount_ht" value="'.$_POST["amount_ht"].'"> '.$langs->trans("Currency".$conf->monnaie).'</td></tr>';
|
||||||
print '<tr><td width="38%">'.$langs->trans("VAT").'</td>';
|
print '<tr><td width="38%">'.$langs->trans("VAT").'</td>';
|
||||||
print '<td>';
|
print '<td>';
|
||||||
@@ -183,6 +268,10 @@ if ($_socid > 0)
|
|||||||
|
|
||||||
print '<br>';
|
print '<br>';
|
||||||
|
|
||||||
|
if ($_GET['action'] == 'remove')
|
||||||
|
{
|
||||||
|
$ret=$form->form_confirm($_SERVER["PHP_SELF"].'?id='.$objsoc->id.'&remid='.$_GET["remid"], $langs->trans('RemoveDiscount'), $langs->trans('ConfirmRemoveDiscount'), 'confirm_remove', '', 0, 1);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Liste remises fixes restant en cours (= liees a acune facture ni ligne de facture)
|
* Liste remises fixes restant en cours (= liees a acune facture ni ligne de facture)
|
||||||
@@ -255,9 +344,33 @@ if ($_socid > 0)
|
|||||||
print '<td align="center">';
|
print '<td align="center">';
|
||||||
print '<a href="'.DOL_URL_ROOT.'/user/fiche.php?id='.$obj->user_id.'">'.img_object($langs->trans("ShowUser"),'user').' '.$obj->login.'</a>';
|
print '<a href="'.DOL_URL_ROOT.'/user/fiche.php?id='.$obj->user_id.'">'.img_object($langs->trans("ShowUser"),'user').' '.$obj->login.'</a>';
|
||||||
print '</td>';
|
print '</td>';
|
||||||
if ($obj->user_id == $user->id) print '<td><a href="'.$_SERVER["PHP_SELF"].'?id='.$objsoc->id.'&action=remove&remid='.$obj->rowid.'">'.img_delete($langs->trans("RemoveDiscount")).'</a></td>';
|
if ($user->rights->societe->creer || $user->rights->facture->creer)
|
||||||
|
{
|
||||||
|
print '<td nowrap="nowrap">';
|
||||||
|
print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$objsoc->id.'&action=split&remid='.$obj->rowid.'">'.img_picto($langs->trans("SplitDiscount"),'split').'</a>';
|
||||||
|
print ' ';
|
||||||
|
print '<a href="'.$_SERVER["PHP_SELF"].'?id='.$objsoc->id.'&action=remove&remid='.$obj->rowid.'">'.img_delete($langs->trans("RemoveDiscount")).'</a>';
|
||||||
|
print '</td>';
|
||||||
|
}
|
||||||
else print '<td> </td>';
|
else print '<td> </td>';
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
|
|
||||||
|
if ($_GET["action"]=='split' && $_GET['remid'] == $obj->rowid)
|
||||||
|
{
|
||||||
|
print "<tr $bc[$var]>";
|
||||||
|
print '<td colspan="8">';
|
||||||
|
$amount1=price2num($obj->amount_ttc/2,'MT');
|
||||||
|
$amount2=($obj->amount_ttc-$amount1);
|
||||||
|
$formquestion=array(
|
||||||
|
'text' => $langs->trans('TypeAmountOfEachNewDiscount'),
|
||||||
|
array('type' => 'text', 'name' => 'amount_ttc_1', 'label' => $langs->trans("AmountTTC").' 1', 'value' => $amount1, 'size' => '5'),
|
||||||
|
array('type' => 'text', 'name' => 'amount_ttc_2', 'label' => $langs->trans("AmountTTC").' 2', 'value' => $amount2, 'size' => '5')
|
||||||
|
);
|
||||||
|
$langs->load("dict");
|
||||||
|
$ret=$form->form_confirm($_SERVER["PHP_SELF"].'?id='.$objsoc->id.'&remid='.$obj->rowid, $langs->trans('SplitDiscount'), $langs->trans('ConfirmSplitDiscount',price($obj->amount_ttc),$langs->transnoentities("Currency".$conf->monnaie)), 'confirm_split', $formquestion, 0, 0);
|
||||||
|
print '</td>';
|
||||||
|
print '</tr>';
|
||||||
|
}
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
$db->free($resql);
|
$db->free($resql);
|
||||||
|
|||||||
@@ -428,8 +428,8 @@ if ($_REQUEST['action'] == 'confirm_converttoreduc' && $_REQUEST['confirm'] == '
|
|||||||
|
|
||||||
// Insert one discount by VAT rate category
|
// Insert one discount by VAT rate category
|
||||||
$discount = new DiscountAbsolute($db);
|
$discount = new DiscountAbsolute($db);
|
||||||
if ($fac->type == 2) $discount->desc='(CREDIT_NOTE)';
|
if ($fac->type == 2) $discount->description='(CREDIT_NOTE)';
|
||||||
elseif ($fac->type == 3) $discount->desc='(DEPOSIT)';
|
elseif ($fac->type == 3) $discount->description='(DEPOSIT)';
|
||||||
else {
|
else {
|
||||||
$this->error="CantConvertToReducAnInvoiceOfThisType";
|
$this->error="CantConvertToReducAnInvoiceOfThisType";
|
||||||
return -1;
|
return -1;
|
||||||
@@ -2285,8 +2285,17 @@ else
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$text=$langs->trans("CompanyHasAbsoluteDiscount",price($absolute_discount),$langs->transnoentities("Currency".$conf->monnaie));
|
if ($fac->statut < 1 || $fac->type == 2 || $fac->type == 3)
|
||||||
print $html->textwithpicto($text,$langs->trans("AbsoluteDiscountUse"));
|
{
|
||||||
|
$text=$langs->trans("CompanyHasAbsoluteDiscount",price($absolute_discount),$langs->transnoentities("Currency".$conf->monnaie));
|
||||||
|
print '<br>'.$text.'.<br>';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$text=$langs->trans("CompanyHasAbsoluteDiscount",price($absolute_discount),$langs->transnoentities("Currency".$conf->monnaie));
|
||||||
|
$text2=$langs->trans("AbsoluteDiscountUse");
|
||||||
|
print $html->textwithpicto($text,$text2);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
/* Copyright (C) 2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
||||||
* Copyright (C) 2004-2007 Laurent Destailleur <eldy@users.sourceforge.net>
|
* Copyright (C) 2004-2009 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* 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
|
* it under the terms of the GNU General Public License as published by
|
||||||
@@ -44,8 +44,8 @@ class DiscountAbsolute
|
|||||||
var $datec; // Date creation
|
var $datec; // Date creation
|
||||||
var $fk_facture_line; // Id invoice line when a discount linked to invoice line
|
var $fk_facture_line; // Id invoice line when a discount linked to invoice line
|
||||||
var $fk_facture; // Id invoice when a discoutn linked to invoice
|
var $fk_facture; // Id invoice when a discoutn linked to invoice
|
||||||
var $fk_facture_source; // Id facture avoir <EFBFBD> l'origine de la remise
|
var $fk_facture_source; // Id facture avoir a l'origine de la remise
|
||||||
var $ref_facture_source; // Ref facture avoir <EFBFBD> l'origine de la remise
|
var $ref_facture_source; // Ref facture avoir a l'origine de la remise
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Constructeur de la classe
|
* \brief Constructeur de la classe
|
||||||
@@ -58,10 +58,10 @@ class DiscountAbsolute
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Charge objet remise depuis la base
|
* \brief Load object from database into memory
|
||||||
* \param rowid id du projet <20> charger
|
* \param rowid id discount to load
|
||||||
* \param fk_facture_source fk_facture_source
|
* \param fk_facture_source fk_facture_source
|
||||||
* \return int <0 si ko, =0 si non trouv<75>, >0 si ok
|
* \return int <0 if KO, =0 if not found, >0 if OK
|
||||||
*/
|
*/
|
||||||
function fetch($rowid,$fk_facture_source=0)
|
function fetch($rowid,$fk_facture_source=0)
|
||||||
{
|
{
|
||||||
@@ -76,7 +76,7 @@ class DiscountAbsolute
|
|||||||
$sql.= " sr.fk_user,";
|
$sql.= " sr.fk_user,";
|
||||||
$sql.= " sr.amount_ht, sr.amount_tva, sr.amount_ttc, sr.tva_tx,";
|
$sql.= " sr.amount_ht, sr.amount_tva, sr.amount_ttc, sr.tva_tx,";
|
||||||
$sql.= " sr.fk_facture_line, sr.fk_facture, sr.fk_facture_source, sr.description,";
|
$sql.= " sr.fk_facture_line, sr.fk_facture, sr.fk_facture_source, sr.description,";
|
||||||
$sql.= " ".$this->db->pdate("sr.datec")." as datec,";
|
$sql.= " sr.datec,";
|
||||||
$sql.= " f.facnumber as ref_facture_source";
|
$sql.= " f.facnumber as ref_facture_source";
|
||||||
$sql.= " FROM ".MAIN_DB_PREFIX."societe_remise_except as sr";
|
$sql.= " FROM ".MAIN_DB_PREFIX."societe_remise_except as sr";
|
||||||
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."facture as f ON sr.fk_facture_source = f.rowid";
|
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."facture as f ON sr.fk_facture_source = f.rowid";
|
||||||
@@ -104,7 +104,7 @@ class DiscountAbsolute
|
|||||||
$this->fk_facture_source = $obj->fk_facture_source; // Id avoir source
|
$this->fk_facture_source = $obj->fk_facture_source; // Id avoir source
|
||||||
$this->ref_facture_source = $obj->ref_facture_source; // Ref avoir source
|
$this->ref_facture_source = $obj->ref_facture_source; // Ref avoir source
|
||||||
$this->description = $obj->description;
|
$this->description = $obj->description;
|
||||||
$this->datec = $obj->datec;
|
$this->datec = $this->db->jdate($obj->datec);
|
||||||
|
|
||||||
$this->db->free($resql);
|
$this->db->free($resql);
|
||||||
return 1;
|
return 1;
|
||||||
@@ -132,19 +132,27 @@ class DiscountAbsolute
|
|||||||
{
|
{
|
||||||
global $conf, $langs;
|
global $conf, $langs;
|
||||||
|
|
||||||
// Nettoyage parametres
|
// Clean parameters
|
||||||
$this->amount_ht=price2num($this->amount_ht);
|
$this->amount_ht=price2num($this->amount_ht);
|
||||||
$this->amount_tva=price2num($this->amount_tva);
|
$this->amount_tva=price2num($this->amount_tva);
|
||||||
$this->amount_ttc=price2num($this->amount_ttc);
|
$this->amount_ttc=price2num($this->amount_ttc);
|
||||||
$this->tva_tx=price2num($this->tva_tx);
|
$this->tva_tx=price2num($this->tva_tx);
|
||||||
|
|
||||||
|
// Check parameters
|
||||||
|
if (empty($this->description))
|
||||||
|
{
|
||||||
|
$this->error='BadValueForPropertyDescription';
|
||||||
|
dol_syslog("DiscountAbsolute::create ".$this->error, LOG_ERR);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
// Insert request
|
// Insert request
|
||||||
$sql = "INSERT INTO ".MAIN_DB_PREFIX."societe_remise_except";
|
$sql = "INSERT INTO ".MAIN_DB_PREFIX."societe_remise_except";
|
||||||
$sql.= " (datec, fk_soc, fk_user, description,";
|
$sql.= " (datec, fk_soc, fk_user, description,";
|
||||||
$sql.= " amount_ht, amount_tva, amount_ttc, tva_tx,";
|
$sql.= " amount_ht, amount_tva, amount_ttc, tva_tx,";
|
||||||
$sql.= " fk_facture_source";
|
$sql.= " fk_facture_source";
|
||||||
$sql.= ")";
|
$sql.= ")";
|
||||||
$sql.= " VALUES (".$this->db->idate(mktime()).", ".$this->fk_soc.", ".$user->id.", '".addslashes($this->desc)."',";
|
$sql.= " VALUES (".$this->db->idate($this->datec!=''?$this->datec:dol_now('tzserver')).", ".$this->fk_soc.", ".$user->id.", '".addslashes($this->description)."',";
|
||||||
$sql.= " ".$this->amount_ht.", ".$this->amount_tva.", ".$this->amount_ttc.", ".$this->tva_tx.",";
|
$sql.= " ".$this->amount_ht.", ".$this->amount_tva.", ".$this->amount_ttc.", ".$this->tva_tx.",";
|
||||||
$sql.= " ".($this->fk_facture_source?"'".$this->fk_facture_source."'":"null");
|
$sql.= " ".($this->fk_facture_source?"'".$this->fk_facture_source."'":"null");
|
||||||
$sql.= ")";
|
$sql.= ")";
|
||||||
@@ -166,23 +174,56 @@ class DiscountAbsolute
|
|||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* \brief Delete object in database
|
* \brief Delete object in database. If fk_facture_source is defined, we delete all familiy with same fk_facture_source. If not, only with id is removed.
|
||||||
|
* \param user Object of user asking to delete
|
||||||
* \return int <0 if KO, >0 if OK
|
* \return int <0 if KO, >0 if OK
|
||||||
*/
|
*/
|
||||||
function delete()
|
function delete($user)
|
||||||
{
|
{
|
||||||
global $conf, $langs;
|
global $conf, $langs;
|
||||||
|
|
||||||
|
// Check if we can remove the discount
|
||||||
|
if ($this->fk_facture_source)
|
||||||
|
{
|
||||||
|
$sql.="SELECT COUNT(rowid) as nb";
|
||||||
|
$sql.=" FROM ".MAIN_DB_PREFIX."societe_remise_except";
|
||||||
|
$sql.=" WHERE (fk_facture_line IS NOT NULL"; // Not used as absolute simple discount
|
||||||
|
$sql.=" OR fk_facture IS NOT NULL)"; // Not used as credit note and not used as deposit
|
||||||
|
$sql.=" AND fk_facture_source = ".$this->fk_facture_source;
|
||||||
|
//$sql.=" AND rowid != ".$this->id;
|
||||||
|
|
||||||
|
dol_syslog("DiscountAbsolute::delete Check if we can remove discount sql=".$sql);
|
||||||
|
$resql=$this->db->query($sql);
|
||||||
|
if ($resql)
|
||||||
|
{
|
||||||
|
$obj = $this->db->fetch_object($resql);
|
||||||
|
if ($obj->nb > 0)
|
||||||
|
{
|
||||||
|
$this->error='ErrorThisPartOrAnotherIsAlreadyUsedSoDiscountSerieCantBeRemoved';
|
||||||
|
return -2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dol_print_error($db);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$this->db->begin();
|
$this->db->begin();
|
||||||
|
|
||||||
|
// Delete but only if not used
|
||||||
$sql = "DELETE FROM ".MAIN_DB_PREFIX."societe_remise_except ";
|
$sql = "DELETE FROM ".MAIN_DB_PREFIX."societe_remise_except ";
|
||||||
$sql.= " WHERE rowid = ".$this->id." AND (fk_facture_line IS NULL or fk_facture IS NULL)";
|
if ($this->fk_facture_source) $sql.= " WHERE fk_facture_source = ".$this->fk_facture_source; // Delete all lines of same serie
|
||||||
|
else $sql.= " WHERE rowid = ".$this->id; // Delete only line
|
||||||
|
$sql.= " AND (fk_facture_line IS NULL"; // Not used as absolute simple discount
|
||||||
|
$sql.= " AND fk_facture IS NULL)"; // Not used as credit note and not used as deposit
|
||||||
|
|
||||||
dol_syslog("DiscountAbsolute::delete Delete discount sql=".$sql);
|
dol_syslog("DiscountAbsolute::delete Delete discount sql=".$sql);
|
||||||
$result=$this->db->query($sql);
|
$result=$this->db->query($sql);
|
||||||
if ($result)
|
if ($result)
|
||||||
{
|
{
|
||||||
// If source of discount was a credit not, we change credit note statut.
|
// If source of discount was a credit note or deposit, we change source statut.
|
||||||
if ($this->fk_facture_source)
|
if ($this->fk_facture_source)
|
||||||
{
|
{
|
||||||
$sql = "UPDATE ".MAIN_DB_PREFIX."facture";
|
$sql = "UPDATE ".MAIN_DB_PREFIX."facture";
|
||||||
@@ -191,7 +232,7 @@ class DiscountAbsolute
|
|||||||
|
|
||||||
dol_syslog("DiscountAbsolute::delete Update credit note or deposit invoice statut sql=".$sql);
|
dol_syslog("DiscountAbsolute::delete Update credit note or deposit invoice statut sql=".$sql);
|
||||||
$result=$this->db->query($sql);
|
$result=$this->db->query($sql);
|
||||||
if ($result)
|
if ($result)
|
||||||
{
|
{
|
||||||
$this->db->commit();
|
$this->db->commit();
|
||||||
return 1;
|
return 1;
|
||||||
@@ -288,7 +329,7 @@ class DiscountAbsolute
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Renvoie montant TTC des reductions/avoirs en cours disponibles
|
* \brief Renvoie montant TTC des reductions/avoirs en cours disponibles pour une société, un user ou autre
|
||||||
* \param company Object third party for filter
|
* \param company Object third party for filter
|
||||||
* \param user Filtre sur un user auteur des remises
|
* \param user Filtre sur un user auteur des remises
|
||||||
* \param filter Filtre autre
|
* \param filter Filtre autre
|
||||||
|
|||||||
@@ -2623,13 +2623,13 @@ class Form
|
|||||||
$resultyesno = '<select class="flat" name="'.$htmlname.'">'."\n";
|
$resultyesno = '<select class="flat" name="'.$htmlname.'">'."\n";
|
||||||
if (("$value" == 'yes') || ($value == 1))
|
if (("$value" == 'yes') || ($value == 1))
|
||||||
{
|
{
|
||||||
$resultyesno .= '<option value="'.$yes.'" selected="true">'.$langs->trans("yes").'</option>'."\n";
|
$resultyesno .= '<option value="'.$yes.'" selected="true">'.$langs->trans("Yes").'</option>'."\n";
|
||||||
$resultyesno .= '<option value="'.$no.'">'.$langs->trans("no").'</option>'."\n";
|
$resultyesno .= '<option value="'.$no.'">'.$langs->trans("No").'</option>'."\n";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$resultyesno .= '<option value="'.$yes.'">'.$langs->trans("yes").'</option>'."\n";
|
$resultyesno .= '<option value="'.$yes.'">'.$langs->trans("Yes").'</option>'."\n";
|
||||||
$resultyesno .= '<option value="'.$no.'" selected="true">'.$langs->trans("no").'</option>'."\n";
|
$resultyesno .= '<option value="'.$no.'" selected="true">'.$langs->trans("No").'</option>'."\n";
|
||||||
}
|
}
|
||||||
$resultyesno .= '</select>'."\n";
|
$resultyesno .= '</select>'."\n";
|
||||||
return $resultyesno;
|
return $resultyesno;
|
||||||
|
|||||||
@@ -241,7 +241,8 @@ DiscountFromCreditNote=Discount from credit note %s
|
|||||||
DiscountFromDeposit=Payments from deposit invoice %s
|
DiscountFromDeposit=Payments from deposit invoice %s
|
||||||
AbsoluteDiscountUse=This kind of credit can be used on invoice before its validation
|
AbsoluteDiscountUse=This kind of credit can be used on invoice before its validation
|
||||||
CreditNoteDepositUse=Invoice must be validated to use this king of credits
|
CreditNoteDepositUse=Invoice must be validated to use this king of credits
|
||||||
NewGlobalDiscount=New discount
|
NewGlobalDiscount=New fix discount
|
||||||
|
NewRelativeDiscount=New relative discount
|
||||||
NoteReason=Note/Reason
|
NoteReason=Note/Reason
|
||||||
ReasonDiscount=Reason
|
ReasonDiscount=Reason
|
||||||
AddGlobalDiscount=Add discount
|
AddGlobalDiscount=Add discount
|
||||||
@@ -268,6 +269,11 @@ ConfirmCloneInvoice=Are you sure you want to clone this invoice <b>%s</b> ?
|
|||||||
DisabledBecauseReplacedInvoice=Action disabled because invoice has been replaced
|
DisabledBecauseReplacedInvoice=Action disabled because invoice has been replaced
|
||||||
DescTaxAndDividendsArea=This area presents a summary of all payments made for tax or social contributions. Only records with payment during the fixed year are included here.
|
DescTaxAndDividendsArea=This area presents a summary of all payments made for tax or social contributions. Only records with payment during the fixed year are included here.
|
||||||
NbOfPayments=Nb of payments
|
NbOfPayments=Nb of payments
|
||||||
|
SplitDiscount=Split discount in two
|
||||||
|
ConfirmSplitDiscount=Are you sure you want to split this discount of <b>%s</b> %s into 2 lower discounts ?
|
||||||
|
TypeAmountOfEachNewDiscount=Input amount for each of two parts :
|
||||||
|
TotalOfTwoDiscountMustEqualsOriginal=Total of two new discount must be equal to original discount amount.
|
||||||
|
ConfirmRemoveDiscount=Are you sure you want to remove this discount ?
|
||||||
|
|
||||||
# PaymentConditions
|
# PaymentConditions
|
||||||
PaymentConditionShortRECEP=Immediate
|
PaymentConditionShortRECEP=Immediate
|
||||||
|
|||||||
@@ -241,6 +241,7 @@ DiscountFromDeposit=Paiements issue de l'acompte %s
|
|||||||
AbsoluteDiscountUse=Ce type de crédit ne peut s'utiliser que sur une facture non validée
|
AbsoluteDiscountUse=Ce type de crédit ne peut s'utiliser que sur une facture non validée
|
||||||
CreditNoteDepositUse=La facture doit être validée pour pouvoir utiliser ce type de crédits
|
CreditNoteDepositUse=La facture doit être validée pour pouvoir utiliser ce type de crédits
|
||||||
NewGlobalDiscount=Nouvelle remise fixe
|
NewGlobalDiscount=Nouvelle remise fixe
|
||||||
|
NewRelativeDiscount=Nouvelle remise relative
|
||||||
NoteReason=Note/Motif
|
NoteReason=Note/Motif
|
||||||
ReasonDiscount=Motif
|
ReasonDiscount=Motif
|
||||||
AddGlobalDiscount=Ajouter remise fixe
|
AddGlobalDiscount=Ajouter remise fixe
|
||||||
@@ -268,6 +269,11 @@ ConfirmCloneInvoice=Etes-vous sur de vouloir cloner cette facture <b>%s</b> ?
|
|||||||
DisabledBecauseReplacedInvoice=Action désactivée car facture remplacée
|
DisabledBecauseReplacedInvoice=Action désactivée car facture remplacée
|
||||||
DescTaxAndDividendsArea=Cet écran résumé la liste de toutes les taxes et charges sociales sociales exigées pour une année donnée. La date prise en compte est la période d'exigibilité.
|
DescTaxAndDividendsArea=Cet écran résumé la liste de toutes les taxes et charges sociales sociales exigées pour une année donnée. La date prise en compte est la période d'exigibilité.
|
||||||
NbOfPayments=Nb de payements
|
NbOfPayments=Nb de payements
|
||||||
|
SplitDiscount=Scinder réduction en deux
|
||||||
|
ConfirmSplitDiscount=Etes-vous sur de vouloir scinder la réduction de <b>%s</b> %s en 2 réductions plus petites ?
|
||||||
|
TypeAmountOfEachNewDiscount=Saisissez le montant de chacune des deux parts :
|
||||||
|
TotalOfTwoDiscountMustEqualsOriginal=La somme du montant des 2 nouvelles réductions doit être équivalent au montant de la réduction à scinder.
|
||||||
|
ConfirmRemoveDiscount=Etes-vous sur de vouloir supprimer cette réduction ?
|
||||||
|
|
||||||
# PaymentConditions
|
# PaymentConditions
|
||||||
PaymentConditionShortRECEP=A réception
|
PaymentConditionShortRECEP=A réception
|
||||||
|
|||||||
@@ -2367,8 +2367,8 @@ function get_default_npr($societe_vendeuse, $societe_acheteuse, $taux_produit)
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Renvoie oui ou non dans la langue choisie
|
* \brief Return yes or no in current language
|
||||||
* \param yesno Variable pour test si oui ou non
|
* \param yesno Value to test (1, 'yes', 'true' or 0, 'no', 'false')
|
||||||
* \param case 1=Yes/No, 0=yes/no
|
* \param case 1=Yes/No, 0=yes/no
|
||||||
* \param color 0=texte only, 1=Text is formated with a color font style ('ok' or 'error'), 2=Text is formated with 'ok' color.
|
* \param color 0=texte only, 1=Text is formated with a color font style ('ok' or 'error'), 2=Text is formated with 'ok' color.
|
||||||
*/
|
*/
|
||||||
@@ -2640,7 +2640,7 @@ function dol_nboflines($s,$maxchar=0)
|
|||||||
*/
|
*/
|
||||||
function dol_nboflines_bis($texte,$maxlinesize=0,$charset='UTF-8')
|
function dol_nboflines_bis($texte,$maxlinesize=0,$charset='UTF-8')
|
||||||
{
|
{
|
||||||
//print $texte;
|
//print $texte;
|
||||||
$repTable = array("\t" => " ", "\n" => "<br>", "\r" => " ", "\0" => " ", "\x0B" => " ");
|
$repTable = array("\t" => " ", "\n" => "<br>", "\r" => " ", "\0" => " ", "\x0B" => " ");
|
||||||
$texte = strtr($texte, $repTable);
|
$texte = strtr($texte, $repTable);
|
||||||
if ($charset == 'UTF-8') { $pattern = '/(<[^>]+>)/Uu'; } // /U is to have UNGREEDY regex to limit to one html tag. /u is for UTF8 support
|
if ($charset == 'UTF-8') { $pattern = '/(<[^>]+>)/Uu'; } // /U is to have UNGREEDY regex to limit to one html tag. /u is for UTF8 support
|
||||||
|
|||||||
@@ -1048,7 +1048,7 @@ class Societe extends CommonObject
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Ajoute une remise fixe pour la societe
|
* \brief Add a discount for third party
|
||||||
* \param remise Montant de la remise
|
* \param remise Montant de la remise
|
||||||
* \param user Utilisateur qui accorde la remise
|
* \param user Utilisateur qui accorde la remise
|
||||||
* \param desc Motif de l'avoir
|
* \param desc Motif de l'avoir
|
||||||
@@ -1084,7 +1084,7 @@ class Societe extends CommonObject
|
|||||||
$discount->amount_tva=price2num($remise*$tva_tx/100,'MT');
|
$discount->amount_tva=price2num($remise*$tva_tx/100,'MT');
|
||||||
$discount->amount_ttc=price2num($discount->amount_ht+$discount->amount_tva,'MT');
|
$discount->amount_ttc=price2num($discount->amount_ht+$discount->amount_tva,'MT');
|
||||||
$discount->tva_tx=price2num($tva_tx,'MT');
|
$discount->tva_tx=price2num($tva_tx,'MT');
|
||||||
$discount->desc=$desc;
|
$discount->description=$desc;
|
||||||
$result=$discount->create($user);
|
$result=$discount->create($user);
|
||||||
if ($result > 0)
|
if ($result > 0)
|
||||||
{
|
{
|
||||||
@@ -1099,26 +1099,6 @@ class Societe extends CommonObject
|
|||||||
else return 0;
|
else return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* \brief Supprime un avoir (a condition que non affecte a une facture)
|
|
||||||
* \param id Id de l'avoir a supprimer
|
|
||||||
* \return int <0 si ko, id de l'avoir si ok
|
|
||||||
*/
|
|
||||||
function del_remise_except($id)
|
|
||||||
{
|
|
||||||
if ($this->id)
|
|
||||||
{
|
|
||||||
require_once(DOL_DOCUMENT_ROOT.'/discount.class.php');
|
|
||||||
|
|
||||||
$discount = new DiscountAbsolute($this->db);
|
|
||||||
$result=$discount->fetch($id);
|
|
||||||
$result=$discount->delete();
|
|
||||||
return $result;
|
|
||||||
}
|
|
||||||
else return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Renvoie montant TTC des reductions/avoirs en cours disponibles de la societe
|
* \brief Renvoie montant TTC des reductions/avoirs en cours disponibles de la societe
|
||||||
* \param user Filtre sur un user auteur des remises
|
* \param user Filtre sur un user auteur des remises
|
||||||
|
|||||||
BIN
htdocs/theme/auguria/img/split.png
Normal file
BIN
htdocs/theme/auguria/img/split.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 236 B |
BIN
htdocs/theme/bluelagoon/img/split.png
Normal file
BIN
htdocs/theme/bluelagoon/img/split.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 236 B |
BIN
htdocs/theme/eldy/img/split.png
Normal file
BIN
htdocs/theme/eldy/img/split.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 236 B |
BIN
htdocs/theme/freelug/img/split.png
Normal file
BIN
htdocs/theme/freelug/img/split.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 236 B |
BIN
htdocs/theme/rodolphe/img/split.png
Normal file
BIN
htdocs/theme/rodolphe/img/split.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 236 B |
BIN
htdocs/theme/yellow/img/split.png
Normal file
BIN
htdocs/theme/yellow/img/split.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 236 B |
@@ -333,6 +333,30 @@ class Translate {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function getTradFromKey($key)
|
||||||
|
{
|
||||||
|
global $db;
|
||||||
|
$newstr=$key;
|
||||||
|
if (eregi('CurrencyShort([A-Z]+)$',$key,$reg))
|
||||||
|
{
|
||||||
|
global $db;
|
||||||
|
//$newstr=$this->getLabelFromKey($db,$reg[1],'c_currencies','code_iso','labelshort');
|
||||||
|
$newstr=$this->getLabelFromKey($db,$reg[1],'c_currencies','code_iso','code');
|
||||||
|
}
|
||||||
|
else if (eregi('Currency([A-Z]+)$',$key,$reg))
|
||||||
|
{
|
||||||
|
global $db;
|
||||||
|
$newstr=$this->getLabelFromKey($db,$reg[1],'c_currencies','code_iso','label');
|
||||||
|
}
|
||||||
|
else if (eregi('SendingMethod([0-9A-Z]+)$',$key,$reg))
|
||||||
|
{
|
||||||
|
global $db;
|
||||||
|
$newstr=$this->getLabelFromKey($db,$reg[1],'expedition_methode','code','libelle');
|
||||||
|
}
|
||||||
|
return $newstr;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Retourne la version traduite du texte passe en parametre en la codant en HTML
|
* \brief Retourne la version traduite du texte passe en parametre en la codant en HTML
|
||||||
* Si il n'y a pas de correspondance pour ce texte, on cherche dans fichier alternatif
|
* Si il n'y a pas de correspondance pour ce texte, on cherche dans fichier alternatif
|
||||||
@@ -372,23 +396,7 @@ class Translate {
|
|||||||
}
|
}
|
||||||
else // Translation is not available
|
else // Translation is not available
|
||||||
{
|
{
|
||||||
$newstr=$key;
|
$newstr=$this->getTradFromKey($key);
|
||||||
if (eregi('CurrencyShort([A-Z]+)$',$key,$reg))
|
|
||||||
{
|
|
||||||
global $db;
|
|
||||||
//$newstr=$this->getLabelFromKey($db,$reg[1],'c_currencies','code_iso','labelshort');
|
|
||||||
$newstr=$this->getLabelFromKey($db,$reg[1],'c_currencies','code_iso','code');
|
|
||||||
}
|
|
||||||
else if (eregi('Currency([A-Z]+)$',$key,$reg))
|
|
||||||
{
|
|
||||||
global $db;
|
|
||||||
$newstr=$this->getLabelFromKey($db,$reg[1],'c_currencies','code_iso','label');
|
|
||||||
}
|
|
||||||
else if (eregi('SendingMethod([0-9A-Z]+)$',$key,$reg))
|
|
||||||
{
|
|
||||||
global $db;
|
|
||||||
$newstr=$this->getLabelFromKey($db,$reg[1],'expedition_methode','code','libelle');
|
|
||||||
}
|
|
||||||
return $this->convToOutputCharset($newstr);
|
return $this->convToOutputCharset($newstr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -408,11 +416,14 @@ class Translate {
|
|||||||
*/
|
*/
|
||||||
function transnoentities($key, $param1='', $param2='', $param3='', $param4='')
|
function transnoentities($key, $param1='', $param2='', $param3='', $param4='')
|
||||||
{
|
{
|
||||||
$newstr=$key;
|
if ($this->getTransFromTab($key))
|
||||||
if ($this->getTransFromTab($newstr))
|
|
||||||
{
|
{
|
||||||
// Si la traduction est disponible
|
// Si la traduction est disponible
|
||||||
$newstr=sprintf($this->tab_translate[$newstr],$param1,$param2,$param3,$param4);
|
$newstr=sprintf($this->tab_translate[$key],$param1,$param2,$param3,$param4);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$newstr=$this->getTradFromKey($key);
|
||||||
}
|
}
|
||||||
return $this->convToOutputCharset($newstr);
|
return $this->convToOutputCharset($newstr);
|
||||||
}
|
}
|
||||||
@@ -433,11 +444,14 @@ class Translate {
|
|||||||
*/
|
*/
|
||||||
function transnoentitiesnoconv($key, $param1='', $param2='', $param3='', $param4='')
|
function transnoentitiesnoconv($key, $param1='', $param2='', $param3='', $param4='')
|
||||||
{
|
{
|
||||||
$newstr=$key;
|
if ($this->getTransFromTab($key))
|
||||||
if ($this->getTransFromTab($newstr))
|
|
||||||
{
|
{
|
||||||
// Si la traduction est disponible
|
// Si la traduction est disponible
|
||||||
$newstr=sprintf($this->tab_translate[$newstr],$param1,$param2,$param3,$param4);
|
$newstr=sprintf($this->tab_translate[$key],$param1,$param2,$param3,$param4);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$newstr=$this->getTradFromKey($key);
|
||||||
}
|
}
|
||||||
return $newstr;
|
return $newstr;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user