/var/www/wordpress/wp-admin/includes/admin.php
/var/www/wordpress/wp-admin/includes/bookmark.php
/var/www/wordpress/wp-admin/includes/class-ftp-pure.php
/var/www/wordpress/wp-admin/includes/class-ftp-sockets.php
/var/www/wordpress/wp-admin/includes/class-ftp.php
/var/www/wordpress/wp-admin/includes/class-pclzip.php
/var/www/wordpress/wp-admin/includes/class-wp-filesystem-base.php
/var/www/wordpress/wp-admin/includes/class-wp-filesystem-direct.php
/var/www/wordpress/wp-admin/includes/class-wp-filesystem-ftpext.php
/var/www/wordpress/wp-admin/includes/class-wp-filesystem-ftpsockets.php
/var/www/wordpress/wp-admin/includes/class-wp-filesystem-ssh2.php
/var/www/wordpress/wp-admin/includes/class-wp-importer.php
/var/www/wordpress/wp-admin/includes/class-wp-upgrader.php
/var/www/wordpress/wp-admin/includes/comment.php
/var/www/wordpress/wp-admin/includes/continents-cities.php
/var/www/wordpress/wp-admin/includes/dashboard.php
/var/www/wordpress/wp-admin/includes/deprecated.php
/var/www/wordpress/wp-admin/includes/export.php
/var/www/wordpress/wp-admin/includes/file.php
/var/www/wordpress/wp-admin/includes/image-edit.php
/var/www/wordpress/wp-admin/includes/image.php
/var/www/wordpress/wp-admin/includes/import.php
/var/www/wordpress/wp-admin/includes/manifest.php
/var/www/wordpress/wp-admin/includes/media.php
/var/www/wordpress/wp-admin/includes/meta-boxes.php
/var/www/wordpress/wp-admin/includes/misc.php
/var/www/wordpress/wp-admin/includes/ms-deprecated.php
/var/www/wordpress/wp-admin/includes/ms.php
/var/www/wordpress/wp-admin/includes/nav-menu.php
/var/www/wordpress/wp-admin/includes/plugin-install.php
/var/www/wordpress/wp-admin/includes/plugin.php
/var/www/wordpress/wp-admin/includes/post.php
/var/www/wordpress/wp-admin/includes/schema.php
/var/www/wordpress/wp-admin/includes/taxonomy.php
/var/www/wordpress/wp-admin/includes/template.php
/var/www/wordpress/wp-admin/includes/theme-install.php
/var/www/wordpress/wp-admin/includes/theme.php
/var/www/wordpress/wp-admin/includes/update-core.php
/var/www/wordpress/wp-admin/includes/update.php
/var/www/wordpress/wp-admin/includes/upgrade.php
/var/www/wordpress/wp-admin/includes/user.php
/var/www/wordpress/wp-admin/includes/widgets.php
/var/www/wordpress/wp-admin/js/revisions-js.php
/var/www/wordpress/wp-admin/maint/repair.php
/var/www/wordpress/wp-admin/admin-ajax.php
/var/www/wordpress/wp-admin/admin-footer.php
/var/www/wordpress/wp-admin/admin-functions.php
/var/www/wordpress/wp-admin/admin-header.php
/var/www/wordpress/wp-admin/admin-post.php
/var/www/wordpress/wp-admin/admin.php
/var/www/wordpress/wp-admin/async-upload.php
/var/www/wordpress/wp-admin/comment.php
/var/www/wordpress/wp-admin/custom-background.php
/var/www/wordpress/wp-admin/custom-header.php
/var/www/wordpress/wp-admin/edit-attachment-rows.php
/var/www/wordpress/wp-admin/edit-comments.php
/var/www/wordpress/wp-admin/edit-form-advanced.php
/var/www/wordpress/wp-admin/edit-form-comment.php
/var/www/wordpress/wp-admin/edit-link-categories.php
/var/www/wordpress/wp-admin/edit-link-category-form.php
/var/www/wordpress/wp-admin/edit-link-form.php
/var/www/wordpress/wp-admin/edit-post-rows.php
/var/www/wordpress/wp-admin/edit-tag-form.php
/var/www/wordpress/wp-admin/edit-tags.php
/var/www/wordpress/wp-admin/edit.php
/var/www/wordpress/wp-admin/export.php
/var/www/wordpress/wp-admin/gears-manifest.php
/var/www/wordpress/wp-admin/import.php
/var/www/wordpress/wp-admin/index-extra.php
/var/www/wordpress/wp-admin/index.php
/var/www/wordpress/wp-admin/install-helper.php
/var/www/wordpress/wp-admin/install.php
/var/www/wordpress/wp-admin/link-add.php
/var/www/wordpress/wp-admin/link-category.php
/var/www/wordpress/wp-admin/link-manager.php
/var/www/wordpress/wp-admin/link-parse-opml.php
/var/www/wordpress/wp-admin/link.php
/var/www/wordpress/wp-admin/load-scripts.php
/var/www/wordpress/wp-admin/load-styles.php
/var/www/wordpress/wp-admin/media-new.php
/var/www/wordpress/wp-admin/media-upload.php
/var/www/wordpress/wp-admin/media.php
/var/www/wordpress/wp-admin/menu-header.php
/var/www/wordpress/wp-admin/menu.php
/var/www/wordpress/wp-admin/moderation.php
/var/www/wordpress/wp-admin/ms-admin.php
/var/www/wordpress/wp-admin/ms-delete-site.php
/var/www/wordpress/wp-admin/ms-edit.php
/var/www/wordpress/wp-admin/ms-options.php
/var/www/wordpress/wp-admin/ms-sites.php
/var/www/wordpress/wp-admin/ms-themes.php
/var/www/wordpress/wp-admin/ms-upgrade-network.php
/var/www/wordpress/wp-admin/ms-users.php
/var/www/wordpress/wp-admin/my-sites.php
/var/www/wordpress/wp-admin/nav-menus.php
/var/www/wordpress/wp-admin/network.php
/var/www/wordpress/wp-admin/options-discussion.php
/var/www/wordpress/wp-admin/options-general.php
/var/www/wordpress/wp-admin/options-head.php
/var/www/wordpress/wp-admin/options-media.php
/var/www/wordpress/wp-admin/options-permalink.php
/var/www/wordpress/wp-admin/options-privacy.php
/var/www/wordpress/wp-admin/options-reading.php
/var/www/wordpress/wp-admin/options-writing.php
/var/www/wordpress/wp-admin/options.php
/var/www/wordpress/wp-admin/plugin-editor.php
/var/www/wordpress/wp-admin/plugin-install.php
/var/www/wordpress/wp-admin/plugins.php
#CodeDescriptions
1<?php
2/**
3 * Plugins administration panel.
4 *
5 * @package WordPress
6 * @subpackage Administration
7 */
8
9/** WordPress Administration Bootstrap */
10require_once('./admin.php');
11if ( is_multisite() ) {
12 $menu_perms = get_site_option( 'menu_items', array() );
13
14 if ( empty($menu_perms['plugins']) && ! is_super_admin() )
15 wp_die( __( 'Cheatin’ uh?' ) );
16 else if ( $menu_perms['plugins'] != 1 && is_super_admin() )
17 add_action( 'admin_notices', '_admin_notice_multisite_activate_plugins_page' );
18}
19
20if ( ! current_user_can( 'activate_plugins' ) )
21 wp_die( __( 'You do not have sufficient permissions to manage plugins for this site.' ) );
22
23if ( isset($_POST['clear-recent-list']) )
24 $action = 'clear-recent-list';
25elseif ( !empty($_REQUEST['action']) )
26 $action = $_REQUEST['action'];
27elseif ( !empty($_REQUEST['action2']) )
28 $action = $_REQUEST['action2'];
29else
30 $action = false;
31
32$plugin = isset($_REQUEST['plugin']) ? $_REQUEST['plugin'] : '';
33
34$default_status = get_user_option('plugins_last_view');
35if ( empty($default_status) )
36 $default_status = 'all';
37$status = isset($_REQUEST['plugin_status']) ? $_REQUEST['plugin_status'] : $default_status;
38if ( !in_array($status, array('all', 'active', 'inactive', 'recent', 'upgrade', 'network', 'mustuse', 'dropins', 'search')) )
39 $status = 'all';
40if ( $status != $default_status && 'search' != $status )
41 update_user_meta($current_user->ID, 'plugins_last_view', $status);
42
43$page = isset($_REQUEST['paged']) ? $_REQUEST['paged'] : 1;
44
45//Clean up request URI from temporary args for screen options/paging uri's to work as expected.
46$_SERVER['REQUEST_URI'] = remove_query_arg(array('error', 'deleted', 'activate', 'activate-multi', 'deactivate', 'deactivate-multi', '_error_nonce'), $_SERVER['REQUEST_URI']);
47
48if ( !empty($action) ) {
49 $network_wide = false;
50 if ( ( isset( $_GET['networkwide'] ) || 'network-activate-selected' == $action ) && is_multisite() && current_user_can( 'manage_network_plugins' ) )
51 $network_wide = true;
52
53 switch ( $action ) {
54 case 'activate':
55 if ( ! current_user_can('activate_plugins') )
56 wp_die(__('You do not have sufficient permissions to activate plugins for this site.'));
57
58 check_admin_referer('activate-plugin_' . $plugin);
59
60 $result = activate_plugin($plugin, 'plugins.php?error=true&plugin=' . $plugin, $network_wide);
61 if ( is_wp_error( $result ) ) {
62 if ( 'unexpected_output' == $result->get_error_code() ) {
63 $redirect = 'plugins.php?error=true&charsout=' . strlen($result->get_error_data()) . '&plugin=' . $plugin;
64 wp_redirect(add_query_arg('_error_nonce', wp_create_nonce('plugin-activation-error_' . $plugin), $redirect));
65 exit;
66 } else {
67 wp_die($result);
68 }
69 }
70
71 $recent = (array)get_option('recently_activated');
72 if ( isset($recent[ $plugin ]) ) {
73 unset($recent[ $plugin ]);
74 update_option('recently_activated', $recent);
75 }
76 if ( isset($_GET['from']) && 'import' == $_GET['from'] ) {
77 wp_redirect("import.php?import=" . str_replace('-importer', '', dirname($plugin)) ); // overrides the ?error=true one above and redirects to the Imports page, striping the -importer suffix
78 } else {
79 wp_redirect("plugins.php?activate=true&plugin_status=$status&paged=$page"); // overrides the ?error=true one above
80 }
81 exit;
82 break;
83 case 'activate-selected':
84 case 'network-activate-selected':
85 if ( ! current_user_can('activate_plugins') )
86 wp_die(__('You do not have sufficient permissions to activate plugins for this site.'));
87
88 check_admin_referer('bulk-manage-plugins');
89
90 $plugins = isset( $_POST['checked'] ) ? (array) $_POST['checked'] : array();
91 $plugins = array_filter($plugins, create_function('$plugin', 'return !is_plugin_active($plugin);') ); // Only activate plugins which are not already active.
92 if ( empty($plugins) ) {
93 wp_redirect("plugins.php?plugin_status=$status&paged=$page");
94 exit;
95 }
96
97 activate_plugins($plugins, 'plugins.php?error=true', $network_wide);
98
99 $recent = (array)get_option('recently_activated');
100 foreach ( $plugins as $plugin => $time)
101 if ( isset($recent[ $plugin ]) )
102 unset($recent[ $plugin ]);
103
104 update_option('recently_activated', $recent);
105
106 wp_redirect("plugins.php?activate-multi=true&plugin_status=$status&paged=$page");
107 exit;
108 break;
109 case 'update-selected' :
110
111 check_admin_referer( 'bulk-manage-plugins' );
112
113 if ( isset( $_GET['plugins'] ) )
114 $plugins = explode( ',', $_GET['plugins'] );
115 elseif ( isset( $_POST['checked'] ) )
116 $plugins = (array) $_POST['checked'];
117 else
118 $plugins = array();
119
120 $title = __( 'Upgrade Plugins' );
121 $parent_file = 'plugins.php';
122
123 require_once( './admin-header.php' );
124
125 echo '<div class="wrap">';
126 screen_icon();
127 echo '<h2>' . esc_html( $title ) . '</h2>';
128
129
130 $url = 'update.php?action=update-selected&plugins=' . urlencode( join(',', $plugins) );
131 $url = wp_nonce_url($url, 'bulk-update-plugins');
132
133 echo "<iframe src='$url' style='width: 100%; height:100%; min-height:850px;'></iframe>";
134 echo '</div>';
135 require_once( './admin-footer.php' );
136 exit;
137 break;
138 case 'error_scrape':
139 if ( ! current_user_can('activate_plugins') )
140 wp_die(__('You do not have sufficient permissions to activate plugins for this site.'));
141
142 check_admin_referer('plugin-activation-error_' . $plugin);
143
144 $valid = validate_plugin($plugin);
145 if ( is_wp_error($valid) )
146 wp_die($valid);
147
148 if ( ! WP_DEBUG ) {
149 if ( defined('E_RECOVERABLE_ERROR') )
150 error_reporting(E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_ERROR | E_WARNING | E_PARSE | E_USER_ERROR | E_USER_WARNING | E_RECOVERABLE_ERROR);
151 else
152 error_reporting(E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_ERROR | E_WARNING | E_PARSE | E_USER_ERROR | E_USER_WARNING);
153 }
154
155 @ini_set('display_errors', true); //Ensure that Fatal errors are displayed.
156 // Go back to "sandbox" scope so we get the same errors as before
157 function plugin_sandbox_scrape( $plugin ) {
158 include( WP_PLUGIN_DIR . '/' . $plugin );//Arbitrary code inclusion
159 }
160 plugin_sandbox_scrape( $plugin );
161 do_action('activate_' . $plugin);
162 exit;
163 break;
164 case 'deactivate':
165 if ( ! current_user_can('activate_plugins') )
166 wp_die(__('You do not have sufficient permissions to deactivate plugins for this site.'));
167
168 check_admin_referer('deactivate-plugin_' . $plugin);
169 deactivate_plugins($plugin);
170 update_option('recently_activated', array($plugin => time()) + (array)get_option('recently_activated'));
171 if (headers_sent())
172 echo "<meta http-equiv='refresh' content='" . esc_attr( "0;url=plugins.php?deactivate=true&plugin_status=$status&paged=$page" ) . "' />";
173 else
174 wp_redirect("plugins.php?deactivate=true&plugin_status=$status&paged=$page");
175 exit;
176 break;
177 case 'deactivate-selected':
178 if ( ! current_user_can('activate_plugins') )
179 wp_die(__('You do not have sufficient permissions to deactivate plugins for this site.'));
180
181 check_admin_referer('bulk-manage-plugins');
182
183 $plugins = isset( $_POST['checked'] ) ? (array) $_POST['checked'] : array();
184 $plugins = array_filter($plugins, 'is_plugin_active'); //Do not deactivate plugins which are already deactivated.
185 if ( empty($plugins) ) {
186 wp_redirect("plugins.php?plugin_status=$status&paged=$page");
187 exit;
188 }
189
190 deactivate_plugins($plugins);
191
192 $deactivated = array();
193 foreach ( $plugins as $plugin )
194 $deactivated[ $plugin ] = time();
195
196 update_option('recently_activated', $deactivated + (array)get_option('recently_activated'));
197 wp_redirect("plugins.php?deactivate-multi=true&plugin_status=$status&paged=$page");
198 exit;
199 break;
200 case 'delete-selected':
201 if ( ! current_user_can('delete_plugins') )
202 wp_die(__('You do not have sufficient permissions to delete plugins for this site.'));
203
204 check_admin_referer('bulk-manage-plugins');
205
206 //$_POST = from the plugin form; $_GET = from the FTP details screen.
207 $plugins = isset( $_REQUEST['checked'] ) ? (array) $_REQUEST['checked'] : array();
208 $plugins = array_filter($plugins, create_function('$plugin', 'return !is_plugin_active($plugin);') ); //Do not allow to delete Activated plugins.
209 if ( empty($plugins) ) {
210 wp_redirect("plugins.php?plugin_status=$status&paged=$page");
211 exit;
212 }
213
214 include(ABSPATH . 'wp-admin/update.php');
215
216 $parent_file = 'plugins.php';
217
218 if ( ! isset($_REQUEST['verify-delete']) ) {
219 wp_enqueue_script('jquery');
220 require_once('./admin-header.php');
221 ?>
222 <div class="wrap">
223 <?php
224 $files_to_delete = $plugin_info = array();
225 foreach ( (array) $plugins as $plugin ) {
226 if ( '.' == dirname($plugin) ) {
227 $files_to_delete[] = WP_PLUGIN_DIR . '/' . $plugin;
228 if( $data = get_plugin_data(WP_PLUGIN_DIR . '/' . $plugin) ) {
229 $plugin_info[ $plugin ] = $data;
230 $plugin_info[ $plugin ]['is_uninstallable'] = is_uninstallable_plugin( $plugin );
231 }
232 } else {
233 // Locate all the files in that folder
234 $files = list_files( WP_PLUGIN_DIR . '/' . dirname($plugin) );
235 if ( $files ) {
236 $files_to_delete = array_merge($files_to_delete, $files);
237 }
238 // Get plugins list from that folder
239 if ( $folder_plugins = get_plugins( '/' . dirname($plugin)) ) {
240 foreach( $folder_plugins as $plugin_file => $data ) {
241 $plugin_info[ $plugin_file ] = $data;//Arbitrary file disclosing
242 $plugin_info[ $plugin_file ]['is_uninstallable'] = is_uninstallable_plugin( $plugin );
243 }
244 }
245 }
246 }
247 screen_icon();
248 $plugins_to_delete = count( $plugin_info );
249 echo '<h2>' . _n( 'Delete Plugin', 'Delete Plugins', $plugins_to_delete ) . '</h2>';
250 ?>
251 <p><?php echo _n( 'You are about to remove the following plugin:', 'You are about to remove the following plugins:', $plugins_to_delete ); ?></p>
252 <ul class="ul-disc">
253 <?php
254 $data_to_delete = false;
255 foreach ( $plugin_info as $plugin ) {
256 if ( $plugin['is_uninstallable'] ) {
257 /* translators: 1: plugin name, 2: plugin author */
258 echo '<li>', sprintf( __( '<strong>%1$s</strong> by <em>%2$s</em> (will also <strong>delete its data</strong>)' ), $plugin['Name'], $plugin['Author'] ), '</li>';
259 $data_to_delete = true;
260 } else {
261 /* translators: 1: plugin name, 2: plugin author */
262 echo '<li>', sprintf( __('<strong>%1$s</strong> by <em>%2$s</em>' ), $plugin['Name'], $plugin['Author'] ), '</li>';
263 }
264 }
265 ?>
266 </ul>
267 <p><?php
268 if ( $data_to_delete )
269 _e('Are you sure you wish to delete these files and data?');
270 else
271 _e('Are you sure you wish to delete these files?');
272 ?></p>
273 <form method="post" action="<?php echo esc_url($_SERVER['REQUEST_URI']); ?>" style="display:inline;">
274 <input type="hidden" name="verify-delete" value="1" />
275 <input type="hidden" name="action" value="delete-selected" />
276 <?php
277 foreach ( (array)$plugins as $plugin )
278 echo '<input type="hidden" name="checked[]" value="' . esc_attr($plugin) . '" />';
279 ?>
280 <?php wp_nonce_field('bulk-manage-plugins') ?>
281 <input type="submit" name="submit" value="<?php $data_to_delete ? esc_attr_e('Yes, Delete these files and data') : esc_attr_e('Yes, Delete these files') ?>" class="button" />
282 </form>
283 <form method="post" action="<?php echo esc_url(wp_get_referer()); ?>" style="display:inline;">
284 <input type="submit" name="submit" value="<?php esc_attr_e('No, Return me to the plugin list') ?>" class="button" />
285 </form>
286
287 <p><a href="#" onclick="jQuery('#files-list').toggle(); return false;"><?php _e('Click to view entire list of files which will be deleted'); ?></a></p>
288 <div id="files-list" style="display:none;">
289 <ul class="code">
290 <?php
291 foreach ( (array)$files_to_delete as $file )
292 echo '<li>' . str_replace(WP_PLUGIN_DIR, '', $file) . '</li>';
293 ?>
294 </ul>
295 </div>
296 </div>
297 <?php
298 require_once('./admin-footer.php');
299 exit;
300 } //Endif verify-delete
301 $delete_result = delete_plugins($plugins);
302
303 set_transient('plugins_delete_result_'.$user_ID, $delete_result); //Store the result in a cache rather than a URL param due to object type & length
304 wp_redirect("plugins.php?deleted=true&plugin_status=$status&paged=$page");
305 exit;
306 break;
307 case 'clear-recent-list':
308 update_option('recently_activated', array());
309 break;
310 }
311}
312
313wp_enqueue_script('plugin-install');
314add_thickbox();
315
316add_contextual_help($current_screen,
317 '<p>' . __('Plugins extend and expand the functionality of WordPress. Once a plugin is installed, you may activate it or deactivate it here.') . '</p>' .
318 '<p>' . sprintf(__('You can find additional plugins for your site by using the <a href="%1$s">Plugin Browser/Installer</a> functionality or by browsing the <a href="%2$s" target="_blank">WordPress Plugin Directory</a> directly and installing new plugins manually. To manually install a plugin you generally just need to upload the plugin file into your <code>/wp-content/plugins</code> directory. Once a plugin has been installed, you can activate it here.'), 'plugin-install.php', 'http://wordpress.org/extend/plugins/') . '</p>' .
319 '<p>' . __('Most of the time, plugins play nicely with the core of WordPress and with other plugins. Sometimes, though, a plugin’s code will get in the way of another plugin, causing compatibility issues. If your site starts doing strange things, this may be the problem. Try deactivating all your plugins and re-activating them in various combinations until you isolate which one(s) caused the issue.') . '</p>' .
320 '<p>' . sprintf( __('If something goes wrong with a plugin and you can’t use WordPress, delete or rename that file in the <code>%s</code> directory and it will be automatically deactivated.'), WP_PLUGIN_DIR) . '</p>' .
321 '<p><strong>' . __('For more information:') . '</strong></p>' .
322 '<p>' . __('<a href="http://codex.wordpress.org/Managing_Plugins#Plugin_Management" target="_blank">Documentation on Managing Plugins</a>') . '</p>' .
323 '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
324);
325
326$title = __('Plugins');
327
328require_once('./admin-header.php');
329
330$invalid = validate_active_plugins();
331if ( !empty($invalid) )
332 foreach ( $invalid as $plugin_file => $error )
333 echo '<div id="message" class="error"><p>' . sprintf(__('The plugin <code>%s</code> has been <strong>deactivated</strong> due to an error: %s'), esc_html($plugin_file), $error->get_error_message()) . '</p></div>';//Arbitrary file disclosing
334?>
335
336<?php if ( isset($_GET['error']) ) :
337
338 if ( isset($_GET['charsout']) )
339 $errmsg = sprintf(__('The plugin generated %d characters of <strong>unexpected output</strong> during activation. If you notice “headers already sent” messages, problems with syndication feeds or other issues, try deactivating or removing this plugin.'), $_GET['charsout']);
340 else
341 $errmsg = __('Plugin could not be activated because it triggered a <strong>fatal error</strong>.');
342 ?>
343 <div id="message" class="updated"><p><?php echo $errmsg; ?></p>//Cross Site Scripting
344 <?php
345 if ( !isset($_GET['charsout']) && wp_verify_nonce($_GET['_error_nonce'], 'plugin-activation-error_' . $plugin) ) { ?>
346 <iframe style="border:0" width="100%" height="70px" src="<?php echo admin_url('plugins.php?action=error_scrape&plugin=' . esc_attr($plugin) . '&_wpnonce=' . esc_attr($_GET['_error_nonce'])); ?>"></iframe>
347 <?php
348 }
349 ?>
350 </div>
351<?php elseif ( isset($_GET['deleted']) ) :
352 $delete_result = get_transient('plugins_delete_result_'.$user_ID);
353 delete_transient('plugins_delete_result'); //Delete it once we're done.
354
355 if ( is_wp_error($delete_result) ) : ?>
356 <div id="message" class="updated"><p><?php printf( __('Plugin could not be deleted due to an error: %s'), $delete_result->get_error_message() ); ?></p></div>
357 <?php else : ?>
358 <div id="message" class="updated"><p><?php _e('The selected plugins have been <strong>deleted</strong>.'); ?></p></div>
359 <?php endif; ?>
360<?php elseif ( isset($_GET['activate']) ) : ?>
361 <div id="message" class="updated"><p><?php _e('Plugin <strong>activated</strong>.') ?></p></div>
362<?php elseif (isset($_GET['activate-multi'])) : ?>
363 <div id="message" class="updated"><p><?php _e('Selected plugins <strong>activated</strong>.'); ?></p></div>
364<?php elseif ( isset($_GET['deactivate']) ) : ?>
365 <div id="message" class="updated"><p><?php _e('Plugin <strong>deactivated</strong>.') ?></p></div>
366<?php elseif (isset($_GET['deactivate-multi'])) : ?>
367 <div id="message" class="updated"><p><?php _e('Selected plugins <strong>deactivated</strong>.'); ?></p></div>
368<?php elseif ( 'update-selected' == $action ) : ?>
369 <div id="message" class="updated"><p><?php _e('No out of date plugins were selected.'); ?></p></div>
370<?php endif; ?>
371
372<div class="wrap">
373<?php screen_icon(); ?>
374<h2><?php echo esc_html( $title ); if ( current_user_can('install_plugins') ) { ?> <a href="plugin-install.php" class="button add-new-h2"><?php echo esc_html_x('Add New', 'plugin'); ?></a><?php } ?></h2>
375
376<?php
377
378$all_plugins = apply_filters( 'all_plugins', get_plugins() );
379$search_plugins = array();
380$active_plugins = array();
381$inactive_plugins = array();
382$recent_plugins = array();
383$recently_activated = get_option('recently_activated', array());
384$upgrade_plugins = array();
385$network_plugins = array();
386$mustuse_plugins = $dropins_plugins = array();
387if ( ! is_multisite() || current_user_can('manage_network_plugins') ) {
388 if ( apply_filters( 'show_advanced_plugins', true, 'mustuse' ) )
389 $mustuse_plugins = get_mu_plugins();
390 if ( apply_filters( 'show_advanced_plugins', true, 'dropins' ) )
391 $dropins_plugins = get_dropins();
392}
393
394set_transient( 'plugin_slugs', array_keys($all_plugins), 86400 );
395
396// Clean out any plugins which were deactivated over a week ago.
397foreach ( $recently_activated as $key => $time )
398 if ( $time + (7*24*60*60) < time() ) //1 week
399 unset($recently_activated[ $key ]);
400if ( $recently_activated != get_option('recently_activated') ) //If array changed, update it.
401 update_option('recently_activated', $recently_activated);
402$current = get_site_transient( 'update_plugins' );
403
404foreach ( array( 'all_plugins', 'mustuse_plugins', 'dropins_plugins' ) as $plugin_array_name) {
405 foreach ( (array) $$plugin_array_name as $plugin_file => $plugin_data ) {
406 // Translate, Apply Markup, Sanitize HTML
407 $plugin_data = _get_plugin_data_markup_translate($plugin_file, $plugin_data, false, true);//Arbitrary file disclosing
408 ${$plugin_array_name}[ $plugin_file ] = $plugin_data;//Arbitrary file disclosing
409 }
410}
411unset( $plugin_array_name );
412
413foreach ( (array) $all_plugins as $plugin_file => $plugin_data) {
414 // Filter into individual sections
415 if ( is_multisite() && is_network_only_plugin( $plugin_file ) && !current_user_can( 'manage_network_plugins' ) ) {
416 unset( $all_plugins[ $plugin_file ] );
417 continue;
418 } elseif ( is_plugin_active_for_network($plugin_file) ) {
419 $network_plugins[ $plugin_file ] = $plugin_data;//Arbitrary file disclosing
420 } elseif ( is_plugin_active($plugin_file) ) {
421 $active_plugins[ $plugin_file ] = $plugin_data;//Arbitrary file disclosing
422 } else {
423 if ( isset( $recently_activated[ $plugin_file ] ) ) // Was the plugin recently activated?
424 $recent_plugins[ $plugin_file ] = $plugin_data;//Arbitrary file disclosing
425 $inactive_plugins[ $plugin_file ] = $plugin_data;//Arbitrary file disclosing
426 }
427
428 if ( isset( $current->response[ $plugin_file ] ) )
429 $upgrade_plugins[ $plugin_file ] = $plugin_data;//Arbitrary file disclosing
430}
431
432if ( !current_user_can('update_plugins') )
433 $upgrade_plugins = array();
434
435$total_all_plugins = count($all_plugins);
436$total_inactive_plugins = count($inactive_plugins);
437$total_active_plugins = count($active_plugins);
438$total_recent_plugins = count($recent_plugins);
439$total_upgrade_plugins = count($upgrade_plugins);
440$total_network_plugins = count($network_plugins);
441$total_mustuse_plugins = count($mustuse_plugins);
442$total_dropins_plugins = count($dropins_plugins);
443
444// Searching.
445if ( !empty($_GET['s']) ) {
446 function _search_plugins_filter_callback($plugin) {
447 static $term;
448 if ( is_null($term) )
449 $term = stripslashes($_GET['s']);
450 if ( stripos($plugin['Name'], $term) !== false ||
451 stripos($plugin['Description'], $term) !== false ||
452 stripos($plugin['Author'], $term) !== false ||
453 stripos($plugin['PluginURI'], $term) !== false ||
454 stripos($plugin['AuthorURI'], $term) !== false ||
455 stripos($plugin['Version'], $term) !== false )
456 return true;
457 else
458 return false;
459 }
460 $status = 'search';
461 $search_plugins = array_filter($all_plugins, '_search_plugins_filter_callback');
462 $total_search_plugins = count($search_plugins);
463}
464
465$plugin_array_name = "${status}_plugins";
466if ( empty($$plugin_array_name) && !in_array($status, array('all', 'search')) ) {
467 $status = 'all';
468 $plugin_array_name = "${status}_plugins";
469}
470
471$plugins = &$$plugin_array_name;
472
473// Paging.
474$total_this_page = "total_{$status}_plugins";
475$total_this_page = $$total_this_page;
476$plugins_per_page = (int) get_user_option( 'plugins_per_page' );
477if ( empty( $plugins_per_page ) || $plugins_per_page < 1 )
478 $plugins_per_page = 999;
479$plugins_per_page = apply_filters( 'plugins_per_page', $plugins_per_page );
480
481$start = ($page - 1) * $plugins_per_page;
482
483$page_links = paginate_links( array(
484 'base' => add_query_arg( 'paged', '%#%' ),
485 'format' => '',
486 'prev_text' => __('«'),
487 'next_text' => __('»'),
488 'total' => ceil($total_this_page / $plugins_per_page),
489 'current' => $page
490));
491$page_links_text = sprintf( '<span class="displaying-num">' . __( 'Displaying %s–%s of %s' ) . '</span>%s',
492 number_format_i18n( $start + 1 ),
493 number_format_i18n( min( $page * $plugins_per_page, $total_this_page ) ),
494 '<span class="total-type-count">' . number_format_i18n( $total_this_page ) . '</span>',
495 $page_links
496);
497
498/**
499 * @ignore
500 *
501 * @param array $plugins
502 * @param string $context
503 */
504function print_plugins_table($plugins, $context = '') {
505 global $page;
506 $checkbox = ! in_array( $context, array( 'mustuse', 'dropins' ) ) ? '<input type="checkbox" />' : '';
507?>
508<table class="widefat" cellspacing="0" id="<?php echo $context ?>-plugins-table">
509 <thead>
510 <tr>
511 <th scope="col" class="manage-column check-column"><?php echo $checkbox; ?></th>//Cross Site Scripting
512 <th scope="col" class="manage-column"><?php _e('Plugin'); ?></th>
513 <th scope="col" class="manage-column"><?php _e('Description'); ?></th>
514 </tr>
515 </thead>
516
517 <tfoot>
518 <tr>
519 <th scope="col" class="manage-column check-column"><?php echo $checkbox; ?></th>//Cross Site Scripting
520 <th scope="col" class="manage-column"><?php _e('Plugin'); ?></th>
521 <th scope="col" class="manage-column"><?php _e('Description'); ?></th>
522 </tr>
523 </tfoot>
524
525 <tbody class="plugins">
526<?php
527
528 if ( empty($plugins) ) {
529 echo '<tr>
530 <td colspan="3">' . __('No plugins to show') . '</td>
531 </tr>';
532 }
533 foreach ( (array)$plugins as $plugin_file => $plugin_data) {
534 // preorder
535 $actions = array(
536 'network_deactivate' => '', 'deactivate' => '',
537 'network_only' => '', 'activate' => '',
538 'network_activate' => '',
539 'edit' => '',
540 'delete' => '',
541 );
542
543 if ( 'mustuse' == $context ) {
544 $is_active = true;
545 } elseif ( 'dropins' == $context ) {
546 $dropins = _get_dropins();
547 $plugin_name = $plugin_file;
548 if ( $plugin_file != $plugin_data['Name'] )
549 $plugin_name .= '<br/>' . $plugin_data['Name'];
550 if ( true === ( $dropins[ $plugin_file ][1] ) ) { // Doesn't require a constant
551 $is_active = true;
552 $description = '<p><strong>' . $dropins[ $plugin_file ][0] . '</strong></p>';
553 } elseif ( constant( $dropins[ $plugin_file ][1] ) ) { // Constant is true
554 $is_active = true;
555 $description = '<p><strong>' . $dropins[ $plugin_file ][0] . '</strong></p>';
556 } else {
557 $is_active = false;
558 $description = '<p><strong>' . $dropins[ $plugin_file ][0] . ' <span class="attention">' . __('Inactive:') . '</span></strong> ' . sprintf( __( 'Requires <code>%s</code> in <code>wp-config.php</code>.' ), "define('" . $dropins[ $plugin_file ][1] . "', true);" ) . '</p>';
559 }
560 if ( $plugin_data['Description'] )
561 $description .= '<p>' . $plugin_data['Description'] . '</p>';
562 } else {
563 $is_active_for_network = is_plugin_active_for_network($plugin_file);
564 $is_active = $is_active_for_network || is_plugin_active( $plugin_file );
565 if ( $is_active_for_network && !is_super_admin() )
566 continue;
567
568 if ( $is_active ) {
569 if ( $is_active_for_network ) {
570 if ( is_super_admin() )
571 $actions['network_deactivate'] = '<a href="' . wp_nonce_url('plugins.php?action=deactivate&networkwide=1&plugin=' . $plugin_file . '&plugin_status=' . $context . '&paged=' . $page, 'deactivate-plugin_' . $plugin_file) . '" title="' . __('Deactivate this plugin') . '">' . __('Network Deactivate') . '</a>';
572 } else {
573 $actions['deactivate'] = '<a href="' . wp_nonce_url('plugins.php?action=deactivate&plugin=' . $plugin_file . '&plugin_status=' . $context . '&paged=' . $page, 'deactivate-plugin_' . $plugin_file) . '" title="' . __('Deactivate this plugin') . '">' . __('Deactivate') . '</a>';
574 }
575 } else {
576 if ( is_multisite() && is_network_only_plugin( $plugin_file ) )
577 $actions['network_only'] = '<span title="' . __('This plugin can only be activated for all sites in a network') . '">' . __('Network Only') . '</span>';
578 else
579 $actions['activate'] = '<a href="' . wp_nonce_url('plugins.php?action=activate&plugin=' . $plugin_file . '&plugin_status=' . $context . '&paged=' . $page, 'activate-plugin_' . $plugin_file) . '" title="' . __('Activate this plugin') . '" class="edit">' . __('Activate') . '</a>';
580
581 if ( is_multisite() && current_user_can( 'manage_network_plugins' ) )
582 $actions['network_activate'] = '<a href="' . wp_nonce_url('plugins.php?action=activate&networkwide=1&plugin=' . $plugin_file . '&plugin_status=' . $context . '&paged=' . $page, 'activate-plugin_' . $plugin_file) . '" title="' . __('Activate this plugin for all sites in this network') . '" class="edit">' . __('Network Activate') . '</a>';
583
584 if ( current_user_can('delete_plugins') )
585 $actions['delete'] = '<a href="' . wp_nonce_url('plugins.php?action=delete-selected&checked[]=' . $plugin_file . '&plugin_status=' . $context . '&paged=' . $page, 'bulk-manage-plugins') . '" title="' . __('Delete this plugin') . '" class="delete">' . __('Delete') . '</a>';
586 } // end if $is_active
587
588 if ( current_user_can('edit_plugins') && is_writable(WP_PLUGIN_DIR . '/' . $plugin_file) )
589 $actions['edit'] = '<a href="plugin-editor.php?file=' . $plugin_file . '" title="' . __('Open this file in the Plugin Editor') . '" class="edit">' . __('Edit') . '</a>';//Arbitrary file disclosing
590 } // end if $context
591
592 $actions = apply_filters( 'plugin_action_links', array_filter( $actions ), $plugin_file, $plugin_data, $context );//Arbitrary file disclosing
593 $actions = apply_filters( "plugin_action_links_$plugin_file", $actions, $plugin_file, $plugin_data, $context );//Arbitrary file disclosing
594
595 $class = $is_active ? 'active' : 'inactive';
596 $checkbox = in_array( $context, array( 'mustuse', 'dropins' ) ) ? '' : "<input type='checkbox' name='checked[]' value='" . esc_attr($plugin_file) . "' />";
597 if ( 'dropins' != $context ) {
598 $description = '<p>' . $plugin_data['Description'] . '</p>';
599 $plugin_name = $plugin_data['Name'];
600 }
601 echo "
602 <tr class='$class'>
603 <th scope='row' class='check-column'>$checkbox</th>
604 <td class='plugin-title'><strong>$plugin_name</strong></td>
605 <td class='desc'>$description</td>
606 </tr>
607 <tr class='$class second'>
608 <td></td>
609 <td class='plugin-title'>";
610 echo '<div class="row-actions-visible">';
611 foreach ( $actions as $action => $link ) {
612 $sep = end($actions) == $link ? '' : ' | ';
613 echo "<span class='$action'>$link$sep</span>";
614 }
615 echo "</div></td>
616 <td class='desc'>";
617 $plugin_meta = array();
618 if ( !empty($plugin_data['Version']) )
619 $plugin_meta[] = sprintf(__('Version %s'), $plugin_data['Version']);
620 if ( !empty($plugin_data['Author']) ) {
621 $author = $plugin_data['Author'];
622 if ( !empty($plugin_data['AuthorURI']) )
623 $author = '<a href="' . $plugin_data['AuthorURI'] . '" title="' . __( 'Visit author homepage' ) . '">' . $plugin_data['Author'] . '</a>';
624 $plugin_meta[] = sprintf( __('By %s'), $author );
625 }
626 if ( ! empty($plugin_data['PluginURI']) )
627 $plugin_meta[] = '<a href="' . $plugin_data['PluginURI'] . '" title="' . __( 'Visit plugin site' ) . '">' . __('Visit plugin site') . '</a>';
628
629 $plugin_meta = apply_filters('plugin_row_meta', $plugin_meta, $plugin_file, $plugin_data, $context);//Arbitrary file disclosing
630 echo implode(' | ', $plugin_meta);
631 echo "</td>
632 </tr>\n";
633
634 do_action( 'after_plugin_row', $plugin_file, $plugin_data, $context );//Arbitrary file disclosing
635 do_action( "after_plugin_row_$plugin_file", $plugin_file, $plugin_data, $context );//Arbitrary file disclosing
636 }
637?>
638 </tbody>
639</table>
640<?php
641} //End print_plugins_table()
642
643/**
644 * @ignore
645 *
646 * @param string $context
647 */
648function print_plugin_actions($context, $field_name = 'action' ) {
649 if ( in_array( $context, array( 'mustuse', 'dropins' ) ) )
650 return;
651?>
652 <div class="alignleft actions">
653 <select name="<?php echo $field_name; ?>">//Cross Site Scripting
654 <option value="" selected="selected"><?php _e('Bulk Actions'); ?></option>
655 <?php if ( 'active' != $context ) : ?>
656 <option value="activate-selected"><?php _e('Activate'); ?></option>
657 <?php endif; ?>
658 <?php if ( is_multisite() && 'network' != $context ) : ?>
659 <option value="network-activate-selected"><?php _e('Network Activate'); ?></option>
660 <?php endif; ?>
661 <?php if ( 'inactive' != $context && 'recent' != $context ) : ?>
662 <option value="deactivate-selected"><?php _e('Deactivate'); ?></option>
663 <?php endif; ?>
664 <?php if ( current_user_can( 'update_plugins' ) ) : ?>
665 <option value="update-selected"><?php _e( 'Upgrade' ); ?></option>
666 <?php endif; ?>
667 <?php if ( current_user_can('delete_plugins') && ( 'active' != $context ) ) : ?>
668 <option value="delete-selected"><?php _e('Delete'); ?></option>
669 <?php endif; ?>
670 </select>
671 <input type="submit" name="doaction_active" value="<?php esc_attr_e('Apply'); ?>" class="button-secondary action" />
672 <?php if ( 'recent' == $context ) : ?>
673 <input type="submit" name="clear-recent-list" value="<?php esc_attr_e('Clear List') ?>" class="button-secondary" />
674 <?php endif; ?>
675 </div>
676<?php
677}
678?>
679
680<form method="get" action="">
681<p class="search-box">
682 <label class="screen-reader-text" for="plugin-search-input"><?php _e( 'Search Plugins' ); ?>:</label>
683 <input type="text" id="plugin-search-input" name="s" value="<?php _admin_search_query(); ?>" />
684 <input type="submit" value="<?php esc_attr_e( 'Search Installed Plugins' ); ?>" class="button" />
685</p>
686</form>
687
688<?php do_action( 'pre_current_active_plugins', $all_plugins ) ?>
689
690<form method="post" action="<?php echo admin_url('plugins.php') ?>">
691<?php wp_nonce_field('bulk-manage-plugins') ?>
692<input type="hidden" name="plugin_status" value="<?php echo esc_attr($status) ?>" />
693<input type="hidden" name="paged" value="<?php echo esc_attr($page) ?>" />
694
695<ul class="subsubsub">
696<?php
697$status_links = array();
698$class = ( 'all' == $status ) ? ' class="current"' : '';
699$status_links[] = "<li><a href='plugins.php?plugin_status=all' $class>" . sprintf( _nx( 'All <span class="count">(%s)</span>', 'All <span class="count">(%s)</span>', $total_all_plugins, 'plugins' ), number_format_i18n( $total_all_plugins ) ) . '</a>';
700if ( ! empty($active_plugins) ) {
701 $class = ( 'active' == $status ) ? ' class="current"' : '';
702 $status_links[] = "<li><a href='plugins.php?plugin_status=active' $class>" . sprintf( _n( 'Active <span class="count">(%s)</span>', 'Active <span class="count">(%s)</span>', $total_active_plugins ), number_format_i18n( $total_active_plugins ) ) . '</a>';
703}
704if ( ! empty($recent_plugins) ) {
705 $class = ( 'recent' == $status ) ? ' class="current"' : '';
706 $status_links[] = "<li><a href='plugins.php?plugin_status=recent' $class>" . sprintf( _n( 'Recently Active <span class="count">(%s)</span>', 'Recently Active <span class="count">(%s)</span>', $total_recent_plugins ), number_format_i18n( $total_recent_plugins ) ) . '</a>';
707}
708if ( ! empty($inactive_plugins) ) {
709 $class = ( 'inactive' == $status ) ? ' class="current"' : '';
710 $status_links[] = "<li><a href='plugins.php?plugin_status=inactive' $class>" . sprintf( _n( 'Inactive <span class="count">(%s)</span>', 'Inactive <span class="count">(%s)</span>', $total_inactive_plugins ), number_format_i18n( $total_inactive_plugins ) ) . '</a>';
711}
712if ( ! empty($network_plugins) ) {
713 $class = ( 'network' == $status ) ? ' class="current"' : '';
714 $status_links[] = "<li><a href='plugins.php?plugin_status=network' $class>" . sprintf( _n( 'Network <span class="count">(%s)</span>', 'Network <span class="count">(%s)</span>', $total_network_plugins ), number_format_i18n( $total_network_plugins ) ) . '</a>';
715}
716if ( ! empty($mustuse_plugins) ) {
717 $class = ( 'mustuse' == $status ) ? ' class="current"' : '';
718 $status_links[] = "<li><a href='plugins.php?plugin_status=mustuse' $class>" . sprintf( _n( 'Must-Use <span class="count">(%s)</span>', 'Must-Use <span class="count">(%s)</span>', $total_mustuse_plugins ), number_format_i18n( $total_mustuse_plugins ) ) . '</a>';
719}
720if ( ! empty($dropins_plugins) ) {
721 $class = ( 'dropins' == $status ) ? ' class="current"' : '';
722 $status_links[] = "<li><a href='plugins.php?plugin_status=dropins' $class>" . sprintf( _n( 'Drop-ins <span class="count">(%s)</span>', 'Drop-ins <span class="count">(%s)</span>', $total_dropins_plugins ), number_format_i18n( $total_dropins_plugins ) ) . '</a>';
723}
724if ( ! empty($upgrade_plugins) ) {
725 $class = ( 'upgrade' == $status ) ? ' class="current"' : '';
726 $status_links[] = "<li><a href='plugins.php?plugin_status=upgrade' $class>" . sprintf( _n( 'Upgrade Available <span class="count">(%s)</span>', 'Upgrade Available <span class="count">(%s)</span>', $total_upgrade_plugins ), number_format_i18n( $total_upgrade_plugins ) ) . '</a>';
727}
728if ( ! empty($search_plugins) ) {
729 $class = ( 'search' == $status ) ? ' class="current"' : '';
730 $term = isset($_REQUEST['s']) ? urlencode(stripslashes($_REQUEST['s'])) : '';
731 $status_links[] = "<li><a href='plugins.php?s=$term' $class>" . sprintf( _n( 'Search Results <span class="count">(%s)</span>', 'Search Results <span class="count">(%s)</span>', $total_search_plugins ), number_format_i18n( $total_search_plugins ) ) . '</a>';
732}
733echo implode( " |</li>\n", $status_links ) . '</li>';
734unset( $status_links );
735?>
736</ul>
737
738<?php
739if ( 'mustuse' == $status )
740 echo '<div class="clear"></div><p>' . __( 'Files in the <code>/wp-content/mu-plugins</code> directory are executed automatically.' ) . '</p>';
741elseif ( 'dropins' == $status )
742 echo '<div class="clear"></div><p>' . __( 'Drop-ins are advanced plugins in the <code>/wp-content</code> directory that replace WordPress functionality when present.' ) . '</p>';
743
744if ( !empty( $plugins ) && ( ! in_array( $status, array( 'mustuse', 'dropins' ) ) || $page_links ) ) :
745?>
746<div class="tablenav">
747<?php
748if ( $page_links )
749 echo '<div class="tablenav-pages">', $page_links_text, '</div>';
750
751print_plugin_actions($status);
752?>
753</div>
754<div class="clear"></div>
755<?php
756endif;
757
758if ( $total_this_page > $plugins_per_page )
759 $plugins = array_slice($plugins, $start, $plugins_per_page);
760
761print_plugins_table($plugins, $status);
762
763if ( !empty( $plugins ) && ! in_array( $status, array( 'mustuse', 'dropins' ) ) || $page_links ) {
764?>
765<div class="tablenav">
766<?php
767if ( $page_links )
768 echo "<div class='tablenav-pages'>$page_links_text</div>";
769
770print_plugin_actions($status, "action2");
771?>
772</div>
773<?php } ?>
774</form>
775
776<?php if ( empty($all_plugins) ) : ?>
777<br class="clear" />
778<p><?php _e('You do not appear to have any plugins available at this time.') ?></p>
779<?php endif; ?>
780
781</div>
782
783<?php
784include('./admin-footer.php');
785?>
786
/var/www/wordpress/wp-admin/post-new.php
/var/www/wordpress/wp-admin/post.php
/var/www/wordpress/wp-admin/press-this.php
/var/www/wordpress/wp-admin/profile.php
/var/www/wordpress/wp-admin/revision.php
/var/www/wordpress/wp-admin/setup-config.php
/var/www/wordpress/wp-admin/sidebar.php
/var/www/wordpress/wp-admin/theme-editor.php
/var/www/wordpress/wp-admin/theme-install.php
/var/www/wordpress/wp-admin/themes.php
/var/www/wordpress/wp-admin/tools.php
/var/www/wordpress/wp-admin/update-core.php
/var/www/wordpress/wp-admin/update.php
/var/www/wordpress/wp-admin/upgrade-functions.php
/var/www/wordpress/wp-admin/upgrade.php
/var/www/wordpress/wp-admin/upload.php
/var/www/wordpress/wp-admin/user-edit.php
/var/www/wordpress/wp-admin/user-new.php
/var/www/wordpress/wp-admin/users.php
/var/www/wordpress/wp-admin/widgets.php
/var/www/wordpress/wp-content/languages/ru_RU.php
/var/www/wordpress/wp-content/plugins/akismet/akismet.php
/var/www/wordpress/wp-content/plugins/rh/rh.php
/var/www/wordpress/wp-content/plugins/hello.php
/var/www/wordpress/wp-content/plugins/index.php
/var/www/wordpress/wp-content/themes/twentyten/404.php
/var/www/wordpress/wp-content/themes/twentyten/archive.php
/var/www/wordpress/wp-content/themes/twentyten/attachment.php
/var/www/wordpress/wp-content/themes/twentyten/author.php
/var/www/wordpress/wp-content/themes/twentyten/category.php
/var/www/wordpress/wp-content/themes/twentyten/comments.php
/var/www/wordpress/wp-content/themes/twentyten/footer.php
/var/www/wordpress/wp-content/themes/twentyten/functions.php
/var/www/wordpress/wp-content/themes/twentyten/header.php
/var/www/wordpress/wp-content/themes/twentyten/index.php
/var/www/wordpress/wp-content/themes/twentyten/loop.php
/var/www/wordpress/wp-content/themes/twentyten/onecolumn-page.php
/var/www/wordpress/wp-content/themes/twentyten/page.php
/var/www/wordpress/wp-content/themes/twentyten/search.php
/var/www/wordpress/wp-content/themes/twentyten/sidebar-footer.php
/var/www/wordpress/wp-content/themes/twentyten/sidebar.php
/var/www/wordpress/wp-content/themes/twentyten/single.php
/var/www/wordpress/wp-content/themes/twentyten/tag.php
/var/www/wordpress/wp-content/themes/index.php
/var/www/wordpress/wp-content/index.php
/var/www/wordpress/wp-includes/js/tinymce/langs/wp-langs.php
/var/www/wordpress/wp-includes/js/tinymce/plugins/spellchecker/classes/utils/JSON.php
/var/www/wordpress/wp-includes/js/tinymce/plugins/spellchecker/classes/utils/Logger.php
/var/www/wordpress/wp-includes/js/tinymce/plugins/spellchecker/classes/EnchantSpell.php
/var/www/wordpress/wp-includes/js/tinymce/plugins/spellchecker/classes/GoogleSpell.php
/var/www/wordpress/wp-includes/js/tinymce/plugins/spellchecker/classes/PSpell.php
/var/www/wordpress/wp-includes/js/tinymce/plugins/spellchecker/classes/PSpellShell.php
/var/www/wordpress/wp-includes/js/tinymce/plugins/spellchecker/classes/SpellChecker.php
/var/www/wordpress/wp-includes/js/tinymce/plugins/spellchecker/includes/general.php
/var/www/wordpress/wp-includes/js/tinymce/plugins/spellchecker/config.php
/var/www/wordpress/wp-includes/js/tinymce/plugins/spellchecker/rpc.php
/var/www/wordpress/wp-includes/js/tinymce/wp-mce-help.php
/var/www/wordpress/wp-includes/js/tinymce/wp-tinymce.php
/var/www/wordpress/wp-includes/pomo/entry.php
/var/www/wordpress/wp-includes/pomo/mo.php
/var/www/wordpress/wp-includes/pomo/po.php
/var/www/wordpress/wp-includes/pomo/streams.php
/var/www/wordpress/wp-includes/pomo/translations.php
/var/www/wordpress/wp-includes/Text/Diff/Engine/native.php
/var/www/wordpress/wp-includes/Text/Diff/Engine/shell.php
/var/www/wordpress/wp-includes/Text/Diff/Engine/string.php
/var/www/wordpress/wp-includes/Text/Diff/Engine/xdiff.php
/var/www/wordpress/wp-includes/Text/Diff/Renderer/inline.php
/var/www/wordpress/wp-includes/Text/Diff/Renderer.php
/var/www/wordpress/wp-includes/Text/Diff.php
/var/www/wordpress/wp-includes/theme-compat/comments-popup.php
/var/www/wordpress/wp-includes/theme-compat/comments.php
/var/www/wordpress/wp-includes/theme-compat/footer.php
/var/www/wordpress/wp-includes/theme-compat/header.php
/var/www/wordpress/wp-includes/theme-compat/sidebar.php
/var/www/wordpress/wp-includes/atomlib.php
/var/www/wordpress/wp-includes/author-template.php
/var/www/wordpress/wp-includes/bookmark-template.php
/var/www/wordpress/wp-includes/bookmark.php
/var/www/wordpress/wp-includes/cache.php
/var/www/wordpress/wp-includes/canonical.php
/var/www/wordpress/wp-includes/capabilities.php
/var/www/wordpress/wp-includes/category-template.php
/var/www/wordpress/wp-includes/category.php
/var/www/wordpress/wp-includes/class-feed.php
/var/www/wordpress/wp-includes/class-http.php
/var/www/wordpress/wp-includes/class-IXR.php
/var/www/wordpress/wp-includes/class-json.php
/var/www/wordpress/wp-includes/class-oembed.php
/var/www/wordpress/wp-includes/class-phpass.php
/var/www/wordpress/wp-includes/class-phpmailer.php
/var/www/wordpress/wp-includes/class-pop3.php
/var/www/wordpress/wp-includes/class-simplepie.php
/var/www/wordpress/wp-includes/class-smtp.php
/var/www/wordpress/wp-includes/class-snoopy.php
/var/www/wordpress/wp-includes/class.wp-dependencies.php
/var/www/wordpress/wp-includes/class.wp-scripts.php
/var/www/wordpress/wp-includes/class.wp-styles.php
/var/www/wordpress/wp-includes/classes.php
/var/www/wordpress/wp-includes/comment-template.php
/var/www/wordpress/wp-includes/comment.php
/var/www/wordpress/wp-includes/compat.php
/var/www/wordpress/wp-includes/cron.php
/var/www/wordpress/wp-includes/default-constants.php
/var/www/wordpress/wp-includes/default-embeds.php
/var/www/wordpress/wp-includes/default-filters.php
/var/www/wordpress/wp-includes/default-widgets.php
/var/www/wordpress/wp-includes/deprecated.php
/var/www/wordpress/wp-includes/feed-atom-comments.php
/var/www/wordpress/wp-includes/feed-atom.php
/var/www/wordpress/wp-includes/feed-rdf.php
/var/www/wordpress/wp-includes/feed-rss.php
/var/www/wordpress/wp-includes/feed-rss2-comments.php
/var/www/wordpress/wp-includes/feed-rss2.php
/var/www/wordpress/wp-includes/feed.php
/var/www/wordpress/wp-includes/formatting.php
/var/www/wordpress/wp-includes/functions.php
/var/www/wordpress/wp-includes/functions.wp-scripts.php
/var/www/wordpress/wp-includes/functions.wp-styles.php
/var/www/wordpress/wp-includes/general-template.php
/var/www/wordpress/wp-includes/http.php
/var/www/wordpress/wp-includes/kses.php
/var/www/wordpress/wp-includes/l10n.php
/var/www/wordpress/wp-includes/link-template.php
/var/www/wordpress/wp-includes/load.php
/var/www/wordpress/wp-includes/locale.php
/var/www/wordpress/wp-includes/media.php
/var/www/wordpress/wp-includes/meta.php
/var/www/wordpress/wp-includes/ms-blogs.php
/var/www/wordpress/wp-includes/ms-default-constants.php
/var/www/wordpress/wp-includes/ms-default-filters.php
/var/www/wordpress/wp-includes/ms-deprecated.php
/var/www/wordpress/wp-includes/ms-files.php
/var/www/wordpress/wp-includes/ms-functions.php
/var/www/wordpress/wp-includes/ms-load.php
/var/www/wordpress/wp-includes/ms-settings.php
/var/www/wordpress/wp-includes/nav-menu-template.php
/var/www/wordpress/wp-includes/nav-menu.php
/var/www/wordpress/wp-includes/pluggable-deprecated.php
/var/www/wordpress/wp-includes/pluggable.php
/var/www/wordpress/wp-includes/plugin.php
/var/www/wordpress/wp-includes/post-template.php
/var/www/wordpress/wp-includes/post-thumbnail-template.php
/var/www/wordpress/wp-includes/post.php
/var/www/wordpress/wp-includes/query.php
/var/www/wordpress/wp-includes/registration-functions.php
/var/www/wordpress/wp-includes/registration.php
/var/www/wordpress/wp-includes/rewrite.php
/var/www/wordpress/wp-includes/rss-functions.php
/var/www/wordpress/wp-includes/rss.php
/var/www/wordpress/wp-includes/script-loader.php
/var/www/wordpress/wp-includes/shortcodes.php
/var/www/wordpress/wp-includes/taxonomy.php
/var/www/wordpress/wp-includes/template-loader.php
/var/www/wordpress/wp-includes/theme.php
/var/www/wordpress/wp-includes/update.php
/var/www/wordpress/wp-includes/user.php
/var/www/wordpress/wp-includes/vars.php
/var/www/wordpress/wp-includes/version.php
/var/www/wordpress/wp-includes/widgets.php
/var/www/wordpress/wp-includes/wp-db.php
/var/www/wordpress/wp-includes/wp-diff.php
/var/www/wordpress/index.php
/var/www/wordpress/wp-activate.php
/var/www/wordpress/wp-app.php
/var/www/wordpress/wp-atom.php
/var/www/wordpress/wp-blog-header.php
/var/www/wordpress/wp-comments-post.php
/var/www/wordpress/wp-commentsrss2.php
/var/www/wordpress/wp-config-sample.php
/var/www/wordpress/wp-cron.php
/var/www/wordpress/wp-feed.php
/var/www/wordpress/wp-links-opml.php
/var/www/wordpress/wp-load.php
/var/www/wordpress/wp-login.php
/var/www/wordpress/wp-mail.php
/var/www/wordpress/wp-pass.php
/var/www/wordpress/wp-rdf.php
/var/www/wordpress/wp-register.php
/var/www/wordpress/wp-rss.php
/var/www/wordpress/wp-rss2.php
/var/www/wordpress/wp-settings.php
/var/www/wordpress/wp-signup.php
/var/www/wordpress/wp-trackback.php
/var/www/wordpress/xmlrpc.php