OSDN Git Service

Merge branch 'skinnable-master' of sakamocchi@git.sourceforge.jp:/gitroot/nucleus...
authorsakamocchi <o-takashi@sakamocchi.jp>
Sun, 27 May 2012 00:46:38 +0000 (09:46 +0900)
committersakamocchi <o-takashi@sakamocchi.jp>
Sun, 27 May 2012 00:46:38 +0000 (09:46 +0900)
12 files changed:
nucleus/libs/ACTION.php
nucleus/libs/ACTIONS.php
nucleus/libs/ADMIN.php
nucleus/libs/AdminActions.php
nucleus/libs/BLOG.php
nucleus/libs/BODYACTIONS.php
nucleus/libs/COMMENTACTIONS.php
nucleus/libs/COMMENTS.php
nucleus/libs/ITEM.php
nucleus/libs/ITEMACTIONS.php
nucleus/libs/MANAGER.php
nucleus/libs/MEMBER.php

index 5ac9e75..42f6114 100644 (file)
@@ -103,13 +103,12 @@ class Action
                        setcookie($CONF['CookiePrefix'] . 'comment_email', $post['email'], $lifetime, '/', '', 0);\r
                }\r
                \r
-               $comments = new Comments($post['itemid']);\r
-               \r
-               $blog_id = getBlogIDFromItemID($post['itemid']);\r
-               $this->checkban($blog_id);\r
-               $blog =& $manager->getBlog($blog_id);\r
+               $item =& $manager->getItem($post['itemid'], 0, 0);\r
+               $this->checkban($item['blogid']);\r
+               $blog =& $manager->getBlog($item['blogid']);\r
                \r
                // note: PreAddComment and PostAddComment gets called somewhere inside addComment\r
+               $comments = new Comments($post['itemid']);\r
                $errormessage = $comments->addComment($blog->getCorrectTime(), $post);\r
                \r
                if ( $errormessage != '1' )\r
@@ -369,8 +368,8 @@ class Action
                        doError(_ERROR_NOSUCHITEM);\r
                }\r
                \r
-               $blogid = getBlogIDFromItemID($itemid);\r
-               $this->checkban($blogid);\r
+               $item =& $manager->getItem($itemid, 0, 0);\r
+               $this->checkban($item['blogid']);\r
                \r
                $karma =& $manager->getKarma($itemid);\r
                \r
index 15ea24c..8e86f6f 100644 (file)
@@ -1424,7 +1424,7 @@ class Actions extends BaseActions
        public function parse_itemtitle($format = '')\r
        {\r
                global $manager, $itemid;\r
-               $item =& $manager->getItem($itemid,0,0);\r
+               $item =& $manager->getItem($itemid, 1, 1);\r
                \r
                switch ( $format )\r
                {\r
@@ -2206,17 +2206,19 @@ class Actions extends BaseActions
         * @param       string  $template       name of template\r
         * @return      void\r
         */\r
-       public function parse_sticky($itemnumber = 0, $template = '')\r
+       public function parse_sticky($itemid = 0, $template = '')\r
        {\r
                global $manager;\r
                \r
-               $itemnumber = intval($itemnumber);\r
-               $itemarray = array($itemnumber);\r
+               $itemid = (integer) $itemid;\r
+               $itemarray = array($itemid);\r
+               \r
+               $item =& $manager->getItem($post['itemid'], 1, 1);\r
+               $blog =& $manager->getBlog($item['blogid']);\r
                \r
-               $b =& $manager->getBlog(getBlogIDFromItemID($itemnumber));\r
-               $this->preBlogContent('sticky',$b);\r
-               $this->amountfound = $b->readLogFromList($itemarray, $template);\r
-               $this->postBlogContent('sticky',$b);\r
+               $this->preBlogContent('sticky', $blog);\r
+               $this->amountfound = $blog->readLogFromList($itemarray, $template);\r
+               $this->postBlogContent('sticky', $blog);\r
                return;\r
        }\r
 }\r
index 6dbf3b3..1800e68 100644 (file)
@@ -666,14 +666,12 @@ class Admin
                        $itemid = intRequestVar('itemid');\r
                }\r
                \r
-               /* TODO: we consider to use the other way insterad of this */\r
-               $_REQUEST['itemid'] = $itemid;\r
-               $_REQUEST['blogid'] = getBlogIdFromItemId($itemid);\r
-               \r
                // only allow if user is allowed to alter item\r
                $member->canAlterItem($itemid) or self::disallow();\r
                \r
