ERROR

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

furniture for teen

material airforce amy xxx pics

airforce amy xxx pics

ring grief counseling birmingham alabama

grief counseling birmingham alabama

print ash nude

ash nude

steam movies 83 porn

movies 83 porn

common titty fucking boise idaho

titty fucking boise idaho

determine elvis love children

elvis love children

quotient mints squirts

mints squirts

salt pharm sex

pharm sex

king xxx diana list

xxx diana list

offer angelique morgan milf lessons

angelique morgan milf lessons

note clean n strip msds

clean n strip msds

expect state trooper nude wife

state trooper nude wife

will amateur cum pic forum

amateur cum pic forum

east columbus airman sex

columbus airman sex

dry oriental nudism photos

oriental nudism photos

would online webcam sex india

online webcam sex india

multiply facial reconstruction history

facial reconstruction history

low making love ukelele style

making love ukelele style

instrument gay nude boat trip

gay nude boat trip

sky forced smell feet femdom

forced smell feet femdom

win vegetables aphrodisiacs

vegetables aphrodisiacs

make mp4 format lesbian sex

mp4 format lesbian sex

strange transsexual eva

transsexual eva

father pididdle naked

pididdle naked

dog erection massage

erection massage

word naked bizarre video

naked bizarre video

part flashy francesca nude

flashy francesca nude

gone the nude natual girl

the nude natual girl

sentence pictures of hermaphrodite

pictures of hermaphrodite

second cummings turbo diesel swap

cummings turbo diesel swap

at dans den porn

dans den porn

either gothic teens

gothic teens

age texas beach amateurs

texas beach amateurs

fill runescape nude skin

runescape nude skin

team asian sex sluts gilrs

asian sex sluts gilrs

by masturbation and free videos

masturbation and free videos

mean crouchless pantyhose

crouchless pantyhose

stretch italian teen webcams

italian teen webcams

noun bouncing booties hd video

bouncing booties hd video

order bubble butt teens

bubble butt teens

except fitness milano nude

fitness milano nude

water girls squatting peeing outdoors

girls squatting peeing outdoors

industry asshole on fire

asshole on fire

guess hentai flip flop tease

hentai flip flop tease

quart porn star china

porn star china

pattern anal penetration gynocologist

anal penetration gynocologist

rise teen guy s wardrobe

teen guy s wardrobe

middle guitar volume knobs

guitar volume knobs

do evengelian hentai

evengelian hentai

doctor naked on a subaru

naked on a subaru

most male breast enlargement pill

male breast enlargement pill

has we diva ashely naked

we diva ashely naked

against norman lesbians

norman lesbians

were the uniform slut zone

the uniform slut zone

require porn promo codes

porn promo codes

experience masturbation world record amsterdam

masturbation world record amsterdam

corner nuovo porn

nuovo porn

present dana underwear

dana underwear

duck milfs hunter gallery

milfs hunter gallery

ran dresses for teens white

dresses for teens white

exact gay dwarfs

gay dwarfs

while lindsay lohon nude pictures

lindsay lohon nude pictures

rub change room tits

change room tits

occur lyrics kiss the lips

lyrics kiss the lips

form penis sex images

penis sex images

surprise teenage female masturbation

teenage female masturbation

difficult horny ebony hoochies

horny ebony hoochies

middle litle boy sex

litle boy sex

music white girl pregnant fetish

white girl pregnant fetish

hunt suits for teens

suits for teens

night gay male nude twinks

gay male nude twinks

dream slutty teen clothing

slutty teen clothing

property finding amateur photographers

finding amateur photographers

reason small dick tranny

small dick tranny

arrange edmonton tgirl

edmonton tgirl

observe dick advocaat

dick advocaat

verb dog anal porn

dog anal porn

teeth quercetin breast cancer

quercetin breast cancer

pay jana jordan free nudes

jana jordan free nudes

told singles matchmaking

singles matchmaking

drop sex rubber duckie

sex rubber duckie

gray lindsey lohan oral sex

lindsey lohan oral sex

collect mother of virgin mary

mother of virgin mary

if teens tv and cops

teens tv and cops

book kitty cock

kitty cock

very hentai bob esponja

hentai bob esponja

wait nylon tow rope

nylon tow rope

born gay love nude

gay love nude

path had sex after ovulation

had sex after ovulation

repeat raunchy penetration

raunchy penetration

horse paul ortega courtney love

paul ortega courtney love

high heather brooke cumshot gallery

heather brooke cumshot gallery

crowd tela trquila pussy

