예제 #1
0
 /**
  * 进行登录
  */
 public function todoAction()
 {
     // 参数检查
     try {
         $request = $this->getRequest();
         $username = $request->get('username');
         $password = $request->get('password');
     } catch (\Exceptions\Multi $e) {
         $this->json(FALSE, '手机号或密码格式不正确', 20001);
     }
     // 用户检查
     $adminModel = new \AdminModel();
     $adminArr = $adminModel->where('username=:u and password=:p and status=1', $username, $adminModel->enctypePassword($password))->limit(1)->select()->fetchRow();
     if (!$adminArr) {
         $this->json(FALSE, '手机号或密码错误', 20002, $adminModel->enctypePassword($password));
     }
     // 获取用户权限
     $groupModel = new \GroupModel();
     $groupArr = $groupModel->where('id=:id', $adminArr['group_id'])->select()->fetchRow();
     // 计算用户权限
     if ($groupArr['id'] != '*') {
         $rules = $adminArr['attach_rules'] ? explode(',', $adminArr['attach_rules']) : array();
         $rules = implode(',', array_merge(explode(',', $groupArr['rules']), $rules));
     }
     // 保存用户权限
     $session = $this->getSession();
     $session->set('admin.uid', $adminArr['id']);
     $session->set('admin.name', $adminArr['nickname']);
     $session->set('admin.ip', IP::client());
     $session->set('admin.time', time());
     $session->set('admin.avatar', $adminArr['avatar']);
     $session->set('admin.rules', $rules);
     // 登录成功返回
     $this->json(TRUE, '登录成功', 20010);
 }
예제 #2
0
 static function add($data)
 {
     if (!$data) {
         return false;
     }
     $model = new GroupModel();
     $result = $model->add($data);
     return $result;
 }
예제 #3
0
 public function IndexAction()
 {
     Site::$keywords = $this->company->tags;
     Site::$title = $this->company->name . ' на PromSpace';
     $group_tags_array = GroupModel::GetList();
     $region_tags_array = RegionModel::GetList();
     $region_tags_array[0] = 'Вся Россия';
     $group_tags_array[0] = 'Не определено';
     $products = ProductModel::GetAll()->where('company_id = ?', [0 => $this->company->id]);
     $contacts = array();
     if (!User::isLogged()) {
         if ($this->company->open == 2) {
             $contacts = ContactsModel::GetAll()->where('company_id = ?', [0 => $this->company->id]);
         }
         $this->render('nologged', ['company' => $this->company, 'group_tags' => $group_tags_array, 'region_tags' => $region_tags_array, 'contacts' => $contacts, 'products' => $products, 'simmilar' => $this->GetSimmilar()]);
     } elseif ($this->company->id == User::company() or User::admin()) {
         if ($this->company->logo == '') {
             Site::Message('Мы рекомендуем Вам установить логтип для профиля, это сделает его более привлекательным для клиентов');
         }
         $contacts = ContactsModel::GetAll()->where('company_id = ?', [0 => $this->company->id]);
         $this->render('edit', ['company' => $this->company, 'group_tags' => $group_tags_array, 'region_tags' => $region_tags_array, 'contacts' => $contacts, 'products' => $products, 'simmilar' => $this->GetSimmilar()]);
     } else {
         if ($this->company->open == 0 and FavoriteModel::i_friend($this->company->id) or $this->company->open > 0) {
             $contacts = ContactsModel::GetAll()->where('company_id = ?', [0 => $this->company->id]);
         }
         $this->render('index', ['company' => $this->company, 'group_tags' => $group_tags_array, 'region_tags' => $region_tags_array, 'favorite' => FavoriteModel::my_friend($this->company->id) ? 'favorite.png' : 'star.png', 'contacts' => $contacts, 'products' => $products, 'simmilar' => $this->GetSimmilar()]);
     }
 }
 /**
  * url GET /v2/groups
  * @api
  * @return string
  * @throws ApiException
  */
 public function groupsAction()
 {
     $allowFilters = ['offset' => true, 'limit' => true];
     $allowSearch = ['query' => true];
     $params = $this->_fc->getParams();
     $filter = $this->_fc->getFilter();
     $search = $this->_fc->getSearch();
     // check filter
     if ($filter != null) {
         Utilities::checkFilters($filter, $allowFilters);
     }
     if ($search != null) {
         Utilities::checkFilters($search, $allowSearch);
     }
     if (isset($params[0])) {
         if ($search == null) {
             $this->data = GroupModel::getByNameOrId($params[0]);
         }
     } else {
         if ($search == null) {
             $data = GroupModel::getAll($filter['offset'], $filter['limit']);
             $this->data = $data['data'];
             $this->meta = $data['meta'];
         } else {
             $search['query'] = str_replace('%', '', $search['query']);
             $search['query'] = urldecode($search['query']);
             $this->data = GroupModel::searchByName($search['query']);
         }
     }
     return $this->send(200);
 }
