Add widget alignment

This commit is contained in:
Brian Miyaji
2015-04-16 23:02:05 +10:00
parent 1d725beacf
commit 390343fafe
10 changed files with 172 additions and 0 deletions

View File

@@ -105,6 +105,23 @@
cursor: default;
}
/* Widget Alignment */
.sp-widget-align-none {
clear: both;
overflow: auto;
zoom: 1;
}
.sp-widget-align-left {
width: 48.387%;
float: left;
clear: left;
}
.sp-widget-align-right {
width: 48.387%;
float: right;
clear: right;
}
/* League Table */
.sp-league-table td {
line-height: 2em;

View File

@@ -13,7 +13,10 @@ class SP_Widget_Countdown extends WP_Widget {
$id = empty($instance['id']) ? null : $instance['id'];
$show_venue = empty($instance['show_venue']) ? false : $instance['show_venue'];
$show_league = empty($instance['show_league']) ? false : $instance['show_league'];
do_action( 'sportspress_before_widget', $args, $instance, 'countdown' );
echo $before_widget;
if ( $title )
echo $before_title . $title . $after_title;
@@ -26,6 +29,7 @@ class SP_Widget_Countdown extends WP_Widget {
do_action( 'sportspress_after_widget_template', $args, $instance, 'countdown' );
echo $after_widget;
do_action( 'sportspress_after_widget', $args, $instance, 'countdown' );
}
function update( $new_instance, $old_instance ) {

View File

@@ -17,7 +17,10 @@ class SP_Widget_Event_Blocks extends WP_Widget {
$number = empty($instance['number']) ? null : $instance['number'];
$order = empty($instance['order']) ? 'default' : $instance['order'];
$show_all_events_link = empty($instance['show_all_events_link']) ? false : $instance['show_all_events_link'];
do_action( 'sportspress_before_widget', $args, $instance, 'event-blocks' );
echo $before_widget;
if ( $title )
echo $before_title . $title . $after_title;
@@ -30,6 +33,7 @@ class SP_Widget_Event_Blocks extends WP_Widget {
do_action( 'sportspress_after_widget_template', $args, $instance, 'event-blocks' );
echo $after_widget;
do_action( 'sportspress_after_widget', $args, $instance, 'event-blocks' );
}
function update( $new_instance, $old_instance ) {

View File

@@ -15,7 +15,10 @@ class SP_Widget_Event_Calendar extends WP_Widget {
$date_from = empty($instance['date_from']) ? 'default' : $instance['date_from'];
$date_to = empty($instance['date_to']) ? 'default' : $instance['date_to'];
$show_all_events_link = empty($instance['show_all_events_link']) ? false : $instance['show_all_events_link'];
do_action( 'sportspress_before_widget', $args, $instance, 'event-calendar' );
echo $before_widget;
if ( $title )
echo $before_title . $title . $after_title;
@@ -28,6 +31,7 @@ class SP_Widget_Event_Calendar extends WP_Widget {
do_action( 'sportspress_after_widget_template', $args, $instance, 'event-calendar' );
echo $after_widget;
do_action( 'sportspress_after_widget', $args, $instance, 'event-calendar' );
}
function update( $new_instance, $old_instance ) {

View File

@@ -18,7 +18,10 @@ class SP_Widget_Event_List extends WP_Widget {
$columns = empty($instance['columns']) ? null : $instance['columns'];
$order = empty($instance['order']) ? 'default' : $instance['order'];
$show_all_events_link = empty($instance['show_all_events_link']) ? false : $instance['show_all_events_link'];
do_action( 'sportspress_before_widget', $args, $instance, 'event-list' );
echo $before_widget;
if ( $title )
echo $before_title . $title . $after_title;
@@ -31,6 +34,7 @@ class SP_Widget_Event_List extends WP_Widget {
do_action( 'sportspress_after_widget_template', $args, $instance, 'event-list' );
echo $after_widget;
do_action( 'sportspress_after_widget', $args, $instance, 'event-list' );
}
function update( $new_instance, $old_instance ) {

View File

@@ -15,7 +15,10 @@ class SP_Widget_League_Table extends WP_Widget {
$columns = empty($instance['columns']) ? array() : $instance['columns'];
$show_team_logo = empty($instance['show_team_logo']) ? false : $instance['show_team_logo'];
$show_full_table_link = empty($instance['show_full_table_link']) ? false : $instance['show_full_table_link'];
do_action( 'sportspress_before_widget', $args, $instance, 'league-table' );
echo $before_widget;
if ( $title )
echo $before_title . $title . $after_title;
@@ -28,6 +31,7 @@ class SP_Widget_League_Table extends WP_Widget {
do_action( 'sportspress_after_widget_template', $args, $instance, 'league-table' );
echo $after_widget;
do_action( 'sportspress_after_widget', $args, $instance, 'league-table' );
}
function update( $new_instance, $old_instance ) {

View File

@@ -17,7 +17,10 @@ class SP_Widget_Player_Gallery extends WP_Widget {
$order = empty($instance['order']) ? 'ASC' : $instance['order'];
$show_all_players_link = empty($instance['show_all_players_link']) ? false : $instance['show_all_players_link'];
$show_names_on_hover = empty($instance['show_names_on_hover']) ? false : $instance['show_names_on_hover'];
do_action( 'sportspress_before_widget', $args, $instance, 'player-gallery' );
echo $before_widget;
if ( $title )
echo $before_title . $title . $after_title;
@@ -30,6 +33,7 @@ class SP_Widget_Player_Gallery extends WP_Widget {
do_action( 'sportspress_after_widget_template', $args, $instance, 'player-gallery' );
echo $after_widget;
do_action( 'sportspress_after_widget', $args, $instance, 'player-gallery' );
}
function update( $new_instance, $old_instance ) {

View File

@@ -16,7 +16,10 @@ class SP_Widget_Player_list extends WP_Widget {
$orderby = empty($instance['orderby']) ? 'default' : $instance['orderby'];
$order = empty($instance['order']) ? 'ASC' : $instance['order'];
$show_all_players_link = empty($instance['show_all_players_link']) ? false : $instance['show_all_players_link'];
do_action( 'sportspress_before_widget', $args, $instance, 'player-list' );
echo $before_widget;
if ( $title )
echo $before_title . $title . $after_title;
@@ -29,6 +32,7 @@ class SP_Widget_Player_list extends WP_Widget {
do_action( 'sportspress_after_widget_template', $args, $instance, 'player-list' );
echo $after_widget;
do_action( 'sportspress_after_widget', $args, $instance, 'player-list' );
}
function update( $new_instance, $old_instance ) {

View File

@@ -10,7 +10,10 @@ class SP_Widget_Staff extends WP_Widget {
extract($args);
$title = apply_filters('widget_title', empty($instance['title']) ? null : $instance['title'], $instance, $this->id_base);
$id = empty($instance['id']) ? null : $instance['id'];
do_action( 'sportspress_before_widget', $args, $instance, 'staff' );
echo $before_widget;
if ( $title )
echo $before_title . $title . $after_title;
@@ -24,6 +27,7 @@ class SP_Widget_Staff extends WP_Widget {
do_action( 'sportspress_after_widget_template', $args, $instance, 'staff' );
echo $after_widget;
do_action( 'sportspress_after_widget', $args, $instance, 'staff' );
}
function update( $new_instance, $old_instance ) {

View File

@@ -0,0 +1,123 @@
<?php
/*
Plugin Name: SportsPress Widget Alignment
Plugin URI: http://themeboy.com/
Description: Add alignment options to SportsPress widgets.
Author: ThemeBoy
Author URI: http://themeboy.com
Version: 1.8
*/
// Exit if accessed directly
if ( ! defined( 'ABSPATH' ) ) exit;
if ( ! class_exists( 'SportsPress_Widget_Alignment' ) ) :
/**
* Main SportsPress Widget Alignment Class
*
* @class SportsPress_Widget_Alignment
* @version 1.8
*/
class SportsPress_Widget_Alignment {
/**
* @var array
*/
public $options = array();
/**
* Constructor
*/
public function __construct() {
// Define constants
$this->define_constants();
// Initialize
add_action( 'init', array( $this, 'init' ) );
// Widgets
add_filter( 'sportspress_widget_update', array( $this, 'widget_update' ), 10, 2 );
add_filter( 'sportspress_widget_defaults', array( $this, 'widget_defaults' ) );
add_action( 'sportspress_before_widget_template_form', array( $this, 'before_widget_form' ), 10, 2 );
add_action( 'sportspress_before_widget', array( $this, 'before_widget'), 10, 2 );
add_action( 'sportspress_after_widget', array( $this, 'after_widget') );
}
/**
* Define constants
*/
private function define_constants() {
if ( !defined( 'SP_WIDGET_ALIGNMENT_VERSION' ) )
define( 'SP_WIDGET_ALIGNMENT_VERSION', '1.8' );
if ( !defined( 'SP_WIDGET_ALIGNMENT_URL' ) )
define( 'SP_WIDGET_ALIGNMENT_URL', plugin_dir_url( __FILE__ ) );
if ( !defined( 'SP_WIDGET_ALIGNMENT_DIR' ) )
define( 'SP_WIDGET_ALIGNMENT_DIR', plugin_dir_path( __FILE__ ) );
}
/**
* Initialize
*/
public function init() {
$this->options = array(
'none' => __( 'None', 'sportspress' ),
'left' => __( 'Left', 'sportspress' ),
'right' => __( 'Right', 'sportspress' ),
);
}
/**
* Widget update
*/
function widget_update( $instance, $new_instance ) {
$instance['align'] = strip_tags( $new_instance['align'] );
return $instance;
}
/**
* Widget defaults
*/
function widget_defaults( $defaults ) {
$defaults['align'] = 'none';
return $defaults;
}
/**
* Before widget forms
*/
function before_widget_form( $object, $instance ) {
?>
<p><label for="<?php echo $object->get_field_id('align'); ?>"><?php printf( __( 'Alignment: %s', 'sportspress' ), '' ); ?></label>
<select name="<?php echo $object->get_field_name('align'); ?>" id="<?php echo $object->get_field_id('align'); ?>">
<?php
$align = strip_tags( sp_array_value( $instance, 'align', 'none' ) );
foreach ( $this->options as $value => $label ) {
printf( '<option value="%s" %s>%s</option>', $value, ( $align == $value ? 'selected' : '' ), $label );
}
?>
</select>
</p>
<?php
}
/**
* Before widget
*/
function before_widget( $args, $instance ) {
echo '<div class="sp-widget-align-' . sp_array_value( $instance, 'align', 'none' ) . '">';
}
/**
* After widget
*/
function after_widget() {
echo '</div>';
}
}
endif;
new SportsPress_Widget_Alignment();