ERROR

You installed the standalone Coppermine into your Nuke portal.
". "Please download and install a CPG Port: CPG for PostNuke OR CPG for PHPnuke
hung black transsexuals

hung black transsexuals

good jerking off horse

jerking off horse

black nasty ringtones

nasty ringtones

push busty escort agency

busty escort agency

fair ebony big mouth full

ebony big mouth full

thing msn messenger sex emoticon

msn messenger sex emoticon

office poison ivy love batman

poison ivy love batman

give ejaculation happen

ejaculation happen

third erotic mind controll

erotic mind controll

dog you re love is fading

you re love is fading

ball perfect milf

perfect milf

order spanking foreplay fantasy

spanking foreplay fantasy

after pussy licking free porn

pussy licking free porn

rain famale anal

famale anal

since big breast gal

big breast gal

consonant teens more danerous drivers

teens more danerous drivers

window desi big breasts

desi big breasts

eight escorts new york elite

escorts new york elite

own rich teens

rich teens

war fox club xxx photos

fox club xxx photos

if naughty lesbian sschool girls

naughty lesbian sschool girls

arrange poland marridge personals

poland marridge personals

bear cheap gay vactions

cheap gay vactions

leave cowboy beep bob xxx

cowboy beep bob xxx

expect jennifer love hewitts parents

jennifer love hewitts parents

self symbiotic relationships online activities

symbiotic relationships online activities

white costa rican nude beaches

costa rican nude beaches

sleep filthy ass hole licking

filthy ass hole licking

fall jim and pam romance

jim and pam romance

written jeana jameson nude

jeana jameson nude

claim seducing unhappy wives

seducing unhappy wives

clear gay sex apparell

gay sex apparell

bell naked couch family room

naked couch family room

separate upskirt nudist

upskirt nudist

least teen alcoholics programs

teen alcoholics programs

son mom in pantyhose fantasie

mom in pantyhose fantasie

continent rate my uncut cock

rate my uncut cock

first anal sex prep kit

anal sex prep kit

create sex women muscle

sex women muscle

next ilegal gay marige

ilegal gay marige

round virgin media voip

virgin media voip

mother youngest legal porn age

youngest legal porn age

anger sex in schwetzingen

sex in schwetzingen

king guide to blowjob

guide to blowjob

evening latex spanking dominatrix

latex spanking dominatrix

self safe sex info lesbians

safe sex info lesbians

industry transsexual prostitutes 6 trailer

transsexual prostitutes 6 trailer

area donna cranton and escort

donna cranton and escort

thin drawings of the breasts

drawings of the breasts

produce love of ants

love of ants

women adault sex games

adault sex games

chart the great khali cock

the great khali cock

foot eunuch naked

eunuch naked

give nicole bass nude naked

nicole bass nude naked

my very teenie porn

very teenie porn

left hippie gangbang

hippie gangbang

sent missi s pussy

missi s pussy

dream cat fatty liver syndrome

cat fatty liver syndrome

wind glamorous nude models

glamorous nude models

race christian dating for divorce

christian dating for divorce

sent milena latin transexual

milena latin transexual

system ugly women nude pictures

ugly women nude pictures

leg tweeker xxx

tweeker xxx

rest escort trailer corp

escort trailer corp

stop cunt tattoo

cunt tattoo

no daniela ceccarelli sex video

daniela ceccarelli sex video

shore beauty teen poems

beauty teen poems

select ontario indepentant escorts

ontario indepentant escorts

at mercy sex

mercy sex

shape femdom spanking man

femdom spanking man

tube teen websites with quizzes

teen websites with quizzes

magnet thick ghetto booty

thick ghetto booty

both powerpoint presentation on sex

powerpoint presentation on sex

store jb video hosiery pantyhose

jb video hosiery pantyhose

work middle east escorts

middle east escorts

good professional beauty industry sales

professional beauty industry sales

season steel studs disadvantages

steel studs disadvantages

substance a girl pussy

a girl pussy

ease britney naked after vma

britney naked after vma

enemy birracial sex pictures

birracial sex pictures

as naughty pick up lines

naughty pick up lines

possible britney spears bizarre scribble

britney spears bizarre scribble

motion guys pee after sex

guys pee after sex

west mom s xxx

mom s xxx

shape jack big dick penis

jack big dick penis

hair ladyboy cums jerks orgasm

ladyboy cums jerks orgasm

tiny lesbian cunnilingus videos

lesbian cunnilingus videos

wire boo tits tgp

boo tits tgp

nose mens boobs

mens boobs

children dick webb

dick webb

better meadows beaver mcleod mt

meadows beaver mcleod mt

with tonya harding nude wedding

tonya harding nude wedding

paragraph mastery of love quotes

mastery of love quotes

wall bath house amsterdam gay

bath house amsterdam gay

does ana ivanovic upskirt pics

ana ivanovic upskirt pics

anger mistress facebusting

mistress facebusting

end jessica biel nude photos

jessica biel nude photos

ten champion western pleasure prospect

champion western pleasure prospect

degree gangsta bang alana evans

gangsta bang alana evans

no reese nude

reese nude

talk gay vancouver

gay vancouver

of dick hamilton

dick hamilton

skin new hampshire gay marriage

new hampshire gay marriage

circle girdles and bondage

girdles and bondage

planet teen vintage clothes

teen vintage clothes

print charmane sex video

charmane sex video

wild rapid city sluts

rapid city sluts

those mucous in vagina

mucous in vagina

tone scandinavia nude

scandinavia nude

live senior citizen slut

senior citizen slut

main ameture matures

ameture matures

what air force wives

air force wives

mix 6551 pilots knob ave

6551 pilots knob ave

rub tranny video free full

tranny video free full

believe nearly me breast form

nearly me breast form

sail gay daddy and son

gay daddy and son

about voyeur movies clips

voyeur movies clips

major fat and breast tissue

fat and breast tissue

check next great pornstar contest

next great pornstar contest

use edmonton bdsm

edmonton bdsm

poor savage nude ffb

savage nude ffb

clear hentai netverifier

hentai netverifier

chance roni in shiny pantyhose

roni in shiny pantyhose

spoke final fantasy hentai dojinshi

final fantasy hentai dojinshi

claim roadrunner modern romance

roadrunner modern romance

smell chubby nipples

chubby nipples

center nudes in art

nudes in art

shine lindsay lohan sex vid

lindsay lohan sex vid

broke nude women erotic photos

nude women erotic photos

hope dating sims games girls

dating sims games girls

father rapidshare young fuck

rapidshare young fuck

tool treating breast cancer

treating breast cancer

put fuck off in latin

fuck off in latin