예제 #5
0
 /**
  * @desc 分享联赛数据
  */
 public function actionLeagueData()
 {
     $leagueId = Yii::app()->request->getQuery('league', '');
     $teamModel = new TeamModel();
     //找到联赛中的球队
     $leagueTeams = $teamModel->findRowsByRelation("teams", "League", $leagueId);
     $groupModel = new GroupModel();
     $leagueStatModel = new LeagueScoreStatModel();
     $groupTeams = array();
     $groupTeamsArr = array();
     //先找到联赛中的组
     $groupRows = $groupModel->findGroupTeamsByLeague($leagueId);
     //查找联赛中球队的积分信息
     $leagueStatTeams = $leagueStatModel->findTeamByLeagueId($leagueId);
     if (isset($leagueStatTeams[0]->league->name)) {
         $leagueName = $leagueStatTeams[0]->league->name;
     } else {
         $leagueName = '未知联赛';
     }
     foreach ($groupRows as $group) {
         $groupId = $group->objectId;
         //找到每个组的球队
         $groupRelTeams = $teamModel->findRowsByRelation("teams", "Group", $groupId);
         $groupSortTeams = array();
         foreach ($leagueStatTeams as $statTeam) {
             foreach ($groupRelTeams as $team) {
                 $team->groupName = $group->name;
                 $team->groupObjectId = $group->objectId;
                 foreach ($leagueTeams as $lTeam) {
                     if ($lTeam->objectId == $team->objectId) {
                         $lTeam->selected = 1;
                     }
                 }
                 if (isset($statTeam->team->objectId)) {
                     if ($statTeam->team->objectId == $team->objectId) {
                         $team->stat = $statTeam;
                         array_push($groupSortTeams, $team);
                     }
                 }
             }
         }
         $group->relteams = $groupSortTeams;
         $groupTeamsArr = $groupRelTeams;
         array_push($groupTeams, $groupTeamsArr);
     }
     $this->render('leagueData', array('leagueTeams' => $leagueTeams, 'groupRows' => $groupRows, "groupTeams" => $groupTeams, 'leagueName' => $leagueName));
 }
 private static function getAuthInfo()
 {
     if (!isset($_SESSION['authority'])) {
         Sys::D('Group');
         $_SESSION['authority'] = GroupModel::getInheritRule($_SESSION['userinfo']['group_id']);
     }
     return true;
 }
예제 #7
0
 private function ShowList($list)
 {
     $groups_array = GroupModel::GetList();
     $groups_array[0] = 'Не определено';
     $regions_array = RegionModel::GetList();
     $regions_array[0] = 'Вся Россия';
     $companys = SQL::Query('SELECT * FROM `companys` WHERE `id` IN (' . $list . ') ORDER BY `rate` DESC')->fetchAll(PDO::FETCH_OBJ);
     $this->Render('index', ['company' => $this->company, 'companys' => $companys, 'group_tags' => $groups_array, 'region_tags' => $regions_array]);
 }
예제 #8
0
 public function IndexAction()
 {
     $top = CompanyModel::GetAll('id, name')->order('rate DESC', 10);
     $top_groups = GroupModel::GetAll('id, name')->order('qty DESC', 10);
     $last_company = CompanyModel::GetObj()->where('id = (select max(id) from companys)');
     $products = SQL::Query('SELECT * FROM `products` ORDER BY id DESC LIMIT 3')->fetchAll(PDO::FETCH_OBJ);
     $company_count = SQL::Query('SELECT count(*) as total FROM `companys`')->fetch(PDO::FETCH_OBJ)->total;
     $groups_count = SQL::Query('SELECT count(*) as total FROM `groups`')->fetch(PDO::FETCH_OBJ)->total;
     Site::$sub = '<div class="div30 center">' . "\n" . 'Компаний на портале <h1><a href="' . Site::Link('list') . '">' . $company_count . '</a></h1>' . "\n" . '</div>' . "\n" . '<div class="div30 center">' . "\n" . 'Сфер деятельности <h1><a href="' . Site::Link('list/setgroup') . '">' . $groups_count . '</a></h1>' . "\n" . '</div>' . "\n";
     $this->render('index', ['top_arr' => $top, 'top_groups' => $top_groups, 'last' => $last_company, 'products' => $products]);
 }
