changing the ajax model for the front page sidebar events to show all events initially
authorAnthony Talarico <talarico@gaslightmedia.com>
Tue, 31 Jan 2017 15:45:11 +0000 (10:45 -0500)
committerAnthony Talarico <talarico@gaslightmedia.com>
Tue, 31 Jan 2017 15:45:11 +0000 (10:45 -0500)
then filter the events by month

models/admin/ajax/eventsCalMonthAJAX.php
views/front/events/sidebarEvents.html

index 0fcea9d..f627656 100644 (file)
@@ -141,15 +141,27 @@ class GlmMembersAdmin_ajax_eventsCalMonthAJAX extends GlmDataEventsTimes
                 
 
                 $sql = "SELECT * FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX ."events WHERE status = 10 AND id IN (SELECT event FROM ";
-                $sql .= GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "times WHERE YEAR(start_time) = $year AND MONTH(start_time) = $month AND active = 1 ORDER BY start_time ) LIMIT 3; ";
+                $sql .= GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "times WHERE YEAR(start_time) = $year AND MONTH(start_time) = $month AND active = 1 ORDER BY start_time LIMIT 3; ";
                 $events = $wpdb->get_results($sql);
 
           
             } else if(isset($_REQUEST['all_events'])){
-                $sql = "SELECT * FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX ."events WHERE status = 10 AND id IN (SELECT event FROM ";
-                $sql .= GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "times ORDER BY start_time ) LIMIT 3; ";
-                $events = $wpdb->get_results($sql);
-
+                
+//                $sql = "SELECT * FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX ."events WHERE status = 10 AND id IN (SELECT event FROM ";
+//                $sql .= GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "times ORDER BY start_time) LIMIT 3";
+                $sql = "SELECT * FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "times GROUP BY event ORDER BY start_time LIMIT 3;";
+                $events_times = $wpdb->get_results($sql);
+                
+                foreach($events_times as $times){
+                    $sql = "SELECT * FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "events WHERE id = " . $times->event.";";
+                    $event[] = $wpdb->get_results($sql);
+                }
+                foreach($event as $ev){
+                    foreach($ev as $e){
+                        $events[] = $e;
+                    }
+                    
+                }
             }
             foreach($events as $event){
                 $sql = "SELECT start_time, end_time FROM " . GLM_MEMBERS_EVENTS_PLUGIN_DB_PREFIX . "times WHERE event = " . $event->id;
@@ -175,10 +187,13 @@ class GlmMembersAdmin_ajax_eventsCalMonthAJAX extends GlmDataEventsTimes
                         "content"    => $event->descr, 
                         'image'      => $image,
                         'id'         => $event->id,
-                        'timestamp'  => $start_timestamp
+                        'timestamp'  => $start_timestamp,
+                        'slug'       => $event->name_slug,
+                        'url'        => GLM_MEMBERS_EVENTS_SITE_BASE_URL . 'event-detail/' . $event->name_slug
                     );
 //               $events_date[$start_date] = array();
-               $arrayDates[date('F d D', strtotime($start_date))]  = array();
+//               $arrayDates[date('F d D', strtotime($start_date))]  = array();
+                $arrayDates[$start_timestamp]  = array();
             }
 
             function sortFunction( $event1, $event2 ) {
@@ -188,11 +203,13 @@ class GlmMembersAdmin_ajax_eventsCalMonthAJAX extends GlmDataEventsTimes
 
             foreach($arrayDates as $key=>$date){
                 foreach($sidebar_events as $event){
-                    if($event['timestamp'] === strtotime($key)){
+                    if($event['timestamp'] === $key){
                         array_push($arrayDates[$key], $event);
                     }
                 }
             }
+    
+            ksort($arrayDates);
         }
         // end section for front page events widget data
         
@@ -245,7 +262,8 @@ class GlmMembersAdmin_ajax_eventsCalMonthAJAX extends GlmDataEventsTimes
             'events'          => $event_data  ,    // Where our events list will go
             'message'         => $info,
             'sidebar_events'  => $sidebar_events,
-            'array_dates'     => $arrayDates
+            'array_dates'     => $arrayDates,
+            'event'           => $events
         );
 
         header('Content-type:application/json;charset=utf-8', true);
index 496dd13..ebeebf3 100644 (file)
                       if(data.array_dates !== null){
                         var num = 0;
                         $.each(data.array_dates, function(index, value){
-                           var header = $('<div class="sidebar-date-header">' + index + '</div>');
+          
+                            var date = new Date(index * 1000);
+                            date.setDate(date.getDate() + 1);
+                            var locale = 'en-us';
+                            {literal}var month = date.toLocaleString(locale,{month: 'long'});{/literal}
+                            {literal}var day = date.toLocaleString(locale,{day: '2-digit'});{/literal}
+                            {literal}var weekday = date.toLocaleString(locale,{weekday: 'long'});{/literal}
+                                
+                            var header = $('<div class="sidebar-date-header">' + month + " " + day + " " + "("+weekday+")" +'</div>');
                             var container = $('<div id="group-' + num + '"></div>');
 
                             $.each(value, function(i, v){
                                 if(v.image !== 'none'){
-                                    var image = "<div style='background-image: url("+ v.image +");' class='sidebar-event-image'> </div>";
+                                    var image = "<a href='" + v.url + "'><div style='background-image: url("+ v.image +");' class='sidebar-event-image'> </div></a>";
                                 } else {
                                     image = "<div class='no-image'></div>";
                                 }
-                                var event = $("<div id='" + v.id + "' class='sidebar-event group-" + num + "'>" + image + "<div class='sidebar-event-info-container'> <div class='sidebar-event-name'>" + v.name  + "</div> <div class='sidebar-event-date'>" + v.start_date +  "</div> <div class='sidebar-event-desc'>" + v.content + "</div></div></div>");
+                                
+                                var event = $("<div id='" + v.id + "' class='sidebar-event group-" + num + "'>" + image + "<div class='sidebar-event-info-container'> <div class='sidebar-event-name'><a class='sidebar-url' href='"+v.url + "'>" + v.name  + "</a></div> <div class='sidebar-event-date'>" + v.start_date +  "</div> <div class='sidebar-event-desc'>" + v.content + "</div></div></div>");
                                  container.append(event);
                             });
+                            
                             $(container).prepend(header);
                             $('.sidebar-events').append(container);
                             num++;
                     glm_action: 'eventsCalMonthAJAX',
                     date_string: date_string
                 };
-                ajaxEvents(dat)
+                ajaxEvents(dat);
                 
             });