????JFIF??x?x????'
Server IP : 79.136.114.73 / Your IP : 3.138.154.250 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/www_old2/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 = '../../levels.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'; window.location = shared_currentLevel + shared_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;*/ window.location = shared_currentLevel + shared_currentCategory + shared_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_setTextAndBackgroundColorByTrimmingText(id_text, id_box_destination) { var elementText = document.getElementById(id_text); var text = elementText.innerText.trim(); var splitText = text.toLowerCase().split(' '); var elementBox = document.getElementById(id_box_destination); elementBox.innerHTML = text; elementBox.style.backgroundColor = splitText[0]; elementBox.style.color = ((splitText[0] == 'white') || (splitText[0] == 'yellow')) ? 'black' : 'white'; elementBox.style.border = (splitText[0] == 'white') ? 'thin solid black' : 'white'; 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 eSound = document.getElementById('id_claps_sound') if (eSound != null) { eSound.pause(); eSound.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) { var totalLessons = shared_get_totalLessons(level, catNo); if (shared_isDebug) { return ("Level " + level.name + " [Debug - Cat " + catNo.name + " : Lesson " + lessonNo + "/" + totalLessons + "]"); } else { return ("Level " + level.name + " [" + catNo.name + " - " + lessonNo + " of " + totalLessons + "]"); } } 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'; eSvg.style.visibility = "visible"; 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_showCircles(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) { 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) shared_isSelectedWrong = true; } } 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; } //For safari Drag and drop function shared_allowDrop(ev) { ev.preventDefault(); } function shared_dragStart(ev) { shared_currentDropingId = ev.target.id; }