예제 #9
0
 /**
  * @desc 删除球队
  */
 public function actionDeleteTeam()
 {
     $masterId = CommonFunction::getUserId();
     $leagueId = Yii::app()->request->getPost('leagueId');
     $teamId = Yii::app()->request->getPost('teamId');
     if (empty($leagueId) || empty($teamId)) {
         CommonFunction::ajaxResult(State::$SYS_PARAM_ERROR_CODE, State::$SYS_PARAM_ERROR_MSG);
     }
     $leagueModel = new LeagueModel();
     $groupModel = new GroupModel();
     $Groups = $groupModel->findByLeagueId($leagueId);
     if (empty($Groups)) {
         $res = $leagueModel->removeRelation('teams', 'Team', $leagueId, $teamId);
         if (isset($res->updatedAt)) {
             $resM = $leagueModel->findByMaster($masterId, 1);
             $teamModel = new TeamModel();
             $leagueTeams = $teamModel->findRowsByRelation("teams", "League", $resM[0]->objectId);
             $deleteTeam = $teamModel->findTeamByObjectId($teamId);
             if (isset($deleteTeam[0]->captain->username)) {
                 $uid = $deleteTeam[0]->captain->username;
                 $pushMsg = '你的球队:' . $deleteTeam[0]->name . ',已被联赛【' . $resM[0]->name . '】移除出联赛';
                 CommonFunction::pushAppMsg($uid, $pushMsg);
                 //					$device = new InstallationModel();
                 //					$msg = $device->findByUid($uid);
                 //					if(isset($msg[0]) && !empty($msg[0])){
                 //						$deviceMsg = $msg[0];
                 //						$push = new PushMsgModel();
                 //						$pushMsg = '你的球队:'.$deleteTeam[0]->name.',已被联赛【'.$resM[0]->name.'】移除出联赛';
                 //						if(isset($deviceMsg->deviceToken) && isset($deviceMsg->deviceType) && $deviceMsg->deviceType == 'ios'){
                 //							$push->createIosPush($deviceMsg->deviceToken,$pushMsg);
                 //						}elseif(isset($deviceMsg->installationId) && isset($deviceMsg->deviceType) && $deviceMsg->deviceType == 'android'){
                 //							$push->createAndroidPush($deviceMsg->installationId,$pushMsg);
                 //						}
                 //					}
             }
         }
         CommonFunction::ajaxResult(State::$SUSSION_CODE, State::$SUSSION_MSG, array('leagueTeams' => $leagueTeams));
     } else {
         CommonFunction::ajaxResult(State::$TEAM_DELETE_ERROR_CODE, State::$TEAM_DELETE_ERROR_MSG);
     }
 }
예제 #10
0
 public function DeletemyaccountAction()
 {
     if (!UserModel::CheckPassword(User::GetID(), Request::post('oldpass'))) {
         Site::Message('Пароль указан не верно');
         $this->Render('index', ['company' => $this->company]);
     } else {
         GroupModel::Dec($this->company->group_id);
         CompanyModel::DeleteCompany($this->company->id);
         Site::Message('Ваш профиль был полностью удалён с сайта, мы очень сожалеем =( ');
         $this->route();
     }
 }
예제 #11
0
 public function DeleteAction()
 {
     $id = Request::get('id', 0);
     $company = CompanyModel::GetObj()->id($id);
     if ($company->id > 0) {
         GroupModel::Dec($company->group_id);
         CompanyModel::DeleteCompany($company->id);
         Site::Message('Компания ' . $company->name . ' успешно удалена');
         $this->route('list');
     } else {
         Site::Message('Ошибочный идентификатор компании');
         $this->route();
     }
 }
예제 #12
0
 public function beforeAction($action)
 {
     if (parent::beforeAction($action)) {
         if (Yii::app()->user->isGuest) {
             $this->redirect(array('site/login'));
         } else {
             $userInfo = MemberModel::model()->find('username=:username', array(':username' => Yii::app()->user->name));
             foreach (GroupModel::model()->findAll() as $g) {
                 $group[$g->id] = $g;
             }
             Yii::app()->session['group'] = $group;
             Yii::app()->session['userInfo'] = array('uid' => $userInfo->uid, 'username' => $userInfo->username, 'nickname' => $userInfo->nickname, 'lv' => $userInfo->lv, 'groupId' => $userInfo->groupId);
         }
     }
     return true;
 }
예제 #13
0
파일: AdminMenu.php 프로젝트: 00606/wechat
 public static function GetUserMenu()
 {
     $userInfo = Yii::app()->session['userInfo'];
     $groupInfo = GroupModel::model()->find(array('condition' => 'group_id=:group_id', 'params' => array('group_id' => $userInfo['group_id'])));
     $actionArray = explode(',', $groupInfo->action);
     $menuList = self::$menuList;
     foreach ($menuList as $k => $m) {
         if (!in_array($m['act'], $actionArray)) {
             unset($menuList[$k]);
             foreach ($m['action'] as $sk => $subMenu) {
                 if (!in_array($subMenu['act'], $actionArray)) {
                     unset($menuList[$k]['action'][$sk]);
                 }
             }
         }
     }
     return $menuList;
 }
예제 #14
0
파일: Purview.php 프로젝트: nbaiwan/yav
 public function getPurviewsByOwner($group_id, $user_id)
 {
     $_r = array();
     //
     $role = GroupModel::inst()->getGroupsByCache($group_id);
     $group_purviews = json_decode($role['purviews'], true);
     //
     $user = UserModel::inst()->getUserById($user_id);
     $user_purviews = json_decode($user['purviews'], true);
     //合并权限
     $purviews = is_array($group_purviews) ? array_merge($group_purviews, $user_purviews) : $user_purviews;
     //
     $_r = array();
     foreach ($this->getPurviewsByCache() as $_k => $_v) {
         if ($role['purviews'] == 'all' || in_array($_v['purview_id'], $purviews)) {
             $_r[] = $_v;
         }
     }
     return $_r;
 }
