-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathjeeadvmarkscalculator-final.js
1 lines (1 loc) · 3.48 KB
/
jeeadvmarkscalculator-final.js
1
let anskeys={"26s1":{618074256:[2],618074257:[3],618074258:[2],618074259:[1],618074260:[1,3,4],618074261:[2,3,4],618074262:[1,2,3,4],618074263:8,618074264:20,618074265:16,618074266:665,618074267:5,618074268:42,618074269:[3],618074270:[3],618074271:[3],618074272:[3],618074273:[1],618074274:[1],618074275:[2],618074276:[3],618074277:[1,2,3],618074278:[1,2,4],618074279:[1,2],618074280:25e3,618074281:12,618074282:8,618074283:200,618074284:3,618074285:18,618074286:[2],618074287:[3],618074288:[1],618074289:[1],618074290:[4],618074291:[1],618074292:[2],618074293:[3],618074294:[1,2,3],618074295:[1,2,4],618074296:[1,4],618074297:8120,618074298:3,618074299:18,618074300:1,618074301:909,618074302:1,618074303:[3],618074304:[2],618074305:[1],618074306:[3]},"26s2":{618074205:[2],618074206:[2],618074207:[2],618074208:[4],618074209:[2,3],618074210:[1,3],618074211:[1,3],618074212:51,618074213:11,618074214:1,618074215:2,618074216:12,618074217:5,618074218:20,618074219:36,618074220:0,618074221:.25,618074222:[1],618074223:[1],618074224:[1],618074225:[1],618074226:[2,4],618074227:[1,2,4],618074228:[1,2],618074229:3,618074230:2,618074231:3,618074232:12,618074233:171,618074234:96,618074235:601.5,618074236:24,618074237:.75,618074238:4.25,618074239:[2],618074240:[4],618074241:[4],618074242:[2],618074243:[1,3],618074244:[3],618074245:[2,4],618074246:2500,618074247:150,618074248:41,618074249:142,618074250:4,618074251:9,618074252:2,618074253:93036,618074254:2,618074255:2}},fsheet=[],subjectsheet={Math:0,Phy:0,Chem:0},infotable=document.querySelector(".main-info-pnl").querySelectorAll("table > tbody > tr"),shift=infotable[3].lastElementChild.innerText.split("/")[0]+("9"==infotable[4].lastElementChild.innerText[0]?"s1":"s2"),anskey=anskeys[shift],sections=document.querySelector(".grp-cntnr").querySelectorAll(".section-cntnr"),lettermapper=_=>{for(let $=0;$<_.length;$++)_[$]=_[$].toLowerCase().charCodeAt(0)-96;return _},marksscheme=[[3,-1],[4,-2],[4,0],[3,0]];sections.forEach((_,$)=>{let e={lbl:"",keys:{a:{},u:[],i:[],c:[],pc:[]},sub:"",marks:0};e.lbl=_.querySelector(".section-lbl>.bold").innerHTML,e.sub=e.lbl.split(" ")[0],section_ms_id=e.lbl.split(" ")[2];_.querySelectorAll(".question-pnl").forEach((_,$)=>{let t=_.querySelectorAll(".rw>table")[0].querySelectorAll("tr"),s=_.querySelectorAll(".rw>table")[1].querySelectorAll("tr"),l=s[0].querySelector(".bold").innerHTML,r=s[1].querySelector(".bold").innerHTML;if("MCQ"==l||"MSQ"==l){let o=s[2].querySelector(".bold").innerHTML;o.trim().localeCompare("--")?((o=lettermapper(o=o.split(","))).forEach((_,$)=>{o[$]=parseInt(t[2+_].querySelector("img").name.split("_o")[1].charAt(0))}),e.keys.a[r]=o,JSON.stringify(o=o.sort())===JSON.stringify(anskey[r])?(e.marks+=marksscheme[section_ms_id-1][0],e.keys.c.push(r)):"2"==section_ms_id?o.every(_=>anskey[r].includes(_))?(e.marks+=o.length,e.keys.pc.push(r)):(e.marks+=marksscheme[1][1],e.keys.i.push(r)):(e.marks+=marksscheme[section_ms_id-1][1],e.keys.i.push(r))):e.keys.u.push(r)}else(opt=t[4].querySelector(".bold").innerHTML).trim().localeCompare("--")?(e.keys.a[r]=opt,e.marks+=marksscheme[section_ms_id-1][opt==anskey[r]?0:1],opt==anskey[r]?e.keys.c.push(r):e.keys.i.push(r)):e.keys.u.push(r)}),subjectsheet[e.sub]+=e.marks,fsheet.push(e)}),console.log(fsheet);let total=0;fsheet.forEach((_,$)=>{console.log("## Section : ",_.lbl,"\nAttempted : ",_.keys.a,"\nUnAttempted : ",_.keys.u,"\nIncorrect : ",_.keys.i,"\nPartially Correct : ",_.keys.pc,"\nScore : ",_.marks),total+=_.marks}),console.log("### Subject :",subjectsheet),console.log("### Score : ",total);