-               $blogid = getBlogIdFromItemId($itemid);\r
+               $item =& $manager->getItem($itemid, 1, 1);\r
+               $_REQUEST['itemid'] = $item['itemid'];\r
+               $_REQUEST['blogid'] = $item['blogid'];\r
                \r
                self::$skin->parse('itemcommentlist');\r
                return;\r
@@ -845,26 +843,24 @@ class Admin
                // only allow if user is allowed to alter item\r
                $member->canAlterItem($itemid) or self::disallow();\r
                \r
-               $blogid = getBlogIDFromItemID($itemid);\r
-               $blog =& $manager->getBlog($blogid);\r
-               \r
-               $contents =& $manager->getItem($itemid, 1, 1);\r
-               $manager->notify('PrepareItemForEdit', array('blog'=> &$blog, 'item' => &$contents));\r
+               $item =& $manager->getItem($itemid, 1, 1);\r
+               $blog =& $manager->getBlog($item['blogid']);\r
+               $manager->notify('PrepareItemForEdit', array('blog'=> &$blog, 'item' => &$item));\r
                \r
                if ( $blog->convertBreaks() )\r
                {\r
-                       if ( array_key_exists('body', $contents) && !empty($contents['body']) )\r
+                       if ( array_key_exists('body', $item) && !empty($item['body']) )\r
                        {\r
-                               $contents['body'] = removeBreaks($contents['body']);\r
+                               $item['body'] = removeBreaks($item['body']);\r
                        }\r
-                       if ( array_key_exists('more', $contents) && !empty($contents['more']) )\r
+                       if ( array_key_exists('more', $item) && !empty($item['more']) )\r
                        {\r
-                               $contents['more'] = removeBreaks($contents['more']);\r
+                               $item['more'] = removeBreaks($item['more']);\r
                        }\r
                }\r
                \r
                self::$blog = &$blog;\r
-               self::$contents = &$contents;\r
+               self::$contents = &$item;\r
                \r
                self::$skin->parse('itemedit');\r
                return;\r
@@ -924,20 +920,20 @@ class Admin
                        }\r
                }\r
                \r
-               /*\r
-                       set some variables based on actiontype\r
-\r
-                       actiontypes:\r
-                               draft items -> addnow, addfuture, adddraft, delete\r
-                               non-draft items -> edit, changedate, delete\r
-\r
-                       variables set:\r
-                               $timestamp: set to a nonzero value for future dates or date changes\r
-                               $wasdraft: set to 1 when the item used to be a draft item\r
-                               $publish: set to 1 when the edited item is not a draft\r
-        */\r
+               /**\r
+                * set some variables based on actiontype\r
+                * \r
+                * actiontypes:\r
+                *      draft items -> addnow, addfuture, adddraft, delete\r
+                *      non-draft items -> edit, changedate, delete\r
+                * \r
+                * variables set:\r
+                *      $timestamp: set to a nonzero value for future dates or date changes\r
+                *      $wasdraft: set to 1 when the item used to be a draft item\r
+                *      $publish: set to 1 when the edited item is not a draft\r
+                */\r
                $blogid =  getBlogIDFromItemID($itemid);\r
-               $blog   =& $manager->getBlog($blogid);\r
+               $blog =& $manager->getBlog($blogid);\r
                \r
                $wasdrafts = array('adddraft', 'addfuture', 'addnow');\r
                $wasdraft  = in_array($actiontype, $wasdrafts) ? 1 : 0;\r
