00001 <?php
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00034 class userFilter extends WebObject
00035 {
00036 function init()
00037 {
00038 $this->addSVars( array(
00039 'username' => '',
00040 'realname' => '',
00041 'email' => '',
00042 'books' => '',
00043 'level' => '',
00044 'nodes' => '',
00045 'langs' => '',
00046 'filter' => '1'
00047 ) );
00048 }
00049
00050 function onParse()
00051 {
00052 $this->buildFilter();
00053 }
00054
00055 function buildFilter()
00056 {
00057
00058 extract($this->getSVars());
00059
00060 $arr_filters = array();
00061 if ($username != '')
00062 {
00063 $arr_filters[] = '($1 ~ "'.$username.'")';
00064 }
00065
00066 if ($realname != '')
00067 {
00068 $arr_filters[] = '($3 ~ "'.$realname.'")';
00069 }
00070
00071 if ($email != '')
00072 {
00073 $arr_filters[] = '($4 ~ "'.$email.'")';
00074 }
00075
00076 if ($books != '')
00077 {
00078 $arr_filters[] = '($5 ~ "'.$books.'")';
00079 }
00080
00081 $filter = implode(' && ', $arr_filters);
00082
00083 if ($filter=='') $filter = '1';
00084 $filter = '('.$filter.')';
00085 $filter = str_replace('"', '\\"', $filter);
00086 $filter = str_replace('$', '\\$', $filter);
00087
00088 $this->setSVar('filter', $filter);
00089 }
00090 }
00091 ?>