\r
if ( $errorInfo )\r
{\r
- $skin = new SKIN($errorInfo['skinid']);\r
+ $skin =& $manager->getSkin($errorInfo['skinid']);\r
doError($errorInfo['message'], $skin);\r
}\r
\r
echo _ERROR_SKIN;
exit;
}
-$skin = new Skin($skinid, 'AdminActions', 'AdminSkin');
+$skin =& $manager->getSkin($skinid, 'AdminActions', 'AdminSkin');
// check logged-in or pass through
$action = requestVar('action');
/* TODO: this is a bad way... */
sendContentType('text/html', 'admin-' . $action);
- $skin = new Skin(0, 'AdminActions', 'AdminSkin');
+ $skin =& $manager->getSkin(0, 'AdminActions', 'AdminSkin');
if ( $bNeedsLogin )
{
$skin->parse('fileparse', $DIR_SKINS . 'admin/showlogin.skn');
\r
static public function initialize()\r
{\r
- global $CONF, $DIR_LIBS;\r
+ global $CONF, $DIR_LIBS, $manager;\r
\r
/* NOTE: 1. decide which skinid to use */\r
$skinid = $CONF['AdminSkin'];\r
}\r
\r
/* NOTE: 3. initializing each members */\r
- self::$skin = new Skin($skinid, 'AdminActions', 'AdminSkin');\r
+ self::$skin =& $manager->getSkin($skinid, 'AdminActions', 'AdminSkin');\r
self::$action = '';\r
self::$extrahead = '';\r
self::$passvar = '';\r
}\r
elseif ( $id != $CONF['AdminSkin'] )\r
{\r
- self::$skin = new Skin($CONF['AdminSkin'], 'AdminActions');\r
+ self::$skin =& $manager->getSkin($CONF['AdminSkin'], 'AdminActions');\r
if ( self::$skin && self::existsSkinContents('adminerrorpage') )\r
{\r
self::error(_BADACTION . ENTITY::hsc($action));\r
*/\r
static private function action_skineditgeneral()\r
{\r
- global $member;\r
+ global $manager, $member;\r
\r
$skinid = intRequestVar('skinid');\r
\r
$inc_mode = postVar('inc_mode');\r
$inc_prefix = postVar('inc_prefix');\r
\r
- $skin = new Skin($skinid);\r
+ $skin =& $manager->getSkin($skinid);\r
\r
// 1. Some checks\r
if ( !isValidSkinName($name) )\r
*/\r
static private function action_skinupdate()\r
{\r
- global $member;\r
+ global $manager, $member;\r
\r
$skinid = intRequestVar('skinid');\r
$content = trim(postVar('content'));\r
\r
$member->isAdmin() or self::disallow();\r
\r
- $skin = new SKIN($skinid);\r
+ $skin =& $manager->getSKIN($skinid);\r
$skin->update($type, $content);\r
\r
self::action_skinedittype(_SKIN_UPDATED);\r
*/\r
static private function action_skindelete()\r
{\r
- global $member, $manager, $CONF;\r
+ global $manager, $member, $CONF;\r
\r
$skinid = intRequestVar('skinid');\r
\r
*/\r
static private function action_skinclone()\r
{\r
- global $member;\r
+ global $manager, $member;\r
\r
$member->isAdmin() or self::disallow();\r
\r
$skinid = intRequestVar('skinid');\r
\r
// 1. read skin to clone\r
- $skin = new Skin($skinid);\r
+ $skin =& $manager->getSkin($skinid);\r
\r
$name = "{$skin->getName()}_clone";\r
\r
*/\r
static private function action_adminskineditgeneral()\r
{\r
- global $member;\r
+ global $manager, $member;\r
\r
$skinid = intRequestVar('skinid');\r
\r
$inc_mode = postVar('inc_mode');\r
$inc_prefix = postVar('inc_prefix');\r
\r
- $skin = new Skin($skinid, 'AdminActions', 'AdminSkin');\r
+ $skin =& $manager->getSkin($skinid, 'AdminActions', 'AdminSkin');\r
\r
// 1. Some checks\r
if ( !isValidSkinName($name) )\r
*/\r
static private function action_adminskinupdate()\r
{\r
- global $member;\r
- $skinid = intRequestVar('skinid');\r
- $content = trim(postVar('content'));\r
- $type = postVar('type');\r
+ global $manager, $member;\r
+ \r
+ $skinid = intRequestVar('skinid');\r
+ $content = trim(postVar('content'));\r
+ $type = postVar('type');\r
\r
$member->isAdmin() or self::disallow();\r
\r
- $skin = new Skin($skinid, 'Admin', 'AdminSkin');\r
+ $skin =& $manager->getSkin($skinid, 'Admin', 'AdminSkin');\r
$skin->update($type, $content);\r
self::action_adminskinedittype(_SKIN_UPDATED);\r
return;\r
*/\r
static private function action_adminskinclone()\r
{\r
- global $member;\r
+ global $manager, $member;\r
\r
$member->isAdmin() or self::disallow();\r
\r
$skinid = intRequestVar('skinid');\r
\r
// 1. read skin to clone\r
- $skin = new Skin($skinid, 'Admin', 'AdminSkin');\r
+ $skin =& $manager->getSkin($skinid, 'Admin', 'AdminSkin');\r
$name = "{$skin->getName()}_clone";\r
\r
// if a skin with that name already exists:\r
*/\r
static private function action_adminskiniedoimport()\r
{\r
- global $DIR_LIBS, $DIR_SKINS, $member;\r
+ global $DIR_LIBS, $DIR_SKINS, $manager, $member;\r
\r
$member->isAdmin() or self::disallow();\r
\r
$query = "UPDATE %s SET value = %d WHERE name = 'AdminSkin'";\r
$query = sprintf($query, sql_table('config'), $res);\r
DB::execute($query);\r
- $skin = new Skin(0, 'AdminActions', 'AdminSkin');\r
+ $skin =& $manager->Skin(0, 'AdminActions', 'AdminSkin');\r
$skin->parse('importAdmin', $DIR_SKINS . 'admin/defaultimporter.skn');\r
}\r
else\r
*/
public function parse_allowedskinactions()
{
+ global $manager;
+
$type = strtolower(trim(requestVar('type')));
$skinid = intRequestVar('skinid');
if ( !preg_match('#^admin#', $this->skintype) )
{
- $skin = new Skin($skinid);
+ $skin =& $manager->getSkin($skinid);
$tag = 'skinvar';
}
else
{
- $skin = new Skin($skinid, 'AdminActions');
+ $skin =& $manager->getSkin($skinid, 'AdminActions');
$tag = 'adminskinvar';
}
if ( !preg_match('#^admin#', $this->skintype) )
{
- $skin = new Skin($CONF['BaseSkin']);
+ $skin =& $manager->getSkin($CONF['BaseSkin']);
/* TODO: removeaction? */
$template['editaction'] = 'skinedittype';
}
else
{
- $skin = new Skin($CONF['AdminSkin'], 'AdminActions');
+ $skin =& $manager->getSkin($CONF['AdminSkin'], 'AdminActions');
$template['editaction'] = 'adminskinedittype';
/* TODO: removeaction? */
}
*/
public function parse_editskin($type = 'id')
{
+ global $manager;
+
$skinid = intRequestVar('skinid');
if ( !preg_match('#^admin#', $this->skintype) )
{
- $skin = new SKIN($skinid);
+ $skin =& $manager->getSKIN($skinid);
}
else
{
- $skin = new SKIN($skinid, 'AdminActions');
+ $skin =& $manager->getSKIN($skinid, 'AdminActions');
}
switch ( $type )
*/
public function parse_editskintype($stype = 'id')
{
+ global $manager;
+
static $skin = NULL;
static $types = array();
if ( !preg_match('#^admin#', $this->skintype) )
{
- $skin = new Skin($skinid);
+ $skin =& $manager->getSkin($skinid);
}
else
{
- $skin = new Skin($skinid, 'AdminActions');
+ $skin =& $manager->getSkin($skinid, 'AdminActions');
}
$types = $skin->getDefaultTypes();
if ( !preg_match('#^admin#', $this->skintype) )
{
- $skin = new Skin($skinid);
+ $skin =& $manager->getSkin($skinid);
$template['editaction'] = 'skinedittype';
$template['removeaction'] = 'skinremovetype';
}
else
{
- $skin = new Skin($skinid, 'AdminActions');
+ $skin =& $manager->getSkin($skinid, 'AdminActions');
$template['editaction'] = 'adminskinedittype';
$template['removeaction'] = 'adminskinremovetype';
}
}\r
\r
/**\r
+ * Manager::getSkin()\r
* \r
+ * @param integer $skinid ID for skin\r
+ * @param string $action_class action class for handling skin variables\r
+ * @param string $event_identifier identifier for event name\r
+ * @return object instance of Skin class\r
*/\r
- public function &getSkin($skinid, $action_class='', $event_identifier='')\r
+ public function &getSkin($skinid, $action_class='Actions', $event_identifier='Skin')\r
{\r
if ( !array_key_exists($skinid, $this->skins) )\r
{\r
\r
$this->id = (integer) $id;\r
\r
- /*\r
- * NOTE: include needed action class\r
- */\r
+ /* NOTE: include needed action class */\r
if ( $action_class != 'Actions' )\r
{\r
if ( !class_exists($action_class, FALSE)\r
$type = strtolower($special);\r
}\r
\r
- $skin = new SKIN($skinid);\r
+ $skin =& $manager->get($skinid);\r
\r
if ( !$skin->isValid() )\r
{\r
// this statement should actually never be executed\r
$id = $CONF['BaseSkin'];\r
}\r
- $skin = new Skin($id);\r
+ $skin =& $manager->getSkin($id);\r
}\r
\r
$errormessage = $msg;\r
*/\r
function parseFile($filename, $includeMode = 'normal', $includePrefix = '')\r
{\r
- global $skinid;\r
+ global $manager, $skinid;\r
\r
if ( !$skinid || !existsID($skinid) )\r
{\r
- $skin = new Skin($CONF['BaseSkin']);\r
+ $skin =& $manager->getSkin($CONF['BaseSkin']);\r
}\r
else\r
{\r
- $skin = new Skin($skinid);\r
+ $skin =& $manager->getSkin($skinid);\r
}\r
\r
$oldIncludeMode = Parser::getProperty('IncludeMode');\r
\r
if ( !preg_match('#^admin#', $current['sdname']) )\r
{\r
- $skin = new Skin($current['sdnumber']);\r
+ $skin =& $manager->getSkin($current['sdnumber']);\r
}\r
else\r
{\r
- $skin = new Skin($current['sdnumber'], 'AdminActions');\r
+ $skin =& $manager->getSkin($current['sdnumber'], 'AdminActions');\r
}\r
$available_types = $skin->getAvailableTypes();\r
\r
*/\r
public function writeToDatabase($allowOverwrite = 0)\r
{\r
+ global $manager;\r
+ \r
$existingSkins = $this->checkSkinNameClashes();\r
$existingTemplates = $this->checkTemplateNameClashes();\r
$invalidSkinNames = $this->checkSkinNamesValid();\r
$data['includeMode'],\r
$data['includePrefix']\r
);\r
- $skinObj = new SKIN($skinid);\r
+ $skinObj =& $manager->getSkin($skinid);\r
}\r
\r
// 2. add parts\r
foreach ($this->skins as $skinId => $skinName)\r
{\r
$skinId = intval($skinId);\r
- $skinObj = new SKIN($skinId);\r
+ $skinObj =& $manager->getSkin($skinId);\r
\r
echo "\t" . '<skin name="' . Entity::hsc($skinName) . '" type="' . Entity::hsc($skinObj->getContentType()) . '" includeMode="' . Entity::hsc($skinObj->getIncludeMode()) . '" includePrefix="' . Entity::hsc($skinObj->getIncludePrefix()) . '">' . "\n";\r
echo "\t\t<description>" . Entity::hsc($skinObj->getDescription()) . "</description>\n";\r
// 3. return skin part
$blog =& $manager->getBlog($blogid);
- $skin = new SKIN($blog->getDefaultSkin());
+ $skin =& $manager->getSkin($blog->getDefaultSkin());
return new xmlrpcresp(new xmlrpcval($skin->getContentFromDB($type),"string"));
}
// 3. update skin part
$blog =& $manager->getBlog($blogid);
- $skin = new SKIN($blog->getDefaultSkin());
+ $skin =& $manager->getSkin($blog->getDefaultSkin());
$skin->update($type, $content);
return new xmlrpcresp(new xmlrpcval(1,'boolean'));