HomeHelpTrac

source: tags/6.1/photos.php @ 10242

Revision 10242, 4.4 KB checked in by Alexander Trofimov, 3 years ago (diff)

dolphin 6.1.5, initial commit

Line 
1<?
2
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
21require_once( 'inc/header.inc.php' );
22require_once( BX_DIRECTORY_PATH_INC . 'design.inc.php' );
23require_once( BX_DIRECTORY_PATH_INC . 'profiles.inc.php' );
24require_once( BX_DIRECTORY_PATH_INC . 'utils.inc.php' );
25
26// --------------- page variables and login
27
28$_page['name_index']    = 83;
29$_page['css_name']      = 'photos.css';
30
31if ( !( $logged['admin'] = member_auth( 1, false ) ) )
32    if ( !( $logged['member'] = member_auth( 0, false ) ) )
33        if ( !( $logged['aff'] = member_auth( 2, false )) )
34            $logged['moderator'] = member_auth( 3, false );
35
36$_page['header'] = _t( "_Photos" );
37$_page['header_text'] = _t( "_Photos" );
38
39$_ni = $_page['name_index'];
40
41$_page_cont[$_ni]['page_main_code'] = PageCompPhotos();
42
43PageCode();
44
45
46function PageCompPhotos()
47{
48    global $site;
49    global $tmpl;
50
51    // number of photos
52    $max_num    = 12;
53    $mode       = 'top';
54       
55    $sqlSelect = "
56        SELECT
57            `media`.`med_id`,
58            `med_prof_id`,
59            `med_file`,
60            `med_title`";
61   
62    $sqlFrom = "
63        FROM `media`";
64   
65    $sqlWhere = "
66        WHERE
67            `med_type` = 'photo' AND
68            `med_status` = 'active'";
69
70   
71    if ( $_GET['mode'] == 'rand' or
72         $_GET['mode'] == 'last' or
73         $_GET['mode'] == 'top' )
74            $mode = $_GET['mode'];
75   
76    $menu = '';
77    switch ( $mode )
78    {
79        case 'last': $sqlOrder = " ORDER BY `med_date` DESC"; break;
80        case 'rand': $sqlOrder = " ORDER BY RAND()";          break;
81        case 'top':
82                $sqlSelect .= ",
83    (`med_rating_sum`/`med_rating_count`) AS `avg_mark`";
84                $sqlFrom .= "
85    INNER JOIN `media_rating` USING (`med_id`) ";
86                $sqlOrder = "
87    ORDER BY `avg_mark` DESC";
88        break;
89    }
90   
91    $aNum = db_arr( "SELECT COUNT(`media`.`med_id`) $sqlFrom $sqlWhere" );
92    $num = (int)$aNum[0];
93    if( $num )
94    {
95        $pages = ceil( $num / $max_num );
96        $page = (int)$_GET['page'];
97       
98        if( $page < 1 or $mode == 'rand' )
99            $page = 1;
100        if( $page > $pages )
101            $page = $pages;
102       
103        $sqlLimitFrom = ( $page - 1 ) * $max_num;
104        $sqlLimit = "
105        LIMIT $sqlLimitFrom, $max_num";
106       
107        $max_thumb_width  = (int)getParam( 'max_thumb_width' );
108        $max_thumb_height = (int)getParam( 'max_thumb_height' );
109       
110        $ret = '<div class="clear_both"></div>';
111       
112        $result = db_res( $sqlSelect.$sqlFrom.$sqlWhere.$sqlOrder.$sqlLimit );
113        while ( $ph_arr = mysql_fetch_assoc( $result ) )
114        {
115            $urlImg = "{$site['profileImage']}{$ph_arr['med_prof_id']}/thumb_{$ph_arr['med_file']}";
116            $urlSpacer = getTemplateIcon( 'spacer.gif' );
117           
118            $ph_arr['med_title'] = htmlspecialchars_adv( $ph_arr['med_title'] );
119            //$memNickName = getNickName( $ph_arr['med_prof_id'] );
120           
121            $ret .= <<<EOJ
122            <div class="photo_block">
123                <div class="thumbnail_block" style="float:none;">
124                    <a href="{$site['url']}photos_gallery.php?ID={$ph_arr['med_prof_id']}&amp;photoID={$ph_arr['med_id']}" title="{$ph_arr['med_title']}">
125                        <img style="width:{$max_thumb_width}px;height:{$max_thumb_height}px;background-image:url($urlImg);" src="$urlSpacer" />
126                    </a>
127                </div>
128                <div class="photo_nickname">
129                    <a href="{$site['url']}$memNickName">$memNickName</a>
130                </div>
131            </div>
132EOJ;
133        }
134       
135        $ret .= '<div class="clear_both"></div>';
136       
137        if( $pages > 1 )
138        {
139            $pagination =
140                '<div class="photos_pages">'.
141                    genPagination( $pages, $page, $_SERVER['PHP_SELF']."?mode=$mode&amp;page={page}" ).
142                '</div>';
143           
144            $ret = $pagination . $ret . $pagination;
145        }
146    }
147    else
148    {
149        $ret .= '<div class="no_result">';
150            $ret .= '<div>';
151                $ret .= _t("_No results found");
152            $ret .= '</div>';
153        $ret .= '</div>';
154    }
155   
156    return $ret;
157}
Note: See TracBrowser for help on using the repository browser.