-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.php
618 lines (589 loc) · 31.2 KB
/
index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
<?php
session_start();
$_SESSION['loggedin'] = 0;
require_once('conf.php');
date_default_timezone_set('Europe/Athens');
// get school data
function get_school($code, $conn) {
global $schTable;
$sql = "SELECT id,name FROM $schTable WHERE code = $code";
$result = $conn->query($sql);
$row = mysqli_fetch_assoc($result);
return [
'id' => $row['id'],
'name' => $row['name']
];
}
// Load variables from config.json file
// Read the contents of config.json
$jsonString = file_get_contents('config.json');
// Decode the JSON string to an associative array
$configData = json_decode($jsonString, true);
// Extract values from the associative array and set them as variables
foreach ($configData as $configItem) {
${$configItem['name']} = $configItem['value'];
}
if (!$prDebug) {
// if user not logged-in, display login form
if (!$_SESSION['loggedin'] && !isset($_POST['login-btn']) && !$_GET['ticket'] && !isset($_POST['logout'])):
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Είσοδος</title>
<!-- Bootstrap CSS -->
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<style>
.jumbotron {
background-color: #f8f9fa;
}
</style>
</head>
<body>
<div class="container mt-5">
<div class="p-4 shadow-4 rounded-3" style="background-color: hsl(0, 0%, 94%);">
<h1>Προγράμματα Σχολικών Δραστηριοτήτων <?=$prSxetos?></h1>
<p>
Εισαγωγή, διαχείριση, έγκριση προγραμμάτων σχολικών δραστηριοτήτων
</p>
<hr class="my-4" />
<p>
Η είσοδος στο σύστημα γίνεται με κωδικούς ΠΣΔ (Πανελληνίου Σχολικού Δικτύου - <u>κωδικοί email</u>) και ΟΧΙ με κωδικούς MySchool
</p>
<form id="login" method="post">
<button type="submit" data-mdb-button-init data-mdb-ripple-init class="btn btn-primary" name="login-btn">
Είσοδος με κωδικούς ΠΣΔ
</button>
</form>
</div>
</div>
<footer class="footer">
<div class="container">
<div class="row">
<div class="col-md-10">
<span>© ΔΙ.Π.Ε. Ηρακλείου - Τμήμα Δ' Πληροφορικής & νέων Τεχνολογιών, 2024</span>
</div>
<div class="col-md-2">
<a href="https://github.com/dipeira/sch-progs" target="_blank" title="Github"><img src="files/github.png"></a>
</div>
</div>
</div>
</footer>
</body>
</html>
<?php
die();
endif;
// Add your CAS server integration here
// phpCAS simple client, import phpCAS lib (downloaded with composer)
require_once('vendor/autoload.php');
//initialize phpCAS using SAML
phpCAS::client(CAS_VERSION_3_0,'sso.sch.gr',443,'','https://srv1-dipe.ira.sch.gr');
// if logout
if (isset($_POST['logout']))
{
session_unset();
session_destroy();
phpCAS::logout();
header("Location: index.php");
}
// no SSL validation for the CAS server, only for testing environments
phpCAS::setNoCasServerValidation();
// handle backend logout requests from CAS server
phpCAS::handleLogoutRequests(array('sso-test.sch.gr'));
// force CAS authentication
if (!phpCAS::checkAuthentication())
phpCAS::forceAuthentication();
// at this step, the user has been authenticated by the CAS server and the user's login name can be read with phpCAS::getUser().
$_SESSION['loggedin'] = 1;
} else {
$_SESSION['loggedin'] = 1;
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title><?php echo 'Προγράμματα Σχολικών Δραστηριοτήτων ' . $prSxetos; ?></title>
<!-- Include Bootstrap CSS and DataTables.net CSS here -->
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdn.datatables.net/1.13.6/css/jquery.dataTables.css" />
<link rel="stylesheet" href="https://cdn.datatables.net/2.0.3/css/dataTables.dataTables.css" />
<link rel="stylesheet" href="https://cdn.datatables.net/buttons/3.0.1/css/buttons.dataTables.css" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/css/bootstrap-datepicker.min.css" />
<style>
.btn {
margin: 2px 0px 2px 0px;
}
</style>
</head>
<body>
<?php
if (!$prDebug)
{
$sch_name = phpCAS::getAttribute('description');
$sch_code = phpCAS::getAttribute('edupersonorgunitdn-gsnunitcode');
$uid = phpCAS::getUser();
$em1 = $uid . "@sch.gr";
$em2 = phpCAS::getAttribute('mail');
if (!strcmp($uid,$prAdmin1) || !strcmp($uid,$prAdmin2))
$_SESSION['admin'] = 1;
$_SESSION['email1'] = $em1;
$_SESSION['email2'] = $em2;
}
// fill for local testing
else {
$sch_name = $prsch_name;
$sch_code = 0;
$uid = $pruid;
$em1 = $prem1;
$em2 = $prem2;
if (strcmp($uid,$prAdmin1) <>0 || !strcmp($uid,$prAdmin2) <>0) {
$_SESSION['admin'] = 0;
} else {
$_SESSION['admin'] = 1;
}
$_SESSION['email1'] = $em1;
$_SESSION['email2'] = $em2;
}
if (isset($_SESSION['email1']) || isset($_SESSION['email2'])) {
// Check if records exist
$conn = new mysqli($prDbhost, $prDbusername, $prDbpassword, $prDbname);
if (!$_SESSION['admin']) {
$sql = "SELECT *,p.id as pid FROM $prTable p JOIN $schTable s ON s.id = p.sch1 WHERE s.email1='" . $_SESSION['email1'] . "' OR s.email1='" . $_SESSION['email2'] . "' OR s.code='$sch_code'";
} else {
$sql = "SELECT *,p.id as pid FROM $prTable p JOIN $schTable s ON s.id = p.sch1";
}
$result = $conn->query($sql);
// Get sch id
$schid = 0;
if (strlen($sch_name) == 0){
$function_data = get_school($sch_code, $conn);
$sch_name = $function_data['name'];
$schid = $function_data['id'];
}
// Ensure
if ($_SESSION['admin']){
$schid = 1;
}
// only admin can delete for now
$canDelete = $_SESSION['admin'] ? 1 : 0;
echo '<div class="container">';
echo "<center><h1><i class='bi-newspaper'></i> Προγράμματα Σχολικών Δραστηριοτήτων $prSxetos</h1></center>";
echo "<h4>Σχολείο: " . $sch_name . "</h4>";
// if no results
if (!$result->num_rows) {
$outmsg = "<h2>Δεν υπάρχουν αποτελέσματα...</h2><p>Ελέγξτε ότι:<ol><li>Ο λογαριασμός με τον οποίο κάνατε είσοδο είναι λογαριασμός <strong>Σχολικής Μονάδας ΠΣΔ <small>(π.χ. για λήψη email, είσοδο στο survey κλπ)</small></strong> και <strong>ΟΧΙ</strong> προσωπικός ή του MySchool*.</li><li>Βεβαιωθείτε ότι η σχολική σας μονάδα έχει προγράμματα σχολικών δραστηριοτήτων.</li><li>Αν ελέγξατε τα παραπάνω και συνεχίζετε να έχετε πρόβλημα, επικοινωνήστε με τη Δ/νση</li></ol><br>
* Σε περίπτωση που είστε συνδεδεμένοι στο MySchool πρέπει να αποσυνδεθείτε και μετά να κάνετε είσοδο στο σύστημα αυτό.</p>";
echo '<div style="font-size:10pt;color:black;font-family:arial;">' . $outmsg . '</div>';
$add_prog = $_SESSION['admin'] || (!$_SESSION['admin'] && $canAdd) ? '' : 'disabled';
$sid = $schid > 0 ? $schid : 0;
echo '<a href="#" class="btn btn-success add-record '.$add_prog.'" data-schid='.$sid.'><span class="bi-plus-circle"></span> Προσθήκη</a></td>';
} else {
echo '<div id="alertContainer"></div>';
// Display DataTable with records
echo '<table id="progs" class="table table-bordered table-striped">';
echo '<thead>';
echo '<tr>';
echo '<th>A/A</th>';
echo '<th>Όνομα Σχολείου</th>';
echo '<th>Κατηγορία</th>';
echo '<th>Τίτλος προγράμματος</th>';
echo '<th>Έλεγχος</th>';
echo '<th>Βεβαίωση</th>';
echo '<th>Τελ. Μεταβολή</th>';
echo '<th>Ενέργεια</th>';
echo '</tr>';
echo '</thead>';
echo '<tbody>';
while ($row = $result->fetch_assoc()) {
echo '<tr>';
echo '<td>' . $row['pid'] . '</td>';
echo '<td>' . $row['name'] . '</td>';
echo '<td>' . $row['categ'] . '</td>';
echo '<td>' . $row['titel'] . '</td>';
echo '<td>' . $row['chk'] . '</td>';
echo '<td>' . $row['vev'] . '</td>';
echo '<td>' . date('d-m-Y, h:i:s',strtotime($row['timestamp'])) . '</td>';
echo '<td><a href="#" class="btn btn-warning edit-record" data-record-id="'.$row['pid'].'" data-sch-id="'.$row['sch1']. '" data-canvev="'.$canVev;
echo '" data-lock-basic="'.$lockBasic.'" data-admin="'.$_SESSION['admin'].'"><span class="bi-pencil-square"></span> Επεξεργασία</a>';
echo ' <a href="#" class="btn btn-info view-record" data-record-id="'.$row['pid'].'"><span class="bi-eye"></span> Προβολή</a>';
echo $showVev ? ' <a href="exp.php?id='.$row['pid'].'" class="btn btn-success" data-record-id="'.$row['pid'].'"><span class="bi-file-earmark-text"></span> Βεβαίωση</a>' : '';
echo $canDelete ? ' <a href="#" class="btn btn-danger" onclick="confirmDelete('.$row['pid'].')"><span class="bi bi-trash"></span> Διαγραφή</a>' : '';
echo '</td>';
echo '</tr>';
}
echo '</tbody>';
echo '</table>';
$add_prog = $_SESSION['admin'] || (!$_SESSION['admin'] && $canAdd) ? '' : 'disabled';
echo '<a href="#" class="btn btn-success add-record '.$add_prog.'" data-schid="'.$schid.'"><span class="bi-plus-circle"></span> Προσθήκη</a></td>';
}
// Logout button
echo "<br><br>";
echo '<form action="" method="POST">';
if ($_SESSION['admin']){
echo "<!-- Button to open the modal -->";
echo '<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#configModal"><span class="bi-gear"></span> Παράμετροι</button>';
echo "<br>";
echo '<button class="btn btn-success" id="exportButton"><span class="bi bi-file-earmark-excel"></span> Εξαγωγή σε Excel</button>';
//Open Configuration Modal
echo '<br>';
}
echo '<button type="submit" class="btn btn-danger" name="logout"><span class="bi-box-arrow-right"></span> Έξοδος</button>';
echo '</form>';
echo "</div>";
$conn->close();
} else {
die('Σφάλμα επαλήθευσης στοιχείων χρήστη (Authentication Error)');
}
// Add your export and add new program buttons here
$author = '(c) 2024, Τμήμα Δ - Πληροφορικής & Νέων Τεχνολογιών, Δ/νση Π.Ε. Ηρακλείου.';
echo '<div style="font-size:9pt;color:black">' . $author . '</div>';
// Include Bootstrap and DataTables.net JavaScript libraries
?>
<!-- View Modal -->
<div class="modal fade" id="viewModal" tabindex="-1" role="dialog" aria-labelledby="viewModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="viewModalLabel">Προβολή Εγγραφής</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<!-- View record details content -->
</div>
</div>
</div>
</div>
<!-- Edit Modal -->
<div class="modal fade" id="editModal" tabindex="-1" role="dialog" aria-labelledby="editModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="editModalLabel">Επεξεργασία Προγράμματος</h5>
<button type="button" class="close" data-bs-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<form id="editForm">
<div class="modal-body">
<!-- Edit record details content with tabs -->
<ul class="nav nav-tabs" id="editTabs" role="tablist">
<li class="nav-item">
<a class="nav-link active" id="school-tab" data-bs-toggle="tab" href="#school" role="tab" aria-controls="school" aria-selected="true">Σχολείο</a>
</li>
<li class="nav-item">
<a class="nav-link" id="program-tab" data-bs-toggle="tab" href="#program" role="tab" aria-controls="program" aria-selected="false">Πρόγραμμα</a>
</li>
<li class="nav-item">
<a class="nav-link" id="teachers-tab" data-bs-toggle="tab" href="#teachers" role="tab" aria-controls="teachers" aria-selected="false">Εκπαιδευτικοί</a>
</li>
<li class="nav-item">
<a class="nav-link" id="progress-tab" data-bs-toggle="tab" href="#progress" role="tab" aria-controls="progress" aria-selected="false">Πρόοδος</a>
</li>
<li class="nav-item">
<a class="nav-link" id="status-tab" data-bs-toggle="tab" href="#status" role="tab" aria-controls="status" aria-selected="false">Κατάσταση</a>
</li>
</ul>
<div class="tab-content" id="editTabsContent">
<!-- Edit record details for each tab -->
<div class="tab-pane fade show active" id="school" role="tabpanel" aria-labelledby="school-tab">
<!-- School details content -->
<input type="hidden" class="form-control" id="id" name="id" value=0>
<div class="form-group">
<label for="sch1">Σχολείο</label>
<select class="form-select" id="sch1" name="sch1" style="width: 50%" required></select>
</div>
<div class="form-group">
<label for="princ1">Διευθυντής/-ντρια - Πρ/νος/-η σχολείου</label>
<input type="text" class="form-control" id="princ1" name="princ1">
</div>
<div class="form-group">
<label for="sch2">Συνεργαζόμενο Σχολείο</label>
<select class="form-select" id="sch2" name="sch2" style="width: 50%"></select>
</div>
<div class="form-group">
<label for="princ2">Διευθυντής/-ντρια - Πρ/νος/-η συνεργαζόμενου σχολείου</label>
<input type="text" class="form-control" id="princ2" name="princ2">
</div>
</div>
<div class="tab-pane fade" id="program" role="tabpanel" aria-labelledby="program-tab">
<!-- Program details content -->
<div class="form-group">
<label for="titel">Τίτλος Προγράμματος *</label>
<input type="text" class="form-control" id="titel" name="titel" required>
</div>
<div class="form-group">
<label for="categ">Κατηγορία</label>
<select name="categ" id="categ" class="form-select" aria-label="Κατηγορία">
<option value="Αγωγής Υγείας">Αγωγής Υγείας</option>
<option value="Περιβαλλοντικής Εκπαίδευσης">Περιβαλλοντικής Εκπαίδευσης</option>
<option value="Πολιτιστικών Θεμάτων">Πολιτιστικών Θεμάτων</option>
</select>
</div>
<div class="form-group">
<label for="subti">Υποτίτλος</label>
<input type="text" class="form-control" id="subti" name="subti">
</div>
<div class="form-group">
<label for="praxi">Πράξη</label>
<input type="text" class="form-control" id="praxi" name="praxi" pattern="[0-9]*" title="Please enter only numeric values." value=0>
</div>
<div class="form-group">
<label for="praxidate">Ημερομηνία Πράξης</label>
<input type="text" class="form-control datepicker" id="praxidate" name="praxidate">
</div>
<div class="form-group">
<label for="grade">Τάξη/-εις</label>
<input type="text" class="form-control" id="grade" name="grade">
</div>
<div class="form-group">
<label for="nr">Αριθμός Συμμετεχόντων</label>
<input type="text" class="form-control" id="nr" name="nr" value=0>
</div>
<div class="form-group">
<label for="nr_boys">Αριθμός Αγοριών</label>
<input type="text" class="form-control" id="nr_boys" name="nr_boys" value=0>
</div>
<div class="form-group">
<label for="nr_girls">Αριθμός Κοριτσιών</label>
<input type="text" class="form-control" id="nr_girls" name="nr_girls" value=0>
</div>
<div class="form-group">
<label for="cha">Χαρακτηριστικά ομάδας</label>
<select name="cha" id="cha" class="form-select" aria-label="Κατηγορία">
<option value="Μικτή ομάδα">Μικτή ομάδα</option>
<option value="Αμιγές τμήμα">Αμιγές τμήμα</option>
</select>
</div>
<div class="form-group">
<label for="arxeio">Ύπαρξη αρχείου Σχολικών Δραστηριοτήτων στο Σχολείο</label>
<select name="arxeio" id="arxeio" class="form-select" aria-label="Κατηγορία">
<option value="Όχι">Όχι</option>
<option value="Ναι">Ναι</option>
</select>
</div>
<div class="form-group">
<label for="theme">Θεματολογία</label>
<textarea class="form-control" id="theme" name="theme"></textarea>
</div>
<div class="form-group">
<label for="goal">Στόχος</label>
<textarea class="form-control" id="goal" name="goal"></textarea>
</div>
<div class="form-group">
<label for="notes">Σχόλια - Σημειώσεις</label>
<textarea class="form-control" id="notes" name="notes"></textarea>
</div>
</div>
<div class="tab-pane fade" id="teachers" role="tabpanel" aria-labelledby="teachers-tab">
<!-- Teachers details content -->
<div class="form-group">
<label for="nam1">Όν/μο Εκπαιδευτικού 1 *</label>
<input type="text" class="form-control" id="nam1" name="nam1" required>
</div>
<div class="form-group">
<label for="eid1">Ειδικότητα Εκπαιδευτικού 1</label>
<select name="eid1" id="eid1" class="form-select" aria-label="Ειδικότητα">
<option value="ΠΕ05">ΠΕ05</option>
<option value="ΠΕ06">ΠΕ06</option>
<option value="ΠΕ07">ΠΕ07</option>
<option value="ΠΕ08">ΠΕ08</option>
<option value="ΠΕ11">ΠΕ11</option>
<option value="ΠΕ79">ΠΕ79</option>
<option value="ΠΕ86">ΠΕ86</option>
<option value="ΠΕ60">ΠΕ60</option>
<option value="ΠΕ70">ΠΕ70</option>
<option value="ΠΕ91">ΠΕ91</option>
<option value="ΠΕ61">ΠΕ61</option>
<option value="ΠΕ71">ΠΕ71</option>
<option value="Άλλο">Άλλο</option>
</select>
</div>
<div class="form-group">
<label for="email1">Email Εκπαιδευτικού 1</label>
<input type="text" class="form-control" id="email1" name="email1">
</div>
<div class="form-group">
<label for="email1">Τηλέφωνο Εκπαιδευτικού 1</label>
<input type="text" class="form-control" id="mob1" name="mob1">
</div>
<hr class="border-4" />
<div class="form-group">
<label for="nam1">Όν/μο Εκπαιδευτικού 2</label>
<input type="text" class="form-control" id="nam2" name="nam2">
</div>
<div class="form-group">
<label for="eid2">Ειδικότητα Εκπαιδευτικού 2</label>
<select name="eid2" id="eid2" class="form-select" aria-label="Ειδικότητα">
<option value="ΠΕ05">ΠΕ05</option>
<option value="ΠΕ06">ΠΕ06</option>
<option value="ΠΕ07">ΠΕ07</option>
<option value="ΠΕ08">ΠΕ08</option>
<option value="ΠΕ11">ΠΕ11</option>
<option value="ΠΕ79">ΠΕ79</option>
<option value="ΠΕ86">ΠΕ86</option>
<option value="ΠΕ60">ΠΕ60</option>
<option value="ΠΕ70">ΠΕ70</option>
<option value="ΠΕ91">ΠΕ91</option>
<option value="ΠΕ61">ΠΕ61</option>
<option value="ΠΕ71">ΠΕ71</option>
<option value="Άλλο">Άλλο</option>
</select>
</div>
<div class="form-group">
<label for="email1">Email Εκπαιδευτικού 2</label>
<input type="text" class="form-control" id="email2" name="email2">
</div>
<div class="form-group">
<label for="email1">Τηλέφωνο Εκπαιδευτικού 2</label>
<input type="text" class="form-control" id="mob2" name="mob2">
</div>
<hr class="border-4" />
<div class="form-group">
<label for="nam1">Όν/μο Εκπαιδευτικού 3</label>
<input type="text" class="form-control" id="nam3" name="nam3">
</div>
<div class="form-group">
<label for="eid3">Ειδικότητα Εκπαιδευτικού 3</label>
<select name="eid3" id="eid3" class="form-select" aria-label="Ειδικότητα">
<option value="ΠΕ05">ΠΕ05</option>
<option value="ΠΕ06">ΠΕ06</option>
<option value="ΠΕ07">ΠΕ07</option>
<option value="ΠΕ08">ΠΕ08</option>
<option value="ΠΕ11">ΠΕ11</option>
<option value="ΠΕ79">ΠΕ79</option>
<option value="ΠΕ86">ΠΕ86</option>
<option value="ΠΕ60">ΠΕ60</option>
<option value="ΠΕ70">ΠΕ70</option>
<option value="ΠΕ91">ΠΕ91</option>
<option value="ΠΕ61">ΠΕ61</option>
<option value="ΠΕ71">ΠΕ71</option>
<option value="Άλλο">Άλλο</option>
</select>
</div>
<div class="form-group">
<label for="email1">Email Εκπαιδευτικού 3</label>
<input type="text" class="form-control" id="email3" name="email3">
</div>
<div class="form-group">
<label for="email1">Τηλέφωνο Εκπαιδευτικού 3</label>
<input type="text" class="form-control" id="mob3" name="mob3">
</div>
</div>
<div class="tab-pane fade" id="progress" role="tabpanel" aria-labelledby="progress-tab">
<!-- Progress details content -->
<div class="form-group">
<label for="meth">Μέθοδος</label>
<textarea type="text" class="form-control" id="meth" name="meth"></textarea>
</div>
<div class="form-group">
<label for="month">Μήνας έναρξης</label>
<input type="text" class="form-control" id="month" name="month">
</div>
<div class="form-group">
<label for="m1">1ος μήνας</label>
<input type="text" class="form-control" id="m1" name="m1">
</div>
<div class="form-group">
<label for="m2">2ος μήνας</label>
<input type="text" class="form-control" id="m2" name="m2">
</div>
<div class="form-group">
<label for="m3">3ος μήνας</label>
<input type="text" class="form-control" id="m3" name="m3">
</div>
<div class="form-group">
<label for="m4">4ος μήνας</label>
<input type="text" class="form-control" id="m4" name="m4">
</div>
<div class="form-group">
<label for="m5">5ος μήνας</label>
<input type="text" class="form-control" id="m5" name="m5">
</div>
<div class="form-group">
<label for="visit">Αριθμός προβλεπόμενων επισκέψεων - Συνεργασίες με άλλους φορείς</label>
<input type="text" class="form-control" id="visit" name="visit">
</div>
<div class="form-group">
<label for="foreis">Φορείς επισκέψεων</label>
<input type="text" class="form-control" id="foreis" name="foreis">
</div>
<div class="form-group">
<label for="dura">Διάρκεια</label>
<select name="dura" id="dura" class="form-select" aria-label="Έλεγχος">
<option value="3 μήνες">3 μήνες</option>
<option value="4 μήνες">4 μήνες</option>
<option value="5 μήνες">5 μήνες</option>
</select>
</div>
</div>
<div class="tab-pane fade" id="status" role="tabpanel" aria-labelledby="status-tab">
<!-- Status details content -->
<div class="form-group">
<label for="chk">Βεβαιώνεται ότι ο/η δ/ντής/τρια ή προϊσταμένος/νη της σχολικής μονάδας έλεγξε το παρόν σχέδιο προγράμματος σχολικών δραστηριοτήτων, έκανε απαραίτητες τυχόν διορθώσεις και βεβαιώνει ότι τα στοιχεία που αναφέρονται στο παρόν σχέδιο προγράμματος είναι σωστά.</label>
<select name="chk" id="chk" class="form-select" aria-label="Έλεγχος">
<option value="Ναι">Ναι</option>
<option value="Όχι">Όχι</option>
</select>
</div>
<div class="form-group">
<label for="vev">Ο/Η δ/ντής/τρια ή προϊσταμένος/νη βεβαιώνει ότι το συγκεκριμένο σχέδιο προγράμματος σχολικών δραστηριοτήτων ολοκληρώθηκε επιτυχώς και τα αποτελέσματα του προγράμματος είναι διαθέσιμα στο σχολική μονάδα.</label>
<select name="vev" id="vev" class="form-select" aria-label="Βεβαίωση">
<option value="Όχι">Όχι</option>
<option value="Ναι">Ναι</option>
</select>
</div>
</div>
</div>
</div> <!-- of modal body -->
<div class="modal-footer">
<button type="button" class="btn btn-secondary btn-danger close-btn" data-bs-dismiss="modal"><i class="bi-x-circle"></i> Κλείσιμο</button>
<button type="submit" class="btn btn-primary btn-success save-btn"><i class="bi-save"></i> Αποθήκευση</button>
</div>
</div> <!-- of form -->
</div> <!-- of modal content -->
</div> <!-- of modal dialog -->
</div> <!-- of modal -->
<!-- Configuration Modal -->
<div class="modal fade" id="configModal" tabindex="-1" aria-labelledby="configModalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="configModalLabel">Παράμετροι εφαρμογής</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<!-- Configuration settings will be dynamically loaded here -->
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal"><i class="bi-x-circle"></i> Κλείσιμο</button>
<button type="button" class="btn btn-primary" id="saveConfigBtn"><i class="bi-save"></i> Αποθήκευση</button>
</div>
</div>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.7.1.js" type="text/javascript"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous" type="text/javascript"></script>
<script src="https://cdn.datatables.net/2.0.3/js/dataTables.js" type="text/javascript"></script>
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/select2.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.9.0/js/bootstrap-datepicker.min.js"></script>
<script src="https://cdn.datatables.net/buttons/3.0.1/js/dataTables.buttons.js"></script>
<script src="https://cdn.datatables.net/buttons/3.0.1/js/buttons.dataTables.js"></script>
<script src="https://cdn.datatables.net/buttons/3.0.1/js/buttons.colVis.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.10.1/jszip.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.7/pdfmake.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.7/vfs_fonts.js"></script>
<script src="https://cdn.datatables.net/buttons/3.0.1/js/buttons.html5.min.js"></script>
<!-- Add SweetAlert2 from CDN -->
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<!-- Bootstrap Font Icon CSS -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.css">
<script src="script.js" type="text/javascript"></script>
</body>
</html>