Commit b372c241b2a7d33725ffb5da96607375c1d5d6c6
1 parent
aafc673372
Exists in
master
and in
2 other branches
added gap in admit cards
Showing
1 changed file
with
1 additions
and
0 deletions
Show diff stats
src/pages/Report/admitCard.vue
1 | <template> | 1 | <template> |
2 | <v-container fluid class="body-color"> | 2 | <v-container fluid class="body-color"> |
3 | <!-- **** Admit Card Table **** --> | 3 | <!-- **** Admit Card Table **** --> |
4 | <v-card flat class="elevation-0 transparent"> | 4 | <v-card flat class="elevation-0 transparent"> |
5 | <v-form ref="form" v-model="valid" lazy-validation> | 5 | <v-form ref="form" v-model="valid" lazy-validation> |
6 | <v-flex xs12 sm12 lg12> | 6 | <v-flex xs12 sm12 lg12> |
7 | <v-layout wrap> | 7 | <v-layout wrap> |
8 | <v-flex xs12 sm12 lg3> | 8 | <v-flex xs12 sm12 lg3> |
9 | <v-layout> | 9 | <v-layout> |
10 | <v-flex xs12 sm12 lg10 class="ml-2"> | 10 | <v-flex xs12 sm12 lg10 class="ml-2"> |
11 | <v-autocomplete | 11 | <v-autocomplete |
12 | v-model="getReport.examId" | 12 | v-model="getReport.examId" |
13 | label="Please Select Exam" | 13 | label="Please Select Exam" |
14 | :items="examData" | 14 | :items="examData" |
15 | item-text="examName" | 15 | item-text="examName" |
16 | item-value="_id" | 16 | item-value="_id" |
17 | :rules="examRules" | 17 | :rules="examRules" |
18 | @change="getExamList" | 18 | @change="getExamList" |
19 | required | 19 | required |
20 | ></v-autocomplete> | 20 | ></v-autocomplete> |
21 | </v-flex> | 21 | </v-flex> |
22 | </v-layout> | 22 | </v-layout> |
23 | </v-flex> | 23 | </v-flex> |
24 | 24 | ||
25 | <v-flex xs12 sm12 lg3 v-if="getReport.examId"> | 25 | <v-flex xs12 sm12 lg3 v-if="getReport.examId"> |
26 | <v-layout> | 26 | <v-layout> |
27 | <v-flex xs12 sm12 lg10 class="ml-2"> | 27 | <v-flex xs12 sm12 lg10 class="ml-2"> |
28 | <v-select | 28 | <v-select |
29 | v-model="getReport.classId" | 29 | v-model="getReport.classId" |
30 | label="Select your class" | 30 | label="Select your class" |
31 | type="text" | 31 | type="text" |
32 | :items="classList" | 32 | :items="classList" |
33 | item-text="classNum" | 33 | item-text="classNum" |
34 | item-value="_id" | 34 | item-value="_id" |
35 | :rules="classRules" | 35 | :rules="classRules" |
36 | @change="getSections(getReport.classId)" | 36 | @change="getSections(getReport.classId)" |
37 | required | 37 | required |
38 | ></v-select> | 38 | ></v-select> |
39 | </v-flex> | 39 | </v-flex> |
40 | </v-layout> | 40 | </v-layout> |
41 | </v-flex> | 41 | </v-flex> |
42 | <v-flex xs12 sm12 lg3 v-if="getReport.classId"> | 42 | <v-flex xs12 sm12 lg3 v-if="getReport.classId"> |
43 | <v-layout> | 43 | <v-layout> |
44 | <v-flex xs12 sm12 lg10 class="ml-2"> | 44 | <v-flex xs12 sm12 lg10 class="ml-2"> |
45 | <v-select | 45 | <v-select |
46 | :items="addSection" | 46 | :items="addSection" |
47 | label="Select your Section" | 47 | label="Select your Section" |
48 | v-model="getReport.sectionId" | 48 | v-model="getReport.sectionId" |
49 | item-text="name" | 49 | item-text="name" |
50 | item-value="_id" | 50 | item-value="_id" |
51 | name="Select Section" | 51 | name="Select Section" |
52 | @change="getStudents" | 52 | @change="getStudents" |
53 | :rules="sectionRules" | 53 | :rules="sectionRules" |
54 | required | 54 | required |
55 | ></v-select> | 55 | ></v-select> |
56 | </v-flex> | 56 | </v-flex> |
57 | </v-layout> | 57 | </v-layout> |
58 | </v-flex> | 58 | </v-flex> |
59 | <v-flex xs12 sm12 lg3 v-if="getReport.sectionId"> | 59 | <v-flex xs12 sm12 lg3 v-if="getReport.sectionId"> |
60 | <v-layout> | 60 | <v-layout> |
61 | <v-flex xs12 sm12 lg10 class="ml-2"> | 61 | <v-flex xs12 sm12 lg10 class="ml-2"> |
62 | <v-select | 62 | <v-select |
63 | :items="getStudentsList" | 63 | :items="getStudentsList" |
64 | label="Select your student" | 64 | label="Select your student" |
65 | v-model="getReport.studentId" | 65 | v-model="getReport.studentId" |
66 | item-text="name" | 66 | item-text="name" |
67 | item-value="_id" | 67 | item-value="_id" |
68 | :rules="studentRules" | 68 | :rules="studentRules" |
69 | required | 69 | required |
70 | ></v-select> | 70 | ></v-select> |
71 | </v-flex> | 71 | </v-flex> |
72 | </v-layout> | 72 | </v-layout> |
73 | </v-flex> | 73 | </v-flex> |
74 | 74 | ||
75 | <v-flex xs12 sm12 lg3> | 75 | <v-flex xs12 sm12 lg3> |
76 | <v-layout> | 76 | <v-layout> |
77 | <v-flex xs12 sm12 lg10 class="ml-2"> | 77 | <v-flex xs12 sm12 lg10 class="ml-2"> |
78 | <v-autocomplete | 78 | <v-autocomplete |
79 | label="Please Select View Type" | 79 | label="Please Select View Type" |
80 | type="text" | 80 | type="text" |
81 | :rules="typeRules" | 81 | :rules="typeRules" |
82 | :items="typeList" | 82 | :items="typeList" |
83 | v-model="getReport.form" | 83 | v-model="getReport.form" |
84 | item-text="name" | 84 | item-text="name" |
85 | item-value="value" | 85 | item-value="value" |
86 | required | 86 | required |
87 | ></v-autocomplete> | 87 | ></v-autocomplete> |
88 | </v-flex> | 88 | </v-flex> |
89 | </v-layout> | 89 | </v-layout> |
90 | </v-flex> | 90 | </v-flex> |
91 | <v-flex xs12 sm12 lg3> | 91 | <v-flex xs12 sm12 lg3> |
92 | <v-btn | 92 | <v-btn |
93 | @click="getSchedule" | 93 | @click="getSchedule" |
94 | round | 94 | round |
95 | dark | 95 | dark |
96 | :loading="loading" | 96 | :loading="loading" |
97 | class="open-dialog-button mt-3" | 97 | class="open-dialog-button mt-3" |
98 | >Get Report</v-btn> | 98 | >Get Report</v-btn> |
99 | </v-flex> | 99 | </v-flex> |
100 | </v-layout> | 100 | </v-layout> |
101 | </v-flex> | 101 | </v-flex> |
102 | </v-form> | 102 | </v-form> |
103 | </v-card> | 103 | </v-card> |
104 | <div v-show="showTable"> | 104 | <div v-show="showTable"> |
105 | <v-flex xs12 sm12 md10 style="margin:auto"> | 105 | <v-flex xs12 sm12 md10 style="margin:auto"> |
106 | <v-layout> | 106 | <v-layout> |
107 | <v-flex xs12> | 107 | <v-flex xs12> |
108 | <v-btn class="open-dialog-button right" round dark @click="printAdmitReport()"> | 108 | <v-btn class="open-dialog-button right" round dark @click="printAdmitReport()"> |
109 | 109 | ||
110 | <v-icon right dark>print</v-icon> | 110 | <v-icon right dark>print</v-icon> |
111 | </v-btn> | 111 | </v-btn> |
112 | </v-flex> | 112 | </v-flex> |
113 | </v-layout> | 113 | </v-layout> |
114 | <!-- ADMIT CARDS --> | ||
114 | <div id="printMe" v-if="frontPart"> | 115 | <div id="printMe" v-if="frontPart"> |
115 | <v-card | 116 | <v-card |
116 | v-for="(student,index) in getScheduleList.studentData" | 117 | v-for="(student,index) in getScheduleList.studentData" |
117 | :key="index" | 118 | :key="index" |
118 | class="mt-3" | 119 | class="mt-3" |
119 | style=" | 120 | style=" |
120 | page-break-after: always; | 121 | page-break-after: always; |
121 | background-color: #fff; | 122 | background-color: #fff; |
122 | border: 1px solid #ddd; | 123 | border: 1px solid #ddd; |
123 | color: rgba(0,0,0,0.87); | 124 | color: rgba(0,0,0,0.87); |
124 | overflow-x: auto; | 125 | overflow-x: auto; |
125 | display: block; | 126 | display: block; |
126 | padding:14px !important; | 127 | padding:14px !important; |
127 | webkit-box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important; | 128 | webkit-box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important; |
128 | box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important;" | 129 | box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important;" |
129 | > | 130 | > |
130 | 131 | ||
131 | <v-layout style="border-bottom: 1px solid #ddd;margin: 8px; auto" > | 132 | <v-layout style="border-bottom: 1px solid #ddd;margin: 8px; auto" > |
132 | <v-flex xs3 style="margin-bottom:0px"> | 133 | <v-flex xs3 style="margin-bottom:0px"> |
133 | <img | 134 | <img |
134 | :src="userData.schoolLogoUrl" | 135 | :src="userData.schoolLogoUrl" |
135 | style="widht:80px;height:80px;" | 136 | style="widht:80px;height:80px;" |
136 | alt="logo" | 137 | alt="logo" |
137 | v-if="userData.schoolLogoUrl" | 138 | v-if="userData.schoolLogoUrl" |
138 | /> | 139 | /> |
139 | <img | 140 | <img |
140 | src="/static/default_thumb.png" | 141 | src="/static/default_thumb.png" |
141 | style="widht:80px;height:80px;" | 142 | style="widht:80px;height:80px;" |
142 | v-else-if="!userData.schoolLogoUrl" | 143 | v-else-if="!userData.schoolLogoUrl" |
143 | /> | 144 | /> |
144 | <div class="school-name"> | 145 | <div class="school-name"> |
145 | <div class="body-1">{{ student.schoolId.address }}</div> | 146 | <div class="body-1">{{ student.schoolId.address }}</div> |
146 | <div class="body-1">{{ student.schoolId.mobile }}</div> | 147 | <div class="body-1">{{ student.schoolId.mobile }}</div> |
147 | </div> | 148 | </div> |
148 | </v-flex> | 149 | </v-flex> |
149 | <v-flex xs5 style="text-align:center;margin-bottom:0px"> | 150 | <v-flex xs5 style="text-align:center;margin-bottom:0px"> |
150 | <p | 151 | <p |
151 | style="font-size:24px;color: #700CE8;letter-spacing:1px;margin-bottom: 4px" | 152 | style="font-size:24px;color: #700CE8;letter-spacing:1px;margin-bottom: 4px" |
152 | >{{ student.schoolId.name }}</p> | 153 | >{{ student.schoolId.name }}</p> |
153 | <p>{{ student.schoolId.email }}</p> | 154 | <p>{{ student.schoolId.email }}</p> |
154 | 155 | ||
155 | <div> | 156 | <div> |
156 | <h4>{{ getScheduleList.scheduleData[0].examId.examName }} Exam Admit Card</h4> | 157 | <h4>{{ getScheduleList.scheduleData[0].examId.examName }} Exam Admit Card</h4> |
157 | </div> | 158 | </div> |
158 | </v-flex> | 159 | </v-flex> |
159 | <v-flex xs4 style="text-align:center;margin-bottom:0px"> | 160 | <v-flex xs4 style="text-align:center;margin-bottom:0px"> |
160 | 161 | ||
161 | <img | 162 | <img |
162 | src="/static/icon/user.png" | 163 | src="/static/icon/user.png" |
163 | v-if="!student.profilePicUrl" | 164 | v-if="!student.profilePicUrl" |
164 | width="80" | 165 | width="80" |
165 | /> | 166 | /> |
166 | <img | 167 | <img |
167 | :src="student.profilePicUrl" | 168 | :src="student.profilePicUrl" |
168 | onerror="this.src='/static/icon/user.png';" | 169 | onerror="this.src='/static/icon/user.png';" |
169 | v-if="student.profilePicUrl" | 170 | v-if="student.profilePicUrl" |
170 | width="80" | 171 | width="80" |
171 | /> | 172 | /> |
172 | </v-flex> | 173 | </v-flex> |
173 | </v-layout> | 174 | </v-layout> |
174 | <v-layout> | 175 | <v-layout> |
175 | <v-flex xs5 style="margin-bottom:10px"> | 176 | <v-flex xs5 style="margin-bottom:10px"> |
176 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> | 177 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> |
177 | <b>Name :</b> | 178 | <b>Name :</b> |
178 | <span>{{student.name}}</span> | 179 | <span>{{student.name}}</span> |
179 | </p> | 180 | </p> |
180 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> | 181 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> |
181 | <b>Class :</b> | 182 | <b>Class :</b> |
182 | <span>{{student.classId.classNum}}</span> | 183 | <span>{{student.classId.classNum}}</span> |
183 | </p> | 184 | </p> |
184 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> | 185 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> |
185 | <b>Roll :</b> | 186 | <b>Roll :</b> |
186 | <span>{{student.rollNo}}</span> | 187 | <span>{{student.rollNo}}</span> |
187 | </p> | 188 | </p> |
188 | </v-flex> | 189 | </v-flex> |
189 | <v-flex xs5 style="margin-bottom:10px"> | 190 | <v-flex xs5 style="margin-bottom:10px"> |
190 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> | 191 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> |
191 | <b>Section :</b> | 192 | <b>Section :</b> |
192 | <span>{{student.sectionId.name }}</span> | 193 | <span>{{student.sectionId.name }}</span> |
193 | </p> | 194 | </p> |
194 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> | 195 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> |
195 | <b>Blood Group :</b> | 196 | <b>Blood Group :</b> |
196 | <span style="color: #707478">{{student.bloodGroup }}</span> | 197 | <span style="color: #707478">{{student.bloodGroup }}</span> |
197 | </p> | 198 | </p> |
198 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;">Subject in which Appearing</p> | 199 | <p style="font-size: 16px;margin:0px;margin-bottom:8px;">Subject in which Appearing</p> |
199 | </v-flex> | 200 | </v-flex> |
200 | </v-layout> | 201 | </v-layout> |
201 | <table | 202 | <table |
202 | class="mb-5 tableRsponsive feeTypeTable" | 203 | class="mb-5 tableRsponsive feeTypeTable" |
203 | style="border: 1px solid lightgrey; | 204 | style="border: 1px solid lightgrey; |
204 | border-collapse: collapse;!important | 205 | border-collapse: collapse;!important |
205 | table-layout: auto !important; | 206 | table-layout: auto !important; |
206 | width: 100% !important;" | 207 | width: 100% !important;" |
207 | > | 208 | > |
208 | <thead style="border: 1px solid lightgrey !important;"> | 209 | <thead style="border: 1px solid lightgrey !important;"> |
209 | <tr style="border: 1px solid lightgrey !important;padding:4px;"> | 210 | <tr style="border: 1px solid lightgrey !important;padding:4px;"> |
210 | <td style="border: 1px solid lightgrey !important;padding: 6px;">No</td> | 211 | <td style="border: 1px solid lightgrey !important;padding: 6px;">No</td> |
211 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Exam Date</td> | 212 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Exam Date</td> |
212 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Start Time</td> | 213 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Start Time</td> |
213 | <td style="border: 1px solid lightgrey !important;padding: 6px;">End Time</td> | 214 | <td style="border: 1px solid lightgrey !important;padding: 6px;">End Time</td> |
214 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Subject Name</td> | 215 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Subject Name</td> |
215 | </tr> | 216 | </tr> |
216 | </thead> | 217 | </thead> |
217 | <tbody style="border: 1px solid lightgrey !important;"> | 218 | <tbody style="border: 1px solid lightgrey !important;"> |
218 | <tr v-for="(scheduleData,i) in getScheduleList.scheduleData" :key="i"> | 219 | <tr v-for="(scheduleData,i) in getScheduleList.scheduleData" :key="i"> |
219 | <td style="border:1px solid lightgrey !important; padding:6px;">{{ i + 1 }}</td> | 220 | <td style="border:1px solid lightgrey !important; padding:6px;">{{ i + 1 }}</td> |
220 | <td | 221 | <td |
221 | style="border: 1px solid lightgrey !important;padding: 6px;" | 222 | style="border: 1px solid lightgrey !important;padding: 6px;" |
222 | >{{ scheduleData.date ? scheduleData.date : '-' }}</td> | 223 | >{{ scheduleData.date ? scheduleData.date : '-' }}</td> |
223 | <td | 224 | <td |
224 | style="border: 1px solid lightgrey !important;padding: 6px;" | 225 | style="border: 1px solid lightgrey !important;padding: 6px;" |
225 | >{{ scheduleData.timeFrom ? scheduleData.timeFrom : "-" }}</td> | 226 | >{{ scheduleData.timeFrom ? scheduleData.timeFrom : "-" }}</td> |
226 | <td | 227 | <td |
227 | style="border: 1px solid lightgrey !important;padding: 6px;" | 228 | style="border: 1px solid lightgrey !important;padding: 6px;" |
228 | >{{ scheduleData.timeTo ? scheduleData.timeTo : "-"}}</td> | 229 | >{{ scheduleData.timeTo ? scheduleData.timeTo : "-"}}</td> |
229 | <td | 230 | <td |
230 | style="border: 1px solid lightgrey !important;padding: 6px;" | 231 | style="border: 1px solid lightgrey !important;padding: 6px;" |
231 | >{{ scheduleData.subjectName ? scheduleData.subjectName : "-" }}</td> | 232 | >{{ scheduleData.subjectName ? scheduleData.subjectName : "-" }}</td> |
232 | </tr> | 233 | </tr> |
233 | <tr v-if="getScheduleList.scheduleData.length === 0"> | 234 | <tr v-if="getScheduleList.scheduleData.length === 0"> |
234 | <td style="border: 1px soild lightgrey !importand;padding:6px;">-</td> | 235 | <td style="border: 1px soild lightgrey !importand;padding:6px;">-</td> |
235 | <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> | 236 | <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> |
236 | <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> | 237 | <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> |
237 | <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> | 238 | <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> |
238 | <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> | 239 | <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> |
239 | </tr> | 240 | </tr> |
240 | </tbody> | 241 | </tbody> |
241 | </table> | 242 | </table> |
242 | </v-card> | 243 | </v-card> |
243 | </div> | 244 | </div> |
244 | <div id="printMe" v-if="backPart"> | 245 | <div id="printMe" v-if="backPart"> |
245 | <v-card | 246 | <v-card |
246 | style=" | 247 | style=" |
247 | text-align:center | 248 | text-align:center |
248 | background-color: #fff; | 249 | background-color: #fff; |
249 | border: 1px solid #ddd; | 250 | border: 1px solid #ddd; |
250 | color: rgba(0,0,0,0.87); | 251 | color: rgba(0,0,0,0.87); |
251 | overflow-x: auto; | 252 | overflow-x: auto; |
252 | display: block; | 253 | display: block; |
253 | padding:14px !important; | 254 | padding:14px !important; |
254 | webkit-box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important; | 255 | webkit-box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important; |
255 | box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important;" | 256 | box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important;" |
256 | > | 257 | > |
257 | <div | 258 | <div |
258 | style=" | 259 | style=" |
259 | margin-bottom: 16px; | 260 | margin-bottom: 16px; |
260 | overflow: hidden; | 261 | overflow: hidden; |
261 | padding: 50px 90px;" | 262 | padding: 50px 90px;" |
262 | > | 263 | > |
263 | <ol style=" | 264 | <ol style=" |
264 | margin: 0; | 265 | margin: 0; |
265 | margin-bottom: 10px;"> | 266 | margin-bottom: 10px;"> |
266 | <p | 267 | <p |
267 | style=" | 268 | style=" |
268 | margin-bottom: 16px; | 269 | margin-bottom: 16px; |
269 | line-height: 20px; | 270 | line-height: 20px; |
270 | text-align: left;" | 271 | text-align: left;" |
271 | > | 272 | > |
272 | <b>1. Do not Carry these Electronic Gadgets:</b> | 273 | <b>1. Do not Carry these Electronic Gadgets:</b> |
273 | Electronic gadgets(Bluetooth devices,head phones,pen/buttonhole cameras,scanner,calculator,storage devices etc) | 274 | Electronic gadgets(Bluetooth devices,head phones,pen/buttonhole cameras,scanner,calculator,storage devices etc) |
274 | in the examination lab. These items are strictly prohibited from examination lab. | 275 | in the examination lab. These items are strictly prohibited from examination lab. |
275 | </p> | 276 | </p> |
276 | <p | 277 | <p |
277 | style=" | 278 | style=" |
278 | margin-bottom: 16px; | 279 | margin-bottom: 16px; |
279 | line-height: 20px; | 280 | line-height: 20px; |
280 | text-align: left;" | 281 | text-align: left;" |
281 | > | 282 | > |
282 | <b>2. Do not Carry these Ornaments:</b> | 283 | <b>2. Do not Carry these Ornaments:</b> |
283 | Candidates should also not wear charms,veil,items containing such as rings,bracelet,earings,nose-pin,chains, | 284 | Candidates should also not wear charms,veil,items containing such as rings,bracelet,earings,nose-pin,chains, |
284 | necklace,pendants,badge,broach,hair-pin,hair-band. | 285 | necklace,pendants,badge,broach,hair-pin,hair-band. |
285 | </p> | 286 | </p> |
286 | <p | 287 | <p |
287 | style=" | 288 | style=" |
288 | margin-bottom: 16px; | 289 | margin-bottom: 16px; |
289 | line-height: 20px; | 290 | line-height: 20px; |
290 | text-align: left;" | 291 | text-align: left;" |
291 | > | 292 | > |
292 | <b>3. What Candidates wear to Examination hall:</b> | 293 | <b>3. What Candidates wear to Examination hall:</b> |
293 | Candidates should not wear clothes with full sleeves or big button,etc. Candidates are adviced to wear open footwear | 294 | Candidates should not wear clothes with full sleeves or big button,etc. Candidates are adviced to wear open footwear |
294 | like slippers,sandals instead of shoes as the candidates could be asked to remove shoes by the frisking staff. | 295 | like slippers,sandals instead of shoes as the candidates could be asked to remove shoes by the frisking staff. |
295 | </p> | 296 | </p> |
296 | <p | 297 | <p |
297 | style=" | 298 | style=" |
298 | margin-bottom: 16px; | 299 | margin-bottom: 16px; |
299 | line-height: 20px; | 300 | line-height: 20px; |
300 | text-align: left;" | 301 | text-align: left;" |
301 | > | 302 | > |
302 | <b>4. Do not carry Stationary:</b> | 303 | <b>4. Do not carry Stationary:</b> |
303 | Pen/pencil and paper for rough work would be provided in examination lab. Electronic watch (timer)will be available | 304 | Pen/pencil and paper for rough work would be provided in examination lab. Electronic watch (timer)will be available |
304 | on the computer screen alloted to the candidates. | 305 | on the computer screen alloted to the candidates. |
305 | </p> | 306 | </p> |
306 | <p | 307 | <p |
307 | style=" | 308 | style=" |
308 | margin-bottom: 16px; | 309 | margin-bottom: 16px; |
309 | line-height: 20px; | 310 | line-height: 20px; |
310 | text-align: left;" | 311 | text-align: left;" |
311 | > | 312 | > |
312 | <b>5. Do not Carry Bags:</b> | 313 | <b>5. Do not Carry Bags:</b> |
313 | Don not Carry back pack, College bag or any other bag like hand bag. If candidates brings any bag, they must make a | 314 | Don not Carry back pack, College bag or any other bag like hand bag. If candidates brings any bag, they must make a |
314 | arrangement for safe custody of these items.The Commission shall not make any arrangement nor be responsible for the | 315 | arrangement for safe custody of these items.The Commission shall not make any arrangement nor be responsible for the |
315 | safe custody of such items. | 316 | safe custody of such items. |
316 | </p> | 317 | </p> |
317 | <p | 318 | <p |
318 | style=" | 319 | style=" |
319 | margin-bottom: 16px; | 320 | margin-bottom: 16px; |
320 | line-height: 20px; | 321 | line-height: 20px; |
321 | text-align: left;" | 322 | text-align: left;" |
322 | > | 323 | > |
323 | <b>6. What will Happen if you carry Prohibited items to Exam Hall:</b> | 324 | <b>6. What will Happen if you carry Prohibited items to Exam Hall:</b> |
324 | If any such prohibited item is found in the possession of a candidate in examination lab, his/her candidature is liable | 325 | If any such prohibited item is found in the possession of a candidate in examination lab, his/her candidature is liable |
325 | to be canceled and legal/criminal proceedings could be initiated against him/her. He/she would also liable to be debarred | 326 | to be canceled and legal/criminal proceedings could be initiated against him/her. He/she would also liable to be debarred |
326 | from appearing in future examinations of the Commission for a period of 3 years. | 327 | from appearing in future examinations of the Commission for a period of 3 years. |
327 | </p> | 328 | </p> |
328 | <p | 329 | <p |
329 | style=" | 330 | style=" |
330 | margin-bottom: 16px; | 331 | margin-bottom: 16px; |
331 | line-height: 20px; | 332 | line-height: 20px; |
332 | text-align: left; | 333 | text-align: left; |
333 | " | 334 | " |
334 | > | 335 | > |
335 | <b>7. Candidate should not create Disturbance in Exam Hall:</b> | 336 | <b>7. Candidate should not create Disturbance in Exam Hall:</b> |
336 | If any candidate is found obstructing the conduct of examination or creating disturbances at the examination venue, | 337 | If any candidate is found obstructing the conduct of examination or creating disturbances at the examination venue, |
337 | his/her candidature shall be summarily canceled. | 338 | his/her candidature shall be summarily canceled. |
338 | </p> | 339 | </p> |
339 | </ol> | 340 | </ol> |
340 | </div> | 341 | </div> |
341 | </v-card> | 342 | </v-card> |
342 | </div> | 343 | </div> |
343 | </v-flex> | 344 | </v-flex> |
344 | </div> | 345 | </div> |
345 | <v-snackbar | 346 | <v-snackbar |
346 | :timeout="timeout" | 347 | :timeout="timeout" |
347 | :top="y === 'top'" | 348 | :top="y === 'top'" |
348 | :right="x === 'right'" | 349 | :right="x === 'right'" |
349 | :vertical="mode === 'vertical'" | 350 | :vertical="mode === 'vertical'" |
350 | v-model="snackbar" | 351 | v-model="snackbar" |
351 | :color="color" | 352 | :color="color" |
352 | >{{ text }}</v-snackbar> | 353 | >{{ text }}</v-snackbar> |
353 | <div class="loader" v-if="showLoader"> | 354 | <div class="loader" v-if="showLoader"> |
354 | <v-progress-circular indeterminate color="white"></v-progress-circular> | 355 | <v-progress-circular indeterminate color="white"></v-progress-circular> |
355 | </div> | 356 | </div> |
356 | </v-container> | 357 | </v-container> |
357 | </template> | 358 | </template> |
358 | <script> | 359 | <script> |
359 | import http from "@/Services/http.js"; | 360 | import http from "@/Services/http.js"; |
360 | import moment from "moment"; | 361 | import moment from "moment"; |
361 | import _ from "underscore"; | 362 | import _ from "underscore"; |
362 | var qs = require("qs"); | 363 | var qs = require("qs"); |
363 | 364 | ||
364 | export default { | 365 | export default { |
365 | data: () => ({ | 366 | data: () => ({ |
366 | snackbar: false, | 367 | snackbar: false, |
367 | color: "", | 368 | color: "", |
368 | y: "top", | 369 | y: "top", |
369 | x: "right", | 370 | x: "right", |
370 | mode: "", | 371 | mode: "", |
371 | timeout: 10000, | 372 | timeout: 10000, |
372 | text: "", | 373 | text: "", |
373 | showLoader: false, | 374 | showLoader: false, |
374 | valid: true, | 375 | valid: true, |
375 | userData: {}, | 376 | userData: {}, |
376 | frontPart: false, | 377 | frontPart: false, |
377 | backPart: false, | 378 | backPart: false, |
378 | loading: false, | 379 | loading: false, |
379 | showTable: false, | 380 | showTable: false, |
380 | showData: false, | 381 | showData: false, |
381 | hideprintAdmitReport: false, | 382 | hideprintAdmitReport: false, |
382 | examRules: [(v) => !!v || "Exam Field is required"], | 383 | examRules: [(v) => !!v || "Exam Field is required"], |
383 | classRules: [(v) => !!v || "Class Field Required"], | 384 | classRules: [(v) => !!v || "Class Field Required"], |
384 | sectionRules: [(v) => !!v || "Section Field is required"], | 385 | sectionRules: [(v) => !!v || "Section Field is required"], |
385 | studentRules: [(v) => !!v || "Student Field is required"], | 386 | studentRules: [(v) => !!v || "Student Field is required"], |
386 | typeRules: [(v) => !!v || "Type Field is required"], | 387 | typeRules: [(v) => !!v || "Type Field is required"], |
387 | backgroundRules: [(v) => !!v || "Background Field is required"], | 388 | backgroundRules: [(v) => !!v || "Background Field is required"], |
388 | 389 | ||
389 | pagination: { | 390 | pagination: { |
390 | rowsPerPage: 10, | 391 | rowsPerPage: 10, |
391 | }, | 392 | }, |
392 | search: "", | 393 | search: "", |
393 | 394 | ||
394 | classList: [], | 395 | classList: [], |
395 | studentData: {}, | 396 | studentData: {}, |
396 | scheduleData: {}, | 397 | scheduleData: {}, |
397 | examData: [], | 398 | examData: [], |
398 | addSection: [], | 399 | addSection: [], |
399 | getStudentsList: [{ name: "Select All", _id: "selectAll" }], | 400 | getStudentsList: [{ name: "Select All", _id: "selectAll" }], |
400 | getScheduleList: [], | 401 | getScheduleList: [], |
401 | getScheduleListArray: [], | 402 | getScheduleListArray: [], |
402 | getReport: {}, | 403 | getReport: {}, |
403 | examName: [], | 404 | examName: [], |
404 | typeList: [ | 405 | typeList: [ |
405 | { | 406 | { |
406 | name: "Front Part", | 407 | name: "Front Part", |
407 | value: "frontPart", | 408 | value: "frontPart", |
408 | }, | 409 | }, |
409 | { | 410 | { |
410 | name: "Back Part", | 411 | name: "Back Part", |
411 | value: "backPart", | 412 | value: "backPart", |
412 | }, | 413 | }, |
413 | ], | 414 | ], |
414 | backgroundList: ["Yes", "No"], | 415 | backgroundList: ["Yes", "No"], |
415 | headers: [ | 416 | headers: [ |
416 | { | 417 | { |
417 | text: "No", | 418 | text: "No", |
418 | align: "", | 419 | align: "", |
419 | sortable: false, | 420 | sortable: false, |
420 | value: "No", | 421 | value: "No", |
421 | }, | 422 | }, |
422 | { | 423 | { |
423 | text: "Exam Date", | 424 | text: "Exam Date", |
424 | align: "center", | 425 | align: "center", |
425 | sortable: false, | 426 | sortable: false, |
426 | value: "date", | 427 | value: "date", |
427 | }, | 428 | }, |
428 | { | 429 | { |
429 | text: "Start Time", | 430 | text: "Start Time", |
430 | align: "center", | 431 | align: "center", |
431 | sortable: false, | 432 | sortable: false, |
432 | value: "timeFrom", | 433 | value: "timeFrom", |
433 | }, | 434 | }, |
434 | { | 435 | { |
435 | text: "End Time", | 436 | text: "End Time", |
436 | align: "center", | 437 | align: "center", |
437 | sortable: false, | 438 | sortable: false, |
438 | value: "timeTo", | 439 | value: "timeTo", |
439 | }, | 440 | }, |
440 | { | 441 | { |
441 | text: "Subject Name", | 442 | text: "Subject Name", |
442 | align: "center", | 443 | align: "center", |
443 | sortable: false, | 444 | sortable: false, |
444 | value: "subjectName", | 445 | value: "subjectName", |
445 | }, | 446 | }, |
446 | ], | 447 | ], |
447 | }), | 448 | }), |
448 | 449 | ||
449 | mounted() { | 450 | mounted() { |
450 | this.token = this.$store.state.token; | 451 | this.token = this.$store.state.token; |
451 | this.getClass(); | 452 | this.getClass(); |
452 | this.getExamList(); | 453 | this.getExamList(); |
453 | this.getUserData(); | 454 | this.getUserData(); |
454 | }, | 455 | }, |
455 | 456 | ||
456 | methods: { | 457 | methods: { |
457 | getExamList() { | 458 | getExamList() { |
458 | this.showLoader = true; | 459 | this.showLoader = true; |
459 | this.loadingSearch = true; | 460 | this.loadingSearch = true; |
460 | http() | 461 | http() |
461 | .get("/getExamsList", { | 462 | .get("/getExamsList", { |
462 | headers: { Authorization: "Bearer " + this.token }, | 463 | headers: { Authorization: "Bearer " + this.token }, |
463 | }) | 464 | }) |
464 | .then((response) => { | 465 | .then((response) => { |
465 | this.examData = response.data.data; | 466 | this.examData = response.data.data; |
466 | this.showLoader = false; | 467 | this.showLoader = false; |
467 | this.loadingSearch = false; | 468 | this.loadingSearch = false; |
468 | }) | 469 | }) |
469 | .catch((error) => { | 470 | .catch((error) => { |
470 | this.showLoader = false; | 471 | this.showLoader = false; |
471 | this.loadingSearch = false; | 472 | this.loadingSearch = false; |
472 | this.snackbar = true; | 473 | this.snackbar = true; |
473 | this.text = error.response.data.message; | 474 | this.text = error.response.data.message; |
474 | if (error.response.status === 401) { | 475 | if (error.response.status === 401) { |
475 | this.$router.replace({ path: "/" }); | 476 | this.$router.replace({ path: "/" }); |
476 | this.$store.dispatch("setToken", null); | 477 | this.$store.dispatch("setToken", null); |
477 | this.$store.dispatch("Id", null); | 478 | this.$store.dispatch("Id", null); |
478 | } | 479 | } |
479 | }); | 480 | }); |
480 | }, | 481 | }, |
481 | getClass() { | 482 | getClass() { |
482 | this.showLoader = true; | 483 | this.showLoader = true; |
483 | http() | 484 | http() |
484 | .get("/getClassesList", { | 485 | .get("/getClassesList", { |
485 | headers: { Authorization: "Bearer " + this.token }, | 486 | headers: { Authorization: "Bearer " + this.token }, |
486 | }) | 487 | }) |
487 | .then((response) => { | 488 | .then((response) => { |
488 | this.classList = response.data.data; | 489 | this.classList = response.data.data; |
489 | this.showLoader = false; | 490 | this.showLoader = false; |
490 | }) | 491 | }) |
491 | .catch((error) => { | 492 | .catch((error) => { |
492 | this.showLoader = false; | 493 | this.showLoader = false; |
493 | // console.log("err====>", err); | 494 | // console.log("err====>", err); |
494 | }); | 495 | }); |
495 | }, | 496 | }, |
496 | getSections(_id) { | 497 | getSections(_id) { |
497 | this.showLoader = true; | 498 | this.showLoader = true; |
498 | http() | 499 | http() |
499 | .get( | 500 | .get( |
500 | "/getSectionsList", | 501 | "/getSectionsList", |
501 | { params: { classId: _id } }, | 502 | { params: { classId: _id } }, |
502 | { | 503 | { |
503 | headers: { Authorization: "Bearer " + this.token }, | 504 | headers: { Authorization: "Bearer " + this.token }, |
504 | } | 505 | } |
505 | ) | 506 | ) |
506 | .then((response) => { | 507 | .then((response) => { |
507 | this.addSection = response.data.data; | 508 | this.addSection = response.data.data; |
508 | this.showLoader = false; | 509 | this.showLoader = false; |
509 | }) | 510 | }) |
510 | .catch((err) => { | 511 | .catch((err) => { |
511 | this.showLoader = false; | 512 | this.showLoader = false; |
512 | // console.log("err====>", err); | 513 | // console.log("err====>", err); |
513 | }); | 514 | }); |
514 | }, | 515 | }, |
515 | getStudents() { | 516 | getStudents() { |
516 | this.showLoader = true; | 517 | this.showLoader = true; |
517 | http() | 518 | http() |
518 | .get("/getStudentWithClass", { | 519 | .get("/getStudentWithClass", { |
519 | params: { | 520 | params: { |
520 | classId: this.getReport.classId, | 521 | classId: this.getReport.classId, |
521 | sectionId: this.getReport.sectionId, | 522 | sectionId: this.getReport.sectionId, |
522 | }, | 523 | }, |
523 | }) | 524 | }) |
524 | .then((response) => { | 525 | .then((response) => { |
525 | for (var i = 0; i < response.data.data.length; i++) { | 526 | for (var i = 0; i < response.data.data.length; i++) { |
526 | this.getStudentsList.push(response.data.data[i]); | 527 | this.getStudentsList.push(response.data.data[i]); |
527 | } | 528 | } |
528 | 529 | ||
529 | this.showLoader = false; | 530 | this.showLoader = false; |
530 | }) | 531 | }) |
531 | .catch((error) => { | 532 | .catch((error) => { |
532 | console.log("err====>", error); | 533 | console.log("err====>", error); |
533 | this.showLoader = false; | 534 | this.showLoader = false; |
534 | }); | 535 | }); |
535 | }, | 536 | }, |
536 | getSchedule() { | 537 | getSchedule() { |
537 | if (this.$refs.form.validate()) { | 538 | if (this.$refs.form.validate()) { |
538 | this.showLoader = true; | 539 | this.showLoader = true; |
539 | let studentId = []; | 540 | let studentId = []; |
540 | if (this.getReport.studentId == "selectAll") { | 541 | if (this.getReport.studentId == "selectAll") { |
541 | studentId = []; | 542 | studentId = []; |
542 | for (var i = 1; i < this.getStudentsList.length; i++) { | 543 | for (var i = 1; i < this.getStudentsList.length; i++) { |
543 | studentId.push(this.getStudentsList[i]._id); | 544 | studentId.push(this.getStudentsList[i]._id); |
544 | } | 545 | } |
545 | } else { | 546 | } else { |
546 | studentId.push(this.getReport.studentId); | 547 | studentId.push(this.getReport.studentId); |
547 | } | 548 | } |
548 | console.log("this.getReport.studentId - ", studentId); | 549 | console.log("this.getReport.studentId - ", studentId); |
549 | http() | 550 | http() |
550 | .get("/getScheduleForParticularStudent", { | 551 | .get("/getScheduleForParticularStudent", { |
551 | params: { | 552 | params: { |
552 | examId: this.getReport.examId, | 553 | examId: this.getReport.examId, |
553 | classId: this.getReport.classId, | 554 | classId: this.getReport.classId, |
554 | sectionId: this.getReport.sectionId, | 555 | sectionId: this.getReport.sectionId, |
555 | studentId: studentId, | 556 | studentId: studentId, |
556 | }, | 557 | }, |
557 | paramsSerializer: (params) => { | 558 | paramsSerializer: (params) => { |
558 | return qs.stringify(params); | 559 | return qs.stringify(params); |
559 | }, | 560 | }, |
560 | }) | 561 | }) |
561 | .then((response) => { | 562 | .then((response) => { |
562 | this.showTable = true; | 563 | this.showTable = true; |
563 | this.getScheduleList = response.data.data; | 564 | this.getScheduleList = response.data.data; |
564 | console.log(" getScheduleList - ",this.getScheduleList) | 565 | console.log(" getScheduleList - ",this.getScheduleList) |
565 | // this.schoolData = response.data.data.studentData.schoolId; | 566 | // this.schoolData = response.data.data.studentData.schoolId; |
566 | if (response.data.data.scheduleData.length === 0) { | 567 | if (response.data.data.scheduleData.length === 0) { |
567 | this.showLoader = false; | 568 | this.showLoader = false; |
568 | this.snackbar = true; | 569 | this.snackbar = true; |
569 | this.text = "Data not found!"; | 570 | this.text = "Data not found!"; |
570 | this.color = "error"; | 571 | this.color = "error"; |
571 | return; | 572 | return; |
572 | } | 573 | } |
573 | this.showData = true; | 574 | this.showData = true; |
574 | if (this.getReport.form === "frontPart") { | 575 | if (this.getReport.form === "frontPart") { |
575 | this.frontPart = true; | 576 | this.frontPart = true; |
576 | this.backPart = false; | 577 | this.backPart = false; |
577 | } | 578 | } |
578 | if (this.getReport.form === "backPart") { | 579 | if (this.getReport.form === "backPart") { |
579 | this.frontPart = false; | 580 | this.frontPart = false; |
580 | this.backPart = true; | 581 | this.backPart = true; |
581 | } | 582 | } |
582 | this.showLoader = false; | 583 | this.showLoader = false; |
583 | }) | 584 | }) |
584 | .catch((error) => { | 585 | .catch((error) => { |
585 | this.showLoader = false; | 586 | this.showLoader = false; |
586 | }); | 587 | }); |
587 | } | 588 | } |
588 | }, | 589 | }, |
589 | 590 | ||
590 | printAdmitReport() { | 591 | printAdmitReport() { |
591 | // Pass the element id here | 592 | // Pass the element id here |
592 | this.$htmlToPaper("printMe"); | 593 | this.$htmlToPaper("printMe"); |
593 | }, | 594 | }, |
594 | getUserData() { | 595 | getUserData() { |
595 | http() | 596 | http() |
596 | .get("/getParticularUserDetail") | 597 | .get("/getParticularUserDetail") |
597 | .then((response) => { | 598 | .then((response) => { |
598 | this.userData = response.data.data; | 599 | this.userData = response.data.data; |
599 | }) | 600 | }) |
600 | .catch((error) => { | 601 | .catch((error) => { |
601 | if (error.response.status === 401) { | 602 | if (error.response.status === 401) { |
602 | this.$router.replace({ path: "/" }); | 603 | this.$router.replace({ path: "/" }); |
603 | this.$store.dispatch("setToken", null); | 604 | this.$store.dispatch("setToken", null); |
604 | this.$store.dispatch("Id", null); | 605 | this.$store.dispatch("Id", null); |
605 | } | 606 | } |
606 | }); | 607 | }); |
607 | }, | 608 | }, |
608 | // created() { | 609 | // created() { |
609 | // this.$root.$on("app:search", search => { | 610 | // this.$root.$on("app:search", search => { |
610 | // this.search = search; | 611 | // this.search = search; |
611 | // }); | 612 | // }); |
612 | // }, | 613 | // }, |
613 | // beforeDestroy() { | 614 | // beforeDestroy() { |
614 | // // dont forget to remove the listener | 615 | // // dont forget to remove the listener |
615 | // this.$root.$off("app:search"); | 616 | // this.$root.$off("app:search"); |
616 | // } | 617 | // } |
617 | }, | 618 | }, |
618 | }; | 619 | }; |
619 | </script> | 620 | </script> |
620 | <style> | 621 | <style> |
621 | .admincardreport { | 622 | .admincardreport { |
622 | border: 1px solid #ddd; | 623 | border: 1px solid #ddd; |
623 | overflow: hidden; | 624 | overflow: hidden; |
624 | padding: 20px 50px; | 625 | padding: 20px 50px; |
625 | /* margin-bottom: 10px; | 626 | /* margin-bottom: 10px; |
626 | min-height: 443px; */ | 627 | min-height: 443px; */ |
627 | } | 628 | } |
628 | .line { | 629 | .line { |
629 | border-bottom: 1px solid #ddd; | 630 | border-bottom: 1px solid #ddd; |
630 | overflow: hidden; | 631 | overflow: hidden; |
631 | padding-bottom: 10px; | 632 | padding-bottom: 10px; |
632 | vertical-align: middle; | 633 | vertical-align: middle; |
633 | /* margin-bottom: 4px; */ | 634 | /* margin-bottom: 4px; */ |
634 | } | 635 | } |
635 | .school-logo { | 636 | .school-logo { |
636 | float: left; | 637 | float: left; |
637 | } | 638 | } |
638 | .student-logo { | 639 | .student-logo { |
639 | position: absolute; | 640 | position: absolute; |
640 | top: 221px; | 641 | top: 221px; |
641 | right: 221px; | 642 | right: 221px; |
642 | } | 643 | } |
643 | .school-name { | 644 | .school-name { |
644 | box-sizing: border-box; | 645 | box-sizing: border-box; |
645 | align-items: center; | 646 | align-items: center; |
646 | } | 647 | } |
647 | /* .student-info { | 648 | /* .student-info { |
648 | float: left; | 649 | float: left; |
649 | width: max-content; | 650 | width: max-content; |
650 | text-align: initial; | 651 | text-align: initial; |
651 | } */ | 652 | } */ |
652 | .student-info { | 653 | .student-info { |
653 | width: 50%; | 654 | width: 50%; |
654 | float: left; | 655 | float: left; |
655 | text-align: initial; | 656 | text-align: initial; |
656 | } | 657 | } |
657 | .student-info p { | 658 | .student-info p { |
658 | width: 50%; | 659 | width: 50%; |
659 | float: left; | 660 | float: left; |
660 | margin-bottom: 1px; | 661 | margin-bottom: 1px; |
661 | padding: 0 0px; | 662 | padding: 0 0px; |
662 | font-size: 12px; | 663 | font-size: 12px; |
663 | } | 664 | } |
664 | .admitcardreportbackend ol { | 665 | .admitcardreportbackend ol { |
665 | margin: 0; | 666 | margin: 0; |
666 | margin-bottom: 10px; | 667 | margin-bottom: 10px; |
667 | } | 668 | } |
668 | .admitcardreportbackend p { | 669 | .admitcardreportbackend p { |
669 | line-height: 20px; | 670 | line-height: 20px; |
670 | text-align: left; | 671 | text-align: left; |
671 | } | 672 | } |
672 | </style> | 673 | </style> |