Skip to content

dipeira/school-programs

Repository files navigation

Προγράμματα Σχολικών Δραστηριοτήτων (School Programs Management)

Version License

Ένα σύγχρονο σύστημα διαχείρισης Προγραμμάτων Σχολικών Δραστηριοτήτων για Διευθύνσεις Πρωτοβάθμιας Εκπαίδευσης. Επιτρέπει στις σχολικές μονάδες να υποβάλλουν τα προγράμματά τους ψηφιακά και στους διαχειριστές να τα ελέγχουν, να τα εγκρίνουν και να εκδίδουν αυτόματα βεβαιώσεις υλοποίησης.

🚀 Χαρακτηριστικά

Για Σχολικές Μονάδες

  • Είσοδος μέσω ΠΣΔ: Ταυτοποίηση χρηστών μέσω του SSO του Πανελληνίου Σχολικού Δικτύου.
  • Ψηφιακή Υποβολή: Πλήρης φόρμα καταχώρησης προγράμματος με καρτέλες (Σχολεία, Εκπαιδευτικοί, Πρόγραμμα, Πρόοδος).
  • Αυτόματες Βεβαιώσεις: Λήψη επίσημων βεβαιώσεων σε μορφή Word (.docx) μετά την έγκριση.
  • Ιστορικό Αρχείο: Πρόσβαση σε προγράμματα παρελθόντων ετών σε λειτουργία ανάγνωσης.

Για Διαχειριστές (ΔΙ.Π.Ε.)

  • Πίνακας Ελέγχου: Συγκεντρωτική εικόνα όλων των υποβληθέντων προγραμμάτων.
  • Δυναμικές Παράμετροι: Ρύθμιση σχολικού έτους, κλείδωμα πεδίων και διαχείριση πρωτοκόλλων μέσω UI.
  • Ετήσια Αρχειοθέτηση: Αυτόματος μηχανισμός αρχειοθέτησης και προετοιμασίας για το νέο έτος.
  • Εξαγωγή Δεδομένων: Μαζική εξαγωγή στοιχείων σε αρχείο Excel.

🛠 Τεχνολογίες

  • Backend: PHP 7.4+ (MySQLi)
  • Database: MariaDB / MySQL
  • Frontend: Bootstrap 5, jQuery, DataTables.net, Select2, SweetAlert2
  • Integrations: phpCAS (SSO), PHPOffice/PHPWord (Document Generation)

📥 Εγκατάσταση

Ακολουθήστε τα παρακάτω βήματα για να εγκαταστήσετε την εφαρμογή σε περιβάλλον XAMPP ή παρεμφερές.

1. Προετοιμασία Αρχείων

Αντιγράψτε τα αρχεία του project στον φάκελο htdocs του διακομιστή σας (π.χ. C:\xampp\htdocs\school-programs).

Σημείωση για Ubuntu Server: Εάν κάνετε εγκατάσταση σε διακομιστή Ubuntu, ο ιδιοκτήτης (owner) του φακέλου πρέπει να είναι ο χρήστης administrator και η ομάδα να είναι η www-data. Εκτελέστε τις εξής εντολές:

sudo chown -R administrator:www-data school-programs
sudo chmod 777 files/

2. Εγκατάσταση Εξαρτήσεων (Composer)

Ανοίξτε το τερματικό στον φάκελο του project (π.χ. στο C:\xampp\htdocs\school-programs) και εκτελέστε την παρακάτω εντολή για να εγκαταστήσετε τις απαραίτητες βιβλιοθήκες PHP (όπως phpcas, phpword):

composer install

3. Βάση Δεδομένων

  1. Ανοίξτε το phpMyAdmin.
  2. Δημιουργήστε μια νέα βάση δεδομένων με όνομα school-programs.
  3. Επιλέξτε τη βάση και κάντε Εισαγωγή (Import) το αρχείο: files/full_schema.sql

Τεχνική Σημείωση (Ιστορικό Αρχείο): Παλαιοί πίνακες αρχείου (π.χ. progs_2014-15) ενδέχεται να χρησιμοποιούν ένα παλαιότερο (legacy) σχήμα βάσης όπου ονοματολογία πεδίων διέφερε (π.χ. title, sch_id). Η εφαρμογή αναγνωρίζει δυναμικά αυτή τη δομή και προσαρμόζει τα ερωτήματα στο index.php. Κάθε νέος πίνακας αρχείου που δημιουργείται πλέον από το UI της εφαρμογής ακολουθεί αυστηρά το σύγχρονο σχήμα.

4. Ρύθμιση Σύνδεσης και Εφαρμογής (conf.php)

Μετονομάστε ή αντιγράψτε το αρχείο conf-sample.php σε conf.php. Ανοίξτε το αρχείο conf.php και συμπληρώστε τα στοιχεία της βάσης σας:

$prDbhost = 'localhost';
$prDbname = 'school-programs';
$prDbusername = 'root';
$prDbpassword = '';

5. Ρύθμιση Παραμέτρων (Metadata)

Δεν απαιτείται να επεξεργαστείτε χειροκίνητα το αρχείο config.json. Αφού συνδεθείτε στο σύστημα με λογαριασμό διαχειριστή, πατήστε το κουμπί Παράμετροι. Από εκεί μπορείτε να ρυθμίσετε μέσα από γραφικό περιβάλλον το τρέχον σχολικό έτος, τα μεταδεδομένα και κλειδώματα, τα οποία θα αποθηκευτούν αυτόματα.

(Προσοχή: Βεβαιωθείτε ότι ο χρήστης www-data έχει δικαιώματα εγγραφής στο αρχείο config.json. Στον Ubuntu server εκτελέστε: sudo chmod 770 config.json)

6. SSO & CAS (ΠΣΔ)

Η εφαρμογή είναι προ-ρυθμισμένη για χρήση με το sso.sch.gr. Για τοπικές δοκιμές χωρίς CAS, μπορείτε να ενεργοποιήσετε το Debug mode στο conf.php:

$prDebug = 1; // 1 για τοπικές δοκιμές, 0 για παραγωγή

📂 Δομή Φακέλων

  • index.php: Η κεντρική σελίδα της εφαρμογής.
  • db.php: Διαχείριση των κλήσεων προς τη βάση δεδομένων (AJAX).
  • exp.php: Παραγωγή βεβαιώσεων Word.
  • files/: Περιλαμβάνει τη βάση δεδομένων (full_schema.sql) και το πρότυπο βεβαίωσης (vev_tmpl.docx).
  • vendor/: Βιβλιοθήκες τρίτων (εγκατάσταση μέσω Composer).

📄 Άδεια Χρήσης

Το έργο διατίθεται υπό την άδεια MIT.


(c) 2024, Τμήμα Δ' Πληροφορικής & Νέων Τεχνολογιών, Δ.Π.Ε. Ηρακλείου

About

A modernized, year-aware school management system for handling activity programs, certificate generation, and annual archiving.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors