X-Git-Url: http://git.dj3c1t.com/?a=blobdiff_plain;ds=sidebyside;f=mw%2Fapp%2Fdata%2Fimpl%2Fmw_xml.php;fp=mw%2Fapp%2Fdata%2Fimpl%2Fmw_xml.php;h=67f244743996a50ef391d81b345fded08684be3d;hb=8da84cf3aa4d10d91f19b6df06ce4c5e9fcb79da;hp=3d09caffbafab08fd23468c27ceeade2718717c6;hpb=5abc9d5fca28ef86dee6148bb96780d1a7b670f3;p=mtweb diff --git a/mw/app/data/impl/mw_xml.php b/mw/app/data/impl/mw_xml.php index 3d09caf..67f2447 100644 --- a/mw/app/data/impl/mw_xml.php +++ b/mw/app/data/impl/mw_xml.php @@ -1,67 +1,61 @@ init_xml_env( - isset($params["host"]) ? $params["host"] : "content/data/xml", - isset($params["base"]) ? $params["base"] : "mw", - isset($params["user"]) ? $params["user"] : "", - isset($params["password"]) ? $params["password"] : "" + public function name(){ + return "XML"; + } + + public function default_params(){ + return array( + "host" => "content/data/xml", + "base" => "mw", + "user" => "", + "password" => "" ); - $this->EXTENTION_OK = true; - } - - public function extention_ok(&$env){ - if($this->EXTENTION_OK){ - if( - file_exists($env->app_file("data/impl/xml/mw_xml_data.php")) - && file_exists($env->app_file("data/impl/xml/mw_xml_data_handler.php")) - ){ - if(!class_exists("mw_xml_data")) require_once $env->app_file("data/impl/xml/mw_xml_data.php"); - if(!class_exists("mw_xml_data_handler")) require_once $env->app_file("data/impl/xml/mw_xml_data_handler.php"); - if( - class_exists("mw_xml_data") - && class_exists("mw_xml_data_handler") - ){ - $this->xml_data = new mw_xml_data($this->host, $this->base); - } - else $this->EXTENTION_OK = false; - } - else $this->EXTENTION_OK = false; - } - return $this->EXTENTION_OK; } public function authentication_required(){ return false; } - public function sgbd_name(){ - return "XML"; - } - - public function init_xml_env($host, $base, $user, $password){ - $this->host = $host.($host && substr($host, -1) != "/" ? "/" : ""); - $this->base = $base.($base && substr($base, -1) != "/" ? "/" : ""); - $this->user = $user; - $this->password = $password; + public function prepare_params($params){ + if(isset($params["host"])){ + $params["host"] .= $params["host"] && substr($params["host"], -1) != "/" ? "/" : ""; + } + if(isset($params["base"])){ + $params["base"] .= $params["base"] && substr($params["base"], -1) != "/" ? "/" : ""; + } $this->data_handlers = array(); $this->last_data_handler = 0; + return $params; + } + + public function validate_extention(){ + if( + !file_exists($this->env->app_file("data/impl/xml/mw_xml_data.php")) + || !file_exists($this->env->app_file("data/impl/xml/mw_xml_data_handler.php")) + ){ + return false; + } + if(!class_exists("mw_xml_data")) require_once $this->env->app_file("data/impl/xml/mw_xml_data.php"); + if(!class_exists("mw_xml_data_handler")) require_once $this->env->app_file("data/impl/xml/mw_xml_data_handler.php"); + if( + !class_exists("mw_xml_data") + || !class_exists("mw_xml_data_handler") + ){ + return false; + } + $this->xml_data = new mw_xml_data($this->host, $this->base); + return true; } public function connect($host, $base, $user, $password){ if($host.$base && is_dir($host.$base) && is_writable($host.$base)){ - $this->init_xml_env($host, $base, $user, $password); $this->xml_data = new mw_xml_data($this->host, $this->base); return true; }