当前位置: 首页>>代码示例>>PHP>>正文


PHP WCF::getDB方法代码示例

本文整理汇总了PHP中WCF::getDB方法的典型用法代码示例。如果您正苦于以下问题:PHP WCF::getDB方法的具体用法?PHP WCF::getDB怎么用?PHP WCF::getDB使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在WCF的用法示例。


在下文中一共展示了WCF::getDB方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: execute

 /**
  * @see EventListener::execute()
  */
 public function execute($eventObj, $className, $eventName)
 {
     if (WCF::getUser()->userID && WCF::getUser()->getPermission('admin.general.canUseAcp') && !defined(get_class($eventObj) . '::DO_NOT_LOG')) {
         // try to find existing session log
         $sql = "SELECT\tsessionLogID\n\t\t\t\tFROM\twcf" . WCF_N . "_acp_session_log\n\t\t\t\tWHERE\tsessionID = '" . WCF::getSession()->sessionID . "'\n\t\t\t\t\tAND lastActivityTime >= " . (TIME_NOW - SESSION_TIMEOUT);
         $row = WCF::getDB()->getFirstRow($sql);
         if (!empty($row['sessionLogID'])) {
             $sessionLogID = $row['sessionLogID'];
             // update session log
             $sql = "UPDATE\twcf" . WCF_N . "_acp_session_log\n\t\t\t\t\tSET\tlastActivityTime = " . TIME_NOW . "\n\t\t\t\t\tWHERE\tsessionLogID = " . $sessionLogID;
             WCF::getDB()->registerShutdownUpdate($sql);
         } else {
             // create new session log
             $sql = "INSERT INTO\twcf" . WCF_N . "_acp_session_log\n\t\t\t\t\t\t\t(sessionID, userID, ipAddress, hostname, userAgent, time, lastActivityTime)\n\t\t\t\t\tVALUES\t\t('" . WCF::getSession()->sessionID . "', " . WCF::getUser()->userID . ", '" . escapeString(WCF::getSession()->ipAddress) . "', '" . escapeString(@gethostbyaddr(WCF::getSession()->ipAddress)) . "', '" . escapeString(WCF::getSession()->userAgent) . "', " . TIME_NOW . ", " . TIME_NOW . ")";
             WCF::getDB()->sendQuery($sql);
             $sessionLogID = WCF::getDB()->getInsertID("wcf" . WCF_N . "_acp_session_log", 'sessionLogID');
         }
         // format request uri
         $requestURI = WCF::getSession()->requestURI;
         // remove directories
         $URIComponents = explode('/', $requestURI);
         $requestURI = array_pop($URIComponents);
         // remove session url
         $requestURI = preg_replace('/(?:\\?|&)s=[a-f0-9]{40}/', '', $requestURI);
         // save access
         $sql = "INSERT INTO\twcf" . WCF_N . "_acp_session_access_log\n\t\t\t\t\t\t(sessionLogID, packageID, ipAddress, time, requestURI, requestMethod, className)\n\t\t\t\tVALUES\t\t(" . $sessionLogID . ", " . PACKAGE_ID . ", '" . escapeString(WCF::getSession()->ipAddress) . "', " . TIME_NOW . ", '" . escapeString($requestURI) . "', '" . escapeString(WCF::getSession()->requestMethod) . "', '" . escapeString(get_class($eventObj)) . "')";
         WCF::getDB()->registerShutdownUpdate($sql);
     }
 }
开发者ID:CaribeSoy,项目名称:contest-wcf,代码行数:32,代码来源:SessionAccessLogListener.class.php

