'; echo '
'; echo $_page_cont[0]['page_main_code']; echo '
'; BottomCode(); } else { echo '
'; echo $_page_cont[0]['page_main_code']; echo '
'; } exit; } // get name of dir of currently requested php file. Ex.: admin/aff/moderators etc. // $_SERVER['PHP_SELF'] contains [/some/path/to/file.php] $sPath = dirname( $_SERVER['PHP_SELF'] ); //we got [/some/path/to] $sCDir = basename( $sPath ); // get [to]. if( $sCDir == $admin_dir or $sCDir == 'aff' or $sCDir == 'moderators' ) { require_once( BX_DIRECTORY_PATH_INC . 'admin_design.inc.php' ); $_page['header'] = "{$site['title']} $mem Login"; TopCodeAdmin(); echo $_page_cont[0]['page_main_code']; if( strlen( $text ) ) { ?> $val ) $ret = str_replace( "__{$key}__", $val, $ret ); return $ret; } function activation_mail( $ID, $text = 1 ) { global $site; global $ret; $ID = (int)$ID; $p_arr = db_arr( "SELECT `Email` FROM `Profiles` WHERE `ID` = '$ID'" ); if ( !$p_arr ) { $ret['ErrorCode'] = 7; return false; } $message = getParam( 't_Confirmation' ); $subject = getParam( 't_Confirmation_subject' ); $recipient = $p_arr['Email']; $sConfirmationCode = base64_encode( base64_encode( crypt( $recipient, "secret_confirmation_string" ) ) ); $sConfirmationLink = "{$site['url']}profile_activate.php?ConfID={$ID}&ConfCode=" . urlencode( $sConfirmationCode ); $aPlus = array(); $aPlus['ConfCode'] = $sConfirmationCode; $aPlus['ConfirmationLink'] = $sConfirmationLink; $mail_ret = sendMail( $recipient, $subject, $message, $ID, $aPlus ); if ( $mail_ret ) { if ( $text ) { $page_text .= '
' . _t("_EMAIL_CONF_SENT") . "
"; $page_text .= "
"; $page_text .= "'; $page_text .= '
"._t("_ENTER_CONF_CODE").": "; $page_text .= ' 
'; $page_text .= '

'; } else return true; } else { if ( $text ) $page_text .= "

