public function saveAction() { if (!$this->isXmlHttpRequest()) { throw new \Exception('Неверный тип запроса!'); } $usersModel = new Users(); $data = $this->request->getPost(); if (!isset($data['id']) || !isset($data['roles_id']) || !isset($data['user']) || !isset($data['password'])) { throw new \Exception('Неверный тип запроса!'); } if ($data['action'] == 'add' && (!isset($data['lastname']) || !isset($data['firstname']) || !isset($data['secondname']) || !isset($data['org_name']))) { throw new \Exception('Неверный тип запроса!'); } $data['id'] = (int) $data['id']; if (!$data['id'] && $data['action'] != 'add') { throw new \Exception('Неверный идентификатор пользователя!'); } $data['roles_id'] = (int) $data['roles_id']; if ($data['roles_id'] == 0) { throw new \Exception('Не выбраны права пользователя!'); } $data['user'] = trim($data['user']); if ($data['user'] == '') { throw new \Exception('Не заполнено обязательное поле Email!'); } $data['password'] = trim($data['password']); if ($data['password'] == '' && $data['action'] != 'add') { unset($data['password']); } if (isset($data['password']) && mb_strlen($data['password']) < 6) { throw new \Exception('Пароль должен быть больше 6 символов!'); } if ($data['action'] == 'add') { $data['lastname'] = trim($data['lastname']); if ($data['lastname'] == '') { throw new \Exception('Не заполнено обязательное поле Фамилия!'); } $data['firstname'] = trim($data['firstname']); if ($data['firstname'] == '') { throw new \Exception('Не заполнено обязательное поле Имя!'); } $data['secondname'] = trim($data['secondname']); if ($data['secondname'] == '') { throw new \Exception('Не заполнено обязательное поле Отчество!'); } $data['org_name'] = trim($data['org_name']); if ($data['org_name'] == '') { throw new \Exception('Не заполнено обязательное поле Организация!'); } } unset($data['action']); $data['id'] = $usersModel->save($data); $usersModel->setWhere(array('id' => $data['id'])); $uData = $usersModel->select(); $this->view->data = $uData[0]; $rolesModel = new Roles(); $this->view->roles = $rolesModel->select(); }
public function getformAction() { if (!$this->isXmlHttpRequest()) { throw new \Exception('Неверный тип запроса!'); } $project = false; if (!is_null($this->request->getPost('id'))) { $id = (int) $this->request->getPost('id'); $projectsModel = new Projects(); $project = $projectsModel->getProjectsDataForEdit($id); $usersModel = new Users(); $usersModel->setWhere('`roles_id` IN(1,2)'); $this->view->initiators = $usersModel->select(); $usersModel->setWhere('`roles_id` IN(1,3)'); $this->view->executors = $usersModel->select(); $executorsModel = new Executors(); $this->view->selectedExecutors = $executorsModel->getExecutorsAsArrayByProject($id); $statusModel = new Status(); $this->view->statuses = $statusModel->select(); } $this->view->project = $project; }
private function checkUser($id, $name) { Users::redirectIf(false); $users = Users::select()->where('id', $id)->andWhere('nickname', $name)->orWhere('user_key', $name)->get(0, 1); if (empty($users)) { Router::redirect('error.error404'); } $user = $users[0]; if (!Users::canUpdate($user)) { Router::redirect('home.index'); } return $user; }
public function show($id) { $cacheTag = ['users']; $cacheKey = $id; $response = Cache::tags($cacheTag)->remember($cacheKey, 60 * 24 * 7, function () use($id) { $_model = Users::select(['name', 'lastname', 'email', 'active', 'confirmed', 'avatar', 'created_at', 'updated_at'])->where('company_id', config('global.companies.current.id'))->where('id', $id); if ($_model->count() > 0) { return $_model->first()->toArray(); } else { return false; } }); if (!$response) { Cache::tags($cacheTag)->forget($cacheKey); return new \Exception("Houve um erro ao localizar registro (id not found)"); } return $response; }
public function users() { $count = Users::select(\DB::raw('count(id) as total'))->where('company_id', config('global.companies.current.id'))->count(); return $this->jsonResponse(['data' => $count]); }
public function resend($id) { $this->checker('update_full_admin'); $user = Users::select()->where('id', $id)->get(); if (empty($user)) { Router::redirect('home.index'); } $user = $user[0]; $user->mail_check = sha1($user->user_key . '-----' . time()); $user->mail_check_at = BaseModel::now(); $user->save(); Users::sendMailCheck($user); Router::redirect('admin:user.show'); }
protected function findUser($email) { return \App\Models\Users::select('id', 'email', 'active')->whereEmail($email)->first(); }
private function getForContact($page = 1) { if (!Session::exists('member')) { Router::redirect('home.index'); } $nb = self::NUMBER_ITEM_PER_PAGE; $member = Session::get('member'); $member = $this->checkUser($member['id'], $member['nickname']); $search = Helper::post('research'); $all_contact = UsersBook::select()->where('id_user_from', $member->id)->orWhere('id_user_to', $member->id)->get(); $list = [$member->id]; foreach ($all_contact as $contact) { if ($contact->id_user_from == $member->id) { $list[] = $contact->id_user_to; } else { $list[] = $contact->id_user_from; } } $users = Users::select()->addFields(['users.id' => 'user_id', 'users.nickname' => 'user_nickname', 'users.mail' => 'user_mail'])->where('users.mail_check', '1')->andWhere('users.id', 'NOT IN', $list)->andGroup([new Condition('WHERE', '', 'users.nickname', 'LIKE', '%' . $search . '%', false), new Condition('WHERE', 'OR', 'users.mail', 'LIKE', '%' . $search . '%', false)])->get(($page - 1) * $nb, $nb); $count = Users::select()->addFields(['COUNT(*)' => 'nb_user'])->where('users.mail_check', '1')->andWhere('users.id', 'NOT IN', $list)->andGroup([new Condition('WHERE', '', 'users.nickname', 'LIKE', '%' . $search . '%', false), new Condition('WHERE', 'OR', 'users.mail', 'LIKE', '%' . $search . '%', false)])->get(0, 1); $max_page = 0; if (!empty($count)) { $count = $count[0]; $max_page = ceil($count->nb_user / $nb); } if ($max_page == 0) { $max_page = 1; } $this->set('max_page', $max_page); $this->set('users', $users); $this->set('member', $member); $this->render('user/search'); }
public function verify($key) { //Users::redirectIf(true); $users = Users::select()->where('mail_check', $key)->andWhere('TIMESTAMPDIFF(MINUTE, mail_check_at, NOW())', '<', 30, false)->get(); if (!empty($users)) { $user = $users[0]; $user->mail_check = '1'; $user->save(); } $users = Users::select()->where('mail_check', '!=', '1')->andWhere('TIMESTAMPDIFF(MINUTE, mail_check_at, NOW())', '>', 35, false)->get(); foreach ($users as $user) { $user->delete(); } Session::setFlash('success', '', Translate::get('user.success.register_mail')); Router::redirect('home.index'); }
/** * This function loads the 'Events Progress' page for Customer * * * @return progress 'Events Progress' page with Event Tasks/Quote Requests table data */ public function ProgressCustomer() { $input = Request::all(); $iName = $input['EventID']; $user_id = \Auth::user()->id; //$customereventid = Quote_Requests::select('*')->where('id',$iName)->first(); $memtasks = Event_Tasks::select('*')->where('EventID', $iName)->get(); $teammem = Users::select('*')->where('role', 'team-member')->get(); $evedetails = Quote_Requests::select('*')->where('id', $iName)->first(); $data = array('memtasks' => $memtasks, 'teammem' => $teammem, 'eveID' => $iName, 'evedetails' => $evedetails, 'result' => 'null'); return view('progress_customer.progress')->with($data); }
public function register() { Users::redirectIf(true); $nickname = Helper::post('nickname'); $password = Helper::post('password'); $confirm = Helper::post('password_confirm'); $email = Helper::post('email'); if (empty($nickname) || empty($password) || empty($confirm) || empty($email)) { Session::setFlash('danger', '', Translate::get('error.forms.missing.content')); Router::redirect('user.signup'); } $errors = []; if (strlen($nickname) < 3 || strlen($nickname) > 40) { $errors['username'] = Translate::get('register.error.username'); } if (!preg_match('#[a-zA-Z0-9\\_\\.]+#', $nickname)) { $errors['username'] = Translate::get('register.error.username'); } if (strlen($password) < 6) { $errors['password'] = Translate::get('register.error.password'); } if ($password != $confirm) { $errors['password'] = Translate::get('register.error.password_confirm'); } if (!preg_match('/[a-zA-Z0-9\\_\\-\\.]{3,}@[a-zA-Z0-9\\-]{2,}\\.[a-z]{2,6}/', $email)) { $errors['email'] = Translate::get('register.error.email'); } if (!empty($errors)) { ob_start(); Translate::getContent('error_fields', ['errors' => $errors]); $content = ob_get_clean(); Session::setFlash('danger', '', $content); Router::redirect('user.signup'); } $users = Users::select()->addFields(['id'])->where('nickname', $nickname)->andWhere('mail', $email)->get(0, 1); if (!empty($users)) { Session::setFlash('danger', '', Translate::get('user.error.register')); Router::redirect('user.signup'); } $random = ''; while ($random == '') { $random = Config::randomString(14); if (Users::find('user_key', $random)) { $random = ''; } } $default_group = Groups::find('g_default', 1); $user = Users::create(); $user->id_group = $default_group->id; // TODO: Change for default group $user->nickname = $nickname; $user->password = password_hash($password, PASSWORD_BCRYPT); $user->user_key = $random; $user->mail = $email; $user->mail_check = sha1($user->user_key); $user->mail_check_at = BaseModel::now(); $user->register_at = BaseModel::now(); $user->connection_at = '0000-00-00 00:00:00'; $user->save(); Users::sendMailCheck($user); Session::setFlash('success', '', Translate::get('user.success.register')); Router::redirect('home.index'); }
public function initialRegistration(Request $request) { $user = new Users(); $user->email = $request->input('email'); $user->user_name = $request->input('username'); $user->password = $request->input('password'); $user->first_name = $request->input('first_name'); $user->last_name = $request->input('last_name'); $referralId = $request->session()->get('referralId'); $ecosponsor = $request->cookie('ecosponsor'); if ($referralId == '') { $referralId = $ecosponsor; } if ($referralId < 1) { $refUser = Users::select('id')->where('member', 5)->orderByRaw("RAND()")->first(); $referralId = $refUser->id; } $referrer = Users::find($referralId); $request->session()->set('referralId', ''); $user->sponsor_id = $referrer->id; $user->second_id = $referrer->sponsor_id; $user->third_id = $referrer->second_id; $user->fourth_id = $referrer->third_id; $user->fifth_id = $referrer->fourth_id; $user->member = 1; $user->save(); $user->user_link = md5($user->id); $user->save(); $request->session()->set('user_id', $user->id); $request->session()->set('username', $user->first_name . ' ' . $user->last_name); return $user; }
protected function findUser($username) { return \App\Models\Users::select('*')->whereEmail($username)->orWhere('username', $username); }
public function savestatusAction() { if (!$this->isXmlHttpRequest()) { throw new \Exception('Неверный тип запроса!'); } $data = $this->request->getPost(); if (!isset($data['id']) || !isset($data['task_status_id'])) { throw new \Exception('Неверный тип запроса!'); } $data['id'] = (int) $data['id']; $data['task_status_id'] = (int) $data['task_status_id']; $tasksModel = new Tasks(); $tasksModel->save($data); $timelineModel = new Timeline(); $timelineModel->endWork($data['id']); $task = $tasksModel->getTasksDataById((int) $data['id']); $to = array(); $usersModel = new Users(); $usersModel->setWhere(array('id' => 1)); $result1 = $usersModel->select(); $to[] = $result1[0]['user']; $usersModel->setWhere(array('id' => (int) $task['executors_id'])); $result2 = $usersModel->select(); if ($result2 && $result2[0]['user'] != $result1[0]['user']) { $to[] = $result2[0]['user']; } $usersModel->setWhere(array('id' => (int) $task['initiator'])); $result3 = $usersModel->select(); $to[] = $result3[0]['user']; $subject = 'Изменение статуса задачи'; $message = 'По задаче "' . $task['name']; $message .= '" сменился статус на ' . $task['ts_name'] . "\n"; $message .= 'По проекту: ' . ($task['p_name'] ? $task['p_name'] : 'Без проекта'); Mail::instance()->send($to, $subject, $message); }
/** * @param int $id * @return bool */ public function getUserState($id) { $userState = Users::select("Active")->where("uid", "=", $id)->get()->first(); if ($userState == null) { return false; } if (!$userState->Active) { return false; } return true; }
/** * This function Handles the post event of the Assign Tasks page * * * @return if successful All Events To Be Assigned page */ public function AssignPOST() { $input = Request::all(); //create arrays to store post data $iTaskdesc = array(); $iTeamMem = array(); $dbData = array(); //take inputs to variables $iName = $input['EventID']; //store input data in corresponding arrays foreach ($input['desc'] as $x) { $iTaskdesc[] = $x; } foreach ($input['teammember'] as $y) { $iTeamMem[] = $y; } foreach ($input['desc'] as $z => $value) { Event_Tasks::insert([['EventID' => $iName, 'MemberID' => $iTeamMem[$z], 'Description' => $iTaskdesc[$z]]]); } $mem = Event_Tasks::distinct()->select('MemberID')->where('EventID', $iName)->get(); $evedata = Quote_Requests::select('*')->where('id', $iName)->first(); //return dd($mem); foreach ($mem as $memb) { $time = Carbon::now(); $em = Users::select('*')->where('id', $memb->MemberID)->first(); $mailData = ['EventID' => $iName, 'MemName' => $em->Name, 'DueDate' => $evedata->EventDate, 'FirstName' => $evedata->FirstName, 'LastName' => $evedata->LastName]; Mail::send('emails.member-tasks', $mailData, function ($message) use($em) { $message->to($em->email, 'Test')->subject('Tasks Assgined for Event'); }); } /* */ $team = Users::distinct()->select('*')->where('role', 'team-member')->get(); $quote = Quote_Requests::select('*')->get(); return view('assign_task.assign-tasks')->with(array('team' => $team, 'quote' => $quote, 'message' => 'yes')); }
public function delete($id, $csrf) { $this->checker('update_full_admin'); if (Session::get('csrf') != $csrf) { Router::redirect('home.index'); } $group = Groups::select()->where('id', $id)->get(); if (empty($group)) { Router::redirect('home.index'); } $countGroup = Groups::select()->addFields(['COUNT(*)' => 'nb'])->get(); $countGroup = intval($countGroup[0]->nb); if ($countGroup > 1) { $group = $group[0]; $group->delete(); $firstGroup = Groups::select()->addFields('id')->get(0, 1); $firstGroup = $firstGroup[0]; $users = Users::select()->where('id_group', $id)->get(); if (!empty($users)) { foreach ($users as $user) { $user->id_group = $firstGroup->id; $user->save(); } } } else { Session::setFlash('danger', '', 'Il ne reste que 1 seul groupe donc on ne peut pas le supprimer'); } Router::redirect('admin:group.show'); }