示例2: getData

 /**
  * @see CacheBuilder::getData()
  */
 public function getData($cacheResource)
 {
     list($cache, $packageID, $languageIDs) = explode('-', $cacheResource['cache']);
     $data = array();
     // get all taggable types
     $sql = "SELECT\t\ttaggable.taggableID, taggable.name\n\t\t\tFROM\t\twcf" . WCF_N . "_package_dependency package_dependency,\n\t\t\t\t\twcf" . WCF_N . "_tag_taggable taggable\n\t\t\tWHERE \t\ttaggable.packageID = package_dependency.dependency\n\t\t\t\t\tAND package_dependency.packageID = " . $packageID . "\n\t\t\tORDER BY\tpackage_dependency.priority";
     $result = WCF::getDB()->sendQuery($sql);
     $itemIDs = array();
     while ($row = WCF::getDB()->fetchArray($result)) {
         $itemIDs[$row['name']] = $row['taggableID'];
     }
     if (count($itemIDs) > 0) {
         // get tag ids
         $tagIDs = array();
         $sql = "SELECT\t\tCOUNT(*) AS counter, object.tagID\n\t\t\t\tFROM \t\twcf" . WCF_N . "_tag_to_object object\n\t\t\t\tWHERE \t\tobject.taggableID IN (" . implode(',', $itemIDs) . ")\n\t\t\t\t\t\tAND object.languageID IN (" . $languageIDs . ")\n\t\t\t\tGROUP BY \tobject.tagID\n\t\t\t\tORDER BY \tcounter DESC";
         $result = WCF::getDB()->sendQuery($sql, 500);
         while ($row = WCF::getDB()->fetchArray($result)) {
             $tagIDs[$row['tagID']] = $row['counter'];
         }
         // get tags
         if (count($tagIDs)) {
             $sql = "SELECT\t\tname, tagID\n\t\t\t\t\tFROM\t\twcf" . WCF_N . "_tag\n\t\t\t\t\tWHERE\t\ttagID IN (" . implode(',', array_keys($tagIDs)) . ")";
             $result = WCF::getDB()->sendQuery($sql);
             while ($row = WCF::getDB()->fetchArray($result)) {
                 $row['counter'] = $tagIDs[$row['tagID']];
                 $this->tags[StringUtil::toLowerCase($row['name'])] = new Tag(null, $row);
             }
             // sort by counter
             uasort($this->tags, array('self', 'compareTags'));
             $data = $this->tags;
         }
     }
     return $data;
 }
开发者ID:joaocustodio,项目名称:EmuDevstore-1,代码行数:37,代码来源:CacheBuilderTagCloud.class.php

示例3: countItems

 /**
  * @see MultipleLinkPage::countItems()
  */
 public function countItems()
 {
     parent::countItems();
     $sql = "SELECT\t\tCOUNT(*) AS count\n\t\t\tFROM \t\twcf" . WCF_N . "_user\n\t\t\tWHERE\t\tuserID IN (\n\t\t\t\t\t\tSELECT\tuserID\n\t\t\t\t\t\tFROM\twcf" . WCF_N . "_user_to_groups\n\t\t\t\t\t\tWHERE\tgroupID = " . $this->groupID . "\n\t\t\t\t\t)";
     $result = WCF::getDB()->getFirstRow($sql);
     return $result['count'];
 }
开发者ID:joaocustodio,项目名称:EmuDevstore-1,代码行数:10,代码来源:UserGroupMembersListPage.class.php

示例4: execute

 /**
  * @see Cronjob::execute()
  */
 public function execute($data)
 {
     $sql = "SELECT\t*\n\t\t\tFROM\twcf" . WCF_N . "_group\n\t\t\tWHERE\tneededAge <> 0\n\t\t\t\tOR neededPoints <> 0";
     $result = WCF::getDB()->sendQuery($sql);
     while ($row = WCF::getDB()->fetchArray($result)) {
         $userIDArray = array();
         if ($row['neededAge'] > 0) {
             $sql = "SELECT\tuserID\n\t\t\t\t\tFROM\twcf" . WCF_N . "_user\n\t\t\t\t\tWHERE\tregistrationDate <= " . (TIME_NOW - 86400 * $row['neededAge']) . "\n\t\t\t\t\t\tAND userID NOT IN (\n\t\t\t\t\t\t\tSELECT\tuserID\n\t\t\t\t\t\t\tFROM\twcf" . WCF_N . "_user_to_groups\n\t\t\t\t\t\t\tWHERE\tgroupID = " . $row['groupID'] . "\n\t\t\t\t\t\t)";
             $result2 = WCF::getDB()->sendQuery($sql);
             while ($row2 = WCF::getDB()->fetchArray($result2)) {
                 $userIDArray[] = $row2['userID'];
             }
         }
         if ($row['neededPoints'] > 0) {
             $sql = "SELECT\tuserID\n\t\t\t\t\tFROM\twcf" . WCF_N . "_user\n\t\t\t\t\tWHERE\tactivityPoints >= " . $row['neededPoints'] . "\n\t\t\t\t\t\tAND userID NOT IN (\n\t\t\t\t\t\t\tSELECT\tuserID\n\t\t\t\t\t\t\tFROM\twcf" . WCF_N . "_user_to_groups\n\t\t\t\t\t\t\tWHERE\tgroupID = " . $row['groupID'] . "\n\t\t\t\t\t\t)";
             $result2 = WCF::getDB()->sendQuery($sql);
             while ($row2 = WCF::getDB()->fetchArray($result2)) {
                 $userIDArray[] = $row2['userID'];
             }
         }
         if (count($userIDArray)) {
             $userIDArray = array_unique($userIDArray);
             // assign to group
             $sql = "INSERT INTO\twcf" . WCF_N . "_user_to_groups\n\t\t\t\t\t\t\t(userID, groupID)\n\t\t\t\t\tSELECT\t\tuserID, " . $row['groupID'] . "\n\t\t\t\t\tFROM\t\twcf" . WCF_N . "_user\n\t\t\t\t\tWHERE\t\tuserID IN (" . implode(',', $userIDArray) . ")";
             WCF::getDB()->sendQuery($sql);
             // reset sesions
             Session::resetSessions($userIDArray);
         }
     }
 }
