<?php
session_start();
$time_start = microtime(true); 
include "../../inc/config.php";
session_check();
require('../../lib/simplexlsx.class.php');
switch ($_GET["act"]) {
    case 'download_sample':
      require_once '../Writer.php';
      $writer = new XLSXWriter();
      $style =
        array (
                      array(
              'border' => array(
                'style' => 'thin',
                'color' => '000000'
                ),
            'allfilleddata' => true
            ),
            array(
                'fill' => array(
                    'color' => 'ff0000'
                    ),
                'cells' => array(
                    'A1',
                    'B1',
                    'C1',
                    'D1',
                    'E1',
                    'F1',
                    'G1',
                    'H1',
                    'I1',
                    'K1',
                    'L1',
                    'M1',
                    'N1',
                    'S1',
                    'T1',
                    'Y1',
                    'Z1',
                    'AA1',
                    'AJ1',
                     'AU1',
                    'AT1',
                    'AV1',
                    

                    ),
                'border' => array(
                    'style' => 'thin',
                    'color' => '000000'
                    ),
                'verticalAlign' => 'center',
                'horizontalAlign' => 'center',
            ),
                        array(
                'fill' => array(
                    'color' => '91d24a'
                    ),
                'cells' => array(
                    'J1',
                    'O1',
                    'P1',
                    'Q1',
                    'R1',
                    'U1',
                    'V1',
                    'W1',
                    'X1',
                    
                    'AB1',
                    'AC1',
                    'AD1',
                    'AE1',
                    'AF1',
                    'AG1',
                    'AH1',
                    'AI1',
                    'AK1',
                    'AL1',
                    'AM1',
                    'AN1',
                    'AO1',
                    'AP1',
                    'AQ1',
                    'AR1',
                    'AS1',
                   
                    'AW1',
                    'AX1',
                    'AY1',
                    'AZ1'
                    ),
                #2f74b5
                'border' => array(
                    'style' => 'thin',
                    'color' => '000000'
                    ),
                'verticalAlign' => 'center',
                'horizontalAlign' => 'center',
                ),

              array(
                'fill' => array(
                    'color' => '2f74b5'
                    ),
                'cells' => array(
                    'AW1',
                    'AX1'
                    ),
                'border' => array(
                    'style' => 'thin',
                    'color' => '000000'
                    ),
                'verticalAlign' => 'center',
                'horizontalAlign' => 'center'
                )
            );

//column width
$col_width = array(
  1 => 16,
  2 => 26,
  3 => 13,
  4 => 16,
  5 => 15,
  6 => 18,
  7 => 10,
  8 => 11,
  9 => 20,
  10 => 13,
  11 => 17,
  12 => 20,
  13 => 16,
  14 => 15,
 15 => 11,
  16 => 9,
  17 => 9,
  18 => 12,
  19 => 12,
  20 => 12,
  21 => 14,
  22 => 12,
  23 => 17,
  24 => 13,
  25 => 13,
  26 => 23,
  27 => 13,
  28 => 11,
  29 => 11,
  30 => 17,
 31=> 13,
  32 => 16,
  33 => 15,
  34 => 17,
  35 => 17,
  36 => 19,
  37 => 17,
  38 => 16,
  
  39 => 17,
  40 => 18,
  41 => 20,
  42 => 17,
  43 => 17,
  44 => 19,
  45 => 22,
  46 => 13,
  47 => 18,
  48 => 21,
  49 => 24,
  50 => 24
  );

$writer->setColWidth($col_width);


$header = array(
            'NIM' =>'string',
             'NAMA' =>'string',
             'Tempat Lahir' =>'string',
             'Tanggal Lahir' =>'string',
             'Jenis Kelamin' =>'string',
             'NIK' =>'string',
             'Agama' =>'string',
             'NISN' =>'string',
             'Jalur Pendaftaran' =>'string',
             'NPWP' =>'string',
             'Kewarganegaraan' =>'string',
             'Jenis Pendaftaran' =>'string',
             'Tgl Masuk Kuliah' =>'string',
             'Mulai Semester' =>'string',
             'Jalan' =>'string',
             'RT' =>'string',
             'RW' =>'string',
             'Nama Dusun' =>'string',
             'Kelurahan' =>'string',
             'Kecamatan' =>'string',
             'Kode Pos' =>'string',
             'Jenis Tinggal' =>'string',
             'Alat Transportasi' =>'string',
             'Telp Rumah' =>'string',
             'No HP' =>'string',
             'Email' =>'string',
             'Terima KPS' =>'string',
            'No KPS' =>'string',
             'NIK Ayah' =>'string',
             'Nama Ayah' =>'string',
             'Tgl Lahir Ayah' =>'string',
             'Pendidikan Ayah' =>'string',
             'Pekerjaan Ayah' =>'string',
             'Penghasilan Ayah' =>'string',
             'NIK Ibu' =>'string',
             'Nama Ibu' =>'string',
             'Tanggal Lahir Ibu' =>'string',
             'Pendidikan Ibu' =>'string',
             'Pekerjaan Ibu' =>'string',
             'Penghasilan Ibu' =>'string',
             'Nama Wali' =>'string',
             'Tanggal Lahir wali' =>'string',
             'Pendidikan Wali' =>'string',
             'Pekerjaan Wali' =>'string',
             'Penghasilan Wali' =>'string',
             'Kode Prodi' => 'string',
             'Jenis Pembiayaan' => 'string',
             'Biaya Masuk Kuliah' => 'string',
             'SKS Diakui' => 'string',
             'Asal Perguruan Tinggi' => 'string',
             'Asal Program Studi' => 'string',
             'Keterangan' =>'string'
);

$writer->setColWidth($col_width);


$header = array(
            'NIM' =>'string',
             'NAMA' =>'string',
             'Tempat Lahir' =>'string',
             'Tanggal Lahir' =>'string',
             'Jenis Kelamin' =>'string',
             'NIK' =>'string',
             'Agama' =>'string',
             'NISN' =>'string',
             'Jalur Pendaftaran' =>'string',
             'NPWP' =>'string',
             'Kewarganegaraan' =>'string',
             'Jenis Pendaftaran' =>'string',
             'Tgl Masuk Kuliah' =>'string',
             'Mulai Semester' =>'string',
             'Jalan' =>'string',
             'RT' =>'string',
             'RW' =>'string',
             'Nama Dusun' =>'string',
             'Kelurahan' =>'string',
             'Kecamatan' =>'string',
             'Kode Pos' =>'string',
             'Jenis Tinggal' =>'string',
             'Alat Transportasi' =>'string',
             'Telp Rumah' =>'string',
             'No HP' =>'string',
             'Email' =>'string',
             'Terima KPS' =>'string',
            'No KPS' =>'string',
             'NIK Ayah' =>'string',
             'Nama Ayah' =>'string',
             'Tgl Lahir Ayah' =>'string',
             'Pendidikan Ayah' =>'string',
             'Pekerjaan Ayah' =>'string',
             'Penghasilan Ayah' =>'string',
             'NIK Ibu' =>'string',
             'Nama Ibu' =>'string',
             'Tanggal Lahir Ibu' =>'string',
             'Pendidikan Ibu' =>'string',
             'Pekerjaan Ibu' =>'string',
             'Penghasilan Ibu' =>'string',
             'Nama Wali' =>'string',
             'Tanggal Lahir wali' =>'string',
             'Pendidikan Wali' =>'string',
             'Pekerjaan Wali' =>'string',
             'Penghasilan Wali' =>'string',
             'Kode Prodi' => 'string',
             'Jenis Pembiayaan' => 'string',
             'Biaya Masuk Kuliah' => 'string',
             'Asal Perguruan Tinggi' => 'string',
             'Asal Program Studi' => 'string'
);
   

$no=1;
$index = 2;

$data_rec = array();

        $key = json_decode(file_get_contents('sample.json'));

                        $data_rec[] = array(
                          $key->nipd,
                          $key->nm_pd,
                          $key->tmpt_lahir,
                          $key->tgl_lahir,
                          $key->jk,
                          $key->nik,
                          $key->id_agama,
                          $key->nisn,
                          $key->id_jalur_masuk,
                          $key->npwp,
                          $key->kewarganegaraan,
                          $key->id_jns_daftar,
                          $key->tgl_masuk_sp,
                          $key->mulai_smt,
                          $key->jln,
                          $key->rt,
                          $key->rw,
                          $key->nm_dsn,
                          $key->ds_kel,
                          $key->id_wil,
                          $key->kode_pos,
                          $key->id_jns_tinggal,
                          $key->id_alat_transport,
                          $key->no_tel_rmh,
                          $key->no_hp,
                          $key->email,
                          $key->a_terima_kps,
                         $key->no_kps,
                          $key->nik_ayah,
                          $key->nm_ayah,
                          $key->tgl_lahir_ayah,
                          $key->id_jenjang_pendidikan_ayah,
                          $key->id_pekerjaan_ayah,
                          $key->id_penghasilan_ayah,
                          $key->nik_ibu,
                          $key->nm_ibu_kandung,
                          $key->tgl_lahir_ibu,
                          $key->id_jenjang_pendidikan_ibu,
                          $key->id_pekerjaan_ibu,
                          $key->id_penghasilan_ibu,
                          $key->nm_wali,
                          $key->tgl_lahir_wali,
                          $key->id_jenjang_pendidikan_wali,

                          $key->id_pekerjaan_wali,
                          $key->id_penghasilan_wali,
                          $key->kode_jurusan,
                          $key->id_pembiayaan,
                          $key->biaya_masuk_kuliah,
                          $key->kode_pt_asal,
                          $key->kode_prodi_asal
                        );

        $filename = 'sample_template_mahasiswa.xlsx';
        header('Content-disposition: attachment; filename="'.XLSXWriter::sanitize_filename($filename).'"');
        header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
        header('Content-Transfer-Encoding: binary');
        header('Cache-Control: must-revalidate');
        header('Pragma: public');



//jalur pendaftaran
$data_jalur = $db->fetch_custom("select * from jalur_masuk");
foreach ($data_jalur as $jalur) {
  $jalur_masuk[] = $jalur->id." : ".$jalur->jalur;
}
//jenis pendaftaran
$data_jenisdaftar = $db->fetch_custom("select * from jenis_pendaftaran");
foreach ($data_jenisdaftar as $jenis) {
  $jenis_pendaftaran[] = $jenis->id_jns_daftar." : ".$jenis->nm_jns_daftar;
}
//jenis pendaftaran
$data_tinggal = $db->fetch_custom("select * from jenis_tinggal");
foreach ($data_tinggal as $tinggal) {
  $jenis_tinggal[] = $tinggal->id_jns_tinggal." : ".$tinggal->nm_jns_tinggal;
}
//jenis data_transportasi
$data_transportasi = $db->fetch_custom("select * from data_transportasi");
foreach ($data_transportasi as $trf) {
  $alat_transportasi[] = $trf->id_alat_transport." : ".$trf->nm_alat_transport;
}
//jenjang pendidikan
$data_jenjang_pendidikan = $db->fetch_custom("select * from jenjang_pendidikan");
foreach ($data_jenjang_pendidikan as $jenjang) {
  $jenjang_pendidikan[] = $jenjang->id_jenj_didik." : ".$jenjang->nm_jenj_didik;
}
//pekerjaan
$data_pekerjaan = $db->fetch_custom("select * from pekerjaan");
foreach ($data_pekerjaan as $kerjaan) {
  $pekerjaan[] = $kerjaan->id_pekerjaan." : ".$kerjaan->nm_pekerjaan;
}

//pekerjaan
$data_penghasilan = $db->fetch_custom("select * from penghasilan");
foreach ($data_penghasilan as $hasil) {
  $penghasilan[] = $hasil->id_penghasilan." : ".$hasil->nm_penghasilan;
}

$comments = array(
'A1' => 'NIM / NIPD Mahasiswa

info : wajib disi',
'B1' => 'Nama Mahasiswa

Info : Wajib Diisi',
'C1' => 'Tempat Lahir

Info : Wajib Diisi',
'D1' => 'Tanggal Lahir Mahasiswa

Info : Wajib Diisi',
'E1' => 'L : Laki-laki, 
P : Perempuan,

Info : Wajib Diisi',
'F1' => 'NIK Mahasiswa harus 16 Digit

Info : Wajib Diisi',
'G1' => 'Id Agama
1 : Islam
2 : Kristen
3 : Katholik
4 : Hindu
5 : Budha
6 : Konghuchu
99 : lainya

Info : Wajib Diisi',
'H1' => 'NISN WAJIB 10 DIGIT
Info : WAJIB ISI',
'I1' => 'Isi sesuai id dibawah
'.implode("\n", $jalur_masuk).'

Info : Wajib Diisi
',
'J1' => 'Nomor pokok wajib pajak

Info : Boleh kosong',
'K1' => 'Lihat pada menu master ->  data Negara, untuk lengkapnya

ID : Indonesia

Info : Wajib Diisi',
'L1' => 'Isi sesuai id dibawah
'.implode("\n", $jenis_pendaftaran).'
Info : Wajib Diisi',
'M1' => '
Info : Wajib Diisi',
'N1' => 'Peride Masuk Kuliah/Angkatan
tahun+semester
1 : ganjil, 2 genap, 
20221 berarti angakatan 2022 ganjil
Info : Wajib Diisi',
'O1' => 'Boleh Kosong Kalau Belum Ada',
'P1' => 'Boleh Kosong Kalau Belum Ada',
'Q1' => 'Boleh Kosong Kalau Belum Ada',
'R1' => 'Boleh Kosong Kalau Belum Ada',
'S1' => 'isi dengan - aja kalau belum ada

Info : Wajib Diisi',
'T1' => 'Lihat data kecamatan di aplikasi, masuk ke master data -> data wilayah 
masukan id Kecamatan nya disini 
Info : Wajib Diisi, 
jika tidak ada isi dengan 999999',
'U1' => 'Boleh Kosong Kalau Belum Ada',
'V1' => 'Isi sesuai id dibawah
'.implode("\n", $jenis_tinggal).'

Boleh Kosong Kalau Belum Ada',
'W1' => 'Isi sesuai id dibawah
'.implode("\n", $alat_transportasi).'

Boleh Kosong Kalau Belum Ada',
'X1' => 'Boleh Kosong Kalau Belum Ada',
'Y1' => 'Wajib Diisi',
'Z1' => 'Wajib Diisi',
'AA1' => 'Kartu Perlindungan Sosial

1 : Ya
0 : tidak

Info : Wajib Diisi',
'AB1' => 'Boleh Kosong Kalau tidak Ada',
'AC1' => 'No KTP Ayah

Boleh Kosong Kalau Belum Ada',
'AD1' => 'Boleh Kosong Kalau Belum Ada',
'AE1' => 'Boleh Kosong Kalau Belum Ada',
'AF1' => 'Isi sesuai id dibawah
'.implode("\n", $jenjang_pendidikan).'

Boleh Kosong Kalau Belum Ada',
'AG1' => 'Isi sesuai id dibawah
'.implode("\n", $pekerjaan).'

Boleh Kosong Kalau Belum Ada',
'AH1' => 'Isi sesuai id dibawah
'.implode("\n", $penghasilan).'

Boleh Kosong Kalau Belum Ada',
'AI1' => 'No KTP Ibu

Info : Wajib Diisi',
'AJ1' => 'Nama Ibu

Info : Wajib Diisi',
'AK1' => 'Boleh Kosong Kalau Belum Ada',
'AL1' => 'Isi sesuai id dibawah
'.implode("\n", $jenjang_pendidikan).'

Boleh Kosong Kalau Belum Ada',
'AM1' => 'Isi sesuai id dibawah
'.implode("\n", $pekerjaan).'

Boleh Kosong Kalau Belum Ada',
'AN1' => 'Isi sesuai id dibawah
'.implode("\n", $penghasilan).'

Boleh Kosong Kalau Belum Ada',
'AO1' => 'Boleh Kosong Kalau Belum Ada',
'AP1' => 'format tahun-bulan-tanggal
contoh : 1987-07-02
Boleh Kosong Kalau tidak Ada',
'AQ1' => 'Isi sesuai id dibawah
'.implode("\n", $jenjang_pendidikan).'

Boleh Kosong Kalau tidak Ada',
'AR1' => 'Isi sesuai id dibawah
'.implode("\n", $pekerjaan).'

Boleh Kosong Kalau tidak Ada',
'AS1' => 'Isi sesuai id dibawah
'.implode("\n", $penghasilan).'

Boleh Kosong Kalau tidak Ada',
'AT1' => 'Lihat di menu master data -> jurusan

Info : Wajib Diisi',
'AU1' => 'Ket : Jenis Pembiayaan
id ket 
1  Mandiri
2  Beasiswa Tidak Penuh
3  Beasiswa Penuh

Info :Wajib diisi',
'AV1' => 'Ket : Jumlah Biaya Masuk Mahasiswa, isi tanpa koma atau titik.
contoh : 5000000
Info : Wajib Diisi',
'AW1' => 'Jika Jenis Pendaftaran BUKAN Peserta Didik Baru
Maka Kode Asal Perguruan Tinggi  Wajib diisi',
'AX1' => 'Jika Jenis Pendaftaran BUKAN Peserta Didik Baru
Maka Kode Asal Program Studi  Wajib diisi',
);
$writer->setComment($comments);
        $writer->writeSheet($data_rec,'Sample Template', $header, $style);
        $writer->writeToStdOut();
        exit(0);
      break;
    case 'delete_all':
    $status = $_POST['status'];
    if ($status=='all') {
        $status = '';
    } elseif ($status=='0') {
        $status = "and status_error ='0'";
    } elseif ($status=='1') {
        $status = "and status_error ='1'";
    } elseif ($status=='2') {
        $status = "and status_error ='2'";
    }

    
    if ($_POST['jurusan']=='all') {
        $jurusan = "";
    } else {
        $jurusan = "and kode_jurusan='".$_POST['jurusan']."'";
    }
        if ($_POST['sem']=='all') {
        $semester = "";
    } else {
        $semester = "and mulai_smt='".$_POST['sem']."'";
    }

    if ($semester=="" && $jurusan=="" && $status=="") {
        if ($_SESSION['level']==1) {
         $data_mhs_pt = $db->fetch_custom("TRUNCATE `mhs`");
       } else {
        if ($_SESSION['jurusan']=='0') {
            $data_mhs_pt = $db->fetch_custom("TRUNCATE `mhs`");
        } else {
            $db->fetch_custom("delete from mhs where kode_jurusan='".$_SESSION['jurusan']."'");
        }
          
       }
    } else {
      $ids = $db->fetch_custom("select id from mhs where id!='' $semester $jurusan $status");
      foreach ($ids as $id) {
        $id_delete[] = $id->id;
      }
        $data_id = implode(",", $id_delete);
       $data_mhs_pt = $db->fetch_custom("delete from mhs where id!='' $semester $jurusan $status and id in ($data_id)");

    }

    break;

  case 'import':
  //$time1 = microtime(true);
     if (!is_dir("../../../upload/mahasiswa")) {
              mkdir("../../../upload/mahasiswa");
            }


   if (!preg_match("/.(xls|xlsx)$/i", $_FILES["semester"]["name"]) ) {

              echo "pastikan file yang anda pilih xls|xlsx";
              exit();

            } else {
              move_uploaded_file($_FILES["semester"]["tmp_name"], "../../../upload/mahasiswa/".$_FILES['semester']['name']);
              $semester = array("semester"=>$_FILES["semester"]["name"]);

            }


$error_count = 0;
$error = array();
$sukses = 0;
$values = "";


  $Reader = new SimpleXLSX("../../../upload/mahasiswa/".$_FILES['semester']['name']);
  foreach( $Reader->rows() as $key => $val ) {
      if ($key>0) {
        if ($val[0]!="") {
         $check = $db->check_exist('mhs',array('nipd' => $db->trimmer($val[0])));
                if ($check==true) {
                  $error_count++;
                  $error[] = $val[0]." ".$val[1]." Sudah Ada";
                } else {
                  $password = substr(hash('sha512',rand()),0,5); // Reduces the size to 12 chars
                  $sukses++;
                  $array_insert[] = array(
                  'nipd' => $db->trimmer($val[0]),
                  'nm_pd' => $db->trimmer($val[1]),
                  'tmpt_lahir' => $db->trimmer($val[2]),
                  'tgl_lahir' => $db->trimmer($val[3]),
                  'jk' => $db->trimmer($val[4]),
                  'nik' => $db->trimmer($val[5]),
                  'id_agama' => $db->trimmer($val[6]),
                  'nisn' => $db->trimmer($val[7]),
                  'id_jalur_masuk' => $db->trimmer($val[8]),
                  'npwp' => $db->trimmer($val[9]),
                  'kewarganegaraan' => $db->trimmer($val[10]),
                  'id_jns_daftar' => $db->trimmer($val[11]),
                  'tgl_masuk_sp' => $db->trimmer($val[12]),
                  'mulai_smt' => $db->trimmer($val[13]),
                  'jln' => $db->trimmer($val[14]),
                  'rt' => $db->trimmer($val[15]),
                  'rw' => $db->trimmer($val[16]),
                  'nm_dsn' => $db->trimmer($val[17]),
                  'ds_kel' => $db->trimmer($val[18]),
                  'id_wil' => $db->trimmer($val[19]),
                  'kode_pos' => $db->trimmer($val[20]),
                  'id_jns_tinggal' => $db->trimmer($val[21]),
                  'id_alat_transport' => $db->trimmer($val[22]),
                  'no_tel_rmh' => $db->trimmer($val[23]),
                  'no_hp' => $db->trimmer($val[24]),
                  'email' => $db->trimmer($val[25]),
                  'a_terima_kps' => $db->trimmer($val[26]),
                  'no_kps' => $db->trimmer($val[27]),
                  'nik_ayah' => $db->trimmer($val[28]),
                  'nm_ayah' => $db->trimmer($val[29]),
                  'tgl_lahir_ayah' => $db->trimmer($val[30]),
                  'id_jenjang_pendidikan_ayah' => $db->trimmer($val[31]),
                  'id_pekerjaan_ayah' => $db->trimmer($val[32]),
                  'id_penghasilan_ayah' => $db->trimmer($val[33]),
                  'nik_ibu' => $db->trimmer($val[34]),
                  'nm_ibu_kandung' => $db->trimmer($val[35]),
                  'tgl_lahir_ibu' => $db->trimmer($val[36]),
                  'id_jenjang_pendidikan_ibu' => $db->trimmer($val[37]),
                  'id_pekerjaan_ibu' => $db->trimmer($val[38]),
                  'id_penghasilan_ibu' => $db->trimmer($val[39]),
                  'nm_wali' => $db->trimmer($val[40]),
                  'tgl_lahir_wali' => $db->trimmer($val[41]),
                  'id_jenjang_pendidikan_wali' => $db->trimmer($val[42]),
                  'id_pekerjaan_wali' => $db->trimmer($val[43]),
                  'id_penghasilan_wali' => $db->trimmer($val[44]),
                  'kode_jurusan' => $db->trimmer($val[45]),
                  'id_pembiayaan' => isset($val[46]) ? $db->trimmer($val[46]) : '',
                  'biaya_masuk_kuliah' => isset($val[47]) ? $db->trimmer($val[47]) : '',
                  'kode_pt_asal' => isset($val[48]) ? $db->trimmer($val[48]) : '',
                  'kode_prodi_asal' => isset($val[49]) ? $db->trimmer($val[49]) : '',
                  'password' => $password,
                  'id_kk' => 0
                  );
              }
      }

    }

  }


if (!empty($array_insert)) {
  $db->insertMulti('mhs',$array_insert);
  echo $db->getErrorMessage();
}


unlink("../../../upload/mahasiswa/".$_FILES['semester']['name']);
//$time2 = microtime(true);
$time_end = microtime(true);
$execution_time = ($time_end - $time_start);
          $msg = '';
      if (($sukses>0) || ($error_count>0)) {
        $msg =  "<div class=\"alert alert-warning alert-dismissible\" role=\"alert\" >
        <button type=\"button\" class=\"close\" data-dismiss=\"alert\" aria-hidden=\"true\">×</button>
            <font color=\"#3c763d\">".$sukses." data Mahasiswa baru berhasil di import</font><br />
            <font color=\"#ce4844\" >".$error_count." data tidak bisa ditambahkan </font>";
            if (!$error_count==0) {
              $msg .= "<a data-toggle=\"collapse\" href=\"#collapseExample\" aria-expanded=\"false\" aria-controls=\"collapseExample\">Detail error</a>";
            }
            //echo "<br />Total: ".$i." baris data";
            $msg .= "<div class=\"collapse\" id=\"collapseExample\">";
                $i=1;
                foreach ($error as $pesan) {
                    $msg .= "<div class=\"bs-callout bs-callout-danger\">".$i.". ".$pesan."</div><br />";
                  $i++;
                  }
            $msg .= "</div>
          </div>";
           $msg .= "<p>Total Waktu Import : ". waktu_import($execution_time);
      }
     echo $msg;
          break;

  case "in":

  $check = $db->check_exist('mhs',array('nipd' => $_POST["nipd"]));
                if ($check==true) {
                  echo "Error NIM ".$_POST["nipd"]." Sudah Ada";
                  exit();
                } 

  $data_mhs = array(
    "nm_pd"=>$_POST["nm_pd"],
    "jk"=>$_POST["jk"],
    "nik"=>$_POST["nik"],
    "nisn" => $_POST['nisn'],
    "npwp" => $_POST['npwp'],
    "tmpt_lahir"=>$_POST["tmpt_lahir"],
    "tgl_lahir"=>$_POST["tgl_lahir"],
    "id_agama"=>$_POST["id_agama"],
    "jln"=>$_POST["jln"],
    "rt"=>$_POST["rt"],
    "rw"=>$_POST["rw"],
    "nm_dsn"=>$_POST["nm_dsn"],
    "kewarganegaraan"=>$_POST["kewarganegaraan"],
    "ds_kel"=>$_POST["ds_kel"],
    "kode_pos"=>$_POST["kode_pos"],
    "id_alat_transport"=>$_POST["id_alat_transport"],
    "id_jns_tinggal"=>$_POST["id_jns_tinggal"],
    "no_tel_rmh"=>$_POST["no_tel_rmh"],
    "no_hp"=>$_POST["no_hp"],
    "email"=>$_POST["email"],
    "a_terima_kps"=>$_POST["a_terima_kps"],
    "no_kps"=>$_POST["no_kps"],
    "nik_ayah" => $_POST["nik_ayah"],
    "nm_ayah"=>$_POST["nm_ayah"],
    "tgl_lahir_ayah"=>$_POST["tgl_lahir_ayah"],
    "id_jenjang_pendidikan_ayah"=>$_POST["id_jenjang_pendidikan_ayah"],
    "id_pekerjaan_ayah"=>$_POST["id_pekerjaan_ayah"],
    "id_penghasilan_ayah"=>$_POST["id_penghasilan_ayah"],
    "nik_ibu" => $_POST["nik_ibu"],
    "nm_ibu_kandung"=>$_POST["nm_ibu_kandung"],
    "tgl_lahir_ibu"=>$_POST["tgl_lahir_ibu"],
    "id_jenjang_pendidikan_ibu"=>$_POST["id_jenjang_pendidikan_ibu"],
    "id_penghasilan_ibu"=>$_POST["id_penghasilan_ibu"],
    "id_pekerjaan_ibu"=>$_POST["id_pekerjaan_ibu"],
    "nm_wali"=>$_POST["nm_wali"],
    "tgl_lahir_wali"=>$_POST["tgl_lahir_wali"],
    "id_jenjang_pendidikan_wali"=>$_POST["id_jenjang_pendidikan_wali"],
    "id_pekerjaan_wali"=>$_POST["id_pekerjaan_wali"],
    "id_penghasilan_wali"=>$_POST["id_penghasilan_wali"],
    "id_wil" => $_POST['id_wil'],
    "kode_jurusan"=>$_POST["kode_jurusan"],
    "id_jns_daftar"=>$_POST["id_jns_daftar"],
    "nipd"=>$_POST["nipd"],
    "tgl_masuk_sp"=>$_POST["tgl_masuk_sp"],
    "mulai_smt"=>$_POST["mulai_smt"],
    "id_pembiayaan"=>$_POST["id_pembiayaan"],
    "biaya_masuk_kuliah"=>$_POST["biaya_masuk_kuliah"],
    "id_jalur_masuk"=>$_POST["id_jalur_masuk"]
    );
 
    $in_mhs_pt = $db->insert("mhs",$data_mhs);
    
    if ($in=true) {
      echo "good";
    } else {
      return false;
    }
    break;
  case "delete":
    
    $db->delete("mhs","id",$_GET['id']);
    break;
  case "up":
$data_mhs = array(
    "nm_pd"=>$_POST["nm_pd"],
    "jk"=>$_POST["jk"],
    "nik"=>$_POST["nik"],
    "nisn" => $_POST['nisn'],
    "npwp" => $_POST['npwp'],
    "tmpt_lahir"=>$_POST["tmpt_lahir"],
    "tgl_lahir"=>$_POST["tgl_lahir"],
    "id_agama"=>$_POST["id_agama"],
    "jln"=>$_POST["jln"],
    "rt"=>$_POST["rt"],
    "rw"=>$_POST["rw"],
    "nm_dsn"=>$_POST["nm_dsn"],
    "kewarganegaraan"=>$_POST["kewarganegaraan"],
    "ds_kel"=>$_POST["ds_kel"],
    "kode_pos"=>$_POST["kode_pos"],
    "id_alat_transport"=>$_POST["id_alat_transport"],
    "id_jns_tinggal"=>$_POST["id_jns_tinggal"],
    "no_tel_rmh"=>$_POST["no_tel_rmh"],
    "no_hp"=>$_POST["no_hp"],
    "email"=>$_POST["email"],
    "a_terima_kps"=>$_POST["a_terima_kps"],
    "no_kps"=>$_POST["no_kps"],
    "nik_ayah" => $_POST["nik_ayah"],
    "nm_ayah"=>$_POST["nm_ayah"],
    "tgl_lahir_ayah"=>$_POST["tgl_lahir_ayah"],
    "id_jenjang_pendidikan_ayah"=>$_POST["id_jenjang_pendidikan_ayah"],
    "id_pekerjaan_ayah"=>$_POST["id_pekerjaan_ayah"],
    "id_penghasilan_ayah"=>$_POST["id_penghasilan_ayah"],
    "nik_ibu" => $_POST["nik_ibu"],
    "nm_ibu_kandung"=>$_POST["nm_ibu_kandung"],
    "tgl_lahir_ibu"=>$_POST["tgl_lahir_ibu"],
    "id_jenjang_pendidikan_ibu"=>$_POST["id_jenjang_pendidikan_ibu"],
    "id_penghasilan_ibu"=>$_POST["id_penghasilan_ibu"],
    "id_pekerjaan_ibu"=>$_POST["id_pekerjaan_ibu"],
    "nm_wali"=>$_POST["nm_wali"],
    "tgl_lahir_wali"=>$_POST["tgl_lahir_wali"],
    "id_jenjang_pendidikan_wali"=>$_POST["id_jenjang_pendidikan_wali"],
    "id_pekerjaan_wali"=>$_POST["id_pekerjaan_wali"],
    "id_penghasilan_wali"=>$_POST["id_penghasilan_wali"],
    "id_wil" => $_POST['id_wil'],
    "kode_jurusan"=>$_POST["kode_jurusan"],
    "id_jns_daftar"=>$_POST["id_jns_daftar"],
    "nipd"=>$_POST["nipd"],
    "tgl_masuk_sp"=>$_POST["tgl_masuk_sp"],
    "mulai_smt"=>$_POST["mulai_smt"],
    "id_pembiayaan"=>$_POST["id_pembiayaan"],
    "biaya_masuk_kuliah"=>$_POST["biaya_masuk_kuliah"],
    "id_jalur_masuk"=>$_POST["id_jalur_masuk"]
    );
if ($_POST['id_jns_daftar']!=1) {
    //$data_mhs["sks_diakui"] = $_POST["sks_diakui"];
    if (isset($_POST['kode_pt_asal'])) {
      $data_mhs["kode_pt_asal"] = $_POST["kode_pt_asal"];
    } else {
    //$data_mhs["sks_diakui"] = '';
    $data_mhs["kode_pt_asal"] = '';
    }
    $data_mhs["kode_prodi_asal"]= $_POST["kode_prodi_asal"];
} else {
    $data_mhs["kode_pt_asal"] = '';
    $data_mhs["kode_prodi_asal"]= '';
}
     $up_pt = $db->update("mhs",$data_mhs,"id",$_POST["id"]);
    if ($up=true) {
      echo "good";
    } else {
      return false; 
    }
    break;
       case 'del_massal':
    $data_ids = $_REQUEST['data_ids'];
    //$data_id_array = explode(",", $data_ids);
    if(trim($data_ids)!="") {
        $delete =  $db->fetch_custom("delete from mhs where id in ($data_ids)");
    }
    break;

  default:
    # code...
    break;
}

?>