blob: c7b54a5c5d51baad75f466015cccfaa165df678b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
<?php
namespace Bitweaver\Plugins;
/*** Handle jQuery plugin naming conflict between jQuery UI and Bootstrap ***/
/**
* Smarty {pagination} function plugin
* @package Smarty
* @subpackage plugins
* @link https://www.bitweaver.org/wiki/function_pagination function_pagination
*/
/**
* Smarty {pagination} function plugin
*
* Type: function<br>
* Name: pagination<br>
* Input:<br>
* - <attribute>=<value> (optional) - pass in any attributes and they will be added to the pagination string<br>
* Output: url of the form: $_SERVER[SCRIPT_NAME]?attribute1=value1&attribute2=value2
*/
function smarty_function_pagination( $params, &$gSmartyTemplate ) {
global $gBitSmarty;
$pgnUrl = $gBitSmarty->getTemplateVars('returnURL');
if ( isset( $params['url'] ) ) {
$pgnUrl = $params['url'];
unset( $params['url'] );
}
if( empty( $pgnUrl ) ) {
$pgnUrl = $_SERVER['SCRIPT_NAME'];
}
$gBitSmarty->assign( 'pgnUrl', $pgnUrl );
$pgnVars = '';
$pgnHidden = [];
foreach( $params as $form_param => $form_val ) {
if ( !is_array($form_val)) {
$pgnVars .= "&$form_param=$form_val";
$pgnHidden[$form_param] = $form_val;
}
}
$gBitSmarty->assign( 'pgnVars', $pgnVars );
$gBitSmarty->assign( 'pgnHidden', $pgnHidden );
return $gBitSmarty->fetch('bitpackage:kernel/pagination.tpl');
}
|