From: Chuck Scott Date: Wed, 4 May 2016 19:19:47 +0000 (-0400) Subject: Last changes before initial deployment X-Git-Tag: v1.0.0^2~61 X-Git-Url: http://cvs2.gaslightmedia.com/gitweb/index.cgi?a=commitdiff_plain;h=980095255512bc697dc6c3a87933a88782b75b91;p=WP-Plugins%2Fglm-member-db-events.git Last changes before initial deployment --- diff --git a/classes/data/dataEvents.php b/classes/data/dataEvents.php index cbfa4b6..a75e307 100644 --- a/classes/data/dataEvents.php +++ b/classes/data/dataEvents.php @@ -418,6 +418,7 @@ class GlmDataEvents extends GlmDataAbstract 'admin_name' => array ( 'field' => 'admin_name', 'type' => 'text', + 'required' => true, 'use' => 'a' ), @@ -432,6 +433,7 @@ class GlmDataEvents extends GlmDataAbstract 'admin_email' => array ( 'field' => 'admin_email', 'type' => 'text', + 'required' => true, 'use' => 'a' ), @@ -439,6 +441,7 @@ class GlmDataEvents extends GlmDataAbstract 'admin_phone' => array ( 'field' => 'admin_phone', 'type' => 'text', + 'required' => true, 'use' => 'a' ), diff --git a/models/admin/events/list.php b/models/admin/events/list.php index db351f7..9e33770 100644 --- a/models/admin/events/list.php +++ b/models/admin/events/list.php @@ -95,6 +95,7 @@ class GlmMembersAdmin_events_list extends GlmDataEvents $numbEvents = 0; $option = 'list'; $events = false; + $haveEvents = false; $event = false; $haveEvent = false; $this->eventID = false; @@ -551,14 +552,6 @@ class GlmMembersAdmin_events_list extends GlmDataEvents $dateWhere = " start_time <= '$toMYSQL' "; } } -/* - // If we have a from but not a to date, use from as the to but don't populate the to field - } elseif ($fromDate) { - $toDate = date('m/d/Y', strtotime($_REQUEST['fromDate'])); - $toMYSQL = date('Y-m-d', strtotime($toDate." +1 day")); - $toDate = false; - } -*/ // If we have from and to dates, do search for those inclusive if ($dateWhere != '') { @@ -628,6 +621,9 @@ class GlmMembersAdmin_events_list extends GlmDataEvents // since we're doing paging, we have to break out just the events data $events = $eventsResult['list']; + if (count($events)>0) { + $haveEvents = true; + } unset($eventsResult); break; @@ -674,6 +670,7 @@ class GlmMembersAdmin_events_list extends GlmDataEvents $templateData = array( 'option' => $option, 'events' => $events, + 'haveEvents' => $haveEvents, 'event' => $event, 'haveEvent' => $haveEvent, 'eventID' => $this->eventID, diff --git a/setup/adminMenus.php b/setup/adminMenus.php index f15592b..87a1137 100644 --- a/setup/adminMenus.php +++ b/setup/adminMenus.php @@ -70,28 +70,6 @@ * */ -// Add a main menu item -/* -add_menu_page( - 'GLM Events', // Page Title - 'GLM Events', // Menu Title - 'glm-members-members', // Capability - 'glm-members-admin-menu-events', // Menu Slug - function() {$this->controller('events');}, // Called function - false, // Icon URL - '92' // Menu Position -); - -add_submenu_page( - 'glm-members-admin-menu-events', // Parent slug - 'Add Event', // Page title - 'Add Event', // Menu Title - 'glm_members_members', // Capability required - 'glm-members-admin-menu-events-add', // Menu slug - function() {$this->controller('add');} -); - */ - add_submenu_page( 'glm-members-admin-menu-members', // Parent slug 'Events', // Page title @@ -109,3 +87,17 @@ add_submenu_page( 'glm-members-admin-menu-events-list', // Menu slug function() {$this->controller('events', 'list');} ); + +// If a contact is logged in (ownEntity isn't false), add Contact Profile menu item +if ($this->config['loggedInUser']['contactUser']) { + + add_submenu_page( + $mainMenuSlug, + 'Events', + 'Events', + 'glm_members_edit_my_entity', + 'glm-members-admin-menu-events-list', + function() {$this->controller('events');} + ); + +} diff --git a/setup/adminTabs.php b/setup/adminTabs.php index 1f32580..3807126 100644 --- a/setup/adminTabs.php +++ b/setup/adminTabs.php @@ -33,66 +33,70 @@ * */ -add_filter('glm-member-db-add-tab-for-member', - function($addOnTabs) { - $newTabs = array( - array( - 'text' => 'Events', - 'menu' => 'member', - 'action' => 'events', - 'option' => 'list' - ), +// If user can manage all members +if (current_user_can('glm_members_members')) { - ); - $addOnTabs = array_merge($addOnTabs, $newTabs); - return $addOnTabs; - } -); - -add_filter('glm-member-db-add-tab-for-settings', - function($addOnTabs) { - $newTabs = array( - array( - 'text' => 'Event Categories', - 'menu' => 'settings', - 'action' => 'eventCategories' - ), + add_filter('glm-member-db-add-tab-for-member', + function($addOnTabs) { + $newTabs = array( + array( + 'text' => 'Events', + 'menu' => 'member', + 'action' => 'events', + 'option' => 'list' + ), - ); - $addOnTabs = array_merge($addOnTabs, $newTabs); - return $addOnTabs; - } -); + ); + $addOnTabs = array_merge($addOnTabs, $newTabs); + return $addOnTabs; + } + ); + add_filter('glm-member-db-add-tab-for-settings', + function($addOnTabs) { + $newTabs = array( + array( + 'text' => 'Event Categories', + 'menu' => 'settings', + 'action' => 'eventCategories' + ), -add_filter('glm-member-db-add-tab-for-events', - function($addOnTabs) { - $newTabs = array( - array( - 'text' => 'Event Categories', - 'menu' => 'events', - 'action' => 'categories' - ), + ); + $addOnTabs = array_merge($addOnTabs, $newTabs); + return $addOnTabs; + } + ); - ); - $addOnTabs = array_merge($addOnTabs, $newTabs); - return $addOnTabs; - } -); -if (apply_filters('glm_members_permit_admin_members_events_tab', true)) { - add_filter('glm-member-db-add-tab-for-management', + add_filter('glm-member-db-add-tab-for-events', function($addOnTabs) { $newTabs = array( array( - 'text' => 'Events', - 'menu' => 'management', - 'action' => 'events' - ) + 'text' => 'Event Categories', + 'menu' => 'events', + 'action' => 'categories' + ), + ); $addOnTabs = array_merge($addOnTabs, $newTabs); return $addOnTabs; } ); -} + if (apply_filters('glm_members_permit_admin_members_events_tab', true)) { + add_filter('glm-member-db-add-tab-for-management', + function($addOnTabs) { + $newTabs = array( + array( + 'text' => 'Events', + 'menu' => 'management', + 'action' => 'events' + ) + ); + $addOnTabs = array_merge($addOnTabs, $newTabs); + return $addOnTabs; + } + ); + } + +} \ No newline at end of file diff --git a/setup/permissions.php b/setup/permissions.php index 0600857..ca66d0d 100644 --- a/setup/permissions.php +++ b/setup/permissions.php @@ -41,3 +41,19 @@ * * Of course any of these may test more than one capability if that's desired. */ + +// Logged in all members manager user may edit an event for all members +add_filter('glm_members_permit_admin_members_event', + function($permit) { + if (!$permit) { return false; } + return current_user_can('glm_members_edit_any_member'); + } +); + +// Logged in member user may edit an event only for their own entity +add_filter('glm_members_permit_admin_member_event', + function($permit) { + if (!$permit) { return false; } + return current_user_can('glm_members_edit_my_member'); + } +); diff --git a/views/admin/events/edit.html b/views/admin/events/edit.html index 63217b9..2e00c78 100644 --- a/views/admin/events/edit.html +++ b/views/admin/events/edit.html @@ -4,7 +4,8 @@ {include file='admin/events/header.html'} {/if} -{if apply_filters('glm_members_permit_admin_members_packaging_edit_package', true)} +{if apply_filters('glm_members_permit_admin_member_event', true)} + {if $haveMember} Return to Events List {else} @@ -40,9 +41,8 @@ Location Dates Summary Calendar - Administrative Contact + Administrative Contact Attach Files -
{if $eventUpdated}Event Updated{/if} {if $eventUpdateError}Event Update Error{/if} @@ -80,6 +80,8 @@ {include file='admin/events/editAdminContact.html'} + + @@ -322,6 +324,24 @@ initMap(locID); initNewCity(); + + // Listen for changes in the lat/lon inputs + $('.latLonRecenter').on('click', function() { + + locID = $(this).attr('data-id'); + + // Get lat and lon from the input fields + var glmLat = $('#glmLat_' + locID).val(); + var glmLng = $('#glmLng_' + locID).val(); + + location[locID] = new google.maps.LatLng(glmLat, glmLng); + + initMap(locID); + + return false; + + }); + } @@ -578,14 +598,6 @@ } -/* Not used anymore ???? - $('#addRecurrenceButton').click( function() { - $('#addRecurrenceDialog').dialog('open'); - }); - $('#addRecurrenceCancel').click( function() { - $("#addRecurrenceDialog").dialog("close"); - }); -*/ /* * Category Selection */ @@ -875,8 +887,8 @@ glmLng = this.position.lng(); // Assign it to the hidden fields for submission - $('#glmLat_' + locID).val(glmLat); - $('#glmLng_' + locID).val(glmLng); + $('#glmLat_' + locID).val(glmLat.toFixed(6)); + $('#glmLng_' + locID).val(glmLng.toFixed(6)); // Also display it to the user $('#mapPosition_' + locID).html('Lat ' + glmLat.toFixed(4) + ', Lon ' + glmLng.toFixed(4)); @@ -915,8 +927,8 @@ // Assign the new position to the hidden fields for submission glmLat = results[0].geometry.location.lat(); glmLng = results[0].geometry.location.lng(); - $('#glmLat_' + locID).val(glmLat); - $('#glmLng_' + locID).val(glmLng); + $('#glmLat_' + locID).val(glmLat.toFixed(6)); + $('#glmLng_' + locID).val(glmLng.toFixed(6)); // Also display it to the user $('#mapPosition_' + locID).html('Lat ' + glmLat.toFixed(4) + ', Lon ' + glmLng.toFixed(4)); diff --git a/views/admin/events/editAdminContact.html b/views/admin/events/editAdminContact.html index f353ade..df0f0f7 100644 --- a/views/admin/events/editAdminContact.html +++ b/views/admin/events/editAdminContact.html @@ -7,9 +7,10 @@ - - + @@ -19,17 +20,20 @@ - - + - - + +
 Administrative Contact Information
