language.php (1516B)
1 <?php 2 class ControllerCommonLanguage extends Controller { 3 public function index() { 4 $this->load->language('common/language'); 5 6 $data['action'] = $this->url->link('common/language/language', '', $this->request->server['HTTPS']); 7 8 $data['code'] = $this->session->data['language']; 9 10 $this->load->model('localisation/language'); 11 12 $data['languages'] = array(); 13 14 $results = $this->model_localisation_language->getLanguages(); 15 16 foreach ($results as $result) { 17 if ($result['status']) { 18 $data['languages'][] = array( 19 'name' => $result['name'], 20 'code' => $result['code'] 21 ); 22 } 23 } 24 25 if (!isset($this->request->get['route'])) { 26 $data['redirect'] = $this->url->link('common/home'); 27 } else { 28 $url_data = $this->request->get; 29 30 unset($url_data['_route_']); 31 32 $route = $url_data['route']; 33 34 unset($url_data['route']); 35 36 $url = ''; 37 38 if ($url_data) { 39 $url = '&' . urldecode(http_build_query($url_data, '', '&')); 40 } 41 42 $data['redirect'] = $this->url->link($route, $url, $this->request->server['HTTPS']); 43 } 44 45 return $this->load->view('common/language', $data); 46 } 47 48 public function language() { 49 if (isset($this->request->post['code'])) { 50 $this->session->data['language'] = $this->request->post['code']; 51 } 52 53 if (isset($this->request->post['redirect'])) { 54 $this->response->redirect($this->request->post['redirect']); 55 } else { 56 $this->response->redirect($this->url->link('common/home')); 57 } 58 } 59 }