Setting up shortcode for the front end
authorSteve Sutton <steve@gaslightmedia.com>
Thu, 25 Feb 2016 14:16:42 +0000 (09:16 -0500)
committerSteve Sutton <steve@gaslightmedia.com>
Thu, 25 Feb 2016 14:16:42 +0000 (09:16 -0500)
Setting up the shortcode for front end with action for detail and list
views. current shortcode used is only the list one.

models/front/events/list.php [new file with mode: 0644]
setup/shortcodes.php
setup/validActions.php
views/front/events/dashboard.html [new file with mode: 0644]
views/front/events/list.html [new file with mode: 0644]
views/front/events/searchForm.html [new file with mode: 0644]
views/front/events/shortCuts.html [new file with mode: 0644]

diff --git a/models/front/events/list.php b/models/front/events/list.php
new file mode 100644 (file)
index 0000000..75ac343
--- /dev/null
@@ -0,0 +1,107 @@
+<?php
+/**
+ */
+
+require_once GLM_MEMBERS_EVENTS_PLUGIN_CLASS_PATH . '/data/dataEvents.php';
+
+class GlmMembersFront_events_list extends GlmDataEvents
+{
+    public $wpdb;
+    public $config;
+
+    public function __construct($wpdb, $config)
+    {
+        $this->wpdb = $wpdb;
+        $this->config = $config;
+
+        parent::__construct(false, false);
+    }
+
+    public function modelAction($actionData = false)
+    {
+        $action = '';
+        $settings = $events = $event = array();
+        if ($eventId = filter_var($_REQUEST['eventId'], FILTER_VALIDATE_INT)) {
+            $search = true;
+            $action = 'event-detail';
+        }
+        if ($search = filter_var($_REQUEST['search'], FILTER_VALIDATE_INT)) {
+            $search = true;
+            $action = 'event-list';
+        }
+
+        switch ($action) {
+        case 'event-detail':
+            $eventData = array(
+                'title'       => 'Owr Prowl: Barred Owls',
+                'starting'    => '02/25/2016',
+                'ending'      => '02/25/2016',
+                'description' => '<p>Test event description text here!</p>',
+                'category'    => 'Outdoor/Nature'
+            );
+            break;
+        case 'event-list':
+            $events = array(
+                array(
+                    'title'       => 'Owr Prowl: Barred Owls',
+                    'starting'    => '02/25/2016',
+                    'ending'      => '02/25/2016',
+                    'description' => '<p>Test event description text here!</p>',
+                    'category'    => 'Outdoor/Nature'
+                ),
+                array(
+                    'title'       => 'Owls of Michigan',
+                    'starting'    => '02/28/2016',
+                    'ending'      => '02/28/2016',
+                    'description' => '<p>Test event description text here!</p>',
+                    'category'    => 'Outdoor/Nature'
+                ),
+                array(
+                    'title'       => 'Bird Sanctuary Resource Center Re-Opening',
+                    'starting'    => '02/29/2016',
+                    'ending'      => '02/29/2016',
+                    'description' => '<p>Test event description text here!</p>',
+                    'category'    => 'Outdoor/Nature'
+                ),
+                array(
+                    'title'       => 'Lead Day Hike',
+                    'starting'    => '02/29/2016',
+                    'ending'      => '02/29/2016',
+                    'description' => '<p>Test event description text here!</p>',
+                    'category'    => 'Outdoor/Nature'
+                ),
+                array(
+                    'title'       => 'Project Snowstorm: Snowy Owls in Michigan',
+                    'starting'    => '03/01/2016',
+                    'ending'      => '03/01/2016',
+                    'description' => '<p>Test event description text here!</p>',
+                    'category'    => 'Outdoor/Nature'
+                ),
+            );
+            $view = 'list.html';
+            break;
+        default:
+
+            $view = 'dashboard.html';
+            break;
+        }
+
+
+
+        // Compile template data
+        $templateData = array(
+            'siteBaseUrl' => GLM_MEMBERS_SITE_BASE_URL,
+            'events'      => $events,
+            'event'       => $event
+        );
+
+        return array(
+            'status'           => $status,
+            'menuItemRedirect' => false,
+            'modelRedirect'    => false,
+            'view'             => 'front/events/' . $view,
+            'data'             => $templateData,
+            'settings'         => $settings
+        );
+    }
+}
index c4c5d79..9c23395 100644 (file)
  */
 
 $glmMembersEventsShortcodes = array(
+    'glm-members-event-list' => array(
+        'plugin'     => GLM_MEMBERS_EVENTS_PLUGIN_SLUG,
+        'menu'       => 'events',
+        'action'     => 'list',
+        'table'      => false,
+        'attributes' => array(
+            'type'     => 'all',
+            'order'    => 'title',
+            'member'   => false,
+            'template' => false
+        )
+    ),
+    'glm-members-event-detail' => array(
+        'plugin'     => GLM_MEMBERS_EVENTS_PLUGIN_SLUG,
+        'menu'       => 'events',
+        'action'     => 'detail',
+        'table'      => false,
+        'attributes' => array(
+            'id' => false
+        )
+    )
 );
 
-$glmMembersEventsShortcodesDescription = '';
+$glmMembersEventsShortcodesDescription = '
+     <tr>
+        <th>[glm-members-event-list]</th>
+        <td>&nbsp;</td>
+        <td width="50%">
+            Displays a list of events.
+        </td>
+    </tr>
+    ';
 
