Skip to content

Commit

Permalink
OpenSID#4011: Sediakan tombol mencetak surat PDF pada Layanan Surat >…
Browse files Browse the repository at this point in the history
… Cetak Surat.
  • Loading branch information
eddieridwan committed Feb 20, 2021
1 parent e76bffc commit 0237736
Show file tree
Hide file tree
Showing 6 changed files with 51 additions and 24 deletions.
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,4 @@ Obfuscator.php
make_obfuscate.php
cache/*
vendor/libreoffice/*

.htaccess
4 changes: 2 additions & 2 deletions catatan_rilis_21.02-premium-pasca.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ Fitur Premium:
16. #3992: Perbaiki beberapa error javascript di tema natra. [bug]
17. Kembali tampilkan breadcrumb dan tombol Kembali di form layanan cetak surat. [bug]
18. Kembalikan pengambilan data covid untuk peta web dari api.kawalcorona.com.
19. #4011: Sediakan alternatif mencetak surat dalam format PDF menggunakan LibreOffice stand-alone. (teknis)

19. #4011: Sediakan tombol mencetak surat PDF pada Layanan Surat > Cetak Surat.
20. Sediakan alternatif mencetak surat dalam format PDF menggunakan LibreOffice stand-alone. (teknis)


Selalu diingatkan, apabila meng-upgrade (yaitu bukan install baru) dari versi SEBELUM versi 21.02-premium-pasca, lakukan Database > Migrasi DB untuk menyesuaikan struktur database dan folder desa.
Expand Down
9 changes: 7 additions & 2 deletions donjo-app/controllers/Surat.php
Original file line number Diff line number Diff line change
Expand Up @@ -178,16 +178,21 @@ private function cetak_doc($url)
$log_surat['lampiran'] = $lampiran;
$this->keluar_model->log_surat($log_surat);

if ($this->input->post('submit_cetak') == 'cetak_pdf')
$nama_surat = pathinfo($nama_surat, PATHINFO_FILENAME).".pdf";
else
$nama_surat = pathinfo($nama_surat, PATHINFO_FILENAME).".rtf";

if ($lampiran)
{
$nama_file = str_replace('rtf', 'zip', $nama_surat);
$nama_file = pathinfo($nama_surat, PATHINFO_FILENAME).".zip";
$berkas_zip = array();
$berkas_zip[] = LOKASI_ARSIP.$nama_surat;
$berkas_zip[] = LOKASI_ARSIP.$lampiran;
# Masukkan semua berkas ke dalam zip
$berkas_zip = masukkan_zip($berkas_zip);
# Unduh berkas zip
header('Content-disposition: attachment; filename='.$nama_file.'.zip');
header('Content-disposition: attachment; filename='.$nama_file);
header('Content-type: application/zip');
header($this->security->get_csrf_token_name().':'.$this->security->get_csrf_hash());
readfile($berkas_zip);
Expand Down
18 changes: 18 additions & 0 deletions donjo-app/models/Keluar_model.php
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,25 @@ public function list_data($o=0, $offset=0, $limit=0)
if ($data[$i]['id_pend'] == -1)
$data[$i]['id_pend'] = "Masuk";
else
{
$data[$i]['id_pend'] = "Keluar";
$nama_surat = pathinfo($data[$i]['nama_surat'], PATHINFO_FILENAME);

if ($nama_surat)
{
$berkas_rtf = $nama_surat . ".rtf";
$berkas_pdf = $nama_surat . ".pdf";
}
else
{
$berkas_rtf = $data[$i]["berkas"]."_".$data[$i]["nik"]."_".date("Y-m-d").".rtf";
$berkas_pdf = $data[$i]["berkas"]."_".$data[$i]["nik"]."_".date("Y-m-d").".pdf";
}

$data[$i]['file_rtf'] = LOKASI_ARSIP.$berkas_rtf;
$data[$i]['file_pdf'] = LOKASI_ARSIP.$berkas_pdf;
$data[$i]['lampiran'] = LOKASI_ARSIP.$data[$i]['lampiran'];
}
if (!empty($data[$i]['pamong_id_pend']))
// Pamong desa
$data[$i]['pamong'] = $data[$i]['nama_pamong_desa'];
Expand Down
14 changes: 13 additions & 1 deletion donjo-app/views/surat/form/tombol_cetak.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,22 @@
<?php if ($mandiri): ?>
<button type="button" onclick="$('#validasi').attr('action', '<?= site_url('layanan_mandiri/surat/kirim/'.$permohonan[id])?>'); $('#validasi').submit();" class="btn btn-social btn-flat btn-success btn-sm pull-right" style="margin-right: 5px;"><i class="fa fa-file-text"></i> Kirim</button>
<?php else: ?>
<?php if (SuratExport($url) && $this->setting->libreoffice_path) : ?>
<button type="button" onclick="tambah_elemen_cetak('cetak_pdf'); $('#validasi').submit()" class="btn btn-social btn-flat bg-fuchsia btn-sm pull-right" style="margin-right: 5px;"><i class="fa fa-file-pdf-o"></i> Cetak PDF</button>
<?php endif; ?>
<?php if (SuratExport($url)): ?>
<button type="button" onclick="$('#validasi').submit()" class="btn btn-social btn-flat btn-success btn-sm pull-right" style="margin-right: 5px;"><i class="fa fa-file-text"></i> Ekspor Dok</button>
<button type="button" onclick="tambah_elemen_cetak('cetak_rtf'); $('#validasi').submit()" class="btn btn-social btn-flat bg-purple btn-sm pull-right" style="margin-right: 5px;"><i class="fa fa-file-word-o"></i> Unduh RTF</button>
<?php endif; ?>
<?php endif; ?>
</div>
</div>
</div>
<script type="text/javascript">
function tambah_elemen_cetak($nilai) {
$('<input>').attr({
type: 'hidden',
name: 'submit_cetak',
value: $nilai
}).appendTo($('#validasi'));
}
</script>
28 changes: 10 additions & 18 deletions donjo-app/views/surat/surat_keluar.php
Original file line number Diff line number Diff line change
Expand Up @@ -100,27 +100,19 @@
</tr>
</thead>
<tbody>
<?php foreach ($main as $data):
if ($data['nama_surat']):
$berkas = $data['nama_surat'];
else:
$berkas = $data["berkas"]."_".$data["nik"]."_".date("Y-m-d").".rtf";
endif;

$theFile = FCPATH.LOKASI_ARSIP.$berkas;
$lampiran = FCPATH.LOKASI_ARSIP.$data['lampiran'];
?>
<?php foreach ($main as $data): ?>
<tr>
<td><?= $data['no']?></td>
<td nowrap>
<?php
if (is_file($theFile)): ?>
<a href="<?= base_url(LOKASI_ARSIP.$berkas)?>" class="btn btn-social btn-flat bg-purple btn-sm" title="Unduh Surat" target="_blank"><i class="fa fa-file-word-o"></i> Surat</a>
<?php endif; ?>
<?php
if (is_file($lampiran)): ?>
<a href="<?= base_url(LOKASI_ARSIP.$data['lampiran'])?>" target="_blank" class="btn btn-social btn-flat bg-olive btn-sm" title="Unduh Lampiran"><i class="fa fa-paperclip"></i> Lampiran</a>
<?php endif; ?>
<?php if (is_file($data['file_rtf'])): ?>
<a href="<?= base_url($data['file_rtf'])?>" class="btn btn-flat bg-purple btn-sm" title="Unduh Surat RTF" target="_blank"><i class="fa fa-file-word-o"></i></a>
<?php endif; ?>
<?php if (is_file($data['file_pdf'])): ?>
<a href="<?= base_url($data['file_pdf'])?>" class="btn btn-flat bg-fuchsia btn-sm" title="Cetak Surat PDF" target="_blank"><i class="fa fa-file-pdf-o"></i></a>
<?php endif; ?>
<?php if (is_file($data['lampiran'])): ?>
<a href="<?= base_url($data['lampiran'])?>" target="_blank" class="btn btn-social btn-flat bg-olive btn-sm" title="Unduh Lampiran"><i class="fa fa-paperclip"></i> Lampiran</a>
<?php endif; ?>
<a href="<?= site_url("keluar/edit_keterangan/$data[id]")?>" title="Ubah Data" data-remote="false" data-toggle="modal" data-target="#modalBox" data-title="Ubah Keterangan" class="btn bg-orange btn-flat btn-sm"><i class="fa fa-edit"></i></a>
<a href="#" data-href="<?= site_url("keluar/delete/$p/$o/$data[id]")?>" class="btn bg-maroon btn-flat btn-sm" title="Hapus Data" data-toggle="modal" data-target="#confirm-delete"><i class="fa fa-trash-o"></i></a>
</td>
Expand Down

0 comments on commit 0237736

Please sign in to comment.