'stainedglass_socialicons', 'description' => __('Display Social Media Links.', 'stainedglass' )); /* Widget control settings. */ $control_ops = array( 'width' => 250, 'height' => 250, 'id_base' => 'stainedglass_socialicons_widget'); /* Create the widget. */ parent::__construct( 'stainedglass_socialicons_widget', __( 'GL Social Media Icons', 'stainedglass' ), $widget_ops, $control_ops ); } function widget( $args, $instance ) { // Widget output extract($args); $defaults = $this->get_defaults(); $instance = wp_parse_args( (array) $instance, $defaults ); $classes = ''; if( $instance['is_vertical'] != '' ) $classes = 'vertical'; else $classes = 'horizontal'; if( $instance['is_small'] != '' ) $classes .= ' small'; else $classes .= ' big'; $out = ''; //print the widget for the sidebar echo $before_widget; if(trim($instance['title']) !== '') echo $before_title.esc_html($instance['title']).$after_title; echo $out; echo $after_widget; } function update( $new_instance, $old_instance ) { // Save widget options foreach ( $new_instance as $key => $instance ) { if( $key == 'title' || $key == 'is_small' || $key == 'is_vertical' ) $new_instance[$key] = esc_html($new_instance[$key]); else $new_instance[$key] = esc_url_raw($new_instance[$key]); } return $new_instance; } function form( $instance ) { // Output admin widget options form // Set up some default widget settings. $defaults = $this->get_defaults(); $instance = wp_parse_args( (array) $instance, $defaults ); $icons = $this->social_icons(); $instance = wp_parse_args( (array) $instance, $icons ); stainedglass_echo_input_text( $this, 'title', $instance, __( 'Title: ', 'stainedglass' ), 0); stainedglass_echo_input_checkbox( $this, 'is_small', $instance, __( 'Small Icons.', 'stainedglass')); stainedglass_echo_input_checkbox( $this, 'is_vertical', $instance, __( 'Vertical Icons.', 'stainedglass')); foreach ($icons as $id => $icon) { stainedglass_echo_input_text( $this, $id, $instance, $id); } } function get_defaults() { return array('title' => '', 'is_small' => '', 'is_vertical' => '', ); } function echo_input_text($name, $instance, $title, $show_mage = 1) { ?>



/>


'', 'twitter' => '', 'google' => '', 'wordpress' => '', 'blogger' => '', 'yahoo' => '', 'youtube' => '', 'myspace' => '', 'livejournal' => '', 'linkedin' => '', 'friendster' => '', 'friendfeed' => '', 'digg' => '', 'delicious' => '', 'aim' => '', 'ask' => '', 'buzz' => '', 'tumblr' => '', 'flickr' => '', 'rss' => '', ); foreach ($icons as $id => $icon) { $icons[$id] = get_theme_mod($id, ''); } return $icons; } } /* Register widget*/ function stainedglass_register_social_widgets() { register_widget( 'stainedglass_SocialIcons' ); } add_action( 'widgets_init', 'stainedglass_register_social_widgets' );