diff --git a/Apollo/api/application/models/Hallticket_model.php b/Apollo/api/application/models/Hallticket_model.php index 3c84b20c..7e5ddbd4 100755 --- a/Apollo/api/application/models/Hallticket_model.php +++ b/Apollo/api/application/models/Hallticket_model.php @@ -689,12 +689,12 @@ class Hallticket_model extends CI_Model order by T_SemSubMap_Master.SemesterID"; $res = $this->db->query($sql,array($UID['universityID'],$courseID['CourseID'],$i,$branchId,$UID['universityID'],$courseID['CourseID'],$branchId)); //$id['FeeDetails'][$key2] = $res->result(); - $in[] = $res->result(); + $in1[] = $res->result(); //array_push($id['FeeDetails'][$key2],$ind); } - array_splice($id['FeeDetails'][$key2],0,6,$in); + array_splice($id['FeeDetails'][$key2],0,6,$in1); } @@ -710,12 +710,12 @@ class Hallticket_model extends CI_Model order by T_SemSubMap_Master.SemesterID"; $res = $this->db->query($sql,array($UID['universityID'],$courseID['CourseID'],$j,$branchId,$UID['universityID'],$courseID['CourseID'],$branchId)); //$id['FeeDetails'][$key2] = $res->result(); - $in[] = $res->result(); + $in2[] = $res->result(); //array_push($id['FeeDetails'][$key2],$ind); } - array_splice($id['FeeDetails'][$key2],0,6,$in); + array_splice($id['FeeDetails'][$key2],0,6,$in2); } @@ -731,12 +731,12 @@ class Hallticket_model extends CI_Model order by T_SemSubMap_Master.SemesterID"; $res = $this->db->query($sql,array($UID['universityID'],$courseID['CourseID'],$k,$branchId,$UID['universityID'],$courseID['CourseID'],$branchId)); //$id['FeeDetails'][$key2] = $res->result(); - $in[] = $res->result(); + $in3[] = $res->result(); //array_push($id['FeeDetails'][$key2],$ind); } - array_splice($id['FeeDetails'][$key2],0,6,$in); + array_splice($id['FeeDetails'][$key2],0,6,$in3); } @@ -752,12 +752,12 @@ class Hallticket_model extends CI_Model order by T_SemSubMap_Master.SemesterID"; $res = $this->db->query($sql,array($UID['universityID'],$courseID['CourseID'],$l,$branchId,$UID['universityID'],$courseID['CourseID'],$branchId)); //$id['FeeDetails'][$key2] = $res->result(); - $in[] = $res->result(); + $in4[] = $res->result(); //array_push($id['FeeDetails'][$key2],$ind); } - array_splice($id['FeeDetails'][$key2],0,6,$in); + array_splice($id['FeeDetails'][$key2],0,6,$in4); } $studentIDs['NUMTYPE'] = 'YEAR'; diff --git a/Apollo/assets/js/controllers/generateHallTicketCtrl.js b/Apollo/assets/js/controllers/generateHallTicketCtrl.js index 390f1415..6f2264a1 100755 --- a/Apollo/assets/js/controllers/generateHallTicketCtrl.js +++ b/Apollo/assets/js/controllers/generateHallTicketCtrl.js @@ -255,11 +255,12 @@ $scope.isLoaderTxt = "Loading..."; }; $http(dataForHallTicket).then(function (response) { if (response.data.status==200 && response.data.hallTicketStatus) { - // console.log(response.data); + $scope.pdfModel.universityDetails = response.data.hallTicketData.UniversityDetails; + $scope.pdfModel.studentDetails = response.data.hallTicketData.studentDetails; //console.log('API'); - //console.log($scope.pdfModel.studentDetails.length); + //console.log($scope.pdfModel.studentDetails); //console.log(response.data.hallTicketData.studentDetails.length); $scope.pdfModel.batchDetails = $scope.myModel.batchName; $scope.pdfModel.courseDetails = $scope.myModel.courseName; @@ -310,36 +311,425 @@ $scope.isLoaderTxt = "Loading..."; // Controller for Hallticket Modal PDF app.controller('HallTicketPDFCtrl', ["$scope", "$modalInstance", "pdfitems", function ($scope, $modalInstance, pdfitems) { - // console.log(pdfitems); + //console.log(pdfitems); $scope.localPdfUniverityDetails = pdfitems.universityDetails; $scope.universityNamePDF = $scope.localPdfUniverityDetails[0].UniversityName; $scope.universityAddressPDF = $scope.localPdfUniverityDetails[0].Address; $scope.universityEmailPDF = $scope.localPdfUniverityDetails[0].EmailID; + $scope.universityLogoPDF = $scope.localPdfUniverityDetails[0].ProfilePicPath; $scope.batchNamePDF = pdfitems.batchDetails.BatchName; $scope.courseNamePDF = pdfitems.courseDetails.CourseName; $scope.centerNamePDF = pdfitems.centerDetails.CenterName+''+ pdfitems.centerDetails.CenterAddress; $scope.semDataTypePDF = pdfitems.semDataType; + //console.log($scope.semDataTypePDF); //console.log($scope.universityNamePDF+'-'+$scope.localPdfUniverityDetails.UniversityName); $scope.localPdfStudentDetails = pdfitems.studentDetails; - $scope.printStudentDetails = function() { - - - - - - angular.forEach($scope.localPdfStudentDetails,function(value,key){ + $scope.printStudentDetails = function(hallticket_type) { + //console.log('FUNCTION CALLED-'+hallticket_type); + + angular.forEach($scope.localPdfStudentDetails,function(value,key){ + - var tempID = '#export'+value.StudentID; - var PDFName = value.Firstname+'-'+value.Lastname; - kendo.drawing.drawDOM( $(tempID),{paperSize: "A4",margin: { top: "1cm", bottom: "1cm" ,left: "3cm",right:"3cm"},scale: 0.8,height: 500} ).then(function(group) { + + if(value.StudentID) + { + //console.log("Total NO of Sem"+value.FeeDetails.length); - kendo.drawing.pdf.saveAs(group, PDFName+".pdf"); - }); - }); - - } + // var imgData = ''; + // html2canvas($("#university_header").get(0)).then(function (canvas) { + // var imgData = canvas.toDataURL("image/jpeg"); + // //var imgData = imgData.replace("png", "jpeg"); + // console.log(imgData); + // // // document.getElementById('uh').setAttribute('src', imgData); + + // }); + if(hallticket_type == 'SEM' || hallticket_type == 'REG' || hallticket_type == 'LAT'){ + // console.log('hallticket_type == '+hallticket_type); + var semlength = value.FeeDetails.length; + if(hallticket_type == 'REG' || hallticket_type == 'LAT') + { + semlength = 7; + } + var i = 0; + for(i = 0; i <= semlength;i=i+2) + { + + + //console.log('FOR'+i); + var fileName = "DEFAULT.pdf"; + var margins = { + top: 70, + bottom: 40, + left: 30, + width: 550 + }; + var doc = new jsPDF('p', 'pt'); + //convert img to base 64 + var img = document.getElementById("logo") + var canvas = document.createElement("canvas"); + canvas.width = 100; + canvas.height = 100; + var ctx = canvas.getContext("2d"); + ctx.drawImage(img, 0, 0,100,100); + var dataURL = canvas.toDataURL("image/png"); + + //console.log('***'+dataURL); + //convert img to base 64 + + + //convert img to base 64 + var profile = document.getElementById("sprofile") + var canvas2 = document.createElement("canvas"); + canvas2.width = 100; + canvas2.height = 100; + var ctx2 = canvas2.getContext("2d"); + ctx2.drawImage(profile, 0, 0,100,100); + var profiledataURL = canvas2.toDataURL("image/png",1.0); + //convert img to base 64 + + + + var sem1 = ""; + var sem2 = ""; + + var tableid = value.StudentID; + + doc.autoTableSetDefaults({ + styles: {cellPadding: 3.0, fontSize: 10}, + headerStyles: {fillColor: [245, 245, 240], textColor: 0}, + + // columnStyles: { + // name: {fillColor: [245, 245, 240], textColor: 255, fontStyle: 'bold'} + // } + }); + + var firstTableID = tableid+i; + var SecTableID = (tableid+(i+1)); + + // console.log('iter-'+i+'ID-'+firstTableID+'-'+SecTableID); + + if(document.getElementById(firstTableID)) + { + // console.log(tableid+i); + var sem1 = doc.autoTableHtmlToJson(document.getElementById(firstTableID)); + //console.log(sem1); + } + + if(document.getElementById(SecTableID)) + { + // console.log(tableid+(i+1)); + var sem2 = doc.autoTableHtmlToJson(document.getElementById(SecTableID)); + //console.log(sem2); + } + + if(sem1 != "") + { + doc.autoTable(sem1.columns, sem1.data, {margin: {top: 170},theme:'grid'}); + } + + + // var NewImage = new Image(); + // NewImage.src = imgData; + + var header = function(data) { + var examName = 'ADMIT CARD : '+$scope.courseNamePDF+' EXAMINATION ' +$scope.batchNamePDF; + var rollNo = 'Reg No : '+value.EnrollmentID; + var stuName = 'Name : '+value.Firstname+' '+value.Lastname; + var centerName = 'Centre : '+$scope.centerNamePDF; + if(hallticket_type == 'SEM' || hallticket_type == 'REG') + { + var semName = 'SEM'+(i+1)+'&'+(i+2); + } + else if(hallticket_type == 'LAT') + { + var semName = 'SEM'+(i+3)+'&'+(i+4); + } + fileName = value.EnrollmentID+'-'+value.Firstname+value.Lastname+$scope.courseNamePDF+semName+'.pdf'; + doc.setDrawColor(0); + doc.setFillColor(245, 245, 240); + doc.rect(150, 30, 395, 60,'FD'); + doc.setFontSize(12); + doc.setTextColor(40); + doc.setFontStyle('normal'); + // doc.addImage(imgData, 'png', 100, 100, 100, 100); + doc.addImage(dataURL, 'jpeg', 75, 35, 50, 50);//university logo location + doc.addImage(profiledataURL, 'jpeg', 470, 100, 60, 60);//student profile location + + doc.setFontSize(22); + doc.text(200,50,$scope.universityNamePDF); + doc.setFontSize(10); + doc.text(200,65,$scope.universityAddressPDF); + doc.setFontSize(10); + doc.text(200,80,$scope.universityEmailPDF); + + doc.rect(45, 100, 400, 60); + doc.rect(445, 100, 100, 60); + doc.line(45, 125, 445, 125); + doc.setFontSize(10); + doc.setFontType("bold"); + doc.text(110,115,examName); + + doc.setFontType("normal"); + doc.text(70,140,rollNo); + doc.text(280,140,stuName); + doc.text(70,155,centerName); + + //footer content + var footerNote1 ="Note : 1. Without Identification Card Candidates shallnot Allowed to write for examination."; + var footerNote2 ="2. For further instructions refer to the facing sheet of the Answer book before writting examination."; + var footerNote3 ="3. Carrying Mobile phone to the examination hall is strictly prohibited."; + var footerNote4 ="4. Attend the examintaion as per mentioned above."; + var footerNote_student_sign ="Signature of the Student"; + var footerNote_controller_sign ="Controller of Examination"; + doc.setFontSize(8); + doc.text(40,doc.internal.pageSize.height - 150,footerNote1); + doc.text(70,doc.internal.pageSize.height - 140,footerNote2); + doc.text(70,doc.internal.pageSize.height - 130,footerNote3); + doc.text(70,doc.internal.pageSize.height - 120,footerNote4); + doc.text(40,doc.internal.pageSize.height - 50,footerNote_student_sign); + doc.text(450,doc.internal.pageSize.height - 50,footerNote_controller_sign); + + }; + + // var header = document.querySelector('.header'); + + var options = { + addPageContent: header, + + margin: { + top: 100 + }, + startY: doc.autoTableEndPosY() + 20, + theme :'grid' + + }; + + + if(sem2 != "") + { + doc.autoTable(sem2.columns, sem2.data, options); + + } + // console.log('For END'+i); + + if(sem2 != "" || sem1 != "") + { + doc.save(fileName); + } + // console.log('PDF DONE'); + + }//End of semlength for loop + + }//END OF SEM HALL TICKET TYPE + + else if(hallticket_type == 'YEAR') + { + //console.log('hallticket_type == '+hallticket_type); + var semlength = value.FeeDetails.length; + var i = 0; + for(i = 0; i <= semlength;i++) + { + + + // console.log('FOR'+i); + var fileName = "DEFAULT.pdf"; + var semName = 'DEFAULT_SEM'; + var margins = { + top: 70, + bottom: 40, + left: 30, + width: 550 + }; + var doc = new jsPDF('p', 'pt'); + //convert img to base 64 + var img = document.getElementById("logo") + var canvas = document.createElement("canvas"); + canvas.width = 100; + canvas.height = 100; + var ctx = canvas.getContext("2d"); + ctx.drawImage(img, 0, 0,100,100); + var dataURL = canvas.toDataURL("image/png"); + + //console.log('***'+dataURL); + //convert img to base 64 + + + //convert img to base 64 + var profile = document.getElementById("sprofile") + var canvas2 = document.createElement("canvas"); + canvas2.width = 100; + canvas2.height = 100; + var ctx2 = canvas2.getContext("2d"); + ctx2.drawImage(profile, 0, 0,100,100); + var profiledataURL = canvas2.toDataURL("image/png",1.0); + //convert img to base 64 + + + + var sem1 = ""; + var sem2 = ""; + + var tableid = value.StudentID; + + doc.autoTableSetDefaults({ + styles: {cellPadding: 3.0, fontSize: 10}, + headerStyles: {fillColor: [245, 245, 240], textColor: 0}, + + // columnStyles: { + // name: {fillColor: [245, 245, 240], textColor: 255, fontStyle: 'bold'} + // } + }); + + var firstTableID = "0"; + var SecTableID = "1"; + switch(i) + { + case 0: + var firstTableID = tableid+'year10'; + var SecTableID = tableid+'year11'; + semName = 'YEAR1'; + //console.log(firstTableID+'-'+SecTableID); + break; + + case 1: + var firstTableID = tableid+'year20'; + var SecTableID = tableid+'year21'; + semName = 'YEAR2'; + //console.log(firstTableID+'-'+SecTableID); + break; + + case 2: + var firstTableID = tableid+'year30'; + var SecTableID = tableid+'year31'; + semName = 'YEAR3'; + //console.log(firstTableID+'-'+SecTableID); + break; + + case 4: + var firstTableID = tableid+'year40'; + var SecTableID = tableid+'year41'; + semName = 'YEAR4'; + //console.log(firstTableID+'-'+SecTableID); + break; + + } + + // console.log('iter-'+i+'ID-'+firstTableID+'-'+SecTableID); + + if(document.getElementById(firstTableID)) + { + // console.log(tableid+i); + var sem1 = doc.autoTableHtmlToJson(document.getElementById(firstTableID)); + //console.log(sem1); + } + + if(document.getElementById(SecTableID)) + { + // console.log(tableid+(i+1)); + var sem2 = doc.autoTableHtmlToJson(document.getElementById(SecTableID)); + //console.log(sem2); + } + + if(sem1 != "") + { + doc.autoTable(sem1.columns, sem1.data, {margin: {top: 170},theme:'grid'}); + } + + + // var NewImage = new Image(); + // NewImage.src = imgData; + + var header = function(data) { + var examName = 'ADMIT CARD : '+$scope.courseNamePDF+' EXAMINATION ' +$scope.batchNamePDF; + var rollNo = 'Reg No : '+value.EnrollmentID; + var stuName = 'Name : '+value.Firstname+' '+value.Lastname; + var centerName = 'Centre : '+$scope.centerNamePDF; + + fileName = value.EnrollmentID+'-'+value.Firstname+value.Lastname+$scope.courseNamePDF+semName+'.pdf'; + doc.setDrawColor(0); + doc.setFillColor(245, 245, 240); + doc.rect(150, 30, 395, 60,'FD'); + doc.setFontSize(12); + doc.setTextColor(40); + doc.setFontStyle('normal'); + // doc.addImage(imgData, 'png', 100, 100, 100, 100); + doc.addImage(dataURL, 'jpeg', 75, 35, 50, 50);//university logo location + doc.addImage(profiledataURL, 'jpeg', 470, 100, 60, 60);//student profile location + + doc.setFontSize(22); + doc.text(200,50,$scope.universityNamePDF); + doc.setFontSize(10); + doc.text(200,65,$scope.universityAddressPDF); + doc.setFontSize(10); + doc.text(200,80,$scope.universityEmailPDF); + + doc.rect(45, 100, 400, 60); + doc.rect(445, 100, 100, 60); + doc.line(45, 125, 445, 125); + doc.setFontSize(10); + doc.setFontType("bold"); + doc.text(110,115,examName); + + doc.setFontType("normal"); + doc.text(70,140,rollNo); + doc.text(280,140,stuName); + doc.text(70,155,centerName); + + //footer content + var footerNote1 ="Note : 1. Without Identification Card Candidates shallnot Allowed to write for examination."; + var footerNote2 ="2. For further instructions refer to the facing sheet of the Answer book before writting examination."; + var footerNote3 ="3. Carrying Mobile phone to the examination hall is strictly prohibited."; + var footerNote4 ="4. Attend the examintaion as per mentioned above."; + var footerNote_student_sign ="Signature of the Student"; + var footerNote_controller_sign ="Controller of Examination"; + doc.setFontSize(8); + doc.text(40,doc.internal.pageSize.height - 150,footerNote1); + doc.text(70,doc.internal.pageSize.height - 140,footerNote2); + doc.text(70,doc.internal.pageSize.height - 130,footerNote3); + doc.text(70,doc.internal.pageSize.height - 120,footerNote4); + doc.text(40,doc.internal.pageSize.height - 50,footerNote_student_sign); + doc.text(450,doc.internal.pageSize.height - 50,footerNote_controller_sign); + + }; + + // var header = document.querySelector('.header'); + + var options = { + addPageContent: header, + + margin: { + top: 100 + }, + startY: doc.autoTableEndPosY() + 20, + theme :'grid' + + }; + + + if(sem2 != "") + { + doc.autoTable(sem2.columns, sem2.data, options); + + } + //console.log('For END'+i); + + if(sem2 != "" || sem1 != "") + { + doc.save(fileName); + } + // console.log('PDF DONE'); + + }//End of semlength for loop + + }//END OF YEAR HALL TICKET TYPE + }// END of studentID Check + + + });//END of For Each +} + $scope.ok = function () { $modalInstance.close($scope.selected.item); diff --git a/Apollo/assets/views/hallticket/hallTicketPDF.html b/Apollo/assets/views/hallticket/hallTicketPDF.html index 120cd44c..28519403 100644 --- a/Apollo/assets/views/hallticket/hallTicketPDF.html +++ b/Apollo/assets/views/hallticket/hallTicketPDF.html @@ -1,163 +1,164 @@ - -
- -
-
+ +
+ +
- +
-
- -
-
- - -
-
- + +
+
+
- + + + + + + + + + + -
-
- - - -
- - - - - - - -
- -
- Not Available - - -

