content = new View("admin_postage_bands.html"); $view->content->postage_bands = ORM::factory("postage_band")->order_by("name")->find_all(); print $view; } public function add_postage_band_form() { print postage_band::get_add_form_admin(); } public function add_postage_band() { access::verify_csrf(); $form = postage_band::get_add_form_admin(); $valid = $form->validate(); $name = $form->add_postage->inputs["name"]->value; $postage = ORM::factory("postage_band")->where("name","=", $name)->find(); if ($postage->loaded()) { $form->add_postage->inputs["name"]->add_error("in_use", 1); $valid = false; } if ($valid) { $postage = postage_band::create( $name, $form->add_postage->flat_rate->value, $form->add_postage->per_item->value ); $postage->save(); message::success(t("Created postage band %postage_name", array( "postage_name" => html::clean($postage->name)))); print json::reply(array("result" => "success")); } else { print $form; } } public function delete_postage_band_form($id) { $postage = ORM::factory("postage_band", $id); if (!$postage->loaded()) { kohana::show_404(); } print postage_band::get_delete_form_admin($postage); } public function delete_postage_band($id) { access::verify_csrf(); $postage = ORM::factory("postage_band", $id); if (!$postage->loaded()) { kohana::show_404(); } $form = postage_band::get_delete_form_admin($postage); if($form->validate()) { $name = $postage->name; $postage->delete(); } else { print $form; } $message = t("Deleted user %postage_band", array("postage_band" => html::clean($name))); log::success("user", $message); message::success($message); print json::reply(array("result" => "success")); } public function edit_postage_band($id) { access::verify_csrf(); $postage = ORM::factory("postage_band", $id); if (!$postage->loaded()) { kohana::show_404(); } $form = postage_band::get_edit_form_admin($postage); $valid = $form->validate(); if ($valid) { $new_name = $form->edit_postage->inputs["name"]->value; if ($new_name != $postage->name && ORM::factory("postage_band") ->where("name", "=", $new_name) ->where("id","!=", $postage->id) ->find() ->loaded()) { $form->edit_postage->inputs["name"]->add_error("in_use", 1); $valid = false; } else { $postage->name = $new_name; } } if ($valid) { $postage->flat_rate = $form->edit_postage->flat_rate->value; $postage->per_item = $form->edit_postage->per_item->value; $postage->save(); message::success(t("Changed postage band %postage_name", array("postage_name" => html::clean($postage->name)))); print json::reply(array("result" => "success")); } else { print $form; } } public function edit_postage_band_form($id) { $postage = ORM::factory("postage_band", $id); if (!$postage->loaded()) { kohana::show_404(); } $form = postage_band::get_edit_form_admin($postage); print $form; } }