/** * Function to generate password * * @return string $makepass The generated password * d@todo Move to a static class method - password/user * or why not just remove and use icms_core_Password::createSalt($length); instead? */ function xoops_makepass() { icms_core_Debug::setDeprecated('icms_core_Password::createSalt(10) creates random pass of 10 characters', sprintf(_CORE_REMOVE_IN_VERSION, '1.4')); return icms_core_Password::createSalt(10); }
} if ($db_exist && $vars['DB_CHARSET']) { $sql = "ALTER DATABASE `" . $vars['DB_NAME'] . "` DEFAULT CHARACTER SET " . mysql_real_escape_string($vars['DB_CHARSET']) . ($vars['DB_COLLATION'] ? " COLLATE " . mysql_real_escape_string($vars['DB_COLLATION']) : ""); if (!mysql_query($sql)) { $error = ERR_CHARSET_NOT_SET . '<br />' . $sql; } } } if (empty($error)) { $wizard->redirectToPage('+1'); exit; } } if (@empty($vars['DB_NAME'])) { // Fill with default values $vars = array_merge($vars, array('DB_NAME' => '', 'DB_CHARSET' => 'utf8', 'DB_COLLATION' => '', 'DB_PREFIX' => 'i' . substr(md5(time()), 0, 8), 'DB_SALT' => icms_core_Password::createSalt())); } function xoFormField($name, $value, $label, $maxlength, $help = '') { $label = htmlspecialchars($label); $name = htmlspecialchars($name, ENT_QUOTES); $value = htmlspecialchars($value, ENT_QUOTES); $maxlength = (int) $maxlength; $field = "<div class='dbconn_line'><label for='{$name}'>{$label}</label>\n"; if ($help) { $field .= '<div class="xoform-help">' . $help . "</div><div class='clear'> </div>\n"; } $field .= "<input type='text' name='{$name}' id='{$name}' value='{$value}' /></div>"; return $field; } function xoFormFieldCharset($name, $value, $label, $help = '', $link)
$group_array = new icms_form_elements_Select(_US_GROUPS, 'groups', $groups, 15, true); $group_array->addOptionArray($group_manager_value); $group_select = array($group_array); //$group_hidden = array_diff(icms::handler('icms_member')->getGroupList(),$group_manager_value); $group_hidden = array_diff($groups, array_flip($group_manager_value)); foreach ($group_hidden as $key => $group) { $group_hidden_select[] = new icms_form_elements_Hidden('groups_hidden[' . $key . ']', $group); } } } else { //add each user groups foreach ($groups as $key => $group) { $group_select[] = new icms_form_elements_Hidden('groups[' . $key . ']', $group); } } $salt_hidden = new icms_form_elements_Hidden('salt', icms_core_Password::createSalt()); $enc_type_hidden = new icms_form_elements_Hidden('enc_type', $icmsConfigUser['enc_type']); $pass_expired_hidden = new icms_form_elements_Hidden('pass_expired', 0); $fct_hidden = new icms_form_elements_Hidden("fct", "users"); $op_hidden = new icms_form_elements_Hidden("op", $op_value); $submit_button = new icms_form_elements_Button("", "submit", _SUBMIT, "submit"); $form = new icms_form_Theme($form_title, "userinfo", "admin.php", "post", true); $form->addElement($uname_text, true); $form->addElement($login_name_text, true); $form->addElement($name_text); $form->addElement($email_tray, true); $form->addElement($openid_tray, true); $form->addElement($url_text); // $form->addElement($avatar_tray); // $form->addElement($theme_select); $form->addElement($timezone_select);
$user->setVar('uorder', $icmsConfig['com_order']); $user->setVar('umode', $icmsConfig['com_mode']); } $errors = array(); $stop = ''; $login_name = isset($_POST['login_name']) ? trim($_POST['login_name']) : ''; $uname = isset($_POST['uname']) ? trim($_POST['uname']) : ''; $email = isset($_POST['email']) ? trim($_POST['email']) : ''; $pass = isset($_POST['password']) ? icms_core_DataFilter::stripSlashesGPC($_POST['password']) : ''; $vpass = isset($_POST['vpass']) ? icms_core_DataFilter::stripSlashesGPC($_POST['vpass']) : ''; icms_loadLanguageFile('core', 'user'); $stop .= icms::handler('icms_member_user')->userCheck($login_name, $uname, $email, !$user->isNew() && $pass == '' ? false : $pass, $vpass, $user->isNew() ? 0 : $user->getVar('uid')); if ($user->getVar('uid') != icms::$user->getVar('uid')) { if ($pass != '') { $icmspass = new icms_core_Password(); $salt = icms_core_Password::createSalt(); $pass = $icmspass->encryptPass($pass, $salt, $icmsConfigUser['enc_type']); $user->setVar('pass', $pass); $user->setVar('pass_expired', 0); $user->setVar('enc_type', $icmsConfigUser['enc_type']); $user->setVar('salt', $salt); } $user->setVar('level', (int) $_POST['level']); } $user->setVar('uname', $uname); $user->setVar('login_name', $login_name); $user->setVar('email', $email); if ($icmsConfigAuth['auth_openid'] == 1) { $user->setVar('openid', trim($_POST['openid'])); $user->setVar('user_viewoid', isset($_POST['user_viewoid']) ? (int) $_POST['user_viewoid'] : 0); }
if ($icmsConfigUser['reg_dispdsclmr'] != 0 && $icmsConfigUser['reg_disclaimer'] != '' && !isset($_POST['agree_disc'])) { $stop .= _MD_PROFILE_UNEEDAGREE . '<br />'; } icms_loadLanguageFile('core', 'user'); $stop .= icms::handler('icms_member_user')->userCheck($login_name, $uname, $email, $pass, $vpass); if (empty($stop)) { $_SESSION['profile']['login_name'] = $login_name; $_SESSION['profile']['uname'] = $uname; $_SESSION['profile']['email'] = $email; $_SESSION['profile']['salt'] = $salt; $_SESSION['profile']['pass'] = $enc_pass; $_SESSION['profile']['enc_type'] = $icmsConfigUser['enc_type']; $_SESSION['profile']['user_avatar'] = 'blank.gif'; $_SESSION['profile']['uorder'] = $icmsConfig['com_order']; $_SESSION['profile']['umode'] = $icmsConfig['com_mode']; $_SESSION['profile']['actkey'] = substr(icms_core_Password::createSalt(8), 0, 8); } } // Set vars $uservars = $profile_handler->getUserVars(); foreach ($_SESSION['profile'] as $field => $value) { if (in_array($field, $uservars)) { $newuser->setVar($field, $value); } else { $profile->setVar($field, $value); } } if (empty($stop)) { $save = false; for ($i = 0; $i <= $current_step; $i++) { if ($steps[$i]->getVar('step_save')) {
* @version $Id: page_siteinit.php 20098 2010-09-07 16:19:19Z skenow $ */ /** * */ require_once 'common.inc.php'; if (!defined('XOOPS_INSTALL')) { exit; } $wizard->setPage('siteinit'); $pageHasForm = true; $pageHasHelp = false; $vars =& $_SESSION['siteconfig']; $error =& $_SESSION['error']; if ($_SERVER['REQUEST_METHOD'] == 'POST') { $vars['adminsalt'] = icms_core_Password::createSalt(); $vars['adminname'] = $_POST['adminname']; $vars['adminlogin_name'] = $_POST['adminlogin_name']; $vars['adminmail'] = $_POST['adminmail']; $vars['adminpass'] = $_POST['adminpass']; $vars['adminpass2'] = $_POST['adminpass2']; $error = ''; if (!preg_match("/^[_a-z0-9-]+(\\.[_a-z0-9-]+)*@[a-z0-9-]+([\\.][a-z0-9-]+)+\$/i", $vars['adminmail'])) { $error = ERR_INVALID_EMAIL; } elseif (@empty($vars['adminlogin_name']) || @empty($vars['adminname']) || @empty($vars['adminlogin_name']) || @empty($vars['adminpass']) || @empty($vars['adminmail']) || empty($vars['adminsalt'])) { $error = ERR_REQUIRED; } elseif ($vars['adminpass'] != $vars['adminpass2']) { $error = ERR_PASSWORD_MATCH; } if ($error) { $wizard->redirectToPage('+0');
$edituser->setVar('user_sig', icms_core_DataFilter::icms_substr($signature, 0, (int) $icmsConfigUser['sig_max_length'])); } else { $signature = icms_core_DataFilter::checkVar($_POST['user_sig'], 'html', 'input'); $edituser->setVar('user_sig', icms_core_DataFilter::icms_substr($signature, 0, (int) $icmsConfigUser['sig_max_length'])); } } $user_viewemail = !empty($_POST['user_viewemail']) ? 1 : 0; $edituser->setVar('user_viewemail', $user_viewemail); $user_viewoid = !empty($_POST['user_viewoid']) ? 1 : 0; $edituser->setVar('user_viewoid', $user_viewoid); $edituser->setVar('user_aim', $_POST['user_aim']); $edituser->setVar('user_yim', $_POST['user_yim']); $edituser->setVar('user_msnm', $_POST['user_msnm']); if ($password != '') { $icmspass = new icms_core_Password(); $salt = $icmspass->createSalt(); $edituser->setVar('salt', $salt, TRUE); $edituser->setVar('enc_type', $icmsConfigUser['enc_type'], TRUE); $pass = $icmspass->encryptPass($password, $salt, $icmsConfigUser['enc_type']); $edituser->setVar('pass', $pass, TRUE); } $attachsig = !empty($_POST['attachsig']) ? 1 : 0; $edituser->setVar('attachsig', $attachsig); $edituser->setVar('timezone_offset', $_POST['timezone_offset']); $edituser->setVar('uorder', $_POST['uorder']); $edituser->setVar('umode', $_POST['umode']); $edituser->setVar('notify_method', $_POST['notify_method']); $edituser->setVar('notify_mode', $_POST['notify_mode']); $edituser->setVar('bio', icms_core_DataFilter::icms_substr($_POST['bio'], 0, 255)); $edituser->setVar('user_occ', $_POST['user_occ']); $edituser->setVar('user_intrest', $_POST['user_intrest']);
$member_handler = icms::handler('icms_member'); $criteria = new icms_db_criteria_Compo(); $criteria->add(new icms_db_criteria_Item('email',$email)); $criteria->add(new icms_db_criteria_Item('level', '-1', '!=')); $getuser =& $member_handler->getUsers($criteria); if (empty($getuser)) { $msg = _US_SORRYNOTFOUND; redirect_header('user.php', 2, $msg); } else { $icmspass = new icms_core_Password(); $areyou = substr($getuser[0]->getVar('pass'), 0, 5); if ($code != '' && $areyou == $code) { $newpass = $icmspass->createSalt(8); $pass = $icmspass->encryptPass($newpass); $xoopsMailer = new icms_messaging_Handler(); $xoopsMailer->useMail(); $xoopsMailer->setTemplate('lostpass2.tpl'); $xoopsMailer->assign('SITENAME', $icmsConfig['sitename']); $xoopsMailer->assign('ADMINMAIL', $icmsConfig['adminmail']); $xoopsMailer->assign('SITEURL', ICMS_URL . '/'); $xoopsMailer->assign('IP', $_SERVER['REMOTE_ADDR']); $xoopsMailer->assign('NEWPWD', $newpass); $xoopsMailer->setToUsers($getuser[0]); $xoopsMailer->setFromEmail($icmsConfig['adminmail']); $xoopsMailer->setFromName($icmsConfig['sitename']); $xoopsMailer->setSubject(sprintf(_US_NEWPWDREQ, ICMS_URL)); if (!$xoopsMailer->send()) { echo $xoopsMailer->getErrors();
} $member_handler = icms::handler('icms_member'); $criteria = new icms_db_criteria_Compo(); $criteria->add(new icms_db_criteria_Item('email', icms_core_DataFilter::addSlashes($email))); $criteria->add(new icms_db_criteria_Item('level', '-1', '!=')); $getuser =& $member_handler->getUsers($criteria); if (empty($getuser)) { $msg = _US_SORRYNOTFOUND; redirect_header('user.php', 2, $msg); } else { $icmspass = new icms_core_Password(); $code = isset($_GET['code']) ? trim(filter_input(INPUT_GET, 'code')) : ''; $areyou = substr($getuser[0]->getVar('pass'), 0, 5); $enc_type = (int) $icmsConfigUser['enc_type']; if ($code != '' && $areyou == $code) { $newpass = $icmspass->createSalt(8); $salt = $icmspass->createSalt(); $pass = $icmspass->encryptPass($newpass, $salt, $icmsConfigUser['enc_type']); $xoopsMailer = new icms_messaging_Handler(); $xoopsMailer->useMail(); $xoopsMailer->setTemplate('lostpass2.tpl'); $xoopsMailer->assign('SITENAME', $icmsConfig['sitename']); $xoopsMailer->assign('ADMINMAIL', $icmsConfig['adminmail']); $xoopsMailer->assign('SITEURL', ICMS_URL . '/'); $xoopsMailer->assign('IP', $_SERVER['REMOTE_ADDR']); $xoopsMailer->assign('NEWPWD', $newpass); $xoopsMailer->setToUsers($getuser[0]); $xoopsMailer->setFromEmail($icmsConfig['adminmail']); $xoopsMailer->setFromName($icmsConfig['sitename']); $xoopsMailer->setSubject(sprintf(_US_NEWPWDREQ, ICMS_URL)); if (!$xoopsMailer->send()) {