• Tidak ada hasil yang ditemukan

5.1 Kesimpulan

1. Dengan adanya sistem publikasi jurnal per terbitan berbasis web pada

Universitas U’budiyah Indonesia, maka dapat memudahkan dosen maupun

mahasiswa untuk mencari jurnal elektronik sebagai suatu sumber atau referensi secara praktis.

2. Selain menghasilkan output dokumen berupa artikel jurnal yang dapat langsung diunduh oleh pengguna dalam ekstensi PDF, sistem ini juga memberi hasil keluaran berupa URL artikel jurnal sehingga memungkinkan dosen untuk menyisipkan URL penelitiannya di SIMLITABMAS Kinerja. 3. Penggunaan meta tag pada halaman artikel jurnal dapat membuat sistem

mudah dikenali oleh indeks Google Scholar yang juga berimplikasi pada hasil pemeringkatan Webometrics.

5.2 Saran

1. Pada halaman profil hendaknya terdapat fasilitas untuk mengunggah gambar avatar sebagai foto profil pengguna.

2. Perlu diterapkan mekanisme OAI-PMH sebagai web service agar koleksi jurnal pada sistem dapat di-harvest secara otomatis oleh aplikasi harvester

berstandar OAI-PMH seperti Garuda (Garda Rujukan DIKTI) dan lain-lain. 3. Penulisan script PHP untuk membangun sistem hendaknya mengikuti aturan

MVC (Model Controller View) agar mudah dalam melakukan maintenance ataupun pengembangan sistem karena sudah ada pola tertentu dalam sebuah kerangka kerja (framework).

4. Hendaknya pada setiap halaman pengguna terdapat penghitung waktu mundur (countdown timer) untuk membatasi waktu session yang digunakan saat pengguna masih dalam keadaan login, sehingga ketika waktu pada countdown timer tersebut telah habis maka pengguna otomatis logout dari sistem. Hal ini dapat menghindari terjadinya penyalahgunaan data oleh orang lain apabila pengguna lupa logout dari sistem.

61

DAFTAR PUSTAKA

Andri, Kristanto. 2003. Perancangan Sistem Informasi dan Aplikasi. Yogyakarta: Gava Media.

Inclusion Guidelines for Webmasters. http://scholar.google.com/intl/id/scholar/inc lusion.html#indexing. Diakses tanggal 27 Maret 2014.

Macam dan Jenis Jurnal. http://www.ditpertais.net/regulasi/jurnal/jur4.asp. Diakses tanggal 17 Maret 2014.

Mengenal Webometrics. http://fik.upnvj.ac.id/index.php?option=com_content &view=article&id=276. Diakses tanggal 18 Maret 2014.

Nugroho, B. 2005. Database Relasional dengan MySQL. ANDI Publisher: Yogyakarta.

Panduan Menulis Jurnal Ilmiah. http://edukasi.kompas.com/read/2012/02/09/1035 3179/Panduan.Menulis.Jurnal.ilmiah. Diakses tanggal 20 Maret 2014. Pelatihan E-Journal Berbasis Open Journal System (OJS).

http://www.um.ac.id/v2/news/2013/10/959. Diakses tanggal 18 Maret 2014.

Pembuatan Aplikasi Konversi Metadata Menggunakan Standar Open Archive

untuk Koleksi Artikel Elektronik Pusat Penelitian Universitas Kristen Petra. http://repo.pens.ac.id/226. Diakses tanggal 1 Mei 2015.

Peneliti Boleh Narsis di Google Scholar. http://ilmukomputer.org/2013/12/18/-pen eliti-boleh-narsis-di-google-scholar. Diakses tanggal 18 Maret 2014.

Rifai, M.A. 1995. Pegangan Gaya Penulisan, Penyuntingan dan Penerbitan Karya Ilmiah Indonesia. Yogyakarta: Gadjah Mada University Press. Rekayasa Perangkat Lunak Database Jurnal Ilmiah Berbasis Web.

http://www.unisbank.ac.id/ojs/index.php/fti1/article/viewFile/73/68. Diakses tanggal 1 Mei 2015.

Sublime Text 3. http://www.makemac.com/sublime-text-3-beta. Diakses tanggal

20 Maret 2014.

Sutarman. 2003. Membangun Aplikasi Web dengan PHP dan MySQL. Graha Ilmu: Yogyakarta.

