Membuat Aplikasi Klinik #20 - Menyiapkan module untuk admin pendaftaran

Setelah hak akses ke module dibagi - bagi berdasarkan module seperti yang sudah dijelaskan pada artikel sebelumnya tentang Membuat Aplikasi Klinik #19 - Mengatur Hak Akses Module maka selanjutnya disini kita akan terlebih dahulu menyiapkan module untuk role Admin Pendaftaran atau lebih tepatnya bagian Administrasi

Pertama - tama pada folder Anda perlu membuat folder dengan administrasi kemudian selanjutnya buat sebuah file didalamnya dengan nama Navadministrasi.php seperti berikut :


<?php
class Navadministrasi
{
	public function administrasi_sidebar($path='')
	{
		?>
			<!-- Main Sidebar Container -->
			<aside class="main-sidebar sidebar-dark-primary elevation-4">
			    <!-- Brand Logo -->
			    <a href="?page=home" class="brand-link">
			      <img src="<?=$path?>content/web/<?=$this->info['klinik_logo']?>" alt="AdminLTE Logo" class="brand-image img-circle elevation-3" style="opacity: .8">
			      <span class="brand-text font-weight-light"><?=$this->info['klinik_name']?></span>
			    </a>

			    <!-- Sidebar -->
			    <div class="sidebar">
			      <!-- Sidebar user panel (optional) -->
			      <div class="user-panel mt-3 pb-3 mb-3 d-flex">
			        <div class="image">
			          <img src="<?=$path?>themes/adminlte/dist/img/user2-160x160.jpg" class="img-circle elevation-2" alt="User Image">
			        </div>
			        <div class="info">
			          <a href="#" class="d-block">Alexander Pierce</a>
			        </div>
			      </div>

			      <!-- SidebarSearch Form -->
			      <div class="form-inline">
			        <div class="input-group" data-widget="sidebar-search">
			          <input class="form-control form-control-sidebar" type="search" placeholder="Search" aria-label="Search">
			          <div class="input-group-append">
			            <button class="btn btn-sidebar">
			              <i class="fas fa-search fa-fw"></i>
			            </button>
			          </div>
			        </div>
			      </div>

			      <!-- Sidebar Menu -->
			      <nav class="mt-2">
			        <ul class="nav nav-pills nav-sidebar flex-column" data-widget="treeview" role="menu" data-accordion="false">
			          <!-- Add icons to the links using the .nav-icon class
			               with font-awesome or any other icon font library -->
			          <li class="nav-item">
			            <a href="?page=home" class="nav-link active">
			              <i class="nav-icon fas fa-tachometer-alt"></i>
			              <p>
			                Dashboard
			               
			              </p>
			            </a>
			           
			          </li>
			        
			         
			            
			        <li class="nav-item">
			            <a href="#" class="nav-link">
			              <i class="nav-icon fas fa-chart-pie"></i>
			              <p>
			                Pasien
			                <i class="right fas fa-angle-left"></i>
			              </p>
			            </a>
			            <ul class="nav nav-treeview">
			              <li class="nav-item">
			                <a href="?page=semua_pasien" class="nav-link">
			                  <i class="far fa-circle nav-icon"></i>
			                  <p>Semua pasien</p>
			                </a>
			              </li>
			              <li class="nav-item">
			                <a href="?page=pasien_tambah" class="nav-link">
			                  <i class="far fa-circle nav-icon"></i>
			                  <p>Tambah pasien</p>
			                </a>
			              </li>
			             
			            </ul>
			        </li>
			        <li class="nav-item">
			            <a href="?page=antrian" class="nav-link">
			              <i class="nav-icon fas fa-copy"></i>
			              <p>
			                Antrian
			               
			              </p>
			            </a>
			        </li>
			       
			          
			       
			          
			         
			        </ul>
			      </nav>
			      <!-- /.sidebar-menu -->
			    </div>
			    <!-- /.sidebar -->
			  </aside>

					<?php 
	}
}

