[ Index ] |
|
Code source de LifeType 1.2.4 |
1 <?php 2 3 lt_include( PLOG_CLASS_PATH."class/action/admin/adminaction.class.php" ); 4 lt_include( PLOG_CLASS_PATH."class/view/admin/admintemplatedview.class.php" ); 5 lt_include( PLOG_CLASS_PATH."class/dao/articles.class.php" ); 6 lt_include( PLOG_CLASS_PATH."class/dao/commentscommon.class.php" ); 7 lt_include( PLOG_CLASS_PATH."class/dao/users.class.php" ); 8 9 /** 10 * \ingroup Action 11 * @private 12 * 13 * Action that shows a form to change the settings of the current blog. 14 */ 15 class AdminCleanupAction extends AdminAction 16 { 17 var $_message; 18 var $_op; 19 var $_continue; 20 var $_url; 21 22 function AdminCleanupAction( $actionInfo, $request ) 23 { 24 $this->AdminAction( $actionInfo, $request ); 25 26 // since we've got two submit buttons in that form, we need to decide what to do 27 // depending on which button was clicked 28 if( $this->_request->getValue( "purgePosts" )) 29 $this->_op = "cleanupPosts"; 30 elseif( $this->_request->getValue( "purgeSpam" )) 31 $this->_op = "cleanupSpam"; 32 elseif( $this->_request->getValue( "purgeUsers" )) 33 $this->_op = "cleanupUsers"; 34 elseif( $this->_request->getValue( "purgeBlogs" )) 35 $this->_op = "cleanupBlogs"; 36 elseif( $this->_request->getValue( "purgeTemp" )) 37 $this->_op = "cleanupTemp"; 38 else 39 $this->_op = ""; 40 41 $this->_message = ''; 42 $this->_continue = false; 43 44 $this->requireAdminPermission( "purge_data" ); 45 } 46 47 /** 48 * cleans up posts. Returns true if successful or false otherwise 49 */ 50 function cleanupPosts() 51 { 52 lt_include( PLOG_CLASS_PATH."class/dao/purgedata.class.php" ); 53 54 $purge = new PurgeData(); 55 $result = $purge->purgePosts(); 56 if($result === false){ 57 $this->_continue = false; 58 $this->_message = $this->_locale->tr( "purging_error" ); 59 return false; 60 } 61 else if($result > 0 ) { 62 $this->_message = $this->_locale->tr( "purging_please_wait" ); 63 // flags to indicate that we show refresh the page and continue at the given URL 64 $this->_continue = true; 65 $this->_url = "?op=doCleanUp&purgePosts=Purge"; 66 } 67 else { 68 $this->_continue = false; 69 $this->_message = $this->_locale->tr( "posts_purged_ok" ); 70 } 71 72 return true; 73 } 74 75 /** 76 * cleans up users. Returns true if successful or false otherwise 77 */ 78 function cleanupUsers() 79 { 80 lt_include( PLOG_CLASS_PATH."class/dao/purgedata.class.php" ); 81 82 $purge = new PurgeData(); 83 $result = $purge->purgeUsers(); 84 if($result === false){ 85 $this->_continue = false; 86 $this->_message = $this->_locale->tr( "purging_error" ); 87 return false; 88 } 89 else if($result > 0){ 90 $this->_message = $this->_locale->tr( "purging_please_wait" ); 91 // flags to indicate that we show refresh the page and continue at the given URL 92 $this->_continue = true; 93 $this->_url = "?op=doCleanUp&purgeUsers=Purge"; 94 } 95 else { 96 $this->_continue = false; 97 $this->_message = $this->_locale->tr( "users_purged_ok" ); 98 } 99 100 return( true ); 101 } 102 103 /** 104 * cleans up blogs. Returns true if successful or false otherwise 105 */ 106 function cleanupBlogs() 107 { 108 lt_include( PLOG_CLASS_PATH."class/dao/purgedata.class.php" ); 109 110 $purge = new PurgeData(); 111 $result = $purge->purgeBlogs(); 112 113 if($result === false){ 114 $this->_continue = false; 115 $this->_message = $this->_locale->tr( "purging_error" ); 116 return false; 117 } 118 else if($result > 0 ) { 119 $this->_message = $this->_locale->tr( "purging_please_wait" ); 120 // flags to indicate that we show refresh the page and continue at the given URL 121 $this->_continue = true; 122 $this->_url = "?op=doCleanUp&purgeBlogs=Purge"; 123 } 124 else { 125 $this->_continue = false; 126 $this->_message = $this->_locale->tr( "blogs_purged_ok" ); 127 } 128 129 return( true ); 130 } 131 132 /** 133 * cleans up spam comments. Returns true if successful or false otherwise 134 */ 135 function cleanupComments() 136 { 137 lt_include( PLOG_CLASS_PATH."class/dao/purgedata.class.php" ); 138 139 $purge = new PurgeData(); 140 $result = $purge->purgeSpamComments(); 141 if($result === false){ 142 $this->_continue = false; 143 $this->_message = $this->_locale->tr( "purging_error" ); 144 return false; 145 } 146 else if($result > 0) { 147 $this->_message = $this->_locale->tr( "purging_please_wait" ); 148 // flags to indicate that we show refresh the page and continue at the given URL 149 $this->_continue = true; 150 $this->_url = "?op=doCleanUp&purgeSpam=Purge"; 151 } 152 else { 153 $this->_continue = false; 154 $this->_message = $this->_locale->tr( "spam_comments_purged_ok" ); 155 } 156 157 return( true ); 158 } 159 160 /** 161 * cleans up temp directory, excluding .htaccess and the .svn directory 162 * 163 * @return Returns true 164 */ 165 function cleanupTemp() 166 { 167 lt_include( PLOG_CLASS_PATH."class/config/config.class.php" ); 168 $config =& Config::getConfig(); 169 $tmpFolder = $config->getValue( "temp_folder" ); 170 $excludes = array('.htaccess', '.svn'); 171 File::deleteDir( $tmpFolder, true, true, $excludes ); 172 173 // Iterate through all of the blogs, and give the 174 // plugins a chance to regenerate any files that 175 // were deleted 176 lt_include( PLOG_CLASS_PATH."class/dao/blogs.class.php" ); 177 178 $blogs = new Blogs(); 179 $activeBlogs = $blogs->getAllBlogs( BLOG_STATUS_ACTIVE ); 180 // Get the plugin manager 181 // $plugMgr =& PluginManager::getPluginManager(); 182 183 foreach( $activeBlogs as $blogInfo ) { 184 $this->_pm->setBlogInfo( $blogInfo); 185 $this->_pm->loadPlugins( "admin" ); 186 $this->_pm->getPlugins(); 187 // Send the EVENT_POST_ADMIN_PURGE_TEMP_FOLDER message 188 $this->_pm->notifyEvent( EVENT_POST_ADMIN_PURGE_TEMP_FOLDER ); 189 } 190 191 $this->_message = $this->_locale->tr( "temp_folder_reset_ok" ); 192 193 return true ; 194 } 195 196 function perform() 197 { 198 $result = false; 199 200 // decide what we're going to do... 201 if( $this->_op == "cleanupSpam" ) { 202 $result = $this->cleanupComments(); 203 } 204 elseif( $this->_op == "cleanupPosts" ) { 205 $result = $this->cleanupPosts(); 206 } 207 elseif( $this->_op == "cleanupUsers" ) { 208 lt_include( PLOG_CLASS_PATH."class/template/cachecontrol.class.php" ); 209 $result = $this->cleanupUsers(); 210 CacheControl::resetSummaryCache(); 211 } 212 elseif( $this->_op == "cleanupBlogs" ) { 213 lt_include( PLOG_CLASS_PATH."class/template/cachecontrol.class.php" ); 214 $result = $this->cleanupBlogs(); 215 CacheControl::resetSummaryCache(); 216 } 217 elseif( $this->_op == "cleanupTemp" ) { 218 $result = $this->cleanupTemp(); 219 } 220 221 // create the view and see if there was a success message 222 $this->_view = new AdminTemplatedView( $this->_blogInfo, "cleanup" ); 223 if( $result ) { 224 $this->_view->setSuccessMessage( $this->_message ); 225 } 226 elseif ($this->_message != '') { 227 $this->_view->setErrorMessage( $this->_message ); 228 } 229 230 231 $this->_view->setValue( "continue", $this->_continue ); 232 $this->_view->setValue( "dest", $this->_url ); 233 234 $this->setCommonData(); 235 236 return true; 237 } 238 } 239 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Mon Nov 26 21:04:15 2007 | par Balluche grâce à PHPXref 0.7 |
![]() |