Modul Ina Activefire
Modul Ina Activefire
DAFTAR ISI
Bab II Install Sofware (Xampp, PostgreSQL, PostGIS, phpPgAdmin, dan GeoServer) ............. 6
Bab V Publish Data GeoJSON Dalam Bentuk Titik, Garis, Luasan dan
Raster Menggunakan QGIS, PostGIS, PostrgreSQL, dan GeoServer ............................. 40
Bab VIII Creat, Read, Update dan Delete (CRUD) Untuk Pemetaan Berbasis WebGIS .......... 70
A. Xampp
XAMPP adalah sebuah paket perangkat lunak (software) komputer yang sistem
penamaannya diambil dari akronim kata Apache, MariaDB/MySQL, PHP, dan Perl. Sementara
imbuhan huruf “X” yang terdapat pada awal kata berasal dari istilah cross platform sebagai
simbol bahwa aplikasi ini bisa dijalankan di empat sistem operasi berbeda, seperti OS Linux,
OS Windows, Mac OS, dan juga Solaris.
Jika dijabarkan secara gamblang, masing-masing huruf yang ada di dalam nama
XAMPP memiliki arti sebagai berikut ini:
X = Cross Platform
Merupakan kode penanda untuk software cross platform atau yang bisa berjalan di
banyak sistem operasi, seperti Windows, xampp for mac, dan untuk Linux. Semua itu
bersifat free download xampp.
A = Apache
Apache adalah aplikasi web server yang bersifat gratis dan bisa dikembangkan oleh
banyak orang (open source).
M = MySQL / MariaDB
MySQL atau MariaDB merupakan aplikasi database server yang dikembangkan oleh
orang yang sama. MySQL berperan dalam mengolah, mengedit, dan menghapus daftar
melalui database.
P = PHP
Huruf “P” yang pertama dari akronim kata XAMPP adalah inisial untuk menunjukkan
eksistensi bahasa pemograman PHP. Bahasa pemograman ini biasanya digunakan
untuk membuat website dinamis, contohnya dalam website berbasis CMS WordPress.
P = Perl
Sementara itu, untuk huruf P selanjutnya merupakan singkatan dari bahasa
pemrograman Perl yang kerap digunakan untuk memenuhi berbagai macam kebutuhan.
Perl ini bisa berjalan di dalam banyak sistem operasi sehingga sangat fleksibel dan
banyak digunakan.
Fungsi Xampp
1. Sebagai server lokal untuk website yang sedang dalam pengembangan
2. Menampilkan konten yang terdapat pada website tanpa harus terkoneksi dengan
internet
3. Bekerja secara offline dan sebagai server lokal, web yang terdapat di dalamnya
tidak dapat diakses oleh banyak orang
4. Interface yang sangat friendly membuat aplikasi ini sangat cocok digunakan untuk
belajar baik di kalangan siswa ataupun mahasiswa
5. Dapat digunakan sebagai preview untuk website yang sedang dikembangkan
sebelum di hosting untuk diakses secara umum.
B. CodeIgniter
Codeigniter adalah sebuah framework php yang bersifat open source dan menggunakan
metode MVC (Model, View, Controller). MVC adalah teknik atau konsep yang memisahkan
komponen utama menjadi tiga komponen yaitu model, view dan controller.
Leaflet merupakan library javascript open source yang berguna untuk menampilkan
peta berbasis web dengan mudah. Standar data vektor [Link] berupa geojson. Geojson
dirancang untuk menyajikan fitur geografis sederhana, bersama dengan atribut non-spasialnya.
Salah satu software yang dapat digunakan merubah format data shapefile menjadi geojson
adalah Qgis.
Qgis merupakan software gis dekstop yang open source. Di Qgis terdapat banyak plugin
yang support dalam pembuatan webgis leaflet. Adapun plugin-plugin tersebut sebagai berikut;
1. ColortoAttribute
Sebagai penyimpan kode warna kedalam atribute tabel
2. Qmetatiles
Untuk merubah data raster menjadi tiles
3. Qgis2web
Untuk membuat webgis secara langlung tanpa ngoding
4. MySql Importer
Untuk memasukan data spasial kedalam database MySQL
5. DB Manager
Untuk memasukan data vector kedalam PostGIS, GeoPackage, Oracle Spatial, dan
SpatialLite
Sederhananya, Qgis ini sangat powerfull digunakan untuk membangun webgis. Tidak
hanya bisa digunakan untuk membangun data spasial, tetapi juga menyediakan berbagai plugin
yang interaktif. Kelebihan lainnya, Qgis dapat membaca data spasial pada database meskipun
sudah terhosting (publish).
Melalui plugin PostGIS, PostgreSQL dapat menyimpan data berupa objek geometrik
berupa point (titik), garis (line), dan area (polygon) selain dari table-tabel atribut (berserta
objek-objek lainnya seperti halnya view, rule, constraint, indeks, fungsi / prosedur, dan lain
sejenisnya) sebagaimana basis data biasa.
PostGIS merupakan plugin PostgreSQL, yang berguna sebagai spatial database engine,
dan pengelolaan (fungsional) unsur-unsur spasial bagi DBMS objek relasional PostgreSQL.
Secara praktis, PostGIS berperan sebagai penyedia layanan spasial bagi DBMS ini.
Memungkinkan PostgreSQL untuk digunakan sebagai backend basis data spasial untuk
perangkat lunak SIG. Singkatnya, PostGIS juga menambahkan tipe-tipe (kumpulan) SQL
(query), operator, dan fungsi-fungsi (analisis) yang kemudian menyebabkan DBMS
PostgreSQL menjadi bersifat “Spatially-enabled”. PostgreSQL merupakan salah satu basis
data terbaik untuk keperluan SIG.
E. GeoServer
GeoServer adalah sebuah perangkat lunak mapserver yang open source ditulis di dalam
bahasa pemrograman JAVA yang memungkinkan pengguna untuk berbagi dan mengedit data
geospatial. Dirancang untuk interoperabilitas, menyajikan data dari semua sumber data spatial
utama dengan menggunakan standar terbuka.
GeoServer juga sesuai dengan Web Feature Service (WFS) standar, yang
memungkinkan berbagi dan pengeditan data yang digunakan untuk membuat peta. Orang lain
dapat memasukkan data ke dalam situs web dan aplikasi, membebaskan perijinan sehingga
memungkinkan transparansi yang lebih besar.
A. Install Xampp
Xampp merupakan software yang opensource yang dapat didownload di XAMPP
Installers and Downloads for Apache Friends. Adapun langkah-langkah
menginstallnya sebagai berikut;
4. Tentukan bahasa yang digunakan dan klik next dan klik next lagi
b. Port-nya bentrok (kode port sudah digunakan sama software yang lain)
Solusinya, port Xampp diganti. Berikut langkah-langkahnya;
1. Buka XAMPP Control Panel
2. Dibaris Apache, klik Config
Cara lain dari tahapan yang diatas, yaitu meng-stop World Wide Web Publishing Service.
1. Start dan running-kan service
2. Double klik World Wide Web Publishing Service
3. Klik Stop
4. Kemudian ganti startup type ke Manual
5. Klick OK
6. Buka kembali XAMPP Control Panel dan jalankan Apache
B. Install PostgreSQL
PostgreSQL dapat didownload di link berikut, Download PostgreSQL Database for
Windows, Linux and MacOS & 32-bit or 64-bit Versions | EDB ([Link]).
Agar postgresql terintegrasi dengan Xampp, maka tempat penginstalannya didalam
folder luaran install-an Xampp.
3. Klik Next
7. Setelah selesai, hilangkan centang pada stack builder dan klik finish.
10. Cek hasilnya dengan meng double klik icon pgAdmin, jika masih error seperti
berikut;
13. Saat sedang proses, klik kanan icon disisi kanan bawah screen
14. Klik configure dan ganti port numbern-ya, kemudian klik oke.
16. Kemudian klik kanan icon pgAdmin dan pilih Run as Administrator
18. Silahkan masukan password yang sudah dibuat pada saat proses penginstallan.
C. Install PostGIS
1. Double klik setup postgis dan klik Agree dan centang creat spatial database
D. Install phpPgAdmin
Download software phppgadmin di link berikut Release phpPgAdmin 7.13.0 ·
phppgadmin/phppgadmin ([Link]).
<directory "C:/Xampp64/phppgadmin">
AllowOverride AuthConfig
Require all granted
</directory>
A. Install CodeIgniter
1. Run Xampp Control Panel dan klik start pada baris apache
2. Copy dan Paste CodeIgniter di direktori C:\xampp64\htdocs
3. Rename sesuai dengan tema webgis (ex: ina-activefire)
$autoload['libraries'] = array();
Menjadi
$autoload['libraries'] = array('session','form_validation','upload');
$autoload['helper'] = array();
Menjadi
$autoload['helper'] = array('url', 'file','form');
config['index_page'] = '[Link]';
Menjadi
$config['index_page'] = '';
11. Buat file .htaccess (klik kanan di bawah [Link], pilih new file. Beri nama file
tersebut, yaitu .htaccess)
12. Copy koding berikut dan paste kan kedalam halaman .htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ [Link]/$1 [L]
13. Muat ulang/refresh browsernya dan pastikan tidak error. Jika perubahan sudah
tersimpan semuanya dan tidak terdapat error di browser, itu artinya bahwa
konfigurasi yang dilakukan sudah berhasil.
5. Pastikan browser sudah bisa membaca root project dengan tautan link [Link]
activefire/assets/template/
7. Buka folder layout dengan Vscode dan buat file [Link], [Link],
[Link], [Link], [Link] dan [Link].
<?php
if ($content) {
$this->load->view($content);
}
11. Buat Halaman [Link] di dalam folder controller dengan cara meng-klik kanan
folder Controller dan pilih new file. Beri nama file tersebut dengan nama [Link].
Isi dengan koding berikut;
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Home extends CI_Controller {
public function index()
{
$data= array(
'judul' => 'WebGIS Trainning',
'content' => 'peta_leaflet'
);
$this->load->view('layout/viewunion', $data, FALSE);
}
}
/* End of file [Link] */
Berdasarkan susunan koding di atas menunjukkan bahwa nama functionnya berupa index, dan halaman
yang dideklarasikan bernama 'peta_leaflet'.Oleh karena itu, langkah selanjutnya adalah membuat halaman
'peta_leaflet'.didalam folder views.
12. Klik kanan folder Views dan pilih new file. Beri nama file tersebut dengan nama
peta_leaflet.php
13. Isi dengan keterangan berikut
<h1>Penanda Installan Template</h1>
14. Refresh root project di browser, pastikan hasilnya sudah seperti dibawah ini;
Contoh Hasil
Contoh Hasil
19. Refresh browser dan pastikan hasilnya seperti yang di bawah ini;
Sampai dengan
</html>
Pindahkan ke halaman [Link]
Contoh Hasil
Contoh Hasil
Contoh Hasil
Hasil sementara pengolahan masih belum lengkap, yaitu logo belum terpasang. Jadi sebelum
lanjut ketahap selanjutnya, logo terlebih dahulu di tampilkan.
a. Buka halaman [Link]
b. Tambahkan koding yang di bawah
<?=base_url()?>assets/template
pada baris berikut
<img src="../../dist/img/[Link]" alt="AdminLTE Logo" class="brand-image img-
circle elevation-3" style="opacity: .8">
Sehingga menjadi
Contoh Hasil
2. Copy koding berikut;
<link rel="stylesheet" href="[Link] />
<script src="[Link]
Contoh Hasil
4. Kembali ke halaman peta_leaflet.php dan tambahkan dengan koding berikut,
<script>
var map = [Link]('map', {
center: [-1.7912605, 116.42311],
zoom: 5,
layers:[]
});
var GoogleSatelliteHybrid= [Link]('[Link] {
maxZoom: 22,
attribution: 'WebGIS Trainning by Roni Haryadi'
}).addTo(map);
</script>
Contoh Hasil
Contoh Hasil
6. Klik kanan file tersebut dan plih Extract Here. Jika sudah selesai, hapus file ZIP
tersebut agar size root project tidak besar.
7. Buka halaman demo plugin tersebut dengan link berrikut
[Link]
8. Tekan tombol Ctrl+U
9. Copy library yang ada kata StyledLayerControl, yaitu koding berikut;
<link rel="stylesheet" href="../css/[Link]" />
<script src="../src/[Link]"></script>
<script src="<?=base_url()?>assets/[Link]-master/src/[Link]"></script>
];
var overlays = [
{
groupName : "Peta Dasar",
expanded : true,
layers : { }
}
];
var options = {
container_width : "300px",
group_maxHeight : "80px",
//container_maxHeight : "350px",
exclusive : false,
collapsed : true,
position: 'topright'
};
Contoh kasus plugin selanjutnya adalah menambah basemap melalui plugin leaflet provider
1. Buka halaman website berikut;
[Link]
Contoh Hasil
c. Langkah – langkah memasang plug in leaflet yang dibentuk javascript dan library
online
Contoh plugin yang digunakan adalah Geocoding dan Leaflet Routing Machine
<script src="[Link]
b. Download Marker
1. Download marker disini [Link]
2. Simpan marker didalam folder assets
2. Masuk/Login
3. Buat workspace, ex: spasial_nusantara
6. Pilih PostGIS
10. Pada baris layer Fasilitas Kesehatan 25K (44), pilih publish
11. Isi form Layer
12. Double klik tombol save dan lanjut pilih menu Layer Preview
13. Scroling ke baris layer yang dipublish dan pilih geojson
<?php
$url=file_get_contents("[Link]
me=spasial_nusantara%3AFasilitas%20Kesehatan%2025K%20%2844%29&outputFormat=application%2Fjson");
echo($url);
?>
3. Tambahkan koding berikut kedalam peta_leaflet.js (di bawah koding base
maps)
var faskes = new [Link]();
4. Tambahkan koding berikut kedalam peta_leaflet.js (di dalam grup Peta Dasar)
"Fasilitas Kesehatan": faskes
$.getJSON("<?=base_url()?>assets/[Link]",function(data){
var ratIcon = [Link]({
iconUrl: '<?=base_url()?>assets/[Link]',
iconSize: [60,50]
});
[Link](data,{
pointToLayer: function(feature,latlng){
var marker = [Link](latlng,{icon: ratIcon});
[Link]("<table class='table table-striped table-bordered table-condensed'>" +
"<tr><th>Name</th><td>" + [Link] + "</td></tr>" +
"<tr><th>Global ID</th><td>" + [Link] + "</td></tr>" +
"<table>");
return marker;
}
}).addTo(faskes);
});
Data titik GeoJSON sudah berhasil dipublish diwebgis leaflet, akan tetapi butuh waktu yang
lama untuk menampilkannya, serta tampilannya juga belum bagus. Solusi atas masalah ini
adalah plugin marker cluster
1. Download library marker cluster disini
[Link]
2. Ekstrak ke dalam folder assets
5. Scrolling kebawah dan pilih Compute from data dan Compute from native bounds
6. Pilih save
<?php
$url=file_get_contents("[Link]
eature&typeName=spasial_nusantara%3Asungai_degree&maxFeatures=50&outputFormat=application%2Fjson");
echo($url);
?>
7. Hapus &maxFeatures=50&
[Link]([Link]);
});
[Link]('mouseout', function (e) {
[Link]({
weight: 2,
color: [Link],
dashArray: '',
fillOpacity: 0.8
});
});
}
}).addTo(sungai);
});
5. Scrolling kebawah dan pilih Compute from data dan Compute from native bounds
6. Pilih save
11. Kembali ke halaman Vscode, buat halaman [Link] didalam folder assets
12. Pastekan koding berikut di halaman [Link] tersebut.
<?php
$url=file_get_contents();
echo($url);
?>
13. Pastekan url tadi di dalam kurung baris $url......
<?php
$url=file_get_contents("[Link]
0&request=GetFeature&typeName=spasial_nusantara%3AProvinsi_Polygon&outputFormat=application%2Fjson");
echo($url);
?>
14. Hapus &maxFeatures=50
12. Untuk koding variable layer, copy koding di bawah ini dan pastekan ke dalam
peta_leaflet.php
var raster = new [Link]();
13. Copy berikut dan pastekan ke dalam peta_leaflet.php
"Raster": raster
Street views merupakan salah satu fitur dari google maps. Kegunaan street views diwebgis
adalah untuk menvisualisasikan kondisi jalan dalam bentuk 3D, bahkan bisa juga dilihat kondisi
disekitarnya. Street views tersebut bisa ditambahkan kedalam webgis leaflet. adapun langkah-
langkahnya sebagai berikut;
1. Copy dan paste library berikut ke dalam [Link]
<script src="[Link]
3. Copy dan paste koding berikut ke dalam peta_leaflet.php, di bagian layer kontrol
2. Login
3. Pilih database spasialpublic activefireBrowse
1. Buka Vscode
2. Buat Halaman di dalam Folder Model (exs: Model_activefire.php)
<?php
defined('BASEPATH') or exit('No direct script access allowed');
class Model_activefire extends CI_Model// nama class harus sesuai dengan nama file
{
public function get_all_data()
{
$this->db->select('*');
$this->db->from('activefire');// Tabel yang digunakan
$this->db->order_by('id', 'desc');// Id yang di tabel
return $this->db->get()->result();
}
}
'activefire'=> $this->model_activefire->get_all_data(),
Hasil Step 4
Hasil Step 5
1. Buka PgAdmin
2. Login
1. Buka Vscode
2. Buat Halaman di dalam Folder Model (exs: Model_sumur.php)
3. Isi dengan koding berikut;
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Model_sumur extends CI_Model { // nama class harus sesuai dengan nama file
6. Buat folder baru didalam folder Views, yaitu klik kananpilih new folderberi nama
dengan kata ’sumur’
7. Di folder sumur tersebut, buat halaman baru bernam’data’
<tr>
<th>No</th>
<th>Nama</th>
<th>Longitude</th>
<th>Latitude</th>
<th>Gambar</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php $no = 1;
foreach ($sumur as $key => $value) { ?>
<tr>
<td><?= $no++ ?></td>
<td><?= $value->nama?></td>
<td><?= $value->longitude?></td>
<td><?= $value->latitude?></td>
<td><img src="<?= base_url('assets/gambar/' . $value->gambar) ?>"Width="100px"></td>
<td class="text-center">
<a href="<?= base_url() ?>" class="btn btn-sm btn-warning"><i class="fas fa-
edit"></i></a>
<a href="<?= base_url() ?>" class="btn btn-sm btn-
danger" onclick="return confirm('Apakah Anda Yakin Ingin Hapus Data ini..?')"><i class="fas fa-
trash"></i></a>
<a href="<?= base_url() ?>" class="btn btn-sm btn-success"><i class="fas fa-
plus"></i> Add Data</a>
</td>
</tr>
<?php } ?>
</tbody>
</table>
</div>
<li class="nav-item">
<a href="../layout/[Link]" class="nav-link">
<i class="far fa-circle nav-icon"></i>
<p>Top Navigation</p>
</a>
</li>
Menjadi
<li class="nav-item">
<a href="<?=base_url('sumur')?>" class="nav-link">
<i class="far fa-circle nav-icon"></i>
<p>Sumur</p>
</a>
</li>
Data yang didalam database spasial (PostgreSQL) sudah berhasil ditampilkan ditabel. Jika ditinjau
lebih dalam, tabelnya masih sederhana. Untuk itu, perlu diinstall plugin data table net.
"paging": true,
"lengthChange": false,
"searching": false,
"ordering": true,
"info": true,
"autoWidth": false,
"responsive": true,
});
});
</script>
13. Refresh browser dan pastikan hasilnya seperti berikut;
</div>
<div class="col-sm-5">
<?php
echo validation_errors('<div class="alert alert-warning alert-
dismissible"><button type="button" class="close" data-dismiss="alert" aria-
hidden="true">×</button>', '</div>');
if (isset($error_upload)) { echo '<div class="alert alert-danger alert-
dismissible"> <button type="button" class="close" data-dismiss="alert" aria-
hidden="true">×</button>' . $error_upload . '</div>';
}
echo form_open_multipart('sumur/add');
?>
<div class="form-group">
<label>Nama Sumur</label>
<input name="nama" placeholder="Nama Sumur" type="text" class="form-control">
</div>
<div class="form-group">
<label>Latitude</label>
<input id="Latitude" name="latitude" placeholder="Latitude" type="text" class="form-control">
</div>
<div class="form-group">
<label>Longitude</label>
<input name="longitude" id="Longitude" placeholder="Longitude" class="form-control">
</div>
<div class="form-group">
<label>Gambar</label>
<input type="file" name="gambar" class="form-control" required>
</div>
<div class="form-group">
<label>Marker</maker>
<select name="marker" class="form-control">
<option value="">--Pilih--</option>
<option value="[Link]">Marker 1</option>
<option value="[Link]">Marker 2</option>
<option value="[Link]">Marker 3</option>
</select>
</div>
<div>
<button type="submit" class="btn btn-info">Simpan</button>
<button type="reset" class="btn btn-success">Reset</button>
</div>
<?php
echo form_close(); ?>
</div>
</div>
</div>
</div>
</div>
<script>
var peta1 = [Link]('[Link]
IiwiYSI6ImNpejY4NXVycTA2emYycXBndHRqcmZ3N3gifQ.rJcFIG214AriISLbB6B5aw', {
attribution: 'Map data © <a href="[Link] contributors, ' +
'<a href="[Link] ' +
'Imagery © <a href="[Link]
id: 'mapbox/streets-v11'
});
var baseLayers = {
"Grayscale": peta1,
"Satelite": peta2,
"Streets": peta3
};
[Link](baseLayers).addTo(map);
var curLocation=[0,0];
if (curLocation[0]==0 && curLocation[1]==0) {
curLocation =[-1.7912605, 116.42311];
}
[Link](false);
var marker = new [Link](curLocation, {
draggable:'true'
});
[Link]('dragend', function(event) {
var position = [Link]();
[Link](position,{
draggable : 'true'
}).bindPopup(position).update();
$("#Latitude").val([Link]);
$("#Longitude").val([Link]).keyup();
});
$("#Latitude, #Longitude").change(function(){
var position =[parseInt($("#Latitude").val()), parseInt($("#Longitude").val())];
[Link](position, {
draggable : 'true'
}).bindPopup(position).update();
[Link](position);
});
[Link](marker);
</script>
$this->model_sumur->edit($data);
$this->session->set_flashdata('pesan', 'Data Berhasil diperbarui !!!');
redirect('sumur');
}
$data = array(
'id_sumur'=>$id_sumur,
'nama' => $this->input->post('nama'),
'latitude' => $this->input->post('latitude'),
'longitude' => $this->input->post('longitude'),
'marker' => $this->input->post('marker'),
);
$this->model_sumur->edit($data);
$this->session->set_flashdata('pesan', 'Data Berhasil diperbarui !!!');
redirect('sumur');
}
$data = array(
'judul' => 'edit Data',
'sumur' => $this->model_sumur->detail($id_sumur),
'content' => 'sumur/edit'
);
$this->load->view('layout/viewunion', $data, FALSE);
}
<div class="card-body">
<div class="row">
<div class="col-sm-7">
<!-- peta -->
<div id="map" style="width: 100%; height: 600px;"></div>
<!-- end peta -->
</div>
<div class="col-sm-5">
<?php
echo validation_errors('<div class="alert alert-warning alert-
dismissible"><button type="button" class="close" data-dismiss="alert" aria-
hidden="true">×</button>', '</div>');
if (isset($error_upload)) { echo '<div class="alert alert-danger alert-
dismissible"> <button type="button" class="close" data-dismiss="alert" aria-
hidden="true">×</button>' . $error_upload . '</div>';
}
echo form_open_multipart('sumur/edit/' . $sumur->id_sumur);
?>
<div class="form-group">
<label>Nama Sumur</label>
<input name="nama" value="<?= $sumur->nama ?>" type="text" class="form-control">
</div>
<div class="form-group">
<label>Latitude</label>
<input id="Latitude" value="<?= $sumur->latitude ?>" name="latitude" type="text" class="form-
control">
</div>
<div class="form-group">
<label>Longitude</label>
<input name="longitude" id="Longitude" value="<?= $sumur->longitude ?>" class="form-control">
</div>
<div class="form-group">
<label>Gambar</label>
<img src="<?= base_url('assets/gambar/'.$sumur->gambar) ?>" width="120px">
</div>
<div class="form-group">
<label>Ganti Gambar</label>
<input type="file" name="gambar" class="form-control" required>
</div>
<div class="form-group">
<label>Marker</maker>
<select name="marker" class="form-control">
<option value="<?= $sumur->marker ?>"><?= $sumur->marker ?></option>
<option value="[Link]">Marker 1</option>
<option value="[Link]">Marker 2</option>
<option value="[Link]">Marker 2</option>
</select>
</div>
<div>
<button type="submit" class="btn btn-info">Simpan</button>
<button type="reset" class="btn btn-success">Reset</button>
</div>
<?php
echo form_close(); ?>
</div>
</div>
</div>
<script>
var peta1 = [Link]('[Link]
IiwiYSI6ImNpejY4NXVycTA2emYycXBndHRqcmZ3N3gifQ.rJcFIG214AriISLbB6B5aw', {
attribution: 'Map data © <a href="[Link] contributors, ' +
'<a href="[Link] ' +
'Imagery © <a href="[Link]
id: 'mapbox/streets-v11'
});
var baseLayers = {
"Grayscale": peta1,
"Satelite": peta2,
"Streets": peta3
};
var overlays = {};
[Link](baseLayers).addTo(map);
var curLocation=[0,0];
if (curLocation[0]==0 && curLocation[1]==0) {
curLocation = [<?= $sumur->latitude ?>, <?= $sumur->longitude ?>];
}
[Link](false);
var marker = new [Link](curLocation, {
draggable:'true'
});
[Link]('dragend', function(event) {
var position = [Link]();
[Link](position,{
draggable : 'true'
}).bindPopup(position).update();
$("#Latitude").val([Link]);
$("#Longitude").val([Link]).keyup();
});
$("#Latitude, #Longitude").change(function(){
var position =[parseInt($("#Latitude").val()), parseInt($("#Longitude").val())];
[Link](position, {
draggable : 'true'
}).bindPopup(position).update();
[Link](position);
});
[Link](marker);
</script>
8. Mengaktifkan tombol edit dengan memodifikasi koding [Link]
(application/views/sumur/[Link])berikut;
Menjadi
danger" onclick="return confirm('Apakah Anda Yakin Ingin Hapus Data ini..?')"><i class="fas fa-trash"></i></a>
Menjadi
danger" onclick="return confirm('Apakah Anda Yakin Ingin Hapus Data ini..?')"><i class="fas fa-trash"></i></a>
6. Double klik tombol delete di menu sumur , dan pastikan datanya berhasil dihapus
f. Menampilkan Data Di Peta
1. Buka Halaman [Link] di dalam Folder Controller
(Application/controller/[Link])
2. Tambahkan koding berikut di dalam function construct halaman [Link]
Cek hasilnya
7. Buka link [Link]
8. Klik layerControl dan pilih Layer Sumur
1. Buka PgAdmin
2. Login
Isi satu baris sebagai penanda apakah postgresql dengan webgis sudah terkoneksi atau belum.
6. Klik kanan tbl_jalur_evakuasiscriptsinsert scripts
1. Buka Vscode
2. Buat Halaman di dalam Folder Model (exs: Model_evakuasi.php)
3. Isi dengan koding berikut;
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Model_evakuasi extends CI_Model { // nama class harus sesuai dengan nama file
$this->db->select('*');
$this->db->from('tbl_jalur_evakuasi');// Tabel yang digunakan
$this->db->order_by('id_jalur_evakuasi', 'desc');// Id yang di tabel
return $this->db->get()->result();
}
}
8. Copy dan paste koding berikut ke halaman [Link] yang di dalam folder evakuasi
<div class="card-body">
<table class="table table-bordered text-sm" id="example1">
<thead class="text-center">
<tr>
<th>No</th>
<th>Nama</th>
<th>Warna</th>
<th>Gambar</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php $no = 1;
foreach ($evakuasi as $key => $value) { ?>
<tr>
<td><?= $no++ ?></td>
<td><?= $value->nama?></td>
<td><?= $value->warna?></td>
<script>
$(function() {
$("#example1").DataTable({
"responsive": true,
"autoWidth": false,
});
$('#example2').DataTable({
"paging": true,
"lengthChange": false,
"searching": false,
"ordering": true,
"info": true,
"autoWidth": false,
"responsive": true,
});
});
</script>
Selanjutnya meng aktifkan menu Jalur Evakuasi di halaman [Link]
9. Modifikasi koding berikut;
<li class="nav-item">
<a href="../layout/[Link]" class="nav-link">
<i class="far fa-circle nav-icon"></i>
<p>Top Navigation + Sidebar</p>
</a>
</li>
Menjadi
<li class="nav-item">
<a href="<?=base_url('evakuasi')?>" class="nav-link">
<i class="far fa-circle nav-icon"></i>
<p>Jalur Evakuasi</p>
</a>
</li>
10. Refresh link [Link]
11. Double klik menu Jalur Evakuasi dan pastikan hasimya seperti berikut
Tahapan selajutnya adalah membuat tool add data. Namun sebelumnya, perlu diinstall plugin
color picker dan leaflet-drawing. Berikut langkah-langkahnya.
1. Copy dan paste koding berikut di halaman [Link]
<!-- Bootstrap Color Picker -->
<link rel="stylesheet" href="<?=base_url()?>assets/template/plugins/bootstrap-colorpicker/css/[Link]">
<!-- bootstrap color picker -->
<script src="<?=base_url()?>assets/template/plugins/bootstrap-colorpicker/js/[Link]"></script>
<div class="col-sm-5">
<?php
echo validation_errors('<div class="alert alert-warning alert-
dismissible"><button type="button" class="close" data-dismiss="alert" aria-
hidden="true">×</button>', '</div>');
if (isset($error_upload)) { echo '<div class="alert alert-danger alert-
dismissible"> <button type="button" class="close" data-dismiss="alert" aria-
hidden="true">×</button>' . $error_upload . '</div>';
}
echo form_open_multipart('evakuasi/add');
?>
<div class="form-group">
<label>Nama Jalur Evakuasi</label>
<input name="nama" placeholder="Nama Jalur Evakuasi" type="text" class="form-control">
</div>
<div class="form-group">
<label>GeoJSON</label>
<textarea name="geojson" rows="4" class="form-control"></textarea>
</div>
<div class="form-group">
<label>Warna </label>
<div class="input-group my-colorpicker2">
<input type="text" name="warna" class="form-control">
<div class="input-group-append">
<span class="input-group-text"><i class="fas fa-square"></i></span>
</div>
</div>
</div>
<div class="form-group">
<label>Gambar</label>
<input type="file" name="gambar" class="form-control" required>
</div>
<div>
<button type="submit" class="btn btn-info">Simpan</button>
<button type="reset" class="btn btn-success">Reset</button>
</div>
<?php
echo form_close(); ?>
</div>
</div>
</div>
</div>
</div>
<script>
var peta1 = [Link]('[Link]
IiwiYSI6ImNpejY4NXVycTA2emYycXBndHRqcmZ3N3gifQ.rJcFIG214AriISLbB6B5aw', {
attribution: 'Map data © <a href="[Link] contributors, ' +
'<a href="[Link] ' +
'Imagery © <a href="[Link]
id: 'mapbox/streets-v11'
});
zoom: 4,
layers: [peta2]
});
var baseLayers = {
"Grayscale": peta1,
"Satelite": peta2,
"Streets": peta3
};
var overlays = {
};
[Link](baseLayers).addTo(map);
//membuat draw
[Link]('draw:created', function(event) {
var layer = [Link];
var feature = [Link] = [Link] || {};
[Link] = [Link] || "Feature";
var props = [Link] = [Link] || {};
[Link](layer);
$("[name=geojson]").html([Link]([Link]()));
});
//edit draw
[Link]('draw:edited', function(e) {
$("[name=geojson]").html([Link]([Link]()));
});
//delete draw
[Link]('draw:deleted', function(e) {
$("[name=geojson]").html([Link]([Link]()));
});
</script>
<script>
$(function() {
$('.my-colorpicker2').on('colorpickerChange', function(event) {
$('.my-colorpicker2 .fa-square').css('color', [Link]());
});
})
</script>
$data = array(
'id_jalur_evakuasi'=>$id_jalur_evakuasi,
'nama' => $this->input->post('nama'),
'warna' => $this->input->post('warna'),
'geojson' => $this->input->post('geojson'),
);
$this->model_evakuasi->edit($data);
$this->session->set_flashdata('pesan', 'Data Berhasil diperbarui !!!');
redirect('evakuasi');
}
$data = array(
'judul' => 'edit Data',
'evakuasi' => $this->model_evakuasi->detail($id_jalur_evakuasi),
'content' => 'evakuasi/edit'
);
$this->load->view('layout/viewunion', $data, FALSE);
}
<div class="col-sm-5">
<?php
echo validation_errors('<div class="alert alert-warning alert-
dismissible"><button type="button" class="close" data-dismiss="alert" aria-
hidden="true">×</button>', '</div>');
<div class="form-group">
<label>Nama Jalur Evakuasi</label>
<input name="nama" value="<?= $evakuasi->nama ?>" type="text" class="form-control">
</div>
<div class="form-group">
<label>GeoJSON</label>
<textarea name="geojson" rows="4" class="form-control"><?= $evakuasi->geojson ?></textarea>
</div>
<div class="form-group">
<label>Warna </label>
<div class="input-group my-colorpicker2">
<input type="text" name="warna" value="<?= $evakuasi->warna ?>" class="form-control">
<div class="input-group-append">
<span class="input-group-text"><i class="fas fa-square"></i></span>
</div>
</div>
</div>
<div class="form-group">
<label>Gambar</label>
<img src="<?= base_url('assets/gambar/'.$evakuasi->gambar) ?>" width="120px">
</div>
<div class="form-group">
<label>Ganti Gambar</label>
<input type="file" name="gambar" class="form-control" >
</div>
<div>
<button type="submit" class="btn btn-info">Simpan</button>
<button type="reset" class="btn btn-success">Reset</button>
</div>
<?php
echo form_close(); ?>
</div>
</div>
</div>
</div>
</div>
<script>
var peta1 = [Link]('[Link]
IiwiYSI6ImNpejY4NXVycTA2emYycXBndHRqcmZ3N3gifQ.rJcFIG214AriISLbB6B5aw', {
attribution: 'Map data © <a href="[Link] contributors, ' +
'<a href="[Link] ' +
'Imagery © <a href="[Link]
id: 'mapbox/streets-v11'
});
var baseLayers = {
"Grayscale": peta1,
"Satelite": peta2,
"Streets": peta3
};
var overlays = { };
[Link](baseLayers).addTo(map);
//membuat draw
[Link]('draw:created', function(event) {
var layer = [Link];
var feature = [Link] = [Link] || {};
[Link] = [Link] || "Feature";
var props = [Link] = [Link] || {};
[Link](layer);
$("[name=geojson]").html([Link]([Link]()));
});
//edit draw
[Link]('draw:edited', function(e) {
$("[name=geojson]").html([Link]([Link]()));
});
//delete draw
[Link]('draw:deleted', function(e) {
$("[name=geojson]").html([Link]([Link]()));
});
[Link]([Link]());
</script>
<script>
$(function() {
$('.my-colorpicker2').on('colorpickerChange', function(event) {
$('.my-colorpicker2 .fa-square').css('color', [Link]());
});
})
</script>
Selanjutnya meng aktifkan tombol edit dengan memodifikasi koding [Link] yang didalam
folder evakuasi.
danger" onclick="return confirm('Apakah Anda Yakin Ingin Hapus Data ini..?')"><i class="fas fa-trash"></i></a>
Menjadi
danger" onclick="return confirm('Apakah Anda Yakin Ingin Hapus Data ini..?')"><i class="fas fa-trash"></i></a>
6. Double klik tombol delete di menu evakuasi , dan pastikan datanya berhasil
dihapus
Cek hasilnya
7. Buka link [Link]
8. Klik layerControl dan pilih Layer Jalur Evakuasi
1. Buka PgAdmin
2. Login
1. Buka Vscode
2. Buat Halaman di dalam Folder Model (exs: Model_kebakaran.php)
3. Isi dengan koding berikut;
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Model_kebakaran extends CI_Model { // nama class harus sesuai dengan nama file
8. Copy dan paste koding berikut ke halaman [Link] yang di dalam folder evakuasi
<div class="card-body">
<table class="table table-bordered text-sm" id="example1">
<thead class="text-center">
<tr>
<th>No</th>
<th>Lokasi</th>
<th>Luas</th>
<th>Warna</th>
<th>Gambar</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php $no = 1;
foreach ($kebakaran as $key => $value) { ?>
<tr>
<td><?= $no++ ?></td>
<td><?= $value->lokasi?></td>
<td><?= $value->luas?></td>
<td><?= $value->warna?></td>
<td><img src="<?= base_url('assets/gambar/' . $value->gambar) ?>"Width="100px"></td>
<td class="text-center">
<a href="<?= base_url() ?>" class="btn btn-sm btn-warning"><i class="fas fa-
edit"></i></a>
<a href="<?= base_url() ?>" class="btn btn-sm btn-
danger" onclick="return confirm('Apakah Anda Yakin Ingin Hapus Data ini..?')"><i class="fas fa-
trash"></i></a>
<a href="<?= base_url() ?>" class="btn btn-sm btn-success"><i class="fas fa-
plus"></i> </a>
</td>
</tr>
<?php } ?>
</tbody>
</table>
</div>
<script>
$(function() {
$("#example1").DataTable({
"responsive": true,
"autoWidth": false,
});
$('#example2').DataTable({
"paging": true,
"lengthChange": false,
"searching": false,
"ordering": true,
"info": true,
"autoWidth": false,
"responsive": true,
});
});
</script>
$config['image_library'] = 'gd2';
$config['source_image'] = './assets/gambar/' . $upload_data['uploads']['file_name'];
$this->load->library('image_lib', $config);
$data = array(
'lokasi' => $this->input->post('lokasi'),
'luas' => $this->input->post('luas'),
'warna' => $this->input->post('warna'),
'geojson' => $this->input->post('geojson'),
'gambar' => $upload_data['uploads']['file_name'],
);
$this->model_kebakaran->add($data);
$this->session->set_flashdata('pesan', 'Data Berhasil Disimpan !!!');
redirect('kebakaran');
}
}
$data = array(
'judul' => 'Add Data',
'content' => 'kebakaran/add'
);
$this->load->view('layout/viewunion', $data, FALSE);
}
9. Buka folder kebakaran, buat halaman [Link].
10. Copy dan paste kan koding berikut ke dalam halaman [Link]
<div class="card-body">
<div class="row">
<div class="col-sm-7">
<!-- peta -->
<div id="map" style="width: 100%; height: 600px;"></div>
<!-- end peta -->
</div>
<div class="col-sm-5">
<?php
echo validation_errors('<div class="alert alert-warning alert-
dismissible"><button type="button" class="close" data-dismiss="alert" aria-
hidden="true">×</button>', '</div>');
if (isset($error_upload)) { echo '<div class="alert alert-danger alert-
dismissible"> <button type="button" class="close" data-dismiss="alert" aria-
hidden="true">×</button>' . $error_upload . '</div>';
}
echo form_open_multipart('kebakaran/add');
?>
<div class="form-group">
<label>Lokasi</label>
<input name="lokasi" placeholder="Lokasi Kebakaran" type="text" class="form-
control">
</div>
<div class="form-group">
<label>Luas</label>
<input name="luas" placeholder="Luas Kebakaran" type="text" class="form-control">
</div>
<div class="form-group">
<label>GeoJSON</label>
<textarea name="geojson" rows="4" class="form-control"></textarea>
</div>
<div class="form-group">
<label>Warna </label>
<div class="input-group my-colorpicker2">
<input type="text" name="warna" class="form-control">
<div class="input-group-append">
<span class="input-group-text"><i class="fas fa-square"></i></span>
</div>
</div>
</div>
<div class="form-group">
<label>Gambar</label>
<div>
<button type="submit" class="btn btn-info">Simpan</button>
<button type="reset" class="btn btn-success">Reset</button>
</div>
<?php
echo form_close(); ?>
</div>
</div>
</div>
</div>
</div>
<script>
var peta1 = [Link]('[Link]
yJ1IjoibWFwYm94IiwiYSI6ImNpejY4NXVycTA2emYycXBndHRqcmZ3N3gifQ.rJcFIG214AriISLbB6B5aw', {
attribution: 'Map data © <a href="[Link] contr
ibutors, ' +
'<a href="[Link] ' +
'Imagery © <a href="[Link]
id: 'mapbox/streets-v11'
});
var baseLayers = {
"Grayscale": peta1,
"Satelite": peta2,
"Streets": peta3
};
var overlays = {
};
[Link](baseLayers).addTo(map);
//membuat draw
[Link]('draw:created', function(event) {
var layer = [Link];
var feature = [Link] = [Link] || {};
[Link] = [Link] || "Feature";
var props = [Link] = [Link] || {};
[Link](layer);
$("[name=geojson]").html([Link]([Link]()));
});
//edit draw
[Link]('draw:edited', function(e) {
$("[name=geojson]").html([Link]([Link]()));
});
//delete draw
[Link]('draw:deleted', function(e) {
$("[name=geojson]").html([Link]([Link]()));
});
</script>
<script>
$(function() {
$('.my-colorpicker2').on('colorpickerChange', function(event) {
$('.my-colorpicker2 .fa-square').css('color', [Link]());
});
})
</script>
11. Selanjutnya mengaktifkan koding menu Add Data dengan memodifikasi koding
yang berada di halaman [Link] (Application/views/kebakaran/[Link])
<a href="<?= base_url() ?>" class="btn btn-sm btn-success"><i class="fas fa-
plus"></i> </a>
Menjadi
$config['image_library'] = 'gd2';
$config['source_image'] = './assets/gambar/' . $upload_data['uploads']['file_name'];
$this->load->library('image_lib', $config);
$data = array(
'id_kebakaran'=>$id_kebakaran,
'lokasi' => $this->input->post('lokasi'),
'luas' => $this->input->post('luas'),
'warna' => $this->input->post('warna'),
'geojson' => $this->input->post('geojson'),
'gambar' => $upload_data['uploads']['file_name'],
);
$this->model_kebakaran->edit($data);
$this->session->set_flashdata('pesan', 'Data Berhasil diperbarui !!!');
redirect('kebakaran');
}
$data = array(
'id_kebakaran'=>$id_kebakaran,
'lokasi' => $this->input->post('lokasi'),
'luas' => $this->input->post('luas'),
'warna' => $this->input->post('warna'),
'geojson' => $this->input->post('geojson')
);
$this->model_kebakaran->edit($data);
$this->session->set_flashdata('pesan', 'Data Berhasil diperbarui !!!');
redirect('kebakaran');
}
$data = array(
'judul' => 'edit Data',
'kebakaran' => $this->model_kebakaran->detail($id_kebakaran),
'content' => 'kebakaran/edit'
);
$this->load->view('layout/viewunion', $data, FALSE);
}
<div class="col-sm-5">
<?php
echo validation_errors('<div class="alert alert-warning alert-
dismissible"><button type="button" class="close" data-dismiss="alert" aria-
hidden="true">×</button>', '</div>');
if (isset($error_upload)) { echo '<div class="alert alert-danger alert-
dismissible"> <button type="button" class="close" data-dismiss="alert" aria-
hidden="true">×</button>' . $error_upload . '</div>';
}
echo form_open_multipart('kebakaran/edit/'.$kebakaran->id_kebakaran);
?>
<div class="form-group">
<label>Lokasi</label>
<input name="lokasi" value="<?= $kebakaran->lokasi ?>" type="text" class="form-control">
</div>
<div class="form-group">
<label>Luas</label>
<input name="luas" value="<?= $kebakaran->luas ?>" type="text" class="form-control">
</div>
<div class="form-group">
<label>GeoJSON</label>
<textarea name="geojson" rows="4" class="form-control"><?= $kebakaran->geojson ?></textarea>
</div>
<div class="form-group">
<label>Warna </label>
<div class="input-group my-colorpicker2">
<input type="text" name="warna" value="<?= $kebakaran->warna ?>" class="form-control">
<div class="input-group-append">
<span class="input-group-text"><i class="fas fa-square"></i></span>
</div>
</div>
</div>
<div class="form-group">
<label>Gambar</label>
<img src="<?= base_url('assets/gambar/'.$kebakaran->gambar) ?>" width="120px">
</div>
<div class="form-group">
<label>Ganti Gambar</label>
<input type="file" name="gambar" class="form-control" >
</div>
<div>
<button type="submit" class="btn btn-info">Simpan</button>
<button type="reset" class="btn btn-success">Reset</button>
</div>
<?php
echo form_close(); ?>
</div>
</div>
</div>
</div>
</div>
<script>
var peta1 = [Link]('[Link]
IiwiYSI6ImNpejY4NXVycTA2emYycXBndHRqcmZ3N3gifQ.rJcFIG214AriISLbB6B5aw', {
attribution: 'Map data © <a href="[Link] contributors, ' +
'<a href="[Link] ' +
'Imagery © <a href="[Link]
id: 'mapbox/streets-v11'
});
var baseLayers = {
"Grayscale": peta1,
"Satelite": peta2,
"Streets": peta3
};
[Link](baseLayers).addTo(map);
//membuat draw
[Link]('draw:created', function(event) {
var layer = [Link];
var feature = [Link] = [Link] || {};
[Link] = [Link] || "Feature";
var props = [Link] = [Link] || {};
[Link](layer);
$("[name=geojson]").html([Link]([Link]()));
});
//edit draw
[Link]('draw:edited', function(e) {
$("[name=geojson]").html([Link]([Link]()));
});
//delete draw
[Link]('draw:deleted', function(e) {
$("[name=geojson]").html([Link]([Link]()));
});
[Link]([Link]());
</script>
<script>
$(function() {
$('.my-colorpicker2').on('colorpickerChange', function(event) {
$('.my-colorpicker2 .fa-square').css('color', [Link]());
});
})
</script>
Selanjutnya meng aktifkan tombol edit dengan memodifikasi koding [Link] yang didalam
folder kebakaran.
danger" onclick="return confirm('Apakah Anda Yakin Ingin Hapus Data ini..?')"><i class="fas fa-trash"></i></a>
Menjadi
<a href="<?= base_url('kebakaran/delete/' . $value->id_kebakaran) ?>" class="btn btn-sm btn-
danger" onclick="return confirm('Apakah Anda Yakin Ingin Hapus Data ini..?')"><i class="fas fa-trash"></i></a>
6. Double klik tombol delete di menu Area Kebakaran , dan pastikan datanya
berhasil dihapus
12. Buka halaman peta [Link], copy dan pastekan koding berikut;
var kebakaran = new [Link]();
13. Masih di halaman peta [Link], copy dan pastekan koding berikut;
"Area Kebakaran": kebakaran
14. Masih di halaman peta [Link], copy dan pastekan koding berikut;
<?php foreach ($kebakaran as $key => $value) { ?>
kebakaran = [Link](<?= $value->geojson; ?>, {
style: {
color: 'white',
dashArray: '3',
lineCap: 'butt',
lineJoin: 'miter',
fillColor: '<?= $value->warna ?>',
fillOpacity: 1.0,
},
}).addTo(kebakaran);
[Link](function(layer) {
[Link]("<table class='table table-striped table-bordered table-condensed'>" +
"<tr><th>Lokasi</th><td>" + "<?= $value->lokasi?>" + "</td></tr>" +
"<tr><th>Luas</th><td>" + "<?= $value->luas?>" + "</td></tr>" +
"<tr><th>Warna</th><td>" + "<?= $value->warna?>" + "</td></tr>" +
"<tr><th>Foto</th><td>" + "<img src='<?= base_url('assets/gambar/' . $value-
>gambar) ?>'width='180px'>" + "</td></tr>" +
"<table>");
});
<?php } ?>
Cek hasilnya
15. Buka link [Link]
16. Klik layerControl dan pilih Layer Area Kebakaran
b. [Link]
1. Buka halaman [Link]. Hapus isi koding
<ul class="navbar-nav ml-auto">
.
.
. Hapus
.
.
.
</ul>
</ul>
</nav>
<!-- /.navbar -->
<li class="nav-item">
<a href="" class="nav-link">
<i class="nav-icon fas fa-th"></i>
<p>
Widgets
<span class="right badge badge-danger"></span>
</p>
</a>
</li>
<li class="nav-item has-treeview menu-open">
<a href="#" class="nav-link active">
<i class="nav-icon fas fa-database"></i>
<p>
Database
<i class="fas fa-angle-left right"></i>
<span class="badge badge-info right">3</span>
</p>
</a>
<ul class="nav nav-treeview">
<li class="nav-item">
<a href="<?=base_url('sumur')?>" class="nav-link">
<i class="far fa-circle nav-icon"></i>
<p>Sumur</p>
</a>
</li>
<li class="nav-item">
<a href="<?=base_url('evakuasi')?>" class="nav-link">
<i class="far fa-circle nav-icon"></i>
<p>Jalur Evakuasi</p>
</a>
</li>
<li class="nav-item">
<a href="<?=base_url('kebakaran')?>" class="nav-link">
</ul>
</li>
</ul>
</nav>
<!-- /.sidebar-menu -->
</div>
<!-- /.sidebar -->
</aside>
<div class="card-tools">
<button type="button" class="btn btn-tool" data-card-
widget="collapse" data-toggle="tooltip" title="Collapse">
<i class="fas fa-minus"></i></button>
<button type="button" class="btn btn-tool" data-card-
widget="remove" data-toggle="tooltip" title="Remove">
<i class="fas fa-times"></i></button>
</div>
</div>
B. Memperbaiki Tampilan
a. Logo
Logo yang digunakan dengan sama dengan logo plugin activefire
1. Dowload logo activefire di link
[Link]
2. Simpan didalam folder assets dengan nama [Link]
3. Modifikasi koding berikut
<a href="../../[Link]" class="brand-link elevation-4">
<img src="<?=base_url()?>assets/template/dist/img/[Link]" alt="AdminLTE Logo" class="brand-
image img-circle elevation-3" style="opacity: .8">
<span class="brand-text font-weight-light">AdminLTE 3</span>
</a>
Menjadi
<a href="<?=base_url()?>" class="brand-link elevation-4">
<img src="<?=base_url()?>assets/[Link]" alt="AdminLTE Logo" class="brand-image img-circle elevation-
3" style="opacity: .8">
<span class="brand-text font-weight-light">Ina Active Fire</span>
</a>
<li class="nav-item">
<a href="" class="nav-link">
<i class="nav-icon fas fa-th"></i>
<p>
Widgets
<span class="right badge badge-danger"></span>
</p>
</a>
</li>
Menajdi
<li class="nav-item">
<a href="<?=base_url()?>" class="nav-link">
<i class="nav-icon fas fa-map"></i>
<p> Maps
<span class="right badge badge-danger"></span>
</p>
</a>
</li>
Referensi
[Link]
[Link]
[Link]
[Link]
[Link]
[Link]
[Link]
kisspng-compass-rose-cardinal-direction-wicw-compass-
[Link] (900×920) ([Link])
[Link]
[Link]