* Easyshop is a web shop system */ class ListAndEdit { private $layout_object; private $base_object; function __construct($base_object, $layout_object) { $this->layout_object = $layout_object; $this->base_object = $base_object; } function create() { $temp = $this->get_POST(); //var_dump($temp); $temp = $this->core_class_obj->set_row($this->get_POST()); // let set_row return the id and load page with read? } // end create function read($var_name) { $temp = $this->get_GET(); $data = $this->core_class_obj->get_by_id($temp['id']); $this->layout_object->assign($var_name, $data); } // end read function update($fields) { $data = $this->get_POST(); $id = $this->get_id(); if(isset($data['id'])) { $data = $this->strip_id($data); } $data = $this->make_booleans($data, $fields); //var_dump($data); $temp = $this->core_class_obj->set_by_id($data, $id); //var_dump($temp); } // end update function delete() { $data = $this->get_GET(); $id = $data['id']; $this->core_class_obj->delete_by_id($id); } // end delete /** * Get all vars given in POST, removes module name, submit from submit button * and empty values. */ private function get_POST() { $data = $_POST; if(isset($data['modul'])) { unset($data['modul']); } if(isset($data['submit'])) { unset($data['submit']); } foreach($data as $key => $value) { if($data[$key] == ""){ unset($data[$key]); } } return $data; } // end get_POST private function get_GET() { return $_GET; } // end get_GET private function strip_id($data) { if(isset($data['id'])) { unset($data['id']); return $data; } return $data; } // end strip_id protected function get_id() { if(isset($_GET['id'])) return $_GET['id']; if(isset($_POST['id'])) return $_POST['id']; return false; } // end get_id protected function get_submitted() { if(isset($_POST['submit'])) { return true; } return false; } private function make_booleans($data, $fields) { //var_dump($fields); //var_dump('
'); foreach($fields as $field) { //var_dump($data[$field]); if(isset($data[$field])) { $data[$field] = 1; } else { $data[$field] = 0; } //var_dump($data[$field]); //var_dump('
'); } return $data; } // end make_booleans function get_items() { if(isset($_GET['items']) && is_numeric($_GET['items'])){ $items = (int)$_GET['items']; $this->base_object->customer->set_config_item('pagination', $items); } else { $items = $this->base_object->customer->get_config_item('pagination'); if(is_numeric($items)) { $items = (int)$items; } else { $items = 10; } } return $items; } // end get_items function get_page() { if(isset($_GET['page']) && is_numeric($_GET['page'])){ $page = (int)$_GET['page']; } else { $page = 1; } return $page; } // end get_page function get_tab() { if(isset($_GET['tab'])) { $tab = $_GET['tab']; } else { $tab = 'all'; } return $tab; } } // end ListAndEdit