Πολύ σημαντικές αλλαγές γίνανε στο τελευταίο update, 0.13.0, στην αρχιτεκτονική του κώδικα.
Συγκεκριμένα έχει σπάσει ο κώδικας της javascript σε μικρότερα κομμάτια, για μεγαλύτερη ευελιξία κι ευκολία στις αλλαγές. Ταυτόχρονα όλες οι κλήσεις ajax γίνονται πλέον παντού με την $.ajax (jquery) και όχι με την $.get που γίνονταν σε κάποια παλιότερα κομμάτια του κώδικα.
Μέχρι τώρα αυτές οι κλήσεις ajax καλούσαν πολλά μικρά αρχεία php. Αυτό άλλαξε πλέον και στην θέση τους γίνεται routing και καλούνται οι αντίστοιχες μέθοδοι μιας κλάσης που περιέχει το σύνολο του κώδικα για τις ajax κλήσεις.
Για να γίνει το routing χρησιμοποιεί ένα αρχείο .htaccess. Υπάρχει περίπτωση να μην λειτουργεί στον server του χρήστη το htaccess. Αν συμβεί αυτό, η εφαρμογή θα του εμφανίσει μήνυμα λάθους με οδηγίες πως να ρυθμίσει τον server ώστε να λειτουργήσει.
Όλες οι αλλαγές που έχουν γίνει στην εφαρμογή.
Μετά το ανέβασμα της beta έκδοσης ήρθε και κάποιο feedback. Με βάση αυτό έχουν γίνει μερικές αλλαγές στον κώδικα και στην δομή του, όπως και διόρθωση σφαλμάτων. Οι αλλαγές αυτές μόλις ανέβηκαν στο update με αριθμό έκδοσης 0.12.0.
Προσοχή πρέπει να δοθεί στο ότι το αρχείο config.inc.php από τον φάκελο /src έχει μεταφερθεί στον φάκελο /src/config. Επειδή τα αρχεία της εφαρμογής περιέχουν το αρχείο config.inc.php.sample και όχι το κανονικό config.inc.php, πρέπει ο χρήστης να πάει να το μεταφέρει μόνος του στον συγκεκριμένο φάκελο.
Επίσης πλέον δεν χρειάζεται η γραμμή
define ('PROJECT_PATH','/OpenWebMediaPlayer/');
και μπορεί να την αφαιρέσει.
Αναλυτικά οι αλλαγές που γίνανε στο update.
Στο νέο update (0.10.0) που ανέβηκε, δίνεται μεγάλη έμφαση στους ελέγχους για τον συγχρονισμό των αρχείων και στο αν είναι έγκυρα τα directories που δίνει ο χρήστης και χρησιμοποιεί η εφαρμογή. Επίσης γίνεται καλύτερος έλεγχος απαιτούμενων εγκατεστημένων utilities, όπου χρειάζεται. Στόχος να γίνει ακόμη πιο απλή και να αφαιρεθούν όλα τα προβλήματα που μπορεί να έχει κάποιος στην εγκατάσταση της εφαρμογής.
Μεγάλη βελτίωση έχει γίνει στο σύστημα που εμφανίζει τα αποτελέσματα του συγχρονισμού ή οποιασδήποτε άλλης εργασίας που κάνει ο χρήστης στην οθόνη της συλλογής. Πλέον όλα εμφανίζονται σε ξεχωριστό παράθυρο, το οποίο μπορεί να ανοίξει ο χρήστης σε όποιο σημείο της εφαρμογής και να βρίσκεται. Δηλαδή ο χρήστης μπορεί να εκτελεί διάφορες εργασίες στην συλλογή και ταυτόχρονα να πάει σε άλλες οθόνες, χωρίς κανένα πρόβλημα και χωρίς να χάσει τα αποτελέσματα της εργασίας.
Ταυτόχρονα έχει αφαιρεθεί το κλασικό loading gif (που εμφανίζεται σε οποιαδήποτε εργασία έχει κάποια αναμονή), αλλά και η κλασική μπάρα προόδου, που εμφανίζονταν στο header. Και τα 2 έχουν αντικατασταθεί από μία νέα έμπνευση που πιστεύω είναι πολύ πιο ευχάριστη και βοηθητική. Για εργασίες απλής αναμονής εμφανίζει ένα παπαγαλάκι πάνω στο header που περπατάει. Όταν πρόκειται για εργασίες που εμφανίζουν και ποσοστό προόδου, εμφανίζεται και μια μπάρα πάνω από το παπαγαλάκι που περπατάει, μαζί με την εμφάνιση του ποσοστού.
Το παπαγαλάκι είναι μια δημιουργία της vktoons, που έφτιαξε τα frames κι εγώ στην συνέχεια τον κατάλληλο κώδικα σε HTML5.
Με το επόμενο update (0.11.0) η εφαρμογή θα μπει σε κατάσταση beta. Αυτό θα αφορά την προσθήκη δυνατότητας upload των αρχείων μέσα από το web interface.
Βίντεο με demo του animated parrot