XCL Web Application Platform 2.5.0
The XoopsCube Legacy Project
Loading...
Searching...
No Matches
UserSearchForm.class.php
1<?php
2
3if (!defined('XOOPS_ROOT_PATH')) {
4 exit();
5}
6
7require_once XOOPS_ROOT_PATH . '/core/XCube_ActionForm.class.php';
8require_once XOOPS_MODULE_PATH . '/legacy/class/Legacy_Validator.class.php';
9
11{
12 public function prepare()
13 {
14 //
15 // Set form properties
16 //
17 $this->mFormProperties['uname'] =new XCube_StringProperty('uname');
18 $this->mFormProperties['name'] =new XCube_StringProperty('name');
19 $this->mFormProperties['email'] =new XCube_StringProperty('email');
20 $this->mFormProperties['user_icq'] =new XCube_StringProperty('user_icq');
21 $this->mFormProperties['user_aim'] =new XCube_StringProperty('user_aim');
22 $this->mFormProperties['user_yim'] =new XCube_StringProperty('user_yim');
23 $this->mFormProperties['user_msnm'] =new XCube_StringProperty('user_msnm');
24 $this->mFormProperties['url'] =new XCube_StringProperty('url');
25 $this->mFormProperties['user_from'] =new XCube_StringProperty('user_from');
26 $this->mFormProperties['user_occ'] =new XCube_StringProperty('user_occ');
27 $this->mFormProperties['user_intrest'] =new XCube_StringProperty('user_intrest');
28 $this->mFormProperties['lastlog_more'] =new XCube_IntProperty('lastlog_more');
29 $this->mFormProperties['lastlog_less'] =new XCube_IntProperty('lastlog_less');
30 $this->mFormProperties['regdate_more'] =new XCube_IntProperty('regdate_more');
31 $this->mFormProperties['regdate_less'] =new XCube_IntProperty('regdate_less');
32 $this->mFormProperties['over_posts'] =new XCube_IntProperty('over_posts');
33 $this->mFormProperties['under_posts'] =new XCube_IntProperty('under_posts');
34 $this->mFormProperties['mail_condition'] =new XCube_IntProperty('mail_condition');
35 $this->mFormProperties['user_level'] =new XCube_IntProperty('user_level');
36 $this->mFormProperties['groups'] =new XCube_IntArrayProperty('groups');
37 //
38 $this->mFormProperties['user_uname_match'] =new XCube_IntProperty('user_uname_match');
39 $this->mFormProperties['user_name_match'] =new XCube_IntProperty('user_name_match');
40 $this->mFormProperties['user_email_match'] =new XCube_IntProperty('user_email_match');
41 $this->mFormProperties['user_icq_match'] =new XCube_IntProperty('user_icq_match');
42 $this->mFormProperties['user_aim_match'] =new XCube_IntProperty('user_aim_match');
43 $this->mFormProperties['user_yim_match'] =new XCube_IntProperty('user_yim_match');
44 $this->mFormProperties['user_msnm_match'] =new XCube_IntProperty('user_msnm_match');
45
46 //
47 // Set field properties
48 //
49 $this->mFieldProperties['uname'] =new XCube_FieldProperty($this);
50 $this->mFieldProperties['uname']->setDependsByArray(['maxlength']);
51 $this->mFieldProperties['uname']->addMessage('maxlength', _MD_USER_ERROR_MAXLENGTH, _MD_USER_LANG_UNAME, '25');
52 $this->mFieldProperties['uname']->addVar('maxlength', '25');
53
54 $this->mFieldProperties['name'] =new XCube_FieldProperty($this);
55 $this->mFieldProperties['name']->setDependsByArray(['maxlength']);
56 $this->mFieldProperties['name']->addMessage('maxlength', _MD_USER_ERROR_MAXLENGTH, _MD_USER_LANG_NAME, '60');
57 $this->mFieldProperties['name']->addVar('maxlength', '60');
58
59 $this->mFieldProperties['email'] =new XCube_FieldProperty($this);
60 $this->mFieldProperties['email']->setDependsByArray(['maxlength']);
61 $this->mFieldProperties['email']->addMessage('maxlength', _MD_USER_ERROR_MAXLENGTH, _MD_USER_LANG_EMAIL, '60');
62 $this->mFieldProperties['email']->addVar('maxlength', '60');
63
64 $this->mFieldProperties['user_icq'] =new XCube_FieldProperty($this);
65 $this->mFieldProperties['user_icq']->setDependsByArray(['maxlength']);
66 $this->mFieldProperties['user_icq']->addMessage('maxlength', _MD_USER_ERROR_MAXLENGTH, _MD_USER_LANG_USER_ICQ, '15');
67 $this->mFieldProperties['user_icq']->addVar('maxlength', '15');
68
69 $this->mFieldProperties['user_aim'] =new XCube_FieldProperty($this);
70 $this->mFieldProperties['user_aim']->setDependsByArray(['maxlength']);
71 $this->mFieldProperties['user_aim']->addMessage('maxlength', _MD_USER_ERROR_MAXLENGTH, _MD_USER_LANG_USER_AIM, '18');
72 $this->mFieldProperties['user_aim']->addVar('maxlength', '18');
73
74 $this->mFieldProperties['user_yim'] =new XCube_FieldProperty($this);
75 $this->mFieldProperties['user_yim']->setDependsByArray(['maxlength']);
76 $this->mFieldProperties['user_yim']->addMessage('maxlength', _MD_USER_ERROR_MAXLENGTH, _MD_USER_LANG_USER_YIM, '25');
77 $this->mFieldProperties['user_yim']->addVar('maxlength', '25');
78
79 $this->mFieldProperties['user_msnm'] =new XCube_FieldProperty($this);
80 $this->mFieldProperties['user_msnm']->setDependsByArray(['maxlength']);
81 $this->mFieldProperties['user_msnm']->addMessage('maxlength', _MD_USER_ERROR_MAXLENGTH, _MD_USER_LANG_USER_MSNM, '100');
82 $this->mFieldProperties['user_msnm']->addVar('maxlength', '100');
83
84 $this->mFieldProperties['url'] =new XCube_FieldProperty($this);
85 $this->mFieldProperties['url']->setDependsByArray(['maxlength']);
86 $this->mFieldProperties['url']->addMessage('maxlength', _MD_USER_ERROR_MAXLENGTH, _MD_USER_LANG_URL, '100');
87 $this->mFieldProperties['url']->addVar('maxlength', '100');
88
89 $this->mFieldProperties['user_from'] =new XCube_FieldProperty($this);
90 $this->mFieldProperties['user_from']->setDependsByArray(['maxlength']);
91 $this->mFieldProperties['user_from']->addMessage('maxlength', _MD_USER_ERROR_MAXLENGTH, _MD_USER_LANG_USER_FROM, '100');
92 $this->mFieldProperties['user_from']->addVar('maxlength', '100');
93
94 $this->mFieldProperties['user_occ'] =new XCube_FieldProperty($this);
95 $this->mFieldProperties['user_occ']->setDependsByArray(['maxlength']);
96 $this->mFieldProperties['user_occ']->addMessage('maxlength', _MD_USER_ERROR_MAXLENGTH, _MD_USER_LANG_USER_OCC, '100');
97 $this->mFieldProperties['user_occ']->addVar('maxlength', '100');
98
99 $this->mFieldProperties['user_intrest'] =new XCube_FieldProperty($this);
100 $this->mFieldProperties['user_intrest']->setDependsByArray(['maxlength']);
101 $this->mFieldProperties['user_intrest']->addMessage('maxlength', _MD_USER_ERROR_MAXLENGTH, _MD_USER_LANG_USER_INTREST, '150');
102 $this->mFieldProperties['user_intrest']->addVar('maxlength', '150');
103
104 $this->mFieldProperties['lastlog_more'] =new XCube_FieldProperty($this);
105 $this->mFieldProperties['lastlog_more']->setDependsByArray(['intRange']);
106 $this->mFieldProperties['lastlog_more']->addMessage('intRange', _AD_USER_ERROR_INTRANGE, _AD_USER_LANG_LASTLOG_MORE, '0');
107 $this->mFieldProperties['lastlog_more']->addVar('min', '0');
108 $this->mFieldProperties['lastlog_more']->addVar('max', '65535');
109
110 $this->mFieldProperties['lastlog_less'] =new XCube_FieldProperty($this);
111 $this->mFieldProperties['lastlog_less']->setDependsByArray(['intRange']);
112 $this->mFieldProperties['lastlog_less']->addMessage('intRange', _AD_USER_ERROR_INTRANGE, _AD_USER_LANG_LASTLOG_LESS, '0');
113 $this->mFieldProperties['lastlog_less']->addVar('min', '0');
114 $this->mFieldProperties['lastlog_less']->addVar('max', '65535');
115
116 $this->mFieldProperties['regdate_more'] =new XCube_FieldProperty($this);
117 $this->mFieldProperties['regdate_more']->setDependsByArray(['intRange']);
118 $this->mFieldProperties['regdate_more']->addMessage('intRange', _AD_USER_ERROR_INTRANGE, _AD_USER_LANG_REGDATE_MORE, '0');
119 $this->mFieldProperties['regdate_more']->addVar('min', '0');
120 $this->mFieldProperties['regdate_more']->addVar('max', '65535');
121
122 $this->mFieldProperties['regdate_less'] =new XCube_FieldProperty($this);
123 $this->mFieldProperties['regdate_less']->setDependsByArray(['intRange']);
124 $this->mFieldProperties['regdate_less']->addMessage('intRange', _AD_USER_ERROR_INTRANGE, _AD_USER_LANG_REGDATE_LESS, '0');
125 $this->mFieldProperties['regdate_less']->addVar('min', '0');
126 $this->mFieldProperties['regdate_less']->addVar('max', '65535');
127
128 $this->mFieldProperties['over_posts'] =new XCube_FieldProperty($this);
129 $this->mFieldProperties['over_posts']->setDependsByArray(['intRange']);
130 $this->mFieldProperties['over_posts']->addMessage('intRange', _AD_USER_ERROR_INTRANGE, _AD_USER_LANG_OVER_POSTS, '0');
131 $this->mFieldProperties['over_posts']->addVar('min', '0');
132 $this->mFieldProperties['over_posts']->addVar('max', '65535');
133
134 $this->mFieldProperties['under_posts'] =new XCube_FieldProperty($this);
135 $this->mFieldProperties['under_posts']->setDependsByArray(['intRange']);
136 $this->mFieldProperties['under_posts']->addMessage('intRange', _AD_USER_ERROR_INTRANGE, _AD_USER_LANG_UNDER_POSTS, '0');
137 $this->mFieldProperties['under_posts']->addVar('min', '0');
138 $this->mFieldProperties['under_posts']->addVar('max', '65535');
139
140 $this->mFieldProperties['mail_condition'] =new XCube_FieldProperty($this);
141 $this->mFieldProperties['mail_condition']->setDependsByArray(['required', 'intRange']);
142 $this->mFieldProperties['mail_condition']->addMessage('required', _MD_USER_ERROR_REQUIRED, _AD_USER_LANG_DISPLAY_USER_MAIL_CONDITION);
143 $this->mFieldProperties['mail_condition']->addMessage('intRange', _AD_USER_ERROR_INTRANGE, _AD_USER_LANG_DISPLAY_USER_MAIL_CONDITION);
144 $this->mFieldProperties['mail_condition']->addVar('min', '1');
145 $this->mFieldProperties['mail_condition']->addVar('max', '3');
146
147 $this->mFieldProperties['user_level'] =new XCube_FieldProperty($this);
148 $this->mFieldProperties['user_level']->setDependsByArray(['required', 'intRange']);
149 $this->mFieldProperties['user_level']->addMessage('required', _MD_USER_ERROR_REQUIRED, _AD_USER_LANG_DISPLAY_USER_LEVEL);
150 $this->mFieldProperties['user_level']->addMessage('intRange', _AD_USER_ERROR_INTRANGE, _AD_USER_LANG_DISPLAY_USER_LEVEL);
151 $this->mFieldProperties['user_level']->addVar('min', '1');
152 $this->mFieldProperties['user_level']->addVar('max', '3');
153 }
154
159 public function validateGroups()
160 {
161 $groupHandler =& xoops_gethandler('group');
162 foreach ($this->get('groups') as $gid) {
163 $group =& $groupHandler->get($gid);
164 if (!is_object($group)) {
165 $this->addErrorMessage(_AD_USER_ERROR_GROUP_VALUE);
166 }
167 }
168 }
169}
prepare()
[Abstract] Set up form properties and field properties.
addErrorMessage( $message)
Adds a message to the form's error message buffer.
[Abstract] Used for validating member property values of XCube_ActionForm.
Represents int[] property. XCube_GenericArrayProperty<XCube_IntProperty>.
Represents int property.
Represents string property.