index c3c218d..e5ab238 100644 (file)
@@ -44,12 +44,10 @@ $glmMembersEventsAddOnValidActions = array(
         )
     ),
     'frontActions' => array(
-/*
         'events' => array(
             'list' => GLM_MEMBERS_EVENTS_PLUGIN_SLUG,
             'detail' => GLM_MEMBERS_EVENTS_PLUGIN_SLUG
         )
-*/
     )
 );
 
diff --git a/views/front/events/dashboard.html b/views/front/events/dashboard.html
new file mode 100644 (file)
index 0000000..0dcead7
--- /dev/null
@@ -0,0 +1,41 @@
+<h1>Dashboard</h1>
+<div class="row">
+    <div class="small-12 medium-5 columns">
+        {include file='front/events/searchForm.html'}
+    </div>
+    <div id="shortcuts" class="small-12 medium-4 columns">
+        {include file='front/events/shortCuts.html'}
+    </div>
+</div>
+<div class="row">
+    <div class="small-12 medium-6 columns">
+        <ul class="category-block pricing-table">
+            <li class="title">Arts & Crafts</li>
+            <li class="description text-left">Event title and date</li>
+        </ul>
+    </div>
+    <div class="small-12 medium-6 columns">
+        <ul class="category-block pricing-table">
+            <li class="title">Arts/Cultural Events</li>
+            <li class="description text-left">Event title and date</li>
+        </ul>
+    </div>
+    <div class="small-12 medium-6 columns">
+        <ul class="category-block pricing-table">
+            <li class="title">Beer/Wine Focus</li>
+            <li class="description text-left">Event title and date</li>
+        </ul>
+    </div>
+    <div class="small-12 medium-6 columns">
+        <ul class="category-block pricing-table">
+            <li class="title">Concert/Live Music</li>
+            <li class="description text-left">Event title and date</li>
+        </ul>
+    </div>
+    <div class="small-12 medium-6 columns end">
+        <ul class="category-block pricing-table">
+            <li class="title">Educational</li>
+            <li class="description text-left">Event title and date</li>
+        </ul>
+    </div>
+</div>
diff --git a/views/front/events/list.html b/views/front/events/list.html
new file mode 100644 (file)
index 0000000..2e6a83f
--- /dev/null
@@ -0,0 +1,23 @@
+<h1>Event List</h1>
+<div class="row">
+    <div class="small-12 medium-5 columns">
+        {include file='front/events/searchForm.html'}
+    </div>
+    <div id="shortcuts" class="small-12 medium-4 columns">
+        {include file='front/events/shortCuts.html'}
+    </div>
+</div>
+<div class="row">
+    {foreach $events as $event}
+    <div class="small-12 columns">
+        <div class="row">
+            <div class="small-6 medium-2 columns">{$event.starting}</div>
+            <div class="small-6 medium-10 columns">
+                {$event.category}<br>
+                <a href="#">{$event.title}</a>
+            </div>
+        </div>
+        <hr>
+    </div>
+    {/foreach}
+</div>
diff --git a/views/front/events/searchForm.html b/views/front/events/searchForm.html
new file mode 100644 (file)
index 0000000..09526b0
--- /dev/null
@@ -0,0 +1,43 @@
+        <h3 class="text-center">Find An Event</h3>
+        <form action="">
+            <input type="hidden" name="search" value="1">
+            <div class="row">
+                <div class="small-12 medium-6 columns">
+                    <label for="glm-event-name">Event Name </label>
+                </div>
+                <div class="small-12 medium-6 columns">
+                    <input id="glm-event-name" name="event_name">
+                </div>
+                <div class="small-12 small-text-center columns">
+                    <input type="submit" class="button">
+                </div>
+            </div>
+        </form>
+        <form action="">
+            <input type="hidden" name="search" value="1">
+            <div class="row">
+                <div class="small-12 medium-6 columns">
+                    <label for="glm-event-from">From</label>
+                </div>
+                <div class="small-12 medium-6 columns">
+                    <input id="glm-event-from" name="event_name">
+                </div>
+                <div class="small-12 medium-6 columns">
+                    <label for="glm-event-to">To</label>
+                </div>
+                <div class="small-12 medium-6 columns">
+                    <input id="glm-event-to" name="event_name">
+                </div>
+                <div class="small-12 medium-6 columns">
+                    <label for="glm-event-category">Category</label>
+                </div>
+                <div class="small-12 medium-6 columns">
+                    <select id="glm-event-category" name="category">
+                        <option></option>
+                    </select>
+                </div>
+                <div class="small-12 small-text-center columns">
+                    <input type="submit" class="button">
+                </div>
+            </div>
+        </form>
diff --git a/views/front/events/shortCuts.html b/views/front/events/shortCuts.html
new file mode 100644 (file)
index 0000000..08d4ab9
--- /dev/null
@@ -0,0 +1,7 @@
+        <h3 class="text-center">Shortcuts</h3>
+        <ul class="stack button-group">
+            <li><a href="#" class="button">Today's Events</a></li>
+            <li><a href="#" class="button">Tomorrow's Events</a></li>
+            <li><a href="#" class="button">Next 7 Days</a></li>
+        </ul>
+