diff --git a/public/we_tasks/task05/5_1.html b/public/we_tasks/task05/5_1.html index 2927176ec70f2316a508be5ca4b534881e2af7cf..ad3571a4f26d83dae727db77d0ffea6547daee4f 100644 --- a/public/we_tasks/task05/5_1.html +++ b/public/we_tasks/task05/5_1.html @@ -6,7 +6,7 @@ <h1>Einkaufsliste!</h1> <label>Artikelname: </label> <input id="input" type="text"></input> - <button id="add">Hinzufügen!</button> + <button id="add">Hinzufügen!</button> <ul id="shoppingList"></ul> </body> @@ -17,7 +17,7 @@ add.onclick = function(){ const listItem = document.createElement('li'); - listItem.innerHTML = `${input.value} <button>Löschen!</button>`; + listItem.innerHTML = `${input.value} <button>Löschen!</button>`; const deleteButton = listItem.querySelector('button'); deleteButton.onclick = function (){ shoppingList.removeChild(listItem); diff --git a/public/we_tasks/task12/navigator_services/config.php b/public/we_tasks/task12/navigator_services/config.php index 918ba8267decca87e0b29c0597539dd550f07e1f..2994c3980f40a06f5d91597a224517436b73b451 100644 --- a/public/we_tasks/task12/navigator_services/config.php +++ b/public/we_tasks/task12/navigator_services/config.php @@ -1,4 +1,4 @@ <?php header('Access-Control-Allow-Origin: *'); - $assetsDir = '/home/sebastian/privateServerDocs/Assets'; \ No newline at end of file + $assetsDir = '/home/srosau2s/privateServerDocs/Assets'; \ No newline at end of file diff --git a/public/we_tasks/task12/navigator_services/login-service.php b/public/we_tasks/task12/navigator_services/login-service.php index 4ab3fe942011438e3bd7b78c9f28206047f04be9..d9e4a3f82362593a4ec2b86895f0d78de3111dcd 100644 --- a/public/we_tasks/task12/navigator_services/login-service.php +++ b/public/we_tasks/task12/navigator_services/login-service.php @@ -44,7 +44,7 @@ } $payload = [ 'success' => false, - 'message' => 'Account oder Passwort nicht gefunden.', + 'message' => 'Account nicht gefunden oder Passwort falsch', ]; http_response_code(401); exit(json_encode($payload)); \ No newline at end of file diff --git a/public/we_tasks/task13/asset-manifest.json b/public/we_tasks/task13/asset-manifest.json index f78d48a7d6938aaee2db92ea7d263855a3447cac..d486b9ada3deb18373c89165ac19c368e363387c 100644 --- a/public/we_tasks/task13/asset-manifest.json +++ b/public/we_tasks/task13/asset-manifest.json @@ -1,22 +1,22 @@ { "files": { - "main.css": "/we_tasks/task13/static/css/main.45ab13bf.chunk.css", - "main.js": "/we_tasks/task13/static/js/main.0d0a7c61.chunk.js", - "main.js.map": "/we_tasks/task13/static/js/main.0d0a7c61.chunk.js.map", - "runtime-main.js": "/we_tasks/task13/static/js/runtime-main.fa9ca119.js", - "runtime-main.js.map": "/we_tasks/task13/static/js/runtime-main.fa9ca119.js.map", - "static/js/2.86fe90b7.chunk.js": "/we_tasks/task13/static/js/2.86fe90b7.chunk.js", - "static/js/2.86fe90b7.chunk.js.map": "/we_tasks/task13/static/js/2.86fe90b7.chunk.js.map", - "index.html": "/we_tasks/task13/index.html", - "precache-manifest.5d45fa9982b9463de0ad268c9a0aa0f5.js": "/we_tasks/task13/precache-manifest.5d45fa9982b9463de0ad268c9a0aa0f5.js", - "service-worker.js": "/we_tasks/task13/service-worker.js", - "static/css/main.45ab13bf.chunk.css.map": "/we_tasks/task13/static/css/main.45ab13bf.chunk.css.map", - "static/js/2.86fe90b7.chunk.js.LICENSE.txt": "/we_tasks/task13/static/js/2.86fe90b7.chunk.js.LICENSE.txt" + "main.css": "/~srosau2s/we_tasks/task13/static/css/main.45ab13bf.chunk.css", + "main.js": "/~srosau2s/we_tasks/task13/static/js/main.498bcac4.chunk.js", + "main.js.map": "/~srosau2s/we_tasks/task13/static/js/main.498bcac4.chunk.js.map", + "runtime-main.js": "/~srosau2s/we_tasks/task13/static/js/runtime-main.901bcd76.js", + "runtime-main.js.map": "/~srosau2s/we_tasks/task13/static/js/runtime-main.901bcd76.js.map", + "static/js/2.86fe90b7.chunk.js": "/~srosau2s/we_tasks/task13/static/js/2.86fe90b7.chunk.js", + "static/js/2.86fe90b7.chunk.js.map": "/~srosau2s/we_tasks/task13/static/js/2.86fe90b7.chunk.js.map", + "index.html": "/~srosau2s/we_tasks/task13/index.html", + "precache-manifest.254f8cdd869077f1c070a2d77cd9e93d.js": "/~srosau2s/we_tasks/task13/precache-manifest.254f8cdd869077f1c070a2d77cd9e93d.js", + "service-worker.js": "/~srosau2s/we_tasks/task13/service-worker.js", + "static/css/main.45ab13bf.chunk.css.map": "/~srosau2s/we_tasks/task13/static/css/main.45ab13bf.chunk.css.map", + "static/js/2.86fe90b7.chunk.js.LICENSE.txt": "/~srosau2s/we_tasks/task13/static/js/2.86fe90b7.chunk.js.LICENSE.txt" }, "entrypoints": [ - "static/js/runtime-main.fa9ca119.js", + "static/js/runtime-main.901bcd76.js", "static/js/2.86fe90b7.chunk.js", "static/css/main.45ab13bf.chunk.css", - "static/js/main.0d0a7c61.chunk.js" + "static/js/main.498bcac4.chunk.js" ] } \ No newline at end of file diff --git a/public/we_tasks/task13/index.html b/public/we_tasks/task13/index.html index bf45210ae005285791a4dd3b3bcaf49d360673f7..34a8c767978cf7b3de5ba37211e82788b7a07a53 100644 --- a/public/we_tasks/task13/index.html +++ b/public/we_tasks/task13/index.html @@ -1 +1 @@ -<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/we_tasks/task13/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><meta name="description" content="Web site created using create-react-app"/><link rel="apple-touch-icon" href="/we_tasks/task13/logo192.png"/><link rel="manifest" href="/we_tasks/task13/manifest.json"/><title>React App</title><link href="/we_tasks/task13/static/css/main.45ab13bf.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(e){function r(r){for(var n,l,a=r[0],f=r[1],i=r[2],c=0,s=[];c<a.length;c++)l=a[c],Object.prototype.hasOwnProperty.call(o,l)&&o[l]&&s.push(o[l][0]),o[l]=0;for(n in f)Object.prototype.hasOwnProperty.call(f,n)&&(e[n]=f[n]);for(p&&p(r);s.length;)s.shift()();return u.push.apply(u,i||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,a=1;a<t.length;a++){var f=t[a];0!==o[f]&&(n=!1)}n&&(u.splice(r--,1),e=l(l.s=t[0]))}return e}var n={},o={1:0},u=[];function l(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,l),t.l=!0,t.exports}l.m=e,l.c=n,l.d=function(e,r,t){l.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},l.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.t=function(e,r){if(1&r&&(e=l(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(l.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)l.d(t,n,function(r){return e[r]}.bind(null,n));return t},l.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return l.d(r,"a",r),r},l.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},l.p="/we_tasks/task13/";var a=this.webpackJsonpheros=this.webpackJsonpheros||[],f=a.push.bind(a);a.push=r,a=a.slice();for(var i=0;i<a.length;i++)r(a[i]);var p=f;t()}([])</script><script src="/we_tasks/task13/static/js/2.86fe90b7.chunk.js"></script><script src="/we_tasks/task13/static/js/main.0d0a7c61.chunk.js"></script></body></html> \ No newline at end of file +<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/~srosau2s/we_tasks/task13/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><meta name="description" content="Web site created using create-react-app"/><link rel="apple-touch-icon" href="/~srosau2s/we_tasks/task13/logo192.png"/><link rel="manifest" href="/~srosau2s/we_tasks/task13/manifest.json"/><title>React App</title><link href="/~srosau2s/we_tasks/task13/static/css/main.45ab13bf.chunk.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(e){function r(r){for(var n,a,l=r[0],f=r[1],i=r[2],s=0,c=[];s<l.length;s++)a=l[s],Object.prototype.hasOwnProperty.call(o,a)&&o[a]&&c.push(o[a][0]),o[a]=0;for(n in f)Object.prototype.hasOwnProperty.call(f,n)&&(e[n]=f[n]);for(p&&p(r);c.length;)c.shift()();return u.push.apply(u,i||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,l=1;l<t.length;l++){var f=t[l];0!==o[f]&&(n=!1)}n&&(u.splice(r--,1),e=a(a.s=t[0]))}return e}var n={},o={1:0},u=[];function a(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,a),t.l=!0,t.exports}a.m=e,a.c=n,a.d=function(e,r,t){a.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,r){if(1&r&&(e=a(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(a.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)a.d(t,n,function(r){return e[r]}.bind(null,n));return t},a.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(r,"a",r),r},a.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},a.p="/~srosau2s/we_tasks/task13/";var l=this.webpackJsonpheros=this.webpackJsonpheros||[],f=l.push.bind(l);l.push=r,l=l.slice();for(var i=0;i<l.length;i++)r(l[i]);var p=f;t()}([])</script><script src="/~srosau2s/we_tasks/task13/static/js/2.86fe90b7.chunk.js"></script><script src="/~srosau2s/we_tasks/task13/static/js/main.498bcac4.chunk.js"></script></body></html> \ No newline at end of file diff --git a/public/we_tasks/task13/precache-manifest.254f8cdd869077f1c070a2d77cd9e93d.js b/public/we_tasks/task13/precache-manifest.254f8cdd869077f1c070a2d77cd9e93d.js new file mode 100644 index 0000000000000000000000000000000000000000..4da2c653f67e4c44f444a2763c612f3cd7edb98e --- /dev/null +++ b/public/we_tasks/task13/precache-manifest.254f8cdd869077f1c070a2d77cd9e93d.js @@ -0,0 +1,26 @@ +self.__precacheManifest = (self.__precacheManifest || []).concat([ + { + "revision": "ab8847c38e2e4ad5a602905f2b51a6fa", + "url": "/~srosau2s/we_tasks/task13/index.html" + }, + { + "revision": "cf6d55de6ab0fdfcba00", + "url": "/~srosau2s/we_tasks/task13/static/css/main.45ab13bf.chunk.css" + }, + { + "revision": "3e558ce6058d91fe0067", + "url": "/~srosau2s/we_tasks/task13/static/js/2.86fe90b7.chunk.js" + }, + { + "revision": "e88a3e95b5364d46e95b35ae8c0dc27d", + "url": "/~srosau2s/we_tasks/task13/static/js/2.86fe90b7.chunk.js.LICENSE.txt" + }, + { + "revision": "cf6d55de6ab0fdfcba00", + "url": "/~srosau2s/we_tasks/task13/static/js/main.498bcac4.chunk.js" + }, + { + "revision": "21c1042444d3fb4e1c76", + "url": "/~srosau2s/we_tasks/task13/static/js/runtime-main.901bcd76.js" + } +]); \ No newline at end of file diff --git a/public/we_tasks/task13/precache-manifest.5d45fa9982b9463de0ad268c9a0aa0f5.js b/public/we_tasks/task13/precache-manifest.5d45fa9982b9463de0ad268c9a0aa0f5.js deleted file mode 100644 index 62df9a9af25e618eeb39be4f3fb07af1d2df090e..0000000000000000000000000000000000000000 --- a/public/we_tasks/task13/precache-manifest.5d45fa9982b9463de0ad268c9a0aa0f5.js +++ /dev/null @@ -1,26 +0,0 @@ -self.__precacheManifest = (self.__precacheManifest || []).concat([ - { - "revision": "505fba567e14a03212b476367779e702", - "url": "/we_tasks/task13/index.html" - }, - { - "revision": "3f95d400c0b9c574386f", - "url": "/we_tasks/task13/static/css/main.45ab13bf.chunk.css" - }, - { - "revision": "3e558ce6058d91fe0067", - "url": "/we_tasks/task13/static/js/2.86fe90b7.chunk.js" - }, - { - "revision": "e88a3e95b5364d46e95b35ae8c0dc27d", - "url": "/we_tasks/task13/static/js/2.86fe90b7.chunk.js.LICENSE.txt" - }, - { - "revision": "3f95d400c0b9c574386f", - "url": "/we_tasks/task13/static/js/main.0d0a7c61.chunk.js" - }, - { - "revision": "127921ea3726f5be891c", - "url": "/we_tasks/task13/static/js/runtime-main.fa9ca119.js" - } -]); \ No newline at end of file diff --git a/public/we_tasks/task13/service-worker.js b/public/we_tasks/task13/service-worker.js index 6299728f4109a630d3fddf346d5c5babd33acff5..23731bd30cb6913a772537c37bf3843e70b76efb 100644 --- a/public/we_tasks/task13/service-worker.js +++ b/public/we_tasks/task13/service-worker.js @@ -14,7 +14,7 @@ importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js"); importScripts( - "/we_tasks/task13/precache-manifest.5d45fa9982b9463de0ad268c9a0aa0f5.js" + "/~srosau2s/we_tasks/task13/precache-manifest.254f8cdd869077f1c070a2d77cd9e93d.js" ); self.addEventListener('message', (event) => { @@ -33,7 +33,7 @@ workbox.core.clientsClaim(); self.__precacheManifest = [].concat(self.__precacheManifest || []); workbox.precaching.precacheAndRoute(self.__precacheManifest, {}); -workbox.routing.registerNavigationRoute(workbox.precaching.getCacheKeyForURL("/we_tasks/task13/index.html"), { +workbox.routing.registerNavigationRoute(workbox.precaching.getCacheKeyForURL("/~srosau2s/we_tasks/task13/index.html"), { blacklist: [/^\/_/,/\/[^/?]+\.[^/]+$/], }); diff --git a/public/we_tasks/task13/static/js/main.0d0a7c61.chunk.js b/public/we_tasks/task13/static/js/main.0d0a7c61.chunk.js deleted file mode 100644 index cac90b06cf62e91f0e3703ac966044eee1de899f..0000000000000000000000000000000000000000 --- a/public/we_tasks/task13/static/js/main.0d0a7c61.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(this.webpackJsonpheros=this.webpackJsonpheros||[]).push([[0],{13:function(e,t,n){},14:function(e,t,n){"use strict";n.r(t);var a=n(1),r=n(2),i=n(3),s=n(5),l=n(4),o=n(0),u=n.n(o),c=n(7),m=n.n(c),d=(n(13),new(function(){function e(){Object(a.a)(this,e),this.URLs=null}return Object(r.a)(e,[{key:"setURLs",value:function(e){this.URLs||(this.URLs={filestructure:e+"/get-filestructure-service.php",file:e+"/get-file-service.php",register:e+"/register-service.php",login:e+"/login-service.php",logout:e+"/logout-service.php",contentUpdate:e+"/content-update-service.php"})}},{key:"get",value:function(e){return fetch(e,{method:"GET"}).then((function(e){return e.json()}))}},{key:"post",value:function(e,t){return fetch(e,{method:"POST",body:t}).then((function(e){return e.json()}))}}]),e}()));d.setURLs("http://localhost:80/we_tasks/task12/navigator_services");var h=function(e){Object(s.a)(n,e);var t=Object(l.a)(n);function n(e){var r;return Object(a.a)(this,n),(r=t.call(this,e)).state={user:null,response:null},r.handleLogin=r.handleLogin.bind(Object(i.a)(r)),r.handleLogout=r.handleLogout.bind(Object(i.a)(r)),r}return Object(r.a)(n,[{key:"render",value:function(){return u.a.createElement("div",{id:"gridContainer"},u.a.createElement("div",{id:"header"},u.a.createElement("h1",null,"React Login"),u.a.createElement(p,{handleLogin:this.handleLogin,handleLogout:this.handleLogout,user:this.state.user})),u.a.createElement(g,{user:this.state.user}),u.a.createElement(f,{response:this.state.response}))}},{key:"handleLogin",value:function(e){console.log("Handle Login");var t=this.state;e.success&&(t.user=e.user),t.response=e,this.setState(t)}},{key:"handleLogout",value:function(e){console.log("Handle Logout");var t=this.state;e.success&&(t.user=null),t.response=e,this.setState(t)}}]),n}(u.a.Component),p=function(e){Object(s.a)(n,e);var t=Object(l.a)(n);function n(e){var r;return Object(a.a)(this,n),(r=t.call(this,e)).state={name:"",pw:""},r}return Object(r.a)(n,[{key:"render",value:function(){var e=this;return this.props.user?u.a.createElement("div",{id:"mainMenu"},u.a.createElement("span",null,"Angemeldet als ",u.a.createElement("b",null,this.props.user.nickname)),u.a.createElement("button",{onClick:function(){return e.logout()},id:"logout"},"Logout")):u.a.createElement("div",{id:"mainMenu"},u.a.createElement("input",{id:"name",placeholder:"Name",type:"text",value:this.state.name,onChange:function(t){return e.handleNameChange(t)}}),u.a.createElement("input",{id:"password",placeholder:"Password",type:"text",value:this.state.pw,onChange:function(t){return e.handlePwChange(t)}}),u.a.createElement("button",{onClick:function(){return e.login()},id:"login"},"Login"))}},{key:"handleNameChange",value:function(e){var t=this.state;t.name=e.target.value,this.setState(t)}},{key:"handlePwChange",value:function(e){var t=this.state;t.pw=e.target.value,this.setState(t)}},{key:"login",value:function(){var e=this;console.log("login");var t=new FormData;t.append("accountname",this.state.name),t.append("password",this.state.pw),d.post(d.URLs.login,t).then((function(t){e.props.handleLogin(t)})),this.setState({name:"",pw:""})}},{key:"logout",value:function(){var e=this;if(this.props.user){var t=new FormData;t.append("sessionId",this.props.user.sessionId),d.post(d.URLs.logout,t).then((function(t){e.props.handleLogout(t)}))}}}]),n}(u.a.Component),g=function(e){Object(s.a)(n,e);var t=Object(l.a)(n);function n(){return Object(a.a)(this,n),t.apply(this,arguments)}return Object(r.a)(n,[{key:"render",value:function(){return this.props.user?u.a.createElement("div",{id:"content"},u.a.createElement("table",null,u.a.createElement("tbody",null,u.a.createElement("tr",null,u.a.createElement("td",null,u.a.createElement("h2",null,"Batman")),u.a.createElement("td",null,u.a.createElement("h2",null,"Iron Man")),u.a.createElement("td",null,u.a.createElement("h2",null,"Hulk"))),u.a.createElement("tr",null,u.a.createElement("td",null,u.a.createElement("img",{src:"../images/Batman.jpg",alt:"Batman_IMG"}),u.a.createElement("p",null),u.a.createElement("a",{href:"https://commons.wikimedia.org/wiki/File:9.17.16BatmanCosplayerByLuigiNovi1.jpg"},"\xa9 Luigi Novi / Wikimedia Commons")),u.a.createElement("td",null,u.a.createElement("img",{src:"../images/Ironman.jpg",alt:"Ironman_IMG"}),u.a.createElement("p",null),u.a.createElement("a",{href:"https://commons.wikimedia.org/wiki/File:Iron_Man_Comic_Con_1.jpg"},"\xa9 greyloch / Wikimedia Commons")),u.a.createElement("td",null,u.a.createElement("img",{src:"../images/Hulk.jpg",alt:"Hulk_img"}),u.a.createElement("p",null),u.a.createElement("a",{href:"https://commons.wikimedia.org/wiki/File:Madrid_-_Casa_del_Libro_de_la_Gran_V%C3%ADa_4.jpg"},"\xa9 Zarateman / Wikimedia Commons"))),u.a.createElement("tr",null,u.a.createElement("td",null,"Batman (englisch f\xfcr Fledermausmann) ist eine von Bob Kane erdachte und durch Bill Finger weiterentwickelte Comicfigur, deren zivile Identit\xe4t die des Milliard\xe4rs Bruce Wayne ist und der einen schwarzen, einer Fledermaus \xe4hnelnden Anzug tr\xe4gt. Batman erschien erstmals im Mai 1939 in dem US-amerikanischen Comicmagazin Detective Comics (Ausgabe 27). Der herausgebende Verlag nannte sich sp\xe4ter nach der Abk\xfcrzung dieser Serie in DC Comics um; Batman gilt als seine beliebteste Comicfigur.",u.a.createElement("p",null),u.a.createElement("a",{href:"https://de.wikipedia.org/wiki/Batman"},"Wikipedia")),u.a.createElement("td",null,"Iron Man (deutsch: \u201eEisenmann\u201c, in den ersten deutschen Ver\xf6ffentlichungen \u201eDer Eiserne\u201c) ist eine Comicfigur der Marvel Comics. Erschaffen wurde sie von Stan Lee und Larry Lieber sowie den Zeichnern Don Heck und Jack Kirby. Ihr erster Auftritt war in dem Comic Tales of Suspense #39 im M\xe4rz 1963. 1968 erhielt sie eine eigene Reihe mit dem Titel Iron Man, die bis 1996 fortgesetzt wurde. Iron Mans R\xfcstung ist rot-golden und mit modernster Technik ausgestattet, wie zum Beispiel Laserstrahlen.",u.a.createElement("p",null),u.a.createElement("a",{href:"https://de.wikipedia.org/wiki/Iron_Man"},"Wikipedia")),u.a.createElement("td",null,"Hulk [h\u028clk] (engl. Koloss, Klotz) ist die Titelfigur aus den gleichnamigen Marvel-Comics. Die erste Ausgabe wurde im Mai 1962 von Stan Lee und Jack Kirby ver\xf6ffentlicht. Im Comic wird die Geschichte des Nuklearphysikers Dr. Bruce Banner erz\xe4hlt, der nach einem Unfall mit dem Prototyp einer Gamma-Bombe gro\xdfen Mengen an Gammastrahlung ausgesetzt wurde und sich fortan bei jedem Anflug von Wut in das rasende Monster Hulk verwandelt. Der h\xfcnenhafte Kraftprotz ger\xe4t wegen seiner durchschlagenden St\xe4rke im jeweiligen Storyverlauf h\xe4ufig in Auseinandersetzungen mit bewaffneten Streitkr\xe4ften, die Hulk stoppen und ihn auch als \u201eWaffe\u201c f\xfcr sich nutzen wollen. Hulks gr\xfcne Hautfarbe erkl\xe4rt sich durch die unz\xe4hligen Chloroplasten in seiner Haut, mit denen er die n\xf6tigen Stoffwechselprodukte f\xfcr seinen Energiebedarf herstellen kann.",u.a.createElement("p",null),u.a.createElement("a",{href:"https://de.wikipedia.org/wiki/Hulk_(Comic)"},"Wikipedia")))))):u.a.createElement("div",{id:"content"},u.a.createElement("span",null,"Zugriff Verweigert! Authentifizierung erforderlich!"))}}]),n}(u.a.Component),f=function(e){Object(s.a)(n,e);var t=Object(l.a)(n);function n(e){var r;return Object(a.a)(this,n),(r=t.call(this,e)).state={opened:!1},r}return Object(r.a)(n,[{key:"componentDidUpdate",value:function(e){var t=this;if(e.response!==this.props.response){var n=this.state;n.opened=!0,console.log("open true"),this.setState(n),setTimeout((function(){var e=t.state;e.opened=!1,console.log("open false"),t.setState(e)}),5e3)}}},{key:"render",value:function(){if(!this.props.response)return"";var e=(this.state.opened?"opened ":"")+(this.props.response?this.props.response.success?"success ":"error ":"");return u.a.createElement("div",{id:"snackbarContainer"},u.a.createElement("div",{id:"snackbar",className:e},u.a.createElement("span",null,this.props.response?this.props.response.message:"")))}}]),n}(u.a.Component);m.a.render(u.a.createElement(h,null),document.getElementById("root"))},8:function(e,t,n){e.exports=n(14)}},[[8,1,2]]]); -//# sourceMappingURL=main.0d0a7c61.chunk.js.map \ No newline at end of file diff --git a/public/we_tasks/task13/static/js/main.0d0a7c61.chunk.js.map b/public/we_tasks/task13/static/js/main.0d0a7c61.chunk.js.map deleted file mode 100644 index a4cc4148187ef14720dd68c0cc6d00aedc829b7d..0000000000000000000000000000000000000000 --- a/public/we_tasks/task13/static/js/main.0d0a7c61.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["Client.js","index.js"],"names":["client","this","URLs","baseURL","filestructure","file","register","login","logout","contentUpdate","url","fetch","method","then","result","json","payload","body","setURLs","App","props","state","user","response","handleLogin","bind","handleLogout","id","console","log","success","setState","React","Component","Login","name","pw","nickname","onClick","placeholder","type","value","onChange","event","handleNameChange","handlePwChange","target","FormData","append","post","sessionId","ContentViewer","src","alt","href","Snackbar","opened","prevProps","setTimeout","snackbarClasses","className","message","ReactDOM","render","document","getElementById"],"mappings":"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","file":"static/js/main.0d0a7c61.chunk.js","sourcesContent":["/* eslint-disable no-debugger, no-console */\nclass Client {\n constructor() {\n this.URLs = null;\n }\n\n setURLs(baseURL) {\n if (!this.URLs) {\n this.URLs = {\n filestructure: baseURL + \"/get-filestructure-service.php\",\n file: baseURL + \"/get-file-service.php\",\n register: baseURL + \"/register-service.php\",\n login: baseURL + \"/login-service.php\",\n logout: baseURL + \"/logout-service.php\",\n contentUpdate: baseURL + \"/content-update-service.php\",\n };\n }\n }\n\n get(url) {\n return fetch(url, {\n method: \"GET\",\n }).then((result) => result.json());\n }\n post(url, payload) {\n return fetch(url, {\n method: \"POST\",\n body: payload,\n }).then((result) => result.json());\n }\n}\n\nconst client = new Client();\n\nexport default client;\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport \"./index.css\";\nimport client from \"./Client\";\n\nclient.setURLs(\"http://localhost:80/we_tasks/task12/navigator_services\");\n\nclass App extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n user: null,\n response: null,\n };\n this.handleLogin = this.handleLogin.bind(this);\n this.handleLogout = this.handleLogout.bind(this);\n }\n\n render() {\n return (\n <div id=\"gridContainer\">\n <div id=\"header\">\n <h1>React Login</h1>\n <Login\n handleLogin={this.handleLogin}\n handleLogout={this.handleLogout}\n user={this.state.user}\n ></Login>\n </div>\n <ContentViewer user={this.state.user}></ContentViewer>\n <Snackbar response={this.state.response}></Snackbar>\n </div>\n );\n }\n\n handleLogin(result) {\n console.log(\"Handle Login\");\n const state = this.state;\n if (result.success) {\n state.user = result.user;\n }\n state.response = result;\n this.setState(state);\n }\n handleLogout(result) {\n console.log(\"Handle Logout\");\n const state = this.state;\n if (result.success) {\n state.user = null;\n }\n state.response = result;\n this.setState(state);\n }\n}\n\nclass Login extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n pw: \"\",\n };\n }\n\n render() {\n if (this.props.user) {\n return (\n <div id=\"mainMenu\">\n <span>\n Angemeldet als <b>{this.props.user.nickname}</b>\n </span>\n <button onClick={() => this.logout()} id=\"logout\">\n Logout\n </button>\n </div>\n );\n } else {\n return (\n <div id=\"mainMenu\">\n <input\n id=\"name\"\n placeholder=\"Name\"\n type=\"text\"\n value={this.state.name}\n onChange={(event) => this.handleNameChange(event)}\n ></input>\n <input\n id=\"password\"\n placeholder=\"Password\"\n type=\"text\"\n value={this.state.pw}\n onChange={(event) => this.handlePwChange(event)}\n ></input>\n <button onClick={() => this.login()} id=\"login\">\n Login\n </button>\n </div>\n );\n }\n }\n\n handleNameChange(event) {\n const state = this.state;\n state.name = event.target.value;\n this.setState(state);\n }\n handlePwChange(event) {\n const state = this.state;\n state.pw = event.target.value;\n this.setState(state);\n }\n login() {\n console.log(\"login\");\n\n let payload = new FormData();\n payload.append(\"accountname\", this.state.name);\n payload.append(\"password\", this.state.pw);\n client.post(client.URLs.login, payload).then((result) => {\n this.props.handleLogin(result);\n });\n\n this.setState({\n name: \"\",\n pw: \"\",\n });\n }\n logout() {\n if (this.props.user) {\n let payload = new FormData();\n payload.append(\"sessionId\", this.props.user.sessionId);\n client.post(client.URLs.logout, payload).then((result) => {\n this.props.handleLogout(result);\n });\n }\n }\n}\n\nclass ContentViewer extends React.Component {\n render() {\n if (this.props.user) {\n return (\n <div id=\"content\">\n <table>\n <tbody>\n <tr>\n <td>\n <h2>Batman</h2>\n </td>\n <td>\n <h2>Iron Man</h2>\n </td>\n <td>\n <h2>Hulk</h2>\n </td>\n </tr>\n <tr>\n <td>\n <img src=\"../images/Batman.jpg\" alt=\"Batman_IMG\"></img>\n <p></p>\n <a href=\"https://commons.wikimedia.org/wiki/File:9.17.16BatmanCosplayerByLuigiNovi1.jpg\">\n © Luigi Novi / Wikimedia Commons\n </a>\n </td>\n <td>\n <img src=\"../images/Ironman.jpg\" alt=\"Ironman_IMG\"></img>\n <p></p>\n <a href=\"https://commons.wikimedia.org/wiki/File:Iron_Man_Comic_Con_1.jpg\">\n © greyloch / Wikimedia Commons\n </a>\n </td>\n <td>\n <img src=\"../images/Hulk.jpg\" alt=\"Hulk_img\"></img>\n <p></p>\n <a href=\"https://commons.wikimedia.org/wiki/File:Madrid_-_Casa_del_Libro_de_la_Gran_V%C3%ADa_4.jpg\">\n © Zarateman / Wikimedia Commons\n </a>\n </td>\n </tr>\n <tr>\n <td>\n Batman (englisch für Fledermausmann) ist eine von Bob Kane\n erdachte und durch Bill Finger weiterentwickelte Comicfigur,\n deren zivile Identität die des Milliardärs Bruce Wayne ist und\n der einen schwarzen, einer Fledermaus ähnelnden Anzug trägt.\n Batman erschien erstmals im Mai 1939 in dem US-amerikanischen\n Comicmagazin Detective Comics (Ausgabe 27). Der herausgebende\n Verlag nannte sich später nach der Abkürzung dieser Serie in\n DC Comics um; Batman gilt als seine beliebteste Comicfigur.\n <p></p>\n <a href=\"https://de.wikipedia.org/wiki/Batman\">Wikipedia</a>\n </td>\n <td>\n Iron Man (deutsch: „Eisenmann“, in den ersten deutschen\n Veröffentlichungen „Der Eiserne“) ist eine Comicfigur der\n Marvel Comics. Erschaffen wurde sie von Stan Lee und Larry\n Lieber sowie den Zeichnern Don Heck und Jack Kirby. Ihr erster\n Auftritt war in dem Comic Tales of Suspense #39 im März 1963.\n 1968 erhielt sie eine eigene Reihe mit dem Titel Iron Man, die\n bis 1996 fortgesetzt wurde. Iron Mans Rüstung ist rot-golden\n und mit modernster Technik ausgestattet, wie zum Beispiel\n Laserstrahlen.\n <p></p>\n <a href=\"https://de.wikipedia.org/wiki/Iron_Man\">Wikipedia</a>\n </td>\n <td>\n Hulk [hÊŒlk] (engl. Koloss, Klotz) ist die Titelfigur aus den\n gleichnamigen Marvel-Comics. Die erste Ausgabe wurde im Mai\n 1962 von Stan Lee und Jack Kirby veröffentlicht. Im Comic wird\n die Geschichte des Nuklearphysikers Dr. Bruce Banner erzählt,\n der nach einem Unfall mit dem Prototyp einer Gamma-Bombe\n großen Mengen an Gammastrahlung ausgesetzt wurde und sich\n fortan bei jedem Anflug von Wut in das rasende Monster Hulk\n verwandelt. Der hünenhafte Kraftprotz gerät wegen seiner\n durchschlagenden Stärke im jeweiligen Storyverlauf häufig in\n Auseinandersetzungen mit bewaffneten Streitkräften, die Hulk\n stoppen und ihn auch als „Waffe“ für sich nutzen wollen. Hulks\n grüne Hautfarbe erklärt sich durch die unzähligen\n Chloroplasten in seiner Haut, mit denen er die nötigen\n Stoffwechselprodukte für seinen Energiebedarf herstellen kann.\n <p></p>\n <a href=\"https://de.wikipedia.org/wiki/Hulk_(Comic)\">\n Wikipedia\n </a>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n );\n } else {\n return (\n <div id=\"content\">\n <span>Zugriff Verweigert! Authentifizierung erforderlich!</span>\n </div>\n );\n }\n }\n}\n\nclass Snackbar extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n opened: false,\n };\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.response !== this.props.response) {\n const state = this.state;\n state.opened = true;\n console.log(\"open true\");\n this.setState(state);\n setTimeout(() => {\n const state = this.state;\n state.opened = false;\n console.log(\"open false\");\n this.setState(state);\n }, 5000);\n }\n }\n\n render() {\n if (!this.props.response) {\n return \"\";\n }\n\n const snackbarClasses =\n (this.state.opened ? \"opened \" : \"\") +\n (this.props.response\n ? this.props.response.success\n ? \"success \"\n : \"error \"\n : \"\");\n return (\n <div id=\"snackbarContainer\">\n <div id=\"snackbar\" className={snackbarClasses}>\n <span>{this.props.response ? this.props.response.message : \"\"}</span>\n </div>\n </div>\n );\n }\n}\n\nReactDOM.render(<App />, document.getElementById(\"root\"));\n"],"sourceRoot":""} \ No newline at end of file diff --git a/public/we_tasks/task13/static/js/main.498bcac4.chunk.js b/public/we_tasks/task13/static/js/main.498bcac4.chunk.js new file mode 100644 index 0000000000000000000000000000000000000000..db898e533bf105ba97933372997c2280e72d7c2e --- /dev/null +++ b/public/we_tasks/task13/static/js/main.498bcac4.chunk.js @@ -0,0 +1,2 @@ +(this.webpackJsonpheros=this.webpackJsonpheros||[]).push([[0],{13:function(e,t,n){},14:function(e,t,n){"use strict";n.r(t);var a=n(1),r=n(2),i=n(3),s=n(5),l=n(4),o=n(0),u=n.n(o),c=n(7),m=n.n(c),d=(n(13),new(function(){function e(){Object(a.a)(this,e),this.URLs=null}return Object(r.a)(e,[{key:"setURLs",value:function(e){this.URLs||(this.URLs={filestructure:e+"/get-filestructure-service.php",file:e+"/get-file-service.php",register:e+"/register-service.php",login:e+"/login-service.php",logout:e+"/logout-service.php",contentUpdate:e+"/content-update-service.php"})}},{key:"get",value:function(e){return fetch(e,{method:"GET"}).then((function(e){return e.json()}))}},{key:"post",value:function(e,t){return fetch(e,{method:"POST",body:t}).then((function(e){return e.json()}))}}]),e}()));d.setURLs("/~srosau2s/we_tasks/task12/navigator_services");var h=function(e){Object(s.a)(n,e);var t=Object(l.a)(n);function n(e){var r;return Object(a.a)(this,n),(r=t.call(this,e)).state={user:null,response:null},r.handleLogin=r.handleLogin.bind(Object(i.a)(r)),r.handleLogout=r.handleLogout.bind(Object(i.a)(r)),r}return Object(r.a)(n,[{key:"render",value:function(){return u.a.createElement("div",{id:"gridContainer"},u.a.createElement("div",{id:"header"},u.a.createElement("h1",null,"React Login"),u.a.createElement(p,{handleLogin:this.handleLogin,handleLogout:this.handleLogout,user:this.state.user})),u.a.createElement(g,{user:this.state.user}),u.a.createElement(f,{response:this.state.response}))}},{key:"handleLogin",value:function(e){console.log("Handle Login");var t=this.state;e.success&&(t.user=e.user),t.response=e,this.setState(t)}},{key:"handleLogout",value:function(e){console.log("Handle Logout");var t=this.state;e.success&&(t.user=null),t.response=e,this.setState(t)}}]),n}(u.a.Component),p=function(e){Object(s.a)(n,e);var t=Object(l.a)(n);function n(e){var r;return Object(a.a)(this,n),(r=t.call(this,e)).state={name:"",pw:""},r}return Object(r.a)(n,[{key:"render",value:function(){var e=this;return this.props.user?u.a.createElement("div",{id:"mainMenu"},u.a.createElement("span",null,"Angemeldet als ",u.a.createElement("b",null,this.props.user.nickname)),u.a.createElement("button",{onClick:function(){return e.logout()},id:"logout"},"Logout")):u.a.createElement("div",{id:"mainMenu"},u.a.createElement("input",{id:"name",placeholder:"Name",type:"text",value:this.state.name,onChange:function(t){return e.handleNameChange(t)}}),u.a.createElement("input",{id:"password",placeholder:"Password",type:"text",value:this.state.pw,onChange:function(t){return e.handlePwChange(t)}}),u.a.createElement("button",{onClick:function(){return e.login()},id:"login"},"Login"))}},{key:"handleNameChange",value:function(e){var t=this.state;t.name=e.target.value,this.setState(t)}},{key:"handlePwChange",value:function(e){var t=this.state;t.pw=e.target.value,this.setState(t)}},{key:"login",value:function(){var e=this;console.log("login");var t=new FormData;t.append("accountname",this.state.name),t.append("password",this.state.pw),d.post(d.URLs.login,t).then((function(t){e.props.handleLogin(t)})),this.setState({name:"",pw:""})}},{key:"logout",value:function(){var e=this;if(this.props.user){var t=new FormData;t.append("sessionId",this.props.user.sessionId),d.post(d.URLs.logout,t).then((function(t){e.props.handleLogout(t)}))}}}]),n}(u.a.Component),g=function(e){Object(s.a)(n,e);var t=Object(l.a)(n);function n(){return Object(a.a)(this,n),t.apply(this,arguments)}return Object(r.a)(n,[{key:"render",value:function(){return this.props.user?u.a.createElement("div",{id:"content"},u.a.createElement("table",null,u.a.createElement("tbody",null,u.a.createElement("tr",null,u.a.createElement("td",null,u.a.createElement("h2",null,"Batman")),u.a.createElement("td",null,u.a.createElement("h2",null,"Iron Man")),u.a.createElement("td",null,u.a.createElement("h2",null,"Hulk"))),u.a.createElement("tr",null,u.a.createElement("td",null,u.a.createElement("img",{src:"../images/Batman.jpg",alt:"Batman_IMG"}),u.a.createElement("p",null),u.a.createElement("a",{href:"https://commons.wikimedia.org/wiki/File:9.17.16BatmanCosplayerByLuigiNovi1.jpg"},"\xa9 Luigi Novi / Wikimedia Commons")),u.a.createElement("td",null,u.a.createElement("img",{src:"../images/Ironman.jpg",alt:"Ironman_IMG"}),u.a.createElement("p",null),u.a.createElement("a",{href:"https://commons.wikimedia.org/wiki/File:Iron_Man_Comic_Con_1.jpg"},"\xa9 greyloch / Wikimedia Commons")),u.a.createElement("td",null,u.a.createElement("img",{src:"../images/Hulk.jpg",alt:"Hulk_img"}),u.a.createElement("p",null),u.a.createElement("a",{href:"https://commons.wikimedia.org/wiki/File:Madrid_-_Casa_del_Libro_de_la_Gran_V%C3%ADa_4.jpg"},"\xa9 Zarateman / Wikimedia Commons"))),u.a.createElement("tr",null,u.a.createElement("td",null,"Batman (englisch f\xfcr Fledermausmann) ist eine von Bob Kane erdachte und durch Bill Finger weiterentwickelte Comicfigur, deren zivile Identit\xe4t die des Milliard\xe4rs Bruce Wayne ist und der einen schwarzen, einer Fledermaus \xe4hnelnden Anzug tr\xe4gt. Batman erschien erstmals im Mai 1939 in dem US-amerikanischen Comicmagazin Detective Comics (Ausgabe 27). Der herausgebende Verlag nannte sich sp\xe4ter nach der Abk\xfcrzung dieser Serie in DC Comics um; Batman gilt als seine beliebteste Comicfigur.",u.a.createElement("p",null),u.a.createElement("a",{href:"https://de.wikipedia.org/wiki/Batman"},"Wikipedia")),u.a.createElement("td",null,"Iron Man (deutsch: \u201eEisenmann\u201c, in den ersten deutschen Ver\xf6ffentlichungen \u201eDer Eiserne\u201c) ist eine Comicfigur der Marvel Comics. Erschaffen wurde sie von Stan Lee und Larry Lieber sowie den Zeichnern Don Heck und Jack Kirby. Ihr erster Auftritt war in dem Comic Tales of Suspense #39 im M\xe4rz 1963. 1968 erhielt sie eine eigene Reihe mit dem Titel Iron Man, die bis 1996 fortgesetzt wurde. Iron Mans R\xfcstung ist rot-golden und mit modernster Technik ausgestattet, wie zum Beispiel Laserstrahlen.",u.a.createElement("p",null),u.a.createElement("a",{href:"https://de.wikipedia.org/wiki/Iron_Man"},"Wikipedia")),u.a.createElement("td",null,"Hulk [h\u028clk] (engl. Koloss, Klotz) ist die Titelfigur aus den gleichnamigen Marvel-Comics. Die erste Ausgabe wurde im Mai 1962 von Stan Lee und Jack Kirby ver\xf6ffentlicht. Im Comic wird die Geschichte des Nuklearphysikers Dr. Bruce Banner erz\xe4hlt, der nach einem Unfall mit dem Prototyp einer Gamma-Bombe gro\xdfen Mengen an Gammastrahlung ausgesetzt wurde und sich fortan bei jedem Anflug von Wut in das rasende Monster Hulk verwandelt. Der h\xfcnenhafte Kraftprotz ger\xe4t wegen seiner durchschlagenden St\xe4rke im jeweiligen Storyverlauf h\xe4ufig in Auseinandersetzungen mit bewaffneten Streitkr\xe4ften, die Hulk stoppen und ihn auch als \u201eWaffe\u201c f\xfcr sich nutzen wollen. Hulks gr\xfcne Hautfarbe erkl\xe4rt sich durch die unz\xe4hligen Chloroplasten in seiner Haut, mit denen er die n\xf6tigen Stoffwechselprodukte f\xfcr seinen Energiebedarf herstellen kann.",u.a.createElement("p",null),u.a.createElement("a",{href:"https://de.wikipedia.org/wiki/Hulk_(Comic)"},"Wikipedia")))))):u.a.createElement("div",{id:"content"},u.a.createElement("span",null,"Zugriff Verweigert! Authentifizierung erforderlich!"))}}]),n}(u.a.Component),f=function(e){Object(s.a)(n,e);var t=Object(l.a)(n);function n(e){var r;return Object(a.a)(this,n),(r=t.call(this,e)).state={opened:!1},r}return Object(r.a)(n,[{key:"componentDidUpdate",value:function(e){var t=this;if(e.response!==this.props.response){var n=this.state;n.opened=!0,console.log("open true"),this.setState(n),setTimeout((function(){var e=t.state;e.opened=!1,console.log("open false"),t.setState(e)}),5e3)}}},{key:"render",value:function(){if(!this.props.response)return"";var e=(this.state.opened?"opened ":"")+(this.props.response?this.props.response.success?"success ":"error ":"");return u.a.createElement("div",{id:"snackbarContainer"},u.a.createElement("div",{id:"snackbar",className:e},u.a.createElement("span",null,this.props.response?this.props.response.message:"")))}}]),n}(u.a.Component);m.a.render(u.a.createElement(h,null),document.getElementById("root"))},8:function(e,t,n){e.exports=n(14)}},[[8,1,2]]]); +//# sourceMappingURL=main.498bcac4.chunk.js.map \ No newline at end of file diff --git a/public/we_tasks/task13/static/js/main.498bcac4.chunk.js.map b/public/we_tasks/task13/static/js/main.498bcac4.chunk.js.map new file mode 100644 index 0000000000000000000000000000000000000000..ed0b25899381da299b50f6f7659e2e903ec509df --- /dev/null +++ b/public/we_tasks/task13/static/js/main.498bcac4.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["Client.js","index.js"],"names":["client","this","URLs","baseURL","filestructure","file","register","login","logout","contentUpdate","url","fetch","method","then","result","json","payload","body","setURLs","App","props","state","user","response","handleLogin","bind","handleLogout","id","console","log","success","setState","React","Component","Login","name","pw","nickname","onClick","placeholder","type","value","onChange","event","handleNameChange","handlePwChange","target","FormData","append","post","sessionId","ContentViewer","src","alt","href","Snackbar","opened","prevProps","setTimeout","snackbarClasses","className","message","ReactDOM","render","document","getElementById"],"mappings":"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","file":"static/js/main.498bcac4.chunk.js","sourcesContent":["/* eslint-disable no-debugger, no-console */\nclass Client {\n constructor() {\n this.URLs = null;\n }\n\n setURLs(baseURL) {\n if (!this.URLs) {\n this.URLs = {\n filestructure: baseURL + \"/get-filestructure-service.php\",\n file: baseURL + \"/get-file-service.php\",\n register: baseURL + \"/register-service.php\",\n login: baseURL + \"/login-service.php\",\n logout: baseURL + \"/logout-service.php\",\n contentUpdate: baseURL + \"/content-update-service.php\",\n };\n }\n }\n\n get(url) {\n return fetch(url, {\n method: \"GET\",\n }).then((result) => result.json());\n }\n post(url, payload) {\n return fetch(url, {\n method: \"POST\",\n body: payload,\n }).then((result) => result.json());\n }\n}\n\nconst client = new Client();\n\nexport default client;\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport \"./index.css\";\nimport client from \"./Client\";\n\nclient.setURLs(\"/~srosau2s/we_tasks/task12/navigator_services\");\n\nclass App extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n user: null,\n response: null,\n };\n this.handleLogin = this.handleLogin.bind(this);\n this.handleLogout = this.handleLogout.bind(this);\n }\n\n render() {\n return (\n <div id=\"gridContainer\">\n <div id=\"header\">\n <h1>React Login</h1>\n <Login\n handleLogin={this.handleLogin}\n handleLogout={this.handleLogout}\n user={this.state.user}\n ></Login>\n </div>\n <ContentViewer user={this.state.user}></ContentViewer>\n <Snackbar response={this.state.response}></Snackbar>\n </div>\n );\n }\n\n handleLogin(result) {\n console.log(\"Handle Login\");\n const state = this.state;\n if (result.success) {\n state.user = result.user;\n }\n state.response = result;\n this.setState(state);\n }\n handleLogout(result) {\n console.log(\"Handle Logout\");\n const state = this.state;\n if (result.success) {\n state.user = null;\n }\n state.response = result;\n this.setState(state);\n }\n}\n\nclass Login extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n name: \"\",\n pw: \"\",\n };\n }\n\n render() {\n if (this.props.user) {\n return (\n <div id=\"mainMenu\">\n <span>\n Angemeldet als <b>{this.props.user.nickname}</b>\n </span>\n <button onClick={() => this.logout()} id=\"logout\">\n Logout\n </button>\n </div>\n );\n } else {\n return (\n <div id=\"mainMenu\">\n <input\n id=\"name\"\n placeholder=\"Name\"\n type=\"text\"\n value={this.state.name}\n onChange={(event) => this.handleNameChange(event)}\n ></input>\n <input\n id=\"password\"\n placeholder=\"Password\"\n type=\"text\"\n value={this.state.pw}\n onChange={(event) => this.handlePwChange(event)}\n ></input>\n <button onClick={() => this.login()} id=\"login\">\n Login\n </button>\n </div>\n );\n }\n }\n\n handleNameChange(event) {\n const state = this.state;\n state.name = event.target.value;\n this.setState(state);\n }\n handlePwChange(event) {\n const state = this.state;\n state.pw = event.target.value;\n this.setState(state);\n }\n login() {\n console.log(\"login\");\n\n let payload = new FormData();\n payload.append(\"accountname\", this.state.name);\n payload.append(\"password\", this.state.pw);\n client.post(client.URLs.login, payload).then((result) => {\n this.props.handleLogin(result);\n });\n\n this.setState({\n name: \"\",\n pw: \"\",\n });\n }\n logout() {\n if (this.props.user) {\n let payload = new FormData();\n payload.append(\"sessionId\", this.props.user.sessionId);\n client.post(client.URLs.logout, payload).then((result) => {\n this.props.handleLogout(result);\n });\n }\n }\n}\n\nclass ContentViewer extends React.Component {\n render() {\n if (this.props.user) {\n return (\n <div id=\"content\">\n <table>\n <tbody>\n <tr>\n <td>\n <h2>Batman</h2>\n </td>\n <td>\n <h2>Iron Man</h2>\n </td>\n <td>\n <h2>Hulk</h2>\n </td>\n </tr>\n <tr>\n <td>\n <img src=\"../images/Batman.jpg\" alt=\"Batman_IMG\"></img>\n <p></p>\n <a href=\"https://commons.wikimedia.org/wiki/File:9.17.16BatmanCosplayerByLuigiNovi1.jpg\">\n © Luigi Novi / Wikimedia Commons\n </a>\n </td>\n <td>\n <img src=\"../images/Ironman.jpg\" alt=\"Ironman_IMG\"></img>\n <p></p>\n <a href=\"https://commons.wikimedia.org/wiki/File:Iron_Man_Comic_Con_1.jpg\">\n © greyloch / Wikimedia Commons\n </a>\n </td>\n <td>\n <img src=\"../images/Hulk.jpg\" alt=\"Hulk_img\"></img>\n <p></p>\n <a href=\"https://commons.wikimedia.org/wiki/File:Madrid_-_Casa_del_Libro_de_la_Gran_V%C3%ADa_4.jpg\">\n © Zarateman / Wikimedia Commons\n </a>\n </td>\n </tr>\n <tr>\n <td>\n Batman (englisch für Fledermausmann) ist eine von Bob Kane\n erdachte und durch Bill Finger weiterentwickelte Comicfigur,\n deren zivile Identität die des Milliardärs Bruce Wayne ist und\n der einen schwarzen, einer Fledermaus ähnelnden Anzug trägt.\n Batman erschien erstmals im Mai 1939 in dem US-amerikanischen\n Comicmagazin Detective Comics (Ausgabe 27). Der herausgebende\n Verlag nannte sich später nach der Abkürzung dieser Serie in\n DC Comics um; Batman gilt als seine beliebteste Comicfigur.\n <p></p>\n <a href=\"https://de.wikipedia.org/wiki/Batman\">Wikipedia</a>\n </td>\n <td>\n Iron Man (deutsch: „Eisenmann“, in den ersten deutschen\n Veröffentlichungen „Der Eiserne“) ist eine Comicfigur der\n Marvel Comics. Erschaffen wurde sie von Stan Lee und Larry\n Lieber sowie den Zeichnern Don Heck und Jack Kirby. Ihr erster\n Auftritt war in dem Comic Tales of Suspense #39 im März 1963.\n 1968 erhielt sie eine eigene Reihe mit dem Titel Iron Man, die\n bis 1996 fortgesetzt wurde. Iron Mans Rüstung ist rot-golden\n und mit modernster Technik ausgestattet, wie zum Beispiel\n Laserstrahlen.\n <p></p>\n <a href=\"https://de.wikipedia.org/wiki/Iron_Man\">Wikipedia</a>\n </td>\n <td>\n Hulk [hÊŒlk] (engl. Koloss, Klotz) ist die Titelfigur aus den\n gleichnamigen Marvel-Comics. Die erste Ausgabe wurde im Mai\n 1962 von Stan Lee und Jack Kirby veröffentlicht. Im Comic wird\n die Geschichte des Nuklearphysikers Dr. Bruce Banner erzählt,\n der nach einem Unfall mit dem Prototyp einer Gamma-Bombe\n großen Mengen an Gammastrahlung ausgesetzt wurde und sich\n fortan bei jedem Anflug von Wut in das rasende Monster Hulk\n verwandelt. Der hünenhafte Kraftprotz gerät wegen seiner\n durchschlagenden Stärke im jeweiligen Storyverlauf häufig in\n Auseinandersetzungen mit bewaffneten Streitkräften, die Hulk\n stoppen und ihn auch als „Waffe“ für sich nutzen wollen. Hulks\n grüne Hautfarbe erklärt sich durch die unzähligen\n Chloroplasten in seiner Haut, mit denen er die nötigen\n Stoffwechselprodukte für seinen Energiebedarf herstellen kann.\n <p></p>\n <a href=\"https://de.wikipedia.org/wiki/Hulk_(Comic)\">\n Wikipedia\n </a>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n );\n } else {\n return (\n <div id=\"content\">\n <span>Zugriff Verweigert! Authentifizierung erforderlich!</span>\n </div>\n );\n }\n }\n}\n\nclass Snackbar extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n opened: false,\n };\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.response !== this.props.response) {\n const state = this.state;\n state.opened = true;\n console.log(\"open true\");\n this.setState(state);\n setTimeout(() => {\n const state = this.state;\n state.opened = false;\n console.log(\"open false\");\n this.setState(state);\n }, 5000);\n }\n }\n\n render() {\n if (!this.props.response) {\n return \"\";\n }\n\n const snackbarClasses =\n (this.state.opened ? \"opened \" : \"\") +\n (this.props.response\n ? this.props.response.success\n ? \"success \"\n : \"error \"\n : \"\");\n return (\n <div id=\"snackbarContainer\">\n <div id=\"snackbar\" className={snackbarClasses}>\n <span>{this.props.response ? this.props.response.message : \"\"}</span>\n </div>\n </div>\n );\n }\n}\n\nReactDOM.render(<App />, document.getElementById(\"root\"));\n"],"sourceRoot":""} \ No newline at end of file diff --git a/public/we_tasks/task13/static/js/runtime-main.901bcd76.js b/public/we_tasks/task13/static/js/runtime-main.901bcd76.js new file mode 100644 index 0000000000000000000000000000000000000000..52388361c0377fbdc325596d8fca7f4dca054e32 --- /dev/null +++ b/public/we_tasks/task13/static/js/runtime-main.901bcd76.js @@ -0,0 +1,2 @@ +!function(e){function r(r){for(var n,a,l=r[0],f=r[1],i=r[2],s=0,c=[];s<l.length;s++)a=l[s],Object.prototype.hasOwnProperty.call(o,a)&&o[a]&&c.push(o[a][0]),o[a]=0;for(n in f)Object.prototype.hasOwnProperty.call(f,n)&&(e[n]=f[n]);for(p&&p(r);c.length;)c.shift()();return u.push.apply(u,i||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,l=1;l<t.length;l++){var f=t[l];0!==o[f]&&(n=!1)}n&&(u.splice(r--,1),e=a(a.s=t[0]))}return e}var n={},o={1:0},u=[];function a(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,a),t.l=!0,t.exports}a.m=e,a.c=n,a.d=function(e,r,t){a.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},a.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,r){if(1&r&&(e=a(e)),8&r)return e;if(4&r&&"object"===typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(a.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)a.d(t,n,function(r){return e[r]}.bind(null,n));return t},a.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(r,"a",r),r},a.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},a.p="/~srosau2s/we_tasks/task13/";var l=this.webpackJsonpheros=this.webpackJsonpheros||[],f=l.push.bind(l);l.push=r,l=l.slice();for(var i=0;i<l.length;i++)r(l[i]);var p=f;t()}([]); +//# sourceMappingURL=runtime-main.901bcd76.js.map \ No newline at end of file diff --git a/public/we_tasks/task13/static/js/runtime-main.fa9ca119.js.map b/public/we_tasks/task13/static/js/runtime-main.901bcd76.js.map similarity index 91% rename from public/we_tasks/task13/static/js/runtime-main.fa9ca119.js.map rename to public/we_tasks/task13/static/js/runtime-main.901bcd76.js.map index ebcb431791c2c5aad84d16d2cfc39111fe27edce..504ce43ba4b5ad622b5439ab20a967baa2b035ee 100644 --- a/public/we_tasks/task13/static/js/runtime-main.fa9ca119.js.map +++ b/public/we_tasks/task13/static/js/runtime-main.901bcd76.js.map @@ -1 +1 @@ -{"version":3,"sources":["../webpack/bootstrap"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","1","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","this","oldJsonpFunction","slice"],"mappings":"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","file":"static/js/runtime-main.fa9ca119.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t1: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/we_tasks/task13/\";\n\n \tvar jsonpArray = this[\"webpackJsonpheros\"] = this[\"webpackJsonpheros\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["../webpack/bootstrap"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","1","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","this","oldJsonpFunction","slice"],"mappings":"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","file":"static/js/runtime-main.901bcd76.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t1: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/~srosau2s/we_tasks/task13/\";\n\n \tvar jsonpArray = this[\"webpackJsonpheros\"] = this[\"webpackJsonpheros\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""} \ No newline at end of file diff --git a/public/we_tasks/task13/static/js/runtime-main.fa9ca119.js b/public/we_tasks/task13/static/js/runtime-main.fa9ca119.js deleted file mode 100644 index 2335e46abd52d0d1ce9b69a94afcdbe823d10365..0000000000000000000000000000000000000000 --- a/public/we_tasks/task13/static/js/runtime-main.fa9ca119.js +++ /dev/null @@ -1,2 +0,0 @@ -!function(e){function r(r){for(var n,l,a=r[0],f=r[1],i=r[2],c=0,s=[];c<a.length;c++)l=a[c],Object.prototype.hasOwnProperty.call(o,l)&&o[l]&&s.push(o[l][0]),o[l]=0;for(n in f)Object.prototype.hasOwnProperty.call(f,n)&&(e[n]=f[n]);for(p&&p(r);s.length;)s.shift()();return u.push.apply(u,i||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,a=1;a<t.length;a++){var f=t[a];0!==o[f]&&(n=!1)}n&&(u.splice(r--,1),e=l(l.s=t[0]))}return e}var n={},o={1:0},u=[];function l(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,l),t.l=!0,t.exports}l.m=e,l.c=n,l.d=function(e,r,t){l.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},l.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.t=function(e,r){if(1&r&&(e=l(e)),8&r)return e;if(4&r&&"object"===typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(l.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)l.d(t,n,function(r){return e[r]}.bind(null,n));return t},l.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return l.d(r,"a",r),r},l.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},l.p="/we_tasks/task13/";var a=this.webpackJsonpheros=this.webpackJsonpheros||[],f=a.push.bind(a);a.push=r,a=a.slice();for(var i=0;i<a.length;i++)r(a[i]);var p=f;t()}([]); -//# sourceMappingURL=runtime-main.fa9ca119.js.map \ No newline at end of file diff --git a/src/components/editor_components/DocViewer.vue b/src/components/editor_components/DocViewer.vue index c44900885a65154882d13c39a8ff3557eb3726cf..725e9df8bbfe377b2ed800d33050c006db28be86 100644 --- a/src/components/editor_components/DocViewer.vue +++ b/src/components/editor_components/DocViewer.vue @@ -2,12 +2,7 @@ <div> <v-card v-if="file" width="800"> <v-card-title>{{ file.title }}</v-card-title> - <v-card-subtitle> - Besitzer: {{ file.author }} - <v-btn icon small @click="$emit('profile-click')" - ><v-icon>mdi-account-circle</v-icon></v-btn - > - </v-card-subtitle> + <v-card-subtitle> Besitzer: {{ file.author }} </v-card-subtitle> <v-card-text class="contentBox">{{ file.content }}</v-card-text> <v-card-actions v-if="editable"> <v-spacer></v-spacer> @@ -76,6 +71,6 @@ export default { <style scoped> .contentBox { - white-space: pre; + white-space: pre-wrap; } </style> diff --git a/src/components/editor_components_14_unsecure/DocViewer.vue b/src/components/editor_components/DocViewer_profile.vue similarity index 98% rename from src/components/editor_components_14_unsecure/DocViewer.vue rename to src/components/editor_components/DocViewer_profile.vue index c44900885a65154882d13c39a8ff3557eb3726cf..b2e0312701dd36b8e0b6c09dd6e9e97fb28e83df 100644 --- a/src/components/editor_components_14_unsecure/DocViewer.vue +++ b/src/components/editor_components/DocViewer_profile.vue @@ -76,6 +76,6 @@ export default { <style scoped> .contentBox { - white-space: pre; + white-space: pre-wrap; } </style> diff --git a/src/components/editor_components/ProfileViewer_secure.vue b/src/components/editor_components/ProfileViewer_secure.vue index 785bdc6d237e41dd8252511c77a4b620e1ca03e1..edeebae0e55ba26b3d31228798482c9b26fa95cc 100644 --- a/src/components/editor_components/ProfileViewer_secure.vue +++ b/src/components/editor_components/ProfileViewer_secure.vue @@ -4,7 +4,7 @@ <v-card> <v-card-title>{{ user.nickname }}</v-card-title> <v-card-subtitle>{{ user.email }}</v-card-subtitle> - <v-card-text>{{ user.status }}</v-card-text> + <v-card-text class="statusBox">{{ user.status }}</v-card-text> </v-card> </v-dialog> @@ -71,4 +71,8 @@ export default { }; </script> -<style></style> +<style scoped> +.statusBox { + white-space: pre-wrap; +} +</style> diff --git a/src/components/editor_components/ProfileViewer_unsecure.vue b/src/components/editor_components/ProfileViewer_unsecure.vue index 7f409ed87a701fb5eb612cd7a229dc68dc6775d9..db5d1d0e2b888867f57aa2da250ac773d1fa8f88 100644 --- a/src/components/editor_components/ProfileViewer_unsecure.vue +++ b/src/components/editor_components/ProfileViewer_unsecure.vue @@ -4,7 +4,7 @@ <v-card> <v-card-title>{{ user.nickname }}</v-card-title> <v-card-subtitle>{{ user.email }}</v-card-subtitle> - <v-card-text v-html="user.status"></v-card-text> + <v-card-text class="statusBox" v-html="user.status"></v-card-text> </v-card> </v-dialog> @@ -71,4 +71,8 @@ export default { }; </script> -<style></style> +<style scoped> +.statusBox { + white-space: pre-wrap; +} +</style> diff --git a/src/components/editor_components/Register.vue b/src/components/editor_components/Register.vue index 3526f09d4f4cd9a61466fcc7b976927e083415ea..7cd289773d5a310c7a7e919202523d79838ee07c 100644 --- a/src/components/editor_components/Register.vue +++ b/src/components/editor_components/Register.vue @@ -68,12 +68,18 @@ export default { data: () => ({ opened: false, accountname: "", - accountnameRules: [v => !!v || "Accountname benötigt"], + accountnameRules: [ + v => !!v || "Accountname benötigt", + v => (!!v && /^[0-9a-zA-Z_-]+$/.test(v)) || "Dateiname ungültig" + ], password: "", passwordRules: [v => !!v || "Passwort benötigt"], passwordconfirm: "", nickname: "", - nicknameRules: [v => !!v || "Nickname benötigt"], + nicknameRules: [ + v => !!v || "Nickname benötigt", + v => (!!v && /^[0-9a-zA-Z_\- ]+$/.test(v)) || "Dateiname ungültig" + ], email: "", emailRules: [ v => !v || /.+@.+/.test(v) || "Eingabe ist keine gültige E-Mail Adresse" diff --git a/src/router/index.js b/src/router/index.js index cbb8a9736b563d7d71e47652bfe7a54bb7235250..94361417736b222f2c95ba199f1392aeaad513b9 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -46,7 +46,8 @@ const routes = [ ]; const router = new VueRouter({ - routes + routes, + base: "/~srosau2s/" }); export default router; diff --git a/src/views/Editor.vue b/src/views/Editor.vue index 74c2597774be2c3ebfaa66fea60db31dedcdf5a9..9b60bd5ca244bf03298a3f0da1b02f590b407d53 100644 --- a/src/views/Editor.vue +++ b/src/views/Editor.vue @@ -92,7 +92,7 @@ /* eslint-disable no-debugger, no-console */ import client from "../services/Client"; -client.setURLs("http://localhost:80/we_tasks/task12/navigator_services"); +client.setURLs("/~srosau2s/we_tasks/task12/navigator_services"); import Register from "../components/editor_components/Register"; import Login from "../components/editor_components/Login"; diff --git a/src/views/Editor_14_secure.vue b/src/views/Editor_14_secure.vue index a6808c94aed369c62d7dc63781b8eb3e0253f3bb..e0328b728e905e81e6259b0f7bd03a94b23b9fa8 100644 --- a/src/views/Editor_14_secure.vue +++ b/src/views/Editor_14_secure.vue @@ -100,7 +100,7 @@ import Register from "../components/editor_components/Register"; import Login from "../components/editor_components/Login"; import TreeViewExplorer from "../components/editor_components/TreeViewExplorer"; import DocEditor from "../components/editor_components/DocEditor"; -import DocViewer from "../components/editor_components/DocViewer"; +import DocViewer from "../components/editor_components/DocViewer_profile"; import ProfileViwer from "../components/editor_components/ProfileViewer_secure"; export default { diff --git a/src/views/Editor_14_unsecure.vue b/src/views/Editor_14_unsecure.vue index a06556152940dfef4df8e0c3f5b2ee6ef9080432..36da027d68a0e7f0dc3ad1db77db6fde2b619bb4 100644 --- a/src/views/Editor_14_unsecure.vue +++ b/src/views/Editor_14_unsecure.vue @@ -100,7 +100,7 @@ import Register from "../components/editor_components/Register"; import Login from "../components/editor_components/Login"; import TreeViewExplorer from "../components/editor_components/TreeViewExplorer"; import DocEditor from "../components/editor_components/DocEditor"; -import DocViewer from "../components/editor_components/DocViewer"; +import DocViewer from "../components/editor_components/DocViewer_profile"; import ProfileViwer from "../components/editor_components/ProfileViewer_unsecure"; export default { diff --git a/src/views/Home.vue b/src/views/Home.vue index 39cd6ee2a79572c4ef58ea3c8b1024fb94bd14b6..461fbe789fddac1372511b2486236adb7b4f0e3d 100644 --- a/src/views/Home.vue +++ b/src/views/Home.vue @@ -10,11 +10,11 @@ >Ãœbung 2 - HTML und CSS</v-expansion-panel-header > <v-expansion-panel-content> - <a href="/we_tasks/task02/2_3.html" + <a href="/~srosau2s/we_tasks/task02/2_3.html" >Aufgabe 2.3: HTML-Wireframe</a > <br /> - <a href="we_tasks/task02/2_4.html" + <a href="/~srosau2s/we_tasks/task02/2_4.html" >Aufgabe 2.4: Wireframe with HTML and CSS</a > </v-expansion-panel-content> @@ -24,16 +24,16 @@ >Ãœbung 3 - Responsive Web Design (RWD)</v-expansion-panel-header > <v-expansion-panel-content> - <a href="we_tasks/task03/3_1.html" + <a href="/~srosau2s/we_tasks/task03/3_1.html" >Aufgabe 3.1: Responsiv mit Flexbox Desktop-First</a ><br /> - <a href="we_tasks/task03/3_2.html" + <a href="/~srosau2s/we_tasks/task03/3_2.html" >Aufgabe 3.2: Responsiv mit Flexbox Mobile-First</a ><br /> - <a href="we_tasks/task03/3_3.html" + <a href="/~srosau2s/we_tasks/task03/3_3.html" >Aufgabe 3.3: Responsiv mit Grid Layout Desktop-First</a ><br /> - <a href="we_tasks/task03/3_4.html" + <a href="/~srosau2s/we_tasks/task03/3_4.html" >Aufgabe 3.4: Responsiv mit Grid Layout Mobile-First</a > </v-expansion-panel-content> @@ -43,12 +43,13 @@ >Ãœbung 5 - Document Object Model (DOM)</v-expansion-panel-header > <v-expansion-panel-content> - <a href="we_tasks/task05/5_1.html">Aufgabe 5.1: Einkaufsliste</a + <a href="/~srosau2s/we_tasks/task05/5_1.html" + >Aufgabe 5.1: Einkaufsliste</a ><br /> - <a href="we_tasks/task05/5_2.html" + <a href="/~srosau2s/we_tasks/task05/5_2.html" >Aufgabe 5.2: Rednerliste mit Zeitmessung</a ><br /> - <a href="we_tasks/task05/5_3.html" + <a href="/~srosau2s/we_tasks/task05/5_3.html" >Aufgabe 5.3: Performancemessungen</a > </v-expansion-panel-content> @@ -58,10 +59,15 @@ >Ãœbung 6 - Asynchrones Javascript</v-expansion-panel-header > <v-expansion-panel-content> - <a href="we_tasks/task06/6_1.html">Aufgabe 6.1: Promises</a><br /> - <a href="we_tasks/task06/6_2.html">Aufgabe 6.2: async / await</a + <a href="/~srosau2s/we_tasks/task06/6_1.html" + >Aufgabe 6.1: Promises</a ><br /> - <a href="we_tasks/task06/6_3.html">Aufgabe 6.3: WWW-Navigator</a> + <a href="/~srosau2s/we_tasks/task06/6_2.html" + >Aufgabe 6.2: async / await</a + ><br /> + <a href="/~srosau2s/we_tasks/task06/6_3.html" + >Aufgabe 6.3: WWW-Navigator</a + > </v-expansion-panel-content> </v-expansion-panel> <v-expansion-panel> @@ -69,11 +75,13 @@ >Ãœbung 7 - Modulares Web</v-expansion-panel-header > <v-expansion-panel-content> - <a href="we_tasks/task07/7_1.html" + <a href="/~srosau2s/we_tasks/task07/7_1.html" >Aufgabe 7.1: Counter mit Start und Limit</a ><br /> - <a href="we_tasks/task07/7_2.html">Aufgabe 7.2: Stoppuhr</a><br /> - <a href="we_tasks/task07/7_3.html" + <a href="/~srosau2s/we_tasks/task07/7_2.html" + >Aufgabe 7.2: Stoppuhr</a + ><br /> + <a href="/~srosau2s/we_tasks/task07/7_3.html" >Aufgabe 7.3: Flexible Menü-Komponente</a > </v-expansion-panel-content> @@ -81,9 +89,10 @@ <v-expansion-panel> <v-expansion-panel-header>Ãœbung 8 - SVG</v-expansion-panel-header> <v-expansion-panel-content> - <a href="we_tasks/task08/8_1.html">Aufgabe 8.1: SVG-Diagramm</a + <a href="/~srosau2s/we_tasks/task08/8_1.html" + >Aufgabe 8.1: SVG-Diagramm</a ><br /> - <a href="we_tasks/task08/8_2.html" + <a href="/~srosau2s/we_tasks/task08/8_2.html" >Aufgabe 8.2: Statistik-Balkendiagramm</a ><br /> </v-expansion-panel-content> @@ -93,8 +102,10 @@ >Ãœbung 9 - WebApps</v-expansion-panel-header > <v-expansion-panel-content> - <a href="we_tasks/task09/9_1.html">Aufgabe 9.1: Routing</a><br /> - <a href="we_tasks/task09/9_2.html" + <a href="/~srosau2s/we_tasks/task09/9_1.html" + >Aufgabe 9.1: Routing</a + ><br /> + <a href="/~srosau2s/we_tasks/task09/9_2.html" >Aufgabe 9.2: State Management</a ><br /> </v-expansion-panel-content> @@ -107,15 +118,18 @@ Aufgabe 10.1: Counter in Vue.js<br /> <sr_vuecounter></sr_vuecounter> <br /> - <router-link to="/vuenavigator">Vuenavigator</router-link> + <router-link to="/vuenavigator" + >Aufgabe 10.2/3: Vuenavigator</router-link + > </v-expansion-panel-content> </v-expansion-panel> <v-expansion-panel> <v-expansion-panel-header>Ãœbung 12 - PHP</v-expansion-panel-header> - <v-expansion-panel-content - >Aufgabe 12.1/2/3: Content-Editor mit Registrierung und Login - <br /> - <router-link to="/contenteditor">Content-Editor</router-link> + <v-expansion-panel-content> + <router-link to="/contenteditor" + >Aufgabe 12.1/2/3: Content-Editor mit Registrierung und + Login</router-link + > </v-expansion-panel-content> </v-expansion-panel> <v-expansion-panel> @@ -123,9 +137,14 @@ >Ãœbung 13 - React</v-expansion-panel-header > <v-expansion-panel-content> - Aufgabe 13.1: React Tutorial - <br /> - <a href="we_tasks/task13/index.html">React Login</a> + <a href="/~srosau2s/we_tasks/task13/index.html" + >Aufgabe 13.1: React Login</a + > + <p /> + <b>Keine Zugangsdaten bekannt?</b> Diese React-Anwendung verwendet + dasselbe Backend, wie der Content-Editor aus Ãœbung 12. + Registrieren sie einfach dort einen Account, um sich hier damit + anzumelden. </v-expansion-panel-content> </v-expansion-panel> <v-expansion-panel> diff --git a/src/views/Vuenavigator.vue b/src/views/Vuenavigator.vue index c981ab16c0ab7af08f246230728af9874dddfd8c..1fe38c47864ff7e3058462e2364854553d141527 100644 --- a/src/views/Vuenavigator.vue +++ b/src/views/Vuenavigator.vue @@ -24,7 +24,7 @@ <script> import sr_vuemenu from "../components/sr_vuemenu"; -const baseLocation = "/we_tasks/task10"; +const baseLocation = "/~srosau2s/we_tasks/task10"; export default { name: "Vuenavigator", diff --git a/vue.config.js b/vue.config.js index 78a954533727e8b99f97060eefacd729e006b576..90507655848e40d44cf4b0c9d5cea44cd9504f5a 100644 --- a/vue.config.js +++ b/vue.config.js @@ -1,3 +1,4 @@ module.exports = { - transpileDependencies: ["vuetify"] + transpileDependencies: ["vuetify"], + publicPath: "/~srosau2s/" };