Syafii, M. 2005. Panduan Membuat Aplikasi Database dengan PHP 5. ANDI Publisher: Yogyakarta.

Tentang Google Cendekia. http://scholar.google.co.id/intl/id/scholar/about.html. Diakses tanggal 18 Maret 2014.

62

63 Lampiran 1. Foto Wawancara

Wawancara dengan Direktorat Penelitian dan Pengabdian Masyarakat UUI, Banda Aceh

Workshop Akreditasi Jurnal Elektronik di Hotel Grand Angkasa, Medan

Diskusi Webometrics pada Pelatihan Penyelenggaraan Pengelolaan

64 Lampiran 2. Kode Program

Halaman Depan Sistem (index.php) <?php

if(!isset($_SESSION)) { session_start(); }

$_SESSION['AUTHORIZED_PAGE'] = 0;

include 'lib/conn.php';

include "lib/header.php";

include "lib/header_top_block.php";

include "lib/sidebar.php";

$query = "SELECT deskripsi_home FROM pengaturan";

$sql = mysql_query($query) or die("MySQL ERROR: ".mysql_error());

$hasil = mysql_fetch_array ($sql);

$deskripsi_home = $hasil['deskripsi_home'];

echo '<div style="margin-top:46px;">'.$deskripsi_home.'</div>';

$query_j = "SELECT * FROM jurnal";

$sql_j = mysql_query($query_j) or die("MySQL ERROR: ".mysql_error());

while($hasil_j = mysql_fetch_array ($sql_j)) {

$id_jurnal = $hasil_j['id_jurnal'];

$nama_jurnal = $hasil_j['nama_jurnal'];

$path = $hasil_j['path'];

$cover_jurnal = $hasil_j['cover_jurnal'];

$deskripsi = $hasil_j['deskripsi'];

echo '<div class="journal-list">';

echo '<a href="'.$base_url.'index/'.$path.'"><img

src="'.$base_url.'file/cov/'.$cover_jurnal.'" alt="Cover" class="cover- journal"></a>';

echo '<h3 class="journal-name"><a

href="'.$base_url.'index/'.$path.'">'.$nama_jurnal.'</a></h3>';

echo $deskripsi;

echo '<p> <a href="'.$base_url.'index/'.$path.'">Lihat Terbitan Terkini</a> </p>';

echo '</div>'; }

include "lib/footer.php";

?>

Halaman Kirim Naskah (penulis/artikel_add.php) <?php

include 'header_penulis.php';

include 'header_penulis_top_block.php';

include '../lib/sidebar.php';

?>

<a href="<?=$base_url?>penulis" style="margin-

top:13px;position:absolute;"><img title="Kembali" alt="Kembali"

src="<?=$base_url?>images/prev-green.png" /></a>

<?php

if(!isset($_SESSION)) { session_start(); }

$ID_PENULIS = $_SESSION['ID_PENULIS'];

?>

<center>

<h2>Kirim Naskah Untuk Direview</h2>

<br/>

<?php

65

$notifOpenPattern1 = '<center><div style="font-size:13px;font- weight:bold;text-align:center;width:50%;padding:20px

100px;background:#F8FFB5;color:green;border:1px solid green;">';

$notifOpenPattern2 = '</div></center><br/><br/>';

$cobaLagi = '<br/><br/> <a href="'.$base_url.'penulis/artikel- add">Coba lagi</a>';

# Terlebih dahulu, pastikan file ada diupload

