function getBoard($contentId) { global $gBitDb; global $gBitUser; //var_dump($GLOBALS); if (LibertyContent::verifyId($contentId)) { // LibertyContent::load()assumes you have joined already, and will not execute any sql! // This is a significant performance optimization $bindVars = array(); $selectSql = $joinSql = $whereSql = ''; array_push($bindVars, $contentId); $gBitUser->getServicesSql('content_load_sql_function', $selectSql, $joinSql, $whereSql, $bindVars); $query = "SELECT lc.*, uue.`login` AS modifier_user, uue.`real_name` AS modifier_real_name, uuc.`login` AS creator_user, uuc.`real_name` AS creator_real_name {$selectSql}\n\t\t\tFROM `" . BIT_DB_PREFIX . "liberty_content` lc {$joinSql}\n\t\t\t\tLEFT JOIN `" . BIT_DB_PREFIX . "users_users` uue ON( uue.`user_id` = lc.`modifier_user_id` )\n\t\t\t\tLEFT JOIN `" . BIT_DB_PREFIX . "users_users` uuc ON( uuc.`user_id` = lc.`user_id` )\n\t\t\tWHERE lc.`content_id`=? {$whereSql}"; $result = $gBitDb->query($query, $bindVars); $ret = array(); if ($result && $result->numRows()) { $ret = $result->fields; $ret['creator'] = isset($result->fields['creator_real_name']) ? $result->fields['creator_real_name'] : $result->fields['creator_user']; $ret['editor'] = isset($result->fields['modifier_real_name']) ? $result->fields['modifier_real_name'] : $result->fields['modifier_user']; $ret['display_url'] = BIT_ROOT_URL . "index.php?content_id={$contentId}"; } } return $ret; }
/** * The function removes one or more tag from a piece of content */ function expungeTags($pContentId, $pTagIdArray) { if (LibertyContent::verifyId($pContentId)) { $this->mDb->StartTrans(); $query = "DELETE FROM `" . BIT_DB_PREFIX . "tags_content_map` WHERE `content_id` = ? AND `tag_id` IN (" . implode(',', array_fill(0, count($pTagIdArray), '?')) . " )"; $bind[] = $pContentId; $bind = array_merge($bind, $pTagIdArray); $result = $this->mDb->query($query, $bind); foreach ($pTagIdArray as $tagId) { if (!$this->mDb->getOne("SELECT COUNT(*) FROM `" . BIT_DB_PREFIX . "tags_content_map` WHERE `tag_id`=?", array($tagId))) { $this->expunge($tagId); } } $this->mDb->CompleteTrans(); } }