d_seo_module.php (2569B)
1 <?php 2 class ModelExtensionModuleDSEOModule extends Model { 3 private $codename = 'd_seo_module'; 4 5 /* 6 * Return list of installed SEO extensions. 7 */ 8 public function getInstalledSEOExtensions() { 9 $this->load->model('setting/setting'); 10 11 $installed_extensions = array(); 12 13 $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "extension ORDER BY code"); 14 15 foreach ($query->rows as $result) { 16 $installed_extensions[] = $result['code']; 17 } 18 19 $installed_seo_extensions = $this->model_setting_setting->getSetting('d_seo_extension'); 20 $installed_seo_extensions = isset($installed_seo_extensions['d_seo_extension_install']) ? $installed_seo_extensions['d_seo_extension_install'] : array(); 21 22 $seo_extensions = array(); 23 24 $files = glob(DIR_APPLICATION . 'controller/extension/' . $this->codename . '/*.php'); 25 26 if ($files) { 27 foreach ($files as $file) { 28 $seo_extension = basename($file, '.php'); 29 30 if (in_array($seo_extension, $installed_extensions) && in_array($seo_extension, $installed_seo_extensions)) { 31 $seo_extensions[] = $seo_extension; 32 } 33 } 34 } 35 36 return $seo_extensions; 37 } 38 39 /* 40 * Return list of languages. 41 */ 42 public function getLanguages() { 43 $this->load->model('localisation/language'); 44 45 $languages = $this->model_localisation_language->getLanguages(); 46 47 foreach ($languages as $key => $language) { 48 if (VERSION >= '2.2.0.0') { 49 $languages[$key]['flag'] = 'language/' . $language['code'] . '/' . $language['code'] . '.png'; 50 } else { 51 $languages[$key]['flag'] = 'view/image/flags/' . $language['image']; 52 } 53 } 54 55 return $languages; 56 } 57 58 /* 59 * Return list of stores. 60 */ 61 public function getStores() { 62 $this->load->model('setting/store'); 63 64 $result = array(); 65 66 $result[] = array( 67 'store_id' => 0, 68 'name' => $this->config->get('config_name') 69 ); 70 71 $stores = $this->model_setting_store->getStores(); 72 73 if ($stores) { 74 foreach ($stores as $store) { 75 $result[] = array( 76 'store_id' => $store['store_id'], 77 'name' => $store['name'] 78 ); 79 } 80 } 81 82 return $result; 83 } 84 85 /* 86 * Sort Array By Column. 87 */ 88 public function sortArrayByColumn($arr, $col, $dir = SORT_ASC) { 89 $sort_col = array(); 90 $sort_key = array(); 91 92 foreach ($arr as $key => $row) { 93 $sort_key[$key] = $key; 94 95 if (isset($row[$col])) { 96 $sort_col[$key] = $row[$col]; 97 } else { 98 $sort_col[$key] = ''; 99 } 100 } 101 102 array_multisort($sort_col, $dir, $sort_key, SORT_ASC, $arr); 103 104 return $arr; 105 } 106 }