X-Git-Url: http://git.dj3c1t.com/?a=blobdiff_plain;f=mw%2Fenv%2Fmodules%2Fmw_env_data.php;h=e6cb0000f531689dbbeee33bf58d4c5e451f894f;hb=ed558d720ebf6985290c99297f5b1d2c86d1f60a;hp=fb1a5bd4e982df5753d560e62c35ef617b5c413f;hpb=0ada6496e6c552c473a5816734b38896ccdd345b;p=mtweb diff --git a/mw/env/modules/mw_env_data.php b/mw/env/modules/mw_env_data.php index fb1a5bd..e6cb000 100644 --- a/mw/env/modules/mw_env_data.php +++ b/mw/env/modules/mw_env_data.php @@ -14,4 +14,161 @@ } + class mw_data extends empty_class{ + + function call_default($inst, $method_name, $arguments){ + return $this->call_data_auto_crud($method_name, $arguments); + } + + } + + class mw_sgbd{ + + var $sgbd_impl; + var $env; + + function mw_sgbd($sgbd_impl, $env){ + $this->sgbd_impl = $sgbd_impl; + $this->env = $env; + } + + function extention_ok(){ + return $this->sgbd_impl->extention_ok($this->env); + } + + function authentication_required(){ + return $this->sgbd_impl->authentication_required(); + } + + function connect($host, $base, $user, $password){ + return $this->sgbd_impl->connect($host, $base, $user, $password); + } + + function select_db($db_name){ + return $this->sgbd_impl->select_db($db_name); + } + + # --------------------------------------------------------------------------------- + # SQL + # + + function desc_table($table_name){ + if(!method_exists($this->sgbd_impl, "desc_table")) return false; + return $this->sgbd_impl->desc_table( + ($prefix_codes = array_keys($this->env->bdd("table_prefix"))) ? + str_replace($prefix_codes, array_values($this->env->bdd("table_prefix")), $table_name) + : $table_name + ); + } + + function table_exists($table_name){ + if(!method_exists($this->sgbd_impl, "table_exists")) return false; + return $this->sgbd_impl->table_exists( + ($prefix_codes = array_keys($this->env->bdd("table_prefix"))) ? + str_replace($prefix_codes, array_values($this->env->bdd("table_prefix")), $table_name) + : $table_name + ); + } + + function field_exists($table_name, $field_name){ + if(!method_exists($this->sgbd_impl, "field_exists")) return false; + return $this->sgbd_impl->field_exists( + ( + $prefix_codes = array_keys($this->env->bdd("table_prefix"))) ? + str_replace($prefix_codes, array_values($this->env->bdd("table_prefix")), $table_name) + : $table_name, + $field_name + ); + } + + function query($sql){ + if(!method_exists($this->sgbd_impl, "query")) return false; + return $this->sgbd_impl->query( + ($prefix_codes = array_keys($this->env->bdd("table_prefix"))) ? + str_replace($prefix_codes, array_values($this->env->bdd("table_prefix")), $sql) + : $sql + ); + } + + function insert_id(){ + if(!method_exists($this->sgbd_impl, "insert_id")) return false; + return $this->sgbd_impl->insert_id(); + } + + function fetch_assoc($rst){ + if(!method_exists($this->sgbd_impl, "fetch_assoc")) return false; + return $this->sgbd_impl->fetch_assoc($rst); + } + + function free_result($rst){ + if(!method_exists($this->sgbd_impl, "")) return false; + return $this->sgbd_impl->free_result($rst); + } + + function close(){ + if(!method_exists($this->sgbd_impl, "")) return false; + return $this->sgbd_impl->close(); + } + + # --------------------------------------------------------------------------------- + # XML + # + + function data_exists($data_path){ + if(!method_exists($this->sgbd_impl, "data_exists")) return false; + return $this->sgbd_impl->data_exists($data_path); + } + + function create_data($data_path){ + if(!method_exists($this->sgbd_impl, "create_data")) return false; + return $this->sgbd_impl->create_data($data_path); + } + + function get_data($data_path, $data_id){ + if(!method_exists($this->sgbd_impl, "get_data")) return false; + return $this->sgbd_impl->get_data($data_path, $data_id); + } + + function open_data($data_path, $FETCH = true){ + if(!method_exists($this->sgbd_impl, "open_data")) return false; + return $this->sgbd_impl->open_data($data_path, $FETCH); + } + + function fetch_data($dh){ + if(!method_exists($this->sgbd_impl, "fetch_data")) return false; + return $this->sgbd_impl->fetch_data($dh); + } + + function add_data($data_path, $data, $index = null){ + if(!method_exists($this->sgbd_impl, "add_data")) return false; + return $this->sgbd_impl->add_data($data_path, $data, $index); + } + + function last_index($dh){ + if(!method_exists($this->sgbd_impl, "last_index")) return false; + return $this->sgbd_impl->last_index($dh); + } + + function set_data($data_path, $data_id, $data){ + if(!method_exists($this->sgbd_impl, "set_data")) return false; + return $this->sgbd_impl->set_data($data_path, $data_id, $data); + } + + function del_data($data_path, $data_id){ + if(!method_exists($this->sgbd_impl, "del_data")) return false; + return $this->sgbd_impl->del_data($data_path, $data_id); + } + + function close_data($dh){ + if(!method_exists($this->sgbd_impl, "close_data")) return false; + return $this->sgbd_impl->close_data($dh); + } + + function remove_data($data_path){ + if(!method_exists($this->sgbd_impl, "remove_data")) return false; + return $this->sgbd_impl->remove_data($data_path); + } + + } + ?> \ No newline at end of file