function showSolution(idArg) {
if (document.getElementById(idArg) != null) {
if (document.getElementById(idArg).style.display == 'inline') {
document.getElementById(idArg).style.display = 'none';
} else {
document.getElementById(idArg).style.display = 'inline';
}
} // ends 'if' null
}
function checkSolution(formIdArg) {
// gets element by id (expected only 'form')
var x = document.getElementById(formIdArg);
if (x != null) {
// if first element is displayed than hide previous solutions
if (document.getElementById(formIdArg + '-correct-1').style.display == 'inline' || document.getElementById(formIdArg + '-wrong-1').style.display == 'inline') {
// hides previous solutions
for (var i = 0; i < x.length; i++) {
document.getElementById(formIdArg + '-correct-' + (i + 1)).style.display = 'none';
document.getElementById(formIdArg + '-wrong-' + (i + 1)).style.display = 'none';
}
} else {
// cycles through all elements (expected only 'select')
for (var i = 0; i < x.length; i++) {
var sel = x.elements[i];
// cyclese through all options
for (var j = 0; j < sel.length; j++) {
// if is set class name to true and the option is selected than it was correct answer
if (sel.options[j].className == 'true' && sel.selectedIndex == j) {
document.getElementById(formIdArg + '-correct-' + (i + 1)).style.display = 'inline';
j = sel.length;
} else {
if (j == sel.length - 1) {
document.getElementById(formIdArg + '-wrong-' + (i + 1)).style.display = 'inline';
}
}
}
}
} // ends 'if' for hide (or not) solution
} // ends 'if' null
}
function checkSolution2(formIdArg) {
// gets element by id (expected only 'form')
var x = document.getElementById(formIdArg);
if (x != null) {
// if first element is displayed than hide previous solutions
if (document.getElementById(formIdArg + '-correct-1').style.display == 'inline' || document.getElementById(formIdArg + '-wrong-1').style.display == 'inline') {
// hides previous solutions
for (var i = 0; i < x.length; i++) {
document.getElementById(formIdArg + '-correct-' + (i + 1)).style.display = 'none';
document.getElementById(formIdArg + '-wrong-' + (i + 1)).style.display = 'none';
}
} else {
// cycles through all elements (expected only 'input')
for (var i = 0; i < x.length; i++) {
var input = x.elements[i];
// if is set class name to true and the option is selected than it was correct answer
if (input.name == input.value) {
document.getElementById(formIdArg + '-correct-' + (i + 1)).style.display = 'inline';
} else {
document.getElementById(formIdArg + '-wrong-' + (i + 1)).style.display = 'inline';
}
}
} // ends 'if' for hide (or not) solution
} // ends 'if' null
}
function showAll(showSolutionLastKey, checkSolutionArray, checkSolution2Array) {
elementVse = document.getElementById('odkaz-vse');
if(elementVse.className == "switchoff") {
elementVse.innerHTML = "Skrýt řešení
všech příkladů";
elementVse.className = "switchon";
} else {
elementVse.innerHTML = "Zobrazit řešení
všech příkladů";
elementVse.className = "switchoff";
}
// FIRST WE MUST HIDE ALL EVERYTIME
// cycles through all elements from "showSolutionArray" and hides them
for (var i = 0; i < showSolutionLastKey; i++) {
if ((i+1) < 10) {
if(document.getElementById("klic0" + (i+1)) != null) { document.getElementById("klic0" + (i+1)).style.display = 'none'; }
} else {
if(document.getElementById("klic" + (i+1)) != null) { document.getElementById("klic" + (i+1)).style.display = 'none';
}
}
}
// cycles through all elements from "showSolutionArray" and hides them
for (var i = 0; i < checkSolutionArray.length; i++) {
var x = document.getElementById(checkSolutionArray[i]);
if (x != null) {
// hides previous solutions
for (var j = 0; j < x.length; j++) {
document.getElementById(checkSolutionArray[i] + '-correct-' + (j + 1)).style.display = 'none';
document.getElementById(checkSolutionArray[i] + '-wrong-' + (j + 1)).style.display = 'none';
}
}
}
// cycles through all elements from "showSolutionArray" and shows them
for (var i = 0; i < checkSolution2Array.length; i++) {
var x = document.getElementById(checkSolution2Array[i]);
if (x != null) {
// hides previous solutions
for (var j = 0; j < x.length; j++) {
document.getElementById(checkSolution2Array[i] + '-correct-' + (j + 1)).style.display = 'none';
document.getElementById(checkSolution2Array[i] + '-wrong-' + (j + 1)).style.display = 'none';
}
}
}
// IF SWITCH IS ON THEN WE MUST SHOW ALL
if (elementVse.className == "switchon") {
// cycles through all elements from "showSolutionArray" and shows them
for (var i = 0; i < showSolutionLastKey; i++) {
if ((i+1) < 10) {
if(document.getElementById("klic0" + (i+1)) != null) { document.getElementById("klic0" + (i+1)).style.display = 'none';
showSolution("klic0" + (i+1));
}
} else {
showSolution("klic" + (i+1));
}
}
// cycles through all elements from "showSolutionArray" and shows them
for (var i = 0; i < checkSolutionArray.length; i++) {
checkSolution(checkSolutionArray[i]);
}
// cycles through all elements from "showSolutionArray" and shows them
for (var i = 0; i < checkSolution2Array.length; i++) {
checkSolution2(checkSolution2Array[i]);
}
} // ends 'if' for switch
}
/*#############################################################x*/
/*######################## POSUN OVLÁDÁNÍ #####################x*/
/*#############################################################x*/
/*
var menuHeight;
var flowBlockHeight;
var scrollingTrigger;
var fixed = false;
window.onload = function init() {
menuHeight = document.getElementById("menu").scrollHeight;
flowBlockHeight = document.getElementById("swmaster").scrollHeight;
scrollingTrigger = 250 + menuHeight + document.getElementById("swmaster").style.marginTop;
setFlowBlock();
}
// to achieve right current offset when reloading
window.onscroll = function () {
setFlowBlock();
}
function getScrolled() {
var scrolled = 0;
if( typeof(window.pageYOffset) == 'number' ) {
//Netscape compliant
scrolled = window.pageYOffset;
} else if(document.body && document.body.scrollTop) {
//DOM compliant
scrolled = document.body.scrollTop;
} else if(document.documentElement && document.documentElement.scrollTop) {
//IE6 standards compliant mode
scrolled = document.documentElement.scrollTop;
}
return scrolled;
}
function setFlowBlock() {
if ( !fixed && (getScrolled() > scrollingTrigger)) {
document.getElementById("swmaster").className = "positionFixed";
fixed = true;
} else if (fixed && (getScrolled() <= scrollingTrigger)) {
document.getElementById("swmaster").className = "positionNormal";
fixed = false;
}
}
*/