paniers/public_html_admin/paniers.php

101 lines
3.9 KiB
PHP

<?php
require_once('../init.php');
$GLOBALS['smarty']->assign('page','paniers');
$GLOBALS['template'] = 'paniers/paniers_list.tpl';
$GLOBALS['smarty']->assign('secondbar','paniers/paniers_secondbar.tpl');
$jsFiles[] = PUBLIC_HTML_ADMIN.'js/paniers.js';
if($id>0 && $action) {
$infos = getPaniersTypeDatas($id);
switch($action) {
// AJAX GET DATAS
case "getDatas": die(json_encode($infos)); break;
// EDIT
case "edit": {
$datas = getPaniersTypeDatasFromRequest();
die( strval( updatePaniersType($id,$datas) ) );
} break;
// DELETE
case "delete" : die( strval( deletePaniersType($id) ) ); break;
// DEFAULT
default: die("NO ACTION");
}
}
switch($action) {
/****** GROUPES DE PANIER ***********/
// ADD GROUPE
case "add_groupe": {
$datas = getPaniersGroupeDatasFromRequest();
die( strval( addPaniersGroupe($datas) ) );
} break;
// EDIT GROUPE
case "edit_groupe": {
$id = isset($_REQUEST['groupe_ref']) ? intval($_REQUEST['groupe_ref']) : 0;
if($id>0) {
$datas = getPaniersGroupeDatasFromRequest();
die( strval( updatePaniersGroupe($id, $datas) ) );
}
else die("ERREUR : aucune référence de groupe transmis...");
} break;
// DELETE GROUPE
case "delete_groupe": {
$id = isset($_REQUEST['groupe_ref']) ? intval($_REQUEST['groupe_ref']) : 0;
if($id>0) die( strval( deletePaniersGroupe($id) ) );
else die("ERREUR : aucune référence de groupe transmis...");
} break;
// GROUPES SELECT LIST
case "groupes_select_list": {
$GLOBALS['smarty'] -> assign('paniers_groupes_list', getPaniersGroupesList());
die( $GLOBALS['smarty']->fetch("paniers_groupes/paniers_groupes_select_list.tpl") );
} break;
/****** PANIER **********************/
// ADD
case "add": {
$datas = getPaniersTypeDatasFromRequest();
die( strval( addPaniersType($datas) ) );
} break;
// SELECT LIST
case "select_list": {
$groupe = (isset($_REQUEST['groupe']) && (int)$_REQUEST['groupe']>0) ? intval($_REQUEST['groupe']) : 0;
$GLOBALS['smarty'] -> assign('paniers_list', getPaniersTypesList("nom", "ASC", false, $groupe));
die( $GLOBALS['smarty']->fetch("paniers/paniers_select_list.tpl") );
} break;
// DEFAULT - LIST
default: {
// GROUPE
$groupesList = getPaniersGroupesList();
$groupe = getRequestAndSessionSave("groupe", "paniers_filtre_groupe", "groupe", "int", 0, $groupesList, true);
// SEARCH
$search = getSearch("paniers_search");
// LIMITS
$limits = array("start" => 0, "end" => LIST_NB_LIGNES_PAR_PAGE, "nbItemsByPage" => LIST_NB_LIGNES_PAR_PAGE, "max" => getNbPaniersInList($search, $groupe));
if(isset($_REQUEST['startListAt']) && (int)$_REQUEST['startListAt']>0) {
$limits['start'] = intval($_REQUEST['startListAt']);
$limits['end'] = $limits['start'] + $limits['nbItemsByPage'];
if($limits['end'] > $limits['max']) $limits['end'] = $limits['max'];
}
$limits['rest'] = $limits['max'] - $limits['end'];
$GLOBALS['smarty'] -> assign('list_limits',$limits);
// LIST
$order = getListOrder('paniers_list_order', 'paniers_list_sens', $allowPaniersTypesListOrder);
$list = getPaniersTypesList($order["order"], $order["sens"], $search, $groupe, $limits);
$GLOBALS['smarty'] -> assign('list',$list);
// LIST PART
if(isset($_REQUEST['startListAt']) && (int)$_REQUEST['startListAt']>0) {
$limits["list"] = $GLOBALS['smarty']->fetch("paniers/paniers_list_builder.tpl");
die(json_encode($limits));
}
// REQUIRED LISTS
$GLOBALS['smarty'] -> assign('paniers_groupes_list', $groupesList);
// DISPLAY
display();
}
}