<?php class Region_model extends CI_Model { public function _consruct(){ parent::_construct(); } public function getRegionData($region_id='',$view=''){ $cond = (!empty($view))?" status IN ($view) ":" status != '2' "; $cond .= (!empty($region_id))?" AND id='$region_id' ":""; $regionData = $this->db->query("SELECT * FROM region WHERE $cond"); if(!empty($regionData)){ if(empty($region_id)){ $regionData = $regionData->result_array(); foreach ($regionData AS $key => $region) { $regData = langTranslator($region['id'],'REG',''); $regionData[$key] = array_merge($regionData[$key],$regData); } } else { $regData = langTranslator($region_id,'REG',''); $regionData = $regionData->row_array(); $regionData = array_merge($regionData,$regData); } return json_decode(json_encode($regionData)); } else { return 0; } } public function createRegion($regionData = array()){ if(empty($regionData)){ return 0; } $status = $this->db->insert('region',array('region_icon'=>$regionData['region_icon'], 'region_lat'=>$regionData['region_lat'], 'region_lng'=>$regionData['region_lng'])); if($status){ $region_id = $this->db->insert_id(); $languages = getLanguages(); if(!empty($languages)){ $insertArr = array(); foreach ($languages AS $lang) { if(!isset($regionData['name_'.$lang]) || empty($regionData['name_'.$lang])){ continue; } $insertArr[] = array('region_id'=>$region_id, 'language_code'=>$lang, 'region_name'=>$regionData['name_'.$lang]); } if(!empty($insertArr)){ $this->db->insert_batch('translator_region',$insertArr); } } } return $status; } public function updateRegion($region_id = '', $regionData = array()){ if(empty($region_id) || empty($regionData)){ return 0; } $languages = getLanguages(); if(!empty($languages)){ $insertArr = array(); foreach ($languages AS $lang) { if(!isset($regionData['name_'.$lang]) || empty($regionData['name_'.$lang])){ unset($regionData['name_'.$lang]); continue; } $insertArr[] = array('region_id'=>$region_id, 'language_code'=>$lang, 'region_name'=>$regionData['name_'.$lang]); unset($regionData['name_'.$lang]); } $this->db->delete('translator_region',array('region_id'=>$region_id)); if(!empty($insertArr)){ $this->db->insert_batch('translator_region',$insertArr); } } $status = $this->db->update('region',$regionData,array('id'=>$region_id)); return $status; } public function changeStatus($region_id = '', $status = '0'){ if(empty($region_id)){ return 0; } $status = $this->db->update('region',array('status'=>$status), array('id'=>$region_id)); return $status; } public function getlocalityData($region_id = '',$locality_id = '', $status = '0'){ $cond = "status IN (".$status.") "; $cond .= (!empty($region_id))?" AND region_id='$region_id' ":""; $cond .= (!empty($locality_id))?" AND id='$locality_id' ":""; $locData = $this->db->query("SELECT *, id AS locality_id FROM locality WHERE ".$cond); if(!empty($locData)){ if(empty($locality_id)){ $locData = $locData->result_array(); foreach ($locData AS $key => $locality) { $regData = langTranslator($locality['id'],'LOC',''); $locData[$key] = array_merge($locData[$key],$regData); } return json_decode(json_encode($locData)); } else if(!empty($locData = $locData->row_array())) { $regData = langTranslator($locality_id,'LOC',''); $locData = array_merge($locData,$regData); return json_decode(json_encode($locData)); } } return; } } ?>