1: | <?php
|
2: | namespace Opencart\Catalog\Controller\Common;
|
3: | |
4: | |
5: | |
6: | |
7: |
|
8: | class Language extends \Opencart\System\Engine\Controller {
|
9: | |
10: | |
11: |
|
12: | public function index(): string {
|
13: | $this->load->language('common/language');
|
14: |
|
15: | $url_data = $this->request->get;
|
16: |
|
17: | if (isset($url_data['route'])) {
|
18: | $route = $url_data['route'];
|
19: | } else {
|
20: | $route = $this->config->get('action_default');
|
21: | }
|
22: |
|
23: | unset($url_data['route']);
|
24: | unset($url_data['_route_']);
|
25: | unset($url_data['language']);
|
26: |
|
27: | $url = '';
|
28: |
|
29: | if ($url_data) {
|
30: | $url .= '&' . urldecode(http_build_query($url_data));
|
31: | }
|
32: |
|
33: |
|
34: | $language_id = $this->config->get('config_language_id');
|
35: |
|
36: | $data['languages'] = [];
|
37: |
|
38: | $this->load->model('localisation/language');
|
39: |
|
40: | $results = $this->model_localisation_language->getLanguages();
|
41: |
|
42: | foreach ($results as $result) {
|
43: | $this->config->set('config_language_id', $result['language_id']);
|
44: |
|
45: | $data['languages'][] = [
|
46: | 'name' => $result['name'],
|
47: | 'code' => $result['code'],
|
48: | 'image' => $result['image'],
|
49: | 'href' => $this->url->link($route, 'language=' . $result['code'] . $url, true)
|
50: | ];
|
51: | }
|
52: |
|
53: | $this->config->set('config_language_id', $language_id);
|
54: |
|
55: | $data['code'] = $this->config->get('config_language');
|
56: |
|
57: | return $this->load->view('common/language', $data);
|
58: | }
|
59: | }
|
60: | |