<?php
-// $Id: decorator.inc.php,v 1.6 2006/08/03 19:03:33 xzilla Exp $
+// $Id: decorator.inc.php,v 1.7 2007/03/24 02:33:59 xzilla Exp $
// This group of functions and classes provides support for
// resolving values in a lazy manner (ie, as and when required)
return new Decorator($value, false);
}
-function prepareSQL($sql, $params) {
- return new PrepareSQL($sql, $params);
+function replace($str, $params) {
+ return new replaceDecorator($str, $params);
}
// Resolving functions:
}
}
-class PrepareSQL extends Decorator
+class replaceDecorator extends Decorator
{
- function PrepareSQL($sql, $params) {
- $this->q = $sql;
+ function replaceDecorator($str, $params) {
+ $this->s = $str;
$this->p = $params;
}
function value($fields) {
- $req = $this->q;
+ $str = $this->s;
foreach ($this->p as $k => $v) {
- $req = str_replace($k, value($v, $fields), $req);
+ $str = str_replace($k, value($v, $fields), $str);
}
- return $req;
+ return $str;
}
}
?>
/**
* List tables in a database
*
- * $Id: tblproperties.php,v 1.74 2007/01/22 16:33:01 soranzo Exp $
+ * $Id: tblproperties.php,v 1.75 2007/03/24 02:33:59 xzilla Exp $
*/
// Include application functions
array(
'table' => $_REQUEST['table'],
'column' => field('attname'),
- 'query' => prepareSQL(
+ 'query' => replace(
"SELECT %column%, count(*) AS \"count\" FROM %table% GROUP BY %column% ORDER BY %column%",
array (
'%column%' => field('attname'),
/**
* List views in a database
*
- * $Id: viewproperties.php,v 1.23 2007/01/23 14:12:29 soranzo Exp $
+ * $Id: viewproperties.php,v 1.24 2007/03/24 02:33:59 xzilla Exp $
*/
// Include application functions
array(
'view' => $_REQUEST['view'],
'column' => field('attname'),
- 'query' => prepareSQL(
+ 'query' => replace(
"SELECT %column%, count(*) AS \"count\" FROM %view% GROUP BY %column% ORDER BY %column%",
array (
'%column%' => field('attname'),