开发者ID:joaocustodio,项目名称:EmuDevstore-1,代码行数:33,代码来源:GroupAutoJoinCronjob.class.php

示例5: countItems

 /**
  * @see MultipleLinkPage::countItems()
  */
 public function countItems()
 {
     SortablePage::countItems();
     $sql = "SELECT COUNT(DISTINCT cronjobID) AS count FROM wcf" . WCF_N . "_admin_tools_function_to_cronjob";
     $row = WCF::getDB()->getFirstRow($sql);
     return $row['count'];
 }
开发者ID:Maggan22,项目名称:wbb3addons,代码行数:10,代码来源:AdminToolsCronjobsListPage.class.php

示例6: execute

 /**
  * @see Action::execute()
  */
 public function execute()
 {
     parent::execute();
     WCF::getUser()->checkPermission('admin.user.canDeleteUser');
     require_once WCF_DIR . 'lib/data/user/UserEditor.class.php';
     require_once WCF_DIR . 'lib/data/user/group/Group.class.php';
     if ($this->userID !== 0) {
         $this->userIDs[] = $this->userID;
     }
     // active user can't delete himself
     $activeUserID = WCF::getSession()->getUser()->userID;
     $this->userIDs = array_diff($this->userIDs, array($activeUserID));
     // check permission
     if (count($this->userIDs) > 0) {
         $sql = "SELECT\tDISTINCT groupID\n\t\t\t\tFROM\twcf" . WCF_N . "_user_to_groups\n\t\t\t\tWHERE\tuserID IN (" . implode(',', $this->userIDs) . ")";
         $result = WCF::getDB()->sendQuery($sql);
         while ($row = WCF::getDB()->fetchArray($result)) {
             if (!Group::isAccessibleGroup($row['groupID'])) {
                 throw new PermissionDeniedException();
             }
         }
     }
     $deletedUsers = UserEditor::deleteUsers($this->userIDs);
     $this->executed();
     if (!empty($this->url) && (strpos($this->url, 'searchID=0') !== false || strpos($this->url, 'searchID=') === false)) {
         HeaderUtil::redirect($this->url);
     } else {
         HeaderUtil::redirect('index.php?form=UserSearch&deletedUsers=' . $deletedUsers . '&packageID=' . PACKAGE_ID . SID_ARG_2ND_NOT_ENCODED);
     }
     exit;
 }
开发者ID:CaribeSoy,项目名称:contest-wcf,代码行数:34,代码来源:UserDeleteAction.class.php

示例7: execute

 /**
  * @see Action::execute()
  */
 public function execute()
 {
     parent::execute();
     // count board
     $sql = "SELECT\tCOUNT(*) AS count\n\t\t\tFROM\twbb" . WBB_N . "_board";
     $row = WCF::getDB()->getFirstRow($sql);
     $count = $row['count'];
     // get board ids
     $boardIDs = '';
     $sql = "SELECT\t\tboardID\n\t\t\tFROM\t\twbb" . WBB_N . "_board\n\t\t\tORDER BY\tboardID";
     $result = WCF::getDB()->sendQuery($sql, $this->limit, $this->limit * $this->loop);
     while ($row = WCF::getDB()->fetchArray($result)) {
         $boardIDs .= ',' . $row['boardID'];
         // update last post
         $board = new BoardEditor($row['boardID']);
         $board->setLastPosts();
     }
     if (empty($boardIDs)) {
         // clear board cache
         WCF::getCache()->clear(WBB_DIR . 'cache', 'cache.boardData.php');
         $this->calcProgress();
         $this->finish();
     }
     // update boards
     $sql = "UPDATE\twbb" . WBB_N . "_board board\n\t\t\tSET\tthreads = (\n\t\t\t\t\tSELECT\tCOUNT(*)\n\t\t\t\t\tFROM\twbb" . WBB_N . "_thread\n\t\t\t\t\tWHERE\tboardID = board.boardID\n\t\t\t\t\t\tAND isDeleted = 0\n\t\t\t\t\t\tAND isDisabled = 0\n\t\t\t\t),\n\t\t\t\tposts = (\n\t\t\t\t\tSELECT\tIFNULL(SUM(replies), 0) + COUNT(*)\n\t\t\t\t\tFROM\twbb" . WBB_N . "_thread thread\n\t\t\t\t\tWHERE\tboardID = board.boardID\n\t\t\t\t\t\tAND isDeleted = 0\n\t\t\t\t\t\tAND isDisabled = 0\n\t\t\t\t)\n\t\t\tWHERE\tboard.boardID IN (0" . $boardIDs . ")";
     WCF::getDB()->sendQuery($sql);
     $this->executed();
     $this->calcProgress($this->limit * $this->loop, $count);
     $this->nextLoop();
 }
开发者ID:joaocustodio,项目名称:EmuDevstore-1,代码行数:33,代码来源:UpdateBoardsAction.class.php

示例8: getData

 /**
  * @see CacheBuilder::getData()
  */
 public function getData($cacheResource)
 {
     $sql = "SELECT *\r\n\t\t\t\tFROM ugml_stat_type\r\n\t\t\t\tGROUP BY ugml_stat_type.statTypeID";
     $result = WCF::getDB()->sendQuery($sql);
     while ($row = WCF::getDB()->fetchArray($result)) {
         $sql = "SELECT DISTINCT `time`\r\n\t\t\t\t\tFROM ugml_stat_entry_archive\r\n\t\t\t\t\tWHERE statTypeID = " . $row['statTypeID'];
         $result2 = WCF::getDB()->sendQuery($sql);
         while ($row2 = WCF::getDB()->fetchArray($result2)) {
             $row['times'][] = $row2['time'];
         }
         // range
         $sql = "SELECT MAX(rank)\r\n\t\t\t\t\t\tAS max\r\n\t\t\t\t\tFROM ugml_stat_entry\r\n\t\t\t\t\tWHERE statTypeID = " . $row['statTypeID'];
         $row += WCF::getDB()->getFirstRow($sql);
         $this->data[$row['statTypeID']] = $row;
     }
     $this->data = array('byStatTypeID' => $this->data, 'byTypeName' => array());
     foreach ($this->data['byStatTypeID'] as $statTypeID => $row) {
         $name = StringUtil::firstCharToUpperCase($row['type']) . StringUtil::firstCharToUpperCase($row['name']);
         $this->data['byTypeName'][$name] = $row;
     }
     // get the names and the types
     $sql = "SELECT GROUP_CONCAT(DISTINCT type)\r\n\t\t\t\t\t\t\tAS types,\r\n\t\t\t\t\t\tGROUP_CONCAT(DISTINCT name)\r\n\t\t\t\t\t\t\tAS names\r\n\t\t\t\tFROM ugml_stat_type\r\n\t\t\t\tGROUP BY NULL";
     $row = WCF::getDB()->getFirstRow($sql);
     $this->data['types'] = explode(',', $row['types']);
     $this->data['names'] = explode(',', $row['names']);
     return $this->data;
 }
开发者ID:sonicmaster,项目名称:RPG,代码行数:30,代码来源:CacheBuilderStatTypes.class.php