twenty stewerdess sex pics

stewerdess sex pics

deal club pinups atl

club pinups atl

can psychic advice on relationship

psychic advice on relationship

yellow virgin of guadalupe email

virgin of guadalupe email

smell oslo escort

oslo escort

mix sexy naked tennagers

sexy naked tennagers

wash women virgin butt fucking

women virgin butt fucking

sat sperm increase

sperm increase

new submissives personals

submissives personals

include mia lesbians

mia lesbians

steel nude potter

nude potter

molecule paraguayan women nude

paraguayan women nude

leg silk blouse nipple photos

silk blouse nipple photos

black sexy naughty lingerie

sexy naughty lingerie

west sample sex scene

sample sex scene

compare history of a blowjob

history of a blowjob

molecule manchester transexual

manchester transexual

tell young teen girl pics

young teen girl pics

ever men licking balls

men licking balls

separate kennedy winters topless

kennedy winters topless

hat kyle minogue nude

kyle minogue nude

both gay margarita

gay margarita

map the tenticale hentai

the tenticale hentai

slave acup nudes

acup nudes

sight ford escort zx2 parts

ford escort zx2 parts

original hentai watch free preview

hentai watch free preview

best handjob massage melbourne australia

handjob massage melbourne australia

remember xxx girl stripers

xxx girl stripers

whether eye cumshot

eye cumshot

nor enternational escorts

enternational escorts

lead claudia costa naughty

claudia costa naughty

populate hypo pantyhose

hypo pantyhose

field uk lesbian video clip

uk lesbian video clip

agree bdsm corporal

bdsm corporal

lot naughty halloween costume

naughty halloween costume

agree erotic nudist videos

erotic nudist videos

broke uk bbw movie torrents

uk bbw movie torrents

straight red book hotwife

red book hotwife

nose 39 warrior twink armor

39 warrior twink armor

head teen animal hardcore

teen animal hardcore

pair teen erection photos

teen erection photos

mine hentai anime dvd shop

hentai anime dvd shop

ever darla spanking stories

darla spanking stories

effect swing clubs alternate lifestyle

swing clubs alternate lifestyle

develop fucked by tranny

fucked by tranny

right discreet travel vibrator

discreet travel vibrator

rub nude artistic photo

nude artistic photo

branch american hi fi free sex

american hi fi free sex

supply worldwide exhibitionist

worldwide exhibitionist

low iraki sex

iraki sex

glad carla sex

carla sex

their your home sex tape

your home sex tape

spread passion for poetry introduction

passion for poetry introduction

far elizabith shu in nude

elizabith shu in nude

wild adult xxx party video

adult xxx party video

sound gay men porn trailers

gay men porn trailers

arm coaching and counseling policy

coaching and counseling policy

wave sapphic lesbian gallery

sapphic lesbian gallery

cat ffree teen upskirt

ffree teen upskirt

sail photos family nudists

photos family nudists

sail beaver creek archery

beaver creek archery

settle the gay bomb

the gay bomb

both bondage using plastic bags

bondage using plastic bags

suggest full knoting dog sex

full knoting dog sex

is country music stars nude

country music stars nude

cell amateur girls birmingham

amateur girls birmingham

end dip kiss pics

dip kiss pics

next kansas nudist teens

kansas nudist teens

dog chyna s sex video

chyna s sex video

say hawaiian tropic nudes

hawaiian tropic nudes

rope gay shop uk

gay shop uk

must winnie the poo ribbon

winnie the poo ribbon

from password dump teen

password dump teen

often vergin stores uk

vergin stores uk

decimal d100 tranny oil

d100 tranny oil

country brunettes naked girl

brunettes naked girl

shoulder erotic fantasy history

erotic fantasy history

cross ryan phillippe gay

ryan phillippe gay

prove the brady s xxx

the brady s xxx

current jack staggs counseling clinic

jack staggs counseling clinic

bit sex men euro video

sex men euro video

much stories spanking couples

stories spanking couples

blood is love blind groom

is love blind groom

quite sex movies bang

sex movies bang

slow cowboy beboop porn

cowboy beboop porn

match naked red snatches

naked red snatches

any calgary gay bar

calgary gay bar

sea sucking balls porn

sucking balls porn

note singapore xxx

singapore xxx

enough erotica hardcore free video

erotica hardcore free video

mind nude janice dickinson

nude janice dickinson

straight big lips oral sex

big lips oral sex

perhaps cherry girls escort

cherry girls escort

appear desi chatrooms

desi chatrooms

east girls tied and cumming

girls tied and cumming

egg kiss my face athlete

kiss my face athlete

baby squirting pussy pictures

squirting pussy pictures

bone beauty salon london mens

beauty salon london mens

vary rich lesbian women date

rich lesbian women date

sudden are breast implants painful

are breast implants painful

farm 75652 singles

75652 singles

girl peer relationships childhood cancer

peer relationships childhood cancer

summer escort girls in portlaoise

escort girls in portlaoise

his denver gay ass groups

denver gay ass groups

am seduction and sex video

seduction and sex video

why wemon that love sex

wemon that love sex

horse pennsylvania sexual harassment

pennsylvania sexual harassment

face torch beauty treatments

torch beauty treatments

opposite breast removal torture

breast removal torture

especially chiang mai ladyboys

chiang mai ladyboys

feed charlotte ayanna nude

charlotte ayanna nude

lie pussy scan

pussy scan

eye relationships bipolar disorder

relationships bipolar disorder

those alisons angel porn site

alisons angel porn site

law transvestite bondage sites

transvestite bondage sites

stream shia girls eating cock

shia girls eating cock

night adult rope swing

adult rope swing

fig massive cock

massive cock

segment weathervane teen clothing store

weathervane teen clothing store

men russian gang bang video

russian gang bang video

subject accidental panty peeing

accidental panty peeing

develop women playing volleyball nude

women playing volleyball nude

let party cove nude women

party cove nude women

follow sallie s beauty supply oregon

sallie s beauty supply oregon

his brittny spears xxx

brittny spears xxx

then erotic otk provider

erotic otk provider

term boobs erotic

boobs erotic

keep gay singles bar atlanta

gay singles bar atlanta

value male celebrities modeling naked

male celebrities modeling naked

dictionary diversity blonde

diversity blonde

test amateur allure mpg

amateur allure mpg

atom pornogrophy gay male

pornogrophy gay male

real nude athletes free pics

nude athletes free pics

provide nipple rings sex

nipple rings sex

liquid exotic love poems

exotic love poems

moment facial hair lightening

facial hair lightening

round amateur priceless

amateur priceless

wrong tween nude photo gallery

tween nude photo gallery

size glam mature

glam mature

since mature free movie

mature free movie

carry pantyhose stockings models

pantyhose stockings models

ease gay support groups denver

gay support groups denver

fall sexy nude latinas

sexy nude latinas

you black gays

black gays

sit sex with pony

sex with pony

war gay porn salary

gay porn salary

consider boy gay sex videos

boy gay sex videos

sight mature mother lesiban porn

mature mother lesiban porn

before nude scottish rugby player

nude scottish rugby player

seat tweens in pantyhose nude

tweens in pantyhose nude

does asian vaginas

asian vaginas

claim african teens

african teens

take teen hailie

teen hailie

die sex internet crack software

sex internet crack software

on zoe ball topless

zoe ball topless

after erotic boudoir art drawing

erotic boudoir art drawing

did videos de gado lesbian

videos de gado lesbian

there naked webcam babes

naked webcam babes

until sandra teen mode

sandra teen mode

held vah porn

vah porn

hot pokemon hentai ash

pokemon hentai ash

list tantric instruction photos

tantric instruction photos

warm dick kercher

dick kercher

has anti porn feminist

anti porn feminist

after spinner marco s cock

spinner marco s cock

quick short shemales

short shemales

black secrets for virgin mobile

secrets for virgin mobile

safe posters by chris teen

posters by chris teen

heavy divorce chatrooms

divorce chatrooms

heart tits master

tits master

circle exotic lingerie nude models

exotic lingerie nude models

wind design your own wetsuits

design your own wetsuits

molecule dick pumps

dick pumps

how pictures young natural teens

pictures young natural teens

silver newmarket nh sex offenders

newmarket nh sex offenders

chance hardcore russian sex

hardcore russian sex

fell high quality chubbies

high quality chubbies

world suspenders blonde legs

suspenders blonde legs

car natural beauties porn

natural beauties porn

glad mothers sin hentai

mothers sin hentai

ball nigella tits

nigella tits

able squirt massage

squirt massage

star cost of teen babysitter

cost of teen babysitter

men lesbian country singer

lesbian country singer

gone chelsea big tits

chelsea big tits

broad gay pulp fiction politics

gay pulp fiction politics

type anime tentacles porn

anime tentacles porn

populate nashville escort revirews

nashville escort revirews

both vaccum erection devices

vaccum erection devices

wave lanas big boobss

lanas big boobss

lay austin breast surgery

austin breast surgery

nor redheads extinct

redheads extinct

score my mature mom

my mature mom

where tweeker xxx

tweeker xxx

proper nails into her boobs

nails into her boobs

new avril lavigne nude picture

avril lavigne nude picture

you movies about upskirts

movies about upskirts

notice gay domination piss training

gay domination piss training

any vaginal discharge with levaquin

vaginal discharge with levaquin

sat jennifer cartier anal

jennifer cartier anal

afraid amateur wife fucks black

amateur wife fucks black

river nude vanessa hudgen

nude vanessa hudgen

hold breastfeeding during pregnancy sex

breastfeeding during pregnancy sex

circle gay sex old men

gay sex old men

chief real ameteur porn

real ameteur porn

organ natural beauty courses australia

natural beauty courses australia

send mi sex offender list

mi sex offender list

score babette in bondage

babette in bondage

event manhandled tits free mpg

manhandled tits free mpg

count submitted female orgasm pics

submitted female orgasm pics

substance kelly ripa upskirt

kelly ripa upskirt

interest aisian personals

aisian personals

enter female escort pictures

female escort pictures

visit air supply gay

air supply gay

wrong girl rides sex mannequin

girl rides sex mannequin

bad 2006 hotties

2006 hotties

dream barba antonella photos topless

barba antonella photos topless

gun chubby public piss

chubby public piss

bring natural big black boobs

natural big black boobs

gun fingering girlfriend porn

fingering girlfriend porn

cotton capilene underwear

capilene underwear

if sex lessons in pictures

sex lessons in pictures

bread wwe divas nudity

wwe divas nudity

want cody casting couch teens

cody casting couch teens

wire mary cary upskirt

mary cary upskirt

weather newbies nudes

newbies nudes

mass annalissa vanderpool nude

annalissa vanderpool nude

lake teens pantyhose feet thumbnails

teens pantyhose feet thumbnails

sell pus pimple on vaginal

pus pimple on vaginal

chord sweaty pussies

sweaty pussies

dead anal licking lesbians free

anal licking lesbians free

cook nashville indiana financial counseling

nashville indiana financial counseling

plane gel sex bracelets

gel sex bracelets

by budapest sex ferry

budapest sex ferry

money group sex previews

group sex previews

blow irish park voyeur

irish park voyeur

broad antonelle barba naked

antonelle barba naked

wheel ed debevics blonde

ed debevics blonde

card drag strip mi

drag strip mi

surface highest mpg jeep

highest mpg jeep

home homosexual signals for sex

homosexual signals for sex

numeral brunette big boobs

brunette big boobs

answer pussy licker free videos

pussy licker free videos

liquid accessive gas in teens

accessive gas in teens

these used beaver motor coaches

used beaver motor coaches

cloud nude womem with tattoos

nude womem with tattoos

view sugar glider sex

sugar glider sex

ready cock in hand

cock in hand

through vagina blood

vagina blood

skill biography dick van dyke

biography dick van dyke

moment womans nude voleyball

womans nude voleyball

mark jessica simpson fakes sex

jessica simpson fakes sex

wind love invention history

love invention history

home abortion sucks

abortion sucks

reason totes for teens

totes for teens

bread girlfriend revenge video xxx

girlfriend revenge video xxx

bad lesbian personal websire

lesbian personal websire

end pictures wet vaginas

pictures wet vaginas

all teens on caffeine

teens on caffeine

atom peek a boo sex

peek a boo sex

element major facial

major facial

view fantasy fest sex

fantasy fest sex

card shia girls eating cock

shia girls eating cock

original sex hair picture

sex hair picture

during lady sonia xxx

lady sonia xxx

story nfs carbon sucks

nfs carbon sucks

over topless female photographic models

topless female photographic models

past digimon romance fan fictions

digimon romance fan fictions

also outlawstar hentai

outlawstar hentai

crowd thick black cocks

thick black cocks

cent dating women anal

dating women anal

friend sissy search

sissy search

children gay twink cocks

gay twink cocks

wing cheap teens bedroom nightstands

cheap teens bedroom nightstands

winter male strip clubs minnesota

male strip clubs minnesota

note teen suceuse

teen suceuse

order gay pulp fiction politics

gay pulp fiction politics

safe masturbation display pic

masturbation display pic

