openrat-cms

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

FileAdvancedAction.class.php (1423B)


      1 <?php
      2 namespace cms\action\file;
      3 use cms\action\FileAction;
      4 use cms\action\Method;
      5 use cms\action\RequestParams;
      6 use cms\generator\FileContext;
      7 use cms\generator\FileGenerator;
      8 use cms\model\BaseObject;
      9 use cms\model\Permission;
     10 use language\Messages;
     11 use util\exception\ValidationException;
     12 
     13 
     14 class FileAdvancedAction extends FileAction implements Method {
     15 
     16 
     17     public function view() {
     18 		// Eigenschaften der Datei uebertragen
     19 		$this->setTemplateVar( 'extension',$this->file->extension );
     20 		$this->setTemplateVar( 'mimetype' ,$this->getMimeType() );
     21 
     22 		$this->setTemplateVar( 'type'     ,$this->file->type      );
     23 		$this->setTemplateVar( 'types'    ,[
     24 			BaseObject::TYPEID_FILE  => \cms\base\Language::lang('file' ),
     25 			BaseObject::TYPEID_IMAGE => \cms\base\Language::lang('image'),
     26 			BaseObject::TYPEID_TEXT  => \cms\base\Language::lang('text' )
     27 		] );
     28     }
     29 
     30 
     31     public function post() {
     32 
     33         $this->file->extension = $this->request->getFilename('extension');
     34 
     35 		$typeid = $this->request->getNumber('type' );
     36 
     37 		if   ( ! in_array($typeid,[BaseObject::TYPEID_FILE,BaseObject::TYPEID_IMAGE,BaseObject::TYPEID_TEXT]))
     38 			throw new ValidationException('type');
     39 
     40         $this->file->typeid = $typeid;
     41         $this->file->updateType();
     42         $this->file->save();
     43 
     44 		$this->addNoticeFor( $this->file, Messages::PROP_SAVED);
     45     }
     46 
     47 
     48 	public function getRequiredPermission()
     49 	{
     50 		return Permission::ACL_PROP;
     51 	}
     52 }