public function add() { if (isset($_POST['action']) && $_POST['action'] == 'create') { try { $location = new Location($_POST, $this->entity_manager); $this->entity_manager->persist($location); $this->entity_manager->flush(); wp_safe_redirect(admin_url('admin.php?page=hoo&updated=1')); exit; } catch (Exception $e) { } } else { $location = new Location(); } $view = new View('admin/location/location'); $this->add_meta_boxes($location); $view_options = array('title' => 'Add a Location', 'columns' => 2, 'location' => $location, 'page' => 'hoo-location-add', 'add-new-page' => sprintf('hoo-location-add'), 'breadcrumbs' => array('Locations' => 'hoo', 'Add a Location' => 'hoo-location-add'), 'action' => 'create', 'action-display' => 'Add'); $view->render($view_options); }
public function index() { $view = new View('admin/shortcodes/index'); $view->render(array('title' => 'Shortcodes', 'locations' => Location::get_visible_locations($this->entity_manager), 'available_widgets' => Shortcode::available_widgets(), 'valid_widget_attributes' => Shortcode::valid_widget_attributes())); }
public function add() { if (isset($_POST['action']) && $_POST['action'] == 'create') { $event = new Event($_POST, $this->entity_manager); $this->entity_manager->persist($event); $this->entity_manager->flush(); wp_safe_redirect(admin_url(sprintf('admin.php?page=%s&location_id=%s&updated=1', 'hoo-location-events', $event->location->id))); exit; } else { $event = new Event(); $event->location = $this->entity_manager->find('Hoo\\Model\\Location', $_GET['location_id']); $view_options = array('page' => 'hoo-location-event-add', 'columns' => 2); $this->add_meta_boxes($event); $view_options = array_merge($view_options, array('title' => sprintf('Add an Hours Event for <em>%s</em>', $event->location->name), 'event' => $event, 'action' => 'create', 'breadcrumbs' => array('Locations' => 'hoo', sprintf('%s Hours', $event->location->name) => sprintf('%s&location_id=%s', 'hoo-location-events', $event->location->id)), 'add-new-page' => sprintf('hoo-location-event-add&location_id=%s', $_GET['location_id']), 'action-display' => 'Add')); $view = new View('admin/event/event'); $view->render($view_options); } }
public function weekly($attributes) { $locations_repo = $this->entity_manager->getRepository('Hoo\\Model\\Location'); if (isset($attributes['location'])) { $location = Location::get_location_by_id_or_shortname($attributes['location'], $this->entity_manager); if ($location) { $locations = array($location); } else { return 'Invalid Location'; } } else { $locations = $locations_repo->findBy(array('is_visible' => true)); } $view = new View('shortcode/weekly'); $locations_hours = array(); foreach ($locations as $location) { $locations_hours[] = array('location' => $location, 'hours' => $location->get_weekly_hours()); } return $view->fetch(array('header' => $attributes['header'], 'locations' => $locations_hours)); }
public function add() { if (isset($_POST['action']) && $_POST['action'] == 'create') { $category_data = $_POST['category']; $category = new Category($category_data); $this->entity_manager->persist($category); $this->entity_manager->flush(); $categories_table = new CategoryList($this->entity_manager); $categories_table->prepare_items(); $view_options = array('title' => 'Categories', 'categories-table' => $categories_table, 'add-new-page' => sprintf('hoo-category-add'), 'notification' => array('type' => 'updated', 'message' => 'Category Added')); $view = new View('admin/category/index'); } else { $category = new Category(); $view = new View('admin/category/category'); $this->add_meta_boxes($category); $view_options = array('title' => 'Add a Category', 'columns' => 2, 'category' => $category, 'page' => 'hoo-category-add', 'add-new-page' => sprintf('hoo-category-add'), 'breadcrumbs' => array('Categories' => 'hoo-category', 'Add a Location' => 'hoo-category-add'), 'action' => 'create', 'action-display' => 'Add'); } $view->render($view_options); }