Changeset 42 for trunk/bin/module_maker/validation.cli.php
- Timestamp:
- Dec 18, 2005 12:16:03 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/bin/module_maker/validation.cli.php
r41 r42 38 38 // Loop through columns 39 39 if (is_array($cols) && !empty($cols)) { 40 40 41 41 $o = array(); 42 42 43 43 foreach ($cols as $col) { 44 44 45 45 // Human readable. 46 46 $field = $col[0]; … … 49 49 $is_primary_key = ('PRI' == $col[3]); 50 50 $unsigned = preg_match('/\s*unsigned\s*$/i', $col[1]); 51 51 52 52 if (in_array($field, $exclude)) { 53 53 continue; 54 54 } 55 55 56 56 // ----------- isEmpty ------------ 57 57 $o[] = "\$fv->isEmpty('$field', _(\"<strong>$title</strong> cannot be blank.\"));"; … … 68 68 $len_type = 'setenum'; 69 69 break; 70 70 71 71 case 'date' : 72 72 case 'datetime' : … … 77 77 $max_length = 127; 78 78 break; 79 79 80 80 case 'tinytext' : 81 81 case 'tinyblob' : … … 85 85 $max_length = 255; 86 86 break; 87 87 88 88 case 'text' : 89 89 case 'blob' : … … 91 91 $max_length = 65535; 92 92 break; 93 93 94 94 case 'mediumtext' : 95 95 case 'mediumblob' : … … 97 97 $max_length = 16777215; 98 98 break; 99 99 100 100 case 'longtext' : 101 101 case 'longblob' : … … 103 103 $max_length = 4294967295; 104 104 break; 105 105 106 106 case 'tinyint' : 107 107 case 'bit' : … … 116 116 } 117 117 break; 118 118 119 119 case 'smallint' : 120 120 $len_type = 'num'; … … 127 127 } 128 128 break; 129 129 130 130 case 'mediumint' : 131 131 $len_type = 'num'; … … 138 138 } 139 139 break; 140 140 141 141 case 'int' : 142 142 case 'integer' : … … 150 150 } 151 151 break; 152 152 153 153 case 'bigint' : 154 154 $len_type = 'num'; … … 161 161 } 162 162 break; 163 163 164 164 case 'float' : 165 165 $len_type = 'num'; … … 167 167 $max = 3.40282E+38; 168 168 break; 169 169 170 170 case 'double' : 171 171 case 'double precision' : … … 178 178 $max = 1.79769E+308; 179 179 break; 180 180 181 181 default : 182 182 $len_type = null; … … 192 192 $o[] = "\$fv->numericRange('$field', $min, $max, _(\"<strong>$title</strong> must be a valid number between $min and $max.\"));"; 193 193 } 194 194 195 195 // ----------- type check ------------ 196 196 switch ($type) { 197 197 198 198 case 'enum' : 199 199 200 200 case 'set' : 201 201 break; 202 202 203 203 case 'char' : 204 204 case 'varchar' : 205 205 206 206 case 'tinytext' : 207 207 case 'text' : … … 214 214 // $o[] = "\$fv->isString('$field', _(\"<strong>$title</strong> must be a string.\"));"; // Pretty useless 215 215 break; 216 216 217 217 case 'tinyint' : 218 218 case 'bit' : … … 226 226 $o[] = "\$fv->isInteger('$field', _(\"<strong>$title</strong> must be an integer.\")$negative_ok);"; 227 227 break; 228 228 229 229 case 'float' : 230 230 case 'float' : … … 238 238 $o[] = "\$fv->isFloat('$field', _(\"<strong>$title</strong> must be a valid number.\")$negative_ok);"; 239 239 break; 240 240 241 241 case 'date' : 242 242 case 'datetime' : … … 244 244 $o[] = "\$fv->checkRegex('$field', '/^\d{4}-\d{2}-\d{2}$/', true, _(\"<strong>$title</strong> must be a valid date in YYYY-MM-DD format.\"));"; 245 245 break; 246 246 247 247 case 'timestamp' : 248 248 $o[] = "\$fv->checkRegex('$field', '/^\d{14}$/', true, _(\"<strong>$title</strong> must be a valid mysql timestamp in YYYYMMDDhhmmss format.\"));"; 249 249 break; 250 250 251 251 case 'time' : 252 252 $o[] = "\$fv->checkRegex('$field', '/^\d{1,3}:\d{2}:\d{2}$/', true, _(\"<strong>$title</strong> must be a valid time in hh:mm:ss format.\"));"; 253 253 break; 254 254 255 255 case 'year' : 256 256 $o[] = "\$fv->checkRegex('$field', '/^\d{4}$/', true, _(\"<strong>$title</strong> must be a valid year in YYYY format.\"));"; 257 257 break; 258 258 259 259 default : 260 260 break; 261 261 } 262 262 263 263 if (preg_match('/email/', $field)) { 264 264 $o[] = "\$fv->validateEmail('$field');"; … … 266 266 $o[] = "\$fv->validatePhone('$field');"; 267 267 } 268 268 269 269 // Blank between cols? 270 270 $o[] = ''; … … 278 278 279 279 echo "function validateInput() 280 { 280 { 281 281 global \$fv; 282 282
Note: See TracChangeset
for help on using the changeset viewer.