Add frontend assets and plugin bundles
Add the legacy frontend themes, scripts, and plugin assets required by the main SPOTA interfaces.
This commit is contained in:
68
assets/js/dosen/_dashboard.php
Normal file
68
assets/js/dosen/_dashboard.php
Normal file
@@ -0,0 +1,68 @@
|
||||
<link rel="stylesheet" href="../assets/plugins/fullcalendar/fullcalendar/fullcalendar.css" />
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal-bs3patch.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal.css" rel="stylesheet" type="text/css"/>
|
||||
|
||||
<script src="../assets/plugins/fullcalendar/fullcalendar/fullcalendar.js"></script>
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modal.js"></script>
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modalmanager.js"></script>
|
||||
<script>
|
||||
jQuery(document).ready(function() {
|
||||
Main.init();
|
||||
/*Index.init();*/
|
||||
var date = new Date();
|
||||
var d = date.getDate();
|
||||
var m = date.getMonth();
|
||||
var y = date.getFullYear();
|
||||
$('#calendar').fullCalendar({
|
||||
editable: true,
|
||||
header: {
|
||||
left: 'prev,next today',
|
||||
center: 'title',
|
||||
right: 'month'
|
||||
},
|
||||
events: "page/dashboard/json.kalender.php",
|
||||
// Convert the allDay from string to boolean
|
||||
eventRender: function(event, element, view) {
|
||||
if (event.allDay === 'true') {
|
||||
event.allDay = true;
|
||||
} else {
|
||||
event.allDay = false;
|
||||
}
|
||||
},
|
||||
selectable: true,
|
||||
selectHelper: true,
|
||||
eventClick: function (calEvent, jsEvent, view) {
|
||||
//alert(calEvent.id);
|
||||
$("#JadwalDetail").modal('show');
|
||||
$.ajax({
|
||||
url:'page/dashboard/act.dashboard.php',
|
||||
dataType:'json',
|
||||
type:'post',
|
||||
cache:false,
|
||||
data:'act=detailjadwal&id='+calEvent.id,
|
||||
beforeSend:function(){
|
||||
$("#tbjadwal").hide();
|
||||
},
|
||||
success:function(json){
|
||||
if(json.result){
|
||||
$("#tbjadwal").show();
|
||||
$("#nama").html(json.nama+" ("+json.nim+")");
|
||||
$("#jenis").html(json.jenis);
|
||||
$("#judul").html(json.judul);
|
||||
$("#tgl").html(json.tgl+" "+json.wkt);
|
||||
$("#ruangan").html(json.ruangan);
|
||||
$("#pembimbing1").html(json.pemb1);
|
||||
$("#pembimbing2").html(json.pemb2);
|
||||
$("#penguji1").html(json.peng1);
|
||||
$("#penguji2").html(json.peng2);
|
||||
$("#JadwalDetail").modal('show');
|
||||
}else{
|
||||
alert(json.msg);
|
||||
}
|
||||
}
|
||||
});
|
||||
return false;
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
201
assets/js/dosen/_earlywarning.php
Normal file
201
assets/js/dosen/_earlywarning.php
Normal file
@@ -0,0 +1,201 @@
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="../assets/plugins/select2/select2.css" />
|
||||
<link rel="stylesheet" href="../assets/plugins/DataTables/media/css/DT_bootstrap.css" />
|
||||
<link rel="stylesheet" href="../assets/plugins/ckeditor/contents.css">
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal-bs3patch.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal.css" rel="stylesheet" type="text/css"/>
|
||||
<link rel="stylesheet" href="../assets/plugins/gritter/css/jquery.gritter.css">
|
||||
|
||||
<script type="text/javascript" src="../assets/plugins/select2/select2.min.js"></script>
|
||||
<script type="text/javascript" src="../assets/plugins/DataTables/media/js/jquery.dataTables.min.js"></script>
|
||||
<script type="text/javascript" src="../assets/plugins/DataTables/media/js/DT_bootstrap.js"></script>
|
||||
<script src="../assets/plugins/ckeditor/ckeditor.js"></script>
|
||||
<script src="../assets/plugins/ckeditor/adapters/jquery.js"></script>
|
||||
<script src="../assets/plugins/jquery-validation/dist/jquery.validate.min.js"></script>
|
||||
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modal.js"></script>
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modalmanager.js"></script>
|
||||
<script src="../assets/plugins/gritter/js/jquery.gritter.min.js"></script>
|
||||
|
||||
<script>
|
||||
let listDataMonitoring = [];
|
||||
|
||||
jQuery(document).ready(function() {
|
||||
Main.init();
|
||||
refreshListMonitoring();
|
||||
});
|
||||
|
||||
function refreshListMonitoring(e){
|
||||
if(e != undefined || e != null){
|
||||
e.preventDefault();
|
||||
}
|
||||
const lewat = $('#statusEarlyWarning').val();
|
||||
const bimbingan =$('#bimbinganEarlyWarning').val();
|
||||
const sumber = $('#sumberTanggalEarlyWarning').val();
|
||||
|
||||
listDataMonitoring = [];
|
||||
|
||||
document.getElementById('contentTabel').innerHTML = buatTabelEarlyWarning(`<tr><td colspan="16" style="text-align:center">Mengambil Data . . .</td></tr>`);
|
||||
|
||||
let url = `API/getEarlyWarningMonitoring.php?lewat=${lewat}&bimbingan=${bimbingan}`;
|
||||
|
||||
if(sumber == "0"){
|
||||
url = `API/getEarlyWarningMonitoringByOutline.php?lewat=${lewat}&bimbingan=${bimbingan}`;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: url,
|
||||
type:'GET',
|
||||
dataType:'json',
|
||||
contentType: false,
|
||||
cache: false,
|
||||
processData:false,
|
||||
beforeSend:function(){
|
||||
// $("#loading").show();
|
||||
},
|
||||
success:function(json){
|
||||
const data = json;
|
||||
if(data.length == 0){
|
||||
document.getElementById('contentTabel').innerHTML = buatTabelEarlyWarning(`<tr><td colspan="16" style="text-align:center">Tidak ada data.</td></tr>`);
|
||||
}else{
|
||||
|
||||
let isiTabel = ``;
|
||||
let no = 1;
|
||||
|
||||
for(let i = 0; i < data.length; i++){
|
||||
const d = data[i];
|
||||
listDataMonitoring[d.id] = d;
|
||||
|
||||
let textSeminar = ``;
|
||||
if(d.tanggalSeminar != undefined && d.tanggalSeminar !== null){
|
||||
textSeminar = `<br>Tanggal Seminar Outline : ${d.tanggalSeminar}`;
|
||||
}
|
||||
|
||||
isiTabel += `<tr>
|
||||
<td>${no}</td>
|
||||
<td>${d.nama}<br>(${d.nim})</td>
|
||||
<td><a style="cursor:pointer" onClick="showKonsultasi('${d.id}')">${d.judul}</a> <br>Diterima : ${d.tglKeputusan} ${textSeminar}</td>
|
||||
${getKolomTabel(d.bulanBerjalan)}
|
||||
<td>${d.waktuBerjalan}</td>
|
||||
</tr>`;
|
||||
no++;
|
||||
}
|
||||
|
||||
document.getElementById('contentTabel').innerHTML = buatTabelEarlyWarning(isiTabel);
|
||||
$('#tabelData').DataTable({
|
||||
"iDisplayLength": -1,
|
||||
"aLengthMenu": [
|
||||
[10, 15, 20, 50, 100, -1],
|
||||
[10, 15, 20, 50, 100, "All"] // change per page values here
|
||||
],
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function buatTabelEarlyWarning(isiTabel){
|
||||
return ` <table class="table table-striped table-bordered table-hover table-full-width dataTable" id="tabelData">
|
||||
<thead>
|
||||
<tr>
|
||||
<th rowspan="2">No</th>
|
||||
<th rowspan="2">Nama Mahasiswa</th>
|
||||
<th rowspan="2">Judul</th>
|
||||
<th colspan="12">Bulan</th>
|
||||
<th rowspan="2">Jumlah Hari</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>1</th>
|
||||
<th>2</th>
|
||||
<th>3</th>
|
||||
<th>4</th>
|
||||
<th>5</th>
|
||||
<th>6</th>
|
||||
<th>7</th>
|
||||
<th>8</th>
|
||||
<th>9</th>
|
||||
<th>10</th>
|
||||
<th>11</th>
|
||||
<th>12</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>${isiTabel}</tbody>
|
||||
</table>`;
|
||||
}
|
||||
|
||||
function showKonsultasi(idPraoutline){
|
||||
$('#detailKonsultasiModal').modal('show');
|
||||
|
||||
const dataMonitoring = listDataMonitoring[idPraoutline];
|
||||
|
||||
document.getElementById('detailKonsultasiContent').innerHTML = `<table class="table">
|
||||
<tr><td>Nama</td><td>${dataMonitoring.nama}</td></tr>
|
||||
<tr><td>NIM</td><td>${dataMonitoring.nim}</td></tr>
|
||||
<tr><td>Judul</td><td>${dataMonitoring.judul}</td></tr>
|
||||
<table>`;
|
||||
|
||||
document.getElementById('isiTabelKonsultasi').innerHTML = `<tr><td colspan="4" style="text-align:center">Mengambil data . . .</td></tr>`;
|
||||
$.ajax({
|
||||
url: `https://informatika.untan.ac.id/konsultasi/API/public/getKonsultasiHistory.php?id=${idPraoutline}`,
|
||||
type:'GET',
|
||||
dataType:'json',
|
||||
contentType: false,
|
||||
cache: false,
|
||||
processData:false,
|
||||
beforeSend:function(){
|
||||
// $("#loading").show();
|
||||
},
|
||||
success:function(json){
|
||||
const data = json.data;
|
||||
const status = json.status;
|
||||
|
||||
if(status == 1){
|
||||
if(data.length == 0){
|
||||
document.getElementById('isiTabelKonsultasi').innerHTML = `<tr><td colspan="4" style="text-align:center">Tidak ada data.</td></tr>`;
|
||||
}else{
|
||||
|
||||
let isiTabel = ``;
|
||||
let no = 1;
|
||||
for(let i = 0; i < data.length; i++){
|
||||
const d = data[i];
|
||||
|
||||
isiTabel += `<tr>
|
||||
<td>${no}</td>
|
||||
<td>${d.waktu}</td>
|
||||
<td>${d.topik}</td>
|
||||
<td>${d.pembimbing}</td>
|
||||
</tr>`;
|
||||
no++;
|
||||
}
|
||||
|
||||
document.getElementById('isiTabelKonsultasi').innerHTML = isiTabel;
|
||||
}
|
||||
}else{
|
||||
const pesan = json.msg;
|
||||
document.getElementById('isiTabelKonsultasi').innerHTML = `<tr><td colspan="4" style="text-align:center">${pesan}</td></tr>`;
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function getKolomTabel(bulanBerjalan){
|
||||
switch(bulanBerjalan){
|
||||
case 1 : return `<td style="background-color:#01B0F3"></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 2 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 3 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 4 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 5 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 6 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 7 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 8 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FEFF01"></td><td></td><td></td><td></td><td></td>`;
|
||||
case 9 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FFBF01"></td><td></td><td></td><td></td>`;
|
||||
case 10 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FFBF01"></td><td style="background-color:#FFBF01"></td><td></td><td>`;
|
||||
case 11 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FFBF01"></td><td style="background-color:#FFBF01"></td><td style="background-color:#FE0103"></td><td>`;
|
||||
case 12 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FFBF01"></td><td style="background-color:#FFBF01"></td><td style="background-color:#FE0103"></td><td style="background-color:#FE0103"></td>`;
|
||||
default : return `<td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
}
|
||||
}
|
||||
</script>
|
||||
0
assets/js/dosen/_jadwalseminar.php
Normal file
0
assets/js/dosen/_jadwalseminar.php
Normal file
1342
assets/js/dosen/_penawaran.php
Normal file
1342
assets/js/dosen/_penawaran.php
Normal file
File diff suppressed because it is too large
Load Diff
56
assets/js/dosen/_pengumuman.php
Normal file
56
assets/js/dosen/_pengumuman.php
Normal file
@@ -0,0 +1,56 @@
|
||||
<link rel="stylesheet" type="text/css" href="../assets/plugins/select2/select2.css" />
|
||||
<link rel="stylesheet" href="../assets/plugins/DataTables/media/css/DT_bootstrap.css" />
|
||||
<link rel="stylesheet" href="../assets/plugins/ckeditor/contents.css">
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal-bs3patch.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal.css" rel="stylesheet" type="text/css"/>
|
||||
<link rel="stylesheet" href="../assets/plugins/gritter/css/jquery.gritter.css">
|
||||
|
||||
<script type="text/javascript" src="../assets/plugins/select2/select2.min.js"></script>
|
||||
<script type="text/javascript" src="../assets/plugins/DataTables/media/js/jquery.dataTables.min.js"></script>
|
||||
<script type="text/javascript" src="../assets/plugins/DataTables/media/js/DT_bootstrap.js"></script>
|
||||
<script src="../assets/plugins/ckeditor/ckeditor.js"></script>
|
||||
<script src="../assets/plugins/ckeditor/adapters/jquery.js"></script>
|
||||
<script src="../assets/plugins/jquery-validation/dist/jquery.validate.min.js"></script>
|
||||
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modal.js"></script>
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modalmanager.js"></script>
|
||||
<script src="../assets/plugins/gritter/js/jquery.gritter.min.js"></script>
|
||||
<script>
|
||||
jQuery(document).ready(function() {
|
||||
Main.init();
|
||||
|
||||
$('#list-pengumuman').dataTable({
|
||||
"iDisplayLength": 10,
|
||||
"aLengthMenu": [
|
||||
[10, 15, 20, 50, 100, -1],
|
||||
[10, 15, 20, 50, 100, "All"] // change per page values here
|
||||
],
|
||||
"bProcessing": true,
|
||||
"bServerSide": true,
|
||||
"bSort": false,
|
||||
"sAjaxSource": "page/pengumuman/list.pengumuman.php",
|
||||
"oLanguage": {
|
||||
"sLengthMenu": "Menampilkan _MENU_ Data per halaman",
|
||||
"sZeroRecords": "Maaf, Data tidak ada",
|
||||
"sInfo": "Menampilkan _START_ s/d _END_ dari _TOTAL_ data",
|
||||
"sInfoEmpty": "Menampilakan 0 s/d 0 dari 0 data",
|
||||
"sSearch": "",
|
||||
"sInfoFiltered": "",
|
||||
"oPaginate": {
|
||||
"sPrevious": "",
|
||||
"sNext": ""
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$('#list-pengumuman_wrapper .dataTables_filter input').addClass("form-control input-sm").attr("placeholder", "Search");
|
||||
$('#list-pengumuman_wrapper .dataTables_length select').addClass("m-wrap small");
|
||||
$('#list-pengumuman_wrapper .dataTables_length select').select2();
|
||||
|
||||
});
|
||||
|
||||
function LihatPengumuman(id){
|
||||
location.href="?page=pengumuman&menu=edit-pengumuman&pengumuman="+id;
|
||||
}
|
||||
|
||||
</script>
|
||||
194
assets/js/dosen/_pralirs.php
Normal file
194
assets/js/dosen/_pralirs.php
Normal file
@@ -0,0 +1,194 @@
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="../assets/plugins/select2/select2.css" />
|
||||
<link rel="stylesheet" href="../assets/plugins/DataTables/media/css/DT_bootstrap.css" />
|
||||
<link rel="stylesheet" href="../assets/plugins/ckeditor/contents.css">
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal-bs3patch.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal.css" rel="stylesheet" type="text/css"/>
|
||||
<link rel="stylesheet" href="../assets/plugins/gritter/css/jquery.gritter.css">
|
||||
|
||||
<script type="text/javascript" src="../assets/plugins/select2/select2.min.js"></script>
|
||||
<script type="text/javascript" src="../assets/plugins/DataTables/media/js/jquery.dataTables.min.js"></script>
|
||||
<script type="text/javascript" src="../assets/plugins/DataTables/media/js/DT_bootstrap.js"></script>
|
||||
<script src="../assets/plugins/ckeditor/ckeditor.js"></script>
|
||||
<script src="../assets/plugins/ckeditor/adapters/jquery.js"></script>
|
||||
<script src="../assets/plugins/jquery-validation/dist/jquery.validate.min.js"></script>
|
||||
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modal.js"></script>
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modalmanager.js"></script>
|
||||
<script src="../assets/plugins/gritter/js/jquery.gritter.min.js"></script>
|
||||
|
||||
<script>
|
||||
|
||||
jQuery(document).ready(function() {
|
||||
Main.init();
|
||||
});
|
||||
|
||||
function showDetailPralirsMahasiswa(nim, tahun, semester){
|
||||
$('#detailPralirsModal').modal('show');
|
||||
|
||||
const dataPralirs = listMahasiswaPraLIRS[nim];
|
||||
|
||||
document.getElementById('detailPralirsContent').innerHTML = `<table class="table">
|
||||
<tr><td>Nama</td><td>${dataPralirs.nama}</td></tr>
|
||||
<tr><td>NIM</td><td>${dataPralirs.nim}</td></tr>
|
||||
<tr><td>Angkatan</td><td>${dataPralirs.angkatan}</td></tr>
|
||||
<table>`;
|
||||
|
||||
document.getElementById('isiTabelPralirs').innerHTML = `<tr><td colspan="5" style="text-align:center">Mengambil data . . .</td></tr>`;
|
||||
$.ajax({
|
||||
url: `https://informatika.untan.ac.id/API/public/getPralirsMahasiswa.php?nim=${nim}&tahun=${tahun}&semester=${semester}`,
|
||||
type:'GET',
|
||||
dataType:'json',
|
||||
contentType: false,
|
||||
cache: false,
|
||||
processData:false,
|
||||
beforeSend:function(){
|
||||
// $("#loading").show();
|
||||
},
|
||||
success:function(json){
|
||||
const data = json.data;
|
||||
const status = json.status;
|
||||
const judul = json.judul;
|
||||
|
||||
if(status == 1){
|
||||
if(data.length == 0){
|
||||
document.getElementById('isiTabelPralirs').innerHTML = `<tr><td colspan="5" style="text-align:center">Tidak ada data.</td></tr>`;
|
||||
}else{
|
||||
|
||||
let isiTabel = ``;
|
||||
let no = 1;
|
||||
let totalSKS = 0;
|
||||
|
||||
for(let i = 0; i < data.length; i++){
|
||||
const d = data[i];
|
||||
|
||||
isiTabel += `<tr>
|
||||
<td>${no}</td>
|
||||
<td>${d.kode}</td>
|
||||
<td>${d.nama}</td>
|
||||
<td>${d.sks}</td>
|
||||
<td>${d.smt}</td>
|
||||
</tr>`;
|
||||
|
||||
totalSKS += Number(d.sks);
|
||||
no++;
|
||||
}
|
||||
|
||||
isiTabel += `<tr><td colspan="3">Total SKS</td><td>${totalSKS}</td><td></td></tr>`;
|
||||
|
||||
document.getElementById('isiTabelPralirs').innerHTML = isiTabel;
|
||||
}
|
||||
}else{
|
||||
const pesan = json.msg;
|
||||
document.getElementById('isiTabelPralirs').innerHTML = `<tr><td colspan="5" style="text-align:center">${pesan}</td></tr>`;
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function showDetailMahasiswa(nim){
|
||||
$('#detailMahasiswaModal').modal('show');
|
||||
|
||||
document.getElementById('detailMahasiswaContent').innerHTML = `<div style="text-align:center">Mengambil data . . .</div>`;
|
||||
$.ajax({
|
||||
url: `API/getDetailMahasiswa.php?nim=${nim}`,
|
||||
type:'GET',
|
||||
dataType:'json',
|
||||
contentType: false,
|
||||
cache: false,
|
||||
processData:false,
|
||||
beforeSend:function(){
|
||||
// $("#loading").show();
|
||||
},
|
||||
success:function(json){
|
||||
const status = json.status;
|
||||
const judul = json.judul;
|
||||
|
||||
if(status == 1){
|
||||
const dataMhs = json.data;
|
||||
const data = dataMhs[0];
|
||||
|
||||
|
||||
isiTabel = `
|
||||
<table class="table table-striped table-bordered table-hover table-full-width">
|
||||
<tbody>
|
||||
<tr><td colspan="2" style="text-align:center"><img src="https://informatika.untan.ac.id/API/foto.php?spota&mhs=${nim}" style="width:80px"></td></tr>
|
||||
<tr><td>Nama</td><td>${data.nama_lengkap}</td></tr>
|
||||
<tr><td>NIM</td><td>${data.nim}</td></tr>
|
||||
<tr><td>Tempat/Tanggal Lahir</td><td>${data.tempat_lahir} / ${data.tanggal_lahir}</td></tr>
|
||||
<tr><td>Agama</td><td>${data.agama}</td></tr>
|
||||
<tr><td>Kewarganegaraan</td><td>${data.kewarganegaraan}</td></tr>
|
||||
<tr><td>Golongan Darah</td><td>${data.gol_darah}</td></tr>
|
||||
<tr><td>Anak ke - / Jumlah Saudara</td><td>${data.anak_ke} / ${data.jumlahsaudara}</td></tr>
|
||||
<tr><td>No. Telp / HP</td><td>${data.no_telp} <a href="https://web.whatsapp.com/send?phone=62${parseInt(data.no_hp_telp)}" target="_blank"><button class="btn btn-sm btn-success">WA</button></a> / ${data.no_hp} <a href="https://web.whatsapp.com/send?phone=62${parseInt(data.no_hp)}" target="_blank"><button class="btn btn-sm btn-success">WA</button></a></td></tr>
|
||||
<tr><td>Email</td><td>${data.email}</td></tr>
|
||||
<tr><td>Jenis Kelamin</td><td>${data.jenis_kelamin}</td></tr>
|
||||
<tr><td>Jalur Penerimaan</td><td>${data.jalur_penerimaan}</td></tr>
|
||||
<tr><td>No. Test</td><td>${data.no_test}</td></tr>
|
||||
<tr><td>Menerima Bidik Misi</td><td>${data.terima_bidik_misi}</td></tr>
|
||||
<tr><td>Alamat di Pontianak</td><td>${data.alamat_di_ptk}</td></tr>
|
||||
<tr><td>Asal Sekolah</td><td>${data.nama_sekolah}</td></tr>
|
||||
<tr><td>Jurusan di Sekolah</td><td>${data.jurusan_sekolah}</td></tr>
|
||||
<tr><td>Alamat Sekolah Asal</td><td>${data.alamat_sekolah}</td></tr>
|
||||
<tr><td>Kabupaten Sekolah Asal</td><td>${data.kab_sekolah}</td></tr>
|
||||
<tr><td>Provinsi Sekolah Asal</td><td>${data.prov_sekolah}</td></tr>
|
||||
<tr><td>Bidang Kejuruan</td><td>${data.bidang_kejuruan}</td></tr>
|
||||
<tr><td>Nilai UAN Bahasa Indonesia</td><td>${data.nilai_bi}</td></tr>
|
||||
<tr><td>Nilai UAN Bahasa Inggris</td><td>${data.nilai_bing}</td></tr>
|
||||
<tr><td>Nilai UAN Matematika</td><td>${data.nilai_mtk}</td></tr>
|
||||
<tr><td>Jumlah Mata Pelajaran UAN</td><td>${data.jumlah_mapel}</td></tr>
|
||||
<tr><td>Total Nilai UAN</td><td>${data.total_nilai}</td></tr>
|
||||
<tr><td>Nama Ayah</td><td>${data.nama_ayah}</td></tr>
|
||||
<tr><td>Pekerjaan Ayah</td><td>${data.pekerjaan_ayah}</td></tr>
|
||||
<tr><td>Penghasilan Ayah</td><td>${data.penghasilan_ayah}</td></tr>
|
||||
<tr><td>No. HP Ayah</td><td>${data.no_hp_ayah} <a href="https://web.whatsapp.com/send?phone=62${parseInt(data.no_hp_ayah)}" target="_blank"><button class="btn btn-sm btn-success">WA</button></a></td></tr>
|
||||
<tr><td>Nama Ibu</td><td>${data.nama_ibu}</td></tr>
|
||||
<tr><td>Pekerjaan Ibu</td><td>${data.pekerjaan_ibu}</td></tr>
|
||||
<tr><td>Penghasilan Ibu</td><td>${data.penghasilan_ibu}</td></tr>
|
||||
<tr><td>No. HP Ibu</td><td>${data.no_hp_ibu} <a href="https://web.whatsapp.com/send?phone=62${parseInt(data.no_hp_ibu)}" target="_blank"><button class="btn btn-sm btn-success">WA</button></a></td></tr>
|
||||
<tr><td>No. Telp Rumah Orang Tua</td><td>${data.no_telp_rumah_ortu}</td></tr>
|
||||
<tr><td>Alamat Rumah Orang Tua</td><td>${data.alamat_rumah_ortu}</td></tr>
|
||||
<tr><td>Kabupaten/Kota Rumah Orang Tua</td><td>${data.kab_rumah_ortu}</td></tr>
|
||||
<tr><td>Provinsi</td><td>${data.prov_rumah_ortu}</td></tr>
|
||||
<tr><td>Nama Wali</td><td>${data.nama_wali}</td></tr>
|
||||
<tr><td>Pekerjaan Wali</td><td>${data.pekerjaan_wali}</td></tr>
|
||||
<tr><td>Alamat Rumah dan No Telp Wali</td><td>${data.alamat_rumah_wali}</td></tr>
|
||||
<tr><td>RT/RW Rumah Wali</td><td>${data.rt_rumah_wali} / ${data.rw_rumah_wali}</td></tr>
|
||||
<tr><td>Kelurahan Wali</td><td>${data.kelurahan_rumah_wali}</td></tr>
|
||||
<tr><td>Kecamatan Wali</td><td>${data.kecamatan_rumah_wali}</td></tr>
|
||||
<tr><td>Kabupaten/Kota Wali</td><td>${data.kab_rumah_wali}</td></tr>
|
||||
<tr><td>Provinsi Wali</td><td>${data.prov_rumah_wali}</td></tr>
|
||||
</tbody>
|
||||
</table>`;
|
||||
|
||||
document.getElementById('detailMahasiswaContent').innerHTML = isiTabel;
|
||||
}else{
|
||||
const pesan = json.msg;
|
||||
document.getElementById('detailMahasiswaContent').innerHTML = `<div style="text-align:center">${pesan}</div>`;
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function getKolomTabel(bulanBerjalan){
|
||||
switch(bulanBerjalan){
|
||||
case 1 : return `<td style="background-color:#01B0F3"></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 2 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 3 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 4 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 5 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 6 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 7 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
case 8 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FEFF01"></td><td></td><td></td><td></td><td></td>`;
|
||||
case 9 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FFBF01"></td><td></td><td></td><td></td>`;
|
||||
case 10 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FFBF01"></td><td style="background-color:#FFBF01"></td><td></td><td>`;
|
||||
case 11 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FFBF01"></td><td style="background-color:#FFBF01"></td><td style="background-color:#FE0103"></td><td>`;
|
||||
case 12 : return `<td style="background-color:#01B0F3"></td><td style="background-color:#01B0F3"><td style="background-color:#0071BF"></td><td style="background-color:#0071BF"></td><td style="background-color:#01AF50"></td><td style="background-color:#01AF50"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FEFF01"></td><td style="background-color:#FFBF01"></td><td style="background-color:#FFBF01"></td><td style="background-color:#FE0103"></td><td style="background-color:#FE0103"></td>`;
|
||||
default : return `<td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>`;
|
||||
}
|
||||
}
|
||||
</script>
|
||||
1020
assets/js/dosen/_praoutline.php
Normal file
1020
assets/js/dosen/_praoutline.php
Normal file
File diff suppressed because it is too large
Load Diff
91
assets/js/dosen/_skripsi.php
Normal file
91
assets/js/dosen/_skripsi.php
Normal file
@@ -0,0 +1,91 @@
|
||||
<link rel="stylesheet" type="text/css" href="../assets/plugins/select2/select2.css" />
|
||||
<link rel="stylesheet" href="../assets/plugins/DataTables/media/css/DT_bootstrap.css" />
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal-bs3patch.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal.css" rel="stylesheet" type="text/css"/>
|
||||
<link rel="stylesheet" href="../assets/plugins/gritter/css/jquery.gritter.css">
|
||||
|
||||
<script type="text/javascript" src="../assets/plugins/select2/select2.min.js"></script>
|
||||
<script type="text/javascript" src="../assets/plugins/DataTables/media/js/jquery.dataTables.min.js"></script>
|
||||
<script type="text/javascript" src="../assets/plugins/DataTables/media/js/DT_bootstrap.js"></script>
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modal.js"></script>
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modalmanager.js"></script>
|
||||
<script src="../assets/plugins/jquery-validation/dist/jquery.validate.min.js"></script>
|
||||
<script src="../assets/plugins/gritter/js/jquery.gritter.min.js"></script>
|
||||
<script src="../assets/js/form-elements.js"></script>
|
||||
<script src="../assets/plugins/ckeditor/ckeditor.js"></script>
|
||||
<script src="../assets/plugins/ckeditor/adapters/jquery.js"></script>
|
||||
<script>
|
||||
jQuery(document).ready(function() {
|
||||
Main.init();
|
||||
|
||||
$("#post_review").validate({ //
|
||||
errorPlacement: function(error, element) {
|
||||
error.appendTo( element.parent("div"));
|
||||
},
|
||||
submitHandler:function(form){
|
||||
for ( instance in CKEDITOR.instances )
|
||||
{
|
||||
CKEDITOR.instances[instance].updateElement();
|
||||
}
|
||||
|
||||
if(window.FormData !== undefined) // for HTML5 browsers
|
||||
{
|
||||
var formData = new FormData(document.getElementById("post_review"));
|
||||
$.ajax({
|
||||
url:'page/skripsi/act.skripsi.php',
|
||||
type:'POST',
|
||||
data:formData,
|
||||
dataType:'json',
|
||||
mimeType:'multipart/form-data',
|
||||
contentType: false,
|
||||
cache: false,
|
||||
processData:false,
|
||||
beforeSend:function(){
|
||||
$("#loading").show();
|
||||
},
|
||||
success:function(json){
|
||||
if(json.result){
|
||||
$("#loading").hide();
|
||||
$.gritter.add({
|
||||
title:'Sukses',
|
||||
time: 1000,
|
||||
text: json.msg,
|
||||
after_close: function(){
|
||||
location.reload();
|
||||
}
|
||||
});
|
||||
}else{
|
||||
$("#loading").hide();
|
||||
$.gritter.add({
|
||||
title:'Kesalahan',
|
||||
time: 4000,
|
||||
text: json.msg
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}else{ //for olden browsers
|
||||
|
||||
var iframeId = "unique" + (new Date().getTime());
|
||||
var iframe = $('<iframe src="javascript:false;" name="'+iframeId+'" />');
|
||||
iframe.hide();
|
||||
form.attr("target",iframeId);
|
||||
iframe.appendTo("body");
|
||||
iframe.load(function(e){
|
||||
var doc = getDoc(iframe[0]);
|
||||
var docRoot = doc.body ? doc.body : doc.documentElement;
|
||||
var data = docRoot.innerHTML;
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
CKEDITOR.disableAutoInline = true;
|
||||
$('textarea.ckeditor').ckeditor({
|
||||
height:240
|
||||
});
|
||||
</script>
|
||||
363
assets/js/dosen/_user.php
Normal file
363
assets/js/dosen/_user.php
Normal file
@@ -0,0 +1,363 @@
|
||||
<link rel="stylesheet" type="text/css" href="../assets/plugins/select2/select2.css" />
|
||||
<link rel="stylesheet" href="../assets/plugins/DataTables/media/css/DT_bootstrap.css" />
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal-bs3patch.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../assets/plugins/bootstrap-modal/css/bootstrap-modal.css" rel="stylesheet" type="text/css"/>
|
||||
<link rel="stylesheet" href="../assets/plugins/gritter/css/jquery.gritter.css">
|
||||
|
||||
<script type="text/javascript" src="../assets/plugins/select2/select2.min.js"></script>
|
||||
<script type="text/javascript" src="../assets/plugins/DataTables/media/js/jquery.dataTables.min.js"></script>
|
||||
<script type="text/javascript" src="../assets/plugins/DataTables/media/js/DT_bootstrap.js"></script>
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modal.js"></script>
|
||||
<script src="../assets/plugins/bootstrap-modal/js/bootstrap-modalmanager.js"></script>
|
||||
<script src="../assets/plugins/jquery-validation/dist/jquery.validate.min.js"></script>
|
||||
<script src="../assets/plugins/gritter/js/jquery.gritter.min.js"></script>
|
||||
<script>
|
||||
jQuery(document).ready(function() {
|
||||
Main.init();
|
||||
$("#daftar-user").dataTable({
|
||||
"iDisplayLength": 5,
|
||||
"aLengthMenu": [
|
||||
[5, 10, 20, 50, -1],
|
||||
[5, 10, 20, 50, "All"] // change per page values here
|
||||
],
|
||||
"bProcessing": true,
|
||||
"bServerSide": true,
|
||||
"bSort": false,
|
||||
"bFilter": false,
|
||||
"sAjaxSource": "page/user/list.daftar-user.php",
|
||||
"oLanguage": {
|
||||
"sLengthMenu": "Menampilkan _MENU_ Data per halaman",
|
||||
"sZeroRecords": "Maaf, Data tidak ada",
|
||||
"sInfo": "Menampilkan _START_ s/d _END_ dari _TOTAL_ data",
|
||||
"sInfoEmpty": "Menampilakan 0 s/d 0 dari 0 data",
|
||||
"sSearch": "",
|
||||
"sInfoFiltered": "",
|
||||
"oPaginate": {
|
||||
"sPrevious": "",
|
||||
"sNext": ""
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$('#daftar-user_wrapper .dataTables_filter input').addClass("form-control input-sm").attr("placeholder", "Search");
|
||||
$('#daftar-user_wrapper .dataTables_length select').addClass("m-wrap small");
|
||||
$('#daftar-user_wrapper .dataTables_length select').select2();
|
||||
|
||||
$("#btnTambahUser").click(function(){
|
||||
|
||||
});
|
||||
|
||||
$("#myprofile").validate({
|
||||
errorPlacement:function(error,element){
|
||||
error.appendTo( element.parent("div"));
|
||||
},
|
||||
rules:{
|
||||
pwd_lama: {
|
||||
required: function(element) {
|
||||
return $("#pwd").val()!="";
|
||||
},
|
||||
minlength: 6
|
||||
},
|
||||
emailuser:{
|
||||
email: true
|
||||
},
|
||||
pwd:{
|
||||
minlength: 6
|
||||
}
|
||||
},
|
||||
messages:{
|
||||
pwd:{
|
||||
minlength:"Password Minimal 6 karakter"
|
||||
},
|
||||
pwd_lama:{
|
||||
minlength:"Password Minimal 6 karakter"
|
||||
}
|
||||
},
|
||||
submitHandler:function(form){
|
||||
$.ajax({
|
||||
url:'page/user/act.user.php',
|
||||
dataType:'json',
|
||||
type:'post',
|
||||
cache:false,
|
||||
data:$("#myprofile").serialize(),
|
||||
beforeSend:function(){
|
||||
$("#loading").show();
|
||||
},
|
||||
success:function(json){
|
||||
if(json.result){
|
||||
$("#loading").hide();
|
||||
$.gritter.add({
|
||||
title:'Sukses',
|
||||
time: 1000,
|
||||
text: json.msg
|
||||
});
|
||||
}else{
|
||||
$("#loading").hide();
|
||||
$.gritter.add({
|
||||
title:'Kesalahan',
|
||||
time: 4000,
|
||||
text: json.msg
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
return false;
|
||||
}
|
||||
});
|
||||
$("#tambahuserbaru").validate({
|
||||
errorPlacement:function(error,element){
|
||||
error.appendTo( element.parent("div"));
|
||||
},
|
||||
rules:{
|
||||
nama_lengkap:{
|
||||
required:true
|
||||
},
|
||||
emailuser:{
|
||||
email: true
|
||||
},
|
||||
pwd:{
|
||||
required:true,
|
||||
minlength: 6
|
||||
},
|
||||
prodi:{
|
||||
required:true
|
||||
},
|
||||
username:{
|
||||
required:true,
|
||||
minlength: 5,
|
||||
remote:{
|
||||
url: "page/user/checkuser.php",
|
||||
type: "post"
|
||||
}
|
||||
}
|
||||
},
|
||||
messages:{
|
||||
pwd:{
|
||||
required:"Password tidak boleh kosong.",
|
||||
minlength:"Password Minimal 6 karakter"
|
||||
},
|
||||
emailuser:{
|
||||
email:"Silakan masukkan email yang valid."
|
||||
},
|
||||
prodi:{
|
||||
required:"Silakan Pilih Program Studi"
|
||||
},
|
||||
username:{
|
||||
required:"Username tidak boleh kosong.",
|
||||
minlength:"Username minimal 5 karakter",
|
||||
remote:"Username sudah ada."
|
||||
},
|
||||
nama_lengkap:{
|
||||
required:"Nama Lengkap harus diisi"
|
||||
}
|
||||
},
|
||||
submitHandler:function(form){
|
||||
$.ajax({
|
||||
url:'page/user/act.user.php',
|
||||
dataType:'json',
|
||||
type:'post',
|
||||
cache:false,
|
||||
data:$("#tambahuserbaru").serialize(),
|
||||
beforeSend:function(){
|
||||
$("#loading").show();
|
||||
},
|
||||
success:function(json){
|
||||
if(json.result){
|
||||
$("#loading").hide();
|
||||
$.gritter.add({
|
||||
title:'Sukses',
|
||||
time: 1000,
|
||||
text: json.msg,
|
||||
after_close: function(){
|
||||
$("#tambahuser").modal('hide');
|
||||
$("#daftar-user").dataTable().fnDraw();
|
||||
}
|
||||
});
|
||||
|
||||
}else{
|
||||
$("#loading").hide();
|
||||
$.gritter.add({
|
||||
title:'Kesalahan',
|
||||
time: 4000,
|
||||
text: json.msg
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
$("#editdatauser").validate({
|
||||
errorPlacement:function(error,element){
|
||||
error.appendTo( element.parent("div"));
|
||||
},
|
||||
rules:{
|
||||
nama_lengkap:{
|
||||
required:true
|
||||
},
|
||||
emailuser:{
|
||||
email: true
|
||||
},
|
||||
username:{
|
||||
required:true,
|
||||
minlength: 5
|
||||
}
|
||||
},
|
||||
messages:{
|
||||
emailuser:{
|
||||
email:"Silakan masukkan email yang valid."
|
||||
},
|
||||
username:{
|
||||
required:"Username tidak boleh kosong.",
|
||||
minlength:"Username minimal 5 karakter."
|
||||
},
|
||||
nama_lengkap:{
|
||||
required:"Nama Lengkap harus diisi"
|
||||
}
|
||||
},
|
||||
submitHandler:function(form){
|
||||
$.ajax({
|
||||
url:'page/user/act.user.php',
|
||||
dataType:'json',
|
||||
type:'post',
|
||||
cache:false,
|
||||
data:$("#editdatauser").serialize(),
|
||||
beforeSend:function(){
|
||||
$("#loading").show();
|
||||
},
|
||||
success:function(json){
|
||||
if(json.result){
|
||||
$("#loading").hide();
|
||||
$.gritter.add({
|
||||
title:'Sukses',
|
||||
time: 1000,
|
||||
text: json.msg,
|
||||
after_close: function(){
|
||||
$("#edituser").modal('hide');
|
||||
$("#daftar-user").dataTable().fnDraw();
|
||||
}
|
||||
});
|
||||
|
||||
}else{
|
||||
$("#loading").hide();
|
||||
$.gritter.add({
|
||||
title:'Kesalahan',
|
||||
time: 4000,
|
||||
text: json.msg
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
return false;
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
function EditUser(id){
|
||||
$("#edituser").modal({
|
||||
keyboard:false,
|
||||
show:true,
|
||||
remote:'page/user/form-edituser.php?user='+id
|
||||
});
|
||||
}
|
||||
|
||||
function HapusUser(id){
|
||||
if(confirm("Hapus Admin??")){
|
||||
$.ajax({
|
||||
url:'page/user/act.user.php',
|
||||
type:'post',
|
||||
dataType:'json',
|
||||
data:'act=hapususer&id='+id,
|
||||
cache:false,
|
||||
success:function(json){
|
||||
if(json.result){
|
||||
$.gritter.add({
|
||||
title:'Sukses',
|
||||
time: 1000,
|
||||
text: json.msg,
|
||||
after_close: function(){
|
||||
$("#daftar-user").dataTable().fnDraw();
|
||||
}
|
||||
});
|
||||
|
||||
}else{
|
||||
$.gritter.add({
|
||||
title:'Kesalahan',
|
||||
time: 4000,
|
||||
text: json.msg
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function NonaktifkanUser(id){
|
||||
if(confirm("Nonaktifkan status Admin??")){
|
||||
$.ajax({
|
||||
url:'page/user/act.user.php',
|
||||
type:'post',
|
||||
dataType:'json',
|
||||
data:'act=nonaktifkanuser&id='+id,
|
||||
cache:false,
|
||||
success:function(json){
|
||||
if(json.result){
|
||||
$.gritter.add({
|
||||
title:'Sukses',
|
||||
time: 1000,
|
||||
text: json.msg,
|
||||
after_close: function(){
|
||||
$("#daftar-user").dataTable().fnDraw();
|
||||
}
|
||||
});
|
||||
|
||||
}else{
|
||||
$.gritter.add({
|
||||
title:'Kesalahan',
|
||||
time: 4000,
|
||||
text: json.msg
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function AktifkanUser(id){
|
||||
if(confirm("Aktifkan status Admin??")){
|
||||
$.ajax({
|
||||
url:'page/user/act.user.php',
|
||||
type:'post',
|
||||
dataType:'json',
|
||||
data:'act=aktifkanuser&id='+id,
|
||||
cache:false,
|
||||
success:function(json){
|
||||
if(json.result){
|
||||
$.gritter.add({
|
||||
title:'Sukses',
|
||||
time: 1000,
|
||||
text: json.msg,
|
||||
after_close: function(){
|
||||
$("#daftar-user").dataTable().fnDraw();
|
||||
}
|
||||
});
|
||||
|
||||
}else{
|
||||
$.gritter.add({
|
||||
title:'Kesalahan',
|
||||
time: 4000,
|
||||
text: json.msg
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
</script>
|
||||
460
assets/js/dosen/index.js
Normal file
460
assets/js/dosen/index.js
Normal file
@@ -0,0 +1,460 @@
|
||||
var Index = function () {
|
||||
// function to initiate Chart 1
|
||||
/*var runChart1 = function () {
|
||||
function randValue() {
|
||||
return (Math.floor(Math.random() * (1 + 40 - 20))) + 20;
|
||||
};
|
||||
var pageviews = [
|
||||
[1, randValue()],
|
||||
[2, randValue()],
|
||||
[3, 2 + randValue()],
|
||||
[4, 3 + randValue()],
|
||||
[5, 5 + randValue()],
|
||||
[6, 10 + randValue()],
|
||||
[7, 15 + randValue()],
|
||||
[8, 20 + randValue()],
|
||||
[9, 25 + randValue()],
|
||||
[10, 30 + randValue()],
|
||||
[11, 35 + randValue()],
|
||||
[12, 25 + randValue()],
|
||||
[13, 15 + randValue()],
|
||||
[14, 20 + randValue()],
|
||||
[15, 45 + randValue()],
|
||||
[16, 50 + randValue()],
|
||||
[17, 65 + randValue()],
|
||||
[18, 70 + randValue()],
|
||||
[19, 85 + randValue()],
|
||||
[20, 80 + randValue()],
|
||||
[21, 75 + randValue()],
|
||||
[22, 80 + randValue()],
|
||||
[23, 75 + randValue()],
|
||||
[24, 70 + randValue()],
|
||||
[25, 65 + randValue()],
|
||||
[26, 75 + randValue()],
|
||||
[27, 80 + randValue()],
|
||||
[28, 85 + randValue()],
|
||||
[29, 90 + randValue()],
|
||||
[30, 95 + randValue()]
|
||||
];
|
||||
var visitors = [
|
||||
[1, randValue() - 5],
|
||||
[2, randValue() - 5],
|
||||
[3, randValue() - 5],
|
||||
[4, 6 + randValue()],
|
||||
[5, 5 + randValue()],
|
||||
[6, 20 + randValue()],
|
||||
[7, 25 + randValue()],
|
||||
[8, 36 + randValue()],
|
||||
[9, 26 + randValue()],
|
||||
[10, 38 + randValue()],
|
||||
[11, 39 + randValue()],
|
||||
[12, 50 + randValue()],
|
||||
[13, 51 + randValue()],
|
||||
[14, 12 + randValue()],
|
||||
[15, 13 + randValue()],
|
||||
[16, 14 + randValue()],
|
||||
[17, 15 + randValue()],
|
||||
[18, 15 + randValue()],
|
||||
[19, 16 + randValue()],
|
||||
[20, 17 + randValue()],
|
||||
[21, 18 + randValue()],
|
||||
[22, 19 + randValue()],
|
||||
[23, 20 + randValue()],
|
||||
[24, 21 + randValue()],
|
||||
[25, 14 + randValue()],
|
||||
[26, 24 + randValue()],
|
||||
[27, 25 + randValue()],
|
||||
[28, 26 + randValue()],
|
||||
[29, 27 + randValue()],
|
||||
[30, 31 + randValue()]
|
||||
];
|
||||
var plot = $.plot($("#placeholder-h1"), [{
|
||||
data: pageviews,
|
||||
label: "Unique Visits"
|
||||
}, {
|
||||
data: visitors,
|
||||
label: "Page Views"
|
||||
}], {
|
||||
series: {
|
||||
lines: {
|
||||
show: true,
|
||||
lineWidth: 2,
|
||||
fill: true,
|
||||
fillColor: {
|
||||
colors: [{
|
||||
opacity: 0.05
|
||||
}, {
|
||||
opacity: 0.01
|
||||
}]
|
||||
}
|
||||
},
|
||||
points: {
|
||||
show: false
|
||||
},
|
||||
shadowSize: 2
|
||||
},
|
||||
grid: {
|
||||
hoverable: true,
|
||||
clickable: true,
|
||||
tickColor: "#eee",
|
||||
borderWidth: 0
|
||||
},
|
||||
colors: ["#d12610", "#37b7f3", "#52e136"],
|
||||
xaxis: {
|
||||
ticks: 11,
|
||||
tickDecimals: 0
|
||||
},
|
||||
yaxis: {
|
||||
ticks: 11,
|
||||
tickDecimals: 0
|
||||
}
|
||||
});
|
||||
|
||||
function showTooltip(x, y, contents) {
|
||||
$('<div id="tooltip">' + contents + '</div>').css({
|
||||
position: 'absolute',
|
||||
display: 'none',
|
||||
top: y + 5,
|
||||
left: x + 15,
|
||||
border: '1px solid #333',
|
||||
padding: '4px',
|
||||
color: '#fff',
|
||||
'border-radius': '3px',
|
||||
'background-color': '#333',
|
||||
opacity: 0.80
|
||||
}).appendTo("body").fadeIn(200);
|
||||
}
|
||||
var previousPoint = null;
|
||||
$("#placeholder-h1").bind("plothover", function (event, pos, item) {
|
||||
$("#x").text(pos.x.toFixed(2));
|
||||
$("#y").text(pos.y.toFixed(2));
|
||||
if (item) {
|
||||
if (previousPoint != item.dataIndex) {
|
||||
previousPoint = item.dataIndex;
|
||||
$("#tooltip").remove();
|
||||
var x = item.datapoint[0].toFixed(2),
|
||||
y = item.datapoint[1].toFixed(2);
|
||||
showTooltip(item.pageX, item.pageY, item.series.label + " of " + x + " = " + y);
|
||||
}
|
||||
} else {
|
||||
$("#tooltip").remove();
|
||||
previousPoint = null;
|
||||
}
|
||||
});
|
||||
};
|
||||
// function to initiate Chart 2
|
||||
var runChart2 = function () {
|
||||
var data_pie = [],
|
||||
series = Math.floor(Math.random() * 6) + 3;
|
||||
for (var i = 0; i < series; i++) {
|
||||
data_pie[i] = {
|
||||
label: "Series" + (i + 1),
|
||||
data: Math.floor(Math.random() * 100) + 1
|
||||
};
|
||||
}
|
||||
$.plot('#placeholder-h2', data_pie, {
|
||||
series: {
|
||||
pie: {
|
||||
show: true,
|
||||
radius: 1,
|
||||
tilt: 0.5,
|
||||
label: {
|
||||
show: true,
|
||||
radius: 1,
|
||||
formatter: labelFormatter,
|
||||
background: {
|
||||
opacity: 0.8
|
||||
}
|
||||
},
|
||||
combine: {
|
||||
color: '#999',
|
||||
threshold: 0.1
|
||||
}
|
||||
}
|
||||
},
|
||||
legend: {
|
||||
show: false
|
||||
}
|
||||
});
|
||||
|
||||
function labelFormatter(label, series) {
|
||||
return "<div style='font-size:8pt; text-align:center; padding:2px; color:white;'>" + label + "<br/>" + Math.round(series.percent) + "%</div>";
|
||||
}
|
||||
};
|
||||
// function to initiate Chart 3
|
||||
var runChart3 = function () {
|
||||
var data = [],
|
||||
totalPoints = 300;
|
||||
|
||||
function getRandomData() {
|
||||
if (data.length > 0)
|
||||
data = data.slice(1);
|
||||
// Do a random walk
|
||||
while (data.length < totalPoints) {
|
||||
var prev = data.length > 0 ? data[data.length - 1] : 50,
|
||||
y = prev + Math.random() * 10 - 5;
|
||||
if (y < 0) {
|
||||
y = 0;
|
||||
} else if (y > 100) {
|
||||
y = 100;
|
||||
}
|
||||
data.push(y);
|
||||
}
|
||||
// Zip the generated y values with the x values
|
||||
var res = [];
|
||||
for (var i = 0; i < data.length; ++i) {
|
||||
res.push([i, data[i]]);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
// Set up the control widget
|
||||
var updateInterval = 30;
|
||||
$("#updateInterval").val(updateInterval).change(function () {
|
||||
var v = $(this).val();
|
||||
if (v && !isNaN(+v)) {
|
||||
updateInterval = +v;
|
||||
if (updateInterval < 1) {
|
||||
updateInterval = 1;
|
||||
} else if (updateInterval > 2000) {
|
||||
updateInterval = 2000;
|
||||
}
|
||||
$(this).val("" + updateInterval);
|
||||
}
|
||||
});
|
||||
var plot = $.plot("#placeholder-h3", [getRandomData()], {
|
||||
grid: {
|
||||
borderWidth: 1,
|
||||
borderColor: '#eeeeee'
|
||||
},
|
||||
series: {
|
||||
shadowSize: 0 // Drawing is faster without shadows
|
||||
},
|
||||
yaxis: {
|
||||
min: 0,
|
||||
max: 100
|
||||
},
|
||||
xaxis: {
|
||||
show: false
|
||||
}
|
||||
});
|
||||
|
||||
function update() {
|
||||
plot.setData([getRandomData()]);
|
||||
// Since the axes don't change, we don't need to call plot.setupGrid()
|
||||
plot.draw();
|
||||
setTimeout(update, updateInterval);
|
||||
}
|
||||
update();
|
||||
};
|
||||
// function to initiate Sparkline
|
||||
var runSparkline = function () {
|
||||
$(".sparkline_line_good span").sparkline("html", {
|
||||
type: "line",
|
||||
fillColor: "#B1FFA9",
|
||||
lineColor: "#459D1C",
|
||||
width: "50",
|
||||
height: "24"
|
||||
});
|
||||
$(".sparkline_line_bad span").sparkline("html", {
|
||||
type: "line",
|
||||
fillColor: "#FFC4C7",
|
||||
lineColor: "#BA1E20",
|
||||
width: "50",
|
||||
height: "24"
|
||||
});
|
||||
$(".sparkline_line_neutral span").sparkline("html", {
|
||||
type: "line",
|
||||
fillColor: "#CCCCCC",
|
||||
lineColor: "#757575",
|
||||
width: "50",
|
||||
height: "24"
|
||||
});
|
||||
$(".sparkline_bar_good span").sparkline('html', {
|
||||
type: "bar",
|
||||
barColor: "#459D1C",
|
||||
barWidth: "5",
|
||||
height: "24"
|
||||
});
|
||||
$(".sparkline_bar_bad span").sparkline('html', {
|
||||
type: "bar",
|
||||
barColor: "#BA1E20",
|
||||
barWidth: "5",
|
||||
height: "24"
|
||||
});
|
||||
$(".sparkline_bar_neutral span").sparkline('html', {
|
||||
type: "bar",
|
||||
barColor: "#757575",
|
||||
barWidth: "5",
|
||||
height: "24"
|
||||
});
|
||||
};
|
||||
// function to initiate EasyPieChart
|
||||
var runEasyPieChart = function () {
|
||||
if (isIE8 || isIE9) {
|
||||
if (!Function.prototype.bind) {
|
||||
Function.prototype.bind = function (oThis) {
|
||||
if (typeof this !== "function") {
|
||||
// closest thing possible to the ECMAScript 5 internal IsCallable function
|
||||
throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");
|
||||
}
|
||||
var aArgs = Array.prototype.slice.call(arguments, 1),
|
||||
fToBind = this,
|
||||
fNOP = function () {}, fBound = function () {
|
||||
return fToBind.apply(this instanceof fNOP && oThis ? this : oThis, aArgs.concat(Array.prototype.slice.call(arguments)));
|
||||
};
|
||||
fNOP.prototype = this.prototype;
|
||||
fBound.prototype = new fNOP();
|
||||
return fBound;
|
||||
};
|
||||
}
|
||||
}
|
||||
$('.easy-pie-chart .bounce').easyPieChart({
|
||||
animate: 1000,
|
||||
size: 70
|
||||
});
|
||||
$('.easy-pie-chart .cpu').easyPieChart({
|
||||
animate: 1000,
|
||||
lineWidth: 3,
|
||||
barColor: '#35aa47',
|
||||
size: 70
|
||||
|
||||
});
|
||||
};*/
|
||||
// function to initiate Full Calendar
|
||||
var runFullCalendar = function () {
|
||||
//calendar
|
||||
/* initialize the calendar
|
||||
-----------------------------------------------------------------*/
|
||||
var $modal = $('#event-management');
|
||||
$('#event-categories div.event-category').each(function () {
|
||||
// create an Event Object (http://arshaw.com/fullcalendar/docs/event_data/Event_Object/)
|
||||
// it doesn't need to have a start or end
|
||||
var eventObject = {
|
||||
title: $.trim($(this).text()) // use the element's text as the event title
|
||||
};
|
||||
// store the Event Object in the DOM element so we can get to it later
|
||||
$(this).data('eventObject', eventObject);
|
||||
// make the event draggable using jQuery UI
|
||||
$(this).draggable({
|
||||
zIndex: 999,
|
||||
revert: true, // will cause the event to go back to its
|
||||
revertDuration: 50 // original position after the drag
|
||||
});
|
||||
});
|
||||
/* initialize the calendar
|
||||
-----------------------------------------------------------------*/
|
||||
var date = new Date();
|
||||
var d = date.getDate();
|
||||
var m = date.getMonth();
|
||||
var y = date.getFullYear();
|
||||
var form = '';
|
||||
var calendar = $('#calendar').fullCalendar({
|
||||
buttonText: {
|
||||
prev: '<i class="icon-chevron-left"></i>',
|
||||
next: '<i class="icon-chevron-right"></i>'
|
||||
},
|
||||
header: {
|
||||
left: 'prev,next today',
|
||||
center: 'title',
|
||||
right: 'month,agendaWeek,agendaDay'
|
||||
},
|
||||
events: [{
|
||||
title: 'Meeting with Boss',
|
||||
start: new Date(y, m, 1),
|
||||
className: 'label-default'
|
||||
}, {
|
||||
title: 'Bootstrap Seminar',
|
||||
start: new Date(y, m, d - 5),
|
||||
end: new Date(y, m, d - 2),
|
||||
className: 'label-teal'
|
||||
}, {
|
||||
title: 'Lunch with Nicole',
|
||||
start: new Date(y, m, d - 3, 12, 0),
|
||||
className: 'label-green',
|
||||
allDay: false
|
||||
}],
|
||||
editable: true,
|
||||
droppable: true, // this allows things to be dropped onto the calendar !!!
|
||||
drop: function (date, allDay) { // this function is called when something is dropped
|
||||
// retrieve the dropped element's stored Event Object
|
||||
var originalEventObject = $(this).data('eventObject');
|
||||
var $categoryClass = $(this).attr('data-class');
|
||||
// we need to copy it, so that multiple events don't have a reference to the same object
|
||||
var copiedEventObject = $.extend({}, originalEventObject);
|
||||
// assign it the date that was reported
|
||||
copiedEventObject.start = date;
|
||||
copiedEventObject.allDay = allDay;
|
||||
if ($categoryClass)
|
||||
copiedEventObject['className'] = [$categoryClass];
|
||||
// render the event on the calendar
|
||||
// the last `true` argument determines if the event "sticks" (http://arshaw.com/fullcalendar/docs/event_rendering/renderEvent/)
|
||||
$('#calendar').fullCalendar('renderEvent', copiedEventObject, true);
|
||||
// is the "remove after drop" checkbox checked?
|
||||
if ($('#drop-remove').is(':checked')) {
|
||||
// if so, remove the element from the "Draggable Events" list
|
||||
$(this).remove();
|
||||
}
|
||||
},
|
||||
selectable: true,
|
||||
selectHelper: true,
|
||||
select: function (start, end, allDay) {
|
||||
$modal.modal({
|
||||
backdrop: 'static'
|
||||
});
|
||||
form = $("<form></form>");
|
||||
form.append("<div class='row'></div>");
|
||||
form.find(".row").append("<div class='col-md-6'><div class='form-group'><label class='control-label'>New Event Name</label><input class='form-control' placeholder='Insert Event Name' type=text name='title'/></div></div>").append("<div class='col-md-6'><div class='form-group'><label class='control-label'>Category</label><select class='form-control' name='category'></select></div></div>").find("select[name='category']").append("<option value='label-default'>Work</option>").append("<option value='label-green'>Home</option>").append("<option value='label-purple'>Holidays</option>").append("<option value='label-orange'>Party</option>").append("<option value='label-yellow'>Birthday</option>").append("<option value='label-teal'>Generic</option>").append("<option value='label-beige'>To Do</option>");
|
||||
$modal.find('.remove-event').hide().end().find('.save-event').show().end().find('.modal-body').empty().prepend(form).end().find('.save-event').unbind('click').click(function () {
|
||||
form.submit();
|
||||
});
|
||||
$modal.find('form').on('submit', function () {
|
||||
title = form.find("input[name='title']").val();
|
||||
$categoryClass = form.find("select[name='category'] option:checked").val();
|
||||
if (title !== null) {
|
||||
calendar.fullCalendar('renderEvent', {
|
||||
title: title,
|
||||
start: start,
|
||||
end: end,
|
||||
allDay: allDay,
|
||||
className: $categoryClass
|
||||
}, true // make the event "stick"
|
||||
);
|
||||
}
|
||||
$modal.modal('hide');
|
||||
return false;
|
||||
});
|
||||
calendar.fullCalendar('unselect');
|
||||
},
|
||||
eventClick: function (calEvent, jsEvent, view) {
|
||||
var form = $("<form></form>");
|
||||
form.append("<label>Change event name</label>");
|
||||
form.append("<div class='input-group'><input class='form-control' type=text value='" + calEvent.title + "' /><span class='input-group-btn'><button type='submit' class='btn btn-success'><i class='icon-ok'></i> Save</button></span></div>");
|
||||
$modal.modal({
|
||||
backdrop: 'static'
|
||||
});
|
||||
$modal.find('.remove-event').show().end().find('.save-event').hide().end().find('.modal-body').empty().prepend(form).end().find('.remove-event').unbind('click').click(function () {
|
||||
calendar.fullCalendar('removeEvents', function (ev) {
|
||||
return (ev._id == calEvent._id);
|
||||
});
|
||||
$modal.modal('hide');
|
||||
});
|
||||
$modal.find('form').on('submit', function () {
|
||||
calEvent.title = form.find("input[type=text]").val();
|
||||
calendar.fullCalendar('updateEvent', calEvent);
|
||||
$modal.modal('hide');
|
||||
return false;
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
return {
|
||||
init: function () {
|
||||
/*runChart1();
|
||||
runChart2();
|
||||
runChart3();
|
||||
runSparkline();
|
||||
runEasyPieChart();*/
|
||||
runFullCalendar();
|
||||
}
|
||||
};
|
||||
}();
|
||||
217
assets/js/dosen/login.js
Normal file
217
assets/js/dosen/login.js
Normal file
@@ -0,0 +1,217 @@
|
||||
var Login = function () {
|
||||
var runLoginButtons = function () {
|
||||
$('.forgot').bind('click', function () {
|
||||
$('.box-login').hide();
|
||||
$('.box-forgot').show();
|
||||
});
|
||||
$('.register').bind('click', function () {
|
||||
$('.box-login').hide();
|
||||
//$('.box-register').show();
|
||||
});
|
||||
$('.go-back').click(function () {
|
||||
$('.box-login').show();
|
||||
$('.box-forgot').hide();
|
||||
//$('.box-register').hide();
|
||||
});
|
||||
};
|
||||
var runSetDefaultValidation = function () {
|
||||
$.validator.setDefaults({
|
||||
errorElement: "span", // contain the error msg in a small tag
|
||||
errorClass: 'help-block',
|
||||
errorPlacement: function (error, element) { // render error placement for each input type
|
||||
if (element.attr("type") == "radio" || element.attr("type") == "checkbox") { // for chosen elements, need to insert the error after the chosen container
|
||||
error.insertAfter($(element).closest('.form-group').children('div').children().last());
|
||||
} else if (element.attr("name") == "card_expiry_mm" || element.attr("name") == "card_expiry_yyyy") {
|
||||
error.appendTo($(element).closest('.form-group').children('div'));
|
||||
} else {
|
||||
error.insertAfter(element);
|
||||
// for other inputs, just perform default behavior
|
||||
}
|
||||
},
|
||||
ignore: ':hidden',
|
||||
highlight: function (element) {
|
||||
$(element).closest('.help-block').removeClass('valid');
|
||||
// display OK icon
|
||||
$(element).closest('.form-group').removeClass('has-success').addClass('has-error').find('.symbol').removeClass('ok').addClass('required');
|
||||
// add the Bootstrap error class to the control group
|
||||
},
|
||||
unhighlight: function (element) { // revert the change done by hightlight
|
||||
$(element).closest('.form-group').removeClass('has-error');
|
||||
// set error class to the control group
|
||||
},
|
||||
success: function (label, element) {
|
||||
label.addClass('help-block valid');
|
||||
// mark the current input as valid and display OK icon
|
||||
$(element).closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
highlight: function (element) {
|
||||
$(element).closest('.help-block').removeClass('valid');
|
||||
// display OK icon
|
||||
$(element).closest('.form-group').addClass('has-error');
|
||||
// add the Bootstrap error class to the control group
|
||||
},
|
||||
unhighlight: function (element) { // revert the change done by hightlight
|
||||
$(element).closest('.form-group').removeClass('has-error');
|
||||
// set error class to the control group
|
||||
}
|
||||
});
|
||||
};
|
||||
var runLoginValidator = function () {
|
||||
var form = $('.form-login');
|
||||
var errorHandler = $('.errorHandler', form);
|
||||
form.validate({
|
||||
rules: {
|
||||
username: {
|
||||
minlength: 2,
|
||||
required: true
|
||||
},
|
||||
password: {
|
||||
minlength: 4,
|
||||
required: true
|
||||
}
|
||||
},
|
||||
messages:{
|
||||
username :{
|
||||
minlength:"Karakter minimal {0} Karakter",
|
||||
required:"Silakan masukkan username anda"
|
||||
},
|
||||
password:{
|
||||
minlength:"Karakter minimal {0} Karakter",
|
||||
required:"Silakan masukkan password anda"
|
||||
}
|
||||
},
|
||||
submitHandler: function (form) {
|
||||
errorHandler.hide();
|
||||
var submitButton = $('.form-login button[type="submit"]');
|
||||
submitButton.prop('disabled', true);
|
||||
$('#loading').show();
|
||||
$.ajax({
|
||||
url:'act.auth.php',
|
||||
data:$('.form-login').serialize(),
|
||||
type:'post',
|
||||
dataType:'json',
|
||||
success:function(json){
|
||||
if (json.result){
|
||||
location.href='dashboard.php';
|
||||
|
||||
}else{
|
||||
//alert(json.msg);
|
||||
errorHandler.html(json.msg || 'Gagal Login.');
|
||||
errorHandler.show();
|
||||
submitButton.prop('disabled', false);
|
||||
$('#loading').hide();
|
||||
}
|
||||
},
|
||||
error:function(xhr){
|
||||
var msg = 'Login gagal diproses. Silakan coba lagi.';
|
||||
if (xhr.responseText) {
|
||||
msg += '<br><small>' + xhr.responseText.substring(0, 300) + '</small>';
|
||||
}
|
||||
errorHandler.html(msg);
|
||||
errorHandler.show();
|
||||
submitButton.prop('disabled', false);
|
||||
$('#loading').hide();
|
||||
}
|
||||
});
|
||||
return false;
|
||||
},
|
||||
invalidHandler: function (event, validator) { //display error alert on form submit
|
||||
errorHandler.show();
|
||||
}
|
||||
});
|
||||
};
|
||||
var runForgotValidator = function () {
|
||||
var form2 = $('.form-forgot');
|
||||
var errorHandler2 = $('.errorHandler', form2);
|
||||
form2.validate({
|
||||
rules: {
|
||||
email: {
|
||||
required: true
|
||||
}
|
||||
},
|
||||
messages:{
|
||||
email: "Silakan masukkan alamat email anda"
|
||||
},
|
||||
submitHandler: function (form) {
|
||||
errorHandler2.hide();
|
||||
$.ajax({
|
||||
url:'act.auth.php',
|
||||
data:$('.form-forgot').serialize(),
|
||||
type:'post',
|
||||
dataType:'json',
|
||||
/*beforeSend:function(){
|
||||
$("#statusLogin").html("Silakan Tunggu..");
|
||||
},*/
|
||||
success:function(json){
|
||||
if (json.result){
|
||||
alert(json.msg);
|
||||
//location.href='./'
|
||||
}else{
|
||||
errorHandler2.html(json.msg);
|
||||
errorHandler2.show();
|
||||
}
|
||||
}
|
||||
});
|
||||
return false;
|
||||
},
|
||||
invalidHandler: function (event, validator) { //display error alert on form submit
|
||||
errorHandler2.show();
|
||||
}
|
||||
});
|
||||
};
|
||||
/*var runRegisterValidator = function () {
|
||||
var form3 = $('.form-register');
|
||||
var errorHandler3 = $('.errorHandler', form3);
|
||||
form3.validate({
|
||||
rules: {
|
||||
full_name: {
|
||||
minlength: 2,
|
||||
required: true
|
||||
},
|
||||
address: {
|
||||
minlength: 2,
|
||||
required: true
|
||||
},
|
||||
city: {
|
||||
minlength: 2,
|
||||
required: true
|
||||
},
|
||||
gender: {
|
||||
required: true
|
||||
},
|
||||
email: {
|
||||
required: true
|
||||
},
|
||||
password: {
|
||||
minlength: 6,
|
||||
required: true
|
||||
},
|
||||
password_again: {
|
||||
required: true,
|
||||
minlength: 5,
|
||||
equalTo: "#password"
|
||||
},
|
||||
agree: {
|
||||
minlength: 1,
|
||||
required: true
|
||||
}
|
||||
},
|
||||
submitHandler: function (form) {
|
||||
errorHandler3.hide();
|
||||
},
|
||||
invalidHandler: function (event, validator) { //display error alert on form submit
|
||||
errorHandler3.show();
|
||||
}
|
||||
});
|
||||
};*/
|
||||
return {
|
||||
//main function to initiate template pages
|
||||
init: function () {
|
||||
runLoginButtons();
|
||||
runSetDefaultValidation();
|
||||
runLoginValidator();
|
||||
runForgotValidator();
|
||||
// runRegisterValidator();
|
||||
}
|
||||
};
|
||||
}();
|
||||
Reference in New Issue
Block a user