<?php /// Copyright (c) 2004-2016, Needlworks / Tatter Network Foundation /// All rights reserved. Licensed under the GPL. /// See the GNU General Public License for more details. (/documents/LICENSE, /documents/COPYRIGHT) $IV = array('GET' => array('userid' => array('id'))); require ROOT . '/library/preprocessor.php'; requireStrictRoute(); requirePrivilege('group.creators'); $authtoken = md5(User::__generatePassword()); $pool = DBModel::getInstance(); $pool->init("UserSettings"); $pool->setAttribute("userid", $_GET['userid']); $pool->setAttribute("name", 'AuthToken', true); $pool->setAttribute("value", $authtoken, true); $result = $pool->replace(); if ($result) { Respond::PrintResult(array('error' => 0)); } else { $result = _t('임시 암호 발급에 실패하였습니다.'); Respond::PrintResult(array('error' => -1, 'result' => $result)); }
static function add($email, $name) { global $database, $service, $user, $blog; if (empty($email)) { return 1; } if (!preg_match('/^[^@]+@([-a-zA-Z0-9]+\\.)+[-a-zA-Z0-9]+$/', $email)) { return 2; } if (strcmp($email, Utils_Unicode::lessenAsEncoding($email, 64)) != 0) { return 11; } $loginid = POD::escapeString(Utils_Unicode::lessenAsEncoding($email, 64)); $name = POD::escapeString(Utils_Unicode::lessenAsEncoding($name, 32)); $password = User::__generatePassword(); $authtoken = md5(User::__generatePassword()); if (POD::queryExistence("SELECT * FROM {$database['prefix']}Users WHERE loginid = '{$loginid}'")) { return 9; // User already exists. } if (POD::queryCell("SELECT COUNT(*) FROM {$database['prefix']}Users WHERE name = '{$name}'")) { $name = $name . '.' . time(); } $result = POD::query("INSERT INTO {$database['prefix']}Users (userid, loginid, password, name, created, lastlogin, host) VALUES (" . (User::__getMaxUserId() + 1) . ", '{$loginid}', '" . md5($password) . "', '{$name}', UNIX_TIMESTAMP(), 0, " . getUserId() . ")"); if (empty($result)) { return 11; } $result = POD::query("INSERT INTO {$database['prefix']}UserSettings (userid, name, value) VALUES ('" . User::getUserIdByEmail($loginid) . "', 'AuthToken', '{$authtoken}')"); if (empty($result)) { return 11; } return true; }
static function add($email, $name) { $context = Model_Context::getInstance(); $pool = DBModel::getInstance(); if (empty($email)) { return 1; } if (!preg_match('/^[^@]+@([-a-zA-Z0-9]+\\.)+[-a-zA-Z0-9]+$/', $email)) { return 2; } if (strcmp($email, Utils_Unicode::lessenAsEncoding($email, 64)) != 0) { return 11; } $loginid = Utils_Unicode::lessenAsEncoding($email, 64); $name = Utils_Unicode::lessenAsEncoding($name, 32); $password = User::__generatePassword(); $authtoken = md5(User::__generatePassword()); $pool->reset("Users"); $pool->setQualifier("loginid", "eq", $loginid, true); if ($pool->doesExist()) { return 9; // User already exists. } $pool->reset("Users"); $pool->setQualifier("name", "eq", $name, true); if ($pool->getCount()) { $name = $name . '.' . time(); } $pool->reset("Users"); $pool->setAttribute("userid", User::__getMaxUserId() + 1); $pool->setAttribute("loginid", $loginid, true); $pool->setAttribute("password", md5($password), true); $pool->setAttribute("name", $name, true); $pool->setAttribute("created", Timestamp::getUNIXtime()); $pool->setAttribute("lastlogin", 0); $pool->setAttribute("host", getUserId()); $result = $pool->insert(); if (empty($result)) { return 11; } $pool->reset("UserSettings"); $pool->setAttribute("userid", User::getUserIdByEmail($loginid)); $pool->setAttribute("name", 'AuthToken', true); $pool->setAttribute("value", $authtoken, true); $result = $pool->insert(); if (empty($result)) { return 11; } return true; }