Cleaned up more output and some user interface additions.
authorChuck Scott <cscott@gaslightmedia.com>
Mon, 21 Dec 2015 18:50:17 +0000 (13:50 -0500)
committerChuck Scott <cscott@gaslightmedia.com>
Mon, 21 Dec 2015 18:50:17 +0000 (13:50 -0500)
models/admin/member/packaging.php
models/admin/members/packaging.php
models/front/packaging/list.php
views/admin/member/packaging.html
views/admin/members/packaging.html
views/front/footer.html
views/front/packaging/detail.html
views/front/packaging/header.html
views/front/packaging/list.html

index 51db0c8..a0c7ee2 100644 (file)
@@ -238,6 +238,7 @@ class GlmMembersAdmin_member_packaging extends GlmDataPackages
                     $packageID = $_REQUEST['packageID'] - 0;
                 }
 
+                // Delete the Package
                 if ($packageID > 0) {
                     $this->deleteEntry($packageID, true);
                     $packageDeleted = true;
index 6f44177..7ca37d9 100644 (file)
@@ -113,6 +113,10 @@ class GlmMembersAdmin_members_packaging extends GlmDataPackages
             $membersList = $Members->getSimpleMembersList();
         }
 
+        /*
+         * Process based on supplied option
+         */
+
         switch($option) {
 
             case 'add':
@@ -191,9 +195,22 @@ class GlmMembersAdmin_members_packaging extends GlmDataPackages
                 break;
 
             case 'delete':
-                if ($id > 0) {
-                    $this->deleteEntry($id, true);
+
+                // Get the package ID
+                $packageID = 0;
+                if ($_REQUEST['packageID'] && $_REQUEST['packageID'] != '') {
+                    $packageID = $_REQUEST['packageID'] - 0;
+                }
+
+                // Delete the package
+                if ($packageID > 0) {
+                    $this->deleteEntry($packageID, true);
+                    $packageDeleted = true;
                 }
+
+                // Look for matching package elements
+// **** NEED TO MAKE SURE THAT THE MACTHING PACKAGE ELEMENTS ARE DELETED!!! **** //
+
                 break;
 
             case 'list':
index 64ea48d..4134d7d 100644 (file)
@@ -105,7 +105,9 @@ class GlmMembersFront_packaging_list extends GlmDataPackages
         // Only select pacakges that are current
         $where = "CURDATE() BETWEEN T.start_date AND T.end_date";
 
-        // Select by specified type
+        /*
+         * Select packages by specified type
+         */
         switch($actionData['request']['type']) {
 
             // Member Packages Only
@@ -129,7 +131,9 @@ class GlmMembersFront_packaging_list extends GlmDataPackages
 
         }
 
-        // Check for specified member ID
+        /*
+         * Check for specified member ID
+         */
         $memberID = ($actionData['request']['member'] - 0);
         if ($actionData['request']['member'] > 0) {
             $where .= " AND T.ref_type = ".$this->config['ref_type_numb']['Member']." and T.ref_dest = $memberID";
@@ -140,7 +144,8 @@ class GlmMembersFront_packaging_list extends GlmDataPackages
         switch($order_type) {
 
             case 'member':
-                // Need to do this here after getting data
+                // This is done below after the list of packages has been retrieved.
+                break;
 
             case 'title':
                 $orderBy = 'T.title';
@@ -164,14 +169,24 @@ class GlmMembersFront_packaging_list extends GlmDataPackages
 
         }
 
-        // Get the selected list of packages
+        // Order by set "Display Order" is always the second-level sorting method
+        if ($orderBy != '') {
+            $orderBy .= ',';
+        }
+        $orderBy .= 'position DESC';
+
+        /*
+         * Get the list of packages that meeet the previous requirements
+         */
         $packages = $this->getList($where, $orderBy);
         if ($packages && count($packages) > 0) {
             $havePackages = true;
             $status = true;
         }
 
-        // Check for specified output ordering by member name
+        /*
+         * Sort by Member
+         */
         function packageMemberCmp($a, $b) {
             if ($a['ref_dest_name'] == $b['ref_dest_name']) {
                 return 0;
index aec0621..6e57ded 100644 (file)
@@ -13,7 +13,6 @@
     
       {if $option == 'edit'}
         <h2>Edit Package</h2>
-        <a href="{$thisURL}?page={$thisPage}&glm_action=packaging&member={$memberID}" class="button-primary glm-button glm-right">Return to Package List</a>
         <a id="deletePackageButton" class="button-primary glm-button glm-right">Delete this Package</a>
         
         <div id="deletePackageDialog" class="glm-dialog-box" title="Delete Package">
@@ -36,7 +35,7 @@
       {else}
         <h2>Add new Package</h2>
       {/if}
-    
+        <a href="{$thisURL}?page={$thisPage}&glm_action=packaging&member={$memberID}" class="button-primary glm-button glm-right">Return to Package List</a>
     
         <form action="{$thisURL}?page={$thisPage}" method="post" enctype="multipart/form-data">
             <input type="hidden" name="glm_action" value="packaging">
             
             // Date Input
             $('.glm-date-input').datepicker();
-            
+    
+    {if $havePackage}
             // Delete Package dialog
             $("#deletePackageDialog").dialog({
                 autoOpen: false,
             $('#deletePackageSubmit').click( function() {
                 window.location.replace("{$thisURL}?page={$thisPage}&glm_action=packaging&member={$memberID}&option=delete&packageID={$packageInfo.fieldData.id}");
             });
-
+    {/if}
+    
             // Flash certain elements for a short time after display      
             $(".glm-flash-updated").fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500);
 
index cf135d7..96e2bb2 100644 (file)
         
       {if $option == 'edit'}
         <h2>Edit Multi-Member Package</h2>
+        <a id="deletePackageButton" class="button-primary glm-button glm-right">Delete this Package</a>
+        
+        <div id="deletePackageDialog" class="glm-dialog-box" title="Delete Package">
+            <center>
+                <p><a id="deletePackageCancel" class="button-primary">Cancel</a></p>
+                <p><input id="deletePackageSubmit" type="submit" value="Delete this package"></p>
+            </center>
+            <div class="glm-item-container">
+                <p><center><span class="glm-error">WARNING:</span></center></p>
+                <p>
+                    <span class="glm-warning">Clicking the "Delete this Package" button above will 
+                    delete all of the data and images associated with this package.
+                    </span>
+                </p>
+                <p>
+                    <span class="glm-error">Once deleted, this information will no longer be available and cannot be retrieved!</span>
+                </p>
+            </div>
+        </div>
       {else}
         <h2>Add new Multi-Member Package</h2>
       {/if}
-    
+        <a href="{$thisURL}?page={$thisPage}&glm_action=packaging" class="button-primary glm-button glm-right">Return to Package List</a>
+        
     
         <form action="{$thisURL}?page={$thisPage}" method="post" enctype="multipart/form-data">
             <input type="hidden" name="glm_action" value="packaging">
             // Flash certain elements for a short time after display      
             $(".glm-flash-updated").fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500);
 
+    {if $havePackage}
+            // Delete Package dialog
+            $("#deletePackageDialog").dialog({
+                autoOpen: false,
+                minWidth: 400,
+                dialogClass: "glm-dialog-no-close"
+            });
+            $('#deletePackageButton').click( function() {
+                $('#deletePackageDialog').dialog('open');
+            });
+            $('#deletePackageCancel').click( function() {
+                $("#deletePackageDialog").dialog("close");
+            });            
+            $('#deletePackageSubmit').click( function() {
+                window.location.replace("{$thisURL}?page={$thisPage}&glm_action=packaging&option=delete&packageID={$packageInfo.fieldData.id}");
+            });
+    {/if}
+
             /*
              * Package Members Processing
              */
index ce3a205..e4b25c0 100644 (file)
@@ -1,5 +1,5 @@
 
-    </div> <!-- / admin content area -->
+    </div> <!-- / front content area -->
           
   {if $frontDebug}
     <script>
index 2385059..6e72f45 100644 (file)
@@ -1,50 +1,66 @@
 {include file='front/packaging/header.html'}
 
+<!-- 
+    NOTE: Image sizes for member db are typically large, medium, small, thumb.
+    These may be modified or added to by entries in the glm-member-db/config/plugin.ini file
+-->
+
+<!-- Package Detail Container -->
+<div class="glm-member-package-detail-container">
+    
 {if $havePackage}
 
-    {if ($byMember && $package.firstForMember) || !$byMember}
-        <div>
-            <h2><a href="{$siteBaseUrl}{$settings.canonical_member_page}/{$package.member_slug}/">{$package.ref_dest_name}</a></h2>
-            {if $package.addr1}<div>{$package.addr1}</div>{/if}
-            {if $package.addr2}<div>{$package.addr2}</div>{/if}
-            {if $package.city}<span>{$package.city}</span>{if $package.state.name}, {/if}{/if}<span>{if $package.state.name}{$package.state.name}</span>{/if}{if $package.zip} {$package.zip}{/if}
-            {if $package.country.name}<div>{$package.country.name}</div>{/if}
+    <!-- Container for member information -->
+    <div class="member">
+        <h2><a href="{$siteBaseUrl}{$settings.canonical_member_page}/{$package.member_slug}/">{$package.ref_dest_name}</a></h2>
+      {if $package.logo}
+        <img src="{$glmPluginMediaURL}/images/medium/{$package.logo}">
+      {/if}
+        <div class="address">
+            <span>{$package.addr1}</span>
+          {if $package.addr2}
+            <span>{$package.addr2}</span>
+          {/if}
+            <span>{$package.city}</span>, {$package.state.name} {$package.zip}</span>
+          {if $package.country.name}
+            <span>{$package.country.name}</span>
+          {/if}
+          {if $package.toll_free}
+            <span class="phone">{$package.toll_free}</span>
+          {/if}
+          {if $package.phone}
+            <span class="phone">{$package.phone}</span>
+          {/if}
+          {if $package.url}
+            <span class="url">{$package.url}</span>
+          {/if}
+          {if $package.email}
+            <span class="email">{$package.email}</span>
+          {/if}
         </div>
-        <p>&nbsp;</p>
-    {/if}
-  
-    <div class="row">
-            <div class="small-12 {if $p.image}medium-8{/if} columns">
-                <div class="row">
-                    <div class="small-12 columns">
-                        <h4>{$package.title}</h4>
-                        <div>
-                      {if $package.descr}
-                        {$package.descr}
-                      {else if $package.short_descr}
-                        {$package.short_descr}
-                      {/if}
-                        </div>
-                        <div class="row">
-                            <div class="small-12 medium-2 columns"><b>Expires:</b></div>
-                            <div class="small-12 medium-10 columns">{$package.expire_date.date}</div>
-                        </div>
-                        <div class="row">
-                            <div class="small-12 medium-2 columns"><b>Pricing:</b></div>
-                            <div class="small-12 medium-10 columns">{$package.pricing}</div>
-                        </div>
-                    </div>
-                </div>
-            </div>
-        {if $package.image}
-            <div class="glm-member-list-image-wrapper small-12 medium-4 columns">
-                   <img class="glm-member-list-image left" src="{$glmPluginMediaURL}/images/medium/{$package.image}"> 
-            </div>
-        {/if}
-    </div> 
-
+    </div>
+        
+    <!-- Container for package information -->
+    <div class="package-info">
+        <h3><a href="{$thisURL}?glm_action=detail&packageID={$package.id}">{$package.title}</a></h3>
+      {if $package.image}
+        <img src="{$glmPluginMediaURL}/images/medium/{$package.image}">
+      {/if}
+      {if $package.descr}
+        <span class="descr">{$package.descr}</span>
+      {else if $package.short_descr}
+        <span class="descr">{$package.short_descr}</span>
+      {/if}
+        <div class="details">
+            <span class="title">Expires: </span><span class="data">{$package.expire_date.date}</span>
+            <span class="title">Pricing: </span><span class="data">{$package.pricing}</span>
+        </div>
+    </div>
+        
 {else}
-    (Sorry, no data on the specified package.)
+    (Sorry, no information available on the selected package.)
 {/if}
 
+</div> <!-- /package detail container -->
+
 {include file='front/footer.html'}
index 4af7c4f..47ce90f 100644 (file)
@@ -1,3 +1,3 @@
 <div class="wrap">
-    <div id="glm-front-content-container">
+    <div id="glm-member-front-container">
     
\ No newline at end of file
index cdcdc18..65bae26 100644 (file)
 {include file='front/packaging/header.html'}
 
-<div class="content-wrapper">
+<!-- 
+    NOTE: Image sizes for member db are typically large, medium, small, thumb.
+    These may be modified or added to by entries in the glm-member-db/config/plugin.ini file
+-->
+
+<!-- Container for entire list of packages -->
+<div class="glm-member-package-container">
+    
 {if $havePackages}
    
   {foreach $packages as $p}
-    <div>
-    {if ($byMember && $p.firstForMember) || !$byMember}
-        <div style="margin-bottom: 2em;">
+  
+    {if $byMember && $p.firstForMember}
+        <!-- Container for member information if multiple packages are listed under one member. - Only shows before first package for this member -->
+        <div class="member">
             <h2><a href="{$siteBaseUrl}{$settings.canonical_member_page}/{$p.member_slug}/">{$p.ref_dest_name}</a></h2>
-            {if $p.addr1}<div>{$p.addr1}</div>{/if}
-            {if $p.addr2}<div>{$p.addr2}</div>{/if}
-            {if $p.city}<span>{$p.city}</span>{if $p.state.name}, {/if}{/if}<span>{if $p.state.name}{$p.state.name}</span>{/if}{if $p.zip} {$p.zip}{/if}
-            {if $p.country.name}<div>{$p.country.name}</div>{/if}
+          {if $p.logo}
+            <img src="{$glmPluginMediaURL}/images/medium/{$p.logo}">
+          {/if}
+            <div class="address">
+                <span>{$p.addr1}</span>
+              {if $p.addr2}
+                <span>{$p.addr2}</span>
+              {/if}
+                <span>{$p.city}</span>, {$p.state.name} {$p.zip}</span>
+              {if $p.country.name}
+                <span>{$p.country.name}</span>
+              {/if}
+              {if $p.toll_free}
+                <span class="phone">{$p.toll_free}</span>
+              {/if}
+              {if $p.phone}
+                <span class="phone">{$p.phone}</span>
+              {/if}
+              {if $p.url}
+                <span class="url">{$p.url}</span>
+              {/if}
+              {if $p.email}
+                <span class="email">{$p.email}</span>
+              {/if}
+            </div>
         </div>
     {/if}
-        <div class="row" style="margin-bottom: 2em;">
-            <div class="small-12 {if $p.image}medium-8{/if} columns">
-                <div class="row">
-                    <div class="small-12 columns">
-                        <h4><a href="{$thisURL}?glm_action=detail&packageID={$p.id}">{$p.title}</a></h4>
-                        <div>
-                      {if $p.descr}
-                        {$p.descr}
-                      {else if $p.short_descr}
-                        {$p.short_descr}
-                      {/if}
-                        </div>
-                        <div class="row">
-                            <div class="small-12 medium-2 columns"><b>Expires:</b></div>
-                            <div class="small-12 medium-10 columns">{$p.expire_date.date}</div>
-                        </div>
-                        <div class="row">
-                            <div class="small-12 medium-2 columns"><b>Pricing:</b></div>
-                            <div class="small-12 medium-10 columns">{$p.pricing}</div>
-                        </div>
-                    </div>
+    
+        <!-- Container for each package -->
+        <div class="package">
+
+        {if !$byMember}
+            <!-- Container for member information if displayed with each package -->
+            <div class="member">
+                <h2><a href="{$siteBaseUrl}{$settings.canonical_member_page}/{$p.member_slug}/">{$p.ref_dest_name}</a></h2>
+              {if $p.logo}
+                <img src="{$glmPluginMediaURL}/images/medium/{$p.logo}">
+              {/if}
+                <div class="address">
+                    <span>{$p.addr1}</span>
+                  {if $p.addr2}
+                    <span>{$p.addr2}</span>
+                  {/if}
+                    <span>{$p.city}</span>, {$p.state.name} {$p.zip}</span>
+                  {if $p.country.name}
+                    <span>{$p.country.name}</span>
+                  {/if}
+                  {if $p.toll_free}
+                    <span class="phone">{$p.toll_free}</span>
+                  {/if}
+                  {if $p.phone}
+                    <span class="phone">{$p.phone}</span>
+                  {/if}
+                  {if $p.url}
+                    <span class="url">{$p.url}</span>
+                  {/if}
+                  {if $p.email}
+                    <span class="email">{$p.email}</span>
+                  {/if}
                 </div>
             </div>
-        {if $p.image}
-            <div class="glm-member-list-image-wrapper small-12 medium-4 columns">
-                   <img class="glm-member-list-image left" src="{$glmPluginMediaURL}/images/medium/{$p.image}"> 
-            </div>
         {/if}
-        </div>
-    </div> 
+        
+            <!-- Container for package information -->
+            <div class="package-info">
+                <h3><a href="{$thisURL}?glm_action=detail&packageID={$p.id}">{$p.title}</a></h3>
+              {if $p.image}
+                <img src="{$glmPluginMediaURL}/images/medium/{$p.image}">
+              {/if}
+              {if $p.descr}
+                <span class="descr">{$p.descr}</span>
+              {else if $p.short_descr}
+                <span class="descr">{$p.short_descr}</span>
+              {/if}
+                <div class="details">
+                    <span class="title">Expires: </span><span class="data">{$p.expire_date.date}</span>
+                    <span class="title">Pricing: </span><span class="data">{$p.pricing}</span>
+                </div>
+            </div>
+        
+        </div> <!-- /package -->
+
   {/foreach}                          
   
 {else}
     (Sorry, no packages currently listed.)
 {/if}
-</div>
+
+</div> <!-- /package list -->
+
 {include file='front/footer.html'}