132 lines
5.0 KiB
PHP
132 lines
5.0 KiB
PHP
<?php
|
|
|
|
require_once('../init.php');
|
|
$GLOBALS['smarty']->assign('page','legumes');
|
|
$GLOBALS['template'] = 'legumes/legumes_list.tpl';
|
|
$GLOBALS['smarty']->assign('secondbar','legumes/legumes_secondbar.tpl');
|
|
$jsFiles[] = PUBLIC_HTML_ADMIN.'js/legumes.js';
|
|
|
|
if($id>0 && $action) {
|
|
$infos = getLegumeDatas($id);
|
|
switch($action) {
|
|
// AJAX GET DATAS
|
|
case "getDatas": die(json_encode($infos)); break;
|
|
// AJAX GET TARIF
|
|
case "getTarif": {
|
|
$groupe = false;
|
|
if(isset($_REQUEST['groupe']) && (int)$_REQUEST['groupe']>0) $groupe = intval($_REQUEST['groupe']);
|
|
$date = false;
|
|
if(isset($_REQUEST['date']) && isValidDate($_REQUEST['date'], "mysql_date")) $date = $_REQUEST['date'];
|
|
$t = getLegumeTarif($id, $groupe, $date, false);
|
|
die(json_encode($t));
|
|
} break;
|
|
// EDIT
|
|
case "edit": {
|
|
$datas = getLegumeDatasFromRequest();
|
|
|
|
// TARIFS
|
|
foreach($datas["tarifs"] as $t) {
|
|
// ADD
|
|
if($t['ref'] == "new") {
|
|
$t['legume'] = $id;
|
|
$r = addLegumeTarif($t);
|
|
if(!(int)$r>0) die("ERREUR : une errreur est survenue durant l'enregistrement du nouveau tarif du légume. ($r)");
|
|
}
|
|
// DELETE
|
|
else if((int)$t['ref']>0 && (int)$t['del']>0) {
|
|
$r = eraseLegumeTarif(intval($t['ref']));
|
|
if(!(int)$r>0) die("ERREUR : une errreur est survenue durant la suppression du tarif du légume. ($r)");
|
|
}
|
|
// UPDATE
|
|
else if((int)$t['ref']>0) {
|
|
$r = updateLegumeTarif(intval($t['ref']), $t);
|
|
if(!(int)$r>0) die("ERREUR : une errreur est survenue durant la mise à jour du tarif du légume. ($r)");
|
|
}
|
|
}
|
|
|
|
die( strval( updateLegume($id,$datas) ) );
|
|
} break;
|
|
// DELETE
|
|
case "delete" : die( strval( deleteLegume($id) ) ); break;
|
|
// DEFAULT
|
|
default: die("NO ACTION");
|
|
}
|
|
}
|
|
switch($action) {
|
|
// ADD
|
|
case "add": {
|
|
$datas = getLegumeDatasFromRequest();
|
|
$r = addLegume($datas);
|
|
|
|
if((int)$r>0) {
|
|
$id = $r;
|
|
|
|
// TARIFS
|
|
foreach($datas["tarifs"] as $t) {
|
|
if($t['ref'] == "new") {
|
|
$t['legume'] = $id;
|
|
$r = addLegumeTarif($t);
|
|
if(!(int)$r>0) die("ERREUR : une errreur est survenue durant l'enregistrement du tarif du légume. ($r)");
|
|
}
|
|
}
|
|
|
|
die( (string)$id );
|
|
}
|
|
else die($r);
|
|
} break;
|
|
// DELETE TARIF
|
|
case "deleteTarif": {
|
|
if(!isset($_REQUEST['tarif']) || !(int)$_REQUEST['tarif']>0) die("NO ID !");
|
|
die( strval( deleteLegumeTarif(intval($_REQUEST['tarif'])) ) ); break;
|
|
} break;
|
|
// AUTOCOMPLETE LIST
|
|
case "autocomplete_list": die( json_encode( getLegumesAutocompleteList() ) ); break;
|
|
// DEFAULT - LIST
|
|
default: {
|
|
// PRINT
|
|
$print = isset($_REQUEST["action"]) && $_REQUEST["action"]=="printList";
|
|
|
|
// SEARCH
|
|
$search = getSearch("legumes_search");
|
|
|
|
// LIMITS
|
|
if($print) $limits = false;
|
|
else {
|
|
$limits = array("start" => 0, "end" => LIST_NB_LIGNES_PAR_PAGE, "nbItemsByPage" => LIST_NB_LIGNES_PAR_PAGE, "max" => getNbLegumesInList($search));
|
|
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
|
|
$grps = getPaniersGroupesList();
|
|
$groupes = array();
|
|
foreach($grps as $g) {
|
|
$g["tarif"] = "tarif_".$g['ref'];
|
|
$g["date"] = "date_".$g['ref'];
|
|
$groupes[] = $g;
|
|
|
|
$allowLegumesListOrder[ $g["tarif"] ] = "tarif ".$g['nom'];
|
|
$allowLegumesListOrder[ $g["date"] ] = "date ".$g['nom'];
|
|
}
|
|
$GLOBALS['smarty'] -> assign('groupes',$groupes);
|
|
$order = getListOrder('legumes_list_order', 'legumes_list_sens', $allowLegumesListOrder, 'prenom');
|
|
$list = getLegumesList($order["order"], $order["sens"], $search, $limits);
|
|
$GLOBALS['smarty'] -> assign('list',$list);
|
|
|
|
// LIST PART
|
|
if(isset($_REQUEST['startListAt']) && (int)$_REQUEST['startListAt']>0) {
|
|
$limits["list"] = $GLOBALS['smarty']->fetch("legumes/legumes_list_builder.tpl");
|
|
die(json_encode($limits));
|
|
}
|
|
// PRINT
|
|
else if($print) printLegumesList();
|
|
|
|
// DISPLAY
|
|
display();
|
|
}
|
|
} |