Advertisement
kura2yamato

helper run driver

Sep 21st, 2017
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.73 KB | None | 0 0
  1. <?php
  2. //==============HELPER UNTUK RUN DRIVER===
  3. //==============untuk CI 3 only===========
  4.  
  5. if( ! function_exists('driver_run')){
  6.     function driver_run($driver_core, $driver_name, $func_name='executed', $params=array()){
  7.             $result=array('code'=>203,'data'=>false,'messages'=>'');
  8.             log_info_table('driver',array($driver_core, $driver_name, $func_name));
  9.  
  10. /* no drivers core =============================== */
  11.             $core_file=ucfirst(strtolower($driver_core));
  12.             if(!is_file(APPPATH.'libraries/'.$core_file.'/'.$core_file.".php")){
  13.                     $result['messages']=!is_local()?'no core driver file':'buatlah core drivernya di:'.APPPATH.'libraries/'.$core_file.'/'.$core_file.".php";
  14.                     $result['error']=100;
  15.                     return $result;
  16.             }
  17.  
  18.             $CI =& get_instance();
  19.  
  20.             // log_add("run driver: $driver_core| $driver_name| $func_name");
  21.             // log_add("parameter:".count($params));
  22. /*  Kita butuh file config khusus untuk daftar driver  */
  23.             $config_file='driver_gw';
  24.             if(!is_file(APPPATH.'config/'.$config_file.".php")){
  25.                     // log_add('buatlah confignya di:'.APPPATH.'config/'.$config_file.".php",'error');
  26.                     $result['messages']=!is_local()?'no config file':'buatlah confignya di:'.APPPATH.'config/'.$config_file.".php\nbuatlah array confignya \$config['drivers_{$driver_core}']=array('{$driver_name}');" ;
  27.                     $result['error']=101;
  28.                     return $result;
  29.             }
  30.  
  31. /*  Kita butuh config parameter untuk daftar driver  */
  32.            
  33.             //$CI->config->load($config_file);
  34.             //$valid_drivers= $CI->config->item('drivers_'.$driver_core);
  35.             $valid_drivers = config_site('drivers_'.$driver_core);
  36.             if(is_null($valid_drivers)||$valid_drivers===false){
  37.                     // log_add("buatlah array confignya \$config['drivers_{$driver_core}']=array();",'error');
  38.                     $result['error']=102;
  39.                     $result['messages']=!is_local()?'no config':"buatlah array confignya \$config['drivers_{$driver_core}']=array();" ;
  40.                     return $result;
  41.             }
  42.            
  43. /*  Kita butuh nilai parameter yang sesuai untuk daftar driver  */     
  44.             if(!in_array($driver_name,$valid_drivers)){
  45.                     // log_add("buatlah nilai '{$driver_name}' pada array confignya \$config['drivers_{$driver_core}']=array('{$driver_name}');",'error');
  46.                     $result['error']=103;
  47.                     $result['messages']=!is_local()?'no config value': "buatlah nilai '{$driver_name}' pada array confignya \$config['drivers_{$driver_core}']=array('{$driver_name}');" ;
  48.                     return $result;
  49.             }
  50.  
  51. /* keberadaan file driver ====================================  */
  52.             $core_file=ucfirst(strtolower($driver_core));
  53.             $driver_file=ucfirst(strtolower($driver_core))."_".strtolower($driver_name);
  54.             if(!is_file(APPPATH.'libraries/'.$core_file.'/drivers/'.$driver_file.".php")){
  55.                     // log_add('buatlah file drivernya di:'.APPPATH.'libraries/'.$core_file.'/drivers/'.$driver_file.".php",'error');
  56.                     $result['error']=104;
  57.                     $result['messages']=!is_local()?'no driver':  'buatlah file drivernya di:'.APPPATH.'libraries/'.$core_file.'/drivers/'.$driver_file.".php" ;
  58.                     return $result;
  59.             }
  60.            
  61.            
  62.             $CI->load->driver($driver_core);
  63.  
  64. /*  Kita butuh functionnya ==================================  */
  65.             if( !method_exists($CI->{$driver_core}->{$driver_name}, $func_name) ){
  66.                     // log_add('buatlah fungsi '.$func_name.'($params) pada file drivernya di:'.APPPATH.'libraries/'.$core_file.'/drivers/'.$driver_file.".php",'error');
  67.                     $result['error']=105;
  68.                     $result['messages']=!is_local()?'no function': 'buatlah fungsi '.$func_name.'($params) pada file drivernya di:'.APPPATH.'libraries/'.$core_file.'/drivers/'.$driver_file.".php" ;
  69.                     return $result;
  70.             }
  71.             else{
  72.                 $result=$CI->{$driver_core}->{$driver_name}->{$func_name}($params);
  73.                 if(!isset($result['error'])){
  74.                     $result['error']=false;
  75.                 }
  76.                
  77.                 if(!isset($result['messages'])){
  78.                     $result['messages']='success';
  79.                 }
  80.                
  81.                 if(!isset($result['code'])){
  82.                     $result['code']=200;
  83.                 }
  84.                
  85.             }
  86.        
  87.             return $result ;
  88.     }
  89.    
  90. }
  91.  
  92. //==============mungkin bisa buat CI 4??=========
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement