Widget:SandboxNew: Difference between revisions

Jump to navigation Jump to search
Matt Pijoan (talk | contribs)
No edit summary
Matt Pijoan (talk | contribs)
No edit summary
 
(69 intermediate revisions by the same user not shown)
Line 36: Line 36:
<script type="text/javascript">
<script type="text/javascript">
var countdownTimer, countdownCurrent;
var countdownTimer, countdownCurrent;
$.getScript("http://wikidoc.org/includes/jquery.timer.js", function (){
$.getScript("http://wikidoc.org/includes/jquery.timer.js", function () {
$(document).ready(function(){
$(document).ready(function () {
countdownTimer = $.timer(function() {
countdownTimer = $.timer(function () {
var min = parseInt(countdownCurrent/6000);
var min = parseInt(countdownCurrent / 6000);
var sec = parseInt(countdownCurrent/100)-(min*60);
var sec = parseInt(countdownCurrent / 100) - (min * 60);
var micro = pad(countdownCurrent-(sec*100)-(min*6000),2);
var micro = pad(countdownCurrent - (sec * 100) - (min * 6000), 2);
var output = "00"; if(min > 0) {output = pad(min,2);}
var output = "00";
$('.countdowntime').html(output+":"+pad(sec,2));
if (min > 0) {
if(countdownCurrent == 0) {
output = pad(min, 2);
countdownTimer.stop();
}
endExam();
$('.countdowntime').html(output + ":" + pad(sec, 2));
} else {
if (countdownCurrent == 0) {
countdownCurrent-=7;
countdownTimer.stop();
if(countdownCurrent < 0) {countdownCurrent=0;}
endExam();
}
} else {
}, 70, false);
countdownCurrent -= 7;
if (countdownCurrent < 0) {
countdownCurrent = 0;
}
}
}, 70, false);


});
});
});
$(document).ready(function () {
$.getScript("http://wikidoc.org/resources/mediawiki.api/mediawiki.api.js", function () {
if (!mw.user.name()) {
alert("Please Log In To Continue.");
window.location.replace("http://wikidoc.org/index.php?title=Special:UserLogin&returnto=User%3AMatt+Pijoan");
}
});
});
});
$(document).ready(function(){
function endExam() {
$.getScript("http://wikidoc.org/resources/mediawiki.api/mediawiki.api.js", function(){
hideButtons();
if(!mw.user.name()){
var correct = 0;
alert("Please Log In To Continue.");
var Results = $("input[name='results']").val().split(",");
window.location.replace("http://wikidoc.org/index.php?title=Special:UserLogin&returnto=User%3AMatt+Pijoan");
for (var i = 0; i < Results.length; i++) {
}
if (Results[i].valueOf() == new String("true").valueOf()) {
});
correct++;
});
}
function endExam(){
}
hideButtons();
var n = (100 / Results.length) * correct;
var correct = 0;
var Q = document.getElementById('question');
var Results = $("input[name='results']").val().split(",");
Q.innerHTML = "<h2>Exam Results:</h2>";
for (var i=0;i<Results.length;i++){
Q.innerHTML += "<br /><br /><b>Questions Asked:</b> " + Results.length.toString();
if(Results[i].valueOf() == new String("true").valueOf()){
Q.innerHTML += "<br /><br /><b>Questions Answered Correctly:</b> " + correct.toString();
correct++;
Q.innerHTML += "<br /><br /><b>Score:</b> " + Math.floor(n).toString() + "%";
}
Q.innerHTML += "<form><input type='button' onclick='location.reload()' value='Back to start' /><input type='button' onclick='selectExam()' value='Start a new exam' /></form>";
}
return;
var n = (100 / Results.length ) * correct;
var Q = document.getElementById('question');
Q.innerHTML = "<h2>Exam Results:</h2>";
Q.innerHTML += "<br /><br /><b>Questions Asked:</b> " + Results.length.toString();
Q.innerHTML += "<br /><br /><b>Questions Answered Correctly:</b> " + correct.toString();
Q.innerHTML += "<br /><br /><b>Score:</b> " + Math.floor(n).toString() + "%";
Q.innerHTML += "<form><input type='button' onclick='location.reload()' value='Back to start' /><input type='button' onclick='selectExam()' value='Start a new exam' /></form>";
return;
}
}