示例9: readPageMenuItems

 /**
  * Gets page menu items.
  */
 protected function readPageMenuItems()
 {
     $headerPosition = $footerPosition = 1;
     $sql = "SELECT\t\t*\n\t\t\tFROM\t\twcf" . WCF_N . "_page_menu_item\n\t\t\tWHERE\t\tpackageID IN (\n\t\t\t\t\t\tSELECT\tdependency\n\t\t\t\t\t\tFROM\twcf" . WCF_N . "_package_dependency\n\t\t\t\t\t\tWHERE\tpackageID = " . PACKAGE_ID . "\n\t\t\t\t\t)\n\t\t\tORDER BY\tshowOrder";
     $result = WCF::getDB()->sendQuery($sql);
     while ($row = WCF::getDB()->fetchArray($result)) {
         $hasEnabledOption = true;
         // check the options of this item
         if (!empty($row['options'])) {
             $hasEnabledOption = false;
             $options = explode(',', strtoupper($row['options']));
             foreach ($options as $option) {
                 if (defined($option) && constant($option)) {
                     $hasEnabledOption = true;
                     break;
                 }
             }
         }
         if (!$hasEnabledOption) {
             continue;
         }
         if ($row['menuPosition'] == 'header') {
             $row['showOrder'] = $headerPosition;
             $this->headerMenuItemList[$row['menuItemID']] = new PageMenuItem(null, $row);
             $headerPosition++;
         } else {
             $row['showOrder'] = $footerPosition;
             $this->footerMenuItemList[$row['menuItemID']] = new PageMenuItem(null, $row);
             $footerPosition++;
         }
     }
 }
开发者ID:joaocustodio,项目名称:EmuDevstore-1,代码行数:35,代码来源:PageMenuItemListPage.class.php

示例10: save

 /**
  * @see Form::save()
  */
 public function save()
 {
     parent::save();
     // send content type
     header('Content-Type: text/' . $this->fileType . '; charset=' . CHARSET);
     header('Content-Disposition: attachment; filename="export.' . $this->fileType . '"');
     if ($this->fileType == 'xml') {
         echo "<?xml version=\"1.0\" encoding=\"" . CHARSET . "\"?>\n<addresses>\n";
     }
     // get users
     $sql = "SELECT\t\temail\n\t\t\tFROM\t\twcf" . WCF_N . "_user\n\t\t\tWHERE\t\tuserID IN (" . $this->userIDs . ")\n\t\t\tORDER BY\temail";
     $result = WCF::getDB()->sendQuery($sql);
     $i = 0;
     $j = WCF::getDB()->countRows($result) - 1;
     while ($row = WCF::getDB()->fetchArray($result)) {
         if ($this->fileType == 'xml') {
             echo "<address><![CDATA[" . StringUtil::escapeCDATA($row['email']) . "]]></address>\n";
         } else {
             echo $this->textSeparator . $row['email'] . $this->textSeparator . ($i < $j ? $this->separator : '');
         }
         $i++;
     }
     if ($this->fileType == 'xml') {
         echo "</addresses>";
     }
     UserEditor::unmarkAll();
     $this->saved();
     exit;
 }
开发者ID:CaribeSoy,项目名称:contest-wcf,代码行数:32,代码来源:UserEmailAddressExportForm.class.php

