summaryrefslogtreecommitdiff
path: root/smarty_bit/block.textarea.php
diff options
context:
space:
mode:
authorNick Palmer <nick@sluggardy.net>2007-04-20 01:58:00 +0000
committerNick Palmer <nick@sluggardy.net>2007-04-20 01:58:00 +0000
commite63c2b82dfd7b716eef7d924d950efae78173c03 (patch)
tree4ad30dacc62298f33c8bc5117c64d8e7587cb534 /smarty_bit/block.textarea.php
parentc0f3839268a41fd46ae204b4a76f7a4e9f64fbe6 (diff)
downloadkernel-e63c2b82dfd7b716eef7d924d950efae78173c03.tar.gz
kernel-e63c2b82dfd7b716eef7d924d950efae78173c03.tar.bz2
kernel-e63c2b82dfd7b716eef7d924d950efae78173c03.zip
Add new textarea block tag. Wheee!
Diffstat (limited to 'smarty_bit/block.textarea.php')
-rw-r--r--smarty_bit/block.textarea.php45
1 files changed, 45 insertions, 0 deletions
diff --git a/smarty_bit/block.textarea.php b/smarty_bit/block.textarea.php
new file mode 100644
index 0000000..fedfdc9
--- /dev/null
+++ b/smarty_bit/block.textarea.php
@@ -0,0 +1,45 @@
+<?php
+/**
+ * Smarty plugin
+ * @package Smarty
+ * @subpackage plugins
+ * @link http://www.bitweaver.org/wiki/block_textarea block_textarea
+ */
+
+function smarty_block_textarea( $pParams, $pContent, &$gBitSmarty ) {
+ global $gBitSystem;
+ $attributes = '';
+ $style = '';
+ $rows = $gBitSystem->getConfig('liberty_textarea_height', 20);
+ $cols = $gBitSystem->getConfig('liberty_textarea_width', 35);
+ foreach ($pParams as $_key=>$_value) {
+ switch ($_key) {
+ case 'name':
+ case 'id':
+ $gBitSmarty->assign("textarea_".$_key, $_value);
+ break;
+ case 'cols':
+ case 'rows':
+ $$_key = $_value;
+ break;
+ case 'style':
+ $style .= $_key;
+ break;
+ default:
+ $attributes .= $_key.'="'.$_value.'"';
+ break;
+ }
+ }
+ $style .= (empty($style) ? '' : ';').'height:'.( !empty( $_COOKIE['rows'] ) ? $_COOKIE['rows'] : $rows ).'em;'.'width:'.(!empty($_COOKIE['cols']) ? $_COOKIE['cols'] : $cols).'em;';
+ $gBitSmarty->assign('textarea_attributes', $attributes);
+ $gBitSmarty->assign('textarea_data', $pContent);
+ if (!empty($style)) {
+ $gBitSmarty->assign('textarea_style', 'style="'.$style.'"');
+ }
+ $gBitSmarty->assign('textarea_cols', $cols);
+ $gBitSmarty->assign('textarea_rows', $rows);
+
+
+ return $gBitSmarty->fetch("bitpackage:liberty/edit_textarea.tpl");
+}
+?>