update member breadcrumbs
authorSteve Sutton <steve@gaslightmedia.com>
Wed, 20 Aug 2014 12:47:53 +0000 (08:47 -0400)
committerSteve Sutton <steve@gaslightmedia.com>
Wed, 20 Aug 2014 12:48:51 +0000 (08:48 -0400)
Update the member breadcrumbs if the have a referer page
then we can add the page links into the breaodcrumbs.
if no referer page then use the default breadcrumbs for the
member profile page.

Toolkit/Members/BreadCrumbs.php

index 538d4a9..ba28389 100644 (file)
@@ -74,21 +74,27 @@ class Toolkit_Members_BreadCrumbs
             return array();
         }
 
+        $memberId = filter_var($_REQUEST['member_id'], FILTER_VALIDATE_INT);
+        $pattern = '/(.*)-([0-9]*)/';
+        if (preg_match($pattern, $_SERVER['HTTP_REFERER'], $matches)) {
+            $refererPage = filter_var($matches[2], FILTER_VALIDATE_INT);
+            if ($refererPage) {
+                $id = $refererPage;
+            }
+        }
+
         $stack = array();
         $memberId = filter_var($_REQUEST['member_id'], FILTER_VALIDATE_INT);
-        if ($memberId) {
+        if ($memberId && !$refererPage) {
             $memberName = $this->_getMemberName($memberId);
             array_unshift($stack, $memberName);
 
-            //$anchor = '<a href="' . BASE_URL . 'memberProfiles/">Member Profiles</a>';
-            //array_unshift($stack, $anchor);
-
             $anchor = '<a href="' . MEDIA_BASE_URL . 'index.php">Home</a>';
             array_unshift($stack, $anchor);
 
             return $stack;
         }
-        $memberName = $this->_getMemberName($_GET['member_id']);
+        $memberName = $this->_getMemberName($memberId);
         array_unshift($stack, $memberName);
         $searchId = $id;
         do {
@@ -104,7 +110,6 @@ class Toolkit_Members_BreadCrumbs
 
         $anchor = '<a href="' . MEDIA_BASE_URL . 'index.php">Home</a>';
         array_unshift($stack, $anchor);
-
         return $stack;
     }