Add ability to select different checklist tabs

This commit is contained in:
Takumi
2013-07-27 03:19:38 +10:00
parent 0772cb7b53
commit 4425cee4df
3 changed files with 64 additions and 45 deletions

View File

@@ -28,22 +28,40 @@ add_filter( 'the_posts', 'sp_event_display_scheduled' );
function sp_event_meta_init() {
remove_meta_box( 'submitdiv', 'sp_event', 'side' );
add_meta_box( 'submitdiv', __( 'Event', 'sportspress' ), 'post_submit_meta_box', 'sp_event', 'side', 'high' );
add_meta_box( 'sp_teamdiv', __( 'Teams', 'sportspress' ), 'sp_event_team_meta', 'sp_event', 'normal', 'high' );
add_meta_box( 'sp_teamdiv', __( 'Teams', 'sportspress' ), 'sp_event_team_meta', 'sp_event', 'side', 'high' );
add_meta_box( 'sp_articlediv', __( 'Article', 'sportspress' ), 'sp_event_article_meta', 'sp_event', 'normal', 'high' );
}
function sp_event_team_meta( $post ) {
$limit = get_option( 'sp_event_team_count' );
$teams = array_pad( array_slice( (array)get_post_meta( $post->ID, 'sp_team', false ), 0, $limit ), $limit, 0);
$scores = array_pad( array_slice( (array)get_post_meta( $post->ID, 'sp_score', false ), 0, $limit ), $limit, 0);
for ( $i = 0; $i < $limit; $i++ ):
$selected = array_pad( array_slice( (array)get_post_meta( $post->ID, 'sp_team', false ), 0, $limit ), $limit, 0);
$args = array(
'post_type' => 'sp_team',
'name' => 'sportspress[sp_team][]',
'selected' => $selected[ $i ]
);
wp_dropdown_pages( $args );
?>
<div>
<p>
<?php
$args = array(
'post_type' => 'sp_team',
'name' => 'sportspress[sp_team][]',
'class' => 'sportspress-pages',
'selected' => $teams[ $i ]
);
wp_dropdown_pages( $args );
?>
<input name="sportspress[sp_score][]" type="text" placeholder="<?php _e( 'Score', 'sportspress' ); ?>" size="4" value="<?php echo $scores[ $i ]; ?>" />
</p>
<ul id="sportspress-tabs" class="wp-tab-bar">
<li class="wp-tab-active"><a href="#sp_player-all"><?php _e( 'Players', 'sportspress' ); ?></a></li>
<li class="wp-tab"><a href="#sp_staff-all"><?php _e( 'Staff', 'sportspress' ); ?></a></li>
</ul>
<?php
sp_post_checklist( $post->ID, 'sp_player', false );
sp_post_checklist( $post->ID, 'sp_staff', $i == $limit - 1, 'none' );
?>
</div>
<?php
endfor;
sp_post_checklist( $post->ID, 'sp_player', true );
sp_nonce();
}