Register Module

Masalah register modul dan menu pada aplikasi berbasis GTFW menjadi hal yang perlu diperhatikan karena modul dan menu yang Anda buat akan dapat ditampilkan ketika telah ter-register pada tabel-tabel yang ada di GTFW.

  • Untuk pembuatan menu ada dua tabel yang berperan yaitu:
    • gtfw_menu, untuk mendaftarkan menu yang akan mengakses modul.
    • gtfw_group_menu, untuk menentukan hak akses group terhadap menu.
  • Untuk pembuatan modul ada dua tabel yang berperan yaitu:
    • gtfw_module, untuk mendaftarkan modul.
    • gtfw_group_module, untuk menentukan hak akses group terhadap modul.

Dalam aplikasi berbasis GTFW terdapat dua metode untuk user meregisterkan menu dan modul yaitu dengan cara inject db dan register langsung dari aplikasi.

Register Modul dengan Inject DB

Untuk langkah awal, buatlah query insert menu parent ke tabel gtfw_module.

INSERT INTO gtfw_module
SET
Module= 'nama_module',
LabelModule= '[200] View NamaSubModule Html',
SubModule= 'NamaSubModule',
Action= 'View',
Type= 'html',
MenuId = '',
ApplicationId = '200',
AksiId = '1',
LabelAksi = 'View'

Keterangan:

  • Module, nama folder modul harus sesuai dengan nama yang ada di field Module.
  • LabelModule, sebagai label module, format : [‘’application_id’‘] ‘’action’’ ‘’nama sub module’’ ‘’type file’’ (ditulis tanpa tanda petik dan application_id bisa di lihat di config/application.conf.php).
  • SubModule, nama file yang di registerkan harus sesuai dengan nama sub module dan tidak case-sensitive.
  • Action, action file sama dengan field Action. Seperti ViewListLatihanSatu, action file View.
  • Type, type file sama dengan field type.
  • Field MenuId diisikan null terlebih dahulu karena belum membuat menu.
  • ApplicationId, berisikan application_id yang ada di aplikasi GTFW yaitu di direktori application/config/application.conf.php.
  • AksiId, field AksiId merupakan FK dari table gtfw_aksi.
  • Field LabelAksi merupakan label yang akan tampil selain label yang ada di table gtfw_aksi pada halaman manajemen group.

Pada aplikasi berbasis GTFW, di setiap module akan memiliki menu, dan di setiap menu terdapat menu parent dan sub menu. Berikutnya, buatlah menu parent dan sub menu di table gtfw_menu.

INSERT INTO gtfw_menu
SET
MenuParentId = '0',
MenuName = 'Modul modul latihan',
MenuDefaultModuleId = '757',
IsShow = 'Yes',
ApplicationId = '200'

Keterangan:

  • 0 adalah angka default untuk menu parent.
  • MenuParent, nama menu parentnya.
  • MenuDefaultModuleId, halaman tujuan ketika menu tersebut di klik.
  • IsShow, menentukan apakah menu ingin ditampilkan atau tidak.
  • ApplicationId diisi dengan application_id yang ada di application/config/application.conf.php.

Selanjutnya membuat sub menu dari menu parent, masih tetap di gtfw_menu.

INSERT INTO gtfw_menu
SET
MenuParentId = 'id menu parent',
MenuName = 'Nama sub menu',
MenuDefaultModuleId = 'id module default',
IsShow = 'Yes',
ApplicationId = '200'

Kembali ke table gtfw_module, isikan field MenuId untuk module yang sebelumnya diregisterkan di table gtfw_module dan sesuaikan dengan value MenuId di table gtfw_menu.

Langkah selanjutnya, masukkan data menu ke tabel gtfw_group_menu untuk memberi hak akses kepada menu-menu yang sudah diregistrasikan.

INSERT INTO gtfw_group_menu
SET
MenuName = '',
GroupId = '',
ParentMenuId = '',
MenuOrder = '',
MenuMenuId = ''

Keterangan:

  • MenuName, nama modul yang ditampilkan di halaman.
  • Groupid, berisikan id group dari tabel gtfw_group untuk memberikan hak akses ke group yang dituju.
  • ParentMenuId, berisikan id menu dari tabel itu sendiri (gtfw_group), untuk default parent menu adalah 0.
  • MenuMenuId berasal dari id di table gtfw_menu.

Langkah yang sama, masukkan ModuleId ke tabel gtfw_group_module untuk memberi hak akses kepada module yang sudah diregistrasikan.

INSERT INTO gtfw_group_module
SET
GroupId = '',
ModuleId= ''

Register Modul dengan Aplikasi

Buka aplikasi dengan browser, arahkan url ke direktori application anda. Masuk dengan username ‘admin’ dan password ‘admin’.

halaman home

Gambar 1. Tampilan halaman home ketika user berhasil login

untuk melakukan insert ke table gtfw_menu dan gtfw_module, masuk ke halaman manajemen modul, seperti gambar di bawah ini :

halaman manajemen module

Gambar 2. Tampilan halaman manajemen module

Klik tombol detil pada modul yang sudah dibuat sebelumnya. Perbedaan halaman register module tanpa hak akses per aksi adalah adanya kolom Aksi untuk register module dengan hak akses per aksi. Pilihlah aksi yang menggambarkan penggunaan module tersebut.

halaman register module

Gambar 3. Tampilan Halaman Register Modul

Selanjutnya untuk memberi hak akses per aksi pada modul-modul yang akan tampil sesuai dengan hak akses yang login, masuk ke menu Group, dengan langkah ini user akan melakukan insert ke table gtfw_group_menu dan gtfw_group_module.

halaman manajemen group

Gambar 4. Tampilan Manajemen Group

Cari group yang ingin di beri hak akses modul dan klik Ubah. Pilih modul yang akan diberi hak akses dan beri tanda check pada fieldnya, setelah itu Simpan.

Proses register modul sudah selesai. Selanjutnya logout dari aplikasi dan login kembali.