-
Notifications
You must be signed in to change notification settings - Fork 15
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
120 changed files
with
23,397 additions
and
0 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,133 @@ | ||
{capture name='_smarty_debug' assign=debug_output} | ||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> | ||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> | ||
<head> | ||
<title>Smarty Debug Console</title> | ||
<style type="text/css"> | ||
{literal} | ||
body, h1, h2, td, th, p { | ||
font-family: sans-serif; | ||
font-weight: normal; | ||
font-size: 0.9em; | ||
margin: 1px; | ||
padding: 0; | ||
} | ||
h1 { | ||
margin: 0; | ||
text-align: left; | ||
padding: 2px; | ||
background-color: #f0c040; | ||
color: black; | ||
font-weight: bold; | ||
font-size: 1.2em; | ||
} | ||
h2 { | ||
background-color: #9B410E; | ||
color: white; | ||
text-align: left; | ||
font-weight: bold; | ||
padding: 2px; | ||
border-top: 1px solid black; | ||
} | ||
body { | ||
background: black; | ||
} | ||
p, table, div { | ||
background: #f0ead8; | ||
} | ||
p { | ||
margin: 0; | ||
font-style: italic; | ||
text-align: center; | ||
} | ||
table { | ||
width: 100%; | ||
} | ||
th, td { | ||
font-family: monospace; | ||
vertical-align: top; | ||
text-align: left; | ||
width: 50%; | ||
} | ||
td { | ||
color: green; | ||
} | ||
.odd { | ||
background-color: #eeeeee; | ||
} | ||
.even { | ||
background-color: #fafafa; | ||
} | ||
.exectime { | ||
font-size: 0.8em; | ||
font-style: italic; | ||
} | ||
#table_assigned_vars th { | ||
color: blue; | ||
} | ||
#table_config_vars th { | ||
color: maroon; | ||
} | ||
{/literal} | ||
</style> | ||
</head> | ||
<body> | ||
<h1>Smarty Debug Console - {if isset($template_name)}{$template_name|debug_print_var}{else}Total Time {$execution_time|string_format:"%.5f"}{/if}</h1> | ||
{if !empty($template_data)} | ||
<h2>included templates & config files (load time in seconds)</h2> | ||
<div> | ||
{foreach $template_data as $template} | ||
<font color=brown>{$template.name}</font> | ||
<span class="exectime"> | ||
(compile {$template['compile_time']|string_format:"%.5f"}) (render {$template['render_time']|string_format:"%.5f"}) (cache {$template['cache_time']|string_format:"%.5f"}) | ||
</span> | ||
<br> | ||
{/foreach} | ||
</div> | ||
{/if} | ||
<h2>assigned template variables</h2> | ||
<table id="table_assigned_vars"> | ||
{foreach $assigned_vars as $vars} | ||
<tr class="{if $vars@iteration % 2 eq 0}odd{else}even{/if}"> | ||
<th>${$vars@key|escape:'html'}</th> | ||
<td>{$vars|debug_print_var}</td></tr> | ||
{/foreach} | ||
</table> | ||
<h2>assigned config file variables (outer template scope)</h2> | ||
<table id="table_config_vars"> | ||
{foreach $config_vars as $vars} | ||
<tr class="{if $vars@iteration % 2 eq 0}odd{else}even{/if}"> | ||
<th>{$vars@key|escape:'html'}</th> | ||
<td>{$vars|debug_print_var}</td></tr> | ||
{/foreach} | ||
</table> | ||
</body> | ||
</html> | ||
{/capture} | ||
<script type="text/javascript"> | ||
{$id = $template_name|default:''|md5} | ||
_smarty_console = window.open("","console{$id}","width=680,height=600,resizable,scrollbars=yes"); | ||
_smarty_console.document.write("{$debug_output|escape:'javascript'}"); | ||
_smarty_console.document.close(); | ||
</script> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,108 @@ | ||
<?php | ||
/** | ||
* Smarty plugin to format text blocks | ||
* | ||
* @package Smarty | ||
* @subpackage PluginsBlock | ||
*/ | ||
|
||
/** | ||
* Smarty {textformat}{/textformat} block plugin | ||
* | ||
* Type: block function<br> | ||
* Name: textformat<br> | ||
* Purpose: format text a certain way with preset styles | ||
* or custom wrap/indent settings<br> | ||
* Params: | ||
* <pre> | ||
* - style - string (email) | ||
* - indent - integer (0) | ||
* - wrap - integer (80) | ||
* - wrap_char - string ("\n") | ||
* - indent_char - string (" ") | ||
* - wrap_boundary - boolean (true) | ||
* </pre> | ||
* | ||
* @link http://www.smarty.net/manual/en/language.function.textformat.php {textformat} | ||
* (Smarty online manual) | ||
* @param array $params parameters | ||
* @param string $content contents of the block | ||
* @param Smarty_Internal_Template $template template object | ||
* @param boolean &$repeat repeat flag | ||
* @return string content re-formatted | ||
* @author Monte Ohrt <monte at ohrt dot com> | ||
*/ | ||
function smarty_block_textformat($params, $content, $template, &$repeat) | ||
{ | ||
if (is_null($content)) { | ||
return; | ||
} | ||
|
||
$style = null; | ||
$indent = 0; | ||
$indent_first = 0; | ||
$indent_char = ' '; | ||
$wrap = 80; | ||
$wrap_char = "\n"; | ||
$wrap_cut = false; | ||
$assign = null; | ||
|
||
foreach ($params as $_key => $_val) { | ||
switch ($_key) { | ||
case 'style': | ||
case 'indent_char': | ||
case 'wrap_char': | ||
case 'assign': | ||
$$_key = (string)$_val; | ||
break; | ||
|
||
case 'indent': | ||
case 'indent_first': | ||
case 'wrap': | ||
$$_key = (int)$_val; | ||
break; | ||
|
||
case 'wrap_cut': | ||
$$_key = (bool)$_val; | ||
break; | ||
|
||
default: | ||
trigger_error("textformat: unknown attribute '$_key'"); | ||
} | ||
} | ||
|
||
if ($style == 'email') { | ||
$wrap = 72; | ||
} | ||
// split into paragraphs | ||
$_paragraphs = preg_split('![\r\n]{2}!', $content); | ||
$_output = ''; | ||
|
||
for($_x = 0, $_y = count($_paragraphs); $_x < $_y; $_x++) { | ||
if ($_paragraphs[$_x] == '') { | ||
continue; | ||
} | ||
// convert mult. spaces & special chars to single space | ||
$_paragraphs[$_x] = preg_replace(array('!\s+!u', '!(^\s+)|(\s+$)!u'), array(' ', ''), $_paragraphs[$_x]); | ||
// indent first line | ||
if ($indent_first > 0) { | ||
$_paragraphs[$_x] = str_repeat($indent_char, $indent_first) . $_paragraphs[$_x]; | ||
} | ||
// wordwrap sentences | ||
if (SMARTY_MBSTRING /* ^phpunit */&&empty($_SERVER['SMARTY_PHPUNIT_DISABLE_MBSTRING'])/* phpunit$ */) { | ||
require_once(SMARTY_PLUGINS_DIR . 'shared.mb_wordwrap.php'); | ||
$_paragraphs[$_x] = smarty_mb_wordwrap($_paragraphs[$_x], $wrap - $indent, $wrap_char, $wrap_cut); | ||
} else { | ||
$_paragraphs[$_x] = wordwrap($_paragraphs[$_x], $wrap - $indent, $wrap_char, $wrap_cut); | ||
} | ||
// indent lines | ||
if ($indent > 0) { | ||
$_paragraphs[$_x] = preg_replace('!^!m', str_repeat($indent_char, $indent), $_paragraphs[$_x]); | ||
} | ||
} | ||
$_output = implode($wrap_char . $wrap_char, $_paragraphs); | ||
|
||
return $assign ? $template->assign($assign, $_output) : $_output; | ||
} | ||
|
||
?> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,78 @@ | ||
<?php | ||
/** | ||
* Smarty plugin | ||
* @package Smarty | ||
* @subpackage PluginsFunction | ||
*/ | ||
|
||
/** | ||
* Smarty {counter} function plugin | ||
* | ||
* Type: function<br> | ||
* Name: counter<br> | ||
* Purpose: print out a counter value | ||
* | ||
* @author Monte Ohrt <monte at ohrt dot com> | ||
* @link http://www.smarty.net/manual/en/language.function.counter.php {counter} | ||
* (Smarty online manual) | ||
* @param array $params parameters | ||
* @param Smarty_Internal_Template $template template object | ||
* @return string|null | ||
*/ | ||
function smarty_function_counter($params, $template) | ||
{ | ||
static $counters = array(); | ||
|
||
$name = (isset($params['name'])) ? $params['name'] : 'default'; | ||
if (!isset($counters[$name])) { | ||
$counters[$name] = array( | ||
'start'=>1, | ||
'skip'=>1, | ||
'direction'=>'up', | ||
'count'=>1 | ||
); | ||
} | ||
$counter =& $counters[$name]; | ||
|
||
if (isset($params['start'])) { | ||
$counter['start'] = $counter['count'] = (int)$params['start']; | ||
} | ||
|
||
if (!empty($params['assign'])) { | ||
$counter['assign'] = $params['assign']; | ||
} | ||
|
||
if (isset($counter['assign'])) { | ||
$template->assign($counter['assign'], $counter['count']); | ||
} | ||
|
||
if (isset($params['print'])) { | ||
$print = (bool)$params['print']; | ||
} else { | ||
$print = empty($counter['assign']); | ||
} | ||
|
||
if ($print) { | ||
$retval = $counter['count']; | ||
} else { | ||
$retval = null; | ||
} | ||
|
||
if (isset($params['skip'])) { | ||
$counter['skip'] = $params['skip']; | ||
} | ||
|
||
if (isset($params['direction'])) { | ||
$counter['direction'] = $params['direction']; | ||
} | ||
|
||
if ($counter['direction'] == "down") | ||
$counter['count'] -= $counter['skip']; | ||
else | ||
$counter['count'] += $counter['skip']; | ||
|
||
return $retval; | ||
|
||
} | ||
|
||
?> |
Oops, something went wrong.