public function matapelajaran()
 {
     $klslevel = isset($_GET['klslevel']) ? addslashes($_GET['klslevel']) : 1;
     //$kls = new Kelas();
     //$kls->getByID($id);
     $mp = new Matapelajaran();
     $mp_id = isset($_GET['mp_id']) ? addslashes($_GET['mp_id']) : die('MP ID empty');
     $mp->getByID($mp_id);
     //get quizes
     $quiz = new Quiz();
     $whereClause = "quiz_guru_id = guru_id AND quiz_mp_id = '{$mp_id}' AND quiz_tingkatan = '{$klslevel}' ORDER BY quiz_create_date DESC";
     $arrTables = array("Guru");
     $arrQuiz = $quiz->getWhereFromMultipleTable($whereClause, $arrTables);
     //pr($arrQuiz);
     //get topicmaps
     $tm = new Topicmap();
     $whereClause = "tm_guru_id = guru_id AND tm_mp_id = '{$mp_id}'  AND tm_kelas_tingkatan  = '{$klslevel}' ORDER BY tm_updatedate DESC";
     $arrTables = array("Guru");
     $arrTM = $tm->getWhereFromMultipleTable($whereClause, $arrTables);
     //pr($arrTM);
     $return["mp"] = $mp;
     $return['kelas'] = $kls;
     $return['webClass'] = __CLASS__;
     $return['method'] = __FUNCTION__;
     $return['klslevel'] = $klslevel;
     $return['arrQuiz'] = $arrQuiz;
     $return['arrTM'] = $arrTM;
     Mold::both("elearning/mp_profile", $return);
     //pr($mp);
 }
 public function insertNilai()
 {
     //ambil tahun ajaran utk absensinya
     $ta = TahunAjaran::ta();
     $id = isset($_GET['klsid']) ? addslashes($_GET['klsid']) : Kelas::getFirstKelasID();
     $kls = new Kelas();
     $kls->getByID($id);
     $mp_id = isset($_GET['mp_id']) ? addslashes($_GET['mp_id']) : Matapelajaran::getFirstMPID();
     $mp = new Matapelajaran();
     $mp->getByID($mp_id);
     // utk insert ke db
     $cmd = $_GET['cmd'];
     $murid_id = $_GET['murid_id'];
     $matapelajaranID = $_GET['matapelajaranID'];
     $kelas_id = $_GET['kelas_id'];
     $nilaiUjian = $_GET['nilaiUjian'];
     $tglUjian = $_GET['tglUjian'];
     $jenisUjian = $_GET['jenisUjian'];
     //amnbil murid dikelas
     $murid = new Murid();
     $arrOfMurid = $murid->getMuridDiKelas($kls, $ta);
     $nilai = new Nilai($ta, $arrOfMurid, $mp_id, $id);
     if ($cmd == "insert") {
         $nilai->insertTanggalUjian($murid_id, $matapelajaranID, $nilaiUjian, $tglUjian, "Daily", $ta, $kelas_id);
         $_GET['cmd'] = "";
         Mold::both("studentsetup/insertnilai", $return);
     } else {
         $return = $nilai->getNilaiKelasSortNachDatum();
         $return['webClass'] = __CLASS__;
         $return['method'] = __FUNCTION__;
         $return['ta'] = $ta;
         $return['kls'] = $kls;
         $return['mp'] = $mp;
         $return['murid'] = $arrOfMurid;
         $return['nilai'] = $nilai;
         Mold::both("studentsetup/insertnilai", $return);
     }
 }
    public static function subjectSelector($subjectActual, $urlOnChange)
    {
        $t = time();
        $matapelajaran = new Matapelajaran();
        $sujectValue = $matapelajaran->getWhere("mp_aktiv=1 ORDER BY mp_name ASC", "mp_id, mp_name, mp_singkatan");
        ?>
        <select id="selectSubject_<?php 
        echo t;
        ?>
" class="form-control">
            <?php 
        foreach ($sujectValue as $n => $mp) {
            if ($subjectActual->mp_id == $mp->mp_id) {
                $selected = "selected";
            } else {
                $selected = "";
            }
            ?>
                <option value="<?php 
            echo $mp->mp_id;
            ?>
"<?php 
            echo $selected;
            ?>
><?php 
            echo $mp->mp_name;
            ?>
</option>
            <?php 
        }
        ?>
        </select>
        <script>
            $("#selectSubject_<?php 
        echo t;
        ?>
").change(function () {
                var slc = $("#selectSubject_<?php 
        echo t;
        ?>
").val();
                openLw(window.selected_page, "<?php 
        echo $urlOnChange;
        ?>
&mp_id=" + slc, "fade");
            });
        </script>
    <?php 
    }
 public function tablemengajar()
 {
     //load ta
     $ta = TahunAjaran::ta();
     //command switch
     $cmd = isset($_GET['cmd']) ? $_GET['cmd'] : "read";
     //edit mj
     if ($cmd == "edit") {
         $guru = new Guru();
         $return = $guru->loadMJGuruSelection($ta);
         $return['method'] = __FUNCTION__;
         $return['webClass'] = __CLASS__;
         //pr($return);
         //die();
         Mold::both("schoolsetup/tablemengajar_selection", $return);
         exit;
     }
     //submit mj
     if ($cmd == "editSubmit") {
         $guru = new Guru();
         $json = $guru->setMengajar();
         die(json_encode($json));
     }
     // edit homeroom
     if ($cmd == "editHr") {
         $guru = new Guru();
         $kelas_id = isset($_GET['kelas_id']) ? $_GET['kelas_id'] : 0;
         if ($kelas_id == 0) {
             die('kelas id must exists');
         }
         $return['hr'] = $guru->getHomeroomFromKelas($ta, $kelas_id);
         //load  guru aktiv
         $guru = new Guru();
         $arrGuru = $guru->getWhere("guru_aktiv = 1 ORDER BY nama_depan ASC", "guru_id,nama_depan");
         $return['hrid'] = $ta . "_" . $kelas_id;
         $return['arrGuru'] = $arrGuru;
         $return['method'] = __FUNCTION__;
         $return['webClass'] = __CLASS__;
         $return['loadid'] = time();
         Mold::both("schoolsetup/tablemengajar_homeroomselect", $return);
         exit;
     }
     //submit hr
     if ($cmd == "editSubmitHr") {
         $guru = new Guru();
         $json = $guru->setHomeroom();
         die(json_encode($json));
     }
     //load all mp aktiv
     $mp = new Matapelajaran();
     $arrMp = $mp->getWhere("mp_aktiv = 1 ORDER BY mp_group ASC,mp_singkatan ASC", "mp_id,mp_name,mp_singkatan,mp_group");
     //load all kelas aktiv
     $kls = new Kelas();
     $arrKelas = $kls->getWhere("kelas_aktiv = 1 ORDER BY kelas_name ASC,kelas_tingkatan ASC", "kelas_id,kelas_name,kelas_tingkatan");
     //pr($arrMp);pr($arrKelas);
     //load guru mengajar
     $guru = new Guru();
     $arrMj = $guru->getTableMengajar($ta);
     //bikin array yang pas
     $group = "";
     $newArr = array();
     $newArrID = array();
     $newArrObject = array();
     $totalPerBag = array();
     $totalPerKelas = array();
     $hrPerKelas = array();
     foreach ($arrMp as $mps) {
         if ($group != $mps->mp_group) {
             $group = $mps->mp_group;
         }
         foreach ($arrKelas as $kl) {
             //get homeroom
             if (!isset($hrPerKelas[$kl->kelas_name])) {
                 $hrPerKelas[$kl->kelas_name] = $guru->getHomeroomFromKelas($ta, $kl->kelas_id);
             }
             if (!isset($totalPerBag[$group][$kl->kelas_name])) {
                 $totalPerBag[$group][$kl->kelas_name] = 0;
             }
             if (!isset($totalPerKelas[$kl->kelas_name])) {
                 $totalPerKelas[$kl->kelas_name] = 0;
             }
             //masukan ke array
             $newArr[$group][$mps->mp_name][$kl->kelas_name] = null;
             //masukan id nya
             $newArrID[$mps->mp_name] = $mps->mp_id;
             $newArrID[$kl->kelas_name] = $kl->kelas_id;
             //save objectnya di array
             $newArrObject[$mps->mp_name] = $mps;
             $newArrObject[$kl->kelas_name] = $kl;
             foreach ($arrMj as $mj) {
                 if ($mps->mp_id == $mj->mj_mp_id && $kl->kelas_id == $mj->mj_kelas_id) {
                     $mj->mp_obj = $mps;
                     $mj->kelas_obj = $kl;
                     $newArr[$group][$mps->mp_name][$kl->kelas_name] = $mj;
                     $totalPerBag[$group][$kl->kelas_name] += $mj->mj_jam;
                     $totalPerKelas[$kl->kelas_name] += $mj->mj_jam;
                 }
             }
         }
         //$newArr[$group][$mps->mp_name]
     }
     //ksort($newArr);
     //pr($newArr);
     //pr($arrMj);
     //pasang ke table
     $return['ta'] = $ta;
     $return['webClass'] = __CLASS__;
     $return['method'] = __FUNCTION__;
     //yang array taruh bawah
     $return['mp'] = $arrMp;
     $return['kelas'] = $arrKelas;
     $return['arrMj'] = $arrMj;
     $return['sortArrMj'] = $newArr;
     $return['totalPerGroup'] = $totalPerBag;
     $return['totalPerKelas'] = $totalPerKelas;
     $return['hrPerKelas'] = $hrPerKelas;
     $return['arrIDs'] = $newArrID;
     $return['arrObjs'] = $newArrObject;
     Mold::both("schoolsetup/tablemengajar", $return);
 }
 public function getMatapelajaran($arrOfJadwalMP)
 {
     foreach ($arrOfJadwalMP as $obj) {
         if (Matapelajaran::istMPResmi($obj->jw_type)) {
             $mp_singkatan = MatapelajaranResmi::getMatapelajaranSingkatan($obj->jw_mp_id);
         } else {
             $mp_singkatan = MatapelajaranTidakResmi::getMatapelajaranname($obj->jw_mp_id);
         }
         //echo $mp_singkatan . "<br>";
     }
     return $arrOfJadwalMP;
 }
 public function MyGrad()
 {
     $ta = TahunAjaran::ta();
     $murid = new Murid();
     $murid->default_read_coloms = "*";
     $murid->getByAccountID(Account::getMyID());
     $mp_id = isset($_GET['mp_id']) ? addslashes($_GET['mp_id']) : Matapelajaran::getFirstMPID();
     $mp = new Matapelajaran();
     $mp->getByID($mp_id);
     $myNilai = new Nilai($ta, $murid, $mp_id, $murid->murid_tingkatan);
     $return = $myNilai->getMyNilai();
     $return['webClass'] = __CLASS__;
     $return['method'] = __FUNCTION__;
     $return['ta'] = $ta;
     $return['mp'] = $mp;
     $return['murid'] = $arrOfMurid;
     $return['nilai'] = $myNilai;
     //        pr($return);
     Mold::both("murid/mygrad", $return);
 }