diff --git a/include/objectManager.php b/include/objectManager.php
index c197058..37cf809 100644
--- a/include/objectManager.php
+++ b/include/objectManager.php
@@ -544,22 +544,34 @@ class ObjectManager
/* Make an objectManager URL based on the object and optional parameters */
function makeUrl($sAction = false, $iId = false, $sTitle = false)
{
- if($iId)
- $sId = "&iId=$iId";
-
- if($sAction)
- $sAction = "&sAction=$sAction";
+ $sUrl = APPDB_ROOT."objectManager.php?";
$sIsQueue = $this->bIsQueue ? "true" : "false";
+ $sUrl .= "bIsQueue=$sIsQueue";
$sIsRejected = $this->bIsRejected ? "true" : "false";
+ $sUrl .= "&bIsRejected=$sIsRejected";
+
+ $sUrl .= "&sClass=".$this->sClass;
+ if($iId)
+ $sUrl .= "&iId=$iId";
+
+ if($sAction)
+ $sUrl .= "&sAction=$sAction";
+
+
if(!$sTitle)
$sTitle = $this->sTitle;
- $sTitle = urlencode($sTitle);
+ $sUrl .= "&sTitle=".urlencode($sTitle);
- return APPDB_ROOT."objectManager.php?bIsQueue=$sIsQueue&sClass=$this->sClass".
- "&sTitle=$sTitle$sId$sAction&bIsRejected=$sIsRejected";
+ if($this->oMultiPage->bEnabled)
+ {
+ $sUrl .= "&iItemsPerPage=".$this->oMultiPage->iItemsPerPage;
+ $sUrl .= "&iPage=".$this->oMultiPage->iPage;
+ }
+
+ return $sUrl;
}
/* Inserts the information in an objectManager object as form data, so that it
@@ -574,6 +586,14 @@ class ObjectManager
$sReturn .= "sClass."\" />\n";
$sReturn .= "sTitle."\" />\n";
+ if($this->oMultiPage->bEnabled)
+ {
+ $sReturn .= "oMultiPage->iItemsPerPage."\" />\n";
+ $sReturn .= "oMultiPage->iPage."\" />\n";
+ }
+
return $sReturn;
}
/* Get id from form data */
@@ -709,7 +729,8 @@ class ObjectManager
class MultiPage
{
var $iItemsPerPage;
- var $iLowerLimit;
+ var $iLowerLimit; /* Internal; set by handleMultiPageControls. We use iPage in the URls */
+ var $iPage;
var $bEnabled;
function MultiPage($bEnabled = FALSE, $iItemsPerPage = 0, $iLowerLimit = 0)
@@ -718,6 +739,17 @@ class MultiPage
$this->iItemsPerPage = $iItemsPerPage;
$this->iLowerLimit = $iLowerLimit;
}
+
+ function getDataFromInput($aClean)
+ {
+ if($aClean['iItemsPerPage'] && $aClean['iPage'])
+ $this->bEnabled = TRUE;
+ else
+ return;
+
+ $this->iItemsPerPage = $aClean['iItemsPerPage'];
+ $this->iPage = $aClean['iPage'];
+ }
}
class TableRow
diff --git a/objectManager.php b/objectManager.php
index 809716b..5cf5872 100644
--- a/objectManager.php
+++ b/objectManager.php
@@ -52,6 +52,8 @@ if($aClean['bIsRejected'] == 'true')
} else
$oObject->bIsRejected = false;
+$oObject->oMultiPage->getDataFromInput($aClean);
+
$oOtherObject = new $oObject->sClass($oObject->iId);
/* Certain actions must be performed before the header is set. */