Index: trunk/kernel/include/parseditem.php
===================================================================
diff -u -r2978 -r3124
--- trunk/kernel/include/parseditem.php (.../parseditem.php) (revision 2978)
+++ trunk/kernel/include/parseditem.php (.../parseditem.php) (revision 3124)
@@ -1711,74 +1711,63 @@
{
global $objConfig, $var_list_update, $var_list;
+ $url_params = $EnvSuffix ? ExtractParams($EnvSuffix) : Array();
$v= $this->PageEnvar;
global ${$v};
- if(!strlen($page))
- $page = GetIndexURL(2);
+// if(!strlen($page)) $page = GetIndexURL(2);
$PerPage = $objConfig->Get($this->PerPageVar);
- if($PerPage<1)
- $PerPage=20;
- $NumPages = ceil($this->GetNumPages($PerPage));
- if($NumPages==1 && $HideEmpty)
- return "";
+ if($PerPage < 1) $PerPage = 20;
+ $NumPages = ceil( $this->GetNumPages($PerPage) );
+ if($NumPages == 1 && $HideEmpty) return '';
+
+ $var_list_update['t'] = isset($dest_template) && $dest_template ? $dest_template : $var_list['t'];
- if(strlen($dest_template))
- {
- $var_list_update["t"] = $dest_template;
- }
- else
- $var_list_update["t"] = $var_list["t"];
+ $o = '';
+ if( $this->Page == 0 || !is_numeric($this->Page) ) $this->Page = 1;
+ if($this->Page > $NumPages) $this->Page = $NumPages;
- $o = "";
- if($this->Page==0 || !is_numeric($this->Page))
- $this->Page=1;
- if($this->Page>$NumPages)
- $this->Page=$NumPages;
+ $StartPage = (int)$this->Page - ($PagesToList / 2);
+ if($StartPage < 1) $StartPage = 1;
- $StartPage = (int)$this->Page - ($PagesToList/2);
- if($StartPage<1)
- $StartPage=1;
-
- $EndPage = $StartPage+($PagesToList-1);
- if($EndPage>$NumPages)
+ $EndPage = $StartPage + ($PagesToList - 1);
+ if($EndPage > $NumPages)
{
$EndPage = $NumPages;
- $StartPage = $EndPage-($PagesToList-1);
- if($StartPage<1)
- $StartPage=1;
+ $StartPage = $EndPage - ($PagesToList - 1);
+ if($StartPage < 1) $StartPage = 1;
}
- $o = "";
- if($StartPage>1)
+ $o = '';
+ if($StartPage > 1)
{
- ${$v}[$this->PageEnvarIndex] = $this->Page-$PagesToList;
+ ${$v}[$this->PageEnvarIndex] = $this->Page - $PagesToList;
- $prev_url = $page."?env=".BuildEnv().$EnvSuffix;
- $o .= "<<";
+ $prev_url = HREF_Wrapper('', $url_params);
+ $o .= '<<';
}
- for($p=$StartPage;$p<=$EndPage;$p++)
+ for($p = $StartPage; $p <= $EndPage; $p++)
{
- if($p!=$this->Page)
+ if($p != $this->Page)
{
- ${$v}[$this->PageEnvarIndex]=$p;
- $href = $page."?env=".BuildEnv().$EnvSuffix;
- $o .= " $p ";
+ ${$v}[$this->PageEnvarIndex] = $p;
+ $href = HREF_Wrapper('', $url_params);
+ $o .= ' '.$p.' ';
}
else
{
$o .= " $p";
}
}
- if($EndPage<$NumPages && $EndPage>0)
+ if($EndPage < $NumPages && $EndPage > 0)
{
- ${$v}[$this->PageEnvarIndex]=$this->Page+$PagesToList;
+ ${$v}[$this->PageEnvarIndex] = $this->Page + $PagesToList;
- $next_url = $page."?env=".BuildEnv().$EnvSuffix;
+ $next_url = HREF_Wrapper('', $url_params);
$o .= " >>";
}
unset(${$v}[$this->PageEnvarIndex],$var_list_update["t"] );