2010-01-29 23:21:33 +00:00
< ? php
2010-04-04 13:29:35 +00:00
/**
* My Sites dashboard .
*
* @ package WordPress
* @ subpackage Multisite
* @ since 3.0 . 0
*/
2010-04-01 21:21:27 +00:00
require_once ( './admin.php' );
2010-01-29 23:21:33 +00:00
if ( ! is_multisite () )
2010-04-01 21:21:27 +00:00
wp_die ( __ ( 'Multisite support is not enabled.' ) );
2010-01-29 23:21:33 +00:00
if ( ! current_user_can ( 'read' ) )
2010-04-01 21:21:27 +00:00
wp_die ( __ ( 'You do not have sufficient permissions to view this page.' ) );
2010-01-29 23:21:33 +00:00
2010-04-01 21:21:27 +00:00
$action = isset ( $_POST [ 'action' ] ) ? $_POST [ 'action' ] : 'splash' ;
2010-01-29 23:21:33 +00:00
$blogs = get_blogs_of_user ( $current_user -> id );
if ( empty ( $blogs ) )
wp_die ( __ ( 'You must be a member of at least one site to use this page.' ) );
$updated = false ;
if ( 'updateblogsettings' == $action && isset ( $_POST [ 'primary_blog' ] ) ) {
2010-04-01 21:21:27 +00:00
check_admin_referer ( 'update-my-sites' );
$blog = get_blog_details ( ( int ) $_POST [ 'primary_blog' ] );
if ( $blog && isset ( $blog -> domain ) ) {
update_user_option ( $current_user -> id , 'primary_blog' , ( int ) $_POST [ 'primary_blog' ], true );
$updated = true ;
} else {
2010-05-03 20:26:11 +00:00
wp_die ( __ ( 'The primary site you chose does not exist.' ) );
2010-04-01 21:21:27 +00:00
}
2010-01-29 23:21:33 +00:00
}
2010-04-01 21:21:27 +00:00
$title = __ ( 'My Sites' );
2010-01-29 23:21:33 +00:00
$parent_file = 'index.php' ;
2010-05-27 21:20:23 +00:00
2010-06-02 20:04:07 +00:00
add_contextual_help ( $current_screen ,
2010-05-27 21:20:23 +00:00
'<p>' . __ ( 'This screen shows an individual user all of their sites in this network, and also allows that user to set a primary site. He or she can use the links under each site to visit either the frontend or the dashboard for that site.' ) . '</p>' .
2010-06-01 17:44:38 +00:00
'<p>' . __ ( 'Up until WordPress version 3.0, what is now called a Multi-site Network had to be installed separately as WordPress MU (multi-user).' ) . '</p>' .
2010-05-27 21:20:23 +00:00
'<p><strong>' . __ ( 'For more information:' ) . '</strong></p>' .
'<p>' . __ ( '<a href="http://codex.wordpress.org/Dashboard_My_Sites_SubPanel">My Sites Documentation</a>' ) . '</p>' .
'<p>' . __ ( '<a href="http://wordpress.org/support/">Support Forums</a>' ) . '</p>'
);
2010-04-01 21:21:27 +00:00
require_once ( './admin-header.php' );
2010-01-29 23:21:33 +00:00
if ( $updated ) { ?>
2010-04-08 03:36:52 +00:00
< div id = " message " class = " updated " >< p >< strong >< ? php _e ( 'Settings saved.' ); ?> </strong></p></div>
2010-01-29 23:21:33 +00:00
< ? php } ?>
< div class = " wrap " >
< ? php screen_icon (); ?>
2010-05-18 04:58:18 +00:00
< h2 >< ? php echo esc_html ( $title ); ?> </h2>
2010-01-29 23:21:33 +00:00
< form id = " myblogs " action = " " method = " post " >
< ? php
choose_primary_blog ();
do_action ( 'myblogs_allblogs_options' );
2010-04-01 21:21:27 +00:00
?>
< br clear = " all " />
< table class = " widefat fixed " >
< ? php
2010-01-29 23:21:33 +00:00
$settings_html = apply_filters ( 'myblogs_options' , '' , 'global' );
if ( $settings_html != '' ) {
2010-04-11 10:41:54 +00:00
echo '<tr><td valign="top"><h3>' . __ ( 'Global Settings' ) . '</h3></td><td>' ;
2010-01-29 23:21:33 +00:00
echo $settings_html ;
2010-04-11 10:41:54 +00:00
echo '</td></tr>' ;
2010-01-29 23:21:33 +00:00
}
reset ( $blogs );
$num = count ( $blogs );
$cols = 1 ;
if ( $num >= 20 )
$cols = 4 ;
elseif ( $num >= 10 )
$cols = 2 ;
2010-04-01 21:21:27 +00:00
$num_rows = ceil ( $num / $cols );
2010-01-29 23:21:33 +00:00
$split = 0 ;
for ( $i = 1 ; $i <= $num_rows ; $i ++ ) {
$rows [] = array_slice ( $blogs , $split , $cols );
$split = $split + $cols ;
}
$c = '' ;
foreach ( $rows as $row ) {
2010-04-01 21:21:27 +00:00
$c = $c == 'alternate' ? '' : 'alternate' ;
2010-01-29 23:21:33 +00:00
echo " <tr class=' $c '> " ;
2010-04-01 21:21:27 +00:00
$i = 0 ;
2010-01-29 23:21:33 +00:00
foreach ( $row as $user_blog ) {
2010-04-01 21:21:27 +00:00
$s = $i == 3 ? '' : 'border-right: 1px solid #ccc;' ;
echo " <td valign='top' style=' $s '> " ;
2010-01-29 23:21:33 +00:00
echo " <h3> { $user_blog -> blogname } </h3> " ;
2010-05-03 18:16:22 +00:00
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> " ;
2010-01-29 23:21:33 +00:00
echo apply_filters ( 'myblogs_options' , '' , $user_blog );
echo " </td> " ;
2010-04-01 21:21:27 +00:00
$i ++ ;
2010-01-29 23:21:33 +00:00
}
echo " </tr> " ;
} ?>
</ table >
< input type = " hidden " name = " action " value = " updateblogsettings " />
2010-04-01 21:21:27 +00:00
< ? php wp_nonce_field ( 'update-my-sites' ); ?>
2010-01-29 23:21:33 +00:00
< p >
2010-04-01 21:21:27 +00:00
< input type = " submit " class = " button-primary " value = " <?php _e( 'Save Changes' ) ?> " />
2010-01-29 23:21:33 +00:00
</ p >
</ form >
</ div >
< ? php
2010-04-01 21:21:27 +00:00
include ( './admin-footer.php' );
?>