function loginCheck(arg, exam){
function loginCheck(exam) {
var Q = document.getElementById('question');
var form = "<div id='Pat' class='noSelect WBRButton'><br />USMLE Format</div><div id='Flash' class='noSelect WBRButton'><br />Flash Cards</div>";
var form = "Man Mode: <input type='radio' name='type' id='type' value='ph' /> Korean Mode: <input type='radio' name='type' id='type' value='fc' />";
$("#question").html(form);
Q.innerHTML = form;
$(".WBRButton").click(function () {
$("input[name='type']").click(function(){
                alert($(this).attr('id'));
$("input[name='FC']").val($("input[name='type']:checked").val());
var form = "<div id='y' class='noSelect WBRButton'><br />Enable Timer</div><div id='n' class='noSelect WBRButton'><br />Disable Timer</div>";
var form = "Timer?<br />Yes <input type='radio' name='timer' value=1 /> No: <input type='radio' name='timer' value=0 />";
$("#question").html(form);
Q.innerHTML = form;
$(".WBRButton").click(function () {
$("input[name='timer']").click(function(){
                        alert($(this).attr('id'));
if($("input[name='timer']:checked").val()==='1'){
if ($(this).attr('id') === 'y') {
var sel = "<select name='amt' id='amt'><option disabled selected>Choose</option><option value='1'>1</option><option value='30'>30</option><option value='40'>40</option></select>";
var form = "<div id='1' class='noSelect WBRButton'><br />1 Minute</div><div id='10' class='noSelect WBRButton'><br />10 Minute</div><div id='20' class='noSelect WBRButton'><br />20 Minutes</div><div id='40' class='noSelect WBRButton'><br />40 Minutes</div>"
Q.innerHTML = sel;
$("#question").html(form);
$("#amt").change(function(){
$(".WBRButton").click(function () {
countdownCurrent = parseInt($("#amt").val())*6000;
                                        alert($(this).parent.attr('id'));
countdownCurrent = parseInt($(this).attr('id')) * 6000;


examHandler(arg, exam);
examHandler(exam);
});
});
} else {
} else {
examHandler(arg, exam);
examHandler(exam);
}
}
});
});
});
});
}
}
function pad(number, length) {
function pad(number, length) {
var str = '' + number;
var str = '' + number;
while (str.length < length) {str = '0' + str;}
while (str.length < length) {
str = '0' + str;
}
return str;
return str;
}
}
function examHandler(arg,exam){
function examHandler(exam) {
if(arg === 'Random'){
        if (exam === 'Queue') {
selectExam(exam);
            queueExam();
} else if(arg === 'Queue'){
} else {
queueExam();
selectExam(exam);
} else {
}
alert("Wat.");  
}


$('#next').on('click', function(event){
$('#next').on('click', function (event) {
var Q = document.getElementById('question');
var Q = document.getElementById('question');
Q.innerHTML = "";
Q.innerHTML = "";
var Questions = $("input[name='stash']").val().split(",");
var Questions = $("input[name='stash']").val().split(",");
var Pos = parseInt($("input[name='pos']").val());
var Pos = parseInt($("input[name='pos']").val());
if(Pos < Questions.length){
if (Pos < Questions.length) {
$("input[name='pos']").val(Pos + 1);
$("input[name='pos']").val(Pos + 1);
loadQuestion();
loadQuestion();
}
} else {
else {
endExam();
endExam();
return;
return;
}
}
});
});


$('#home').on('click', function(event){
$('#home').on('click', function (event) {
location.reload();
location.reload();
});
});


$('#back').on('click', function(event){
$('#back').on('click', function (event) {
var Q = document.getElementById('question');
var Q = document.getElementById('question');
Q.innerHTML = "";
Q.innerHTML = "";
var Questions = $("input[name='stash']").val().split(",");
var Questions = $("input[name='stash']").val().split(",");
var Pos = parseInt($("input[name='pos']").val());
var Pos = parseInt($("input[name='pos']").val());
if(Pos > 0){
if (Pos > 0) {
$("input[name='pos']").val(Pos - 1);
$("input[name='pos']").val(Pos - 1);
loadQuestion();
loadQuestion();
} else {
alert("Already at beginning");
}
});
}
}
else {
function catQuestionCount(exam, type, cat){
alert("Already at beginning");
var queryString = "[[ExamType::"+exam+"]] ";
}
if(type === "m") {
});
queryString += "[[MainCategory::"+cat+"]]";
} else {
queryString += "[[SubCategory::"+cat+"]]";
}
}
function questionCount(exam, main, sub){
var queryString = "[[ExamType::"+exam+"]][[MainCategory::";
for(var i=0;i<main.length;i++){
  queryString += main[i];
      if(i!=main.length-1){
        queryString +="&#124;&#124;";
      }
  }
queryString += "]][[SubCategory::";
for(var i=0;i<sub.length;i++){
  queryString += sub[i];
  if(i!=sub.length-1){
      queryString +="&#124;&#124;";
  }
}
queryString+="]]";
var api = new mw.Api();
var api = new mw.Api();
api.get( {
api.get( {
Line 177: Line 171:
  }, {
  }, {
ok: function (data) {
ok: function (data) {
alert(Object.keys(data.query.results).length);
  $.each(data.query.results,function(index, value) {
}});
      var count = parseInt(document.getElementById(cat).innerHTML);
      count = count+1;
      document.getElementById(cat).innerHTML = count.toString();
});
}});}
 
function completeQuestionCount(exam, main, sub) {
var queryString = "http://wikidoc.org/index.php?title=Special:Ask&q=[[ExamType::" + urlSwapSpace(exam) + "]][[MainCategory::";
for (var j = 0; j < main.length; j++) {
queryString += urlSwapSpace(main[j]);
if (j != main.length - 1) {
queryString += "||";
}
}
queryString += "]][[SubCategory::";
for (var i = 0; i < sub.length; i++) {
queryString += urlSwapSpace(sub[i]);
if (i != sub.length - 1) {
queryString += "||";
}
}
queryString += "]]&eq=yes&p[format]=json";
        $.get(queryString, function (data) {
var obj =  jQuery.parseJSON(data);
$("#countShow").html(obj.rows.toString());
$.each(obj.results, function(index, value){
      alert(value.fulltext);
});
$("#numQues").removeAttr('disabled');
});
}
}


