openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

FolderCreatelinkAction.class.php (1065B)


      1 <?php
      2 namespace cms\action\folder;
      3 use cms\action\FolderAction;
      4 use cms\action\Method;
      5 use cms\model\BaseObject;
      6 use cms\model\Link;
      7 use cms\model\Permission;
      8 use language\Messages;
      9 
     10 
     11 class FolderCreatelinkAction extends FolderAction implements Method {
     12 
     13 	public function getRequiredPermission() {
     14 		return Permission::ACL_CREATE_LINK;
     15 	}
     16 
     17 
     18 
     19 	public function view() {
     20 		$this->setTemplateVar('objectid'  ,$this->folder->objectid );
     21     }
     22 
     23 
     24     public function post() {
     25         $name        = $this->request->getText('name');
     26         $description = $this->request->getText('description');
     27 
     28 		$link = new Link();
     29 		$link->filename       = BaseObject::urlify( $name );
     30 		$link->parentid       = $this->folder->objectid;
     31 
     32 		$link->linkedObjectId = $this->request->getText('targetobjectid');
     33 		$link->projectid      = $this->folder->projectid;
     34 
     35 		$link->persist();
     36 		$link->setNameForAllLanguages( $name,$description );
     37 
     38 		$this->addNoticeFor( $link, Messages::ADDED);
     39 		$this->setTemplateVar('objectid',$link->objectid);
     40 
     41         $this->folder->setTimestamp();
     42     }
     43 }