Function Reference: geodir_event_register_widgets

Summary

GeoDirectory Events related posts widget *

Source File

geodir_event_register_widgets() is located in geodir_event_manager/gdevents_widget.php [Line: 6]

Source Code

function geodir_event_register_widgets() {
	class geodir_event_related_listing_postview extends WP_Widget {

        function __construct() {
            $widget_ops = array( 'classname' => 'geodir_event_related_listing_post_view', 'description' => __( 'GD > Related Events Listing',GEODIREVENTS_TEXTDOMAIN ) );
            parent::__construct(
                'event_related_listing', // Base ID
                __('GD > Related Events Listing', GEODIRECTORY_TEXTDOMAIN), // Name
                $widget_ops// Args
            );
        }
		
		public function widget( $args, $instance ) {
			// prints the widget
			extract( $args, EXTR_SKIP );
			
			$post_number = empty( $instance['post_number'] ) ? '5' : apply_filters( 'widget_post_number', $instance['post_number'] );
			$layout = empty( $instance['layout'] ) ? 'gridview_onehalf' : apply_filters( 'widget_layout', $instance['layout'] );
			$event_type = empty( $instance['event_type'] ) ? 'all' : apply_filters( 'widget_event_type', $instance['event_type'] );
			$add_location_filter = empty( $instance['add_location_filter'] ) ? '0' : apply_filters( 'widget_layout', $instance['add_location_filter'] );
			$listing_width = empty( $instance['listing_width'] ) ? '' : apply_filters( 'widget_layout', $instance['listing_width'] );
			$list_sort = empty( $instance['list_sort'] ) ? 'latest' : apply_filters( 'widget_list_sort', $instance['list_sort'] );
			$character_count = isset( $instance['character_count'] ) && $instance['character_count']=='' ? 20 : apply_filters( 'widget_character_count', $instance['character_count'] );
			
			global $post;
			
			$post_id = '';
			$post_type = '';
			
			if ( isset($_REQUEST['pid'] ) && $_REQUEST['pid'] != '' ) {
				$post = geodir_get_post_info( $_REQUEST['pid'] );
				$post_type = $post->post_type;
				$post_id = $_REQUEST['pid'];
			} else if ( isset( $post->post_type ) && $post->post_type != '' ) {
				$post_type = $post->post_type;
				$post_id = $post->ID;
			}
			
			$all_postypes = geodir_get_posttypes();
			
			if ( !in_array( $post_type, $all_postypes ) ) {
				return false;
			}			
			if ( $post_type == 'gd_place' && $post_id != '' ) {
				$query_args = array(
									'geodir_event_type' => $event_type,
									'event_related_id' => $post_id,
									'posts_per_page' => $post_number,
									'is_geodir_loop' => true,
									'gd_location' 	 => $add_location_filter ? true : false,
									'post_type' => 'gd_event',
									'order_by' => $list_sort,
									'excerpt_length' => $character_count,
									'character_count' => $character_count
								);
					
				echo $before_widget;
				echo geodir_get_post_widget_events( $query_args, $layout );
				echo $after_widget;			
			}			
		}
		
		public function update($new_instance, $old_instance) {
			//save the widget
			$instance = $old_instance;
			
			$instance['post_number'] = strip_tags($new_instance['post_number']);
			$instance['layout'] = strip_tags($new_instance['layout']);
			$instance['listing_width'] = strip_tags($new_instance['listing_width']);
			$instance['list_sort'] = strip_tags($new_instance['list_sort']);
			$instance['event_type'] = isset($new_instance['event_type']) ?  $new_instance['event_type'] : '';
			$instance['character_count'] = $new_instance['character_count'];
			if(isset($new_instance['add_location_filter']) && $new_instance['add_location_filter'] != '')
			$instance['add_location_filter']= strip_tags($new_instance['add_location_filter']);
			else
			$instance['add_location_filter'] = '0';
			
			
			return $instance;
		}
		
		public function form($instance)
		{
			//widgetform in backend
			$instance = wp_parse_args( (array) $instance, 
										array('list_sort'=>'', 
												'list_order'=>'',
												'event_type'=>'',
												'post_number' => '5',
												'layout'=> 'gridview_onehalf',
												'listing_width' => '',
												'add_location_filter'=>'1',
												'character_count'=>'20') 
									 );
			
			$list_sort = strip_tags($instance['list_sort']);
			
			$list_order = strip_tags($instance['list_order']);
			
			$event_type = $instance['event_type'];
			
			$post_number = strip_tags($instance['post_number']);
			
			$layout = strip_tags($instance['layout']);
			
			$listing_width = strip_tags($instance['listing_width']);
			
			$add_location_filter = strip_tags($instance['add_location_filter']);
			
			$character_count = $instance['character_count'];
			
			?>
				
					

'geodir_event_listing_calendar', 'description' => __('GD > Event Listing Calendar',GEODIREVENTS_TEXTDOMAIN) ); parent::__construct( 'geodir_event_listing_calendar', // Base ID __('GD > Event Listing Calendar', GEODIREVENTS_TEXTDOMAIN), // Name $widget_ops// Args ); } public function widget($args, $instance) { geodir_event_calendar_widget_output($args, $instance); } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance['title'] = strip_tags($new_instance['title']); $instance['day'] = strip_tags($new_instance['day']); $instance['week_day_format'] = (int)$new_instance['week_day_format']; return $instance; } public function form($instance) { $instance = wp_parse_args( (array)$instance, array( 'title' => '', 'day' => '', 'week_day_format' => 0 // 0 => M, 1 => Mo, 2 => Mon, 3 => Monday ) ); $title = strip_tags($instance['title']); $day = strip_tags($instance['day']); $week_day_format = (int)$instance['week_day_format']; ?>

1 digit, Mo = 2 digits, Mon => 3 digits, Monday => full.', GEODIREVENTS_TEXTDOMAIN );?>

'geodir_event_listing', 'description' => __('GD > Event Listing',GEODIREVENTS_TEXTDOMAIN) ); parent::__construct( 'event_post_listing', // Base ID __('GD > Event Listing',GEODIREVENTS_TEXTDOMAIN), // Name $widget_ops// Args ); } public function widget($args, $instance) { geodir_event_postview_output($args, $instance); } public function update($new_instance, $old_instance) { //save the widget $instance = $old_instance; if($new_instance['title'] == '') { $title = ucwords(strip_tags($new_instance['category_title'])); //$instance['title'] = $title; } $instance['title'] = strip_tags($new_instance['title']); //$instance['category'] = strip_tags($new_instance['category']); $instance['category'] = isset($new_instance['category']) ? $new_instance['category'] : ''; $instance['category_title'] = strip_tags($new_instance['category_title']); $instance['post_number'] = strip_tags($new_instance['post_number']); $instance['layout'] = strip_tags($new_instance['layout']); $instance['listing_width'] = strip_tags($new_instance['listing_width']); $instance['list_sort'] = strip_tags($new_instance['list_sort']); $instance['list_filter'] = strip_tags($new_instance['list_filter']); $instance['character_count'] = $new_instance['character_count']; if(isset($new_instance['add_location_filter']) && $new_instance['add_location_filter'] != '') $instance['add_location_filter']= strip_tags($new_instance['add_location_filter']); else $instance['add_location_filter'] = '0'; return $instance; } public function form($instance) { //widgetform in backend $instance = wp_parse_args( (array) $instance, array( 'title' => '', 'category'=>array(), 'category_title'=>'', 'list_sort'=>'', 'list_filter'=>'', 'list_order'=>'', 'post_number' => '5', 'layout'=> 'gridview_onehalf', 'listing_width' => '', 'add_location_filter'=>'1', 'character_count'=>'20') ); $title = strip_tags($instance['title']); $category = $instance['category']; $category_title = strip_tags($instance['category_title']); $list_sort = strip_tags($instance['list_sort']); $list_filter = strip_tags($instance['list_filter']); $list_order = strip_tags($instance['list_order']); $post_number = strip_tags($instance['post_number']); $layout = strip_tags($instance['layout']); $listing_width = strip_tags($instance['listing_width']); $add_location_filter = strip_tags($instance['add_location_filter']); $character_count = $instance['character_count']; ?>