Huge MS refactoring and code cleanup. see #12460. props ocean90.
git-svn-id: http://svn.automattic.com/wordpress/trunk@13918 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
5ca84a117e
commit
d510d0bdc7
|
@ -1,45 +1,3 @@
|
||||||
/* Blog Switcher */
|
|
||||||
|
|
||||||
#all-my-blogs-tab a.current {
|
|
||||||
position: relative;
|
|
||||||
padding-bottom: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#all-my-blogs {
|
|
||||||
position: absolute;
|
|
||||||
top: 30px;
|
|
||||||
left: 0;
|
|
||||||
right: 0;
|
|
||||||
_width: 100%; /* IE6 Hack */
|
|
||||||
margin: 4px 7px;
|
|
||||||
padding: 6px 10px;
|
|
||||||
font-size: 12px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#all-my-blogs * {
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
form#all-my-blogs p, form#all-my-blogs p * {
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
|
||||||
|
|
||||||
#all-my-blogs a {
|
|
||||||
font-size: 10px;
|
|
||||||
text-decoration: underline;
|
|
||||||
margin: 0 14px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#all-my-blogs a:hover, #all-my-blogs a:active {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
form#wpmu-search {
|
|
||||||
position:absolute;
|
|
||||||
right:0;
|
|
||||||
top:0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Site Admin Menu */
|
/* Site Admin Menu */
|
||||||
#adminmenu .menu-icon-site div.wp-menu-image {
|
#adminmenu .menu-icon-site div.wp-menu-image {
|
||||||
background: transparent url('../images/site-admin.png') no-repeat scroll 0px -33px;
|
background: transparent url('../images/site-admin.png') no-repeat scroll 0px -33px;
|
||||||
|
@ -49,7 +7,7 @@ form#wpmu-search {
|
||||||
background: transparent url('../images/site-admin.png') no-repeat scroll 0px -1px;
|
background: transparent url('../images/site-admin.png') no-repeat scroll 0px -1px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Dashboard: MU Specific Data */
|
/* Dashboard: MS Specific Data */
|
||||||
#dashboard_right_now p.musub {
|
#dashboard_right_now p.musub {
|
||||||
margin-top: 12px;
|
margin-top: 12px;
|
||||||
border-top: 1px solid #ececec;
|
border-top: 1px solid #ececec;
|
||||||
|
@ -59,12 +17,32 @@ form#wpmu-search {
|
||||||
#dashboard_right_now td.b a.musublink {
|
#dashboard_right_now td.b a.musublink {
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#dashboard_right_now div.musubtable {
|
||||||
|
border-top: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* No drag and drop on ms-sites.php */
|
||||||
|
.ms-sites-php .postbox h3 {
|
||||||
|
cursor: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ms-sites-php .postbox .description {
|
||||||
|
margin:10px 0 0px;
|
||||||
|
padding:0px 10px 10px;
|
||||||
|
border-bottom:1px solid #DFDFDF;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Background Color for Site Status */
|
||||||
tr.site-deleted {
|
tr.site-deleted {
|
||||||
background:#f55;
|
background: #ff8573;
|
||||||
}
|
}
|
||||||
tr.site-spammed {
|
tr.site-spammed {
|
||||||
background:#faa;
|
background: #faa;
|
||||||
}
|
}
|
||||||
tr.site-archived {
|
tr.site-archived {
|
||||||
background:#fee;
|
background:#ffebe8;
|
||||||
|
}
|
||||||
|
tr.site-mature {
|
||||||
|
background: #fecac2;
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,7 @@ function check_upload_size( $file ) {
|
||||||
if ( $file_size > ( 1024 * get_site_option( 'fileupload_maxk', 1500 ) ) )
|
if ( $file_size > ( 1024 * get_site_option( 'fileupload_maxk', 1500 ) ) )
|
||||||
$file['error'] = sprintf(__('This file is too big. Files must be less than %1$s Kb in size.'), get_site_option( 'fileupload_maxk', 1500 ) );
|
$file['error'] = sprintf(__('This file is too big. Files must be less than %1$s Kb in size.'), get_site_option( 'fileupload_maxk', 1500 ) );
|
||||||
if ( upload_is_user_over_quota( false ) ) {
|
if ( upload_is_user_over_quota( false ) ) {
|
||||||
$file['error'] = __('You have used your space quota. Please delete files before uploading.');
|
$file['error'] = __( 'You have used your space quota. Please delete files before uploading.' );
|
||||||
}
|
}
|
||||||
if ( $file['error'] != '0' )
|
if ( $file['error'] != '0' )
|
||||||
wp_die( $file['error'] . ' <a href="javascript:history.go(-1)">' . __( 'Back' ) . '</a>' );
|
wp_die( $file['error'] . ' <a href="javascript:history.go(-1)">' . __( 'Back' ) . '</a>' );
|
||||||
|
@ -45,74 +45,77 @@ add_filter( 'wp_handle_upload_prefilter', 'check_upload_size' );
|
||||||
* @param bool $drop True if blog's table should be dropped. Default is false.
|
* @param bool $drop True if blog's table should be dropped. Default is false.
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function wpmu_delete_blog($blog_id, $drop = false) {
|
function wpmu_delete_blog( $blog_id, $drop = false ) {
|
||||||
global $wpdb;
|
global $wpdb;
|
||||||
|
|
||||||
$switched = false;
|
$switch = false;
|
||||||
if ( $blog_id != $wpdb->blogid ) {
|
if ( $blog_id != $wpdb->blogid ) {
|
||||||
$switch = true;
|
$switch = true;
|
||||||
switch_to_blog($blog_id);
|
switch_to_blog( $blog_id );
|
||||||
}
|
}
|
||||||
|
|
||||||
do_action('delete_blog', $blog_id, $drop);
|
$blog_prefix = $wpdb->get_blog_prefix( $blog_id );
|
||||||
|
|
||||||
$users = get_users_of_blog($blog_id);
|
do_action( 'delete_blog', $blog_id, $drop );
|
||||||
|
|
||||||
|
$users = get_users_of_blog( $blog_id );
|
||||||
|
|
||||||
// Remove users from this blog.
|
// Remove users from this blog.
|
||||||
if ( !empty($users) ) {
|
if ( ! empty( $users ) ) {
|
||||||
foreach ($users as $user) {
|
foreach ( $users as $user ) {
|
||||||
remove_user_from_blog($user->user_id, $blog_id);
|
remove_user_from_blog( $user->user_id, $blog_id) ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
update_blog_status( $blog_id, 'deleted', 1 );
|
update_blog_status( $blog_id, 'deleted', 1 );
|
||||||
|
|
||||||
if ( $drop ) {
|
if ( $drop ) {
|
||||||
$drop_tables = $wpdb->get_results("show tables LIKE '". $wpdb->base_prefix . $blog_id . "\_%'", ARRAY_A);
|
$drop_tables = $wpdb->get_results( "SHOW TABLES LIKE '{$blog_prefix}%'", ARRAY_A );
|
||||||
$drop_tables = apply_filters( 'wpmu_drop_tables', $drop_tables );
|
$drop_tables = apply_filters( 'wpmu_drop_tables', $drop_tables );
|
||||||
|
|
||||||
reset( $drop_tables );
|
reset( $drop_tables );
|
||||||
foreach ( (array) $drop_tables as $drop_table) {
|
foreach ( (array) $drop_tables as $drop_table) {
|
||||||
$wpdb->query( "DROP TABLE IF EXISTS ". current( $drop_table ) ."" );
|
$wpdb->query( "DROP TABLE IF EXISTS ". current( $drop_table ) ."" );
|
||||||
}
|
}
|
||||||
$wpdb->query( $wpdb->prepare("DELETE FROM $wpdb->blogs WHERE blog_id = %d", $blog_id) );
|
$wpdb->query( $wpdb->prepare( "DELETE FROM $wpdb->blogs WHERE blog_id = %d", $blog_id ) );
|
||||||
$dir = apply_filters( 'wpmu_delete_blog_upload_dir', WP_CONTENT_DIR . "/blogs.dir/{$blog_id}/files/", $blog_id );
|
$dir = apply_filters( 'wpmu_delete_blog_upload_dir', WP_CONTENT_DIR . "/blogs.dir/{$blog_id}/files/", $blog_id );
|
||||||
$dir = rtrim($dir, DIRECTORY_SEPARATOR);
|
$dir = rtrim( $dir, DIRECTORY_SEPARATOR );
|
||||||
$top_dir = $dir;
|
$top_dir = $dir;
|
||||||
$stack = array($dir);
|
$stack = array($dir);
|
||||||
$index = 0;
|
$index = 0;
|
||||||
|
|
||||||
while ( $index < count($stack) ) {
|
while ( $index < count( $stack ) ) {
|
||||||
# Get indexed directory from stack
|
# Get indexed directory from stack
|
||||||
$dir = $stack[$index];
|
$dir = $stack[$index];
|
||||||
|
|
||||||
$dh = @ opendir($dir);
|
$dh = @opendir( $dir );
|
||||||
if ( $dh ) {
|
if ( $dh ) {
|
||||||
while ( ($file = @ readdir($dh)) !== false ) {
|
while ( ( $file = @readdir( $dh ) ) !== false ) {
|
||||||
if ($file == '.' or $file == '..')
|
if ( $file == '.' || $file == '..' )
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (@ is_dir($dir . DIRECTORY_SEPARATOR . $file))
|
if ( @is_dir( $dir . DIRECTORY_SEPARATOR . $file ) )
|
||||||
$stack[] = $dir . DIRECTORY_SEPARATOR . $file;
|
$stack[] = $dir . DIRECTORY_SEPARATOR . $file;
|
||||||
else if (@ is_file($dir . DIRECTORY_SEPARATOR . $file))
|
else if ( @is_file( $dir . DIRECTORY_SEPARATOR . $file ) )
|
||||||
@ unlink($dir . DIRECTORY_SEPARATOR . $file);
|
@unlink( $dir . DIRECTORY_SEPARATOR . $file );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$index++;
|
$index++;
|
||||||
}
|
}
|
||||||
|
|
||||||
$stack = array_reverse($stack); // Last added dirs are deepest
|
$stack = array_reverse( $stack ); // Last added dirs are deepest
|
||||||
foreach( (array) $stack as $dir ) {
|
foreach( (array) $stack as $dir ) {
|
||||||
if ( $dir != $top_dir)
|
if ( $dir != $top_dir)
|
||||||
@rmdir($dir);
|
@rmdir( $dir );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$wpdb->query( $wpdb->prepare("DELETE FROM {$wpdb->usermeta} WHERE meta_key = %s", 'wp_{$blog_id}_autosave_draft_ids') );
|
|
||||||
$blogs = get_site_option( "blog_list" );
|
$wpdb->query( "DELETE FROM {$wpdb->usermeta} WHERE meta_key = '{$blog_prefix}autosave_draft_ids'" );
|
||||||
|
$blogs = get_site_option( 'blog_list' );
|
||||||
if ( is_array( $blogs ) ) {
|
if ( is_array( $blogs ) ) {
|
||||||
foreach ( $blogs as $n => $blog ) {
|
foreach ( $blogs as $n => $blog ) {
|
||||||
if ( $blog[ 'blog_id' ] == $blog_id )
|
if ( $blog['blog_id'] == $blog_id )
|
||||||
unset( $blogs[ $n ] );
|
unset( $blogs[$n] );
|
||||||
}
|
}
|
||||||
update_site_option( 'blog_list', $blogs );
|
update_site_option( 'blog_list', $blogs );
|
||||||
}
|
}
|
||||||
|
@ -122,44 +125,44 @@ function wpmu_delete_blog($blog_id, $drop = false) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// @todo Merge with wp_delete_user() ?
|
// @todo Merge with wp_delete_user() ?
|
||||||
function wpmu_delete_user($id) {
|
function wpmu_delete_user( $id ) {
|
||||||
global $wpdb;
|
global $wpdb;
|
||||||
|
|
||||||
$id = (int) $id;
|
$id = (int) $id;
|
||||||
|
|
||||||
do_action('wpmu_delete_user', $id);
|
do_action( 'wpmu_delete_user', $id );
|
||||||
|
|
||||||
$blogs = get_blogs_of_user($id);
|
$blogs = get_blogs_of_user( $id );
|
||||||
|
|
||||||
if ( ! empty($blogs) ) {
|
if ( ! empty( $blogs ) ) {
|
||||||
foreach ($blogs as $blog) {
|
foreach ( $blogs as $blog ) {
|
||||||
switch_to_blog($blog->userblog_id);
|
switch_to_blog( $blog->userblog_id );
|
||||||
remove_user_from_blog($id, $blog->userblog_id);
|
remove_user_from_blog( $id, $blog->userblog_id );
|
||||||
|
|
||||||
$post_ids = $wpdb->get_col( $wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE post_author = %d", $id ) );
|
$post_ids = $wpdb->get_col( $wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE post_author = %d", $id ) );
|
||||||
foreach ( (array) $post_ids as $post_id ) {
|
foreach ( (array) $post_ids as $post_id ) {
|
||||||
wp_delete_post($post_id);
|
wp_delete_post( $post_id );
|
||||||
}
|
}
|
||||||
|
|
||||||
// Clean links
|
// Clean links
|
||||||
$link_ids = $wpdb->get_col( $wpdb->prepare("SELECT link_id FROM $wpdb->links WHERE link_owner = %d", $id) );
|
$link_ids = $wpdb->get_col( $wpdb->prepare( "SELECT link_id FROM $wpdb->links WHERE link_owner = %d", $id ) );
|
||||||
|
|
||||||
if ( $link_ids ) {
|
if ( $link_ids ) {
|
||||||
foreach ( $link_ids as $link_id )
|
foreach ( $link_ids as $link_id )
|
||||||
wp_delete_link($link_id);
|
wp_delete_link( $link_id );
|
||||||
}
|
}
|
||||||
|
|
||||||
restore_current_blog();
|
restore_current_blog();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$wpdb->query( $wpdb->prepare("DELETE FROM $wpdb->users WHERE ID = %d", $id) );
|
$wpdb->query( $wpdb->prepare( "DELETE FROM $wpdb->users WHERE ID = %d", $id ) );
|
||||||
$wpdb->query( $wpdb->prepare("DELETE FROM $wpdb->usermeta WHERE user_id = %d", $id) );
|
$wpdb->query( $wpdb->prepare( "DELETE FROM $wpdb->usermeta WHERE user_id = %d", $id ) );
|
||||||
|
|
||||||
clean_user_cache($id);
|
clean_user_cache( $id );
|
||||||
|
|
||||||
// allow for commit transaction
|
// allow for commit transaction
|
||||||
do_action('deleted_user', $id);
|
do_action( 'deleted_user', $id );
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -169,14 +172,14 @@ function confirm_delete_users( $users ) {
|
||||||
if ( !is_array( $users ) )
|
if ( !is_array( $users ) )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
screen_icon('tools');
|
screen_icon();
|
||||||
?>
|
?>
|
||||||
<h2><?php esc_html_e('Users'); ?></h2>
|
<h2><?php esc_html_e( 'Users' ); ?></h2>
|
||||||
<p><?php _e( 'Transfer posts before deleting users:' ); ?></p>
|
<p><?php _e( 'Transfer or delete posts and links before deleting users.' ); ?></p>
|
||||||
<form action="ms-edit.php?action=allusers" method="post">
|
<form action="ms-edit.php?action=dodelete" method="post">
|
||||||
<input type="hidden" name="alluser_transfer_delete" />
|
<input type="hidden" name="dodelete" />
|
||||||
<?php
|
<?php
|
||||||
wp_nonce_field( 'allusers' );
|
wp_nonce_field( 'ms-users-delete' );
|
||||||
$site_admins = get_site_option( 'site_admins', array( 'admin' ) );
|
$site_admins = get_site_option( 'site_admins', array( 'admin' ) );
|
||||||
$admin_out = "<option value='$current_user->ID'>$current_user->user_login</option>";
|
$admin_out = "<option value='$current_user->ID'>$current_user->user_login</option>";
|
||||||
|
|
||||||
|
@ -191,29 +194,40 @@ function confirm_delete_users( $users ) {
|
||||||
$blogs = get_blogs_of_user( $val, true );
|
$blogs = get_blogs_of_user( $val, true );
|
||||||
|
|
||||||
if ( !empty( $blogs ) ) {
|
if ( !empty( $blogs ) ) {
|
||||||
echo '<p><strong>' . sprintf( __( 'Sites from %s:' ), $delete_user->user_login ) . '</strong></p>';
|
?>
|
||||||
|
<br /><fieldset><p><legend><?php printf( __( "What should be done with posts and links owned by <em>%s</em>?" ), $delete_user->user_login ); ?></legend></p>
|
||||||
|
<?php
|
||||||
foreach ( (array) $blogs as $key => $details ) {
|
foreach ( (array) $blogs as $key => $details ) {
|
||||||
$blog_users = get_users_of_blog( $details->userblog_id );
|
$blog_users = get_users_of_blog( $details->userblog_id );
|
||||||
if ( is_array( $blog_users ) && !empty( $blog_users ) ) {
|
if ( is_array( $blog_users ) && !empty( $blog_users ) ) {
|
||||||
echo "<p><a href='http://{$details->domain}{$details->path}'>{$details->blogname}</a> ";
|
$user_site = "<a href='" . esc_url( get_home_url( $details->userblog_id ) ) . "'>{$details->blogname}</a>";
|
||||||
echo "<select name='blog[$val][{$key}]'>";
|
$user_dropdown = "<select name='blog[$val][{$key}]'>";
|
||||||
$out = '';
|
$user_list = '';
|
||||||
foreach ( $blog_users as $user ) {
|
foreach ( $blog_users as $user ) {
|
||||||
if ( $user->user_id != $val && !in_array( $user->user_id, $allusers ) )
|
if ( $user->user_id != $val && !in_array( $user->user_id, $allusers ) )
|
||||||
$out .= "<option value='{$user->user_id}'>{$user->user_login}</option>";
|
$user_list .= "<option value='{$user->user_id}'>{$user->user_login}</option>";
|
||||||
}
|
}
|
||||||
if ( $out == '' )
|
if ( '' == $user_list )
|
||||||
$out = $admin_out;
|
$user_list = $admin_out;
|
||||||
echo $out;
|
$user_dropdown .= $user_list;
|
||||||
echo "</select>\n";
|
$user_dropdown .= "</select>\n";
|
||||||
|
?>
|
||||||
|
<ul style="list-style:none;">
|
||||||
|
<li><?php printf( __( 'Site: %s' ), $user_site ); ?></li>
|
||||||
|
<li><label><input type="radio" id="delete_option0" name="delete[<?php echo $details->userblog_id . '][' . $delete_user->ID ?>]" value="delete" checked="checked" />
|
||||||
|
<?php _e( 'Delete all posts and links.' ); ?></label></li>
|
||||||
|
<li><label><input type="radio" id="delete_option1" name="delete[<?php echo $details->userblog_id . '][' . $delete_user->ID ?>]" value="reassign" />
|
||||||
|
<?php echo __( 'Attribute all posts and links to:' ) . '</label>' . $user_dropdown; ?></li>
|
||||||
|
</ul>
|
||||||
|
<?php
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
echo "</fieldset>";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<br class="clear" />
|
<p class="submit"><input type="submit" class="button-secondary delete" value="<?php esc_attr_e( 'Confirm Deletion' ); ?>" /></p>
|
||||||
<input type="submit" class="button-secondary delete" value="<?php _e( 'Delete user and transfer posts' ); ?> " />
|
|
||||||
</form>
|
</form>
|
||||||
<?php
|
<?php
|
||||||
return true;
|
return true;
|
||||||
|
@ -225,20 +239,20 @@ function wpmu_get_blog_allowedthemes( $blog_id = 0 ) {
|
||||||
if ( $blog_id != 0 )
|
if ( $blog_id != 0 )
|
||||||
switch_to_blog( $blog_id );
|
switch_to_blog( $blog_id );
|
||||||
|
|
||||||
$blog_allowed_themes = get_option( "allowedthemes" );
|
$blog_allowed_themes = get_option( 'allowedthemes' );
|
||||||
if ( !is_array( $blog_allowed_themes ) || empty( $blog_allowed_themes ) ) { // convert old allowed_themes to new allowedthemes
|
if ( !is_array( $blog_allowed_themes ) || empty( $blog_allowed_themes ) ) { // convert old allowed_themes to new allowedthemes
|
||||||
$blog_allowed_themes = get_option( "allowed_themes" );
|
$blog_allowed_themes = get_option( 'allowed_themes' );
|
||||||
|
|
||||||
if ( is_array( $blog_allowed_themes ) ) {
|
if ( is_array( $blog_allowed_themes ) ) {
|
||||||
foreach( (array) $themes as $key => $theme ) {
|
foreach( (array) $themes as $key => $theme ) {
|
||||||
$theme_key = esc_html( $theme[ 'Stylesheet' ] );
|
$theme_key = esc_html( $theme['Stylesheet'] );
|
||||||
if ( isset( $blog_allowed_themes[ $key ] ) == true ) {
|
if ( isset( $blog_allowed_themes[$key] ) == true ) {
|
||||||
$blog_allowedthemes[ $theme_key ] = 1;
|
$blog_allowedthemes[$theme_key] = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$blog_allowed_themes = $blog_allowedthemes;
|
$blog_allowed_themes = $blog_allowedthemes;
|
||||||
add_option( "allowedthemes", $blog_allowed_themes );
|
add_option( 'allowedthemes', $blog_allowed_themes );
|
||||||
delete_option( "allowed_themes" );
|
delete_option( 'allowed_themes' );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -248,18 +262,18 @@ function wpmu_get_blog_allowedthemes( $blog_id = 0 ) {
|
||||||
return $blog_allowed_themes;
|
return $blog_allowed_themes;
|
||||||
}
|
}
|
||||||
|
|
||||||
function update_option_new_admin_email($old_value, $value) {
|
function update_option_new_admin_email( $old_value, $value ) {
|
||||||
if ( $value == get_option( 'admin_email' ) || !is_email( $value ) )
|
if ( $value == get_option( 'admin_email' ) || !is_email( $value ) )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
$hash = md5( $value. time() .mt_rand() );
|
$hash = md5( $value. time() .mt_rand() );
|
||||||
$new_admin_email = array(
|
$new_admin_email = array(
|
||||||
"hash" => $hash,
|
'hash' => $hash,
|
||||||
"newemail" => $value
|
'newemail' => $value
|
||||||
);
|
);
|
||||||
update_option( 'adminhash', $new_admin_email );
|
update_option( 'adminhash', $new_admin_email );
|
||||||
|
|
||||||
$content = apply_filters( 'new_admin_email_content', __("Dear user,
|
$content = apply_filters( 'new_admin_email_content', __( "Dear user,
|
||||||
|
|
||||||
You recently requested to have the administration email address on
|
You recently requested to have the administration email address on
|
||||||
your site changed.
|
your site changed.
|
||||||
|
@ -273,45 +287,45 @@ This email has been sent to ###EMAIL###
|
||||||
|
|
||||||
Regards,
|
Regards,
|
||||||
All at ###SITENAME###
|
All at ###SITENAME###
|
||||||
###SITEURL###"), $new_admin_email );
|
###SITEURL### "), $new_admin_email );
|
||||||
|
|
||||||
$content = str_replace('###ADMIN_URL###', esc_url(admin_url('options.php?adminhash='.$hash)), $content);
|
$content = str_replace( '###ADMIN_URL###', esc_url( admin_url( 'options.php?adminhash='.$hash ) ), $content );
|
||||||
$content = str_replace('###EMAIL###', $value, $content);
|
$content = str_replace( '###EMAIL###', $value, $content );
|
||||||
$content = str_replace('###SITENAME###', get_site_option( 'site_name' ), $content);
|
$content = str_replace( '###SITENAME###', get_site_option( 'site_name' ), $content );
|
||||||
$content = str_replace('###SITEURL###', network_home_url(), $content);
|
$content = str_replace( '###SITEURL###', network_home_url(), $content );
|
||||||
|
|
||||||
wp_mail( $value, sprintf(__('[%s] New Admin Email Address'), get_option('blogname')), $content );
|
wp_mail( $value, sprintf( __( '[%s] New Admin Email Address' ), get_option( 'blogname' ) ), $content );
|
||||||
}
|
}
|
||||||
add_action('update_option_new_admin_email', 'update_option_new_admin_email', 10, 2);
|
add_action( 'update_option_new_admin_email', 'update_option_new_admin_email', 10, 2 );
|
||||||
|
|
||||||
function send_confirmation_on_profile_email() {
|
function send_confirmation_on_profile_email() {
|
||||||
global $errors, $wpdb, $current_user;
|
global $errors, $wpdb, $current_user;
|
||||||
if ( ! is_object($errors) )
|
if ( ! is_object($errors) )
|
||||||
$errors = new WP_Error();
|
$errors = new WP_Error();
|
||||||
|
|
||||||
if ( $current_user->id != $_POST[ 'user_id' ] )
|
if ( $current_user->id != $_POST['user_id'] )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if ( $current_user->user_email != $_POST[ 'email' ] ) {
|
if ( $current_user->user_email != $_POST['email'] ) {
|
||||||
if ( !is_email( $_POST[ 'email' ] ) ) {
|
if ( !is_email( $_POST['email'] ) ) {
|
||||||
$errors->add( 'user_email', __( "<strong>ERROR</strong>: The e-mail address isn't correct." ), array( 'form-field' => 'email' ) );
|
$errors->add( 'user_email', __( "<strong>ERROR</strong>: The e-mail address isn't correct." ), array( 'form-field' => 'email' ) );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $wpdb->get_var( $wpdb->prepare( "SELECT user_email FROM {$wpdb->users} WHERE user_email=%s", $_POST[ 'email' ] ) ) ) {
|
if ( $wpdb->get_var( $wpdb->prepare( "SELECT user_email FROM {$wpdb->users} WHERE user_email=%s", $_POST['email'] ) ) ) {
|
||||||
$errors->add( 'user_email', __( "<strong>ERROR</strong>: The e-mail address is already used." ), array( 'form-field' => 'email' ) );
|
$errors->add( 'user_email', __( "<strong>ERROR</strong>: The e-mail address is already used." ), array( 'form-field' => 'email' ) );
|
||||||
delete_option( $current_user->ID . '_new_email' );
|
delete_option( $current_user->ID . '_new_email' );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$hash = md5( $_POST[ 'email' ] . time() . mt_rand() );
|
$hash = md5( $_POST['email'] . time() . mt_rand() );
|
||||||
$new_user_email = array(
|
$new_user_email = array(
|
||||||
"hash" => $hash,
|
'hash' => $hash,
|
||||||
"newemail" => $_POST[ 'email' ]
|
'newemail' => $_POST['email']
|
||||||
);
|
);
|
||||||
update_option( $current_user->ID . '_new_email', $new_user_email );
|
update_option( $current_user->ID . '_new_email', $new_user_email );
|
||||||
|
|
||||||
$content = apply_filters( 'new_user_email_content', __("Dear user,
|
$content = apply_filters( 'new_user_email_content', __( "Dear user,
|
||||||
|
|
||||||
You recently requested to have the email address on your account changed.
|
You recently requested to have the email address on your account changed.
|
||||||
If this is correct, please click on the following link to change it:
|
If this is correct, please click on the following link to change it:
|
||||||
|
@ -324,23 +338,23 @@ This email has been sent to ###EMAIL###
|
||||||
|
|
||||||
Regards,
|
Regards,
|
||||||
All at ###SITENAME###
|
All at ###SITENAME###
|
||||||
###SITEURL###"), $new_user_email );
|
###SITEURL###" ), $new_user_email );
|
||||||
|
|
||||||
$content = str_replace('###ADMIN_URL###', esc_url(admin_url('profile.php?newuseremail='.$hash)), $content);
|
$content = str_replace( '###ADMIN_URL###', esc_url( admin_url( 'profile.php?newuseremail='.$hash ) ), $content );
|
||||||
$content = str_replace('###EMAIL###', $_POST[ 'email' ], $content);
|
$content = str_replace( '###EMAIL###', $_POST['email'], $content);
|
||||||
$content = str_replace('###SITENAME###', get_site_option( 'site_name' ), $content);
|
$content = str_replace( '###SITENAME###', get_site_option( 'site_name' ), $content );
|
||||||
$content = str_replace('###SITEURL###', network_home_url(), $content);
|
$content = str_replace( '###SITEURL###', network_home_url(), $content );
|
||||||
|
|
||||||
wp_mail( $_POST[ 'email' ], sprintf(__('[%s] New Email Address'), get_option('blogname')), $content );
|
wp_mail( $_POST['email'], sprintf( __( '[%s] New Email Address' ), get_option( 'blogname' ) ), $content );
|
||||||
$_POST[ 'email' ] = $current_user->user_email;
|
$_POST['email'] = $current_user->user_email;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
add_action( 'personal_options_update', 'send_confirmation_on_profile_email' );
|
add_action( 'personal_options_update', 'send_confirmation_on_profile_email' );
|
||||||
|
|
||||||
function new_user_email_admin_notice() {
|
function new_user_email_admin_notice() {
|
||||||
global $current_user;
|
global $current_user;
|
||||||
if ( strpos( $_SERVER['PHP_SELF'], 'profile.php' ) && isset( $_GET[ 'updated' ] ) && $email = get_option( $current_user->ID . '_new_email' ) )
|
if ( strpos( $_SERVER['PHP_SELF'], 'profile.php' ) && isset( $_GET['updated'] ) && $email = get_option( $current_user->ID . '_new_email' ) )
|
||||||
echo "<div id='update-nag'>" . sprintf( __( "Your email address has not been updated yet. Please check your inbox at %s for a confirmation email." ), $email[ 'newemail' ] ) . "</div>";
|
echo "<div id='update-nag'>" . sprintf( __( "Your email address has not been updated yet. Please check your inbox at %s for a confirmation email." ), $email['newemail'] ) . "</div>";
|
||||||
}
|
}
|
||||||
add_action( 'admin_notices', 'new_user_email_admin_notice' );
|
add_action( 'admin_notices', 'new_user_email_admin_notice' );
|
||||||
|
|
||||||
|
@ -348,12 +362,12 @@ function get_site_allowed_themes() {
|
||||||
$themes = get_themes();
|
$themes = get_themes();
|
||||||
$allowed_themes = get_site_option( 'allowedthemes' );
|
$allowed_themes = get_site_option( 'allowedthemes' );
|
||||||
if ( !is_array( $allowed_themes ) || empty( $allowed_themes ) ) {
|
if ( !is_array( $allowed_themes ) || empty( $allowed_themes ) ) {
|
||||||
$allowed_themes = get_site_option( "allowed_themes" ); // convert old allowed_themes format
|
$allowed_themes = get_site_option( 'allowed_themes' ); // convert old allowed_themes format
|
||||||
if ( !is_array( $allowed_themes ) ) {
|
if ( !is_array( $allowed_themes ) ) {
|
||||||
$allowed_themes = array();
|
$allowed_themes = array();
|
||||||
} else {
|
} else {
|
||||||
foreach( (array) $themes as $key => $theme ) {
|
foreach( (array) $themes as $key => $theme ) {
|
||||||
$theme_key = esc_html( $theme[ 'Stylesheet' ] );
|
$theme_key = esc_html( $theme['Stylesheet'] );
|
||||||
if ( isset( $allowed_themes[ $key ] ) == true ) {
|
if ( isset( $allowed_themes[ $key ] ) == true ) {
|
||||||
$allowedthemes[ $theme_key ] = 1;
|
$allowedthemes[ $theme_key ] = 1;
|
||||||
}
|
}
|
||||||
|
@ -376,25 +390,25 @@ function is_upload_space_available() {
|
||||||
$space_allowed = get_space_allowed();
|
$space_allowed = get_space_allowed();
|
||||||
|
|
||||||
$dir_name = trailingslashit( BLOGUPLOADDIR );
|
$dir_name = trailingslashit( BLOGUPLOADDIR );
|
||||||
if ( !(is_dir($dir_name) && is_readable($dir_name)) )
|
if ( !( is_dir( $dir_name) && is_readable( $dir_name ) ) )
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
$dir = dir($dir_name);
|
$dir = dir( $dir_name );
|
||||||
$size = 0;
|
$size = 0;
|
||||||
|
|
||||||
while ( $file = $dir->read() ) {
|
while ( $file = $dir->read() ) {
|
||||||
if ( $file != '.' && $file != '..' ) {
|
if ( $file != '.' && $file != '..' ) {
|
||||||
if ( is_dir( $dir_name . $file) ) {
|
if ( is_dir( $dir_name . $file) ) {
|
||||||
$size += get_dirsize($dir_name . $file);
|
$size += get_dirsize( $dir_name . $file );
|
||||||
} else {
|
} else {
|
||||||
$size += filesize($dir_name . $file);
|
$size += filesize( $dir_name . $file );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$dir->close();
|
$dir->close();
|
||||||
$size = $size / 1024 / 1024;
|
$size = $size / 1024 / 1024;
|
||||||
|
|
||||||
if ( ($space_allowed - $size) <= 0 )
|
if ( ( $space_allowed - $size ) <= 0 )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
@ -406,10 +420,10 @@ function is_upload_space_available() {
|
||||||
* @return int Quota
|
* @return int Quota
|
||||||
*/
|
*/
|
||||||
function get_space_allowed() {
|
function get_space_allowed() {
|
||||||
$space_allowed = get_option('blog_upload_space');
|
$space_allowed = get_option( 'blog_upload_space' );
|
||||||
if ( $space_allowed == false )
|
if ( $space_allowed == false )
|
||||||
$space_allowed = get_site_option('blog_upload_space');
|
$space_allowed = get_site_option( 'blog_upload_space' );
|
||||||
if ( empty($space_allowed) || !is_numeric($space_allowed) )
|
if ( empty( $space_allowed ) || !is_numeric( $space_allowed ) )
|
||||||
$space_allowed = 50;
|
$space_allowed = 50;
|
||||||
|
|
||||||
return $space_allowed;
|
return $space_allowed;
|
||||||
|
@ -417,7 +431,7 @@ function get_space_allowed() {
|
||||||
|
|
||||||
function display_space_usage() {
|
function display_space_usage() {
|
||||||
$space = get_space_allowed();
|
$space = get_space_allowed();
|
||||||
$used = get_dirsize( BLOGUPLOADDIR )/1024/1024;
|
$used = get_dirsize( BLOGUPLOADDIR ) / 1024 / 1024;
|
||||||
|
|
||||||
if ( $used > $space )
|
if ( $used > $space )
|
||||||
$percentused = '100';
|
$percentused = '100';
|
||||||
|
@ -426,12 +440,12 @@ function display_space_usage() {
|
||||||
|
|
||||||
if ( $space > 1000 ) {
|
if ( $space > 1000 ) {
|
||||||
$space = number_format( $space / 1024 );
|
$space = number_format( $space / 1024 );
|
||||||
$space .= __('GB');
|
$space .= __( 'GB' );
|
||||||
} else {
|
} else {
|
||||||
$space .= __('MB');
|
$space .= __( 'MB' );
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<strong><?php printf(__('Used: %1s%% of %2s'), number_format($percentused), $space );?></strong>
|
<strong><?php printf( __( 'Used: %1s%% of %2s' ), number_format( $percentused ), $space );?></strong>
|
||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -441,47 +455,54 @@ function dashboard_quota() {
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
$quota = get_space_allowed();
|
$quota = get_space_allowed();
|
||||||
$used = get_dirsize( BLOGUPLOADDIR )/1024/1024;
|
$used = get_dirsize( BLOGUPLOADDIR ) / 1024 / 1024;
|
||||||
|
|
||||||
if ( $used > $quota )
|
if ( $used > $quota )
|
||||||
$percentused = '100';
|
$percentused = '100';
|
||||||
else
|
else
|
||||||
$percentused = ( $used / $quota ) * 100;
|
$percentused = ( $used / $quota ) * 100;
|
||||||
$used_color = ( $percentused < 70 ) ? ( ( $percentused >= 40 ) ? 'waiting' : 'approved') : 'spam';
|
$used_color = ( $percentused < 70 ) ? ( ( $percentused >= 40 ) ? 'waiting' : 'approved' ) : 'spam';
|
||||||
$used = round( $used, 2 );
|
$used = round( $used, 2 );
|
||||||
$percentused = number_format( $percentused );
|
$percentused = number_format( $percentused );
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<p class="sub musub"><?php _e('Storage Space'); ?></p>
|
<p class="sub musub"><?php _e( 'Storage Space' ); ?></p>
|
||||||
<div class="table">
|
<div class="table table_content musubtable">
|
||||||
<table>
|
<table>
|
||||||
<tr class="first">
|
<tr class="first">
|
||||||
<td class="first b b-posts"><?php printf( __( '<a href="upload.php" title="Manage Uploads" class="musublink">%sMB</a>' ), $quota ); ?></td>
|
<td class="first b b-posts"><?php printf( __( '<a href="' . esc_url( admin_url( 'upload.php' ) ) . '" title="Manage Uploads" class="musublink">%sMB</a>' ), $quota ); ?></td>
|
||||||
<td class="t posts"><?php _e('Space Allowed'); ?></td>
|
<td class="t posts"><?php _e( 'Space Allowed' ); ?></td>
|
||||||
<td class="b b-comments"><?php printf( __( '<a href="upload.php" title="Manage Uploads" class="musublink">%1sMB (%2$s%%)</a>' ), $used, $percentused ); ?></td>
|
|
||||||
<td class="last t comments <?php echo $used_color;?>"><?php _e('Space Used');?></td>
|
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="table table_discussion musubtable">
|
||||||
|
<table>
|
||||||
|
<tr class="first">
|
||||||
|
<td class="b b-comments"><?php printf( __( '<a href="' . esc_url( admin_url( 'upload.php' ) ) . '" title="Manage Uploads" class="musublink">%1sMB (%2$s%%)</a>' ), $used, $percentused ); ?></td>
|
||||||
|
<td class="last t comments <?php echo $used_color;?>"><?php _e( 'Space Used' );?></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<br class="clear" />
|
||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
if ( current_user_can('edit_posts') )
|
if ( current_user_can( 'edit_posts' ) )
|
||||||
add_action('activity_box_end', 'dashboard_quota');
|
add_action( 'activity_box_end', 'dashboard_quota' );
|
||||||
|
|
||||||
// Edit blog upload space setting on Edit Blog page
|
// Edit blog upload space setting on Edit Blog page
|
||||||
function upload_space_setting( $id ) {
|
function upload_space_setting( $id ) {
|
||||||
$quota = get_blog_option($id, "blog_upload_space");
|
$quota = get_blog_option( $id, 'blog_upload_space' );
|
||||||
if ( !$quota )
|
if ( !$quota )
|
||||||
$quota = '';
|
$quota = '';
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<th><?php _e('Site Upload Space Quota'); ?></th>
|
<th><?php _e( 'Site Upload Space Quota '); ?></th>
|
||||||
<td><input type="text" size="3" name="option[blog_upload_space]" value="<?php echo $quota; ?>" /><?php _e('MB (Leave blank for network default)'); ?></td>
|
<td><input type="text" size="3" name="option[blog_upload_space]" value="<?php echo $quota; ?>" /> <?php _e( 'MB (Leave blank for network default)' ); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
add_action('wpmueditblogaction', 'upload_space_setting');
|
add_action( 'wpmueditblogaction', 'upload_space_setting' );
|
||||||
|
|
||||||
function update_user_status( $id, $pref, $value, $refresh = 1 ) {
|
function update_user_status( $id, $pref, $value, $refresh = 1 ) {
|
||||||
global $wpdb;
|
global $wpdb;
|
||||||
|
@ -489,34 +510,44 @@ function update_user_status( $id, $pref, $value, $refresh = 1 ) {
|
||||||
$wpdb->update( $wpdb->users, array( $pref => $value ), array( 'ID' => $id ) );
|
$wpdb->update( $wpdb->users, array( $pref => $value ), array( 'ID' => $id ) );
|
||||||
|
|
||||||
if ( $refresh == 1 )
|
if ( $refresh == 1 )
|
||||||
refresh_user_details($id);
|
refresh_user_details( $id );
|
||||||
|
|
||||||
if ( $pref == 'spam' ) {
|
if ( $pref == 'spam' ) {
|
||||||
if ( $value == 1 )
|
if ( $value == 1 )
|
||||||
do_action( "make_spam_user", $id );
|
do_action( 'make_spam_user', $id );
|
||||||
else
|
else
|
||||||
do_action( "make_ham_user", $id );
|
do_action( 'make_ham_user', $id );
|
||||||
}
|
}
|
||||||
|
|
||||||
return $value;
|
return $value;
|
||||||
}
|
}
|
||||||
|
|
||||||
function refresh_user_details($id) {
|
function refresh_user_details( $id ) {
|
||||||
$id = (int) $id;
|
$id = (int) $id;
|
||||||
|
|
||||||
if ( !$user = get_userdata( $id ) )
|
if ( !$user = get_userdata( $id ) )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
clean_user_cache($id);
|
clean_user_cache( $id );
|
||||||
|
|
||||||
return $id;
|
return $id;
|
||||||
}
|
}
|
||||||
|
|
||||||
function format_code_lang( $code = '' ) {
|
function format_code_lang( $code = '' ) {
|
||||||
$code = strtolower(substr($code, 0, 2));
|
$code = strtolower( substr( $code, 0, 2 ) );
|
||||||
$lang_codes = array('aa' => 'Afar', 'ab' => 'Abkhazian', 'af' => 'Afrikaans', 'ak' => 'Akan', 'sq' => 'Albanian', 'am' => 'Amharic', 'ar' => 'Arabic', 'an' => 'Aragonese', 'hy' => 'Armenian', 'as' => 'Assamese', 'av' => 'Avaric', 'ae' => 'Avestan', 'ay' => 'Aymara', 'az' => 'Azerbaijani', 'ba' => 'Bashkir', 'bm' => 'Bambara', 'eu' => 'Basque', 'be' => 'Belarusian', 'bn' => 'Bengali', 'bh' => 'Bihari', 'bi' => 'Bislama', 'bs' => 'Bosnian', 'br' => 'Breton', 'bg' => 'Bulgarian', 'my' => 'Burmese', 'ca' => 'Catalan; Valencian', 'ch' => 'Chamorro', 'ce' => 'Chechen', 'zh' => 'Chinese', 'cu' => 'Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic', 'cv' => 'Chuvash', 'kw' => 'Cornish', 'co' => 'Corsican', 'cr' => 'Cree', 'cs' => 'Czech', 'da' => 'Danish', 'dv' => 'Divehi; Dhivehi; Maldivian', 'nl' => 'Dutch; Flemish', 'dz' => 'Dzongkha', 'en' => 'English', 'eo' => 'Esperanto', 'et' => 'Estonian', 'ee' => 'Ewe', 'fo' => 'Faroese', 'fj' => 'Fijian', 'fi' => 'Finnish', 'fr' => 'French', 'fy' => 'Western Frisian', 'ff' => 'Fulah', 'ka' => 'Georgian', 'de' => 'German', 'gd' => 'Gaelic; Scottish Gaelic', 'ga' => 'Irish', 'gl' => 'Galician', 'gv' => 'Manx', 'el' => 'Greek, Modern', 'gn' => 'Guarani', 'gu' => 'Gujarati', 'ht' => 'Haitian; Haitian Creole', 'ha' => 'Hausa', 'he' => 'Hebrew', 'hz' => 'Herero', 'hi' => 'Hindi', 'ho' => 'Hiri Motu', 'hu' => 'Hungarian', 'ig' => 'Igbo', 'is' => 'Icelandic', 'io' => 'Ido', 'ii' => 'Sichuan Yi', 'iu' => 'Inuktitut', 'ie' => 'Interlingue', 'ia' => 'Interlingua (International Auxiliary Language Association)', 'id' => 'Indonesian', 'ik' => 'Inupiaq', 'it' => 'Italian', 'jv' => 'Javanese', 'ja' => 'Japanese', 'kl' => 'Kalaallisut; Greenlandic', 'kn' => 'Kannada', 'ks' => 'Kashmiri', 'kr' => 'Kanuri', 'kk' => 'Kazakh', 'km' => 'Central Khmer', 'ki' => 'Kikuyu; Gikuyu', 'rw' => 'Kinyarwanda', 'ky' => 'Kirghiz; Kyrgyz', 'kv' => 'Komi', 'kg' => 'Kongo', 'ko' => 'Korean', 'kj' => 'Kuanyama; Kwanyama', 'ku' => 'Kurdish', 'lo' => 'Lao', 'la' => 'Latin', 'lv' => 'Latvian', 'li' => 'Limburgan; Limburger; Limburgish', 'ln' => 'Lingala', 'lt' => 'Lithuanian', 'lb' => 'Luxembourgish; Letzeburgesch', 'lu' => 'Luba-Katanga', 'lg' => 'Ganda', 'mk' => 'Macedonian', 'mh' => 'Marshallese', 'ml' => 'Malayalam', 'mi' => 'Maori', 'mr' => 'Marathi', 'ms' => 'Malay', 'mg' => 'Malagasy', 'mt' => 'Maltese', 'mo' => 'Moldavian', 'mn' => 'Mongolian', 'na' => 'Nauru', 'nv' => 'Navajo; Navaho', 'nr' => 'Ndebele, South; South Ndebele', 'nd' => 'Ndebele, North; North Ndebele', 'ng' => 'Ndonga', 'ne' => 'Nepali', 'nn' => 'Norwegian Nynorsk; Nynorsk, Norwegian', 'nb' => 'Bokmål, Norwegian, Norwegian Bokmål', 'no' => 'Norwegian', 'ny' => 'Chichewa; Chewa; Nyanja', 'oc' => 'Occitan, Provençal', 'oj' => 'Ojibwa', 'or' => 'Oriya', 'om' => 'Oromo', 'os' => 'Ossetian; Ossetic', 'pa' => 'Panjabi; Punjabi', 'fa' => 'Persian', 'pi' => 'Pali', 'pl' => 'Polish', 'pt' => 'Portuguese', 'ps' => 'Pushto', 'qu' => 'Quechua', 'rm' => 'Romansh', 'ro' => 'Romanian', 'rn' => 'Rundi', 'ru' => 'Russian', 'sg' => 'Sango', 'sa' => 'Sanskrit', 'sr' => 'Serbian', 'hr' => 'Croatian', 'si' => 'Sinhala; Sinhalese', 'sk' => 'Slovak', 'sl' => 'Slovenian', 'se' => 'Northern Sami', 'sm' => 'Samoan', 'sn' => 'Shona', 'sd' => 'Sindhi', 'so' => 'Somali', 'st' => 'Sotho, Southern', 'es' => 'Spanish; Castilian', 'sc' => 'Sardinian', 'ss' => 'Swati', 'su' => 'Sundanese', 'sw' => 'Swahili', 'sv' => 'Swedish', 'ty' => 'Tahitian', 'ta' => 'Tamil', 'tt' => 'Tatar', 'te' => 'Telugu', 'tg' => 'Tajik', 'tl' => 'Tagalog', 'th' => 'Thai', 'bo' => 'Tibetan', 'ti' => 'Tigrinya', 'to' => 'Tonga (Tonga Islands)', 'tn' => 'Tswana', 'ts' => 'Tsonga', 'tk' => 'Turkmen', 'tr' => 'Turkish', 'tw' => 'Twi', 'ug' => 'Uighur; Uyghur', 'uk' => 'Ukrainian', 'ur' => 'Urdu', 'uz' => 'Uzbek', 've' => 'Venda', 'vi' => 'Vietnamese', 'vo' => 'Volapük', 'cy' => 'Welsh', 'wa' => 'Walloon'
|
$lang_codes = array(
|
||||||
, 'wo' => 'Wolof', 'xh' => 'Xhosa', 'yi' => 'Yiddish', 'yo' => 'Yoruba', 'za' => 'Zhuang; Chuang', 'zu' => 'Zulu');
|
'aa' => 'Afar', 'ab' => 'Abkhazian', 'af' => 'Afrikaans', 'ak' => 'Akan', 'sq' => 'Albanian', 'am' => 'Amharic', 'ar' => 'Arabic', 'an' => 'Aragonese', 'hy' => 'Armenian', 'as' => 'Assamese', 'av' => 'Avaric', 'ae' => 'Avestan', 'ay' => 'Aymara', 'az' => 'Azerbaijani', 'ba' => 'Bashkir', 'bm' => 'Bambara', 'eu' => 'Basque', 'be' => 'Belarusian', 'bn' => 'Bengali',
|
||||||
$lang_codes = apply_filters('lang_codes', $lang_codes, $code);
|
'bh' => 'Bihari', 'bi' => 'Bislama', 'bs' => 'Bosnian', 'br' => 'Breton', 'bg' => 'Bulgarian', 'my' => 'Burmese', 'ca' => 'Catalan; Valencian', 'ch' => 'Chamorro', 'ce' => 'Chechen', 'zh' => 'Chinese', 'cu' => 'Church Slavic; Old Slavonic; Church Slavonic; Old Bulgarian; Old Church Slavonic', 'cv' => 'Chuvash', 'kw' => 'Cornish', 'co' => 'Corsican', 'cr' => 'Cree',
|
||||||
|
'cs' => 'Czech', 'da' => 'Danish', 'dv' => 'Divehi; Dhivehi; Maldivian', 'nl' => 'Dutch; Flemish', 'dz' => 'Dzongkha', 'en' => 'English', 'eo' => 'Esperanto', 'et' => 'Estonian', 'ee' => 'Ewe', 'fo' => 'Faroese', 'fj' => 'Fijjian', 'fi' => 'Finnish', 'fr' => 'French', 'fy' => 'Western Frisian', 'ff' => 'Fulah', 'ka' => 'Georgian', 'de' => 'German', 'gd' => 'Gaelic; Scottish Gaelic',
|
||||||
|
'ga' => 'Irish', 'gl' => 'Galician', 'gv' => 'Manx', 'el' => 'Greek, Modern', 'gn' => 'Guarani', 'gu' => 'Gujarati', 'ht' => 'Haitian; Haitian Creole', 'ha' => 'Hausa', 'he' => 'Hebrew', 'hz' => 'Herero', 'hi' => 'Hindi', 'ho' => 'Hiri Motu', 'hu' => 'Hungarian', 'ig' => 'Igbo', 'is' => 'Icelandic', 'io' => 'Ido', 'ii' => 'Sichuan Yi', 'iu' => 'Inuktitut', 'ie' => 'Interlingue',
|
||||||
|
'ia' => 'Interlingua (International Auxiliary Language Association)', 'id' => 'Indonesian', 'ik' => 'Inupiaq', 'it' => 'Italian', 'jv' => 'Javanese', 'ja' => 'Japanese', 'kl' => 'Kalaallisut; Greenlandic', 'kn' => 'Kannada', 'ks' => 'Kashmiri', 'kr' => 'Kanuri', 'kk' => 'Kazakh', 'km' => 'Central Khmer', 'ki' => 'Kikuyu; Gikuyu', 'rw' => 'Kinyarwanda', 'ky' => 'Kirghiz; Kyrgyz',
|
||||||
|
'kv' => 'Komi', 'kg' => 'Kongo', 'ko' => 'Korean', 'kj' => 'Kuanyama; Kwanyama', 'ku' => 'Kurdish', 'lo' => 'Lao', 'la' => 'Latin', 'lv' => 'Latvian', 'li' => 'Limburgan; Limburger; Limburgish', 'ln' => 'Lingala', 'lt' => 'Lithuanian', 'lb' => 'Luxembourgish; Letzeburgesch', 'lu' => 'Luba-Katanga', 'lg' => 'Ganda', 'mk' => 'Macedonian', 'mh' => 'Marshallese', 'ml' => 'Malayalam',
|
||||||
|
'mi' => 'Maori', 'mr' => 'Marathi', 'ms' => 'Malay', 'mg' => 'Malagasy', 'mt' => 'Maltese', 'mo' => 'Moldavian', 'mn' => 'Mongolian', 'na' => 'Nauru', 'nv' => 'Navajo; Navaho', 'nr' => 'Ndebele, South; South Ndebele', 'nd' => 'Ndebele, North; North Ndebele', 'ng' => 'Ndonga', 'ne' => 'Nepali', 'nn' => 'Norwegian Nynorsk; Nynorsk, Norwegian', 'nb' => 'Bokmål, Norwegian, Norwegian Bokmål',
|
||||||
|
'no' => 'Norwegian', 'ny' => 'Chichewa; Chewa; Nyanja', 'oc' => 'Occitan, Provençal', 'oj' => 'Ojibwa', 'or' => 'Oriya', 'om' => 'Oromo', 'os' => 'Ossetian; Ossetic', 'pa' => 'Panjabi; Punjabi', 'fa' => 'Persian', 'pi' => 'Pali', 'pl' => 'Polish', 'pt' => 'Portuguese', 'ps' => 'Pushto', 'qu' => 'Quechua', 'rm' => 'Romansh', 'ro' => 'Romanian', 'rn' => 'Rundi', 'ru' => 'Russian',
|
||||||
|
'sg' => 'Sango', 'sa' => 'Sanskrit', 'sr' => 'Serbian', 'hr' => 'Croatian', 'si' => 'Sinhala; Sinhalese', 'sk' => 'Slovak', 'sl' => 'Slovenian', 'se' => 'Northern Sami', 'sm' => 'Samoan', 'sn' => 'Shona', 'sd' => 'Sindhi', 'so' => 'Somali', 'st' => 'Sotho, Southern', 'es' => 'Spanish; Castilian', 'sc' => 'Sardinian', 'ss' => 'Swati', 'su' => 'Sundanese', 'sw' => 'Swahili',
|
||||||
|
'sv' => 'Swedish', 'ty' => 'Tahitian', 'ta' => 'Tamil', 'tt' => 'Tatar', 'te' => 'Telugu', 'tg' => 'Tajik', 'tl' => 'Tagalog', 'th' => 'Thai', 'bo' => 'Tibetan', 'ti' => 'Tigrinya', 'to' => 'Tonga (Tonga Islands)', 'tn' => 'Tswana', 'ts' => 'Tsonga', 'tk' => 'Turkmen', 'tr' => 'Turkish', 'tw' => 'Twi', 'ug' => 'Uighur; Uyghur', 'uk' => 'Ukrainian', 'ur' => 'Urdu', 'uz' => 'Uzbek',
|
||||||
|
've' => 'Venda', 'vi' => 'Vietnamese', 'vo' => 'Volapük', 'cy' => 'Welsh','wa' => 'Walloon','wo' => 'Wolof', 'xh' => 'Xhosa', 'yi' => 'Yiddish', 'yo' => 'Yoruba', 'za' => 'Zhuang; Chuang', 'zu' => 'Zulu' );
|
||||||
|
$lang_codes = apply_filters( 'lang_codes', $lang_codes, $code );
|
||||||
return strtr( $code, $lang_codes );
|
return strtr( $code, $lang_codes );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -525,7 +556,7 @@ function sync_category_tag_slugs( $term, $taxonomy ) {
|
||||||
if ( is_object( $term ) ) {
|
if ( is_object( $term ) ) {
|
||||||
$term->slug = sanitize_title( $term->name );
|
$term->slug = sanitize_title( $term->name );
|
||||||
} else {
|
} else {
|
||||||
$term[ 'slug' ] = sanitize_title( $term[ 'name' ] );
|
$term['slug'] = sanitize_title( $term['name'] );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $term;
|
return $term;
|
||||||
|
@ -535,8 +566,8 @@ add_filter( 'get_term', 'sync_category_tag_slugs', 10, 2 );
|
||||||
function redirect_user_to_blog() {
|
function redirect_user_to_blog() {
|
||||||
global $current_user;
|
global $current_user;
|
||||||
$c = 0;
|
$c = 0;
|
||||||
if ( isset( $_GET[ 'c' ] ) )
|
if ( isset( $_GET['c'] ) )
|
||||||
$c = (int)$_GET[ 'c' ];
|
$c = (int) $_GET['c'];
|
||||||
|
|
||||||
if ( $c >= 5 ) {
|
if ( $c >= 5 ) {
|
||||||
wp_die( __( "You don’t have permission to view this site. Please contact the system administrator." ) );
|
wp_die( __( "You don’t have permission to view this site. Please contact the system administrator." ) );
|
||||||
|
@ -546,7 +577,7 @@ function redirect_user_to_blog() {
|
||||||
$blog = get_active_blog_for_user( $current_user->ID );
|
$blog = get_active_blog_for_user( $current_user->ID );
|
||||||
$dashboard_blog = get_dashboard_blog();
|
$dashboard_blog = get_dashboard_blog();
|
||||||
if ( is_object( $blog ) ) {
|
if ( is_object( $blog ) ) {
|
||||||
wp_redirect( get_admin_url($blog->blog_id, '?c=' . $c) ); // redirect and count to 5, "just in case"
|
wp_redirect( get_admin_url( $blog->blog_id, '?c=' . $c ) ); // redirect and count to 5, "just in case"
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -564,8 +595,7 @@ function redirect_user_to_blog() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$blog = get_blog_details( get_user_meta( $current_user->ID, 'primary_blog', true ) );
|
$blog = get_blog_details( get_user_meta( $current_user->ID, 'primary_blog', true ) );
|
||||||
$protocol = ( is_ssl() ? 'https://' : 'http://' );
|
wp_redirect( get_admin_url( $blog->blog_id, '?c=' . $c ) );
|
||||||
wp_redirect( $protocol . $blog->domain . $blog->path . 'wp-admin/?c=' . $c ); // redirect and count to 5, "just in case"
|
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
wp_die( __( 'You do not have sufficient permissions to access this page.' ) );
|
wp_die( __( 'You do not have sufficient permissions to access this page.' ) );
|
||||||
|
@ -589,28 +619,27 @@ function mu_dropdown_languages( $lang_files = array(), $current = '' ) {
|
||||||
|
|
||||||
if ( $code_lang == 'en_US' ) { // American English
|
if ( $code_lang == 'en_US' ) { // American English
|
||||||
$flag = true;
|
$flag = true;
|
||||||
$ae = __('American English');
|
$ae = __( 'American English' );
|
||||||
$output[$ae] = '<option value="'.$code_lang.'"'.(($current == $code_lang) ? ' selected="selected"' : '').'> '.$ae.'</option>';
|
$output[$ae] = '<option value="' . esc_attr( $code_lang ) . '"' . selected( $current, $code_lang ) . '> ' . $ae . '</option>';
|
||||||
} elseif ( $code_lang == 'en_GB' ) { // British English
|
} elseif ( $code_lang == 'en_GB' ) { // British English
|
||||||
$flag = true;
|
$flag = true;
|
||||||
$be = __('British English');
|
$be = __( 'British English' );
|
||||||
$output[$be] = '<option value="'.$code_lang.'"'.(($current == $code_lang) ? ' selected="selected"' : '').'> '.$be.'</option>';
|
$output[$be] = '<option value="' . esc_attr( $code_lang ) . '"' . selected( $current, $code_lang ) . '> ' . $be . '</option>';
|
||||||
} else {
|
} else {
|
||||||
$translated = format_code_lang($code_lang);
|
$translated = format_code_lang( $code_lang );
|
||||||
$output[$translated] = '<option value="'.$code_lang.'"'.(($current == $code_lang) ? ' selected="selected"' : '').'> '.$translated.'</option>';
|
$output[$translated] = '<option value="' . esc_attr( $code_lang ) . '"' . selected( $current, $code_lang ) . '> ' . esc_html ( $translated ) . '</option>';
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $flag === false ) { // WordPress english
|
if ( $flag === false ) // WordPress english
|
||||||
$output[] = '<option value=""'.((empty($current)) ? ' selected="selected"' : '').'>'.__('English')."</option>";
|
$output[] = '<option value=""' . selected( $current, '' ) . '>' . __( 'English' ) . "</option>";
|
||||||
}
|
|
||||||
|
|
||||||
// Order by name
|
// Order by name
|
||||||
uksort($output, 'strnatcasecmp');
|
uksort( $output, 'strnatcasecmp' );
|
||||||
|
|
||||||
$output = apply_filters('mu_dropdown_languages', $output, $lang_files, $current);
|
$output = apply_filters( 'mu_dropdown_languages', $output, $lang_files, $current );
|
||||||
echo implode("\n\t", $output);
|
echo implode( "\n\t", $output );
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Warn the admin if SECRET SALT information is missing from wp-config.php */
|
/* Warn the admin if SECRET SALT information is missing from wp-config.php */
|
||||||
|
@ -637,8 +666,8 @@ function admin_notice_feed() {
|
||||||
if ( $current_screen->id != 'dashboard' )
|
if ( $current_screen->id != 'dashboard' )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if ( !empty( $_GET[ 'feed_dismiss' ] ) )
|
if ( !empty( $_GET['feed_dismiss'] ) )
|
||||||
update_user_option( $current_user->id, 'admin_feed_dismiss', $_GET[ 'feed_dismiss' ], true );
|
update_user_option( $current_user->id, 'admin_feed_dismiss', $_GET['feed_dismiss'], true );
|
||||||
|
|
||||||
$url = get_site_option( 'admin_notice_feed' );
|
$url = get_site_option( 'admin_notice_feed' );
|
||||||
if ( empty( $url ) )
|
if ( empty( $url ) )
|
||||||
|
@ -666,28 +695,28 @@ function site_admin_notice() {
|
||||||
if ( !is_super_admin() )
|
if ( !is_super_admin() )
|
||||||
return false;
|
return false;
|
||||||
if ( get_site_option( 'wpmu_upgrade_site' ) != $wp_db_version )
|
if ( get_site_option( 'wpmu_upgrade_site' ) != $wp_db_version )
|
||||||
echo "<div id='update-nag'>" . __( 'Thank you for Updating! Please visit the <a href="ms-upgrade-network.php">Update Network</a> page to update all your sites.' ) . "</div>";
|
echo "<div id='update-nag'>" . sprintf( __( 'Thank you for Updating! Please visit the <a href="%s">Update Network</a> page to update all your sites.' ), esc_url( admin_url( 'ms-upgrade-network.php' ) ) ) . "</div>";
|
||||||
}
|
}
|
||||||
add_action( 'admin_notices', 'site_admin_notice' );
|
add_action( 'admin_notices', 'site_admin_notice' );
|
||||||
|
|
||||||
function avoid_blog_page_permalink_collision( $data, $postarr ) {
|
function avoid_blog_page_permalink_collision( $data, $postarr ) {
|
||||||
if ( is_subdomain_install() )
|
if ( is_subdomain_install() )
|
||||||
return $data;
|
return $data;
|
||||||
if ( $data[ 'post_type' ] != 'page' )
|
if ( $data['post_type'] != 'page' )
|
||||||
return $data;
|
return $data;
|
||||||
if ( !isset( $data[ 'post_name' ] ) || $data[ 'post_name' ] == '' )
|
if ( !isset( $data['post_name'] ) || $data['post_name'] == '' )
|
||||||
return $data;
|
return $data;
|
||||||
if ( !is_main_site() )
|
if ( !is_main_site() )
|
||||||
return $data;
|
return $data;
|
||||||
|
|
||||||
$post_name = $data[ 'post_name' ];
|
$post_name = $data['post_name'];
|
||||||
$c = 0;
|
$c = 0;
|
||||||
while( $c < 10 && get_id_from_blogname( $post_name ) ) {
|
while( $c < 10 && get_id_from_blogname( $post_name ) ) {
|
||||||
$post_name .= mt_rand( 1, 10 );
|
$post_name .= mt_rand( 1, 10 );
|
||||||
$c ++;
|
$c ++;
|
||||||
}
|
}
|
||||||
if ( $post_name != $data[ 'post_name' ] ) {
|
if ( $post_name != $data['post_name'] ) {
|
||||||
$data[ 'post_name' ] = $post_name;
|
$data['post_name'] = $post_name;
|
||||||
}
|
}
|
||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
|
@ -699,11 +728,11 @@ function choose_primary_blog() {
|
||||||
<table class="form-table">
|
<table class="form-table">
|
||||||
<tr>
|
<tr>
|
||||||
<?php /* translators: My sites label */ ?>
|
<?php /* translators: My sites label */ ?>
|
||||||
<th scope="row"><?php _e('Primary Site'); ?></th>
|
<th scope="row"><?php _e( 'Primary Site' ); ?></th>
|
||||||
<td>
|
<td>
|
||||||
<?php
|
<?php
|
||||||
$all_blogs = get_blogs_of_user( $current_user->ID );
|
$all_blogs = get_blogs_of_user( $current_user->ID );
|
||||||
$primary_blog = get_user_meta($current_user->ID, 'primary_blog', true);
|
$primary_blog = get_user_meta( $current_user->ID, 'primary_blog', true );
|
||||||
if ( count( $all_blogs ) > 1 ) {
|
if ( count( $all_blogs ) > 1 ) {
|
||||||
$found = false;
|
$found = false;
|
||||||
?>
|
?>
|
||||||
|
@ -711,7 +740,7 @@ function choose_primary_blog() {
|
||||||
<?php foreach( (array) $all_blogs as $blog ) {
|
<?php foreach( (array) $all_blogs as $blog ) {
|
||||||
if ( $primary_blog == $blog->userblog_id )
|
if ( $primary_blog == $blog->userblog_id )
|
||||||
$found = true;
|
$found = true;
|
||||||
?><option value='<?php echo $blog->userblog_id ?>'<?php if ( $primary_blog == $blog->userblog_id ) echo ' selected="selected"' ?>><?php echo get_home_url($blog->userblog_id) ?></option><?php
|
?><option value="<?php echo $blog->userblog_id ?>"<?php selected( $primary_blog, $blog->userblog_id ); ?>><?php echo esc_url( get_home_url( $blog->userblog_id ) ) ?></option><?php
|
||||||
} ?>
|
} ?>
|
||||||
</select>
|
</select>
|
||||||
<?php
|
<?php
|
||||||
|
@ -738,8 +767,8 @@ function show_post_thumbnail_warning() {
|
||||||
if ( ! is_super_admin() )
|
if ( ! is_super_admin() )
|
||||||
return;
|
return;
|
||||||
$mu_media_buttons = get_site_option( 'mu_media_buttons', array() );
|
$mu_media_buttons = get_site_option( 'mu_media_buttons', array() );
|
||||||
if ( empty($mu_media_buttons[ 'image' ]) && current_theme_supports( 'post-thumbnails' ) ) {
|
if ( empty($mu_media_buttons['image']) && current_theme_supports( 'post-thumbnails' ) ) {
|
||||||
echo "<div id='update-nag'>" . sprintf( __( "Warning! The current theme supports post thumbnails. You must enable image uploads on <a href='%s'>the options page</a> for it to work." ), admin_url( 'ms-options.php' ) ) . "</div>";
|
echo "<div id='update-nag'>" . sprintf( __( "Warning! The current theme supports post thumbnails. You must enable image uploads on <a href='%s'>the options page</a> for it to work." ), esc_url( admin_url( 'ms-options.php' ) ) ) . "</div>";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
add_action( 'admin_notices', 'show_post_thumbnail_warning' );
|
add_action( 'admin_notices', 'show_post_thumbnail_warning' );
|
||||||
|
@ -760,7 +789,7 @@ add_action( 'admin_notices', 'ms_deprecated_blogs_file' );
|
||||||
* @return none
|
* @return none
|
||||||
*/
|
*/
|
||||||
function _admin_notice_multisite_activate_plugins_page() {
|
function _admin_notice_multisite_activate_plugins_page() {
|
||||||
$message = sprintf( __( 'The plugins page is not visible to normal users. It must be activated first. %s' ), '<a href="ms-options.php#menu">' . __( 'Activate' ) . '</a>' );
|
$message = sprintf( __( 'The plugins page is not visible to normal users. It must be activated first. %s' ), '<a href="' . esc_url( admin_url( 'ms-options.php#menu' ) ) . '">' . __( 'Activate' ) . '</a>' );
|
||||||
echo "<div class='error'><p>$message</p></div>";
|
echo "<div class='error'><p>$message</p></div>";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,67 +1,74 @@
|
||||||
<?php
|
<?php
|
||||||
require_once('admin.php');
|
require_once( './admin.php' );
|
||||||
|
|
||||||
if ( !is_multisite() )
|
if ( !is_multisite() )
|
||||||
wp_die( __('Multisite support is not enabled.') );
|
wp_die( __( 'Multisite support is not enabled.' ) );
|
||||||
|
|
||||||
// @todo Create a delete blog cap.
|
// @todo Create a delete blog cap.
|
||||||
if ( ! current_user_can('manage_options') )
|
if ( ! current_user_can( 'manage_options' ) )
|
||||||
wp_die(__('You do not have sufficient permissions to delete this blog.'));
|
wp_die(__( 'You do not have sufficient permissions to delete this site.'));
|
||||||
|
|
||||||
|
if ( isset( $_GET['h'] ) && $_GET['h'] != '' && get_option( 'delete_blog_hash' ) != false ) {
|
||||||
|
if ( get_option( 'delete_blog_hash' ) == $_GET['h'] ) {
|
||||||
|
wpmu_delete_blog( $wpdb->blogid );
|
||||||
|
wp_die( sprintf( __( 'Thank you for using %s, your site has been deleted. Happy trails to you until we meet again.' ), $current_site->site_name ) );
|
||||||
|
} else {
|
||||||
|
wp_die( __( "I'm sorry, the link you clicked is stale. Please select another option." ) );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$action = isset($_POST['action']) ? $_POST['action'] : 'splash';
|
$action = isset( $_POST['action'] ) ? $_POST['action'] : 'splash';
|
||||||
|
|
||||||
$title = __('Delete Blog');
|
$title = __( 'Delete Site' );
|
||||||
$parent_file = 'tools.php';
|
$parent_file = 'tools.php';
|
||||||
require_once('admin-header.php');
|
require_once( './admin-header.php' );
|
||||||
|
|
||||||
echo '<div class="wrap">';
|
echo '<div class="wrap">';
|
||||||
screen_icon();
|
screen_icon();
|
||||||
echo '<h2>'. esc_html($title) .'</h2>';
|
echo '<h2>' . esc_html( $title ) . '</h2>';
|
||||||
|
|
||||||
if ( isset($_POST['action']) && $_POST['action'] == "deleteblog" && isset($_POST['confirmdelete']) && $_POST['confirmdelete'] == '1' ) {
|
if ( isset( $_POST['action'] ) && $_POST['action'] == 'deleteblog' && isset( $_POST['confirmdelete'] ) && $_POST['confirmdelete'] == '1' ) {
|
||||||
$hash = wp_generate_password(20, false);
|
$hash = wp_generate_password( 20, false );
|
||||||
update_option( "delete_blog_hash", $hash );
|
update_option( 'delete_blog_hash', $hash );
|
||||||
$url_delete = admin_url('ms-delete-site.php?h=' . $hash);
|
|
||||||
$msg = __("Dear User,
|
$url_delete = esc_url( admin_url( 'ms-delete-site.php?h=' . $hash ) );
|
||||||
You recently clicked the 'Delete Blog' link on your blog and filled in a
|
|
||||||
|
$content = apply_filters( 'delete_site_email_content', __( "Dear User,
|
||||||
|
You recently clicked the 'Delete Site' link on your site and filled in a
|
||||||
form on that page.
|
form on that page.
|
||||||
If you really want to delete your blog, click the link below. You will not
|
If you really want to delete your site, click the link below. You will not
|
||||||
be asked to confirm again so only click this link if you are absolutely certain:
|
be asked to confirm again so only click this link if you are absolutely certain:
|
||||||
URL_DELETE
|
###URL_DELETE###
|
||||||
|
|
||||||
If you delete your blog, please consider opening a new blog here
|
If you delete your site, please consider opening a new site here
|
||||||
some time in the future! (But remember your current blog and username
|
some time in the future! (But remember your current site and username
|
||||||
are gone forever.)
|
are gone forever.)
|
||||||
|
|
||||||
Thanks for using the site,
|
Thanks for using the site,
|
||||||
Webmaster
|
Webmaster
|
||||||
SITE_NAME
|
###SITE_NAME###" ) );
|
||||||
");
|
|
||||||
$msg = str_replace( "URL_DELETE", $url_delete, $msg );
|
$content = str_replace( '###URL_DELETE###', $url_delete, $content );
|
||||||
$msg = str_replace( "SITE_NAME", $current_site->site_name, $msg );
|
$content = str_replace( '###SITE_NAME###', $current_site->site_name, $content );
|
||||||
wp_mail( get_option( "admin_email" ), "[ " . get_option( "blogname" ) . " ] ".__("Delete My Blog"), $msg );
|
|
||||||
|
wp_mail( get_option( 'admin_email' ), "[ " . get_option( 'blogname' ) . " ] ".__( 'Delete My Site' ), $content );
|
||||||
?>
|
?>
|
||||||
<p><?php _e('Thank you. Please check your email for a link to confirm your action. Your blog will not be deleted until this link is clicked.') ?></p>
|
|
||||||
|
<p><?php _e( 'Thank you. Please check your email for a link to confirm your action. Your site will not be deleted until this link is clicked. ') ?></p>
|
||||||
|
|
||||||
|
<?php } else {
|
||||||
|
?>
|
||||||
|
<p><?php printf( __( 'If you do not want to use your %s site any more, you can delete it using the form below. When you click <strong>Delete My Site Permanently</strong> you will be sent an email with a link in it. Click on this link to delete your site.'), $current_site->site_name); ?></p>
|
||||||
|
<p><?php _e( 'Remember, once deleted your site cannot be restored.' ) ?></p>
|
||||||
|
|
||||||
|
<form method="post" name="deletedirect">
|
||||||
|
<input type="hidden" name="action" value="deleteblog" />
|
||||||
|
<p><input id="confirmdelete" type="checkbox" name="confirmdelete" value="1" /> <label for="confirmdelete"><strong><?php printf( __( "I'm sure I want to permanently disable my site, and I am aware I can never get it back or use %s again." ), is_subdomain_install() ? $current_blog->domain : $current_site->domain . $current_site->path ); ?></strong></label></p>
|
||||||
|
<p class="submit"><input type="submit" value="<?php esc_attr_e( 'Delete My Site Permanently' ) ?>" /></p>
|
||||||
|
</form>
|
||||||
<?php
|
<?php
|
||||||
} elseif ( isset( $_GET['h'] ) && $_GET['h'] != '' && get_option('delete_blog_hash') != false ) {
|
|
||||||
if ( get_option('delete_blog_hash') == $_GET['h'] ) {
|
|
||||||
wpmu_delete_blog( $wpdb->blogid );
|
|
||||||
echo "<p>" . sprintf(__('Thank you for using %s, your blog has been deleted. Happy trails to you until we meet again.'), $current_site->site_name) . "</p>";
|
|
||||||
} else {
|
|
||||||
echo "<p>" . __("I'm sorry, the link you clicked is stale. Please select another option.") . "</p>";
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
?>
|
|
||||||
<p><?php printf(__('If you do not want to use your %s blog any more, you can delete it using the form below. When you click <strong>Delete My Blog</strong> you will be sent an email with a link in it. Click on this link to delete your blog.'), $current_site->site_name); ?></p>
|
|
||||||
<p><?php _e('Remember, once deleted your blog cannot be restored.') ?></p>
|
|
||||||
<form method='post' name='deletedirect'>
|
|
||||||
<input type='hidden' name='action' value='deleteblog' />
|
|
||||||
<p><input id='confirmdelete' type='checkbox' name='confirmdelete' value='1' /> <label for='confirmdelete'><strong><?php printf( __("I'm sure I want to permanently disable my blog, and I am aware I can never get it back or use %s again."), $current_blog->domain); ?></strong></label></p>
|
|
||||||
<p class="submit"><input type='submit' value='<?php esc_attr_e('Delete My Blog Permanently') ?>' /></p>
|
|
||||||
</form>
|
|
||||||
<?php
|
|
||||||
}
|
}
|
||||||
echo '</div>';
|
echo '</div>';
|
||||||
|
|
||||||
include('admin-footer.php');
|
include( './admin-footer.php' );
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -1,33 +1,30 @@
|
||||||
<?php
|
<?php
|
||||||
require_once('admin.php');
|
require_once( './admin.php' );
|
||||||
|
|
||||||
if ( !is_multisite() )
|
if ( !is_multisite() )
|
||||||
wp_die( __('Multisite support is not enabled.') );
|
wp_die( __( 'Multisite support is not enabled.' ) );
|
||||||
|
|
||||||
do_action('wpmuadminedit', '');
|
do_action( 'wpmuadminedit' , '');
|
||||||
|
|
||||||
if ( isset($_GET[ 'id' ]) )
|
if ( isset( $_GET['id' ]) )
|
||||||
$id = intval( $_GET[ 'id' ] );
|
$id = intval( $_GET['id'] );
|
||||||
elseif ( isset($_POST[ 'id' ]) )
|
elseif ( isset( $_POST['id'] ) )
|
||||||
$id = intval( $_POST[ 'id' ] );
|
$id = intval( $_POST['id'] );
|
||||||
|
|
||||||
if ( isset( $_POST['ref'] ) == false && !empty($_SERVER['HTTP_REFERER']) )
|
|
||||||
$_POST['ref'] = $_SERVER['HTTP_REFERER'];
|
|
||||||
|
|
||||||
switch ( $_GET['action'] ) {
|
switch ( $_GET['action'] ) {
|
||||||
case "siteoptions":
|
case 'siteoptions':
|
||||||
check_admin_referer('siteoptions');
|
check_admin_referer( 'siteoptions' );
|
||||||
if ( ! current_user_can( 'manage_network_options' ) )
|
if ( ! current_user_can( 'manage_network_options' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
if ( empty( $_POST ) )
|
if ( empty( $_POST ) )
|
||||||
wp_die( __("You probably need to go back to the <a href='ms-options.php'>options page</a>") );
|
wp_die( sprintf( __( 'You probably need to go back to the <a href="%s">options page</a>.', esc_url( admin_url( 'ms-options.php' ) ) ) ) );
|
||||||
|
|
||||||
if ( isset($_POST['WPLANG']) && ( '' === $_POST['WPLANG'] || in_array($_POST['WPLANG'], get_available_languages()) ) )
|
if ( isset($_POST['WPLANG']) && ( '' === $_POST['WPLANG'] || in_array( $_POST['WPLANG'], get_available_languages() ) ) )
|
||||||
update_site_option( "WPLANG", $_POST['WPLANG'] );
|
update_site_option( 'WPLANG', $_POST['WPLANG'] );
|
||||||
|
|
||||||
if ( is_email( $_POST['admin_email'] ) )
|
if ( is_email( $_POST['admin_email'] ) )
|
||||||
update_site_option( "admin_email", $_POST['admin_email'] );
|
update_site_option( 'admin_email', $_POST['admin_email'] );
|
||||||
|
|
||||||
$illegal_names = split( ' ', $_POST['illegal_names'] );
|
$illegal_names = split( ' ', $_POST['illegal_names'] );
|
||||||
foreach ( (array) $illegal_names as $name ) {
|
foreach ( (array) $illegal_names as $name ) {
|
||||||
|
@ -35,10 +32,10 @@ switch ( $_GET['action'] ) {
|
||||||
if ( $name != '' )
|
if ( $name != '' )
|
||||||
$names[] = trim( $name );
|
$names[] = trim( $name );
|
||||||
}
|
}
|
||||||
update_site_option( "illegal_names", $names );
|
update_site_option( 'illegal_names', $names );
|
||||||
|
|
||||||
if ( $_POST['limited_email_domains'] != '' ) {
|
if ( $_POST['limited_email_domains'] != '' ) {
|
||||||
$limited_email_domains = str_replace( ' ', "\n", $_POST[ 'limited_email_domains' ] );
|
$limited_email_domains = str_replace( ' ', "\n", $_POST['limited_email_domains'] );
|
||||||
$limited_email_domains = split( "\n", stripslashes( $limited_email_domains ) );
|
$limited_email_domains = split( "\n", stripslashes( $limited_email_domains ) );
|
||||||
$limited_email = array();
|
$limited_email = array();
|
||||||
foreach ( (array) $limited_email_domains as $domain ) {
|
foreach ( (array) $limited_email_domains as $domain ) {
|
||||||
|
@ -46,31 +43,31 @@ switch ( $_GET['action'] ) {
|
||||||
if ( ! preg_match( '/(--|\.\.)/', $domain ) && preg_match( '|^([a-zA-Z0-9-\.])+$|', $domain ) )
|
if ( ! preg_match( '/(--|\.\.)/', $domain ) && preg_match( '|^([a-zA-Z0-9-\.])+$|', $domain ) )
|
||||||
$limited_email[] = trim( $domain );
|
$limited_email[] = trim( $domain );
|
||||||
}
|
}
|
||||||
update_site_option( "limited_email_domains", $limited_email );
|
update_site_option( 'limited_email_domains', $limited_email );
|
||||||
} else {
|
} else {
|
||||||
update_site_option( "limited_email_domains", '' );
|
update_site_option( 'limited_email_domains', '' );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $_POST['banned_email_domains'] != '' ) {
|
if ( $_POST['banned_email_domains'] != '' ) {
|
||||||
$banned_email_domains = split( "\n", stripslashes( $_POST[ 'banned_email_domains' ] ) );
|
$banned_email_domains = split( "\n", stripslashes( $_POST['banned_email_domains'] ) );
|
||||||
$banned = array();
|
$banned = array();
|
||||||
foreach ( (array) $banned_email_domains as $domain ) {
|
foreach ( (array) $banned_email_domains as $domain ) {
|
||||||
$domain = trim( $domain );
|
$domain = trim( $domain );
|
||||||
if ( ! preg_match( '/(--|\.\.)/', $domain ) && preg_match( '|^([a-zA-Z0-9-\.])+$|', $domain ) )
|
if ( ! preg_match( '/(--|\.\.)/', $domain ) && preg_match( '|^([a-zA-Z0-9-\.])+$|', $domain ) )
|
||||||
$banned[] = trim( $domain );
|
$banned[] = trim( $domain );
|
||||||
}
|
}
|
||||||
update_site_option( "banned_email_domains", $banned );
|
update_site_option( 'banned_email_domains', $banned );
|
||||||
} else {
|
} else {
|
||||||
update_site_option( "banned_email_domains", '' );
|
update_site_option( 'banned_email_domains', '' );
|
||||||
}
|
}
|
||||||
update_site_option( 'default_user_role', $_POST[ 'default_user_role' ] );
|
update_site_option( 'default_user_role', $_POST['default_user_role'] );
|
||||||
if ( trim( $_POST[ 'dashboard_blog_orig' ] ) == '' )
|
if ( trim( $_POST['dashboard_blog_orig'] ) == '' )
|
||||||
$_POST[ 'dashboard_blog_orig' ] = $current_site->blog_id;
|
$_POST['dashboard_blog_orig'] = $current_site->blog_id;
|
||||||
if ( trim( $_POST[ 'dashboard_blog' ] ) == '' ) {
|
if ( trim( $_POST['dashboard_blog'] ) == '' ) {
|
||||||
$_POST[ 'dashboard_blog' ] = $current_site->blog_id;
|
$_POST['dashboard_blog'] = $current_site->blog_id;
|
||||||
$dashboard_blog_id = $current_site->blog_id;
|
$dashboard_blog_id = $current_site->blog_id;
|
||||||
} else {
|
} else {
|
||||||
$dashboard_blog = untrailingslashit( sanitize_user( str_replace( '.', '', str_replace( $current_site->domain . $current_site->path, '', $_POST[ 'dashboard_blog' ] ) ) ) );
|
$dashboard_blog = untrailingslashit( sanitize_user( str_replace( '.', '', str_replace( $current_site->domain . $current_site->path, '', $_POST['dashboard_blog'] ) ) ) );
|
||||||
$blog_details = get_blog_details( $dashboard_blog );
|
$blog_details = get_blog_details( $dashboard_blog );
|
||||||
if ( false === $blog_details ) {
|
if ( false === $blog_details ) {
|
||||||
if ( is_numeric( $dashboard_blog ) )
|
if ( is_numeric( $dashboard_blog ) )
|
||||||
|
@ -83,7 +80,7 @@ switch ( $_GET['action'] ) {
|
||||||
$path = trailingslashit( $current_site->path . $dashboard_blog );
|
$path = trailingslashit( $current_site->path . $dashboard_blog );
|
||||||
}
|
}
|
||||||
$wpdb->hide_errors();
|
$wpdb->hide_errors();
|
||||||
$dashboard_blog_id = wpmu_create_blog( $domain, $path, __( 'My Dashboard' ), $current_user->id , array( "public" => 0 ), $current_site->id );
|
$dashboard_blog_id = wpmu_create_blog( $domain, $path, __( 'My Dashboard' ), $current_user->id , array( 'public' => 0 ), $current_site->id );
|
||||||
$wpdb->show_errors();
|
$wpdb->show_errors();
|
||||||
} else {
|
} else {
|
||||||
$dashboard_blog_id = $blog_details->blog_id;
|
$dashboard_blog_id = $blog_details->blog_id;
|
||||||
|
@ -91,7 +88,7 @@ switch ( $_GET['action'] ) {
|
||||||
}
|
}
|
||||||
if ( is_wp_error( $dashboard_blog_id ) )
|
if ( is_wp_error( $dashboard_blog_id ) )
|
||||||
wp_die( __( 'Problem creating dashboard blog: ' ) . $dashboard_blog_id->get_error_message() );
|
wp_die( __( 'Problem creating dashboard blog: ' ) . $dashboard_blog_id->get_error_message() );
|
||||||
if ( $_POST[ 'dashboard_blog_orig' ] != $_POST[ 'dashboard_blog' ] ) {
|
if ( $_POST['dashboard_blog_orig'] != $_POST['dashboard_blog'] ) {
|
||||||
$users = get_users_of_blog( get_site_option( 'dashboard_blog' ) );
|
$users = get_users_of_blog( get_site_option( 'dashboard_blog' ) );
|
||||||
$move_users = array();
|
$move_users = array();
|
||||||
foreach ( (array)$users as $user ) {
|
foreach ( (array)$users as $user ) {
|
||||||
|
@ -106,60 +103,60 @@ switch ( $_GET['action'] ) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
update_site_option( "dashboard_blog", $dashboard_blog_id );
|
update_site_option( 'dashboard_blog', $dashboard_blog_id );
|
||||||
// global terms
|
// global terms
|
||||||
if ( !global_terms_enabled() && ! empty( $_POST[ 'global_terms_enabled' ] ) ) {
|
if ( !global_terms_enabled() && ! empty( $_POST['global_terms_enabled'] ) ) {
|
||||||
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
|
||||||
// create global terms table
|
// create global terms table
|
||||||
install_global_terms();
|
install_global_terms();
|
||||||
}
|
}
|
||||||
$options = array( 'registrationnotification', 'registration', 'add_new_users', 'menu_items', 'mu_media_buttons', 'upload_space_check_disabled', 'blog_upload_space', 'upload_filetypes', 'site_name', 'first_post', 'first_page', 'first_comment', 'first_comment_url', 'first_comment_author', 'welcome_email', 'welcome_user_email', 'fileupload_maxk', 'admin_notice_feed', 'global_terms_enabled' );
|
$options = array( 'registrationnotification', 'registration', 'add_new_users', 'menu_items', 'mu_media_buttons', 'upload_space_check_disabled', 'blog_upload_space', 'upload_filetypes', 'site_name', 'first_post', 'first_page', 'first_comment', 'first_comment_url', 'first_comment_author', 'welcome_email', 'welcome_user_email', 'fileupload_maxk', 'admin_notice_feed', 'global_terms_enabled' );
|
||||||
$checked_options = array('mu_media_buttons' => array(), 'menu_items' => array(), 'registrationnotification' => 'no', 'upload_space_check_disabled' => 1 );
|
$checked_options = array( 'mu_media_buttons' => array(), 'menu_items' => array(), 'registrationnotification' => 'no', 'upload_space_check_disabled' => 1 );
|
||||||
foreach ( $checked_options as $option_name => $option_unchecked_value ) {
|
foreach ( $checked_options as $option_name => $option_unchecked_value ) {
|
||||||
if ( ! isset($_POST[ $option_name ]) )
|
if ( ! isset( $_POST[$option_name] ) )
|
||||||
$_POST[ $option_name ] = $option_unchecked_value;
|
$_POST[$option_name] = $option_unchecked_value;
|
||||||
}
|
}
|
||||||
foreach ( $options as $option_name ) {
|
foreach ( $options as $option_name ) {
|
||||||
if ( ! isset($_POST[ $option_name ]) )
|
if ( ! isset($_POST[$option_name]) )
|
||||||
continue;
|
continue;
|
||||||
$value = stripslashes_deep( $_POST[ $option_name ] );
|
$value = stripslashes_deep( $_POST[$option_name] );
|
||||||
update_site_option( $option_name, $value );
|
update_site_option( $option_name, $value );
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update more options here
|
// Update more options here
|
||||||
do_action( 'update_wpmu_options' );
|
do_action( 'update_wpmu_options' );
|
||||||
|
|
||||||
wp_redirect( add_query_arg( "updated", "true", 'ms-options.php' ) );
|
wp_redirect( add_query_arg( 'updated', 'true', admin_url( 'ms-options.php' ) ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
case "addblog":
|
case 'addblog':
|
||||||
check_admin_referer('add-blog');
|
check_admin_referer( 'add-blog' );
|
||||||
|
|
||||||
if ( ! current_user_can( 'manage_sites' ) )
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
if ( is_array( $_POST[ 'blog' ] ) == false )
|
if ( is_array( $_POST['blog'] ) == false )
|
||||||
wp_die( "Can't create an empty site." );
|
wp_die( __( "Can't create an empty site." ) );
|
||||||
$blog = $_POST['blog'];
|
$blog = $_POST['blog'];
|
||||||
$domain = '';
|
$domain = '';
|
||||||
if ( ! preg_match( '/(--)/', $blog[ 'domain' ] ) && preg_match( '|^([a-zA-Z0-9-])+$|', $blog[ 'domain' ] ) )
|
if ( ! preg_match( '/(--)/', $blog['domain'] ) && preg_match( '|^([a-zA-Z0-9-])+$|', $blog['domain'] ) )
|
||||||
$domain = strtolower( $blog[ 'domain' ] );
|
$domain = strtolower( $blog['domain'] );
|
||||||
$email = sanitize_email( $blog[ 'email' ] );
|
$email = sanitize_email( $blog['email'] );
|
||||||
$title = $blog[ 'title' ];
|
$title = $blog['title'];
|
||||||
|
|
||||||
if ( empty( $domain ) )
|
if ( empty( $domain ) )
|
||||||
wp_die( __( 'Missing or invalid site address.' ) );
|
wp_die( __( 'Missing or invalid site address.' ) );
|
||||||
if ( empty( $email ) )
|
if ( empty( $email ) )
|
||||||
wp_die( __( 'Missing email address.' ) );
|
wp_die( __( 'Missing email address.' ) );
|
||||||
if ( !is_email( $email ) )
|
if ( !is_email( $email ) )
|
||||||
wp_die( __( 'Invalid email address' ) );
|
wp_die( __( 'Invalid email address.' ) );
|
||||||
|
|
||||||
if ( is_subdomain_install() ) {
|
if ( is_subdomain_install() ) {
|
||||||
$newdomain = $domain.".".$current_site->domain;
|
$newdomain = $domain . '.' . $current_site->domain;
|
||||||
$path = $base;
|
$path = $base;
|
||||||
} else {
|
} else {
|
||||||
$newdomain = $current_site->domain;
|
$newdomain = $current_site->domain;
|
||||||
$path = $base.$domain.'/';
|
$path = $base . $domain . '/';
|
||||||
}
|
}
|
||||||
|
|
||||||
$password = 'N/A';
|
$password = 'N/A';
|
||||||
|
@ -168,46 +165,52 @@ switch ( $_GET['action'] ) {
|
||||||
$password = wp_generate_password();
|
$password = wp_generate_password();
|
||||||
$user_id = wpmu_create_user( $domain, $password, $email );
|
$user_id = wpmu_create_user( $domain, $password, $email );
|
||||||
if ( false == $user_id )
|
if ( false == $user_id )
|
||||||
wp_die( __('There was an error creating the user') );
|
wp_die( __( 'There was an error creating the user.' ) );
|
||||||
else
|
else
|
||||||
wp_new_user_notification($user_id, $password);
|
wp_new_user_notification( $user_id, $password );
|
||||||
}
|
}
|
||||||
|
|
||||||
$wpdb->hide_errors();
|
$wpdb->hide_errors();
|
||||||
$id = wpmu_create_blog($newdomain, $path, $title, $user_id , array( "public" => 1 ), $current_site->id);
|
$id = wpmu_create_blog( $newdomain, $path, $title, $user_id , array( 'public' => 1 ), $current_site->id );
|
||||||
$wpdb->show_errors();
|
$wpdb->show_errors();
|
||||||
if ( !is_wp_error($id) ) {
|
if ( !is_wp_error( $id ) ) {
|
||||||
$dashboard_blog = get_dashboard_blog();
|
$dashboard_blog = get_dashboard_blog();
|
||||||
if ( get_user_option( 'primary_blog', $user_id ) == $dashboard_blog->blog_id )
|
if ( get_user_option( 'primary_blog', $user_id ) == $dashboard_blog->blog_id )
|
||||||
update_user_option( $user_id, 'primary_blog', $id, true );
|
update_user_option( $user_id, 'primary_blog', $id, true );
|
||||||
$content_mail = sprintf( __( "New site created by %1s\n\nAddress: http://%2s\nName: %3s"), $current_user->user_login , $newdomain.$path, stripslashes( $title ) );
|
$content_mail = sprintf( __( "New site created by %1s\n\nAddress: http://%2s\nName: %3s"), $current_user->user_login , $newdomain . $path, stripslashes( $title ) );
|
||||||
wp_mail( get_site_option('admin_email'), sprintf(__('[%s] New Site Created'), $current_site->site_name), $content_mail, 'From: "Site Admin" <' . get_site_option( 'admin_email' ) . '>' );
|
wp_mail( get_site_option('admin_email'), sprintf( __( '[%s] New Site Created' ), $current_site->site_name ), $content_mail, 'From: "Site Admin" <' . get_site_option( 'admin_email' ) . '>' );
|
||||||
wpmu_welcome_notification( $id, $user_id, $password, $title, array( "public" => 1 ) );
|
wpmu_welcome_notification( $id, $user_id, $password, $title, array( 'public' => 1 ) );
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'add-blog'), $_SERVER['HTTP_REFERER'] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'add-blog' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
} else {
|
} else {
|
||||||
wp_die( $id->get_error_message() );
|
wp_die( $id->get_error_message() );
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "updateblog":
|
case 'updateblog':
|
||||||
check_admin_referer('editblog');
|
check_admin_referer( 'editblog' );
|
||||||
if ( ! current_user_can( 'manage_sites' ) )
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
if ( empty( $_POST ) )
|
if ( empty( $_POST ) )
|
||||||
wp_die( __('You probably need to go back to the <a href="ms-sites.php">sites page</a>') );
|
wp_die( sprintf( __( 'You probably need to go back to the <a href="%s">sites page</a>', esc_url( admin_url( 'ms-sites.php' ) ) ) ) );
|
||||||
|
|
||||||
// themes
|
|
||||||
if ( isset($_POST[ 'theme' ]) && is_array( $_POST[ 'theme' ] ) )
|
|
||||||
$_POST[ 'option' ][ 'allowedthemes' ] = $_POST[ 'theme' ];
|
|
||||||
else
|
|
||||||
$_POST[ 'option' ][ 'allowedthemes' ] = '';
|
|
||||||
|
|
||||||
switch_to_blog( $id );
|
switch_to_blog( $id );
|
||||||
if ( is_array( $_POST[ 'option' ] ) ) {
|
|
||||||
|
// themes
|
||||||
|
$allowedthemes = array();
|
||||||
|
if ( isset($_POST['theme']) && is_array( $_POST['theme'] ) ) {
|
||||||
|
foreach ( $_POST['theme'] as $theme => $val ) {
|
||||||
|
if ( 'on' == $val )
|
||||||
|
$allowedthemes[$theme] = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
update_option( 'allowedthemes', $allowedthemes );
|
||||||
|
|
||||||
|
// options
|
||||||
|
if ( is_array( $_POST['option'] ) ) {
|
||||||
$c = 1;
|
$c = 1;
|
||||||
$count = count( $_POST[ 'option' ] );
|
$count = count( $_POST['option'] );
|
||||||
foreach ( (array) $_POST['option'] as $key => $val ) {
|
foreach ( (array) $_POST['option'] as $key => $val ) {
|
||||||
if ( $key === 0 || is_array( $val ) )
|
if ( $key === 0 || is_array( $val ) )
|
||||||
continue; // Avoids "0 is a protected WP option and may not be modified" error when edit blog options
|
continue; // Avoids "0 is a protected WP option and may not be modified" error when edit blog options
|
||||||
|
@ -219,10 +222,11 @@ switch ( $_GET['action'] ) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// home and siteurl
|
||||||
if ( isset( $_POST['update_home_url'] ) && $_POST['update_home_url'] == 'update' ) {
|
if ( isset( $_POST['update_home_url'] ) && $_POST['update_home_url'] == 'update' ) {
|
||||||
$blog_address = get_blogaddress_by_domain($_POST['blog']['domain'], $_POST['blog']['path']);
|
$blog_address = get_blogaddress_by_domain( $_POST['blog']['domain'], $_POST['blog']['path'] );
|
||||||
if ( get_option( 'siteurl' ) != $blog_address )
|
if ( get_option( 'siteurl' ) != $blog_address )
|
||||||
update_option( 'siteurl', $blog_address);
|
update_option( 'siteurl', $blog_address );
|
||||||
|
|
||||||
if ( get_option( 'home' ) != $blog_address )
|
if ( get_option( 'home' ) != $blog_address )
|
||||||
update_option( 'home', $blog_address );
|
update_option( 'home', $blog_address );
|
||||||
|
@ -231,210 +235,216 @@ switch ( $_GET['action'] ) {
|
||||||
// rewrite rules can't be flushed during switch to blog
|
// rewrite rules can't be flushed during switch to blog
|
||||||
delete_option( 'rewrite_rules' );
|
delete_option( 'rewrite_rules' );
|
||||||
|
|
||||||
// update blogs count
|
|
||||||
delete_site_transient( "blog_count" );
|
|
||||||
|
|
||||||
// update blogs table
|
// update blogs table
|
||||||
$blog_data = stripslashes_deep($_POST[ 'blog' ]);
|
$blog_data = stripslashes_deep( $_POST['blog'] );
|
||||||
update_blog_details($id, $blog_data);
|
update_blog_details( $id, $blog_data );
|
||||||
|
|
||||||
// get blog prefix
|
// get blog prefix
|
||||||
$blog_prefix = $wpdb->get_blog_prefix( $id );
|
$blog_prefix = $wpdb->get_blog_prefix( $id );
|
||||||
|
|
||||||
// user roles
|
// user roles
|
||||||
if ( isset( $_POST[ 'role' ] ) && is_array( $_POST[ 'role' ] ) == true ) {
|
if ( isset( $_POST['role'] ) && is_array( $_POST['role'] ) == true ) {
|
||||||
$newroles = $_POST[ 'role' ];
|
$newroles = $_POST['role'];
|
||||||
|
|
||||||
reset( $newroles );
|
reset( $newroles );
|
||||||
foreach ( (array) $newroles as $userid => $role ) {
|
foreach ( (array) $newroles as $userid => $role ) {
|
||||||
$user = new WP_User($userid);
|
$user = new WP_User( $userid );
|
||||||
if ( ! $user )
|
if ( ! $user )
|
||||||
continue;
|
continue;
|
||||||
$user->for_blog($id);
|
$user->for_blog( $id );
|
||||||
$user->set_role($role);
|
$user->set_role( $role );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// remove user
|
// remove user
|
||||||
if ( isset( $_POST[ 'blogusers' ] ) && is_array( $_POST[ 'blogusers' ] ) ) {
|
if ( isset( $_POST['blogusers'] ) && is_array( $_POST['blogusers'] ) ) {
|
||||||
reset( $_POST[ 'blogusers' ] );
|
reset( $_POST['blogusers'] );
|
||||||
foreach ( (array) $_POST[ 'blogusers' ] as $key => $val )
|
foreach ( (array) $_POST['blogusers'] as $key => $val )
|
||||||
remove_user_from_blog( $key, $id );
|
remove_user_from_blog( $key, $id );
|
||||||
}
|
}
|
||||||
|
|
||||||
// change password
|
// change password
|
||||||
if ( isset( $_POST[ 'user_password' ] ) && is_array( $_POST[ 'user_password' ] ) ) {
|
if ( isset( $_POST['user_password'] ) && is_array( $_POST['user_password'] ) ) {
|
||||||
reset( $_POST[ 'user_password' ] );
|
reset( $_POST['user_password'] );
|
||||||
$newroles = $_POST[ 'role' ];
|
$newroles = $_POST['role'];
|
||||||
foreach ( (array) $_POST[ 'user_password' ] as $userid => $pass ) {
|
foreach ( (array) $_POST['user_password'] as $userid => $pass ) {
|
||||||
unset( $_POST[ 'role' ] );
|
unset( $_POST['role'] );
|
||||||
$_POST[ 'role' ] = $newroles[ $userid ];
|
$_POST['role'] = $newroles[ $userid ];
|
||||||
if ( $pass != '' ) {
|
if ( $pass != '' ) {
|
||||||
$cap = $wpdb->get_var( "SELECT meta_value FROM {$wpdb->usermeta} WHERE user_id = '{$userid}' AND meta_key = '{$blog_prefix}capabilities' AND meta_value = 'a:0:{}'" );
|
$cap = $wpdb->get_var( "SELECT meta_value FROM {$wpdb->usermeta} WHERE user_id = '{$userid}' AND meta_key = '{$blog_prefix}capabilities' AND meta_value = 'a:0:{}'" );
|
||||||
$userdata = get_userdata($userid);
|
$userdata = get_userdata($userid);
|
||||||
$_POST[ 'pass1' ] = $_POST[ 'pass2' ] = $pass;
|
$_POST['pass1'] = $_POST['pass2'] = $pass;
|
||||||
$_POST[ 'email' ] = $userdata->user_email;
|
$_POST['email'] = $userdata->user_email;
|
||||||
$_POST[ 'rich_editing' ] = $userdata->rich_editing;
|
$_POST['rich_editing'] = $userdata->rich_editing;
|
||||||
edit_user( $userid );
|
edit_user( $userid );
|
||||||
if ( $cap == null )
|
if ( $cap == null )
|
||||||
$wpdb->query( "DELETE FROM {$wpdb->usermeta} WHERE user_id = '{$userid}' AND meta_key = '{$blog_prefix}capabilities' AND meta_value = 'a:0:{}'" );
|
$wpdb->query( "DELETE FROM {$wpdb->usermeta} WHERE user_id = '{$userid}' AND meta_key = '{$blog_prefix}capabilities' AND meta_value = 'a:0:{}'" );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
unset( $_POST[ 'role' ] );
|
unset( $_POST['role'] );
|
||||||
$_POST[ 'role' ] = $newroles;
|
$_POST['role'] = $newroles;
|
||||||
}
|
}
|
||||||
|
|
||||||
// add user?
|
// add user
|
||||||
if ( isset( $_POST[ 'user_password' ] ) && !empty( $_POST[ 'newuser' ] ) ) {
|
if ( !empty( $_POST['newuser'] ) ) {
|
||||||
$newuser = $_POST[ 'newuser' ];
|
$newuser = $_POST['newuser'];
|
||||||
$userid = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM " . $wpdb->users . " WHERE user_login = %s", $newuser ) );
|
$userid = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM " . $wpdb->users . " WHERE user_login = %s", $newuser ) );
|
||||||
if ( $userid ) {
|
if ( $userid ) {
|
||||||
$user = $wpdb->get_var( "SELECT user_id FROM " . $wpdb->usermeta . " WHERE user_id='$userid' AND meta_key='wp_" . $id . "_capabilities'" );
|
$user = $wpdb->get_var( "SELECT user_id FROM " . $wpdb->usermeta . " WHERE user_id='$userid' AND meta_key='{$blog_prefix}capabilities'" );
|
||||||
if ( $user == false )
|
if ( $user == false )
|
||||||
add_user_to_blog($id, $userid, $_POST[ 'new_role' ]);
|
add_user_to_blog( $id, $userid, $_POST['new_role'] );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
do_action( 'wpmu_update_blog_options' );
|
do_action( 'wpmu_update_blog_options' );
|
||||||
restore_current_blog();
|
restore_current_blog();
|
||||||
wpmu_admin_do_redirect( "ms-sites.php?action=editblog&updated=true&id=".$id );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'editblog', 'id' => $id ), wp_get_referer() ) );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "deleteblog":
|
case 'deleteblog':
|
||||||
check_admin_referer('deleteblog');
|
check_admin_referer('deleteblog');
|
||||||
if ( ! current_user_can( 'manage_sites' ) )
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
if ( $id != '0' && $id != $current_site->blog_id )
|
if ( $id != '0' && $id != $current_site->blog_id )
|
||||||
wpmu_delete_blog( $id, true );
|
wpmu_delete_blog( $id, true );
|
||||||
|
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'delete'), $_POST[ 'ref' ] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'delete' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "allblogs":
|
case 'allblogs':
|
||||||
if ( isset($_POST['doaction']) || isset($_POST['doaction2']) ) {
|
if ( isset( $_POST['doaction']) || isset($_POST['doaction2'] ) ) {
|
||||||
check_admin_referer('bulk-sites');
|
check_admin_referer( 'bulk-ms-sites' );
|
||||||
|
|
||||||
if ( ! current_user_can( 'manage_sites' ) )
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
if ( $_GET['action'] != -1 || $_POST['action2'] != -1 )
|
if ( $_GET['action'] != -1 || $_POST['action2'] != -1 )
|
||||||
$doaction = $doaction = ($_POST['action'] != -1) ? $_POST['action'] : $_POST['action2'];
|
$doaction = $_POST['action'] != -1 ? $_POST['action'] : $_POST['action2'];
|
||||||
|
|
||||||
|
|
||||||
foreach ( (array) $_POST[ 'allblogs' ] as $key => $val ) {
|
foreach ( (array) $_POST['allblogs'] as $key => $val ) {
|
||||||
if ( $val != '0' && $val != $current_site->blog_id ) {
|
if ( $val != '0' && $val != $current_site->blog_id ) {
|
||||||
switch ( $doaction ) {
|
switch ( $doaction ) {
|
||||||
case 'delete':
|
case 'delete':
|
||||||
$blogfunction = 'all_delete';
|
$blogfunction = 'all_delete';
|
||||||
wpmu_delete_blog( $val, true );
|
wpmu_delete_blog( $val, true );
|
||||||
break;
|
break;
|
||||||
case 'spam':
|
|
||||||
$blogfunction = 'all_spam';
|
case 'spam':
|
||||||
update_blog_status( $val, "spam", '1', 0 );
|
$blogfunction = 'all_spam';
|
||||||
set_time_limit(60);
|
update_blog_status( $val, 'spam', '1', 0 );
|
||||||
|
set_time_limit( 60 );
|
||||||
break;
|
break;
|
||||||
case 'notspam':
|
|
||||||
$blogfunction = 'all_notspam';
|
case 'notspam':
|
||||||
update_blog_status( $val, "spam", '0', 0 );
|
$blogfunction = 'all_notspam';
|
||||||
set_time_limit(60);
|
update_blog_status( $val, 'spam', '0', 0 );
|
||||||
|
set_time_limit( 60 );
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
wp_die( __( 'You are not allowed to change the current site.' ) );
|
||||||
}
|
}
|
||||||
} else {
|
}
|
||||||
wp_die( __('You are not allowed to change one of these sites.') );
|
|
||||||
exit();
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => $blogfunction), $_SERVER['HTTP_REFERER'] ) );
|
|
||||||
exit();
|
|
||||||
|
|
||||||
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $blogfunction ), wp_get_referer() ) );
|
||||||
|
exit();
|
||||||
} else {
|
} else {
|
||||||
wp_redirect( admin_url("ms-sites.php") );
|
wp_redirect( admin_url( 'ms-sites.php' ) );
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "archiveblog":
|
case 'archiveblog':
|
||||||
check_admin_referer('archiveblog');
|
check_admin_referer( 'archiveblog' );
|
||||||
if ( ! current_user_can( 'manage_sites' ) )
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
update_blog_status( $id, "archived", '1' );
|
update_blog_status( $id, 'archived', '1' );
|
||||||
do_action( "archive_blog", $id );
|
do_action( 'archive_blog', $id );
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'archive'), $_POST['ref'] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'archive' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "unarchiveblog":
|
case 'unarchiveblog':
|
||||||
check_admin_referer('unarchiveblog');
|
check_admin_referer( 'unarchiveblog' );
|
||||||
if ( ! current_user_can( 'manage_sites' ) )
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
do_action( "unarchive_blog", $id );
|
do_action( 'unarchive_blog', $id );
|
||||||
update_blog_status( $id, "archived", '0' );
|
update_blog_status( $id, 'archived', '0' );
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'unarchive'), $_POST['ref'] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unarchive' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "activateblog":
|
case 'activateblog':
|
||||||
check_admin_referer('activateblog');
|
check_admin_referer( 'activateblog' );
|
||||||
if ( ! current_user_can( 'manage_sites' ) )
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
update_blog_status( $id, "deleted", '0' );
|
update_blog_status( $id, 'deleted', '0' );
|
||||||
do_action( "activate_blog", $id );
|
do_action( 'activate_blog', $id );
|
||||||
wp_redirect( add_query_arg( "updated", array('updated' => 'true', 'action' => 'activate'), $_POST['ref'] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'activate' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "deactivateblog":
|
case 'deactivateblog':
|
||||||
check_admin_referer('deactivateblog');
|
check_admin_referer( 'deactivateblog' );
|
||||||
if ( ! current_user_can( 'manage_sites' ) )
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
do_action( "deactivate_blog", $id );
|
do_action( 'deactivate_blog', $id );
|
||||||
update_blog_status( $id, "deleted", '1' );
|
update_blog_status( $id, 'deleted', '1' );
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'deactivate'), $_POST['ref'] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'deactivate' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "unspamblog":
|
case 'unspamblog':
|
||||||
check_admin_referer('unspamblog');
|
check_admin_referer( 'unspamblog' );
|
||||||
if ( ! current_user_can( 'manage_sites' ) )
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
update_blog_status( $id, "spam", '0' );
|
update_blog_status( $id, 'spam', '0' );
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'unspam'), $_POST['ref'] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unspam' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "spamblog":
|
case 'spamblog':
|
||||||
check_admin_referer('spamblog');
|
check_admin_referer( 'spamblog' );
|
||||||
if ( ! current_user_can( 'manage_sites' ) )
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
update_blog_status( $id, "spam", '1' );
|
update_blog_status( $id, 'spam', '1' );
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'spam'), $_POST['ref'] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'spam' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "mature":
|
case 'matureblog':
|
||||||
|
check_admin_referer( 'matureblog' );
|
||||||
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
update_blog_status( $id, 'mature', '1' );
|
update_blog_status( $id, 'mature', '1' );
|
||||||
do_action( 'mature_blog', $id );
|
do_action( 'mature_blog', $id );
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'mature'), $_POST['ref'] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'mature' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "unmature":
|
case 'unmatureblog':
|
||||||
|
check_admin_referer( 'unmatureblog' );
|
||||||
|
if ( ! current_user_can( 'manage_sites' ) )
|
||||||
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
update_blog_status( $id, 'mature', '0' );
|
update_blog_status( $id, 'mature', '0' );
|
||||||
do_action( 'unmature_blog', $id );
|
do_action( 'unmature_blog', $id );
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'umature'), $_POST['ref'] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unmature' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// Themes
|
// Themes
|
||||||
case "updatethemes":
|
case 'updatethemes':
|
||||||
if ( ! current_user_can( 'manage_network_themes' ) )
|
if ( ! current_user_can( 'manage_network_themes' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
if ( is_array( $_POST['theme'] ) ) {
|
if ( is_array( $_POST['theme'] ) ) {
|
||||||
$themes = get_themes();
|
$themes = get_themes();
|
||||||
|
@ -445,174 +455,217 @@ switch ( $_GET['action'] ) {
|
||||||
}
|
}
|
||||||
update_site_option( 'allowedthemes', $allowed_themes );
|
update_site_option( 'allowedthemes', $allowed_themes );
|
||||||
}
|
}
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'themes'), $_SERVER['HTTP_REFERER'] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'themes' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// Common
|
// Common
|
||||||
case "confirm":
|
case 'confirm':
|
||||||
$referrer = ( isset($_GET['ref']) ) ? stripslashes($_GET['ref']) : $_SERVER['HTTP_REFERER'];
|
|
||||||
$referrer = esc_url($referrer);
|
|
||||||
if ( !headers_sent() ) {
|
if ( !headers_sent() ) {
|
||||||
nocache_headers();
|
nocache_headers();
|
||||||
header( 'Content-Type: text/html; charset=utf-8' );
|
header( 'Content-Type: text/html; charset=utf-8' );
|
||||||
}
|
}
|
||||||
|
if ( $current_site->blog_id == $id )
|
||||||
|
wp_die( __( 'You are not allowed to change the current site.' ) );
|
||||||
?>
|
?>
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml" <?php if ( function_exists('language_attributes') ) language_attributes(); ?>>
|
<html xmlns="http://www.w3.org/1999/xhtml" <?php if ( function_exists( 'language_attributes' ) ) language_attributes(); ?>>
|
||||||
<head>
|
<head>
|
||||||
<title><?php _e("WordPress › Confirm your action"); ?></title>
|
<title><?php _e( 'WordPress › Confirm your action' ); ?></title>
|
||||||
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||||
<?php wp_admin_css( 'install', true ); ?>
|
<?php wp_admin_css( 'install', true ); ?>
|
||||||
</head>
|
</head>
|
||||||
<body id="error-page">
|
<body id="error-page">
|
||||||
<h1 id="logo"><img alt="WordPress" src="<?php echo esc_url( admin_url( 'images/wordpress-logo.png' ) ); ?>" /></h1>
|
<h1 id="logo"><img alt="WordPress" src="<?php echo esc_attr( admin_url( 'images/wordpress-logo.png' ) ); ?>" /></h1>
|
||||||
<form action='ms-edit.php?action=<?php echo esc_attr( $_GET[ 'action2' ] ) ?>' method='post'>
|
<form action="ms-edit.php?action=<?php echo esc_attr( $_GET['action2'] ) ?>" method="post">
|
||||||
<input type='hidden' name='action' value='<?php echo esc_attr( $_GET['action2'] ) ?>' />
|
<input type="hidden" name="action" value="<?php echo esc_attr( $_GET['action2'] ) ?>" />
|
||||||
<input type='hidden' name='id' value='<?php echo esc_attr( $id ); ?>' />
|
<input type="hidden" name="id" value="<?php echo esc_attr( $id ); ?>" />
|
||||||
<input type='hidden' name='ref' value='<?php echo $referrer; ?>' />
|
<input type="hidden" name="_wp_http_referer" value="<?php echo esc_attr( wp_get_referer() ); ?>" />
|
||||||
<?php wp_nonce_field( $_GET['action2'] ) ?>
|
<?php wp_nonce_field( $_GET['action2'], '_wpnonce', false ); ?>
|
||||||
<p><?php echo esc_html( stripslashes($_GET['msg']) ); ?></p>
|
<p><?php esc_html_e( stripslashes( $_GET['msg'] ) ); ?></p>
|
||||||
<p class="submit"><input class="button" type='submit' value='<?php _e("Confirm"); ?>' /></p>
|
<p class="submit"><input class="button" type="submit" value="<?php _e( 'Confirm' ); ?>" /></p>
|
||||||
</form>
|
</form>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
<?php
|
<?php
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// Users (not used any more)
|
// Users
|
||||||
case "deleteuser":
|
case 'deleteuser':
|
||||||
check_admin_referer('deleteuser');
|
|
||||||
if ( $id != '0' && $id != '1' )
|
|
||||||
wpmu_delete_user($id);
|
|
||||||
|
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'delete'), $_POST['ref'] ) );
|
|
||||||
exit();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "allusers":
|
|
||||||
check_admin_referer('allusers');
|
|
||||||
if ( ! current_user_can( 'manage_network_users' ) )
|
if ( ! current_user_can( 'manage_network_users' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
if ( isset($_POST['alluser_delete']) ) {
|
check_admin_referer( 'deleteuser' );
|
||||||
require_once('admin-header.php');
|
|
||||||
echo '<div class="wrap" style="position:relative;">';
|
if ( $id != '0' && $id != '1' ) {
|
||||||
|
$_POST['allusers'] = array( $id ); // confirm_delete_users() can only handle with arrays
|
||||||
|
$title = __( 'Users' );
|
||||||
|
$parent_file = 'ms-admin.php';
|
||||||
|
require_once( 'admin-header.php' );
|
||||||
|
echo '<div class="wrap">';
|
||||||
confirm_delete_users( $_POST['allusers'] );
|
confirm_delete_users( $_POST['allusers'] );
|
||||||
echo '</div>';
|
echo '</div>';
|
||||||
require_once('admin-footer.php');
|
require_once( 'admin-footer.php' );
|
||||||
} elseif ( isset( $_POST[ 'alluser_transfer_delete' ] ) ) {
|
exit();
|
||||||
if ( is_array( $_POST[ 'blog' ] ) && !empty( $_POST[ 'blog' ] ) ) {
|
|
||||||
foreach ( $_POST[ 'blog' ] as $id => $users ) {
|
|
||||||
foreach ( $users as $blogid => $user_id ) {
|
|
||||||
remove_user_from_blog( $id, $blogid, $user_id );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if ( is_array( $_POST[ 'user' ] ) && !empty( $_POST[ 'user' ] ) )
|
|
||||||
foreach( $_POST[ 'user' ] as $id )
|
|
||||||
wpmu_delete_user( $id );
|
|
||||||
|
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'all_delete'), 'ms-users.php' ) );
|
|
||||||
} elseif ( isset( $_POST[ 'add_superadmin' ] ) ) {
|
|
||||||
$super_admins = get_site_option( 'site_admins', array( 'admin' ) );
|
|
||||||
$mainblog_id = $wpdb->get_var( "SELECT blog_id FROM {$wpdb->blogs} WHERE domain='{$current_site->domain}' AND path='{$current_site->path}'" );
|
|
||||||
foreach ( (array) $_POST['allusers'] as $key => $val ) {
|
|
||||||
if ( $val == '' || $val == '0' )
|
|
||||||
continue;
|
|
||||||
$user = new WP_User( $val );
|
|
||||||
if ( in_array( $user->user_login, $super_admins ) )
|
|
||||||
continue;
|
|
||||||
if ( $mainblog_id )
|
|
||||||
add_user_to_blog( $mainblog_id, $user->ID, 'administrator' );
|
|
||||||
$super_admins[] = $user->user_login;
|
|
||||||
}
|
|
||||||
update_site_option( 'site_admins' , $super_admins );
|
|
||||||
|
|
||||||
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'add_superadmin' ), $_SERVER['HTTP_REFERER'] ) );
|
|
||||||
} elseif ( isset( $_POST[ 'remove_superadmin' ] ) ) {
|
|
||||||
$super_admins = get_site_option( 'site_admins', array( 'admin' ) );
|
|
||||||
$admin_email = get_site_option( 'admin_email' );
|
|
||||||
foreach ( (array) $_POST['allusers'] as $key => $val ) {
|
|
||||||
if ( $val == '' || $val == '0' )
|
|
||||||
continue;
|
|
||||||
$user = new WP_User( $val );
|
|
||||||
if ( $user->ID == $current_user->ID || $user->user_email == $admin_email )
|
|
||||||
continue;
|
|
||||||
foreach ( $super_admins as $key => $username ) {
|
|
||||||
if ( $username == $user->user_login ) {
|
|
||||||
unset( $super_admins[ $key ] );
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
update_site_option( 'site_admins' , $super_admins );
|
|
||||||
|
|
||||||
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'remove_superadmin' ), $_SERVER['HTTP_REFERER'] ) );
|
|
||||||
} else {
|
} else {
|
||||||
foreach ( (array) $_POST['allusers'] as $key => $val ) {
|
wp_redirect( admin_url( 'ms-users.php' ) );
|
||||||
if ( $val == '' || $val == '0' )
|
|
||||||
continue;
|
|
||||||
$user = new WP_User( $val );
|
|
||||||
if ( in_array( $user->user_login, get_site_option( 'site_admins', array( 'admin' ) ) ) )
|
|
||||||
wp_die( sprintf( __( 'Warning! User cannot be modified. The user %s is a network admnistrator.' ), $user->user_login ) );
|
|
||||||
if ( isset($_POST['alluser_spam']) ) {
|
|
||||||
$userfunction = 'all_spam';
|
|
||||||
$blogs = get_blogs_of_user( $val, true );
|
|
||||||
foreach ( (array) $blogs as $key => $details ) {
|
|
||||||
if ( $details->userblog_id == $current_site->blog_id ) { continue; } // main blog not a spam !
|
|
||||||
update_blog_status( $details->userblog_id, "spam", '1' );
|
|
||||||
}
|
|
||||||
update_user_status( $val, "spam", '1', 1 );
|
|
||||||
} elseif ( isset($_POST['alluser_notspam']) ) {
|
|
||||||
$userfunction = 'all_notspam';
|
|
||||||
$blogs = get_blogs_of_user( $val, true );
|
|
||||||
foreach ( (array) $blogs as $key => $details ) {
|
|
||||||
update_blog_status( $details->userblog_id, "spam", '0' );
|
|
||||||
}
|
|
||||||
update_user_status( $val, "spam", '0', 1 );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => $userfunction), $_SERVER['HTTP_REFERER'] ) );
|
|
||||||
}
|
}
|
||||||
exit();
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "adduser":
|
case 'allusers':
|
||||||
check_admin_referer('add-user');
|
|
||||||
if ( ! current_user_can( 'manage_network_users' ) )
|
if ( ! current_user_can( 'manage_network_users' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
if ( is_array( $_POST[ 'user' ] ) == false )
|
if ( isset( $_POST['doaction']) || isset($_POST['doaction2'] ) ) {
|
||||||
wp_die( __( "Cannot create an empty user." ) );
|
check_admin_referer( 'bulk-ms-users' );
|
||||||
|
|
||||||
|
if ( $_GET['action'] != -1 || $_POST['action2'] != -1 )
|
||||||
|
$doaction = $_POST['action'] != -1 ? $_POST['action'] : $_POST['action2'];
|
||||||
|
|
||||||
|
foreach ( (array) $_POST['allusers'] as $key => $val ) {
|
||||||
|
if ( $val != '' || $val != '0' ) {
|
||||||
|
switch ( $doaction ) {
|
||||||
|
case 'delete':
|
||||||
|
$title = __( 'Users' );
|
||||||
|
$parent_file = 'ms-admin.php';
|
||||||
|
require_once( 'admin-header.php' );
|
||||||
|
echo '<div class="wrap">';
|
||||||
|
confirm_delete_users( $_POST['allusers'] );
|
||||||
|
echo '</div>';
|
||||||
|
require_once( 'admin-footer.php' );
|
||||||
|
exit();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'superadmin':
|
||||||
|
$userfunction = 'add_superadmin';
|
||||||
|
$super_admins = get_site_option( 'site_admins', array( 'admin' ) );
|
||||||
|
|
||||||
|
$user = new WP_User( $val );
|
||||||
|
if ( ! in_array( $user->user_login, $super_admins ) ) {
|
||||||
|
if ( $current_site->blog_id )
|
||||||
|
add_user_to_blog( $current_site->blog_id, $user->ID, 'administrator' );
|
||||||
|
|
||||||
|
$super_admins[] = $user->user_login;
|
||||||
|
update_site_option( 'site_admins' , $super_admins );
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'notsuperadmin':
|
||||||
|
$userfunction = 'remove_superadmin';
|
||||||
|
$super_admins = get_site_option( 'site_admins', array( 'admin' ) );
|
||||||
|
$admin_email = get_site_option( 'admin_email' );
|
||||||
|
|
||||||
|
$user = new WP_User( $val );
|
||||||
|
if ( $user->ID != $current_user->ID || $user->user_email != $admin_email ) {
|
||||||
|
foreach ( $super_admins as $key => $username ) {
|
||||||
|
if ( $username == $user->user_login ) {
|
||||||
|
unset( $super_admins[$key] );
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
update_site_option( 'site_admins' , $super_admins );
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'spam':
|
||||||
|
$user = new WP_User( $val );
|
||||||
|
if ( in_array( $user->user_login, get_site_option( 'site_admins', array( 'admin' ) ) ) )
|
||||||
|
wp_die( sprintf( __( 'Warning! User cannot be modified. The user %s is a network admnistrator.' ), esc_html( $user->user_login ) ) );
|
||||||
|
|
||||||
|
$userfunction = 'all_spam';
|
||||||
|
$blogs = get_blogs_of_user( $val, true );
|
||||||
|
foreach ( (array) $blogs as $key => $details ) {
|
||||||
|
if ( $details->userblog_id != $current_site->blog_id ) // main blog not a spam !
|
||||||
|
update_blog_status( $details->userblog_id, 'spam', '1' );
|
||||||
|
}
|
||||||
|
update_user_status( $val, 'spam', '1', 1 );
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'notspam':
|
||||||
|
$userfunction = 'all_notspam';
|
||||||
|
$blogs = get_blogs_of_user( $val, true );
|
||||||
|
foreach ( (array) $blogs as $key => $details )
|
||||||
|
update_blog_status( $details->userblog_id, 'spam', '0' );
|
||||||
|
|
||||||
|
update_user_status( $val, 'spam', '0', 1 );
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $userfunction ), wp_get_referer() ) );
|
||||||
|
exit();
|
||||||
|
} else {
|
||||||
|
wp_redirect( admin_url( 'ms-users.php' ) );
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'dodelete':
|
||||||
|
check_admin_referer( 'ms-users-delete' );
|
||||||
|
if ( ! current_user_can( 'manage_network_users' ) )
|
||||||
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
|
if ( is_array( $_POST['blog'] ) && ! empty( $_POST['blog'] ) ) {
|
||||||
|
foreach ( $_POST['blog'] as $id => $users ) {
|
||||||
|
foreach ( $users as $blogid => $user_id ) {
|
||||||
|
if ( ! empty( $_POST['delete'] ) && 'reassign' == $_POST['delete'][$blogid][$id] )
|
||||||
|
remove_user_from_blog( $id, $blogid, $user_id );
|
||||||
|
else
|
||||||
|
remove_user_from_blog( $id, $blogid );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$i = 0;
|
||||||
|
if ( is_array( $_POST['user'] ) && ! empty( $_POST['user'] ) )
|
||||||
|
foreach( $_POST['user'] as $id ) {
|
||||||
|
wpmu_delete_user( $id );
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( $i == 1 )
|
||||||
|
$deletefunction = 'delete';
|
||||||
|
else
|
||||||
|
$deletefunction = 'all_delete';
|
||||||
|
|
||||||
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $deletefunction ), admin_url( 'ms-users.php' ) ) );
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'adduser':
|
||||||
|
check_admin_referer( 'add-user' );
|
||||||
|
if ( ! current_user_can( 'manage_network_users' ) )
|
||||||
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
|
if ( is_array( $_POST['user'] ) == false )
|
||||||
|
wp_die( __( 'Cannot create an empty user.' ) );
|
||||||
$user = $_POST['user'];
|
$user = $_POST['user'];
|
||||||
if ( empty($user['username']) && empty($user['email']) )
|
if ( empty($user['username']) && empty($user['email']) )
|
||||||
wp_die( __('Missing username and email.') );
|
wp_die( __( 'Missing username and email.' ) );
|
||||||
elseif ( empty($user['username']) )
|
elseif ( empty($user['username']) )
|
||||||
wp_die( __('Missing username.') );
|
wp_die( __( 'Missing username.' ) );
|
||||||
elseif ( empty($user['email']) )
|
elseif ( empty($user['email']) )
|
||||||
wp_die( __('Missing email.') );
|
wp_die( __( 'Missing email.' ) );
|
||||||
|
|
||||||
$password = wp_generate_password();
|
$password = wp_generate_password();
|
||||||
$user_id = wpmu_create_user(esc_html( strtolower( $user['username'] ) ), $password, esc_html( $user['email'] ) );
|
$user_id = wpmu_create_user( esc_html( strtolower( $user['username'] ) ), $password, esc_html( $user['email'] ) );
|
||||||
|
|
||||||
if ( false == $user_id )
|
if ( false == $user_id )
|
||||||
wp_die( __('Duplicated username or email address.') );
|
wp_die( __( 'Duplicated username or email address.' ) );
|
||||||
else
|
else
|
||||||
wp_new_user_notification($user_id, $password);
|
wp_new_user_notification( $user_id, $password );
|
||||||
|
|
||||||
if ( get_site_option( 'dashboard_blog' ) == false )
|
if ( get_site_option( 'dashboard_blog' ) == false )
|
||||||
add_user_to_blog( $current_site->blog_id, $user_id, get_site_option( 'default_user_role', 'subscriber' ) );
|
add_user_to_blog( $current_site->blog_id, $user_id, get_site_option( 'default_user_role', 'subscriber' ) );
|
||||||
else
|
else
|
||||||
add_user_to_blog( get_site_option( 'dashboard_blog' ), $user_id, get_site_option( 'default_user_role', 'subscriber' ) );
|
add_user_to_blog( get_site_option( 'dashboard_blog' ), $user_id, get_site_option( 'default_user_role', 'subscriber' ) );
|
||||||
|
|
||||||
wp_redirect( add_query_arg( array('updated' => 'true', 'action' => 'add'), $_SERVER['HTTP_REFERER'] ) );
|
wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'add' ), wp_get_referer() ) );
|
||||||
exit();
|
exit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
wpmu_admin_do_redirect( "ms-admin.php" );
|
wp_redirect( admin_url( 'ms-admin.php' ) );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -1,42 +1,42 @@
|
||||||
<?php
|
<?php
|
||||||
require_once('admin.php');
|
require_once( './admin.php' );
|
||||||
|
|
||||||
if ( !is_multisite() )
|
if ( !is_multisite() )
|
||||||
wp_die( __('Multisite support is not enabled.') );
|
wp_die( __( 'Multisite support is not enabled.' ) );
|
||||||
|
|
||||||
$title = __('Network Options');
|
$title = __( 'Network Options' );
|
||||||
$parent_file = 'ms-admin.php';
|
$parent_file = 'ms-admin.php';
|
||||||
|
|
||||||
include('admin-header.php');
|
include( './admin-header.php' );
|
||||||
|
|
||||||
if ( ! current_user_can( 'manage_network_options' ) )
|
if ( ! current_user_can( 'manage_network_options' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
if (isset($_GET['updated'])) {
|
if (isset($_GET['updated'])) {
|
||||||
?>
|
?>
|
||||||
<div id="message" class="updated fade"><p><?php _e('Options saved.') ?></p></div>
|
<div id="message" class="updated fade"><p><?php _e( 'Options saved.' ) ?></p></div>
|
||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<div class="wrap">
|
<div class="wrap">
|
||||||
<?php screen_icon(); ?>
|
<?php screen_icon(); ?>
|
||||||
<h2><?php _e('Network Options') ?></h2>
|
<h2><?php _e( 'Network Options' ) ?></h2>
|
||||||
<form method="post" action="ms-edit.php?action=siteoptions">
|
<form method="post" action="ms-edit.php?action=siteoptions">
|
||||||
<?php wp_nonce_field( "siteoptions" ); ?>
|
<?php wp_nonce_field( 'siteoptions' ); ?>
|
||||||
<h3><?php _e('Operational Settings'); ?></h3>
|
<h3><?php _e( 'Operational Settings' ); ?></h3>
|
||||||
<table class="form-table">
|
<table class="form-table">
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="site_name"><?php _e('Network Name') ?></label></th>
|
<th scope="row"><label for="site_name"><?php _e( 'Network Name' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<input name="site_name" type="text" id="site_name" class="regular-text" value="<?php echo esc_attr($current_site->site_name) ?>" />
|
<input name="site_name" type="text" id="site_name" class="regular-text" value="<?php echo esc_attr( $current_site->site_name ) ?>" />
|
||||||
<br />
|
<br />
|
||||||
<?php _e('What you would like to call this website.') ?>
|
<?php _e( 'What you would like to call this website.' ) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="admin_email"><?php _e('Network Admin Email') ?></label></th>
|
<th scope="row"><label for="admin_email"><?php _e( 'Network Admin Email' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<input name="admin_email" type="text" id="admin_email" class="regular-text" value="<?php echo esc_attr( get_site_option('admin_email') ) ?>" />
|
<input name="admin_email" type="text" id="admin_email" class="regular-text" value="<?php echo esc_attr( get_site_option('admin_email') ) ?>" />
|
||||||
<br />
|
<br />
|
||||||
|
@ -45,16 +45,16 @@ if (isset($_GET['updated'])) {
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><?php _e('Global Terms') ?></th>
|
<th scope="row"><?php _e( 'Global Terms' ) ?></th>
|
||||||
<td>
|
<td>
|
||||||
<label><input type='radio' id="global_terms_enabled" name="global_terms_enabled" value='1'<?php checked( get_site_option( 'global_terms_enabled' ), 1 ) ?>/> <?php _e( 'Maintain a global list of terms from all sites across the network.' ); ?></label><br />
|
<label><input type="radio" id="global_terms_enabled" name="global_terms_enabled" value="1"<?php checked( get_site_option( 'global_terms_enabled' ), 1 ) ?>/> <?php _e( 'Maintain a global list of terms from all sites across the network.' ); ?></label><br />
|
||||||
<label><input type='radio' id="global_terms_enabled" name="global_terms_enabled" value='0'<?php checked( get_site_option( 'global_terms_enabled' ), 0 ) ?>/> <?php _e( 'Disabled' ); ?></label></td>
|
<label><input type="radio" id="global_terms_enabled" name="global_terms_enabled" value="0"<?php checked( get_site_option( 'global_terms_enabled' ), 0 ) ?>/> <?php _e( 'Disabled' ); ?></label></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<h3><?php _e('Dashboard Settings'); ?></h3>
|
<h3><?php _e( 'Dashboard Settings' ); ?></h3>
|
||||||
<table class="form-table">
|
<table class="form-table">
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="dashboard_blog"><?php _e('Dashboard Site') ?></label></th>
|
<th scope="row"><label for="dashboard_blog"><?php _e( 'Dashboard Site' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<?php
|
<?php
|
||||||
if ( $dashboard_blog = get_site_option( 'dashboard_blog' ) ) {
|
if ( $dashboard_blog = get_site_option( 'dashboard_blog' ) ) {
|
||||||
|
@ -63,14 +63,14 @@ if (isset($_GET['updated'])) {
|
||||||
} else {
|
} else {
|
||||||
$blogname = '';
|
$blogname = '';
|
||||||
}?>
|
}?>
|
||||||
<input name="dashboard_blog_orig" type="hidden" id="dashboard_blog_orig" value="<?php echo esc_attr($blogname); ?>" />
|
<input name="dashboard_blog_orig" type="hidden" id="dashboard_blog_orig" value="<?php echo esc_attr( $blogname ); ?>" />
|
||||||
<input name="dashboard_blog" type="text" id="dashboard_blog" value="<?php echo esc_attr($blogname); ?>" class="regular-text" />
|
<input name="dashboard_blog" type="text" id="dashboard_blog" value="<?php echo esc_attr( $blogname ); ?>" class="regular-text" />
|
||||||
<br />
|
<br />
|
||||||
<?php _e( "Site path ('dashboard', 'control', 'manager', etc) or blog id.<br />New users are added to this site as the user role defined below if they don't have a site. Leave blank for the main site. Users with the subscriber role on old site will be moved to the new site if changed. The new site will be created if it does not exist." ); ?>
|
<?php _e( "Site path ('dashboard', 'control', 'manager', etc) or blog id.<br />New users are added to this site as the user role defined below if they don't have a site. Leave blank for the main site. Users with the subscriber role on old site will be moved to the new site if changed. The new site will be created if it does not exist." ); ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="default_user_role"><?php _e('Dashboard User Default Role') ?></label></th>
|
<th scope="row"><label for="default_user_role"><?php _e( 'Dashboard User Default Role' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<select name="default_user_role" id="default_user_role"><?php
|
<select name="default_user_role" id="default_user_role"><?php
|
||||||
wp_dropdown_roles( get_site_option( 'default_user_role', 'subscriber' ) );
|
wp_dropdown_roles( get_site_option( 'default_user_role', 'subscriber' ) );
|
||||||
|
@ -81,75 +81,77 @@ if (isset($_GET['updated'])) {
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="admin_notice_feed"><?php _e('Admin Notice Feed') ?></label></th>
|
<th scope="row"><label for="admin_notice_feed"><?php _e( 'Admin Notice Feed' ) ?></label></th>
|
||||||
<td><input name="admin_notice_feed" class="large-text" type="text" id="admin_notice_feed" value="<?php echo esc_attr( get_site_option( 'admin_notice_feed' ) ) ?>" size="80" /><br />
|
<td><input name="admin_notice_feed" class="large-text" type="text" id="admin_notice_feed" value="<?php echo esc_attr( get_site_option( 'admin_notice_feed' ) ) ?>" size="80" /><br />
|
||||||
<?php _e( 'Display the latest post from this RSS or Atom feed on all site dashboards. Leave blank to disable.' ); ?><br />
|
<?php _e( 'Display the latest post from this RSS or Atom feed on all site dashboards. Leave blank to disable.' ); ?><br />
|
||||||
<?php if ( get_site_option( 'admin_notice_feed' ) != network_home_url('feed/', 'http') )
|
|
||||||
echo __( "A good one to use would be the feed from your main site: " ) . network_home_url('feed/'); ?></td>
|
<?php if ( get_site_option( 'admin_notice_feed' ) != get_home_url( $current_site->id, 'feed/' ) )
|
||||||
|
echo __( 'A good one to use would be the feed from your main site: ' ) . esc_url( get_home_url( $current_site->id, 'feed/' ) ) ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<h3><?php _e('Registration Settings'); ?></h3>
|
<h3><?php _e( 'Registration Settings' ); ?></h3>
|
||||||
<table class="form-table">
|
<table class="form-table">
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><?php _e('Allow new registrations') ?></th>
|
<th scope="row"><?php _e( 'Allow new registrations' ) ?></th>
|
||||||
<?php
|
<?php
|
||||||
if ( !get_site_option('registration') )
|
if ( !get_site_option( 'registration' ) )
|
||||||
update_site_option( 'registration', 'none' );
|
update_site_option( 'registration', 'none' );
|
||||||
|
$reg = get_site_option( 'registration' );
|
||||||
?>
|
?>
|
||||||
<td>
|
<td>
|
||||||
<label><input name="registration" type="radio" id="registration1" value='none'<?php checked( get_site_option('registration'), 'none') ?> /> <?php _e('Registration is disabled.'); ?></label><br />
|
<label><input name="registration" type="radio" id="registration1" value="none"<?php checked( $reg, 'none') ?> /> <?php _e( 'Registration is disabled.' ); ?></label><br />
|
||||||
<label><input name="registration" type="radio" id="registration2" value='user'<?php checked( get_site_option('registration'), 'user') ?> /> <?php _e('User accounts may be registered.'); ?></label><br />
|
<label><input name="registration" type="radio" id="registration2" value="user"<?php checked( $reg, 'user') ?> /> <?php _e( 'User accounts may be registered.' ); ?></label><br />
|
||||||
<label><input name="registration" type="radio" id="registration3" value='blog'<?php checked( get_site_option('registration'), 'blog') ?> /> <?php _e('Logged in users may register new sites.'); ?></label><br />
|
<label><input name="registration" type="radio" id="registration3" value="blog"<?php checked( $reg, 'blog') ?> /> <?php _e( 'Logged in users may register new sites.' ); ?></label><br />
|
||||||
<label><input name="registration" type="radio" id="registration4" value='all'<?php checked( get_site_option('registration'), 'all') ?> /> <?php _e('Both sites and user accounts can be registered.'); ?></label><br />
|
<label><input name="registration" type="radio" id="registration4" value="all"<?php checked( $reg, 'all') ?> /> <?php _e( 'Both sites and user accounts can be registered.' ); ?></label><br />
|
||||||
<p><?php _e('Disable or enable registration and who or what can be registered. (Default is disabled.)'); ?></p>
|
<p><?php _e( 'Disable or enable registration and who or what can be registered. (Default is disabled.)' ); ?></p>
|
||||||
<?php if ( is_subdomain_install() ) {
|
<?php if ( is_subdomain_install() ) {
|
||||||
echo '<p>' . __('If registration is disabled, please set <code>NOBLOGREDIRECT</code> in <code>wp-config.php</code> to a url you will redirect visitors to if they visit a non-existent site.') . '</p>';
|
echo '<p>' . __( 'If registration is disabled, please set <code>NOBLOGREDIRECT</code> in <code>wp-config.php</code> to a url you will redirect visitors to if they visit a non-existent site.' ) . '</p>';
|
||||||
} ?>
|
} ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><?php _e('Registration notification') ?></th>
|
<th scope="row"><?php _e( 'Registration notification' ) ?></th>
|
||||||
<?php
|
<?php
|
||||||
if ( !get_site_option('registrationnotification') )
|
if ( !get_site_option( 'registrationnotification' ) )
|
||||||
update_site_option( 'registrationnotification', 'yes' );
|
update_site_option( 'registrationnotification', 'yes' );
|
||||||
?>
|
?>
|
||||||
<td>
|
<td>
|
||||||
<label><input name="registrationnotification" type="checkbox" id="registrationnotification" value='yes'<?php checked( get_site_option('registrationnotification'), 'yes' ) ?> /> <?php _e('Send the network admin an email notification every time someone registers a site or user account.') ?></label>
|
<label><input name="registrationnotification" type="checkbox" id="registrationnotification" value="yes"<?php checked( get_site_option( 'registrationnotification' ), 'yes' ) ?> /> <?php _e( 'Send the network admin an email notification every time someone registers a site or user account.' ) ?></label>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr valign="top" id="addnewusers">
|
<tr valign="top" id="addnewusers">
|
||||||
<th scope="row"><?php _e('Add New Users') ?></th>
|
<th scope="row"><?php _e( 'Add New Users' ) ?></th>
|
||||||
<td>
|
<td>
|
||||||
<label><input name="add_new_users" type="checkbox" id="add_new_users" value='1'<?php checked( get_site_option('add_new_users') ) ?> /> <?php _e('Allow site administrators to add new users to their site via the "Users->Add New" page.'); ?></label>
|
<label><input name="add_new_users" type="checkbox" id="add_new_users" value="1"<?php checked( get_site_option( 'add_new_users' ) ) ?> /> <?php _e( 'Allow site administrators to add new users to their site via the "Users->Add New" page.' ); ?></label>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="illegal_names"><?php _e('Banned Names') ?></label></th>
|
<th scope="row"><label for="illegal_names"><?php _e( 'Banned Names' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<input name="illegal_names" type="text" id="illegal_names" class="large-text" value="<?php echo esc_attr( implode( " ", get_site_option('illegal_names') ) ); ?>" size="45" />
|
<input name="illegal_names" type="text" id="illegal_names" class="large-text" value="<?php echo esc_attr( implode( " ", get_site_option( 'illegal_names' ) ) ); ?>" size="45" />
|
||||||
<br />
|
<br />
|
||||||
<?php _e('Users are not allowed to register these sites. Separate names by spaces.') ?>
|
<?php _e( 'Users are not allowed to register these sites. Separate names by spaces.' ) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="limited_email_domains"><?php _e('Limited Email Registrations') ?></label></th>
|
<th scope="row"><label for="limited_email_domains"><?php _e( 'Limited Email Registrations' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<?php $limited_email_domains = get_site_option('limited_email_domains');
|
<?php $limited_email_domains = get_site_option( 'limited_email_domains' );
|
||||||
$limited_email_domains = str_replace( ' ', "\n", $limited_email_domains ); ?>
|
$limited_email_domains = str_replace( ' ', "\n", $limited_email_domains ); ?>
|
||||||
<textarea name="limited_email_domains" id="limited_email_domains" cols='45' rows='5'><?php echo wp_htmledit_pre( $limited_email_domains == '' ? '' : implode( "\n", (array) $limited_email_domains ) ); ?></textarea>
|
<textarea name="limited_email_domains" id="limited_email_domains" cols="45" rows="5"><?php echo wp_htmledit_pre( $limited_email_domains == '' ? '' : implode( "\n", (array) $limited_email_domains ) ); ?></textarea>
|
||||||
<br />
|
<br />
|
||||||
<?php _e('If you want to limit site registrations to certain domains. Enter one domain per line.') ?>
|
<?php _e( 'If you want to limit site registrations to certain domains. Enter one domain per line.' ) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="banned_email_domains"><?php _e('Banned Email Domains') ?></label></th>
|
<th scope="row"><label for="banned_email_domains"><?php _e('Banned Email Domains') ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<textarea name="banned_email_domains" id="banned_email_domains" cols='45' rows='5'><?php echo wp_htmledit_pre( get_site_option('banned_email_domains') == '' ? '' : implode( "\n", (array) get_site_option('banned_email_domains') ) ); ?></textarea>
|
<textarea name="banned_email_domains" id="banned_email_domains" cols="45" rows="5"><?php echo wp_htmledit_pre( get_site_option( 'banned_email_domains' ) == '' ? '' : implode( "\n", (array) get_site_option( 'banned_email_domains' ) ) ); ?></textarea>
|
||||||
<br />
|
<br />
|
||||||
<?php _e('If you want to ban domains from site registrations. Enter one domain per line.') ?>
|
<?php _e('If you want to ban domains from site registrations. Enter one domain per line.') ?>
|
||||||
</td>
|
</td>
|
||||||
|
@ -160,105 +162,105 @@ if (isset($_GET['updated'])) {
|
||||||
<table class="form-table">
|
<table class="form-table">
|
||||||
|
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="welcome_email"><?php _e('Welcome Email') ?></label></th>
|
<th scope="row"><label for="welcome_email"><?php _e( 'Welcome Email' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<textarea name="welcome_email" id="welcome_email" rows='5' cols='45' class="large-text"><?php echo stripslashes( get_site_option('welcome_email') ) ?></textarea>
|
<textarea name="welcome_email" id="welcome_email" rows="5" cols="45" class="large-text"><?php echo stripslashes( get_site_option( 'welcome_email' ) ) ?></textarea>
|
||||||
<br />
|
<br />
|
||||||
<?php _e('The welcome email sent to new site owners.') ?>
|
<?php _e( 'The welcome email sent to new site owners.' ) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="welcome_user_email"><?php _e('Welcome User Email') ?></label></th>
|
<th scope="row"><label for="welcome_user_email"><?php _e( 'Welcome User Email' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<textarea name="welcome_user_email" id="welcome_user_email" rows='5' cols='45' class="large-text"><?php echo stripslashes( get_site_option('welcome_user_email') ) ?></textarea>
|
<textarea name="welcome_user_email" id="welcome_user_email" rows="5" cols="45" class="large-text"><?php echo stripslashes( get_site_option( 'welcome_user_email' ) ) ?></textarea>
|
||||||
<br />
|
<br />
|
||||||
<?php _e('The welcome email sent to new users.') ?>
|
<?php _e( 'The welcome email sent to new users.' ) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="first_post"><?php _e('First Post') ?></label></th>
|
<th scope="row"><label for="first_post"><?php _e( 'First Post' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<textarea name="first_post" id="first_post" rows='5' cols='45' class="large-text"><?php echo stripslashes( get_site_option('first_post') ) ?></textarea>
|
<textarea name="first_post" id="first_post" rows="5" cols="45" class="large-text"><?php echo stripslashes( get_site_option( 'first_post' ) ) ?></textarea>
|
||||||
<br />
|
<br />
|
||||||
<?php _e('The first post on a new site.') ?>
|
<?php _e( 'The first post on a new site.' ) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="first_page"><?php _e('First Page') ?></label></th>
|
<th scope="row"><label for="first_page"><?php _e( 'First Page' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<textarea name="first_page" id="first_page" rows='5' cols='45' class="large-text"><?php echo stripslashes( get_site_option('first_page') ) ?></textarea>
|
<textarea name="first_page" id="first_page" rows="5" cols="45" class="large-text"><?php echo stripslashes( get_site_option('first_page') ) ?></textarea>
|
||||||
<br />
|
<br />
|
||||||
<?php _e('The first page on a new site.') ?>
|
<?php _e( 'The first page on a new site.' ) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="first_comment"><?php _e('First Comment') ?></label></th>
|
<th scope="row"><label for="first_comment"><?php _e( 'First Comment' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<textarea name="first_comment" id="first_comment" rows='5' cols='45' class="large-text"><?php echo stripslashes( get_site_option('first_comment') ) ?></textarea>
|
<textarea name="first_comment" id="first_comment" rows="5" cols="45" class="large-text"><?php echo stripslashes( get_site_option('first_comment') ) ?></textarea>
|
||||||
<br />
|
<br />
|
||||||
<?php _e('The first comment on a new site.') ?>
|
<?php _e( 'The first comment on a new site.' ) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="first_comment_author"><?php _e('First Comment Author') ?></label></th>
|
<th scope="row"><label for="first_comment_author"><?php _e( 'First Comment Author' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<input type="text" size='40' name="first_comment_author" id="first_comment_author" value="<?php echo get_site_option('first_comment_author') ?>" />
|
<input type="text" size="40" name="first_comment_author" id="first_comment_author" value="<?php echo get_site_option('first_comment_author') ?>" />
|
||||||
<br />
|
<br />
|
||||||
<?php _e('The author of the first comment on a new site.') ?>
|
<?php _e( 'The author of the first comment on a new site.' ) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="first_comment_url"><?php _e('First Comment URL') ?></label></th>
|
<th scope="row"><label for="first_comment_url"><?php _e( 'First Comment URL' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<input type="text" size='40' name="first_comment_url" id="first_comment_url" value="<?php echo esc_attr(get_site_option('first_comment_url')) ?>" />
|
<input type="text" size="40" name="first_comment_url" id="first_comment_url" value="<?php echo esc_attr( get_site_option( 'first_comment_url' ) ) ?>" />
|
||||||
<br />
|
<br />
|
||||||
<?php _e('The URL for the first comment on a new site.') ?>
|
<?php _e( 'The URL for the first comment on a new site.' ) ?>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<h3><?php _e('Upload Settings'); ?></h3>
|
<h3><?php _e( 'Upload Settings' ); ?></h3>
|
||||||
<table class="form-table">
|
<table class="form-table">
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><?php _e('Media upload buttons') ?></th>
|
<th scope="row"><?php _e( 'Media upload buttons' ) ?></th>
|
||||||
<?php $mu_media_buttons = get_site_option( 'mu_media_buttons', array() ); ?>
|
<?php $mu_media_buttons = get_site_option( 'mu_media_buttons', array() ); ?>
|
||||||
<td><label><input type='checkbox' id="mu_media_buttons_image" name="mu_media_buttons[image]" value='1'<?php checked( !empty($mu_media_buttons[ 'image' ]) ) ?>/> <?php _e( 'Images' ); ?></label><br />
|
<td><label><input type="checkbox" id="mu_media_buttons_image" name="mu_media_buttons[image]" value="1"<?php checked( ! empty( $mu_media_buttons['image'] ) ) ?>/> <?php _e( 'Images' ); ?></label><br />
|
||||||
<label><input type='checkbox' id="mu_media_buttons_video" name="mu_media_buttons[video]" value='1'<?php checked( !empty($mu_media_buttons[ 'video' ]) ) ?>/> <?php _e( 'Videos' ); ?></label><br />
|
<label><input type="checkbox" id="mu_media_buttons_video" name="mu_media_buttons[video]" value="1"<?php checked( ! empty( $mu_media_buttons['video'] ) ) ?>/> <?php _e( 'Videos' ); ?></label><br />
|
||||||
<label><input type='checkbox' id="mu_media_buttons_audio" name="mu_media_buttons[audio]" value='1'<?php checked( !empty($mu_media_buttons[ 'audio' ]) ) ?>/> <?php _e( 'Music' ); ?></label><br />
|
<label><input type="checkbox" id="mu_media_buttons_audio" name="mu_media_buttons[audio]" value="1"<?php checked( ! empty( $mu_media_buttons['audio'] ) ) ?>/> <?php _e( 'Music' ); ?></label><br />
|
||||||
<?php _e( 'The media upload buttons to display on the "Write Post" page. Make sure you update the allowed upload file types below as well.' ); ?></td>
|
<?php _e( 'The media upload buttons to display on the "Write Post" page. Make sure you update the allowed upload file types below as well.' ); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><?php _e('Site upload space') ?></th>
|
<th scope="row"><?php _e( 'Site upload space' ) ?></th>
|
||||||
<td>
|
<td>
|
||||||
<label><input type='checkbox' id="upload_space_check_disabled" name="upload_space_check_disabled" value='0'<?php checked( get_site_option( 'upload_space_check_disabled' ), 0 ) ?>/> <?php printf( __( 'Limit total size of files uploaded to %s MB' ), '<input name="blog_upload_space" type="text" id="blog_upload_space" value="' . esc_attr( get_site_option('blog_upload_space', 10) ) . '" size="3" />' ); ?></label><br />
|
<label><input type="checkbox" id="upload_space_check_disabled" name="upload_space_check_disabled" value="0"<?php checked( get_site_option( 'upload_space_check_disabled' ), 0 ) ?>/> <?php printf( __( 'Limit total size of files uploaded to %s MB' ), '<input name="blog_upload_space" type="text" id="blog_upload_space" value="' . esc_attr( get_site_option('blog_upload_space', 10) ) . '" size="3" />' ); ?></label><br />
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="upload_filetypes"><?php _e('Upload file types') ?></label></th>
|
<th scope="row"><label for="upload_filetypes"><?php _e( 'Upload file types' ) ?></label></th>
|
||||||
<td><input name="upload_filetypes" type="text" id="upload_filetypes" class="large-text" value="<?php echo esc_attr( get_site_option('upload_filetypes', 'jpg jpeg png gif') ) ?>" size="45" /></td>
|
<td><input name="upload_filetypes" type="text" id="upload_filetypes" class="large-text" value="<?php echo esc_attr( get_site_option('upload_filetypes', 'jpg jpeg png gif') ) ?>" size="45" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><label for="fileupload_maxk"><?php _e('Max upload file size') ?></label></th>
|
<th scope="row"><label for="fileupload_maxk"><?php _e( 'Max upload file size' ) ?></label></th>
|
||||||
<td><?php printf( _x( '%s KB', 'File size in kilobytes' ), '<input name="fileupload_maxk" type="text" id="fileupload_maxk" value="' . esc_attr( get_site_option('fileupload_maxk', 300 ) ) . '" size="5" />' ); ?></td>
|
<td><?php printf( _x( '%s KB', 'File size in kilobytes' ), '<input name="fileupload_maxk" type="text" id="fileupload_maxk" value="' . esc_attr( get_site_option( 'fileupload_maxk', 300 ) ) . '" size="5" />' ); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
$languages = get_available_languages();
|
$languages = get_available_languages();
|
||||||
if ( ! empty( $languages ) ) {
|
if ( ! empty( $languages ) ) {
|
||||||
$lang = get_site_option('WPLANG');
|
$lang = get_site_option( 'WPLANG' );
|
||||||
?>
|
?>
|
||||||
<h3><?php _e('Network Wide Settings'); ?></h3>
|
<h3><?php _e( 'Network Wide Settings' ); ?></h3>
|
||||||
<div class="updated inline"><p><strong><?php _e( 'Notice:' ); ?></strong> <?php _e( 'These settings may be overridden by site owners.' ); ?></p></div>
|
<div class="updated inline"><p><strong><?php _e( 'Notice:' ); ?></strong> <?php _e( 'These settings may be overridden by site owners.' ); ?></p></div>
|
||||||
<table class="form-table">
|
<table class="form-table">
|
||||||
<?php
|
<?php
|
||||||
?>
|
?>
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th><label for="WPLANG"><?php _e('Default Language') ?></label></th>
|
<th><label for="WPLANG"><?php _e( 'Default Language' ) ?></label></th>
|
||||||
<td>
|
<td>
|
||||||
<select name="WPLANG" id="WPLANG">
|
<select name="WPLANG" id="WPLANG">
|
||||||
<?php mu_dropdown_languages( $languages, get_site_option('WPLANG') ); ?>
|
<?php mu_dropdown_languages( $languages, get_site_option( 'WPLANG' ) ); ?>
|
||||||
</select>
|
</select>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -267,7 +269,7 @@ if (isset($_GET['updated'])) {
|
||||||
} // languages
|
} // languages
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<h3><?php _e('Menu Settings'); ?></h3>
|
<h3><?php _e( 'Menu Settings' ); ?></h3>
|
||||||
<table id="menu" class="form-table">
|
<table id="menu" class="form-table">
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<th scope="row"><?php _e( 'Enable administration menus' ); ?></th>
|
<th scope="row"><?php _e( 'Enable administration menus' ); ?></th>
|
||||||
|
@ -276,7 +278,7 @@ if (isset($_GET['updated'])) {
|
||||||
$menu_perms = get_site_option( 'menu_items' );
|
$menu_perms = get_site_option( 'menu_items' );
|
||||||
$menu_items = apply_filters( 'mu_menu_items', array( 'plugins' => __( 'Plugins' ) ) );
|
$menu_items = apply_filters( 'mu_menu_items', array( 'plugins' => __( 'Plugins' ) ) );
|
||||||
foreach ( (array) $menu_items as $key => $val ) {
|
foreach ( (array) $menu_items as $key => $val ) {
|
||||||
echo "<label><input type='checkbox' name='menu_items[" . $key . "]' value='1'" . ( isset( $menu_perms[ $key ] ) ? checked( $menu_perms[ $key ], '1', false ) : '' ) . " /> " . esc_html( $val ) . "</label><br/>";
|
echo "<label><input type='checkbox' name='menu_items[" . $key . "]' value='1'" . ( isset( $menu_perms[$key] ) ? checked( $menu_perms[$key], '1', false ) : '' ) . " /> " . esc_html( $val ) . "</label><br/>";
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</td>
|
</td>
|
||||||
|
@ -285,8 +287,8 @@ if (isset($_GET['updated'])) {
|
||||||
|
|
||||||
<?php do_action( 'wpmu_options' ); // Add more options here ?>
|
<?php do_action( 'wpmu_options' ); // Add more options here ?>
|
||||||
|
|
||||||
<p class="submit"><input type="submit" class="button-primary" name="Submit" value="<?php esc_attr_e('Save Changes') ?>" /></p>
|
<p class="submit"><input type="submit" class="button-primary" name="Submit" value="<?php esc_attr_e( 'Save Changes' ) ?>" /></p>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<?php include('./admin-footer.php'); ?>
|
<?php include( './admin-footer.php' ); ?>
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,16 +1,16 @@
|
||||||
<?php
|
<?php
|
||||||
require_once('admin.php');
|
require_once( './admin.php' );
|
||||||
|
|
||||||
$title = __('Network Themes');
|
$title = __( 'Network Themes' );
|
||||||
$parent_file = 'ms-admin.php';
|
$parent_file = 'ms-admin.php';
|
||||||
require_once('admin-header.php');
|
require_once( './admin-header.php' );
|
||||||
|
|
||||||
if ( ! current_user_can( 'manage_network_themes' ) )
|
if ( ! current_user_can( 'manage_network_themes' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
if ( isset($_GET['updated']) ) {
|
if ( isset( $_GET['updated'] ) ) {
|
||||||
?>
|
?>
|
||||||
<div id="message" class="updated fade"><p><?php _e('Site themes saved.') ?></p></div>
|
<div id="message" class="updated fade"><p><?php _e( 'Site themes saved.' ) ?></p></div>
|
||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -18,17 +18,17 @@ $themes = get_themes();
|
||||||
$allowed_themes = get_site_allowed_themes();
|
$allowed_themes = get_site_allowed_themes();
|
||||||
?>
|
?>
|
||||||
<div class="wrap">
|
<div class="wrap">
|
||||||
<form action='ms-edit.php?action=updatethemes' method='post'>
|
<form action="<?php echo esc_url( admin_url( 'ms-edit.php?action=updatethemes' ) ); ?>" method="post">
|
||||||
<?php screen_icon(); ?>
|
<?php screen_icon(); ?>
|
||||||
<h2><?php _e('Network Themes') ?></h2>
|
<h2><?php _e( 'Network Themes' ) ?></h2>
|
||||||
<p><?php _e('Disable themes network-wide. You can enable themes on a site by site basis.') ?></p>
|
<p><?php _e( 'Disable themes network-wide. You can enable themes on a site by site basis.' ) ?></p>
|
||||||
<table class="widefat">
|
<table class="widefat">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th style="width:15%;text-align:center;"><?php _e('Active') ?></th>
|
<th style="width:15%;text-align:center;"><?php _e( 'Active' ) ?></th>
|
||||||
<th style="width:25%;"><?php _e('Theme') ?></th>
|
<th style="width:25%;"><?php _e( 'Theme' ) ?></th>
|
||||||
<th style="width:10%;"><?php _e('Version') ?></th>
|
<th style="width:10%;"><?php _e( 'Version' ) ?></th>
|
||||||
<th style="width:60%;"><?php _e('Description') ?></th>
|
<th style="width:60%;"><?php _e( 'Description' ) ?></th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody id="plugins">
|
<tbody id="plugins">
|
||||||
|
@ -37,23 +37,24 @@ $allowed_themes = get_site_allowed_themes();
|
||||||
$class = '';
|
$class = '';
|
||||||
foreach ( (array) $themes as $key => $theme ) {
|
foreach ( (array) $themes as $key => $theme ) {
|
||||||
$total_theme_count++;
|
$total_theme_count++;
|
||||||
$theme_key = esc_html($theme['Stylesheet']);
|
$theme_key = esc_html( $theme['Stylesheet'] );
|
||||||
$class = ('alt' == $class) ? '' : 'alt';
|
$class = ( 'alt' == $class ) ? '' : 'alt';
|
||||||
$class1 = $enabled = $disabled = '';
|
$class1 = $enabled = $disabled = '';
|
||||||
|
$enabled = $disabled = false;
|
||||||
|
|
||||||
if ( isset( $allowed_themes[ $theme_key ] ) == true ) {
|
if ( isset( $allowed_themes[$theme_key] ) == true ) {
|
||||||
$enabled = 'checked="checked" ';
|
$enabled = true;
|
||||||
$activated_themes_count++;
|
$activated_themes_count++;
|
||||||
$class1 = ' active';
|
$class1 = 'active';
|
||||||
} else {
|
} else {
|
||||||
$disabled = 'checked="checked" ';
|
$disabled = true;
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<tr valign="top" class="<?php echo $class.$class1; ?>">
|
<tr valign="top" class="<?php echo $class, $class1; ?>">
|
||||||
<td style="text-align:center;">
|
<td style="text-align:center;">
|
||||||
<label><input name="theme[<?php echo $theme_key ?>]" type="radio" id="enabled_<?php echo $theme_key ?>" value="enabled" <?php echo $enabled ?> /> <?php _e('Yes') ?></label>
|
<label><input name="theme[<?php echo $theme_key ?>]" type="radio" id="enabled_<?php echo $theme_key ?>" value="enabled" <?php checked( $enabled ) ?> /> <?php _e( 'Yes' ) ?></label>
|
||||||
|
|
||||||
<label><input name="theme[<?php echo $theme_key ?>]" type="radio" id="disabled_<?php echo $theme_key ?>" value="disabled" <?php echo $disabled ?> /> <?php _e('No') ?></label>
|
<label><input name="theme[<?php echo $theme_key ?>]" type="radio" id="disabled_<?php echo $theme_key ?>" value="disabled" <?php checked( $disabled ) ?> /> <?php _e( 'No' ) ?></label>
|
||||||
</td>
|
</td>
|
||||||
<th scope="row" style="text-align:left;"><?php echo $key ?></th>
|
<th scope="row" style="text-align:left;"><?php echo $key ?></th>
|
||||||
<td><?php echo $theme['Version'] ?></td>
|
<td><?php echo $theme['Version'] ?></td>
|
||||||
|
@ -64,15 +65,15 @@ $allowed_themes = get_site_allowed_themes();
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<p class="submit">
|
<p class="submit">
|
||||||
<input type='submit' value='<?php _e('Update Themes') ?>' /></p>
|
<input type="submit" value="<?php _e( 'Update Themes' ) ?>" /></p>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<h3><?php _e('Total')?></h3>
|
<h3><?php _e( 'Total' )?></h3>
|
||||||
<p>
|
<p>
|
||||||
<?php printf(__('Themes Installed: %d'), $total_theme_count); ?>
|
<?php printf( __( 'Themes Installed: %d' ), $total_theme_count); ?>
|
||||||
<br />
|
<br />
|
||||||
<?php printf(__('Themes Activated: %d'), $activated_themes_count); ?>
|
<?php printf( __( 'Themes Activated: %d' ), $activated_themes_count); ?>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<?php include('admin-footer.php'); ?>
|
<?php include( './admin-footer.php' ); ?>
|
||||||
|
|
|
@ -1,67 +1,71 @@
|
||||||
<?php
|
<?php
|
||||||
require_once('admin.php');
|
require_once( './admin.php' );
|
||||||
|
|
||||||
if ( !is_multisite() )
|
if ( !is_multisite() )
|
||||||
wp_die( __('Multisite support is not enabled.') );
|
wp_die( __( 'Multisite support is not enabled.' ) );
|
||||||
|
|
||||||
$title = __('Users');
|
$title = __( 'Users' );
|
||||||
$parent_file = 'ms-admin.php';
|
$parent_file = 'ms-admin.php';
|
||||||
|
|
||||||
wp_enqueue_script( 'admin-forms' );
|
wp_enqueue_script( 'admin-forms' );
|
||||||
|
|
||||||
require_once('admin-header.php');
|
require_once( './admin-header.php' );
|
||||||
|
|
||||||
if ( ! current_user_can( 'manage_network_users' ) )
|
if ( ! current_user_can( 'manage_network_users' ) )
|
||||||
wp_die( __('You do not have permission to access this page.') );
|
wp_die( __( 'You do not have permission to access this page.' ) );
|
||||||
|
|
||||||
if ( isset($_GET['updated']) && $_GET['updated'] == 'true' ) {
|
if ( isset( $_GET['updated'] ) && $_GET['updated'] == 'true' && ! empty( $_GET['action'] ) ) {
|
||||||
?>
|
?>
|
||||||
<div id="message" class="updated fade"><p>
|
<div id="message" class="updated fade"><p>
|
||||||
<?php
|
<?php
|
||||||
switch ($_GET['action']) {
|
switch ( $_GET['action'] ) {
|
||||||
case 'delete':
|
case 'delete':
|
||||||
_e('User deleted !');
|
_e( 'User deleted.' );
|
||||||
break;
|
break;
|
||||||
case 'all_spam':
|
case 'all_spam':
|
||||||
_e('Users marked as spam !');
|
_e( 'Users marked as spam.' );
|
||||||
break;
|
break;
|
||||||
case 'all_notspam':
|
case 'all_notspam':
|
||||||
_e('Users marked as not spam !');
|
_e( 'Users marked as not spam.' );
|
||||||
break;
|
break;
|
||||||
case 'all_delete':
|
case 'all_delete':
|
||||||
_e('Users deleted !');
|
_e( 'Users deleted.' );
|
||||||
break;
|
break;
|
||||||
case 'add':
|
case 'add':
|
||||||
_e('User added !');
|
_e( 'User added.' );
|
||||||
break;
|
break;
|
||||||
case 'add_superadmin':
|
case 'add_superadmin':
|
||||||
_e('Network admin added !');
|
_e( 'Network admin added.' );
|
||||||
break;
|
break;
|
||||||
case 'remove_superadmin':
|
case 'remove_superadmin':
|
||||||
_e('Network admin removed !');
|
_e( 'Network admin removed.' );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</p></div>
|
</p></div>
|
||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
?>
|
|
||||||
|
|
||||||
<div class="wrap" style="position:relative;">
|
$pagenum = isset( $_GET['paged'] ) ? absint( $_GET['paged'] ) : 0;
|
||||||
<?php
|
if ( empty( $pagenum ) )
|
||||||
$apage = isset( $_GET['apage'] ) ? intval( $_GET['apage'] ) : 1;
|
$pagenum = 1;
|
||||||
$num = isset( $_GET['num'] ) ? intval( $_GET['num'] ) : 15;
|
|
||||||
$s = isset($_GET[ 's' ]) ? esc_attr( trim( $_GET[ 's' ] ) ) : '';
|
$per_page = (int) get_user_option( 'ms_users_per_page' );
|
||||||
|
if ( empty( $per_page ) || $per_page < 1 )
|
||||||
|
$per_page = 15;
|
||||||
|
|
||||||
|
$per_page = apply_filters( 'ms_users_per_page', $per_page );
|
||||||
|
|
||||||
|
$s = isset( $_GET['s'] ) ? stripslashes( trim( $_GET[ 's' ] ) ) : '';
|
||||||
|
$like_s = esc_sql( like_escape( $s ) );
|
||||||
|
|
||||||
$query = "SELECT * FROM {$wpdb->users}";
|
$query = "SELECT * FROM {$wpdb->users}";
|
||||||
|
|
||||||
if ( !empty( $s ) ) {
|
if ( !empty( $like_s ) ) {
|
||||||
$search = '%' . trim( $s ) . '%';
|
$query .= " WHERE user_login LIKE '%$like_s%' OR user_email LIKE '%$like_s%'";
|
||||||
$query .= " WHERE user_login LIKE '$search' OR user_email LIKE '$search'";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$order_by = isset( $_GET['sortby'] ) ? $_GET['sortby'] : 'id';
|
$order_by = isset( $_GET['sortby'] ) ? $_GET['sortby'] : 'id';
|
||||||
|
|
||||||
if ( $order_by == 'email' ) {
|
if ( $order_by == 'email' ) {
|
||||||
$query .= ' ORDER BY user_email ';
|
$query .= ' ORDER BY user_email ';
|
||||||
} elseif ( $order_by == 'login' ) {
|
} elseif ( $order_by == 'login' ) {
|
||||||
|
@ -75,101 +79,131 @@ if ( isset($_GET['updated']) && $_GET['updated'] == 'true' ) {
|
||||||
$query .= ' ORDER BY ID ';
|
$query .= ' ORDER BY ID ';
|
||||||
}
|
}
|
||||||
|
|
||||||
$order = isset($_GET['order']) ? $_GET['order'] : 'ASC';
|
$order = ( isset( $_GET['order'] ) && 'DESC' == $_GET['order'] ) ? 'DESC' : 'ASC';
|
||||||
$order = ( 'DESC' == $order ) ? 'DESC' : 'ASC';
|
|
||||||
$query .= $order;
|
$query .= $order;
|
||||||
|
|
||||||
if ( !empty( $s ) )
|
$total = $wpdb->get_var( str_replace( 'SELECT *', 'SELECT COUNT(ID)', $query ) );
|
||||||
$total = $wpdb->get_var( str_replace('SELECT *', 'SELECT COUNT(ID)', $query) );
|
|
||||||
else
|
|
||||||
$total = $wpdb->get_var( "SELECT COUNT(ID) FROM {$wpdb->users}");
|
|
||||||
|
|
||||||
$query .= " LIMIT " . intval( ( $apage - 1 ) * $num) . ", " . intval( $num );
|
$query .= " LIMIT " . intval( ( $pagenum - 1 ) * $per_page) . ", " . intval( $per_page );
|
||||||
|
|
||||||
$user_list = $wpdb->get_results( $query, ARRAY_A );
|
$user_list = $wpdb->get_results( $query, ARRAY_A );
|
||||||
|
|
||||||
// Pagination
|
$num_pages = ceil( $total / $per_page );
|
||||||
$user_navigation = paginate_links( array(
|
$page_links = paginate_links( array(
|
||||||
'total' => ceil($total / $num),
|
'base' => add_query_arg( 'paged', '%#%' ),
|
||||||
'current' => $apage,
|
'format' => '',
|
||||||
'base' => add_query_arg( 'apage', '%#%' ),
|
'prev_text' => __( '«' ),
|
||||||
'format' => ''
|
'next_text' => __( '»' ),
|
||||||
|
'total' => $num_pages,
|
||||||
|
'current' => $pagenum
|
||||||
));
|
));
|
||||||
|
|
||||||
if ( $user_navigation ) {
|
if ( empty( $_GET['mode'] ) )
|
||||||
$user_navigation = sprintf( '<span class="displaying-num">' . __( 'Displaying %s–%s of %s' ) . '</span>%s',
|
$mode = 'list';
|
||||||
number_format_i18n( ( $apage - 1 ) * $num + 1 ),
|
else
|
||||||
number_format_i18n( min( $apage * $num, $total ) ),
|
$mode = esc_attr( $_GET['mode'] );
|
||||||
number_format_i18n( $total ),
|
|
||||||
$user_navigation
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<div class="wrap">
|
<div class="wrap">
|
||||||
<?php screen_icon(); ?>
|
<?php screen_icon(); ?>
|
||||||
<h2><?php esc_html_e("Users"); ?></h2>
|
<h2><?php esc_html_e( 'Users' ); ?>
|
||||||
|
<a href="#form-add-user" class="button add-new-h2"><?php echo esc_html_x( 'Add New' , 'users'); ?></a>
|
||||||
|
<?php
|
||||||
|
if ( isset( $_GET['s'] ) && $_GET['s'] )
|
||||||
|
printf( '<span class="subtitle">' . __( 'Search results for “%s”' ) . '</span>', esc_html( $s ) );
|
||||||
|
?>
|
||||||
|
</h2>
|
||||||
|
|
||||||
<form action="ms-users.php" method="get" class="search-form">
|
<form action="ms-users.php" method="get" class="search-form">
|
||||||
<p class="search-box">
|
<p class="search-box">
|
||||||
<input type="text" name="s" value="<?php if ( isset($_GET['s']) ) esc_attr( stripslashes( $s ) ); ?>" class="search-input" id="user-search-input" />
|
<input type="text" name="s" value="<?php echo esc_attr( $s ); ?>" class="search-input" id="user-search-input" />
|
||||||
<input type="submit" id="post-query-submit" value="<?php esc_attr_e('Search Users') ?>" class="button" />
|
<input type="submit" id="post-query-submit" value="<?php esc_attr_e( 'Search Users' ) ?>" class="button" />
|
||||||
</p>
|
</p>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
|
||||||
|
|
||||||
<form id="form-user-list" action='ms-edit.php?action=allusers' method='post'>
|
<form id="form-user-list" action='ms-edit.php?action=allusers' method='post'>
|
||||||
|
<input type="hidden" name="mode" value="<?php echo esc_attr( $mode ); ?>" />
|
||||||
<div class="tablenav">
|
<div class="tablenav">
|
||||||
<?php if ( $user_navigation ) echo "<div class='tablenav-pages'>$user_navigation</div>"; ?>
|
|
||||||
|
|
||||||
<div class="alignleft actions">
|
<div class="alignleft actions">
|
||||||
<input type="submit" value="<?php esc_attr_e('Delete') ?>" name="alluser_delete" class="button-secondary delete" />
|
<select name="action">
|
||||||
<input type="submit" value="<?php esc_attr_e('Mark as Spammers') ?>" name="alluser_spam" class="button-secondary" />
|
<option value="-1" selected="selected"><?php _e( 'Bulk Actions' ); ?></option>
|
||||||
<input type="submit" value="<?php esc_attr_e('Not Spam') ?>" name="alluser_notspam" class="button-secondary" />
|
<option value="delete"><?php _e( 'Delete' ); ?></option>
|
||||||
<input type="submit" value="<?php esc_attr_e('Add Network Admins') ?>" name="add_superadmin" class="button-secondary" />
|
<option value="spam"><?php _e( 'Mark as Spammers' ); ?></option>
|
||||||
<input type="submit" value="<?php esc_attr_e('Remove Network Admins') ?>" name="remove_superadmin" class="button-secondary" />
|
<option value="notspam"><?php _e( 'Not Spam' ); ?></option>
|
||||||
<?php wp_nonce_field( 'allusers' ); ?>
|
<option value="superadmin"><?php _e( 'Add Super Admins' ); ?></option>
|
||||||
<br class="clear" />
|
<option value="notsuperadmin"><?php _e( 'Remove Super Admins' ); ?></option>
|
||||||
|
</select>
|
||||||
|
<input type="submit" value="<?php esc_attr_e( 'Apply' ); ?>" name="doaction" id="doaction" class="button-secondary action" />
|
||||||
|
<?php wp_nonce_field( 'bulk-ms-users' ); ?>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<?php if ( $page_links ) { ?>
|
||||||
|
<div class="tablenav-pages">
|
||||||
|
<?php $page_links_text = sprintf( '<span class="displaying-num">' . __( 'Displaying %s–%s of %s' ) . '</span>%s',
|
||||||
|
number_format_i18n( ( $pagenum - 1 ) * $per_page + 1 ),
|
||||||
|
number_format_i18n( min( $pagenum * $per_page, $num_pages ) ),
|
||||||
|
number_format_i18n( $num_pages ),
|
||||||
|
$page_links
|
||||||
|
); echo $page_links_text; ?>
|
||||||
|
</div>
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
<div class="view-switch">
|
||||||
|
<a href="<?php echo esc_url( add_query_arg( 'mode', 'list', $_SERVER['REQUEST_URI'] ) ) ?>"><img <?php if ( 'list' == $mode ) echo 'class="current"'; ?> id="view-switch-list" src="<?php echo esc_url( includes_url( 'images/blank.gif' ) ); ?>" width="20" height="20" title="<?php _e( 'List View' ) ?>" alt="<?php _e( 'List View' ) ?>" /></a>
|
||||||
|
<a href="<?php echo esc_url( add_query_arg( 'mode', 'excerpt', $_SERVER['REQUEST_URI'] ) ) ?>"><img <?php if ( 'excerpt' == $mode ) echo 'class="current"'; ?> id="view-switch-excerpt" src="<?php echo esc_url( includes_url( 'images/blank.gif' ) ); ?>" width="20" height="20" title="<?php _e( 'Excerpt View' ) ?>" alt="<?php _e( 'Excerpt View' ) ?>" /></a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="clear"></div>
|
||||||
<?php if ( isset($_GET['s']) && $_GET['s'] != '' ) : ?>
|
|
||||||
<p><a href="ms-sites.php?action=blogs&s=<?php echo urlencode( stripslashes( $s ) ); ?>&blog_name=Search+blogs+by+name"><?php _e('Search Sites for') ?> <strong><?php echo stripslashes( $s ) ?></strong></a></p>
|
|
||||||
<?php endif; ?>
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
// define the columns to display, the syntax is 'internal name' => 'display name'
|
// define the columns to display, the syntax is 'internal name' => 'display name'
|
||||||
$posts_columns = array(
|
$users_columns = array(
|
||||||
'checkbox' => '',
|
'id' => __( 'ID' ),
|
||||||
'login' => __('Username'),
|
'login' => __( 'Username' ),
|
||||||
'name' => __('Name'),
|
'name' => __( 'Name' ),
|
||||||
'email' => __('E-mail'),
|
'email' => __( 'E-mail' ),
|
||||||
'registered' => __('Registered'),
|
'registered' => __( 'Registered' ),
|
||||||
'blogs' => ''
|
'blogs' => __( 'Sites' )
|
||||||
);
|
);
|
||||||
$posts_columns = apply_filters('wpmu_users_columns', $posts_columns);
|
$users_columns = apply_filters( 'wpmu_users_columns', $users_columns );
|
||||||
?>
|
?>
|
||||||
<table class="widefat" cellspacing="0">
|
<table class="widefat">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<?php foreach( (array) $posts_columns as $column_id => $column_display_name) {
|
<th class="manage-column column-cb check-column" id="cb" scope="col">
|
||||||
if ( $column_id == 'blogs' ) {
|
<input type="checkbox" />
|
||||||
echo '<th scope="col">'.__('Sites').'</th>';
|
</th>
|
||||||
} elseif ( $column_id == 'checkbox') {
|
<?php
|
||||||
echo '<th scope="col" class="check-column"><input type="checkbox" /></th>';
|
$col_url = '';
|
||||||
} else { ?>
|
foreach($users_columns as $column_id => $column_display_name) {
|
||||||
<th scope="col"><a href="ms-users.php?sortby=<?php echo $column_id ?>&<?php if ( $order_by == $column_id ) { if ( $order == 'DESC' ) { echo "order=ASC&" ; } else { echo "order=DESC&"; } } ?>apage=<?php echo $apage ?>"><?php echo $column_display_name; ?></a></th>
|
$column_link = "<a href='";
|
||||||
<?php } ?>
|
$order2 = '';
|
||||||
<?php } ?>
|
if ( $order_by == $column_id )
|
||||||
|
$order2 = ( $order == 'DESC' ) ? 'ASC' : 'DESC';
|
||||||
|
|
||||||
|
$column_link .= esc_url( add_query_arg( array( 'order' => $order2, 'paged' => $pagenum, 'sortby' => $column_id ), remove_query_arg( array( 'action', 'updated' ), $_SERVER['REQUEST_URI'] ) ) );
|
||||||
|
$column_link .= "'>{$column_display_name}</a>";
|
||||||
|
$col_url .= '<th scope="col">' . ( $column_id == 'blogs' ? $column_display_name : $column_link ) . '</th>';
|
||||||
|
}
|
||||||
|
echo $col_url; ?>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody id="users" class="list:user user-list">
|
<tfoot>
|
||||||
<?php if ($user_list) {
|
<tr>
|
||||||
|
<th class="manage-column column-cb check-column" id="cb" scope="col">
|
||||||
|
<input type="checkbox" />
|
||||||
|
</th>
|
||||||
|
<?php echo $col_url; ?>
|
||||||
|
</tr>
|
||||||
|
</tfoot>
|
||||||
|
<tbody id="the-user-list" class="list:user">
|
||||||
|
<?php if ( $user_list ) {
|
||||||
$class = '';
|
$class = '';
|
||||||
$super_admins = get_site_option( 'site_admins' );
|
$super_admins = get_site_option( 'site_admins' );
|
||||||
foreach ( (array) $user_list as $user) {
|
foreach ( (array) $user_list as $user ) {
|
||||||
$class = ('alternate' == $class) ? '' : 'alternate';
|
$class = ( 'alternate' == $class ) ? '' : 'alternate';
|
||||||
|
|
||||||
$status_list = array( "spam" => "site-spammed", "deleted" => "site-deleted" );
|
$status_list = array( 'spam' => 'site-spammed', 'deleted' => 'site-deleted' );
|
||||||
|
|
||||||
foreach ( $status_list as $status => $col ) {
|
foreach ( $status_list as $status => $col ) {
|
||||||
if ( $user[$status] )
|
if ( $user[$status] )
|
||||||
|
@ -177,31 +211,34 @@ if ( isset($_GET['updated']) && $_GET['updated'] == 'true' ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<tr class="<?php echo $class; ?>">
|
<tr class="<?php echo $class; ?>">
|
||||||
<?php
|
<?php
|
||||||
foreach( (array) $posts_columns as $column_name=>$column_display_name) :
|
foreach( (array) $users_columns as $column_name=>$column_display_name ) :
|
||||||
switch($column_name) {
|
switch( $column_name ) {
|
||||||
case 'checkbox': ?>
|
case 'id': ?>
|
||||||
<th scope="row" class="check-column"><input type='checkbox' id='user_<?php echo $user['ID'] ?>' name='allusers[]' value='<?php echo esc_attr($user['ID']) ?>' /></th>
|
<th scope="row" class="check-column">
|
||||||
|
<input type="checkbox" id="blog_<?php echo $user['ID'] ?>" name="allusers[]" value="<?php echo esc_attr( $user['ID'] ) ?>" />
|
||||||
|
</th>
|
||||||
|
<th valign="top" scope="row">
|
||||||
|
<?php echo $user['ID'] ?>
|
||||||
|
</th>
|
||||||
<?php
|
<?php
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'login':
|
case 'login':
|
||||||
$avatar = get_avatar( $user['user_email'], 32 );
|
$avatar = get_avatar( $user['user_email'], 32 );
|
||||||
$edit = esc_url( add_query_arg( 'wp_http_referer', urlencode( esc_url( stripslashes( $_SERVER['REQUEST_URI'] ) ) ), "user-edit.php?user_id=".$user['ID'] ) );
|
|
||||||
// @todo Make delete link work like delete button with transfering users (in ms-edit.php)
|
|
||||||
//$delete = esc_url( add_query_arg( 'wp_http_referer', urlencode( esc_url( stripslashes( $_SERVER['REQUEST_URI'] ) ) ), wp_nonce_url( 'ms-edit.php', 'deleteuser' ) . '&action=deleteuser&id=' . $user['ID'] ) );
|
|
||||||
?>
|
?>
|
||||||
<td class="username column-username">
|
<td class="username column-username">
|
||||||
<?php echo $avatar; ?><strong><a href="<?php echo $edit; ?>" class="edit"><?php echo stripslashes($user['user_login']); ?></a><?php
|
<?php echo $avatar; ?><strong><a href="<?php echo esc_url( admin_url( 'user-edit.php?user_id=' . $user['ID'] ) ); ?>" class="edit"><?php echo stripslashes( $user['user_login'] ); ?></a><?php
|
||||||
if ( in_array( $user[ 'user_login' ], $super_admins ) )
|
if ( in_array( $user['user_login'], $super_admins ) )
|
||||||
echo ' - ' . __( 'Super admin' );
|
echo ' - ' . __( 'Super admin' );
|
||||||
?></strong>
|
?></strong>
|
||||||
<br/>
|
<br/>
|
||||||
<div class="row-actions">
|
<div class="row-actions">
|
||||||
<span class="edit"><a href="<?php echo $edit; ?>">Edit</a></span>
|
<span class="edit"><a href="<?php echo esc_url( admin_url( 'user-edit.php?user_id=' . $user['ID'] ) ); ?>"><?php _e( 'Edit'); ?></a></span>
|
||||||
<?php /*<span class="delete"><a href="<?php echo $delete; ?>" class="delete">Delete</a></span> */ ?>
|
<?php if ( ! in_array( $user['user_login'], $super_admins ) ) { ?>
|
||||||
|
| <span class="delete"><a href="<?php echo $delete = esc_url( admin_url( add_query_arg( '_wp_http_referer', urlencode( stripslashes( $_SERVER['REQUEST_URI'] ) ), wp_nonce_url( 'ms-edit.php', 'deleteuser' ) . '&action=deleteuser&id=' . $user['ID'] ) ) ); ?>" class="delete"><?php _e( 'Delete' ); ?></a></span>
|
||||||
|
<?php } ?>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
<?php
|
<?php
|
||||||
|
@ -217,8 +254,13 @@ if ( isset($_GET['updated']) && $_GET['updated'] == 'true' ) {
|
||||||
<?php
|
<?php
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'registered': ?>
|
case 'registered':
|
||||||
<td><?php echo mysql2date(__('Y-m-d \<\b\r \/\> g:i a'), $user['user_registered']); ?></td>
|
if ( 'list' == $mode )
|
||||||
|
$date = 'Y/m/d';
|
||||||
|
else
|
||||||
|
$date = 'Y/m/d \<\b\r \/\> g:i:s a';
|
||||||
|
?>
|
||||||
|
<td><?php echo mysql2date( __( $date ), $user['user_registered'] ); ?></td>
|
||||||
<?php
|
<?php
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -229,19 +271,19 @@ if ( isset($_GET['updated']) && $_GET['updated'] == 'true' ) {
|
||||||
<?php
|
<?php
|
||||||
if ( is_array( $blogs ) ) {
|
if ( is_array( $blogs ) ) {
|
||||||
foreach ( (array) $blogs as $key => $val ) {
|
foreach ( (array) $blogs as $key => $val ) {
|
||||||
$path = ($val->path == '/') ? '' : $val->path;
|
$path = ( $val->path == '/' ) ? '' : $val->path;
|
||||||
echo '<a href="ms-sites.php?action=editblog&id=' . $val->userblog_id . '">' . str_replace( '.' . $current_site->domain, '', $val->domain . $path ) . '</a>';
|
echo '<a href="'. esc_url( admin_url( 'ms-sites.php?action=editblog&id=' . $val->userblog_id ) ) .'">' . str_replace( '.' . $current_site->domain, '', $val->domain . $path ) . '</a>';
|
||||||
echo ' <small class="row-actions">';
|
echo ' <small class="row-actions">';
|
||||||
|
|
||||||
// Edit
|
// Edit
|
||||||
echo '<a href="ms-sites.php?action=editblog&id=' . $val->userblog_id . '">' . __('Edit') . '</a> | ';
|
echo '<a href="'. esc_url( admin_url( 'ms-sites.php?action=editblog&id=' . $val->userblog_id ) ) .'">' . __( 'Edit' ) . '</a> | ';
|
||||||
|
|
||||||
// View
|
// View
|
||||||
echo '<a ';
|
echo '<a ';
|
||||||
if ( get_blog_status( $val->userblog_id, 'spam' ) == 1 )
|
if ( get_blog_status( $val->userblog_id, 'spam' ) == 1 )
|
||||||
echo 'style="background-color: #f66" ';
|
echo 'style="background-color: #faa" ';
|
||||||
echo 'target="_new" href="http://'.$val->domain . $val->path.'">' . __('View') . '</a>';
|
echo 'href="' . esc_url( get_home_url( $val->userblog_id ) ) . '">' . __( 'View' ) . '</a>';
|
||||||
|
|
||||||
echo '</small><br />';
|
echo '</small><br />';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -251,7 +293,7 @@ if ( isset($_GET['updated']) && $_GET['updated'] == 'true' ) {
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default: ?>
|
default: ?>
|
||||||
<td><?php do_action('manage_users_custom_column', $column_name, $user['ID']); ?></td>
|
<td><?php do_action( 'manage_users_custom_column', $column_name, $user['ID'] ); ?></td>
|
||||||
<?php
|
<?php
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -262,8 +304,8 @@ if ( isset($_GET['updated']) && $_GET['updated'] == 'true' ) {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
?>
|
?>
|
||||||
<tr style='background-color: <?php echo $bgcolor; ?>'>
|
<tr>
|
||||||
<td colspan="<?php echo (int) count($posts_columns); ?>"><?php _e('No users found.') ?></td>
|
<td colspan="<?php echo (int) count($users_columns); ?>"><?php _e( 'No users found.' ) ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<?php
|
<?php
|
||||||
} // end if ($users)
|
} // end if ($users)
|
||||||
|
@ -272,45 +314,52 @@ if ( isset($_GET['updated']) && $_GET['updated'] == 'true' ) {
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<div class="tablenav">
|
<div class="tablenav">
|
||||||
<?php if ( $user_navigation ) echo "<div class='tablenav-pages'>$user_navigation</div>"; ?>
|
<?php
|
||||||
|
if ( $page_links )
|
||||||
|
echo "<div class='tablenav-pages'>$page_links_text</div>";
|
||||||
|
?>
|
||||||
|
|
||||||
<div class="alignleft">
|
<div class="alignleft actions">
|
||||||
<input type="submit" value="<?php esc_attr_e('Delete') ?>" name="alluser_delete" class="button-secondary delete" />
|
<select name="action2">
|
||||||
<input type="submit" value="<?php esc_attr_e('Mark as Spammers') ?>" name="alluser_spam" class="button-secondary" />
|
<option value="-1" selected="selected"><?php _e( 'Bulk Actions' ); ?></option>
|
||||||
<input type="submit" value="<?php esc_attr_e('Not Spam') ?>" name="alluser_notspam" class="button-secondary" />
|
<option value="delete"><?php _e( 'Delete' ); ?></option>
|
||||||
<input type="submit" value="<?php esc_attr_e('Add Network Admins') ?>" name="add_superadmin" class="button-secondary" />
|
<option value="spam"><?php _e( 'Mark as Spammers' ); ?></option>
|
||||||
<input type="submit" value="<?php esc_attr_e('Remove Network Admins') ?>" name="remove_superadmin" class="button-secondary" />
|
<option value="notspam"><?php _e( 'Not Spam' ); ?></option>
|
||||||
<?php wp_nonce_field( 'allusers' ); ?>
|
<option value="superadmin"><?php _e( 'Add Super Admins' ); ?></option>
|
||||||
<br class="clear" />
|
<option value="notsuperadmin"><?php _e( 'Remove Super Admins' ); ?></option>
|
||||||
|
</select>
|
||||||
|
<input type="submit" value="<?php esc_attr_e( 'Apply' ); ?>" name="doaction2" id="doaction2" class="button-secondary action" />
|
||||||
</div>
|
</div>
|
||||||
|
<br class="clear" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
if ( apply_filters('show_adduser_fields', true) ) :
|
if ( apply_filters( 'show_adduser_fields', true ) ) :
|
||||||
?>
|
?>
|
||||||
<div class="wrap">
|
<div class="wrap">
|
||||||
<h2><?php _e('Add user') ?></h2>
|
<h2><?php _e( 'Add user' ) ?></h2>
|
||||||
<form action="ms-edit.php?action=adduser" method="post">
|
<form action="ms-edit.php?action=adduser" method="post" id="form-add-user">
|
||||||
<table class="form-table">
|
<table class="form-table">
|
||||||
<tr class="form-field form-required">
|
<tr class="form-field form-required">
|
||||||
<th scope='row'><?php _e('Username') ?></th>
|
<th scope="row"><?php _e( 'Username' ) ?></th>
|
||||||
<td><input type="text" name="user[username]" /></td>
|
<td><input type="text" class="regular-text" name="user[username]" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="form-field form-required">
|
<tr class="form-field form-required">
|
||||||
<th scope='row'><?php _e('Email') ?></th>
|
<th scope="row"><?php _e( 'Email' ) ?></th>
|
||||||
<td><input type="text" name="user[email]" /></td>
|
<td><input type="text" class="regular-text" name="user[email]" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="form-field">
|
<tr class="form-field">
|
||||||
<td colspan='2'><?php _e('Username and password will be mailed to the above email address.') ?></td>
|
<td colspan="2"><?php _e( 'Username and password will be mailed to the above email address.' ) ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<p class="submit">
|
<p class="submit">
|
||||||
<?php wp_nonce_field('add-user') ?>
|
<?php wp_nonce_field( 'add-user' ) ?>
|
||||||
<input class="button" type="submit" name="Add user" value="<?php esc_attr_e('Add user') ?>" /></p>
|
<input class="button" type="submit" value="<?php esc_attr_e( 'Add user' ) ?>" /></p>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
<?php include('admin-footer.php'); ?>
|
<?php include( './admin-footer.php' ); ?>
|
||||||
|
|
|
@ -1,14 +1,13 @@
|
||||||
<?php
|
<?php
|
||||||
|
require_once( './admin.php' );
|
||||||
require_once('admin.php');
|
|
||||||
|
|
||||||
if ( !is_multisite() )
|
if ( !is_multisite() )
|
||||||
wp_die( __('Multisite support is not enabled.') );
|
wp_die( __( 'Multisite support is not enabled.' ) );
|
||||||
|
|
||||||
if ( ! current_user_can('read') )
|
if ( ! current_user_can('read') )
|
||||||
wp_die(__('You do not have sufficient permissions to view this page.'));
|
wp_die( __( 'You do not have sufficient permissions to view this page.' ) );
|
||||||
|
|
||||||
$action = isset($_POST['action']) ? $_POST['action'] : 'splash';
|
$action = isset( $_POST['action'] ) ? $_POST['action'] : 'splash';
|
||||||
|
|
||||||
$blogs = get_blogs_of_user( $current_user->id );
|
$blogs = get_blogs_of_user( $current_user->id );
|
||||||
|
|
||||||
|
@ -17,28 +16,36 @@ if ( empty( $blogs ) )
|
||||||
|
|
||||||
$updated = false;
|
$updated = false;
|
||||||
if ( 'updateblogsettings' == $action && isset( $_POST['primary_blog'] ) ) {
|
if ( 'updateblogsettings' == $action && isset( $_POST['primary_blog'] ) ) {
|
||||||
check_admin_referer('update-my-sites');
|
check_admin_referer( 'update-my-sites' );
|
||||||
// @todo Validate primary blog.
|
|
||||||
update_user_option( $current_user->id, 'primary_blog', (int) $_POST['primary_blog'], true );
|
$blog = get_blog_details( (int) $_POST['primary_blog'] );
|
||||||
$updated = true;
|
if ( $blog && isset( $blog->domain ) ) {
|
||||||
|
update_user_option( $current_user->id, 'primary_blog', (int) $_POST['primary_blog'], true );
|
||||||
|
$updated = true;
|
||||||
|
} else {
|
||||||
|
wp_die( __( "The primary site, which you have choosen, doesn't exists." ) );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$title = __('My Sites');
|
$title = __( 'My Sites' );
|
||||||
$parent_file = 'index.php';
|
$parent_file = 'index.php';
|
||||||
require_once('admin-header.php');
|
require_once( './admin-header.php' );
|
||||||
|
|
||||||
if ( $updated ) { ?>
|
if ( $updated ) { ?>
|
||||||
<div id="message" class="updated fade"><p><strong><?php _e( 'Your site preferences have been updated.' ); ?></strong></p></div>
|
<div id="message" class="updated fade"><p><strong><?php _e( 'Settings saved.' ); ?></strong></p></div>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|
||||||
<div class="wrap">
|
<div class="wrap">
|
||||||
<?php screen_icon(); ?>
|
<?php screen_icon(); ?>
|
||||||
<h2><?php echo esc_html($title); ?></h2>
|
<h2><?php esc_html_e( $title ); ?></h2>
|
||||||
<form id="myblogs" action="" method="post">
|
<form id="myblogs" action="" method="post">
|
||||||
<?php
|
<?php
|
||||||
choose_primary_blog();
|
choose_primary_blog();
|
||||||
do_action( 'myblogs_allblogs_options' );
|
do_action( 'myblogs_allblogs_options' );
|
||||||
?><table class='widefat'> <?php
|
?>
|
||||||
|
<br clear="all" />
|
||||||
|
<table class="widefat fixed">
|
||||||
|
<?php
|
||||||
$settings_html = apply_filters( 'myblogs_options', '', 'global' );
|
$settings_html = apply_filters( 'myblogs_options', '', 'global' );
|
||||||
if ( $settings_html != '' ) {
|
if ( $settings_html != '' ) {
|
||||||
echo "<tr><td valign='top'><h3>" . __( 'Global Settings' ) . "</h3></td><td>";
|
echo "<tr><td valign='top'><h3>" . __( 'Global Settings' ) . "</h3></td><td>";
|
||||||
|
@ -52,7 +59,7 @@ if ( $updated ) { ?>
|
||||||
$cols = 4;
|
$cols = 4;
|
||||||
elseif ( $num >= 10 )
|
elseif ( $num >= 10 )
|
||||||
$cols = 2;
|
$cols = 2;
|
||||||
$num_rows = ceil($num/$cols);
|
$num_rows = ceil( $num / $cols );
|
||||||
$split = 0;
|
$split = 0;
|
||||||
for ( $i = 1; $i <= $num_rows; $i++ ) {
|
for ( $i = 1; $i <= $num_rows; $i++ ) {
|
||||||
$rows[] = array_slice( $blogs, $split, $cols );
|
$rows[] = array_slice( $blogs, $split, $cols );
|
||||||
|
@ -61,28 +68,28 @@ if ( $updated ) { ?>
|
||||||
|
|
||||||
$c = '';
|
$c = '';
|
||||||
foreach ( $rows as $row ) {
|
foreach ( $rows as $row ) {
|
||||||
$c = $c == "alternate" ? '' : 'alternate';
|
$c = $c == 'alternate' ? '' : 'alternate';
|
||||||
echo "<tr class='$c'>";
|
echo "<tr class='$c'>";
|
||||||
$t = '';
|
$i = 0;
|
||||||
foreach ( $row as $user_blog ) {
|
foreach ( $row as $user_blog ) {
|
||||||
$t = $t == 'border-right: 1px solid #ccc;' ? '' : 'border-right: 1px solid #ccc;';
|
$s = $i == 3 ? '' : 'border-right: 1px solid #ccc;';
|
||||||
echo "<td valign='top' style='$t; width:50%'>";
|
echo "<td valign='top' style='$s'>";
|
||||||
echo "<h3>{$user_blog->blogname}</h3>";
|
echo "<h3>{$user_blog->blogname}</h3>";
|
||||||
echo "<p>" . apply_filters( "myblogs_blog_actions", "<a href='" . get_home_url($user_blog->userblog_id) . "'>" . __( 'Visit' ) . "</a> | <a href='" . get_admin_url($user_blog->userblog_id) . "'>" . __( 'Dashboard' ) . "</a>", $user_blog ) . "</p>";
|
echo "<p>" . apply_filters( 'myblogs_blog_actions', "<a href='" . esc_url( get_home_url( $user_blog->userblog_id ) ). "'>" . __( 'Visit' ) . "</a> | <a href='" . esc_url( get_admin_url( $user_blog->userblog_id ) ) . "'>" . __( 'Dashboard' ) . "</a>", $user_blog ) . "</p>";
|
||||||
echo apply_filters( 'myblogs_options', '', $user_blog );
|
echo apply_filters( 'myblogs_options', '', $user_blog );
|
||||||
echo "</td>";
|
echo "</td>";
|
||||||
|
$i++;
|
||||||
}
|
}
|
||||||
echo "</tr>";
|
echo "</tr>";
|
||||||
}?>
|
}?>
|
||||||
</table>
|
</table>
|
||||||
<input type="hidden" name="action" value="updateblogsettings" />
|
<input type="hidden" name="action" value="updateblogsettings" />
|
||||||
<?php wp_nonce_field('update-my-sites'); ?>
|
<?php wp_nonce_field( 'update-my-sites' ); ?>
|
||||||
<p>
|
<p>
|
||||||
<input type="submit" class="button-primary" value="<?php _e('Update Options') ?>" name="submit" />
|
<input type="submit" class="button-primary" value="<?php _e( 'Save Changes' ) ?>" />
|
||||||
</p>
|
</p>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<?php
|
<?php
|
||||||
include('admin-footer.php');
|
include( './admin-footer.php' );
|
||||||
|
?>
|
||||||
?>
|
|
||||||
|
|
Loading…
Reference in New Issue