'use' => 'a'
),
- // Canonical Page Slug
+ // Member List Link to Packages on Member Detail
'package_link_text_member_list' => array (
'field' => 'package_link_text_member_list',
'type' => 'text',
'use' => 'a'
),
+ // Member Detail Link to Packages on Member Detail
+ 'package_link_text_member_detail' => array (
+ 'field' => 'package_link_text_member_detail',
+ 'type' => 'text',
+ 'required' => false,
+ 'use' => 'a'
+ ),
+
//
'package_list_show_member_image' => array(
'field' => 'package_list_show_member_image',
'required' => true,
'use' => 'lged'
),
+
+ // Reference Destination Slug
+ 'ref_dest_slug' => array (
+ 'field' => 'ref_dest',
+ 'as' => 'ref_dest_slug',
+ 'type' => 'pointer',
+ 'p_table' => GLM_MEMBERS_PLUGIN_DB_PREFIX . 'members',
+ 'p_field' => 'member_slug',
+ 'p_blank' => true,
+ 'required' => true,
+ 'use' => 'lged'
+ ),
// Title
'offsite_url' => array (
* version from this plugin.
*/
define('GLM_MEMBERS_PACKAGING_PLUGIN_VERSION', '1.1.13');
-define('GLM_MEMBERS_PACKAGING_PLUGIN_DB_VERSION', '1.1.3');
+define('GLM_MEMBERS_PACKAGING_PLUGIN_DB_VERSION', '1.1.4');
// 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');
case 'detail-packages-link':
$view = 'packagesLinkForMemberDetail.html';
break;
+ case 'package-detail-packages-link':
+ $view = 'packagesLinkForPackageDetail.html';
+ break;
case 'detail-sidemenu';
$view = 'packagesSidemenuForMemberDetail.html';
break;
$view = 'list.html';
break;
}
-
+
// Compile template data
$templateData = array(
'siteBaseUrl' => GLM_MEMBERS_SITE_BASE_URL,
+++ /dev/null
--- Gaslight Media Members Database - Packaging
--- File Created: 12/02/15 15:27:15
--- Database Version: 1.1.3
--- 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, -- Canonical page slug for package detail
- 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' )
-;
-
--- /dev/null
+-- 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' )
+;
+
'1.1.0' => array('version' => '1.1.0', 'tables' => 3),
'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.3' => array('version' => '1.1.3', 'tables' => 3),
+ '1.1.4' => array('version' => '1.1.4', 'tables' => 3)
);
--- /dev/null
+-- 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_link_text_member_detail TINYTEXT DEFAULT NULL;
\ No newline at end of file
2
);
+ // Add internal page content links to package detail page
+ add_filter('glm-member-db-front-package-detail-linksBottom', function($content, $id) {
+ $packageData = do_shortcode('[glm-members-packaging-list member='.$id.', template="package-detail-packages-link" order="title"]');
+ $content .= $packageData;
+ return $content;
+ },
+ 10,
+ 2
+ );
+
// Add content to member detail page - Get it from the existing package listing shortcode
add_filter('glm-member-db-front-members-detail-descriptionAfter', function($content, $id) {
$packageData = do_shortcode('[glm-members-packaging-list member='.$id.', template="member-detail" order="title"]');
<input type="text" name="canonical_package_page" value="{$packagingSettings.fieldData.canonical_package_page}" class="glm-form-text-input-medium">
{if $packagingSettings.fieldFail.canonical_package_page}<p>{$packagingSettings.fieldFail.canonical_package_page}</p>{/if}
</td>
- </tr>
+ </tr>
<tr>
<th {if $packagingSettings.fieldRequired.package_link_text_member_list}class="glm-required"{/if}>Package Link Text for Member List:</th>
<td {if $packagingSettings.fieldFail.package_link_text_member_list}class="glm-form-bad-input glm-form-bad-input-misc"{/if}>
<input type="text" name="package_link_text_member_list" value="{$packagingSettings.fieldData.package_link_text_member_list}" class="glm-form-text-input-medium" placeholder="Packages">
{if $packagingSettings.fieldFail.package_link_text_member_list}<p>{$packagingSettings.fieldFail.package_link_text_member_list}</p>{/if}
</td>
- </tr>
+ </tr>
+ <tr>
+ <th {if $packagingSettings.fieldRequired.package_link_text_member_detail}class="glm-required"{/if}>Package Link Text for Member Detail:</th>
+ <td {if $packagingSettings.fieldFail.package_link_text_member_detail}class="glm-form-bad-input glm-form-bad-input-misc"{/if}>
+ <input type="text" name="package_link_text_member_detail" value="{$packagingSettings.fieldData.package_link_text_member_detail}" class="glm-form-text-input-medium" placeholder="Packages & Deals">
+ {if $packagingSettings.fieldFail.package_link_text_member_detail}<p>{$packagingSettings.fieldFail.package_link_text_member_detail}</p>{/if}
+ </td>
+ </tr>
<tr><td><input class="updateSettings button" type="submit" value="Update Settings" /></td></tr>
</table>
{apply_filters('glm-member-db-front-members-detail-linksTop', '', $package.member.id)}
{if $package.member.email && $settings.package_detail_show_member_email}<a href="mailto:{$package.member.email}">Email</a>{/if}
<!-- {if $settings.package_detail_show_member_coupons && $coupons}<a href="#glm-member-detail-coupons">Coupons</a>{/if}-->
- {apply_filters('glm-member-db-front-members-detail-linksBottom', '', $package.member.id)}
+ {apply_filters('glm-member-db-front-package-detail-linksBottom', '', $package.member.id)}
</div>
</div>
--- /dev/null
+{if $havePackages && $packages && $settings.detail_show_packages}
+ {foreach $packages as $p}
+ {if $p@iteration == 1}
+ <a id="glm-member-detail-packages-link" class="link-open-detail-content-data" href="{$siteBaseUrl}{$settings.canonical_member_page}/{$p.ref_dest_slug}/?expanded=packages">
+ {if $settings.package_link_text_member_detail}
+ {$settings.package_link_text_member_detail}
+ {else}
+ Packages & Deals
+ {/if}
+ </a>
+ {/if}
+ {/foreach}
+{/if}
\ No newline at end of file