}
+enum ScheduleMode {
+ Update;
+ Cancel;
+ Move;
+}
+
class ScheduleParameters {
var row_id : String;
var rowDetails: Hash<Detail>;
+ var mode:ScheduleMode;
function new(rawData : Dynamic) {
var data = php.Lib.hashOfAssociativeArray(rawData);
}
}
+ public function setMode(action:String) {
+ mode = switch(action) {
+ case "update" :
+ ScheduleMode.Update;
+ case "cancel" :
+ ScheduleMode.Cancel;
+ default:
+ ScheduleMode.Move;
+ };
+ }
+
public function position(id: String) : Null<Int> {
if(rowDetails == null) return null;
return rowDetails.get(id).position;
div_start('item_schedule');
start_form();
+
start_table(TABLESTYLE_NOBORDER);
start_row();
end_table(1);
if(isset($stock_id)) echo '<input type="hidden" name="last_stock_id" value="'.$stock_id.'">';
-$params = in_ajax() && $stock_id == @$_POST['last_stock_id'] ? new ScheduleParameters($_POST) : null;
+if(isset($_POST['Update'])) {
+ $Ajax->activate('item_schedule');
+ echo 'youpiii';
+ // Restore the parameters
+ $params = $_SESSION['schedule_parameters'];
+ $params->setMode('update');
+}
+else {
+ $params = in_ajax() && $stock_id == @$_POST['last_stock_id'] ? new ScheduleParameters($_POST) : null;
+ // save parameters form update
+ $_SESSION['schedule_parameters'] = $params;
+}
$scheduler = new ItemScheduler($stock_id, 'DEF', $params);
start_table(TABLESTYLE);