"._t("_EMAIL_CONF_NOT_SENT"); else { $ret['ErrorCode'] = 10; return false; } } if ( $text ) return $page_text; else return true; } function mem_expiration_letter( $ID, $membership_name, $expire_days ) { global $site; $ID = (int)$ID; if ( !$ID ) return false; $p_arr = db_arr( "SELECT `Email` FROM `Profiles` WHERE `ID` = $ID", 0 ); if ( !$p_arr ) return false; // Get notification message body and subject from global settings. $message = getParam('t_MemExpiration'); $subject = getParam('t_MemExpiration_subject'); $recipient = $p_arr['Email']; $aPlus = array(); $aPlus['MembershipName'] = $membership_name; $aPlus['ExpireDays'] = $expire_days; $mail_ret = sendMail( $recipient, $subject, $message, $ID, $aPlus ); if ($mail_ret) return true; else return false; } function get_vars($with_page = 1, $with_per_page = 1, $with_sort_by = 1, $with_sort_order = 1, $with_gallery_view = 1) { global $affID; $get_parameters = "?"; // common parameters if ( isset($_REQUEST['ID']) && (int)$_REQUEST['ID'] > 0 ) $get_parameters .= 'ID='. (int)$_REQUEST['ID'] .'&'; if ( isset($_REQUEST['NickName']) && strlen($_REQUEST['NickName']) > 0 ) $get_parameters .= 'NickName='. process_pass_data($_REQUEST['NickName']) .'&'; if ( isset($_REQUEST['gallery_view']) && (int)$_REQUEST['gallery_view'] > 0 && $with_gallery_view ) $get_parameters .= 'gallery_view='. (int)$_REQUEST['gallery_view'] .'&'; if ( isset($_REQUEST['photos_only']) && strlen($_REQUEST['photos_only']) > 0 ) $get_parameters .= ($_REQUEST['photos_only'] == 'on' ? 'photos_only=on&' : ''); if ( isset($_REQUEST['online_only']) && strlen($_REQUEST['online_only']) > 0 ) { $get_parameters .= 'online_only=on&'; } // navigation parameters if ( isset($_REQUEST['page']) && (int)$_REQUEST['page'] > 0 && $with_page ) $get_parameters .= 'page='. (int)$_REQUEST['page'] .'&'; if ( isset($_REQUEST['p_per_page']) && (int)$_REQUEST['p_per_page'] > 0 && $with_per_page ) $get_parameters .= 'p_per_page='. (int)$_REQUEST['p_per_page'] .'&'; if ( isset($_REQUEST['sortby']) && strlen($_REQUEST['sortby']) > 0 && $with_sort_by ) $get_parameters .= 'sortby='. process_pass_data($_REQUEST['sortby']) .'&'; if ( isset($_REQUEST['sortorder']) && strlen($_REQUEST['sortorder']) > 0 && $with_sort_order ) $get_parameters .= ($_REQUEST['sortorder'] == 'ASC' ? 'sortorder=ASC&' : 'sortorder=DESC&'); // ZIP search parameters if ( isset($_REQUEST['zip']) && strlen($_REQUEST['zip']) > 0 ) $get_parameters .= 'zip='. process_pass_data($_REQUEST['zip']) .'&'; if ( isset($_REQUEST['metric']) && strlen($_REQUEST['metric']) > 0 ) $get_parameters .= ($_REQUEST['metric'] == 'miles' ? 'metric=miles&' : 'metric=km&'); if ( isset($_REQUEST['distance']) ) $get_parameters .= 'distance='. (int)$_REQUEST['distance'] .'&'; // extra parameters if ( isset($_REQUEST['profiles']) && strlen($_REQUEST['profiles']) > 0 ) $get_parameters .= 'profiles='. process_pass_data($_REQUEST['profiles']) .'&'; if ( isset($_REQUEST['status']) && strlen($_REQUEST['status']) > 0 ) $get_parameters .= 'status='. process_pass_data($_REQUEST['status']) .'&'; // admin parameters if ( isset($_REQUEST['search']) && strlen($_REQUEST['search']) > 0 ) $get_parameters .= 'search='. process_pass_data($_REQUEST['search']) .'&'; if ( isset($_REQUEST['s_nickname']) && strlen($_REQUEST['s_nickname']) > 0 ) $get_parameters .= 's_nickname='. process_pass_data($_REQUEST['s_nickname']) .'&'; // affiliate parameters if ( isset($affID) && (int)$affID > 0 ) $get_parameters .= 'affID='. (int)$affID .'&'; $respd = db_res("SELECT * FROM `ProfileFields` WHERE `Type` <> 'none' ORDER BY `Type` ASC"); while ( $arrpd = mysql_fetch_array($respd) ) { //$fname = get_field_name ( $arrpd ); $fname = $arrpd['Name']; switch ($arrpd['search_type']) { case 'select_one': case 'text': case 'area': $fval = process_pass_data($_REQUEST[$fname]); if ( isset($_REQUEST[$fname]) && strlen($fval) ) { $get_parameters .= "{$fname}={$fval}&"; } break; /*case 'list': $fval = $_REQUEST[$fname]; if ( is_array($fval) && count($fval) > 0 ) { while ( list( $key, $val ) = each( $fval ) ) $get_parameters .= "{$fname}[]=". process_pass_data($val) ."&"; } break;*/ /*case 'check': if ( $arrpd['type'] == 'r' ) { $findok = 0; $funcbody = $arrpd['extra']; $func = create_function("", $funcbody); $ar = $func(); foreach ( $ar as $key => $value ) { if ( $_REQUEST["{$fname}_{$key}"] == "on" ) { $findok = 1; break; } } if ( is_array($ar) && $findok ) { foreach ( $ar as $key => $value ) { if ( $_REQUEST["{$fname}_{$key}"] == "on" ) $get_parameters .= "{$fname}_{$key}=on&"; } } } elseif ( $arrpd['type'] == 'e' ) { $findok = 0; $vals = preg_split ("/[,\']+/", $arr['extra'], -1, PREG_SPLIT_NO_EMPTY); foreach ( $vals as $key ) { if ( $_REQUEST["{$fname}_{$key}"] == "on" ) { $findok = 1; break; } } if ( $findok ) { foreach ( $vals as $key ) { if ( $_REQUEST["{$fname}_{$key}"] == "on" ) $get_parameters .= "{$fname}_{$key}=on&"; } } } break;*/ /*case 'check_set': $vals = preg_split ("/[,\']+/", $arrpd['extra'], -1, PREG_SPLIT_NO_EMPTY); $offset = 0; foreach ( $vals as $v ) { if ( $_REQUEST["{$fname}_{$offset}"] == "on" ) $get_parameters .= "{$fname}_{$offset}=on&"; $offset++; } break;*/ case 'date': $fval_s = process_pass_data($_REQUEST["{$fname}_start"]); $fval_e = process_pass_data($_REQUEST["{$fname}_end"]); if ( strlen($fval_s) ) { $get_parameters .= "{$fname}_start={$fval_s}&"; } if ( strlen($fval_e) ) { $get_parameters .= "{$fname}_end={$fval_e}&"; } break; } } // exclude last character from the string return $get_parameters; } function get_vars_controls($with_page = 1, $with_per_page = 1, $with_sort_by = 1, $with_sort_order = 1, $with_gallery_view = 1) { global $affID; $get_inputs = ""; // common parameters if ( isset($_REQUEST['ID']) && (int)$_REQUEST['ID'] > 0 ) $get_inputs .= ''; if ( isset($_REQUEST['NickName']) && strlen($_REQUEST['NickName']) > 0 ) $get_inputs .= ''; if ( isset($_REQUEST['gallery_view']) && (int)$_REQUEST['gallery_view'] > 0 && $with_gallery_view ) $get_inputs .= ''; if ( isset($_REQUEST['photos_only']) && strlen($_REQUEST['photos_only']) > 0 ) $get_inputs .= ($_REQUEST['photos_only'] == 'on' ? '' : ''); if ( isset($_REQUEST['online_only']) && strlen($_REQUEST['online_only']) > 0 ) { $get_inputs .= ''; } // navigation parameters if ( isset($_REQUEST['page']) && (int)$_REQUEST['page'] > 0 && $with_page ) $get_inputs .= ''; if ( isset($_REQUEST['p_per_page']) && (int)$_REQUEST['p_per_page'] > 0 && $with_per_page ) $get_inputs .= ''; if ( isset($_REQUEST['sortby']) && strlen($_REQUEST['sortby']) > 0 && $with_sort_by ) $get_inputs .= ''; if ( isset($_REQUEST['sortorder']) && strlen($_REQUEST['sortorder']) > 0 && $with_sort_order ) $get_inputs .= ($_REQUEST['sortorder'] == 'ASC' ? '' : ''); // ZIP search parameters if ( isset($_REQUEST['zip']) && strlen($_REQUEST['zip']) > 0 ) $get_inputs .= ''; if ( isset($_REQUEST['metric']) && strlen($_REQUEST['metric']) > 0 ) $get_inputs .= ($_REQUEST['metric'] == 'miles' ? '' : ''); if ( isset($_REQUEST['distance']) ) $get_inputs .= ''; // extra parameters if ( isset($_REQUEST['profiles']) && strlen($_REQUEST['profiles']) > 0 ) $get_inputs .= ''; if ( isset($_REQUEST['status']) && strlen($_REQUEST['status']) > 0 ) $get_inputs .= ''; // admin parameters if ( isset($_REQUEST['search']) && strlen($_REQUEST['search']) > 0 ) $get_inputs .= ''; if ( isset($_REQUEST['s_nickname']) && strlen($_REQUEST['s_nickname']) > 0 ) $get_inputs .= ''; // affiliate parameters if ( isset($affID) && (int)$affID > 0 ) $get_inputs .= ''; $respd = db_res("SELECT * FROM `ProfileFields` WHERE `Type` <> 'none' ORDER BY `Type` ASC"); while ( $arrpd = mysql_fetch_array($respd) ) { //$fname = get_field_name( $arrpd ); $fname = $arrpd['Name']; switch ($arrpd['Type']) { case 'select_one': case 'text': case 'area': $fval = process_pass_data($_REQUEST[$fname]); if ( isset($_REQUEST[$fname]) && strlen($fval) ) { $get_inputs .= ""; } break; /*case 'list': $fval = $_REQUEST[$fname]; if ( is_array($fval) && count($fval) > 0 ) { while ( list( $key, $val ) = each( $fval ) ) $get_inputs .= ""; } break;*/ /*case 'check': if ($arrpd['type'] == 'r') { $findok = 0; $funcbody = $arrpd['extra']; $func = create_function("", $funcbody); $ar = $func(); foreach ( $ar as $key => $value ) { if ( $_REQUEST["{$fname}_{$key}"] == "on" ) { $findok = 1; break; } } if ( $findok ) { foreach ( $ar as $key => $value ) { if ( $_REQUEST["{$fname}_{$key}"] == "on" ) $get_inputs .= ""; } } } elseif ($arrpd['type'] == 'e') { $findok = 0; $vals = preg_split ("/[,\']+/", $arr['extra'], -1, PREG_SPLIT_NO_EMPTY); foreach ( $vals as $key ) { if ( $_REQUEST["{$fname}_{$key}"] == "on" ) { $findok = 1; break; } } if ( $findok ) { foreach ( $vals as $key ) { if ( $_REQUEST["{$fname}_{$key}"] == "on" ) $get_inputs .= ""; } } } break;*/ /*case 'check_set': $vals = preg_split ("/[,\']+/", $arrpd['extra'], -1, PREG_SPLIT_NO_EMPTY); $offset = 0; foreach ( $vals as $v ) { if ( $_REQUEST["{$fname}_{$offset}"] == "on" ) $get_inputs .= ""; $offset++; } break;*/ case 'date': $fval_s = process_pass_data($_REQUEST["{$fname}_start"]); $fval_e = process_pass_data($_REQUEST["{$fname}_end"]); if ( isset($_REQUEST["{$fname}_start"]) && strlen($fval_s) ) { $get_inputs .= ""; } if ( isset($_REQUEST["{$fname}_end"]) && strlen($fval_e) ) { $get_inputs .= ""; } break; } } return $get_inputs; } function ResNavigationRet( $form_name, $short = 0, $function='', $aVar = '' ) { global $p_num; global $page; global $_page; global $p_per_page; global $page_first_p; global $pages_num; global $logged; global $oTemplConfig; global $gallery_view; $pages_around = 5; if ( !is_array($aVar) ) { $per_page_array = array(10, 15, 20, 30, 50); } else { $per_page_array = $aVar; } if ( $logged['admin'] ) array_push($per_page_array, 100); if ( !$function ) { $get_vars_controls = get_vars_controls(1, 0, 1, 1, 1); $get_vars = get_vars(0, 1, 1, 1, 0); } else { $func = create_function( '', $function ); $get_vars = $func(); } $gallery_view = (int)$gallery_view; ob_start(); if ( $p_num ) { ?>
show_gallery_link_in_page_navigation ) { if ( $gallery_view ) { echo " "; } else { echo " "; } } else { echo " "; } ?>
- |   |   
1 ) { echo " ". _t("_First") ." |  ". _t("_Prev") ." | "; } // print all previous pages for ( $i = max($page - $pages_around, 1); $i < $page ; $i++ ) { echo " {$i} "; } // print current page echo " [{$page}] "; // print all next pages for ( $i = $page + 1; $i <= min($page + $pages_around, $pages_num); $i++ ) { echo " {$i} "; } if ( $page < $pages_num ) { echo " ". _t("_Next") ." |  ". _t("_Last") .""; } ?> ". _t("_view as profile details") ."". _t("_view as photo gallery") ." 
'admin', 0 => 'member', 2 => 'aff', 3 => 'moderator'); foreach ($aAccTypes as $key => $value) { if ($logged[$value] = member_auth( $key, false )) break; } } // 0 - member, 1 - admin function member_auth ( $member = 0, $error_handle = true, $bAjx = false ) { global $site; global $tab; global $logged; switch( $member ) { case 0: $mem = 'member'; $table = 'Profiles'; $login_page = "{$site['url']}member.php"; break; case 1: $mem = 'admin'; $table = 'Admins'; $login_page = "{$site['url_admin']}index.php"; break; case 2: $mem = 'aff'; $table = 'aff'; $login_page = "{$site['url_aff']}index.php"; break; // case 3: $mem = 'moderator'; $table = 'moderators'; $login_page = "{$site['url']}moderators/index.php"; break; } if ( !$_COOKIE[ $mem . "ID" ] || !$_COOKIE[ $mem . "Password" ] ) { if ( $error_handle ) { $text = _t("_LOGIN_REQUIRED_AE1"); if ( !$member ) $text .= "
"._t("_LOGIN_REQUIRED_AE2", $site['images'], $site['url'], $site['title']); $bAjxMode = ( isset( $_SERVER['HTTP_X_REQUESTED_WITH'] ) and $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest' ) ? true : false; if ($member=1 && $bAjx==true) $bAjxMode = true; login_form( $text, $member, $bAjxMode ); } return false; } return check_login( $_COOKIE[ $mem . 'ID' ], $_COOKIE[ $mem . 'Password' ], $table, $error_handle ); } function MemberContacted( $ID ) { $ID = (int)$ID; if ( !$ID ) return; $c_arr = db_arr( "SELECT COUNT(*) FROM `BoughtContacts` WHERE `IDBuyer` = $ID" ); return $c_arr[0]; } function MemberWasContacted( $ID ) { $ID = (int)$ID; if ( !$ID ) return; $c_arr = db_arr( "SELECT COUNT(*) FROM `BoughtContacts` WHERE `IDContact` = $ID" ); return $c_arr[0]; } 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 `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 = BX_DIRECTORY_PATH_CACHE . 'user' . $ID . '.php'; @unlink( $sCacheFile ); reparseObjTags( 'profile', $ID ); } function profile_send_message( $ID, $message ) { global $site; if ( !(int)$ID ) return false; if ( !strlen( $message ) ) return false; $p_arr = getProfileInfo( $ID ); //db_arr( "SELECT `ID`, `Email` FROM `Profiles` WHERE `ID` = '$ID'" ); if ( !$p_arr ) return false; $text = getParam("t_AdminEmail"); $subject = getParam("t_AdminEmail_subject"); $recipient = $p_arr['Email']; $aPlus = array(); $aPlus['MessageText'] = "\r\n$message\r\n"; $mail_ret = sendMail( $recipient, $subject, $text, $p_arr['ID'], $aPlus ); if ( !$mail_ret ) return false; return true; } function get_user_online_status ($ID) { $ID = (int)$ID; $min = getParam( "member_online_time" ); $onl_arr = db_arr("SELECT count(ID) as count_id FROM Profiles WHERE DateLastNav > SUBDATE(NOW(), INTERVAL $min MINUTE) AND ID=$ID"); return (int)( $onl_arr[count_id] == 1 ); } /** * who * 0 - all * 1 - man * 2 - woman **/ function get_users_online_number ( $who = 0, $country = "") { if ( !$who ) $who = ''; $min = getParam( "member_online_time" ); switch ( $who ) { // chatting case 't': case 'T': $onl_arr = db_arr("SELECT count(DISTINCTROW IDFrom) AS count_onl FROM IMessages WHERE `When` > SUBDATE(NOW(), INTERVAL $min MINUTE)"); break; // Members with non standart membership case 'g': case 'G': $onl_arr = db_arr( "SELECT COUNT(DISTINCT IDMember) AS count_onl FROM ProfileMemLevels INNER JOIN Profiles ON Profiles.ID = ProfileMemLevels.IDMember WHERE (DateExpires IS NULL OR DateExpires > NOW()) AND (DateStarts IS NULL OR DateStarts <= NOW()) AND (Profiles.Status = 'Active') AND (DateLastNav > SUBDATE(NOW(), INTERVAL $min MINUTE))" ); break; // from country case 'c': case 'C': $country = process_db_input($country); $onl_arr = db_arr("SELECT count(ID) as count_onl FROM Profiles WHERE Status='Active' AND `Country` = '$country' AND DateLastNav > SUBDATE(NOW(), INTERVAL $min MINUTE)"); break; // men case 'm': case 'M': $onl_arr = db_arr("SELECT count(ID) as count_onl FROM Profiles WHERE Status='Active' AND Sex='male' AND DateLastNave > SUBDATE(NOW(), INTERVAL $min MINUTE)"); break; // momen case 'w': case 'W': $onl_arr = db_arr("SELECT count(ID) as count_onl FROM Profiles WHERE Status='Active' AND Sex='female' AND DateLastNave > SUBDATE(NOW(), INTERVAL $min MINUTE)"); break; // all default: $onl_arr = db_arr("SELECT count(ID) as count_onl FROM Profiles WHERE Status='Active' AND DateLastNave > SUBDATE(NOW(), INTERVAL $min MINUTE)"); break; } return (int)$onl_arr['count_onl']; } function get_users_online_res ( $lim = 0 ) { if ( !$lim ) $lim = getParam( "default_online_users_num" ); $min = getParam( "member_online_time" ); return db_res("SELECT ID, NickName FROM Profiles WHERE Status='Active' AND DateLastNave > SUBDATE(NOW(), INTERVAL $min MINUTE) ORDER BY DateLastNave DESC LIMIT $lim"); } function AddNotifyEmail ( $email, $Name = "", $EmailFlag = "NotifyMe", $EmailText = "HTML" ) { $email = process_db_input(trim($email)); $Name = process_db_input($Name); if ( !strlen($email) || !strstr($email,"@") || !strstr($email,".") ) return 0; $arr = db_arr("SELECT ID FROM Profiles WHERE Email LIKE '$email' LIMIT 1"); if ( $arr['ID'] ) return 0; $arr = db_arr("SELECT ID FROM NotifyEmails WHERE Email LIKE '$email' LIMIT 1"); if ( $arr['ID'] ) return 0; return db_res("INSERT INTO NotifyEmails SET Email = '$email', Name = '$Name', EmailFlag = '$EmailFlag', EmailText = '$EmailText'"); } function Replace_Vars( $path, $target, $value ) { $content = array(); $f = fopen ( $path, "r" ); while (!feof ($f)) { $templ .= fgets($f, 4096); } fclose ( $f ); $content = explode("\n", $templ); //------ REPLACEMENT ================================================ for ($i = 0; $i < count($content); $i++ ) { $t = $content[$i]; if ( preg_match("/^\\".$target."\s/", $t) ) { $content[$i] = $target . $value; } } //------ RECORD ===================================================== $f = fopen ( $path, "w" ); for ($i = 0; $i < count($content)-1; $i++ ) { fwrite($f,"$content[$i]"."\n"); } fwrite($f,"$content[$i]"); fclose ( $f ); return true; } ?>