示例11: getData

 /**
  * @see CacheBuilder::getData()
  */
 public function getData($cacheResource)
 {
     list($cache, $packageID) = explode('-', $cacheResource['cache']);
     $data = array('actions' => array('user' => array(), 'admin' => array()), 'inheritedActions' => array('user' => array(), 'admin' => array()));
     // get all listeners and filter options with low priority
     $sql = "SELECT\t\tlistener.*, package.packageDir\n\t\t\tFROM\t\twcf" . WCF_N . "_package_dependency package_dependency,\n\t\t\t\t\twcf" . WCF_N . "_event_listener listener\n\t\t\tLEFT JOIN\twcf" . WCF_N . "_package package\n\t\t\tON\t\t(package.packageID = listener.packageID)\n\t\t\tWHERE \t\tlistener.packageID = package_dependency.dependency\n\t\t\t\t\tAND package_dependency.packageID = " . $packageID . "\n\t\t\tORDER BY\tpackage_dependency.priority";
     $result = WCF::getDB()->sendQuery($sql);
     while ($row = WCF::getDB()->fetchArray($result)) {
         $row['listenerClassName'] = StringUtil::getClassName($row['listenerClassFile']);
         // distinguish between inherited actions and non-inherited actions
         if (!$row['inherit']) {
             $data['actions'][$row['environment']][EventHandler::generateKey($row['eventClassName'], $row['eventName'])][] = $row;
         } else {
             if (!isset($data['inheritedActions'][$row['environment']][$row['eventClassName']])) {
                 $data['inheritedActions'][$row['eventClassName']] = array();
             }
             $data['inheritedActions'][$row['environment']][$row['eventClassName']][$row['eventName']][] = $row;
         }
     }
     // sort data by class name
     foreach ($data['actions'] as $environment => $listenerMap) {
         foreach ($listenerMap as $key => $listeners) {
             uasort($data['actions'][$environment][$key], array('CacheBuilderEventListener', 'sortListeners'));
         }
     }
     foreach ($data['inheritedActions'] as $environment => $listenerMap) {
         foreach ($listenerMap as $class => $listeners) {
             foreach ($listeners as $key => $val) {
                 uasort($data['inheritedActions'][$environment][$class][$key], array('CacheBuilderEventListener', 'sortListeners'));
             }
         }
     }
     return $data;
 }
开发者ID:CaribeSoy,项目名称:contest-wcf,代码行数:37,代码来源:CacheBuilderEventListener.class.php

示例12: updateRatings

 /**
  * updates scores
  * @param	array		$data
  */
 public static function updateRatings($solutionID, $userID, $data)
 {
     foreach ($data as $optionID => $score) {
         $sql = "INSERT INTO\twcf" . WCF_N . "_contest_solution_rating\n\t\t\t\t\t\t(solutionID, userID, optionID, score, time)\n\t\t\t\tVALUES\t\t(" . intval($solutionID) . ", " . intval($userID) . ", " . intval($optionID) . ", " . intval($score) . ", " . TIME_NOW . ")\n\t\t\t\tON DUPLICATE KEY UPDATE\n\t\t\t\t\t\tscore = " . intval($score) . ",\n\t\t\t\t\t\ttime = " . TIME_NOW;
         WCF::getDB()->sendQuery($sql);
     }
 }
开发者ID:CaribeSoy,项目名称:contest-wcf,代码行数:11,代码来源:ContestSolutionRatingEditor.class.php

示例13: getData

 /**
  * @see CacheBuilder::getData()
  */
 public function getData($cacheResource)
 {
     $data = array('boards' => array(), 'boardStructure' => array(), 'moderators' => array());
     // boards
     $sql = "SELECT\t*\n\t\t\tFROM \twbb" . WBB_N . "_board";
     $result = WCF::getDB()->sendQuery($sql);
     while ($row = WCF::getDB()->fetchArray($result)) {
         $data['boards'][$row['boardID']] = new Board(null, $row);
     }
     // board structure
     $sql = "SELECT\t\t*\n\t\t\tFROM \t\twbb" . WBB_N . "_board_structure\n\t\t\tORDER BY \tparentID ASC, position ASC";
     $result = WCF::getDB()->sendQuery($sql);
     while ($row = WCF::getDB()->fetchArray($result)) {
         $data['boardStructure'][$row['parentID']][] = $row['boardID'];
     }
     // board moderators
     $sql = "SELECT \t\tuser.username, wcf_group.groupName,\n\t\t\t\t\tmoderator.*, IFNULL(user.username, wcf_group.groupName) AS name\n\t\t\tFROM \t\twbb" . WBB_N . "_board_moderator moderator\n\t\t\tLEFT JOIN \twcf" . WCF_N . "_user user\n\t\t\tON\t\t(user.userID = moderator.userID)\n\t\t\tLEFT JOIN \twcf" . WCF_N . "_group wcf_group\n\t\t\tON \t\t(wcf_group.groupID = moderator.groupID)\n\t\t\tORDER BY \tboardID,\n\t\t\t\t\tname";
     $result = WCF::getDB()->sendQuery($sql);
     while ($row = WCF::getDB()->fetchArray($result)) {
         if (empty($row['name'])) {
             continue;
         }
         if ($row['userID'] != 0) {
             $object = new User(null, $row);
             $key = 'u' . $row['userID'];
         } else {
             $object = new Group(null, $row);
             $key = 'g' . $row['groupID'];
         }
         $data['moderators'][$row['boardID']][$key] = $object;
     }
     return $data;
 }