quotient crystal clear ebony

crystal clear ebony

snow senior voyeurism

senior voyeurism

market okla state cowgirls

okla state cowgirls

found xxx thia shemales

xxx thia shemales

count celbrity pictures nude

celbrity pictures nude

single pornstar forums

pornstar forums

last creampie iternal

creampie iternal

grew swing ratchet suspension

swing ratchet suspension

design tree love poetry

tree love poetry

also
"; die(); } // end check define('IN_COPPERMINE', true); define('INDEX_PHP', true); require('include/init.inc.php'); if ($CONFIG['enable_smilies']) include("include/smilies.inc.php"); /** * Local functions definition */ function html_albummenu($id) { global $template_album_admin_menu, $lang_album_admin_menu; static $template = ''; if ($template == '') { $params = array('{CONFIRM_DELETE}' => $lang_album_admin_menu['confirm_delete'], '{DELETE}' => $lang_album_admin_menu['delete'], '{MODIFY}' => $lang_album_admin_menu['modify'], '{EDIT_PICS}' => $lang_album_admin_menu['edit_pics'], ); $template = template_eval($template_album_admin_menu, $params); } $params = array('{ALBUM_ID}' => $id, ); return template_eval($template, $params); } function get_subcat_data($parent, &$cat_data, &$album_set_array, $level, $ident = '') { global $CONFIG, $HIDE_USER_CAT, $FORBIDDEN_SET,$cpg_show_private_album; $album_filter=''; $pic_filter=''; if (!empty($FORBIDDEN_SET) && !$cpg_show_private_album) { $album_filter = ' and '.str_replace('p.','a.',$FORBIDDEN_SET); $pic_filter = ' and '.str_replace('p.',$CONFIG['TABLE_PICTURES'].'.',$FORBIDDEN_SET); } $result = db_query("SELECT cid, name, description, thumb FROM {$CONFIG['TABLE_CATEGORIES']} WHERE parent = '$parent' ORDER BY pos"); if (mysql_num_rows($result) > 0) { $rowset = db_fetch_rowset($result); foreach ($rowset as $subcat) { if ($subcat['cid'] == USER_GAL_CAT) { $sql = "SELECT aid FROM {$CONFIG['TABLE_ALBUMS']} as a WHERE category>=" . FIRST_USER_CAT.$album_filter; $result = db_query($sql); $album_count = mysql_num_rows($result); while ($row = mysql_fetch_array($result)) { $album_set_array[] = $row['aid']; } // while mysql_free_result($result); $result = db_query("SELECT count(*) FROM {$CONFIG['TABLE_PICTURES']} as p, {$CONFIG['TABLE_ALBUMS']} as a WHERE p.aid = a.aid AND category >= " . FIRST_USER_CAT.$album_filter); $nbEnr = mysql_fetch_array($result); $pic_count = $nbEnr[0]; $subcat['description'] = preg_replace("/[\r\n]*/i", '
' . $ident , bb_decode($subcat['description'])); $link = $ident . "{$subcat['name']}"; if ($album_count) { $cat_data[] = array($link, $ident . $subcat['description'], $album_count, $pic_count); $HIDE_USER_CAT = 0; } else { $HIDE_USER_CAT = 1; } } else { $unaliased_album_filter = str_replace('a.','',$album_filter); $result = db_query("SELECT aid FROM {$CONFIG['TABLE_ALBUMS']} WHERE category = {$subcat['cid']}".$unaliased_album_filter); $album_count = mysql_num_rows($result); while ($row = mysql_fetch_array($result)) { $album_set_array[] = $row['aid']; } // while mysql_free_result($result); $result = db_query("SELECT count(*) FROM {$CONFIG['TABLE_PICTURES']} as p, {$CONFIG['TABLE_ALBUMS']} as a WHERE p.aid = a.aid AND category = {$subcat['cid']}".$album_filter); $nbEnr = mysql_fetch_array($result); mysql_free_result($result); $pic_count = $nbEnr[0]; if ($subcat['thumb']>0) { $sql = "SELECT filepath, filename, url_prefix, pwidth, pheight ". "FROM {$CONFIG['TABLE_PICTURES']} ". "WHERE pid='{$subcat['thumb']}'".$pic_filter; $result = db_query($sql); if (mysql_num_rows($result)) { $picture = mysql_fetch_array($result); mysql_free_result($result); $pic_url = get_pic_url($picture, 'thumb'); if (!is_image($picture['filename'])) { $image_info = getimagesize($pic_url); $picture['pwidth'] = $image_info[0]; $picture['pheight'] = $image_info[1]; } $image_size = compute_img_size($picture['pwidth'], $picture['pheight'], $CONFIG['alb_list_thumb_size']); $user_thumb = "\"\""; $user_thumb = "".$user_thumb.""; } }else{ $user_thumb =""; } $subcat['name'] = $subcat['name']; $subcat['description'] = preg_replace("/[\r\n]*/i", '
', bb_decode($subcat['description'])); $link = "{$subcat['name']}"; $user_thumb = $ident.$user_thumb; if ($pic_count == 0 && $album_count == 0) { $user_thumb = $ident; $cat_data[] = array($link, $subcat['description'],'cat_thumb' =>$user_thumb); } else { // Check if you need to show subcat_level if ($level == $CONFIG['subcat_level']) { $cat_albums = list_cat_albums($subcat['cid']); } else { $cat_albums = ''; } $cat_data[] = array($link, $subcat['description'], $album_count, $pic_count, 'cat_albums' => $cat_albums,'cat_thumb' =>$user_thumb); } } if ($level > 1) get_subcat_data($subcat['cid'], $cat_data, $album_set_array, $level -1, $ident . ""); } } } // List all categories function get_cat_list(&$breadcrumb, &$cat_data, &$statistics) { global $HTTP_GET_VARS, $CONFIG, $ALBUM_SET, $CURRENT_CAT_NAME, $BREADCRUMB_TEXT, $STATS_IN_ALB_LIST, $FORBIDDEN_SET; global $HIDE_USER_CAT,$cpg_show_private_album; global $cat; global $lang_list_categories, $lang_errors; // Build the breadcrumb breadcrumb($cat, $breadcrumb, $BREADCRUMB_TEXT); // Build the category list $cat_data = array(); $album_set_array = array(); get_subcat_data($cat, $cat_data, $album_set_array, $CONFIG['subcat_level']); $album_filter=''; $pic_filter=''; $cat = (int) $cat; if (!empty($FORBIDDEN_SET) && !$cpg_show_private_album) { $album_filter = ' and '.str_replace('p.','a.',$FORBIDDEN_SET); $pic_filter = ' and '.$FORBIDDEN_SET; } // Add the albums in the current category to the album set //if ($cat) { if ($cat == USER_GAL_CAT) { $sql = "SELECT aid FROM {$CONFIG['TABLE_ALBUMS']} as a WHERE category >= " . FIRST_USER_CAT.$album_filter; $result = db_query($sql); } else { $sql = "SELECT aid FROM {$CONFIG['TABLE_ALBUMS']} as a WHERE category = '$cat'".$album_filter; $result = db_query($sql); } while ($row = mysql_fetch_array($result)) { $album_set_array[] = $row['aid']; } // while mysql_free_result($result); //} if (count($album_set_array)&&$cat) { $set = ''; foreach ($album_set_array as $album) $set .= $album . ','; $set = substr($set, 0, -1); $current_album_set = "AND aid IN ($set) "; $ALBUM_SET .= $current_album_set; } elseif ($cat) { $current_album_set = "AND aid IN (-1) "; $ALBUM_SET .= $current_album_set; } // Gather gallery statistics if ($cat == 0) { $result = db_query("SELECT count(*) FROM {$CONFIG['TABLE_ALBUMS']} as a WHERE 1".$album_filter); $nbEnr = mysql_fetch_array($result); $album_count = $nbEnr[0]; mysql_free_result($result); $sql = "SELECT count(*) FROM {$CONFIG['TABLE_PICTURES']} as p ". 'LEFT JOIN '.$CONFIG['TABLE_ALBUMS'].' as a '. 'ON a.aid=p.aid '. 'WHERE 1'.$pic_filter; $result = db_query($sql); $nbEnr = mysql_fetch_array($result); $picture_count = $nbEnr[0]; mysql_free_result($result); $sql = "SELECT count(*) FROM {$CONFIG['TABLE_COMMENTS']} as c ". 'LEFT JOIN '.$CONFIG['TABLE_PICTURES'].' as p '. 'ON c.pid=p.pid '. 'LEFT JOIN '.$CONFIG['TABLE_ALBUMS'].' as a '. 'ON a.aid=p.aid '. 'WHERE 1'.$pic_filter; $result = db_query($sql); $nbEnr = mysql_fetch_array($result); $comment_count = $nbEnr[0]; mysql_free_result($result); $sql = "SELECT count(*) FROM {$CONFIG['TABLE_CATEGORIES']} WHERE 1"; $result = db_query($sql); $nbEnr = mysql_fetch_array($result); $cat_count = $nbEnr[0] - $HIDE_USER_CAT; mysql_free_result($result); $sql = "SELECT sum(hits) FROM {$CONFIG['TABLE_PICTURES']} as p ". 'LEFT JOIN '.$CONFIG['TABLE_ALBUMS'].' as a '. 'ON p.aid=a.aid '. 'WHERE 1'.$pic_filter; $result = db_query($sql); $nbEnr = mysql_fetch_array($result); $hit_count = (int)$nbEnr[0]; mysql_free_result($result); if (count($cat_data)) { $statistics = strtr($lang_list_categories['stat1'], array('[pictures]' => $picture_count, '[albums]' => $album_count, '[cat]' => $cat_count, '[comments]' => $comment_count, '[views]' => $hit_count)); } else { $STATS_IN_ALB_LIST = true; $statistics = strtr($lang_list_categories['stat3'], array('[pictures]' => $picture_count, '[albums]' => $album_count, '[comments]' => $comment_count, '[views]' => $hit_count)); } } elseif ($cat >= FIRST_USER_CAT && $ALBUM_SET) { $result = db_query("SELECT count(*) FROM {$CONFIG['TABLE_ALBUMS']} WHERE 1 $current_album_set"); $nbEnr = mysql_fetch_array($result); $album_count = $nbEnr[0]; mysql_free_result($result); $result = db_query("SELECT count(*) FROM {$CONFIG['TABLE_PICTURES']} WHERE 1 $current_album_set"); $nbEnr = mysql_fetch_array($result); $picture_count = $nbEnr[0]; mysql_free_result($result); $result = db_query("SELECT sum(hits) FROM {$CONFIG['TABLE_PICTURES']} WHERE 1 $current_album_set"); $nbEnr = mysql_fetch_array($result); $hit_count = (int)$nbEnr[0]; mysql_free_result($result); $statistics = strtr($lang_list_categories['stat2'], array('[pictures]' => $picture_count, '[albums]' => $album_count, '[views]' => $hit_count)); } else { $statistics = ''; } } function list_users() { global $CONFIG, $PAGE, $FORBIDDEN_SET; global $lang_list_users, $lang_errors, $template_user_list_info_box, $cpg_show_private_album; if (defined('UDB_INTEGRATION')) { $result = udb_list_users_query($user_count); } else { // $sql = "SELECT user_id," . " user_name," . " COUNT(DISTINCT a.aid) as alb_count," . " COUNT(DISTINCT pid) as pic_count," . " MAX(pid) as thumb_pid " . "FROM {$CONFIG['TABLE_USERS']} AS u " . "INNER JOIN {$CONFIG['TABLE_ALBUMS']} AS a ON category = " . FIRST_USER_CAT . " + user_id " . "INNER JOIN {$CONFIG['TABLE_PICTURES']} AS p ON p.aid = a.aid " . "WHERE approved = 'YES' " . "$FORBIDDEN_SET " . "GROUP BY user_id " . "ORDER BY user_name "; // Fixed correct album count DJMaze $sql = "SELECT user_id, " . "user_name, " . "COUNT(DISTINCT a.aid) as alb_count, " . "COUNT(DISTINCT pid) as pic_count, " . "MAX(pid) as thumb_pid " . "FROM {$CONFIG['TABLE_USERS']} AS u " . "INNER JOIN {$CONFIG['TABLE_ALBUMS']} AS a ON category = " . FIRST_USER_CAT . " + user_id " . "LEFT JOIN {$CONFIG['TABLE_PICTURES']} AS p ON (p.aid = a.aid AND approved = 'YES') "; if ($FORBIDDEN_SET != "") $sql .= "WHERE $FORBIDDEN_SET "; $sql .= "GROUP BY user_id " . "ORDER BY user_name"; $result = db_query($sql); $user_count = mysql_num_rows($result); } if (!$user_count) { msg_box($lang_list_users['user_list'], $lang_list_users['no_user_gal'], '', '', '100%'); mysql_free_result($result); return; } $user_per_page = $CONFIG['thumbcols'] * $CONFIG['thumbrows']; $totalPages = ceil($user_count / $user_per_page); if ($PAGE > $totalPages) $PAGE = 1; $lower_limit = ($PAGE-1) * $user_per_page; $upper_limit = min($user_count, $PAGE * $user_per_page); $row_count = $upper_limit - $lower_limit; if (defined('UDB_INTEGRATION')) { $rowset = udb_list_users_retrieve_data($result, $lower_limit, $row_count); } else { $rowset = array(); $i = 0; mysql_data_seek($result, $lower_limit); while (($row = mysql_fetch_array($result)) && ($i++ < $row_count)) $rowset[] = $row; mysql_free_result($result); } $user_list = array(); foreach ($rowset as $user) { $user_thumb = ''; $user_pic_count = $user['pic_count']; $user_thumb_pid = $user['thumb_pid']; $user_album_count = $user['alb_count']; if ($user_pic_count) { if ($CONFIG['show_private']){ $image_size = compute_img_size(100, 75, $CONFIG['alb_list_thumb_size']); $user_thumb = "\"\""; } $sql = "SELECT filepath, filename, url_prefix, pwidth, pheight " . "FROM {$CONFIG['TABLE_PICTURES']} " . "WHERE pid='$user_thumb_pid'"; $result = db_query($sql); if (mysql_num_rows($result)) { $picture = mysql_fetch_array($result); mysql_free_result($result); $pic_url = get_pic_url($picture, 'thumb'); if (!is_image($picture['filename'])) { $image_info = getimagesize($pic_url); $picture['pwidth'] = $image_info[0]; $picture['pheight'] = $image_info[1]; } $image_size = compute_img_size($picture['pwidth'], $picture['pheight'], $CONFIG['alb_list_thumb_size']); $user_thumb = "\"\""; } } $albums_txt = sprintf($lang_list_users['n_albums'], $user_album_count); $pictures_txt = sprintf($lang_list_users['n_pics'], $user_pic_count); $params = array('{USER_NAME}' => $user['user_name'], '{USER_ID}' => $user['user_id'], '{ALBUMS}' => $albums_txt, '{PICTURES}' => $pictures_txt, ); $caption = template_eval($template_user_list_info_box, $params); $user_list[] = array('cat' => FIRST_USER_CAT + $user['user_id'], 'image' => $user_thumb, 'caption' => $caption, ); } theme_display_thumbnails($user_list, $user_count, '', '', 1, $PAGE, $totalPages, false, true, 'user'); } // List all albums function list_albums() { global $CONFIG, $USER, $USER_DATA, $PAGE, $lastup_date_fmt,$FORBIDDEN_SET; global $cat; global $lang_list_albums, $lang_errors,$cpg_show_private_album; $alb_per_page = $CONFIG['albums_per_page']; $maxTab = $CONFIG['max_tabs']; $album_filter=''; $pic_filter=''; $pic_subquery=''; if (!empty($FORBIDDEN_SET) && !$cpg_show_private_album) { $album_filter = ' and '.str_replace('p.','a.',$FORBIDDEN_SET); $pic_filter = ' and '.$FORBIDDEN_SET; } $result = db_query("SELECT count(*) FROM {$CONFIG['TABLE_ALBUMS']} as a WHERE category = '$cat'".$album_filter); $nbEnr = mysql_fetch_array($result); $nbAlb = $nbEnr[0]; mysql_free_result($result); if (!$nbAlb) return; $totalPages = ceil($nbAlb / $alb_per_page); if ($PAGE > $totalPages) $PAGE = 1; $lower_limit = ($PAGE-1) * $alb_per_page; $upper_limit = min($nbAlb, $PAGE * $alb_per_page); $limit = "LIMIT " . $lower_limit . "," . ($upper_limit - $lower_limit); $sql = 'SELECT a.aid, a.title, a.description, visibility, filepath, '. 'filename, url_prefix, pwidth, pheight '. 'FROM '.$CONFIG['TABLE_ALBUMS'].' as a '. 'LEFT JOIN '.$CONFIG['TABLE_PICTURES'].' as p '. 'ON a.thumb=p.pid '. 'WHERE category='.$cat.$album_filter. ' ORDER BY a.pos '. $limit; $alb_thumbs_q = db_query($sql); $alb_thumbs = db_fetch_rowset($alb_thumbs_q); mysql_free_result($alb_thumbs_q); $disp_album_count = count($alb_thumbs); $album_set = ''; foreach($alb_thumbs as $value) { $album_set .= $value['aid'] . ', '; } $album_set = '(' . substr($album_set, 0, -2) . ')'; $sql = "SELECT aid, count(pid) as pic_count, max(pid) as last_pid, max(ctime) as last_upload ". "FROM {$CONFIG['TABLE_PICTURES']} ". "WHERE aid IN $album_set AND approved = 'YES' ". "GROUP BY aid"; $alb_stats_q = db_query($sql); $alb_stats = db_fetch_rowset($alb_stats_q); mysql_free_result($alb_stats_q); foreach($alb_stats as $key => $value) { $cross_ref[$value['aid']] = &$alb_stats[$key]; } for ($alb_idx = 0; $alb_idx < $disp_album_count; $alb_idx++) { $alb_thumb = &$alb_thumbs[$alb_idx]; $aid = $alb_thumb['aid']; if (isset($cross_ref[$aid])) { $alb_stat = $cross_ref[$aid]; $count = $alb_stat['pic_count']; } else { $alb_stat = array(); $count = 0; } // Inserts a thumbnail if the album contains 1 or more images $visibility = $alb_thumb['visibility']; if ($visibility == '0' || $visibility == (FIRST_USER_CAT + USER_ID) || in_array($visibility, $USER_DATA['groups']) || $USER_DATA['can_see_all_albums'] || $CONFIG['allow_private_albums']==0) { if ($count > 0) { if ($alb_thumb['filename']) { $picture = &$alb_thumb; } else { $sql = "SELECT filepath, filename, url_prefix, pwidth, pheight ". "FROM {$CONFIG['TABLE_PICTURES']} ". "WHERE pid='{$alb_stat['last_pid']}'"; $result = db_query($sql); $picture = mysql_fetch_array($result); mysql_free_result($result); } $pic_url = get_pic_url($picture, 'thumb'); if (!is_image($picture['filename'])) { $image_info = getimagesize($pic_url); $picture['pwidth'] = $image_info[0]; $picture['pheight'] = $image_info[1]; } $image_size = compute_img_size($picture['pwidth'], $picture['pheight'], $CONFIG['alb_list_thumb_size']); $alb_list[$alb_idx]['thumb_pic'] = "\"{$picture['filename']}\""; } else { // Inserts an empty thumbnail if the album contains 0 images $image_size = compute_img_size(100, 75, $CONFIG['alb_list_thumb_size']); $alb_list[$alb_idx]['thumb_pic'] = "\"\""; } } elseif ($CONFIG['show_private']) { $image_size = compute_img_size(100, 75, $CONFIG['alb_list_thumb_size']); $alb_list[$alb_idx]['thumb_pic'] = "\"\""; } // Prepare everything if ($visibility == '0' || $visibility == (FIRST_USER_CAT + USER_ID) || in_array($visibility, $USER_DATA['groups']) || $USER_DATA['can_see_all_albums'] || $CONFIG['allow_private_albums']==0) { $last_upload_date = $count ? localised_date($alb_stat['last_upload'], $lastup_date_fmt) : ''; $alb_list[$alb_idx]['aid'] = $alb_thumb['aid']; $alb_list[$alb_idx]['album_title'] = $alb_thumb['title']; $alb_list[$alb_idx]['album_desc'] = bb_decode($alb_thumb['description']); $alb_list[$alb_idx]['pic_count'] = $count; $alb_list[$alb_idx]['last_upl'] = $last_upload_date; $alb_list[$alb_idx]['album_info'] = sprintf($lang_list_albums['n_pictures'], $count) . ($count ? sprintf($lang_list_albums['last_added'], $last_upload_date) : ""); $alb_list[$alb_idx]['album_adm_menu'] = (GALLERY_ADMIN_MODE || (USER_ADMIN_MODE && $cat == USER_ID + FIRST_USER_CAT)) ? html_albummenu($alb_thumb['aid']) : ' '; } elseif ($CONFIG['show_private']) { // uncomment this else block to show private album description $last_upload_date = $count ? localised_date($alb_stat['last_upload'], $lastup_date_fmt) : ''; $alb_list[$alb_idx]['aid'] = $alb_thumb['aid']; $alb_list[$alb_idx]['album_title'] = $alb_thumb['title']; $alb_list[$alb_idx]['album_desc'] = bb_decode($alb_thumb['description']); $alb_list[$alb_idx]['pic_count'] = $count; $alb_list[$alb_idx]['last_upl'] = $last_upload_date; $alb_list[$alb_idx]['album_info'] = sprintf($lang_list_albums['n_pictures'], $count) . ($count ? sprintf($lang_list_albums['last_added'], $last_upload_date) : ""); $alb_list[$alb_idx]['album_adm_menu'] = (GALLERY_ADMIN_MODE || (USER_ADMIN_MODE && $cat == USER_ID + FIRST_USER_CAT)) ? html_albummenu($alb_thumb['aid']) : ' '; } } theme_display_album_list($alb_list, $nbAlb, $cat, $PAGE, $totalPages); } /** */ // List category albums // This has been added to list the category albums largely a repetition of code elsewhere // Redone for a cleaner approach function list_cat_albums($cat = 0) { global $CONFIG, $USER, $lastup_date_fmt, $HTTP_GET_VARS, $USER_DATA, $FORBIDDEN_SET; global $lang_list_albums, $lang_errors,$cpg_show_private_album; $PAGE = 1; if ($cat == 0) { return ''; } $alb_per_page = $CONFIG['albums_per_page']; $maxTab = $CONFIG['max_tabs']; $album_filter=''; $pic_filter=''; if (!empty($FORBIDDEN_SET) && !$cpg_show_private_album) { $album_filter = ' and '.str_replace('p.','a.',$FORBIDDEN_SET); $pic_filter = ' and '.$FORBIDDEN_SET; } $sql = "SELECT count(*) FROM {$CONFIG['TABLE_ALBUMS']} as a WHERE category = '$cat'".$album_filter; $result = db_query($sql); $nbEnr = mysql_fetch_array($result); $nbAlb = $nbEnr[0]; mysql_free_result($result); if ($nbAlb == 0) { return; } $totalPages = ceil($nbAlb / $alb_per_page); if ($PAGE > $totalPages) $PAGE = 1; $lower_limit = ($PAGE-1) * $alb_per_page; $upper_limit = min($nbAlb, $PAGE * $alb_per_page); $limit = "LIMIT " . $lower_limit . "," . ($upper_limit - $lower_limit); /* $sql = "SELECT a.aid, a.title, a.description, visibility, filepath, ". "filename, url_prefix, pwidth, pheight ". "FROM {$CONFIG['TABLE_ALBUMS']} as a ". "LEFT JOIN {$CONFIG['TABLE_PICTURES']} as p ON thumb=pid ". "WHERE category = $cat ORDER BY a.pos ".$limit; */ $sql = 'SELECT a.aid, a.title, a.description, visibility, filepath, '. 'filename, url_prefix, pwidth, pheight '. 'FROM '.$CONFIG['TABLE_ALBUMS'].' as a '. 'LEFT JOIN '.$CONFIG['TABLE_PICTURES'].' as p '. 'ON a.thumb=p.pid '. 'WHERE category='.$cat.$album_filter. ' ORDER BY a.pos '. $limit; $alb_thumbs_q = db_query($sql); $alb_thumbs = db_fetch_rowset($alb_thumbs_q); mysql_free_result($alb_thumbs_q); $disp_album_count = count($alb_thumbs); $album_set = ''; foreach($alb_thumbs as $value) { $album_set .= $value['aid'] . ', '; } $album_set = '(' . substr($album_set, 0, -2) . ')'; $sql = "SELECT aid, count(pid) as pic_count, max(pid) as last_pid, max(ctime) as last_upload ". "FROM {$CONFIG['TABLE_PICTURES']} ". "WHERE aid IN $album_set AND approved = 'YES' ". "GROUP BY aid"; $alb_stats_q = db_query($sql); $alb_stats = db_fetch_rowset($alb_stats_q); mysql_free_result($alb_stats_q); foreach($alb_stats as $key => $value) { $cross_ref[$value['aid']] = &$alb_stats[$key]; } for ($alb_idx = 0; $alb_idx < $disp_album_count; $alb_idx++) { $alb_thumb = &$alb_thumbs[$alb_idx]; $aid = $alb_thumb['aid']; if (isset($cross_ref[$aid])) { $alb_stat = $cross_ref[$aid]; $count = $alb_stat['pic_count']; } else { $alb_stat = array(); $count = 0; } // Inserts a thumbnail if the album contains 1 or more images $visibility = $alb_thumb['visibility']; if ($visibility == '0' || $visibility == (FIRST_USER_CAT + USER_ID) || in_array($visibility, $USER_DATA['groups']) || $USER_DATA['can_see_all_albums'] || $CONFIG['allow_private_albums']==0) { // test for visibility if ($count > 0) { // Inserts a thumbnail if the album contains 1 or more images if ($alb_thumb['filename']) { $picture = &$alb_thumb; } else { $sql = "SELECT filepath, filename, url_prefix, pwidth, pheight " . "FROM {$CONFIG['TABLE_PICTURES']} " . "WHERE pid='{$alb_stat['last_pid']}'"; $result = db_query($sql); $picture = mysql_fetch_array($result); mysql_free_result($result); } $pic_url = get_pic_url($picture, 'thumb'); if (!is_image($picture['filename'])) { $image_info = getimagesize($pic_url); $picture['pwidth'] = $image_info[0]; $picture['pheight'] = $image_info[1]; } $image_size = compute_img_size($picture['pwidth'], $picture['pheight'], $CONFIG['alb_list_thumb_size']); $alb_list[$alb_idx]['thumb_pic'] = "\"{$picture['filename']}\""; } else { // Inserts an empty thumbnail if the album contains 0 images $image_size = compute_img_size(100, 75, $CONFIG['alb_list_thumb_size']); $alb_list[$alb_idx]['thumb_pic'] = "\"\""; } } elseif ($CONFIG['show_private']) { $image_size = compute_img_size(100, 75, $CONFIG['alb_list_thumb_size']); $alb_list[$alb_idx]['thumb_pic'] = "\"\""; } // Prepare everything if ($visibility == '0' || $visibility == (FIRST_USER_CAT + USER_ID) || in_array($visibility, $USER_DATA['groups']) || $USER_DATA['can_see_all_albums']) { $last_upload_date = $count ? localised_date($alb_stat['last_upload'], $lastup_date_fmt) : ''; $alb_list[$alb_idx]['aid'] = $alb_thumb['aid']; $alb_list[$alb_idx]['album_title'] = $alb_thumb['title']; $alb_list[$alb_idx]['album_desc'] = bb_decode($alb_thumb['description']); $alb_list[$alb_idx]['pic_count'] = $count; $alb_list[$alb_idx]['last_upl'] = $last_upload_date; $alb_list[$alb_idx]['album_info'] = sprintf($lang_list_albums['n_pictures'], $count) . ($count ? sprintf($lang_list_albums['last_added'], $last_upload_date) : ""); $alb_list[$alb_idx]['album_adm_menu'] = (GALLERY_ADMIN_MODE || (USER_ADMIN_MODE && $cat == USER_ID + FIRST_USER_CAT)) ? html_albummenu($alb_thumb['aid']) : ''; } elseif ($CONFIG['show_private']) { // uncomment this else block to show private album description $last_upload_date = $count ? localised_date($alb_stat['last_upload'], $lastup_date_fmt) : ''; $alb_list[$alb_idx]['aid'] = $alb_thumb['aid']; $alb_list[$alb_idx]['album_title'] = $alb_thumb['title']; $alb_list[$alb_idx]['album_desc'] = bb_decode($alb_thumb['description']); $alb_list[$alb_idx]['pic_count'] = $count; $alb_list[$alb_idx]['last_upl'] = $last_upload_date; $alb_list[$alb_idx]['album_info'] = sprintf($lang_list_albums['n_pictures'], $count) . ($count ? sprintf($lang_list_albums['last_added'], $last_upload_date) : ""); $alb_list[$alb_idx]['album_adm_menu'] = (GALLERY_ADMIN_MODE || (USER_ADMIN_MODE && $cat == USER_ID + FIRST_USER_CAT)) ? html_albummenu($alb_thumb['aid']) : ''; } } ob_start(); theme_display_album_list_cat($alb_list, $nbAlb, $cat, $PAGE, $totalPages); $cat_albums = ob_get_contents(); ob_end_clean(); return $cat_albums; } /** */ /** * Main code */ if (isset($HTTP_GET_VARS['page'])) { $PAGE = max((int)$HTTP_GET_VARS['page'], 1); $USER['lap'] = $PAGE; } elseif (isset($USER['lap'])) { $PAGE = max((int)$USER['lap'], 1); } else { $PAGE = 1; } if (isset($HTTP_GET_VARS['cat'])) { $cat = (int)$HTTP_GET_VARS['cat']; } // Gather data for categories $breadcrumb = ''; $cat_data = array(); $statistics = ''; $STATS_IN_ALB_LIST = false; $cpg_show_private_album = ($CONFIG['allow_private_albums'])?($CONFIG['show_private']):(true); get_cat_list($breadcrumb, $cat_data, $statistics); pageheader($BREADCRUMB_TEXT ? $BREADCRUMB_TEXT : $lang_index_php['welcome']); $elements = preg_split("|/|", $CONFIG['main_page_layout'], -1, PREG_SPLIT_NO_EMPTY); foreach ($elements as $element) { if (preg_match("/(\w+),*(\d+)*/", $element, $matches)) switch ($matches[1]) { case 'breadcrumb': // Added breadcrumb as a separate listable block from config if (($breadcrumb != '' || count($cat_data) > 0) && $cat !=0 ) theme_display_breadcrumb($breadcrumb, $cat_data); break; case 'catlist': if ($breadcrumb != '' || count($cat_data) > 0) theme_display_cat_list($breadcrumb, $cat_data, $statistics); if (isset($cat) && $cat == USER_GAL_CAT) list_users(); flush(); break; case 'alblist': list_albums(); flush(); break; case 'random': display_thumbnails('random', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false); flush(); break; case 'lastup': display_thumbnails('lastup', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false); flush(); break; case 'lastalb': display_thumbnails('lastalb', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false); break; case 'topn': display_thumbnails('topn', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false); flush(); break; case 'toprated': display_thumbnails('toprated', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false); flush(); break; case 'lastcom': display_thumbnails('lastcom', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false); flush(); break; case 'lasthits': display_thumbnails('lasthits', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false); flush(); break; case 'anycontent': if ($cat == 0) { include('anycontent.php'); } flush(); break; } } pagefooter(); ob_end_flush(); // Speed-up the random image query by 'keying' the image table if (time() - $CONFIG['randpos_interval'] > 86400) { $result = db_query("SELECT count(*) FROM {$CONFIG['TABLE_PICTURES']} WHERE 1"); $nbEnr = mysql_fetch_array($result); mysql_free_result($result); $pic_count = $nbEnr[0]; $granularity = floor($pic_count / RANDPOS_MAX_PIC); $result = db_query("UPDATE {$CONFIG['TABLE_PICTURES']} SET randpos = ROUND(RAND()*$granularity) WHERE 1"); $result = db_query("UPDATE {$CONFIG['TABLE_CONFIG']} SET value = '" . time() . "' WHERE name = 'randpos_interval'"); } ?>