예제 #1
0
 public function run()
 {
     /* @var $userGroup PwUserGroups */
     $userGroup = Wekit::load('usergroup.PwUserGroups');
     $groups = $userGroup->getAllGroups();
     $groupTypes = $userGroup->getTypeNames();
     Wind::import('SRV:credit.bo.PwCreditBo');
     /* @var $pwCreditBo PwCreditBo */
     $pwCreditBo = PwCreditBo::getInstance();
     $config = Wekit::C()->getValues('register');
     if (!$config['active.field']) {
         $config['active.field'] = array();
     }
     $wconfig = WindidApi::C('reg');
     $config['security.username.min'] = $wconfig['security.username.min'];
     $config['security.username.max'] = $wconfig['security.username.max'];
     $config['security.password.min'] = $wconfig['security.password.min'];
     $config['security.password.max'] = $wconfig['security.password.max'];
     $config['security.password'] = $wconfig['security.password'];
     $config['security.ban.username'] = $wconfig['security.ban.username'];
     $this->setOutput($config, 'config');
     $this->setOutput($pwCreditBo->cType, 'credits');
     $this->setOutput($groups, 'groups');
     $this->setOutput($groupTypes, 'groupTypes');
 }
예제 #2
0
 protected function _getWindidMsg($result)
 {
     $errorCode = $result->getCode();
     $var = array();
     if ($errorCode == -2) {
         $config = WindidApi::C('reg');
         $var = array('{min}' => $config['security.username.min'], '{max}' => $config['security.username.max']);
     }
     if ($errorCode == -11) {
         $config = WindidApi::C('reg');
         $var = array('{min}' => $config['security.password.min'], '{max}' => $config['security.password.max']);
     }
     return new PwError('WINDID:code.' . $errorCode, $var);
 }
예제 #3
0
 /**
  * 显示用户名的验证支持信息
  * 
  * @return array(string, args)
  */
 public static function buildNameShowMsg()
 {
     $config = WindidApi::C('reg');
     $_name = 'USER:user.error.username';
     $_min = $config['security.username.min'];
     $_max = $config['security.username.max'];
     return array('USER:user.error.username', array('{min}' => $_min, '{max}' => $_max));
 }
예제 #4
0
 /**
  * 创建创始人
  *
  * @param string $manager
  * @param string $manager_pwd
  * @param string $manager_email
  * @return PwError
  */
 private function _writeFounder($manager, $manager_pwd, $manager_email)
 {
     Wekit::C()->reload('windid');
     Wind::import('SRV:user.dm.PwUserInfoDm');
     $data = array($manager => md5($manager_pwd));
     WindFile::savePhpData($this->_getFounderFile(), $data);
     //TODO 创始人添加:用户的配置信息先更新。添加完之后再更新回 开始
     $config = new PwConfigSet('register');
     $config->set('security.username.max', 15)->set('security.ban.username', '')->set('security.username.min', 1)->set('security.password.max', 25)->set('security.password.min', 1)->flush();
     Wind::import('WINDID:service.config.srv.WindidConfigSet');
     $windidConfig = new WindidConfigSet('reg');
     $windidConfig->set('security.ban.username', '')->set('security.password.max', 25)->set('security.password.min', 1)->set('security.username.max', 15)->set('security.username.min', 1)->flush();
     Wekit::C()->reload('register');
     WindidApi::C()->reload('reg');
     //TODO结束
     $userDm = new PwUserInfoDm();
     $userDm->setUsername($manager)->setPassword($manager_pwd)->setEmail($manager_email)->setGroupid(3)->setRegdate(Pw::getTime())->setLastvisit(Pw::getTime())->setRegip(Wind::getApp()->getRequest()->getClientIp())->setGroups(array('3' => '0'));
     //特殊操作  gao.wanggao
     if (true !== ($result = $userDm->beforeAdd())) {
         $this->showError($result->getError());
     }
     if (($uid = Wekit::load('WSRV:user.WindidUser')->addUser($userDm->dm)) < 1) {
         $this->showError('WINDID:code.' . $uid);
     }
     $userDm->setUid($uid);
     Wind::import('SRV:user.PwUser');
     $daoMap = array();
     $daoMap[PwUser::FETCH_MAIN] = 'user.dao.PwUserDao';
     $daoMap[PwUser::FETCH_DATA] = 'user.dao.PwUserDataDao';
     $daoMap[PwUser::FETCH_INFO] = 'user.dao.PwUserInfoDao';
     Wekit::loadDaoFromMap(PwUser::FETCH_ALL, $daoMap, 'PwUser')->addUser($userDm->getSetData());
     //特殊操作
     //$uid = Wekit::load('user.PwUser')->addUser($userDm);
     //TODO 创始人添加完成:恢复默认数据:开始
     $config = new PwConfigSet('register');
     $config->set('security.username.max', 15)->set('security.ban.username', '创始人,管理员,版主,斑竹,admin')->set('security.username.min', 3)->set('security.password.max', 15)->set('security.password.min', 6)->flush();
     $windidConfig = new WindidConfigSet('reg');
     $windidConfig->set('security.ban.username', '创始人,管理员,版主,斑竹,admin')->set('security.password.max', 15)->set('security.password.min', 6)->set('security.username.max', 15)->set('security.username.min', 3)->flush();
     //TODO 结束
     if ($uid instanceof PwError) {
         $this->showError($uid->getError());
     }
     Wekit::load('user.PwUserBelong')->update($uid, array(3 => 0));
     //特殊操作  gao.wanggao
     $this->_defaultAvatar($uid);
     $this->_defaultAvatar(0);
     //特殊操作
     //Wekit::load('user.srv.PwUserService')->restoreDefualtAvatar($uid);//用户的默认头像需要设置
     //Wekit::load('user.srv.PwUserService')->restoreDefualtAvatar(0);//游客的默认头像需要设置
     //站点统计信息
     Wind::import('SRV:site.dm.PwBbsinfoDm');
     $dm = new PwBbsinfoDm();
     $dm->setNewmember($manager)->addTotalmember(1);
     Wekit::load('site.PwBbsinfo')->updateInfo($dm);
     return $uid;
 }