/**
  * @throws ProjectTemplateCategoryIDMissingException
  */
 public static function edit()
 {
     if ($_GET['id']) {
         $project_template_cat = new ProjectTemplateCat($_GET['id']);
         if ($_GET['nextpage'] == 1) {
             $page_1_passed = true;
             if ($_POST['name']) {
                 if (ProjectTemplateCat::exist_name($_POST['name']) == true and $project_template_cat->get_name() != $_POST['name']) {
                     $page_1_passed = false;
                     $error = "This name already exists";
                 }
             } else {
                 $page_1_passed = false;
                 $error = "You must enter a name";
             }
         } else {
             $page_1_passed = false;
             $error = "";
         }
         if ($page_1_passed == false) {
             $template = new HTMLTemplate("project/admin/project_template_cat/edit.html");
             $paramquery = $_GET;
             $paramquery['nextpage'] = "1";
             $params = http_build_query($paramquery, '', '&');
             $template->set_var("params", $params);
             if ($error) {
                 $template->set_var("error", $error);
             } else {
                 $template->set_var("error", "");
             }
             if ($_POST['name']) {
                 $template->set_var("name", $_POST['name']);
             } else {
                 $template->set_var("name", $project_template_cat->get_name());
             }
             $template->output();
         } else {
             $paramquery = $_GET;
             unset($paramquery['nextpage']);
             unset($paramquery['action']);
             $params = http_build_query($paramquery);
             if ($project_template_cat->set_name($_POST['name'])) {
                 Common_IO::step_proceed($params, "Edit Project Template Category", "Operation Successful", null);
             } else {
                 Common_IO::step_proceed($params, "Edit Project Tempalte Category", "Operation Failed", null);
             }
         }
     } else {
         throw new ProjectTemplateCategoryIDMissingException();
     }
 }