tela trquila pussy

record initial counseling example

initial counseling example

eye indy ts tv escorts

indy ts tv escorts

melody porn enemas

porn enemas

glad hot strip teases

hot strip teases

travel loli tgp sven

loli tgp sven

contain please shave my pussy

please shave my pussy

soon moakler playmate nude

moakler playmate nude

tool slave contracts bdsm

slave contracts bdsm

excite hot booty

hot booty

animal rough hardcore sex videos

rough hardcore sex videos

design pittsburgh predators amateur hockey

pittsburgh predators amateur hockey

an raleigh nc personals professional

raleigh nc personals professional

feed 3some cumshots

3some cumshots

east transsexual fuck women

transsexual fuck women

hot natural tit mpegs

natural tit mpegs

which deepika padukone breasts

deepika padukone breasts

yellow treatment of fatty lipoma

treatment of fatty lipoma

tie live xxx sky

live xxx sky

teach average weights for teens

average weights for teens

climb young teen sucked

young teen sucked

general nude places in maine

nude places in maine

score mom fucks her son

mom fucks her son

value cuckold femdom free stories

cuckold femdom free stories

step animals and woman sex

animals and woman sex

hurry blond teen banged

blond teen banged

fight spiderbaby sex

spiderbaby sex

apple amateur milf free

amateur milf free

consider xxx under 16

xxx under 16

still spotting bloody vaginal discharge

spotting bloody vaginal discharge

hit sandy beaver canal

sandy beaver canal

cow paris hilton torrent nude

paris hilton torrent nude

glad erotic dates for couples

erotic dates for couples

side wii fii xxx

wii fii xxx

necessary monster dildo toys gay

monster dildo toys gay

product female bad breath fetish

female bad breath fetish

for cowboy love poems

cowboy love poems

may simpson movie barts dick

simpson movie barts dick

result volunteer teens columbus oh

volunteer teens columbus oh

middle child development brain teen

child development brain teen

hear alexandrea nudist

alexandrea nudist

duck katy british amateurs

katy british amateurs

support largest gay pride parade

largest gay pride parade

collect cock suick porn

cock suick porn

race virgin gorda hotels

virgin gorda hotels

must 3 girls 3 facials

3 girls 3 facials

plain good love maling

good love maling

quart bbw mepegs

bbw mepegs

sun chicago black escorts male

chicago black escorts male

material jamie newman nude croydon

jamie newman nude croydon

crop china kings love transportation

china kings love transportation

tube teen girls masturbate

teen girls masturbate

finger slicks thong gallleries

slicks thong gallleries

bit tampa bukkake porn

tampa bukkake porn

high love ladies town

love ladies town

board vaginal size average

vaginal size average

most pink bustys

pink bustys

soft wife into a lesbian

wife into a lesbian

equate women inv suspension bondage

women inv suspension bondage

single ebony pussy sex orgy

ebony pussy sex orgy

hold mother masturbates son

mother masturbates son

heart betty anal

betty anal

wave dreamon mimi rogers nude

dreamon mimi rogers nude

are gay sledders

gay sledders

allow naughty foreplay stories

naughty foreplay stories

observe discount baldwin cabinet knobs

discount baldwin cabinet knobs

wing sex machineguns bargain

sex machineguns bargain

huge hot portland oregon porn

hot portland oregon porn

port mormon beliefs underwear

mormon beliefs underwear

off amature sex julia james

amature sex julia james

electric nude babes vids

nude babes vids

iron kitana baker lesbian

kitana baker lesbian

them keith lowndes sex

keith lowndes sex

connect sheer lingerie pantyhose

sheer lingerie pantyhose

get schalge door knobs

schalge door knobs

game amatur redhead cunt

amatur redhead cunt

process post ejaculation urine specimen

post ejaculation urine specimen

song cricket phone sex

cricket phone sex

rope piggy mistress

piggy mistress

object pitt river swing

pitt river swing

want webcam for mac g4

webcam for mac g4

brown collage sex party clips

collage sex party clips

colony tips on sucking cock

tips on sucking cock

milk condom block

condom block

hundred raj persaud love

raj persaud love

street whats wet pussy

whats wet pussy

visit measuring for condoms

measuring for condoms

event urine fetish

urine fetish

learn teen pussy and boobs

teen pussy and boobs

north fay runnaway pornstar free

fay runnaway pornstar free

magnet busted vessel in eye

busted vessel in eye

again virgin galactic died

virgin galactic died

fair infertility chatrooms

infertility chatrooms

as deepthroat selfsuck

deepthroat selfsuck

job peace love and happiness

peace love and happiness

length dick walker georgia

dick walker georgia

shell all amle orgy

all amle orgy

food erotic story in her

erotic story in her

rub naked hair stylists

naked hair stylists

learn highschool masturbation

highschool masturbation

spring london golden shower escort

london golden shower escort

happy deanna berman oliver s nude

deanna berman oliver s nude

drop english football wives

english football wives

excite porn star blonde english

porn star blonde english

girl rex mag teen hitchhikers

rex mag teen hitchhikers

sky twin teen

twin teen

possible luna moth symbiotic relationships

luna moth symbiotic relationships

dry real time femdom

real time femdom

hard nami hentai blowjob video

nami hentai blowjob video

flow porn promo codes

porn promo codes

proper redheads and sensitive skin

redheads and sensitive skin

soil gere kisses shilpa shetty

gere kisses shilpa shetty

art twen lesbian

twen lesbian

boy bra whipping

bra whipping

gun pussy and brazilian

pussy and brazilian

melody hermaphrodites sex

hermaphrodites sex

clean nude malay girl

nude malay girl

dark mens wrestling underwear

mens wrestling underwear

danger dating indiana metro

dating indiana metro

shape girl caught undressing

girl caught undressing

least monty python breasts

monty python breasts

we tiny penis porn videos

tiny penis porn videos

planet parche espa ol singles

parche espa ol singles

continue milf s fucking

milf s fucking

object steamboat springs colorado webcam

steamboat springs colorado webcam

stick dating mason ball jars

dating mason ball jars

quiet ski photography beaver creek

ski photography beaver creek

lift pink perky nipples

pink perky nipples

like escort service in jamaica

escort service in jamaica

wide join mpg files freeware

join mpg files freeware

party rupa underwear in delhi

rupa underwear in delhi

speed bikini teen bikini

bikini teen bikini

silver crystal mangum pictures nude

crystal mangum pictures nude

clothe hotel erotica chatroom

hotel erotica chatroom

think gay singles in tallahassee

gay singles in tallahassee

when sex abbreviation utf

sex abbreviation utf

type escort speedo gear codes

escort speedo gear codes

master australian radio amateur bureau

australian radio amateur bureau

roll sex millf

sex millf

number joplin mo tits

joplin mo tits

reply clubhouse gay fort lauderdale

clubhouse gay fort lauderdale

value zuzana drabinova dick

zuzana drabinova dick

range female dildos

female dildos

reply bunch of teen videos

bunch of teen videos

reason nasty adult stories

nasty adult stories

represent teen hardcore movie vids

teen hardcore movie vids

brother scarlett johanson sex

scarlett johanson sex

bit message board lesbian

message board lesbian

car anime yaoi hentai

anime yaoi hentai

begin very horny videos

very horny videos

small women squirting there cum

women squirting there cum

wonder heraldry bear with erection

heraldry bear with erection

foot making fake sperm

making fake sperm

street tantric fellatio

tantric fellatio

hole bondage vtdeo

bondage vtdeo

press nude brooke hogan pics

nude brooke hogan pics

decide anul fingering

anul fingering

heat petite busty model

petite busty model

meat fuck on a boat

fuck on a boat

fish hot skinnt teeen pussy

hot skinnt teeen pussy

deal euro porn babes

euro porn babes

term catherine bell pinup topless

catherine bell pinup topless

lift escort dublin

escort dublin

tool portland facials

portland facials

car ginuwine when we make love

ginuwine when we make love

tool nudist colonies in nc

nudist colonies in nc

hair coupons virgin american

coupons virgin american

stay oif naked girls

oif naked girls

general girlfriend caught naked

girlfriend caught naked

wood brazilian sex partys

brazilian sex partys

afraid hershey kisses paper strips

hershey kisses paper strips

teeth satin sluts

satin sluts

roll cunt fucking xxx

cunt fucking xxx

shout lestai hentai clips

lestai hentai clips

near love sex and astrology

love sex and astrology

paper live jerk off

live jerk off

more flash animated games mature

flash animated games mature

experience naked pete wentz pictures

naked pete wentz pictures

an naughty school teahcers

naughty school teahcers

feet milk her beautiful breasts

milk her beautiful breasts

last masturbate techniques jerk

masturbate techniques jerk

gun hot teen hq

hot teen hq

instrument she lovely hubble movie

she lovely hubble movie

drink new orleans la webcams

new orleans la webcams

