function showBlockEvents($sCaption, $bNoDB = false) { global $site; $ID = $this->_iProfileID; if ($ID > 0) { $sQuery = "\r\n\t\t\t\tSELECT COUNT(`SDatingEvents`.`ID`) AS 'Cnt'\r\n\t\t\t\tFROM `SDatingEvents` \r\n\t\t\t\tLEFT JOIN `SDatingParticipants` ON `SDatingParticipants`.`IDEvent` = `SDatingEvents`.`ID` \r\n\t\t\t\tWHERE (`SDatingEvents`.`ResponsibleID` = '{$ID}' OR `SDatingParticipants`.`IDMember` = '{$ID}')\r\n\t\t\t\tAND `SDatingEvents`.`Status` = 'Active'\r\n\t\t\t"; $iBlogs = db_value($sQuery); if ($iBlogs > 0) { $oEvents = new BxDolEvents(); $sBlocks = $oEvents->GenAnyBlockContent('last', $ID); $ret = <<<EOF <div id="container_events"> \t{$sBlocks} </div> EOF; $show_hide = $this->genShowHideItem('container_events'); if ($bNoDB) { return $ret; } else { echo DesignBoxContent(_t($sCaption), $ret, 1, $show_hide); } } else { return; } } else { if ($bNoDB) { return MsgBox(_t('_im_textNoCurrUser')); } else { echo MsgBox(_t('_im_textNoCurrUser')); } } }
function PageCompGroups($sCaption, &$sShowHide) { global $site; global $short_date_format; $php_date_format = getParam('php_date_format'); //$iBlogLimitChars = (int)getParam("max_classified_preview"); $iBlogLimitChars = (int) getParam("max_blog_preview"); global $p_arr; $ID = $p_arr['ID']; if ($ID > 0) { $sQuery = "\r\n\t\t\t\tSELECT DISTINCT `Groups`.`ID`, `Groups`.`Name`, `Groups`.`Desc`,\r\n\t\t\t\tUNIX_TIMESTAMP( `Groups`.`created` ) as `DateTime_f`,\r\n\t\t\t\t`Profiles`.`NickName`,\r\n\t\t\t\t`GroupsCateg`.`Name` AS 'CategName', `GroupsCateg`.`ID` AS `CategID`\r\n\t\t\t\tFROM `GroupsMembers`, `Groups`\r\n\t\t\t\tLEFT JOIN `GroupsCateg` ON `GroupsCateg`.`ID` = `Groups`.`categID` \r\n\t\t\t\tLEFT JOIN `Profiles` ON `Profiles`.`ID` = `Groups`.`creatorID` \r\n\t\t\t\tWHERE\r\n\t\t\t\t`GroupsMembers`.`memberID` = '{$ID}' AND\r\n\t\t\t\t`GroupsMembers`.`groupID` = `Groups`.`ID` AND\r\n\t\t\t\t`GroupsMembers`.`status` = 'Active'\r\n\t\t\t\tORDER BY `created` DESC \r\n\t\t\t\tLIMIT 5\r\n\t\t\t"; $rBlogs = db_res($sQuery); if (!mysql_num_rows($rBlogs)) { return ''; } ob_start(); ?> <div id="container_groups"> <?php $oEvents = new BxDolEvents(); while ($aBlog = mysql_fetch_assoc($rBlogs)) { $sPic = $oEvents->GetGroupPicture($aBlog['ID']); $sLinkMore = ''; if (strlen($aBlog['Description']) > $iBlogLimitChars) { //$sLinkMore = "... <a href=\"".$site['url']."blog.php?owner=".$ID."&show=blog&blogID=".$aBlog['PostID']."\">"._t('_Read more')."</a>"; $sLinkMore = "... <a href=\"" . $site['url'] . "group.php?ID=" . $aBlog['ID'] . "\">" . _t('_Read more') . "</a>"; } $sBlogSnippet = substr(strip_tags($aBlog['Desc']), 0, $iBlogLimitChars) . $sLinkMore; ?> <div class="icon_block"> <?php echo $sPic; ?> </div> <div class="blog_wrapper_n"> <div class="blog_subject_n"> <?php echo '<a href="' . $site['url'] . 'group.php?ID=' . $aBlog['ID'] . '" class="bottom_text">'; ?> <?php echo $aBlog['Name']; ?> </a> </div> <div class="blogInfo"> <span><img src="<?php echo getTemplateIcon('clock.gif'); ?> " /> <?php echo date($php_date_format, $aBlog['DateTime_f']) . ' '; ?> </span> <span><?php echo _t('_in Category', getTemplateIcon('folder_small.png'), 'groups_browse.php?categID=' . $aBlog['CategID'], process_line_output($aBlog['CategName'])); ?> </span> </div> <div class="blogSnippet"> <?php echo $sBlogSnippet; ?> </div> </div> <div class="clear_both"></div> <?php } ?> </div> <?php $ret = ob_get_clean(); $show_hide = genShowHideItem('container_groups'); $sShowHide = $show_hide; return $ret; //echo DesignBoxContent( _t( $sCaption ), $ret, 1, $show_hide ); } else { return MsgBox(_t('_im_textNoCurrUser')); } }
function profile_delete($ID) { global $MySQL; global $dir; global $site; global $logged; $ID = (int) $ID; if (!$ID) { return false; } if (!getProfileInfo($ID)) { return false; } modules_del($ID); db_res("DELETE FROM `VKisses` WHERE `ID` = '{$ID}' OR `Member` = '{$ID}'"); db_res("DELETE FROM `Profiles` WHERE `ID` = '{$ID}'"); if (!mysql_affected_rows()) { return false; } db_res("DELETE FROM `BlockList` WHERE `ID` = '{$ID}' OR `Profile` = '{$ID}';"); db_res("DELETE FROM `ProfilesTrack` WHERE `Member` = '{$ID}' OR `Profile` = '{$ID}'"); db_res("DELETE FROM `Messages` WHERE Recipient = {$ID} "); db_res("DELETE FROM `Guestbook` WHERE Recipient = {$ID} "); db_res("DELETE FROM `aff_members` WHERE idProfile = {$ID}"); db_res("DELETE FROM `HotList` WHERE ID = {$ID} OR Profile = {$ID}"); db_res("DELETE FROM `FriendList` WHERE ID = {$ID} OR Profile = {$ID}"); db_res("DELETE FROM `BlockList` WHERE ID = {$ID} OR Profile = {$ID}"); db_res("DELETE FROM `BoughtContacts` WHERE `IDBuyer` = {$ID} OR `IDContact` = {$ID}"); db_res("DELETE FROM `ProfileMemLevels` WHERE `IDMember` = {$ID}"); db_res("DELETE FROM `ProfilesComments` WHERE `Sender` = {$ID} OR `Recipient` = {$ID}"); db_res("DELETE FROM `ProfilesPolls` WHERE `id_profile` = {$ID}"); db_res("DELETE FROM `Tags` WHERE `ID` = {$ID} AND `Type` = 'profile'"); db_res("DELETE FROM `GroupsMembers` WHERE `memberID` = {$ID}"); // delete profile votings require_once BX_DIRECTORY_PATH_CLASSES . 'BxDolVoting.php'; $oVotingProfile = new BxDolVoting('profile', 0, 0); $oVotingProfile->deleteVotings($ID); // delete profile comments require_once BX_DIRECTORY_PATH_CLASSES . 'BxDolCmts.php'; $oCmts = new BxDolCmts('profile', $ID); $oCmts->onObjectDelete(); // delete all comments in all comments' systems, this user posted $oCmts->onAuthorDelete($ID); // Clean gallery $albumsRes = db_res("SELECT `ID` FROM `GalleryAlbums` WHERE `IDMember` = {$ID}"); while ($albumArr = mysql_fetch_assoc($albumsRes)) { $albumID = $albumArr['ID']; $objectsRes = db_res("SELECT `Filename`, `ThumbFilename` FROM `GalleryObjects` WHERE `IDAlbum` = {$albumID}"); while ($objectArr = mysql_fetch_assoc($objectsRes)) { @unlink("{$dir['gallery']}{$objectArr['Filename']}"); if (strlen($objectArr['ThumbFilename']) && file_exists("{$dir['gallery']}{$objectArr['ThumbFilename']}")) { @unlink("{$dir['gallery']}{$objectArr['ThumbFilename']}"); } } db_res("DELETE FROM `GalleryObjects` WHERE `IDAlbum` = {$albumID}"); } db_res("DELETE FROM `GalleryAlbums` WHERE `IDMember` = {$ID}"); // Clean customizations $customArr = db_arr("SELECT `BackgroundFilename` FROM `ProfilesSettings` WHERE `IDMember` = {$ID}"); if (strlen($customArr['BackgroundFilename']) && file_exists($dir['profileImage'] . $customArr['BackgroundFilename']) && is_file($dir['profileImage'] . $customArr['BackgroundFilename'])) { unlink($dir['profileImage'] . $customArr['BackgroundFilename']); } db_res("DELETE FROM `ProfilesSettings` WHERE `IDMember` = {$ID}"); // delete media $rMedia = db_res("SELECT `med_id`, `med_file`, `med_type` FROM `media` WHERE `med_prof_id` = {$ID}"); $oVotingMedia = new BxDolVoting('media', 0, 0); while ($aMedia = mysql_fetch_assoc($rMedia)) { switch ($aMedia['med_type']) { case 'photo': $medDir = $dir['profileImage'] . $ID . "/"; @unlink($medDir . 'icon_' . $aMedia['med_file']); @unlink($medDir . 'photo_' . $aMedia['med_file']); @unlink($medDir . 'thumb_' . $aMedia['med_file']); break; case 'audio': $medDir = $dir['profileSound'] . $ID . "/"; @unlink($medDir . $aMedia['med_file']); break; case 'video': $medDir = $dir['profileVideo'] . $ID . "/"; @unlink($medDir . $aMedia['med_file']); break; } // delete media voting $oVotingMedia->deleteVotings($aMedia['med_id']); } $aMem = array(); $aMedia = array('photo', 'music', 'video'); foreach ($aMedia as $sVal) { $oMedia = new BxDolSharedMedia($sVal, $site, $dir, $aMem); $oMedia->deleteUserGallery($ID, $logged); } db_res("DELETE FROM `media` WHERE `med_prof_id` = {$ID}"); @rmdir($dir['profileImage'] . $ID); @rmdir($dir['profileVideo'] . $ID); @rmdir($dir['profileSound'] . $ID); //Clean blogs $aBlog = db_arr("SELECT `ID` FROM `Blogs` WHERE `OwnerID` = {$ID}"); $iBlogID = $aBlog['ID']; if ($iBlogID > 0) { //Clean blogs $oBlogs = new BxDolBlogs(TRUE); $oBlogs->bAdminMode = TRUE; (int) ($_REQUEST['DeleteBlogID'] = $iBlogID); $oBlogs->ActionDeleteBlogSQL(); } //delete user classifieds $oClassifieds = new BxDolClassifieds(); $oClassifieds->bAdminMode = TRUE; $oClassifieds->DeleteProfileAdvertisement($ID); //delete user events $oEvents = new BxDolEvents(); $oEvents->bAdminMode = TRUE; $oEvents->DeleteProfileEvents($ID); //delete cache file $sCacheFile = $dir['cache'] . 'user' . $ID . '.php'; @unlink($sCacheFile); reparseObjTags('profile', $ID); }
function getBlockCode_Events() { global $site; $mode = $_REQUEST['events_mode']; if ($mode != 'rand' and $mode != 'latest') { $mode = 'latest'; } $aDBTopMenu = array(); //$menu = '<div class="dbTopMenu">'; foreach (array('latest', 'rand') as $myMode) { switch ($myMode) { case 'latest': $sTabTitle = _t('_Latest'); break; case 'rand': $sTabTitle = _t('_Random'); break; } /*if( $mode == $myMode ) { $menu .= "<div class=\"active\">$sTabTitle</div>"; } else { $menu .= " <div class=\"notActive\"> <a href=\"{$_SERVER['PHP_SELF']}?events_mode=$myMode\" class=\"top_members_menu\" onclick=\"getHtmlData( 'show_events', this.href+'&show_only=events'); return false;\">$sTabTitle</a> </div>"; }*/ $aDBTopMenu[$sTabTitle] = array('href' => "{$_SERVER['PHP_SELF']}?events_mode={$myMode}", 'dynamic' => true, 'active' => $myMode == $mode); } /*$menu .= ' <div class="clear_both"></div> </div>';*/ $iTotalNum = db_value("SELECT COUNT(*) AS 'Cnt' FROM `SDatingEvents` WHERE `Status` = 'Active'"); $oEvents = new BxDolEvents(); if ($iTotalNum) { $iResPerPage = (int) getParam("max_blogs_on_home"); $iTotalPages = ceil($iTotalNum / $iResPerPage); $page = (int) $_REQUEST['events_page']; if ($page < 1 or $mode == 'rand') { $page = 1; } if ($page > $iTotalPages) { $page = $iTotalPages; } $sqlLimitFrom = ($page - 1) * $iResPerPage; $sBlocks = $oEvents->GenAnyBlockContent($mode, 0, "LIMIT {$sqlLimitFrom}, {$iResPerPage}"); $ret = $sBlocks; } else { $ret .= '<div class="no_result"><div>' . _t("_No events available") . '</div></div>'; } $aDBBottomMenu = array(); if ($iTotalPages > 1) { //$ret .= '<div class="dbBottomMenu">'; if ($page > 1) { $prevPage = $page - 1; $aDBBottomMenu[_t('_Back')] = array('href' => "{$_SERVER['PHP_SELF']}?events_mode={$mode}&events_page={$prevPage}", 'dynamic' => true, 'class' => 'backMembers'); $sBackC = _t('_Back'); /*$ret .= <<<EOF <a href="{$_SERVER['PHP_SELF']}?events_mode={$mode}&events_page={$prevPage}" class="backMembers" onclick="getHtmlData( 'show_events', this.href+'&show_only=events'); return false;"> {$sBackC} </a> EOF;*/ } if ($page < $iTotalPages) { $nextPage = $page + 1; $aDBBottomMenu[_t('_Next')] = array('href' => "{$_SERVER['PHP_SELF']}?events_mode={$mode}&events_page={$nextPage}", 'dynamic' => true, 'class' => 'moreMembers'); /*$sNextC = _t('_Next'); $ret .= <<<EOF <a href="{$_SERVER['PHP_SELF']}?events_mode={$mode}&events_page={$nextPage}" class="moreMembers" onclick="getHtmlData( 'show_events', this.href+'&show_only=events'); return false;"> {$sNextC} </a> EOF;*/ } $sBMViewAllLink = $oEvents->bUseFriendlyLinks ? "{$site['url']}events/" : "{$site['url']}events.php?show_events=all&action=show"; $aDBBottomMenu[_t('_View All')] = array('href' => $sBMViewAllLink, 'dynamic' => false, 'class' => 'viewAllMembers'); //$ret .= '<div class="clear_both"></div></div>'; } return array($ret, $aDBTopMenu, $aDBBottomMenu); //return $ret; }
function getBlockCode_Events() { if ($this->iMember > 0) { $sqlQuery = "\r\n\t\t\t\tSELECT COUNT(`SDatingEvents`.`ID`) AS 'Cnt'\r\n\t\t\t\tFROM `SDatingEvents` \r\n\t\t\t\tLEFT JOIN `SDatingParticipants` ON `SDatingParticipants`.`IDEvent` = `SDatingEvents`.`ID` \r\n\t\t\t\tWHERE (`SDatingEvents`.`ResponsibleID` = '{$this->iMember}' OR `SDatingParticipants`.`IDMember` = '{$this->iMember}')\r\n\t\t\t\tAND `SDatingEvents`.`Status` = 'Active'\r\n\t\t\t"; $iBlogs = db_value($sqlQuery); if ($iBlogs > 0) { $oEvents = new BxDolEvents(); $sBlocks = $oEvents->GenAnyBlockContent('last', $this->iMember); $ret = <<<EOF <div id="container_events"> \t{$sBlocks} </div> EOF; $show_hide = $this->genShowHideItem('container_events'); $sShowHide = $show_hide; return $ret; } else { return ''; } } else { return MsgBox(_t('_im_textNoCurrUser')); } }
function PageCompGroupsContent($sCaption) { global $site; global $date_format; $php_date_format = getParam('php_date_format'); $mode = $_REQUEST['groups_mode']; if ($mode != 'rand' and $mode != 'latest') { $mode = 'latest'; } $menu = '<div class="dbTopMenu">'; foreach (array('latest', 'rand') as $myMode) { switch ($myMode) { case 'latest': $OrderBy = '`created` DESC'; $sTabTitle = _t('_Latest'); break; case 'rand': $OrderBy = 'RAND()'; $sTabTitle = _t('_Random'); break; } if ($mode == $myMode) { $sqlOrderBy = $OrderBy; $menu .= "\r\n\t\t\t<div class=\"active\">{$sTabTitle}</div>"; } else { $menu .= "\r\n\t\t\t<div class=\"notActive\">\r\n\t\t\t\t<a href=\"{$_SERVER['PHP_SELF']}?groups_mode={$myMode}\" class=\"top_members_menu\" onclick=\"getHtmlData( 'show_groups', this.href+'&show_only=groups'); return false;\">{$sTabTitle}</a>\r\n\t\t\t</div>"; } } $menu .= ' <div class="clear_both"></div> </div>'; $aTotalNum = db_arr("\r\n\t\tSELECT\r\n\t\t\tCOUNT(*) FROM `Groups`\r\n\t\tWHERE\r\n\t\t\t`status` = 'Active'\r\n\t\t"); $iTotalNum = $aTotalNum[0]; if ($iTotalNum) { //$iResPerPage = (int)getParam("max_groups_on_home"); $iResPerPage = (int) getParam("max_blogs_on_home"); //$iResPerPage = 3; $iTotalPages = ceil($iTotalNum / $iResPerPage); $page = (int) $_REQUEST['groups_page']; if ($page < 1 or $mode == 'rand') { $page = 1; } if ($page > $iTotalPages) { $page = $iTotalPages; } $sqlLimitFrom = ($page - 1) * $iResPerPage; //$iBlogLimitChars = (int)getParam("max_classified_preview"); $iBlogLimitChars = (int) getParam("max_blog_preview"); //$iBlogLimitChars = 50; $sBlogQuery = "\r\n\t\t\tSELECT DISTINCT `Groups`.`ID`, `Groups`.`Name`,\r\n\t\t\tLEFT(`Groups`.`Desc`, {$iBlogLimitChars}) as 'Desc_f', \r\n\t\t\tUNIX_TIMESTAMP( `Groups`.`created` ) as `DateTime_f`,\r\n\t\t\t`Profiles`.`NickName`,\r\n\t\t\t`GroupsCateg`.`Name` AS 'CategName', `GroupsCateg`.`ID` AS `CategID`\r\n\t\t\tFROM `Groups`\r\n\t\t\tLEFT JOIN `GroupsCateg` ON `GroupsCateg`.`ID` = `Groups`.`categID` \r\n\t\t\tLEFT JOIN `Profiles` ON `Profiles`.`ID` = `Groups`.`creatorID` \r\n\t\t\tWHERE\r\n\t\t\t`Groups`.`Status` = 'Active'\r\n\t\t\tORDER BY {$sqlOrderBy}\r\n\t\t\tLIMIT {$sqlLimitFrom}, {$iResPerPage}\r\n\t\t"; $rBlog = db_res($sBlogQuery); $ret = ''; $oEvents = new BxDolEvents(); $ret .= '<div class="clear_both"></div>'; while ($arr = mysql_fetch_array($rBlog)) { $sPic = $oEvents->GetGroupPicture($arr['ID']); $sLinkMore = ''; if (strlen($arr['Desc']) == $iBlogLimitChars) { $sLinkMore = "... <a href=\"" . $site['url'] . "group.php?ID=" . $arr['ID'] . "\">" . _t('_Read more') . "</a>"; } $ret .= ' <div class="icon_block"> ' . $sPic . ' </div> <div class="blog_wrapper_n"> <div class="blog_subject_n"> <a href="' . $site['url'] . 'group.php?ID=' . $arr['ID'] . '" class="bottom_text">' . process_line_output($arr['Name']) . '</a> </div> <div class="blog_author">' . '<span>' . _t('_By Author', $arr['NickName'], $arr['NickName']) . '</span>' . '<span><img src="' . getTemplateIcon('clock.gif') . '" />' . date($php_date_format, $arr['DateTime_f']) . '</span>' . '<span>' . _t('_in Category', getTemplateIcon('folder_small.png'), 'groups_browse.php?categID=' . $arr['CategID'], process_line_output($arr['CategName'])) . '</span>' . '</div> <div class="blog_text">' . strip_tags(process_html_output($arr['Desc_f'])) . $sLinkMore . '</div> </div>'; } $ret .= '<div class="clear_both"></div>'; } else { $ret .= '<div class="no_result"><div>' . _t("_No groups available") . '</div></div>'; } if ($iTotalPages > 1) { $ret .= ' <div class="dbBottomMenu">'; if ($page > 1) { $prevPage = $page - 1; $ret .= "\r\n\t\t\t\t<a href=\"{$_SERVER['PHP_SELF']}?groups_mode={$mode}&groups_page={$prevPage}\"\r\n\t\t\t\t class=\"backMembers\"\r\n\t\t\t\t onclick=\"getHtmlData( 'show_groups', this.href+'&show_only=groups'); return false;\">" . _t('_Back') . "</a>\r\n\t\t\t"; } if ($page < $iTotalPages) { $nextPage = $page + 1; $ret .= "\r\n\t\t\t\t<a href=\"{$_SERVER['PHP_SELF']}?groups_mode={$mode}&groups_page={$nextPage}\"\r\n\t\t\t\t class=\"moreMembers\"\r\n\t\t\t\t onclick=\"getHtmlData( 'show_groups', this.href+'&show_only=groups'); return false;\">" . _t('_Next') . "</a>\r\n\t\t\t"; } $ret .= ' <div class="clear_both"></div> </div>'; } return DesignBoxContent(_t($sCaption), $ret, 1, $menu); }