{"version":3,"sources":["Learn.js","Verbs.js","Quizz.js","User.js","md5.js","Main.js","App.js","index.js"],"names":["Learn","props","state","user","color","currentSlide","isPlaying","playEnded","bind","console","log","i","url","this","verb","sound","document","createElement","autoPlay","src","body","appendChild","n","setState","style","margin","backgroundColor","height","borderRadius","cellSpacing","width","colSpan","profile","lang","onClick","play","infinitive","es","conjugations","borderLeft","num","audio","Audio","onended","element","icon","faVolumeUp","close","faTimes","_self","conjugate","verbs","find","x","tenses","push","getTense","params","pagination","el","clickable","on","swiper","afterSwipe","realIndex","onClose","zIndex","opacity","fontSize","position","top","textAlign","paddingRight","marginBottom","marginLeft","padding","clear","borderBottom","paddingBottom","float","activeSlideKey","Component","Verbs","isOpen","view","onViewVerb","marginRight","borderTop","paddingTop","infinitives","ascending","order","sort","a","b","map","formatVerb","verbEnding","filter","lastIndexOf","length","sortUp","faSortAlphaUp","sortDown","faSortAlphaDown","list","faList","fontFamily","letterSpacing","border","setView","getVerbsGrouped","getVerbList","Quizz","currentQuestion","currentQnA","transitionNumber","checkingAnswer","correct","slideLeft","leftPos","display","numbersCorrect","showComplete","checkAnswerComplete","level","alert","updatedProfile","thisLevel","score","levels","prevScore","l","onUpdateProfile","generateQandA","setTimeout","setTransitionNumber","r","Math","floor","random","o","objects","c","sentence","sentence_no","q","s","subjects","s2","pronouns","optional","no","p","randomQuestion","randomAnswer","QnA","question","answers","correctAnsverIndex","j","randomWrongAnswer","fromIndex","links","textDecoration","window","confirm","prepareNextanswer","prepareNextanswerComplete","nextQuestion","onStartLevel","fromVerbIndex","verbLinks","getVebList","redoIcon","faRedoAlt","nextIcon","faArrowAltCircleRight","right","left","bottom","closeView","fontWeight","gotoNextLevel","retakeLevel","transition","checkAnswer","minHeight","lineHeight","User","res","results","renderResults","setLang","alt","resetScores","MD5","string","RotateLeft","lValue","iShiftBits","AddUnsigned","lX","lY","lX4","lY4","lX8","lY8","lResult","FF","d","ac","y","z","F","GG","G","HH","H","II","I","WordToHex","lCount","WordToHexValue","WordToHexValue_temp","toString","substr","k","AA","BB","CC","DD","Array","lWordCount","lMessageLength","lNumberOfWords_temp1","lNumberOfWords","lWordArray","lBytePosition","lByteCount","charCodeAt","ConvertToWordArray","replace","utftext","String","fromCharCode","Utf8Encode","toLowerCase","Main","name","savedProfile","localStorage","getItem","sign","JSON","parse","currentView","previousView","selectedVerb","quizzCurrentLevel","gotoView","gotoVerb","updateProfile","startQuizz","newProfile","stringify","setItem","nextLevel","viewName","verbName","faUser","paddingLeft","maxWidth","App","className","ReactDOM","render","StrictMode","getElementById"],"mappings":"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","file":"static/js/main.61b25644.chunk.js","sourcesContent":["import React, { Component } from 'react';\r\nimport Swiper from 'react-id-swiper';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\r\nimport { faVolumeUp } from '@fortawesome/free-solid-svg-icons'\r\nimport { faTimes } from '@fortawesome/free-solid-svg-icons'\r\n\r\n\r\nexport class Learn extends Component {\r\n constructor(props) {\r\n super(props);\r\n //console.log('admin props', );\r\n\r\n\r\n this.state = {\r\n user: props.color,\r\n currentSlide: 0,\r\n isPlaying: false\r\n };\r\n\r\n this.playEnded = this.playEnded.bind(this);\r\n }\r\n\r\n componentDidMount() {\r\n console.log(\"LEARN preload\");\r\n\r\n for (let i = 0; i < 19; i++) {\r\n const url = \"https://spansk.net/audio/verbs/\" + this.props.verb + \"/\" + (i===18?\"i\":i) + \".mp3\";\r\n var sound = document.createElement(\"audio\");\r\n sound.autoPlay = false;\r\n sound.src = url;\r\n document.body.appendChild(sound);\r\n }\r\n\r\n }\r\n\r\n goto(n){\r\n this.setState({\r\n currentSlide: n\r\n });\r\n }\r\n\r\n \r\n\r\n\r\n\r\n getTense(n,verb){\r\n\r\n\r\n\r\n return (\r\n \r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{this.props.profile.lang === 'no'?'Entall':'Singular'}{this.props.profile.lang === 'no'?'Flertall':'Plural'}
yo this.play(verb.infinitive.es,0 + (6*n))}>{verb.conjugations[n].es[0]}nosotros
nosotras
this.play(verb.infinitive.es,3 + (6*n))}>{verb.conjugations[n].es[3]}
this.play(verb.infinitive.es,1 + (6*n))}>{verb.conjugations[n].es[1]}vosotros
vosotras
this.play(verb.infinitive.es,4 + (6*n))}>{verb.conjugations[n].es[4]}
él
ella
us
this.play(verb.infinitive.es,2 + (6*n))}>{verb.conjugations[n].es[2]}ellos
ellas
uds
this.play(verb.infinitive.es,5 + (6*n)) }>{verb.conjugations[n].es[5]}
\r\n\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n )\r\n }\r\n\r\n\r\n afterSwipe(n){\r\n console.log(\"afterSwipe\" , n);\r\n this.setState({\r\n currentSlide: n\r\n });\r\n\r\n }\r\n\r\n\r\n play(verb,num){\r\n if(num===null)\r\n num = 'i';\r\n let audio = new Audio(\"https://spansk.net/audio/verbs/\" + verb + \"/\" + num + \".mp3\")\r\n audio.onended = this.playEnded;\r\n\r\n audio.play();\r\n this.setState({\r\n isPlaying: true\r\n });\r\n\r\n }\r\n\r\n playEnded(){\r\n this.setState({\r\n isPlaying: false\r\n });\r\n\r\n }\r\n\r\n \r\n render() {\r\n// window.matchMedia('(max-width: 640px)').matches\r\n console.log(\"isPlaying\" , this.state.isPlaying);\r\n const element = \r\n const close = \r\n\r\n var _self = this;\r\n\r\n // Find the verb\r\n const verb = this.props.conjugate.verbs.find(x => x.infinitive.es === this.props.verb)\r\n\r\n const tenses = [];\r\n tenses.push(this.getTense(0,verb));\r\n tenses.push(this.getTense(1,verb));\r\n tenses.push(this.getTense(2,verb));\r\n\r\n console.log(\"RENDER const verb\",verb);\r\n\r\n\r\n const params = {\r\n pagination: {\r\n el: '.swiper-pagination',\r\n clickable: true\r\n },\r\n on: {\r\n 'slideChange': (swiper) => {_self.afterSwipe(swiper.realIndex)}\r\n }\r\n }\r\n\r\n\r\n // init \r\n return (\r\n\r\n
\r\n
this.props.onClose()} style={{zIndex:\"1000\", opacity:\"50%\", fontSize:\"200%\", position:\"sticky\",top : \"0px\" , textAlign:\"right\" , paddingRight:\"12px\"}}>{close}
\r\n\r\n

{verb.infinitive.es} \r\n this.play(verb.infinitive.es,null)} style={{marginLeft:\"8px\", backgroundColor : this.state.isPlaying ? \"#ccc\" : \"#a8201a\", color: this.state.isPlaying ? \"#a8201a\" :\"#95c9ff\", fontSize:\"75%\", padding:\"6px\"}}>{element}

\r\n {verb.infinitive[this.props.profile.lang]}\r\n
\r\n
\r\n\r\n
\r\n
this.afterSwipe(0)} >Infinitive
\r\n
this.afterSwipe(1)}>Preterite
\r\n
this.afterSwipe(2)}>Future
\r\n
\r\n\r\n
\r\n\r\n \r\n\r\n\r\n \r\n {tenses}\r\n \r\n\r\n
\r\n
\r\n \r\n\r\n
\r\n\r\n );\r\n }\r\n}\r\n\r\n","import React, { Component } from 'react';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\r\nimport { faTimes } from '@fortawesome/free-solid-svg-icons'\r\nimport { faSortAlphaDown } from '@fortawesome/free-solid-svg-icons'\r\nimport { faSortAlphaUp } from '@fortawesome/free-solid-svg-icons'\r\nimport { faList } from '@fortawesome/free-solid-svg-icons'\r\n\r\n\r\nexport class Verbs extends Component {\r\n constructor(props) {\r\n super(props);\r\n //console.log('admin props', );\r\n\r\n\r\n this.state = {\r\n isOpen: true,\r\n view : 0\r\n };\r\n\r\n \r\n \r\n }\r\n componentDidMount() {\r\n console.log(\"VERB mounted\");\r\n }\r\n\r\n setView(n) {\r\n this.setState({\r\n view: n\r\n });\r\n }\r\n\r\n formatVerb(verb){\r\n\r\n return (\r\n
this.props.onViewVerb(verb.es, 'Verbs')} style={{padding:\"4px\",marginLeft:\"10%\", height:\"36px\", marginRight:\"10%\", borderTop: \"1px solid #a0a0a0\", clear:\"both\"}} >\r\n
{verb.es}
\r\n
{verb[this.props.profile.lang]}
\r\n
\r\n \r\n );\r\n\r\n }\r\n\r\n getVerbList(infinitives, ascending){\r\n var order = ascending===0 ? -1 : 1;\r\n infinitives.sort((a, b) => (a.es < b.es ? order : order *-1 ))\r\n var v = infinitives.map(i => this.formatVerb(i));\r\n return v;\r\n }\r\n\r\n\r\n getVerbsGrouped(infinitives,verbEnding){\r\n //var sortedInfinitives1 = infinitives.filter(i => i.es.lastIndexOf(verbEnding) === i.es.length-2).sort((a, b) => (a.es < b.es ? -1 : 1 ));\r\n var v = infinitives.filter(i => i.es.lastIndexOf(verbEnding) === i.es.length-2).sort((a, b) => (a.es < b.es ? -1 : 1 )).map(i => (
this.props.onViewVerb(i.es, 'Verbs')} >{i.es}
));\r\n return v;\r\n }\r\n\r\n\r\n\r\n render() {\r\n \r\n\r\n let infinitives = this.props.verbs.map(function (verb) { return verb.infinitive });\r\n\r\n \r\n const close = \r\n const sortUp = \r\n const sortDown = \r\n const list = \r\n \r\n\r\n\r\n\r\n return (\r\n\r\n
\r\n
this.props.onClose()} style={{zIndex:\"1000\", opacity:\"50%\", fontSize:\"200%\", position:\"sticky\",top : \"0px\" , textAlign:\"right\" , paddingRight:\"12px\"}}>{close}
\r\n\r\n

{this.props.profile.lang === 'en' ? \"Verbs\" : 'Verb'}

\r\n
\r\n this.setView(0)}>{sortUp}\r\n  \r\n this.setView(1)}>{sortDown}\r\n  \r\n this.setView(2)}>{list}\r\n \r\n\r\n
\r\n\r\n {this.state.view === 2\r\n ?\r\n
\r\n
\r\n
\r\n ar\r\n {this.getVerbsGrouped(infinitives,\"ar\")}\r\n
\r\n ar\r\n {this.getVerbsGrouped(infinitives,\"er\")}\r\n
\r\n ar\r\n {this.getVerbsGrouped(infinitives,\"ir\")}\r\n
\r\n\r\n
\r\n \r\n :\r\n\r\n
\r\n
\r\n
\r\n {this.getVerbList(infinitives,this.state.view)}\r\n
\r\n \r\n\r\n }\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n );\r\n }\r\n}\r\n\r\n","import React, { Component } from 'react';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\r\nimport { faTimes } from '@fortawesome/free-solid-svg-icons'\r\nimport { faRedoAlt } from '@fortawesome/free-solid-svg-icons'\r\nimport { faArrowAltCircleRight } from '@fortawesome/free-solid-svg-icons'\r\n\r\n\r\nconst verbsPrlevel = 4;\r\nconst totalNumQuestions = 10;\r\n\r\nexport class Quizz extends Component {\r\n constructor(props) {\r\n super(props);\r\n //console.log('admin props', );\r\n\r\n\r\n this.state = {\r\n currentQuestion: null,\r\n currentQnA : null,\r\n transitionNumber: null,\r\n checkingAnswer: null,\r\n correct: false,\r\n slideLeft: false,\r\n leftPos : \"0%\",\r\n display : \"block\",\r\n numbersCorrect : 0,\r\n showComplete : false\r\n };\r\n\r\n \r\n this.checkAnswerComplete = this.checkAnswerComplete.bind(this);\r\n \r\n\r\n \r\n\r\n }\r\n\r\n \r\n\r\n\r\n nextQuestion(){\r\n if(this.props.level>0){\r\n alert(\"only one level completed...\");\r\n return;\r\n }\r\n\r\n\r\n if(this.state.currentQuestion === totalNumQuestions){\r\n let audio = new Audio(\"https://spansk.net/audio/level-complete.mp3\"); audio.play();\r\n\r\n let updatedProfile = this.props.profile;\r\n const thisLevel = {\r\n level : this.props.level,\r\n score : this.state.numbersCorrect\r\n };\r\n\r\n if(updatedProfile.levels === null){\r\n // add first completed level\r\n updatedProfile.levels = [thisLevel];\r\n }\r\n else{\r\n var prevScore = updatedProfile.levels.find(l => l.level === this.props.level);\r\n if(prevScore){\r\n // update existing\r\n console.log(\"update existing\");\r\n prevScore.score = thisLevel.score;\r\n }\r\n else{\r\n // add new level\r\n console.log(\"add new level\");\r\n updatedProfile.levels.push(thisLevel);\r\n } \r\n }\r\n this.props.onUpdateProfile(updatedProfile);\r\n this.setState({\r\n showComplete : true\r\n });\r\n return;\r\n }\r\n \r\n let currentQuestion = (this.state.currentQuestion === null ? 1 : this.state.currentQuestion + 1);\r\n console.log(\"currentQuestion\",currentQuestion) ;\r\n\r\n const currentQnA = this.generateQandA();\r\n console.log(\"currentQnA\",currentQnA);\r\n this.setState({\r\n currentQnA: currentQnA,\r\n currentQuestion: currentQuestion,\r\n slideLeft: false,\r\n leftPos : \"0%\",\r\n display : \"block\",\r\n checkingAnswer : null\r\n });\r\n\r\n setTimeout(() => this.setTransitionNumber(), 300); \r\n }\r\n\r\n\r\n generateQandA(){\r\n \r\n // get random verb\r\n var r = Math.floor(Math.random() * verbsPrlevel) + (this.props.level * verbsPrlevel );\r\n \r\n var o = this.props.conjugate.verbs[r].objects;\r\n var c = this.props.conjugate.verbs[r].conjugations;\r\n\r\n var tense = 0; // infinitive\r\n var sentence = \"\";\r\n var sentence_no = \"\";\r\n\r\n var q = [];\r\n var a = [];\r\n // find all combinations\r\n for (var i = 0; i < o.es.length; i++) {\r\n sentence = \"\";\r\n sentence_no = \"\";\r\n // loop all subjects\r\n for (var s = 0; s < this.props.conjugate.subjects.es.length; s++) {\r\n for (var s2 = 0; s2 < this.props.conjugate.subjects.es[s].pronouns.length; s2++) {\r\n if(this.props.conjugate.subjects.es[s].optional){\r\n sentence = \"(\" + this.props.conjugate.subjects.es[s].pronouns[s2] + \")\";\r\n }\r\n else{\r\n sentence = this.props.conjugate.subjects.es[s].pronouns[s2];\r\n }\r\n \r\n sentence_no = this.props.conjugate.subjects.no[s].pronouns[s2];\r\n \r\n // get verb\r\n sentence = sentence + \" \" + c[tense].es[s];\r\n sentence_no = sentence_no + \" \" + c[tense].no[s];\r\n \r\n var pronouns = o.es[i];\r\n \r\n for (var p = 0; p < pronouns.length; p++) {\r\n if(pronouns[p] !== \"\"){\r\n //console.log(sentence + \" \" + pronouns[p] + \" \" + sentence_no + \" \" + o.no[i][p]);\r\n q.push(sentence + \" \" + pronouns[p]); \r\n a.push(sentence_no + \" \" + o.no[i][p]);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n \r\n const randomQuestion = Math.floor(Math.random() * q.length);\r\n const randomAnswer = Math.floor(Math.random() * 4); // 0 til 3\r\n \r\n var QnA = {\r\n question : q[randomQuestion],\r\n answers : [null,null,null,null],\r\n correctAnsverIndex : randomAnswer\r\n };\r\n QnA.answers[randomAnswer] = a[randomQuestion];\r\n\r\n for (var j = 0; j < 4; j++) {\r\n if(QnA.answers[j] === null){\r\n const randomWrongAnswer = Math.floor(Math.random() * a.length);\r\n QnA.answers[j] = a[randomWrongAnswer];\r\n\r\n }\r\n }\r\n\r\n return QnA;\r\n\r\n\r\n }\r\n\r\n setTransitionNumber(){\r\n let transitionNumber = this.state.transitionNumber === null ? 2 : this.state.transitionNumber +1 ;\r\n if(this.state.currentQuestion === totalNumQuestions){\r\n transitionNumber = null;\r\n }\r\n\r\n this.setState({\r\n transitionNumber: transitionNumber\r\n });\r\n }\r\n\r\n getVebList(fromIndex){\r\n var links = [];\r\n let verbs = this.props.conjugate.verbs;\r\n for (let i = fromIndex; i < fromIndex +verbsPrlevel; i++) {\r\n links.push(

this.props.onViewVerb(verbs[i].infinitive.es, 'Quizz')} style={{textDecoration : \"underline\"}} >{verbs[i].infinitive.es}

);\r\n }\r\n return (\r\n links\r\n );\r\n }\r\n\r\n\r\n closeView(){\r\n if(this.state.currentQuestion !== null && this.state.showComplete === false){\r\n const ret = window.confirm(\"Are you sure you want to cancel?\");\r\n if(ret === false)\r\n return;\r\n }\r\n this.props.onClose();\r\n }\r\n\r\n\r\n checkAnswer(a){\r\n if(this.state.checkingAnswer !== null) // Prevent second answer\r\n return;\r\n\r\n const correct = ((a-1) === this.state.currentQnA.correctAnsverIndex?true:false);\r\n\r\n if(correct){\r\n let audio = new Audio(\"https://spansk.net/audio/correct.mp3\"); audio.play();\r\n }\r\n else{\r\n let audio = new Audio(\"https://spansk.net/audio/wrong.mp3\"); audio.play(); \r\n }\r\n\r\n this.setState({\r\n checkingAnswer: a,\r\n correct: correct,\r\n numbersCorrect: this.state.numbersCorrect + (correct ? 1 : 0)\r\n });\r\n \r\n setTimeout(() => this.checkAnswerComplete(), 1000); \r\n\r\n }\r\n\r\n checkAnswerComplete(){\r\n this.setState({\r\n slideLeft: true,\r\n leftPos : \"-100%\"\r\n \r\n });\r\n setTimeout(() => this.prepareNextanswer(), 300); \r\n\r\n }\r\n\r\n prepareNextanswer(){\r\n console.log(\"prepareNextanswer\")\r\n this.setState({\r\n leftPos : \"100%\",\r\n display : \"none\"\r\n });\r\n setTimeout(() => this.prepareNextanswerComplete(), 50); \r\n }\r\n\r\n prepareNextanswerComplete(){\r\n console.log(\"prepareNextanswerComplete\")\r\n this.setState({\r\n display : \"block\"\r\n });\r\n setTimeout(() => this.nextQuestion(), 50); \r\n }\r\n\r\n\r\n\r\n retakeLevel(){\r\n this.setState({\r\n currentQuestion: null,\r\n transitionNumber: null,\r\n checkingAnswer: null,\r\n correct: false,\r\n slideLeft: false,\r\n leftPos : \"0%\",\r\n display : \"block\",\r\n numbersCorrect : 0,\r\n showComplete : false\r\n });\r\n this.props.onStartLevel(this.props.level);\r\n\r\n }\r\n\r\n gotoNextLevel(){\r\n\r\n\r\n this.setState({\r\n currentQuestion: null,\r\n transitionNumber: null,\r\n checkingAnswer: null,\r\n correct: false,\r\n slideLeft: false,\r\n leftPos : \"0%\",\r\n display : \"block\",\r\n numbersCorrect : 0,\r\n showComplete : false\r\n });\r\n this.props.onStartLevel(null);\r\n\r\n }\r\n\r\n render() {\r\n \r\n const fromVerbIndex = (this.props.level * verbsPrlevel );\r\n //console.log(\"fromVerbIndex\" , fromVerbIndex)\r\n\r\n const verbLinks = this.getVebList(fromVerbIndex);\r\n\r\n //console.log(\"conjugate\",this.props.conjugate);\r\n\r\n const close = \r\n\r\n const redoIcon = \r\n\r\n const nextIcon = \r\n\r\n \r\n \r\n\r\n \r\n return (\r\n\r\n
\r\n\r\n {this.state.transitionNumber !== null \r\n ?\r\n
\r\n {this.state.transitionNumber}\r\n
\r\n :\r\n null\r\n }\r\n \r\n\r\n
this.closeView()} style={{zIndex:\"1000\", opacity:\"50%\", fontSize:\"200%\", position:\"sticky\",top : \"0px\" , textAlign:\"right\" , paddingRight:\"12px\"}}>{close}
\r\n\r\n {this.state.currentQuestion === null\r\n ?\r\n
\r\n

{this.props.profile.lang === 'en' ? \"Level\" : \"Nivå\"} {this.props.level + 1}

\r\n
\r\n
\r\n
this.nextQuestion()} style={{border: \"2px solid ##146A3A\" ,backgroundColor: \"#07a0c3\", color:\"white\", fontWeight: \"bold\", marginLeft: \"20%\", width:\"60%\", borderRadius: \"8px\", fontSize: \"120%\", padding:\"8px\" }} >\r\n Start\r\n
\r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
{this.props.profile.lang === 'en' ?\"Verbs in this level:\" : \"Verb på dette nivået\"}\r\n
\r\n \r\n {verbLinks}\r\n
\r\n
\r\n :\r\n this.state.showComplete \r\n ?\r\n
\r\n

\r\n {this.props.profile.lang === 'en' ? \r\n \"LEVEL \" + (this.props.level + 1) + \" COMPLETED\" :\r\n \"NIVÅ \" + (this.props.level + 1) + \" FULLFØRT\"}\r\n

\r\n \r\n (Correct answers: {this.state.numbersCorrect})\r\n
\r\n
\r\n\r\n\r\n\r\n
this.gotoNextLevel()} style={{border: \"2px solid ##146A3A\" ,backgroundColor: \"#07a0c3\", color:\"white\", fontWeight: \"bold\", marginLeft: \"20%\", width:\"60%\", borderRadius: \"8px\", fontSize: \"120%\", padding:\"8px\" }} >\r\n {nextIcon}  Next level\r\n
\r\n
\r\n
this.retakeLevel()} style={{border: \"2px solid ##146A3A\" ,backgroundColor: \"#07a0c3\", color:\"white\", fontWeight: \"bold\", marginLeft: \"20%\", width:\"60%\", borderRadius: \"8px\", fontSize: \"120%\", padding:\"8px\" }} >\r\n {redoIcon}  Repeat this level\r\n
\r\n
\r\n \r\n \r\n
\r\n :\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n

{this.state.currentQnA.question}

\r\n\r\n
this.checkAnswer(1)} style={{minHeight:\"25px\", fontSize:\"120%\", fontWeight:\"bold\", backgroundColor:\"#fff\", padding:\"10px\", lineHeight:\"25px\", textAlign:\"center\", borderRadius:\"8px\", margin: \"10px\", border: this.state.checkingAnswer === 1 ? \"4px solid \" + (this.state.correct ? \"green\" : \"red\") : \"4px solid #000\"}}>\r\n {this.state.currentQnA.answers[0]}\r\n
\r\n
this.checkAnswer(2)} style={{minHeight:\"25px\", fontSize:\"120%\", fontWeight:\"bold\", backgroundColor:\"#fff\", padding:\"10px\", lineHeight:\"25px\", textAlign:\"center\", borderRadius:\"8px\", margin: \"10px\", border: this.state.checkingAnswer === 2 ? \"4px solid \" + (this.state.correct ? \"green\" : \"red\") : \"4px solid #000\"}}>\r\n {this.state.currentQnA.answers[1]}\r\n
\r\n
this.checkAnswer(3)} style={{minHeight:\"25px\", fontSize:\"120%\", fontWeight:\"bold\", backgroundColor:\"#fff\", padding:\"10px\", lineHeight:\"25px\", textAlign:\"center\", borderRadius:\"8px\", margin: \"10px\", border: this.state.checkingAnswer === 3 ? \"4px solid \" + (this.state.correct ? \"green\" : \"red\") : \"4px solid #000\"}}>\r\n {this.state.currentQnA.answers[2]}\r\n
\r\n
this.checkAnswer(4)} style={{minHeight:\"25px\", fontSize:\"120%\", fontWeight:\"bold\", backgroundColor:\"#fff\", padding:\"10px\", lineHeight:\"25px\", textAlign:\"center\", borderRadius:\"8px\", margin: \"10px\", border: this.state.checkingAnswer === 4 ? \"4px solid \" + (this.state.correct ? \"green\" : \"red\") : \"4px solid #000\"}}>\r\n {this.state.currentQnA.answers[3]}\r\n
\r\n
\r\n
(current question {this.state.currentQuestion})\r\n
(numbersCorrect: {this.state.numbersCorrect})\r\n\r\n
\r\n\r\n
\r\n \r\n }\r\n\r\n
\r\n\r\n );\r\n }\r\n}\r\n\r\n;","import React, { Component } from 'react';\r\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\r\nimport { faTimes } from '@fortawesome/free-solid-svg-icons'\r\n\r\n\r\nexport class User extends Component {\r\n constructor(props) {\r\n super(props);\r\n //console.log('admin props', );\r\n\r\n\r\n this.state = {\r\n isOpen: true,\r\n };\r\n }\r\n\r\n\r\n setLang(lang){\r\n this.props.onUpdateProfile(\r\n {\r\n ...this.props.profile,\r\n lang:lang\r\n }\r\n );\r\n }\r\n\r\n resetScores(){\r\n this.props.onUpdateProfile(\r\n {\r\n ...this.props.profile,\r\n levels:null\r\n }\r\n ); \r\n }\r\n\r\n renderResults(res, lang){\r\n return (\r\n res.map(l => \r\n \r\n {lang === 'no' ? 'Nivå ' : 'Level'} {l.level + 1}\r\n {l.score}\r\n )\r\n );\r\n \r\n }\r\n\r\n\r\n render() {\r\n const close = \r\n \r\n\r\n let results = this.props.profile.levels === null ? null : this.renderResults(this.props.profile.levels, this.props.profile.lang);\r\n\r\n return (\r\n\r\n
\r\n
this.props.onClose()} style={{zIndex:\"1000\", opacity:\"50%\", fontSize:\"200%\", position:\"sticky\",top : \"0px\" , textAlign:\"right\" , paddingRight:\"12px\"}}>{close}
\r\n \r\n

{this.props.profile.lang === 'en' ? \"User profile\" : 'Brukerprofil'}

\r\n \r\n
{this.props.profile.lang === 'en' ? \"Select language:\" : 'Velg språk:'}\r\n
\r\n
\r\n \r\n
this.setLang('no')} style={{ border: this.props.profile.lang === 'no' ? \"3px solid #2ec4b6\" : \"3px solid #dad2d8\" , borderRadius: \"16px\", marginLeft: \"10%\", width: \"35%\", float:\"left\"}}>\r\n \"Norsk\"\r\n
\r\n\r\n
this.setLang('en')} style={{ border: this.props.profile.lang === 'en' ? \"3px solid #2ec4b6\" : \"3px solid #dad2d8\" , borderRadius: \"16px\", marginLeft: \"10%\", width: \"35%\", float:\"left\"}}>\r\n \"English\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {\r\n this.props.profile.levels !== null\r\n ?\r\n
\r\n {this.props.profile.lang === 'en' ? \"My results\" : 'Mine resultater'}\r\n \r\n \r\n {results}\r\n \r\n
\r\n
\r\n
\r\n
this.resetScores()} style={{backgroundColor: \"#07a0c3\", color:\"white\", fontWeight: \"bold\", marginLeft: \"20%\", width:\"60%\", borderRadius: \"8px\", fontSize: \"120%\", padding:\"8px\" }} >\r\n {this.props.profile.lang === 'en' ? 'Reset scores' : 'Nulstill resultatene'}\r\n
\r\n
\r\n :\r\n null\r\n }\r\n\r\n
© 2020 TW \r\n
\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n\r\n );\r\n }\r\n}\r\n\r\n","export function MD5(string) {\r\n\r\n function RotateLeft(lValue, iShiftBits) {\r\n return (lValue<>>(32-iShiftBits));\r\n }\r\n \r\n function AddUnsigned(lX,lY) {\r\n var lX4,lY4,lX8,lY8,lResult;\r\n lX8 = (lX & 0x80000000);\r\n lY8 = (lY & 0x80000000);\r\n lX4 = (lX & 0x40000000);\r\n lY4 = (lY & 0x40000000);\r\n lResult = (lX & 0x3FFFFFFF)+(lY & 0x3FFFFFFF);\r\n if (lX4 & lY4) {\r\n return (lResult ^ 0x80000000 ^ lX8 ^ lY8);\r\n }\r\n if (lX4 | lY4) {\r\n if (lResult & 0x40000000) {\r\n return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);\r\n } else {\r\n return (lResult ^ 0x40000000 ^ lX8 ^ lY8);\r\n }\r\n } else {\r\n return (lResult ^ lX8 ^ lY8);\r\n }\r\n }\r\n \r\n function F(x,y,z) { return (x & y) | ((~x) & z); }\r\n function G(x,y,z) { return (x & z) | (y & (~z)); }\r\n function H(x,y,z) { return (x ^ y ^ z); }\r\n function I(x,y,z) { return (y ^ (x | (~z))); }\r\n \r\n function FF(a,b,c,d,x,s,ac) {\r\n a = AddUnsigned(a, AddUnsigned(AddUnsigned(F(b, c, d), x), ac));\r\n return AddUnsigned(RotateLeft(a, s), b);\r\n };\r\n \r\n function GG(a,b,c,d,x,s,ac) {\r\n a = AddUnsigned(a, AddUnsigned(AddUnsigned(G(b, c, d), x), ac));\r\n return AddUnsigned(RotateLeft(a, s), b);\r\n };\r\n \r\n function HH(a,b,c,d,x,s,ac) {\r\n a = AddUnsigned(a, AddUnsigned(AddUnsigned(H(b, c, d), x), ac));\r\n return AddUnsigned(RotateLeft(a, s), b);\r\n };\r\n \r\n function II(a,b,c,d,x,s,ac) {\r\n a = AddUnsigned(a, AddUnsigned(AddUnsigned(I(b, c, d), x), ac));\r\n return AddUnsigned(RotateLeft(a, s), b);\r\n };\r\n \r\n function ConvertToWordArray(string) {\r\n var lWordCount;\r\n var lMessageLength = string.length;\r\n var lNumberOfWords_temp1=lMessageLength + 8;\r\n var lNumberOfWords_temp2=(lNumberOfWords_temp1-(lNumberOfWords_temp1 % 64))/64;\r\n var lNumberOfWords = (lNumberOfWords_temp2+1)*16;\r\n var lWordArray=Array(lNumberOfWords-1);\r\n var lBytePosition = 0;\r\n var lByteCount = 0;\r\n while ( lByteCount < lMessageLength ) {\r\n lWordCount = (lByteCount-(lByteCount % 4))/4;\r\n lBytePosition = (lByteCount % 4)*8;\r\n lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount)<>>29;\r\n return lWordArray;\r\n };\r\n \r\n function WordToHex(lValue) {\r\n var WordToHexValue=\"\",WordToHexValue_temp=\"\",lByte,lCount;\r\n for (lCount = 0;lCount<=3;lCount++) {\r\n lByte = (lValue>>>(lCount*8)) & 255;\r\n WordToHexValue_temp = \"0\" + lByte.toString(16);\r\n WordToHexValue = WordToHexValue + WordToHexValue_temp.substr(WordToHexValue_temp.length-2,2);\r\n }\r\n return WordToHexValue;\r\n };\r\n \r\n function Utf8Encode(string) {\r\n string = string.replace(/\\r\\n/g,\"\\n\");\r\n var utftext = \"\";\r\n \r\n for (var n = 0; n < string.length; n++) {\r\n \r\n var c = string.charCodeAt(n);\r\n \r\n if (c < 128) {\r\n utftext += String.fromCharCode(c);\r\n }\r\n else if((c > 127) && (c < 2048)) {\r\n utftext += String.fromCharCode((c >> 6) | 192);\r\n utftext += String.fromCharCode((c & 63) | 128);\r\n }\r\n else {\r\n utftext += String.fromCharCode((c >> 12) | 224);\r\n utftext += String.fromCharCode(((c >> 6) & 63) | 128);\r\n utftext += String.fromCharCode((c & 63) | 128);\r\n }\r\n \r\n }\r\n \r\n return utftext;\r\n };\r\n \r\n var x=Array();\r\n var k,AA,BB,CC,DD,a,b,c,d;\r\n var S11=7, S12=12, S13=17, S14=22;\r\n var S21=5, S22=9 , S23=14, S24=20;\r\n var S31=4, S32=11, S33=16, S34=23;\r\n var S41=6, S42=10, S43=15, S44=21;\r\n \r\n string = Utf8Encode(string);\r\n \r\n x = ConvertToWordArray(string);\r\n \r\n a = 0x67452301; b = 0xEFCDAB89; c = 0x98BADCFE; d = 0x10325476;\r\n \r\n for (k=0;k \r\n\r\n if(this.state.currentView === '')\r\n return (\r\n
\r\n
this.gotoView('User')} style={{zIndex:\"1000\", opacity:\"50%\", fontSize:\"200%\", position:\"sticky\",top : \"0px\" , textAlign:\"left\" , paddingLeft:\"12px\"}}>{user}
\r\n
\r\n

spansk.net

\r\n
\r\n
\r\n \"Quizz\"\r\n
\r\n \r\n
\r\n
\r\n
this.startQuizz(null)} style={{backgroundColor: \"#07a0c3\", color:\"white\", fontWeight: \"bold\", marginLeft: \"20%\", width:\"60%\", borderRadius: \"8px\", fontSize: \"120%\", padding:\"8px\" }} >\r\n {this.state.profile.lang === 'en' ? 'Go to Quizz' : 'Gå til Quizz'}\r\n
\r\n
\r\n
\r\n this.gotoView('Verbs')} style={{textDecoration:\"underline\", color:\"#fff\"}} >{this.state.profile.lang === 'en' ? \"Or learn verbs\" : 'Eller lær verb'} \r\n \r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n );\r\n\r\n\r\n\r\n return (\r\n
\r\n { this.state.currentView === 'Verbs' ? : null } \r\n { this.state.currentView === 'Learn' ? : null } \r\n { this.state.currentView === 'Quizz' ? : null } \r\n { this.state.currentView === 'User' ? : null } \r\n
\r\n );\r\n }\r\n}\r\n\r\n","import {Main} from './Main';\nimport './App.css';\n\n\n\n\nfunction App() {\n return (\n
\n\n
\n\n
\n );\n}\n\nexport default App;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport App from './App';\nimport './swiper.css';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root')\n);\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\n\n"],"sourceRoot":""}