This commit is contained in:
Markus 2019-12-13 11:58:21 +01:00
commit 498e273ce6
16 changed files with 200 additions and 200 deletions

0
.gitignore vendored Normal file → Executable file
View File

0
LICENSE Normal file → Executable file
View File

0
README.md Normal file → Executable file
View File

0
startpage/README.md Normal file → Executable file
View File

View File

@ -1,200 +1,200 @@
/* /*
* *
* @licstart The following is the entire license notice for the * @licstart The following is the entire license notice for the
* JavaScript code in this page. * JavaScript code in this page.
* *
* Copyright (C) 2018 Jaume Fuster i Claris * Copyright (C) 2018 Jaume Fuster i Claris
* *
* *
* The JavaScript code in this page is free software: you can * The JavaScript code in this page is free software: you can
* redistribute it and/or modify it under the terms of the GNU * redistribute it and/or modify it under the terms of the GNU
* General Public License (GNU GPL) as published by the Free Software * General Public License (GNU GPL) as published by the Free Software
* Foundation, either version 3 of the License, or (at your option) * Foundation, either version 3 of the License, or (at your option)
* any later version. The code is distributed WITHOUT ANY WARRANTY; * any later version. The code is distributed WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS * without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU GPL for more details. * FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
* *
* As additional permission under GNU GPL version 3 section 7, you * As additional permission under GNU GPL version 3 section 7, you
* may distribute non-source (e.g., minimized or compacted) forms of * may distribute non-source (e.g., minimized or compacted) forms of
* that code without the copy of the GNU GPL normally required by * that code without the copy of the GNU GPL normally required by
* section 4, provided you include this license notice and a URL * section 4, provided you include this license notice and a URL
* through which recipients can access the Corresponding Source. * through which recipients can access the Corresponding Source.
* *
* @licend The above is the entire license notice * @licend The above is the entire license notice
* for the JavaScript code in this page. * for the JavaScript code in this page.
* *
*/ */
// "Thus, programs must be written for people to read, and only incidentally for machines to execute." // "Thus, programs must be written for people to read, and only incidentally for machines to execute."
// TODO: Commenting. // TODO: Commenting.
// ---------- CONFIGURATION ---------- // ---------- CONFIGURATION ----------
// div.innerHTML : {a.innerHTML : a.href} // div.innerHTML : {a.innerHTML : a.href}
var sites = { var sites = {
"E-Mail": { "E-Mail": {
"GMail" : "https://mail.google.com/mail/u/0/", "GMail" : "https://mail.google.com/mail/u/0/",
"Posteo" : "https://www.posteo.de", "Posteo" : "https://www.posteo.de",
"realcore" : "https://outlook.office365.com/mail/inbox", "realcore" : "https://outlook.office365.com/mail/inbox",
"gCal" : "https://calendar.google.com/calendar/r", "gCal" : "https://calendar.google.com/calendar/r",
"Keep" : "https://keep.google.com/u/0/" "Keep" : "https://keep.google.com/u/0/"
}, },
"Work": { "Work": {
"gitlab" : "https://gitlab.com/nutmountain/landgard?sort=updated_desc", "gitlab" : "https://gitlab.com/nutmountain/landgard?sort=updated_desc",
"enfore swagger" : "https://app.swaggerhub.com/organizations/enfore.com", "enfore swagger" : "https://app.swaggerhub.com/organizations/enfore.com",
"apex" : "https://18.185.159.119:8443/ords/f?p=123:LOGIN_DESKTOP:15410784571178:::::", "apex" : "https://18.185.159.119:8443/ords/f?p=123:LOGIN_DESKTOP:15410784571178:::::",
"aws" : "https://us-east-1.signin.aws.amazon.com/oauth?SignatureVersion=4&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAJMOATPLHVSJ563XQ&X-Amz-Date=2019-10-15T15%3A01%3A16.654Z&X-Amz-Signature=5cd9c455e673d043421f5bc47b87c61a438cd5b85d808f85e6b3304f0ef6c2de&X-Amz-SignedHeaders=host&client_id=arn%3Aaws%3Aiam%3A%3A015428540659%3Auser%2Fhomepage&redirect_uri=https%3A%2F%2Fconsole.aws.amazon.com%2Fconsole%2Fhome%3Fstate%3DhashArgs%2523%26isauthcode%3Dtrue&response_type=code&state=hashArgs%23", "aws" : "https://us-east-1.signin.aws.amazon.com/oauth?SignatureVersion=4&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAJMOATPLHVSJ563XQ&X-Amz-Date=2019-10-15T15%3A01%3A16.654Z&X-Amz-Signature=5cd9c455e673d043421f5bc47b87c61a438cd5b85d808f85e6b3304f0ef6c2de&X-Amz-SignedHeaders=host&client_id=arn%3Aaws%3Aiam%3A%3A015428540659%3Auser%2Fhomepage&redirect_uri=https%3A%2F%2Fconsole.aws.amazon.com%2Fconsole%2Fhome%3Fstate%3DhashArgs%2523%26isauthcode%3Dtrue&response_type=code&state=hashArgs%23",
"rc-intranet" : "https://realcorevv.sharepoint.com/sites/RC-Intranet/", "rc-intranet" : "https://realcorevv.sharepoint.com/sites/RC-Intranet/",
"food" : "https://www.rge-essen.de/dienstleistungen/gastronomie/speiseplaene.html" "food" : "https://www.rge-essen.de/dienstleistungen/gastronomie/speiseplaene.html"
}, },
"Social": { "Social": {
"WhatsApp" : "https://web.whatsapp.com", "WhatsApp" : "https://web.whatsapp.com",
"Telegram" : "https://web.telegram.com", "Telegram" : "https://web.telegram.com",
"discord" : "https://discordapp.com/channels/@me", "discord" : "https://discordapp.com/channels/@me",
"YouTube" : "https://www.youtube.com/", "YouTube" : "https://www.youtube.com/",
"tinder" : "https://tinder.com" "tinder" : "https://tinder.com"
}, },
/* "Games": { // To find the game ID check the url in the store page or the community page /* "Games": { // To find the game ID check the url in the store page or the community page
"CS:GO" : "steam://run/730", "CS:GO" : "steam://run/730",
"Besiege" : "steam://run/346010", "Besiege" : "steam://run/346010",
"Rust" : "steam://run/252490", "Rust" : "steam://run/252490",
"Insurgency" : "steam://run/222880", "Insurgency" : "steam://run/222880",
"West of Loathing" : "steam://run/597220", "West of Loathing" : "steam://run/597220",
"POSTAL 2" : "steam://run/223470" "POSTAL 2" : "steam://run/223470"
},*/ },*/
"News": { "News": {
"worldnews" : "https://reddit.com/r/worldnews", "worldnews" : "https://reddit.com/r/worldnews",
"golem" : "https://www.golem.de/", "golem" : "https://www.golem.de/",
"heise" : "https://www.heise.de/", "heise" : "https://www.heise.de/",
"WAZ" : "http://www.waz.de", "WAZ" : "http://www.waz.de",
"FAZ" : "http://www.faz.net", "FAZ" : "http://www.faz.net",
"HackerNews" : "https://news.ycombinator.com/" "HackerNews" : "https://news.ycombinator.com/"
}, },
"Programming": { "Programming": {
"/r/programming" : "https://reddit.com/r/programming", "/r/programming" : "https://reddit.com/r/programming",
"Github" : "https://github.com/", "Github" : "https://github.com/",
"gisthub" : "https://gist.github.com/", "gisthub" : "https://gist.github.com/",
"regex101" : "https://regex101.com/", "regex101" : "https://regex101.com/",
"extensions" : "http://extensionmethod.net/csharp" "extensions" : "http://extensionmethod.net/csharp"
}, },
"reddit": { "reddit": {
"linux" : "https://reddit.com/r/linux", "linux" : "https://reddit.com/r/linux",
"thinkpad" : "https://reddit.com/r/thinkpad", "thinkpad" : "https://reddit.com/r/thinkpad",
"unixporn" : "https://reddit.com/r/unixporn", "unixporn" : "https://reddit.com/r/unixporn",
"games" : "https://reddit.com/r/games", "games" : "https://reddit.com/r/games",
"switchhaxing" : "https://reddit.com/r/switchhaxing", "switchhaxing" : "https://reddit.com/r/switchhaxing",
"switchhacks" : "https://reddit.com/r/switchhacks", "switchhacks" : "https://reddit.com/r/switchhacks",
}, },
"brudi": { "brudi": {
"heimdall" : "http://brudi.xyz", "heimdall" : "http://brudi.xyz",
"gitea" : "http://gitea.brudi.xyz", "gitea" : "http://gitea.brudi.xyz",
"etherpad" : "http://pad.brudi.xyz", "etherpad" : "http://pad.brudi.xyz",
"netdata" : "http://netdata.brudi.xyz", "netdata" : "http://netdata.brudi.xyz",
"organizr" : "http://org.brudi.xyz", "organizr" : "http://org.brudi.xyz",
"pics" : "http://pics.brudi.xyz" "pics" : "http://pics.brudi.xyz"
} }
}; };
var search = { var search = {
"default": "https://google.com/search", "default": "https://google.com/search",
"d": "https://duckduckgo.com/", "d": "https://duckduckgo.com/",
"s": "https://startpage.com/do/search" "s": "https://startpage.com/do/search"
}; };
var pivotmatch = 0; var pivotmatch = 0;
var totallinks = 0; var totallinks = 0;
var prevregexp = ""; var prevregexp = "";
// ---------- BUILD PAGE ---------- // ---------- BUILD PAGE ----------
function matchLinks(regex = prevregexp) { function matchLinks(regex = prevregexp) {
totallinks = 0; totallinks = 0;
pivotmatch = regex == prevregexp ? pivotmatch : 0; pivotmatch = regex == prevregexp ? pivotmatch : 0;
prevregexp = regex; prevregexp = regex;
pivotbuffer = pivotmatch; pivotbuffer = pivotmatch;
p = document.getElementById("links"); p = document.getElementById("links");
while (p.firstChild) { while (p.firstChild) {
p.removeChild(p.firstChild); p.removeChild(p.firstChild);
} }
if (regex.charAt(1) == ' ' && search.hasOwnProperty(regex.charAt(0))) { if (regex.charAt(1) == ' ' && search.hasOwnProperty(regex.charAt(0))) {
document.getElementById("action").action = search[regex.charAt(0)]; document.getElementById("action").action = search[regex.charAt(0)];
document.getElementById("action").children[0].name = "q"; document.getElementById("action").children[0].name = "q";
} else { } else {
match = new RegExp(regex ? regex : ".", "i"); match = new RegExp(regex ? regex : ".", "i");
gmatches = false; // kinda ugly, rethink gmatches = false; // kinda ugly, rethink
for (i = 0; i < Object.keys(sites).length; i++) { for (i = 0; i < Object.keys(sites).length; i++) {
matches = false; matches = false;
sn = Object.keys(sites)[i]; sn = Object.keys(sites)[i];
section = document.createElement("div"); section = document.createElement("div");
section.id = sn; section.id = sn;
section.innerHTML = sn; section.innerHTML = sn;
section.className = "section"; section.className = "section";
inner = document.createElement("div"); inner = document.createElement("div");
for (l = 0; l < Object.keys(sites[sn]).length; l++) { for (l = 0; l < Object.keys(sites[sn]).length; l++) {
ln = Object.keys(sites[sn])[l]; ln = Object.keys(sites[sn])[l];
if (match.test(ln)) { if (match.test(ln)) {
link = document.createElement("a"); link = document.createElement("a");
link.href = sites[sn][ln]; link.href = sites[sn][ln];
link.innerHTML = ln; link.innerHTML = ln;
if (!pivotbuffer++ && regex != "") { if (!pivotbuffer++ && regex != "") {
link.className = "selected"; link.className = "selected";
document.getElementById("action").action = sites[sn][ln]; document.getElementById("action").action = sites[sn][ln];
document.getElementById("action").children[0].removeAttribute("name"); document.getElementById("action").children[0].removeAttribute("name");
} }
inner.appendChild(link); inner.appendChild(link);
matches = true; matches = true;
gmatches = true; gmatches = true;
totallinks++; totallinks++;
} }
} }
section.appendChild(inner); section.appendChild(inner);
matches ? p.appendChild(section) : false; matches ? p.appendChild(section) : false;
} }
if (!gmatches || regex == "") { if (!gmatches || regex == "") {
document.getElementById("action").action = search["default"]; document.getElementById("action").action = search["default"];
document.getElementById("action").children[0].name = "q"; document.getElementById("action").children[0].name = "q";
} }
} }
document.getElementById("main").style.height = document.getElementById("main").children[0].offsetHeight+"px"; document.getElementById("main").style.height = document.getElementById("main").children[0].offsetHeight+"px";
} }
document.onkeydown = function(e) { document.onkeydown = function(e) {
switch (e.keyCode) { switch (e.keyCode) {
case 38: case 38:
pivotmatch = pivotmatch >= 0 ? 0 : pivotmatch + 1; pivotmatch = pivotmatch >= 0 ? 0 : pivotmatch + 1;
matchLinks(); matchLinks();
break; break;
case 40: case 40:
pivotmatch = pivotmatch <= -totallinks + 1 ? -totallinks + 1 : pivotmatch - 1; pivotmatch = pivotmatch <= -totallinks + 1 ? -totallinks + 1 : pivotmatch - 1;
matchLinks(); matchLinks();
break; break;
default: default:
break; break;
} }
document.getElementById("action").children[0].focus(); document.getElementById("action").children[0].focus();
} }
document.getElementById("action").children[0].onkeypress = function(e) { document.getElementById("action").children[0].onkeypress = function(e) {
if (e.key == "ArrowDown" || e.key == "ArrowUp") { if (e.key == "ArrowDown" || e.key == "ArrowUp") {
return false; return false;
} }
} }
function displayClock() { function displayClock() {
now = new Date(); now = new Date();
clock = (now.getHours() < 10 ? "0"+now.getHours() : now.getHours())+":" clock = (now.getHours() < 10 ? "0"+now.getHours() : now.getHours())+":"
+(now.getMinutes() < 10 ? "0"+now.getMinutes() : now.getMinutes())+":" +(now.getMinutes() < 10 ? "0"+now.getMinutes() : now.getMinutes())+":"
+(now.getSeconds() < 10 ? "0"+now.getSeconds() : now.getSeconds()); +(now.getSeconds() < 10 ? "0"+now.getSeconds() : now.getSeconds());
document.getElementById("clock").innerHTML = clock; document.getElementById("clock").innerHTML = clock;
} }
window.onload = matchLinks(); window.onload = matchLinks();
document.getElementById("action").onsubmit = function() { document.getElementById("action").onsubmit = function() {
svalue = this.children[0].value; svalue = this.children[0].value;
if (svalue.charAt(1) == ' ' && search.hasOwnProperty(svalue.charAt(0))) { if (svalue.charAt(1) == ' ' && search.hasOwnProperty(svalue.charAt(0))) {
this.children[0].value = svalue.substring(2); this.children[0].value = svalue.substring(2);
} }
return true; return true;
} }
displayClock(); displayClock();
setInterval(displayClock, 1000); setInterval(displayClock, 1000);

0
startpage/favicon.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

0
startpage/font/Montserrat-Regular.otf Normal file → Executable file
View File

0
startpage/font/SIL Open Font License.txt Normal file → Executable file
View File

0
startpage/index.html Normal file → Executable file
View File

0
startpage/index_old.html Normal file → Executable file
View File

0
startpage/mongoose-free-6.9.exe Normal file → Executable file
View File

0
startpage/mongoose.conf Normal file → Executable file
View File

0
startpage/style.css Normal file → Executable file
View File

0
startpage/style_old.css Normal file → Executable file
View File

0
startpage/styles.css Normal file → Executable file
View File

0
vim/.vimrc Normal file → Executable file
View File