Close #18607 : Implementation of salary button
This commit is contained in:
parent
5b801665e3
commit
0d9280f945
@ -21,4 +21,5 @@ LastSalaries=Latest %s salaries
|
||||
AllSalaries=All salaries
|
||||
SalariesStatistics=Salary statistics
|
||||
SalariesAndPayments=Salaries and payments
|
||||
ConfirmDeleteSalaryPayment=Do you want to delete this salary payment ?
|
||||
ConfirmDeleteSalaryPayment=Do you want to delete this salary payment ?
|
||||
FillFieldFirst=Fill employee field first
|
||||
|
||||
@ -22,3 +22,4 @@ AllSalaries=Tous les salaires
|
||||
SalariesStatistics=Statistiques
|
||||
SalariesAndPayments=Salaires et paiements
|
||||
ConfirmDeleteSalaryPayment=Voulez-vous supprimer ce paiement de salaire ?
|
||||
FillFieldFirst=Remplisez d'abord le champ salarié
|
||||
|
||||
73
htdocs/salaries/ajax/ajaxsalaries.php
Normal file
73
htdocs/salaries/ajax/ajaxsalaries.php
Normal file
@ -0,0 +1,73 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 Andre Cianfarani <acianfa@free.fr>
|
||||
* Copyright (C) 2005-2009 Regis Houssin <regis.houssin@inodbox.com>
|
||||
* Copyright (C) 2007-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
* Copyright (C) 2010 Cyrille de Lambert <info@auguria.net>
|
||||
*
|
||||
* 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
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file htdocs/salaries/ajax/ajaxsalaries.php
|
||||
* \brief File to return Ajax response on salary request
|
||||
*/
|
||||
|
||||
if (!defined('NOTOKENRENEWAL')) {
|
||||
define('NOTOKENRENEWAL', 1); // Disables token renewal
|
||||
}
|
||||
if (!defined('NOREQUIREMENU')) {
|
||||
define('NOREQUIREMENU', '1');
|
||||
}
|
||||
if (!defined('NOREQUIREHTML')) {
|
||||
define('NOREQUIREHTML', '1');
|
||||
}
|
||||
if (!defined('NOREQUIREAJAX')) {
|
||||
define('NOREQUIREAJAX', '1');
|
||||
}
|
||||
if (!defined('NOREQUIRESOC')) {
|
||||
define('NOREQUIRESOC', '1');
|
||||
}
|
||||
if (!defined('NOCSRFCHECK')) {
|
||||
define('NOCSRFCHECK', '1');
|
||||
}
|
||||
|
||||
require '../../main.inc.php';
|
||||
require_once DOL_DOCUMENT_ROOT.'/salaries/class/salary.class.php';
|
||||
|
||||
restrictedArea($user, 'salaries');
|
||||
|
||||
$fk_user = GETPOST('fk_user', 'int');
|
||||
$return_arr = array();
|
||||
if (!empty(GETPOST('fk_user', 'int'))) {
|
||||
$sql = "SELECT s.amount, s.rowid FROM ".MAIN_DB_PREFIX."salary as s";
|
||||
$sql .= " WHERE s.fk_user = ".$fk_user;
|
||||
$sql .= " AND s.paye = 1";
|
||||
$sql .= $db->order("s.dateep", "DESC");
|
||||
|
||||
$resql = $db->query($sql);
|
||||
if ($resql) {
|
||||
$obj = $db->fetch_object($resql);
|
||||
$label = "Salary amount";
|
||||
$row_array['label'] = $label;
|
||||
$row_array['value'] = $obj->amount;
|
||||
$row_array['key'] = "Amount";
|
||||
|
||||
array_push($return_arr, $row_array);
|
||||
echo json_encode($return_arr);
|
||||
} else {
|
||||
echo json_encode(array('nom'=>'Error', 'label'=>'Error', 'key'=>'Error', 'value'=>'Error'));
|
||||
}
|
||||
} else {
|
||||
echo json_encode(array('nom'=>'ErrorBadParameter', 'label'=>'ErrorBadParameter', 'key'=>'ErrorBadParameter', 'value'=>'ErrorBadParameter'));
|
||||
}
|
||||
@ -466,8 +466,10 @@ if ($action == 'create') {
|
||||
// Amount
|
||||
print '<tr><td>';
|
||||
print $form->editfieldkey('Amount', 'amount', '', $object, 0, 'string', '', 1).'</td><td>';
|
||||
print '<input name="amount" id="amount" class="minwidth75 maxwidth100" value="'.GETPOST("amount").'">';
|
||||
print '</td></tr>';
|
||||
print '<input name="amount" id="amount" class="minwidth75 maxwidth100" value="'.GETPOST("amount").'"> ';
|
||||
print '<button class="dpInvisibleButtons" id="updateAmountWithLastSalary" name="_useless" type="button">'.$langs->trans('UpdateAmountWithLastSalary').'</a>';
|
||||
print '</td>';
|
||||
print '</tr>';
|
||||
|
||||
// Project
|
||||
if (!empty($conf->projet->enabled)) {
|
||||
@ -560,6 +562,42 @@ if ($action == 'create') {
|
||||
print $form->buttonsSaveCancel("Save", "Cancel", $addition_button);
|
||||
|
||||
print '</form>';
|
||||
print '<script>';
|
||||
print '$( document ).ready(function() {';
|
||||
print '$("#updateAmountWithLastSalary").on("click",function updateAmountWithLastSalary(){
|
||||
var fk_user = $("#fk_user").val()
|
||||
var url = "'.DOL_URL_ROOT.'/salaries/ajax/ajaxsalaries.php?fk_user="+fk_user;
|
||||
if(fk_user != -1){
|
||||
$.get(
|
||||
url,
|
||||
function( data ) {
|
||||
if(data!=null){
|
||||
console.log("Data returned: "+data);
|
||||
item = JSON.parse(data);
|
||||
if(item[0].key == "Amount"){
|
||||
value = item[0].value;
|
||||
if(value != null){
|
||||
$("#amount").val(item[0].value);
|
||||
}else{
|
||||
console.error("Error: Ajax url "+url+" has returned a null value.");
|
||||
}
|
||||
}else{
|
||||
console.error("Error: Ajax url "+url+" has returned the wrong key.");
|
||||
}
|
||||
|
||||
}else{
|
||||
console.error("Error: Ajax url "+url+" has returned an empty page.");
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
}else{
|
||||
alert("'.$langs->trans("FillFieldFirst").'");
|
||||
}
|
||||
});
|
||||
|
||||
})';
|
||||
print '</script>';
|
||||
}
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user