function queueExam(){
function urlSwapSpace(swap){
var api = new mw.Api();
  return swap.split(' ').join('+');
var result;
var pageString =  "User:" + mw.user.name() + "/WBRQueue";
api.get( {
action: 'query',
format: 'json',
        titles: pageString,
export: 'export',
        } , {
ok:function (data) {
        var xml = data.query.export["*"];
    xmlDoc = $.parseXML( xml ),
    $xml = $( xmlDoc ),
    $title = $xml.find( "text" );
if($title.text().indexOf('Placeholder,') == -1){
addNewSection( "User:" + mw.user.name() + "/WBRQueue",'Placeholder,', mw.user.tokens.get( 'editToken' ) );
alert('First Timah!');
return false;
}
}
    var Questions = $title.text().split(",");
Questions = jQuery.grep(Questions, function(value) {
        return value != 'Placeholder';
      });
if(Questions.length < 1){
alert("You do not have a Queue!");
return false;
} else {


    $("input[name='stash']").val(Questions);
function queueExam() {
        var Q = document.getElementById('question');
var api = new mw.Api();
        Q.innerHTML = "";
var result;
        $('#next').css('visibility','visible');
var pageString = "User:" + mw.user.name() + "/WBRQueue";
} } });  
api.get({
action : 'query',
format : 'json',
titles : pageString,
export : 'export',
}, {
ok : function (data) {
var xml = data.query.export["*"];
xmlDoc = $.parseXML(xml),
$xml = $(xmlDoc),
$title = $xml.find("text");
if ($title.text().indexOf('Placeholder,') ==r-1) {
addNewSection("User:" + mw.user.name() + "/WBRQueue", 'Placeholder,', mw.user.tokens.get('editToken'));
alert('First Timah!');
return false;
}
var Questions = $title.text().split(",");
Questions = jQuery.grep(Questions, function (value) {
return value != 'Placeholder';
});
if (Questions.length < 1) {
alert("You do not have a Queue!");
return false;
} else {
 
$("input[name='stash']").val(Questions);
var Q = document.getElementById('question');
Q.innerHTML = "";
$('#next').css('visibility', 'visible');
}
}
});
}
}
function selectExam(exam){
function selectExam(exam) {
var Q = document.getElementById('question');
var Q = document.getElementById('question');
if(exam === "MCAT"){
if (exam === "MCAT") {
var mc = new Array("Biology", "Cell", "Enzymes", "Microbiology", "Cellular Metabolism", "Reproduction", "Embryology", "Musculoskeletal System", "Digestive System ", "Excretory System", "Respiratory System", "Skin", "Circulatory System", "Immune System", "Homeostasis", "Endocrine System", "Nervous System ", "Genetics", "Evolution", "Organic Chemistry", "Nomenclature", "Bonding/Structure", "Isomers", "Alkanes", "AlkenesAlkynes", "Haloalkanes", "Aromatic Compounds", "Alcohols", "Ethers", "Aldehydes ", "Ketones", "Carboxylic Acid", "Carboxylic Acid Derivatives", "Amines", "Nitrogen Containing Compounds", "Purification", "Spectroscopy", "Separations", "Carbohydrates", "Amino Acids", "Peptides", "Proteins", "Nucleic", "Acids", "Chemistry", "Atomic Structure", "Periodic Table", "Phases", "Gases", "Bonding", "Stoichiometry", "Kinetics", "Thermochemistry", "Phases", "Solutions", "Acids and Bases", "Redox Reactions", "Electrochemistry", "Physics", "Kinematics", "Fluids", "Solids", "Newtonian Mechanics", "Momentum", "Energy", "Thermodynamics", "Electrostatics", "Magnetism", "DC Circuits", "AC Circuits", "Periodic Motion", "Waves", "Sound", "Optics", "Light", "Atomic Phenomena", "Nuclear Phenomena" );
var mc = new Array("Biology", "Cell", "Enzymes", "Microbiology", "Cellular Metabolism", "Reproduction", "Embryology", "Musculoskeletal System", "Digestive System ", "Excretory System", "Respiratory System", "Skin", "Circulatory System", "Immune System", "Homeostasis", "Endocrine System", "Nervous System ", "Genetics", "Evolution", "Organic Chemistry", "Nomenclature", "Bonding/Structure", "Isomers", "Alkanes", "AlkenesAlkynes", "Haloalkanes", "Aromatic Compounds", "Alcohols", "Ethers", "Aldehydes ", "Ketones", "Carboxylic Acid", "Carboxylic Acid Derivatives", "Amines", "Nitrogen Containing Compounds", "Purification", "Spectroscopy", "Separations", "Carbohydrates", "Amino Acids", "Peptides", "Proteins", "Nucleic", "Acids", "Chemistry", "Atomic Structure", "Periodic Table", "Phases", "Gases", "Bonding", "Stoichiometry", "Kinetics", "Thermochemistry", "Phases", "Solutions", "Acids and Bases", "Redox Reactions", "Electrochemistry", "Physics", "Kinematics", "Fluids", "Solids", "Newtonian Mechanics", "Momentum", "Energy", "Thermodynamics", "Electrostatics", "Magnetism", "DC Circuits", "AC Circuits", "Periodic Motion", "Waves", "Sound", "Optics", "Light", "Atomic Phenomena", "Nuclear Phenomena");
var tableTemp = "<table style='width:100%;'><th><td><b>Keyword</b></td></th><tr>";
var tableTemp = "<table style='width:100%;'><th><td><b>Keyword</b></td></th><tr>";
for(var i=0;i<mc.length;i++){
for (var i = 0; i < mc.length; i++) {
tableTemp += "<td><input type='checkbox' name='MainCat' value='"+mc[i]+"' />"+mc[i]+"</td>";
tableTemp += "<td><input type='checkbox' name='MainCat' value='" + mc[i] + "' />" + mc[i] + "</td>";
if((i+1)%4 == 0){tableTemp += "</tr><tr>";}}
if ((i + 1) % 4 == 0) {
Q.innerHTML += tableTemp + "</tr></table><input type='checkbox' name='SubCat' style='visibility:hidden' value='MCAT' checked />";
tableTemp += "</tr><tr>";
} else {
}
var categories = new Array();
}
if(exam === "USMLE Step 1"){
Q.innerHTML += tableTemp + "</tr></table><input type='checkbox' name='SubCat' style='visibility:hidden' value='MCAT' checked />";
categories['main'] = new Array("Anatomy", "Behavioral Science/Psychiatry", "Biochemistry", "Biostatistics/ Epidemiology", "Embryology", "Ethics", "Genetics", "Histology", "Immunology", "Microbiology", "Pathology", "Pathophysiology", "Pharmacology", "Physiology");
} else {
categories['sub'] = new Array("Cardiology", "Dermatology", "Endocrine", "Gastrointestinal", "Genitourinary", "Head and Neck", "Hematology", "Musculoskeletal/Rheumatology", "Neurology", "Oncology", "Pulmonology", "Reproductive", "Renal", "Vascular", "General Principles", "Infectious Disease");
var categories = new Array();
} else if(exam === "USMLE Step 2 CK"){
if (exam === "USMLE Step 1") {
categories['main'] = new Array("Internal medicine", "Surgery", "OB/GYN", "Pediatrics", "Psychiatry");
categories['main'] = new Array("Anatomy", "Behavioral Science/Psychiatry", "Biochemistry", "Biostatistics/Epidemiology", "Embryology", "Ethics", "Genetics", "Histology", "Immunology", "Microbiology", "Pathology", "Pathophysiology", "Pharmacology", "Physiology");
categories['sub'] = new Array("Allergy/Immunology", "Cardiovascular", "Dermatology", "Endocrine", "Gastrointestinal", "Hepatology", "Genitourinary", "Head and Neck", "Hematology", "Infectious Disease", "Musculoskeletal/Rheumatology", "Neurology", "Obstetrics & Gynecology", "Oncology", "Ophthalmology", "Pediatrics", "Poisoning", "Preventive Medicine", "Psychiatry", "Respiratory", "Surgery", "Biostatistics/ Epidemiology", "Ethics", "Electrolytes", "Genetics", "Miscellaneous");
categories['sub'] = new Array("Cardiology", "Dermatology", "Endocrine", "Gastrointestinal", "Genitourinary", "Head and Neck", "Hematology", "Musculoskeletal/Rheumatology", "Neurology", "Oncology", "Pulmonology", "Reproductive", "Renal", "Vascular", "General Principles", "Infectious Disease");
} else if(exam === "USMLE Step 3"){
} else if (exam === "USMLE Step 2 CK") {
categories['main'] = new Array("Community Medical Health Center", "Primary Care Office", "Inpatient Facilities", "Emergency Room");
categories['main'] = new Array("Internal medicine", "Surgery", "OB/GYN", "Pediatrics", "Psychiatry");
categories['sub'] = new Array("Allergy/Immunology", "Cardiovascular", "Dermatology", "Endocrine", "Gastrointestinal", "Hepatology", "Genitourinary", "Head and Neck", "Hematology", "Infectious Disease", "Musculoskeletal/Rheumatology", "Neurology", "Obstetrics & Gynecology", "Oncology", "Ophthalmology", "Pediatrics", "Poisoning", "Preventive Medicine", "Psychiatry", "Respiratory", "Surgery", "Biostatistics/ Epidemiology", "Ethics", "Electrolytes", "Genetics", "Miscellaneous");
categories['sub'] = new Array("Allergy/Immunology", "Cardiovascular", "Dermatology", "Endocrine", "Gastrointestinal", "Hepatology", "Genitourinary", "Head and Neck", "Hematology", "Infectious Disease", "Musculoskeletal/Rheumatology", "Neurology", "Obstetrics and Gynecology", "Oncology", "Ophthalmology", "Pediatrics", "Poisoning", "Preventive Medicine", "Psychiatry", "Respiratory", "Surgery", "Biostatistics/ Epidemiology", "Ethics", "Electrolytes", "Genetics", "Miscellaneous");
}else if(exam === "Board Review"){
} else if (exam === "USMLE Step 3") {
categories['main'] = new Array("Adolescent Medicine", "Advanced Heart Failure and Transplant Cardiology", "Allergy & Immunology", "Cardiovascular Disease", "Clinical Cardiac Electrophysiology", "Critical Care Medicine", "Endocrinology", "Diabetes & Metabolism", "Gastroenterology", "Geriatric Medicine", "Hematology", "Hospice & Palliative Medicine", "Hospital Medicine", "Focused Practice", "Infectious Disease", "Internal Medicine", "Interventional Cardiology", "Medical Oncology", "Nephrology", "Pulmonary Disease", "Rheumatology", "Sleep Medicine", "Sports Medicine", "Transplant Hepatology");
categories['main'] = new Array("Community Medical Health Center", "Primary Care Office", "Inpatient Facilities", "Emergency Room");
categories['sub'] = new Array("Anesthesiology", "Dermatology", "Emergency Medicine", "Emergency Medicine/Critical Care Medicine", "Family Medicine", "Medical Genetics", "Neurology", "Nuclear Medicine", "Pediatrics", "Physical Medicine & Rehab", "Preventative Medicine", "Psychiatry");
categories['sub'] = new Array("Allergy/Immunology", "Cardiovascular", "Dermatology", "Endocrine", "Gastrointestinal", "Hepatology", "Genitourinary", "Head and Neck", "Hematology", "Infectious Disease", "Musculoskeletal/Rheumatology", "Neurology", "Obstetrics and Gynecology", "Oncology", "Ophthalmology", "Pediatrics", "Poisoning", "Preventive Medicine", "Psychiatry", "Respiratory", "Surgery", "Biostatistics/Epidemiology", "Ethics", "Electrolytes", "Genetics", "Miscellaneous");
} else {
} else if (exam === "Board Review") {
alert('Coming Soon!');
categories['main'] = new Array("Adolescent Medicine", "Advanced Heart Failure and Transplant Cardiology", "Allergy & Immunology", "Cardiovascular Disease", "Clinical Cardiac Electrophysiology", "Critical Care Medicine", "Endocrinology", "Diabetes and Metabolism", "Gastroenterology", "Geriatric Medicine", "Hematology", "Hospice & Palliative Medicine", "Hospital Medicine", "Focused Practice", "Infectious Disease", "Internal Medicine", "Interventional Cardiology", "Medical Oncology", "Nephrology", "Pulmonary Disease", "Rheumatology", "Sleep Medicine", "Sports Medicine", "Transplant Hepatology");
location.reload();
categories['sub'] = new Array("Anesthesiology", "Dermatology", "Emergency Medicine", "Emergency Medicine/Critical Care Medicine", "Family Medicine", "Medical Genetics", "Neurology", "Nuclear Medicine", "Pediatrics", "Physical Medicine & Rehab", "Preventative Medicine", "Psychiatry");
return false;
} else {
alert('Coming Soon!');
location.reload();
return false;
}
var table = "<center><h1>Build your own exam!</h1></center><br /><br /><b>First: Select All That Apply:</b><br /><br /><br />";
table += "<table style='width:100%;'><tr><td style='width:49%;'><b>Main Category</b></td><td style='width:49%;'><b>Sub Category</b></td></tr>";
if (categories['sub'].length >= categories['main'].length) {
for (var i = 0; i < categories['sub'].length; i++) {
                                catQuestionCount(exam,"s",categories['sub'][i]);
if (categories['main'][i]) {
                                    catQuestionCount(exam,"m",categories['main'][i]);
                                    table += "<tr><td><input type='checkbox' name='MainCat' value='" + categories['main'][i] + "' />" + categories['main'][i] + ":<span id='"+categories['main'][i]+"'>0</span></td><td><input type='checkbox' name='SubCat' value='" + categories['sub'][i] + "' />" + categories['sub'][i] + ":<span id='"+categories['sub'][i]+"'>0</span></td></tr>";
} else {
table += "<tr><td></td><td><input type='checkbox' name='SubCat' value='" + categories['sub'][i] + "' />" + categories['sub'][i] + ":<span id='"+categories['sub'][i]+"'>0</span></td></tr>";
}
}
} else {
for (var i = 0; i < categories['main'].length; i++) {
if (categories['sub'][i]) {
table += "<tr><td><input type='checkbox' name='MainCat' value='" + categories['main'][i] + "' />" + categories['main'][i] + "</td><td><input type='checkbox' name='SubCat' value='" + categories['sub'][i] + "' />" + categories['sub'][i] + "</td></tr>";
} else {
table += "<tr><td><input type='checkbox' name='MainCat' value='" + categories['main'][i] + "' />" + categories['main'][i] + "</td><td></td></tr>";
}
}
}
table += "</table>"
var Q = document.getElementById('question');
Q.innerHTML = table;
}
 
Q.innerHTML += "<div id='SelectAll' class='noSelect WBRButton'>Select All Main Categories</div><div id='UnselectAll' class='noSelect WBRButton'>Select All Sub Categories</div><br /><br /><br />Second: Click the Count Question Button below to calculate number of questions available:<br /><br /><br /><div id='CountQ' class='noSelect WBRButton'>Count Questions</div><br /><br /><br /><br /><b>Second: choose the number of questions you would like to answer. The maximum number of questions you can select is <span id='countShow'></span>.</b><br /><br /><br />Number of questions:<input type='text' id='numQues' disabled /><br /><br /><div id='Go' class='noSelect WBRButton'>Click here to begin the exam</div>";
$("#Go").click(function () {
if (countdownCurrent) {
countdownTimer.toggle();
}
var Mfields = $("[name=MainCat]").serializeArray();
var Sfields = $("[name=SubCat]").serializeArray();
var sMain = new Array();
var sSub = new Array();
if (Mfields.length === 0) {
alert('No Main Category Selected');
selectExam();
} else if (Sfields.length === 0) {
alert('No Sub Category Selected');
selectExam();
} else if (!parseInt($("#numQues").val())) {
alert('Invalid Number of Quesitons');
selectExam();
} else if (parseInt($("#numQues").val()) > 45) {
alert('Too Many Questions');
selectExam();
} else if (parseInt($("#numQues").val()) <= 1) {
alert('Too Few Questions');
selectExam();
} else {
$("[name=MainCat]:checked").each(function () {
sMain.push($(this).val());
 
});
$("[name=SubCat]:checked").each(function () {
sSub.push($(this).val());
});
var numQues = $("#numQues").val();
        var Q = document.getElementById('question');
Q.innerHTML = "Loading...";
var Questions = loadExam(exam, numQues, sSub, sMain).toString();
$("input[name='stash']").val(Questions);
Q.innerHTML = "";
$('#home').css('visibility', 'visible');
loadQuestion();
}
});
 
$("#SelectAll").click(function () {
if ($("#SelectAll").html() === "Select All Main Categories") {
$("[name=MainCat]").each(function () {
$(this).attr('checked', true);
$("#SelectAll").html("Clear All Main Categories");
});
} else {
$("[name=MainCat]").each(function () {
$(this).attr('checked', false);
$("#SelectAll").html("Select All Main Categories");
});
}
});
 
$("#UnselectAll").click(function () {
if ($("#UnselectAll").html() === "Select All Sub Categories") {
$("[name=SubCat]").each(function () {
$(this).attr('checked', true);
$("#UnselectAll").html("Clear All Sub Categories");
});
} else {
$("[name=SubCat]").each(function () {
$(this).attr('checked', false);
$("#UnselectAll").html("Select All Sub Categories");
});
}
});
 
$("#CountQ").click(function () {
var sMain = new Array();
var sSub = new Array();
$("[name=MainCat]:checked").each(function () {
sMain.push($(this).val());
 
});
$("[name=SubCat]:checked").each(function () {
 
sSub.push($(this).val());
});
completeQuestionCount(exam, sMain, sSub);
});
}
}
var table = "<center><h1>Build your own exam!</h1></center><br /><br /><b>First: Select All That Apply:</b><br /><br /><br />";
 
table += "<table style='width:100%;'><tr><td style='width:49%;'><b>Main Category</b></td><td style='width:49%;'><b>Sub Category</b></td></tr>";
function loadExam(exam, numQues, SubCat, MainCat) {
if(categories['sub'].length >= categories['main'].length){
$.ajaxSetup({
  for(var i=0;i<categories['sub'].length;i++){
async : false
      if(categories['main'][i]){
});
        table+="<tr><td><input type='checkbox' name='MainCat' value='"+categories['main'][i]+"' />"+categories['main'][i]+"</td><td><input type='checkbox' name='SubCat' value='"+categories['sub'][i]+"' />"+categories['sub'][i]+"</td></tr>";
var Questions = new Array();
        } else {
while (numQues > Questions.length) {
        table+="<tr><td></td><td><input type='checkbox' name='SubCat' value='"+categories['sub'][i]+"' />"+categories['sub'][i]+"</td></tr>";
var api = new mw.Api();
      }   
var QueryString = '[[ExamType::' + exam + ']] [[MainCategory::' + MainCat[Math.floor(Math.random() * MainCat.length)] + ']] [[SubCategory::' + SubCat[Math.floor(Math.random() * SubCat.length)] + ']]';
  }
api.get({
} else {
action : 'ask',
  for(var i=0;i<categories['main'].length;i++){
query : QueryString,
      if(categories['sub'][i]){
format : 'json',
        table+="<tr><td><input type='checkbox' name='MainCat' value='"+categories['main'][i]+"' />"+categories['main'][i]+"</td><td><input type='checkbox' name='SubCat' value='"+categories['sub'][i]+"' />"+categories['sub'][i]+"</td></tr>";
async : false
      } else {
}, {
        table+="<tr><td><input type='checkbox' name='MainCat' value='"+categories['main'][i]+"' />"+categories['main'][i]+"</td><td></td></tr>";
ok : function (data) {
      }
$.each(data.query.results, function (index, value) {
  }
Questions.push(index);
}    
});
table += "</table>"
}
var Q = document.getElementById('question');
})
Q.innerHTML = table;
.error(function (error) {
$.each(error, function (key, value) {
alert(key + ': ' + value);
});
});
}
return Questions;
}
}


Q.innerHTML += "<div id='SelectAll' class='noSelect WBRButton'>Select All Main Categories</div><div id='UnselectAll' class='noSelect WBRButton'>Select All Sub Categories</div><div id='CountQ' class='noSelect WBRButton'>Count Questions</div><br /><br /><br /><br /><b>Second: choose the number of questions you would like to answer. The maximum number of questions you can select is 45.</b><br /><br /><br />Number of questions:<input type='text' id='numQues' /><br /><br /><div id='Go' class='noSelect WBRButton'>Click here to begin the exam</div>";
function loadQuestion() {
$("#Go").click(function() {
var Questions = $("input[name='stash']").val().split(",");
if(countdownCurrent){
var name = Questions[parseInt($("input[name='pos']").val()) - 1];
countdownTimer.toggle();
$.ajaxSetup({
}
async : false
  var Mfields = $("[name=MainCat]").serializeArray();
});
  var Sfields = $("[name=SubCat]").serializeArray();
var right = " ";
  var sMain = new Array();
var qs = "[[" + name + "]]|?PageAuthor|?Prompt|?RightAnswer|?AnswerA|?AnswerB|?AnswerC|?AnswerD|?AnswerE|?Explanation|?AnswerAExp|?AnswerBExp|?AnswerCExp|?AnswerDExp|?AnswerEExp|?WBRImage|?WBRImageCaption|?WBRImagePlace";
  var sSub = new Array();
var api = new mw.Api();
  if (Mfields.length === 0)  
api.get({
  {  
action : 'ask',
    alert('No Main Category Selected');  
query : qs,
    selectExam();
format : 'json'
  } else if(Sfields.length === 0)  
}, {
  {  
ok : function (data) {
    alert('No Sub Category Selected');  
hideButtons();
    selectExam();
$.each(data.query.results, function (index, value) {
  } else if(!parseInt($("#numQues").val())){
 
    alert('Invalid Number of Quesitons');
var short = value.printouts;
    selectExam();
var temp = $("input[name='stash']").val().split(",");
  } else if(parseInt($("#numQues").val()) > 45){
var Q = document.getElementById('question');
    alert('Too Many Questions');
var author = ' ';
    selectExam();
if (short.PageAuthor['0']) {
  } else if(parseInt($("#numQues").val()) <= 1){
author = short.PageAuthor['0'];
    alert('Too Few Questions');
}
    selectExam();
Q.innerHTML = "<b>Author:</b> " + author + "<br /><br /><b>Question " + $("input[name='pos']").val() + " / " + temp.length + "</b><br /><br />" + short.Prompt + "<br /><div id='promptImage' class='imageDiv'></div><br />";
  } else{
right = short.RightAnswer;
    $("[name=MainCat]:checked").each( function() {
if (short.AnswerA.length > 0) {
              sMain.push($(this).val());
Q.innerHTML += "<div style='border:5px solid #FFF;' class='answer' id='A'> A. " + short.AnswerA + "<div id='AnsAImage' class='imageDiv'></div></div>";
             
}
    });
if (short.AnswerAExp.length > 0) {
        $("[name=SubCat]:checked").each( function() {
Q.innerHTML += "<div style='height:0px; visibility:hidden;border:3px solid #FFF;' class='answerExp' id='Ae'><i>&nbsp;&nbsp;&nbsp;&nbsp;" + short.AnswerAExp['0'].fulltext + "</i></div>";
              sSub.push($(this).val());
}
    });
if (short.AnswerB.length > 0) {
    var numQues = $("#numQues").val();
Q.innerHTML += "<div style='border:5px solid #FFF;border:3px solid #FFF;' class='answer' id='B'> B. " + short.AnswerB + "<div id='AnsBImage' class='imageDiv'></div></div>";
    var Questions = loadExam(exam, numQues, sSub, sMain).toString();
}
    $("input[name='stash']").val(Questions);
if (short.AnswerBExp.length > 0) {
        var Q = document.getElementById('question');
Q.innerHTML += "<div style='height:0px; visibility:hidden;' class='answerExp' id='Be'><i>&nbsp;&nbsp;&nbsp;&nbsp;" + short.AnswerBExp['0'].fulltext + "</i></div>";
        Q.innerHTML = "";
}
        $('#home').css('visibility','visible');
if (short.AnswerC.length > 0) {
        loadQuestion();
Q.innerHTML += "<div style='border:5px solid #FFF;border:3px solid #FFF;' class='answer' id='C'> C. " + short.AnswerC + "<div id='AnsCImage' class='imageDiv'></div></div>";
}});
}
if (short.AnswerCExp.length > 0) {
Q.innerHTML += "<div style='height:0px; visibility:hidden;' class='answerExp' id='Ce'><i>&nbsp;&nbsp;&nbsp;&nbsp;" + short.AnswerCExp['0'].fulltext + "</i></div>";
}
if (short.AnswerD.length > 0) {
Q.innerHTML += "<div style='border:5px solid #FFF;border:3px solid #FFF;' class='answer' id='D'> D. " + short.AnswerD + "<div id='AnsDImage' class='imageDiv'></div></div>";
}
if (short.AnswerDExp.length > 0) {
Q.innerHTML += "<div style='height:0px; visibility:hidden;' class='answerExp' id='De'><i>&nbsp;&nbsp;&nbsp;&nbsp;" + short.AnswerDExp['0'].fulltext + "</i></div>";
}
if (short.AnswerE.length > 0) {
Q.innerHTML += "<div style='border:5px solid #FFF;border:3px solid #FFF;' class='answer' id='E'> E. " + short.AnswerE + "<div id='AnsEImage' class='imageDiv'></div></div>";
}
if (short.AnswerEExp.length > 0) {
Q.innerHTML += "<div style='height:0px; visibility:hidden;' class='answerExp' id='Ee'><i>&nbsp;&nbsp;&nbsp;&nbsp;" + short.AnswerEExp['0'].fulltext + "</i></div>";
}
 
if (short.WBRImage) {
for (var i = 0; i < short.WBRImage.length; i++) {
if (short.WBRImagePlace[i] === "Prompt") {
document.getElementById('promptImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);


$("#SelectAll").click(function() {
}
  if($("#SelectAll").html() === "Select All Main Categories"){
if (short.WBRImagePlace[i] === "Answer A") {
$("[name=MainCat]").each( function() {
document.getElementById('AnsAImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);
$(this).attr('checked', true);
$("#SelectAll").html("Clear All Main Categories");
});
} else {
$("[name=MainCat]").each( function() {
$(this).attr('checked', false);
$("#SelectAll").html("Select All Main Categories");
});
}
});


$("#UnselectAll").click(function() {
}
  if($("#UnselectAll").html() === "Select All Sub Categories"){
if (short.WBRImagePlace[i] === "Answer B") {
$("[name=SubCat]").each( function() {
document.getElementById('AnsBImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);
$(this).attr('checked', true);
$("#UnselectAll").html("Clear All Sub Categories");
});
} else {
$("[name=SubCat]").each( function() {
$(this).attr('checked', false);
$("#UnselectAll").html("Select All Sub Categories");
});
}
});


$("#CountQ").click(function () {
}
  var sMain = new Array();
if (short.WBRImagePlace[i] === "Answer C") {
  var sSub = new Array();
document.getElementById('AnsCImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);
$("[name=MainCat]:checked").each( function() {
              sMain.push($(this).val());
             
    });
        $("[name=SubCat]:checked").each( function() {
              sSub.push($(this).val());
    });
questionCount(exam,sMain,sSub);
});
}


function loadExam(exam, numQues, SubCat, MainCat){
}
$.ajaxSetup({async: false});
if (short.WBRImagePlace[i] === "Answer D") {
var Questions = new Array();
document.getElementById('AnsDImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);
while(numQues > Questions.length){
var api = new mw.Api();
var QueryString = '[[ExamType::'+exam+']] [[MainCategory::'+MainCat[Math.floor(Math.random()*MainCat.length)]+']] [[SubCategory::'+SubCat[Math.floor(Math.random()*SubCat.length)]+']]';
api.get( {
action: 'ask',
query: QueryString,
format: 'json',
        async: false
}, {
ok: function (data) {
$.each(data.query.results, function(index, value){
  Questions.push(index);
});
}
})
.error( function ( error ) {
        $.each(error, function(key, value) {
  alert(key + ': ' + value);
});
} );
}
return Questions;
}


function loadQuestion(){
}
var Questions = $("input[name='stash']").val().split(",");
if (short.WBRImagePlace[i] === "Answer E") {
var name = Questions[parseInt($("input[name='pos']").val())-1];
document.getElementById('AnsEImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);
$.ajaxSetup({async: false});
var right = " ";
var qs = "[["+name+"]]|?PageAuthor|?Prompt|?RightAnswer|?AnswerA|?AnswerB|?AnswerC|?AnswerD|?AnswerE|?Explanation|?AnswerAExp|?AnswerBExp|?AnswerCExp|?AnswerDExp|?AnswerEExp|?WBRImage|?WBRImageCaption|?WBRImagePlace";
var api = new mw.Api();
api.get( {
action: 'ask',
query: qs,
format: 'json'
}, {
ok: function (data) {
hideButtons();
$.each(data.query.results, function(index, value){


var short = value.printouts;
}
        var temp = $("input[name='stash']").val().split(",");
}
var Q = document.getElementById('question');
}
        var author = ' ';
        if(short.PageAuthor['0']) {author = short.PageAuthor['0'];}
Q.innerHTML = "<b>Author:</b> " + author + "<br /><br /><b>Question " + $("input[name='pos']").val() + " / " + temp.length + "</b><br /><br />" + short.Prompt + "<br /><div id='promptImage' class='imageDiv'></div><br />";
        right = short.RightAnswer;
        if(short.AnswerA.length > 0){
        Q.innerHTML += "<div style='border:5px solid #FFF;' class='answer' id='A'> A. " + short.AnswerA + "<div id='AnsAImage' class='imageDiv'></div></div>";
        }if(short.AnswerAExp.length > 0){
        Q.innerHTML += "<div style='height:0px; visibility:hidden;border:3px solid #FFF;' class='answerExp' id='Ae'><i>&nbsp;&nbsp;&nbsp;&nbsp;" + short.AnswerAExp['0'].fulltext + "</i></div>";
        }if(short.AnswerB.length > 0){
        Q.innerHTML += "<div style='border:5px solid #FFF;border:3px solid #FFF;' class='answer' id='B'> B. " + short.AnswerB + "<div id='AnsBImage' class='imageDiv'></div></div>";
        }if(short.AnswerBExp.length > 0){
        Q.innerHTML += "<div style='height:0px; visibility:hidden;' class='answerExp' id='Be'><i>&nbsp;&nbsp;&nbsp;&nbsp;" + short.AnswerBExp['0'].fulltext + "</i></div>";
        }if(short.AnswerC.length > 0){
        Q.innerHTML += "<div style='border:5px solid #FFF;border:3px solid #FFF;' class='answer' id='C'> C. " + short.AnswerC + "<div id='AnsCImage' class='imageDiv'></div></div>";
        }if(short.AnswerCExp.length > 0){
        Q.innerHTML += "<div style='height:0px; visibility:hidden;' class='answerExp' id='Ce'><i>&nbsp;&nbsp;&nbsp;&nbsp;" + short.AnswerCExp['0'].fulltext + "</i></div>";
        }if(short.AnswerD.length > 0){
        Q.innerHTML += "<div style='border:5px solid #FFF;border:3px solid #FFF;' class='answer' id='D'> D. " + short.AnswerD + "<div id='AnsDImage' class='imageDiv'></div></div>";
        }if(short.AnswerDExp.length > 0){
        Q.innerHTML += "<div style='height:0px; visibility:hidden;' class='answerExp' id='De'><i>&nbsp;&nbsp;&nbsp;&nbsp;" + short.AnswerDExp['0'].fulltext + "</i></div>";
        }if(short.AnswerE.length > 0){
        Q.innerHTML += "<div style='border:5px solid #FFF;border:3px solid #FFF;' class='answer' id='E'> E. " + short.AnswerE + "<div id='AnsEImage' class='imageDiv'></div></div>";
        }if(short.AnswerEExp.length > 0){
        Q.innerHTML += "<div style='height:0px; visibility:hidden;' class='answerExp' id='Ee'><i>&nbsp;&nbsp;&nbsp;&nbsp;" + short.AnswerEExp['0'].fulltext + "</i></div>";}


          if(short.WBRImage){
$("div.answer").mouseover(function () {
            for(var i=0;i<short.WBRImage.length;i++){
$(this).css({
                if(short.WBRImagePlace[i] === "Prompt"){
'border' : '5px solid #000'
                document.getElementById('promptImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);
})
                             
}).mouseout(function () {
                }
$(this).css({
            if(short.WBRImagePlace[i] === "Answer A"){
'border' : '5px solid #FFF'
                document.getElementById('AnsAImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);
})
                             
});
                }
            if(short.WBRImagePlace[i] === "Answer B"){
                document.getElementById('AnsBImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);
                             
                }
            if(short.WBRImagePlace[i] === "Answer C"){
                document.getElementById('AnsCImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);
                             
                }
            if(short.WBRImagePlace[i] === "Answer D"){
                document.getElementById('AnsDImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);
                             
                }
            if(short.WBRImagePlace[i] === "Answer E"){
                document.getElementById('AnsEImage').innerHTML += getImage(short.WBRImage[i], short.WBRImageCaption[i]);
                             
                }
            }
        }
       
        $("div.answer").mouseover(function() {
            $(this).css({'border': '5px solid #000'})
        }).mouseout(function() {
            $(this).css({'border': '5px solid #FFF'})
        });


    $( "div.answer" ).click(function(){
$("div.answer").click(function () {
      var Results = $("input[name='results']").val().split(",");
var Results = $("input[name='results']").val().split(",");
      var Pos = parseInt($("input[name='pos']").val()) - 1;
var Pos = parseInt($("input[name='pos']").val()) - 1;
      $(".answerExp").css("height","auto");
$(".answerExp").css("height", "auto");
      $(".answerExp").css("visibility","visible");
$(".answerExp").css("visibility", "visible");
      $("div#" + $(this).attr("id")).css({'border': '5px solid #000'});
$("div#" + $(this).attr("id")).css({
      $("div#" +short.RightAnswer.valueOf()).css({'color':'#F00'});
'border' : '5px solid #000'
      if(short.RightAnswer.valueOf() == $( this ).attr("id").valueOf()){
});
        Results[Pos] = true;
$("div#" + short.RightAnswer.valueOf()).css({
        removeFromQueue(value.fulltext);
'color' : '#F00'
      }
});
      else
if (short.RightAnswer.valueOf() == $(this).attr("id").valueOf()) {
      {
Results[Pos] = true;
      Results[Pos] = false;
removeFromQueue(value.fulltext);
      addToQueue(value.fulltext);
} else {
      }
Results[Pos] = false;
      Q.innerHTML += "<br /><br />The correct answer is: " + short.RightAnswer.valueOf() + "<br /><br /><i>" + short.Explanation + "</i><div id='ExpImage'></div><br />";
addToQueue(value.fulltext);
      if(short.WBRImage){
}
            for(var i=0;i<=short.WBRImage.length;i++){
Q.innerHTML += "<br /><br />The correct answer is: " + short.RightAnswer.valueOf() + "<br /><br /><i>" + short.Explanation + "</i><div id='ExpImage'></div><br />";
if (short.WBRImage) {
for (var i = 0; i <= short.WBRImage.length; i++) {


                if(short.WBRImagePlace[i] === "Prompt"){
if (short.WBRImagePlace[i] === "Prompt") {
                document.getElementById('ExpImage') }
document.getElementById('ExpImage')
                  }}
}
}
}


      $("input[name='results']").val(Results.toString());
$("input[name='results']").val(Results.toString());
      showButtons();
showButtons();
      $("input[name='stash']").val(Questions.toString());
$("input[name='stash']").val(Questions.toString());
    });
});
});
});
}
}
    }
});
  );


}
}


function getImage(filename, caption){
function getImage(filename, caption) {
  var api = new mw.Api();
var api = new mw.Api();
  var result;
var result;
    api.get( {
api.get({
action: 'parse',
action : 'parse',
text: '[[File:' + filename + ']]',
text : '[[File:' + filename + ']]',
format: 'json',
format : 'json',
        async: false
async : false
        } , {  
}, {
ok: function(data) {
ok : function (data) {
        result = data.parse.text['*'];
result = data.parse.text['*'];
}});
}
  if(caption === "no-display"){
});
  return result;
if (caption === "no-display") {
  } else {
return result;
  result += caption;
} else {
  return result;
result += caption;
  }
return result;
}
}
}


function showButtons(){
function showButtons() {
$('#next').css('visibility','visible');
$('#next').css('visibility', 'visible');
$('#back').css('visibility','visible');
$('#back').css('visibility', 'visible');
}
}
function hideButtons(){
function hideButtons() {
$('#next').css('visibility','hidden');
$('#next').css('visibility', 'hidden');
$('#back').css('visibility','hidden');
$('#back').css('visibility', 'hidden');
}
}


function removeFromQueue(question) {
var api = new mw.Api();
var result;
var pageString = "User:" + mw.user.name() + "/WBRQueue";
api.get({
action : 'query',
format : 'json',
titles : pageString,
export : 'export',
}, {
ok : function (data) {
var xml = data.query.export["*"];
xmlDoc = $.parseXML(xml),
$xml = $(xmlDoc),
$title = $xml.find("text");
if ($title.text().indexOf(question) != -1) {
var pageContent = $title.text().split(',');
pageContent = jQuery.grep(pageContent, function (value) {
return value != question;
});


function removeFromQueue(question){
var token = mw.user.tokens.get('editToken')
var api = new mw.Api();
addNewSection("User:" + mw.user.name() + "/WBRQueue2", question, token);
var result;
}
var pageString =  "User:" + mw.user.name() + "/WBRQueue";
}
api.get( {
});
action: 'query',
return result;
format: 'json',
        titles: pageString,
export: 'export',
        } , {
ok:function (data) {
        var xml = data.query.export["*"];
    xmlDoc = $.parseXML( xml ),
    $xml = $( xmlDoc ),
    $title = $xml.find( "text" );
if($title.text().indexOf(question) != -1){
var pageContent = $title.text().split(',');
pageContent = jQuery.grep(pageContent, function(value) {
        return value != question;
      });
 
var token = mw.user.tokens.get( 'editToken' )
addNewSection( "User:" + mw.user.name() + "/WBRQueue2",question, token );
}
}});
return result;
}
}


function addToQueue(question){
function addToQueue(question) {
var api = new mw.Api();
var api = new mw.Api();
var result;
var result;
var pageString = "User:" + mw.user.name() + "/WBRQueue";
var pageString = "User:" + mw.user.name() + "/WBRQueue";
api.get( {
api.get({
action: 'query',
action : 'query',
format: 'json',
format : 'json',
        titles: pageString,
titles : pageString,
export: 'export',
export : 'export',
        } , {
}, {
ok:function (data) {
ok : function (data) {
        var xml = data.query.export["*"];
var xml = data.query.export["*"];
    xmlDoc = $.parseXML( xml ),
xmlDoc = $.parseXML(xml),
    $xml = $( xmlDoc ),
$xml = $(xmlDoc),
    $title = $xml.find( "text" );
$title = $xml.find("text");


var pageContent = $title.text().split(',');
var pageContent = $title.text().split(',');
pageContent.push(question);
pageContent.push(question);
var token = mw.user.tokens.get( 'editToken' );
var token = mw.user.tokens.get('editToken');
addNewSection( "User:" + mw.user.name() + "/WBRQueue",question, token );
addNewSection("User:" + mw.user.name() + "/WBRQueue", question, token);
}});
}
return result;
});
return result;
}
}


 
function addNewSection(title, content, editToken) {
function addNewSection( title, content, editToken ) {
$.ajaxSetup({
$.ajaxSetup({async: false});
async : false
    $.ajax({
});
        url: mw.util.wikiScript( 'api' ),
$.ajax({
        data: {
url : mw.util.wikiScript('api'),
            format: 'json',
data : {
            action: 'edit',
format : 'json',
            title: title,
action : 'edit',
            text: content,
title : title,
            token: editToken,
text : content,
            recreate: 'r',
token : editToken,
        },
recreate : 'r',
        dataType: 'json',
},
        type: 'POST',
dataType : 'json',
        success: function( data ) {
type : 'POST',
            if ( data && data.edit && data.edit.result == 'Success' ) {
success : function (data) {
                // reload page if edit was successful
if (data && data.edit && data.edit.result == 'Success') {
            } else if ( data && data.error ) {
// reload page if edit was successful
                alert( 'Error: Not Logged In' );
} else if (data && data.error) {
            } else {
alert('Error: Not Logged In');
                alert( 'Error: Not Logged In' );
} else {
            }
alert('Error: Not Logged In');
        },
}
        error: function( xhr ) {
},
            alert( 'Error: Not Logged In. Please log in to create a Question.' );
error : function (xhr) {
        }
alert('Error: Not Logged In. Please log in to create a Question.');
    });
}
});
}
}
$('#changeslist').ready(function() {
$('#changeslist').ready(function () {
$.getScript("http://wikidoc.org/resources/mediawiki.api/mediawiki.api.js", function(){
$.getScript("http://wikidoc.org/resources/mediawiki.api/mediawiki.api.js", function () {
var api = new mw.Api();
var api = new mw.Api();
var pageString = "WBRCurrentQuestion";
var pageString = "WBRCurrentQuestion";
api.get( {
api.get({
action: 'query',
action : 'query',
format: 'json',
format : 'json',
        titles: pageString,
titles : pageString,
export: 'export',
export : 'export',
        } , {
}, {
ok:function (data) {
ok : function (data) {
        var xml = data.query.export["*"];
var xml = data.query.export["*"];
    xmlDoc = $.parseXML( xml ),
xmlDoc = $.parseXML(xml),
    $xml = $( xmlDoc ),
$xml = $(xmlDoc),
    $title = $xml.find( "text" );
$title = $xml.find("text");
    var curr = parseInt($title.text());
var curr = parseInt($title.text());
    document.getElementById('queslink').innerHTML = "<a id='add' href='http://wikidoc.org/index.php/Special:FormEdit/WBRQuestion/WBR" + curr + "'><img src='http://static.wikidoc.org/5/54/Click_here_to_add_a_question.png' /></a>";
document.getElementById('queslink').innerHTML = "<a id='add' href='http://wikidoc.org/index.php/Special:FormEdit/WBRQuestion/WBR" + curr + "'><img src='http://static.wikidoc.org/5/54/Click_here_to_add_a_question.png' /></a>";
$('#add').click(function(){
$('#add').click(function () {
    addNewSection( "WBRCurrentQuestion",parseInt(curr+1).toString(),mw.user.tokens.get( 'editToken' ));
addNewSection("WBRCurrentQuestion", parseInt(curr + 1).toString(), mw.user.tokens.get('editToken'));
              });
});
            }
}
      });
});
  });
});
});
});
</script>
</script>
Line 641: Line 702:
<div id="question" style="visibility:hidden;">
<div id="question" style="visibility:hidden;">
<b>Click here to start the exam:</b><br />
<b>Click here to start the exam:</b><br />
<a href="#" onclick="loginCheck('Random','USMLE Step 1')"><img src="http://static.wikidoc.org/8/87/Step1.png" /></a>
<a href="#" onclick="loginCheck('USMLE Step 1')"><img src="http://static.wikidoc.org/8/87/Step1.png" /></a>
<a href="#" onclick="loginCheck('Random','USMLE Step 2 CK')"><img src="http://static.wikidoc.org/0/07/Step2CK.png" /></a>
<a href="#" onclick="loginCheck('USMLE Step 2 CK')"><img src="http://static.wikidoc.org/0/07/Step2CK.png" /></a>
<a href="#" onclick="loginCheck('Random','USMLE Step 3')"><img src="http://static.wikidoc.org/0/08/Step3.png" /></a>
<a href="#" onclick="loginCheck('USMLE Step 3')"><img src="http://static.wikidoc.org/0/08/Step3.png" /></a>
<a href="#" onclick="loginCheck('Random','Board Review')"><img src="http://static.wikidoc.org/7/75/Boardcertification.png" /></a>
<a href="#" onclick="loginCheck('Board Review')"><img src="http://static.wikidoc.org/7/75/Boardcertification.png" /></a>
<a href="#" onclick="loginCheck('Random','MCAT')"><img src="http://static.wikidoc.org/4/4b/MCAT.png" /></a><br />
<a href="#" onclick="loginCheck('MCAT')"><img src="http://static.wikidoc.org/4/4b/MCAT.png" /></a><br />
<!-- bold + larger font size-->
<!-- bold + larger font size-->
<b>Click here to repeat questions you've gotten wrong previously</b>
<b>Click here to repeat questions you've gotten wrong previously</b>
<input type="button" onclick="loginCheck('Queue','Nuffin')" value="Review Exam" /><br />
<input type="button" onclick="loginCheck('Queue')" value="Review Exam" /><br />


</div>
</div>

Latest revision as of 14:18, 1 July 2013