예제 #1
0
파일: Contacts.php 프로젝트: Kuzat/kofradia
 /**
  * Edit contact entry
  */
 public function action_edit($uc_id)
 {
     // avbryte
     if (isset($_POST['abort'])) {
         return \redirect::handle("/kontakter", \redirect::ROOT);
     }
     $contact = Contact::getContactById($uc_id);
     if (!$contact || $contact->getOwnerUserID() != $this->user->id) {
         \ess::$b->page->add_message("Fant ikke oppføringen.", "error");
         return \redirect::handle("/kontakter", \redirect::ROOT);
     }
     // lagre?
     if (isset($_POST['save']) && validate_sid(false)) {
         // begrunnelse
         $info = trim(postval("info"));
         if (!Contact::validateInfoLength($info)) {
             \ess::$b->page->add_message(($contact->isBlock() == 1 ? 'Begrunnelsen' : 'Informasjonen') . " var for lang. Kan ikke være mer enn " . Contact::MAX_INFO_LENGTH . " tegn (regnet uten BB koder).", "error");
         } else {
             $contact->updateInfo($info);
             $text = $contact->isBlock() ? 'Begrunnelsen for blokkeringen til' : 'Informasjon for kontakten';
             \ess::$b->page->add_message($text . ' <user id="' . $contact->getTargetPlayerID() . '" /> ble oppdatert.');
             return \redirect::handle("/kontakter", \redirect::ROOT);
         }
     }
     return View::forge("users/contacts/edit", array("contact" => $contact));
 }