Added option for package lists to link to detail
authorLaury GvR <laury@gaslightmedia.com>
Thu, 10 Nov 2016 16:18:28 +0000 (11:18 -0500)
committerLaury GvR <laury@gaslightmedia.com>
Thu, 10 Nov 2016 16:18:28 +0000 (11:18 -0500)
Added an option for package names on package lists to link to
package detail pages.

classes/data/dataManagement.php
index.php
setup/databaseScripts/create_database_V1.1.4.sql [deleted file]
setup/databaseScripts/create_database_V1.1.5.sql [new file with mode: 0644]
setup/databaseScripts/dbVersions.php
setup/databaseScripts/update_database_V1.1.5.sql [new file with mode: 0644]
setup/hooksHelp.html
views/admin/management/packaging.html
views/front/packaging/list.html
views/front/packaging/listForMemberListing.html

index d060bf7..92f3b65 100644 (file)
@@ -300,6 +300,22 @@ class GlmDataPackagingManagement extends GlmDataAbstract
                     'use' => 'a'
             ),
             
+            // 
+            'package_list_show_member_website_url_newtarget' => array(
+                    'field' => 'package_list_show_member_website_url_newtarget',
+                    'type' => 'checkbox',
+                    'default' => true,
+                    'use' => 'a'
+            ),
+            
+            // 
+            'package_list_show_package_detail_link' => array(
+                    'field' => 'package_list_show_package_detail_link',
+                    'type' => 'checkbox',
+                    'default' => true,
+                    'use' => 'a'
+            ),
+            
             // 
             'package_detail_show_member_link' => array(
                     'field' => 'package_detail_show_member_link',
index 0afda6d..fbe282c 100644 (file)
--- a/index.php
+++ b/index.php
@@ -38,7 +38,7 @@
  *  version from this plugin.
  */
 define('GLM_MEMBERS_PACKAGING_PLUGIN_VERSION', '1.2.0');
-define('GLM_MEMBERS_PACKAGING_PLUGIN_DB_VERSION', '1.1.4');
+define('GLM_MEMBERS_PACKAGING_PLUGIN_DB_VERSION', '1.1.5');
 
 // This is the minimum version of the GLM Members DB plugin require for this plugin.
 define('GLM_MEMBERS_PACKAGING_PLUGIN_MIN_MEMBERS_REQUIRED_VERSION', '2.0.0');
diff --git a/setup/databaseScripts/create_database_V1.1.4.sql b/setup/databaseScripts/create_database_V1.1.4.sql
deleted file mode 100644 (file)
index 0ebe833..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
--- Gaslight Media Members Database - Packaging 
--- File Created: 12/02/15 15:27:15
--- Database Version: 1.1.4
--- Database Creation Script
--- 
--- To permit each query below to be executed separately,
--- all queries must be separated by a line with four dashes
-
--- Packages 
-CREATE TABLE {prefix}packages (
-  id INT NOT NULL AUTO_INCREMENT,
-  active BOOLEAN NULL,                      -- Package is active
-  title TINYTEXT NULL,                      -- Title of package
-  package_slug TINYTEXT NULL,               -- Package name slug for canonical URLs (lowercase, "-" for spaces, no punctuation)
-  offsite_url TINYTEXT NULL,                -- Url for the package list on the member's site
-  descr TEXT NULL,                          -- Description of package
-  short_descr TINYTEXT NULL,                -- Short description of package
-  image TINYTEXT NULL,                      -- Package image
-  start_date TIMESTAMP NULL,                -- Date display of this package starts
-  end_date TIMESTAMP NULL,                  -- Date display of this package ends (last date of display)
-  expire_date TIMESTAMP NULL,               -- Date package expires (first date it's expired)
-  position INT NULL,                        -- Display order position
-  pricing TINYTEXT NULL,                    -- Pricing, descriptive
-  ref_type INT NULL,                        -- Type of entity this package is associated with
-  ref_dest INT NULL,                        -- Pointer to the specific entity
-  PRIMARY KEY (id),                         
-  INDEX(ref_type),
-  INDEX(ref_dest),
-  INDEX(start_date),
-  INDEX(end_date),
-  INDEX(expire_date)
-);
-
-----
-
--- Package Elements - Items in a package
-CREATE TABLE {prefix}package_elements (
-  id INT NOT NULL AUTO_INCREMENT,
-  package INT NULL,                         -- Pointer to the package
-  active BOOLEAN NULL,                      -- Package is active
-  title TINYTEXT NULL,                      -- Title of element
-  descr TEXT NULL,                          -- Description for this entity's participation in the package
-  short_descr TEXT NULL,                    -- Short description for this entity's participation in the package
-  image TINYTEXT NULL,                      -- Element image
-  position INT NULL,                        -- Display order position
-  ref_type INT NULL,                        -- Type of entity this element is association with
-  ref_dest INT NULL,                        -- Pointer to the specific entity
-  PRIMARY KEY (id),
-  INDEX(package),
-  INDEX(ref_type),
-  INDEX(ref_dest)
-);
-
-----
-
--- Package Management Settings
-CREATE TABLE {prefix}management (
-  id INT NOT NULL AUTO_INCREMENT,
-  canonical_package_page TINYTEXT NULL,          -- Canonical page slug for package detail
-  package_link_text_member_list TINYTEXT NULL,
-  package_link_text_member_detail TINYTEXT NULL,
-  package_list_show_image BOOLEAN DEFAULT '1',  
-  package_list_show_short_descr BOOLEAN DEFAULT '1',        
-  package_list_show_expire_date BOOLEAN DEFAULT '1',        
-  package_list_show_pricing BOOLEAN DEFAULT '1',        
-  package_list_show_offsite_url BOOLEAN DEFAULT '1',               
-  package_list_show_offsite_url_newtarget BOOLEAN DEFAULT '1',               
-  package_list_show_member_image BOOLEAN DEFAULT '1',  
-  package_list_show_member_short_descr BOOLEAN DEFAULT '1',  
-  package_list_show_member_link BOOLEAN DEFAULT '1',               
-  package_list_show_member_link_newtarget BOOLEAN DEFAULT '1',               
-  package_list_show_member_address BOOLEAN DEFAULT '1', 
-  package_list_show_member_second_address BOOLEAN DEFAULT '1',
-  package_list_show_member_street BOOLEAN DEFAULT '1',               
-  package_list_show_member_citystatezip BOOLEAN DEFAULT '1',               
-  package_list_show_member_country BOOLEAN DEFAULT '1',               
-  package_list_show_member_region BOOLEAN DEFAULT '1',               
-  package_list_show_member_phone BOOLEAN DEFAULT '1',               
-  package_list_show_member_tollfree BOOLEAN DEFAULT '1',               
-  package_list_show_member_email BOOLEAN DEFAULT '1',   
-  package_list_show_member_website_url BOOLEAN DEFAULT '1',
-  package_list_show_member_website_url_newtarget BOOLEAN DEFAULT '1',   
-  package_detail_show_image BOOLEAN DEFAULT '1',                            
-  package_detail_show_offsite_url BOOLEAN DEFAULT '1',               
-  package_detail_show_offsite_url_newtarget BOOLEAN DEFAULT '1',               
-  package_detail_show_member_link BOOLEAN DEFAULT '1',               
-  package_detail_show_member_link_newtarget BOOLEAN DEFAULT '1',               
-  package_detail_show_member_address BOOLEAN DEFAULT '1',               
-  package_detail_show_member_street BOOLEAN DEFAULT '1',               
-  package_detail_show_member_citystatezip BOOLEAN DEFAULT '1',               
-  package_detail_show_member_country BOOLEAN DEFAULT '1',               
-  package_detail_show_member_region BOOLEAN DEFAULT '1',               
-  package_detail_show_member_phone BOOLEAN DEFAULT '1',               
-  package_detail_show_member_tollfree BOOLEAN DEFAULT '1',               
-  package_detail_show_member_email BOOLEAN DEFAULT '1',              
-  PRIMARY KEY (id)
-);
-
-----
-
--- Set default package management entry
-INSERT INTO {prefix}management
-    ( id, canonical_package_page )
-   VALUES
-    ( 1, 'package-detail' )
-;
-
diff --git a/setup/databaseScripts/create_database_V1.1.5.sql b/setup/databaseScripts/create_database_V1.1.5.sql
new file mode 100644 (file)
index 0000000..d5fecf6
--- /dev/null
@@ -0,0 +1,108 @@
+-- Gaslight Media Members Database - Packaging 
+-- File Created: 12/02/15 15:27:15
+-- Database Version: 1.1.4
+-- Database Creation Script
+-- 
+-- To permit each query below to be executed separately,
+-- all queries must be separated by a line with four dashes
+
+-- Packages 
+CREATE TABLE {prefix}packages (
+  id INT NOT NULL AUTO_INCREMENT,
+  active BOOLEAN NULL,                      -- Package is active
+  title TINYTEXT NULL,                      -- Title of package
+  package_slug TINYTEXT NULL,               -- Package name slug for canonical URLs (lowercase, "-" for spaces, no punctuation)
+  offsite_url TINYTEXT NULL,                -- Url for the package list on the member's site
+  descr TEXT NULL,                          -- Description of package
+  short_descr TINYTEXT NULL,                -- Short description of package
+  image TINYTEXT NULL,                      -- Package image
+  start_date TIMESTAMP NULL,                -- Date display of this package starts
+  end_date TIMESTAMP NULL,                  -- Date display of this package ends (last date of display)
+  expire_date TIMESTAMP NULL,               -- Date package expires (first date it's expired)
+  position INT NULL,                        -- Display order position
+  pricing TINYTEXT NULL,                    -- Pricing, descriptive
+  ref_type INT NULL,                        -- Type of entity this package is associated with
+  ref_dest INT NULL,                        -- Pointer to the specific entity
+  PRIMARY KEY (id),                         
+  INDEX(ref_type),
+  INDEX(ref_dest),
+  INDEX(start_date),
+  INDEX(end_date),
+  INDEX(expire_date)
+);
+
+----
+
+-- Package Elements - Items in a package
+CREATE TABLE {prefix}package_elements (
+  id INT NOT NULL AUTO_INCREMENT,
+  package INT NULL,                         -- Pointer to the package
+  active BOOLEAN NULL,                      -- Package is active
+  title TINYTEXT NULL,                      -- Title of element
+  descr TEXT NULL,                          -- Description for this entity's participation in the package
+  short_descr TEXT NULL,                    -- Short description for this entity's participation in the package
+  image TINYTEXT NULL,                      -- Element image
+  position INT NULL,                        -- Display order position
+  ref_type INT NULL,                        -- Type of entity this element is association with
+  ref_dest INT NULL,                        -- Pointer to the specific entity
+  PRIMARY KEY (id),
+  INDEX(package),
+  INDEX(ref_type),
+  INDEX(ref_dest)
+);
+
+----
+
+-- Package Management Settings
+CREATE TABLE {prefix}management (
+  id INT NOT NULL AUTO_INCREMENT,
+  canonical_package_page TINYTEXT NULL,          -- Canonical page slug for package detail
+  package_link_text_member_list TINYTEXT NULL,
+  package_link_text_member_detail TINYTEXT NULL,
+  package_list_show_image BOOLEAN DEFAULT '1',
+  package_list_show_short_descr BOOLEAN DEFAULT '1',
+  package_list_show_expire_date BOOLEAN DEFAULT '1',
+  package_list_show_pricing BOOLEAN DEFAULT '1',
+  package_list_show_offsite_url BOOLEAN DEFAULT '1',
+  package_list_show_offsite_url_newtarget BOOLEAN DEFAULT '1',
+  package_list_show_member_image BOOLEAN DEFAULT '1',
+  package_list_show_member_short_descr BOOLEAN DEFAULT '1',
+  package_list_show_member_link BOOLEAN DEFAULT '1',
+  package_list_show_member_link_newtarget BOOLEAN DEFAULT '1',
+  package_list_show_member_address BOOLEAN DEFAULT '1',
+  package_list_show_member_second_address BOOLEAN DEFAULT '1',
+  package_list_show_member_street BOOLEAN DEFAULT '1',
+  package_list_show_member_citystatezip BOOLEAN DEFAULT '1',
+  package_list_show_member_country BOOLEAN DEFAULT '1',
+  package_list_show_member_region BOOLEAN DEFAULT '1',
+  package_list_show_member_phone BOOLEAN DEFAULT '1',
+  package_list_show_member_tollfree BOOLEAN DEFAULT '1',
+  package_list_show_member_email BOOLEAN DEFAULT '1',
+  package_list_show_member_website_url BOOLEAN DEFAULT '1',
+  package_list_show_member_website_url_newtarget BOOLEAN DEFAULT '1',
+  package_list_show_package_detail_link BOOLEAN DEFAULT '1',
+  package_detail_show_image BOOLEAN DEFAULT '1',
+  package_detail_show_offsite_url BOOLEAN DEFAULT '1',
+  package_detail_show_offsite_url_newtarget BOOLEAN DEFAULT '1',
+  package_detail_show_member_link BOOLEAN DEFAULT '1',
+  package_detail_show_member_link_newtarget BOOLEAN DEFAULT '1',
+  package_detail_show_member_address BOOLEAN DEFAULT '1',
+  package_detail_show_member_street BOOLEAN DEFAULT '1',
+  package_detail_show_member_citystatezip BOOLEAN DEFAULT '1',
+  package_detail_show_member_country BOOLEAN DEFAULT '1',
+  package_detail_show_member_region BOOLEAN DEFAULT '1',
+  package_detail_show_member_phone BOOLEAN DEFAULT '1',
+  package_detail_show_member_tollfree BOOLEAN DEFAULT '1',
+  package_detail_show_member_email BOOLEAN DEFAULT '1',
+  PRIMARY KEY (id)
+);
+
+----
+
+-- Set default package management entry
+INSERT INTO {prefix}management
+    ( id, canonical_package_page )
+   VALUES
+    ( 1, 'package-detail' )
+;
+
index 60292a0..4e1e7e8 100644 (file)
@@ -19,6 +19,7 @@ $glmMembersPackagingDbVersions = array(
             '1.1.1' => array('version' => '1.1.1', 'tables' => 3),
             '1.1.2' => array('version' => '1.1.2', 'tables' => 3),
             '1.1.3' => array('version' => '1.1.3', 'tables' => 3),
-            '1.1.4' => array('version' => '1.1.4', 'tables' => 3)
+            '1.1.4' => array('version' => '1.1.4', 'tables' => 3),
+            '1.1.5' => array('version' => '1.1.5', 'tables' => 3)
 );
 
diff --git a/setup/databaseScripts/update_database_V1.1.5.sql b/setup/databaseScripts/update_database_V1.1.5.sql
new file mode 100644 (file)
index 0000000..ad2c7e3
--- /dev/null
@@ -0,0 +1,10 @@
+-- Gaslight Media Members Database 
+-- File Created: 7/06/16 09:08:33
+-- Database Version: 1.1.4
+-- Database Update From Previous Version Script
+-- 
+-- To permit each query below to be executed separately,
+-- all queries must be separated by a line with four dashses
+
+-- Package Management Settings
+ALTER TABLE {prefix}management ADD COLUMN package_list_show_package_detail_link TINYTEXT DEFAULT NULL;
\ No newline at end of file
index f0d92b6..742fb11 100644 (file)
@@ -8,48 +8,36 @@
             <td>glm_members_permit_admin_members_packages_tab</td>
             <td>Filter</td>
             <td></td>
-            <td>
-                Returns boolean answer to "Is current user permitted to see multi-member packaging tab?"
-            </td>
+            <td>Returns boolean answer to "Is current user permitted to see multi-member packaging tab?"</td>
         </tr>
         <tr>
             <td>glm_members_permit_admin_members_packaging_add_package</td>
             <td>Filter</td>
             <td></td>
-            <td>
-                Returns boolean answer to "Is current user permitted to add a new multi-member package?"
-            </td>
+            <td>Returns boolean answer to "Is current user permitted to add a new multi-member package?"</td>
         </tr>
         <tr>
             <td>glm_members_permit_admin_members_packaging_edit_package</td>
             <td>Filter</td>
             <td></td>
-            <td>
-                Returns boolean answer to "Is current user permitted to edit a multi-member package?"
-            </td>
+            <td>Returns boolean answer to "Is current user permitted to edit a multi-member package?"</td>
         </tr>
         <tr>
             <td>glm_members_permit_admin_member_packages_tab</td>
             <td>Filter</td>
             <td></td>
-            <td>
-                Returns boolean answer to "Is current user permitted to see the member packaging tab?"
-            </td>
+            <td>Returns boolean answer to "Is current user permitted to see the member packaging tab?"</td>
         </tr>
         <tr>
             <td>glm_members_permit_admin_member_packaging_add_package</td>
             <td>Filter</td>
             <td></td>
-            <td>
-                Returns boolean answer to "Is current user permitted to add a new Member package?"
-            </td>
+            <td>Returns boolean answer to "Is current user permitted to add a new Member package?"</td>
         </tr>
         <tr>
             <td>glm_members_permit_admin_member_packaging_edit_package</td>
             <td>Filter</td>
             <td></td>
-            <td>
-                Returns boolean answer to "Is current user permitted to edit a member package?"
-            </td>
+            <td>Returns boolean answer to "Is current user permitted to edit a member package?"</td>
         </tr>
 
index 2b27667..c75458e 100644 (file)
                                 Open link in new tab: <input type="checkbox" name="package_list_show_member_website_url_newtarget"{if $packagingSettings.fieldData.package_list_show_member_website_url_newtarget.value} checked="checked"{/if}>
                             </td>
                         </tr>
-                        <tr><th>Show Member E-mail:</th><td><input type="checkbox" name="package_list_show_member_email"{if $packagingSettings.fieldData.package_list_show_member_email.value} checked="checked"{/if}></td></tr>
+                        <tr>
+                            <th>Show Member E-mail:</th>
+                            <td>
+                                <input type="checkbox" name="package_list_show_member_email"{if $packagingSettings.fieldData.package_list_show_member_email.value} checked="checked"{/if}>
+                            </td>
+                        </tr>
+                        <tr>
+                            <th>Package Name Links to Package Detail:</th>
+                            <td>
+                                <input type="checkbox" name="package_list_show_package_detail_link"{if $packagingSettings.fieldData.package_list_show_package_detail_link.value} checked="checked"{/if}>
+                            </td>
+                        </tr>
                     </table>
                 </td>
             </tr>
index 79da261..ae2088f 100644 (file)
                                             
                                             {if $p.image && $settings.package_list_show_image}
                                                 <div class="glm-package-img-wrap">
-                                                 <img src="{$glmPluginMediaUrl}/images/medium/{$p.image}">
+                                                    <img src="{$glmPluginMediaUrl}/images/medium/{$p.image}">
                                                 </div> 
                                             {/if}
-                                            <h3 class="glm-member-db-package-title"><a href="{$siteBaseUrl}{$settings.canonical_package_page}/{$p.package_slug}/">{$p.title}</a></h3>
+                                            <h3 class="glm-member-db-package-title">
+                                                {if $settings.package_list_show_package_detail_link}
+                                                <a href="{$siteBaseUrl}{$settings.canonical_package_page}/{$p.package_slug}/">
+                                                    {$p.title}
+                                                </a>
+                                                {else}
+                                                <span>
+                                                    {$p.title}
+                                                </span>
+                                                {/if}
+                                            </h3>
                                             {if $p.short_descr && $settings.package_list_show_short_descr}<div class="glm-member-db-package-list-short-description">{$p.short_descr}</div>{/if}
                                             <div class="details">
                                                 {if $p.expire_date.date && $settings.package_list_show_expire_date}
                     <div class="glm-member-db-package-info">
                     
                         {if $p.image}<div class="glm-package-img-wrap"><img src="{$glmPluginMediaUrl}/images/medium/{$p.image}"></div>{/if}
-                        <h3 class="glm-member-db-package-title"><a href="{$siteBaseUrl}{$settings.canonical_package_page}/{$p.package_slug}/">{$p.title}</a></h3>
+                        <h3 class="glm-member-db-package-title">
+                            {if $settings.package_list_show_package_detail_link}
+                            <a href="{$siteBaseUrl}{$settings.canonical_package_page}/{$p.package_slug}/">
+                                {$p.title}
+                            </a>
+                            {else}
+                            <span>
+                                {$p.title}
+                            </span>
+                            {/if}
+                        </h3>
                         {if $p.descr}{$p.descr|nl2br}{else if $p.short_descr}{$p.short_descr}{/if}
                         <div class="details">
                             <div><span class="title">Expires: </span><span class="data">{$p.expire_date.date}</span></div>
index 8d9bb2f..9975b4a 100644 (file)
@@ -8,12 +8,22 @@
             <!-- Container for package information -->
             <div class="glm-member-db-package-info">
                 
-              {if $p.image}
-               <div class="glm-package-img-wrap">
-                <img src="{$glmPluginMediaUrl}/images/medium/{$p.image}">
-               </div> 
-              {/if}
-                <h3 class="glm-member-db-package-title"><a href="{$siteBaseUrl}{$settings.canonical_package_page}/{$p.package_slug}/">{$p.title}</a></h3>
+                {if $p.image}
+                <div class="glm-package-img-wrap">
+                    <img src="{$glmPluginMediaUrl}/images/medium/{$p.image}">
+                </div> 
+                {/if}
+                <h3 class="glm-member-db-package-title">
+                    {if $settings.package_list_show_package_detail_link}
+                    <a href="{$siteBaseUrl}{$settings.canonical_package_page}/{$p.package_slug}/">
+                        {$p.title}
+                    </a>
+                    {else}
+                    <span>
+                        {$p.title}
+                    </span>
+                    {/if}
+                </h3>
                 {$p.short_descr}
                 <div class="details">
                     <div><span class="title">Expires: </span><span class="data">{$p.expire_date.date}</span></div>