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; }