Server : nginx/1.22.1 System : Linux iZwz9daxib3w3i063fw434Z 3.10.0-1127.19.1.el7.x86_64 #1 SMP Tue Aug 25 17:23:54 UTC 2020 x86_64 User : www ( 1000) PHP Version : 5.6.40 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv Directory : /www/wwwroot/www.jkmold.com/phpsso_server/api/uc_client_1_5/control/ |
<?php /* [UCenter] (C)2001-2009 Comsenz Inc. This is NOT a freeware, use is subject to license terms $Id: user.php 968 2009-10-29 02:06:45Z zhaoxiongfei $ */ !defined('IN_UC') && exit('Access Denied'); define('UC_USER_CHECK_USERNAME_FAILED', -1); define('UC_USER_USERNAME_BADWORD', -2); define('UC_USER_USERNAME_EXISTS', -3); define('UC_USER_EMAIL_FORMAT_ILLEGAL', -4); define('UC_USER_EMAIL_ACCESS_ILLEGAL', -5); define('UC_USER_EMAIL_EXISTS', -6); class usercontrol extends base { function __construct() { $this->usercontrol(); } function usercontrol() { parent::__construct(); $this->load('user'); $this->app = $this->cache['apps'][UC_APPID]; } // -1 未开启 function onsynlogin() { $this->init_input(); $uid = $this->input('uid'); if($this->app['synlogin']) { if($this->user = $_ENV['user']->get_user_by_uid($uid)) { $synstr = ''; foreach($this->cache['apps'] as $appid => $app) { if($app['synlogin'] && $app['appid'] != $this->app['appid']) { $synstr .= '<script type="text/javascript" src="'.$app['url'].'/api/uc.php?time='.$this->time.'&code='.urlencode($this->authcode('action=synlogin&username='.$this->user['username'].'&uid='.$this->user['uid'].'&password='.$this->user['password']."&time=".$this->time, 'ENCODE', $app['authkey'])).'"></script>'; } } return $synstr; } } return ''; } function onsynlogout() { $this->init_input(); if($this->app['synlogin']) { $synstr = ''; foreach($this->cache['apps'] as $appid => $app) { if($app['synlogin'] && $app['appid'] != $this->app['appid']) { $synstr .= '<script type="text/javascript" src="'.$app['url'].'/api/uc.php?time='.$this->time.'&code='.urlencode($this->authcode('action=synlogout&time='.$this->time, 'ENCODE', $app['authkey'])).'"></script>'; } } return $synstr; } return ''; } function onregister() { $this->init_input(); $username = $this->input('username'); $password = $this->input('password'); $email = $this->input('email'); $questionid = $this->input('questionid'); $answer = $this->input('answer'); $regip = $this->input('regip'); $random = $this->input('random'); if(($status = $this->_check_username($username)) < 0) { return $status; } if(($status = $this->_check_email($email)) < 0) { return $status; } $uid = $_ENV['user']->add_user($username, $password, $email, $random, 0, $questionid, $answer, $regip); return $uid; } function onedit() { $this->init_input(); $username = $this->input('username'); $oldpw = $this->input('oldpw'); $newpw = $this->input('newpw'); $email = $this->input('email'); $ignoreoldpw = $this->input('ignoreoldpw'); $questionid = $this->input('questionid'); $answer = $this->input('answer'); $salt = $this->input('salt'); if($email && ($status = $this->_check_email($email, $username)) < 0) { return $status; } $status = $_ENV['user']->edit_user($username, $oldpw, $newpw, $email, $salt, $ignoreoldpw, $questionid, $answer); if($newpw && $status > 0) { $this->load('note'); $_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password='); $_ENV['note']->send(); } return $status; } function onlogin() { $this->init_input(); $isuid = $this->input('isuid'); $username = $this->input('username'); $password = $this->input('password'); $checkques = $this->input('checkques'); $questionid = $this->input('questionid'); $answer = $this->input('answer'); if($isuid == 1) { $user = $_ENV['user']->get_user_by_uid($username); } elseif($isuid == 2) { $user = $_ENV['user']->get_user_by_email($username); } else { $user = $_ENV['user']->get_user_by_username($username); } $passwordmd5 = preg_match('/^\w{32}$/', $password) ? $password : md5($password); if(empty($user)) { $status = -1; } elseif($user['password'] != md5($passwordmd5.$user['salt'])) { $status = -2; } elseif($checkques && $user['secques'] != '' && $user['secques'] != $_ENV['user']->quescrypt($questionid, $answer)) { $status = -3; } else { $status = $user['uid']; } $merge = $status != -1 && !$isuid && $_ENV['user']->check_mergeuser($username) ? 1 : 0; return array($status, $user['username'], $password, $user['email'], $merge); } function oncheck_email() { $this->init_input(); $email = $this->input('email'); return $this->_check_email($email); } function oncheck_username() { $this->init_input(); $username = $this->input('username'); if(($status = $this->_check_username($username)) < 0) { return $status; } else { return 1; } } function onget_user() { $this->init_input(); $username = $this->input('username'); if(!$this->input('isuid')) { $status = $_ENV['user']->get_user_by_username($username); } else { $status = $_ENV['user']->get_user_by_uid($username); } if($status) { return array($status['uid'],$status['username'],$status['email']); } else { return 0; } } function ongetprotected() { $protectedmembers = $this->db->fetch_all("SELECT uid,username FROM ".UC_DBTABLEPRE."protectedmembers GROUP BY username"); return $protectedmembers; } function ondelete() { $this->init_input(); $uid = $this->input('uid'); return $_ENV['user']->delete_user($uid); } function onaddprotected() { $this->init_input(); $username = $this->input('username'); $admin = $this->input('admin'); $appid = $this->app['appid']; $usernames = (array)$username; foreach($usernames as $username) { $user = $_ENV['user']->get_user_by_username($username); $uid = $user['uid']; $this->db->query("REPLACE INTO ".UC_DBTABLEPRE."protectedmembers SET uid='$uid', username='$username', appid='$appid', dateline='{$this->time}', admin='$admin'", 'SILENT'); } return $this->db->errno() ? -1 : 1; } function ondeleteprotected() { $this->init_input(); $username = $this->input('username'); $appid = $this->app['appid']; $usernames = (array)$username; foreach($usernames as $username) { $this->db->query("DELETE FROM ".UC_DBTABLEPRE."protectedmembers WHERE username='$username' AND appid='$appid'"); } return $this->db->errno() ? -1 : 1; } function onmerge() { $this->init_input(); $oldusername = $this->input('oldusername'); $newusername = $this->input('newusername'); $uid = $this->input('uid'); $password = $this->input('password'); $email = $this->input('email'); if(($status = $this->_check_username($newusername)) < 0) { return $status; } $uid = $_ENV['user']->add_user($newusername, $password, $email, $uid); $this->db->query("UPDATE ".UC_DBTABLEPRE."pms SET msgfrom='$newusername' WHERE msgfromid='$uid' AND msgfrom='$oldusername'"); $this->db->query("DELETE FROM ".UC_DBTABLEPRE."mergemembers WHERE appid='".$this->app['appid']."' AND username='$oldusername'"); return $uid; } function onmerge_remove() { $this->init_input(); $username = $this->input('username'); $this->db->query("DELETE FROM ".UC_DBTABLEPRE."mergemembers WHERE appid='".$this->app['appid']."' AND username='$username'"); return NULL; } function _check_username($username) { $username = addslashes(trim(stripslashes($username))); if(!$_ENV['user']->check_username($username)) { return UC_USER_CHECK_USERNAME_FAILED; } elseif(!$_ENV['user']->check_usernamecensor($username)) { return UC_USER_USERNAME_BADWORD; } elseif($_ENV['user']->check_usernameexists($username)) { return UC_USER_USERNAME_EXISTS; } return 1; } function _check_email($email, $username = '') { if(empty($this->settings)) { $this->settings = $this->cache('settings'); } if(!$_ENV['user']->check_emailformat($email)) { return UC_USER_EMAIL_FORMAT_ILLEGAL; } elseif(!$_ENV['user']->check_emailaccess($email)) { return UC_USER_EMAIL_ACCESS_ILLEGAL; } elseif(!$this->settings['doublee'] && $_ENV['user']->check_emailexists($email, $username)) { return UC_USER_EMAIL_EXISTS; } else { return 1; } } function onuploadavatar() { } function onrectavatar() { } function flashdata_decode($s) { } } ?>