开发者ID:joaocustodio,项目名称:EmuDevstore-1,代码行数:36,代码来源:CacheBuilderBoard.class.php

示例14: execute

 /**
  * @see EventListener::execute()
  */
 public function execute($eventObj, $className, $eventName)
 {
     $um = WCF::getTPL()->get('userMessages');
     if ($um && preg_match('/page=UserGuestbook/', $um)) {
         return;
     }
     if (WCF::getUser()->userID) {
         $userID = WCF::getUser()->userID;
     }
     if (!empty($userID)) {
         $ret = WCF::getTPL()->get('userMessages');
         require_once WCF_DIR . 'lib/data/user/UserProfile.class.php';
         $user = new UserProfile($userID, null, null, null);
         if ($user->userGuestbook_sendInfo) {
             $sql = "SELECT gbh.userLastVisit, gbh.newEntries, gbh.lastEntryUserID, gbh.lastEntry, u.username" . "\n  FROM wcf" . WCF_N . "_user_guestbook_header gbh" . "\n  LEFT JOIN wcf" . WCF_N . "_user u ON (u.userID = gbh.lastEntryUserID)" . "\n WHERE gbh.userID = " . $userID . "\n   AND gbh.userID != gbh.lastEntryUserID";
             $row = WCF::getDB()->getFirstRow($sql);
             if (!empty($row['newEntries']) && !empty($row['lastEntry']) && $row['lastEntry'] > $row['userLastVisit']) {
                 if ($row['newEntries'] != 1) {
                     $msg = WCF::getLanguage()->get('wcf.user.guestbook.infoMessages', array('$newEntries' => $row['newEntries']));
                 } else {
                     $msg = WCF::getLanguage()->get('wcf.user.guestbook.infoMessage', array('$username' => $row['username']));
                 }
                 WCF::getTPL()->append('userMessages', '<p class="info"><a href="index.php?page=UserGuestbook&userID=' . $userID . SID_ARG_2ND . '">' . $msg . '</a></p>');
             }
         }
     }
 }
开发者ID:Maggan22,项目名称:wbb3addons,代码行数:30,代码来源:UserGuestBookInfoListener.class.php

示例15: execute

 /**
  * @see Action::execute()
  */
 public function execute()
 {
     parent::execute();
     // count posts
     $sql = "SELECT\tCOUNT(*) AS count\n\t\t\tFROM\twbb" . WBB_N . "_post";
     $row = WCF::getDB()->getFirstRow($sql);
     $count = $row['count'];
     // get postids
     $postIDs = '';
     $sql = "SELECT\t\tpostID\n\t\t\tFROM\t\twbb" . WBB_N . "_post\n\t\t\tORDER BY\tpostID";
     $result = WCF::getDB()->sendQuery($sql, $this->limit, $this->limit * $this->loop);
     while ($row = WCF::getDB()->fetchArray($result)) {
         $postIDs .= ',' . $row['postID'];
     }
     if (empty($postIDs)) {
         $this->calcProgress();
         $this->finish();
     }
     // update posts
     $sql = "UPDATE\twbb" . WBB_N . "_post post\n\t\t\tSET\tattachments = IFNULL((\n\t\t\t\t\tSELECT\tCOUNT(*)\n\t\t\t\t\tFROM\twcf" . WCF_N . "_attachment attachment\n\t\t\t\t\tWHERE\tattachment.packageID = " . PACKAGE_ID . "\n\t\t\t\t\t\tAND attachment.containerID = post.postID\n\t\t\t\t\t\tAND attachment.containerType = 'post'\n\t\t\t\t), 0)\n\t\t\tWHERE\tpost.postID IN (0" . $postIDs . ")";
     WCF::getDB()->sendQuery($sql);
     $this->executed();
     $this->calcProgress($this->limit * $this->loop, $count);
     $this->nextLoop();
 }
开发者ID:joaocustodio,项目名称:EmuDevstore-1,代码行数:28,代码来源:UpdatePostsAction.class.php


注:本文中的WCF::getDB方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。