X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=nucleus%2Fbookmarklet.php;h=836b920f29558ed854fb5b41d31873b663d0bb57;hb=refs%2Fheads%2Fmaster;hp=4b3f5c911868495aecd5c2450a6336ab206c056b;hpb=a1c8b968c4f38141f80ce909cd17b49503a9a23d;p=nucleus-jp%2Fnucleus-next.git diff --git a/nucleus/bookmarklet.php b/nucleus/bookmarklet.php index 4b3f5c9..836b920 100644 --- a/nucleus/bookmarklet.php +++ b/nucleus/bookmarklet.php @@ -25,20 +25,32 @@ $CONF['UsingAdminArea'] = 1; // include all classes and config data include('../config.php'); +<<<<<<< HEAD +======= // get skin object -$skinid = $CONF['BookmarkletSkin']; +$skinid = $member->bookmarklet; if ( !Skin::existsID($skinid) ) { - echo _ERROR_SKIN; - exit; + $skinid = $CONF['BookmarkletSkin']; + if ( !Skin::existsID($skinid) ) + { + sendContentType('text/html'); + echo _ERROR_SKIN; + exit; + } } -$skin = new Skin($skinid, 'AdminActions', 'AdminSkin'); +$skin =& $manager->getSkin($skinid, 'AdminActions', 'AdminSkin'); +>>>>>>> skinnable-master // check logged-in or pass through $action = requestVar('action'); if ( !$member->isLoggedIn() ) { +<<<<<<< HEAD + bm_loginAndPassThrough($action); +======= bm_loginAndPassThrough($skin, $action); +>>>>>>> skinnable-master exit; } else if ( $action == 'login') @@ -58,13 +70,19 @@ else if ( $action == '' ) $action = 'add'; } +<<<<<<< HEAD +// send HTTP 1.1 message header for Content-Type +sendContentType('text/html', 'bookmarklet-' . $action); + +======= +>>>>>>> skinnable-master // check ticket $aActionsNotToCheck = array('login', 'add', 'edit'); if ( !in_array($action, $aActionsNotToCheck) ) { if ( !$manager->checkTicket() ) { - bm_doError(_ERROR_BADTICKET); + bm_doError($skin, _ERROR_BADTICKET); } } @@ -107,7 +125,7 @@ function bm_doAddItem($skin) if ( $result['status'] == 'error' ) { - bm_doError($result['message']); + bm_doError($skin, $result['message']); } $blogid = getBlogIDFromItemID($result['itemid']); @@ -124,9 +142,11 @@ function bm_doAddItem($skin) $extrahead = ''; } - bm_message($skin, _ITEM_ADDED, _ITEM_ADDED, $message,$extrahead); - - return; +<<<<<<< HEAD + bm_message(_ITEM_ADDED, _ITEM_ADDED, $message,$extrahead); +======= + bm_message($skin, _ITEM_ADDED, $message,$extrahead); +>>>>>>> skinnable-master return; } @@ -141,7 +161,7 @@ function bm_doEditItem($skin) // only allow if user is allowed to alter item if ( !$member->canUpdateItem($itemid, $catid) ) { - bm_doError(_ERROR_DISALLOWED); + bm_doError($skin, _ERROR_DISALLOWED); } $body = postVar('body'); @@ -171,7 +191,7 @@ function bm_doEditItem($skin) // show error when sth goes wrong if ( !$catid ) { - bm_doError('Could not create new category'); + bm_doError($skin, 'Could not create new category'); } } @@ -194,7 +214,7 @@ function bm_doEditItem($skin) $timestamp = 0; break; default: - bm_doError('Something went wrong'); + bm_doError($skin, 'Something went wrong'); } // update item for real @@ -205,20 +225,32 @@ function bm_doEditItem($skin) Item::delete($draftid); } - // show success message - if ( $catid != intPostVar('catid') ) + if ( $result['status'] == 'newcategory' ) { - bm_message($skin, _ITEM_UPDATED, _ITEM_UPDATED, 'Item was added, and a new category was created. Click here to edit the name and description of the category.', ''); + $href = "index.php?action=categoryedit&blogid={$blogid}&catid={$result['catid']}"; + $onclick = 'if (event && event.preventDefault) event.preventDefault(); window.open(this.href); return false;'; + $title = _BOOKMARKLET_NEW_WINDOW; + $aTag = " "; + $message = _BOOKMARKLET_NEW_CATEGORY . $aTag . _BOOKMARKLET_NEW_CATEGORY_EDIT . ''; } else { - bm_message($skin, _ITEM_UPDATED, _ITEM_UPDATED, _ITEM_UPDATED, ''); + $message = _ITEM_ADDED; } +<<<<<<< HEAD + return; +} + +function bm_loginAndPassThrough($action='add') +======= + // show success message + bm_message($skin, _ITEM_ADDED, $message, ''); return; } function bm_loginAndPassThrough($skin, $action='add') +>>>>>>> skinnable-master { /* * TODO: これを出力させる @@ -228,18 +260,41 @@ function bm_loginAndPassThrough($skin, $action='add') $log_link = requestVar('loglink'); $log_linktitle = requestVar('loglinktitle'); +<<<<<<< HEAD + echo "\n"; + echo "\n"; + echo "\n"; + echo "Nucleus CMS Bookmarklet\n"; + + bm_style(); + + echo "\n"; + echo "\n"; + echo '

' . _LOGIN_PLEASE . "

\n"; + echo "
\n"; + echo "