@@ -973,7 +969,7 @@ class Admin
                else\r
                {\r
                        // TODO: set start item correctly for itemlist\r
-                       $item =& $manager->getitem($itemid, 0, 0);\r
+                       $item =& $manager->getitem($itemid, 1, 1);\r
                        $query = "SELECT COUNT(*) FROM %s WHERE unix_timestamp(itime) <= '%s';";\r
                        $query = sprintf($query, sql_table('item'), $item['timestamp']);\r
                        $cnt  = DB::getValue($query);\r
@@ -1016,20 +1012,20 @@ class Admin
         */\r
        static private function action_itemdeleteconfirm()\r
        {\r
-               global $member;\r
+               global $member, $manager;\r
                \r
                $itemid = intRequestVar('itemid');\r
                \r
                // only allow if user is allowed to alter item\r
                $member->canAlterItem($itemid) or self::disallow();\r
                \r
-               // get blogid first\r
-               $blogid = getBlogIdFromItemId($itemid);\r
+               // get item first\r
+               $item =& $manager->getItem($itemid, 1, 1);\r
                \r
                // delete item (note: some checks will be performed twice)\r
-               self::deleteOneItem($itemid);\r
+               self::deleteOneItem($item['itemid']);\r
                \r
-               self::action_itemlist($blogid);\r
+               self::action_itemlist($item['blogid']);\r
                return;\r
        }\r
        \r
@@ -1051,13 +1047,13 @@ class Admin
                }\r
                \r
                // need to get blogid before the item is deleted\r
-               $blogid = getBlogIDFromItemId($itemid);\r
+               $item =& $manager->getItem($itemid, 1, 1);\r
                \r
                $manager->loadClass('ITEM');\r
-               Item::delete($itemid);\r
+               Item::delete($item['itemid']);\r
                \r
                // update blog's futureposted\r
-               self::updateFuturePosted($blogid);\r
+               self::updateFuturePosted($item['itemid']);\r
                return;\r
        }\r
        \r
@@ -1206,19 +1202,17 @@ class Admin
                        self::error($result['message']);\r
                }\r
                \r
-               $itemid = (integer) $result['itemid'];\r
-               \r
-               $blogid         =  (integer) getBlogIDFromItemID($itemid);\r
+               $item =& $manager->getItem($result['itemid'], 0, 0);\r
                \r
                if ( $result['status'] == 'newcategory' )\r
                {\r
-                       $distURI = $manager->addTicketToUrl($CONF['AdminURL'] . 'index.php?action=itemList&blogid=' . $blogid);\r
-                       self::action_categoryedit($result['catid'], $blogid, $distURI);\r
+                       $distURI = $manager->addTicketToUrl($CONF['AdminURL'] . 'index.php?action=itemList&blogid=' . $item['blogid']);\r
+                       self::action_categoryedit($result['catid'], $item['blogid'], $distURI);\r
                }\r
                else\r
                {\r
                        $methodName = 'action_itemlist';\r
-                       self::action_itemlist($blogid);\r
+                       self::action_itemlist($item['blogid']);\r
                }\r
                return;\r
        }\r
@@ -4896,7 +4890,11 @@ class Admin
         */\r
        static private function action_banlistnewfromitem()\r
        {\r
-               self::action_banlistnew(getBlogIDFromItemID(intRequestVar('itemid')));\r
+               global $manager;\r
+               \r
+               $itemid = intRequestVar('itemid');\r
+               $item =& $manager->getItem($itemid, 1, 1);\r
+               self::action_banlistnew($item['blogid']);\r
                return;\r
        }\r
        \r
index ede00be..7651600 100644 (file)
@@ -1620,12 +1620,15 @@ class AdminActions extends BaseActions
                $itemid = intRequestVar('itemid');
                $item =& $manager->getItem($itemid, 1, 1);
                
-               $blog =& $manager->getBlog(getBlogIDFromItemID($itemid));
-               
-               if ( $item && $blog->convertBreaks() && requestVar('action') == 'itemedit' )
+               if ( $item )
                {
-                       $item['body'] = removeBreaks($item['body']);
-                       $item['more'] = removeBreaks($item['more']);
+                       $blog =& $manager->getBlog($item['blogid']);
+                       
+                       if ( $blog->convertBreaks() && requestVar('action') == 'itemedit' )
+                       {
+                               $item['body'] = removeBreaks($item['body']);
+                               $item['more'] = removeBreaks($item['more']);
+                       }
                }
                
                $contents = array();
@@ -1695,9 +1698,9 @@ class AdminActions extends BaseActions
                        }
                }
                $query = 'SELECT cbody, cuser, cmail, cemail, mname, ctime, chost, cnumber, cip, citem '
-               . 'FROM %s '
-               . 'LEFT OUTER JOIN %s ON  mnumber=cmember '
-               . 'WHERE ';
+                      . 'FROM %s '
+                      . 'LEFT OUTER JOIN %s ON  mnumber=cmember '
+                      . 'WHERE ';
                $query = sprintf($query, sql_table('comment'), sql_table('member'));
                
                if ( $this->skintype == 'itemcommentlist' )
