Esempio n. 1
0
 function delete($filename)
 {
     if (!$this->check_token()) {
         return false;
     }
     if (!vivvo_hooks_manager::call('asset_delete', array(&$filename))) {
         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')) {
             if (file_exists(VIVVO_FS_ROOT . $filename)) {
                 if (@unlink(VIVVO_FS_ROOT . $filename)) {
                     admin_log($sm->user->get_username(), 'Deleted file ' . $filename);
                 } else {
                     $this->set_error_code(2815);
                     return false;
                 }
             } else {
                 $this->set_error_code(2816);
                 return false;
             }
             //TODO: provera referenci u bazi, i brisanje iz artikala
             //TODO: confirmation dijalog oko ovog gore
             $asset_list = new AssetFiles_list();
             $asset_list->get_asset_by_fullname($filename);
             if ($asset_list->sql_delete_list($this->_post_master)) {
                 return true;
             } else {
                 $this->set_error_code(2815);
                 return false;
             }
         } else {
             $this->set_error_code(2817);
             return false;
         }
     } else {
         $this->set_error_code(2818);
         return false;
     }
 }