.
*
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
*
*/
global $G_TABLE;
global $G_CONTENT;
global $HTTP_SESSION_VARS;
global $HTTP_GET_VARS;
if ( !is_object( $G_TABLE ) ) die ("Table object is required!");
$G_TABLE->GetSource();
//will use the templatePower class to render the table
// G::LoadClass ('templatePower');
$tpl = new TemplatePower( PATH_TPL . 'paged-table.html' );
$tpl->prepare();
$tpl->assign( "STYLE_CSS" , STYLE_CSS );
$tpl->assign( "title" , $G_TABLE->title );
$orderpag = $HTTP_GET_VARS['order'];
if($orderpag=="") {
$orcad="";
}
else {
$orcad=$orderpag;
}
$curpage = $HTTP_GET_VARS['page'];
if( $curpage == "" ) $curpage = 1;
$res=(round(($curpage)/20)*20)+1;
if ($res>$curpage)
$HTTP_SESSION_VARS['COMIENZO'] = $res-20;
else
$HTTP_SESSION_VARS['COMIENZO']=$res;
$HTTP_SESSION_VARS['FINAL']=$HTTP_SESSION_VARS['COMIENZO']+20;
$totpages = 0;
$HTTP_SESSION_VARS['TP'] = $G_TABLE->TotalCount();
$tcount = $HTTP_SESSION_VARS['TP'];
$totpages = $HTTP_SESSION_VARS['TP'];
$totpages = $totpages / $G_TABLE->rows_per_page;
$totpages = round( $totpages, 0);
if( ($totpages * $G_TABLE->rows_per_page) < $tcount ) $totpages++;
if ($totpages == 0 ) $curpage = 0;
$ntotwidth="0";
for( $ncount=0 ; $ncount < $G_TABLE->ColumnCount() ; $ncount++ )
{
$ntotwidth += $G_TABLE->Columns[$ncount]['Width'];
}
$firstrow = (($curpage-1) * $G_TABLE->rows_per_page) + 1;
$lastrow = $firstrow + $G_TABLE->rows_per_page - 1;
$cuenta=$G_TABLE->Count();
if( $lastrow > $cuenta ) $lastrow = $cuenta;
for( $ncount=0 ; $ncount < $G_TABLE->ColumnCount() ; $ncount++ )
{
$pa =1 ;$intPos=$ncount; $strClass = "tblHeader";
$col = $G_TABLE->Columns[$intPos];
$order = !($col["Type"] == "image" || $col["Type"] == "jsimglink");
$tpl->newBlock( "headers" );
$tpl->assign( "width" , ( $col["Width"] > 0 ? " style=\"width:" . $col["Width"] . ";\"" : '' ) );
$tpl->assign( "header" , ( $G_TABLE->Labels[$intPos] ) );
if( $G_TABLE->_ordered == true && $order )
{
$res = "
0) $res .= " style=\"width:" . $col["Width"] . ";\"";
$res .= ">";
$res .= "Columns[$intPos]['Name']."&page=".$pa."&label=true";
$res .= "\">" . $G_TABLE->Labels[$intPos] . "";
$res .= " | \n";
$tpl->assign( "href" , (ENABLE_ENCRYPT=='yes'?str_replace(G::encrypt('sys' . SYS_SYS, URL_KEY), SYS_SYS, G::encryptUrl(urldecode(SYS_CURRENT_URI), URL_KEY)):SYS_CURRENT_URI) . "?order=" . $G_TABLE->Columns[$intPos]['Name']."&page=".$pa."&label=true" );
$Fields['headers'][] = $header;
}
else
{
$tpl->assign( "href" , '' );
$res = " 0) $res .= " style=\"width:" . $col["Width"] . ";\"";
$res .= ">";
$res .= $G_TABLE->Labels[$intPos] . " | \n";
}
}
//end grid titles
if ( $G_TABLE->rows_per_page == '' ) $G_TABLE->rows_per_page = 25;
if ($cuenta >= $G_TABLE->rows_per_page)
$lastrow = $G_TABLE->rows_per_page;
else
$lastrow = $cuenta;
while ( $G_TABLE->CurRow() < $lastrow )
{
$G_TABLE->Read();
$class = ( $G_TABLE->CurRow() % 2 == 0 ? "Row1" : "Row2" );
$tpl->newBlock( "row" );
$tpl->assign( "class" , $class );
for ( $ncount=0 ; $ncount < $G_TABLE->ColumnCount() ; $ncount++ )
{
$tpl->newBlock( "field" );
$col = $G_TABLE->Columns[$ncount]["Align"];
$tpl->assign( "align" , ( $col <> '' ? " align=\"$col\"" : 'x' ) );
$tpl->assign( "value" , $G_TABLE->RenderColumn( $ncount, '', '',0, 0) );
}
}
if( $curpage > 1 ) {
$firstUrl = SYS_CURRENT_URI . '?order=' . $orcad . '&page=1';
$prevpage = $curpage - 1;
$prevUrl = SYS_CURRENT_URI . '?order=' . $orcad . '&page=' . $prevpage;
$tpl->assign( "firstUrl" , $firstUrl );
$tpl->assign( "prevUrl" , $prevUrl );
$first = "<<";
$prev = "<";
}
else
{
$tpl->assign( "firstOff" , 1 );
$tpl->assign( "prevOff" , 1 );
$first = "<<";
$prev = "<";
}
$tpl->gotoBlock( "_ROOT" );
if ( $totpages !=1 ) $tpl->newBlock( "paging" );
$tpl->assign( "first" , $first );
$tpl->assign( "prev" , $prev );
$tpl->assign( "curPage" , '' . G::LoadMessageXml('ID_PAGE') . ' ' . $curpage . ' ' . G::LoadMessageXml('ID_OF') . ' ' . $totpages . ' ' . '');
if( $curpage < $totpages ) {
$lastUrl = SYS_CURRENT_URI . '?order=' . $orcad . '&page=' . $totpages;
$nextpage = $curpage + 1;
$nextUrl = SYS_CURRENT_URI . '?order=' . $orcad . '&page=' . $nextpage;
$next = ">";
$last = ">>";
}
else
{
$next = ">";
$last = ">>";
}
$tpl->assign( "next" , $next );
$tpl->assign( "last" , $last );
$tpl->assign( "columnCount", $G_TABLE->ColumnCount() );
if( $totpages > 1 )
{
// --------- codigo para colocar numeros de paginas ---------
$ncount = 1;
$inicio=$HTTP_SESSION_VARS['COMIENZO'];
$fin=$HTTP_SESSION_VARS['FINAL'];
// echo "Inicio:".$inicio." fin".$fin;
for( $ncount = $inicio; $ncount <= $fin-1; $ncount++ )
{
if($ncount>=1 && $ncount<=$totpages)
{
if( $ncount <= $totpages ) $pagesEnum .= "   ";
$pagesEnum .= "";
$pagesEnum .= $ncount;
$pagesEnum .= "";
}
}
$pagesEnum .="   ";
$tpl->assign("pagesEnum", $pagesEnum);
}
if ( $lastrow == 0 ) {
$tpl->gotoBlock( "_ROOT" );
$tpl->newBlock( 'norecords' );
$tpl->assign( "noRecordsFound", G::LoadMessageXml('ID_NO_RECORDS_FOUND') );
$tpl->assign( "columnCount", $G_TABLE->ColumnCount());
}
if ( $lastrow > $G_TABLE->rows_per_page * 0.66 ) {
$tpl->gotoBlock( "_ROOT" );
$tpl->newBlock( "bottomFooter" );
$tpl->assign( "columnCount", $G_TABLE->ColumnCount() + 1);
$tpl->assign( "first" , $first );
$tpl->assign( "prev" , $prev );
$tpl->assign( "next" , $next );
$tpl->assign( "last" , $last );
$tpl->assign("pagesEnum", $pagesEnum);
}
$tpl->gotoBlock( "_ROOT" );
$tpl->printToScreen();
?>