Esempio n. 1
0
 function rename($filename, $new_name)
 {
     if (!$this->check_token()) {
         return false;
     }
     if (!vivvo_hooks_manager::call('asset_rename', array(&$filename, &$new_name))) {
         return vivvo_hooks_manager::get_status();
     }
     $sm = vivvo_lite_site::get_instance();
     if ($sm->user) {
         if ($sm->user->is('ASSET_MANAGER') || $sm->user->can('MANAGE_FILES')) {
             //just in case
             if (strpos($new_name, '/') !== false) {
                 $this->set_error_code(2828);
                 return false;
             }
             $full_old = VIVVO_FS_ROOT . $filename;
             $dir = dirname($full_old) . '/';
             $ext = substr($filename, strrpos($filename, '.'));
             $full_new = $dir . $new_name . $ext;
             if (file_exists($full_old)) {
                 if (file_exists($full_new)) {
                     $this->set_error_code(2829);
                     return;
                 }
                 if (@rename($full_old, $full_new)) {
                     admin_log($sm->user->get_username(), 'Renamed file ' . $filename . ' to ' . $new_name);
                 } else {
                     $this->set_error_code(2823);
                     return false;
                 }
             } else {
                 $this->set_error_code(2824);
                 return false;
             }
             $asset_list = new AssetFiles_list();
             $file = $asset_list->get_asset_by_fullname($filename);
             $file->set_name($new_name);
             $this->_post_master->set_data_object($file);
             if ($this->_post_master->sql_update()) {
                 return true;
             } else {
                 $this->set_error_code(2823);
                 return false;
             }
         } else {
             $this->set_error_code(2826);
             return false;
         }
     } else {
         $this->set_error_code(2827);
         return false;
     }
 }
 /**
  * Modal window view
  */
 public function _modal_output()
 {
     $um = vivvo_lite_site::get_instance()->get_url_manager();
     $template = $this->load_template($this->_template_root . 'modal.xml');
     $filename = $um->get_param('file');
     require_once VIVVO_FS_FRAMEWORK . '/asset_files.class.php';
     $asset_list = new AssetFiles_list(vivvo_lite_site::get_instance());
     $file = $asset_list->get_asset_by_fullname($filename);
     if ($file) {
         $template->assign('file', $file);
     }
     return $template;
 }