Advertisement
arijulianto

getNilai siswa

Nov 30th, 2017
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
jQuery 7.35 KB | None | 0 0
  1. function getNilai(pel){
  2.     var dataSoal = {}, dataNilai = {};
  3.     $$.getJSON(server+'nilai/detail/'+user_profile.idsiswa+'.json?p='+pel, function(res){
  4.         if(res.length===undefined){
  5.             $$('.data-nilai-table.nilai').html('<ul class="shadow corner-all" id="data-nilai-table-study"></ul>');
  6.             $$.each(res, function(i,row){
  7.                 dataSoal = row.soal ? row.soal : null;
  8.                 dataNilai = row.nilai ? row.nilai : null;
  9.                 if(row.level!=0){
  10.                     li = '<li class="tree-nilai lv'+row.level+' hide" data-id="'+i+'"'+
  11.                         'data-parent="'+row.parent+'"'+
  12.                         'data-sub="'+row.sub+'"'+
  13.                         'data-soal="'+(row.soal?Base64.encode(JSON.stringify(row.soal)):'')+'"'+
  14.                         'data-nilai="'+(row.nilai?Base64.encode(JSON.stringify(row.nilai)):'')+'"'+
  15.                         '><a class="item-nilai"><div class="nilai-data"><i class="fa icon-arrow fa-caret-right"></i> '+row.name+'</div>';
  16.                     if(row.level==2){
  17.                         li += '<div class="nilai-action item-nilai">';
  18.                         li += '    <span><i class="fa fa-chevron-right"></i></span>';
  19.                         li += '</div>';
  20.                     }
  21.                     li += '</a></li>';
  22.                 }else{
  23.                     li = '<li class="tree-nilai lv0" data-id="'+i+'" data-parent="'+row.parent+'" data-sub="'+row.sub+'"><a class="item-nilai"><i class="fa fa-caret-right"></i> '+row.name+'</a></li>';
  24.                 }
  25.                 $$('.data-nilai-table ul').append($$(li));
  26.                 li = '';
  27.             });
  28.         }else{
  29.             $$('.data-nilai-table.nilai').html('<p>Belum ada nilai untuk '+pel+'</p>');
  30.         }
  31.        
  32.         $$('.item-nilai').on('click', function(){
  33.             var id = $$(this).closest('.tree-nilai').data('id');
  34.             var parent = $$(this).closest('.tree-nilai').data('parent');
  35.             var sub = $$(this).closest('.tree-nilai').data('sub');
  36.             var lv = $$(this).closest('.tree-nilai').attr('class').replace('tree-nilai lv', '');
  37.             var judul = $$(this).text();
  38.             var dtNilai = $$(this).closest('.tree-nilai').attr('data-nilai');
  39.             var dtSoal = $$(this).closest('.tree-nilai').attr('data-soal');
  40.             var dataNilai = {};
  41.             var dataSoal = {};
  42.             var isClose,li='';
  43.             var nilai = {1:'plus', 2:'star', 3:'check'};
  44.             if(lv=='0'){
  45.                 isClose = $$('.tree-nilai.lv1[data-parent="'+id+'"]').hasClass('hide');
  46.                 $$('.tree-nilai.lv1[data-parent="'+id+'"]').toggleClass('hide');
  47.                 if(isClose){
  48.                     $$(this).closest('.tree-nilai.lv0').find('.item-nilai').find('.icon-arrow').addClass('fa-caret-down').removeClass('fa-caret-right');
  49.                 }else{
  50.                     $$(this).closest('.tree-nilai.lv0').find('.item-nilai').find('.icon-arrow').addClass('fa-caret-right').removeClass('fa-caret-down');
  51.                 }
  52.             }else if(lv=='1'){
  53.                 $$('.tree-nilai.lv2[data-parent="'+parent+'"][data-sub="'+id+'"]').toggleClass('hide');
  54.                 isClose = $$('.tree-nilai.lv2[data-parent="'+parent+'"][data-sub="'+id+'"]').hasClass('hide');
  55.                 if(isClose){
  56.                     $$(this).closest('.tree-nilai.lv1').find('.item-nilai').find('.icon-arrow').addClass('fa-caret-right').removeClass('fa-caret-down');
  57.                 }else{
  58.                     $$(this).closest('.tree-nilai.lv1').find('.item-nilai').find('.icon-arrow').addClass('fa-caret-down').removeClass('fa-caret-right');
  59.                 }
  60.             }else if(lv=='2'){
  61.                 if(dtNilai){
  62.                     dataNilai = JSON.parse(Base64.decode(dtNilai));
  63.                 }
  64.                 $$('.nilai-soal').html('');
  65.                 $$('.tree-nilai').removeClass('selected-item-detail');
  66.                 $$(this).addClass('selected-item-detail');
  67.                 if(dtSoal){
  68.                     dataSoal = JSON.parse(Base64.decode(dtSoal));
  69.                     if(dataSoal){
  70.                         $$.each(dataSoal, function(i, n){
  71.                            li = '<li><a class="media-circle animated pulse infinite">'+n+'</a>';
  72.                             if(dataNilai[i]){
  73.                                 $$.each(dataNilai[i], function(k,v){
  74.                                     li += '<span><i class="fa fa-2x fa-'+nilai[v]+'"></i></span>';
  75.                                 });
  76.                             }else{
  77.                                 li += '<span><i class="fa fa-2x fa-lock color-gray"></i></span>';
  78.                             }
  79.                            li += '</li>';
  80.                            $$('.nilai-soal').append($$(li));
  81.                            li = '';
  82.                         });
  83.                     }
  84.                 }
  85.                 //var clickedLink = this;
  86.                 if(ref=='study'){
  87.                     idmateri = $$(this).closest('li').data('id').replace('s','');
  88.                     mainView.loadPage('pelajaran-detail.html');
  89.                 }else{
  90.                     myApp.popup('.popover-soal');
  91.                     $$('.popover-soal .popover-title').html(judul);                    
  92.                 }
  93.             }
  94.         });
  95.        
  96.         $$('.search-materi').on('keyup', function() {
  97.             var input, filter, ul, li, a, i;
  98.             input = $$(this).val();
  99.             filter = input.trim().toLowerCase();
  100.             ul = document.getElementById("data-nilai-table-study");
  101.  
  102.             if($$('.data-nilai-table.nilai').find('ul').length){
  103.                 li = ul.getElementsByTagName('li');
  104.                 if(input){
  105.                     for (i = 0; i < li.length; i++) {
  106.                         a = li[i].getElementsByTagName("a")[0];
  107.                         if (a.innerHTML.trim().toLowerCase().indexOf(filter) > -1) {
  108.                             li[i].classList.remove('hide');
  109.                         } else {
  110.                             li[i].classList.add('hide');
  111.                         }
  112.                 }
  113.                 }else{
  114.                     $$('#data-nilai-table-study').find('.lv0').removeClass('hide');
  115.                     $$('#data-nilai-table-study').find('.lv0').find('.icon-arrow').removeClass('fa-caret-down').addClass('fa-caret-right');
  116.                     $$('#data-nilai-table-study').find('.lv1').addClass('hide');
  117.                     $$('#data-nilai-table-study').find('.lv1').find('.icon-arrow').removeClass('fa-caret-down').addClass('fa-caret-right');
  118.                     $$('#data-nilai-table-study').find('.lv2').addClass('hide');
  119.                     $$('#data-nilai-table-study').find('.lv2').find('.icon-arrow').removeClass('fa-caret-down').addClass('fa-caret-right');
  120.                 }
  121.             }
  122.         });
  123.        
  124.         $$('.search-materi').on('keydown', function(e){
  125.             if(e.keyCode==13){
  126.                 Keyboard.hide()
  127.             }
  128.         });
  129.     }, function(a,b){
  130.         if(b==0){
  131.             myApp.toast('Anda tidak terhubung ke Internet.<br />Silahkan periksa jaringan WiFi atau Mobile Data Anda!<br />Klik disini untuk Refresh','center');
  132.             $$('.toast').on('click', function(){
  133.                 $$('.toast .toast-inner').html('Loading...');
  134.                 getNilai(pel);
  135.             });
  136.         }
  137.     });
  138. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement