Changeset 7850


Ignore:
Timestamp:
Dec 2, 2008, 3:30:26 PM (16 years ago)
Author:
sas
Message:
 
Location:
trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified trunk/all_members.php

    r7834 r7850  
    2424    require_once( BX_DIRECTORY_PATH_ROOT . 'templates/tmpl_' . $tmpl . '/scripts/BxTemplProfileView.php' ); 
    2525    require_once( BX_DIRECTORY_PATH_ROOT . 'templates/tmpl_' . $tmpl . '/scripts/BxTemplBrowse.php' ); 
     26    require_once(BX_DIRECTORY_PATH_ROOT . 'templates/tmpl_'.$tmpl.'/scripts/BxTemplSearchProfile.php'); 
    2627 
    2728    check_logged(); 
     
    3738    class BxDolAllMembersPageView extends BxDolPageView  
    3839    { 
    39  
     40        // consit all necessary data for display members list ; 
    4041        var $aDisplayParameters; 
    4142 
    42         // consist path to current page; 
     43        // contains the path to the current page ; 
    4344        var $sCurrentPage ; 
     45 
     46        // link on search profile ; 
     47        var $rSearchProfileTmpl; 
    4448 
    4549        /** 
    4650         * @description : class constructor ; 
    4751         * @param       : $sPageName (string) - set page composer ; 
    48          * @param       : $aDisplayParameters (array) -  consit all necessary data for display members ; 
     52         * @param       : $aDisplayParameters (array); 
    4953                            per_page (integer) - number of elements for per page ; 
    5054                            page (integer) - current page ; 
     
    5963            $this -> aDisplayParameters = &$aDisplayParameters; 
    6064            $this -> sCurrentPage = $_SERVER['PHP_SELF'];    
     65            $this -> rSearchProfileTmpl = new BxTemplSearchProfile(); 
    6166        } 
    6267 
     
    6873        function getBlockCode_FeaturedMembers() 
    6974        { 
    70             global $tmpl; 
    71  
    7275            // init some variables ; 
    7376 
     
    7982 
    8083            if( !$iTotalNum )  
    81                 return MsgBox( _t('_Sorry, nothing found') ); 
     84                $sOutputHtml = MsgBox( _t('_Sorry, nothing found') ); 
    8285 
    8386            $iPerPage = $this -> aDisplayParameters['per_page']; 
     
    8790            $sqlLimit = "LIMIT {$sLimitFrom}, {$iPerPage}"; 
    8891 
    89             // select the members template 
     92            // switch member's template ; 
    9093 
    9194            if ( $this -> aDisplayParameters['mode'] == 'extended' ) 
     
    97100            $rResult = db_res($sQuery); 
    98101 
    99             // generate the search result ; 
    100  
    101             require_once(BX_DIRECTORY_PATH_ROOT . 'templates/tmpl_'.$tmpl.'/scripts/BxTemplSearchProfile.php'); 
    102             $oBxTemplSearchProfile = new BxTemplSearchProfile(); 
    103  
    104             // need for the block devider ; 
     102            // need for block devider ; 
    105103 
    106104            $aExtendedCss = array( '__ext_css_class__' => 'search_filled_block'); 
     
    113111                    if ( !($iIndex % 2)  )  
    114112                    { 
    115                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo); 
     113                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo); 
    116114                    } 
    117115                    else 
    118116                    { 
    119                         // generate the filled block ; 
    120                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo, $aExtendedCss); 
     117                        // generate filled block ; 
     118                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo, $aExtendedCss); 
    121119                    } 
    122120                } 
     
    125123                    if ( !($iIndex % 2)  )  
    126124                    { 
    127                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1); 
     125                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1); 
    128126                    } 
    129127                    else  
    130128                    { 
    131                         // generate the filled block ; 
    132  
    133                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1, null, $aExtendedCss); 
     129                        // generate filled block ; 
     130                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, null, $aExtendedCss); 
    134131                    } 
    135132                } 
     
    155152            $sRequest = $sRequest . '&featured_members_page={page}&per_page=' . $iPerPage; 
    156153            $sPagination = genPagination( $iTotalNum, $iCurPage, $sRequest, null, 4, $iPerPage, 0 ); 
    157              
     154 
    158155            return DesignBoxContent( _t( '_featured members' ) . $this -> genToggleBlock(), $sOutputHtml . $sPagination, 1 ); 
    159156        } 
     
    165162        function getBlockCode_AllMembers() 
    166163        { 
    167             global $tmpl; 
    168  
    169164            // init some variables ; 
    170165 
     
    193188            $sQuery  = "SELECT * FROM `Profiles` {$sqlLimit}"; 
    194189            $rResult = db_res($sQuery); 
    195  
    196             // generate the search result ; 
    197  
    198             require_once(BX_DIRECTORY_PATH_ROOT . 'templates/tmpl_'.$tmpl.'/scripts/BxTemplSearchProfile.php'); 
    199             $oBxTemplSearchProfile = new BxTemplSearchProfile(); 
    200190 
    201191            // need for the block devider ; 
     
    210200                    if ( !($iIndex % 2)  )  
    211201                    { 
    212                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo); 
     202                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo); 
    213203                    } 
    214204                    else 
    215205                    { 
    216                         // generate the filled block ; 
    217                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo, $aExtendedCss); 
    218                         $sOutputHtml .= '<div class="clear_both"></div>'; 
     206                        // generate filled block ; 
     207                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo, $aExtendedCss); 
    219208                    } 
    220209                } 
     
    223212                    if ( !($iIndex % 2)  )  
    224213                    { 
    225                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1); 
     214                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1); 
    226215                    } 
    227216                    else  
    228217                    { 
    229                         // generate the filled block ; 
    230  
    231                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1, null, $aExtendedCss); 
    232                         $sOutputHtml .= '<div class="clear_both"></div>'; 
     218                        // generate filled block ; 
     219                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, null, $aExtendedCss); 
    233220                    } 
    234221                } 
     
    292279 
    293280        /** 
    294          * @description : function will generate mode togle block ; 
     281         * @description : function will generate mode toggle block ; 
    295282         * @return Html presentation data ; 
    296283        */ 
     
    345332    } 
    346333 
    347     // init some needed varibales 
     334    // init some needed varibales ; 
    348335 
    349336    if ( isset($_GET['per_page']) )  
     
    378365        $iPage2 = 1; 
    379366 
    380     $aDisplayParameters = array( 
     367    $aDisplayParameters = array 
     368    ( 
    381369        'per_page'  => $iPerPage, 
    382370        'page'      => $iPage, 
     
    387375    ); 
    388376 
    389     // generate the page 
     377    // generate page 
    390378 
    391379    $_ni = $_page['name_index']; 
  • TabularUnified trunk/greet.php

    r7830 r7850  
    143143    if ($bAjxMod) { 
    144144        $sJQueryJS = genAjaxyPopupJS($recipientID); 
    145         echo MsgBox($action_result) . $sJQueryJS; exit; 
     145        echo _t_action($action_result) . $sJQueryJS; exit; 
    146146    } 
    147147    return DesignBoxContent( _t("_Send virtual kiss"), $ret, $oTemplConfig -> PageVkiss_db_num ); 
  • TabularUnified trunk/inc/classes/BxDolBrowse.php

    r7769 r7850  
    44 
    55        // consist path to cache ; 
    6  
    76        var $sCacheFilePath; 
    87 
    98        // consit all member's information ; 
    10  
    119        var $aMembersInfo; 
    1210 
    1311        // consit all Date of birth range ; 
    14  
    1512        var $aDateBirthRange; 
    1613 
    1714        // consit all Sex ranges ; 
    18  
    1915        var $aSexRange; 
    2016 
    2117        // consit all Sex ranges ; 
    22  
    2318        var $aCountryRange; 
    2419 
    2520        // consist true value if isset permalink mode ; 
    26  
    2721        var $bPermalinkMode; 
    2822 
    2923        // need for array searching ; 
    30  
    3124        var $sKeyName; 
    3225 
  • TabularUnified trunk/install/sql/v61.sql

    r7843 r7850  
    68706870INSERT INTO `PageCompose` VALUES(133, 'all_members', '960px', '', '_featured members', 1, 0, 'FeaturedMembers', '', 0, 69, 'non,memb', 0); 
    68716871INSERT INTO `PageCompose` VALUES(134, 'all_members', '960px', '', '_all members', 1, 1, 'AllMembers', '', 0, 69, 'non,memb', 0); 
     6872INSERT INTO `PageCompose` VALUES(135, 'friends_page', '960px', '', '_Friends', 2, 0, 'Friends', '', 1, 69, 'non,memb', 0); 
     6873INSERT INTO `PageCompose` VALUES(136, 'friends_page', '960px', '', '_Friends tracker', 1, 0, 'Tracker', '', 1, 31, 'non,memb', 0); 
    68726874 
    68736875-- -------------------------------------------------------- 
  • TabularUnified trunk/profile_info.php

    r7659 r7850  
    3535    class BxDolProfileInfoPageView extends BxDolPageView  
    3636    { 
    37  
    38         // consist all informaion about the view profile 
    39  
     37        // consist all informaion about viewed profile ; 
    4038        var $aMemberInfo = array(); 
    4139 
    42         // if member loged - will true 
     40        // logged member ID ; 
     41        var $iMemberID; 
    4342 
    44         var $iMemberID; 
    45          
    4643        /** 
    47         ** class constructor ; 
     44         * class constructor ; 
    4845        */ 
    4946 
    5047        function BxDolProfileInfoPageView( $sPageName, &$aMemberInfo )  
    5148        { 
    52  
    5349            parent::BxDolPageView($sPageName); 
    5450            $this->aMemberInfo = &$aMemberInfo; 
     
    5753                ? (int) $_COOKIE['memberID'] 
    5854                : 0; 
    59      
    6055        } 
    6156 
    6257        /** 
    63         ** @description : function will draw block with profile photos ; 
     58         * @description : function will draw block with the profile photos ; 
    6459        */ 
    6560 
     
    6863            global $oFunctions; 
    6964 
    70             $sPhotoContent = $oFunctions->GenPhotoSWBlock($this->aMemberInfo['ID']); 
     65            $aParams = array 
     66            ( 
     67                'PID' => $this->aMemberInfo['ID'] 
     68            );   
     69 
     70            $sPhotoContent = $oFunctions -> GenPhotoSWBlock( $aParams ); 
    7171            $sWraper = $this->GenFormWrap( $sPhotoContent, 'profile_info', 'ProfilePhotos', 1, 342); 
    7272 
     
    7575            else 
    7676                return ; 
    77  
    7877        } 
    7978 
    8079        /** 
    81         ** @description : function will draw block with profile actions ; 
     80         * @description : function will draw block with the profile actions ; 
    8281        */ 
    8382 
     
    9089            else 
    9190                return; 
    92  
    9391        } 
    9492 
    9593        /** 
    96         ** @description : function will generate the profile general information ; 
     94         * @description : function will generate profile general information ; 
    9795        */ 
    9896 
     
    105103 
    106104            return $oProfilePV->oProfileGen->showBlockPFBlock ( null, 17, true ); 
    107  
    108105        } 
    109106 
    110107        /** 
    111         ** @description : function will generate the profile personal information ; 
     108         * @description : function will generate profile personal information ; 
    112109        */ 
    113110 
     
    124121    } 
    125122 
    126     // init some needed variables 
     123    // init some needed variables ; 
    127124 
    128125    $iViewedID = ( isset($_GET['ID']) ) 
     
    140137    $_ni = $_page['name_index']; 
    141138 
    142     if ( is_array($aMemberInfo) and !empty($aMemberInfo) ) { 
    143  
    144         // prepare all needed keys 
     139    if ( is_array($aMemberInfo) and !empty($aMemberInfo) )  
     140    { 
     141        // prepare all needed keys ; 
    145142 
    146143        $aMemberInfo['window_width']    = $oTemplConfig->popUpWindowWidth; 
     
    156153        $oProfileInfo = &new BxDolProfileInfoPageView( 'profile_info', $aMemberInfo ); 
    157154        $sOutputHtml  = $oProfileInfo->getCode(); 
    158  
    159155    } 
    160156 
  • TabularUnified trunk/templates/base/css/browse.css

    r7834 r7850  
     1    div.dbContent  
     2    { 
     3        margin:0px; 
     4    } 
     5 
    16    div.top_settings_block { 
    27        background-color:#EDEDED; 
  • TabularUnified trunk/templates/base/scripts/BxBaseBrowse.php

    r7834 r7850  
    2020 
    2121    require_once( BX_DIRECTORY_PATH_CLASSES . 'BxDolBrowse.php' ); 
     22    require_once(BX_DIRECTORY_PATH_ROOT . 'templates/tmpl_'.$tmpl.'/scripts/BxTemplSearchProfile.php'); 
    2223 
    2324    class BxBaseBrowse extends BxDolBrowse  
     
    3031        var $aAdditionalParameters; 
    3132 
     33        // link on search profile ; 
     34        var $rSearchProfileTmpl; 
     35 
    3236        /** 
    3337         * @description : class constructor ; 
     38         * @param       : aFilteredSettings ( array ) ; 
    3439        */ 
    3540 
    3641        function BxBaseBrowse( &$aFilteredSettings )  
    3742        { 
    38  
    3943            if ( isset($aFilteredSettings['sex']) and $aFilteredSettings['sex'] == 'all' ) 
    4044                $aFilteredSettings['sex'] = null; 
     
    97101            ); 
    98102 
     103            $this -> rSearchProfileTmpl = new BxTemplSearchProfile(); 
    99104        } 
    100105 
     
    691696            $sExtendCaption = _t( '_Extended' ); 
    692697 
    693             // collect the SQL params ; 
     698            // collect the SQL parameters ; 
    694699 
    695700            $aWhereParam = array(); 
     
    806811            $iIndex = 0; 
    807812 
    808             // generate the search result ; 
    809  
    810             require_once(BX_DIRECTORY_PATH_ROOT . 'templates/tmpl_'.$tmpl.'/scripts/BxTemplSearchProfile.php'); 
    811             $oBxTemplSearchProfile = new BxTemplSearchProfile(); 
    812  
    813813            // need for the block devider ; 
    814814 
     
    822822                    if ( !($iIndex % 2)  )  
    823823                    { 
    824                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo); 
     824                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo); 
    825825                    } 
    826826                    else 
    827827                    { 
    828828                        // generate the filled block ; 
    829                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo, $aExtendedCss); 
     829                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo, $aExtendedCss); 
    830830                    } 
    831831                }  
     
    834834                    if ( !($iIndex % 2)  )  
    835835                    { 
    836                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1); 
     836                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1); 
    837837                    } 
    838838                    else  
     
    840840                        // generate the filled block ; 
    841841 
    842                         $sOutputHtml .= $oBxTemplSearchProfile->PrintSearhResult($aRow, $sTemplSearch, 1, null, $aExtendedCss); 
     842                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, null, $aExtendedCss); 
    843843                    } 
    844844                } 
     
    910910            ); 
    911911 
    912             // gen sorting block ( drop down ) ; 
     912            // gen sorting block ( type of : drop down ) ; 
    913913 
    914914            $sSortBlock = $oFunctions -> genSortingBlock( $aSortingParam, $sRequest); 
     
    934934            $sOnlineLocation = $this -> getCutParam( 'online_only',  $sRequest); 
    935935 
    936             // link for `mode switcher` section ; 
     936            // link for `mode switcher` ; 
    937937 
    938938            $sModeLocation = $this -> getCutParam( 'mode',  $sRequest); 
     
    10081008            '; 
    10091009 
     1010            $aToggleItems = array 
     1011            ( 
     1012                ''          =>  _t( '_Simple' ), 
     1013                'extended'  =>  _t( '_Extended' ), 
     1014            ); 
     1015 
     1016            foreach( $aToggleItems AS $sKey => $sValue ) 
     1017            { 
     1018                $aToggleEllements[$sValue] = array 
     1019                ( 
     1020                    'href' => $sModeLocation . '&mode=' . $sKey, 
     1021                    'dynamic' => true, 
     1022                    'active' => ($this -> aDisplayParameters['mode'] == $sKey ), 
     1023                ); 
     1024            } 
     1025 
    10101026            return DesignBoxContent( _t( '_People' ) . $sParamsToggle, $sHeaderPart . $sOutputHtml . $sPagination, 1 ); 
    10111027        } 
  • TabularUnified trunk/templates/base/scripts/BxBaseFunctions.php

    r7848 r7850  
    15611561        return $oForm->getCode(); 
    15621562    } 
     1563 
    15631564} 
    15641565 
  • TabularUnified trunk/viewFriends.php

    r7569 r7850  
    11<?php 
    22 
    3 /*************************************************************************** 
    4 *                            Dolphin Smart Community Builder 
    5 *                              ----------------- 
    6 *     begin                : Mon Mar 23 2006 
    7 *     copyright            : (C) 2006 BoonEx Group 
    8 *     website              : http://www.boonex.com/ 
    9 * This file is part of Dolphin - Smart Community Builder 
    10 * 
    11 * Dolphin is free software. This work is licensed under a Creative Commons Attribution 3.0 License.  
    12 * http://creativecommons.org/licenses/by/3.0/ 
    13 * 
    14 * Dolphin is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; 
    15 * without even the implied warranty of  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
    16 * See the Creative Commons Attribution 3.0 License for more details.  
    17 * You should have received a copy of the Creative Commons Attribution 3.0 License along with Dolphin,  
    18 * see license.txt file; if not, write to marketing@boonex.com 
    19 ***************************************************************************/ 
    20  
    21 require_once( 'inc/header.inc.php' ); 
    22 require_once( BX_DIRECTORY_PATH_INC . 'design.inc.php' ); 
    23 require_once( BX_DIRECTORY_PATH_INC . 'profiles.inc.php' ); 
    24  
    25 $_page['name_index'] = 82; 
    26 $_page['css_name'] = 'browse.css'; 
    27  
    28 check_logged(); 
    29  
    30 $_page['header'] = _t("_Friends"); 
    31 $_page['header_text'] = _t("_Friends"); 
    32 $_ni = $_page['name_index']; 
    33 $_page_cont[$_ni]['page_main_code'] = MsgBox(_t('_Sorry, nothing found')); 
    34  
    35 $iProfileID = (int)$_GET['iUser']; 
    36 $aProfileInfo = getProfileInfo($iProfileID); 
    37  
    38 if ($aProfileInfo) { 
    39     $_page['header'] = getNickName( $iProfileID)."'s "._t("_Friends"); 
    40     $_page['header_text'] = getNickName( $iProfileID)."'s "._t("_Friends"); 
     3    /*************************************************************************** 
     4    *                            Dolphin Smart Community Builder 
     5    *                              ----------------- 
     6    *     begin                : Mon Mar 23 2006 
     7    *     copyright            : (C) 2006 BoonEx Group 
     8    *     website              : http://www.boonex.com/ 
     9    * This file is part of Dolphin - Smart Community Builder 
     10    * 
     11    * Dolphin is free software. This work is licensed under a Creative Commons Attribution 3.0 License.  
     12    * http://creativecommons.org/licenses/by/3.0/ 
     13    * 
     14    * Dolphin is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; 
     15    * without even the implied warranty of  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
     16    * See the Creative Commons Attribution 3.0 License for more details.  
     17    * You should have received a copy of the Creative Commons Attribution 3.0 License along with Dolphin,  
     18    * see license.txt file; if not, write to marketing@boonex.com 
     19    ***************************************************************************/ 
     20 
     21    require_once( 'inc/header.inc.php' ); 
     22    require_once( BX_DIRECTORY_PATH_INC . 'design.inc.php' ); 
     23    require_once( BX_DIRECTORY_PATH_INC . 'profiles.inc.php' ); 
     24    require_once( BX_DIRECTORY_PATH_CLASSES . 'BxDolPageView.php' ); 
     25    require_once( BX_DIRECTORY_PATH_ROOT . 'templates/tmpl_' . $tmpl . '/scripts/BxTemplProfileView.php' ); 
     26    require_once(BX_DIRECTORY_PATH_ROOT . 'templates/tmpl_'.$tmpl.'/scripts/BxTemplSearchProfile.php'); 
     27 
     28    $_page['name_index'] = 7; 
     29    $_page['css_name'] = 'browse.css'; 
     30    $_page['js_name']  = 'browse.js'; 
     31 
     32    check_logged(); 
     33 
     34    $iProfileID = ( isset($_GET['iUser']) ) 
     35        ? (int) $_GET['iUser'] 
     36        : 0 ; 
     37 
     38    $aProfileInfo = getProfileInfo( $iProfileID ); 
     39 
     40    if ( $aProfileInfo )  
     41    { 
     42        $sPageCaption = _t( '_Friends of' ) . ':' . getNickName( $iProfileID ); 
     43 
     44        $_page['header']        = $sPageCaption; 
     45        $_page['header_text']   = $sPageCaption; 
     46 
     47        $_ni = $_page['name_index']; 
     48    } 
     49 
     50    class BxDolFriendsPageView extends BxDolPageView  
     51    { 
     52        // consit all necessary data for display members list ; 
     53        var $aDisplayParameters; 
     54 
     55        var $iProfileID; 
     56 
     57        // link on search profile ; 
     58        var $rSearchProfileTmpl; 
     59 
     60        // contains the path to the current page ; 
     61        var $sCurrentPage ; 
     62 
     63        var $iMemberOnlineTime; 
     64         
     65        /** 
     66         * @description : class constructor ; 
     67         * @param       : $sPageName (string) - name of build page ;     
     68         * @param       : $aDisplayParameters (array) ; 
     69                            per_page (integer) - number of elements for per page ; 
     70                            page (integer) - current page ; 
     71                            mode (string)  - will swith member view mode ; 
     72                            ext_tmpl (string)   - path to extended member's template ; 
     73                            sim_tmpl (string)   - path to simple member's template ; 
     74                            sort (string)       - sorting parameters ;   
     75         * @param       : $iProfileID (integer) - member ID ;                    
     76        */ 
     77 
     78        function BxDolFriendsPageView($sPageName, &$aDisplayParameters, $iProfileID) 
     79        { 
     80            parent::BxDolPageView($sPageName); 
     81            $this -> aDisplayParameters = &$aDisplayParameters; 
     82            $this -> iProfileID = $iProfileID; 
     83 
     84            $this -> rSearchProfileTmpl = new BxTemplSearchProfile(); 
     85            $this -> sCurrentPage = $_SERVER['PHP_SELF'];    
     86 
     87            // check member on line time ; 
     88 
     89            $this -> iMemberOnlineTime = getParam( "member_online_time" ); 
     90        } 
     91 
     92        /** 
     93         * @description : function will generate member tracker list ; 
     94         * @return      : Html presentation data; 
     95        */ 
     96 
     97        function getBlockCode_Tracker() 
     98        { 
     99            return 'hui'; 
     100        } 
     101 
     102        /** 
     103         * @description : function will generate friends list ; 
     104         * @return      : array ; 
     105        */ 
     106 
     107        function getBlockCode_Friends() 
     108        { 
     109            global $oFunctions; 
     110 
     111            // init some variables ; 
     112 
     113            $sOutputHtml    = null; 
     114            $iIndex         = null; 
     115 
     116            // lang keys ; 
     117 
     118            $sPhotoCaption  = _t( '_With photos only' ); 
     119            $sOnlineCaption = _t( '_online only' ); 
     120 
     121            // collect the SQL parameters ; 
     122 
     123            $aWhereParam = array(); 
     124            if ( $this -> aDisplayParameters['photos'] )  
     125                $aWhereParam[] = '`Profiles`.`PrimPhoto` <> 0'; 
     126 
     127            if ( $this -> aDisplayParameters['online'] ) 
     128                $aWhereParam[] = "(`Profiles`.`DateLastNav` > SUBDATE(NOW(), INTERVAL " . $this -> iMemberOnlineTime . " MINUTE)) "; 
     129 
     130            $sWhereParam = null; 
     131            foreach( $aWhereParam AS $sValue ) 
     132                if ( $sValue ) 
     133                    $sWhereParam .= ' AND ' . $sValue; 
     134 
     135            // # end collect of SQL ; 
     136 
     137            $sQuery =  
     138            " 
     139                SELECT  
     140                    COUNT(`Profiles`.`ID`)  
     141                FROM  
     142                    `FriendList` 
     143                INNER JOIN  
     144                    `Profiles`  
     145                ON  
     146                    `Profiles`.`ID` = `FriendList`.`Profile` AND `FriendList`.`ID` = {$this -> iProfileID}  
     147                        OR  
     148                    `Profiles`.`ID` = `FriendList`.`ID` AND `FriendList`.`Profile` = {$this -> iProfileID} 
     149                    {$sWhereParam} 
     150                WHERE 
     151                    `FriendList`.`Profile` = {$this -> iProfileID}  
     152                        OR  
     153                    `FriendList`.`ID` = {$this -> iProfileID}  
     154                        AND 
     155                    `FriendList`.`Check` = 1 
     156            "; 
     157 
     158            $iTotalNum = db_value($sQuery); 
     159 
     160            if( !$iTotalNum )  
     161                $sOutputHtml = MsgBox( _t('_Sorry, nothing found') ); 
     162 
     163            $iPerPage = $this -> aDisplayParameters['per_page']; 
     164            $iCurPage = $this -> aDisplayParameters['page']; 
     165 
     166            $sLimitFrom = ( $iCurPage - 1 ) * $iPerPage; 
     167            $sqlLimit = "LIMIT {$sLimitFrom}, {$iPerPage}"; 
     168 
     169            // switch member's template ; 
     170 
     171            if ( $this -> aDisplayParameters['mode'] == 'extended' ) 
     172                $sTemplSearch = file_get_contents( $this -> aDisplayParameters['ext_tmpl'] ); 
     173            else 
     174                $sTemplSearch = file_get_contents( $this -> aDisplayParameters['sim_tmpl'] ); 
     175 
     176            // select the sorting parameters ; 
     177 
     178            $sSortParam = '`Profiles`.`DateLastLogin` DESC'; 
     179 
     180            if ( isset($this -> aDisplayParameters['sort']) )  
     181            { 
     182                switch($this -> aDisplayParameters['sort']) { 
     183                    case 'activity' : 
     184                        $sSortParam = ' `Profiles`.`DateLastLogin` DESC'; 
     185                    break;   
     186                    case 'date_reg' :    
     187                        $sSortParam = ' `Profiles`.`DateReg` DESC'; 
     188                    break;   
     189                    case 'rate' :    
     190                        $sSortParam = ' `profile_rating`.`pr_rating_sum` DESC'; 
     191                    break;   
     192                    default : 
     193                        $sSortParam = ' `Profiles`.`DateLastLogin` DESC'; 
     194                } 
     195            } 
     196 
     197            $sQuery =  
     198            " 
     199                SELECT  
     200                    `Profiles`.*  
     201                FROM  
     202                    `FriendList` 
     203                INNER JOIN  
     204                    `Profiles`  
     205                ON  
     206                    `Profiles`.`ID` = `FriendList`.`Profile` AND `FriendList`.`ID` = {$this -> iProfileID}  
     207                        OR  
     208                    `Profiles`.`ID` = `FriendList`.`ID` AND `FriendList`.`Profile` = {$this -> iProfileID} 
     209                    {$sWhereParam} 
     210                LEFT JOIN 
     211                    `profile_rating` 
     212                ON 
     213                    `Profiles`.`ID` = `profile_rating`.`pr_id`       
     214                WHERE 
     215                    `FriendList`.`Profile` = {$this -> iProfileID}  
     216                        OR  
     217                    `FriendList`.`ID` = {$this -> iProfileID}  
     218                        AND 
     219                    `FriendList`.`Check` = 1 
     220                ORDER BY  
     221                    {$sSortParam} 
     222                {$sqlLimit}  
     223            "; 
     224 
     225            $rResult = db_res($sQuery); 
     226 
     227            // need for the block devider ; 
     228 
     229            $aExtendedCss = array( '__ext_css_class__' => 'search_filled_block'); 
     230 
     231            while( $aRow = mysql_fetch_assoc($rResult) )  
     232            { 
     233 
     234                if ( $aRow['Couple'])  
     235                { 
     236                    $aCoupleInfo = getProfileInfo( $Row['Couple'] ); 
     237                    if ( !($iIndex % 2)  )  
     238                    { 
     239                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo); 
     240                    } 
     241                    else 
     242                    { 
     243                        // generate filled block ; 
     244                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, $aCoupleInfo, $aExtendedCss); 
     245                    } 
     246                } 
     247                else  
     248                { 
     249                    if ( !($iIndex % 2)  )  
     250                    { 
     251                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1); 
     252                    } 
     253                    else  
     254                    { 
     255                        // generate filled block ; 
     256                        $sOutputHtml .= $this -> rSearchProfileTmpl -> PrintSearhResult($aRow, $sTemplSearch, 1, null, $aExtendedCss); 
     257                    } 
     258                } 
     259 
     260                $iIndex++; 
     261            } 
     262 
     263            $sOutputHtml .= '<div class="clear_both"></div>'; 
     264 
     265            // work with link pagination ; 
     266 
     267            $sRequest = $_SERVER['PHP_SELF'] . '?'; 
     268            $aGetParams = array('mode', 'iUser', 'photos_only', 'online_only', 'sort'); 
     269            if ( is_array($aGetParams) and !empty($aGetParams) ) 
     270                foreach($aGetParams AS $sValue )  
     271                    if ( isset($_GET[$sValue]) )  
     272                    { 
     273                        $sRequest .= '&' . $sValue . '=' . $_GET[$sValue]; 
     274                    } 
     275 
     276            // gen pagination block ; 
     277 
     278            $sRequest = $sRequest . '&page={page}&per_page=' . $iPerPage; 
     279            $sPagination = genPagination( $iTotalNum, $iCurPage, $sRequest, null, 4, $iPerPage, 1 ); 
     280 
     281            // ** GENERATE HEADER PART ; 
     282 
     283            // gen per page block ; 
     284 
     285            $sPerPageBlock = $oFunctions -> genPerPageBlock( $iPerPage, $sRequest, null);  
     286 
     287            // fill array with sorting params ; 
     288 
     289            $aSortingParam = array 
     290            ( 
     291                'activity'  => _t( '_Latest activity' ), 
     292                'date_reg'  => _t( '_FieldCaption_DateReg_View' ), 
     293                'rate'      => _t( '_Rate' ), 
     294            ); 
     295 
     296            // gen sorting block ( type of : drop down ) ; 
     297 
     298            $sRequest = str_replace('{page}', '1', $sRequest); 
     299            $sSortBlock = $oFunctions -> genSortingBlock( $aSortingParam, $sRequest); 
     300 
     301            // init some visible parameters ; 
     302 
     303            $sPhotosChecked = ($this -> aDisplayParameters['photos']) 
     304                ? 'checked="checked"' 
     305                : null; 
     306 
     307            $sOnlineChecked = ($this -> aDisplayParameters['online']) 
     308                ? 'checked="checked"' 
     309                : null; 
     310 
     311            // link for photos section ; 
     312 
     313            $sPhotoLocation = $this -> getCutParam( 'photos_only',  $sRequest); 
     314 
     315            // link for online section ; 
     316 
     317            $sOnlineLocation = $this -> getCutParam( 'online_only',  $sRequest); 
     318 
     319            // link for `mode switcher` ; 
     320 
     321            $sModeLocation = $this -> getCutParam( 'mode',  $sRequest); 
     322            $sModeLocation = $this -> getCutParam( 'per_page',  $sModeLocation); 
     323 
     324            $sHeaderPart =  
     325            ' 
     326                <div class="top_settings_block"> 
     327                    <div class="ordered_block"> 
     328                        ' . $sSortBlock . ' 
     329                        &nbsp; 
     330                        <input type="checkbox" ' . $sPhotosChecked . ' name="photos_only" value="on" onclick="oBrowsePage.LocationChange(this, \'' . $sPhotoLocation . '\')" /> 
     331                        ' . $sPhotoCaption . ' 
     332                        &nbsp; 
     333                        <input type="checkbox" ' . $sOnlineChecked . ' name="online_only" value="on" onclick="oBrowsePage.LocationChange(this, \'' . $sOnlineLocation . '\')"/> 
     334                        ' . $sOnlineCaption . ' 
     335                    </div> 
     336                    <div class="per_page_block"> 
     337                        ' . $sPerPageBlock  . ' 
     338                    </div> 
     339                    <div class="clear_both"></div> 
     340                </div> 
     341            '; 
     342 
     343            $aToggleItems = array 
     344            ( 
     345                ''          =>  _t( '_Simple' ), 
     346                'extended'  =>  _t( '_Extended' ), 
     347            ); 
     348 
     349            foreach( $aToggleItems AS $sKey => $sValue ) 
     350            { 
     351                $aToggleEllements[$sValue] = array 
     352                ( 
     353                    'href' => $sModeLocation . '&mode=' . $sKey, 
     354                    'dynamic' => true, 
     355                    'active' => ($this -> aDisplayParameters['mode'] == $sKey ), 
     356                ); 
     357            } 
     358 
     359            return array(  $sHeaderPart . $sOutputHtml . $sPagination, $aToggleEllements ); 
     360        } 
     361 
     362        /** 
     363         * @description : function will cute the parameter from received string; 
     364         * @param       : $aExceptNames (string) - name of unnecessary paremeter; 
     365         * @return      : cleared string; 
     366        */ 
     367 
     368        function getCutParam( $sExceptParam, $sString )  
     369        {  
     370            return preg_replace( "/(&amp;|&){$sExceptParam}=([a-z0-9\_\-]{1,})/i",'', $sString); 
     371        } 
     372 
     373    } 
     374 
     375    // generate page ; 
     376 
    41377    $_ni = $_page['name_index']; 
    42     $_page_cont[$_ni]['page_main_code'] = PageCompPageMainCode($iProfileID); 
    43 } 
    44  
    45 PageCode(); 
    46  
    47 function PageCompPageMainCode($iProfileID) { 
    48     $sFriendsListSQL = " 
    49         SELECT `Profiles`.* FROM `FriendList` 
    50         INNER JOIN `Profiles` ON (`Profiles`.`ID` = `FriendList`.`Profile` AND `FriendList`.`ID` = '{$iProfileID}' OR `Profiles`.`ID` = `FriendList`.`ID` AND `FriendList`.`Profile` = '{$iProfileID}') 
    51         WHERE 
    52             (`FriendList`.`Profile` = '{$iProfileID}' OR `FriendList`.`ID` = '{$iProfileID}') AND 
    53             `FriendList`.`Check` = '1' 
    54         ORDER BY `Profiles`.`Picture` DESC 
    55     "; 
    56  
    57     $vFriendsList = db_res($sFriendsListSQL); 
    58  
    59     if (mysql_num_rows($vFriendsList)>0) { 
    60         $iCounter = 0; 
    61         while ( $aFriendInfo = mysql_fetch_assoc( $vFriendsList ) ) { 
    62             $ret .= '<div class="search_res_members_block_1">' . get_member_thumbnail($aFriendInfo['ID'], 'none') . '<div class="browse_nick"><a href="' . getProfileLink($aFriendInfo['ID']) . '">' . $aFriendInfo['NickName'] . '</a></div><div class="clear_both"></div></div>'; 
    63             $iCounter ++; 
    64         } 
    65     } else { 
    66         return MsgBox(_t('_Sorry, nothing found')); 
     378 
     379    // init some needed varibales ; 
     380 
     381    if ( isset($_GET['per_page']) )  
     382    { 
     383        $iPerPage = (int) $_GET['per_page']; 
    67384    } 
    68  
    69     $sRet = '<div class="dbContent"><div class="block_rel_100">' . $ret . '</div></div>'; 
    70  
    71     return $sRet; 
    72 } 
     385    else  
     386    { 
     387        $iPerPage  = ( isset($_GET['mode']) and  $_GET['mode'] == 'extended' ) 
     388            ? $iPerPage = 5 
     389            : $iPerPage = 32; 
     390    } 
     391 
     392    if ( $iPerPage  <= 0 ) 
     393        $iPerPage = 32; 
     394 
     395    if ( $iPerPage > 100 ) 
     396            $iPerPage = 100; 
     397 
     398    $iPage = ( isset($_GET['page']) )    
     399        ? (int) $_GET['page'] 
     400        : 1; 
     401 
     402    if ( $iPage <= 0 ) 
     403        $iPage = 1; 
     404 
     405    $aDisplayParameters = array 
     406    ( 
     407        'per_page'  => $iPerPage, 
     408        'page'      => $iPage, 
     409        'mode'      => isset($_GET['mode']) ? $_GET['mode'] : null, 
     410        'ext_tmpl'  => BX_DIRECTORY_PATH_ROOT . "templates/tmpl_{$tmpl}/search_profiles_ext.html", 
     411        'sim_tmpl'  => BX_DIRECTORY_PATH_ROOT . "templates/tmpl_{$tmpl}/search_profiles_sim.html", 
     412        'photos'    => isset($_GET['photos_only']) ? true : false, 
     413        'online'    => isset($_GET['online_only']) ? true : false, 
     414        'sort'      => isset($_GET['sort']) ? $_GET['sort'] : null, 
     415    ); 
     416 
     417    $oFriendsPage = &new BxDolFriendsPageView( 'friends_page', $aDisplayParameters, $iProfileID ); 
     418    $sOutputHtml  = $oFriendsPage -> getCode(); 
     419 
     420    $_page_cont[$_ni]['page_main_code'] = $sOutputHtml; 
     421 
     422    PageCode(); 
     423 
     424?> 
Note: See TracChangeset for help on using the changeset viewer.
 
Below is the legacy version of the Boonex site, maintained for Dolphin.Pro 7.x support.
The new Dolphin solution is powered by UNA Community Management System.
Fork me on GitHub