Alexander Nicolaysen Sørnes : objectManager: Preserve page title when processing entries from a list

Chris Morgan cmorgan at winehq.org
Sun Oct 21 12:12:43 CDT 2007


Module: appdb
Branch: master
Commit: d90ce3d8ef159a3e119d77e769b6f1a0c37faa6c
URL:    http://source.winehq.org/git/appdb.git/?a=commit;h=d90ce3d8ef159a3e119d77e769b6f1a0c37faa6c

Author: Alexander Nicolaysen Sørnes <alex at thehandofagony.com>
Date:   Sun Oct 21 15:42:29 2007 +0200

objectManager: Preserve page title when processing entries from a list

---

 include/objectManager.php |   17 ++++++++++++++++-
 objectManager.php         |    3 +++
 2 files changed, 19 insertions(+), 1 deletions(-)

diff --git a/include/objectManager.php b/include/objectManager.php
index 9212633..249dc69 100644
--- a/include/objectManager.php
+++ b/include/objectManager.php
@@ -13,6 +13,7 @@ class ObjectManager
     private $iId;
     private $bIsRejected;
     private $sReturnTo;
+    private $sReturnToTitle; /* Used to preserve the title when processing entries from a queue list, for instance */
     private $oMultiPage;
     private $oTableRow;
     private $oObject; /* Store an instance of the object of the class
@@ -65,6 +66,11 @@ class ObjectManager
       $this->sReturnTo = $sReturnTo;
     }
 
+    public function setReturnToTitle($sTitle)
+    {
+      $this->sReturnToTitle = $sTitle;
+    }
+
     public function setIsRejected($bIsRejected)
     {
       $this->bIsRejected = $bIsRejected;
@@ -210,6 +216,9 @@ class ObjectManager
         /* Output header cells */
         $this->outputHeader("color4");
 
+        /* Preserve the page title */
+        $this->setReturnToTitle($this->sTitle);
+
         /* output each entry */
         for($iCount = 0; $oRow = query_fetch_object($hResult); $iCount++)
         {
@@ -990,7 +999,7 @@ class ObjectManager
         /* Displaying the entire un-queued list for a class is not a good idea,
         so only do so for queued data */
         if($this->bIsQueue)
-            $sRedirectLink = $this->makeUrl("view", false, "$this->sClass list");
+            $sRedirectLink = $this->makeUrl("view", false, $this->sReturnToTitle ? $this->sReturnToTitle : "$this->sClass list");
         else
             $sRedirectLink = APPDB_ROOT;
 
@@ -1022,6 +1031,9 @@ class ObjectManager
         if(!$sTitle)
             $sTitle = $this->sTitle;
 
+        if($this->sReturnToTitle)
+            $sUrl .= "&sReturnToTitle=".$this->sReturnToTitle;
+
         $sUrl .= "&sTitle=".urlencode($sTitle);
 
         if($this->oMultiPage->bEnabled)
@@ -1055,6 +1067,9 @@ class ObjectManager
                     $this->oMultiPage->iPage."\" />\n";
         }
 
+        if($this->sReturnToTitle)
+            $sReturn .= "<input type=\"hidden\" name=\"sReturnToTitle\" value=\"".$this->sReturnToTitle."\" />\n";
+
         return $sReturn;
     }
 
diff --git a/objectManager.php b/objectManager.php
index 6d35efe..7d5b0ad 100644
--- a/objectManager.php
+++ b/objectManager.php
@@ -48,6 +48,9 @@ if(isset($aClean['bIsQueue']) && $aClean['bIsQueue'] == 'true')
 else
   $oObject->setIsQueue(false);
 
+if(isset($aClean['sReturnToTitle']))
+  $oObject->setReturnToTitle($aClean['sReturnToTitle']);
+
 if(isset($aClean['sReturnTo']))
   $oObject->setReturnTo($aClean['sReturnTo']);
 




More information about the wine-cvs mailing list