Admin Contact Name: + Admin Contact Name: + {if $event.fieldFail.admin_name}

{$event.fieldFail.admin_name}

{/if}
Admin Contact E-Mail: + Admin Contact E-Mail: + {if $event.fieldFail.admin_email}

{$event.fieldFail.admin_name}

{/if}
Admin Contact Phone: + Admin Contact Phone: + {if $event.fieldFail.admin_phone}

{$event.fieldFail.admin_phone}

{/if}
diff --git a/views/admin/events/editFiles.html b/views/admin/events/editFiles.html index d7a57f6..c3c6393 100644 --- a/views/admin/events/editFiles.html +++ b/views/admin/events/editFiles.html @@ -18,7 +18,8 @@    Description: - + +
Maximum 165 characters {if $event.fieldFail.file1_descr}

{$event.fieldFail.file1_descr}

{/if} @@ -38,7 +39,8 @@    Description: - + +
Maximum 165 characters {if $event.fieldFail.file2_descr}

{$event.fieldFail.file2_descr}

{/if} @@ -59,7 +61,8 @@    Description: - + +
Maximum 165 characters {if $event.fieldFail.file3_descr}

{$event.fieldFail.file3_descr}

{/if} diff --git a/views/admin/events/editLocation.html b/views/admin/events/editLocation.html index 3ce1110..dab0722 100644 --- a/views/admin/events/editLocation.html +++ b/views/admin/events/editLocation.html @@ -162,8 +162,6 @@ Location: - -