예제 #15
0
파일: Movie.php 프로젝트: nbaiwan/yav
 /**
  * Updates a particular model.
  * If update is successful, the browser will be redirected to the 'view' page.
  * @param integer $id the ID of the model to be updated
  */
 public function updateAction($id)
 {
     $user = UserModel::getUserById($id);
     if ($user) {
         $user['purviews'] = $user['purviews'] ? json_decode($user['purviews'], true) : array();
         $user['purviews'] = is_array($user['purviews']) ? array($user['purviews']) : array();
     }
     if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['Admin'])) {
         $administrator = $user['user_name'];
         $_POST['Admin']['purviews'] = isset($_POST['Admin']['purviews']) ? json_encode($_POST['Admin']['purviews']) : json_encode(array());
         $password = empty($_POST['Admin']['password']) ? $user['password'] : md5(md5($_POST['Admin']['password']) . $user['salt']);
         $allow_groups = GroupModel::getGroupsByOwner($this->user->group_id);
         if ($user['user_id'] == $this->user->id) {
             $update_data = array('user_name' => $_POST['Admin']['user_name'], 'realname' => $_POST['Admin']['realname'], 'email' => $_POST['Admin']['email'], 'password' => $password, 'lasttime' => $_SERVER['REQUEST_TIME']);
         } else {
             $allow_groups = GroupModel::getGroupsByOwner($this->user->group_id);
             if ($allow_groups[$this->user->group_id]['purviews'] != 'all' && (!isset($allow_groups[$_POST['Admin']['group_id']]) || $_POST['Admin']['group_id'] == $this->user->group_id)) {
                 $this->redirect[] = array('text' => '', 'href' => $this->forward);
                 $this->message('您无权限在该角色组下添加新用户', self::MSG_ERROR, true);
             }
             $update_data = array('user_name' => $_POST['Admin']['user_name'], 'realname' => $_POST['Admin']['realname'], 'email' => $_POST['Admin']['email'], 'password' => $password, 'group_id' => isset($_POST['Admin']['group_id']) ? $_POST['Admin']['group_id'] : $user['group_id'], 'purviews' => isset($_POST['Admin']['purviews']) ? $_POST['Admin']['purviews'] : $user['purviews'], 'user_rank' => isset($_POST['Admin']['user_rank']) ? $_POST['Admin']['user_rank'] : $user['user_rank'], 'status' => isset($_POST['Admin']['status']) ? $_POST['Admin']['status'] : $user['status'], 'lasttime' => $_SERVER['REQUEST_TIME']);
         }
         $flag = $this->db->update('{{admin}}', $update_data, 'user_id=:user_id', array(':user_id' => $id));
         if ($flag) {
             //记录操作日志
             $message = '{user_name}修改了管理员{administrator}信息';
             if ($administrator != $_POST['Admin']['user_name']) {
                 $message .= ',改名为:{new_administrator}';
             }
             $data = array('administrator' => $administrator, 'new_administrator' => $_POST['Admin']['user_name'], 'data' => $_POST['Admin']);
             UserLogsModel::inst()->add('Admin/Admin', $id, 'Insert', 'success', $message, $data);
             $this->redirect[] = array('text' => '', 'href' => $this->forward);
             $this->message('修改管理员资料完成', self::MSG_SUCCESS, true);
         }
     }
     $groups = Group::getGroupsByOwner($this->user->group_id);
     $purviews = PurviewModel::getPurviewsByOwner($this->user->group_id, $this->user->id);
     $this->render('update', array('user' => $user, 'groups' => $groups, 'purviews' => $purviews));
 }
 private function getAllGroups($offset, $limit)
 {
     $this->data = GroupModel::getAll($offset, $limit);
     return $this->send(200);
 }
예제 #17
0
파일: User.php 프로젝트: nbaiwan/yav
 /**
  * @param integer pagesize
  * @param integer CID
  * @param integer CState
  * @param integer GState
  * 
  * @param string  order
  * 
  * @return array $rows
  */
 public function Pages($params = array())
 {
     //设置默认参数
     $_defaults_params = array('allow_cache' => false, 'page' => isset($_GET['page']) ? intval($_GET['page']) : 1, 'pagesize' => 15);
     $params = array_merge($_defaults_params, $params);
     //有开启缓存功能,则从缓存中取数据, 如果有数据,则直接返回结果
     if ($params['allow_cache'] && isset($this->cache)) {
         $cache_key = 'user.pages.' . serialize($params);
         $ret = $this->cache->get($_cache_key);
         if ($ret && is_array($ret)) {
             return $ret;
         }
     }
     //添加条件
     $builds = array('select' => 'COUNT(u.user_id) AS COUNT', 'from' => array('{{user}}', 'u'), 'leftJoin' => array('{{group}}', 'g', '`g`.`group_id`=`u`.`group_id`'));
     if (isset($params['status']) && !empty($params['status'])) {
         $builds['where'][] = array('AND', 'u.status=:status');
         $sql_params = array(':status' => $params['status']);
     } else {
         $builds['where'][] = array('AND', 'u.status>:status');
         $sql_params = array(':status' => self::STAT_STATUS_DELETED);
     }
     if (isset($params['group_id']) && !empty($params['group_id'])) {
         $groups = GroupModel::inst()->getGroupsByOwner($params['group_id']);
         $group_ids = array();
         $_addons_groups = array();
         foreach ($groups as $_k => $_v) {
             $_addons_groups[] = array("OR", "`u`.`group_id`=:group_id_{$_k}");
             $sql_params[":group_id_{$_k}"] = $_v['group_id'];
         }
         $builds['where'][] = array('AND', $_addons_groups);
     }
     if (isset($params['search_key']) && $params['search_key']) {
         $builds['where'][] = array('AND', array('OR LIKE', 'u.user_name', ':search_key_1'), array('OR LIKE', 'u.realname', ':search_key_2'), array('OR LIKE', 'u.email', ':search_key_3'));
         $sql_params[':search_key_1'] = "%{$params['search_key']}%";
         $sql_params[':search_key_2'] = "%{$params['search_key']}%";
         $sql_params[':search_key_3'] = "%{$params['search_key']}%";
     }
     $sql = $this->buildQuery($builds);
     //统计数量
     $count = $this->db->queryScalar($sql, $sql_params);
     //分页处理
     $pages = new CPagination($count);
     //设置分页大小
     $pages->pageSize = $params['pagesize'];
     //清空前面执行过的SQL
     if (isset($params['orderby']) && $params['orderby']) {
         $builds['order'] = $params['orderby'];
     } else {
         $builds['order'] = array('`r`.`role_rank` ASC', '`u`.`user_rank` ASC', '`u`.`user_id` ASC');
     }
     $builds['select'] = 'u.user_id, u.user_name, u.realname, u.email, u.user_id, u.group_id, g.group_name, u.logintimes, u.lastvisit, u.lastip, u.user_rank, u.lasttime, u.dateline, u.is_system, u.status';
     $pages->applyLimit($builds);
     $sql = $this->buildQuery($builds);
     $result['pages'] = $pages;
     $result['rows'] = $this->db->queryAll($sql, $sql_params);
     //有开启缓存,则把结果添加到缓存中
     if ($params['allow_cache'] && isset($this->cache)) {
         $cache_time_out = SettingModel::inst()->getSettingCache('ADMIN_LOGS_TIME_OUT');
         $this->cache->add($cache_key, $result, $cache_time_out);
         unset($cache_time_out, $cache_key);
     }
     return $result;
 }
예제 #18
0
 /**
  * Returns the data model based on the primary key given in the GET variable.
  * If the data model is not found, an HTTP exception will be raised.
  * @param integer the ID of the model to be loaded
  */
 public function loadModel($id)
 {
     $model = GroupModel::model()->findByPk($id);
     if ($model === null) {
         throw new CHttpException(404, 'The requested page does not exist.');
     }
     return $model;
 }
예제 #19
0
 /**
  * url GET /v2/groups
  * @api
  * @return string
  * @throws ApiException
  */
 public function groupsAction()
 {
     $allowFilters = ['offset' => true, 'limit' => true, 'showAll' => true, 'showProperties' => true, 'simpleResult' => true];
     $allowSearch = ['query' => true];
     $params = $this->_fc->getParams();
     $filter = $this->_fc->getFilter();
     $search = $this->_fc->getSearch();
     // check filters
     Utilities::checkFilters($filter, $allowFilters);
     Utilities::checkFilters($search, $allowSearch);
     if (isset($params[0])) {
         if ($search == null) {
             $this->data = GroupModel::getByNameOrId($params[0]);
         }
     } else {
         if ($search == null) {
             $showProperties = null;
             $hideProperties = null;
             $hidePropertyNames = false;
             if (isset($filter["showAll"])) {
                 $offset = null;
                 $limit = null;
                 //$showProperties = ['group_full_name'=>true];
                 $showProperties = is_array($filter["showProperties"]) ? $filter["showProperties"] : [];
                 $hidePropertyNames = isset($filter["simpleResult"]) ? $filter["simpleResult"] : false;
             } else {
                 $offset = isset($filter['offset']) ? abs(intval($filter['offset'])) : 0;
                 $limit = isset($filter['limit']) ? abs(intval($filter['limit'])) : 100;
                 if ($limit < 1) {
                     $limit = 1;
                 }
                 if ($limit > 100) {
                     $limit = 100;
                 }
             }
             $data = GroupModel::getAll($offset, $limit, $showProperties, $hideProperties, $hidePropertyNames);
             $this->data = $data['data'];
             $this->meta = $data['meta'];
         } else {
             $search['query'] = str_replace('%', '', $search['query']);
             $search['query'] = urldecode($search['query']);
             $this->data = GroupModel::searchByName($search['query']);
         }
     }
     return $this->send(200);
 }
