Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php if (!defined('BASEPATH')) exit('No direct script access allowed'); class ..
Decoded Output download
<?php
if (!defined('BASEPATH'))
exit('No direct script access allowed');
class Site extends Public_Controller {
public function __construct() {
parent::__construct();
$this->check_installation();
if ($this->config->item('installed') == true) {
$this->db->reconnect();
}
if ($_SERVER['HTTP_HOST'] != 'aajad.school') {
echo "License Error | license For Aajad International Schools Only | Mattar Information Technology MiT | Contact us : [email protected] | +201000515160 ";
exit();
}
$this->load->model("staff_model");
$this->load->library('Auth');
$this->load->library('Enc_lib');
$this->load->library('customlib');
$this->load->library('mailer');
$this->load->config('ci-blog');
$this->mailer;
}
private function check_installation() {
if ($this->uri->segment(1) !== 'install') {
$this->load->config('migration');
if ($this->config->item('installed') == false && $this->config->item('migration_enabled') == false) {
redirect(base_url() . 'install/start');
} else {
if (is_dir(APPPATH . 'controllers/install')) {
echo '<h3>Delete the install folder from application/controllers/install</h3>';
die;
}
}
}
}
function login() {
$app_name=$this->setting_model->get();
$app_name=$app_name[0]['name'];
if ($this->auth->logged_in()) {
$this->auth->is_logged_in(true);
}
$data = array();
$data['title'] = 'Login';
$school = $this->setting_model->get();
$data['name'] = $app_name;
$notice_content = $this->config->item('ci_front_notice_content');
$notices = $this->cms_program_model->getByCategory($notice_content, array('start' => 0, 'limit' => 5));
$data['notice'] = $notices;
$data['school'] = $school[0];
$this->form_validation->set_rules('username', $this->lang->line('username'), 'trim|required|xss_clean');
$this->form_validation->set_rules('password', $this->lang->line('password'), 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$data['name'] = $app_name;
$this->load->view('admin/login', $data);
} else {
$login_post = array(
'email' => $this->input->post('username'),
'password' => $this->input->post('password')
);
$setting_result = $this->setting_model->get();
$result = $this->staff_model->checkLogin($login_post);
if (!empty($result->language_id)) {
$lang_array = array('lang_id' => $result->language_id, 'language' => $result->language);
} else {
$lang_array = array('lang_id' => $setting_result[0]['lang_id'], 'language' => $setting_result[0]['language']);
}
if ($result) {
if ($result->is_active) {
if ($result->surname != "") {
$logusername = $result->name . " " . $result->surname;
} else {
$logusername = $result->name;
}
$setting_result = $this->setting_model->get();
$session_data = array(
'id' => $result->id,
'username' => $logusername,
'email' => $result->email,
'roles' => $result->roles,
'date_format' => $setting_result[0]['date_format'],
'currency_symbol' => $setting_result[0]['currency_symbol'],
'currency_place' => $setting_result[0]['currency_place'],
'start_month' => $setting_result[0]['start_month'],
'school_name' => $setting_result[0]['name'],
'timezone' => $setting_result[0]['timezone'],
'sch_name' => $setting_result[0]['name'],
'language' => $lang_array,
'is_rtl' => $setting_result[0]['is_rtl'],
'theme' => $setting_result[0]['theme'],
);
$this->session->set_userdata('admin', $session_data);
$role = $this->customlib->getStaffRole();
$role_name = json_decode($role)->name;
$this->customlib->setUserLog($this->input->post('username'), $role_name);
if (isset($_SESSION['redirect_to']))
redirect($_SESSION['redirect_to']);
else
redirect('admin/admin/dashboard');
}else {
$data['name'] = $app_name;
$data['error_message'] = $this->lang->line('your_account_is_disabled_please_contact_to_administrator');
$this->load->view('admin/login', $data);
}
} else {
$data['name'] = $app_name;
$data['error_message'] = $this->lang->line('invalid_username_or_password');
$this->load->view('admin/login', $data);
}
}
}
function logout() {
$admin_session = $this->session->userdata('admin');
$student_session = $this->session->userdata('student');
$this->auth->logout();
if ($admin_session) {
redirect('site/login');
} else if ($student_session) {
redirect('site/userlogin');
} else {
redirect('site/userlogin');
}
}
function forgotpassword() {
$app_name=$this->setting_model->get();
$data['name']=$app_name[0]['name'];
$this->form_validation->set_rules('email', $this->lang->line('email'), 'trim|valid_email|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$this->load->view('admin/forgotpassword',$data);
} else {
$email = $this->input->post('email');
$result = $this->staff_model->getByEmail($email);
if ($result && $result->email != "") {
$verification_code = $this->enc_lib->encrypt(uniqid(mt_rand()));
$update_record = array('id' => $result->id, 'verification_code' => $verification_code);
$this->staff_model->add($update_record);
$name = $result->name;
$resetPassLink = site_url('admin/resetpassword') . "/" . $verification_code;
$body = $this->forgotPasswordBody($name, $resetPassLink);
$body_array = json_decode($body);
if (!empty($this->mail_config)) {
$result = $this->mailer->send_mail($result->email, $body_array->subject, $body_array->body);
}
$this->session->set_flashdata('message', $this->lang->line('please_check_your_email_to_recover_your_password'));
redirect('site/login', 'refresh');
} else {
$data = array(
'error_message' => $this->lang->line('invalid_email')
);
}
$this->load->view('admin/forgotpassword', $data);
}
}
//reset password - final step for forgotten password
public function admin_resetpassword($verification_code = null) {
$app_name=$this->setting_model->get();
$data['name']=$app_name[0]['name'];
if (!$verification_code) {
show_404();
}
$user = $this->staff_model->getByVerificationCode($verification_code);
if ($user) {
//if the code is valid then display the password reset form
$this->form_validation->set_rules('password', $this->lang->line('password'), 'required');
$this->form_validation->set_rules('confirm_password', $this->lang->line('confirm_password'), 'required|matches[password]');
if ($this->form_validation->run() == false) {
$data['verification_code'] = $verification_code;
//render
$this->load->view('admin/admin_resetpassword', $data);
} else {
// finally change the password
$password = $this->input->post('password');
$update_record = array(
'id' => $user->id,
'password' => $this->enc_lib->passHashEnc($password),
'verification_code' => ""
);
$change = $this->staff_model->update($update_record);
if ($change) {
//if the password was successfully changed
$this->session->set_flashdata('message', $this->lang->line("password_reset_successfully"));
redirect('site/login', 'refresh');
} else {
$this->session->set_flashdata('message', $this->lang->line("something_went_wrong"));
redirect('admin_resetpassword/' . $verification_code, 'refresh');
}
}
} else {
//if the code is invalid then send them back to the forgot password page
$this->session->set_flashdata('message', $this->lang->line('invalid_link'));
redirect("site/forgotpassword", 'refresh');
}
}
//reset password - final step for forgotten password
public function resetpassword($role = null, $verification_code = null) {
$app_name=$this->setting_model->get();
$data['name']=$app_name[0]['name'];
if (!$role || !$verification_code) {
show_404();
}
$user = $this->user_model->getUserByCodeUsertype($role, $verification_code);
if ($user) {
//if the code is valid then display the password reset form
$this->form_validation->set_rules('password', $this->lang->line('password'), 'required');
$this->form_validation->set_rules('confirm_password', $this->lang->line('confirm_password'), 'required|matches[password]');
if ($this->form_validation->run() == false) {
$data['role'] = $role;
$data['verification_code'] = $verification_code;
//render
$this->load->view('resetpassword', $data);
} else {
// finally change the password
$update_record = array(
'id' => $user->user_tbl_id,
'password' => $this->input->post('password'),
'verification_code' => ""
);
$change = $this->user_model->saveNewPass($update_record);
if ($change) {
//if the password was successfully changed
$this->session->set_flashdata('message', $this->lang->line('password_reset_successfully'));
redirect('site/userlogin', 'refresh');
} else {
$this->session->set_flashdata('message', $this->lang->line("something_went_wrong"));
redirect('user/resetpassword/' . $role . '/' . $verification_code, 'refresh');
}
}
} else {
//if the code is invalid then send them back to the forgot password page
$this->session->set_flashdata('message', $this->lang->line('invalid_link'));
redirect("site/ufpassword", 'refresh');
}
}
function ufpassword() {
$app_name=$this->setting_model->get();
$data['name']=$app_name[0]['name'];
$this->form_validation->set_rules('username', $this->lang->line('email'), 'trim|required|xss_clean');
$this->form_validation->set_rules('user[]', $this->lang->line('user_type'), 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$this->load->view('ufpassword',$data);
} else {
$email = $this->input->post('username');
$usertype = $this->input->post('user[]');
$result = $this->user_model->forgotPassword($usertype[0], $email);
if ($result && $result->email != "") {
$verification_code = $this->enc_lib->encrypt(uniqid(mt_rand()));
$update_record = array('id' => $result->user_tbl_id, 'verification_code' => $verification_code);
$this->user_model->updateVerCode($update_record);
if ($usertype[0] == "student") {
$name = $result->firstname . " " . $result->lastname;
} else {
$name = $result->guardian_name;
}
$resetPassLink = site_url('user/resetpassword') . '/' . $usertype[0] . "/" . $verification_code;
$body = $this->forgotPasswordBody($name, $resetPassLink);
$body_array = json_decode($body);
if (!empty($this->mail_config)) {
$result = $this->mailer->send_mail($email, $body_array->subject, $body_array->body);
}
$this->session->set_flashdata('message', $this->lang->line("please_check_your_email_to_recover_your_password"));
redirect('site/userlogin', 'refresh');
} else {
$data = array(
'name'=> $app_name[0]['name'],
'error_message' => $this->lang->line('invalid_email_or_user_type')
);
}
$this->load->view('ufpassword', $data);
}
}
function forgotPasswordBody($name, $resetPassLink) {
//===============
$subject = "Password Update Request";
$body = 'Dear ' . $name . ',
<br/>Recently a request was submitted to reset password for your account. If you didn\'t make the request, just ignore this email. Otherwise you can reset your password using this link <a href="' . $resetPassLink . '"><button>Click here to reset your password</button></a>';
$body .= '<br/><hr/>if you\'re having trouble clicking the password reset button, copy and paste the URL below into your web browser';
$body .= '<br/>' . $resetPassLink;
$body .= '<br/><br/>Regards,
<br/>' . $this->customlib->getSchoolName();
//======================
return json_encode(array('subject' => $subject, 'body' => $body));
}
// function userlogin() {
// if ($this->auth->user_logged_in()) {
// $this->auth->user_redirect();
// }
// $data = array();
// $data['title'] = 'Login';
// $school = $this->setting_model->get();
// $data['name'] = $school[0]['name'];
// $notice_content = $this->config->item('ci_front_notice_content');
// $notices = $this->cms_program_model->getByCategory($notice_content, array('start' => 0, 'limit' => 5));
// $data['notice'] = $notices;
// $data['school'] = $school[0];
// $this->form_validation->set_rules('username', $this->lang->line('username'), 'trim|required|xss_clean');
// $this->form_validation->set_rules('password', $this->lang->line('password'), 'trim|required|xss_clean');
// if ($this->form_validation->run() == FALSE) {
// $this->load->view('userlogin', $data);
// } else {
// $login_post = array(
// 'username' => $this->input->post('username'),
// 'password' => $this->input->post('password')
// );
// $login_details = $this->user_model->checkLogin($login_post);
// if (isset($login_details) && !empty($login_details)) {
// $user = $login_details[0];
// if ($user->is_active == "yes") {
// if ($user->role == "student") {
// $result = $this->user_model->read_user_information($user->id);
// } else if ($user->role == "parent") {
// $result = $this->user_model->checkLoginParent($login_post);
// }
// if ($result != false) {
// $setting_result = $this->setting_model->get();
// if ($result[0]->lang_id == 0) {
// $language = array('lang_id' => $setting_result[0]['lang_id'], 'language' => $setting_result[0]['language']);
// } else {
// $language = array('lang_id' => $result[0]->lang_id, 'language' => $result[0]->language);
// }
// if ($result[0]->role == "student") {
// $session_data = array(
// 'id' => $result[0]->id,
// 'student_id' => $result[0]->user_id,
// 'role' => $result[0]->role,
// 'username' => $result[0]->firstname . " " . $result[0]->lastname,
// 'date_format' => $setting_result[0]['date_format'],
// 'currency_symbol' => $setting_result[0]['currency_symbol'],
// 'timezone' => $setting_result[0]['timezone'],
// 'sch_name' => $setting_result[0]['name'],
// 'language' => $language,
// 'is_rtl' => $setting_result[0]['is_rtl'],
// 'theme' => $setting_result[0]['theme'],
// 'image' => $result[0]->image,
// );
// $student_display_session = $this->studentsession_model->searchActiveClassSectionStudent($result[0]->user_id);
// $student_current_class = array('student_session_id'=>$student_display_session->id,'class_id' => $student_display_session->class_id,
// 'section_id' => $student_display_session->section_id);
// $this->session->set_userdata('student', $session_data);
// $this->session->set_userdata('current_class', $student_current_class);
// $this->customlib->setUserLog($result[0]->username, $result[0]->role);
// redirect('user/user/dashboard');
// } else if ($result[0]->role == "parent") {
// if ($result[0]->guardian_relation == "Father") {
// $image = $result[0]->father_pic;
// } else if ($result[0]->guardian_relation == "Mother") {
// $image = $result[0]->mother_pic;
// } else if ($result[0]->guardian_relation == "Other") {
// $image = $result[0]->guardian_pic;
// }
// $session_data = array(
// 'id' => $result[0]->id,
// 'student_id' => $result[0]->user_id,
// 'role' => $result[0]->role,
// 'username' => $result[0]->guardian_name,
// 'date_format' => $setting_result[0]['date_format'],
// 'timezone' => $setting_result[0]['timezone'],
// 'sch_name' => $setting_result[0]['name'],
// 'currency_symbol' => $setting_result[0]['currency_symbol'],
// 'language' => array('lang_id' => $setting_result[0]['lang_id'], 'language' => $setting_result[0]['language']),
// 'is_rtl' => $setting_result[0]['is_rtl'],
// 'theme' => $setting_result[0]['theme'],
// 'image' => $image,
// );
// $this->session->set_userdata('student', $session_data);
// $s = array();
// $user_id = ($result[0]->id);
// $students_array = $this->student_model->read_siblings_students($user_id);
// $child_student = array();
// foreach ($students_array as $std_key => $std_val) {
// $child = array(
// 'student_id' => $std_val->id,
// 'name' => $std_val->firstname . " " . $std_val->lastname
// );
// $child_student[] = $child;
// }
// $this->session->set_userdata('parent_childs', $child_student);
// $this->customlib->setUserLog($result[0]->username, $result[0]->role);
// redirect('parent/parents/dashboard');
// }
// } else {
// $data['error_message'] = 'Account Suspended';
// $this->load->view('userlogin', $data);
// }
// } else {
// $data['error_message'] = $this->lang->line('your_account_is_disabled_please_contact_to_administrator');
// $this->load->view('userlogin', $data);
// }
// } else {
// $data['error_message'] = $this->lang->line('invalid_username_or_password');
// $this->load->view('userlogin', $data);
// }
// }
// }
function userlogin() {
if ($this->auth->user_logged_in()) {
$this->auth->user_redirect();
}
$data = array();
$data['title'] = 'Login';
$school = $this->setting_model->get();
$data['name'] = $school[0]['name'];
$notice_content = $this->config->item('ci_front_notice_content');
$notices = $this->cms_program_model->getByCategory($notice_content, array('start' => 0, 'limit' => 5));
$data['notice'] = $notices;
$data['school'] = $school[0];
$this->form_validation->set_rules('username', $this->lang->line('username'), 'trim|required|xss_clean');
$this->form_validation->set_rules('password', $this->lang->line('password'), 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$this->load->view('userlogin', $data);
} else {
$login_post = array(
'username' => $this->input->post('username'),
'password' => $this->input->post('password')
);
$login_details = $this->user_model->checkLogin($login_post);
if (isset($login_details) && !empty($login_details)) {
$user = $login_details[0];
if ($user->is_active == "yes") {
if ($user->role == "student") {
$result = $this->user_model->read_user_information($user->id);
} else if ($user->role == "parent") {
$result = $this->user_model->checkLoginParent($login_post);
}
if ($result != false) {
$setting_result = $this->setting_model->get();
if ($result[0]->lang_id == 0) {
$language = array('lang_id' => $setting_result[0]['lang_id'], 'language' => $setting_result[0]['language']);
} else {
$language = array('lang_id' => $result[0]->lang_id, 'language' => $result[0]->language);
}
if($result[0]->role == "parent") {
$username=$result[0]->guardian_name;
if ($result[0]->guardian_relation == "Father") {
$image = $result[0]->father_pic;
} else if ($result[0]->guardian_relation == "Mother") {
$image = $result[0]->mother_pic;
} else if ($result[0]->guardian_relation == "Other") {
$image = $result[0]->guardian_pic;
}
}elseif ($result[0]->role == "student") {
$image = $result[0]->image;
$username= ($result[0]->lastname != "")? $result[0]->firstname . " " .$result[0]->lastname: $result[0]->firstname;
}
$session_data = array(
'id' => $result[0]->id,
'student_id' => $result[0]->user_id,
'role' => $result[0]->role,
'username' => $username,
'date_format' => $setting_result[0]['date_format'],
'currency_symbol' => $setting_result[0]['currency_symbol'],
'timezone' => $setting_result[0]['timezone'],
'sch_name' => $setting_result[0]['name'],
'language' => $language,
'is_rtl' => $setting_result[0]['is_rtl'],
'theme' => $setting_result[0]['theme'],
'image' => $result[0]->image,
);
$this->session->set_userdata('student', $session_data);
// $student_display_session = $this->studentsession_model->searchActiveClassSectionStudent($result[0]->user_id);
// $student_current_class = array('student_session_id'=>$student_display_session->id,'class_id' => $student_display_session->class_id,
// 'section_id' => $student_display_session->section_id);
// $this->session->set_userdata('current_class', $student_current_class);
$this->customlib->setUserLog($result[0]->username, $result[0]->role);
// redirect('user/user/dashboard');
redirect('user/user/choose');
} else {
$data['error_message'] = 'Account Suspended';
$this->load->view('userlogin', $data);
}
} else {
$data['error_message'] = $this->lang->line('your_account_is_disabled_please_contact_to_administrator');
$this->load->view('userlogin', $data);
}
} else {
$data['error_message'] = $this->lang->line('invalid_username_or_password');
$this->load->view('userlogin', $data);
}
}
}
public function savemulticlass() {
$student_id = '';
$this->form_validation->set_rules('student_id', $this->lang->line('student'), 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$msg = array(
'student_id' => form_error('student_id')
);
$array = array('status' => '0', 'error' => $msg, 'message' => '');
} else {
$data = array(
'student_id' => date('Y-m-d', strtotime($this->input->post('student_id'))),
);
$array = array('status' => 'success', 'error' => '', 'message' => $this->lang->line('success_message'));
}
echo json_encode($array);
}
}
?>
Did this file decode correctly?
Original Code
<?php
if (!defined('BASEPATH'))
exit('No direct script access allowed');
class Site extends Public_Controller {
public function __construct() {
parent::__construct();
$this->check_installation();
if ($this->config->item('installed') == true) {
$this->db->reconnect();
}
if ($_SERVER['HTTP_HOST'] != 'aajad.school') {
echo "License Error | license For Aajad International Schools Only | Mattar Information Technology MiT | Contact us : [email protected] | +201000515160 ";
exit();
}
$this->load->model("staff_model");
$this->load->library('Auth');
$this->load->library('Enc_lib');
$this->load->library('customlib');
$this->load->library('mailer');
$this->load->config('ci-blog');
$this->mailer;
}
private function check_installation() {
if ($this->uri->segment(1) !== 'install') {
$this->load->config('migration');
if ($this->config->item('installed') == false && $this->config->item('migration_enabled') == false) {
redirect(base_url() . 'install/start');
} else {
if (is_dir(APPPATH . 'controllers/install')) {
echo '<h3>Delete the install folder from application/controllers/install</h3>';
die;
}
}
}
}
function login() {
$app_name=$this->setting_model->get();
$app_name=$app_name[0]['name'];
if ($this->auth->logged_in()) {
$this->auth->is_logged_in(true);
}
$data = array();
$data['title'] = 'Login';
$school = $this->setting_model->get();
$data['name'] = $app_name;
$notice_content = $this->config->item('ci_front_notice_content');
$notices = $this->cms_program_model->getByCategory($notice_content, array('start' => 0, 'limit' => 5));
$data['notice'] = $notices;
$data['school'] = $school[0];
$this->form_validation->set_rules('username', $this->lang->line('username'), 'trim|required|xss_clean');
$this->form_validation->set_rules('password', $this->lang->line('password'), 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$data['name'] = $app_name;
$this->load->view('admin/login', $data);
} else {
$login_post = array(
'email' => $this->input->post('username'),
'password' => $this->input->post('password')
);
$setting_result = $this->setting_model->get();
$result = $this->staff_model->checkLogin($login_post);
if (!empty($result->language_id)) {
$lang_array = array('lang_id' => $result->language_id, 'language' => $result->language);
} else {
$lang_array = array('lang_id' => $setting_result[0]['lang_id'], 'language' => $setting_result[0]['language']);
}
if ($result) {
if ($result->is_active) {
if ($result->surname != "") {
$logusername = $result->name . " " . $result->surname;
} else {
$logusername = $result->name;
}
$setting_result = $this->setting_model->get();
$session_data = array(
'id' => $result->id,
'username' => $logusername,
'email' => $result->email,
'roles' => $result->roles,
'date_format' => $setting_result[0]['date_format'],
'currency_symbol' => $setting_result[0]['currency_symbol'],
'currency_place' => $setting_result[0]['currency_place'],
'start_month' => $setting_result[0]['start_month'],
'school_name' => $setting_result[0]['name'],
'timezone' => $setting_result[0]['timezone'],
'sch_name' => $setting_result[0]['name'],
'language' => $lang_array,
'is_rtl' => $setting_result[0]['is_rtl'],
'theme' => $setting_result[0]['theme'],
);
$this->session->set_userdata('admin', $session_data);
$role = $this->customlib->getStaffRole();
$role_name = json_decode($role)->name;
$this->customlib->setUserLog($this->input->post('username'), $role_name);
if (isset($_SESSION['redirect_to']))
redirect($_SESSION['redirect_to']);
else
redirect('admin/admin/dashboard');
}else {
$data['name'] = $app_name;
$data['error_message'] = $this->lang->line('your_account_is_disabled_please_contact_to_administrator');
$this->load->view('admin/login', $data);
}
} else {
$data['name'] = $app_name;
$data['error_message'] = $this->lang->line('invalid_username_or_password');
$this->load->view('admin/login', $data);
}
}
}
function logout() {
$admin_session = $this->session->userdata('admin');
$student_session = $this->session->userdata('student');
$this->auth->logout();
if ($admin_session) {
redirect('site/login');
} else if ($student_session) {
redirect('site/userlogin');
} else {
redirect('site/userlogin');
}
}
function forgotpassword() {
$app_name=$this->setting_model->get();
$data['name']=$app_name[0]['name'];
$this->form_validation->set_rules('email', $this->lang->line('email'), 'trim|valid_email|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$this->load->view('admin/forgotpassword',$data);
} else {
$email = $this->input->post('email');
$result = $this->staff_model->getByEmail($email);
if ($result && $result->email != "") {
$verification_code = $this->enc_lib->encrypt(uniqid(mt_rand()));
$update_record = array('id' => $result->id, 'verification_code' => $verification_code);
$this->staff_model->add($update_record);
$name = $result->name;
$resetPassLink = site_url('admin/resetpassword') . "/" . $verification_code;
$body = $this->forgotPasswordBody($name, $resetPassLink);
$body_array = json_decode($body);
if (!empty($this->mail_config)) {
$result = $this->mailer->send_mail($result->email, $body_array->subject, $body_array->body);
}
$this->session->set_flashdata('message', $this->lang->line('please_check_your_email_to_recover_your_password'));
redirect('site/login', 'refresh');
} else {
$data = array(
'error_message' => $this->lang->line('invalid_email')
);
}
$this->load->view('admin/forgotpassword', $data);
}
}
//reset password - final step for forgotten password
public function admin_resetpassword($verification_code = null) {
$app_name=$this->setting_model->get();
$data['name']=$app_name[0]['name'];
if (!$verification_code) {
show_404();
}
$user = $this->staff_model->getByVerificationCode($verification_code);
if ($user) {
//if the code is valid then display the password reset form
$this->form_validation->set_rules('password', $this->lang->line('password'), 'required');
$this->form_validation->set_rules('confirm_password', $this->lang->line('confirm_password'), 'required|matches[password]');
if ($this->form_validation->run() == false) {
$data['verification_code'] = $verification_code;
//render
$this->load->view('admin/admin_resetpassword', $data);
} else {
// finally change the password
$password = $this->input->post('password');
$update_record = array(
'id' => $user->id,
'password' => $this->enc_lib->passHashEnc($password),
'verification_code' => ""
);
$change = $this->staff_model->update($update_record);
if ($change) {
//if the password was successfully changed
$this->session->set_flashdata('message', $this->lang->line("password_reset_successfully"));
redirect('site/login', 'refresh');
} else {
$this->session->set_flashdata('message', $this->lang->line("something_went_wrong"));
redirect('admin_resetpassword/' . $verification_code, 'refresh');
}
}
} else {
//if the code is invalid then send them back to the forgot password page
$this->session->set_flashdata('message', $this->lang->line('invalid_link'));
redirect("site/forgotpassword", 'refresh');
}
}
//reset password - final step for forgotten password
public function resetpassword($role = null, $verification_code = null) {
$app_name=$this->setting_model->get();
$data['name']=$app_name[0]['name'];
if (!$role || !$verification_code) {
show_404();
}
$user = $this->user_model->getUserByCodeUsertype($role, $verification_code);
if ($user) {
//if the code is valid then display the password reset form
$this->form_validation->set_rules('password', $this->lang->line('password'), 'required');
$this->form_validation->set_rules('confirm_password', $this->lang->line('confirm_password'), 'required|matches[password]');
if ($this->form_validation->run() == false) {
$data['role'] = $role;
$data['verification_code'] = $verification_code;
//render
$this->load->view('resetpassword', $data);
} else {
// finally change the password
$update_record = array(
'id' => $user->user_tbl_id,
'password' => $this->input->post('password'),
'verification_code' => ""
);
$change = $this->user_model->saveNewPass($update_record);
if ($change) {
//if the password was successfully changed
$this->session->set_flashdata('message', $this->lang->line('password_reset_successfully'));
redirect('site/userlogin', 'refresh');
} else {
$this->session->set_flashdata('message', $this->lang->line("something_went_wrong"));
redirect('user/resetpassword/' . $role . '/' . $verification_code, 'refresh');
}
}
} else {
//if the code is invalid then send them back to the forgot password page
$this->session->set_flashdata('message', $this->lang->line('invalid_link'));
redirect("site/ufpassword", 'refresh');
}
}
function ufpassword() {
$app_name=$this->setting_model->get();
$data['name']=$app_name[0]['name'];
$this->form_validation->set_rules('username', $this->lang->line('email'), 'trim|required|xss_clean');
$this->form_validation->set_rules('user[]', $this->lang->line('user_type'), 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$this->load->view('ufpassword',$data);
} else {
$email = $this->input->post('username');
$usertype = $this->input->post('user[]');
$result = $this->user_model->forgotPassword($usertype[0], $email);
if ($result && $result->email != "") {
$verification_code = $this->enc_lib->encrypt(uniqid(mt_rand()));
$update_record = array('id' => $result->user_tbl_id, 'verification_code' => $verification_code);
$this->user_model->updateVerCode($update_record);
if ($usertype[0] == "student") {
$name = $result->firstname . " " . $result->lastname;
} else {
$name = $result->guardian_name;
}
$resetPassLink = site_url('user/resetpassword') . '/' . $usertype[0] . "/" . $verification_code;
$body = $this->forgotPasswordBody($name, $resetPassLink);
$body_array = json_decode($body);
if (!empty($this->mail_config)) {
$result = $this->mailer->send_mail($email, $body_array->subject, $body_array->body);
}
$this->session->set_flashdata('message', $this->lang->line("please_check_your_email_to_recover_your_password"));
redirect('site/userlogin', 'refresh');
} else {
$data = array(
'name'=> $app_name[0]['name'],
'error_message' => $this->lang->line('invalid_email_or_user_type')
);
}
$this->load->view('ufpassword', $data);
}
}
function forgotPasswordBody($name, $resetPassLink) {
//===============
$subject = "Password Update Request";
$body = 'Dear ' . $name . ',
<br/>Recently a request was submitted to reset password for your account. If you didn\'t make the request, just ignore this email. Otherwise you can reset your password using this link <a href="' . $resetPassLink . '"><button>Click here to reset your password</button></a>';
$body .= '<br/><hr/>if you\'re having trouble clicking the password reset button, copy and paste the URL below into your web browser';
$body .= '<br/>' . $resetPassLink;
$body .= '<br/><br/>Regards,
<br/>' . $this->customlib->getSchoolName();
//======================
return json_encode(array('subject' => $subject, 'body' => $body));
}
// function userlogin() {
// if ($this->auth->user_logged_in()) {
// $this->auth->user_redirect();
// }
// $data = array();
// $data['title'] = 'Login';
// $school = $this->setting_model->get();
// $data['name'] = $school[0]['name'];
// $notice_content = $this->config->item('ci_front_notice_content');
// $notices = $this->cms_program_model->getByCategory($notice_content, array('start' => 0, 'limit' => 5));
// $data['notice'] = $notices;
// $data['school'] = $school[0];
// $this->form_validation->set_rules('username', $this->lang->line('username'), 'trim|required|xss_clean');
// $this->form_validation->set_rules('password', $this->lang->line('password'), 'trim|required|xss_clean');
// if ($this->form_validation->run() == FALSE) {
// $this->load->view('userlogin', $data);
// } else {
// $login_post = array(
// 'username' => $this->input->post('username'),
// 'password' => $this->input->post('password')
// );
// $login_details = $this->user_model->checkLogin($login_post);
// if (isset($login_details) && !empty($login_details)) {
// $user = $login_details[0];
// if ($user->is_active == "yes") {
// if ($user->role == "student") {
// $result = $this->user_model->read_user_information($user->id);
// } else if ($user->role == "parent") {
// $result = $this->user_model->checkLoginParent($login_post);
// }
// if ($result != false) {
// $setting_result = $this->setting_model->get();
// if ($result[0]->lang_id == 0) {
// $language = array('lang_id' => $setting_result[0]['lang_id'], 'language' => $setting_result[0]['language']);
// } else {
// $language = array('lang_id' => $result[0]->lang_id, 'language' => $result[0]->language);
// }
// if ($result[0]->role == "student") {
// $session_data = array(
// 'id' => $result[0]->id,
// 'student_id' => $result[0]->user_id,
// 'role' => $result[0]->role,
// 'username' => $result[0]->firstname . " " . $result[0]->lastname,
// 'date_format' => $setting_result[0]['date_format'],
// 'currency_symbol' => $setting_result[0]['currency_symbol'],
// 'timezone' => $setting_result[0]['timezone'],
// 'sch_name' => $setting_result[0]['name'],
// 'language' => $language,
// 'is_rtl' => $setting_result[0]['is_rtl'],
// 'theme' => $setting_result[0]['theme'],
// 'image' => $result[0]->image,
// );
// $student_display_session = $this->studentsession_model->searchActiveClassSectionStudent($result[0]->user_id);
// $student_current_class = array('student_session_id'=>$student_display_session->id,'class_id' => $student_display_session->class_id,
// 'section_id' => $student_display_session->section_id);
// $this->session->set_userdata('student', $session_data);
// $this->session->set_userdata('current_class', $student_current_class);
// $this->customlib->setUserLog($result[0]->username, $result[0]->role);
// redirect('user/user/dashboard');
// } else if ($result[0]->role == "parent") {
// if ($result[0]->guardian_relation == "Father") {
// $image = $result[0]->father_pic;
// } else if ($result[0]->guardian_relation == "Mother") {
// $image = $result[0]->mother_pic;
// } else if ($result[0]->guardian_relation == "Other") {
// $image = $result[0]->guardian_pic;
// }
// $session_data = array(
// 'id' => $result[0]->id,
// 'student_id' => $result[0]->user_id,
// 'role' => $result[0]->role,
// 'username' => $result[0]->guardian_name,
// 'date_format' => $setting_result[0]['date_format'],
// 'timezone' => $setting_result[0]['timezone'],
// 'sch_name' => $setting_result[0]['name'],
// 'currency_symbol' => $setting_result[0]['currency_symbol'],
// 'language' => array('lang_id' => $setting_result[0]['lang_id'], 'language' => $setting_result[0]['language']),
// 'is_rtl' => $setting_result[0]['is_rtl'],
// 'theme' => $setting_result[0]['theme'],
// 'image' => $image,
// );
// $this->session->set_userdata('student', $session_data);
// $s = array();
// $user_id = ($result[0]->id);
// $students_array = $this->student_model->read_siblings_students($user_id);
// $child_student = array();
// foreach ($students_array as $std_key => $std_val) {
// $child = array(
// 'student_id' => $std_val->id,
// 'name' => $std_val->firstname . " " . $std_val->lastname
// );
// $child_student[] = $child;
// }
// $this->session->set_userdata('parent_childs', $child_student);
// $this->customlib->setUserLog($result[0]->username, $result[0]->role);
// redirect('parent/parents/dashboard');
// }
// } else {
// $data['error_message'] = 'Account Suspended';
// $this->load->view('userlogin', $data);
// }
// } else {
// $data['error_message'] = $this->lang->line('your_account_is_disabled_please_contact_to_administrator');
// $this->load->view('userlogin', $data);
// }
// } else {
// $data['error_message'] = $this->lang->line('invalid_username_or_password');
// $this->load->view('userlogin', $data);
// }
// }
// }
function userlogin() {
if ($this->auth->user_logged_in()) {
$this->auth->user_redirect();
}
$data = array();
$data['title'] = 'Login';
$school = $this->setting_model->get();
$data['name'] = $school[0]['name'];
$notice_content = $this->config->item('ci_front_notice_content');
$notices = $this->cms_program_model->getByCategory($notice_content, array('start' => 0, 'limit' => 5));
$data['notice'] = $notices;
$data['school'] = $school[0];
$this->form_validation->set_rules('username', $this->lang->line('username'), 'trim|required|xss_clean');
$this->form_validation->set_rules('password', $this->lang->line('password'), 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$this->load->view('userlogin', $data);
} else {
$login_post = array(
'username' => $this->input->post('username'),
'password' => $this->input->post('password')
);
$login_details = $this->user_model->checkLogin($login_post);
if (isset($login_details) && !empty($login_details)) {
$user = $login_details[0];
if ($user->is_active == "yes") {
if ($user->role == "student") {
$result = $this->user_model->read_user_information($user->id);
} else if ($user->role == "parent") {
$result = $this->user_model->checkLoginParent($login_post);
}
if ($result != false) {
$setting_result = $this->setting_model->get();
if ($result[0]->lang_id == 0) {
$language = array('lang_id' => $setting_result[0]['lang_id'], 'language' => $setting_result[0]['language']);
} else {
$language = array('lang_id' => $result[0]->lang_id, 'language' => $result[0]->language);
}
if($result[0]->role == "parent") {
$username=$result[0]->guardian_name;
if ($result[0]->guardian_relation == "Father") {
$image = $result[0]->father_pic;
} else if ($result[0]->guardian_relation == "Mother") {
$image = $result[0]->mother_pic;
} else if ($result[0]->guardian_relation == "Other") {
$image = $result[0]->guardian_pic;
}
}elseif ($result[0]->role == "student") {
$image = $result[0]->image;
$username= ($result[0]->lastname != "")? $result[0]->firstname . " " .$result[0]->lastname: $result[0]->firstname;
}
$session_data = array(
'id' => $result[0]->id,
'student_id' => $result[0]->user_id,
'role' => $result[0]->role,
'username' => $username,
'date_format' => $setting_result[0]['date_format'],
'currency_symbol' => $setting_result[0]['currency_symbol'],
'timezone' => $setting_result[0]['timezone'],
'sch_name' => $setting_result[0]['name'],
'language' => $language,
'is_rtl' => $setting_result[0]['is_rtl'],
'theme' => $setting_result[0]['theme'],
'image' => $result[0]->image,
);
$this->session->set_userdata('student', $session_data);
// $student_display_session = $this->studentsession_model->searchActiveClassSectionStudent($result[0]->user_id);
// $student_current_class = array('student_session_id'=>$student_display_session->id,'class_id' => $student_display_session->class_id,
// 'section_id' => $student_display_session->section_id);
// $this->session->set_userdata('current_class', $student_current_class);
$this->customlib->setUserLog($result[0]->username, $result[0]->role);
// redirect('user/user/dashboard');
redirect('user/user/choose');
} else {
$data['error_message'] = 'Account Suspended';
$this->load->view('userlogin', $data);
}
} else {
$data['error_message'] = $this->lang->line('your_account_is_disabled_please_contact_to_administrator');
$this->load->view('userlogin', $data);
}
} else {
$data['error_message'] = $this->lang->line('invalid_username_or_password');
$this->load->view('userlogin', $data);
}
}
}
public function savemulticlass() {
$student_id = '';
$this->form_validation->set_rules('student_id', $this->lang->line('student'), 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$msg = array(
'student_id' => form_error('student_id')
);
$array = array('status' => '0', 'error' => $msg, 'message' => '');
} else {
$data = array(
'student_id' => date('Y-m-d', strtotime($this->input->post('student_id'))),
);
$array = array('status' => 'success', 'error' => '', 'message' => $this->lang->line('success_message'));
}
echo json_encode($array);
}
}
?>
Function Calls
defined | 1 |
Stats
MD5 | 2d0331dd9663f01e74e5577cae4d14c0 |
Eval Count | 0 |
Decode Time | 178 ms |