* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
***************************************************************************/
+// {{{ class PlLimit
class PlLimit
{
private $count = null;
return '';
}
}
+// }}}
+// {{{ class PlSqlJoin
class PlSqlJoin
{
private $mode;
return $str;
}
}
+// }}}
+// {{{ class PlFilterOrder
abstract class PlFilterOrder
{
protected $desc = false;
return $sel;
}
- abstract protected function getSortTokens(&$pf);
+ abstract protected function getSortTokens(PlFilter &$pf);
}
+// }}}
+
+// {{{ class PFO_Random
+class PFO_Random extends PlFilterOrder
+{
+ private $seed = null;
+
+ public function __construct($seed = null, $desc = false)
+ {
+ parent::__construct($desc);
+ $this->seed = $seed;
+ }
+
+ protected function getSortTokens(PlFilter &$pf)
+ {
+ if ($this->seed == null) {
+ return 'RAND()';
+ } else {
+ return XDB::format('RAND({?})', $this->seed);
+ }
+ }
+}
+// }}}
// {{{ interface PlFilterCondition
interface PlFilterCondition
}
// }}}
-
+// {{{ class PlFilter
abstract class PlFilter
{
/** Filters objects matching the PlFilter
}
}
+// }}}
?>