diff options
| author | schneefux <schneefux+commit@schneefux.xyz> | 2014-04-13 11:54:14 +0200 |
|---|---|---|
| committer | schneefux <schneefux+commit@schneefux.xyz> | 2016-08-15 19:46:51 +0200 |
| commit | 904783a7dd10ce24d3deedce41730dc999833077 (patch) | |
| tree | 6cfd81f97018395c8b612cef83ded4eb4c9b195b /js/index.js | |
| parent | 2ca9a65bae4abb25d6d1089cba655596e0794c9f (diff) | |
| download | wvs-vplan-904783a7dd10ce24d3deedce41730dc999833077.tar.gz wvs-vplan-904783a7dd10ce24d3deedce41730dc999833077.zip | |
kommentiere
Diffstat (limited to 'js/index.js')
| -rw-r--r-- | js/index.js | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/js/index.js b/js/index.js index 7346265..a9b1a65 100644 --- a/js/index.js +++ b/js/index.js @@ -40,6 +40,7 @@ var page_html = '\n\ </div>\n\ '; +/* PDF Rendering */ function renderPage(div, pdf, pageNumber, callback){ pdf.getPage(pageNumber).then(function(page){ var scale = 2; @@ -84,6 +85,7 @@ function render_pdf(viewerstr){ }); } +/* wird bei Verbindungsfehlern oder anderen Fehlern aufgerufen */ function fail(text){ $('#loginform').removeClass('ui-disabled'); $('#loader').hide('slow'); @@ -91,6 +93,7 @@ function fail(text){ console.log('Fehler: ' + text.toString() + ' / ' + text.code); } +/* fügt die lokale URL des Plans ein und ruft die Seite zum Rendering auf */ function addplanattr(fileEntry, id){ var sPath = fileEntry.toURL(); @@ -102,6 +105,7 @@ function addplanattr(fileEntry, id){ } } +/* lädt ein PDF anhand eines Links herunter, benötigt ID zur Sortierung */ function download_pdf(link, id){ var filename = link.substring(link.lastIndexOf("/") + 1); @@ -135,6 +139,7 @@ function download_pdf(link, id){ }); } +/* sucht den Downloadlink eines Plans mithilfe eines Links aus der Kursübersicht */ function get_plan(link, id){ var request = $.ajax({ url: link @@ -157,9 +162,8 @@ function get_plan(link, id){ request.fail(fail); } +/* erstellt dynamisch die Seiten für die Vertretungspläne und aktiviert Wischgesten */ function prepare_html(number){ - // Pages für Vertretungsplände erstellen und pageshow-Events festlegen - for(j = 0; j < number; j++){ new_html = page_html.replace(/{ID}/g, j); @@ -183,6 +187,7 @@ function prepare_html(number){ } } +/* ruft get_plan für jeden Link in der Kursübersicht auf */ function gotoverview(resulthtml){ var plans_re = new RegExp('window\\.open\\('(http://***REMOVED***\\.de/moodle/mod/resource/view\\.php\\?id=\\d+)&redirect=1'\\)', 'g'); @@ -210,6 +215,7 @@ function gotoverview(resulthtml){ return 1; } +/* holt die Kursübersicht - bei Verbindungsfehlern wird onfail aufgerufen */ function get_overview(link, onfail){ var request = $.ajax({ url: link @@ -221,6 +227,7 @@ function get_overview(link, onfail){ request.fail(onfail); } +/* such den Link zur Übersicht von der Startseite aus */ function loggedin(resulthtml){ var vertretungs_re = new RegExp('title="Vertretungsplan" href="(http://***REMOVED***\\.de/moodle/course/view\\.php\\?id=\\d+)"'); var link = vertretungs_re.exec(resulthtml)[1]; @@ -236,6 +243,7 @@ function loggedin(resulthtml){ return 1; } +/* sendet einen HTTPost-Request mit Logindaten */ function sendlogin(username, password){ var params = 'username=' + username + '&password=' + password; @@ -257,6 +265,8 @@ function sendlogin(username, password){ request.fail(fail); } +/* lädt Benutzerdaten 1) aus den Userinterfaces oder 2) aus dem HTML5 Local Storage */ +/* oder 3) gibt null zurück */ function getuserdata(){ var username = encodeURIComponent($('#username').val()); @@ -282,6 +292,7 @@ function getuserdata(){ } } +/* loggt ein oder zeigt Loginform */ function login(){ userdata = getuserdata(); @@ -295,8 +306,9 @@ function login(){ } } -// prüfen, ob ein Login notwendig ist oder ob die Session noch gültig ist - +/* versucht ohne HTTPost die Übersicht zu holen */ +/* bei einem Fehlschlag wird in login() versucht, die Nutzerdaten zu laden */ +/* und wenn das schiefläuft, muss der Nutzer seine Daten selbst eingeben */ function trylogin(){ var link = window.localStorage.getItem('overviewlink'); @@ -313,6 +325,7 @@ function trylogin(){ } } +/* checkt, ob die Pläne in entries aktuell sind und gibt die Anzahl zurück */ function countactual(entries){ var fname_re = new RegExp('([^-]{4})-([^-]{2})-([^-]{2})(.*?)\.pdf'); // \d funktioniert nicht var actual = 0; @@ -333,6 +346,7 @@ function countactual(entries){ return actual; } +/* fügt die Attribute aktueller Pläne aus entries zu den Pages hinzu */ function addactual(entries){ var fname_re = new RegExp('([^-]{4})-([^-]{2})-([^-]{2})(.*?)\.pdf'); // \d funktioniert nicht var actual = 0; @@ -348,6 +362,7 @@ function addactual(entries){ } } +/* lädt Vertretungspläne aus dem Speicher [1) SD-Karte oder 2) dem internen Speicher] */ function load(){ window.requestFileSystem( LocalFileSystem.PERSISTENT, 0, |