{{universityNamePDF}}

{{universityAddressPDF}}
{{universityEmailPDF}}
-
- - +
{{universityNamePDF}}
{{universityEmailPDF}}
{{universityAddressPDF}}
- - - - - - - -
ADMIT CARD   :   {{courseNamePDF}}    EXAMINATION   {{batchNamePDF}}
Not Available
Reg No :{{studentObj.EnrollmentID}}
Name : {{studentObj.Firstname}} {{studentObj.Lastname}}
Centre:      {{centerNamePDF}}
-
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Sem/
Year
Subject Code
Subject Name
Date
From Time
To Time
Invigi.
Sign
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}}{{sub.ToTime}} 
- -
-
- -

-

    -
  • Without Identification Card Candidates shallnot be Allowed to write examintaion.
  • -
  • For further instructions refer to the faceing sheet of the Answer book before writing examintaion.
  • -
  • Carrying Mobile Phone into the examintaion hall is strictly prohibited.
  • -
  • Attend the examintaion as per mentioned above.
  • - -
-

-

 

-
-
- Signature of Student -
-
Controller of Examintaion
-
-
-
-
- - - - - - - - - -
- -
- +
+ +
+ + + + + + + + + + + + + + +
ADMIT CARD : EXAMINATION {{courseNamePDF}} - {{batchNamePDF}}
NAN
Enrollment No :   {{studentObj.EnrollmentID}}         Student Name  :  {{studentObj.Firstname}} {{studentObj.Lastname}}
Center Name   :     {{centerNamePDF}}
+
+ + + + + + + + + + + + + + + + + +
sem/yearSubject CodeSubject NameDateTimeInvigi.sign
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}} - {{sub.ToTime}} 
+ + + + + + + + + + + + + + + + + +
sem/yearSubject CodeSubject NameDateTimeInvigi.sign
0{{sub.SemesterID}}0{{sub.SemesterID-1}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}} - {{sub.ToTime}} 
+ + + + + + + + + + + + + + + + +
sem/yearSubject CodeSubject NameDateTimeInvigi.sign
0{{sub.SemesterID-1}}0{{sub.SemesterID-2}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}} - {{sub.ToTime}} 
+ + + + + + + + + + + + + + + + +
sem/yearSubject CodeSubject NameDateTimeInvigi.sign
0{{sub.SemesterID-2}}0{{sub.SemesterID-3}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}} - {{sub.ToTime}} 
+ + + + + + + + + + + + + + + + +
sem/yearSubject CodeSubject NameDateTimeInvigi.sign
0{{sub.SemesterID-3}}0{{sub.SemesterID-4}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}} - {{sub.ToTime}} 
+ + + + + + + + + + + + + + + + + + + +
sem/yearSubject CodeSubject NameDateTimeInvigi.sign
0{{sub.SemesterID}}{{sub.SubjectCode}}{{sub.SubjectName}}{{sub.ScheduleDate | date: "dd-MM-y" }}{{sub.FromTime}} - {{sub.ToTime}} 
-
- - + + +
+ diff --git a/Apollo/assets/views/partials/nav.html b/Apollo/assets/views/partials/nav.html index 6383f1a7..a033205a 100755 --- a/Apollo/assets/views/partials/nav.html +++ b/Apollo/assets/views/partials/nav.html @@ -322,6 +322,24 @@ + +
  • diff --git a/Apollo/index.html b/Apollo/index.html index c1e8b556..52accbdc 100755 --- a/Apollo/index.html +++ b/Apollo/index.html @@ -119,6 +119,7 @@ +