\n"; + echo _LOGINFORM_NAME . "
\n"; + echo _LOGINFORM_PWD . "
\n"; +======= +>>>>>>> skinnable-master echo '' . "\n"; echo '' . "\n"; echo '' . "\n"; echo '' . "\n"; echo '' . "\n"; echo "\n"; +<<<<<<< HEAD + echo '\n"; + echo "

\n"; + echo "
\n"; + echo '

' . _POPUP_CLOSE . "

\n"; + echo "\n"; + echo "\n"; +======= */ - $skin->parse('pagehead'); $skin->parse('showlogin'); - $skin->parse('pagefoot'); - +>>>>>>> skinnable-master return; } @@ -255,18 +310,24 @@ function bm_doShowForm($skin) if ( !Blog::existsID($blogid) ) { - bm_doError(_ERROR_NOSUCHBLOG); + bm_doError($skin, _ERROR_NOSUCHBLOG); } +<<<<<<< HEAD else { $blog =& $manager->getBlog($blogid); } if ( !$member->isTeamMember($blogid) ) +======= + else if ( !$member->isTeamMember($blogid) ) +>>>>>>> skinnable-master { - bm_doError(_ERROR_NOTONTEAM); + bm_doError($skin, _ERROR_NOTONTEAM); } + $blog =& $manager->getBlog($blogid); + $logje = ''; if ( $log_text ) @@ -284,15 +345,44 @@ function bm_doShowForm($skin) $logje .= '' . Entity::hsc($log_linktitle) . ''; } +<<<<<<< HEAD $variables = array(); $variables['body'] = $logje; $variables['title'] = Entity::hsc($log_linktitle); - /* TODO: $itemを渡す */ - $skin->parse('pagehead'); - $skin->parse('itemedit'); - $skin->parse('pagefoot'); + $handler = new PageFactory($blog); + $handler->setVariables($variables); + $contents = $handler->getTemplateFor('bookmarklet', 'add'); + $manager->notify('PreAddItemForm', array('contents' => &$contents, 'blog' => &$blog)); + + $parser = new Parser($handler); + $parser->parse($contents); + +======= + $item = array(); + $item['body'] = $logje; + $item['title'] = Entity::hsc($log_linktitle); + + $data = array( + 'blog' => &$blog, + 'item' => &$item, + 'contents' => &$item + ); + $manager->notify('PreAddItemForm', $data); + + if ( $blog->convertBreaks() ) + { + $item['body'] = removeBreaks($item['body']); + } + + Admin::$blog = &$blog; + Admin::$contents = &$item; + + Admin::$action = 'createitem'; + $skin->parse('createitem'); + +>>>>>>> skinnable-master return; } @@ -304,18 +394,29 @@ function bm_doEditForm($skin) if ( !$manager->existsItem($itemid, 0, 0) ) { - bm_doError(_ERROR_NOSUCHITEM); + bm_doError($skin, _ERROR_NOSUCHITEM); } - - if ( !$member->canAlterItem($itemid) ) + else if ( !$member->canAlterItem($itemid) ) { - bm_doError(_ERROR_DISALLOWED); + bm_doError($skin, _ERROR_DISALLOWED); } +<<<<<<< HEAD $variables =& $manager->getItem($itemid, 1, 1); +======= +>>>>>>> skinnable-master $blog =& $manager->getBlog(getBlogIDFromItemID($itemid) ); + $item =& $manager->getItem($itemid, 1, 1); +<<<<<<< HEAD $manager->notify('PrepareItemForEdit', array('item' => &$variables) ); +======= + $data = array( + 'blog' => &$blog, + 'item' => &$item + ); + $manager->notify('PrepareItemForEdit', $data); +>>>>>>> skinnable-master if ( $blog->convertBreaks() ) { @@ -323,33 +424,75 @@ function bm_doEditForm($skin) $variables['more'] = removeBreaks($variables['more']); } - /* TODO: $itemを渡す */ - $skin->parse('pagehead'); - $skin->parse('createitem'); - $skin->parse('pagefoot'); +<<<<<<< HEAD + $handler = new PageFactory($blog); + $handler->setVariables($variables); + + $contents = $handler->getTemplateFor('bookmarklet', 'edit'); + + $parser = new Parser($handler); + $parser->parse($contents); + + return; +} +======= + Admin::$blog = &$blog; + Admin::$contents = &$item; + + Admin::$action = 'itemedit'; + $skin->parse('itemedit'); return;} +>>>>>>> skinnable-master function bm_doError($skin, $msg) { - bm_message($skin, _ERROR, _ERRORMSG, $msg); + bm_message($skin, _ERRORMSG, $msg); die; } -function bm_message($skin, $title, $head, $msg, $extrahead = '') +function bm_message($skin, $title, $msg, $extrahead = '') { - /* TODO: $title, $head, $msg, $extraheadを渡す */ - $skin->parse('pagehead'); +<<<<<<< HEAD + echo "\n"; + echo "\n"; + echo "\n"; + echo "{$title}\n"; + + bm_style(); + + echo $extrahead . "\n"; + echo "\n"; + echo "\n"; + echo "

{$head}

\n"; + echo "

{$msg}

\n"; + echo '

' . _POPUP_CLOSE . "

\n"; + echo "\n"; + echo "\n"; +======= + Admin::$extrahead = $extrahead; + Admin::$headMess = $msg; $skin->parse('adminerrorpage'); - $skin->parse('pagefoot'); - +>>>>>>> skinnable-master return; } function bm_doContextMenuCode($width=600, $height=500) { +<<<<<<< HEAD + echo "\n"; + echo "\n"; + return; +} + +function bm_doContextMenuCode($width=600, $height=500) +{ + global $CONF; + +======= global $CONF; +>>>>>>> skinnable-master $blogid = (integer) intGetVar('blogid'); echo "