/**
     * Generate presentation Advertisement code with images and other
     *
     * @param $id	ID of Advertisement
     * @return HTML presentation of data
     */
    function ActionPrintAdvertisement($id)
    {
        global $site;
        global $aPreValues;
        global $logged;
        $iAdvertisementID = (int) $id;
        $sRetHtml = '';
        $aSqlResStr = $this->GetAdvertisementData($iAdvertisementID);
        if ($aSqlResStr) {
            $sAdminLocalAreaC = _t('_AdminArea');
            $sBigImg = $this->getBigImageCode($aSqlResStr['Media']);
            $bUseNewFeature = getParam('ads_gallery_feature') == 'on' ? true : false;
            $sImg = $this->getImageCode($aSqlResStr['Media'], false, $bUseNewFeature);
            $aNameRet = $this->GetProfileData($aSqlResStr['IDProfile']);
            $sCountryName = $aNameRet['Country'] == "" ? $sAdminLocalAreaC : _t($aPreValues['Country'][$aNameRet['Country']]['LKey']);
            $sCountryPic = $aNameRet['Country'] == '' ? '' : ' <img alt="' . $aNameRet['Country'] . '" src="' . ($site['flags'] . strtolower($aNameRet['Country'])) . '.gif"/>';
            /*if( $logged['member'] )
            				$sVisible = 'memb';
            			else
            				$sVisible = 'non';
            			$sSqlCols = "
            				SELECT * 
            				FROM `ClsAdvCompose` 
            				WHERE
            					`Column` != 0 AND
            					FIND_IN_SET( '{$sVisible}', `Visible` )
            				ORDER BY `Column` , `Order`
            			";
            
            			$sqlCaptRes = db_res($sSqlCols);
            			$aCaptions = array();
            			while($aCapSelect = mysql_fetch_assoc($sqlCaptRes)) {
            				$aCaptions[$aCapSelect['Func']] = _t( $aCapSelect['Caption'] );
            			}*/
            $sPostedByC = _t('_Posted by');
            $sAdminC = _t('_Admin');
            $sPhoneC = _t('_Phone');
            $sICQC = _t('_ICQ');
            $sDetailsC = _t('_Details');
            $sReplyC = _t('_Reply');
            $sSubjectC = _t('_Subject');
            $sDateC = _t('_Date');
            $sLocationC = _t('_Location');
            $sDescriptionC = _t('_Description');
            $sUserOtherListC = _t('_Users other listing');
            $sActionsC = _t('_Actions');
            $sPhotosC = _t('_Photos');
            $sEditC = _t('_Edit');
            $sAdvertisementC = _t('_Advertisement');
            $sTagsC = _t('_Tags');
            $sBuyNowC = _t('_Buy Now');
            $sDeleteC = _t('_Delete');
            $sSureC = _t("_Are you sure");
            $sActivateC = _t('_Activate');
            $sPostedBy = '';
            if (!$aNameRet['NickName']) {
                $sPostedBy .= '<div class="cls_res_info">' . $sPostedByC . ': ' . $sAdminC . '</div>';
            } else {
                $sPostedBy .= '<div class="cls_res_info">';
                $sPostedBy .= $sPostedByC . ': <span style="color:#333333;"><a href="' . getProfileLink($aNameRet['ID']) . '">' . $aNameRet['NickName'] . '</a></span>';
                $sPostedBy .= '</div>';
                if ($aNameRet['Phone'] != "") {
                    $sPostedBy .= '<div class="cls_res_info">';
                    $sPostedBy .= $sPhoneC . ": <div class=\"clr3\">{$aNameRet['Phone']}</div>";
                    $sPostedBy .= '</div>';
                }
                if ($aNameRet['IcqUIN'] != "") {
                    $sPostedBy .= '<div class="cls_res_info">';
                    $sPostedBy .= $sICQC . "#<div class=\"clr3\">{$aNameRet['IcqUIN']}</div>";
                    $sPostedBy .= '</div>';
                }
            }
            $sTimeAgo = _format_when($aSqlResStr['sec']);
            $sCustDetails .= $aSqlResStr['CustomFieldName1'] || $aSqlResStr['CustomFieldName2'] ? "{$sDetailsC}: " : '';
            $sCustDetails .= $aSqlResStr['CustomFieldName1'] && $aSqlResStr['CustomFieldValue1'] ? "<div class=\"clr3\">{$aSqlResStr['Unit']} {$aSqlResStr['CustomFieldValue1']}</div>" : '';
            $sCustDetails .= $aSqlResStr['CustomFieldName1'] && $aSqlResStr['CustomFieldName2'] && $aSqlResStr['CustomFieldValue1'] && $aSqlResStr['CustomFieldValue2'] ? " - " : '';
            $sCustDetails .= $aSqlResStr['CustomFieldName2'] && $aSqlResStr['CustomFieldValue2'] ? "<div class=\"clr3\">{$aSqlResStr['Unit']} {$aSqlResStr['CustomFieldValue2']}</div>" : '';
            $sTags .= $sTagsC . ': <div class="clr3">';
            $aTags = array();
            $aTagsLinks = array();
            $aTags = explode(",", $aSqlResStr['Tags']);
            foreach ($aTags as $sTag) {
                $sSubLink = $this->bUseFriendlyLinks ? "ads/tag/" : "classifieds_tags.php?tag=";
                $aTagsLinks[] = '<a href="' . "{$site['url']}{$sSubLink}{$sTag}" . '">' . $sTag . '</a>';
            }
            $sTags .= implode(", ", $aTagsLinks);
            $sTags .= '</div>';
            $sMemberActions = '';
            $iMemberID = $logged['member'] ? (int) $_COOKIE['memberID'] : -1;
            //$iMemberID = (int)$_COOKIE['memberID'];
            if ($iMemberID > 0 and $iMemberID != $aNameRet['ID']) {
                //print Send PM button and other actions
                $bBnp = getParam('enable_paid_system');
                $sBuyNow = '';
                if ($bBnp == 'on') {
                    $sBuyNow = <<<EOF
<img src="{$site['icons']}cool.gif" alt="Buy" title="Buy" class="marg_icon" />
<a class="actions" href="{$this->sCurrBrowsedFile}" onclick="document.forms['BuyNowForm'].submit(); return false;">
\t{$sBuyNowC}
</a>
<form action="{$this->sCurrBrowsedFile}" name="BuyNowForm" method="post">
\t<input type="hidden" name="BuyNow" value="BuyNow" />
\t<input type="hidden" name="IDAdv" value="{$id}" />
\t<input type="hidden" name="IDSeller" value="{$aSqlResStr['IDProfile']}" />
</form>
<br/>
EOF;
                }
                $sMemberActions .= <<<EOF
{$sBuyNow}
<img src="{$site['icons']}action_send.gif" alt="Post PM" title="Post PM" class="marg_icon" />
<a class="actions" href="{$this->sCurrBrowsedFile}" onclick="document.forms['post_pm'].submit(); return false;">
{$sReplyC}
</a>
<form action="{$site['url']}compose.php" name="post_pm" id="post_pm" method="post">
\t<input type="hidden" name="ID" value="{$aSqlResStr['IDProfile']}" />
\t<input type="hidden" name="subject" value="{$aSqlResStr['Subject']}" />
\t<input type="hidden" value="{$sReplyC}" />
</form>
EOF;
            } elseif ($iMemberID == $aNameRet['ID'] and $this->bAdminMode == FALSE) {
                $sMemberActions .= '<div class="cls_result_row">';
                $sMemberActions .= $this->CenteredActionsBlock('<img src="' . $site['icons'] . 'description_edit.png" alt="' . $sEditC . '" title="' . $sEditC . '" class="marg_icon" />', '<a class="actions" href="' . $this->sCurrBrowsedFile . '" onclick="UpdateField(\'EditAdvertisementID\',' . $iAdvertisementID . '); document.forms.command_edit_advertisement.submit(); return false;">' . $sEditC . '</a>');
                $sMemberActions .= '</div>';
                $sMemberActions .= '<div class="cls_result_row">';
                $sMemberActions .= $this->CenteredActionsBlock('<img src="' . $site['icons'] . 'action_block.gif" alt="' . $sDeleteC . '" title="' . $sDeleteC . '" class="marg_icon" />', '<a class="actions" href="' . $this->sCurrBrowsedFile . '" onclick="if (confirm(\'' . $sSureC . '\')) { UpdateField(\'DeleteAdvertisementID\',' . $iAdvertisementID . ');document.forms.command_delete_advertisement.submit(); } return false;">' . $sDeleteC . '</a>');
                $sMemberActions .= '</div>';
            }
            $sAdminPart = '';
            if ($this->bAdminMode) {
                $sActivateAbil = $aSqlResStr['Status'] == 'active' ? '' : <<<EOF
<div class="ar">
\t<span style="vertical-align: middle;margin-right:5px;">
\t<img src="{$site['icons']}online.gif" style="position:static;" />
\t</span>
\t<span>
\t<a class="actions" href="{$this->sCurrBrowsedFile}" onclick="UpdateField('ActivateAdvertisementID',{$iAdvertisementID});document.forms.command_activate_advertisement.submit(); return false;">
\t{$sActivateC}</a>
\t</span>
</div>
EOF;
                $sAdminPart .= <<<EOF
<div class="clear_both"></div>
{$sActivateAbil}
<div class="ar">
\t<span style="vertical-align: middle;margin-right:5px;">
\t<img src="{$site['icons']}delete.png" style="position:static;" />
\t</span>
\t<span>
\t<a class="actions" href="{$this->sCurrBrowsedFile}" onclick="if (confirm('{$sSureC}')) { UpdateField('DeleteAdvertisementID',{$iAdvertisementID});document.forms.command_delete_advertisement.submit(); } return false;">
\t{$sDeleteC}</a>
\t</span>
</div>
<div class="ar">
\t<span style="vertical-align: middle;margin-right:5px;">
\t<img src="{$site['icons']}_logout.jpg" style="position:static;" />
\t</span>
\t<span>
\t<a class="actions" href="{$this->sCurrBrowsedFile}" onclick="UpdateField('EditAdvertisementID',{$iAdvertisementID}); document.forms.command_edit_advertisement.submit(); return false;">
\t{$sEditC}</a>
\t</span>
</div>
<div class="clear_both"></div>
EOF;
            }
            $sPictureSectContent = '';
            if ($bUseNewFeature == true) {
                /////Gall Ench
                $sGallEnchImg = $this->getImageCodeSimple($aSqlResStr['Media']);
                $sPictureSectContent = <<<EOF
<script type="text/javascript" src="{$site['url']}inc/js/jquery.dolPromoT.js"></script>
<script type="text/javascript">
\t\$(document).ready( function() {
\t\t\$( '#indexPhoto' ).dolPromo( 3000, 1 );
\t} );
</script>
<script type="text/javascript">
\tif (window.attachEvent)
\t\twindow.attachEvent( "onload", onloadPhotos );
\telse
\t\twindow.addEventListener( "load", onloadPhotos, false);

\tfunction onloadPhotos()
\t{
\t\thideScroll();
\t}

\t//hide scrollers if needed
\tfunction hideScroll()
\t{
\t\tb = document.getElementById( "aIconBlock" );
\t\ts = document.getElementById( "aScrollCont" );
\t\t
\t\tif( !b || !s ) {
\t\t\taibc = document.getElementById( "aIconBlockCont" );
\t\t\taibc.style.display = "none";
\t\t\ts.style.display = "none";
\t\t\treturn false;
\t\t}

\t\tif( b.parentNode.clientWidth >= b.clientWidth )
\t\t\ts.style.display = "none";
\t\telse
\t\t\ts.style.display = "block";
\t}
</script>

<div style="position:relative;width:100%;height:450px;overflow:hidden;">
\t<div class="photoBlock" id="indexPhoto">
\t\t{$sGallEnchImg}
\t</div>
</div>

<div class="clear_both"></div>
<div class="iconBlockCont" id="aIconBlockCont">
\t{$sImg}
</div>

<div id="aScrollCont" class="scrollCont">
\t<div class="scrollLeft" onmouseover="moveScrollLeftAuto('aIconBlock', true);" onmouseout="moveScrollLeftAuto('aIconBlock', false);">
\t\t<img src="{$site['icons']}left_arrow.gif" style="position:static;" alt="" />
\t</div>
\t<div class="scrollRight" onmouseover="moveScrollRightAuto('aIconBlock', true);" onmouseout="moveScrollRightAuto('aIconBlock', false);">
\t\t<img src="{$site['icons']}right_arrow.gif" style="position:static;" alt="" />
\t</div>
</div>

<div class="clear_both"></div>
EOF;
                /////Gall Ench end
            } else {
                $sPictureSectContent = <<<EOF
<script type="text/javascript">
\tif (window.attachEvent)
\t\twindow.attachEvent( "onload", onloadPhotos );
\telse
\t\twindow.addEventListener( "load", onloadPhotos, false);

\tfunction onloadPhotos()
\t{
\t\thideScroll();
\t}

\t//hide scrollers if needed
\tfunction hideScroll()
\t{
\t\tb = document.getElementById( "aIconBlock" );
\t\ts = document.getElementById( "aScrollCont" );
\t\t
\t\tif( !b || !s ) {
\t\t\taibc = document.getElementById( "aIconBlockCont" );
\t\t\taibc.style.display = "none";
\t\t\ts.style.display = "none";
\t\t\treturn false;
\t\t}

\t\tif( b.parentNode.clientWidth >= b.clientWidth )
\t\t\ts.style.display = "none";
\t\telse
\t\t\ts.style.display = "block";
\t}
</script>
<div class="photoBlock">
\t{$sBigImg}
</div>
<div class="iconBlockCont" id="aIconBlockCont">
\t{$sImg}
</div>
<div id="aScrollCont" class="scrollCont">
\t<div class="scrollLeft" onmouseover="moveScrollLeftAuto('aIconBlock', true);" onmouseout="moveScrollLeftAuto('aIconBlock', false);">
\t\t<img src="{$site['icons']}left_arrow.gif" style="position:static;" alt="" />
\t</div>
\t<div class="scrollRight" onmouseover="moveScrollRightAuto('aIconBlock', true);" onmouseout="moveScrollRightAuto('aIconBlock', false);">
\t\t<img src="{$site['icons']}right_arrow.gif" style="position:static;" alt="" />
\t</div>
</div>
<div class="clear_both"></div>
EOF;
            }
            $sPictureSect = DesignBoxContent(_t('_Advertisement Photos'), $sPictureSectContent, 1);
            $this->sTAPhotosContent = $sPictureSectContent;
            $sActionsSect = $iMemberID > 0 || $this->bAdminMode ? DesignBoxContent($sActionsC, $sMemberActions . $sAdminPart, 1) : '';
            $this->sTAActionsContent = $iMemberID > 0 || $this->bAdminMode ? $sMemberActions . $sAdminPart : '';
            if ($iMemberID > 0 || $this->bAdminMode) {
                $oComments = new BxDolComments(1, $this->sCurrBrowsedFile);
                $oComments->bAdminMode = $this->bAdminMode;
                //$this->sTACommentsContent = $oComments->PrintCommentSection($iAdvertisementID, $aCaptions['Comments'], false);
                $this->oCmtsView = new BxTemplCmtsView('classifieds', (int) $iAdvertisementID);
                $this->sTACommentsContent = $this->oCmtsView->getExtraCss();
                $this->sTACommentsContent .= $this->oCmtsView->getExtraJs();
                $this->sTACommentsContent .= !$this->oCmtsView->isEnabled() ? '' : $this->oCmtsView->getCommentsFirst();
                $show_hide = $oComments->genShowHideItem('comments_section');
                $sCommSect = DesignBoxContent($aCaptions['Comments'], $this->sTACommentsContent, 1, $show_hide);
                //$sCommSect = $oComments->PrintCommentSection($iAdvertisementID, $aCaptions['Comments'], true);
            }
            $sUserOtherListing = $this->PrintMyAds($aSqlResStr['IDProfile'], 2);
            $sSubjectSectContent = <<<EOF
{$sPostedBy}
<div class="cls_res_info">
\t{$sDateC}: <div class="clr3">{$aSqlResStr['DateTime']} ({$sTimeAgo})</div>
</div>
<div class="cls_res_info">
\t{$sLocationC}: <div class="clr3">{$sCountryName}{$sCountryPic}</div>
</div>
<div class="cls_res_info">
\t{$sTags}
</div>
<div class="cls_res_info">
\t{$sCustDetails}
</div>
EOF;
            $sSubjectSect = DesignBoxContent($aSqlResStr['Subject'], $sSubjectSectContent, 1);
            $this->sTAInfoContent = $sSubjectSectContent;
            $sDescriptionSect = DesignBoxContent($sDescriptionC, $aSqlResStr['Message'], 1);
            $this->sTADescriptionContent = $aSqlResStr['Message'];
            $sOtherListingContent = <<<EOF
{$sUserOtherListing}
<a class="actions" href="{$this->sCurrBrowsedFile}" onclick="document.forms['UsersOtherListingForm'].submit(); return false;">{$sUserOtherListC}</a>
<form action="{$this->sCurrBrowsedFile}" name="UsersOtherListingForm" method="post">
\t<input type="hidden" name="UsersOtherListing" value="1" />
\t<input type="hidden" name="IDProfile" value="{$aSqlResStr['IDProfile']}" />
</form>
EOF;
            $sOtherListingSect = DesignBoxContent($sUserOtherListC, $sOtherListingContent, 1);
            $this->sTAOtherListingContent = $sOtherListingContent;
            $sHomeLink = $this->bUseFriendlyLinks && $this->bAdminMode == false ? $site['url'] . 'ads/' : "{$this->sCurrBrowsedFile}?Browse=1";
            $sCategLink = $this->bUseFriendlyLinks && $this->bAdminMode == false ? $site['url'] . 'ads/cat/' . $aSqlResStr['CEntryUri'] : "{$this->sCurrBrowsedFile}?bClassifiedID={$aSqlResStr['CatID']}";
            $sSCategLink = $this->bUseFriendlyLinks && $this->bAdminMode == false ? $site['url'] . 'ads/subcat/' . $aSqlResStr['SEntryUri'] : "{$this->sCurrBrowsedFile}?bSubClassifiedID={$aSqlResStr['SubID']}";
            $sBrowseAllAds = _t('_Browse All Ads');
            $sBreadCrumbs = <<<EOF
<div class="breadcrumbs">
<a href="{$site['url']}">{$site['title']}</a>
/
<a href="{$sHomeLink}">{$sBrowseAllAds}</a>
/
<a href="{$sCategLink}">{$aSqlResStr['Name']}</a>
/
<a href="{$sSCategLink}">{$aSqlResStr['NameSub']}</a>
</div>
EOF;
            //$iScrollWidth = $this->iScrollWidth;
            //$iScrollHeight = $this->iScrollWidth+0;
            /*$sqlColRes = db_res($sSqlCols);
            		$aBlocks = array();
            		while($aBlockSelect = mysql_fetch_assoc($sqlColRes)) {
            			switch( $aBlockSelect['Func'] ) {
            				case 'Advertisement Photos': $aBlocks[$aBlockSelect['Column']] .= $sPictureSect;      break;
            				case 'Actions':              $aBlocks[$aBlockSelect['Column']] .= $sActionsSect;      break;
            				case 'Comments':             $aBlocks[$aBlockSelect['Column']] .= $sCommSect;         break;
            				case 'Adv Info':             $aBlocks[$aBlockSelect['Column']] .= $sSubjectSect;      break;
            				case 'Description':          $aBlocks[$aBlockSelect['Column']] .= $sDescriptionSect;  break;
            				case 'Users Other Listing':  $aBlocks[$aBlockSelect['Column']] .= $sOtherListingSect; break;
            				case 'Echo':
            					$aBlocks[$aBlockSelect['Column']] .= DesignBoxContent( _t( $aBlockSelect['Caption'] ), $aBlockSelect['Content'], 1 );
            				break;
            				case 'RSS':
            					list( $sUrl, $iNum ) = explode( '#', $aBlockSelect['Content'] );
            					$iNum = (int)$iNum;
            					
            					$ret = genRSSHtmlOut( $sUrl, $iNum );
            					
            					$aBlocks[$aBlockSelect['Column']] .= DesignBoxContent( _t( $aBlockSelect['Caption'] ), $ret, 1 );
            				break;
            			}
            		}*/
            $aBlocks[1] .= $sPictureSect;
            $aBlocks[1] .= $sActionsSect;
            $aBlocks[1] .= $sCommSect;
            $aBlocks[2] .= $sSubjectSect;
            $aBlocks[2] .= $sDescriptionSect;
            $aBlocks[2] .= $sOtherListingSect;
            $sRetHtml = <<<EOF
{$sBreadCrumbs}
<div>
\t<div class="clear_both"></div>
\t<div class="cls_info_left">
\t\t{$aBlocks['1']}
\t</div>
\t<div class="cls_info">
\t\t{$aBlocks['2']}
\t</div>
\t<div class="clear_both"></div>
</div>
<div class="clear_both"></div>
EOF;
        }
        return $sRetHtml;
    }
    /**
     * Generate User`s Blog Post Page
     *
     * @return HTML presentation of data
     */
    function GenPostPage()
    {
        global $site;
        global $aBreadCramp;
        $iCheckedMemberID = $this->aBlogConf['visitorID'];
        $sRestrictRes = $this->CheckRestrictionToView($iCheckedMemberID);
        if ($sRestrictRes != '') {
            return $sRestrictRes;
        }
        $iPostID = (int) $_REQUEST['post_id'];
        if ($this->iLastPostedPostID > 0) {
            $iPostID = $this->iLastPostedPostID;
            $this->iLastPostedPostID = -1;
        }
        $sCategoryC = _t('_Category');
        $sPostC = _t('_Post');
        $sEditC = _t('_Edit');
        $sDeleteC = _t('_Delete');
        $sRetHtml = '';
        $sPostedBySQL = "\n\t\t\tSELECT `BlogCategories`.`OwnerID` FROM `BlogCategories`\n\t\t\tLEFT JOIN `BlogPosts` ON `BlogCategories`.`CategoryID`=`BlogPosts`.`CategoryID`\n\t\t\tWHERE `BlogPosts`.`PostID` = {$iPostID}\n\t\t\tLIMIT 1\n\t\t";
        $aPostBy = db_arr($sPostedBySQL);
        if (mysql_affected_rows() == 0) {
            return MsgBox(_t('_No such blog post'));
        }
        $sBlogsSQL = "\n\t\t\tSELECT `Blogs`. * , `Profiles`.`Nickname` \n\t\t\tFROM `Blogs` \n\t\t\tLEFT JOIN `Profiles` ON `Blogs`.`OwnerID` = `Profiles`.`ID`\n\t\t\tWHERE `Blogs`.`OwnerID` = {$aPostBy['OwnerID']}\n\t\t\tLIMIT 1\n\t\t";
        $aBlogInfo = db_arr($sBlogsSQL);
        $sBlogPostSQL = "\n\t\t\t\tSELECT `BlogPosts`.*, COUNT(`CommentID`) AS `CountComments`, `BlogCategories`.`OwnerID`,`BlogCategories`.`CategoryName`\n\t\t\t\tFROM `BlogPosts`\n\t\t\t\tLEFT JOIN `BlogPostComments`\n\t\t\t\tON `BlogPosts`.`PostID`=`BlogPostComments`.`PostID`\n\t\t\t\tLEFT JOIN `BlogCategories`\n\t\t\t\tON `BlogCategories`.`CategoryID`=`BlogPosts`.`CategoryID`\n\t\t\t\tWHERE `BlogPosts`.`PostID` = {$iPostID}\n\t\t\t\tGROUP BY `BlogPostComments`.`PostID`\n\t\t\t\tORDER BY `CountComments` DESC, `PostDate` DESC\n\t\t";
        $aBlogPost = db_arr($sBlogPostSQL);
        if ('friends' == $aBlogPost['PostReadPermission'] && !$this->aBlogConf['isFriend'] && !$this->aBlogConf['isOwner'] && !$this->bAdminMode) {
            $sFriendsC .= MsgBox(_t('_this_blog_only_for_friends'));
            $sRightSection = $this->GenMemberDescrAndCat($aBlogInfo);
            $sRetHtml .= <<<EOF
<div>
\t<div class="clear_both"></div>
\t<div class="cls_info_left">
\t\t<div>
\t\t\t<div class="disignBoxFirst">
\t\t\t\t<div class="boxFirstHeader">{$sPostC}</div>
\t\t\t\t<div class="boxContent">
\t\t\t\t\t{$sFriendsC}
\t\t\t\t</div>
\t\t\t</div>
\t\t</div>
\t\t<div class="clear_both"></div>
\t</div>
\t<div class="cls_info">
\t\t{$sRightSection}
\t</div>
\t<div class="clear_both"></div>
</div>
<div class="clear_both"></div>
EOF;
        } else {
            $oComments = new BxDolComments(2);
            $oComments->bAdminMode = $this->bAdminMode;
            $sPostComm = $oComments->PrintCommentSection($iPostID);
            $sPostString = $this->GenPostString($aBlogPost, 3);
            $sRightSection = $this->GenMemberDescrAndCat($aBlogInfo);
            $sRetHtml = <<<EOF
<div>
\t<div class="clear_both"></div>
\t<div class="cls_info_left">
\t\t<div>
\t\t\t<div class="disignBoxFirst">
\t\t\t\t<div class="boxFirstHeader">{$sPostC}</div>
\t\t\t\t<div class="boxContent">
\t\t\t\t\t{$sPostString}
\t\t\t\t</div>
\t\t\t</div>
\t\t</div>
\t\t<div class="clear_both"></div>
\t\t<div>
\t\t\t{$sPostComm}
\t\t</div>
\t</div>
\t<div class="cls_info">
\t\t{$sRightSection}
\t</div>
\t<div class="clear_both"></div>
</div>
<div class="clear_both"></div>
EOF;
        }
        return $sRetHtml;
    }