예제 #20
0
/**
 * Reads the Help articles from default db and returns the array of pages.
 */
function getWikiHelpPages()
{
    $help_pages = array();
    require_once BASE_DIR . "/models/datasources/sqlite3_manager.php";
    $default_dbm = new Sqlite3Manager();
    $default_dbm->connect("", "", "", BASE_DIR . "/data/default.db");
    if (!$default_dbm) {
        return false;
    }
    $group_model = new GroupModel(DB_NAME, true);
    $group_model->db = $default_dbm;
    $page_list = $group_model->getPageList(HELP_GROUP_ID, "en-US", '', 0, 200);
    foreach ($page_list[1] as $page) {
        if (isset($page['TITLE'])) {
            $page_info = $group_model->getPageInfoByName(HELP_GROUP_ID, $page['TITLE'], "en-US", "api");
            $page_content = str_replace("&amp;", "&", $page_info['PAGE']);
            $page_content = html_entity_decode($page_content, ENT_QUOTES, "UTF-8");
            $help_pages[$page['TITLE']] = $page_content;
        }
    }
    return $help_pages;
}
예제 #21
0
 public function actionUserUpdate($id)
 {
     $model = UserModel::model()->findByPk($id);
     $group = GroupModel::model()->findall();
     foreach ($group as $v) {
         $groupList[$v->group_id] = $v->name;
     }
     if (isset($_POST['UserModel'])) {
         $model->attributes = $_POST['UserModel'];
         $model->scenario = 'update';
         if ($model->validate()) {
             if ($_POST['UserModel']['newPswd']) {
                 $model->pswd = md5($_POST['UserModel']['newPswd']);
             }
             $model->save();
             $this->redirect(array('group/user'));
         }
     }
     $this->render('userUpdate', array('model' => $model, 'group' => $groupList));
 }
예제 #22
0
 /**
  * Updates a particular model.
  * If update is successful, the browser will be redirected to the 'view' page.
  * @param integer $id the ID of the model to be updated
  */
 public function actionUpdate($id)
 {
     $model = $this->loadModel($id);
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['CldModel'])) {
         $model->attributes = $_POST['CldModel'];
         if ($model->save()) {
             $this->redirect(array('view', 'id' => $model->id));
         }
     }
     $tmpArr = GroupModel::model()->findAll();
     $smsGroup = array();
     foreach ($tmpArr as $smsG) {
         $smsGroup[$smsG->id] = $smsG->name;
     }
     $this->render('update', array('model' => $model, 'smsGroup' => $smsGroup, 'group_id' => $model->group_id));
 }
