{"version":3,"sources":["quiz2-source.js"],"names":[],"mappings":"aAAA,GAAM,eAAN,CACI,SAAW,CADf,CAGI,WAHJ,CAKM,WAAa,WAAU,CACtB,YADsB,GAEzB,EAAQ,kBAAR,CAA2B,YAA3B,kBAEU,UAAU,GAAV,CAAc,+TAQN,WAAe,GAAf,CAAmB,+cAAnB,EAQA,IARA,CAQK,EARL,CARM,sBAAd,EAkBA,IAlBA,CAkBK,EAlBL,CAFV,8dAFyB,CAiCzB,WAjCyB,CAkC5B,CAvCD,CAyCM,UAAY,WAAe,WAErB,CAAC,QAAQ,2EAAR,CAFoB,SAM7B,SAAS,QAAT,CAAoB,SAAS,QANA,CAOhC,CAhDD,CAkDM,aAAe,iBAAuC,CACxD,eAA0B,EAAI,KAD0B,CAExD,SAAS,cAAT,IAAiC,KAAjC,CAAuC,UAAvC,CAAoD,MAFI,CAGxD,kBAHwD,CAIxD,aAJwD,CAKxD,UACH,CAxDD,CA0DM,WAAa,kBACf,cAAwB,cAAxB,CACA,SAAS,cAAT,cAAgD,SAAhD,2EADA,CAEA,SAAS,cAAT,cAAgD,SAAhD,+EAHe,CA1DnB,CA+DM,aAAe,WAAS,OAEjB,IAFiB,KAEL,SAAS,CAAT,CAFK,KAGR,EAAT,GAHiB,CAGG,SAAS,CAAT,CAHH,KAIR,EAAT,GAJiB,CAIG,SAAS,CAAT,CAJH,KAKT,EAAR,EALiB,CAKE,SAAS,CAAT,CALF,KAMR,EAAT,GANiB,CAMG,SAAS,CAAT,CANH,KAOR,EAAT,GAPiB,CAOG,SAAS,CAAT,CAPH,KAQR,EAAT,GARiB,CAQG,SAAS,CAAT,CARH,CASN,SAAS,CAAT,CAEvB,CA1ED,CA4EA,QAAS,UAAT,EAAqB,CACjB,GAAI,UAAY,QAAQ,MAAxB,CAEI,MADA,OAAM,iDAAN,CACA,IAGJ,GAAI,GAAU,CAAd,CACI,EAAY,CADhB,CAEA,YACK,OADL,CACc,oBACN,KAAU,UAAV,CAEI,GAFJ,CAII,GALE,CADd,CARiB,CAiBjB,GAAI,GAAiB,KAAK,KAAL,CAAwC,GAA7B,EAAC,EAAU,QAAQ,MAAnB,CAAX,CAArB,CACI,2CAEmC,QAAQ,MAF3C,8EADJ,CAUA,MADA,gBACA,CAAwB,GAAjB,KAAyB,UAAzB,EAA6C,aAA7C,CAA0E,QACpF,CAED,GAAM,iBAAkB,WAAW,CAC/B,MAAO,GAAG,KAAH,CAAS,IAAT,CACH,SAAS,sBAAT,GADG,EAGN,OAHM,CAGE,kBAAS,GAAM,QAAN,GAAT,CAHF,CAIV,CALD","file":"quiz2.js","sourcesContent":["const useranswers = new Array()\r\nlet answered = 0\r\n\r\nlet rendered = false\r\n\r\nconst renderQuiz = element =>{\r\n if(rendered === true){return}\r\n element.insertAdjacentHTML('afterbegin',\r\n `\r\n ${questions.map((question, index) =>\r\n `\r\n

\r\n ${question}\r\n \r\n \"\"\r\n \r\n

\r\n ${choices[index].map((choice, cIndex) =>\r\n `\r\n \r\n \r\n
\r\n `\r\n ).join('')}\r\n `\r\n ).join('')}\r\n

\r\n \r\n \r\n

\r\n

\r\n \"Correct!\"\r\n \"Incorrect!\"\r\n

\r\n `\r\n )\r\n rendered = true\r\n}\r\n\r\nconst resetQuiz = showConfirm => {\r\n if (showConfirm){\r\n if (!confirm(\"Are you sure you want to reset your answers and start from the beginning?\")){\r\n return false\r\n }\r\n }\r\n document.location = document.location;\r\n}\r\n\r\nconst submitAnswer = (questionId, obj, classId, labelId) => {\r\n useranswers[questionId] = obj.value\r\n document.getElementById(labelId).style.fontWeight = \"bold\"\r\n disableQuestion(classId)\r\n showResult(questionId)\r\n answered++\r\n}\r\n\r\nconst showResult = questionId =>\r\n answers[questionId] === useranswers[questionId] ?\r\n document.getElementById(`result_${questionId}`).innerHTML = `\"Correct!\"` :\r\n document.getElementById(`result_${questionId}`).innerHTML = `\"Incorrect!\"`\r\n\r\nconst scoreMessage = score => {\r\n switch (score) {\r\n case 100: return response[0]\r\n case score >= 90: return response[1]\r\n case score >= 70: return response[2]\r\n case score > 50: return response[3]\r\n case score >= 40: return response[4]\r\n case score >= 20: return response[5]\r\n case score >= 10: return response[6]\r\n default: return response[7]\r\n }\r\n}\r\n\r\nfunction showScore() {\r\n if (answered != answers.length) {\r\n alert(\"You have not answered all of the questions yet!\")\r\n return false\r\n }\r\n\r\n let correct = 0\r\n let incorrect = 0\r\n useranswers\r\n .forEach( (value,index) =>\r\n value === answers[index]\r\n ?\r\n correct++\r\n :\r\n incorrect++\r\n )\r\n\r\n let percentCorrect = Math.round((correct / answers.length) * 100)\r\n let alertMsg =\r\n `\r\n You scored ${correct} out of ${answers.length}\r\n\r\n You correctly answered ${percentCorrect}% of the questions!\r\n\r\n `\r\n\r\n scoreMessage(percentCorrect)\r\n return percentCorrect < 100 ? ( confirm(alertMsg) ? resetQuiz(false) : false ) : alert(alertMsg)\r\n}\r\n\r\nconst disableQuestion = classId => {\r\n return [].slice.call(\r\n document.getElementsByClassName(classId)\r\n )\r\n .forEach(input => input.disabled = true)\r\n}\r\n"]}