register_hook('ACTION_ACT_PREPROCESS', 'AFTER', $this, 'skip_login_action', NULL); //$controller->register_hook('HTML_REGISTERFORM_OUTPUT', 'BEFORE', $this, 'modify_register_form', NULL); } function skip_login_action(&$event, $param) { global $ID; if ($event->data == 'login') { send_redirect($ID, 'show'); } } function modify_register_form(&$event, $param) { $pos = $event->data->findElementByAttribute('name','login'); if (!$pos) return; $elem = $event->data->getElementAt($pos); $elem['value'] = $_SERVER['REMOTE_USER']; $elem['readonly'] = 'readonly'; $event->data->replaceElement($pos, $elem); $pwd = auth_pwgen(); foreach (array('pass', 'passchk') as $name) { $pos = $event->data->findElementByAttribute('name', $name); $event->data->replaceElement($pos, NULL); $event->data->addHidden($name, $pwd); } } }