plugin_dir = $plugin_dir; $this->plugin_name = $plugin_name; if (!file_exists($this->get_config_file_dir())) { mkgetdir($this->get_config_file_dir()); } if (!file_exists($this->get_config_filename())) { $this->save_config(); } } public function load_config() { $x = file_get_contents($this->get_config_filename()); if ($x!==false) { $c = unserialize($x); $this->config = $c; } } public function save_config() { file_put_contents($this->get_config_filename(), serialize($this->config)); } private function get_config_file_dir() { return $GLOBALS['conf']['local_data_dir'].'/plugins/'; } private function get_config_filename() { return $this->get_config_file_dir().basename($this->plugin_dir).'.dat'; } public function __set($key, $value) { // need filters ?? $this->config[$key] = $value; } public function __get($key) { return isset($this->config[$key])?$this->config[$key]:null; } public function plugin_admin_menu($menu) { array_push($menu, array('NAME' => $this->plugin_name, 'URL' => get_admin_plugin_menu_link($this->plugin_dir.'/admin.php') ) ); return $menu; } } ?>