????JFIF??x?x????'
| Server IP : 79.136.114.73 / Your IP : 216.73.216.191 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/appsrv.astacus.se/apps/school/OLD/js/ |
Upload File : |
/**
* Created by macmini3 on 2/19/14.
*/
function shared_setHeaderTable(idDivTable, title, subTitle, isBtnHomeRequired, isBtnPlayAgainRequired)
{
var table = "";
var deviceType = shared_getDeviceType();
var footerStyle = (deviceType == shared_DeviceTypeAndroid) ? 'shared_style_buttonsFooterForAndroid' : 'shared_style_buttonsFooter';
table += ' <table id="shared_style_tblMainiPadHeader">';
table += ' <tr>';
table += ' <td width="80" style="padding-left: 5px">';
if (isBtnHomeRequired)
{
table += ' <input type="button" class="' + footerStyle + '" value="Home" onClick="btnHome_click()" style="width: 100px;">';
}
table += ' </td>';
table += ' <td width="*" align="center">';
table += ' <table id="shared_style_tblMainiPadHeader" height="100%" cellspacing="0" cellpadding="0">';
table += ' <tr height="*">';
table += ' <td width="100%" align="center">' + title + '</td>';
table += ' </tr>';
if (subTitle !== '')
{
table += ' <tr height="40%">';
table += ' <td width="100%" align="center" style="font-size:18px">' + subTitle + '</td>';
table += ' </tr>';
}
table += ' </table>';
table += ' </td>';
table += ' <td width="80" align="right" style="padding-right: 5px">';
if (isBtnPlayAgainRequired)
{
table += ' <input type="button" class="' + footerStyle + '" value="Play Again" onClick="shared_btnPlayAgain_click()" style="width: 140px;">';
}
table += ' </td>';
table += ' </tr>';
table += ' </table>';
document.getElementById(idDivTable).innerHTML = table;
}
function shared_setFooterTableEmpty(idDivTable)
{
var table = '';
var disabledText = '';
table += ' <table id="shared_style_tblMainiPadFooter" border="1">';
table += ' <tr>';
table += ' <td> </td>';
table += ' </tr>';
table += ' </table>';
document.getElementById(idDivTable).innerHTML = table;
}
function shared_setFooterTable(idDivTable, isbtnFirstRequired, isBtnPreviousRequired, isBtnValidateRequired, isBtnNextRequired, isbtnLastRequired)
{
var table = '';
var disabledText = '';
var deviceType = shared_getDeviceType();
var footerStyle = (deviceType == shared_DeviceTypeAndroid) ? 'shared_style_buttonsFooterForAndroid' : 'shared_style_buttonsFooter';
table += ' <table id="shared_style_tblMainiPadFooter" border="1">';
table += ' <tr>';
table += ' <td width="15%" style="text-align: left">';
disabledText = isbtnFirstRequired ? '' : 'disabled';
table += ' <input type="button" class="' + footerStyle + '" value="<<" onClick="shared_btnFirstLesson_click()" style="width: 100px;" ' + disabledText + '>';
table += ' </td>';
table += ' <td width="15%" align="right">';
disabledText = isBtnPreviousRequired ? '' : 'disabled';
table += ' <input type="button" class="' + footerStyle + '" value="<" onClick="btnPrevious_click()" ' + disabledText + '>';
table += ' </td>';
table += ' <td width="*" align="center">';
if (isBtnValidateRequired)
{
disabledText = isBtnValidateRequired ? '' : 'disabled';
table += ' <input type="button" class="' + footerStyle + '" value="Validate" onClick="btnValidate_click()" style="width: 150px;" ' + disabledText + '>';
}
table += ' </td>';
table += ' <td width="15%" align="left">';
disabledText = isBtnNextRequired ? '' : 'disabled';
table += ' <input type="button" class="' + footerStyle + '" value=">" onClick="btnNext_click()" ' + disabledText + '>';
table += ' </td>';
table += ' <td width="15%" style="text-align: left">';
disabledText = isbtnLastRequired ? '' : 'disabled';
table += ' <input type="button" class="' + footerStyle + '" value=">>" onClick="shared_btnLastLesson_click()" style="width: 100px;" ' + disabledText + '>';
table += ' </td>';
table += ' </tr>';
table += ' </table>';
document.getElementById(idDivTable).innerHTML = table;
}
function shared_btnHomeLevels_click()
{
window.location = '../../index.html';
}
function shared_btnHomeCategories_click(levelNameWithoutSpace)
{
window.location = '../' + levelNameWithoutSpace + 'Categories.html';
}
function shared_btnFirstLesson_click()
{
var currentLevel = localStorage.getItem('currentLevel');
var currentCategory = localStorage.getItem('currentCategory');
window.location = currentLevel + currentCategory + 'Lesson1.html';
}
function shared_btnLastLesson_click()
{
var currentLevel = localStorage.getItem('currentLevel');
var currentCategory = localStorage.getItem('currentCategory');
var currentCategoryLastLesson = localStorage.getItem('currentCategoryLastLesson');
window.location = currentLevel + currentCategory + currentCategoryLastLesson;
}
function shared_btnPlayAgain_click()
{
window.location.reload();
}
function shared_getPageParametersArray()
{
var urlEncoded = document.URL;
var urlDecoded = decodeURI(urlEncoded);
var indexOfQuestionMark = urlDecoded.indexOf("?");
var parametersAll = urlDecoded.substring(indexOfQuestionMark + 1);
var parametersArray = parametersAll.split("&");
return (parametersArray);
}
function shared_setTextAndBackgroundColorToGreen(id_text, id_box_destination, text_prefix, text_suffix)
{
var elementText = document.getElementById(id_text);
var text = elementText.innerText.trim();
var elementBox = document.getElementById(id_box_destination);
var innerHtml = '<u>' + text_prefix + text + '</u>' + text_suffix;
elementBox.innerHTML = innerHtml;
elementBox.style.backgroundColor = shared_colorGreen;
elementBox.style.color = shared_colorRed;
elementText.hidden = true;
}
function shared_setTextAndBackgroundColorToGreenByTrimmingText(id_text, id_box_destination)
{
var elementText = document.getElementById(id_text);
var text = elementText.innerText.trim();
var elementBox = document.getElementById(id_box_destination);
var innerHtml = '<u>' + text + '</u>';
elementBox.innerHTML = innerHtml;
elementBox.style.backgroundColor = shared_colorGreen;
elementBox.style.color = shared_colorRed;
elementText.hidden = true;
}
function shared_dragDropImage(id_draggable_image, id_box_destination, id_img_source)
{
var elementDraggableImage = document.getElementById(id_draggable_image);
var elementBox = document.getElementById(id_box_destination);
var elementImageSource = document.getElementById(id_img_source);
var insertImage = '<img src="' + elementImageSource.src + '" width="' + elementImageSource.width + '" height="' + elementImageSource.height + '"/>';
elementBox.innerHTML = insertImage;
elementBox.style.backgroundColor = shared_colorGreen;
elementDraggableImage.hidden = true;
}
function shared_hideClapsImage()
{
var imageDivEelement = document.getElementById('shared_id_div_claps_image');
imageDivEelement.hidden = true;
shared_stopSoundClaps();
}
function shared_playSoundClaps()
{
var pInnerHtml = "";
pInnerHtml += ' <audio id="id_claps_sound" autoplay="autoplay" loop="loop" controls="controls" style="position: absolute; visibility: hidden">';
pInnerHtml += ' <source src="../../../res/sounds/claps-sound.mp3" type="audio/mpeg">';
pInnerHtml += ' </audio>';
document.getElementById('id_playAudio').innerHTML = pInnerHtml;
}
function shared_stopSoundClaps()
{
var soundElement = document.getElementById('id_claps_sound').pause();
soundElement.currentTime = 0;
}
function shared_is_all_infos_moved_show_claps_animation(allElementIdsArray, idDiv)
{
if (shared_isAllInfosMoved(allElementIdsArray))
{
shared_show_claps_animation(idDiv);
}
}
function shared_is_all_infos_moved_show_claps_animationWithIsMoved(allElementIdsArray, idDiv)
{
if (shared_isAllInfosMovedAndHidden(allElementIdsArray))
{
shared_show_claps_animation(idDiv);
}
}
function shared_isAllInfosMoved(allElementIdsArray)
{
for (index=0; index<allElementIdsArray.length; index++)
{
var element = document.getElementById(allElementIdsArray[index]);
if (element.hidden == false)
{
return (false);
}
}
return (true);
}
function shared_isAllInfosMovedAndHidden(allElementIdsArray)
{
for (index=0; index<allElementIdsArray.length; index++)
{
var eElement = document.getElementById(allElementIdsArray[index]);
if (eElement.isMoved == false)
{
return (false);
}
}
return (true);
}
//To rectify a problem in Android device.
function shared_show_claps_animation_for_initial(id_div_claps_animation)
{
var innerHtml = '';
innerHtml += ' <div id="id_div">';
innerHtml += ' <table width=' + id_tblMainiPadBody.style.width + ' height=' + id_tblMainiPadBody.style.height + ' border="1" cellspacing="0" cellpadding="0" >';
innerHtml += ' <tr>';
innerHtml += ' <td align="center">';
innerHtml += ' <input type="image" id="id_image" src="img/claps.gif" width="400" height="400" onclick="shared_hideClapsImage()" alt="Claps">';
innerHtml += ' </td>';
innerHtml += ' </tr>';
innerHtml += ' </table>';
innerHtml += ' </div>';
var eDiv = document.getElementById(id_div_claps_animation);
eDiv.innerHTML = innerHtml;
//eDiv.hidden = true;
//eDiv.style.visibility = "hidden";
eDiv.hidden = false;
eDiv.style.visibility = "visible";
var eDiv = document.getElementById('id_image');
eDiv.className = 'shared_style_animation_show_success';//for scaling
}
function shared_show_claps_animation(id_div_claps_animation)
{
var innerHtml = '';
innerHtml += ' <div id="id_div">';
innerHtml += ' <table width=' + id_tblMainiPadBody.style.width + ' height=' + id_tblMainiPadBody.style.height + ' border="1" cellspacing="0" cellpadding="0" >';
innerHtml += ' <tr>';
innerHtml += ' <td align="center">';
innerHtml += ' <input type="image" id="id_image" src="../../../img/claps.gif" width="400" height="400" onclick="shared_hideClapsImage()" alt="Claps">';
innerHtml += ' </td>';
innerHtml += ' </tr>';
innerHtml += ' </table>';
innerHtml += ' </div>';
innerHtml += ' <span id="id_playAudio"></span>';
var eDiv = document.getElementById(id_div_claps_animation);
eDiv.innerHTML = innerHtml;
eDiv.hidden = false;
eDiv.style.visibility = "visible";
var eDiv = document.getElementById('id_image');
eDiv.className = 'shared_style_animation_show_success';//for scaling
shared_playSoundClaps();
}
/*function shared_show_claps_animation(id_div_claps_animation)
{
var innerHtml = '';
innerHtml += ' <table width=' + id_tblMainiPadBody.style.width + ' height=' + id_tblMainiPadBody.style.height + ' style="position: absolute; ">';
innerHtml += ' <tr>';
innerHtml += ' <td align="center">';
//innerHtml += ' <div id="id_div">';
innerHtml += ' <input type="image" id="id_image" src="../../../img/claps.gif" width="400" height="400" onclick="shared_hideClapsImage()" alt="Claps">';
//innerHtml += ' <img id="id_image" src="../../../img/claps.gif" width="400" height="400" onclick="shared_hideClapsImage()" alt="Claps">';
//innerHtml += ' <canvas id="id_canvas_claps_image" width="400" height="400" onclick="shared_hideClapsImage()"></canvas>';
//innerHtml += ' </div>';
innerHtml += ' </td>';
innerHtml += ' </tr>';
innerHtml += ' </table>';
innerHtml += ' <span id="id_playAudio"></span>';
var eDiv = document.getElementById(id_div_claps_animation);
eDiv.innerHTML = innerHtml;
eDiv.hidden = false;
eDiv.style.visibility = "visible";
//shared_clapsImage.src = "../../../img/claps.gif";
//setInterval(draw_claps_image_to_canvas, 10);//just delay 10 secs
var eDiv = document.getElementById('id_image');
eDiv.className = 'shared_style_animation_show_success';//for scaling
shared_playSoundClaps();
}*/
/*function shared_show_claps_animation(idDiv_claps_animation)
{
var innerHtml = '';
innerHtml += ' <table width=' + id_tblMainiPadBody.style.width + ' height=' + id_tblMainiPadBody.style.height + ' style="position: absolute; ">';
innerHtml += ' <tr>';
innerHtml += ' <td align="center">';
//innerHtml += ' <div id="id_div">';
innerHtml += ' <img id="id_image" src="../../../img/claps.gif" width="400" height="400" onclick="shared_hideClapsImage()">';
//innerHtml += ' <canvas id="id_canvas_claps_image" width="400" height="400" onclick="shared_hideClapsImage()"></canvas>';
//innerHtml += ' </div>';
innerHtml += ' </td>';
innerHtml += ' </tr>';
innerHtml += ' </table>';
//innerHtml += ' <span id="id_playAudio"></span>';
var eDiv = document.getElementById(idDiv_claps_animation);
eDiv.hidden = false;
eDiv.innerHTML = innerHtml;
eDiv.style.visibility = "visible";
//shared_clapsImage.src = "../../../img/claps.gif";
//setInterval(draw_claps_image_to_canvas, 10);//just delay 10 secs
var eDiv = document.getElementById('id_image');
//eDiv.className = 'shared_style_animation_show_success';
//shared_playSoundClaps();
}*/
/*function shared_show_claps_animation(idDiv)
{
var innerHtml = '';
innerHtml += ' <table width=' + id_tblMainiPadBody.style.width + ' height=' + id_tblMainiPadBody.style.height + ' style="position: absolute; ">';
innerHtml += ' <tr>';
innerHtml += ' <td align="center">';
innerHtml += ' <div id="id_div">';
innerHtml += ' <img src="../../../img/LevelA/Category2/LevelACat2Lesson10/imgHen2.gif" width="100" height="100" onclick="shared_hideClapsImage()">';
//innerHtml += ' <img src="../../../img/claps.gif" width="400" height="400" onclick="shared_hideClapsImage()">';
//innerHtml += ' <canvas id="id_canvas_claps_image" width="400" height="400" onclick="shared_hideClapsImage()"></canvas>';
innerHtml += ' <span id="id_playAudio"></span>';
innerHtml += ' </div>';
innerHtml += ' </td>';
innerHtml += ' </tr>';
innerHtml += ' </table>';
var eDiv = document.getElementById(idDiv);
eDiv.hidden = false;
eDiv.innerHTML = innerHtml;
eDiv.style.visibility = "visible";
//set_claps_image_to_canvas();
var eDiv = document.getElementById('id_div');
eDiv.className = 'shared_style_animation_show_success';
shared_playSoundClaps();
}*/
/*var shared_clapsImage = new Image();
function set_claps_image_to_canvas()
{
shared_clapsImage.src = "../../../img/claps.gif";
setInterval(draw_claps_image_to_canvas, 10);//just delay 10 secs
}
function draw_claps_image_to_canvas()
{
var context = document.getElementById('id_canvas_claps_image').getContext('2d');
context.globalCompositeOperation = 'destination-over';
context.save();
context.clearRect(0, 0, 400, 400);
context.drawImage(shared_clapsImage, 0, 0);
context.restore();
}*/
function shared_show_message_info(title, message, messageOption)
{
var deviceType = shared_getDeviceType();
var footerStyle = (deviceType == shared_DeviceTypeAndroid) ? 'shared_style_buttonsFooterForAndroid' : 'shared_style_buttonsFooter';
var innerHtml = '';
innerHtml += ' <div style="position: absolute; text-align:center;z-index: 99;">';
innerHtml += ' <table border="0" cellspacing="0" cellpadding="0" width=' + id_tblMainiPadBody.style.width + ' height=' + id_tblMainiPadBody.style.height + ' style="position: absolute;">';//table1
innerHtml += ' <tr>';
innerHtml += ' <td align="center" style="border:none;">';
innerHtml += ' <table width="320" height="220" border="0" cellspacing="0" cellpadding="0">';//table2
innerHtml += ' <tr>';
innerHtml += ' <td id="shared_style_messagebox_background" align="center">';
innerHtml += ' <table width="100%" height="100%" border="1" cellspacing="0" cellpadding="0" style="border:none">';//table3
innerHtml += ' <tr height="20%">';//tr1
innerHtml += ' <td align="center" style="border:none">';
innerHtml += ' <span>' + title + '</span>';
innerHtml += ' </td">';
innerHtml += ' </tr>';
innerHtml += ' <tr height="*">';//tr2
innerHtml += ' <td align="center" style="border-left:none;border-right:none;">';
innerHtml += ' <table width="100%" height="100%" border="0" cellspacing="0" cellpadding="5" style="border:none">';//table5
innerHtml += ' <tr>';
innerHtml += ' <td align="center" style="border:none; font-size:20px">';
innerHtml += ' <p>' + message + '</p>';
innerHtml += ' </td>';
innerHtml += ' </tr>';
innerHtml += ' </table>';//table5
innerHtml += ' </td>';
innerHtml += ' </tr>';
innerHtml += ' <tr height="20%">';//tr3
if (deviceType == shared_DeviceTypeAndroid)
{
innerHtml += ' <td align="center" style="border-bottom:none;border-left:none;border-right:none; padding:5px">';
}
else
{
innerHtml += ' <td align="center" style="border:none; padding:5px">';
}
innerHtml += ' <table width="100%" height="100%" border="1" cellspacing="0" cellpadding="0" style="border:none">';//table6
innerHtml += ' <tr>';
innerHtml += ' <td align="center" style="border:none;">';
innerHtml += ' <input type="button" class="' + footerStyle + '" value="OK" onClick="hide_message_info()" style="width: 100px;color:blue">';
innerHtml += ' </td>';
if (messageOption == MessageOption.OKCancel)
{
innerHtml += ' <td align="center" style="border:none;">';
innerHtml += ' <input type="button" class="' + footerStyle + '" value="Cancel" onClick="cancel_message_info()" style="width: 100px;">';
innerHtml += ' </td>';
}
innerHtml += ' </tr>';
innerHtml += ' </table>';//table6*/
innerHtml += ' </td>';
innerHtml += ' </tr>';
innerHtml += ' </table>';//table3
innerHtml += ' </td>';
innerHtml += ' </tr>';
innerHtml += ' </table>';//table2
innerHtml += ' </td>';
innerHtml += ' </tr>';
innerHtml += ' </table>';//table1
innerHtml += ' </div>';
var eDiv = document.getElementById('shared_id_div_message');
eDiv.innerHTML = innerHtml;
}
function hide_message_info()
{
var eDiv = document.getElementById('shared_id_div_message');
eDiv.hidden = true;
}
function cancel_message_info()
{
hide_message_info();
}
function shared_setEmptyDropBoxForImageInfo(ids_array_boxes)
{
for (var idIndex = 0; idIndex < ids_array_boxes.length; idIndex++)
{
var eTdBox = document.getElementById(ids_array_boxes[idIndex]);
eTdBox.style.backgroundColor = '#FFDB99';//Light orange
eTdBox.style.font = '24px solid';
//eTdBox.style.color = 'BlueViolet';
eTdBox.style.color = 'white';
eTdBox.style.fontFamily = 'Arial Rounded MT Bold';
eTdBox.style.textAlign = 'center';
eTdBox.style.verticalAlign = 'middle';
eTdBox.style.paddingTop = '5px';
eTdBox.innerHTML = 'Drag here';
}
}
function shared_setImageSource(id_image, imagesPath, imageName)
{
var eImage = document.getElementById(id_image);
eImage.src = imagesPath + imageName;
}
function shared_createProjectPaths()
{
/*shared_path_projectFiles = '' + document.location;
shared_path_projectFiles = shared_path_projectFiles.replace('file://', '');
shared_path_projectFiles = shared_removeEndPathOrFile(shared_path_projectFiles);
shared_path_projectFiles = shared_removeEndPathOrFile(shared_path_projectFiles);
shared_path_projectFiles = shared_removeEndPathOrFile(shared_path_projectFiles);
shared_path_projectFiles = shared_removeEndPathOrFile(shared_path_projectFiles);
shared_path_projectFiles += '/Library/Caches/ProjectFiles/';*/
/*alert('0');
var myObject, newfolder;
myObject = new ActiveXObject("Scripting.FileSystemObject");
newfolder = myObject.CreateFolder ("~/Users/macmini3/Desktop/HtmlPath");
alert('1');*/
}
function shared_downloadProjectFiles()
{
}
function shared_removeEndPathOrFile(path)
{
return (path.substring(0, path.lastIndexOf('/')));
}
function shared_getSubTitle(level, catNo, lessonNo)
{
if (shared_isDebug)
{
var totalLessons = shared_get_totalLessons(level, catNo);
return ("Level " + level.name + " [Debug - Cat " + catNo.name + " : Lesson " + lessonNo + "/" + totalLessons + "]");
}
else
{
return ("Level " + level.name);
}
}
function shared_hideAllExceptFirstElement(id_prefix, nIds_total)
{
for (var id_no = 1; id_no <= nIds_total; id_no++)
{
var idOfElement = id_prefix + id_no;
var eElement = document.getElementById(idOfElement);
eElement.isMoved = false;
eElement.hidden = (id_no == 1) ? false : true;
}
}
function shared_unHideNextElement(id_prefix, nIds_total)
{
for (var id_no = 1; id_no <= nIds_total; id_no++)
{
var idOfElement = id_prefix + id_no;
var eElement = document.getElementById(idOfElement);
if (eElement.isMoved == false)
{
eElement.isMoved = true;
var nextId = id_no + 1;
if(nextId <= nIds_total)
{
idOfElement = id_prefix + nextId;
var eNextElement = document.getElementById(idOfElement);
eNextElement.hidden = false;
}
return;
}
}
}
function shared_hide_canvas_circle_makeBackgroundWhite(id_canvas)
{
var eCanvas = document.getElementById(id_canvas);
if (eCanvas.style.display == 'block') eCanvas.style.display = 'none';
if (eCanvas.parentElement.parentElement.style.backgroundColor != 'white')
{
eCanvas.parentElement.parentElement.style.backgroundColor = 'white';
}
}
function shared_hide_canvas_circle(id_canvas)
{
var eCanvas = document.getElementById(id_canvas);
if (eCanvas.style.display == 'block') eCanvas.style.display = 'none';
}
function shared_svg_setEllipseLightGreenTransparentIfisValidatedIsFalse(eEllipse)
{
if (eEllipse.isValidated == false)
{
eEllipse.style.fill = 'rgba(0, 250, 0, 0.4)';//LightGreen
}
}
function shared_svg_setEllipseFillRedTransparentIfisValidatedIsFalse(eEllipse)
{
if (eEllipse.isValidated == false)
{
eEllipse.style.fill = 'rgba(250, 0, 0, 0.4)';//LightRed
}
}
function shared_svg_setEllipseFillBlackTransparentIfisValidatedIsFalse(eEllipse)
{
if (eEllipse.isValidated == false)
{
eEllipse.style.fill = 'rgba(0, 0, 0, 0.4)';//LightBlack
}
}
function shared_svg_setEllipseBorderRedIfisValidatedIsFalse(eEllipse)
{
if (eEllipse.isValidated == false)
{
eEllipse.style.stroke = 'rgba(255, 0, 0, 0)';//Red
}
}
function shared_svg_setEllipseBorderBlackIfisValidatedIsFalse(eEllipse)
{
if (eEllipse.isValidated == false)
{
eEllipse.style.stroke = 'rgba(0, 0, 0, 0)';//Black
}
}
function shared_svg_setSvgWidthHeightAndPositionFromTd(id_td, id_eSvg)
{
var eTd = document.getElementById(id_td);
var eTdRectangle = eTd.getBoundingClientRect();
var eSvg = document.getElementById(id_eSvg);
eSvg.style.width = eTdRectangle.width + 'px';
eSvg.style.height = eTdRectangle.height + 'px';
eSvg.style.left = eTdRectangle.left + 'px';
eSvg.style.top = eTdRectangle.top + 'px';
if (shared_isDebug)
{
eSvg.style.backgroundColor = 'rgba(0, 200, 0, 0.2)';
}
}
/*function shared_svg_setEllipseStyle(id_ellipse, isFillRequired, fillColor, borderColor)
{
var eEllipse = document.getElementById(id_ellipse);
eEllipse.style.stroke = 'transparent';
eEllipse.style.fill = isFillRequired ? CircleColorSvg : 'transparent';
eEllipse.style.strokeWidth = '2px';
if (isFillRequired)
{
if (fillColor == CircleColorSvg.Blue)
{
eEllipse.style.fill = 'transparent';
}
}
else
{
}
eEllipse.onclick = function(){ellipse_click(id_ellipse)};
eEllipse.isValidated = false;
eEllipse.circleColor = CircleColorSvg.None;
if (shared_isDebug)
{
eEllipse.style.stroke = 'rgba(250, 0, 0, 0.5)';
}
}*/
function shared_svg_setEllipseStyle(id_ellipse)
{
var eEllipse = document.getElementById(id_ellipse);
eEllipse.style.stroke = 'transparent';
eEllipse.style.fill = 'transparent';
eEllipse.style.strokeWidth = '2px';
eEllipse.onclick = function(){ellipse_click(id_ellipse)};
eEllipse.isValidated = false;
eEllipse.circleColor = CircleColorSvg.None;
if (shared_isDebug)
{
eEllipse.style.stroke = 'rgba(250, 0, 0, 0.5)';
}
}
function shared_svg_clearMultiEllipsesUsingIdsArray(ellipseIdsArray)
{
for (var indexEllipse = 0; indexEllipse < ellipseIdsArray.length; indexEllipse++)
{
var id_ellipse = ellipseIdsArray[indexEllipse];
shared_svg_clearEllipse(id_ellipse);
}
}
function shared_svg_clearEllipse(id_ellipse)
{
var eEllipse = document.getElementById(id_ellipse);
eEllipse.style.fill = 'transparent';
eEllipse.style.stroke = 'transparent';
eEllipse.circleColor = CircleColorSvg.None;
eEllipse.isValidated = false;
}
function shared_svg_validateEllipsesForValidationReqd(ellipseIdsArrayValidationReqd, circleColor)
{
var nCorrectEllipses = 0;
for (var indexEllipse = 0; indexEllipse < ellipseIdsArrayValidationReqd.length; indexEllipse++)
{
var id_ellipse = ellipseIdsArrayValidationReqd[indexEllipse];
var eEllipse = document.getElementById(id_ellipse);
if (eEllipse.circleColor != CircleColorSvg.None)
{
if (eEllipse.circleColor == circleColor)
{
shared_svg_setEllipseLightGreenTransparentIfisValidatedIsFalse(eEllipse);
nCorrectEllipses++;
}
else
{
shared_svg_setEllipseFillRedTransparentIfisValidatedIsFalse(eEllipse);
}
}
eEllipse.isValidated = true;
}
return (nCorrectEllipses);
}
function shared_svg_validateEllipsesForValidationNotReqdForMulti(ellipseIdsArrayValidationNotReqd)
{
for (var indexEllipse = 0; indexEllipse < ellipseIdsArrayValidationNotReqd.length; indexEllipse++)
{
var id_ellipse = ellipseIdsArrayValidationNotReqd[indexEllipse];
shared_svg_validateEllipseForValidationNotReqdForSingle(id_ellipse);
}
}
function shared_svg_validateEllipseForValidationNotReqdForSingle(id_ellipse)
{
var eEllipse = document.getElementById(id_ellipse);
if (eEllipse.circleColor != CircleColorSvg.None)
{
shared_svg_setEllipseFillRedTransparentIfisValidatedIsFalse(eEllipse);
}
eEllipse.isValidated = true;
}
function shared_svg_showHideEllipsesMultipleFor1Td(id_ellipse, allGroupsIdsArrayArray)
{
var eEllipse = document.getElementById(id_ellipse);
if (eEllipse.circleColor == CircleColorSvg.None)
{
for (var indexGroup = 0; indexGroup < allGroupsIdsArrayArray.length; indexGroup++)
{
var groupIdsArray = allGroupsIdsArrayArray[indexGroup];
for (var indexEllipse = 0; indexEllipse < groupIdsArray.length; indexEllipse++)
{
var id_ellipse = groupIdsArray[indexEllipse];
if (eEllipse.id == id_ellipse)
{
for (var indexEllipseInner = 0; indexEllipseInner < groupIdsArray.length; indexEllipseInner++)
{
if (indexEllipse != indexEllipseInner)
{
shared_svg_clearEllipse(groupIdsArray[indexEllipseInner]);
}
}
shared_svg_showEllipse(eEllipse);
return;
}
}
}
}
else
{
shared_svg_showEllipse(eEllipse);
}
}
function shared_svg_showEllipse(eEllipse)
{
eEllipse.style.stroke = 'blue';
eEllipse.style.fill = 'Transparent';
eEllipse.circleColor = CircleColorSvg.Blue;
eEllipse.isValidated = false;
}
function shared_svg_validateEllipses(allEllipseIdsArray, correctEllipseIdsArray)
{
var nCorrectEllipses = 0;
for (var indexEllipse = 0; indexEllipse < allEllipseIdsArray.length; indexEllipse++)
{
var id_ellipse = allEllipseIdsArray[indexEllipse];
var eEllipse = document.getElementById(id_ellipse);
if (eEllipse.circleColor == CircleColorSvg.Blue)//Circled
{
if (correctEllipseIdsArray.indexOf(id_ellipse) != -1)
{
shared_svg_setEllipseLightGreenTransparentIfisValidatedIsFalse(eEllipse)
nCorrectEllipses++;
}
else
{
shared_svg_setEllipseFillRedTransparentIfisValidatedIsFalse(eEllipse)
}
}
eEllipse.isValidated = true;
}
return (nCorrectEllipses);
}
function shared_canvas_showHideCirclesOfCorrespondingGroup(idCanvas, allGroupsIdsArrayInArray)
{
var eCanvas = document.getElementById(idCanvas);
if (eCanvas.isCircled == false)
{
for (var indexGroup = 0; indexGroup < allGroupsIdsArrayInArray.length; indexGroup++)
{
var groupIdsArray = allGroupsIdsArrayInArray[indexGroup];
for (var indexCanvas = 0; indexCanvas < groupIdsArray.length; indexCanvas++)
{
var id_canvas = groupIdsArray[indexCanvas];
if (eCanvas.id == id_canvas)
{
for (var indexCanvasInner = 0; indexCanvasInner < groupIdsArray.length; indexCanvasInner++)
{
if (indexCanvas != indexCanvasInner)
{
shared_canvas_clearCircle(groupIdsArray[indexCanvasInner]);
}
}
shared_canvas_showCanvas(eCanvas);
return;
}
}
}
}
else
{
shared_canvas_clearCircle(idCanvas);
}
}
function shared_canvas_clearCircle(idCanvas)
{
var eCanvas = document.getElementById(idCanvas);
var eCanvasContext = eCanvas.getContext('2d');
eCanvasContext.clearRect(0, 0, eCanvas.width, eCanvas.height);
eCanvas.style.display = 'none';
eCanvas.isValidated = false;
eCanvas.isCircled = false;
}
function shared_canvas_showCanvas(eCanvas)
{
var eCanvasContext = eCanvas.getContext('2d');
eCanvasContext.clearRect(0, 0, eCanvas.width, eCanvas.height);
eCanvasContext.strokeStyle = 'blue';
eCanvasContext.stroke();
eCanvas.style.display = 'block';
eCanvas.isValidated = false;
eCanvas.isCircled = true;
}
function shared_canvas_validateCanvases(allGroupsIdsArrayInArray, correctCanvasIdsArray)
{
var nCorrectCanvases = 0;
for (var indexGroup = 0; indexGroup < allGroupsIdsArrayInArray.length; indexGroup++)
{
var groupIdsArray = allGroupsIdsArrayInArray[indexGroup];
for (var indexCanvas = 0; indexCanvas < groupIdsArray.length; indexCanvas++)
{
var id_canvas = groupIdsArray[indexCanvas];
var eCanvas = document.getElementById(id_canvas);
if (eCanvas.isCircled)
{
if (correctCanvasIdsArray.indexOf(id_canvas) != -1)
{
shared_canvas_setCanvasCircleLightGreenTransparentIfisValidatedIsFalse(eCanvas)
nCorrectCanvases++;
}
else
{
shared_canvas_setCanvasCircleLightRedTransparentIfisValidatedIsFalse(eCanvas)
}
}
eCanvas.isValidated = true;
}
}
return (nCorrectCanvases);
}
function shared_canvas_setCanvasCircleLightGreenTransparentIfisValidatedIsFalse(eCanvas)
{
var eCanvasContext = eCanvas.getContext('2d');
if (eCanvas.isValidated == false)
{
eCanvasContext.fillStyle = 'rgba(0, 250, 0, 0.4)';//Light green
eCanvasContext.fill();
eCanvas.isValidated = true;
}
}
function shared_canvas_setCanvasCircleLightRedTransparentIfisValidatedIsFalse(eCanvas)
{
var eCanvasContext = eCanvas.getContext('2d');
if (eCanvas.isValidated == false)
{
eCanvasContext.fillStyle = 'rgba(250, 0, 0, 0.4)';// Light red
eCanvasContext.fill();
eCanvas.isValidated = true;
}
}
function shared_canvas_drawCircle(id_canvas, id_td)
{
shared_canvas_drawCircleWithRadiusPercentageOfTd(id_canvas, id_td, 80);
}
function shared_canvas_drawCircleWithRadiusPercentageOfTd(id_canvas, id_td, radiousPercentageOfTd)
{
var eTd = document.getElementById(id_td);
var eTdRectangle = eTd.getBoundingClientRect();
var eCanvas = document.getElementById(id_canvas);
eCanvas.style.left = eTdRectangle.left + 'px';
eCanvas.style.top = eTdRectangle.top + 'px';
eCanvas.textAlign = 'center';
eCanvas.width = eTdRectangle.width;
eCanvas.height = eTdRectangle.height;
var minWidthOrHeight = eTdRectangle.width < eTdRectangle.height ? eTdRectangle.width : eTdRectangle.height;
var radious = (minWidthOrHeight * radiousPercentageOfTd / 100.0) / 2.0;
var eCanvasContext = eCanvas.getContext('2d');
eCanvasContext.beginPath();
eCanvasContext.arc(eCanvas.width/2, eCanvas.height/2, radious, 0, 2*Math.PI);
eCanvasContext.strokeStyle = 'blue';
eCanvasContext.lineWidth = 2;
eCanvasContext.stroke();
eCanvas.isValidated = false;
eCanvas.isCircled = false;
eCanvas.circleColor = CircleColorCanvas.None;
}
function shared_show_hideCirclesWithReqdColorForMultiUsingColors(idCanvas, color1, color2)
{
var eCanvas = document.getElementById(idCanvas);
eCanvas.style.display = 'block';
var eCanvasContext = eCanvas.getContext('2d');
eCanvasContext.clearRect(0, 0, eCanvas.width, eCanvas.height);
var color1Circle = shared_getCanvasCircleColorUsingColor(color1);
var color2Circle = shared_getCanvasCircleColorUsingColor(color2);
if (eCanvas.circleColor == CircleColorCanvas.None)
{
eCanvasContext.strokeStyle = color1;
eCanvasContext.stroke();
eCanvas.circleColor = color1Circle;
eCanvas.isCircled = true;
}
else if (eCanvas.circleColor == color1Circle)
{
eCanvasContext.strokeStyle = color2;
eCanvasContext.stroke();
eCanvas.circleColor = color2Circle;
eCanvas.isCircled = true;
}
else if (eCanvas.circleColor == color2Circle)
{
eCanvasContext.clearRect(0, 0, eCanvas.width, eCanvas.height);
eCanvas.circleColor = CircleColorCanvas.None;
eCanvas.isCircled = false;
}
eCanvas.isValidated = false;
}
function shared_show_hideCirclesWithReqdColorForMulti(idCanvas)
{
var eCanvas = document.getElementById(idCanvas);
var eCanvasContext = eCanvas.getContext('2d');
eCanvasContext.clearRect(0, 0, eCanvas.width, eCanvas.height);
if (eCanvas.circleColor == CircleColorCanvas.None)
{
eCanvasContext.strokeStyle = 'blue';
eCanvasContext.stroke();
eCanvas.style.display = 'block';
eCanvas.circleColor = CircleColorCanvas.Blue;
eCanvas.isCircled = true;
}
else if (eCanvas.circleColor == CircleColorCanvas.Blue)
{
eCanvasContext.clearRect(0, 0, eCanvas.width, eCanvas.height);
eCanvas.circleColor = CircleColorCanvas.None;
eCanvas.isCircled = false;
}
eCanvas.isValidated = false;
}
function shared_getCanvasCircleColorUsingColor(color)
{
if (color == 'green')
{
return (CircleColorCanvas.Green);
}
else if (color == 'red')
{
return (CircleColorCanvas.Red);
}
else if (color == 'blue')
{
return (CircleColorCanvas.Blue);
}
else if (color == 'black')
{
return (CircleColorCanvas.Black);
}
return (CircleColorCanvas.Blue);
}
function shared_canvas_getNoOfNotCircledCanvases(canvasIdsArrayValidationNotReqd)
{
var nCircleNotReqdCanvases = 0;
for (var indexCanvas = 0; indexCanvas < canvasIdsArrayValidationNotReqd.length; indexCanvas++)
{
var id_canvas = canvasIdsArrayValidationNotReqd[indexCanvas];
var eCanvas = document.getElementById(id_canvas);
if (eCanvas.circleColor == CircleColorCanvas.None)
{
nCircleNotReqdCanvases++;
}
}
return (nCircleNotReqdCanvases);
}
function shared_canvas_validateCanvasesForValidationReqd(canvasIdsArrayValidationReqd, circleColor)
{
var nCorrectCanvases = 0;
for (var indexCanvas = 0; indexCanvas < canvasIdsArrayValidationReqd.length; indexCanvas++)
{
var id_canvas = canvasIdsArrayValidationReqd[indexCanvas];
var eCanvas = document.getElementById(id_canvas);
if (eCanvas.circleColor != CircleColorCanvas.None)
{
if (eCanvas.circleColor == circleColor)
{
shared_canvas_setCanvasCircleLightGreenTransparentIfisValidatedIsFalse(eCanvas)
nCorrectCanvases++;
}
else
{
shared_canvas_setCanvasCircleLightRedTransparentIfisValidatedIsFalse(eCanvas)
}
}
eCanvas.isValidated = true;
}
return (nCorrectCanvases);
}
function shared_canvas_validateCanvasesForValidationNotReqdForMulti(canvasIdsArrayValidationNotReqd)
{
for (var indexCanvas = 0; indexCanvas < canvasIdsArrayValidationNotReqd.length; indexCanvas++)
{
var id_canvas = canvasIdsArrayValidationNotReqd[indexCanvas];
shared_canvas_validateCanvasForValidationNotReqdForSingle(id_canvas);
}
}
function shared_canvas_validateCanvasForValidationNotReqdForSingle(id_canvas)
{
var eCanvas = document.getElementById(id_canvas);
var eCanvasContext = eCanvas.getContext('2d');
if (eCanvas.circleColor == CircleColorCanvas.None)
{
eCanvasContext.fillStyle = 'transparent';
eCanvasContext.fill();
eCanvasContext.strokeStyle = 'transparent';
eCanvasContext.stroke();
eCanvas.circleColor = CircleColorCanvas.None;
}
else
{
shared_canvas_setCanvasCircleLightRedTransparentIfisValidatedIsFalse(eCanvas)
}
eCanvas.isValidated = true;
}