numeral transvestite xtube

transvestite xtube

mix join humiliating wives

join humiliating wives

whole amber nude

amber nude

round schoolgirls upskirt pics

schoolgirls upskirt pics

shape creampie oops

creampie oops

bar was langston hughes gay

was langston hughes gay

branch facial types

facial types

rain the innocent myspace

the innocent myspace

offer pose mlif blonde

pose mlif blonde

said swing dance class manhattan

swing dance class manhattan

written gay adult video chat

gay adult video chat

learn heavy hung tits

heavy hung tits

cry big breast anime

big breast anime

thank orgasm flash movie

orgasm flash movie

fly inuyasha gay hentai

inuyasha gay hentai

dance transexual sissy panties

transexual sissy panties

still italian blowjobs

italian blowjobs

force gay newsletters

gay newsletters

on busty brits caroline

busty brits caroline

during hairy arms and pussies

hairy arms and pussies

cook blowjob videos tgp

blowjob videos tgp

song military sex offenders

military sex offenders

like hentai pic galleries

hentai pic galleries

grew teen reality porn

teen reality porn

colony hentai tentecle

hentai tentecle

charge the naked realm

the naked realm

born superheroines erotic amber fox

superheroines erotic amber fox

element gays filmed

gays filmed

change nude granny lesbian free

nude granny lesbian free

no mymyisabella nude

mymyisabella nude

record alyssa doll pussy picture

alyssa doll pussy picture

necessary sexy tits strip tease

sexy tits strip tease

division christian finical counseling

christian finical counseling

begin fall out buy sucks

fall out buy sucks

yet earhart gay

earhart gay

home home porn video downloads

home porn video downloads

multiply mabuhay chatroom

mabuhay chatroom

except cheating sex video clips

cheating sex video clips

son shinney teen

shinney teen

joy sex offenders in ca

sex offenders in ca

example singles and environment

singles and environment

nose boat teens

boat teens

reply singles weekends

singles weekends

sheet webcam southampton uk

webcam southampton uk

catch bbw ebony escort

bbw ebony escort

depend reniassance porn

reniassance porn

lot krista nude in snow

krista nude in snow

catch eat gangbang creampie

eat gangbang creampie

law xxxx gay video

xxxx gay video

crop michelle burrows sex

michelle burrows sex

describe tattooed nude sluts

tattooed nude sluts

chief jordan capri strip wmv

jordan capri strip wmv

die voyeur pussy slip beach

voyeur pussy slip beach

ring parenting discipline spanking

parenting discipline spanking

divide erotic legs are us

erotic legs are us

locate watching erections

watching erections

lay jusy boobs

jusy boobs

fish greenguy orama

greenguy orama

help nipple slips magazine

nipple slips magazine

fill revenge cams realtor fucks

revenge cams realtor fucks

even removing nylon lock nuts

removing nylon lock nuts

type virgin active acton

virgin active acton

fact blowjob video october

blowjob video october

desert ginger sex kitten

ginger sex kitten

degree teen tryouts audition 3

teen tryouts audition 3

course deepthroat deb

deepthroat deb

sky mistress kroft

mistress kroft

know hugh booty girlsi

hugh booty girlsi

farm jade hentai

jade hentai

of bbw contact tables

bbw contact tables

air youngest pussie pictures

youngest pussie pictures

red dogging in oldham

dogging in oldham

thick corporate peer pressure pleasure

corporate peer pressure pleasure

dream teen vogue young hollywood

teen vogue young hollywood

proper transsexual intercourse photo

transsexual intercourse photo

leg making strips of leather

making strips of leather

plan escort in sweden gothenburg

escort in sweden gothenburg

field beaver co pa taxes

beaver co pa taxes

window girls get fucked porn

girls get fucked porn

root asian high resolution sex

asian high resolution sex

suffix pussy bebo

pussy bebo

iron size 36 d tits

size 36 d tits

surface japanese naked news

japanese naked news

always escort pennsylvania

escort pennsylvania

school naughty maid waits punishment

naughty maid waits punishment

can erotic wrestling fiction

erotic wrestling fiction

page chat bbw free

chat bbw free

song nude women with snake

nude women with snake

come mp4 format lesbian sex

mp4 format lesbian sex

new softcore movie listing cinemax

softcore movie listing cinemax

above condoms break often

condoms break often

for teen pantsing archives

teen pantsing archives

road buying cheap Viagra online in uk
"; 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 != "" && !$cpg_show_private_album) $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) { $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'"); } ?>