static function check_widget($widget) { if (!MValidate::ext_name($widget)) { return false; } if (!mapi_include_abs_path($widget, 'widgets/' . $widget)) { return false; } $widget_function = 'mwidget_' . strtolower($widget); if (!function_exists($widget_function)) { return false; } $markdown = self::markdown('widget', $widget); if (!isset($markdown['title']) || !strlen($markdown['title']) > 1) { return false; } if (!isset($markdown['version']) || !strlen($markdown['version']) > 0) { return false; } return true; }
protected function valid($extension) { $this->set_type(); if (!$extension) { return false; } if (!MValidate::ext_name($extension)) { return false; } if (!in_array($extension, $this->get_availables())) { return false; } return true; }