(function(){ 'use strict'; if(window.fiTeacherResultCommentsBound)return; window.fiTeacherResultCommentsBound=true; var dialog,title,context,body,close,opener; function createDialog(){ dialog=document.createElement('dialog');dialog.className='fi-teacher-comment-dialog'; dialog.setAttribute('aria-labelledby','fi-teacher-comment-title'); title=document.createElement('h2');title.id='fi-teacher-comment-title'; context=document.createElement('p');context.className='fi-teacher-comment-context'; body=document.createElement('div');body.className='fi-teacher-comment-body'; close=document.createElement('button');close.type='button';close.className='fi-teacher-comment-close'; close.addEventListener('click',function(){dialog.close();}); dialog.addEventListener('click',function(e){ var r=dialog.getBoundingClientRect(); if(e.target===dialog&&(e.clientXr.right||e.clientYr.bottom))dialog.close(); }); dialog.addEventListener('close',function(){if(opener&&opener.isConnected)opener.focus({preventScroll:true});}); dialog.append(title,context,body,close);document.body.appendChild(dialog); } document.addEventListener('click',function(e){ var button=e.target.closest('.fi-teacher-result-comment[data-fi-result-comment]');if(!button)return; e.preventDefault(); if(!dialog)createDialog();opener=button; title.textContent=button.dataset.fiCommentLabel; context.textContent=button.dataset.fiResultTitle; body.textContent=button.dataset.fiResultComment; close.textContent=button.dataset.fiCloseLabel; if(!dialog.open)dialog.showModal(); }); })(); (function(){ if(window.fiTeacherChampResultsBound)return;window.fiTeacherChampResultsBound=true; document.addEventListener('click',function(e){ var button=e.target.closest('[data-teacher-champ-results]');if(!button)return; e.preventDefault(); var state=fiTabReportOpen(button.dataset.title);if(!state)return; jQuery.ajax({url:'/teacher/championship_results.php',data:{comp:button.dataset.teacherChampResults},dataType:'json',cache:false,timeout:60000}) .done(function(report){fiTabReportFill(state,report,'/downloads/tabulation_results_');}) .fail(function(){fiTabReportFail(state);}); }); })(); (function(){ if(window.fiHistoryChampResultsBound)return;window.fiHistoryChampResultsBound=true; document.addEventListener('click',function(e){ var button=e.target.closest('[data-history-champ-results]');if(!button)return; e.preventDefault(); var state=fiTabReportOpen(button.dataset.title);if(!state)return; jQuery.ajax({url:'/personal/championship_results.php',data:{comp:button.dataset.historyChampResults},dataType:'json',cache:false,timeout:60000}) .done(function(report){fiTabReportFill(state,report,'/downloads/tabulation_results_');}) .fail(function(){fiTabReportFail(state);}); }); })();