File: /home/mmickelson/otbproductions.org.old/wp-content/themes/catch-box/inc/widgets.php
<?php
/**
* Makes a custom Widget for Displaying Ads
*
* Learn more: http://codex.wordpress.org/Widgets_API#Developing_Widgets
*
* @package Catch Themes
* @subpackage Catch_Box
* @since Catch Box 1.0
*/
class catchbox_adwidget extends WP_Widget {
/**
* Constructor
*
* @return void
**/
function catchbox_adwidget() {
$widget_ops = array( 'classname' => 'widget_catchbox_adwidget', 'description' => __( 'Use this widget to add any type of Ad as a widget.', 'catchbox' ) );
$this->WP_Widget( 'widget_catchbox_adwidget', __( 'Catch Box Adspace Widget', 'catchbox' ), $widget_ops );
$this->alt_option_name = 'widget_catchbox_adwidget';
}
/**
* Creates the form for the widget in the back-end which includes the Title , adcode, image, alt
* $instance Current settings
*/
function form($instance) {
$instance = wp_parse_args( (array) $instance, array( 'title' => '', 'adcode' => '', 'image' => '', 'href' => '', 'alt' => '' ) );
$title = sanitize_title( $instance[ 'title' ] );
$adcode = esc_textarea( $instance[ 'adcode' ] );
$image = esc_url( $instance[ 'image' ] );
$href = esc_url( $instance[ 'href' ] );
$alt = esc_attr( $instance[ 'alt' ] );
?>
<p>
<label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Title (optional):','catchbox'); ?></label>
<input type="text" name="<?php echo $this->get_field_name('title'); ?>" value="<?php echo $title; ?>" class="widefat" id="<?php echo $this->get_field_id('title'); ?>" />
</p>
<?php if ( current_user_can( 'unfiltered_html' ) ) : // Only show it to users who can edit it ?>
<p>
<label for="<?php echo $this->get_field_id('adcode'); ?>"><?php _e('Ad Code:','catchbox'); ?></label>
<textarea name="<?php echo $this->get_field_name('adcode'); ?>" class="widefat" id="<?php echo $this->get_field_id('adcode'); ?>"><?php echo $adcode; ?></textarea>
</p>
<p><strong>or</strong></p>
<?php endif; ?>
<p>
<label for="<?php echo $this->get_field_id('image'); ?>"><?php _e('Image Url:','catchbox'); ?></label>
<input type="text" name="<?php echo $this->get_field_name('image'); ?>" value="<?php echo $image; ?>" class="widefat" id="<?php echo $this->get_field_id('image'); ?>" />
</p>
<p>
<label for="<?php echo $this->get_field_id('href'); ?>"><?php _e('Link URL:','catchbox'); ?></label>
<input type="text" name="<?php echo $this->get_field_name('href'); ?>" value="<?php echo esc_url( $href ); ?>" class="widefat" id="<?php echo $this->get_field_id('href'); ?>" />
</p>
<p>
<label for="<?php echo $this->get_field_id('alt'); ?>"><?php _e('Alt text:','catchbox'); ?></label>
<input type="text" name="<?php echo $this->get_field_name('alt'); ?>" value="<?php echo $alt; ?>" class="widefat" id="<?php echo $this->get_field_id('alt'); ?>" />
</p>
<?php
}
/**
* update the particular instant
*
* This function should check that $new_instance is set correctly.
* The newly calculated value of $instance should be returned.
* If "false" is returned, the instance won't be saved/updated.
*
* $new_instance New settings for this instance as input by the user via form()
* $old_instance Old settings for this instance
* Settings to save or bool false to cancel saving
*/
function update( $new_instance, $old_instance ) {
$instance = $old_instance;
$instance['title'] = stripslashes($new_instance['title']);
$instance['adcode'] = wp_kses_stripslashes($new_instance['adcode']);
$instance['image'] = esc_url_raw($new_instance['image']);
$instance['href'] = esc_url_raw($new_instance['href']);
$instance['alt'] = sanitize_text_field($new_instance['alt']);
return $instance;
}
/**
* Displays the Widget in the front-end.
*
* $args Display arguments including before_title, after_title, before_widget, and after_widget.
* $instance The settings for the particular instance of the widget
*/
function widget( $args, $instance ) {
extract( $args );
extract( $instance );
$title = !empty( $instance['title'] ) ? $instance[ 'title' ] : '';
$adcode = !empty( $instance['adcode'] ) ? $instance[ 'adcode' ] : '';
$image = !empty( $instance['image'] ) ? $instance[ 'image' ] : '';
$href = !empty( $instance['href'] ) ? $instance[ 'href' ] : '';
$alt = !empty( $instance['alt'] ) ? $instance[ 'alt' ] : '';
echo $before_widget;
if ( $title != '' ) {
echo $before_title . apply_filters( 'widget_title', $title, $instance, $this->id_base ) . $after_title;
} else {
echo '<span class="paddingtop"></span>';
}
if ( $adcode != '' ) {
echo $adcode;
} else {
?><a href="<?php echo $href; ?>"><img src="<?php echo $image; ?>" alt="<?php echo $alt; ?>" /></a><?php
}
echo $after_widget;
}
}