Files
CRM/NoteDeFraisParametrage.php
BACHIR SOULDI 2794e62571 first commit
2025-09-28 08:49:37 +01:00

602 lines
29 KiB
PHP

<?php
require_once 'include/utils/utils.php';
require_once 'includes/Loader.php';
vimport ('includes.runtime.EntryPoint');
require_once 'SUtiles.php';
@session_start();
global $adb;
$current_user = Users_Record_Model::getCurrentUserModel();
$roleid = $current_user->get('roleid');
$userId = $current_user->get('id');
$viewer = new Vtiger_Viewer();
$viewer->assign('CURRENTDATE', Vtiger_Date_UIType::getDisplayDateValue(date('Y-n-j')));
$viewer->assign('MODULE', 'Home');
$viewer->assign('MODULE_NAME', 'Home');
$viewer->assign('QUALIFIED_MODULE', 'Home');
$viewer->assign('PARENT_MODULE', '');
$viewer->assign('VIEW', 'DashBoard');
$menuModelsList = Vtiger_Menu_Model::getAll(true);
$menuStructure = Vtiger_MenuStructure_Model::getInstanceFromMenuList($menuModelsList, 'Home');
uksort($menuModelsList, array('Vtiger_MenuStructure_Model', 'sortMenuItemsByProcess'));
$viewer->assign('SELECTED_MENU_CATEGORY', 'MARKETING');
$viewer->assign('SELECTED_MENU_CATEGORY_LABEL', 'Tableau de bord');
//$viewer->assign('SELECTED_CATEGORY_MENU_LIST', $menuGroupedByParent['MARKETING']);
$viewer->assign('MENUS', $menuModelsList);
$viewer->assign('QUICK_CREATE_MODULES', Vtiger_Menu_Model::getAllForQuickCreate());
$viewer->assign('MENU_STRUCTURE', $menuStructure);
$viewer->assign('MENU_SELECTED_MODULENAME', 'Home');
$viewer->assign('MENU_TOPITEMS_LIMIT', $menuStructure->getLimit());
$viewer->assign('COMPANY_LOGO', Vtiger_CompanyDetails_Model::getInstanceById()->getLogo());
$viewer->assign('COMPANY_DETAILS_SETTINGS',new Settings_Vtiger_CompanyDetails_Model());
$viewer->assign('USER_MODEL', $current_user);
$viewer->assign('CURRENT_USER_MODEL', $current_user);
require_once 'libraries/csrf-magic/csrf-magic.php';
$viewer->assign('HOME_MODULE_MODEL', Vtiger_Module_Model::getInstance('Home'));
$viewer->assign('HEADER_LINKS', Vtiger_Header_View::getHeaderLinks());
$viewer->assign('ANNOUNCEMENT', Vtiger_Header_View::getAnnouncement());
$viewer->assign('SEARCHABLE_MODULES', Vtiger_Module_Model::getSearchableModules());
$viewer->assign('INVENTORY_MODULES', getInventoryModules());
$viewer->assign('PAGETITLE','Paramétrage Nouveau Note De Frais');
$viewer->assign('LANGUAGE_STRINGS', Vtiger_Language_Handler::export('Home', 'jsLanguageStrings'));
$viewer->view('CustomDashboard.tpl');
function getAllUsers(){
global $adb;
$query5 = "SELECT id,CONCAT(first_name,' ', last_name) as fullname FROM `vtiger_users` where status ='Active' ";
$result5 =$adb->query($query5);
$users=array();
while ($recordinfo = $adb->fetch_array($result5)) {
$users[] = $recordinfo;
}
return $users;
}
function getValidateur(){
global $adb;
$query5 = "SELECT * FROM note_de_frais_parametres ";
$result5 =$adb->query($query5);
$res=array();
while ($recordinfo = $adb->fetch_array($result5)) {
$res[] = $recordinfo;
}
return $res[0];
}
function getParametres(){
global $adb;
$query5 = "SELECT * FROM note_de_frais_parametres";
$result5 =$adb->query($query5);
$parametres=array();
while ($recordinfo = $adb->fetch_array($result5)) {
$parametres[] = $recordinfo;
}
return $parametres[0];
}
$currentDate = new DateTime();
$year_current = $currentDate->format("Y");
$month_current = $currentDate->format("n");
$months = array("JANVIER" => '01', "FEVRIER" => '02', "MARS" => '03', "AVRIL" => '04', "MAI" => '05',
"JUIN"=> '06',"JUILLET"=> '07', "AOUT"=> '08', "SEPTEMBRE"=> '09', "OCTOBRE"=> '10', "NOVEMBRE"=> '11', "DECEMBRE"=> '12');
//$months = array("JANVIER", "FEVRIER", "MARS", "AVRIL", "MAI", "JUIN", "JUILLET", "AOUT", "SEPTEMBRE", "OCTOBRE", "NOVEMBRE", "DECEMBRE");
$parametres = getParametres();
$validateur = getValidateur();
echo'
<div class="main-container main-container-Accounts">
<div class="container-fluid" style="margin:15px 15px 15px 15px;">
<div class="editViewHeader">
<div class="row">
<div class="col-lg-12 col-md-12 col-lg-pull-0">
<h4 class="editHeader" style="margin-top:5px;">Paramétrage Note De Frais</h4>
</div>
</div>
</div>
<form id="form2" action="?module=NoteDeFraisAjax&view=NoteDeFraisAjax" method="post" enctype="multipart/form-data">
<div class=" detailview-header-block" style="margin-bottom:10px;">
<div class="fieldBlockContainer" data-block="LBL_ADDRESS_INFORMATION" >
<h4 class="fieldBlockHeader">ETAT DES NOTES DE FRAIS</h4>
<hr>
<table class="table table-borderless addressBlock">
<tbody>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span> Mois&nbsp;</td>
<td class="fieldValue">
<select class="js-example-basic-single form-control" style="width:300px;" name="mois" required>
<option value=""></option>';
foreach ($months as $key => $idem) {
echo '<option value="'.$key.'">'.$key.'</option>';
}
echo '</select>
</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span> Année&nbsp;</td>
<td class="fieldValue">
<select class="js-example-basic-single form-control" style="width:300px;" name="annee" required>
<option value=""></option>
<option value="2020">2020</option>
<option value="2021">2021</option>
<option value="2022">2022</option>
<option value="2023">2023</option>
<option value="2024">2024</option>
</select>
</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span>Etat&nbsp</td>
<td class="fieldValue"><strong>Validée</strong></td>
</tr>
<tr>
<td></td>
<td><button class="btn btn-success saveButton" onclick="exportpdf()" name="export">Exporter en PDF</button>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</form>
<form id="form" action="?module=NoteDeFraisAjax&view=NoteDeFraisAjax" method="post" enctype="multipart/form-data">
<div class=" detailview-header-block" style="margin-bottom:10px;">
<div class="fieldBlockContainer" data-block="LBL_ADDRESS_INFORMATION">
<h4 class="fieldBlockHeader">Paramètres</h4>
<hr>
<table class="table table-borderless addressBlock">
<tbody>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span> Jour&nbsp;</td>
<td class="fieldValue">
<input type="text" name="jour" value="'.$parametres['jour'].'" class="qty smallInputBox inputElement" required>
</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span> Prise en charge S.R&nbsp;</td>
<td class="fieldValue">
<div class="input-group">
<span class="input-group-addon">DZD</span>
<input type="text" name="sr" value="'.$parametres['sr'].'" class="qty smallInputBox inputElement" required>
</DIV>
</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span> Prise en charge H.R&nbsp;</td>
<td class="fieldValue">
<div class="input-group">
<span class="input-group-addon">DZD</span>
<input type="text" name="hr" value="'.$parametres['hr'].'" class="qty smallInputBox inputElement" required>
</DIV>
</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span> Parking&nbsp;</td>
<td class="fieldValue">
<div class="input-group">
<span class="input-group-addon">DZD</span>
<input type="text" name="parking" value="'.$parametres['parking'].'" class="qty smallInputBox inputElement" required>
</DIV>
</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span> Forfait Carburant&nbsp;</td>
<td class="fieldValue">
<div class="input-group">
<span class="input-group-addon">DZD</span>
<input type="text" name="forfait_carburant" value="'.$parametres['forfait_carburant'].'" class="qty smallInputBox inputElement" required>
</DIV>
</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span>Forfait entretien&nbsp;</td>
<td class="fieldValue">
<div class="input-group">
<span class="input-group-addon">DZD</span>
<input type="text" name="forfait_entretien" value="'.$parametres['forfait_entretien'].'" class="qty smallInputBox inputElement" required>
</DIV>
</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span>Indemnité kilométrique&nbsp;</td>
<td class="fieldValue">
<div class="input-group">
<span class="input-group-addon">DZD</span>
<input type="text" name="indemnite_kilometrique" value="'.$parametres['indemnite_kilometrique'].'" class="qty smallInputBox inputElement" required>
</DIV>
</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span>Mois</td>
<td class="fieldValue"><strong>'.array_search($month_current, $months).'</strong></td>
<input type="hidden" name="mois1" value="'.array_search($month_current, $months).'">
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span>Année&nbsp</td>
<td class="fieldValue"><strong>'.$year_current.'</strong></td>
<input type="hidden" name="annee1" value="'.$year_current.'">
</tr>
<tr>
<td></td>
<td><button class="btn btn-success saveButton" onclick="saveData()" name="add">Lancer le calcul</button>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</form>
<form id="form3" action="?module=NoteDeFraisAjax&view=NoteDeFraisAjax" method="post" enctype="multipart/form-data">
<div class=" detailview-header-block" style="margin-bottom:10px;">
<div class="fieldBlockContainer" data-block="LBL_ADDRESS_INFORMATION">
<h4 class="fieldBlockHeader">Flux de validation</h4>
<hr>
<div class="alert alert-danger">
Ces paramètres sont appliqués lors de la création <strong>NOTE DE FRAIS</strong> .
</div>
<table class="table table-borderless addressBlock">
<tbody>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span> Validateur Niveau 00&nbsp;</td>
<td class="fieldValue"> Utilisateur</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span> Validateur Niveau 01&nbsp;</td>
<td class="fieldValue"> Supérieur Hiérarchique</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span>Validateur Niveau 02 ( Admin )&nbsp;</td>
<td class="fieldValue">';
echo'<select class="js-example-basic-single form-control" style="width:300px;" name="id_validateur_2" >';
echo'<option value=""></option>';
$users=getAllUsers();
foreach ($users as $user) {
if($user['id'] == $validateur['id_validateur_2']){
echo '<option value="'.$user['id'].'" selected>'.$user['fullname'].'</option>';
}else{
echo '<option value="'.$user['id'].'">'.$user['fullname'].'</option>';
}
}
echo '</select>
</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span> Validateur Niveau 03&nbsp;</td>
<td class="fieldValue">';
echo'<select class="js-example-basic-single form-control" style="width:300px;" name="id_validateur_3" >';
echo'<option value=""></option>';
$users=getAllUsers();
foreach ($users as $user) {
if($user['id'] == $validateur['id_validateur_3']){
echo '<option value="'.$user['id'].'" selected>'.$user['fullname'].'</option>';
}else{
echo '<option value="'.$user['id'].'">'.$user['fullname'].'</option>';
}
}
echo '</select>
</td>
</tr>
<tr>
<td class="fieldLabel alignMiddle"><span class="redColor">*</span>Validateur Niveau 04&nbsp;</td>
<td class="fieldValue">';
echo'<select class="js-example-basic-single form-control" style="width:300px;" name="id_validateur_4">';
echo'<option value=""></option>';
$users=getAllUsers();
foreach ($users as $user) {
if($user['id'] == $validateur['id_validateur_4']){
echo '<option value="'.$user['id'].'" selected>'.$user['fullname'].'</option>';
}else{
echo '<option value="'.$user['id'].'">'.$user['fullname'].'</option>';
}
}
echo '</select>
</td>
</tr>
<tr>
<td></td>
<td><button class="btn btn-success saveButton" onclick="workflow()" name="save_workflow">Enregistrer</button>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</form>
</div>
</div>';
$viewer->view('CustomDashboardFooter.tpl');
?>
<script type="text/javascript" src="layouts/v7/lib/jquery/purl.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/select2/select2.min.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/jquery.class.min.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/jquery-ui-1.11.3.custom/jquery-ui.js"></script>
<script type="text/javascript" src="layouts/v7/lib/todc/js/bootstrap.min.js"></script>
<script type="text/javascript" src="libraries/jquery/jstorage.min.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/jquery-validation/jquery.validate.min.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/jquery.slimscroll.min.js"></script>
<script type="text/javascript" src="libraries/jquery/jquery.ba-outside-events.min.js"></script>
<script type="text/javascript" src="libraries/jquery/defunkt-jquery-pjax/jquery.pjax.js"></script>
<script type="text/javascript" src="libraries/jquery/multiplefileupload/jquery_MultiFile.js"></script>
<script type="text/javascript" src="resources/jquery.additions.js"></script>
<script type="text/javascript" src="layouts/v7/lib/bootstrap-notify/bootstrap-notify.min.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/websockets/reconnecting-websocket.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/jquery-play-sound/jquery.playSound.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/malihu-custom-scrollbar/jquery.mousewheel.min.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/malihu-custom-scrollbar/jquery.mCustomScrollbar.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/autoComplete/jquery.textcomplete.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/jquery.qtip.custom/jquery.qtip.js"></script>
<script type="text/javascript" src="libraries/jquery/jquery-visibility.min.js"></script>
<script type="text/javascript" src="layouts/v7/lib/momentjs/moment.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/daterangepicker/moment.min.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/daterangepicker/jquery.daterangepicker.js"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/jquery.timeago.js"></script>
<script type="text/javascript" src="libraries/jquery/ckeditor/ckeditor.js"></script>
<script type="text/javascript" src="libraries/jquery/ckeditor/adapters/jquery.js"></script>
<script type='text/javascript' src='layouts/v7/lib/anchorme_js/anchorme.min.js'></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Class.js?v=7.1.0"></script>
<script type='text/javascript' src="layouts/v7/resources/helper.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/resources/application.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Utils.js?v=7.1.0"></script>
<script type='text/javascript' src="layouts/v7/modules/Vtiger/resources/validation.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/lib/bootbox/bootbox.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Base.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Vtiger.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Calendar/resources/TaskManagement.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Import/resources/Import.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Emails/resources/EmailPreview.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Base.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Google/resources/Settings.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/CkEditor.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Documents/resources/Documents.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/bootstrap/js/eternicode-bootstrap-datepicker/js/bootstrap-datepicker.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/bootstrap/js/eternicode-bootstrap-datepicker/js/locales/bootstrap-datepicker.fr.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/timepicker/jquery.timepicker.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/lazyYT/lazyYT.min.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Header.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Edit.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Popup.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Field.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jquery_windowmsg.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/BasicSearch.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/AdvanceFilter.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/SearchAdvanceFilter.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/AdvanceSearch.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/BaseList.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/List.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/AdvanceSearchList.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/RecordSelectTracker.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Pagination.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Import/resources/Popup.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Emails/resources/MassEdit.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/EmailsRelatedPopup.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/sadropdown.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/posabsolute-jQuery-Validation-Engine/js/languages/jquery.validationEngine-fr.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Vtiger.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jquery.stickytableheaders.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/gridster/jquery.gridster.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jqplot/jquery.jqplot.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jqplot/plugins/jqplot.canvasTextRenderer.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jqplot/plugins/jqplot.canvasAxisTickRenderer.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jqplot/plugins/jqplot.pieRenderer.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jqplot/plugins/jqplot.barRenderer.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jqplot/plugins/jqplot.categoryAxisRenderer.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jqplot/plugins/jqplot.pointLabels.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jqplot/plugins/jqplot.canvasAxisLabelRenderer.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jqplot/plugins/jqplot.funnelRenderer.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/jqplot/plugins/jqplot.logAxisRenderer.min.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/VtJqplotInterface.js?v=7.1.0"></script>
<script type="text/javascript" src="libraries/jquery/vtchart.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/lib/jquery/gridster/jquery.gridster.min.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/DashBoard.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/dashboards/Widget.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/Detail.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Reports/resources/Detail.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Reports/resources/ChartDetail.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/modules/Vtiger/resources/CkEditor.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/lib/bootstrap-daterangepicker/moment.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/lib/bootstrap-daterangepicker/daterangepicker.js?v=7.1.0"></script>
<script type="text/javascript" src="layouts/v7/resources/v7_client_compat.js?v=7.1.0"></script>
<!-- Added in the end since it should be after less file loaded -->
<script type="text/javascript" src="libraries/bootstrap/js/less.min.js"></script>
<script src="jscss/jspdf.min.js"></script>
<script src="jscss/jspdf.plugin.autotable.min.js"></script>
<!-- Enable tracking pageload time -->
<script type="text/javascript">var _REQSTARTTIME = "1589749969";
jQuery(document).ready(function() {
window._PAGEREADYAT = new Date();
}
);
jQuery(window).load(function() {
window._PAGELOADAT = new Date();
window._PAGELOADREQSENT = false;
// Transmit the information to server about page render time now.
if (typeof _REQSTARTTIME != 'undefined') {
// Work with time converting it to GMT (assuming _REQSTARTTIME set by server is also in GMT)
var _PAGEREADYTIME = _PAGEREADYAT.getTime() / 1000.0;
// seconds
var _PAGELOADTIME = _PAGELOADAT.getTime() / 1000.0;
// seconds
var data = {
page_request: _REQSTARTTIME, page_ready: _PAGEREADYTIME, page_load: _PAGELOADTIME };
data['page_xfer'] = (_PAGELOADTIME - _REQSTARTTIME).toFixed(3);
data['client_tzoffset']= -1*_PAGELOADAT.getTimezoneOffset()*60;
data['client_now'] = JSON.parse(JSON.stringify(new Date()));
if (!window._PAGELOADREQSENT) {
// To overcome duplicate firing on Chrome
window._PAGELOADREQSENT = true;
}
}
}
);
</script>
<!-- script pour liste déroulante -->
<script>
$(document).ready(function() {
$('.js-example-basic-single').select2();
});
</script>
<script>
function workflow(){
if($("#form3")[0].checkValidity()) {
jQuery("button[name='save_workflow']").attr("disabled","disabled");
event.preventDefault();//important
$.ajax({
type: "POST",
url: "index.php?module=NoteDeFraisAjax&view=NoteDeFraisAjax&action=updateworkflow",
data: $('#form3').serialize(),
success: function (data) {
window.location.replace("index.php?module=NoteDeFraisParametrage&view=NoteDeFraisParametrage");
},
error: function(){
$("button[name='save_workflow']").removeAttr("disabled");
alert('<strong>Aucun accès à Internet</strong>');
}
});
}
}
function saveData(){
if($("#form")[0].checkValidity()) {
jQuery('#messageBar').removeClass('hide');
jQuery("button[name='add']").attr("disabled","disabled");
event.preventDefault();//important
$.ajax({
type: "POST",
url: "index.php?module=NoteDeFraisAjax&view=NoteDeFraisAjax&action=updateparametrage",
data: $('#form').serialize(),
success: function (data) {
jQuery('#messageBar').addClass('hide');
window.location.replace("index.php?module=NoteDeFraisParametrage&view=NoteDeFraisParametrage");
},
error: function(){
jQuery('#messageBar').addClass('hide');
$("button[name='add']").removeAttr("disabled");
alert('<strong>Aucun accès à Internet</strong>');
}
});
}
}
function exportpdf(){
if($("#form2")[0].checkValidity()) {
jQuery("button[name='export']").attr("disabled","disabled");
event.preventDefault();//important
$.ajax({
type: "POST",
url: "index.php?module=NoteDeFraisAjax&view=NoteDeFraisAjax&action=exportpdf",
data: $('#form2').serialize(),
success: function (data) {
$( "body" ).append( data );
generate();
$("#etat").remove();
$("button[name='export']").removeAttr("disabled");
},
error: function(){
$("button[name='export']").removeAttr("disabled");
alert('<strong>Aucun accès à Internet</strong>');
}
});
}
}
function generate() {
var doc = new jsPDF('p', 'pt', 'letter');
var htmlstring = '';
var tempVarToCheckPageHeight = 0;
var pageHeight = 0;
pageHeight = doc.internal.pageSize.height;
specialElementHandlers = {
// element with id of "bypass" - jQuery style selector
'#bypassme': function(element, renderer) {
// true = "handled elsewhere, bypass text extraction"
return true
}
};
margins = {
top: 150,
bottom: 60,
left: 40,
right: 40,
width: 600
};
var y = 20;
doc.setLineWidth(2);
doc.text(150, y = y + 30, "ETAT DES NOTES DE FRAIS "+$('[name="mois"]').val()+" "+$('[name="annee"]').val());
doc.autoTable({
html: '#etat',
startY: 70,
theme: 'grid',
columnStyles: {
0: {
cellWidth: 180,
},
1: {
cellWidth: 180,
},
2: {
cellWidth: 180,
}
},
styles: {
minCellHeight: 20
}
})
doc.save('ETAT DES NOTES DE FRAIS '+$('[name="mois"]').val()+' '+$('[name="annee"]').val()+'.pdf');
}
</script>
</html>