function regcode_dynamic_user in Registration codes 6.2
Implementation of hook_user().
1 call to regcode_dynamic_user()
- regcode_voucher_validate in regcode_voucher/
regcode_voucher.module - Validate handler
File
- regcode_dynamic/
regcode_dynamic.module, line 73 - The dynamic code module creates codes on the fly as they are used.
Code
function regcode_dynamic_user($op, &$edit, &$account, $category = NULL) {
switch ($op) {
case 'validate':
if ($category === 'account' && !empty($edit['regcode_code'])) {
// Check this code isn't already a code
$regcode = regcode_load(array(
'code' => $edit['regcode_code'],
));
if ($regcode !== FALSE) {
return;
}
// Ensure this is a valid dynamic code
$rules = regcode_dynamic_rules();
$valid = FALSE;
foreach ($rules as $rule) {
$handler = regcode_dynamic_handlers($rule['handler']);
$valid = call_user_func($handler['validator'], $edit['regcode_code'], $rule);
if ($valid) {
break;
}
}
if (!$valid) {
return;
}
// Create the code just in time for regcode to take over
$code = new stdClass();
$code->code = $edit['regcode_code'];
$tags = $rule['terms'];
regcode_save($code, $tags);
}
break;
}
}