self::error(_ERROR_DISALLOWED);\r
return;\r
}\r
- \r
+\r
/**\r
- * Admin::PluninAdminPagehead()\r
- * Output pluginadmin page head\r
+ * Admin::action_PluginAdmin()\r
+ * Output pluginadmin\r
*\r
+ * @param string $skinContents\r
* @param string $extrahead\r
* @return void\r
*/\r
- static public function PluninAdminPagehead($extrahead = '')\r
+ static public function action_PluginAdmin($skinContents, $extrahead = '')\r
{\r
self::$extrahead .= $extrahead;\r
- self::$skin->parse('pagehead');\r
- return;\r
- }\r
- \r
- /**\r
- * Admin::PluninAdminPagefoot()\r
- * Output pluginadmin page foot\r
- *\r
- * @param void\r
- * @return void\r
- */\r
- static public function PluninAdminPagefoot()\r
- {\r
- self::$skin->parse('pagefoot');\r
+ self::$skin->parse('pluginadmin', $skinContents);\r
return;\r
}\r
\r
public $plugin; // ref. to plugin object\r
public $bValid; // evaluates to true when object is considered valid\r
public $admin; // ref to an admin object\r
- \r
+\r
+ private $skinContents; // PluginAdmin contents\r
+ private $extrahead; // extrahead\r
+\r
public function __construct($pluginName)\r
{\r
global $manager, $DIR_LIBS;\r
public function start($extraHead = '')\r
{\r
global $CONF;\r
- $extrahead = '<base href="' . Entity::hsc($CONF['AdminURL']) . '" />' . "\n";\r
- Admin::PluninAdminPagehead($extrahead);\r
+ $this->extrahead = $extraHead . '<base href="' . Entity::hsc($CONF['AdminURL']) . '" />' . "\n";\r
+ ob_start();\r
return;\r
}\r
\r
public function end()\r
{\r
$this->AddTicketByJS();\r
- Admin::PluninAdminPagefoot();\r
+ $contents = ob_get_contents();\r
+ ob_end_clean();\r
+ $this->skinContents = '<%pagehead%>' . $contents . '<%pagefoot%>';\r
+ Admin::action_PluginAdmin($this->skinContents, $this->extrahead);\r
return;\r
}\r
\r
\r
// retrieve contents\r
$contents = FALSE;\r
- if ( $type != 'fileparse' )\r
+ if ( $type == 'pluginadmin' )\r
{\r
- $contents = $this->getContentFromDB($type);\r
+ $contents = $path;\r
}\r
- else if ( $path !== '' && i18n::strpos(realpath($path), realpath("$DIR_NUCLEUS/../")) == 0 )\r
+ else\r
{\r
- $contents = $this->getContentFromFile($path);\r
+ if ( $type != 'fileparse' )\r
+ {\r
+ $contents = $this->getContentFromDB($type);\r
+ }\r
+ else if ( $path !== '' && i18n::strpos(realpath($path), realpath("$DIR_NUCLEUS/../")) == 0 )\r
+ {\r
+ $contents = $this->getContentFromFile($path);\r
+ }\r
}\r
// use base skin if this skin does not have contents\r
if ( $contents === FALSE )\r