Giter Club home page Giter Club logo

openeclass's Introduction

EN - English
----------------------------------------------------------
The Open eClass Platform 3.0 (http://www.openeclass.org)
----------------------------------------------------------

The Open eClass platform (formerly known as GUnet eClass), is a complete Course
Management System, used to store and present educational materials. It is the
solution offered by the Greek Academic Network (GUnet) to support asynchronous
elearning services. Its goal is the incorporation and constructive use of the
Internet and web technologies in the teaching and learning process.

Distribution of the platform started on March 2003 and the current version is
the twelveth in a row. It is designed and developed by the GUnet Asychronous
eLearning group as an open source software (under GNU GPL Licence). Also,
there were many useful ideas and contributions from various users and
developers. We would like to express our gratitude to all of them for their
support. A complete list of contributors can be found in the CREDITS.txt file.

Sincerely,
Gunet Asychronous eLearning Group
October 2014


EL - Ελληνικά
----------------------------------------------------------
Πλατφόρμα Open eClass 3.0 (http://www.openeclass.org)
----------------------------------------------------------

Η πλατφόρμα Open eClass (παλιότερη ονομασία: GUnet eClass), είναι ένα
ολοκληρωμένο Σύστημα Διαχείρισης Ηλεκτρονικών Μαθημάτων και αποτελεί την
πρόταση του Ακαδημαϊκού Διαδικτύου GUnet για την υποστήριξη της Υπηρεσίας
Ασύγχρονης Τηλεκπαίδευσης. Αναπτύχθηκε από την Ομάδα Ασύγχρονης Τηλεκπαίδευσης
του Ακαδημαϊκού Διαδικτύου, υποστηρίζεται κεντρικά από το GUnet και διανέμεται
ελεύθερα ως Λογισμικό Ανοικτού Κώδικα.

Η διάθεση της πλατφόρμας ξεκίνησε το Μάρτιο του 2003 και σήμερα (31/12/2011),
διανέμεται η δωδέκατη κατά σειρά έκδοση της πλατφόρμας (Open eClass 3.0). Όλα αυτά τα
χρόνια, χρησιμοποιείται με επιτυχία από το σύνολο σχεδόν των Ακαδημαϊκών Ιδρυμάτων
της χώρας καθώς κι από ένα πλήθος άλλων εκπαιδευτικών οργανισμών, υποστηρίζοντας
ενεργά τις δράσεις Ασύγχρονης Τηλεκπαίδευσης και Κατάρτισης.

Στόχος της είναι η παροχή υποδομών εκπαίδευσης και κατάρτισης ανεξάρτητα
από τους περιοριστικούς παράγοντες του χώρου και του χρόνου της κλασσικής
διδασκαλίας, καθώς και η εισαγωγή των νέων τεχνολογιών στην εκπαιδευτική
διαδικασία. Για την επίτευξη του παραπάνω στόχου η πλατφόρμα eClass υποστηρίζει
την ηλεκτρονική οργάνωση, αποθήκευση και παρουσίαση του εκπαιδευτικού υλικού,
που προσφέρεται σήμερα στους εκπαιδευόμενους με παραδοσιακά μέσα (βιβλία,
σημειώσεις, κ.λπ.), σε ψηφιακή μορφή άμεσα προσβάσιμη από το Διαδίκτυο.

Η Ομάδα Ασύγχρονης Τηλεκπαίδευσης του GUnet θα ήθελε να ευχαριστήσει όλους
τους χρήστες της πλατφόρμας που με τη συμμετοχή, τα σχόλια και τις παρατηρήσεις
τους, συμβάλλουν διαρκώς στη περαιτέρω ανάπτυξη και βελτίωσή της. Η υποστήριξή
τους μας δίνει τη δύναμη να συνεχίσουμε την προσπάθεια.

Παράλληλα θα θέλαμε να ευχαριστούμε θερμά όλους αυτούς που συνέβαλλαν στην ανάπτυξη
και βελτίωση της πλατφόρμας. (Περισσότερες πληροφορίες στο αρχείο CREDITS.txt)

Με τιμή,
Ομάδα Ασύγχρονης Τηλεκπαίδευσης GUnet
Οκτώβριος 2014

openeclass's People

Contributors

a123xxsp avatar afokou avatar axilleas avatar christosku avatar ckaltsidis avatar cmam avatar dnna avatar gfour avatar giannisdag avatar gitter-badger avatar grglaz avatar johnie-z avatar loukas1987 avatar papadakisemmanouel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openeclass's Issues

Δημιουργία topic σε forum

Σε αυτή την οθόνη ο χρήστης θα μπορεί να γράψει ένα νέο topic σε forum (ας μη βάλουμε replies προς το παρόν)

πιθανό πρόβλημα στο Δημιουργία report αποτελεσμάτων (3 άτομα) #69

Επειδή ασχολούμαστε τώρα με issue 70, το οποίο κάνουμε χρησιμοποιώντας σαν βάση τον κώδικα για το issue 69, θεωρώ ότι ενδεχομένως να υπάρχει ένα πρόβλημα στο issue 69. Συγκεκριμένα, στην γραμμη 80 του work_result_rpt
function get_assignment_submit_details($sid) {
return Database::get()->querySingle("SELECT * FROM assignment_submit WHERE id = ?d",$sid);
}
τραβάει το assignment_submit_details με βάση τον κωδικό του assignment μόνο, ενώ θα έπρεπε να ελέγχει και το uid. Αν υποβληθούν παραπάνω από μία submits θα υπάρχει προβλημα

GET /notifications

Αυτός ο πόρος θα επιστρέφει τις ανακοινώσεις στα ίδια πλαίσια με το GET /announcements, αλλά επιπρόσθετα θα εμφανίζει και αναρτήσεις εγγράφων, ασκήσεων και εργασιών.

GET /courses/:cid/forums/:fid/topics

Φέρνει τα posts που ανήκουν στην περιοχή συζητήσεων με id :did που ανήκει στο μάθημα :cid

GET /courses/:cid/documents

Αυτός ο πόρος θα αφορά τα έγγραφα που έχουν αναρτηθεί σ ένα μάθημα (παρουσιάσεις, σημειώσεις κτλ.). Θα υποστηρίζει μόνο μέθοδο GET. Επιπλέον θα επιτρέπει το "κατέβασμα" ενός εγγράφου μέσα από URL του τύπου /courses/:cid/documents/:did

GET /announcements

Αυτός ο πορος θα αφορά τις ανακοινώσεις από όλα τα μαθήματα στα οποία είναι εγγεγραμμένος ο φοιτητής (θα κάνει δηλαδή aggregation). Θα υποστηρίζει μόνο μέθοδο GET.

Δυνατότητα χρήσης άλλων εναλλακτικών υπηρεσίων αντί του hackerearth (2 άτομα)

Ο κώδικας που αναπτύχθηκε για τον κριτή είναι άμεσα συνδεδμένος με τη χρήση της υπηρεσίας hackerearth για το compilation/execution. Αυτό θα πρέπει να αλλάξει και ο κώδικας που αφορά το συγκεκριμένο μέρος να γίνει modular ώστε να μπορούν εύκολα να προσθαφαιρούνται άλλες αντίστοιχες υπηρεσίες.

Μια πιθανή αντίστοιχη υπηρεσία είναι το http://compileonline.com/

Installation error

Στο τέλος της εγκατάστασης εμφανιστηκε το παρακάτω sql error. Ολοκληρώθηκε κανονικά όμως. Το βάζω εδώ να το κοιτάξουμε σε περίπτωση που μας δημιουργήσει πρόβλημα.

In file C:\xampp\htdocs\openeclass\install\install_db.php on line 684
Error: Unable to execute statement with error: "You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the right syntax to
use near ' `attempt_status` tinyint(4) NOT NULL DEFAULT 1, ' at line 9" (SQLSTATE=1064 ERROR=42000)
[Statement='CREATE TABLE IF NOT EXISTS `exercise_user_record` ( `eurid` INT(11) NOT NULL AUTO_INCREMENT
PRIMARY KEY, `eid` INT(11) NOT NULL DEFAULT 0, `uid` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT 0,
`record_start_date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00', `record_end_date` DATETIME DEFAULT NULL,
`total_score` INT(11) NOT NULL DEFAULT 0, `total_weighting` INT(11) DEFAULT 0, `attempt` INT(11) NOT NULL DEFAULT 0),
`attempt_status` tinyint(4) NOT NULL DEFAULT 1, `secs_remaining` INT(11) NOT NULL DEFAULT '0')
DEFAULT CHARACTER SET=utf8' Elapsed=0.00097599999999998] 

GET /courses/:cid/forums

Φέρνει τις περιοχές συζητήσεων που ανήκουν στο μάθημα :cid

Όταν υποβάλεται μια εργασία με αυτόματο κριτή δε θα πρέπει να εμφανίζονται δυο flash messages (1 άτομο)

Όταν μια εργασία διορθώνεται με τη βοήθεια αυτόματου κριτή, εμφανίζονται δύο flash messages ως εξής (και όπως φαίνεται αναλυτικότερα στο συννημένο screenshot):

  1. H βαθμολογία σας κατοχυρώθηκε με επιτυχία
  2. Το ανέβασμα της εργασίας σας ολοκληρώθηκε με επιτυχία !

Αυτά θα πρέπει να συγχωνευτούν σε ένα, ιδανικά με διαφορετικό κείμενο όταν γίνεται αυτόματη διόρθωση μέσω κριτή.

doubleflashmessages

Δημιουργία online code editor (2 άτομα)

Απλός code editor με syntax highlighting και δυνατότητα ανεβάσματος εργασίας χωρίς να χρειάζεται τοπική έκδοση του αρχείου στον υπολογιστή του φοιτητή

"Τοίχος" ανακοινώσεων

Η πρώτη σελίδα που θα βλέπει ο χρήστης μόλις αυθεντικοποιηθεί. Θα έχει τις ανακοινώσεις από όλα τα μαθήματα που είναι εγγεγραμμένος. Στην αρχική έκδοση δεν θα υπάρχει διαχωρισμός αναγνωσμένων και μη-αναγνωσμέων. Η ανακοίνωση μπορεί να περιέχει και link προς το μάθημα (θα το δούμε στη φάση design με τους εκπαιδευόμενους).

Λίστα posts ενός forum

Αυτή η οθόνη θα εμφανίζει τα posts ενός forum (που ανήκει σε κάποιο μάθημα)

Λίστα εγγράφων

Εμφανίζει στον χρήστη τα έγγραφα που έχουν αναρτηθεί σε ένα μάθημα χρησιμοποιώντας τον πόρο που δημιούργησε η ομάδα server. Θα υποστηρίζει τη δυνατότητα εμφάνισης κάποιων τύπων εγγράφων (πχ. pdf) απευθείας μέσα από την εφαρμογή στον κατάλληλο viewer.

Δημιουργία σελίδας κατατάξεων (3 άτομα)

Ο καθηγητής θα πρέπει να έχει την επιλογή να δημιουργήσει ένα report κατατάξεων για όλους τους φοιτητές που υπέβαλαν εργασία. Το report θα έχει μια μορφή αντίστοιχη με την παρακάτω και θα ανεβαίνει αυτόματα στα έγγραφα του μαθήματος.
summary_report

Προσθήκη κατάταξης, βάρους και τελεστή στο report αποτελεσμάτων (1 άτομο)

Δεδομένου ότι τα σχετικά features έχουν τελειώσει, θα ήταν καλό το report αποτελεσμάτων να περιλαμβάνει όλες τις σχετικές πληροφορίες.

Σχετικά issues:
#67
#70 (αν είναι δύσκολο μπορεί να φύγει εντελώς το πεδίο από το report αποτελεσμάτων)
#75

Προσθήκη weight ανά σενάριο (2 άτομα)

Η βαθμολογία αυτή τη στιγμή βγαίνει βάσει των σεναρίων που πέρασαν/τον συνολικό αριθμό σεναρίων. Για να είναι πιο customizable θα πρέπει κατά τη δημιουργία ενός σεναρίου να μπορεί να οριστεί ένα βάρος σε μια κλίμακα 1-10 και ο βαθμός να προκύπτει λαμβάνοντας υπόψη τα βάρη κάθε σεναρίου.

Clean up gitignore

@dnna

Οκ, πιστεύω να έκανα σωστά τη μετατροπή :p
Επίσης έκανα sync με upstream. Το θέμα είναι ότι αν δουλέψουν την επομενη φορα από το master θα εχουν εξαφανιστει τα μαθηματα, καθως ο φακελος courses σβήστηκε.

Αυτό είναι το commit, ελπίζω να μην έχει σβηστεί κάτι άλλο. Το student_view.php δεν ξερω πως δημιουργηθηκε, δεν το εχουν ουτε στο .hgignore.

POST /announcements/:aid/read

Αυτό το call θα μαρκάρει ένα announcement ώς read. Αυτό θα γίνεται μέσω ενός νέου πίνακα announcements_users όπου θα κρατάμε announcement id (ann_id), user_id και timestamp του πότε διαβάστηκε.

Το GET announcements θα τροποποιηθεί κατάλληλα ώστε να αξιοποιεί αυτό τον πίνακα και να επιστρέφει ένα attribute του αν διαβάστηκε ή όχι. (δεν είναι μέρους αυτού του task)

GET /checknet

Ο Απόστολος ζήτησε να στέλνουμε ένα άσσο κάτι σαν ping για να ελέγχει εάν έχει net το κινητό.

GET /enrolled_courses

Αυτός ο πόρος θα αφορά τα μαθήματα στα οποία έχει εγγραφεί ο φοιτητής. Θα υποστηρίζει μεθόδους GET, POST, DELETE. Η εγγραφή/διαγραφή θα γίνεται μέσα από URL του τύπου /enrolled_courses/:cid

Δυνατότητα ορισμού τελεστών ελέγχου ανα σενάριο (2 άτομα)

Αυτή τη στιγμή το expected output που ορίζει ο καθηγητής πρέπει να είναι απολύτως ίδιο με αυτό που επιστρέφει το πρόγραμμα που ανέβασε ο φοιτητής αλλιώς το σενάριο θεωρούμε ότι απέτυχε.

Αυτό θα θέλαμε να γίνει πιο παραμετροποιήσιμο, επιτρέποντας στον καθηγητή να ορίζει και τον τελεστή ελέγχου όταν δημιουργεί ένα σενάριο (πχ. =, !=, >, >=, <, <=, contains, !contains, startsWith, endsWith, κτλ.). Στο UI αυτό μπορεί να αναπαρασταθεί ως ένα select element με όλους τους πιθανούς τελεστές ως επιλογές.

Για την υλοποίηση των ελέγχων προτείνεται η χρήστη της βιβλιοθήκης https://github.com/beberlei/assert που επιτρέπει τη δημιουργία πολλαπλών και σύνθετων assertions.

GET /courses

Αυτός ο πόρος θα αφορά τα μαθήματα που έχουν καταχωρηθεί στο openclass. Θα υποστηρίζει μεθόδους GET. Αυτός ο πόρος δεν απαιτεί αυθεντικοποίηση (όπως και στο κανονικό openclass).

Προσθήκη εργαλείου αυτοαξιολόγησης (3 άτομα)

Το συγκεκριμένο θα αφορά ένα νέο αυτόνομο εργαλείο ανεξάρτητο από τον κριτή (αν και θα μοιράζεται κώδικα). Μέσα από το εργαλείο κάθε φοιτητής θα μπορεί να δημιουργεί “Σενάρια Αυτοαξιολόγησης” (ΣΑ). Κάθε ΣΑ περιέχει σενάρια με input και expected output αντίστοιχα με τον τρόπο που τα ορίζει ο καθηγητής κατά τη δημιουργία εργασίας.

Στη συνέχεια θα μπορεί να ανεβάζει αρχεία σε ένα ΣΑ και να λαμβάνει ένα αντίστοιχο report με αυτό των εργασιών. Η ιδέα είναι το εργαλείο να διδάσκει τον φοιτητή πως μπορεί να δοκιμάσει τον κώδικα του και τι θα πρέπει να ελέγχει για να καλύψει τα διάφορα ενδεχόμενα edge-cases.

GET /login/status

Αυτό το call θα δέχεται το access_token και θα επιστρέφει απλά true αν ο χρήστης είναι logged-in ή EXPIRED αν το access_token έχει λήξει.

Λίστα μαθημάτων

Θα επιτρέπει στον χρήστη να δει τα διαθέσιμα μαθήματα, να φιλτράρει με βάση αυτά που είναι εγγεγγραμμένος και αν η πολιτική των μαθημάτων το επιτρέπει να εγγραφεί και να διαγραφεί από μαθήματα.

  • Όταν ο φοιτητής επιλέξει ένα μάθημα, σκέφτομαι να μπορεί να δει τις ανακοινώσεις και τα έγγραφα αυτού του μαθήματος.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.