summaryrefslogtreecommitdiff
path: root/js/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/index.js')
-rw-r--r--js/index.js112
1 files changed, 56 insertions, 56 deletions
diff --git a/js/index.js b/js/index.js
index fcc83f8..f1f4c40 100644
--- a/js/index.js
+++ b/js/index.js
@@ -105,9 +105,9 @@ document.addEventListener('deviceready', function(){
$('#lnkdisclaimer').click();
}, 2000);
}else{
- fillform();
+ fillForm();
load();
- trylogin();
+ tryLogin();
}
}, false);
@@ -117,13 +117,13 @@ $('#loginpopup').on('popupafteropen', function(){
});
$('#disclaimerpopup').on('popupafterclose', function(){
- fillform();
+ fillForm();
load();
- trylogin();
+ tryLogin();
});
/* füllt die Loginform mit gespeicherten Werten */
-function fillform(){
+function fillForm(){
var username = localStorage.getItem('username');
if(username != null && username.length !== 0){
@@ -197,14 +197,14 @@ function checkeKlasse(nutzerklasse, klasse){
/* konvertiert die extrahierten Strings in ein lesbares Format und filtert nach relevanten Vertretungen */
function parseVertretungen(str, username){
- var vertretungen_re = new RegExp('(\\w+)\\s+(\\d(?:\\s+-\\s+\\d)?)\\s+((?:x\\s+)?)(\\+|\\w+|---)\\s+(\\w+|---)\\s+(\\w+|---)\\s+(.*?)\\s+(\\w+)(?:\\s+)?(.*?)');
+ var vertretungenRe = new RegExp('(\\w+)\\s+(\\d(?:\\s+-\\s+\\d)?)\\s+((?:x\\s+)?)(\\+|\\w+|---)\\s+(\\w+|---)\\s+(\\w+|---)\\s+(.*?)\\s+(\\w+)(?:\\s+)?(.*?)');
var res;
var vertretungen = [];
var nutzerklasse = username.match(/(\w+)_.*/)[1].toUpperCase();
str.split('\n').forEach(function(vertretungsstr){
- res = vertretungsstr.match(vertretungen_re)
+ res = vertretungsstr.match(vertretungenRe)
if(res !== null){
var klasse = res[1];
@@ -316,24 +316,24 @@ function renderPage($div, pdf, pageNumber, callback){
page.render(renderContext).promise.then(function(pdf){
page.getTextContent().then(function(textContent){ // Text extrahieren
- var page_text = "";
- var last_block = null;
+ var pageText = "";
+ var lastBlock = null;
for(j = 0; j < textContent.length; j++){
var block = textContent[j];
- if(last_block != null && last_block.str[last_block.str.length - 1] != ' '){
- if(block.x < last_block.x){
- page_text += '\n';
- }else if(last_block.y != block.y && (last_block.str.match(/^(\s?[a-zA-Z])$|^(.+\s[a-zA-Z])$/) == null )){
- page_text += '\n';
+ if(lastBlock != null && lastBlock.str[lastBlock.str.length - 1] != ' '){
+ if(block.x < lastBlock.x){
+ pageText += '\n';
+ }else if(lastBlock.y != block.y && (lastBlock.str.match(/^(\s?[a-zA-Z])$|^(.+\s[a-zA-Z])$/) == null )){
+ pageText += '\n';
}
}
- page_text += block.str;
- last_block = block;
+ pageText += block.str;
+ lastBlock = block;
}
- var username = getuserdata();
+ var username = getUserData();
if(username == null){
return;
@@ -341,7 +341,7 @@ function renderPage($div, pdf, pageNumber, callback){
username = username[0];
}
- var vertretungen = parseVertretungen(page_text, username);
+ var vertretungen = parseVertretungen(pageText, username);
if(vertretungen.length > 0){
var vdate = moment($div.data('date'), 'YYYY-MM-DD').startOf('second');
@@ -360,7 +360,7 @@ function renderPage($div, pdf, pageNumber, callback){
});
}
-function render_pdf(url, divstr){
+function renderPdf(url, divstr){
console.log('Rendere PDF: ' + url + ' (' + divstr + ')');
PDFJS.getDocument(url).then(function(pdf){
@@ -386,7 +386,7 @@ function fail(text){
}
/* entfernt das Logintab */
-function removelogintab(){
+function removeLoginTab(){
$('#vplannavbar').find('*').andSelf().each(function(){
$(this).removeClass(function(i, cn){
var matches = cn.match(/ui-[\w\-]+/g) || [];
@@ -415,13 +415,13 @@ function replaceUmlauts(umlautstr){
}
/* fügt die lokale URL des Plans ein und ruft die Seite zum Rendering auf */
-function addplanattr(fileEntry, wasdownloaded){
+function addPlanAttr(fileEntry, wasdownloaded){
var sPath = fileEntry.toURL();
var name = fileEntry.name;
console.log('Dateiname: ' + name);
- var fname_re = new RegExp('.*?(\\d{4}-\\d{2}-\\d{2})(.*?)\\.pdf');
- var results = name.match(fname_re);
+ var fnameRe = new RegExp('.*?(\\d{4}-\\d{2}-\\d{2})(.*?)\\.pdf');
+ var results = name.match(fnameRe);
var vdate = moment(results[1], 'YYYY-MM-DD').startOf('day');
if(results[2] !== null){
@@ -455,15 +455,15 @@ function addplanattr(fileEntry, wasdownloaded){
$('#' + name).data('date', results[1]);
if($('#login').length && wasdownloaded){
- removelogintab();
+ removeLoginTab();
}
}
- render_pdf(sPath, name);
+ renderPdf(sPath, name);
}
/* lädt ein PDF anhand eines Links herunter, benötigt ID zur Sortierung */
-function download_pdf(link){
+function downloadPdf(link){
var filename = link.substring(link.lastIndexOf("/") + 1);
window.requestFileSystem(
@@ -477,7 +477,7 @@ function download_pdf(link){
console.log('Datei schon heruntergeladen');
if($('#login').length){
- removelogintab();
+ removeLoginTab();
}
},
function(err){
@@ -491,7 +491,7 @@ function download_pdf(link){
fileEntry.toURL(),
function(theFile){
console.log('Download fertig: ' + theFile.toURL());
- addplanattr(theFile, true);
+ addPlanAttr(theFile, true);
}, fail);
}, fail);
});
@@ -500,21 +500,21 @@ function download_pdf(link){
}
/* sucht den Downloadlink eines Plans mithilfe eines Links aus der Kursübersicht */
-function get_plan(link){
+function getPlan(link){
var request = $.ajax({
url: link
});
- request.done(function gotplan(resulthtml){
- var pdf_re = new RegExp('(http://***REMOVED***\\.de/moodle/pluginfile\\.php/\\d+/mod_resource/content/\\d+/.*?\\.pdf)');
- var pdflink = pdf_re.exec(resulthtml)[1];
+ request.done(function gotPlan(resultHtml){
+ var pdfRe = new RegExp('(http://***REMOVED***\\.de/moodle/pluginfile\\.php/\\d+/mod_resource/content/\\d+/.*?\\.pdf)');
+ var pdflink = pdfRe.exec(resultHtml)[1];
if(pdflink == null){
return 0;
}
console.log('Plan gefunden: ' + pdflink);
- download_pdf(pdflink);
+ downloadPdf(pdflink);
return 1;
});
@@ -524,18 +524,18 @@ function get_plan(link){
/* holt die Kursübersicht - bei Verbindungsfehlern wird onfail aufgerufen */
-function get_overview(link, onfail){
+function getOverview(link, onfail){
var request = $.ajax({
url: link
});
console.log('Hole Übersicht');
- request.done(function gotoverview(resulthtml){
- /* ruft get_plan für jeden Link in der Kursübersicht auf */
- var plans_re = new RegExp('window\\.open\\(&#039;(http://***REMOVED***\\.de/moodle/mod/resource/view\\.php\\?id=\\d+)&amp;redirect=1&#039;\\)', 'g');
+ request.done(function gotOverview(resultHtml){
+ /* ruft getPlan für jeden Link in der Kursübersicht auf */
+ var plansRe = new RegExp('window\\.open\\(&#039;(http://***REMOVED***\\.de/moodle/mod/resource/view\\.php\\?id=\\d+)&amp;redirect=1&#039;\\)', 'g');
- var resultarr = resulthtml.match(plans_re);
+ var resultarr = resultHtml.match(plansRe);
if(resultarr == null){
$('#error_passwd').show('fast');
@@ -545,9 +545,9 @@ function get_overview(link, onfail){
var resultl = resultarr.length;
- while((link = plans_re.exec(resulthtml)) !== null){
+ while((link = plansRe.exec(resultHtml)) !== null){
console.log('suche Plan ' + link[1]);
- get_plan(link[1]);
+ getPlan(link[1]);
}
console.log('Übersichts-Request erfolgreich');
@@ -558,9 +558,9 @@ function get_overview(link, 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];
+function loggedIn(resultHtml){
+ var vertretungsRe = new RegExp('title="Vertretungsplan" href="(http://***REMOVED***\\.de/moodle/course/view\\.php\\?id=\\d+)"');
+ var link = vertretungsRe.exec(resultHtml)[1];
if(link == null){
return 0;
@@ -568,13 +568,13 @@ function loggedin(resulthtml){
localStorage.setItem('overviewlink', link);
console.log('Eingeloggt');
- get_overview(link, fail);
+ getOverview(link, fail);
return 1;
}
/* sendet einen HTTPost-Request mit Logindaten */
-function sendlogin(username, password){
+function sendLogin(username, password){
var params = 'username=' + username + '&password=' + password;
$('#error_noconn').hide('fast');
@@ -588,13 +588,13 @@ function sendlogin(username, password){
console.log('Logge ein');
- request.done(loggedin);
+ request.done(loggedIn);
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(){
+function getUserData(){
var username = encodeURIComponent($('#username').val());
if(username == ''){
@@ -625,10 +625,10 @@ function getuserdata(){
/* loggt ein oder zeigt Loginform */
function login(){
$.mobile.loading('show', {theme: 'a'});
- userdata = getuserdata();
+ userdata = getUserData();
if(userdata){
- sendlogin(userdata[0], userdata[1]);
+ sendLogin(userdata[0], userdata[1]);
$('#loginpopup').popup('close');
return 1;
}else{
@@ -640,7 +640,7 @@ function login(){
/* 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(){
+function tryLogin(){
var link = localStorage.getItem('overviewlink');
$('#loginpopup').popup('close');
@@ -649,21 +649,21 @@ function trylogin(){
console.log('Teste Login');
console.log(link);
- get_overview(link, login);
+ getOverview(link, login);
}else{
login();
}
}
/* gibt aktuelle Pläne aus entries zurück */
-function getactual(entries){
- var fname_re = new RegExp('.*?(\\d{4}-\\d{2}-\\d{2}).*?\\.pdf');
+function getActual(entries){
+ var fnameRe = new RegExp('.*?(\\d{4}-\\d{2}-\\d{2}).*?\\.pdf');
var today = moment().startOf('day');
var actual = [];
entries.forEach(function(entry){
console.log(entry.name);
- var results = entry.name.match(fname_re);
+ var results = entry.name.match(fnameRe);
var fdate = moment(results[1], 'YYYY-MM-DD');
if(moment().isBefore(fdate)){
@@ -686,14 +686,14 @@ function load(){
dirReader.readEntries(
function(entries){
- var actual = getactual(entries);
+ var actual = getActual(entries);
console.log('Im Speicher: ' + actual.length + ' Pläne');
if(actual.length > 0){
$('#noplans').hide('slow');
for(j = 0; j < actual.length; j++){
- addplanattr(actual[j], false);
+ addPlanAttr(actual[j], false);
}
}else{
$('#noplans').show('fast');