Kemudian setelahnya Anda perlu memodifikasi file Splautoload.php untuk menmbahkan path administrasi sehingga filenya nanti akan terlihat seperti berikut


spl_autoload_register(function($className)
		{

			$list_direktori = array
			(
				'/',
				'/../../database/',			
				'/../load/',
				'/../auth/',
				'/../load/admin/',
				'/../load/administrasi/',
				'/../auth/',
				

			);
			foreach($list_direktori as $list)
			{
				if(is_readable(__DIR__.$list.$className.'.php'))			{
		
					require_once(__DIR__.$list.$className.'.php');
				}
				
			}

		});


Kemudian pada folder core juga buat sebuah file baru dengan nama Runadministrasi.php


<?php 
class Runadministrasi
{
	public function ModuleAdministrasi($path, $user)
	{
		$this->app->getEmpty('page');
		$this->themes->head($path, $this->app->get('page'));
		$this->themes->css($path);
		$this->themes->admin_nav_header($path);
		$this->themes->administrasi_sidebar($path);
		switch ($this->app->get('page')) 
		{
			case 'home':
				$this->crud->pasien_table_index();
				break;
			case 'semua_pasien':
				$this->crud->pasien_table_index();
				break;
			case 'pasien_tambah':
				$this->crud->pasien_index();
				break;
			case 'pasien_edit':
				$this->crud->pasien_edit_index($this->app->get('pasien_id'));
				break;
			case 'pasien_delete':
				$this->crud->pasien_delete($this->app->get('pasien_id'));
				break;
			case 'pasien_riwayat':
				$this->crud->pasien_riwayat_table_index($this->app->get('pasien_id'));
				$this->crud->pasien_riwayat_modal();
				break;
			case 'pasien_riwayat_tambah':
				$this->crud->pasien_riwayat_index($this->app->get('pasien_id'));
				break;
			case 'pasien_riwayat_delete':
				$this->crud->pasien_riwayat_delete($this->app->get('riwayat_id'));
				break;
			//antrian
			case 'antrian':
				$this->crud->pasien_antrian_index();
				break;
			case 'antrian_menunggu':
				$this->crud->pasien_table_antrian_menunggu();
				break;
			case 'antrian_selesai':
				$this->crud->pasien_table_antrian_selesai();
				break;
			case 'antrian_delete':
				$this->crud->pasien_antrian_delete($this->app->get('antrian_id'));
				break;
			default:
				$this->crud->pasien_table_index();
				break;
		}
		$this->crud->modal_logout();
		$this->themes->footer($path);
		$this->crud->pasien_riwayat_ajax('app/load/ajax/Detailriwayat.php');
	}
}



Kemudian buka file Moduleparsing.php kemudian tambahkan module yang sudah dibuat pada statement untuk role administrasi seperti berikut :


<?php 
class Moduleparsing extends Runadmin
{
	private $user;
	protected function getuser_data($user)
	{
		$this->user = $this->obj2->leftjoin_rolecek($user);
		return $this->user;
	}
	public function Runuser($path=null, $user)
	{
		if(!empty($this->getuser_data($user)))
		{
			switch ($this->user['role_module']){
				case 'admin':
					Moduleparsing::Moduleadmin($path, $this->user);
					break;
				case 'dokter':
					echo '<h1>INI DOKTER</h1>';
					break;
				case 'administrasi':
					Moduleparsing::ModuleAdministrasi($path, $this->user);
					break;
				default:
					echo "ROLE NOT SELECTED !";
					break;
			}
		}
	}

}


Terakhir tambahkan beberapa extends ke file - file yang sebelumnya tersedia diantaranya Runadmin.php


<?php 
class Navadmin extends Navadministrasi
{

<?php 
class Runadmin extends Runadministrasi
{




Selanjutnya : Membuat Aplikasi Klinik #21 - Module Dokter

0 Response to "Membuat Aplikasi Klinik #20 - Menyiapkan module untuk admin pendaftaran"

Post a Comment

Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin