Exemplo n.º 1
0
 public function doExecute()
 {
     //Cancel?
     $arrDefaultReturn = array("base" => "collections", "action" => "edit_form", "subject" => $this->request->getProperty("subject"), "subcategory" => $this->request->getProperty("subcategory"), "username" => $this->request->getProperty("username"));
     if ($this->request->getProperty("cancel")) {
         $this->returnWithMessage($this->getLabel("text_collections_cancelled"), $arrDefaultReturn);
         return 1;
     }
     $strSubject = $this->request->getProperty("subject");
     $strSubcatID = $this->request->getProperty("subcategory");
     $strUsername = $this->request->getProperty("username");
     $strNewName = $this->request->getProperty("new_name");
     if (empty($strNewName)) {
         $this->returnWithMessage($this->getLabel("text_collections_blank_name"), $arrDefaultReturn);
         return 1;
     }
     // make sure they are logged in as the user they are trying to save as.
     $this->ensureSpecifiedUser();
     $objData = new Xerxes_DataMap();
     $category = $objData->getSubject($strSubject, null, Xerxes_DataMap::userCreatedMode, $strUsername);
     if (!empty($strSubcatID)) {
         // rename a subcategory
         $subcat = $this->getSubcategory($category, $strSubcatID);
         $subcat->name = $strNewName;
         $objData->updateUserSubcategoryProperties($subcat);
     } else {
         // rename category
         $category->name = $strNewName;
         $objData->updateUserCategoryProperties($category);
     }
     // new name if it's been changed!
     $arrDefaultReturn["subject"] = $category->normalized;
     $this->returnWithMessage($this->getLabel("text_collections_renamed"), $arrDefaultReturn);
     return 1;
 }
Exemplo n.º 2
0
 public function doExecute()
 {
     // cancel?
     $arrDefaultReturn = array("base" => "collections", "action" => "edit_form", "subject" => $this->request->getProperty("subject"), "subcategory" => $this->request->getProperty("subcategory"), "username" => $this->request->getProperty("username"));
     if ($this->request->getProperty("cancel")) {
         $this->returnWithMessage($this->getLabel("text_collections_cancelled"), $arrDefaultReturn);
         return 1;
     }
     $strSubject = $this->request->getProperty("subject");
     $strSubcatID = $this->request->getProperty("subcategory");
     $strPublished = $this->request->getProperty("published");
     $strUsername = $this->request->getProperty("username");
     $strNewName = $this->request->getProperty("new_name");
     // Make sure they are logged in as the user they are trying to save as.
     $this->ensureSpecifiedUser();
     $objData = new Xerxes_DataMap();
     $category = $objData->getSubject($strSubject, null, Xerxes_DataMap::userCreatedMode, $strUsername);
     $message = "";
     if (!empty($strSubcatID)) {
         // edit a subcategory, rename
         $subcat = $this->getSubcategory($category, $strSubcatID);
         if (!empty($strNewName)) {
             $message .= "Section name changed. ";
             $subcat->name = $strNewName;
             $objData->updateUserSubcategoryProperties($subcat);
         }
     } else {
         // edit a category: rename/publish
         if (!empty($strNewName)) {
             $category->name = $strNewName;
             $message .= $this->getLabel("text_collections_name_changed");
         }
         if (!empty($strPublished)) {
             $boolPublished = (int) ($strPublished == "true");
             $category->published = $boolPublished;
             if ($boolPublished) {
                 $message .= $this->getLabel("text_collections_made_published");
             } else {
                 $message .= $this->getLabel("text_collections_made_private");
             }
         }
         $objData->updateUserCategoryProperties($category);
     }
     // new name if it's been changed!
     $arrDefaultReturn["subject"] = $category->normalized;
     $this->returnWithMessage($message, $arrDefaultReturn);
     return 1;
 }