예제 #23
0
 /**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCreate()
 {
     $model = new PhoneModel();
     $message = "";
     $errorList = array();
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['source_name'], $_POST['group_id'])) {
         $fileName = _APP_PATH_ . DS . "data" . DS . "tmp" . DS . $_POST['source_name'];
         $group_id = $_POST['group_id'];
         //$fileName = "D:\\chacha_cloud\\src\\trunk\chacha\data\\tmp\\20120713170547_phone_list.xls";
         try {
             require_once 'excel_reader2.php';
             $data = new Spreadsheet_Excel_Reader($fileName, true, "UTF-8");
             // khoi tao doi tuong doc file excel
             $rowsnum = $data->rowcount($sheet_index = 0);
             // lay so hang cua sheet
             $colsnum = $data->colcount($sheet_index = 0);
             // lay so cot cua sheet
             for ($i = 2; $i <= $rowsnum; $i++) {
                 // doc tu hang so 2 vi hang 1 la tieu de roi!
                 $phoneNum = $data->val($i, 1);
                 // xuat cot so 1 va cot so 2 tren cung 1 hang
                 // check so dien thoai xem co dung cua Vinaphone ko
                 try {
                     $phoneNum = Formatter::formatPhone($phoneNum);
                     if (Formatter::isVinaphoneNumber($phoneNum)) {
                         $model->phone = "{$phoneNum}";
                         $model->group_id = $group_id;
                         $model->status = 0;
                         $model->created_time = date("Y-m-d H:i:s");
                         var_dump($model->phone);
                         try {
                             if ($model->save()) {
                                 $message = yii::t('SpamModule', 'Upload thành công');
                             } else {
                                 print_r($model->getErrors());
                                 exit;
                             }
                         } catch (Exception $exc) {
                             echo $exc->getTrace();
                         }
                     } else {
                         //echo so dien thoai ko dung
                         $errorList[] = $phoneNum;
                     }
                 } catch (Exception $exc) {
                     echo $exc->getMessage();
                 }
             }
         } catch (Exception $exc) {
             echo $exc->getMessage();
         }
     }
     $uploadModel = new XUploadForm();
     $tmpArr = GroupModel::model()->findAll();
     $smsGroup = array();
     foreach ($tmpArr as $smsG) {
         $smsGroup[$smsG->id] = $smsG->name;
     }
     $this->render('create', array('model' => $model, 'uploadModel' => $uploadModel, 'message' => $message, 'smsGroup' => $smsGroup, 'errorList' => $errorList));
 }
예제 #24
0
 /**
  * @param string|int $teacher_name
  * @param string $cond
  * @return array
  * @throws ApiException
  */
 public static function getAllByTeacherNameOrTeacherId($teacher_name, $cond = "")
 {
     $result = array();
     //hide some properties
     $hideFilter = array('group_id' => true);
     Registry::set('LessonModelHideFilter', $hideFilter);
     $teacher_name = urldecode(trim($teacher_name));
     /** @var PDO $db */
     $db = Registry::get('db');
     $teacher_id = $db->query("\r\n            SELECT teacher_id FROM " . TeacherModel::TABLE . "\r\n                WHERE (teacher_name = " . $db->quote($teacher_name) . " OR teacher_id = " . $db->quote($teacher_name) . ")\r\n        ")->fetchColumn();
     $count = 0;
     if ($teacher_id) {
         $count = $db->query("\r\n            SELECT COUNT(*) FROM " . LessonModel::TABLE . " AS t1\r\n                JOIN " . TeacherModel::RELATION_TABLE . " as t2 USING(" . LessonModel::PRIMARY_KEY . ")\r\n                    WHERE t2." . TeacherModel::PRIMARY_KEY . " = '" . abs(intval($teacher_id)) . "' {$cond}\r\n            ")->fetchColumn();
     }
     if ($count > 0) {
         $query = $db->query("\r\n               SELECT *\r\n                   FROM " . LessonModel::TABLE . " AS t1\r\n                    JOIN " . TeacherModel::RELATION_TABLE . " as t2 USING(" . LessonModel::PRIMARY_KEY . ")\r\n                        WHERE t2." . TeacherModel::PRIMARY_KEY . " = '" . abs(intval($teacher_id)) . "' {$cond}\r\n                            GROUP BY t1.day_number,t1.lesson_number,t1.lesson_week\r\n                                ORDER BY t1.lesson_week,t1.day_number,t1.lesson_number ASC\r\n            ");
         while ($data = $query->fetch(PDO::FETCH_ASSOC)) {
             $lessonModel = new LessonModel();
             $lessonModel->unpack($data);
             //$lessonModel->teachers = TeacherModel::getAllByLessonId($lessonModel->lesson_id);
             //load rooms
             $lessonModel->rooms = RoomModel::getAllByLessonId($lessonModel->lesson_id);
             //load groups
             $q = $db->query("\r\n                    SELECT t1.* FROM " . GroupModel::TABLE . " as t1\r\n                        JOIN " . LessonModel::TABLE . " as t2 USING(" . GroupModel::PRIMARY_KEY . ")\r\n                            WHERE t2.day_number = '" . $lessonModel->day_number . "'\r\n                            AND t2.lesson_number = '" . $lessonModel->lesson_number . "'\r\n                            AND t2.teacher_name = " . $db->quote($lessonModel->teacher_name) . "\r\n                            AND t2.lesson_week = '" . $lessonModel->lesson_week . "'\r\n                ");
             $groupsRes = array();
             while ($groupsData = $q->fetch(PDO::FETCH_ASSOC)) {
                 $group = new GroupModel();
                 $group->unpack($groupsData);
                 $groupsRes[] = $group->toArray();
             }
             $m = $lessonModel->toArray();
             $m["groups"] = $groupsRes;
             $result[] = $m;
         }
     } else {
         throw new ApiException("Lessons not found");
     }
     return $result;
 }
예제 #25
0
 public function NewgroupAction()
 {
     $newgroup = Request::post('group');
     if (mb_strlen($newgroup) < 5) {
         Site::Message('Название группы не может быть менее 5-и символов');
         $this->GroupAction();
     } elseif (GroupModel::isExists($newgroup, 'name')) {
         $group = GroupModel::GetObj()->where('name = ?', [0 => $newgroup]);
         $group->qty++;
         $group->save();
         $this->company->group_id = $group->id;
         $this->company->save();
         $this->RegionAction();
     } else {
         $group = new GroupModel();
         $group->name = $newgroup;
         $group->qty = '1';
         $group->save();
         $group = GroupModel::GetObj()->where('name = ?', [0 => $newgroup]);
         $this->company->group_id = $group->id;
         $this->company->save();
         $this->RegionAction();
     }
 }
 public function setGroup(GroupModel $group)
 {
     $this->group_id = $group->getId();
 }
예제 #27
0
파일: Group.php 프로젝트: nbaiwan/yav
 public function indexAction()
 {
     $this->getView()->assign(array('groups' => GroupModel::inst()->getGroupsByOwner($this->user->group_id)));
 }
예제 #28
0
 /**
  * @param string $query
  * @return array
  * @throws ApiException
  */
 public static function searchByQuery($query)
 {
     $result = array();
     /** @var PDO $db */
     $db = Registry::get('db');
     $query = $db->query($query);
     while ($data = $query->fetch(PDO::FETCH_ASSOC)) {
         $groupModel = new GroupModel();
         $groupModel->unpack($data);
         $result[] = $groupModel->toArray();
     }
     if (!count($result)) {
         throw new ApiException("Groups not found");
     }
     return $result;
 }
예제 #29
0
            </tr>
            <tr>
                <td>                    
			<fieldset>
				<input id="quicksearch" type="text" style="display:none;margin:4px 0" name="search" value="" id="id_search" placeholder="Tìm nhóm Spam" autofocus />
			</fieldset>                    
                </td>
            </tr>
            
        </table>
        <br>
        <div id="group" style="display:none;height: 200px; overflow-y: scroll; width: 100%; padding-top: 10px; border-top: 2px solid rgb(51, 51, 51);">
                    <?php 
$cri = new CDbCriteria();
$cri->condition = " id != {$group_id}";
$group = GroupModel::model()->findAll($cri);
foreach ($group as $gr) {
    echo "<div class='igroup'><input type='checkbox' name='group_list[]' value={$gr->id} ><span>" . $gr->name . "</span></div>";
}
?>
                </div>

        <br>
        <table style="float:left;width:100%;">
            <tr>
                <td style="vertical-align: middle;" ><b><?php 
echo CHtml::label(Yii::t('admin', 'Thời gian'), "");
?>
</b></td>
                <td style="vertical-align: middle;">
                    <div class="row created_time" style="position: relative;float:left"> 
예제 #30
0
 /**
  * @desc 编辑赛事结果
  */
 public function actionResultManage()
 {
     $masterId = CommonFunction::getUserId();
     $leagueModel = new LeagueModel();
     //判断用户是否有管理联赛的权限
     $res = $leagueModel->allowEditLeague($masterId);
     $leagueId = $res[0]->objectId;
     $teamModel = new TeamModel();
     $tournamentModel = new TournamentModel();
     $playScoreModel = new PlayerScoreModel();
     $groupModel = new GroupModel();
     $leagueTeams = $teamModel->findRowsByRelation("teams", "League", $leagueId);
     //先找到联赛中的组
     $groupRows = $groupModel->findByLeagueId($leagueId);
     //var_dump($gruopRows);exit;
     $groupTeams = array();
     $groupTeamsArr = array();
     if (!empty($groupRows)) {
         foreach ($groupRows as $group) {
             $groupId = $group->objectId;
             $groupRelTeams = $teamModel->findRowsByRelation("teams", "Group", $groupId);
             foreach ($groupRelTeams as $team) {
                 $team->groupName = $group->name;
                 $team->groupObjectId = $group->objectId;
                 foreach ($leagueTeams as $lTeam) {
                     if ($lTeam->objectId == $team->objectId) {
                         $lTeam->selected = 1;
                     }
                 }
             }
             $groupTeamsArr = $groupRelTeams;
             array_push($groupTeams, $groupTeamsArr);
         }
     }
     //var_dump($groupTeams);exit;
     $games = array();
     $games = $tournamentModel->findByLeague($leagueId);
     $leagueGamesData = $playScoreModel->findByLeague($leagueId);
     //var_dump($leagueGamesData);exit;
     foreach ($games as $k => $game) {
         if (isset($game->start_time->iso)) {
             $fromStartTime = time() - strtotime($game->start_time->iso);
             //			echo $fromStartTime.'||'.$game->start_time->iso.'||'.date ( "Y-m-d H:i:s" ).'||'.strtotime($game->start_time->iso).'<br/>';
             if ($fromStartTime > 7200 && (!isset($game->isVerify) || !$game->isVerify)) {
                 $game->allowResultEdit = true;
             } else {
                 $game->allowResultEdit = false;
             }
             //比赛开始后2小时,认为比赛结束
             if ($fromStartTime < 7200) {
                 //echo (time() - strtotime($game->start_time->iso)).'<br/>'.$game->start_time->iso;
                 unset($games[$k]);
             } else {
                 foreach ($leagueGamesData as $k => $gameData) {
                     if (isset($gameData->competition->objectId) && isset($game->objectId) && isset($gameData->team->objectId) && isset($game->home_court->objectId) && $gameData->competition->objectId == $game->objectId && $gameData->team->objectId == $game->home_court->objectId) {
                         //这场比赛的主队球员进球情况
                         $game->home_court->playerscore[] = array('player' => empty($gameData->player->nickname) ? '匿名' : $gameData->player->nickname, 'score' => $gameData->goals);
                     } elseif (isset($gameData->competition->objectId) && isset($game->objectId) && isset($gameData->team->objectId) && isset($game->opponent->objectId) && $gameData->competition->objectId == $game->objectId && $gameData->team->objectId == $game->opponent->objectId) {
                         //这场比赛的客队球员进球情况
                         $game->opponent->playerscore[] = array('player' => empty($gameData->player->nickname) ? '匿名' : $gameData->player->nickname, 'score' => $gameData->goals);
                     }
                 }
             }
         } else {
             unset($games[$k]);
         }
     }
     $this->render('resultManage', array('leagueTeams' => $leagueTeams, 'groupTeams' => $groupTeams, 'games' => $games));
 }