load->model('LmsAdmin_Model');
//Load the required helpers here
$this->load->helper('common_helper');
date_default_timezone_set('Asia/Kathmandu');
$this->nepaliDateObject = new NepaliDate();
$this->nepali_current_date = cuurentNepaliDate($this->nepaliDateObject);
//echo $this->nepali_current_date."
";
//exit;
}
public function is_valid_admin_emailid($eid)
{
$this->form_validation->set_message('is_valid_admin_emailid', 'This Email Id does not exist. Please check again.');
if ($this->LmsAdmin_Model->check_is_emailid_valid($eid))
return true;
else
return false;
}
public function is_valid_admin_credentials()
{
$eid = $_POST['email'];
$encrypt_password = md5($_POST['password']);
$this->form_validation->set_message('is_valid_admin_credentials', 'Invalid password. Please check again.');
if ($this->LmsAdmin_Model->check_login_credentials($eid, $encrypt_password))
return true;
else
return false;
}
public function login()
{
$data['title'] = 'Admin Login';
$this->form_validation->set_rules('email', 'Email', 'required|valid_email|callback_is_valid_admin_emailid');
$this->form_validation->set_rules('password', 'Password', 'required');
if (isset($_POST['password']) && $_POST['password'] != '')
$this->form_validation->set_rules('password', 'Password', 'callback_is_valid_admin_credentials');
if ($this->form_validation->run() === FALSE) {
$this->load->view('lms-admin/login', $data);
} else {
$encrypt_password = md5($this->input->post('password'));
$where = 'email="' . $this->input->post('email') . '" AND password="' . $encrypt_password . '"';
$loginData = $this->LmsAdmin_Model->get_admin_details($where);
if (isset($loginData[0]) && !empty($loginData[0])) {
if ($loginData[0]['status'] == 'Active') {
if (isset($_POST['remember_me']) && $_POST['remember_me'] == 'on') {
//set 0 instead of time to remove the cookie once the browser is closed
setcookie("username", $_POST["email"], time() + 86400); //86400 seconds in a day
setcookie("password", $_POST["password"], time() + 86400);
setcookie("rem_me", 'On', time() + 86400);
} else {
if (isset($_COOKIE['username'])) {
unset($_COOKIE['username']);
setcookie('username', '');
}
if (isset($_COOKIE['password'])) {
unset($_COOKIE['password']);
setcookie('password', '');
}
if (isset($_COOKIE['rem_me'])) {
unset($_COOKIE['rem_me']);
setcookie('rem_me', '');
}
}
$lnData = array(
'lms_lin_id' => $loginData[0]['id'],
'lms_lin_name' => $loginData[0]['admin_name'],
'lms_lin_login' => true,
);
$this->session->set_userdata('lmsAULoginData', $lnData);
//Set Message
$this->session->set_flashdata('success', 'Welcome To Admin Users Dashboard.');
$redirectToHere = 'dashboard';
$detailsHere = $this->LmsAdmin_Model->get_admin_details('', "SELECT admin_role_ids FROM lms_admin WHERE id = " . $loginData[0]['id']);
if (isset($detailsHere[0]['admin_role_ids']) && $detailsHere[0]['admin_role_ids'] != '') {
$permissionDetailsHere = $this->LmsAdmin_Model->get_lms_admin_role_permissions('', "SELECT menu_ids FROM lms_admin_role_permissions WHERE admin_role_ids IN(" . $detailsHere[0]['admin_role_ids'] . ")");
$menuIdsHere = explode(',', $permissionDetailsHere[0]['menu_ids']);
if (!empty($menuIdsHere)) {
$menuDetailsHere = $this->LmsAdmin_Model->get_admin_menu_details('', "SELECT page_link FROM lms_admin_menu WHERE id =" . $menuIdsHere[0]);
if (isset($menuDetailsHere[0]['page_link']) && $menuDetailsHere[0]['page_link'] != '')
$redirectToHere = $menuDetailsHere[0]['page_link'];
}
}
redirect(base_url() . $redirectToHere);
} else {
$this->session->set_flashdata('danger', 'Your account is inactive. Please contact the administrator.');
$this->load->view('lms-admin/login', $data);
}
} else {
$this->session->set_flashdata('danger', 'Login Credential in invalid!');
$this->load->view('lms-admin/login', $data);
}
}
}
/*----------------------------------- SATRT Of Logout --------------------------------------------------------*/
public function logout()
{
$this->common_logout();
//Set Message
$this->session->set_flashdata('success', 'You are logged out successfully.');
redirect(base_url() . 'admin');
}
public function common_logout()
{
$lnEuIdId = 0;
// unset the loggout admin user data
$this->session->unset_userdata('lmsAULoginData');
}
public function ajaxLogout()
{
$this->common_logout();
echo 'Success';
exit;
}
/*----------------------------------- ENDDD Of Logout --------------------------------------------------------*/
/*----------------------------- START of Admin User Password Functionality -----------------------------*/
public function fp_check_is_emailid_valid($eid)
{
$this->form_validation->set_message('fp_check_is_emailid_valid', 'This Email Id does not exist. Please check again.');
if ($this->LmsAdmin_Model->check_is_emailid_valid($eid))
return true;
else {
return false;
}
}
public function forgot_password()
{
if (!file_exists(APPPATH . 'views/lms-admin/forgot-password.php'))
show_404();
$data['title'] = 'Forgot Password';
$this->form_validation->set_rules('email', 'email', 'required|valid_email|callback_fp_check_is_emailid_valid');
if ($this->form_validation->run() === FALSE) {
$this->load->view('lms-admin/forgot-password', $data);
} else {
$where = 'email="' . $this->input->post('email') . '" ';
$detailsHere = $this->LmsAdmin_Model->get_admin_details($where);
$rpData['nameHere'] = '';
if (isset($detailsHere[0]['admin_name']))
$rpData['nameHere'] = $detailsHere[0]['admin_name'];
$rpData['emailId'] = urlsafe_b64encode($this->input->post('email'));
$emailContent = $this->load->view('lms-admin/emails/admin-user-forgot-password.php', $rpData, TRUE);
$emailData['to'] = $this->input->post('email');
$emailData['subject'] = ' LMS - Admin User Password Recovery Mail';
$emailData['message'] = $emailContent;
//echo $emailContent;exit;
$result = ciSendEmail($emailData);
$this->session->set_userdata('isForgotPasswordSuccess', 'Yes');
$this->load->view('lms-admin/forgot-password', $data);
}
}
function reset_password($encodedEmailId)
{
if (isset($encodedEmailId) && $encodedEmailId != '') {
$decodedEmailId = urlsafe_b64decode($encodedEmailId);
$data['encodedEmailId'] = $encodedEmailId;
$data['title'] = 'Reset Password';
$this->form_validation->set_rules('password', 'Enter New Password', 'trim|required');
$this->form_validation->set_rules('conf_password', 'Retype New Password', 'required|matches[password]');
if ($this->form_validation->run() === FALSE) {
$this->load->view('lms-admin/reset-password', $data);
} else {
$where = 'email ="' . $decodedEmailId . '"';
$isValidUser = $this->LmsAdmin_Model->get_admin_details($where);
if (!empty($isValidUser) && count($isValidUser) == 1) {
$this->LmsAdmin_Model->reset_admin_password($isValidUser[0]['id'], $this->input->post('password'));
//Set Message
$this->session->set_userdata('isResetPasswordSuccess', 'Yes');
redirect('reset-password/' . $encodedEmailId);
} else {
$this->session->set_flashdata('danger', 'OOps. Something went wrong.');
redirect('reset-password/' . $encodedEmailId);
}
}
} else {
redirect(base_url() . "admin");
}
}
/*----------------------------- ENDDD of Admin User Password Functionality -----------------------------*/
public function dashboard()
{
$data['title'] = 'Dashboard';
$nepCurDate = $this->nepali_current_date;
$sql = "SELECT * FROM ((SELECT count(*) AS ttl_books FROM lms_books) AS ttl_books, (SELECT count(*) AS ttl_issed_book FROM lms_book_transactions WHERE returned_on_date IS NULL) AS ttl_ibooks, (SELECT count(*) AS ttl_late_fee FROM lms_book_transactions WHERE total_late_fee!='0') AS ttl_lfee, (SELECT count(*) AS ttl_damaged_book FROM lms_book_transactions WHERE is_damaged='Yes') AS ttl_damaged)";
$data['ttlData'] = $this->LmsAdmin_Model->get_lms_dashboard_records('', $sql);
//$where = "date(issued_date) >= ( CURDATE() - INTERVAL 7 DAY ) AND returned_on_date";
$todayDateObj = new DateTime($nepCurDate);
$todayIs = $todayDateObj->format('Y-m-d');
$intDay = date('Y-m-d', strtotime('-7 day', strtotime(date('Y-m-d'))));
$fromDayIs = convert_ADdate_to_BSdate($this->nepaliDateObject, $intDay, $character = '-');
$where = "issued_date>='" . $fromDayIs . "' AND issued_date<='" . $todayIs . "' AND returned_on_date IS NULL ";
$data['recentlyIssuedBook'] = $this->LmsAdmin_Model->getData('lms_book_transactions', $where);
$data['npCurrDate'] = $nepCurDate;
$this->load->view('lms-admin/common/left-menu', $data);
$this->load->view('lms-admin/common/header', $data);
$this->load->view('lms-admin/dashboard', $data);
}
/*----------------------------------- START Of Admin Roles --------------------------------------------------------*/
public function roles()
{
$data['title'] = 'Roles';
$sqlRole = 'SELECT r.*, rp.menu_ids FROM lms_admin_roles AS r, lms_admin_role_permissions AS rp WHERE r.id = rp.admin_role_ids';
$rolesList = $this->LmsAdmin_Model->get_lms_admin_roles('', $sqlRole);
if (!empty($rolesList)) {
foreach ($rolesList as $key => $role) {
$rPs = '';
$sqlRolePermissions = 'SELECT menu_name FROM lms_admin_menu WHERE id IN(' . $role['menu_ids'] . ')';
$rolePermissions = $this->LmsAdmin_Model->get_lms_admin_roles('', $sqlRolePermissions);
if (!empty($rolePermissions)) {
foreach ($rolePermissions as $p) {
if ($rPs == '')
$rPs = $p['menu_name'];
else
$rPs .= ',' . $p['menu_name'];
}
}
$rolesList[$key]['permissions'] = $rPs;
}
}
$data['roleList'] = $rolesList;
//echo '
'; print_r($data['roleList']);exit; $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/roles', $data); } public function ajaxCheckIsRoleAlreadyExists() { $result = 'Insufficient Data'; if (isset($_POST['role_name']) && $_POST['role_name'] != '' && isset($_POST['id']) && $_POST['id'] != '') { if ($this->LmsAdmin_Model->check_role_exists($_POST['id'], $_POST['role_name'])) $result = 'Unique Role'; else $result = 'Duplicate Role'; } echo $result; exit; } public function add_edit_role($idVal) { $sql = "SELECT * FROM lms_admin_roles WHERE id = $idVal"; $details = $this->LmsAdmin_Model->get_lms_admin_roles("id = $idVal"); if (empty($details) && $idVal != 0) redirect(base_url() . 'roles'); if ($idVal == 0) { $data['title'] = 'Add New Role'; $data['button'] = 'Save'; } else if ($idVal > 0) { $data['title'] = 'Update Role'; $data['button'] = 'Update'; } $data['details'] = $details; $data['idVal'] = $idVal; $data['menus'] = $this->LmsAdmin_Model->get_admin_menu_details('', 'SELECT id,menu_name FROM lms_admin_menu WHERE status="Active" AND parent_id=0'); $data['role_permissions'] = $this->LmsAdmin_Model->get_lms_admin_role_permissions('', "SELECT menu_ids FROM lms_admin_role_permissions WHERE admin_role_ids = $idVal"); if (count($_POST) > 0) { $permissions = ''; if (isset($_POST['role_permissions']) && !empty($_POST['role_permissions'])) { $permissions = implode(',', $_POST['role_permissions']); unset($_POST['role_permissions']); } if ($idVal == 0) $_POST['created'] = $this->nepali_current_date; else $_POST['modified'] = $this->nepali_current_date; //echo ''; print_r($_POST);exit; $res = $this->LmsAdmin_Model->add_edit_admin_role($idVal, $_POST); if ($res) { if ($permissions != '') { if ($idVal == 0) { $rpData['admin_role_ids'] = $res; $rpData['menu_ids'] = $permissions; $rpData['created'] = $this->nepali_current_date; $this->LmsAdmin_Model->add_edit_admin_role_permissions(0, $rpData); } else { $getRPrid = $this->LmsAdmin_Model->get_lms_admin_role_permissions('', "SELECT id FROM lms_admin_role_permissions WHERE admin_role_ids = $idVal"); if (isset($getRPrid[0]['id'])) { $rpData['admin_role_ids'] = $idVal; $rpData['menu_ids'] = $permissions; $rpData['modified'] = $this->nepali_current_date; $this->LmsAdmin_Model->add_edit_admin_role_permissions($getRPrid[0]['id'], $rpData); } } } $this->session->set_flashdata('success', str_replace('%s', 'new role', THE_ADD_SUCCESS_MSG)); if ($idVal > 0) $this->session->set_flashdata('success', str_replace('%s', 'role', THE_UPDATE_SUCCESS_MSG)); } redirect(base_url() . 'roles'); } $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/add-edit-role', $data); } public function deleteRoleData() { $roleId = $_POST['id']; $where = " admin_role_ids=" . $roleId; $existsUser = $this->LmsAdmin_Model->getData('lms_admin', $where); if ($existsUser) { echo 0; } else { $dwhere = " id=" . $roleId; $delete = $this->LmsAdmin_Model->deleteData('lms_admin_roles', $dwhere); if ($delete) { echo 1; } } } /*----------------------------------- ENDDD Of Admin Roles --------------------------------------------------------*/ /*----------------------------------- START Of Admin Users --------------------------------------------------------*/ public function users() { $data['title'] = 'Users'; $sql = 'SELECT a.*, ar.role_name FROM lms_admin AS a, lms_admin_roles AS ar WHERE a.admin_role_ids = ar.id'; $data['userList'] = $this->LmsAdmin_Model->get_admin_details('', $sql); $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/users', $data); } public function ajaxCheckIsUserEmailAlreadyExists() { $result = 'Insufficient Data'; if (isset($_POST['email']) && $_POST['email'] != '' && isset($_POST['id']) && $_POST['id'] != '') { if ($this->LmsAdmin_Model->check_emailid_exists($_POST['id'], $_POST['email'])) $result = 'Unique Email'; else $result = 'Duplicate Email'; } echo $result; exit; } public function add_edit_user($idVal) { $sql = "SELECT * FROM lms_admin WHERE id = $idVal"; $details = $this->LmsAdmin_Model->get_admin_details("id = $idVal"); if (empty($details) && $idVal != 0) redirect(base_url() . 'users'); if ($idVal == 0) { $data['title'] = 'Add New User'; $data['button'] = 'Save'; } else if ($idVal > 0) { $data['title'] = 'Update User'; $data['button'] = 'Update'; } $data['details'] = $details; $data['idVal'] = $idVal; $data['roles'] = $this->LmsAdmin_Model->get_lms_admin_roles('', 'SELECT id,role_name FROM lms_admin_roles WHERE status="Active"'); if (count($_POST) > 0) { if (isset($_POST['password'])) $_POST['password'] = md5($_POST['password']); if (isset($_POST['confirm_password'])) unset($_POST['confirm_password']); if ($idVal == 0) $_POST['created'] = $this->nepali_current_date; else $_POST['modified'] = $this->nepali_current_date; $res = $this->LmsAdmin_Model->add_edit_admin_user($idVal, $_POST); $this->session->set_flashdata('success', str_replace('%s', 'new user', THE_ADD_SUCCESS_MSG)); if ($idVal > 0) $this->session->set_flashdata('success', str_replace('%s', 'user', THE_UPDATE_SUCCESS_MSG)); redirect(base_url() . 'users'); } $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/add-edit-user', $data); } public function deleteUserData() { $userId = $_POST['id']; $dwhere = " id=" . $userId; $delete = $this->LmsAdmin_Model->deleteData('lms_admin', $dwhere); if ($delete) { echo 1; } } /*----------------------------------- ENDDD Of Admin Users --------------------------------------------------------*/ /*############################################ ENDDD Of Coding By Nandini ############################################*/ /*############################################ START Of Coding By Keerthi ############################################*/ //start book public function ajaxGetBookLists() { if (isset($_POST['categoryId']) && $_POST['categoryId'] != '') { $catArr['category_id'] = $_POST['categoryId']; $returnData = $this->fecthBookLists($catArr); echo $returnData; exit; } } public function books() { if (!file_exists(APPPATH . 'views/lms-admin/books.php')) show_404(); if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['title'] = 'Books'; $bookData = ''; $data['bookDetail'] = $this->fecthBookLists($bookData); $where = " is_active='Y'"; $data['categoryData'] = $this->LmsAdmin_Model->getData('lms_categories', $where); $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/books', $data); // $this->load->view('lms-admin/common/footer', $data); } else { LmsAdmin::logout(); } } public function fecthBookLists($bookData = array()) { if (isset($bookData['category_id']) && !empty($bookData['category_id'])) { $where = ' category_id=' . $bookData['category_id']; } else { $where = ''; } $bookLists = $this->LmsAdmin_Model->getData('lms_books', $where); $liData['bookDetail'] = $bookLists; $returnPage = $this->load->view('lms-admin/books-reload', $liData, true); return $returnPage; } public function add_edit_book($idVal = 0) { $page = 'add-edit-book'; if (!file_exists(APPPATH . 'views/lms-admin/' . $page . '.php')) { show_404(); } if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['idVal'] = $idVal; $data['title'] = 'Add New Book'; $data['button'] = 'Add Book'; $cwhere = " is_active='Y'"; $data['categoryData'] = $this->LmsAdmin_Model->getData('lms_categories', $cwhere); $data['gSData'] = $this->LmsAdmin_Model->getGeneralSettingData('lms_general_settings'); if ($idVal > 0) { $data['title'] = 'Edit Book'; $data['button'] = 'Update'; $where = 'id = ' . $idVal; $data['details'] = $this->LmsAdmin_Model->getData('lms_books', $where); } if (count($_POST) > 0) { $isbn = $_POST['isbn']; $where = " isbn=" . "'$isbn'"; $existsISBN = $this->LmsAdmin_Model->getData('lms_books', $where); if (isset($existsISBN) && ($idVal == 0)) { echo 0; } else { if ($idVal > 0) { $_POST['modified'] = $this->nepali_current_date; $where = ['book_id' => $idVal, 'returned_on_date =' => NULL]; $ttlIssuedBook = $this->db->get_where('lms_book_transactions', $where)->result_array(); $ttl_issued_qty = count($ttlIssuedBook); $existingBookQty = $this->db->get_where('lms_books', ['id' => $idVal])->row_array(); $qty = $existingBookQty['total_quantity']; $remQty = $existingBookQty['remaining_quantity']; $ttl = ($ttl_issued_qty) + ($remQty); $ttl_qty = $_POST['total_quantity']; if ($ttl_qty < $ttl) { echo $ttl_issued_qty . '_' . $remQty; } else { if ($ttl_qty == $ttl) { $ttlRemQty = $remQty; $ttlBookQty = $qty; } else { $ttlBookQty = $ttl_qty; $ttlRemQty = (($ttl_qty) - ($qty)) + ($remQty); } $insertUpdate = $this->LmsAdmin_Model->addEditBook($idVal, $this->input->post(), $ttlRemQty, $ttlBookQty); if ($insertUpdate) { echo 1; } } } else { $_POST['created'] = $this->nepali_current_date; $insertUpdate = $this->LmsAdmin_Model->addEditBook($idVal, $this->input->post(), '', ''); if ($insertUpdate) { echo 1; } } } } else { $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/add-edit-book', $data); } } else { LmsAdmin::logout(); } } public function importBooks() { if (isset($_FILES["upload_file"]["name"])) { $file = $_FILES["upload_file"]["tmp_name"]; $handle = fopen($file, "r"); $c = 0; $dataArray = array(); while (($filesop = fgetcsv($handle, 1000, ",")) !== false) { $category_id = $filesop[0]; $isbn = $filesop[1]; $title = $filesop[2]; $author = $filesop[3]; $publisher = $filesop[4]; $published_year = $filesop[5]; $price = $filesop[6]; $total_no_of_pages = $filesop[7]; $total_quantity = $filesop[8]; $remaining_quantity = $filesop[9]; $rack_no = $filesop[10]; $description = $filesop[11]; $can_be_issued_for = 0; $fine_per_day = 0; if ($c <> 0) { $dataArray[] = array('category_id' => $category_id, 'isbn' => $isbn, 'title' => $title, 'author' => $author, 'publisher' => $publisher, 'published_year' => $published_year, 'price' => $price, 'total_no_of_pages' => $total_no_of_pages, 'total_quantity' => $total_quantity, 'remaining_quantity' => $remaining_quantity, 'rack_no' => $rack_no, 'description' => $description, 'can_be_issued_for' => $can_be_issued_for, 'fine_per_day' => $fine_per_day); } $c = $c + 1; } foreach ($dataArray as $data) { $isbn = $data['isbn']; $where = ' isbn=' . "'$isbn'"; $duplicate = $this->LmsAdmin_Model->getData('lms_books', $where); if ($duplicate) { $idVal = $duplicate['id']; $_POST['modified'] = $this->nepali_current_date; $insertUpdate = $this->LmsAdmin_Model->addEditBook($idVal, $data); } else { $idVal = 0; $_POST['created'] = $this->nepali_current_date; $insertUpdate = $this->LmsAdmin_Model->addEditBook($idVal, $data); } } if ($insertUpdate) { $this->session->set_flashdata('success', 'Book detail imported successfully.'); redirect(base_url() . 'books'); } } } public function checkExistingBook() { $isbn = $_POST['isbn']; $where = ' isbn=' . "'$isbn'"; $existingBook = $this->LmsAdmin_Model->getData('lms_books', $where); if ($existingBook) { $remQty = $existingBook['remaining_quantity']; if ($remQty == 0) { echo 0; } else { echo 1; } } } public function deleteBookData() { $book_id = $_POST['bookId']; $where = " book_id=" . $book_id; $checkExistsInIssued = $this->LmsAdmin_Model->getData('lms_book_transactions', $where); if ($checkExistsInIssued) { echo 0; } else { $dwhere = " id=" . $book_id; $delete = $this->LmsAdmin_Model->deleteData('lms_books', $dwhere); if ($delete) { echo 1; } } } //end book //start settings public function generalSettings() { if (!file_exists(APPPATH . 'views/lms-admin/general-settings.php')) show_404(); if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['title'] = 'General Settings'; $data['gSData'] = $this->LmsAdmin_Model->getGeneralSettingData('lms_general_settings'); if (count($_POST) > 0) { $idVal = $_POST['id']; if ($idVal == 0) $_POST['created'] = $this->nepali_current_date; else $_POST['modified'] = $this->nepali_current_date; $insertUpdate = $this->LmsAdmin_Model->addEditGeneralSettings($idVal, $this->input->post()); if ($insertUpdate) { echo 1; } } else { $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/general-settings', $data); } } else { LmsAdmin::logout(); } } public function getCategoryData() { if (!file_exists(APPPATH . 'views/lms-admin/category.php')) show_404(); if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['title'] = 'Categories'; $data['categoryData'] = $this->LmsAdmin_Model->getData('lms_categories', ''); if (count($_POST) > 0) { $idVal = $_POST['id']; $name = $_POST['name']; $where = " name=" . "'$name'"; $exsistingCat = $this->LmsAdmin_Model->getData('lms_categories', $where); if (($exsistingCat) && ($idVal == 0)) { echo 0; } else { if ($idVal == 0) $_POST['created'] = $this->nepali_current_date; else $_POST['modified'] = $this->nepali_current_date; $insertUpdate = $this->LmsAdmin_Model->addEditCatgeoryData($idVal, $this->input->post()); if ($insertUpdate) { echo 1; } } } else { $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/category', $data); } } else { LmsAdmin::logout(); } } public function deleteCategoryData() { $categoryId = $_POST['categoryId']; $tableName = $_POST['tableName']; $existingData = $this->db->get_where('lms_books', ['category_id' => $categoryId])->row(); if ($existingData) { echo 0; } else { $where = ' id=' . $categoryId; $delete = $this->LmsAdmin_Model->deleteData($tableName, $where); if ($delete) { echo 1; } } } public function getCategoryById() { $categoryId = $_POST['categoryId']; $tableName = $_POST['tableName']; $where = ' id=' . $categoryId; $data = $this->LmsAdmin_Model->getData($tableName, $where); if ($data['is_active'] == 'Y') { $status = 'Active'; } elseif ($data['is_active'] == 'N') { $status = 'Inactive'; } $html = ''; echo $html; } //end settings //start issued book public function ajaxIssuedBookDetail() { if (isset($_POST['startdate']) && $_POST['startdate'] != '') $reqArr['startdate'] = $_POST['startdate']; if (isset($_POST['enddate']) && $_POST['enddate'] != '') $reqArr['enddate'] = $_POST['enddate']; if (isset($_POST['option']) && $_POST['option'] != '') { $reqArr['option'] = $_POST['option']; } else { $reqArr['option'] = ''; } $returnData = $this->fetchIssedBookData($reqArr); echo $returnData; exit; } public function issued_books() { if (!file_exists(APPPATH . 'views/lms-admin/issued-books.php')) show_404(); if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['title'] = 'Issued Books'; $options = ''; $startDate = ''; $endDate = ''; if (count($_POST) > 0) { if (isset($_POST['startdate']) && $_POST['startdate'] != '') { $iBookData['startdate'] = $_POST['startdate']; $startDate = $_POST['startdate']; } if (isset($_POST['enddate']) && $_POST['enddate'] != '') { $iBookData['enddate'] = $_POST['enddate']; $endDate = $_POST['enddate']; } if (isset($_POST['option']) && $_POST['option'] != '') { $iBookData['option'] = $_POST['option']; $options = $_POST['option']; } } $iBookData = ''; $data['issuedBookData'] = $this->fetchIssedBookData($iBookData); $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/issued-books', $data); } else { LmsAdmin::logout(); } } public function fetchIssedBookData($iBookData = array()) { $todayDateObj = new DateTime($this->nepali_current_date); $today = $todayDateObj->format('Y-m-d'); if (isset($iBookData['startdate']) && !empty($iBookData['startdate']) && isset($iBookData['enddate']) && !empty($iBookData['option']) && isset($iBookData['option']) && !empty($iBookData['enddate'])) { $where = " DATE(issued_date) >= '" . $iBookData['startdate'] . "' AND DATE(issued_date) <= '" . $iBookData['enddate'] . "' AND DATE(return_date) < '" . $today . "'"; } elseif (isset($iBookData['startdate']) && !empty($iBookData['startdate']) && isset($iBookData['enddate']) && !empty($iBookData['enddate'])) { $where = " DATE(issued_date) >= '" . $iBookData['startdate'] . "' AND DATE(issued_date) <= '" . $iBookData['enddate'] . "'"; } elseif (isset($iBookData['enddate']) && !empty($iBookData['enddate'])) { $where = " DATE(issued_date) <= '" . $iBookData['enddate'] . "'"; } elseif (isset($iBookData['enddate']) && !empty($iBookData['enddate'])) { $where = " DATE(issued_date) <= '" . $iBookData['enddate'] . "'"; } elseif (isset($iBookData['option ']) && !empty($iBookData['option '])) { $where = " DATE(return_date) <= '" . $today . "'"; } else { $where = ""; } $issuedBookLists = $this->LmsAdmin_Model->get_issed_book_data('lms_book_transactions', $where); $liData['issuedBookData'] = $issuedBookLists; $liData['npCurrDate'] = $this->nepali_current_date; $returnPage = $this->load->view('lms-admin/issued-books-reload', $liData, true); return $returnPage; } public function add_edit_issue_book($idVal = 0) { $page = 'add-edit-issue-book'; if (!file_exists(APPPATH . 'views/lms-admin/' . $page . '.php')) { show_404(); } if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['idVal'] = $idVal; $data['title'] = 'Issue Book'; $data['button'] = 'Add Book'; $data['gSData'] = $this->LmsAdmin_Model->getGeneralSettingData('lms_general_settings'); if ($idVal > 0) { $data['title'] = 'Edit Issue Book'; $data['button'] = 'Update Book'; } if (count($_POST) > 0) { if (isset($_POST['eu_unique_id']) && !empty($_POST['eu_unique_id'])) { $ttl_rows = $_POST['ttlrows']; $eu_id = $_POST['eu_unique_id']; $idate = explode(',', $_POST['issueddate']); $rdate = explode(',', $_POST['returndate']); $bhealth = explode(',', $_POST['bookhealth']); $isbn = $_POST['isbn']; $title = $_POST['title']; for ($i = 0; $i < count($isbn); $i++) { $data = $this->db->get_where('lms_books', ['isbn' => $isbn[$i]])->row_array(); $bisbn[] = $isbn[$i]; $bid[] = $data['id']; $euid[] = $eu_id; $i_date[] = $idate[$i]; $r_date[] = $rdate[$i]; $b_health[] = $bhealth[$i]; } $vals = array_count_values($bisbn); $book_isbn = array(); foreach ($vals as $key => $val) { $b_isbn = $key; $b_ttlrows = $val; $data = $this->db->get_where('lms_books', ['isbn' => $b_isbn])->row_array(); $ttlremqty = $data['remaining_quantity']; if ($b_ttlrows > $ttlremqty) { $book_isbn[] = 'The book ' . $b_isbn . ' is having remaining quantity ' . $ttlremqty . ' you can not issue more than that.'; } } if (!empty($book_isbn)) { $message = implode(' , ', $book_isbn); $this->session->set_flashdata('failure', $message); redirect(base_url() . 'add-edit-issue-book/0'); } else { $dataArray = array( 'book_id' => $bid, 'eu_unique_id' => $euid, 'issued_date' => $i_date, 'return_date' => $r_date, 'book_health' => $b_health, 'created_on' => $this->nepali_current_date, 'modified_on' => $this->nepali_current_date, ); $insertUpdate = $this->LmsAdmin_Model->addEditissuedBookData($idVal, $dataArray); if ($insertUpdate) { $this->session->set_flashdata('success', 'The book has been issued successfully.'); redirect(base_url() . 'add-edit-issue-book/0'); } } } else { $this->session->set_flashdata('failure', 'Please add book details to issue the book.'); redirect(base_url() . 'add-edit-issue-book/0'); } } else { $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/' . $page, $data); } } else { LmsAdmin::logout(); } } public function getDataById() { $id = $_POST['id']; $tableName = $_POST['tableName']; if ($tableName == 'lms_books') { $where = ' isbn=' . "'$id'"; } $data = $this->LmsAdmin_Model->getData($tableName, $where); if ($tableName == 'lms_books') { $catData = $this->db->get_where('lms_categories', ['id' => $data['category_id']])->row_array(); $cat_name = $catData['name']; $issueData = $this->db->get('lms_general_settings')->row_array(); if ($data['can_be_issued_for'] == 0) { $data['lending_days'] = $issueData['can_be_issued_for']; } else { $data['lending_days'] = $data['can_be_issued_for']; } $data['category_name'] = $cat_name; } print_r(json_encode($data)); } public function getStudentDataById() { $stdIs = $_POST['id']; $data = $this->LmsAdmin_Model->getStudentDataById($stdIs); $cnt = 0; $ttlBookCnt = 0; if ($data) { $eu_unique_id = $data['studentId']; $where = ['eu_unique_id' => $eu_unique_id, 'returned_on_date=' => NULL]; $existingBookData = $this->db->get_where('lms_book_transactions', $where)->result_array(); $bookPerUserData = $this->LmsAdmin_Model->getGeneralSettingData('lms_general_settings'); $ttlBookCnt = $bookPerUserData['no_of_book_per_user']; $cnt = count($existingBookData); $data['ttl_issued_book_cnt'] = $ttlBookCnt; $data['eu_issued_book_cnt'] = $cnt; } else { $data['ttl_issued_book_cnt'] = $ttlBookCnt; $data['eu_issued_book_cnt'] = $cnt; } print_r(json_encode($data)); } //end issued book //start returned book public function ajaxReturnedBookDetail() { if (isset($_POST['startdate']) && $_POST['startdate'] != '') $reqArr['startdate'] = $_POST['startdate']; if (isset($_POST['enddate']) && $_POST['enddate'] != '') $reqArr['enddate'] = $_POST['enddate']; if (isset($_POST['option']) && $_POST['option'] != '') { $reqArr['option'] = $_POST['option']; } else { $reqArr['option'] = ''; } $returnData = $this->fetchReturnedBookData($reqArr); echo $returnData; exit; } public function returned_books() { if (!file_exists(APPPATH . 'views/lms-admin/returned-books.php')) show_404(); if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['title'] = 'Returned Books'; $options = ''; $startDate = ''; $endDate = ''; if (count($_POST) > 0) { if (isset($_POST['startdate']) && $_POST['startdate'] != '') { $rBookData['startdate'] = $_POST['startdate']; $startDate = $_POST['startdate']; } if (isset($_POST['enddate']) && $_POST['enddate'] != '') { $rBookData['enddate'] = $_POST['enddate']; $endDate = $_POST['enddate']; } if ( isset($_POST['option']) && $_POST['option'] != '' ) { $rBookData['option'] = $_POST['option']; $options = $_POST['option']; } } $rBookData = ''; $data['returnedBookData'] = $this->fetchReturnedBookData($rBookData); $this->load->view( 'lms-admin/common/left-menu', $data ); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/returned-books', $data); } else { LmsAdmin::logout(); } } public function fetchReturnedBookData($rBookData = array()) { $todayDateObj = new DateTime($this->nepali_current_date); $today = $todayDateObj->format('Y-m-d'); if (isset($rBookData['startdate']) && !empty($rBookData['startdate']) && isset($rBookData['enddate']) && !empty($rBookData['option']) && isset($rBookData['option']) && !empty($rBookData['enddate'])) { $where = " DATE(returned_on_date) >= '" . $rBookData['startdate'] . "' AND DATE(returned_on_date) <= '" . $rBookData['enddate'] . "' AND DATE(return_date) < '" . $today . "'"; } elseif (isset($rBookData['startdate']) && !empty($rBookData['startdate']) && isset($rBookData['enddate']) && !empty($rBookData['enddate'])) { $where = " DATE(returned_on_date) >= '" . $rBookData['startdate'] . "' AND DATE(returned_on_date) <= '" . $rBookData['enddate'] . "'"; } elseif (isset($rBookData['enddate']) && !empty($rBookData['enddate'])) { $where = " DATE(returned_on_date) <= '" . $rBookData['enddate'] . "'"; } elseif (isset($rBookData['enddate']) && !empty($rBookData['enddate'])) { $where = " DATE(returned_on_date) <= '" . $rBookData['enddate'] . "'"; } elseif (isset($rBookData['option ']) && !empty($rBookData['option '])) { $where = " DATE(returned_on_date) <= '" . $today . "'"; } else { $where = " returned_on_date!=''"; } //echo $where; $returnedBookLists = $this->LmsAdmin_Model->get_returned_book_data('lms_book_transactions', $where); $liData['returnedBookData'] = $returnedBookLists; $returnPage = $this->load->view('lms-admin/returned-books-reload', $liData, true); return $returnPage; } public function receive_book() { if (!file_exists(APPPATH . 'views/lms-admin/receive-book.php')) show_404(); if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['title'] = 'Receive Book'; if (count($_POST) > 0) { $eu_id = $_POST['eu_unique_id']; $euId = $this->LmsAdmin_Model->getStudentDataById($eu_id); $where = " eu_unique_id=" . "'$eu_id'"; $existsUser = $this->LmsAdmin_Model->getData('lms_book_transactions', $where); if (!$existsUser) { echo 0; } else { echo $euId['id']; } } else { $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/receive-book', $data); } } else { LmsAdmin::logout(); } } public function receive_book_detail($euId = '') { if (!file_exists(APPPATH . 'views/lms-admin/receive-book-detail.php')) show_404(); if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['title'] = 'Receive Book'; $data['userData'] = $this->LmsAdmin_Model->getStudentInfo($euId); if ($data['userData']) { $eu_unique_id = $data['userData']['studentId']; $userWhere = " returned_on_date IS NULL AND eu_unique_id=" . "'$eu_unique_id'"; $data['bookDetail'] = $this->LmsAdmin_Model->getData('lms_book_transactions', $userWhere); } $data['gSData'] = $this->LmsAdmin_Model->getGeneralSettingData('lms_general_settings'); $data['npCurrDate'] = $this->nepali_current_date; $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/receive-book-detail', $data); } else { LmsAdmin::logout(); } } public function addComment() { if (isset($_POST['id']) && !empty($_POST['id'])) { $idVal = $_POST['id']; if (isset($_POST['is_damaged'])) { $damaged = 'Yes'; } else { $damaged = 'No'; } $dam_comment = $_POST['damaged_comment']; $dataArray = array( 'is_damaged' => $damaged, 'damaged_comment' => $dam_comment ); $insertComment = $this->LmsAdmin_Model->addCommentData($idVal, $dataArray); if ($insertComment) { echo 1; } } } public function returnedBookData() { if (isset($_POST['returnedBook']) && !empty($_POST['returnedBook'])) { $returnedId = $_POST['returnedBook']; $update = $this->LmsAdmin_Model->addReturnedBook($returnedId); echo $update; //echo '';print_r($update); /*if($update) { echo 1; }*/ } } public function getCommentData() { $commentId = $_POST['CommentId']; $table = $_POST['tableName']; $where = ' id=' . $commentId; $data = $this->LmsAdmin_Model->getData($table, $where); $dataArray = array( 'comment' => $data['damaged_comment'], 'isDamaged' => $data['is_damaged'] ); print_r(json_encode($dataArray)); } //end returned book //start student public function ajaxGetUserData() { if (isset($_POST['class']) && $_POST['class'] != '') { $catArr['class'] = $_POST['class']; $returnData = $this->fecthUserData($catArr); echo $returnData; exit; } } public function students() { if (!file_exists(APPPATH . 'views/lms-admin/students.php')) show_404(); if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['title'] = 'Students'; $userData = ''; $data['studentData'] = $this->fecthUserData($userData); // $distinct = $this->db->distinct(); // $data['classData'] = $this->LmsAdmin_Model->get_user_data('lms_end_users', '', $distinct); $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/students', $data); } else { LmsAdmin::logout(); } } public function fecthUserData($userData = array()) { // if(isset($userData['class']) && !empty($userData['class'])){ // $class = $userData['class']; // $where = " unq_id LIKE '%ECS%' AND class_name="."'$class'"; // }else{ // $where = " unq_id LIKE '%ECS%'"; // } $userLists = $this->LmsAdmin_Model->get_user_data('students'); $liData['studentData'] = $userLists; $returnPage = $this->load->view('lms-admin/students-reload', $liData, true); return $returnPage; } public function students_info($stdId = '') { if (!file_exists(APPPATH . 'views/lms-admin/students-info.php')) show_404(); if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['title'] = 'Student Info'; $where = " id=" . $stdId; $data['studentInfo'] = $this->LmsAdmin_Model->getStudentInfo($stdId); $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/students-info', $data); } else { LmsAdmin::logout(); } } //end student //start damaged book public function damaged_books() { if (!file_exists(APPPATH . 'views/lms-admin/damaged-books.php')) show_404(); if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['title'] = 'Damaged Books'; $where = " is_damaged=" . "'Yes'"; $data['damagedBookData'] = $this->LmsAdmin_Model->getData('lms_book_transactions', $where); $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/damaged-books', $data); } else { LmsAdmin::logout(); } } public function damaged_books_details($dBId = '') { if (!file_exists(APPPATH . 'views/lms-admin/damaged-books-details.php')) show_404(); if ($_SESSION['lmsAULoginData']['lms_lin_login'] == 1) { $data['title'] = 'Damaged Books'; $where = " book_id=" . $dBId; $data['damagedBookDetail'] = $this->LmsAdmin_Model->getData('lms_book_transactions', $where); $data['bookData'] = $this->db->get_where('lms_books', ['id' => $dBId])->row_array(); $this->load->view('lms-admin/common/left-menu', $data); $this->load->view('lms-admin/common/header', $data); $this->load->view('lms-admin/damaged-books-details', $data); } else { LmsAdmin::logout(); } } //end damaged book /*############################################ ENDDD Of Coding By Keerthi ############################################*/ }