function GenAnyBlockContent($sOrder = 'last', $iProfileID = 0, $sLimit = "LIMIT 5") { global $site; global $short_date_format; $php_date_format = getParam('php_date_format'); $iBlogLimitChars = (int) getParam("max_blog_preview"); $sClockIcon = getTemplateIcon('clock.gif'); $sOrderS = ''; switch ($sOrder) { case 'last': $sOrderS = "ORDER BY `DateTime` DESC"; break; case 'latest': $sOrderS = "ORDER BY `DateTime` DESC"; break; case 'rand': $sOrderS = "ORDER BY RAND()"; break; case 'top': $sOrderS = "ORDER BY `CommCount` DESC"; break; } $sProfileS = $iProfileID > 0 ? "`ClassifiedsAdvertisements`.`IDProfile` = '{$iProfileID}'" : '1'; $sTimeAddon = $iProfileID > 0 ? '' : "AND DATE_ADD(`ClassifiedsAdvertisements`.`DateTime` , INTERVAL `ClassifiedsAdvertisements`.`LifeTime` DAY) > NOW()"; $oCmts = new BxDolCmts('classifieds', 0, 0); $sQuery = "\r\n\t\t\tSELECT DISTINCT\r\n\t\t\t`ClassifiedsAdvertisements`.`ID`,\r\n\t\t\t`ClassifiedsAdvertisements`.`Subject`,\r\n\t\t\t`ClassifiedsAdvertisements`.`EntryUri`,\r\n\t\t\t`ClassifiedsAdvertisements`.`Media`,\r\n\t\t\t`Profiles`.`NickName`,\r\n\t\t\tUNIX_TIMESTAMP( `ClassifiedsAdvertisements`.`DateTime` ) as `DateTime_f`,\r\n\t\t\t`ClassifiedsAdvertisements`.`DateTime`,\r\n\t\t\t`Classifieds`.`Name`, `Classifieds`.`CEntryUri`, `Classifieds`.`ID` AS `CatID`,\r\n\t\t\t`ClassifiedsSubs`.`NameSub`, `ClassifiedsSubs`.`SEntryUri`, `ClassifiedsSubs`.`ID` AS `SubCatID`,\r\n\t\t\t`ClassifiedsAdvertisements`.`Message`,\r\n\t\t\tCOUNT(`tc`.`cmt_id`) AS 'CommCount'\r\n\t\t\tFROM `ClassifiedsAdvertisements`\r\n\t\t\tLEFT JOIN `ClassifiedsSubs`\r\n\t\t\tON `ClassifiedsSubs`.`ID`=`ClassifiedsAdvertisements`.`IDClassifiedsSubs`\r\n\t\t\tLEFT JOIN `Classifieds`\r\n\t\t\tON `Classifieds`.`ID`=`ClassifiedsSubs`.`IDClassified`\r\n\t\t\tLEFT JOIN `Profiles` ON `Profiles`.`ID`=`ClassifiedsAdvertisements`.`IDProfile`\r\n\t\t\tLEFT JOIN `" . $oCmts->getCommentsTableName() . "` AS `tc` ON `tc`.`cmt_object_id`=`ClassifiedsAdvertisements`.`ID`\r\n\t\t\tWHERE\r\n\t\t\t{$sProfileS}\r\n\t\t\tAND `ClassifiedsAdvertisements`.`Status` = 'active'\r\n\t\t\t{$sTimeAddon}\r\n\t\t\tGROUP BY `ClassifiedsAdvertisements`.`ID`\r\n\t\t\t{$sOrderS}\r\n\t\t\t{$sLimit}\r\n\t\t"; $rBlogs = db_res($sQuery); if (!mysql_num_rows($rBlogs)) { return ''; } $sBlocks = ''; while ($aBlog = mysql_fetch_assoc($rBlogs)) { if ($sOrder == 'top' && $aBlog['CommCount'] == 0) { continue; } $sPic = $this->getImageCode($aBlog['Media'], TRUE); $sGenUrl = $this->genUrl($aBlog['ID'], $aBlog['EntryUri']); $sGenCUrl = $this->bUseFriendlyLinks && $this->bAdminMode == false ? $site['url'] . 'ads/cat/' . $aBlog['CEntryUri'] : "{$this->sCurrBrowsedFile}?bClassifiedID={$aBlog['CatID']}"; $sGenSCUrl = $this->bUseFriendlyLinks && $this->bAdminMode == false ? $site['url'] . 'ads/subcat/' . $aBlog['SEntryUri'] : "{$this->sCurrBrowsedFile}?bSubClassifiedID={$aBlog['SubCatID']}"; $sLinkMore = ''; if (strlen($aBlog['Message']) > $iBlogLimitChars) { $sLinkMore = "... <a href=\"{$sGenUrl}\">" . _t('_Read more') . "</a>"; } $sBlogSnippet = mb_substr(strip_tags($aBlog['Message']), 0, $iBlogLimitChars) . $sLinkMore; $sDataTimeFormatted = date($php_date_format, $aBlog['DateTime_f']); $sInCatFormatted = _t('_in Category', getTemplateIcon('ad_category.gif'), $sGenCUrl, process_line_output($aBlog['Name'])); $sSubNameF = process_line_output($aBlog['NameSub']); $sCommentsF = _t('_comments N', getTemplateIcon('add_comment.gif'), $aBlog['CommCount']); $sSubjectF = process_line_output($arr['Subject']); $sBlocks .= <<<EOF <div class="blog_block"> \t<div class="icon_block"> \t\t<div class="thumbnail_block" style="float:left;"> \t\t\t<a href="{$sGenUrl}" class="bottom_text"> \t\t\t\t{$sPic} \t\t\t</a> \t\t</div> \t</div> \t<div class="blog_wrapper_n"> \t\t<div class="blog_subject_n"> \t\t\t<a href="{$sGenUrl}" class="bottom_text"> \t\t\t\t{$sSubjectF} \t\t\t</a> \t\t</div> \t\t<div class="blogInfo"> \t\t\t<span><img src="{$sClockIcon}" alt="" />{$sDataTimeFormatted} </span> \t\t\t<span>{$sInCatFormatted} / <a href="{$sGenCUrl}">{$sSubNameF}</a></span> \t\t\t<span>{$sCommentsF}</span> \t\t</div> \t\t<div class="blogSnippet"> \t\t\t{$sBlogSnippet} \t\t</div> \t</div> </div> <div class="clear_both"></div> EOF; } return $sBlocks; }
function GenAnyBlockContent($sOrder = 'last', $iProfileID = 0, $sLimit = "LIMIT 5") { global $site; global $short_date_format; $php_date_format = getParam('php_date_format'); $iBlogLimitChars = (int) getParam("max_blog_preview"); $sClockIcon = getTemplateIcon('clock.gif'); $sOrderS = ''; switch ($sOrder) { case 'last': $sOrderS = "ORDER BY `BlogPosts`.`PostDate` DESC"; break; case 'latest': $sOrderS = "ORDER BY `BlogPosts`.`PostDate` DESC"; break; case 'rand': $sOrderS = "ORDER BY RAND()"; break; case 'top': $sOrderS = "ORDER BY `CommentsNum` DESC"; break; } $sProfileS = $iProfileID > 0 ? "`BlogCategories`.`OwnerID` = '{$iProfileID}'" : '1'; $oCmts = new BxDolCmts('blogposts', 0, 0); $sQuery = "\n\t\t\tSELECT DISTINCT\n\t\t\t\t`BlogPosts`.`PostID`,\n\t\t\t\t`BlogPosts`.`CategoryID`,\n\t\t\t\t`BlogCategories`.`OwnerID`,\n\t\t\t\t`BlogPosts`.`PostText`,\n\t\t\t\tUNIX_TIMESTAMP( `BlogPosts`.`PostDate` ) AS `PostDate_f`,\n\t\t\t\t`BlogPosts`.`PostCaption`,\n\t\t\t\t`BlogPosts`.`PostUri`,\n\t\t\t\t`BlogCategories`.`CategoryName`,\n\t\t\t\t`BlogCategories`.`CategoryUri`,\n\t\t\t\t`Profiles`.`ID` AS `ProfID`,\n\t\t\t\t`Profiles`.`NickName` AS `NickName`,\n\t\t\t\tCOUNT( `tc`.`cmt_id` ) AS `CommentsNum`\n\t\t\tFROM `BlogCategories`\n\t\t\tLEFT JOIN `BlogPosts`\n\t\t\t\tON `BlogPosts`.`CategoryID` = `BlogCategories`.`CategoryID`\n\t\t\tINNER JOIN `Profiles`\n\t\t\t\tON `BlogCategories`.`OwnerID` = `Profiles`.`ID`\n\t\t\tLEFT JOIN `" . $oCmts->getCommentsTableName() . "` AS `tc` ON\n\t\t\t\t`BlogPosts`.`PostID` = `tc`.`cmt_object_id`\n\t\t\tWHERE\n\t\t\t\t{$sProfileS} AND\n\t\t\t\t`BlogPosts`.`PostReadPermission` = 'public' AND\n\t\t\t\t`BlogPosts`.`PostStatus` = 'approval'\n\t\t\tGROUP BY `BlogPosts`.`PostID`\n\t\t\t{$sOrderS}\n\t\t\t{$sLimit}\n\t\t"; $rBlogs = db_res($sQuery); if (!mysql_num_rows($rBlogs)) { return ''; } $sBlocks = ''; while ($aBlog = mysql_fetch_assoc($rBlogs)) { $sLinkMore = ''; $aUser = array('Permalink' => $aBlog['NickName'], 'Link' => $aBlog['OwnerID']); $aPost = array('Permalink' => $aBlog['PostUri'], 'Link' => $aBlog['PostID']); $aCat = array('Permalink' => $aBlog['CategoryUri'], 'Link' => $aBlog['CategoryID']); $sLinkMoreUrl = $this->genBlogLink('show_member_post', $aUser, '', $aPost); $sCatLink = $this->genBlogLink('show_member_blog', $aUser, $aCat); if (strlen($aBlog['PostText']) > $iBlogLimitChars) { $sLinkMore = "... <a href=\"" . $sLinkMoreUrl . "\">" . _t('_Read more') . "</a>"; } $sBlogSnippet = mb_substr(strip_tags($aBlog['PostText']), 0, $iBlogLimitChars) . $sLinkMore; $sDataTimeFormatted = date($php_date_format, $aBlog['PostDate_f']); $sCategF = _t('_in Category', getTemplateIcon('folder_small.png'), $sCatLink, $aBlog['CategoryName']); $sCommF = _t('_comments N', getTemplateIcon('add_comment.gif'), $aBlog['CommentsNum']); $sProfileF = $iProfileID > 0 ? '' : '<span>' . _t('_By Author', $aBlog['NickName'], $aBlog['NickName']) . '</span>'; $sBlocks .= <<<EOF <div class="blogBlock"> \t<div class="blogHead"> \t\t<a href="{$sLinkMoreUrl}" class="bottom_text"> \t\t\t{$aBlog['PostCaption']} \t\t</a> \t</div> \t<div class="blogInfo"> \t\t{$sProfileF} \t\t<span><img src="{$sClockIcon}" alt="" />{$sDataTimeFormatted}</span> \t\t<span>{$sCategF} </span> \t\t<span>{$sCommF}</span> \t</div> \t<div class="blogSnippet"> \t\t{$sBlogSnippet} \t</div> </div> <div class="clear_both"></div> EOF; } return $sBlocks; }