28 if (!defined(
'NOCSRFCHECK')) define(
'NOCSRFCHECK',
'1');
29 if (!defined(
'NOTOKENRENEWAL')) define(
'NOTOKENRENEWAL',
'1');
30 if (!defined(
'NOREQUIREMENU')) define(
'NOREQUIREMENU',
'1');
31 if (!defined(
'NOREQUIREHTML')) define(
'NOREQUIREHTML',
'1');
32 if (!defined(
'NOREQUIREAJAX')) define(
'NOREQUIREAJAX',
'1');
34 require
'../main.inc.php';
35 require_once DOL_DOCUMENT_ROOT.
'/compta/facture/class/facture.class.php';
37 $place = (
GETPOST(
'place',
'aZ09') ?
GETPOST(
'place',
'aZ09') : 0);
39 $invoiceid =
GETPOST(
'invoiceid',
'int');
41 if (empty($user->rights->takepos->run)) {
53 $invoice->fetch($invoiceid);
55 $sql =
"SELECT rowid FROM ".MAIN_DB_PREFIX.
"facture where ref='(PROV-POS".$_SESSION[
"takeposterminal"].
"-".$place.
")'";
57 $obj = $db->fetch_object(
$resql);
60 $invoiceid = $obj->rowid;
66 $invoice->fetch($invoiceid);
70 $arrayofcss = array(
'/takepos/css/pos.css.php');
75 $langs->loadLangs(array(
'main',
'bills',
'cashdesk'));
77 if (!isset($conf->global->TAKEPOS_NUMPAD_USE_PAYMENT_ICON) || !empty($conf->global->TAKEPOS_NUMPAD_USE_PAYMENT_ICON)) {
78 $htmlReductionPercent =
'<span class="fa fa-2x fa-percent"></span>';
79 $htmlReductionAmount =
'<span class="fa fa-2x fa-money"></span><br>'.$langs->trans(
'Amount');
81 $htmlReductionPercent = $langs->trans(
'ReductionShort').
'<br>%';
82 $htmlReductionAmount = $langs->trans(
'ReductionShort').
'<br>'.$langs->trans(
'Amount');
85 <link rel=
"stylesheet" href=
"css/pos.css.php">
90 var reductionType =
'';
91 var reductionTotal =
'';
94 var htmlBtnOK =
'<span style="font-size: 14pt;">OK</span>';
95 var htmlReductionPercent =
'<?php echo dol_escape_js($htmlReductionPercent); ?>';
96 var htmlReductionAmount =
'<?php echo dol_escape_js($htmlReductionAmount); ?>';
107 jQuery(
'#reduction_total').val(reductionTotal);
108 jQuery(
"#reduction_type_percent").html(htmlReductionPercent);
109 jQuery(
'#reduction_type_amount').html(htmlReductionAmount);
117 function Edit(number)
119 console.log(
'Edit ' + number);
121 if (number ===
'p') {
122 if (editAction ===
'p' && reductionType ===
'percent'){
127 reductionType =
'percent';
128 }
else if (number ===
'a') {
129 if (editAction ===
'a' && reductionType ===
'amount'){
134 reductionType =
'amount';
137 if (editAction ===
'p'){
138 jQuery(
'#reduction_type_percent').html(htmlBtnOK);
139 jQuery(
'#reduction_type_amount').html(htmlReductionAmount);
140 }
else if (editAction ===
'a'){
141 jQuery(
'#reduction_type_amount').html(htmlBtnOK);
142 jQuery(
"#reduction_type_percent").html(htmlReductionPercent);
144 jQuery(
'#reduction_type_percent').html(htmlReductionPercent);
145 jQuery(
'#reduction_type_amount').html(htmlReductionAmount);
154 function AddReduction(reductionNumber)
156 console.log(
'AddReduction ' + reductionNumber);
158 reductionTotal += String(reductionNumber);
159 jQuery(
'#reduction_total').val(reductionTotal);
165 function ValidateReduction()
167 console.log(
'ValidateReduction');
169 if (reductionTotal.length <= 0) {
170 console.error(
'Error no reduction');
174 var reductionNumber = parseFloat(reductionTotal);
175 if (isNaN(reductionNumber)) {
176 console.error(
'Error not a valid number :', reductionNumber);
180 if (reductionType ===
'percent') {
181 var invoiceid = <?php echo ($invoiceid > 0 ? $invoiceid : 0); ?>;
182 parent.$(
"#poslines").load(
"invoice.php?action=update_reduction_global&place=<?php echo $place; ?>&number="+reductionNumber+
"&invoiceid="+invoiceid,
function() {
184 parent.$.colorbox.close();
186 }
else if (reductionType ===
'amount') {
187 var desc =
"<?php echo dol_escape_js($langs->transnoentities('Reduction')); ?>";
188 parent.$(
"#poslines").load(
"invoice.php?action=freezone&place=<?php echo $place; ?>&number=-"+reductionNumber+
"&desc="+desc,
function() {
190 parent.$.colorbox.close();
193 console.error(
'Error bad reduction type :', reductionType);
198 <div style=
"position:absolute; top:2%; left:5%; width:91%;">
201 print '<input type="text" class="takepospay" id="reduction_total" name="reduction_total" style="width: 50%;" placeholder="'.$langs->trans(
'Reduction').
'">';
206 <div style=
"position:absolute; top:33%; left:5%; height:52%; width:92%;">
209 print '<button type="button" class="calcbutton" onclick="AddReduction(7);">7</button>';
210 print
'<button type="button" class="calcbutton" onclick="AddReduction(8);">8</button>';
211 print
'<button type="button" class="calcbutton" onclick="AddReduction(9);">9</button>';
212 print
'<button type="button" class="calcbutton2" id="reduction_type_percent" onclick="Edit(\'p\');">'.$htmlReductionPercent.
'</button>';
213 print
'<button type="button" class="calcbutton" onclick="AddReduction(4);">4</button>';
214 print
'<button type="button" class="calcbutton" onclick="AddReduction(5);">5</button>';
215 print
'<button type="button" class="calcbutton" onclick="AddReduction(6);">6</button>';
216 print
'<button type="button" class="calcbutton2" id="reduction_type_amount" onclick="Edit(\'a\');">'.$htmlReductionAmount.
'</button>';
217 print
'<button type="button" class="calcbutton" onclick="AddReduction(1);">1</button>';
218 print
'<button type="button" class="calcbutton" onclick="AddReduction(2);">2</button>';
219 print
'<button type="button" class="calcbutton" onclick="AddReduction(3);">3</button>';
220 print
'<button type="button" class="calcbutton3 poscolorblue" onclick="Reset();"><span id="printtext" style="font-weight: bold; font-size: 18pt;">C</span></button>';
221 print
'<button type="button" class="calcbutton" onclick="AddReduction(0);">0</button>';
222 print
'<button type="button" class="calcbutton" onclick="AddReduction(\'.\');">.</button>';
223 print
'<button type="button" class="calcbutton"> </button>';
224 print
'<button type="button" class="calcbutton3 poscolordelete" onclick="parent.$.colorbox.close();"><span id="printtext" style="font-weight: bold; font-size: 18pt;">X</span></button>';
GETPOST($paramname, $check= 'alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
top_htmlhead($head, $title= '', $disablejs=0, $disablehead=0, $arrayofjs= '', $arrayofcss= '', $disablejmobile=0, $disablenofollow=0)
Ouput html header of a page.
accessforbidden($message= '', $printheader=1, $printfooter=1, $showonlymessage=0, $params=null)
Show a message to say access is forbidden and stop program Calling this function terminate execution ...
print
Draft customers invoices.
if(!empty($conf->facture->enabled)&&$user->rights->facture->lire) if((!empty($conf->fournisseur->enabled)&&empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)||!empty($conf->supplier_invoice->enabled))&&$user->rights->fournisseur->facture->lire) if(!empty($conf->don->enabled)&&$user->rights->don->lire) if(!empty($conf->tax->enabled)&&$user->rights->tax->charges->lire) if(!empty($conf->facture->enabled)&&!empty($conf->commande->enabled)&&$user->rights->commande->lire &&empty($conf->global->WORKFLOW_DISABLE_CREATE_INVOICE_FROM_ORDER)) if(!empty($conf->facture->enabled)&&$user->rights->facture->lire) if((!empty($conf->fournisseur->enabled)&&empty($conf->global->MAIN_USE_NEW_SUPPLIERMOD)||!empty($conf->supplier_invoice->enabled))&&$user->rights->fournisseur->facture->lire) $resql
Social contributions to pay.
Class to manage invoices.