status Updation new files: kdk
This commit is contained in:
parent
f3b46277f6
commit
06c6dddeea
318
Apollo/api/application/controllers/StatusUpdation_Controller.php
Normal file
318
Apollo/api/application/controllers/StatusUpdation_Controller.php
Normal file
@ -0,0 +1,318 @@
|
||||
<?php
|
||||
|
||||
defined('BASEPATH') OR exit('No direct script access allowed');
|
||||
|
||||
// This can be removed if you use __autoload() in config.php OR use Modular Extensions
|
||||
/** @noinspection PhpIncludeInspection */
|
||||
require_once APPPATH . '/libraries/REST_Controller.php';
|
||||
|
||||
/**
|
||||
* This is an example of a few basic user interaction methods you could use
|
||||
* all done with a hardcoded array
|
||||
*
|
||||
* @package CodeIgniter
|
||||
* @subpackage Rest Server
|
||||
* @category Controller
|
||||
* @author
|
||||
* @license MIT
|
||||
* @link
|
||||
*/
|
||||
class StatusUpdation_Controller extends REST_Controller {
|
||||
|
||||
/*
|
||||
* status Updation details
|
||||
* params:
|
||||
* created by kdk
|
||||
* */
|
||||
function __construct()
|
||||
{
|
||||
// Construct the parent class
|
||||
parent::__construct();
|
||||
$this->methods['getUniversity_post']['limit'] = 100;
|
||||
$this->methods['chkUnivIdExistDetail_post']['limit'] = 100;
|
||||
// load the university model
|
||||
$this->load->model('StatusUpdation_model', 'statusupdation_model');
|
||||
}
|
||||
|
||||
// get University, Course, Branch Detailss
|
||||
public function getUniveCourseBratch_post() {
|
||||
$reqData = $this->post('data');
|
||||
$loginUserId = $reqData['localUserID'];
|
||||
$loginUserBranchId = $reqData['localBranchID'];
|
||||
$loginUserType = $reqData['localType'];
|
||||
$getUniversityListDetails = $this->statusupdation_model->get_university_course_batch();// Check if the employee exist
|
||||
if ($getUniversityListDetails)
|
||||
{
|
||||
$getUniversityListDetails['status'] = REST_Controller::HTTP_OK;
|
||||
// Set the response and exit
|
||||
$this->response($getUniversityListDetails, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
|
||||
}
|
||||
else
|
||||
{
|
||||
// Set the response and exit
|
||||
$this->response([
|
||||
'message' => 'No list were found',
|
||||
'status' => REST_Controller::HTTP_NOT_FOUND
|
||||
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
|
||||
}
|
||||
}
|
||||
|
||||
// ger Result fot searched keyword details
|
||||
public function getSearchDetails_post() {
|
||||
$reqSearchData = $this->post('data');
|
||||
$reqData = $this->post('requestDetails');
|
||||
// print_r($reqSearchData);exit();
|
||||
|
||||
$getSearchDetails = $this->statusupdation_model->get_search_result($reqSearchData, $reqData);// Check if the employee exist
|
||||
if ($getSearchDetails)
|
||||
{
|
||||
$getSearchDetails['status'] = REST_Controller::HTTP_OK;
|
||||
// Set the response and exit
|
||||
$this->response($getSearchDetails, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
|
||||
}
|
||||
else
|
||||
{
|
||||
// Set the response and exit
|
||||
$this->response([
|
||||
'message' => 'No list were found',
|
||||
'status' => REST_Controller::HTTP_NOT_FOUND
|
||||
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
|
||||
}
|
||||
}
|
||||
|
||||
// get Sem/year for the respective course
|
||||
public function getSemYearForCourse_post() {
|
||||
$reqData = $this->post('data');
|
||||
|
||||
$getSemYeatList = $this->statusupdation_model->get_semyear_result($reqData);// Check if the employee exist
|
||||
if ($getSemYeatList)
|
||||
{
|
||||
$getSemYeatList['status'] = REST_Controller::HTTP_OK;
|
||||
// Set the response and exit
|
||||
$this->response($getSemYeatList, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
|
||||
}
|
||||
else
|
||||
{
|
||||
// Set the response and exit
|
||||
$this->response([
|
||||
'message' => 'No list were found',
|
||||
'status' => REST_Controller::HTTP_NOT_FOUND
|
||||
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// update the study material Status
|
||||
public function updateStudentMaterialStatus_post() {
|
||||
$reqData = $this->post('data');
|
||||
$reqDetails = $this->post('requestDetails');
|
||||
|
||||
$time = date('Y-m-d H:i:s');
|
||||
$dateTime = $time;
|
||||
|
||||
$count = count($reqData);
|
||||
// echo $reqDetails['localUserID'];exit();
|
||||
|
||||
for($i=0; $i < $count; $i++) {
|
||||
$data[] = array(
|
||||
'StudentID' => $reqData[$i]['StudentID'],
|
||||
'CourseID' => $reqData[$i]['CourseID'],
|
||||
'BranchCode' => $reqData[$i]['BranchCode'],
|
||||
'ListCode' => $reqData[$i]['ListCode'],
|
||||
'SDate' => $reqData[$i]['SDate'],
|
||||
'Coursedetail' => $reqData[$i]['Coursedetail'],
|
||||
'Comments' => $reqData[$i]['Comments'],
|
||||
'CreatedBy' => $reqDetails['localUserID'],
|
||||
'CreatedOn' => $dateTime,
|
||||
);
|
||||
}
|
||||
|
||||
$updateStudentMaterialSta = $this->statusupdation_model->update_semyear($data);// Check if the employee exist
|
||||
if ($updateStudentMaterialSta)
|
||||
{
|
||||
$updateStudentMaterialSta['status'] = REST_Controller::HTTP_OK;
|
||||
// Set the response and exit
|
||||
$this->response($updateStudentMaterialSta, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
|
||||
}
|
||||
else
|
||||
{
|
||||
// Set the response and exit
|
||||
$this->response([
|
||||
'message' => 'No list were found',
|
||||
'status' => REST_Controller::HTTP_NOT_FOUND
|
||||
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
|
||||
}
|
||||
}
|
||||
|
||||
// update Answer booklet status
|
||||
public function updateAnswerBookLetStatus_post() {
|
||||
$reqData = $this->post('data');
|
||||
$reqDetails = $this->post('requestDetails');
|
||||
|
||||
$time = date('Y-m-d H:i:s');
|
||||
$dateTime = $time;
|
||||
|
||||
$count = count($reqData);
|
||||
// echo $reqDetails['localUserID'];exit();
|
||||
|
||||
for($i=0; $i < $count; $i++) {
|
||||
$data[] = array(
|
||||
'StudentID' => $reqData[$i]['StudentID'],
|
||||
'CourseID' => $reqData[$i]['CourseID'],
|
||||
'BranchCode' => $reqData[$i]['BranchCode'],
|
||||
'ListCode' => $reqData[$i]['ListCode'],
|
||||
'AnsDate' => $reqData[$i]['SDate'],
|
||||
'Coursedetail' => $reqData[$i]['Coursedetail'],
|
||||
'Comments' => $reqData[$i]['Comments'],
|
||||
'CreatedBy' => $reqDetails['localUserID'],
|
||||
'CreatedOn' => $dateTime,
|
||||
);
|
||||
}
|
||||
|
||||
$updateAnswerBookletStat = $this->statusupdation_model->update_answerbooklet($data);// Check if the employee exist
|
||||
if ($updateAnswerBookletStat)
|
||||
{
|
||||
$updateAnswerBookletStat['status'] = REST_Controller::HTTP_OK;
|
||||
// Set the response and exit
|
||||
$this->response($updateAnswerBookletStat, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
|
||||
}
|
||||
else
|
||||
{
|
||||
// Set the response and exit
|
||||
$this->response([
|
||||
'message' => 'No list were found',
|
||||
'status' => REST_Controller::HTTP_NOT_FOUND
|
||||
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
|
||||
}
|
||||
}
|
||||
|
||||
// get certification type list
|
||||
public function getCertificateList_post() {
|
||||
$reqData = $this->post('data');
|
||||
|
||||
$certificateList = $this->statusupdation_model->get_certificate_list();// Check if the employee exist
|
||||
if ($certificateList)
|
||||
{
|
||||
$certificateList['status'] = REST_Controller::HTTP_OK;
|
||||
// Set the response and exit
|
||||
$this->response($certificateList, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
|
||||
}
|
||||
else
|
||||
{
|
||||
// Set the response and exit
|
||||
$this->response([
|
||||
'message' => 'No list were found',
|
||||
'status' => REST_Controller::HTTP_NOT_FOUND
|
||||
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// update certification status
|
||||
public function updateCertificationStatus_post() {
|
||||
$reqData = $this->post('data');
|
||||
$reqDetails = $this->post('requestDetails');
|
||||
|
||||
$time = date('Y-m-d H:i:s');
|
||||
$dateTime = $time;
|
||||
|
||||
$count = count($reqData);
|
||||
// echo $reqDetails['localUserID'];exit();
|
||||
|
||||
for($i=0; $i < $count; $i++) {
|
||||
$data[] = array(
|
||||
'StudentID' => $reqData[$i]['StudentID'],
|
||||
'CourseID' => $reqData[$i]['CourseID'],
|
||||
'BranchCode' => $reqData[$i]['BranchCode'],
|
||||
'ListCode' => $reqData[$i]['ListCode'],
|
||||
'CDate' => $reqData[$i]['SDate'],
|
||||
'Coursedetail' => $reqData[$i]['Coursedetail'],
|
||||
'Comments' => $reqData[$i]['Comments'],
|
||||
'CreatedBy' => $reqDetails['localUserID'],
|
||||
'CreatedOn' => $dateTime,
|
||||
'CertificationType' => $reqData[$i]['CertificateType'],
|
||||
'CertificationNo' =>$reqData[$i]['CertificateNumber'],
|
||||
);
|
||||
}
|
||||
|
||||
$updateCertificateStatus = $this->statusupdation_model->update_certificateStatus($data);// Check if the employee exist
|
||||
if ($updateCertificateStatus)
|
||||
{
|
||||
$updateCertificateStatus['status'] = REST_Controller::HTTP_OK;
|
||||
// Set the response and exit
|
||||
$this->response($updateCertificateStatus, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
|
||||
}
|
||||
else
|
||||
{
|
||||
// Set the response and exit
|
||||
$this->response([
|
||||
'message' => 'No list were found',
|
||||
'status' => REST_Controller::HTTP_NOT_FOUND
|
||||
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
|
||||
}
|
||||
}
|
||||
|
||||
// update application status
|
||||
public function updateApplicationStatus_post() {
|
||||
$reqData = $this->post('data');
|
||||
$reqDetails = $this->post('requestDetails');
|
||||
|
||||
$time = date('Y-m-d H:i:s');
|
||||
$dateTime = $time;
|
||||
|
||||
$count = count($reqData);
|
||||
// echo $reqDetails['localUserID'];exit();
|
||||
|
||||
for($i=0; $i < $count; $i++) {
|
||||
$data[] = array(
|
||||
'StudentID' => $reqData[$i]['StudentID'],
|
||||
'CourseID' => $reqData[$i]['StudentID'],
|
||||
'BranchCode' => $reqData[$i]['BranchCode'],
|
||||
'ListCode' => $reqData[$i]['ListCode'],
|
||||
'AppDate' => $reqData[$i]['SDate'],
|
||||
'Comments' => $reqData[$i]['Comments'],
|
||||
'CreatedBy' => $reqDetails['localUserID'],
|
||||
'CreatedOn' => $dateTime,
|
||||
);
|
||||
}
|
||||
|
||||
$updateApplicationStatus = $this->statusupdation_model->update_applicationStatus($data);// Check if the employee exist
|
||||
if ($updateApplicationStatus)
|
||||
{
|
||||
$updateApplicationStatus['status'] = REST_Controller::HTTP_OK;
|
||||
// Set the response and exit
|
||||
$this->response($updateApplicationStatus, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
|
||||
}
|
||||
else
|
||||
{
|
||||
// Set the response and exit
|
||||
$this->response([
|
||||
'message' => 'No list were found',
|
||||
'status' => REST_Controller::HTTP_NOT_FOUND
|
||||
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
|
||||
}
|
||||
}
|
||||
|
||||
// get Status list based on the required activity
|
||||
public function getStatusListForUpdate_post() {
|
||||
$reqData = $this->post('data');
|
||||
$reqDetails = $this->post('statusFor');
|
||||
|
||||
$getStatusList = $this->statusupdation_model->get_status_list($reqDetails);// Check if the employee exist
|
||||
if ($getStatusList)
|
||||
{
|
||||
$getStatusList['status'] = REST_Controller::HTTP_OK;
|
||||
// Set the response and exit
|
||||
$this->response($getStatusList, REST_Controller::HTTP_OK); // OK (200) being the HTTP response code
|
||||
}
|
||||
else
|
||||
{
|
||||
// Set the response and exit
|
||||
$this->response([
|
||||
'message' => 'No list were found',
|
||||
'status' => REST_Controller::HTTP_NOT_FOUND
|
||||
], REST_Controller::HTTP_NOT_FOUND); // NOT_FOUND (404) being the HTTP response code
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
286
Apollo/api/application/models/StatusUpdation_model.php
Normal file
286
Apollo/api/application/models/StatusUpdation_model.php
Normal file
@ -0,0 +1,286 @@
|
||||
<?php
|
||||
/**
|
||||
* Date: 11/9/17
|
||||
* Time: 5:28 PM
|
||||
*/
|
||||
defined('BASEPATH') OR exit('No direct script access allowed');
|
||||
|
||||
class StatusUpdation_model extends CI_Model
|
||||
{
|
||||
|
||||
/*
|
||||
* status updation details
|
||||
* params:
|
||||
* created by kdk
|
||||
* */
|
||||
|
||||
|
||||
// get status list
|
||||
public function get_status_list() {
|
||||
$this->db->select('ListCode, ListName');
|
||||
$this->db->order_by('CreatedOn', 'DESC');
|
||||
$this->db->from('T_PickListDetails');
|
||||
$this->db->where('ListCode', 'S034');
|
||||
$staDetails = $this->db->get();
|
||||
$statusDetails = $staDetails->result();
|
||||
if (count($statusDetails) > 0) {
|
||||
$results['statusList'] = true;
|
||||
$results['statusList_details'] = $statusDetails;
|
||||
} else {
|
||||
$results['statusList'] = false;
|
||||
$results['message'] = 'No record found';
|
||||
}
|
||||
return $results;
|
||||
}
|
||||
|
||||
// update Application status
|
||||
public function update_applicationStatus($arr) {
|
||||
$this->db->insert_batch('T_ApplicationStatus', $arr);
|
||||
if ($this->db->affected_rows() >= 1) {
|
||||
$result['addStatus'] = true;
|
||||
$result['message'] = "Successfully Application Status Updated";
|
||||
} else {
|
||||
$result['addStatus'] = false;
|
||||
$result['message'] = "Something went wrong.please try again";
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
// update certificate stauts
|
||||
public function update_certificateStatus($arr) {
|
||||
// $dateToMsg = $arr[0]['CDate'];
|
||||
$this->db->insert_batch('T_CertificationStatus', $arr);
|
||||
if ($this->db->affected_rows() >= 1) {
|
||||
if((get_status_name_ListCode($arr[0]['ListCode'] == 'Received' || 'received') || (get_status_name_ListCode($arr[0]['ListCode'] == 'Issued' || 'issued') ) {
|
||||
$dateToMsg = $arr[0]['CDate'];
|
||||
$mesg = "Your new password for logging into Apollo student portal is $dateToMsg'. Please change the password as soon as you login.";
|
||||
$this->smssend($arr, $mesg);
|
||||
}
|
||||
$result['addStatus'] = true;
|
||||
$result['message'] = "Successfully Certification Status Updated";
|
||||
} else {
|
||||
$result['addStatus'] = false;
|
||||
$result['message'] = "Something went wrong.please try again";
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
// get certificate list
|
||||
public function get_certificate_list() {
|
||||
$this->db->select('*');
|
||||
$this->db->order_by('CreatedOn', 'DESC');
|
||||
$this->db->from('T_CertificationMaster');
|
||||
$this->db->where('IsActive', 1);
|
||||
$cerfDetails = $this->db->get();
|
||||
$certificateDetails = $cerfDetails->result();
|
||||
if (count($certificateDetails) > 0) {
|
||||
$results['certificateStatus'] = true;
|
||||
$results['certificate_details'] = $certificateDetails;
|
||||
} else {
|
||||
$results['certificateStatus'] = false;
|
||||
$results['message'] = 'No record found';
|
||||
}
|
||||
return $results;
|
||||
}
|
||||
|
||||
|
||||
// self function for getting registered mobile for sms
|
||||
public function get_registered_mobile($num) {
|
||||
$this->db->select('MobileNumber');
|
||||
$this->db->from(STUDENTS);
|
||||
$this->db->where('StudentID', $num);
|
||||
$roleDetails = $this->db->get()->first_row();
|
||||
return $roleDetails->MobileNumber;
|
||||
}
|
||||
|
||||
// self function for getting the status for the LISTCODE
|
||||
public function get_status_name_ListCode($listCode) {
|
||||
$this->db->select('ListName');
|
||||
$this->db->from(PICK_LIST_DETAILS);
|
||||
$this->db->where('ListCode', $listCode);
|
||||
$statusDetails = $this->db->get()->first_row();
|
||||
return $statusDetails->ListName;
|
||||
}
|
||||
|
||||
// update answer booklet status
|
||||
public function update_answerbooklet($arr) {
|
||||
// print_r($arr);exit();
|
||||
$this->db->insert_batch('T_AnswerBookletStatus', $arr);
|
||||
if ($this->db->affected_rows() >= 1) {
|
||||
// $this->smssend($arr);
|
||||
$result['addStatus'] = true;
|
||||
$result['message'] = "Successfully Answer Booklet Status Updated";
|
||||
} else {
|
||||
$result['addStatus'] = false;
|
||||
$result['message'] = "Something went wrong.please try again";
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
// update study material status
|
||||
public function update_semyear($arr) {
|
||||
|
||||
$this->db->insert_batch('T_StudyMaterialStatus', $arr);
|
||||
if ($this->db->affected_rows() >= 1) {
|
||||
if((get_status_name_ListCode($arr[0]['ListCode'] == 'Received' || 'received') || (get_status_name_ListCode($arr[0]['ListCode'] == 'Issued' || 'issued') ) {
|
||||
$dateToMsg = $arr[0]['SDate'];
|
||||
$mesg = "Your new password for logging into Apollo student portal is $dateToMsg'. Please change the password as soon as you login.";
|
||||
$this->smssend($arr, $mesg);
|
||||
}
|
||||
// $this->smssend($arr);
|
||||
$result['addStatus'] = true;
|
||||
$result['message'] = "Successfully Study Material Status Updated";
|
||||
} else {
|
||||
$result['addStatus'] = false;
|
||||
$result['message'] = "Something went wrong.please try again";
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
// get sem/Year for the course
|
||||
public function get_semyear_result($reqData) {
|
||||
$subQuery = "SELECT CF.Sem_Year, CF.ID
|
||||
FROM ".COURSE_FEES." as CF
|
||||
WHERE
|
||||
CF.CourseID = '$reqData'
|
||||
AND CF.ProgramType ='Y001'";
|
||||
|
||||
$queryDetails = $this->db->query($subQuery);
|
||||
$results['semYearResult'] = true;
|
||||
$results['semYear_result_details'] = $queryDetails->result();
|
||||
|
||||
return $results;
|
||||
}
|
||||
|
||||
// get serach result
|
||||
public function get_search_result($reqData, $req) {
|
||||
|
||||
// print_r($reqData['University']);
|
||||
// print_r($req);
|
||||
// exit();
|
||||
$University = $reqData['University'];
|
||||
$Course = $reqData['Course'];
|
||||
$Batch = $reqData['Batch'];
|
||||
|
||||
$subQuery = "SELECT S.*
|
||||
FROM ".STUDENTS." as S LEFT JOIN ".STUDENTCOURSE." as SC ON SC.StudentID = S.StudentID
|
||||
WHERE
|
||||
SC.UniversityID LIKE '%$University%'
|
||||
AND SC.CourseID LIKE '%$Course%'
|
||||
AND SC.BatchCode LIKE '%$Batch%'
|
||||
AND S.IsActive = '1'
|
||||
AND SC.IsActive = '1'";
|
||||
|
||||
$queryDetails = $this->db->query($subQuery);
|
||||
$results['searchResult'] = true;
|
||||
$results['search_result_details'] = $queryDetails->result();
|
||||
|
||||
return $results;
|
||||
}
|
||||
|
||||
// get list of universities, course, batch
|
||||
public function get_university_course_batch() {
|
||||
$this->db->select('t1.UniversityID, t1.UniversityName');
|
||||
$this->db->order_by('CreatedOn', 'DESC');
|
||||
$this->db->from(''.UNIVERSITY. ' as t1');
|
||||
$this->db->where('IsActive', 1);
|
||||
// $this->db->join('' . COURSE . ' as t2', 't2.UniversityID = t1.UniversityID', 'LEFT');
|
||||
$univDetails = $this->db->get();
|
||||
$universityDetails = $univDetails->result();
|
||||
$endResult = [];
|
||||
foreach($universityDetails as $clip){
|
||||
// University Details
|
||||
$resultArr['UniversityID'] = $clip->UniversityID;
|
||||
$resultArr['UniversityName'] = $clip->UniversityName;
|
||||
|
||||
// Course Details
|
||||
$this->db->select('t2.CourseID, t2.CourseName');
|
||||
$this->db->from(''.COURSE. ' as t2');
|
||||
$this->db->where('t2.UniversityID', $clip->UniversityID);
|
||||
$this->db->where('t2.IsActive', 1);
|
||||
$courDetails = $this->db->get();
|
||||
$courseDetails = $courDetails->result();
|
||||
$resultArr['Course'] =$courseDetails;
|
||||
|
||||
// Batch Details
|
||||
$this->db->select('t3.BatchName, t3.BatchCode');
|
||||
$this->db->from(''.BATCH. ' as t3');
|
||||
$this->db->where('t3.UniversityID', $clip->UniversityID);
|
||||
$this->db->where('t3.IsActive', 1);
|
||||
$batDetails = $this->db->get();
|
||||
$batchDetails = $batDetails->result();
|
||||
$resultArr['Batch'] =$batchDetails;
|
||||
array_push($endResult, $resultArr);
|
||||
}
|
||||
$results['univList'] = true;
|
||||
$results['university_details'] = $endResult;
|
||||
return $results;
|
||||
}
|
||||
|
||||
|
||||
// http://www.24x7sms.com/downloads/24X7SMS_http_API2.0.pdf
|
||||
// API Key : xegCdYUIMf3
|
||||
|
||||
// Your new password for logging into Apollo student portal is (Password). Please change the password as soon as you login.
|
||||
// This is the template to be used.
|
||||
|
||||
public function smssend($arr, $msg)
|
||||
{
|
||||
$number =array();
|
||||
foreach($arr as $ar){
|
||||
$mobi = $this->get_registered_mobile($ar['StudentID']);
|
||||
array_push($number, "91$mobi");
|
||||
}
|
||||
$mobile = implode(',', $number);
|
||||
// $message ="Your new password for logging into Apollo student portal is SAMPLE. Please change the password as soon as you login.";
|
||||
// $mobile = "91$mobile";
|
||||
|
||||
$message = urlencode($msg);
|
||||
$ch=curl_init();
|
||||
curl_setopt($ch,CURLOPT_URL,"https://smsapi.24x7sms.com/api_2.0/SendSMS.aspx?APIKEY=xegCdYUIMf3&MobileNo=".$mobile."&SenderID=APOLLO&Message=".$message."&ServiceName=TEMPLATE_BASED");
|
||||
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
|
||||
$output =curl_exec($ch);
|
||||
|
||||
// print_r($output);exit();
|
||||
curl_close($ch);
|
||||
return $output;
|
||||
}
|
||||
|
||||
// public function mailsend() {
|
||||
// //Load email library
|
||||
// $this->load->library('email');
|
||||
|
||||
// //SMTP & mail configuration
|
||||
// $config = array(
|
||||
// 'protocol' => 'smtp',
|
||||
// 'smtp_host' => 'ssl://smtp.example.com',
|
||||
// 'smtp_port' => 465,
|
||||
// 'smtp_user' => 'email@example.com',
|
||||
// 'smtp_pass' => 'email_password',
|
||||
// 'mailtype' => 'html',
|
||||
// 'charset' => 'utf-8'
|
||||
// );
|
||||
// $this->email->initialize($config);
|
||||
// $this->email->set_mailtype("html");
|
||||
// $this->email->set_newline("\r\n");
|
||||
|
||||
// //Email content
|
||||
// $htmlContent = '<h1>Sending email via SMTP server</h1>';
|
||||
// $htmlContent .= '<p>This email has sent via SMTP server from CodeIgniter application.</p>';
|
||||
|
||||
// // Email body load the html template
|
||||
// // $body = $this->load->view('emails/anillabs.php',$data,TRUE);
|
||||
|
||||
|
||||
// $this->email->to('recipient@example.com');
|
||||
// $this->email->from('sender@example.com','MyWebsite');
|
||||
// $this->email->subject('How to send email via SMTP server in CodeIgniter');
|
||||
// $this->email->message($htmlContent);
|
||||
|
||||
// //Send email
|
||||
// $this->email->send();
|
||||
// }
|
||||
|
||||
|
||||
}
|
||||
336
Apollo/assets/js/controllers/answerBookletStatusCtrl.js
Normal file
336
Apollo/assets/js/controllers/answerBookletStatusCtrl.js
Normal file
@ -0,0 +1,336 @@
|
||||
'use strict';
|
||||
/*** controller for Wizard Form example***/
|
||||
app.controller('answerBookletStatusCtrl', ["$scope", "toaster", "$filter", "ngTableParams", "API_POINTS", "$http", "SweetAlert", "$state", 'md5', 'ipCookie', function ($scope, toaster, $filter, ngTableParams, apiPoint, $http, SweetAlert, $state, md5, ipCookie) {
|
||||
|
||||
/**
|
||||
* Answer Booklet status update search
|
||||
* by : kdk
|
||||
*/
|
||||
|
||||
|
||||
// get local client details
|
||||
var localDetail = JSON.parse(localStorage.getItem('localObj'));
|
||||
var localDetails = ipCookie('cookiechk');
|
||||
const localUpdateStatus = 'ANSWERBOOKLET_STATUS';
|
||||
|
||||
$scope.init = function () {
|
||||
$scope.getUniversityList();
|
||||
}
|
||||
|
||||
$scope.searchData = {
|
||||
'University': '',
|
||||
'Course': '',
|
||||
'Batch': '',
|
||||
'Mobile': '',
|
||||
'Name': ''
|
||||
}
|
||||
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': ''
|
||||
}
|
||||
|
||||
$scope.universityData = '';
|
||||
$scope.getUniversityList = function () {
|
||||
var empListreq = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getUniveCourseBratch/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: localDetails
|
||||
}
|
||||
};
|
||||
$http(empListreq).then(function (response) {
|
||||
if (response.data.univList) {
|
||||
$scope.universityData = response.data.university_details;
|
||||
} else {
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
$scope.getUniveId = function (univ) {
|
||||
let name = JSON.parse(univ);
|
||||
$scope.searchData.University = name.UniversityID;
|
||||
$scope.searchData.Course = '';
|
||||
$scope.searchData.Batch = '';
|
||||
$scope.courseData = name.Course;
|
||||
$scope.batchData = name.Batch;
|
||||
$scope.OpenWindowStatus = false;
|
||||
$scope.getSearch();
|
||||
};
|
||||
|
||||
$scope.getValueChange = function () {
|
||||
$scope.getSearch();
|
||||
}
|
||||
|
||||
// $scope.dealWithItem = function (item) {
|
||||
// alert(JSON.stringify(item));
|
||||
// }
|
||||
|
||||
$scope.searchResultDetails = '';
|
||||
$scope.searchLoading = false;
|
||||
$scope.searchResultLength = 0;
|
||||
$scope.getSearch = function () {
|
||||
$scope.OpenWindowStatus = false;
|
||||
// alert(JSON.stringify($scope.searchData));
|
||||
$scope.searchLoading = true;
|
||||
var getSearchDetails = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getSearchAutoDetails/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: $scope.searchData,
|
||||
requestDetails: localDetails
|
||||
}
|
||||
};
|
||||
$http(getSearchDetails).then(function (response) {
|
||||
if (response.data.searchResult) {
|
||||
$scope.searchResultStatus = response.data.searchResult;
|
||||
$scope.searchLoading = false;
|
||||
let searchResultDetailsBef = response.data.search_result_details;
|
||||
const filterAddSelect = searchResultDetailsBef.filter(val => {
|
||||
val['Selected'] = false;
|
||||
return val;
|
||||
});
|
||||
$scope.searchResultDetails = filterAddSelect;
|
||||
$scope.searchResultLength = Object.keys($scope.searchResultDetails).length;
|
||||
} else {
|
||||
$scope.searchLoading = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// mobile number search functionlity
|
||||
$scope.mySearchChangeFunc = function(val) {
|
||||
if( val > 0) {
|
||||
$scope.allSelectedHide = true;
|
||||
$scope.allSelected('undefined');
|
||||
$scope.OpenWindowStatus = false;
|
||||
} else {
|
||||
$scope.allSelected('undefined');
|
||||
$scope.allSelectedHide = false;
|
||||
}
|
||||
}
|
||||
// End: mobile number search functionlity
|
||||
|
||||
// select all or individual functionality
|
||||
|
||||
var getAllSelected = function () {
|
||||
var selectedItems = $scope.searchResultDetails.filter(function (item) {
|
||||
return item.Selected;
|
||||
});
|
||||
|
||||
return selectedItems.length === $scope.searchResultDetails.length;
|
||||
}
|
||||
|
||||
var setAllSelected = function (value) {
|
||||
angular.forEach($scope.searchResultDetails, function (item) {
|
||||
item.Selected = value;
|
||||
});
|
||||
}
|
||||
|
||||
$scope.allSelected = function (value) {
|
||||
if (value !== undefined) {
|
||||
return setAllSelected(value);
|
||||
} else {
|
||||
return getAllSelected();
|
||||
}
|
||||
}
|
||||
|
||||
// End: select all or individual functionality
|
||||
|
||||
|
||||
// open popup window onselct checkbox
|
||||
$scope.OpenWindowStatus = false;
|
||||
$scope.openUpdateWind = function () {
|
||||
var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
if (item.Selected === true) { return true; }
|
||||
});
|
||||
const courseLocal = $scope.searchData.Course;
|
||||
$scope.getSemYearList(courseLocal);
|
||||
$scope.getStatusList();
|
||||
// alert($scope.searchData.Course);
|
||||
if (ItemsSelected.length) {
|
||||
$scope.OpenWindowStatus = true;
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': ''
|
||||
}
|
||||
} else {
|
||||
$scope.OpenWindowStatus = false;
|
||||
}
|
||||
}
|
||||
|
||||
// get status list for this activity
|
||||
$scope.getStatusList = function () {
|
||||
var getStatusL = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getStatusListForUpdate/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
statusFor: 'studyMaterial',
|
||||
data: localUpdateStatus
|
||||
}
|
||||
};
|
||||
$http(getStatusL).then(function (response) {
|
||||
if (response.data.statusList) {
|
||||
$scope.statusDetailsList = response.data.statusList_details;
|
||||
// $scope.searchLoading = false;
|
||||
} else {
|
||||
// $scope.searchLoading = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// get Sem/Year based on the course select
|
||||
$scope.getSemYearList = function (courseID) {
|
||||
$scope.semYearList = '';
|
||||
if (courseID !== '' && courseID !== undefined) {
|
||||
var getSemYear = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getSemYearForCourse/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: courseID
|
||||
}
|
||||
};
|
||||
$http(getSemYear).then(function (response) {
|
||||
if (response.data.semYearResult) {
|
||||
$scope.semYearList = response.data.semYear_result_details;
|
||||
} else {
|
||||
$scope.semYearList = '';
|
||||
}
|
||||
});
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// $scope.updateItems = function () {
|
||||
// var studentForUpdate = [];
|
||||
// var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
// if (item.Selected === true) {
|
||||
// let getStudentID = new getStudentForUpdateDetails(item.StudentID);
|
||||
// studentForUpdate.push(getStudentID);
|
||||
// return true;
|
||||
// }
|
||||
// });
|
||||
// function getStudentForUpdateDetails(id) {
|
||||
// this.iD = id;
|
||||
// }
|
||||
// alert(JSON.stringify($scope.myStatusModel));
|
||||
// alert(JSON.stringify(studentForUpdate));
|
||||
// }
|
||||
|
||||
$scope.statusUpdate = {
|
||||
submit: function (form, myStatusModel) {
|
||||
var firstError = null;
|
||||
if (form.$invalid) {
|
||||
var field = null, firstError = null;
|
||||
for (field in form) {
|
||||
if (field[0] != '$') {
|
||||
if (firstError === null && !form[field].$valid) {
|
||||
firstError = form[field].$name;
|
||||
}
|
||||
if (form[field].$pristine) {
|
||||
form[field].$dirty = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
angular.element('.ng-invalid[name=' + firstError + ']').focus();
|
||||
// swal("The form cannot be submitted because it contains validation errors!", "Errors are marked with a red, dashed border!", "error");
|
||||
} else {
|
||||
var studentForUpdate = [];
|
||||
let formate = "dd-MM-yyyy";
|
||||
$scope.myStatusModel.dateOn = $filter('date')(new Date($scope.myStatusModel.dateOn), formate);
|
||||
var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
if (item.Selected === true) {
|
||||
let getStudentID = new getStudentForUpdateDetails(item.StudentID);
|
||||
studentForUpdate.push(getStudentID);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
function getStudentForUpdateDetails(id) {
|
||||
this.StudentID = id;
|
||||
this.CourseID = $scope.myStatusModel.semYear;
|
||||
this.BranchCode = localDetails.localBranchID;
|
||||
this.ListCode = $scope.myStatusModel.staus;
|
||||
this.SDate = $scope.myStatusModel.dateOn;
|
||||
this.Coursedetail = id;
|
||||
this.Comments = $scope.myStatusModel.comment;
|
||||
}
|
||||
// alert(JSON.stringify($scope.myStatusModel));
|
||||
// alert(JSON.stringify(studentForUpdate));
|
||||
|
||||
var updateStudyMaterial = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'updateAnswerBookLetStatus/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: studentForUpdate,
|
||||
requestDetails : localDetails
|
||||
}
|
||||
};
|
||||
$http(updateStudyMaterial).then(function (response) {
|
||||
if (response.data.addStatus) {
|
||||
swal("Success!", response.data.message, "success");
|
||||
// for success state
|
||||
$scope.allSelected('undefined');
|
||||
$scope.OpenWindowStatus = false;
|
||||
} else {
|
||||
swal("Failed!", response.data.message, "error");
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
reset: function (form) {
|
||||
form.$setPristine(true);
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': ''
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// check unchek for table values
|
||||
|
||||
|
||||
|
||||
// $scope.CheckUncheckAll = function () {
|
||||
|
||||
// for (var i = 0; i < $scope.searchResultDetails.length; i++) {
|
||||
// $scope.searchResultDetails[i].Selected = $scope.IsAllChecked;
|
||||
// }
|
||||
// };
|
||||
|
||||
// $scope.CheckUncheckHeader = function () {
|
||||
// $scope.IsAllChecked = true;
|
||||
// for (var i = 0; i < $scope.searchResultDetails.length; i++) {
|
||||
// if (!$scope.searchResultDetails[i].Selected) {
|
||||
// $scope.IsAllChecked = false;
|
||||
// break;
|
||||
// }
|
||||
// };
|
||||
// };
|
||||
|
||||
// $scope.CheckUncheckHeader();
|
||||
}]);
|
||||
336
Apollo/assets/js/controllers/applicationStatusCtrl.js
Normal file
336
Apollo/assets/js/controllers/applicationStatusCtrl.js
Normal file
@ -0,0 +1,336 @@
|
||||
'use strict';
|
||||
/*** controller for Wizard Form example***/
|
||||
app.controller('applicationStatusCtrl', ["$scope", "toaster", "$filter", "ngTableParams", "API_POINTS", "$http", "SweetAlert", "$state", 'md5', 'ipCookie', function ($scope, toaster, $filter, ngTableParams, apiPoint, $http, SweetAlert, $state, md5, ipCookie) {
|
||||
|
||||
/**
|
||||
* Application status update search
|
||||
* by : kdk
|
||||
*/
|
||||
|
||||
|
||||
// get local client details
|
||||
var localDetail = JSON.parse(localStorage.getItem('localObj'));
|
||||
var localDetails = ipCookie('cookiechk');
|
||||
const localUpdateStatus = 'APPICATION_STATUS';
|
||||
|
||||
$scope.init = function () {
|
||||
$scope.getUniversityList();
|
||||
}
|
||||
|
||||
$scope.searchData = {
|
||||
'University': '',
|
||||
'Course': '',
|
||||
'Batch': '',
|
||||
'Mobile': '',
|
||||
'Name': ''
|
||||
}
|
||||
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': ''
|
||||
}
|
||||
|
||||
$scope.universityData = '';
|
||||
$scope.getUniversityList = function () {
|
||||
var empListreq = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getUniveCourseBratch/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: localDetails
|
||||
}
|
||||
};
|
||||
$http(empListreq).then(function (response) {
|
||||
if (response.data.univList) {
|
||||
$scope.universityData = response.data.university_details;
|
||||
} else {
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
$scope.getUniveId = function (univ) {
|
||||
let name = JSON.parse(univ);
|
||||
$scope.searchData.University = name.UniversityID;
|
||||
$scope.searchData.Course = '';
|
||||
$scope.searchData.Batch = '';
|
||||
$scope.courseData = name.Course;
|
||||
$scope.batchData = name.Batch;
|
||||
$scope.OpenWindowStatus = false;
|
||||
$scope.getSearch();
|
||||
};
|
||||
|
||||
$scope.getValueChange = function () {
|
||||
$scope.getSearch();
|
||||
}
|
||||
|
||||
// $scope.dealWithItem = function (item) {
|
||||
// alert(JSON.stringify(item));
|
||||
// }
|
||||
|
||||
$scope.searchResultDetails = '';
|
||||
$scope.searchLoading = false;
|
||||
$scope.searchResultLength = 0;
|
||||
$scope.getSearch = function () {
|
||||
$scope.OpenWindowStatus = false;
|
||||
// alert(JSON.stringify($scope.searchData));
|
||||
$scope.searchLoading = true;
|
||||
var getSearchDetails = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getSearchAutoDetails/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: $scope.searchData,
|
||||
requestDetails: localDetails
|
||||
}
|
||||
};
|
||||
$http(getSearchDetails).then(function (response) {
|
||||
if (response.data.searchResult) {
|
||||
$scope.searchResultStatus = response.data.searchResult;
|
||||
$scope.searchLoading = false;
|
||||
let searchResultDetailsBef = response.data.search_result_details;
|
||||
const filterAddSelect = searchResultDetailsBef.filter(val => {
|
||||
val['Selected'] = false;
|
||||
return val;
|
||||
});
|
||||
$scope.searchResultDetails = filterAddSelect;
|
||||
$scope.searchResultLength = Object.keys($scope.searchResultDetails).length;
|
||||
} else {
|
||||
$scope.searchLoading = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// mobile number search functionlity
|
||||
$scope.mySearchChangeFunc = function(val) {
|
||||
if( val > 0) {
|
||||
$scope.allSelectedHide = true;
|
||||
$scope.allSelected('undefined');
|
||||
$scope.OpenWindowStatus = false;
|
||||
} else {
|
||||
$scope.allSelected('undefined');
|
||||
$scope.allSelectedHide = false;
|
||||
}
|
||||
}
|
||||
// End: mobile number search functionlity
|
||||
|
||||
// select all or individual functionality
|
||||
|
||||
var getAllSelected = function () {
|
||||
var selectedItems = $scope.searchResultDetails.filter(function (item) {
|
||||
return item.Selected;
|
||||
});
|
||||
|
||||
return selectedItems.length === $scope.searchResultDetails.length;
|
||||
}
|
||||
|
||||
var setAllSelected = function (value) {
|
||||
angular.forEach($scope.searchResultDetails, function (item) {
|
||||
item.Selected = value;
|
||||
});
|
||||
}
|
||||
|
||||
$scope.allSelected = function (value) {
|
||||
if (value !== undefined) {
|
||||
return setAllSelected(value);
|
||||
} else {
|
||||
return getAllSelected();
|
||||
}
|
||||
}
|
||||
|
||||
// End: select all or individual functionality
|
||||
|
||||
|
||||
// open popup window onselct checkbox
|
||||
$scope.OpenWindowStatus = false;
|
||||
$scope.openUpdateWind = function () {
|
||||
var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
if (item.Selected === true) { return true; }
|
||||
});
|
||||
const courseLocal = $scope.searchData.Course;
|
||||
$scope.getSemYearList(courseLocal);
|
||||
$scope.getStatusList();
|
||||
// alert($scope.searchData.Course);
|
||||
if (ItemsSelected.length) {
|
||||
$scope.OpenWindowStatus = true;
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': ''
|
||||
}
|
||||
} else {
|
||||
$scope.OpenWindowStatus = false;
|
||||
}
|
||||
}
|
||||
|
||||
// get status list for this activity
|
||||
$scope.getStatusList = function () {
|
||||
var getStatusL = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getStatusListForUpdate/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
statusFor: 'studyMaterial',
|
||||
data: localUpdateStatus
|
||||
}
|
||||
};
|
||||
$http(getStatusL).then(function (response) {
|
||||
if (response.data.statusList) {
|
||||
$scope.statusDetailsList = response.data.statusList_details;
|
||||
// $scope.searchLoading = false;
|
||||
} else {
|
||||
// $scope.searchLoading = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// get Sem/Year based on the course select
|
||||
$scope.getSemYearList = function (courseID) {
|
||||
$scope.semYearList = '';
|
||||
if (courseID !== '' && courseID !== undefined) {
|
||||
var getSemYear = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getSemYearForCourse/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: courseID
|
||||
}
|
||||
};
|
||||
$http(getSemYear).then(function (response) {
|
||||
if (response.data.semYearResult) {
|
||||
$scope.semYearList = response.data.semYear_result_details;
|
||||
} else {
|
||||
$scope.semYearList = '';
|
||||
}
|
||||
});
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// $scope.updateItems = function () {
|
||||
// var studentForUpdate = [];
|
||||
// var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
// if (item.Selected === true) {
|
||||
// let getStudentID = new getStudentForUpdateDetails(item.StudentID);
|
||||
// studentForUpdate.push(getStudentID);
|
||||
// return true;
|
||||
// }
|
||||
// });
|
||||
// function getStudentForUpdateDetails(id) {
|
||||
// this.iD = id;
|
||||
// }
|
||||
// alert(JSON.stringify($scope.myStatusModel));
|
||||
// alert(JSON.stringify(studentForUpdate));
|
||||
// }
|
||||
|
||||
$scope.statusUpdate = {
|
||||
submit: function (form, myStatusModel) {
|
||||
var firstError = null;
|
||||
if (form.$invalid) {
|
||||
var field = null, firstError = null;
|
||||
for (field in form) {
|
||||
if (field[0] != '$') {
|
||||
if (firstError === null && !form[field].$valid) {
|
||||
firstError = form[field].$name;
|
||||
}
|
||||
if (form[field].$pristine) {
|
||||
form[field].$dirty = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
angular.element('.ng-invalid[name=' + firstError + ']').focus();
|
||||
// swal("The form cannot be submitted because it contains validation errors!", "Errors are marked with a red, dashed border!", "error");
|
||||
} else {
|
||||
var studentForUpdate = [];
|
||||
let formate = "dd-MM-yyyy";
|
||||
$scope.myStatusModel.dateOn = $filter('date')(new Date($scope.myStatusModel.dateOn), formate);
|
||||
var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
if (item.Selected === true) {
|
||||
let getStudentID = new getStudentForUpdateDetails(item.StudentID);
|
||||
studentForUpdate.push(getStudentID);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
function getStudentForUpdateDetails(id) {
|
||||
this.StudentID = id;
|
||||
this.CourseID = $scope.myStatusModel.semYear;
|
||||
this.BranchCode = localDetails.localBranchID;
|
||||
this.ListCode = $scope.myStatusModel.staus;
|
||||
this.SDate = $scope.myStatusModel.dateOn;
|
||||
this.Coursedetail = id;
|
||||
this.Comments = $scope.myStatusModel.comment;
|
||||
}
|
||||
// alert(JSON.stringify($scope.myStatusModel));
|
||||
// alert(JSON.stringify(studentForUpdate));
|
||||
|
||||
var updateStudyMaterial = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'updateApplicationStatus/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: studentForUpdate,
|
||||
requestDetails : localDetails
|
||||
}
|
||||
};
|
||||
$http(updateStudyMaterial).then(function (response) {
|
||||
if (response.data.addStatus) {
|
||||
swal("Success!", response.data.message, "success");
|
||||
// for success state
|
||||
$scope.allSelected('undefined');
|
||||
$scope.OpenWindowStatus = false;
|
||||
} else {
|
||||
swal("Failed!", response.data.message, "error");
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
reset: function (form) {
|
||||
form.$setPristine(true);
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': ''
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// check unchek for table values
|
||||
|
||||
|
||||
|
||||
// $scope.CheckUncheckAll = function () {
|
||||
|
||||
// for (var i = 0; i < $scope.searchResultDetails.length; i++) {
|
||||
// $scope.searchResultDetails[i].Selected = $scope.IsAllChecked;
|
||||
// }
|
||||
// };
|
||||
|
||||
// $scope.CheckUncheckHeader = function () {
|
||||
// $scope.IsAllChecked = true;
|
||||
// for (var i = 0; i < $scope.searchResultDetails.length; i++) {
|
||||
// if (!$scope.searchResultDetails[i].Selected) {
|
||||
// $scope.IsAllChecked = false;
|
||||
// break;
|
||||
// }
|
||||
// };
|
||||
// };
|
||||
|
||||
// $scope.CheckUncheckHeader();
|
||||
}]);
|
||||
387
Apollo/assets/js/controllers/certificationStatusCtrl.js
Normal file
387
Apollo/assets/js/controllers/certificationStatusCtrl.js
Normal file
@ -0,0 +1,387 @@
|
||||
'use strict';
|
||||
/*** controller for Wizard Form example***/
|
||||
app.controller('certificationStatusCtrl', ["$scope", "toaster", "$filter", "ngTableParams", "API_POINTS", "$http", "SweetAlert", "$state", 'md5', 'ipCookie', function ($scope, toaster, $filter, ngTableParams, apiPoint, $http, SweetAlert, $state, md5, ipCookie) {
|
||||
|
||||
/**
|
||||
* Certification status update search
|
||||
* by : kdk
|
||||
*/
|
||||
|
||||
|
||||
// get local client details
|
||||
var localDetail = JSON.parse(localStorage.getItem('localObj'));
|
||||
var localDetails = ipCookie('cookiechk');
|
||||
const localUpdateStatus = 'CERTIFICATION_STATUS';
|
||||
|
||||
$scope.init = function () {
|
||||
$scope.getUniversityList();
|
||||
$scope.getCertificateList();
|
||||
}
|
||||
|
||||
$scope.searchData = {
|
||||
'University': '',
|
||||
'Course': '',
|
||||
'Batch': '',
|
||||
'Mobile': '',
|
||||
'Name': ''
|
||||
}
|
||||
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': '',
|
||||
'certificatetype': '',
|
||||
'certificateNumber': ''
|
||||
}
|
||||
|
||||
// get University List
|
||||
$scope.universityData = '';
|
||||
$scope.getUniversityList = function () {
|
||||
var empListreq = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getUniveCourseBratch/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: localDetails
|
||||
}
|
||||
};
|
||||
$http(empListreq).then(function (response) {
|
||||
if (response.data.univList) {
|
||||
$scope.universityData = response.data.university_details;
|
||||
} else {
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
//get certificates List
|
||||
$scope.getCertificateList = function () {
|
||||
var getCerfreg = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getCertificateList/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: localDetails
|
||||
}
|
||||
};
|
||||
$http(getCerfreg).then(function (response) {
|
||||
if (response.data.certificateStatus) {
|
||||
$scope.certificateData = response.data.certificate_details;
|
||||
// alert(JSON.stringify($scope.certificateData));
|
||||
} else {
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
$scope.getUniveId = function (univ) {
|
||||
let name = JSON.parse(univ);
|
||||
$scope.searchData.University = name.UniversityID;
|
||||
$scope.searchData.Course = '';
|
||||
$scope.searchData.Batch = '';
|
||||
$scope.courseData = name.Course;
|
||||
$scope.batchData = name.Batch;
|
||||
$scope.OpenWindowStatus = false;
|
||||
$scope.getSearch();
|
||||
};
|
||||
|
||||
$scope.getValueChange = function () {
|
||||
$scope.getSearch();
|
||||
}
|
||||
|
||||
// $scope.dealWithItem = function (item) {
|
||||
// alert(JSON.stringify(item));
|
||||
// }
|
||||
|
||||
$scope.searchResultDetails = '';
|
||||
$scope.searchLoading = false;
|
||||
$scope.searchResultLength = 0;
|
||||
$scope.getSearch = function () {
|
||||
$scope.OpenWindowStatus = false;
|
||||
// alert(JSON.stringify($scope.searchData));
|
||||
$scope.searchLoading = true;
|
||||
var getSearchDetails = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getSearchAutoDetails/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: $scope.searchData,
|
||||
requestDetails: localDetails
|
||||
}
|
||||
};
|
||||
$http(getSearchDetails).then(function (response) {
|
||||
if (response.data.searchResult) {
|
||||
$scope.searchResultStatus = response.data.searchResult;
|
||||
$scope.searchLoading = false;
|
||||
let searchResultDetailsBef = response.data.search_result_details;
|
||||
const filterAddSelect = searchResultDetailsBef.filter(val => {
|
||||
val['Selected'] = false;
|
||||
return val;
|
||||
});
|
||||
$scope.searchResultDetails = filterAddSelect;
|
||||
$scope.searchResultLength = Object.keys($scope.searchResultDetails).length;
|
||||
} else {
|
||||
$scope.searchLoading = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// mobile number search functionlity
|
||||
$scope.mySearchChangeFunc = function(val) {
|
||||
if( val > 0) {
|
||||
$scope.allSelectedHide = true;
|
||||
$scope.allSelected('undefined');
|
||||
$scope.OpenWindowStatus = false;
|
||||
} else {
|
||||
$scope.allSelected('undefined');
|
||||
$scope.allSelectedHide = false;
|
||||
}
|
||||
}
|
||||
// End: mobile number search functionlity
|
||||
|
||||
// select all or individual functionality
|
||||
|
||||
// var getAllSelected = function () {
|
||||
// var selectedItems = $scope.searchResultDetails.filter(function (item) {
|
||||
// return item.Selected;
|
||||
// });
|
||||
|
||||
// return selectedItems.length === $scope.searchResultDetails.length;
|
||||
// }
|
||||
|
||||
// var setAllSelected = function (value) {
|
||||
// alert(value);
|
||||
// angular.forEach($scope.searchResultDetails, function (item) {
|
||||
// item.Selected = value;
|
||||
// });
|
||||
// }
|
||||
|
||||
// $scope.allSelected = function (value) {
|
||||
// alert(value);
|
||||
// if (value !== undefined) {
|
||||
// return setAllSelected(value);
|
||||
// } else {
|
||||
// return getAllSelected();
|
||||
// }
|
||||
// }
|
||||
|
||||
//--------------------------------------------------->
|
||||
|
||||
// Select one row in a table once
|
||||
$scope.setOneSelect = function (value) {
|
||||
// alert(value.Selected);
|
||||
angular.forEach($scope.searchResultDetails, function (item) {
|
||||
item.Selected = value;
|
||||
});
|
||||
value.Selected = true;
|
||||
$scope.OpenWindowStatus = true;
|
||||
$scope.openUpdateWind();
|
||||
}
|
||||
|
||||
// End: select all or individual functionality
|
||||
|
||||
|
||||
// open popup window onselct checkbox
|
||||
$scope.OpenWindowStatus = false;
|
||||
$scope.openUpdateWind = function () {
|
||||
var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
if (item.Selected === true) { return true; }
|
||||
});
|
||||
const courseLocal = $scope.searchData.Course;
|
||||
$scope.getSemYearList(courseLocal);
|
||||
$scope.getStatusList();
|
||||
// alert($scope.searchData.Course);
|
||||
if (ItemsSelected.length) {
|
||||
$scope.OpenWindowStatus = true;
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': '',
|
||||
'certificatetype': '',
|
||||
'certificateNumber': ''
|
||||
}
|
||||
} else {
|
||||
$scope.OpenWindowStatus = false;
|
||||
}
|
||||
}
|
||||
|
||||
// get status list for this activity
|
||||
$scope.getStatusList = function () {
|
||||
var getStatusL = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getStatusListForUpdate/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
statusFor: 'studyMaterial',
|
||||
data: localUpdateStatus
|
||||
}
|
||||
};
|
||||
$http(getStatusL).then(function (response) {
|
||||
if (response.data.statusList) {
|
||||
$scope.statusDetailsList = response.data.statusList_details;
|
||||
// $scope.searchLoading = false;
|
||||
} else {
|
||||
// $scope.searchLoading = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// get Sem/Year based on the course select
|
||||
$scope.getSemYearList = function (courseID) {
|
||||
$scope.semYearList = '';
|
||||
if (courseID !== '' && courseID !== undefined) {
|
||||
var getSemYear = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getSemYearForCourse/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: courseID
|
||||
}
|
||||
};
|
||||
$http(getSemYear).then(function (response) {
|
||||
if (response.data.semYearResult) {
|
||||
$scope.semYearList = response.data.semYear_result_details;
|
||||
} else {
|
||||
$scope.semYearList = '';
|
||||
}
|
||||
});
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// $scope.updateItems = function () {
|
||||
// var studentForUpdate = [];
|
||||
// var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
// if (item.Selected === true) {
|
||||
// let getStudentID = new getStudentForUpdateDetails(item.StudentID);
|
||||
// studentForUpdate.push(getStudentID);
|
||||
// return true;
|
||||
// }
|
||||
// });
|
||||
// function getStudentForUpdateDetails(id) {
|
||||
// this.iD = id;
|
||||
// }
|
||||
// alert(JSON.stringify($scope.myStatusModel));
|
||||
// alert(JSON.stringify(studentForUpdate));
|
||||
// }
|
||||
|
||||
// Update the status For Certification
|
||||
$scope.statusUpdate = {
|
||||
submit: function (form, myStatusModel) {
|
||||
var firstError = null;
|
||||
if (form.$invalid) {
|
||||
var field = null, firstError = null;
|
||||
for (field in form) {
|
||||
if (field[0] != '$') {
|
||||
if (firstError === null && !form[field].$valid) {
|
||||
firstError = form[field].$name;
|
||||
}
|
||||
if (form[field].$pristine) {
|
||||
form[field].$dirty = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
angular.element('.ng-invalid[name=' + firstError + ']').focus();
|
||||
// swal("The form cannot be submitted because it contains validation errors!", "Errors are marked with a red, dashed border!", "error");
|
||||
} else {
|
||||
var studentForUpdate = [];
|
||||
let formate = "dd-MM-yyyy";
|
||||
$scope.myStatusModel.dateOn = $filter('date')(new Date($scope.myStatusModel.dateOn), formate);
|
||||
var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
if (item.Selected === true) {
|
||||
let getStudentID = new getStudentForUpdateDetails(item.StudentID);
|
||||
studentForUpdate.push(getStudentID);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
alert(JSON.stringify(studentForUpdate));
|
||||
function getStudentForUpdateDetails(id) {
|
||||
this.StudentID = id;
|
||||
this.CourseID = $scope.myStatusModel.semYear;
|
||||
this.BranchCode = localDetails.localBranchID;
|
||||
this.ListCode = $scope.myStatusModel.staus;
|
||||
this.SDate = $scope.myStatusModel.dateOn;
|
||||
this.Coursedetail = id;
|
||||
this.Comments = $scope.myStatusModel.comment;
|
||||
this.CertificateType = $scope.myStatusModel.certificatetype;
|
||||
this.CertificateNumber = $scope.myStatusModel.certificateNumber;
|
||||
}
|
||||
// alert(JSON.stringify($scope.myStatusModel));
|
||||
// alert(JSON.stringify(studentForUpdate));
|
||||
|
||||
var updateCertificateStatus = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'updateCertificationStatus/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: studentForUpdate,
|
||||
requestDetails : localDetails
|
||||
}
|
||||
};
|
||||
$http(updateCertificateStatus).then(function (response) {
|
||||
if (response.data.addStatus) {
|
||||
swal("Success!", response.data.message, "success");
|
||||
// for success state
|
||||
// $scope.allSelected('undefined');
|
||||
angular.forEach($scope.searchResultDetails, function (item) {
|
||||
item.Selected = false;
|
||||
});
|
||||
$scope.OpenWindowStatus = false;
|
||||
} else {
|
||||
swal("Failed!", response.data.message, "error");
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
reset: function (form) {
|
||||
form.$setPristine(true);
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': '',
|
||||
'certificatetype': '',
|
||||
'certificateNumber': ''
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// check unchek for table values
|
||||
|
||||
|
||||
|
||||
// $scope.CheckUncheckAll = function () {
|
||||
|
||||
// for (var i = 0; i < $scope.searchResultDetails.length; i++) {
|
||||
// $scope.searchResultDetails[i].Selected = $scope.IsAllChecked;
|
||||
// }
|
||||
// };
|
||||
|
||||
// $scope.CheckUncheckHeader = function () {
|
||||
// $scope.IsAllChecked = true;
|
||||
// for (var i = 0; i < $scope.searchResultDetails.length; i++) {
|
||||
// if (!$scope.searchResultDetails[i].Selected) {
|
||||
// $scope.IsAllChecked = false;
|
||||
// break;
|
||||
// }
|
||||
// };
|
||||
// };
|
||||
|
||||
// $scope.CheckUncheckHeader();
|
||||
}]);
|
||||
@ -74,7 +74,7 @@ app.controller('studentCtrl', ["$scope", "toaster", "$filter", "ngTableParams",
|
||||
$scope.reverse = !$scope.reverse; //if true make it false and vice versa
|
||||
}
|
||||
|
||||
// get local cliend details
|
||||
// get local client details
|
||||
var localDetail = JSON.parse(localStorage.getItem('localObj'));
|
||||
var localDetails = ipCookie('cookiechk');
|
||||
|
||||
|
||||
@ -1,11 +1,337 @@
|
||||
'use strict';
|
||||
/*** controller for Wizard Form example***/
|
||||
app.controller('studyMaterialStatusCtrl', ["$scope", "$filter", "ngTableParams", "API_POINTS", "$http", "SweetAlert", "$state", 'md5', 'ipCookie', function ($scope, $filter, ngTableParams, apiPoint, $http, SweetAlert, $state, md5, ipCookie) {
|
||||
app.controller('studyMaterialStatusCtrl', ["$scope", "toaster", "$filter", "ngTableParams", "API_POINTS", "$http", "SweetAlert", "$state", 'md5', 'ipCookie', function ($scope, toaster, $filter, ngTableParams, apiPoint, $http, SweetAlert, $state, md5, ipCookie) {
|
||||
|
||||
/**
|
||||
* Logined user profile view
|
||||
* Study material status update search
|
||||
* by : kdk
|
||||
*/
|
||||
|
||||
|
||||
|
||||
// get local client details
|
||||
var localDetail = JSON.parse(localStorage.getItem('localObj'));
|
||||
var localDetails = ipCookie('cookiechk');
|
||||
const localUpdateStatus = 'STUDY_MATERIAL';
|
||||
|
||||
$scope.init = function () {
|
||||
$scope.getUniversityList();
|
||||
}
|
||||
|
||||
$scope.searchData = {
|
||||
'University': '',
|
||||
'Course': '',
|
||||
'Batch': '',
|
||||
'Mobile': '',
|
||||
'Name': ''
|
||||
}
|
||||
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': ''
|
||||
}
|
||||
|
||||
$scope.universityData = '';
|
||||
$scope.getUniversityList = function () {
|
||||
var empListreq = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getUniveCourseBratch/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: localDetails
|
||||
}
|
||||
};
|
||||
$http(empListreq).then(function (response) {
|
||||
if (response.data.univList) {
|
||||
$scope.universityData = response.data.university_details;
|
||||
} else {
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
$scope.getUniveId = function (univ) {
|
||||
let name = JSON.parse(univ);
|
||||
$scope.searchData.University = name.UniversityID;
|
||||
$scope.searchData.Course = '';
|
||||
$scope.searchData.Batch = '';
|
||||
$scope.courseData = name.Course;
|
||||
$scope.batchData = name.Batch;
|
||||
$scope.OpenWindowStatus = false;
|
||||
$scope.getSearch();
|
||||
};
|
||||
|
||||
$scope.getValueChange = function () {
|
||||
$scope.getSearch();
|
||||
}
|
||||
|
||||
// $scope.dealWithItem = function (item) {
|
||||
// alert(JSON.stringify(item));
|
||||
// }
|
||||
|
||||
$scope.searchResultDetails = '';
|
||||
$scope.searchLoading = false;
|
||||
$scope.searchResultLength = 0;
|
||||
$scope.getSearch = function () {
|
||||
$scope.OpenWindowStatus = false;
|
||||
// alert(JSON.stringify($scope.searchData));
|
||||
$scope.searchLoading = true;
|
||||
var getSearchDetails = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getSearchAutoDetails/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: $scope.searchData,
|
||||
requestDetails: localDetails
|
||||
}
|
||||
};
|
||||
$http(getSearchDetails).then(function (response) {
|
||||
if (response.data.searchResult) {
|
||||
$scope.searchResultStatus = response.data.searchResult;
|
||||
$scope.searchLoading = false;
|
||||
let searchResultDetailsBef = response.data.search_result_details;
|
||||
const filterAddSelect = searchResultDetailsBef.filter(val => {
|
||||
val['Selected'] = false;
|
||||
return val;
|
||||
});
|
||||
$scope.searchResultDetails = filterAddSelect;
|
||||
$scope.searchResultLength = Object.keys($scope.searchResultDetails).length;
|
||||
} else {
|
||||
$scope.searchLoading = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// mobile number search functionlity
|
||||
$scope.mySearchChangeFunc = function(val) {
|
||||
if( val > 0) {
|
||||
$scope.allSelectedHide = true;
|
||||
$scope.allSelected('undefined');
|
||||
$scope.OpenWindowStatus = false;
|
||||
} else {
|
||||
$scope.allSelected('undefined');
|
||||
$scope.allSelectedHide = false;
|
||||
$scope.OpenWindowStatus = false;
|
||||
}
|
||||
}
|
||||
// End: mobile number search functionlity
|
||||
|
||||
// select all or individual functionality
|
||||
|
||||
var getAllSelected = function () {
|
||||
var selectedItems = $scope.searchResultDetails.filter(function (item) {
|
||||
return item.Selected;
|
||||
});
|
||||
|
||||
return selectedItems.length === $scope.searchResultDetails.length;
|
||||
}
|
||||
|
||||
var setAllSelected = function (value) {
|
||||
angular.forEach($scope.searchResultDetails, function (item) {
|
||||
item.Selected = value;
|
||||
});
|
||||
}
|
||||
|
||||
$scope.allSelected = function (value) {
|
||||
if (value !== undefined) {
|
||||
return setAllSelected(value);
|
||||
} else {
|
||||
return getAllSelected();
|
||||
}
|
||||
}
|
||||
|
||||
// End: select all or individual functionality
|
||||
|
||||
|
||||
// open popup window onselct checkbox
|
||||
$scope.OpenWindowStatus = false;
|
||||
$scope.openUpdateWind = function () {
|
||||
var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
if (item.Selected === true) { return true; }
|
||||
});
|
||||
const courseLocal = $scope.searchData.Course;
|
||||
$scope.getSemYearList(courseLocal);
|
||||
$scope.getStatusList();
|
||||
// alert($scope.searchData.Course);
|
||||
if (ItemsSelected.length) {
|
||||
$scope.OpenWindowStatus = true;
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': ''
|
||||
}
|
||||
} else {
|
||||
$scope.OpenWindowStatus = false;
|
||||
}
|
||||
}
|
||||
|
||||
// get status list for this activity
|
||||
$scope.getStatusList = function () {
|
||||
var getStatusL = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getStatusListForUpdate/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
statusFor: 'studyMaterial',
|
||||
data: localUpdateStatus
|
||||
}
|
||||
};
|
||||
$http(getStatusL).then(function (response) {
|
||||
if (response.data.statusList) {
|
||||
$scope.statusDetailsList = response.data.statusList_details;
|
||||
// $scope.searchLoading = false;
|
||||
} else {
|
||||
// $scope.searchLoading = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// get Sem/Year based on the course select
|
||||
$scope.getSemYearList = function (courseID) {
|
||||
$scope.semYearList = '';
|
||||
if (courseID !== '' && courseID !== undefined) {
|
||||
var getSemYear = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'getSemYearForCourse/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: courseID
|
||||
}
|
||||
};
|
||||
$http(getSemYear).then(function (response) {
|
||||
if (response.data.semYearResult) {
|
||||
$scope.semYearList = response.data.semYear_result_details;
|
||||
} else {
|
||||
$scope.semYearList = '';
|
||||
}
|
||||
});
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// $scope.updateItems = function () {
|
||||
// var studentForUpdate = [];
|
||||
// var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
// if (item.Selected === true) {
|
||||
// let getStudentID = new getStudentForUpdateDetails(item.StudentID);
|
||||
// studentForUpdate.push(getStudentID);
|
||||
// return true;
|
||||
// }
|
||||
// });
|
||||
// function getStudentForUpdateDetails(id) {
|
||||
// this.iD = id;
|
||||
// }
|
||||
// alert(JSON.stringify($scope.myStatusModel));
|
||||
// alert(JSON.stringify(studentForUpdate));
|
||||
// }
|
||||
|
||||
$scope.statusUpdate = {
|
||||
submit: function (form, myStatusModel) {
|
||||
var firstError = null;
|
||||
if (form.$invalid) {
|
||||
var field = null, firstError = null;
|
||||
for (field in form) {
|
||||
if (field[0] != '$') {
|
||||
if (firstError === null && !form[field].$valid) {
|
||||
firstError = form[field].$name;
|
||||
}
|
||||
if (form[field].$pristine) {
|
||||
form[field].$dirty = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
angular.element('.ng-invalid[name=' + firstError + ']').focus();
|
||||
// swal("The form cannot be submitted because it contains validation errors!", "Errors are marked with a red, dashed border!", "error");
|
||||
} else {
|
||||
var studentForUpdate = [];
|
||||
let formate = "dd-MM-yyyy";
|
||||
$scope.myStatusModel.dateOn = $filter('date')(new Date($scope.myStatusModel.dateOn), formate);
|
||||
var ItemsSelected = $scope.searchResultDetails.filter(function (item) {
|
||||
if (item.Selected === true) {
|
||||
let getStudentID = new getStudentForUpdateDetails(item.StudentID);
|
||||
studentForUpdate.push(getStudentID);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
function getStudentForUpdateDetails(id) {
|
||||
this.StudentID = id;
|
||||
this.CourseID = $scope.myStatusModel.semYear;
|
||||
this.BranchCode = localDetails.localBranchID;
|
||||
this.ListCode = $scope.myStatusModel.staus;
|
||||
this.SDate = $scope.myStatusModel.dateOn;
|
||||
this.Coursedetail = id;
|
||||
this.Comments = $scope.myStatusModel.comment;
|
||||
}
|
||||
// alert(JSON.stringify($scope.myStatusModel));
|
||||
// alert(JSON.stringify(studentForUpdate));
|
||||
|
||||
var updateStudyMaterial = {
|
||||
method: 'POST',
|
||||
url: apiPoint.url + 'updateStudentMaterialStatus/',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
data: {
|
||||
data: studentForUpdate,
|
||||
requestDetails : localDetails
|
||||
}
|
||||
};
|
||||
$http(updateStudyMaterial).then(function (response) {
|
||||
if (response.data.addStatus) {
|
||||
swal("Success!", response.data.message, "success");
|
||||
// for success state
|
||||
$scope.allSelected('undefined');
|
||||
$scope.OpenWindowStatus = false;
|
||||
} else {
|
||||
swal("Failed!", response.data.message, "error");
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
reset: function (form) {
|
||||
form.$setPristine(true);
|
||||
$scope.myStatusModel = {
|
||||
'semYear': '',
|
||||
'staus': '',
|
||||
'dateOn': '',
|
||||
'comment': ''
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// check unchek for table values
|
||||
|
||||
|
||||
|
||||
// $scope.CheckUncheckAll = function () {
|
||||
|
||||
// for (var i = 0; i < $scope.searchResultDetails.length; i++) {
|
||||
// $scope.searchResultDetails[i].Selected = $scope.IsAllChecked;
|
||||
// }
|
||||
// };
|
||||
|
||||
// $scope.CheckUncheckHeader = function () {
|
||||
// $scope.IsAllChecked = true;
|
||||
// for (var i = 0; i < $scope.searchResultDetails.length; i++) {
|
||||
// if (!$scope.searchResultDetails[i].Selected) {
|
||||
// $scope.IsAllChecked = false;
|
||||
// break;
|
||||
// }
|
||||
// };
|
||||
// };
|
||||
|
||||
// $scope.CheckUncheckHeader();
|
||||
}]);
|
||||
|
||||
262
Apollo/assets/views/status-update/answer_booklet_status.html
Normal file
262
Apollo/assets/views/status-update/answer_booklet_status.html
Normal file
@ -0,0 +1,262 @@
|
||||
<!-- start: PAGE TITLE -->
|
||||
<section id="page-title">
|
||||
<div class="row">
|
||||
<div class="col-sm-8">
|
||||
<h1 class="mainTitle" translate="sidebar.nav.student.status.ANSWERBOOKLET">{{ mainTitle }}</h1>
|
||||
<span class="mainDescription"></span>
|
||||
</div>
|
||||
<div ncy-breadcrumb></div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- end: PAGE TITLE -->
|
||||
<!-- start: STUDY MATERIAL STATUS -->
|
||||
<div class="container-fluid container-fullw bg-white">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<!-- /// controller: 'UserCtrl' - localtion: assets/js/controllers/userCtrl.js /// -->
|
||||
<div ng-controller="answerBookletStatusCtrl">
|
||||
<!-- start: STATUS -->
|
||||
<div class="container" ng-init="init()">
|
||||
<div class="row">
|
||||
<!--<pre>{{searchData | json }}</pre> -->
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
University
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="1" class="cs-select cs-skin-elastic" name="university" ng-model="myModelCourseAdd"
|
||||
ng-change="getUniveId(myModelCourseAdd)">
|
||||
<option value="" disabled selected>Select University</option>
|
||||
<option ng-repeat="item in universityData" value="{{item}}">{{item.UniversityName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
Course
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="2" class="cs-select cs-skin-elastic" name="course" ng-model="searchData.Course" ng-change="getValueChange()">
|
||||
<option value="" disabled selected>Select Course</option>
|
||||
<option ng-repeat="itemCourse in courseData" value="{{itemCourse.CourseID}}">{{itemCourse.CourseName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
Batch
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="3" class="cs-select cs-skin-elastic" name="batch" ng-model="searchData.Batch" ng-change="getValueChange()">
|
||||
<option value="" disabled selected>Select Batch</option>
|
||||
<option ng-repeat="itemBatch in batchData" value="{{itemBatch.BatchCode}}">{{itemBatch.BatchName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--<pre> {{ searchResultDetails | json }}</pre>-->
|
||||
|
||||
<div>
|
||||
<!--// student search result-->
|
||||
<div ng-if="searchLoading === true">
|
||||
<!--search loading start-->
|
||||
<div style="padding: auto 0; color: #007AFF; font-weight: bold; text-align:center;
|
||||
margin-top: 25px;">
|
||||
<h4 style="color: inherit">fetching...</h4>
|
||||
</div>
|
||||
<!--search loading end-->
|
||||
</div>
|
||||
|
||||
<div ng-if="searchLoading === false">
|
||||
<div class="col-md-12" ng-if="searchResultStatus == false" style="min-height: 281px;">
|
||||
<p style="color: red;" align="center"><strong><h4 class="text-center">No
|
||||
records found... </h4></strong></p>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12" ng-if="searchResultStatus == true">
|
||||
<div class="col-md-12" ng-if="searchResultLength === 0" style="min-height: 281px;">
|
||||
<p style="color: red;" align="center"><strong><h4 class="text-center">No
|
||||
records found... </h4></strong></p>
|
||||
</div>
|
||||
|
||||
<div class="table-responsive" ng-if="searchResultLength > 0">
|
||||
<!--// search-->
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
<script>
|
||||
$(function () {
|
||||
$("#search").focus();
|
||||
});
|
||||
</script>
|
||||
<input class="form-control" type="text" ng-change="mySearchChangeFunc(search.MobileNumber)" ng-model="search.MobileNumber" id="search" autofocus tabindex="1" placeholder="Search Mobile"
|
||||
/><br><br>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<table class="table table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<input type="checkbox" ng-hide="allSelectedHide" ng-model="allSelected" ng-change="openUpdateWind()" ng-model-options="{getterSetter: true}" />
|
||||
</th>
|
||||
<th ng-click="sort('Firstname')">First Name
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='Firstname'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('Lastname')">Last Name
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='Lastname'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('MobileNumber')">MobileNumber
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='MobileNumber'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('EmailID')">Email ID
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='EmailID'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody dir-paginate="p in searchResultDetails|filter:search:strict|orderBy:sortKey:reverse|itemsPerPage:10">
|
||||
<tr>
|
||||
<td>
|
||||
<label>
|
||||
<input type="checkbox" ng-model="p.Selected" ng-change="openUpdateWind()" />
|
||||
<!--{{p.StudentID}}-->
|
||||
</label>
|
||||
</td>
|
||||
<td>{{p.Firstname}}</td>
|
||||
<td>{{p.Lastname}}</td>
|
||||
<td>{{p.MobileNumber}}</td>
|
||||
<td>{{p.EmailID}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<dir-pagination-controls max-size="10" direction-links="true" boundary-links="true">
|
||||
</dir-pagination-controls>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div ng-if="OpenWindowStatus">
|
||||
<form name="Form" id="form" novalidate ng-submit="statusUpdate.submit(Form, myStatusModel)" method="post">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="row">
|
||||
<div class="col-md-4 form-group" ng-class="{'has-error':Form.semYear.$dirty && Form.semYear.$invalid, 'has-success':Form.semYear.$valid}">
|
||||
<label for="form-field-select-2">
|
||||
Sem/Year <span class="symbol required"></span>
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="4" class="cs-select cs-skin-elastic" name="semYear" ng-model="myStatusModel.semYear"
|
||||
required>
|
||||
<option value="" disabled selected>Select Sem/Year</option>
|
||||
<option ng-repeat="itemSemY in semYearList" value="{{itemSemY.ID}}">{{itemSemY.Sem_Year}}</option>
|
||||
</select>
|
||||
<span class="error text-small block" ng-if="Form.semYear.$dirty && Form.semYear.$error.required">Sem/Year is Required</span>
|
||||
|
||||
</div>
|
||||
<div class="col-md-4 form-group" ng-class="{'has-error':Form.status.$dirty && Form.status.$invalid, 'has-success':Form.status.$valid}">
|
||||
<label for="form-field-select-2">
|
||||
Status <span class="symbol required"></span>
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="4" class="cs-select cs-skin-elastic" name="status" ng-model="myStatusModel.staus"
|
||||
required>
|
||||
<option value="" disabled selected>Select Status</option>
|
||||
<option ng-repeat="itemStatus in statusDetailsList" value="{{itemStatus.ListCode}}">{{itemStatus.ListName}}</option>
|
||||
</select>
|
||||
<span class="error text-small block" ng-if="Form.status.$dirty && Form.status.$error.required">Status is Required</span>
|
||||
|
||||
</div>
|
||||
<!--<div class="col-md-4 form-group" ng-class="{'has-error':Form.status.$dirty && Form.status.$invalid , 'has-success':Form.status.$valid}">
|
||||
<label>
|
||||
Status <span
|
||||
class="symbol required"></span>
|
||||
</label>
|
||||
<input type="text" name="status" tabindex="5" placeholder="Enter Status" class="form-control" ng-model="myStatusModel.staus"
|
||||
required/>
|
||||
<span class="error text-small block" ng-if="Form.sestatusmYear.$dirty && Form.status.$error.required">Status is Required </span>
|
||||
</div>-->
|
||||
<div data-ng-controller="DatepickerDemoCtrl">
|
||||
<div class="col-md-4 form-group" ng-class="{'has-error':Form.dateofstaus.$dirty && Form.dateofstaus.$invalid, 'has-success':Form.dateofstaus.$valid}">
|
||||
<label>
|
||||
Date <span
|
||||
class="symbol required"></span>
|
||||
</label>
|
||||
<input type="text" tabindex="6" class="form-control " ng-click="startOpen = !startOpen" datepicker-popup="dd-MM-yyyy" ng-model="myStatusModel.dateOn"
|
||||
is-open="startOpen" ng-init="startOpen = false" name="dateofstaus"
|
||||
datepicker-options="dateOptions" placeholder="Select Date " close-text="Close"
|
||||
required="required" ng-change="getMaxEndDate(myModel.startDate)"
|
||||
/>
|
||||
|
||||
<!--<input type="text" tabindex="28" class="form-control" ng-click="startOpen = !startOpen" datepicker-popup="dd-MM-yyyy" ng-model="myModelCourseAdd.dateofjoining"
|
||||
is-open="startOpen" ng-init="startOpen = false" name="dateofjoining" datepicker-options="dateOptions"
|
||||
placeholder="Select Date of Joining" close-text="Close" required="required" datepicker-position="top"
|
||||
/>-->
|
||||
<span class="error text-small block" ng-if="Form.dateofstaus.$dirty && Form.dateofstaus.$invalid" ng-hide="Form.dateofstaus.$error.maxlength">Date is required.</span>
|
||||
<span class="error text-small block" ng-if="Form.dateofstaus.$error.maxlength">Enter a Valid Date</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6 form-group" ng-class="{'has-error':Form.description.$dirty && Form.description.$invalid}">
|
||||
<label>
|
||||
Comments
|
||||
</label>
|
||||
|
||||
<textarea type="text" placeholder="Enter Comments" tabindex="7" class="form-control" name="description" ng-model="myStatusModel.comment"
|
||||
/>
|
||||
<span class="error text-small block" ng-if="Form.description.$dirty && Form.description.$error.pattern">Invalid Comments</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="pull-right">
|
||||
<button type="submit" tabindex="8" ladda="ldloading1.zoom_in" class="btn btn-wide btn-success" data-style="zoom-in">
|
||||
Submit
|
||||
</button>
|
||||
<button type="reset" tabindex="9" class="btn btn-warning btn-wide" tabindex="9" ng-click="employeeForm.resetCourse(Form)">
|
||||
Reset
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<!--studen search result end-->
|
||||
</div>
|
||||
|
||||
<!-- end: STATUS -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- end: STUDY MATERIAL STATUS -->
|
||||
|
||||
<section id="page-title">
|
||||
<div class="row">
|
||||
<div class="col-sm-8">
|
||||
<!--<h1 class="mainTitle" translate="sidebar.nav.student.status.STUDYMATERIAL">{{ mainTitle }}</h1>
|
||||
<span class="mainDescription"></span>-->
|
||||
</div>
|
||||
<!--<div ncy-breadcrumb></div>-->
|
||||
</div>
|
||||
</section>
|
||||
262
Apollo/assets/views/status-update/application_status.html
Normal file
262
Apollo/assets/views/status-update/application_status.html
Normal file
@ -0,0 +1,262 @@
|
||||
<!-- start: PAGE TITLE -->
|
||||
<section id="page-title">
|
||||
<div class="row">
|
||||
<div class="col-sm-8">
|
||||
<h1 class="mainTitle" translate="sidebar.nav.student.status.APPLICATION">{{ mainTitle }}</h1>
|
||||
<span class="mainDescription"></span>
|
||||
</div>
|
||||
<div ncy-breadcrumb></div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- end: PAGE TITLE -->
|
||||
<!-- start: STUDY MATERIAL STATUS -->
|
||||
<div class="container-fluid container-fullw bg-white">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<!-- /// controller: 'UserCtrl' - localtion: assets/js/controllers/userCtrl.js /// -->
|
||||
<div ng-controller="applicationStatusCtrl">
|
||||
<!-- start: STATUS -->
|
||||
<div class="container" ng-init="init()">
|
||||
<div class="row">
|
||||
<!--<pre>{{searchData | json }}</pre> -->
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
University
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="1" class="cs-select cs-skin-elastic" name="university" ng-model="myModelCourseAdd"
|
||||
ng-change="getUniveId(myModelCourseAdd)">
|
||||
<option value="" disabled selected>Select University</option>
|
||||
<option ng-repeat="item in universityData" value="{{item}}">{{item.UniversityName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
Course
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="2" class="cs-select cs-skin-elastic" name="course" ng-model="searchData.Course" ng-change="getValueChange()">
|
||||
<option value="" disabled selected>Select Course</option>
|
||||
<option ng-repeat="itemCourse in courseData" value="{{itemCourse.CourseID}}">{{itemCourse.CourseName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
Batch
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="3" class="cs-select cs-skin-elastic" name="batch" ng-model="searchData.Batch" ng-change="getValueChange()">
|
||||
<option value="" disabled selected>Select Batch</option>
|
||||
<option ng-repeat="itemBatch in batchData" value="{{itemBatch.BatchCode}}">{{itemBatch.BatchName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--<pre> {{ searchResultDetails | json }}</pre>-->
|
||||
|
||||
<div>
|
||||
<!--// student search result-->
|
||||
<div ng-if="searchLoading === true">
|
||||
<!--search loading start-->
|
||||
<div style="padding: auto 0; color: #007AFF; font-weight: bold; text-align:center;
|
||||
margin-top: 25px;">
|
||||
<h4 style="color: inherit">fetching...</h4>
|
||||
</div>
|
||||
<!--search loading end-->
|
||||
</div>
|
||||
|
||||
<div ng-if="searchLoading === false">
|
||||
<div class="col-md-12" ng-if="searchResultStatus == false" style="min-height: 281px;">
|
||||
<p style="color: red;" align="center"><strong><h4 class="text-center">No
|
||||
records found... </h4></strong></p>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12" ng-if="searchResultStatus == true">
|
||||
<div class="col-md-12" ng-if="searchResultLength === 0" style="min-height: 281px;">
|
||||
<p style="color: red;" align="center"><strong><h4 class="text-center">No
|
||||
records found... </h4></strong></p>
|
||||
</div>
|
||||
|
||||
<div class="table-responsive" ng-if="searchResultLength > 0">
|
||||
<!--// search-->
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
<script>
|
||||
$(function () {
|
||||
$("#search").focus();
|
||||
});
|
||||
</script>
|
||||
<input class="form-control" type="text" ng-change="mySearchChangeFunc(search.MobileNumber)" ng-model="search.MobileNumber" id="search" autofocus tabindex="1" placeholder="Search Mobile"
|
||||
/><br><br>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<table class="table table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<input type="checkbox" ng-hide="allSelectedHide" ng-model="allSelected" ng-change="openUpdateWind()" ng-model-options="{getterSetter: true}" />
|
||||
</th>
|
||||
<th ng-click="sort('Firstname')">First Name
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='Firstname'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('Lastname')">Last Name
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='Lastname'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('MobileNumber')">MobileNumber
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='MobileNumber'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('EmailID')">Email ID
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='EmailID'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody dir-paginate="p in searchResultDetails|filter:search:strict|orderBy:sortKey:reverse|itemsPerPage:10">
|
||||
<tr>
|
||||
<td>
|
||||
<label>
|
||||
<input type="checkbox" ng-model="p.Selected" ng-change="openUpdateWind()" />
|
||||
<!--{{p.StudentID}}-->
|
||||
</label>
|
||||
</td>
|
||||
<td>{{p.Firstname}}</td>
|
||||
<td>{{p.Lastname}}</td>
|
||||
<td>{{p.MobileNumber}}</td>
|
||||
<td>{{p.EmailID}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<dir-pagination-controls max-size="10" direction-links="true" boundary-links="true">
|
||||
</dir-pagination-controls>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div ng-if="OpenWindowStatus">
|
||||
<form name="Form" id="form" novalidate ng-submit="statusUpdate.submit(Form, myStatusModel)" method="post">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="row">
|
||||
<!--<div class="col-md-4 form-group" ng-class="{'has-error':Form.semYear.$dirty && Form.semYear.$invalid, 'has-success':Form.semYear.$valid}">
|
||||
<label for="form-field-select-2">
|
||||
Sem/Year <span class="symbol required"></span>
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="4" class="cs-select cs-skin-elastic" name="semYear" ng-model="myStatusModel.semYear"
|
||||
required>
|
||||
<option value="" disabled selected>Select Sem/Year</option>
|
||||
<option ng-repeat="itemSemY in semYearList" value="{{itemSemY.ID}}">{{itemSemY.Sem_Year}}</option>
|
||||
</select>
|
||||
<span class="error text-small block" ng-if="Form.semYear.$dirty && Form.semYear.$error.required">Sem/Year is Required</span>
|
||||
|
||||
</div>-->
|
||||
<div class="col-md-4 form-group" ng-class="{'has-error':Form.status.$dirty && Form.status.$invalid, 'has-success':Form.status.$valid}">
|
||||
<label for="form-field-select-2">
|
||||
Status <span class="symbol required"></span>
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="4" class="cs-select cs-skin-elastic" name="status" ng-model="myStatusModel.staus"
|
||||
required>
|
||||
<option value="" disabled selected>Select Status</option>
|
||||
<option ng-repeat="itemStatus in statusDetailsList" value="{{itemStatus.ListCode}}">{{itemStatus.ListName}}</option>
|
||||
</select>
|
||||
<span class="error text-small block" ng-if="Form.status.$dirty && Form.status.$error.required">Status is Required</span>
|
||||
|
||||
</div>
|
||||
<!--<div class="col-md-6 form-group" ng-class="{'has-error':Form.status.$dirty && Form.status.$invalid , 'has-success':Form.status.$valid}">
|
||||
<label>
|
||||
Status <span
|
||||
class="symbol required"></span>
|
||||
</label>
|
||||
<input type="text" name="status" tabindex="5" placeholder="Enter Status" class="form-control" ng-model="myStatusModel.staus"
|
||||
required/>
|
||||
<span class="error text-small block" ng-if="Form.sestatusmYear.$dirty && Form.status.$error.required">Status is Required </span>
|
||||
</div>-->
|
||||
<div data-ng-controller="DatepickerDemoCtrl">
|
||||
<div class="col-md-6 form-group" ng-class="{'has-error':Form.dateofstaus.$dirty && Form.dateofstaus.$invalid, 'has-success':Form.dateofstaus.$valid}">
|
||||
<label>
|
||||
Date <span
|
||||
class="symbol required"></span>
|
||||
</label>
|
||||
<input type="text" tabindex="6" class="form-control " ng-click="startOpen = !startOpen" datepicker-popup="dd-MM-yyyy" ng-model="myStatusModel.dateOn"
|
||||
is-open="startOpen" ng-init="startOpen = false" name="dateofstaus"
|
||||
datepicker-options="dateOptions" placeholder="Select Date " close-text="Close"
|
||||
required="required" ng-change="getMaxEndDate(myModel.startDate)"
|
||||
/>
|
||||
|
||||
<!--<input type="text" tabindex="28" class="form-control" ng-click="startOpen = !startOpen" datepicker-popup="dd-MM-yyyy" ng-model="myModelCourseAdd.dateofjoining"
|
||||
is-open="startOpen" ng-init="startOpen = false" name="dateofjoining" datepicker-options="dateOptions"
|
||||
placeholder="Select Date of Joining" close-text="Close" required="required" datepicker-position="top"
|
||||
/>-->
|
||||
<span class="error text-small block" ng-if="Form.dateofstaus.$dirty && Form.dateofstaus.$invalid" ng-hide="Form.dateofstaus.$error.maxlength">Date is required.</span>
|
||||
<span class="error text-small block" ng-if="Form.dateofstaus.$error.maxlength">Enter a Valid Date</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6 form-group" ng-class="{'has-error':Form.description.$dirty && Form.description.$invalid}">
|
||||
<label>
|
||||
Comments
|
||||
</label>
|
||||
|
||||
<textarea type="text" placeholder="Enter Comments" tabindex="7" class="form-control" name="description" ng-model="myStatusModel.comment"
|
||||
/>
|
||||
<span class="error text-small block" ng-if="Form.description.$dirty && Form.description.$error.pattern">Invalid Comments</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="pull-right">
|
||||
<button type="submit" tabindex="8" ladda="ldloading1.zoom_in" class="btn btn-wide btn-success" data-style="zoom-in">
|
||||
Submit
|
||||
</button>
|
||||
<button type="reset" tabindex="9" class="btn btn-warning btn-wide" tabindex="9" ng-click="employeeForm.resetCourse(Form)">
|
||||
Reset
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<!--studen search result end-->
|
||||
</div>
|
||||
|
||||
<!-- end: STATUS -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- end: STUDY MATERIAL STATUS -->
|
||||
|
||||
<section id="page-title">
|
||||
<div class="row">
|
||||
<div class="col-sm-8">
|
||||
<!--<h1 class="mainTitle" translate="sidebar.nav.student.status.STUDYMATERIAL">{{ mainTitle }}</h1>
|
||||
<span class="mainDescription"></span>-->
|
||||
</div>
|
||||
<!--<div ncy-breadcrumb></div>-->
|
||||
</div>
|
||||
</section>
|
||||
286
Apollo/assets/views/status-update/certification_status.html
Normal file
286
Apollo/assets/views/status-update/certification_status.html
Normal file
@ -0,0 +1,286 @@
|
||||
<!-- start: PAGE TITLE -->
|
||||
<section id="page-title">
|
||||
<div class="row">
|
||||
<div class="col-sm-8">
|
||||
<h1 class="mainTitle" translate="sidebar.nav.student.status.CERTIFICATION">{{ mainTitle }}</h1>
|
||||
<span class="mainDescription"></span>
|
||||
</div>
|
||||
<div ncy-breadcrumb></div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- end: PAGE TITLE -->
|
||||
<!-- start: CERTIFICATION STATUS -->
|
||||
<div class="container-fluid container-fullw bg-white">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<!-- /// controller: 'UserCtrl' - localtion: assets/js/controllers/userCtrl.js /// -->
|
||||
<div ng-controller="certificationStatusCtrl">
|
||||
<!-- start: STATUS -->
|
||||
<div class="container" ng-init="init()">
|
||||
<div class="row">
|
||||
<!--<pre>{{searchData | json }}</pre> -->
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
University
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="1" class="cs-select cs-skin-elastic" name="university" ng-model="myModelCourseAdd"
|
||||
ng-change="getUniveId(myModelCourseAdd)">
|
||||
<option value="" disabled selected>Select University</option>
|
||||
<option ng-repeat="item in universityData" value="{{item}}">{{item.UniversityName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
Course
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="2" class="cs-select cs-skin-elastic" name="course" ng-model="searchData.Course" ng-change="getValueChange()">
|
||||
<option value="" disabled selected>Select Course</option>
|
||||
<option ng-repeat="itemCourse in courseData" value="{{itemCourse.CourseID}}">{{itemCourse.CourseName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
Batch
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="3" class="cs-select cs-skin-elastic" name="batch" ng-model="searchData.Batch" ng-change="getValueChange()">
|
||||
<option value="" disabled selected>Select Batch</option>
|
||||
<option ng-repeat="itemBatch in batchData" value="{{itemBatch.BatchCode}}">{{itemBatch.BatchName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--<pre> {{ searchResultDetails | json }}</pre>-->
|
||||
|
||||
<div>
|
||||
<!--// student search result-->
|
||||
<div ng-if="searchLoading === true">
|
||||
<!--search loading start-->
|
||||
<div style="padding: auto 0; color: #007AFF; font-weight: bold; text-align:center;
|
||||
margin-top: 25px;">
|
||||
<h4 style="color: inherit">fetching...</h4>
|
||||
</div>
|
||||
<!--search loading end-->
|
||||
</div>
|
||||
|
||||
<div ng-if="searchLoading === false">
|
||||
<div class="col-md-12" ng-if="searchResultStatus == false" style="min-height: 281px;">
|
||||
<p style="color: red;" align="center"><strong><h4 class="text-center">No
|
||||
records found... </h4></strong></p>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12" ng-if="searchResultStatus == true">
|
||||
<div class="col-md-12" ng-if="searchResultLength === 0" style="min-height: 281px;">
|
||||
<p style="color: red;" align="center"><strong><h4 class="text-center">No
|
||||
records found... </h4></strong></p>
|
||||
</div>
|
||||
|
||||
<div class="table-responsive" ng-if="searchResultLength > 0">
|
||||
<!--// search-->
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
<script>
|
||||
$(function () {
|
||||
$("#search").focus();
|
||||
});
|
||||
</script>
|
||||
<input class="form-control" type="text" ng-change="mySearchChangeFunc(search.MobileNumber)" ng-model="search.MobileNumber"
|
||||
id="search" autofocus tabindex="1" placeholder="Search Mobile" /><br><br>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<table class="table table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<!--<input type="checkbox" ng-hide="allSelectedHide" ng-model="allSelected" ng-change="openUpdateWind()" ng-model-options="{getterSetter: true}" />-->
|
||||
</th>
|
||||
<th ng-click="sort('Firstname')">First Name
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='Firstname'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('Lastname')">Last Name
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='Lastname'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('MobileNumber')">MobileNumber
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='MobileNumber'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('EmailID')">Email ID
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='EmailID'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody dir-paginate="p in searchResultDetails|filter:search:strict|orderBy:sortKey:reverse|itemsPerPage:10">
|
||||
<tr>
|
||||
<td>
|
||||
<label>
|
||||
<input type="checkbox" ng-model="p.Selected" ng-click="setOneSelect(p)" />
|
||||
<!--{{p.StudentID}}-->
|
||||
</label>
|
||||
</td>
|
||||
<td>{{p.Firstname}}</td>
|
||||
<td>{{p.Lastname}}</td>
|
||||
<td>{{p.MobileNumber}}</td>
|
||||
<td>{{p.EmailID}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<dir-pagination-controls max-size="10" direction-links="true" boundary-links="true">
|
||||
</dir-pagination-controls>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div ng-if="OpenWindowStatus">
|
||||
<form name="Form" id="form" novalidate ng-submit="statusUpdate.submit(Form, myStatusModel)" method="post">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="row">
|
||||
<div class="col-md-6 form-group" ng-class="{'has-error':Form.certificatetype.$dirty && Form.certificatetype.$invalid, 'has-success':Form.certificatetype.$valid}">
|
||||
<label for="form-field-select-2">
|
||||
Certificate Type <span class="symbol required"></span>
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="4" class="cs-select cs-skin-elastic" name="certificatetype" ng-model="myStatusModel.certificatetype"
|
||||
required>
|
||||
<option value="" disabled selected>Select Certificate Type</option>
|
||||
<option ng-repeat="itemCerf in certificateData" value="{{itemCerf.CertificationID}}">{{itemCerf.CertificateName}}</option>
|
||||
</select>
|
||||
<span class="error text-small block" ng-if="Form.certificatetype.$dirty && Form.certificatetype.$error.required">Certificate Type is Required</span>
|
||||
|
||||
</div>
|
||||
<div class="col-md-6 form-group" ng-class="{'has-error':Form.certificateNumber.$dirty && Form.certificateNumber.$invalid }">
|
||||
<label>
|
||||
Certificate Number
|
||||
|
||||
</label>
|
||||
<input type="text" name="certificateNumber" tabindex="5" placeholder="Enter Certificate Number" class="form-control" ng-model="myStatusModel.certificateNumber"
|
||||
/>
|
||||
<span class="error text-small block" ng-if="Form.certificateNumber.$dirty && Form.certificateNumber.$error.required">Status is Required </span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4 form-group" ng-class="{'has-error':Form.semYear.$dirty && Form.semYear.$invalid, 'has-success':Form.semYear.$valid}">
|
||||
<label for="form-field-select-2">
|
||||
Sem/Year <span class="symbol required"></span>
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="4" class="cs-select cs-skin-elastic" name="semYear" ng-model="myStatusModel.semYear"
|
||||
required>
|
||||
<option value="" disabled selected>Select Sem/Year</option>
|
||||
<option ng-repeat="itemSemY in semYearList" value="{{itemSemY.ID}}">{{itemSemY.Sem_Year}}</option>
|
||||
</select>
|
||||
<span class="error text-small block" ng-if="Form.semYear.$dirty && Form.semYear.$error.required">Sem/Year is Required</span>
|
||||
|
||||
</div>
|
||||
<div class="col-md-4 form-group" ng-class="{'has-error':Form.status.$dirty && Form.status.$invalid, 'has-success':Form.status.$valid}">
|
||||
<label for="form-field-select-2">
|
||||
Status <span class="symbol required"></span>
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="4" class="cs-select cs-skin-elastic" name="status" ng-model="myStatusModel.staus"
|
||||
required>
|
||||
<option value="" disabled selected>Select Status</option>
|
||||
<option ng-repeat="itemStatus in statusDetailsList" value="{{itemStatus.ListCode}}">{{itemStatus.ListName}}</option>
|
||||
</select>
|
||||
<span class="error text-small block" ng-if="Form.status.$dirty && Form.status.$error.required">Status is Required</span>
|
||||
|
||||
</div>
|
||||
<!--<div class="col-md-4 form-group" ng-class="{'has-error':Form.status.$dirty && Form.status.$invalid , 'has-success':Form.status.$valid}">
|
||||
<label>
|
||||
Status <span
|
||||
class="symbol required"></span>
|
||||
</label>
|
||||
<input type="text" name="status" tabindex="5" placeholder="Enter Status" class="form-control" ng-model="myStatusModel.staus"
|
||||
required/>
|
||||
<span class="error text-small block" ng-if="Form.sestatusmYear.$dirty && Form.status.$error.required">Status is Required </span>
|
||||
</div>-->
|
||||
<div data-ng-controller="DatepickerDemoCtrl">
|
||||
<div class="col-md-4 form-group" ng-class="{'has-error':Form.dateofstaus.$dirty && Form.dateofstaus.$invalid, 'has-success':Form.dateofstaus.$valid}">
|
||||
<label>
|
||||
Date <span
|
||||
class="symbol required"></span>
|
||||
</label>
|
||||
<input type="text" tabindex="6" class="form-control " ng-click="startOpen = !startOpen" datepicker-popup="dd-MM-yyyy" ng-model="myStatusModel.dateOn"
|
||||
is-open="startOpen" ng-init="startOpen = false" name="dateofstaus"
|
||||
datepicker-options="dateOptions" placeholder="Select Date " close-text="Close"
|
||||
required="required" ng-change="getMaxEndDate(myModel.startDate)"
|
||||
/>
|
||||
|
||||
<!--<input type="text" tabindex="28" class="form-control" ng-click="startOpen = !startOpen" datepicker-popup="dd-MM-yyyy" ng-model="myModelCourseAdd.dateofjoining"
|
||||
is-open="startOpen" ng-init="startOpen = false" name="dateofjoining" datepicker-options="dateOptions"
|
||||
placeholder="Select Date of Joining" close-text="Close" required="required" datepicker-position="top"
|
||||
/>-->
|
||||
<span class="error text-small block" ng-if="Form.dateofstaus.$dirty && Form.dateofstaus.$invalid" ng-hide="Form.dateofstaus.$error.maxlength">Date is required.</span>
|
||||
<span class="error text-small block" ng-if="Form.dateofstaus.$error.maxlength">Enter a Valid Date</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6 form-group" ng-class="{'has-error':Form.description.$dirty && Form.description.$invalid}">
|
||||
<label>
|
||||
Comments
|
||||
</label>
|
||||
|
||||
<textarea type="text" placeholder="Enter Comments" tabindex="7" class="form-control" name="description" ng-model="myStatusModel.comment"
|
||||
/>
|
||||
<span class="error text-small block" ng-if="Form.description.$dirty && Form.description.$error.pattern">Invalid Comments</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="pull-right">
|
||||
<button type="submit" tabindex="8" ladda="ldloading1.zoom_in" class="btn btn-wide btn-success" data-style="zoom-in">
|
||||
Submit
|
||||
</button>
|
||||
<button type="reset" tabindex="9" class="btn btn-warning btn-wide" tabindex="9" ng-click="employeeForm.resetCourse(Form)">
|
||||
Reset
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<!--studen search result end-->
|
||||
</div>
|
||||
|
||||
<!-- end: STATUS -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- end: CERTIFICATION STATUS -->
|
||||
|
||||
<section id="page-title">
|
||||
<div class="row">
|
||||
<div class="col-sm-8">
|
||||
<!--<h1 class="mainTitle" translate="sidebar.nav.student.status.STUDYMATERIAL">{{ mainTitle }}</h1>
|
||||
<span class="mainDescription"></span>-->
|
||||
</div>
|
||||
<!--<div ncy-breadcrumb></div>-->
|
||||
</div>
|
||||
</section>
|
||||
@ -1,25 +1,262 @@
|
||||
<!-- start: PAGE TITLE -->
|
||||
<section id="page-title">
|
||||
<div class="row">
|
||||
<div class="col-sm-8">
|
||||
<h1 class="mainTitle" translate="sidebar.nav.pages.USERPROFILE">{{ mainTitle }}</h1>
|
||||
<span class="mainDescription"></span>
|
||||
</div>
|
||||
<div ncy-breadcrumb></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-8">
|
||||
<h1 class="mainTitle" translate="sidebar.nav.student.status.STUDYMATERIAL">{{ mainTitle }}</h1>
|
||||
<span class="mainDescription"></span>
|
||||
</div>
|
||||
<div ncy-breadcrumb></div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- end: PAGE TITLE -->
|
||||
<!-- start: USER PROFILE -->
|
||||
<!-- start: STUDY MATERIAL STATUS -->
|
||||
<div class="container-fluid container-fullw bg-white">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<!-- /// controller: 'UserCtrl' - localtion: assets/js/controllers/userCtrl.js /// -->
|
||||
<div ng-controller="studyMaterialStatusCtrl">
|
||||
<!-- start: USER TABSET -->
|
||||
|
||||
<!-- end: USER TABSET -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<!-- /// controller: 'UserCtrl' - localtion: assets/js/controllers/userCtrl.js /// -->
|
||||
<div ng-controller="studyMaterialStatusCtrl">
|
||||
<!-- start: STATUS -->
|
||||
<div class="container" ng-init="init()">
|
||||
<div class="row">
|
||||
<!--<pre>{{searchData | json }}</pre> -->
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
University
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="1" class="cs-select cs-skin-elastic" name="university" ng-model="myModelCourseAdd"
|
||||
ng-change="getUniveId(myModelCourseAdd)">
|
||||
<option value="" disabled selected>Select University</option>
|
||||
<option ng-repeat="item in universityData" value="{{item}}">{{item.UniversityName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
Course
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="2" class="cs-select cs-skin-elastic" name="course" ng-model="searchData.Course" ng-change="getValueChange()">
|
||||
<option value="" disabled selected>Select Course</option>
|
||||
<option ng-repeat="itemCourse in courseData" value="{{itemCourse.CourseID}}">{{itemCourse.CourseName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
<label for="form-field-select-2">
|
||||
Batch
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="3" class="cs-select cs-skin-elastic" name="batch" ng-model="searchData.Batch" ng-change="getValueChange()">
|
||||
<option value="" disabled selected>Select Batch</option>
|
||||
<option ng-repeat="itemBatch in batchData" value="{{itemBatch.BatchCode}}">{{itemBatch.BatchName}}</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--<pre> {{ searchResultDetails | json }}</pre>-->
|
||||
|
||||
<div>
|
||||
<!--// student search result-->
|
||||
<div ng-if="searchLoading === true">
|
||||
<!--search loading start-->
|
||||
<div style="padding: auto 0; color: #007AFF; font-weight: bold; text-align:center;
|
||||
margin-top: 25px;">
|
||||
<h4 style="color: inherit">fetching...</h4>
|
||||
</div>
|
||||
<!--search loading end-->
|
||||
</div>
|
||||
|
||||
<div ng-if="searchLoading === false">
|
||||
<div class="col-md-12" ng-if="searchResultStatus == false" style="min-height: 281px;">
|
||||
<p style="color: red;" align="center"><strong><h4 class="text-center">No
|
||||
records found... </h4></strong></p>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12" ng-if="searchResultStatus == true">
|
||||
<div class="col-md-12" ng-if="searchResultLength === 0" style="min-height: 281px;">
|
||||
<p style="color: red;" align="center"><strong><h4 class="text-center">No
|
||||
records found... </h4></strong></p>
|
||||
</div>
|
||||
|
||||
<div class="table-responsive" ng-if="searchResultLength > 0">
|
||||
<!--// search-->
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
<script>
|
||||
$(function () {
|
||||
$("#search").focus();
|
||||
});
|
||||
</script>
|
||||
<input class="form-control" type="text" ng-change="mySearchChangeFunc(search.MobileNumber)" ng-model="search.MobileNumber" id="search" autofocus tabindex="1" placeholder="Search Mobile"
|
||||
/><br><br>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<table class="table table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<input type="checkbox" ng-hide="allSelectedHide" ng-model="allSelected" ng-change="openUpdateWind()" ng-model-options="{getterSetter: true}" />
|
||||
</th>
|
||||
<th ng-click="sort('Firstname')">First Name
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='Firstname'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('Lastname')">Last Name
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='Lastname'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('MobileNumber')">MobileNumber
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='MobileNumber'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
<th ng-click="sort('EmailID')">Email ID
|
||||
<span class="glyphicon sort-icon" ng-show="sortKey=='EmailID'" ng-class="{'glyphicon-chevron-up':reverse,'glyphicon-chevron-down':!reverse}"></span>
|
||||
</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody dir-paginate="p in searchResultDetails|filter:search:strict|orderBy:sortKey:reverse|itemsPerPage:10">
|
||||
<tr>
|
||||
<td>
|
||||
<label>
|
||||
<input type="checkbox" ng-model="p.Selected" ng-change="openUpdateWind()" />
|
||||
<!--{{p.StudentID}}-->
|
||||
</label>
|
||||
</td>
|
||||
<td>{{p.Firstname}}</td>
|
||||
<td>{{p.Lastname}}</td>
|
||||
<td>{{p.MobileNumber}}</td>
|
||||
<td>{{p.EmailID}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<dir-pagination-controls max-size="10" direction-links="true" boundary-links="true">
|
||||
</dir-pagination-controls>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div ng-if="OpenWindowStatus">
|
||||
<form name="Form" id="form" novalidate ng-submit="statusUpdate.submit(Form, myStatusModel)" method="post">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="row">
|
||||
<div class="col-md-4 form-group" ng-class="{'has-error':Form.semYear.$dirty && Form.semYear.$invalid, 'has-success':Form.semYear.$valid}">
|
||||
<label for="form-field-select-2">
|
||||
Sem/Year <span class="symbol required"></span>
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="4" class="cs-select cs-skin-elastic" name="semYear" ng-model="myStatusModel.semYear"
|
||||
required>
|
||||
<option value="" disabled selected>Select Sem/Year</option>
|
||||
<option ng-repeat="itemSemY in semYearList" value="{{itemSemY.ID}}">{{itemSemY.Sem_Year}}</option>
|
||||
</select>
|
||||
<span class="error text-small block" ng-if="Form.semYear.$dirty && Form.semYear.$error.required">Sem/Year is Required</span>
|
||||
|
||||
</div>
|
||||
<div class="col-md-4 form-group" ng-class="{'has-error':Form.status.$dirty && Form.status.$invalid, 'has-success':Form.status.$valid}">
|
||||
<label for="form-field-select-2">
|
||||
Status <span class="symbol required"></span>
|
||||
</label>
|
||||
|
||||
<select class="form-control" tabindex="4" class="cs-select cs-skin-elastic" name="status" ng-model="myStatusModel.staus"
|
||||
required>
|
||||
<option value="" disabled selected>Select Status</option>
|
||||
<option ng-repeat="itemStatus in statusDetailsList" value="{{itemStatus.ListCode}}">{{itemStatus.ListName}}</option>
|
||||
</select>
|
||||
<span class="error text-small block" ng-if="Form.status.$dirty && Form.status.$error.required">Status is Required</span>
|
||||
|
||||
</div>
|
||||
<!--<div class="col-md-4 form-group" ng-class="{'has-error':Form.status.$dirty && Form.status.$invalid , 'has-success':Form.status.$valid}">
|
||||
<label>
|
||||
Status <span
|
||||
class="symbol required"></span>
|
||||
</label>
|
||||
<input type="text" name="status" tabindex="5" placeholder="Enter Status" class="form-control" ng-model="myStatusModel.staus"
|
||||
required/>
|
||||
<span class="error text-small block" ng-if="Form.sestatusmYear.$dirty && Form.status.$error.required">Status is Required </span>
|
||||
</div>-->
|
||||
<div data-ng-controller="DatepickerDemoCtrl">
|
||||
<div class="col-md-4 form-group" ng-class="{'has-error':Form.dateofstaus.$dirty && Form.dateofstaus.$invalid, 'has-success':Form.dateofstaus.$valid}">
|
||||
<label>
|
||||
Date <span
|
||||
class="symbol required"></span>
|
||||
</label>
|
||||
<input type="text" tabindex="6" class="form-control " ng-click="startOpen = !startOpen" datepicker-popup="dd-MM-yyyy" ng-model="myStatusModel.dateOn"
|
||||
is-open="startOpen" ng-init="startOpen = false" name="dateofstaus"
|
||||
datepicker-options="dateOptions" placeholder="Select Date " close-text="Close"
|
||||
required="required" ng-change="getMaxEndDate(myModel.startDate)"
|
||||
/>
|
||||
|
||||
<!--<input type="text" tabindex="28" class="form-control" ng-click="startOpen = !startOpen" datepicker-popup="dd-MM-yyyy" ng-model="myModelCourseAdd.dateofjoining"
|
||||
is-open="startOpen" ng-init="startOpen = false" name="dateofjoining" datepicker-options="dateOptions"
|
||||
placeholder="Select Date of Joining" close-text="Close" required="required" datepicker-position="top"
|
||||
/>-->
|
||||
<span class="error text-small block" ng-if="Form.dateofstaus.$dirty && Form.dateofstaus.$invalid" ng-hide="Form.dateofstaus.$error.maxlength">Date is required.</span>
|
||||
<span class="error text-small block" ng-if="Form.dateofstaus.$error.maxlength">Enter a Valid Date</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6 form-group" ng-class="{'has-error':Form.description.$dirty && Form.description.$invalid}">
|
||||
<label>
|
||||
Comments
|
||||
</label>
|
||||
|
||||
<textarea type="text" placeholder="Enter Comments" tabindex="7" class="form-control" name="description" ng-model="myStatusModel.comment"
|
||||
/>
|
||||
<span class="error text-small block" ng-if="Form.description.$dirty && Form.description.$error.pattern">Invalid Comments</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="pull-right">
|
||||
<button type="submit" tabindex="8" ladda="ldloading1.zoom_in" class="btn btn-wide btn-success" data-style="zoom-in">
|
||||
Submit
|
||||
</button>
|
||||
<button type="reset" tabindex="9" class="btn btn-warning btn-wide" tabindex="9" ng-click="employeeForm.resetCourse(Form)">
|
||||
Reset
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<!--studen search result end-->
|
||||
</div>
|
||||
|
||||
<!-- end: STATUS -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- end: USER PROFILE -->
|
||||
<!-- end: STUDY MATERIAL STATUS -->
|
||||
|
||||
<section id="page-title">
|
||||
<div class="row">
|
||||
<div class="col-sm-8">
|
||||
<!--<h1 class="mainTitle" translate="sidebar.nav.student.status.STUDYMATERIAL">{{ mainTitle }}</h1>
|
||||
<span class="mainDescription"></span>-->
|
||||
</div>
|
||||
<!--<div ncy-breadcrumb></div>-->
|
||||
</div>
|
||||
</section>
|
||||
Loading…
Reference in New Issue
Block a user