@@ -3295,12 +3298,15 @@ class AdminActions extends BaseActions
                $itemid = intRequestVar('itemid');
                $item =& $manager->getItem($itemid, 1, 1);
                
-               $blog   =& $manager->getBlog(getBlogIDFromItemID($itemid));
-               
-               if ( $item && $blog->convertBreaks() && requestVar('action') == 'itemedit' )
+               if ( $item )
                {
-                       $item['body'] = removeBreaks($item['body']);
-                       $item['more'] = removeBreaks($item['more']);
+                       $blog =& $manager->getBlog($item['blogid']);
+                       
+                       if ( $blog->convertBreaks() && requestVar('action') == 'itemedit' )
+                       {
+                               $item['body'] = removeBreaks($item['body']);
+                               $item['more'] = removeBreaks($item['more']);
+                       }
                }
                
                $contents = array();
@@ -5463,4 +5469,4 @@ class AdminActions extends BaseActions
                echo "</select>\n";
                return;
        }
-}
\ No newline at end of file
+}
index f0f91a5..faf5bbe 100644 (file)
@@ -874,9 +874,9 @@ class Blog
                        else\r
                        {\r
                                global $itemid;\r
-                               if ( intval($itemid) && $manager->existsItem(intval($itemid), 0, 0) )\r
+                               if ( (integer) $itemid && $manager->existsItem((integer) $itemid, 0, 0) )\r
                                {\r
-                                       $iobj   =& $manager->getItem(intval($itemid), 0, 0);\r
+                                       $iobj   =& $manager->getItem($itemid, 0, 0);\r
                                        $cid    = $iobj['catid'];\r
                                        \r
                                        if ( $cid == $data['catid'] )\r
index 83cb68d..7568331 100644 (file)
@@ -280,7 +280,7 @@ class BodyActions extends BaseActions
                                $condition = ($blog && ($blog->getSetting($name) == $value));\r
                                break;\r
                        case 'itemblogsetting':\r
-                               $b =& $manager->getBlog(getBlogIDFromItemID($this->currentItem['itemid']));\r
+                               $b =& $manager->getBlog($this->currentItem['blogid']);\r
                                $condition = ($b && ($b->getSetting($name) == $value));\r
                                break;\r
                        case 'loggedin':\r
@@ -354,7 +354,7 @@ class BodyActions extends BaseActions
        {\r
                global $member, $manager;\r
                \r
-               $b =& $manager->getBlog(getBlogIDFromItemID($this->currentItem['itemid']));\r
+               $b =& $manager->getBlog($this->currentItem['blogid']);\r
                \r
                // when no parameter is defined, just check if author is current visitor\r
                if ( ($key != 'isadmin' && $key != 'name') || ($key == 'name' && $value == '') )\r
@@ -400,7 +400,7 @@ class BodyActions extends BaseActions
        {\r
                global $catid, $manager;\r
                \r
-               $b =& $manager->getBlog(getBlogIDFromItemID($this->currentItem['itemid']));\r
+               $b =& $manager->getBlog($this->currentItem['blogid']);\r
                \r
                // when no parameter is defined, just check if a category is selected\r
                if ( ($key != 'catname' && $key != 'catid') || ($value == '') )\r
index dd469f0..5dbe28f 100644 (file)
@@ -232,8 +232,8 @@ class CommentActions extends BaseActions
        public function parse_blogurl()\r
        {\r
                global $manager;\r
-               $blogid = getBlogIDFromItemID($this->commentsObj->itemid);\r
-               $blog =& $manager->getBlog($blogid);\r
+               $item =& $manager->getItem($this->commentsObj->itemid, 1, 1);\r
+               $blog =& $manager->getBlog($item['blogid']);\r
                echo $blog->getURL();\r
                return;\r
        }\r
@@ -705,8 +705,9 @@ class CommentActions extends BaseActions
                                $condition = ($blog && ($blog->getSetting($name) == $value));\r
                                break;\r
                        case 'itemblogsetting':\r
-                               $b =& $manager->getBlog(getBlogIDFromItemID($this->currentComment['itemid']));\r
-                               $condition = ($b && ($b->getSetting($name) == $value));\r
+                               $item =& $manager->getItem($this->currentComment['itemid'], 1, 1);\r
+                               $blog =& $manager->getBlog($item['blogid']);\r
+                               $condition = ($blog && ($blog->getSetting($name) == $value));\r
                                break;\r
                        case 'loggedin':\r
                                $condition = $member->isLoggedIn();\r
@@ -781,13 +782,13 @@ class CommentActions extends BaseActions
                        return FALSE;\r
                }\r
                \r
-               $mem =& $manager->getMember($this->currentComment['memberid']);\r
-               $b =& $manager->getBlog(getBlogIDFromItemID($this->currentComment['itemid']));\r
-               $citem =& $manager->getItem($this->currentComment['itemid'], 1, 1);\r
+               $member =& $manager->getMember($this->currentComment['memberid']);\r
+               $item =& $manager->getItem($this->currentComment['itemid'], 1, 1);\r
                \r
                // when no parameter is defined, just check if item author is current visitor\r
-               if (($key != 'isadmin' && $key != 'name' && $key != 'isauthor' && $key != 'isonteam')) {\r
-                       return (intval($member->getID()) > 0 && intval($member->getID()) == intval($citem['authorid']));\r
+               if ( ($key != 'isadmin' && $key != 'name' && $key != 'isauthor' && $key != 'isonteam') )\r
+               {\r
+                       return (intval($memberber->getID()) > 0 && intval($memberber->getID()) == (integer) $item['authorid']);\r
                }\r
                \r
                // check comment author name\r
@@ -798,7 +799,7 @@ class CommentActions extends BaseActions
                        {\r
                                return FALSE;\r
                        }\r
-                       if ( $value == strtolower($mem->getDisplayName()) )\r
+                       if ( $value == strtolower($member->getDisplayName()) )\r
                        {\r
                                return TRUE;\r
                        }\r
@@ -807,24 +808,23 @@ class CommentActions extends BaseActions
                // check if comment author is admin\r
                if ( $key == 'isadmin' )\r
                {\r
-                       $blogid = intval($b->getID());\r
-                       if ( $mem->isAdmin() )\r
+                       if ( $member->isAdmin() )\r
                        {\r
                                return TRUE;\r
                        }\r
-                       return $mem->isBlogAdmin($blogid);\r
+                       return $member->isBlogAdmin($item['blogid']);\r
                }\r
                \r
                // check if comment author is item author\r
                if ( $key == 'isauthor' )\r
                {\r
-                       return (intval($citem['authorid']) == intval($this->currentComment['memberid']));\r
+                       return ((integer) $item['authorid'] == (integer) $this->currentComment['memberid']);\r
                }\r
                \r
                // check if comment author is on team\r
                if ( $key == 'isonteam' )\r
                {\r
-                       return $mem->teamRights(intval($b->getID()));\r
+                       return $member->teamRights((integer) $item['blogid']);\r
                }\r
                return FALSE;\r
        }\r
@@ -840,31 +840,30 @@ class CommentActions extends BaseActions
        private function ifItemCategory($key = '', $value = '')\r
        {\r
                global $catid, $manager;\r
-       \r
-               $b =& $manager->getBlog(getBlogIDFromItemID($this->currentComment['itemid']));\r
-               $citem =& $manager->getItem($this->currentComment['itemid'],1,1);\r
-               $icatid = $citem['catid'];\r
-       \r
+               \r
+               $item =& $manager->getItem($this->currentComment['itemid'],1,1);\r
+               $blog =& $manager->getBlog($item['blogid']);\r
+               \r
                // when no parameter is defined, just check if a category is selected\r
                if ( ($key != 'catname' && $key != 'catid') || ($value == '') )\r
                {\r
-                       return $b->isValidCategory($icatid);\r
+                       return $blog->isValidCategory($item['catid']);\r
                }\r
-       \r
+               \r
                // check category name\r
                if ( $key == 'catname' )\r
                {\r
-                       $value = $b->getCategoryIdFromName($value);\r
-                       if ( $value == $icatid )\r
+                       $value = $blog->getCategoryIdFromName($value);\r
+                       if ( $value == $item['catid'] )\r
                        {\r
-                               return $b->isValidCategory($icatid);\r
+                               return $blog->isValidCategory($item['catid']);\r
                        }\r
                }\r
-       \r
+               \r
                // check category id\r
-               if ( ($key == 'catid') && ($value == $icatid) )\r
+               if ( ($key == 'catid') && ($value == $item['catid']) )\r
                {\r
-                       return $b->isValidCategory($icatid);\r
+                       return $blog->isValidCategory($item['catid']);\r
                }\r
                return FALSE;\r
        }\r
@@ -878,12 +877,13 @@ class CommentActions extends BaseActions
         */\r
        private function ifOnTeam($blogName = '')\r
        {\r
-               global $blog, $member, $manager;\r
+               global $member, $manager;\r
                \r
-               $b =& $manager->getBlog(getBlogIDFromItemID($this->currentComment['itemid']));\r
+               $item =& $manager->getItem($this->currentComment['itemid'], 1, 1);\r
+               $blog =& $manager->getBlog($item['blogid']);\r
                \r
                // when no blog found\r
-               if ( ($blogName == '') && (!is_object($b)) )\r
+               if ( ($blogName == '') && !is_object($blog) )\r
                {\r
                        return 0;\r
                }\r
@@ -897,7 +897,7 @@ class CommentActions extends BaseActions
                // use current blog\r
                if ( ($blogName == '') || !$manager->existsBlogID($blogid) )\r
                {\r
-                       $blogid = $b->getID();\r
+                       $blogid = $blog->getID();\r
                }\r
                \r
                return $member->teamRights($blogid);\r
@@ -912,12 +912,13 @@ class CommentActions extends BaseActions
         */\r
        private function ifAdmin($blogName = '')\r
        {\r
-               global $blog, $member, $manager;\r
+               global $member, $manager;\r
                \r
-               $b =& $manager->getBlog(getBlogIDFromItemID($this->currentComment['itemid']));\r
+               $item =& $manager->getItem($this->currentComment['itemid'], 1, 1);\r
+               $blog =& $manager->getBlog($item['blogid']);\r
                \r
                // when no blog found\r
-               if ( ($blogName == '') && (!is_object($b)) )\r
+               if ( ($blogName == '') && !is_object($blog) )\r
                {\r
                        return 0;\r
                }\r
@@ -931,7 +932,7 @@ class CommentActions extends BaseActions
                // use current blog\r
                if ( ($blogName == '') || !$manager->existsBlogID($blogid) )\r
                {\r
-                       $blogid = $b->getID();\r
+                       $blogid = $blog->getID();\r
                }\r
                \r
                return $member->isBlogAdmin($blogid);\r
index 375b569..d74c2bd 100644 (file)
@@ -143,9 +143,8 @@ class Comments
        {\r
                global $CONF, $member, $manager;\r
                \r
-               $blogid = getBlogIDFromItemID($this->itemid);\r
-               \r
-               $settings =& $manager->getBlog($blogid);\r
+               $item =& $manager->getItem($this->itemid, 0, 0);\r
+               $settings =& $manager->getBlog($item['blogid']);\r
                $settings->readSettings();\r
                \r
                // begin if: comments disabled\r
@@ -233,7 +232,7 @@ class Comments
                        $p = $manager->getPlugin($plugin);\r
                        $continue = $continue || $p->supportsFeature('handleSpam');\r
                }\r
-\r
+               \r
                $spamcheck = array(\r
                        'type'          => 'comment',\r
                        'body'          => $comment['body'],\r
@@ -310,7 +309,6 @@ class Comments
                        $message .= _NOTIFY_COMMENT . "\n " . $comment['body'] . "\n";\r
                        $message .= NOTIFICATION::get_mail_footer();\r
                        \r
-                       $item =& $manager->getItem($this->itemid, 0, 0);\r
                        $subject = _NOTIFY_NC_TITLE . ' ' . strip_tags($item['title']) . ' (' . $this->itemid . ')';\r
                        \r
                        $from = $member->getNotifyFromMailAddress($comment['email']);\r
@@ -324,11 +322,11 @@ class Comments
                \r
                $name           = DB::quoteValue($comment['user']);\r
                $url            = DB::quoteValue($comment['userid']);\r
-               $email      = DB::quoteValue($comment['email']);\r
+               $email          = DB::quoteValue($comment['email']);\r
                $body           = DB::quoteValue($comment['body']);\r
                $host           = DB::quoteValue($comment['host']);\r
                $ip                     = DB::quoteValue($comment['ip']);\r
-               $memberid       = intval($comment['memberid']);\r
+               $memberid       = (integer) $comment['memberid'];\r
                $timestamp      = DB::formatDateTime($comment['timestamp']);\r
                $itemid         = $this->itemid;\r
                \r
@@ -339,7 +337,7 @@ class Comments
                                        . ' AND cmember = ' . $memberid\r
                                        . ' AND cbody   = ' . $body\r
                                        . ' AND citem   = ' . $itemid\r
-                                       . ' AND cblog   = ' . $blogid;\r
+                                       . ' AND cblog   = ' . $item['blogid'];\r
                $result     = (integer) DB::getValue($qSql);\r
                \r
                if ( $result > 0 )\r
@@ -349,7 +347,7 @@ class Comments
                \r
                $query = sprintf('INSERT INTO %s (cuser, cmail, cemail, cmember, cbody, citem, ctime, chost, cip, cblog) '\r
                        . 'VALUES (%s, %s, %s, %d, %s, %d, %s, %s, %s, %d)'\r
-                       , sql_table('comment'), $name, $url, $email, $memberid, $body, $itemid, $timestamp, $host, $ip, $blogid);\r
+                       , sql_table('comment'), $name, $url, $email, $memberid, $body, $itemid, $timestamp, $host, $ip, $item['blogid']);\r
                \r
                DB::execute($query);\r
                \r
index 9de8eb4..602234f 100644 (file)
@@ -97,6 +97,7 @@ class Item
                \r
                if ( !$allow_future )\r
                {\r
+                       /* FIXME: should be rewritten! */\r
                        $blog =& $manager->getBlog(getBlogIDFromItemID($item_id));\r
                        $query .= 'AND i.itime <= ' . DB::formatDateTime($blog->getCorrectTime());\r
                }\r
@@ -104,16 +105,13 @@ class Item
                $query .= ' LIMIT 1';\r
                $result = DB::getResult($query);\r
                \r
-               if ( $result->rowCount() == 1 )\r
-               {\r
-                       $aItemInfo = $result->fetch(PDO::FETCH_ASSOC);\r
-                       $aItemInfo['timestamp'] = strtotime($aItemInfo['itime']);\r
-                       return $aItemInfo;\r
-               }\r
-               else\r
+               if ( $result->rowCount() != 1 )\r
                {\r
                        return 0;\r
                }\r
+               $aItemInfo = $result->fetch(PDO::FETCH_ASSOC);\r
+               $aItemInfo['timestamp'] = strtotime($aItemInfo['itime']);\r
+               return $aItemInfo;\r
        }\r
        \r
        /**\r
@@ -504,7 +502,7 @@ class Item
                global $manager;\r
                \r
                $itemid = (integer) $itemid;\r
-               $query = 'select * FROM '.sql_table('item').' WHERE inumber='.$itemid;\r
+               $query = 'SELECT * FROM '.sql_table('item').' WHERE inumber='.$itemid;\r
                \r
                if ( !$future )\r
                {\r
@@ -558,7 +556,8 @@ class Item
                if ( $type == 'edit' )\r
                {\r
                        $itemid = intPostVar('itemid');\r
-                       $i_blogid = getBlogIDFromItemID($itemid);\r
+                       $item =& $manager->getItem($itemid, 0, 0);\r
+                       $i_blogid = $item['blogid'];\r
                }\r
                else\r
                {\r
index 333dd81..b1de395 100644 (file)
@@ -847,8 +847,9 @@ class ItemActions extends BaseActions
                                $condition = ($blog && ($blog->getSetting($name) == $value));\r
                                break;\r
                        case 'itemblogsetting':\r
-                               $b =& $manager->getBlog(getBlogIDFromItemID($this->currentItem['itemid']));\r
-                               $condition = ($b && ($b->getSetting($name) == $value));\r
+                               $item =& $manager->getItem($this->currentItem['itemid'], 1, 1);\r
+                               $t_blog =& $manager->getBlog($item['blogid']);\r
+                               $condition = ($t_blog && ($t_blog->getSetting($name) == $value));\r
                                break;\r
                        case 'loggedin':\r
                                $condition = $member->isLoggedIn();\r
@@ -920,8 +921,6 @@ class ItemActions extends BaseActions
        {\r
                global $member, $manager;\r
                \r
-               $b =& $manager->getBlog(getBlogIDFromItemID($this->currentItem['itemid']));\r
-               \r
                // when no parameter is defined, just check if author is current visitor\r
                if ( ($key != 'isadmin' && $key != 'name') || ($key == 'name' && $value == '') )\r
                {\r
@@ -941,14 +940,12 @@ class ItemActions extends BaseActions
                // check if author is admin\r
                if ( ($key == 'isadmin') )\r
                {\r
-                       $aid = intval($this->currentItem['authorid']);\r
-                       $blogid = intval($b->getID());                  \r
-                       $amember =& $manager->getMember($aid);\r
-                       if ( $amember->isAdmin() )\r
+                       $i_author =& $manager->getMember($this->currentItem['authorid']);\r
+                       if ( $i_author->isAdmin() )\r
                        {\r
                                return TRUE;\r
                        }\r
-                       return (boolean) $amember->isBlogAdmin($blogid);\r
+                       return (boolean) $i_author->isBlogAdmin($this->currentItem['blogid']);\r
                }\r
                \r
                return FALSE;\r
@@ -966,12 +963,12 @@ class ItemActions extends BaseActions
        {\r
                global $catid, $manager;\r
                \r
-               $b =& $manager->getBlog(getBlogIDFromItemID($this->currentItem['itemid']));\r
+               $blog =& $manager->getBlog($this->currentItem['blogid']);\r
                \r
                // when no parameter is defined, just check if a category is selected\r
                if ( ($key != 'catname' && $key != 'catid') || ($value == '') )\r
                {\r
-                       return (boolean) $b->isValidCategory($catid);\r
+                       return (boolean) $blog->isValidCategory($catid);\r
                }\r
                \r
                $icatid = $this->currentItem['catid'];\r
@@ -979,17 +976,17 @@ class ItemActions extends BaseActions
                // check category name\r
                if ( $key == 'catname' )\r
                {\r
-                       $value = $b->getCategoryIdFromName($value);\r
+                       $value = $blog->getCategoryIdFromName($value);\r
                        if ( $value == $icatid )\r
                        {\r
-                               return (boolean) $b->isValidCategory($icatid);\r
+                               return (boolean) $blog->isValidCategory($icatid);\r
                        }\r
                }\r
                \r
                // check category id\r
                if ( ($key == 'catid') && ($value == $icatid) )\r
                {\r
-                       return (boolean) $b->isValidCategory($icatid);\r
+                       return (boolean) $blog->isValidCategory($icatid);\r
                }\r
                return FALSE;\r
        }\r
index 892a71a..8dd1b6a 100644 (file)
@@ -98,7 +98,7 @@ class Manager
        /**\r
         * Returns the requested item object. If it is not in the cache, it will\r
         * first be loaded and then placed in the cache.\r
-        * Intended use: $item =& $manager->getItem(1234)\r
+        * Intended use: $item =& $manager->getItem(1234, 0, 0)\r
         */\r
        public function &getItem($itemid, $allowdraft, $allowfuture)\r
        {\r
@@ -118,7 +118,7 @@ class Manager
                        return 0;\r
                }\r
                \r
-               $blog =& $this->getBlog($item['iblog']);\r
+               $blog =& $this->getBlog($item['blogid']);\r
                if ( !$allowfuture && ($item['timestamp'] > $blog->getCorrectTime()) )\r
                {\r
                        return 0;\r
index 8172d43..add9899 100644 (file)
@@ -550,7 +550,7 @@ class Member
                global $manager;\r
                \r
                // item does not exists -> NOK\r
-               if ( !$manager->existsItem($itemid,1,1) )\r
+               if ( !$manager->existsItem($itemid, 1, 1) )\r
                {\r
                        return 0;\r
                }\r
@@ -578,7 +578,7 @@ class Member
                }\r
                \r
                // get item\r
-               $item =& $manager->getItem($itemid,1,1);\r
+               $item =& $manager->getItem($itemid, 1, 1);\r
                \r
                // old catid = new catid -> OK\r
                if ($item['catid'] == $newcat)\r
@@ -594,7 +594,8 @@ class Member
                }\r
                \r
                // get destination blog\r
-               $source_blogid = getBlogIDFromItemID($itemid);\r
+               $item =& $manager->getItem($itemid, 1, 1);\r
+               $source_blogid = $item['blogid'];\r
                $dest_blogid = getBlogIDFromCatID($newcat);\r
                \r
                // not a team member of destination blog -> NOK\r