/** * Mise à jour de la base de données * @access private */ private function database() { if (isset($this->version)) { if (file_exists($this->load_sql_file($this->version))) { if (magixglobal_model_db::create_new_sqltable($this->load_sql_file($this->version))) { if ($this->version === '2.4.2') { $data = parent::s_catalog_img(); if ($data != null) { foreach ($data as $key) { parent::u_catalog_product_image($key['imgcatalog'], $key['idcatalog']); } } } elseif ($this->version === '2.6.0') { $data = parent::s_old_member(); if ($data != null) { foreach ($data as $key) { parent::transfertProfil($key['keyuniqid']); } parent::dropTable("mc_admin_member"); } } app_model_smarty::getInstance()->display('upgrade/request/success_table.tpl'); } } } }
/** * Selectionne les membres avec un statut plus grand que 3 (user admin et user) */ function s_members_user_states() { $sql = 'SELECT m.pseudo,m.email,p.perms from mc_admin_member m LEFT JOIN mc_admin_perms p ON(m.idadmin = p.idadmin) WHERE p.perms >= 3'; return magixglobal_model_db::layerDB()->select($sql); }
function s_public_required_input_in_forms($getforms) { $sql = 'SELECT i.idinput,i.label,i.type,i.nameinput,i.required,i.size,i.maxlength,i.value FROM mc_forms_input AS i WHERE i.idforms = :getforms AND required=1'; return magixglobal_model_db::layerDB()->select($sql, array(':getforms' => $getforms)); }
/** * instance backend_controller_plugins with singleton */ public static function layerDB() { if (!isset(self::$layerDB)) { self::$layerDB = new magixcjquery_magixdb_layer(); } return self::$layerDB; }
/** * Insert un nouvel utilisateur */ private function insert_user() { if (isset($this->pseudo_admin) and isset($this->passwd_admin)) { parent::i_new_employee(magixglobal_model_cryptrsa::uuid_generator(), $this->lastname_admin, $this->firstname_admin, $this->pseudo_admin, $this->email_admin, $this->passwd_admin); parent::i_employee_profile(magixglobal_model_db::layerDB()->lastInsert(), 1); app_model_smarty::getInstance()->display('user/request/success_add.tpl'); } }
/** * @access public * @static * Retourne la liste des langues disponible */ public static function s_fetch_lang() { $sql = 'SELECT l.idlang, l.iso, l.language FROM mc_lang AS l WHERE l.active_lang = 1 ORDER BY l.idlang'; return magixglobal_model_db::layerDB()->select($sql); }
/** * * Sélectionne la métas suivant l'attribut et le niveau * @param string $attribute * @param integer $level * @param integer $idmetas * @param string $codelang */ protected function s_public_rewrite($attribute, $level, $idmetas, $iso) { $sql = 'SELECT m.*,lang.iso FROM mc_metas_rewrite AS m LEFT JOIN mc_lang AS lang USING(idlang) WHERE m.attribute = :attribute AND m.level = :level AND m.idmetas = :idmetas AND lang.iso = :iso'; return magixglobal_model_db::layerDB()->selectOne($sql, array(':attribute' => $attribute, ':level' => $level, ':idmetas' => $idmetas, ':iso' => $iso)); }
/** * @access protected * Sélectionne les pages enfants du parent * @param integer $get_page_p * @todo replace usages and remove */ public static function s_child_page($get_page_p) { $sql = 'SELECT p.idpage,p.idcat_p,p.title_page,p.uri_page,lang.iso FROM mc_cms_pages AS p JOIN mc_lang AS lang ON(p.idlang = lang.idlang) WHERE p.idcat_p = :get_page_p AND sidebar_page = 1 ORDER BY p.order_page'; return magixglobal_model_db::layerDB()->select($sql, array(':get_page_p' => $get_page_p)); }
/** * Retourne la liste des utilisateurs * @return array */ protected function c_users() { $sql = 'SELECT role.role_name AS ROLE_USER,COUNT(emp.id_admin) AS COUNT_USER FROM mc_admin_employee AS emp JOIN mc_admin_access_rel as access ON(access.id_admin = emp.id_admin) JOIN mc_admin_role_user as role ON(role.id_role = access.id_role) GROUP BY role.id_role'; return magixglobal_model_db::layerDB()->select($sql); }
/** * Load data home by lang * @access protected * @param string $iso * @return array */ protected function s_data_home($iso) { $select = 'SELECT h.subject,h.content,h.metatitle,h.metadescription,h.idlang, lang.iso FROM mc_page_home AS h JOIN mc_lang AS lang ON(h.idlang = lang.idlang) WHERE lang.iso = :iso'; return magixglobal_model_db::layerDB()->selectOne($select, array(':iso' => $iso)); }
/** * @access private * install_db */ private function install_db() { if (!file_exists($this->dirConfig() . 'config.php')) { app_model_smarty::getInstance()->display('database/request/file_exist.tpl'); } else { if (file_exists($this->load_sql_file())) { magixglobal_model_db::create_new_sqltable($this->load_sql_file()); app_model_smarty::getInstance()->display('database/request/success_table.tpl'); } } }
/** * @access public * @static * Sélectionne toutes les autres langues * @param integer $getlang */ public static function s_exclude_language_data($getlang) { $sql = 'SELECT lang.idlang,lang.iso,lang.language FROM mc_lang AS lang WHERE idlang != :getlang'; return magixglobal_model_db::layerDB()->select($sql, array(':getlang' => $getlang)); }
/** * @access protected * Insertion d'un employee dans la table des accès * @param $id_admin * @param $id_role */ protected function i_employee_profile($id_admin, $id_role) { $sql = 'INSERT INTO mc_admin_access_rel (id_admin,id_role) VALUE (:id_admin,:id_role)'; magixglobal_model_db::layerDB()->insert($sql, array(':id_admin' => $id_admin, ':id_role' => $id_role)); }
/** * @param $iso * @return array */ protected function g_links($iso) { $query = 'SELECT link.* FROM mc_plugins_blocklink as link JOIN mc_lang AS lang ON(link.idlang = lang.idlang) WHERE lang.iso = :iso ORDER BY lorder'; return magixglobal_model_db::layerDB()->select($query, array(':iso' => $iso)); }
/** * @param $type * @param $str * @param $idlang * @return array */ protected function search($type, $str, $idlang) { $limit = 10; if ($type == 'cat') { $query = "SELECT\n\t\t\t\t\t\t`c`.`idclc` as parent,\n\t\t\t\t\t\t`c`.`pathclibelle` as uriparent,\n\t\t\t\t\t\t`c`.`clibelle` as nameparent,\n\t\t\t\t\t\t`s`.`idcls` as id,\n\t\t\t\t\t\t`s`.`slibelle` as name,\n\t\t\t\t\t\t`s`.`pathslibelle` as uri\n\t\t\t\t\tFROM `mc_catalog_c` as `c`\n\t\t\t\t\tLEFT JOIN `mc_catalog_s` as `s`\n\t\t\t\t\tON `c`.`idclc` = `s`.`idclc`\n\t\t\t\t\tWHERE\n\t\t\t\t\t\t`c`.`idlang` = :idlang\n\t\t\t\t\tAND\n\t\t\t\t\t\t`s`.`slibelle` LIKE '%" . addslashes($str) . "%'\n\t\t\t\t\tORDER BY `s`.`idcls`"; $query .= $limit ? " LIMIT " . $limit : ""; $data1 = magixglobal_model_db::layerDB()->select($query, array(':idlang' => $idlang)); $query = "SELECT\n\t\t\t\t\t\t`c`.`idclc` as id,\n\t\t\t\t\t\t`c`.`clibelle` as name,\n\t\t\t\t\t\t`c`.`pathclibelle` as uri\n\t\t\t\t\tFROM `mc_catalog_c` as `c`\n\t\t\t\t\tWHERE\n\t\t\t\t\t\t`c`.`idlang` = :idlang\n\t\t\t\t\tAND\n\t\t\t\t\t\t`c`.`clibelle` LIKE '%" . addslashes($str) . "%'\n\t\t\t\t\tORDER BY `c`.`idclc`"; $query .= $limit ? " LIMIT " . $limit : ""; $data2 = magixglobal_model_db::layerDB()->select($query, array(':idlang' => $idlang)); return array_merge($data1, $data2); } elseif ($type == 'cms') { $query = "SELECT\n\t\t\t\t\t\t\t`p`.`idpage` as id,\n\t\t\t\t\t\t\t`p`.`title_page` as name,\n\t\t\t\t\t\t\t`p`.`uri_page` as uri,\n\t\t\t\t\t\t\t`p`.`idcat_p` as parent,\n\t\t\t\t\t\t\t`parent`.`uri_page` as `uriparent`,\n\t\t\t\t\t\t\t`parent`.`title_page` as `nameparent`\n\t\t\t\t\t\tFROM `mc_cms_pages` as `p`\n\t\t\t\t\t\tLEFT JOIN `mc_cms_pages` as `parent`\n\t\t\t\t\t\tON `p`.`idcat_p` = `parent`.`idpage`\n\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t`p`.`idlang` = :idlang\n\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t`p`.`title_page` LIKE '%" . addslashes($str) . "%'\n\t\t\t\t\t\tORDER BY `p`.`idpage`"; $query .= $limit ? " LIMIT " . $limit : ""; return magixglobal_model_db::layerDB()->select($query, array(':idlang' => $idlang)); } }
/** * @param $id */ protected function d_adv($id) { $query = "DELETE FROM mc_plugins_advantage WHERE idadv = :id"; magixglobal_model_db::layerDB()->delete($query, array(':id' => $id)); }
/** * @access public * retourne un tableau des rôles * @param $id_admin * @return mixed */ public function s_role_data($id_admin) { $sql = 'SELECT * FROM mc_admin_role_user AS role JOIN mc_admin_access_rel AS rel_access ON(role.id_role = rel_access.id_role) WHERE id_admin = :id_admin'; return magixglobal_model_db::layerDB()->select($sql, array(':id_admin' => $id_admin)); }
/** * @access public * @static * Installation des tables mysql du plugin */ public function db_install_table($filename, $displayFile, $plugin_folder = null) { try { if (file_exists($this->load_sql_file($filename))) { if (magixglobal_model_db::create_new_sqltable($this->load_sql_file($filename, $plugin_folder))) { self::assign('refresh_plugins', '<meta http-equiv="refresh" content="3";URL="' . $this->pluginUrl() . '">'); self::display($displayFile); } } } catch (Exception $e) { magixglobal_model_system::magixlog('Error install table ' . $this->pluginName() . ':', $e); } }
/** * Suppression des galeries dans le produit * @param $delete_galery */ protected function d_product_galery($delete_galery) { $sql = 'DELETE FROM mc_catalog_galery WHERE idmicro = :delete_galery'; magixglobal_model_db::layerDB()->delete($sql, array(':delete_galery' => $delete_galery)); }
/** * @param $api * @param $iso * @return array */ protected function getCode($api, $iso) { $query = 'SELECT `list_id` FROM `mc_plugins_mailchimp_list` as ml LEFT JOIN `mc_lang` ON `ml`.`idlang` = `mc_lang`.`idlang` WHERE iso = :iso AND idapi = :api'; return magixglobal_model_db::layerDB()->selectOne($query, array(':iso' => $iso, ':api' => $api)); }
/** * @param $setting_id * @return array */ protected function s_setting_id($setting_id) { $sql = 'SELECT setting_label,setting_value FROM mc_setting WHERE setting_id = :setting_id'; return magixglobal_model_db::layerDB()->selectOne($sql, array(':setting_id' => $setting_id)); }
/** * @param $iso * @return array */ protected function g_advs($iso) { $query = 'SELECT adv.* FROM mc_plugins_advantage as adv JOIN mc_lang AS lang ON(adv.idlang = lang.idlang) WHERE lang.iso = :iso ORDER BY advorder'; return magixglobal_model_db::layerDB()->select($query, array(':iso' => $iso)); }
/** * @return array */ protected function getOp() { $query = "SELECT `day_abbr`,`open_day`,`noon_time`,`open_time`,`close_time`,`noon_start`,`noon_end` FROM `mc_plugins_about_op`"; return magixglobal_model_db::layerDB()->select($query); }
/** * Select all image gallery related to idproduct * @access protected * @param int $idproduct * @return array */ protected static function s_product_gallery($idproduct) { $select = 'SELECT gallery.idmicro,gallery.imgcatalog FROM ( SELECT idcatalog FROM mc_catalog_product WHERE idproduct = :idproduct ) AS cur_p JOIN mc_catalog_galery as gallery ON (cur_p.idcatalog = gallery.idcatalog) ORDER BY gallery.img_order'; return magixglobal_model_db::layerDB()->select($select, array(':idproduct' => $idproduct)); }
/** * @access protected * Select all categories by lang, or by option params sort * @param string $lang_iso * @param string|int $sort_id * @param string $sort_type * @param int $limit * @return array */ protected function s_page_all($lang_iso, $sort_id = null, $sort_type = null, $limit = null) { $where_clause = null; if ($sort_id != null) { $where_clause = 'AND p.idpage'; $where_clause .= $sort_type != 'exclude' ? ' IN (' : ' NOT IN ('; $where_clause .= $sort_id; $where_clause .= ') '; } $limit_clause = null; if (is_int($limit)) { $limit_clause = 'LIMIT ' . $limit; } $select = "SELECT p.idpage,p.title_page,p.uri_page,p.content_page,lang.iso\r\n \tFROM mc_cms_pages AS p\r\n \tJOIN mc_lang AS lang ON(p.idlang = lang.idlang)\r\n \tWHERE lang.iso = :lang_iso AND sidebar_page = 1\r\n \t {$where_clause}\r\n \tORDER BY p.order_page\r\n \t {$limit_clause}"; return magixglobal_model_db::layerDB()->select($select, array(':lang_iso' => $lang_iso)); }
/** * Suppression d'une page d'accueil * @param $delete_home */ protected function d_home($delete_home) { $sql = 'DELETE FROM mc_page_home WHERE idhome = :delete_home'; magixglobal_model_db::layerDB()->delete($sql, array(':delete_home' => $delete_home)); }
/** * Drop Table * @param $table */ protected function dropTable($table) { $sql = array('DROP TABLE ' . $table); magixglobal_model_db::layerDB()->transaction($sql); }
/** * @access protected * Mise à jour des tailles d'image * @param $width * @param $height * @param $img_resizing * @param $id_size_img * @internal param int $num_size * @internal param string $name_size */ protected function u_size_img_config($width, $height, $img_resizing, $id_size_img) { $sql = 'UPDATE mc_config_size_img SET width = :width,height = :height,img_resizing = :img_resizing WHERE id_size_img = :id_size_img'; magixglobal_model_db::layerDB()->update($sql, array(':width' => $width, ':height' => $height, ':img_resizing' => $img_resizing, ':id_size_img' => $id_size_img)); }
/** * @return array */ protected function selectOne() { $query = 'SELECT hp.* FROM mc_plugins_hipay AS hp'; return magixglobal_model_db::layerDB()->selectOne($query); }
/** * @param $attr_name * @return array */ protected function s_config_named_data($attr_name) { $sql = 'SELECT attr_name,status FROM mc_config WHERE attr_name = :attr_name'; return magixglobal_model_db::layerDB()->selectOne($sql, array(':attr_name' => $attr_name)); }