foreach($_FILES as $sKey => $aFiles) {

for($h = 0, $hNumFiles = count($aFiles['tmp_name']); $h <

$hNumFiles; $h++) {

if($aFiles['name'][$h]==NULL) {

echo $notifOpenPattern1.'File tidak valid, pastikan anda juga mengunggah file naskah'.$cobaLagi.$notifOpenPattern2;

die();

}

$sFileName = $aFiles['name'][$h];

$ambilExt = (strtolower(substr(strrchr($sFileName,

'.'), 1))); // Get the file extension

if($ambilExt=='doc' || $ambilExt=='docx') { }

else { // Jika bukan doc atau docx maka tolak

echo $notifOpenPattern1.'Naskah tidak terkirim karena ekstensi file bukan <strong style="color:red;">doc atau

docx</strong>'.$cobaLagi.$notifOpenPattern2; die(); }

if($aFiles['size'][$h] > 2097152) { // Mengecek ukuran jika > 2 MB maka tolak

echo $notifOpenPattern1.'Naskah tidak terkirim karena ukuran file lebih dari <strong style="color:red;">2

MB</strong>'.$cobaLagi.$notifOpenPattern2; die(); }

} }

$id_jurnal = sanitize($_POST['jurnal'], 0);

if(empty($id_jurnal)) {echo $notifOpenPattern1.'Jurnal harus dipilih!'.$cobaLagi.$notifOpenPattern2; die();}

$query_e = "SELECT * FROM edisi WHERE id_jurnal=$id_jurnal ORDER BY id_edisi DESC LIMIT 0,1";

$sql_e = mysql_query($query_e) or die("MySQL ERROR: ".mysql_error());

$hasil_e = mysql_fetch_array($sql_e);

$id_edisi = $hasil_e['id_edisi']; // untuk sementara, hanya untuk penyimpanan edisi default dan nama file yang diupload

$judul = strtoupper(sanitize($_POST['judul'], 0));

if(empty($judul)) {echo $notifOpenPattern1.'Judul harus diisi!'.$cobaLagi.$notifOpenPattern2; die();}

$abstrak = sanitize($_POST['abstrak'], 1);

if(empty($abstrak)) {echo $notifOpenPattern1.'Abstrak harus diisi!'.$cobaLagi.$notifOpenPattern2; die();}

//cek apakah di abstrak ada tag <p> dan </p>, jika tidak maka tambahkan <p> di awal dan </p> di akhir

if(!preg_match("/<p>(.*)<\/p>/",$abstrak,$matches)) { $abstrak =

nl2p($abstrak); }

$kata_kunci = sanitize($_POST['kata_kunci'], 0);

$kata_kunci = str_replace(",",", ", $kata_kunci);

$resource_type = "Non Peer-reviewed Article"; // masih "belum" melalui proses review

$bahasa = sanitize($_POST['bahasa'], 0);

if(empty($bahasa)) {echo $notifOpenPattern1.'Bahasa harus dipilih!'.$cobaLagi.$notifOpenPattern2; die();}

66 if(empty($penulis)) {echo $notifOpenPattern1.'Penulis harus

diisi!'.$cobaLagi.$notifOpenPattern2; die();}

$pisah_penulis = explode(",", $penulis);

$data_penulis = array_filter($pisah_penulis);

// insert artikel

$query_simpan_art = "INSERT INTO artikel (id_artikel, id_edisi, tgl_submit, tgl_edit, judul, abstrak, kata_kunci, resource_type, page_num, bahasa, verified, dibaca, urutan_artikel) VALUES ('', '$id_edisi', NOW(), NOW(), '$judul', '$abstrak', '$kata_kunci', '$resource_type', '', '$bahasa', '0', '', '')";

$sql_simpan_art = mysql_query($query_simpan_art) or die("MySQL ERROR: ".mysql_error());

$id_art_baru_simpan = mysql_insert_id(); // ambil id_artikel yang baru disimpan

$urutan=1;

$i=1;

foreach ($data_penulis as $row_penulis) {

$query_simpan_penulis_art = "INSERT INTO tulis (id_artikel, id_penulis, urutan_penulis) VALUES ('$id_art_baru_simpan',

'$row_penulis', '$urutan')";

$sql_simpan_penulis_art = mysql_query($query_simpan_penulis_art)

or die("MySQL ERROR: ".mysql_error());

$urutan++; }

foreach($_FILES as $sKey => $aFiles) {

for($i = 0, $iNumFiles = count($aFiles['tmp_name']); $i <

$iNumFiles; $i++) {

if($aFiles['name'][$i]!=NULL) {

$sFileName = $aFiles['name'][$i];

$ambilExt =

(strtolower(substr(strrchr($sFileName, '.'), 1))); // Get the file extension

$iErrCode = $aFiles['error'][$i];

$sTmpFile = $aFiles['tmp_name'][$i];

$sTypeFile = $aFiles['type'][$i];

$buatName = $id_art_baru_simpan.'-

'.$id_edisi.'-'.$id_jurnal.'-'.time().'-BIW'; // Create new file name

$sNewFileName = $buatName.'.'.$ambilExt;

$dirTujuan = '../file/rev/'; // karena perlu direvisi

$sNewFileDest = $dirTujuan.''.$sNewFileName;

// It's complete new file name

if(isset($_SESSION['ID_ADMIN'])) { // tentukan id user yang mengupload file

$penulis_utama =

array_values($data_penulis)[0];

$uploader = $penulis_utama; }

elseif(isset($_SESSION['ID_PENULIS'])) {

$uploader = $_SESSION['ID_PENULIS']; }

elseif(isset($_SESSION['ID_REVIEWER'])) {

$uploader = $_SESSION['ID_REVIEWER']; }

if($iErrCode == UPLOAD_ERR_OK) {

$status = "Dalam Daftar Seleksi Naskah";

$query_simpan_file = "INSERT INTO file_artikel (id_file, id_artikel, uploader, file_name, file_type, tgl_upload, status, reviewed, komentar, diunduh, direkom_reviewer, rekomendasi) VALUES ('', '$id_art_baru_simpan', '$uploader',

67

$sql_simpan_file =

mysql_query($query_simpan_file) or die("MySQL ERROR: ".mysql_error());

// pindahkan file ke folder target

move_uploaded_file($sTmpFile,

$sNewFileDest);

// rekam history `log_artikel`

$user_direkam = $_SESSION['ID_PENULIS'];

$ip_addr = get_client_ip_env();

$file_dir = "file/rev/";

$query_rekam_log_art = "INSERT INTO log_artikel (id_artikel, id_user, peran, aktivitas, tgl, ip_addr, status, file_dir, file_name, catatan) VALUES ('$id_art_baru_simpan',

'$user_direkam', 'Penulis', 'mengirim naskah', NOW(), '$ip_addr', '$status', '$file_dir', '$sNewFileName', '')";

$sql_rekam_log_art =

mysql_query($query_rekam_log_art) or die("MySQL ERROR: ".mysql_error()); echo $notifOpenPattern1.'Terima kasih! Naskah berhasil dikirim. <br/>Saat ini status naskah Anda adalah <span style="color:#000;">Dalam Daftar Seleksi Naskah</span>. Selanjutnya, kami akan segera menetapkan reviewer untuk mereview naskah Anda jika naskah Anda layak untuk direview.

<br/><br/> Silahkan tunggu beberapa hari sampai status naskah ini <span style="color:#000;">Dalam Proses

Review</span>. Status naskah dapat dilihat di halaman <a

href="'.$base_url.'penulis">Dashboard</a>'.$notifOpenPattern2; die(); }

else {

echo $notifOpenPattern1.'<p style="color:red; font-weight:bold; text-align:center">Error while downloading the file "'.$sNewFileName.'"<br/> Error code:

"'.$iErrCode.'"<br/> Error message: "'.$this-

>_aErrFile[$iErrCode].'"</p>'.$cobaLagi.$notifOpenPattern2; die(); }

} // END "if" ngecek apa ada file yang diupload

}

} // END "foreach" upload file

}

# Perform the query to fetch all PENULIS to token input

$query = "SELECT id, nama_dpn, nama_blkg, email from user ORDER BY nama_dpn ASC";

$arr = array();

$rs = mysql_query($query);

# Collect the results

while($obj = mysql_fetch_object($rs)) {

$arr[] = $obj; }

# JSON-encode the response

$response = json_encode($arr, JSON_NUMERIC_CHECK);

?>

<script type="text/javascript">

$(document).ready(function() {

$("#penulis_prepop").tokenInput(<?php

# Perform the query

$query_prepop = "SELECT nama_dpn, nama_blkg, email FROM user WHERE id=$ID_PENULIS";

$sql_prepop = mysql_query($query_prepop);

$hasil_prepop = mysql_fetch_array($sql_prepop);

$nama_dpn_prepop = $hasil_prepop['nama_dpn'];

$nama_blkg_prepop = $hasil_prepop['nama_blkg'];

68

# Return the response

echo $response;

echo ', {'; echo "\n";

# Return the response prepop

echo ' prePopulate:

[{"id":'.$ID_PENULIS.',"nama_dpn":"'.$nama_dpn_prepop.'","nama_blkg":"'.$ nama_blkg_prepop.'","email":"'.$email_prepop.'","readonly":true}],'; echo

"\n";

?>

theme: "facebook",

propertyToSearch: "nama_dpn",

hintText: "Ketik nama depan penulis",

resultsFormatter: function(item){ return "<li>" + "<div

style='display: inline-block; padding-left: 10px;'><div class='nama'>" + item.nama_dpn + " " + item.nama_blkg + "</div><div class='email'>" + item.email + "</div></div></li>" },

tokenFormatter: function(item) { return "<li><p style='font- size:11px;'>" + item.nama_dpn + " " + item.nama_blkg + "</p></li>" },

preventDuplicates: true

}); });

</script>

<form action="" method="post" enctype="multipart/form-data">

<table width="80%" cellspacing="0">

<tr>

<td class="bio_td" style="padding-

top:19px;"><strong>Jurnal</strong></td>

<td class="bio_td" colspan="7" style="padding-

top:14px;width:215px;">

<select name="jurnal" id="jurnal" style="width:310px;margin-

left:2px;" required>

<?php

$query_jurnal = "SELECT id_jurnal, nama_jurnal FROM jurnal ORDER BY id_jurnal";

$sql_jurnal = mysql_query($query_jurnal) or die("MySQL ERROR: ".mysql_error());

echo '<option value="">--- Pilih jurnal ---</option>'; echo "\n";

while($hasil_jurnal = mysql_fetch_array($sql_jurnal)) {

echo '<option value="'.$hasil_jurnal['id_jurnal'].'"> '.$hasil_jurnal['nama_jurnal'].' </option>'; echo "\n"; } ?> </select> </td> </tr> <tr>

<td class="bio_td" style="padding-

top:17px;"><strong>Judul</strong></td>

<td class="bio_td" colspan="7"> <input type="text" name="judul"

size="85" required /></td> </tr>

<tr>

<td class="bio_td" style="vertical-align:top;padding-

top:17px;"><strong>Abstrak</strong></td>

<td class="bio_td" colspan="7"> <textarea class="abstrak"

name="abstrak" cols="85" required></textarea> </td> </tr>

<tr>

<td class="bio_td" style="padding-top:8px;"><strong>Kata

69

<td class="bio_td" colspan="7"> <input type="text"

name="kata_kunci" size="85" /></td> </tr>

<tr>

<td class="bio_td" style="padding-

top:19px;"><strong>Bahasa</strong></td>

<td class="bio_td" style="padding-top:14px;width:215px;">

<select name="bahasa" id="bahasa" style="width:165px;margin-

left:2px;" required>

<?php

$bahasa = array ("id", "en");

$bendera = array ("id", "gb");

echo '<option value="">--- Pilih bahasa ---</option>'; echo "\n";

for ($i=0;$i<=1;$i++) {

echo '<option value="'.$bahasa[$i].'" data-

image="'.$base_url.'images/blank.gif" data-imagecss="flag

'.$bendera[$i].'"> Bahasa '; if($bahasa[$i]=="id") {echo 'Indonesia'; }

else {echo 'Inggris';} echo '</option>'; echo "\n"; }

?>

</select> </td>

<td class="bio_td" style="padding-top:19px;padding-

right:22px;"><strong>File</strong></td>

<td class="bio_td" colspan="3" style="padding-left:0;"> <input

type="file" name="files[]" id="file" accept="application/msword, application/pdf, application/vnd.openxmlformats-

officedocument.wordprocessingml.document"

style="width:240px;float:right;" required /> </td> </tr>

<tr>

<td class="bio_td" style="padding-

top:17px;"><strong>Penulis</strong></td>

<td class="bio_td" colspan="7"> <input type="text" name="penulis"

id="penulis_prepop" required /> </td> </tr>

</table>

<input class="button" type="submit" value=" Kirim " name="Simpan"

id="Simpan" /></td> </form> <script> $(document).ready(function() { $("#jurnal").msDropdown(); $("#bahasa").msDropdown(); $('#Simpan').click(function() {

(new UploadBar).upload(); });

$('#Simpan').bind("click",function() {

var imgVal = $('[type=file]').val();

if(imgVal=='') {

alert("Silahkan unggah filenya juga");

return false; } }); $('#file').filestyle({ buttonBefore : true, buttonName : 'btn-success',

buttonText : '&nbsp; Unggah File &nbsp;', icon : false,

70 }); $('.abstrak').jqte({ format: false, fsize: false, color: false, ol: false, ul: false, outdent: false, indent: false, left: false, center: false, right: false, strike: false, rule: false, remove: false }); }) </script> <?php include '../lib/footer.php'; ?>

Halaman Review Naskah (reviewer/rekomendasi.php) <?php

include 'header_reviewer.php';

include 'header_reviewer_top_block.php';

include '../lib/sidebar.php';

?>

<a href="<?=$base_url?>reviewer" style="margin-

top:13px;position:absolute;"><img title="Kembali" alt="Kembali"

src="<?=$base_url?>images/prev-green.png" /></a>

<?php

if(!isset($_SESSION)) { session_start(); }

$ID_REVIEWER = $_SESSION['ID_REVIEWER'];

$notifOpenPattern1 = '<center><div style="font-size:13px;font- weight:bold;text-align:center;width:50%;padding:20px

100px;background:#F8FFB5;color:green;border:1px solid green;">';

$notifOpenPattern2 = '</div></center><br/><br/>';

if(!isset($_GET['i']) || $_GET['i']==NULL || !is_numeric($_GET['i'])) {

// jika tidak ada nilai variabel; atau ada nilai tapi bukan numerik;

echo '<br/>';

echo $notifOpenPattern1.'Naskah tidak valid <br/><br/> <a

href="javascript:history.back()">Kembali</a>'.$notifOpenPattern2; die(); }

else { // jika ada [i] maka

$id_nas = $_GET['i'];

$query_nas = "SELECT A.id_jurnal, B.id_edisi, C.judul, D.id_file, D.file_name, D.status FROM jurnal A, edisi B, artikel C, file_artikel D WHERE A.id_jurnal=B.id_jurnal AND B.id_edisi=C.id_edisi AND

C.id_artikel=D.id_artikel AND D.id_artikel=$id_nas";

$sql_nas = mysql_query($query_nas) or die("MySQL ERROR: ".mysql_error());

$hasil_nas = mysql_fetch_array($sql_nas);

$judul = $hasil_nas['judul'];

$id_file = $hasil_nas['id_file'];

$file_name = $hasil_nas['file_name'];

$status = $hasil_nas['status'];

$ext = (strtolower(substr(strrchr($file_name, '.'), 1))); // Get the file extension

71

}

$cobaLagi = '<br/><br/> <a

href="'.$base_url.'reviewer/rekomendasi/'.$id_nas.'">Coba lagi</a>';

?>

<center><h2>Rekomendasi</h2></center>

<?php

if(isset($_POST['Simpan'])) {

$rekomendasi = sanitize($_POST['rekomendasi'], 0);

if($rekomendasi=='Naskah Disetujui untuk Terbit') {

$status='Dalam Proses Layout';

$aktivitas='meninjau kelayakan naskah dan setuju untuk diterbitkan';

}

elseif($rekomendasi=='Revisi Diperlukan') {

$status='Dalam Proses Review';

$aktivitas='meninjau kelayakan naskah dan memberi rekomendasi: '.$rekomendasi;

}

elseif($rekomendasi=='Kirim Kembali untuk Direview') {

$status='Dalam Proses Review';

$aktivitas='meninjau kelayakan naskah dan memberi rekomendasi: '.$rekomendasi;

}

elseif($rekomendasi=='Kirim Ulang ke Tempat Lain') {

$status='Ditolak';

$aktivitas='meninjau kelayakan naskah dan meminta penulis agar mengirim ulang ke tempat lain';

}

elseif($rekomendasi=='Tolak Naskah') {

$status='Ditolak';

$aktivitas='meninjau kelayakan naskah dan menolak untuk diterbitkan';

}

elseif($rekomendasi=='Lihat Komentar') {

$status='Ditolak';

$aktivitas='meninjau kelayakan naskah, menolak untuk diterbitkan dan meminta penulis untuk membaca komentar reviewer';

}

else {

echo $notifOpenPattern1.'Rekomendasi tidak valid!'.$cobaLagi.$notifOpenPattern2; die();

}

$komentar = sanitize($_POST['komentar'], 1);

//cek apakah di abstrak ada tag <p> dan </p>, jika tidak maka tambahkan <p> di awal dan </p> di akhir

if(!preg_match("/<p>(.*)<\/p>/",$komentar,$matches)) {

$komentar = nl2p($komentar); }

# Terlebih dahulu, cek file ada diupload atau tidak

foreach($_FILES as $sKey => $aFiles) {

for($i = 0, $iNumFiles = count($aFiles['tmp_name']); $i <

$iNumFiles; $i++) {

if($aFiles['name'][$i]==NULL) {

// update rekom

$query_update_rekom = "UPDATE file_artikel SET tgl_upload=NOW(), status='$status', reviewed=1, komentar='$komentar', direkom_reviewer=1, rekomendasi='$rekomendasi' WHERE id_file=$id_file";

$sql_update_rekom =

mysql_query($query_update_rekom) or die("MySQL ERROR: ".mysql_error());

72

$resource_type = "Peer-reviewed Article";

$query_update_rt = "UPDATE artikel SET resource_type='$resource_type' WHERE id_artikel=$id_nas";

$sql_update_rt = mysql_query($query_update_rt)

or die("MySQL ERROR: ".mysql_error());

// rekam history `log_artikel`

$user_direkam = $_SESSION['ID_REVIEWER'];

$ip_addr = get_client_ip_env();

$query_rekam_log_art = "INSERT INTO

log_artikel (id_artikel, id_user, peran, aktivitas, tgl, ip_addr, status, file_dir, file_name, catatan) VALUES ('$id_nas', '$user_direkam',

'Reviewer', '$aktivitas', NOW(), '$ip_addr', '$status', '', '', '$komentar')";

$sql_rekam_log_art =

mysql_query($query_rekam_log_art) or die("MySQL ERROR: ".mysql_error());

echo $notifOpenPattern1.'Rekomendasi berhasil dikirim ke penulis <br/><br/><br/> <a

href="'.$base_url.'reviewer">Kembali ke Dashboard</a>'.$notifOpenPattern2; die();

}

else {

$sFileName = $aFiles['name'][$i];

$ambilExt =

(strtolower(substr(strrchr($sFileName, '.'), 1))); // Get the file extension

if($ambilExt=='doc' || $ambilExt=='docx') { }

else { // Jika bukan doc atau docx maka tolak

echo $notifOpenPattern1.'Naskah tidak terkirim karena ekstensi file bukan <strong style="color:red;">doc atau docx</strong>'.$cobaLagi.$notifOpenPattern2; die();

}

if($aFiles['size'][$i] > 2097152) { // Mengecek ukuran jika > 2 MB maka tolak

echo $notifOpenPattern.'Naskah tidak terkirim karena ukuran file lebih dari <strong style="color:red;">2 MB</strong>'.$cobaLagi.$notifOpenPattern2; die();

}

$iErrCode = $aFiles['error'][$i];

$sTmpFile = $aFiles['tmp_name'][$i];

$sTypeFile = $aFiles['type'][$i];

$buatName = $id_nas.'-'.time().'-REV'; // Create new file name

$sNewFileName = $buatName.'.'.$ambilExt;

$dirTujuan = '../file/rev/'; // kalau revisi => '../file/rev/'

$sNewFileDest = $dirTujuan.''.$sNewFileName;

// It's complete new file name

$sOldFileDest = $dirTujuan.''.$file_name; // It's complete new file name

if(isset($_SESSION['ID_ADMIN'])) { // tentukan id user yang mengupload file

$penulis_utama =

array_values($data_penulis)[0];

$uploader = $penulis_utama; }

elseif(isset($_SESSION['ID_PENULIS'])) {

$uploader = $_SESSION['ID_PENULIS']; }

elseif(isset($_SESSION['ID_REVIEWER'])) {

$uploader = $_SESSION['ID_REVIEWER']; }

73

{

// update rekom

$query_update_rekom = "UPDATE file_artikel SET uploader='$uploader', file_name='$sNewFileName', file_type='$sTypeFile', tgl_upload=NOW(), status='$status', reviewed=1, komentar='$komentar', direkom_reviewer=1, rekomendasi='$rekomendasi' WHERE id_file=$id_file";

$sql_update_rekom =

mysql_query($query_update_rekom) or die("MySQL ERROR: ".mysql_error());

// update resource_type

$resource_type = "Peer-Reviewed Article";

$query_update_rt = "UPDATE artikel SET resource_type='$resource_type' WHERE id_artikel=$id_nas";

$sql_update_rt =

mysql_query($query_update_rt) or die("MySQL ERROR: ".mysql_error());

// pindahkan file ke folder target

move_uploaded_file($sTmpFile,

$sNewFileDest);

// rekam history `log_artikel`

$user_direkam =

$_SESSION['ID_REVIEWER'];

$ip_addr = get_client_ip_env();

$file_dir = sanitize("file/rev/", 0);

$query_rekam_log_art = "INSERT INTO log_artikel (id_artikel, id_user, peran, aktivitas, tgl, ip_addr, status, file_dir, file_name, catatan) VALUES ('$id_nas', '$user_direkam',

Dokumen terkait