Esempio n. 1
0
     $formstatus = FALSE;
     F_stripslashes_formfields();
 }
 // check if ssn is unique
 if (isset($user_ssn) and strlen($user_ssn) > 0 and !F_check_unique(K_TABLE_USERS, 'user_ssn=\'' . F_escape_sql($db, $user_ssn) . '\'')) {
     F_print_error('WARNING', $l['m_duplicate_ssn']);
     $formstatus = FALSE;
     F_stripslashes_formfields();
 }
 // check password
 if (!empty($newpassword) or !empty($newpassword_repeat)) {
     // update password
     if ($newpassword == $newpassword_repeat) {
         $user_password = getPasswordHash($newpassword);
         // update OTP key
         $user_otpkey = F_getRandomOTPkey();
     } else {
         //print message and exit
         F_print_error('WARNING', $l['m_different_passwords']);
         $formstatus = FALSE;
         F_stripslashes_formfields();
     }
 } else {
     //print message and exit
     F_print_error('WARNING', $l['m_empty_password']);
     $formstatus = FALSE;
     F_stripslashes_formfields();
 }
 if ($formstatus) {
     mt_srand((double) microtime() * 1000000);
     $user_verifycode = md5(uniqid(mt_rand(), true));
Esempio n. 2
0
 public function admin($action = false, $psbUserId = false, $psbCodeActivate = false)
 {
     $this->_session = $this->template->set('session', $this->session->userdata('sessionData'));
     $this->_backendmenus = $this->init->getMenusBackend();
     $this->init->checkauth();
     if (!$this->init->restrictip()) {
         redirect(base_url('error/forbidden'));
     }
     switch ($action) {
         case 'json':
             $order_field = array('user_id', 'psb_reg_firstname', 'psb_reg_lastname', 'psb_reg_code');
             //don't edit me, pengaturan json untuk menampilkan data di datatable
             $order_key = !$this->input->get('iSortCol_0') ? 0 : $this->input->get('iSortCol_0');
             $order = !$this->input->get('iSortCol_0') ? $this->default_order : $order_field[$order_key];
             $sort = !$this->input->get('sSortDir_0') ? 'desc' : $this->input->get('sSortDir_0');
             $search = !$this->input->get('sSearch') ? '' : $this->input->get('sSearch');
             $limit = !$this->input->get('iDisplayLength') ? $this->limit : $this->input->get('iDisplayLength');
             $start = !$this->input->get('iDisplayStart') ? 0 : $this->input->get('iDisplayStart');
             $data['no'] = $start + 1;
             $data['sEcho'] = !$this->input->get('callback') ? 0 : $this->input->get('callback');
             $count_tmp = $this->psb_model->count_all(1, $search, $order_field)->result();
             $data['iTotalRecords'] = count($count_tmp);
             //load data supplier dari database
             $data['listPendaftar'] = $this->psb_model->get_paged_list($limit, $start, $order, $sort, $search, $order_field, 1)->result();
             $data['callback'] = $this->input->get('callback');
             $results['sEcho'] = $data['sEcho'];
             // $results['iSortingCols'] = $data['iSortingCols'];
             $results['iTotalRecords'] = $results['iTotalDisplayRecords'] = $data['iTotalRecords'];
             if (count($data['listPendaftar']) > 0) {
                 $i = 0;
                 foreach ($data['listPendaftar'] as $pendaftar) {
                     $nomor = '<div style="text-align:center;">' . $data['no'] . '</a>';
                     // $d 				= new DateTime($agenda->agenda_datetime);
                     // $timestamp 		= $d->getTimestamp(); // Unix timestamp
                     // $agendaDate 	= $d->format('Y-m-d'); // 2003-10-16
                     // $tgl 			= ($agenda->agenda_datetime!='0000-00-00 00:00:00' && $agenda->agenda_datetime!='')?tgl_indo(date('Y-m-d', strtotime($agenda->agenda_datetime))).' '.date('h:i A', strtotime($agenda->agenda_datetime)):'<div style="text-align:center;">-</div>';
                     // $status 		= (date('Y-m-d') > $agendaDate)?'<center><span class="label label-warning">Tidak Aktif</span></center>':'<center><span class="label label-success">Aktif</span></center>';
                     $tanggal = "";
                     $status = "";
                     $action = "";
                     if ($pendaftar->psb_reg_status == '0' && $pendaftar->pendaftar_status == '0' && $pendaftar->user_status == '') {
                         $tanggal = $pendaftar->psb_reg_date_create != '0000-00-00 00:00:00' && $pendaftar->psb_reg_date_create != '' ? tgl_indo(date('Y-m-d', strtotime($pendaftar->psb_reg_date_create))) . ' ' . date('h:i A', strtotime($pendaftar->psb_reg_date_create)) : '-';
                         $status = "Baru Daftar";
                         $action = '<div style="text-align:center;">';
                         //Hitung Jumlah hari
                         $hari1 = $pendaftar->psb_reg_date_create;
                         $hari2 = date('Y-m-d H:i:s');
                         $jmlHari = hitung_hari($hari1, $hari2);
                         if ($jmlHari > 14) {
                             $action .= '<a href="' . base_url('psb/admin/update/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-success"><i class="fa fa-edit"></i></a>';
                             $action .= "&nbsp;&nbsp;";
                         }
                         $action .= '<a href="' . base_url('psb/admin/read/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-info" title="Detil Data PPDB"><i class="fa fa-search-plus"></i></a>';
                         $action .= "</div>";
                     } elseif ($pendaftar->user_status == '0' && $pendaftar->psb_reg_status == '1' && $pendaftar->pendaftar_status == '0') {
                         $tglupdate = explode('|', $pendaftar->psb_reg_date_update);
                         $tanggal = $pendaftar->psb_reg_date_update != '' ? tgl_indo(date('Y-m-d', strtotime($tglupdate[0]))) . ' ' . date('h:i A', strtotime($tglupdate[0])) : '<div style="text-align:center;">-</div>';
                         $status = "Sudah Aktivasi (Transfer)";
                         $action = '<div style="text-align:center;">';
                         $action .= '<a href="' . base_url('psb/admin/update/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-success"><i class="fa fa-edit"></i></a>';
                         $action .= "&nbsp;&nbsp;";
                         $action .= '<a href="' . base_url('psb/admin/read/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-info" title="Detil Data PPDB"><i class="fa fa-search-plus"></i></a>';
                         $action .= "</div>";
                     } elseif ($pendaftar->user_status == '0' && $pendaftar->psb_reg_status == '2' && $pendaftar->pendaftar_status == '1') {
                         $tglupdate = explode('|', $pendaftar->psb_reg_date_update);
                         $tanggal = $pendaftar->psb_reg_date_update != '' ? tgl_indo(date('Y-m-d', strtotime($tglupdate[1]))) . ' ' . date('h:i A', strtotime($tglupdate[1])) : '<div style="text-align:center;">-</div>';
                         $status = "Pembayaran verified";
                         $action = '<div style="text-align:center;">';
                         $action .= '<a href="' . base_url('psb/admin/update/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-success"><i class="fa fa-edit"></i></a>';
                         $action .= "&nbsp;&nbsp;";
                         $action .= '<a href="' . base_url('psb/admin/read/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-info" title="Detil Data PPDB"><i class="fa fa-search-plus"></i></a>';
                         $action .= "</div>";
                     } elseif ($pendaftar->user_status == '0' && $pendaftar->psb_reg_status == '2' && $pendaftar->pendaftar_status == '2') {
                         $tglupdate = explode('|', $pendaftar->pendaftar_update);
                         $tanggal = $pendaftar->pendaftar_update != '' ? tgl_indo(date('Y-m-d', strtotime($tglupdate[1]))) . ' ' . date('h:i A', strtotime($tglupdate[1])) : '<div style="text-align:center;">-</div>';
                         $status = "Data Pendaftar Ok";
                         $action = '<div style="text-align:center;">';
                         $action .= '<a href="' . base_url('psb/admin/update/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-success"><i class="fa fa-edit"></i></a>';
                         $action .= "&nbsp;&nbsp;";
                         $action .= '<a href="' . base_url('psb/admin/read/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-info" title="Detil Data PPDB"><i class="fa fa-search-plus"></i></a>';
                         $action .= "</div>";
                     } elseif ($pendaftar->user_status == '0' && $pendaftar->psb_reg_status == '2' && $pendaftar->pendaftar_status == '3') {
                         $tglupdate = explode('|', $pendaftar->pendaftar_update);
                         $tanggal = $pendaftar->pendaftar_update != '' ? tgl_indo(date('Y-m-d', strtotime($tglupdate[2]))) . ' ' . date('h:i A', strtotime($tglupdate[2])) : '<div style="text-align:center;">-</div>';
                         $status = "Telah Mengikuti Test";
                         $action = '<div style="text-align:center;">';
                         $action .= '<a href="' . base_url('psb/admin/update/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-success"><i class="fa fa-edit"></i></a>';
                         $action .= "&nbsp;&nbsp;";
                         $action .= '<a href="' . base_url('psb/admin/read/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-info" title="Detil Data PPDB"><i class="fa fa-search-plus"></i></a>';
                         $action .= "</div>";
                     } elseif ($pendaftar->user_status == '1' && $pendaftar->psb_reg_status == '2' && $pendaftar->pendaftar_status == '4') {
                         $tglupdate = explode('|', $pendaftar->pendaftar_update);
                         $tanggal = $pendaftar->pendaftar_update != '' ? tgl_indo(date('Y-m-d', strtotime($tglupdate[3]))) . ' ' . date('h:i A', strtotime($tglupdate[3])) : '<div style="text-align:center;">-</div>';
                         $status = "Lulus Test";
                         $action = '<div style="text-align:center;">';
                         $action .= '<a href="' . base_url('psb/admin/update/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-success"><i class="fa fa-edit"></i></a>';
                         $action .= "&nbsp;&nbsp;";
                         $action .= '<a href="' . base_url('psb/admin/read/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-info" title="Detil Data PPDB"><i class="fa fa-search-plus"></i></a>';
                         $action .= "</div>";
                     } elseif ($pendaftar->user_status == '99' && $pendaftar->psb_reg_status == '99' && $pendaftar->pendaftar_status == '99') {
                         $tglupdate = explode('|', $pendaftar->pendaftar_update);
                         $tanggal = $pendaftar->pendaftar_update != '' ? tgl_indo(date('Y-m-d', strtotime($tglupdate[4]))) . ' ' . date('h:i A', strtotime($tglupdate[4])) : '<div style="text-align:center;">-</div>';
                         $status = "Tidak Lulus Test";
                         $action = '<div style="text-align:center;">';
                         // $action    	.= '<a href="'.base_url('psb/admin/update/'.base64_encode($pendaftar->user_id).'/'.base64_encode($pendaftar->user_activation_code)).'" class="btn btn-success"><i class="fa fa-edit"></i></a>';
                         // $action    	.= "&nbsp;&nbsp;";
                         $action .= '<a href="' . base_url('psb/admin/read/' . base64_encode($pendaftar->user_id) . '/' . base64_encode($pendaftar->user_activation_code)) . '" class="btn btn-info" title="Detil Data PPDB"><i class="fa fa-search-plus"></i></a>';
                         $action .= "</div>";
                     }
                     $namaLengkap = $pendaftar->psb_reg_firstname . ' ' . $pendaftar->psb_reg_lastname;
                     $results['aaData'][$i] = array($nomor, $namaLengkap, $tanggal, $status, $action);
                     $data['no']++;
                     ++$i;
                 }
             } else {
                 for ($i = 0; $i < 6; ++$i) {
                     $results['aaData'][0][$i] = '';
                 }
             }
             print $data['callback'] . json_encode($results);
             // $this->template->single('admin/anggota/lists.json', $data);
             break;
         case 'update':
             if ($psbUserId == '' && $psbCodeActivate == '') {
                 redirect(base_url('psb/admin'));
             }
             if ($updatePost = $this->input->post()) {
                 $dataPendaftar = array();
                 $dataRegister = array();
                 $dataUjianOnline = array();
                 $dataUjianOnlineGroup = array();
                 $getAuthLog = $this->psb_model->getUserById(base64_decode($psbUserId))->row_array();
                 $getPendaftarByUserId = $this->psb_model->getRCalonSiswaByUserId(base64_decode($psbUserId))->row_array();
                 $pecahUpdateTgl = explode('|', $getPendaftarByUserId['pendaftar_update']);
                 $getRegistranByUserId = $this->psb_model->getRegisterByUserId(base64_decode($psbUserId))->row_array();
                 $pecahUpdateTglRegister = explode('|', $getRegistranByUserId['psb_reg_date_update']);
                 $noDaftar = $updatePost['pendaftar_dari'] . '-' . $updatePost['no_pendataran_otomatis'];
                 $validate = $updatePost['paymentStatus'];
                 $dataPendaftar = array('pendaftar_tahun_ajar_id' => $updatePost['tahun_ajar'], 'pendaftar_nomor' => $noDaftar, 'pendaftar_keterangan' => '', 'pendaftar_update' => $pecahUpdateTgl[0] . '|' . date('Y-m-d H:i:s'), 'pendaftar_status' => 1);
                 $dataRegister = array('psb_reg_date_update' => $pecahUpdateTglRegister[0] . '|' . date('Y-m-d H:i:s'), 'psb_reg_status' => $validate);
                 mt_srand((double) microtime() * 1000000);
                 $dataUjianOnline = array('user_regdate' => date('Y-m-d H:i:s'), 'user_ip' => $this->input->ip_address(), 'user_name' => $getAuthLog['user_name'], 'user_email' => $getAuthLog['user_email'], 'user_password' => getPasswordHash($getAuthLog['user_password_forget']), 'user_regnumber' => $noDaftar, 'user_firstname' => $getPendaftarByUserId['pendaftar_nama_depan'], 'user_lastname' => $getPendaftarByUserId['pendaftar_nama_belakang'], 'user_birthdate' => '', 'user_birthplace' => '', 'user_ssn' => random_string('numeric', 9), 'user_level' => 1, 'user_verifycode' => md5(uniqid(mt_rand(), true)), 'user_otpkey' => F_getRandomOTPkey());
                 $userIdTest = $this->psb_model->registerOnlineTest($dataUjianOnline);
                 $dataUjianOnlineGroup = array('usrgrp_user_id' => $userIdTest, 'usrgrp_group_id' => 2);
                 $updateAdmin = $this->psb_model->registerOnlineTestGroup($dataUjianOnlineGroup);
                 $updateAdmin .= $this->psb_model->updateCalonsiswa(base64_decode($psbUserId), $dataPendaftar);
                 $updateAdmin .= $this->psb_model->updateRegistran(base64_decode($psbUserId), $dataRegister);
                 // if($updateAdmin){
                 $isi = "Assalamu'alaikum Wr. Wb. <br />Selamat Datang di Pendaftaran Siswa Baru SMAIH BATAM";
                 $isi .= "Berikut Data - Data Verifikasi Pembayaran Anda:<br /><br /> ";
                 $isi .= "Nama                  : <strong>" . $getRegistranByUserId['psb_reg_firstname'] . " " . $getRegistranByUserId['psb_reg_lastname'] . "</strong> <br />";
                 $isi .= "Status Pembayaran     : " . ($validate == 1) ? '<strong>Belum diverifikasi</strong> <br />' : '<strong>Sudah diverifikasi</strong> <br />';
                 $isi .= "Username Online Test  :  <strong>" . $getAuthLog['user_name'] . "</strong> <br />";
                 $isi .= "Password Online Test  :  <strong>" . $getAuthLog['user_password_forget'] . "</strong> <br />";
                 $isi .= "Sebelum mengikuti test online silahkan lengkapi terlebih dahulu data calon siswa dengan mengunjungi <a href='" . base_url('psb/activation/step-2/' . base64_encode($getAuthLog['user_activation_code'])) . "' target='_blank'>Halaman Berikut</a><br /> ";
                 $isi .= "Dan ikuti instruksi yang ada dihalaman tersebut. Demikian informasi yang dapat kami sampaikan.<br />";
                 $isi .= "Wassalamu'alaikum Wr. Wb.<br />";
                 $this->email->from('*****@*****.**');
                 // change it to yours
                 $this->email->to($getAuthLog['user_email']);
                 // change it to yours
                 $this->email->subject('[PPDB-SMAIH-' . date('Y') . '] Verifikasi Pembayaran Pendaftaran Online');
                 $this->email->message($isi);
                 //Jika Sukses
                 if ($this->email->send()) {
                     // $this->email->print_debugger();
                     $this->session->set_flashdata('sukses_update', 'Data pendaftar dan data ujian oline diperbaharui dan disimpan ke database.');
                     redirect(base_url('psb/admin'));
                 } else {
                     //Jika Gagal
                     echo "Maaf ada kesalahan pada saat pemrosesan data. silahkan ulangi lagi klik <a href='javascript: window.history.go(-1)'>disini</a>";
                 }
                 // }
             }
             $this->template->title('Manajemen PPDB', $this->init->getSettingVal('gen_site_name'))->set_breadcrumb('Home', base_url('home/dashboard'))->set_breadcrumb('Verify Data PPDB', '#')->set('pagedesc', 'Manajemen PPDB <small>Pengelolaan Penerimaan Siswa Baru</small>')->set('modul', $this->_backendmenus)->set('kodeAktivasi', base64_decode($psbCodeActivate))->set('userID', base64_decode($psbUserId))->set('listThnAjar', $this->psb_model->getListThnAjar()->result_array())->set('getOneUser', $this->psb_model->getUserById(base64_decode($psbUserId))->row_array())->set('getOneRegister', $this->psb_model->getRegisterByUserId(base64_decode($psbUserId))->row_array())->set('getOneCalonSiswa', $this->psb_model->getRCalonSiswaByUserId(base64_decode($psbUserId))->row_array())->set('content', 'psb/update')->build('template');
             break;
         case 'read':
             if ($psbUserId == '' && $psbCodeActivate == '') {
                 redirect(base_url('psb/admin'));
             }
             $this->template->title('Manajemen PPDB', $this->init->getSettingVal('gen_site_name'))->set_breadcrumb('Home', base_url('home/dashboard'))->set_breadcrumb('Detail Data PPDB', '#')->set('pagedesc', 'Manajemen PPDB <small>Pengelolaan Penerimaan Siswa Baru</small>')->set('modul', $this->_backendmenus)->set('getOneUser', $this->psb_model->getUserById(base64_decode($psbUserId))->row_array())->set('getOneRegister', $this->psb_model->getRegisterByUserId(base64_decode($psbUserId))->row_array())->set('getOneCalonSiswa', $this->psb_model->getRCalonSiswaByUserId(base64_decode($psbUserId))->row_array())->set('content', 'psb/detail')->build('template');
             break;
         default:
             $this->template->title('Manajemen PPDB', $this->init->getSettingVal('gen_site_name'))->set_breadcrumb('Home', base_url('home/dashboard'))->set_breadcrumb('Daftar Pendaftar PPDB', '#')->set('pagedesc', 'Manajemen PPDB <small>Pengelolaan Penerimaan Siswa Baru</small>')->set('modul', $this->_backendmenus)->set('content', 'psb/list')->build('template');
             break;
     }
 }