Ejemplo n.º 1
0
 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;
 }
Ejemplo n.º 2
0
 /**
  * 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();
     }
 }