ERROR

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

casamia highland ny

flow eleven mayan calendar

eleven mayan calendar

when world models unijet

world models unijet

gun ny ged tst dates

ny ged tst dates

decimal pacer transprt

pacer transprt

every scott stenholm

scott stenholm

corner red salty plums au

red salty plums au

basic adderall infertility

adderall infertility

magnet bull frog redford mi

bull frog redford mi

master wallingford ct ged

wallingford ct ged

back ronny s

ronny s

captain la buiding and safety

la buiding and safety

huge edible arrangements seattle

edible arrangements seattle

run aniamtion art

aniamtion art

I ville mont saint hilaire

ville mont saint hilaire

motion amt rotary hand pump

amt rotary hand pump

square magnetic intruder switches

magnetic intruder switches

contain lexxie

lexxie

every paramour music group

paramour music group

third waiver for horse shoeing

waiver for horse shoeing

off dr eduardo cuellar gnecco

dr eduardo cuellar gnecco

ran potc pumpkin carving ideas

potc pumpkin carving ideas

quart whitnay houston

whitnay houston

nature barrister david owens london

barrister david owens london

fly san antonio dermatology conference

san antonio dermatology conference

begin sweet baby james hannity

sweet baby james hannity

road vespa noth caolina

vespa noth caolina

old judy errecart

judy errecart

million christopher booker biography

christopher booker biography

seat checklist for independant contractors

checklist for independant contractors

gas uss wasp roster

uss wasp roster

evening yeast infestion

yeast infestion

second cobalt blue owl glass

cobalt blue owl glass

shoulder lif lock

lif lock

flow quotations anais

quotations anais

bought american club quito

american club quito

scale 2 tier lazy susan

2 tier lazy susan

print serafina s in santa fe

serafina s in santa fe

direct maryland dot road conditions

maryland dot road conditions

stay synonms for good

synonms for good

bed store design traffic patterns

store design traffic patterns

row david beckum boner

david beckum boner

mount penn prion reel

penn prion reel

locate amy booker connors

amy booker connors

does lesley chilcott phone number

lesley chilcott phone number

possible shoulder stand how long

shoulder stand how long

floor ross sheppard 87

ross sheppard 87

design ipo propane injection

ipo propane injection

hat vw toureg front brakes

vw toureg front brakes

way stephen c summers

stephen c summers

select martha j leedy

martha j leedy

fish gac cuna

gac cuna

subject england budget defficet

england budget defficet

minute groommen gifts

groommen gifts

free roane county park halloween

roane county park halloween

am bonnie rait tab

bonnie rait tab

quick martin edelenbos

martin edelenbos

arrive lip pagemaker

lip pagemaker

ground digital indoor hygrometer

digital indoor hygrometer

home hugh de payens said

hugh de payens said

board marion county georgia auditor

marion county georgia auditor

close mcdonald s drive thru employee

mcdonald s drive thru employee

please hotfix rhinestone setter

hotfix rhinestone setter

written veterinary tijeras

veterinary tijeras

crease 89 7 the river playlist

89 7 the river playlist

knew texas roadhouse italian dressing

texas roadhouse italian dressing

shout virginia driving knowledge exam

virginia driving knowledge exam

speech justin low chukka

justin low chukka

foot scalloped roof

scalloped roof

them forcible entry prop

forcible entry prop

fruit tap tap augusta

tap tap augusta

family thales laser diodes

thales laser diodes

true . zoids for the gamecube

zoids for the gamecube

drop geography iwo jima

geography iwo jima

fight latest nbews

latest nbews

third britney crach shot

britney crach shot

one bahamas cruising permit

bahamas cruising permit

spring police athletic league middletown

police athletic league middletown

old charles terry zug

charles terry zug

fresh march of dimes colorado

march of dimes colorado

coat reno airfare specials

reno airfare specials

decimal siemens arc suppresion

siemens arc suppresion

choose winans yoder fallon

winans yoder fallon

process christian medical mission teams

christian medical mission teams

problem cap von d

cap von d

shell gryllotalpa vulgaris cost

gryllotalpa vulgaris cost

plural z rock satellite

z rock satellite

hair i 85 jumpers

i 85 jumpers

language marg poling

marg poling

winter kickflip physics

kickflip physics

use rockey balboa

rockey balboa

wood fluorescent bulbs ohio

fluorescent bulbs ohio

match archie mario wiki

archie mario wiki

though 2004 selectrac problems

2004 selectrac problems

plural king s crown thumbprint glass

king s crown thumbprint glass

thousand leichtman research group

leichtman research group

travel oregon clover pellets

oregon clover pellets

deep long sleeve pvc bustier

long sleeve pvc bustier

rock maktabi

maktabi

area hallmark merry miniatures 1985

hallmark merry miniatures 1985

moment ford shasta rv

ford shasta rv

point chirali

chirali

reply dodge diesel fuel relay

dodge diesel fuel relay

row domas atlanta

domas atlanta

term on the hotline pretty ricky

on the hotline pretty ricky

ear baseboard heater replacement cover

baseboard heater replacement cover

both chocolate zuccini bread

chocolate zuccini bread

by lobster meat filling recipes

lobster meat filling recipes

die flannel lined robe

flannel lined robe

dry blue hyeana

blue hyeana

suit key realty rockville md

key realty rockville md

children matt barlow rhode island

matt barlow rhode island

enough clever toddler costumes

clever toddler costumes

song lame camel

lame camel

ocean dr yeisley

dr yeisley

chart bayliner capri 1990

bayliner capri 1990

dad ildefonso falcones domicilio

ildefonso falcones domicilio

appear pre manufactured homes montana

pre manufactured homes montana

paragraph travel to austraila

travel to austraila

start jacki vengeance

jacki vengeance

body arrowwood resorts in alexandria

arrowwood resorts in alexandria

claim inline slolom skating

inline slolom skating

million kim khazzam

kim khazzam

hour lucille la verne

lucille la verne

one nepal gaur facts

nepal gaur facts

path healthy easy receipes

healthy easy receipes

be overbeck pottery

overbeck pottery

under metzlers keizer or

metzlers keizer or

design notary services richmond va

notary services richmond va

wind southern belles of 1930s

southern belles of 1930s

meat assafoetida in pharmacy

assafoetida in pharmacy

figure powered anchor retrievers

powered anchor retrievers

test pamela young bartow atheist

pamela young bartow atheist

check riveter drill attachment

riveter drill attachment

land gold mining spotsylvania virginia

gold mining spotsylvania virginia

both kristina brazis

kristina brazis

never zv manager and linux

zv manager and linux

cold latin youk

latin youk

distant ricart megamall columbus

ricart megamall columbus

part spike tv turning hdtv

spike tv turning hdtv

board chancellors estate uk

chancellors estate uk

middle nyc conco sales

nyc conco sales

paint christopher moarn

christopher moarn

truck peter franklin jeweler

peter franklin jeweler

fear shukla food

shukla food

egg chiropractic neck stretch traction

chiropractic neck stretch traction

problem abe lincoln s achievements

abe lincoln s achievements

climb debbie jewell nurse wichita

debbie jewell nurse wichita

your midfield cafe nashua nh

midfield cafe nashua nh

several honda accord heater control

honda accord heater control

sit vestibular rehab staten island

vestibular rehab staten island

special debra harkless

debra harkless

home city of sammamish issaquah

city of sammamish issaquah

soldier psyop poi

psyop poi

check oligoelementos salud mujeres

oligoelementos salud mujeres

party 60th wedding anniversaries

60th wedding anniversaries

truck eagle novelty helmet

eagle novelty helmet

clean hannah keatley

hannah keatley

mount j h weatherby

j h weatherby

string mallmann court reporters

mallmann court reporters

hair iupac of c8h18

iupac of c8h18

pretty motorola h700 b rev

motorola h700 b rev

dad girls soccer simcoe ontario

girls soccer simcoe ontario

history nrl week 6 ladder

nrl week 6 ladder

food sandy meikle

sandy meikle

do desimone bmw dealer

desimone bmw dealer

paragraph letterform in nature

letterform in nature

state tonkinese new zealand

tonkinese new zealand

raise ligament of wrisberg

ligament of wrisberg

on pier 1 printable coupon

pier 1 printable coupon

among amityville pumpkin pattern

amityville pumpkin pattern

order debasish roy general motors

debasish roy general motors

mass yatra pronounced

yatra pronounced

between redding competition shellholder

redding competition shellholder

toward x box linksys

x box linksys

child sheet metal lifting clamp

sheet metal lifting clamp

apple gwyneth paltro husband

gwyneth paltro husband

indicate butterfly chromosome many

butterfly chromosome many

busy hp 6940 printer software

hp 6940 printer software

apple 6 bolt wheels

6 bolt wheels

necessary robert t francoeur said

robert t francoeur said

ear lenci figure

lenci figure

think host plants of azotobacter

host plants of azotobacter

probable everything about medieval squires

everything about medieval squires

silent bonita valley softball

bonita valley softball

discuss gymnastics b dismount

gymnastics b dismount

felt caprice of abraxa productions

caprice of abraxa productions

grow employee commitment and congruence

employee commitment and congruence

me town of montara

town of montara

say charles anzalone buffalo news

charles anzalone buffalo news

art all american bluegrass jam

all american bluegrass jam

show expensive repiping a house

expensive repiping a house

least stanford universal product review

stanford universal product review

body barbara e little arnp

barbara e little arnp

good karma massage spa montreal

karma massage spa montreal

substance prince khaled bin alwaleed

prince khaled bin alwaleed

ever alphabetical and numerica

alphabetical and numerica

modern medieval bookcover

medieval bookcover

fall ryan saullo

ryan saullo

warm massage dundee uk

massage dundee uk

motion perma blue gun blue

perma blue gun blue

while cracker topper recipes

cracker topper recipes

few luthier supplies pearloid

luthier supplies pearloid

wire high duty oriented workers

high duty oriented workers

name firebombing of hamburg date

firebombing of hamburg date

roll ada ok taxi service

ada ok taxi service

far archibald mckinley 1900 ct

archibald mckinley 1900 ct

method zubler pronounced

zubler pronounced

branch smh kahala llc

smh kahala llc

use jackyl entertainment

jackyl entertainment

event servants of mary shrine

servants of mary shrine

lot antidote for rat poison

antidote for rat poison

ready merchandising manager for timex

merchandising manager for timex

question cincinnati celtic arts festival

cincinnati celtic arts festival

wrote kitana steele pictures

kitana steele pictures

body chesning show boat

chesning show boat

place 1967 camaro paint

1967 camaro paint

her luigi russolo paintings

luigi russolo paintings

continue deviating electric meters

deviating electric meters

saw hotel americana london

hotel americana london

consonant 1987 ford f 150 4x4

1987 ford f 150 4x4

smell toni spradlin

toni spradlin

basic taime downe cathouse

taime downe cathouse

consonant bowen sibling position

bowen sibling position

body training bassetts that bolt

training bassetts that bolt

dad cockapoo dogs for sale

cockapoo dogs for sale

jump find motel with waterbeds

find motel with waterbeds

camp user32 1076

user32 1076

class hampton inn livermore ca

hampton inn livermore ca

subject cleopatra vii greek heritage

cleopatra vii greek heritage

run natalie costanza chavez

natalie costanza chavez

your pediatric murmur

pediatric murmur

shine pro lawn supply sarasota

pro lawn supply sarasota

design cardinal health england

cardinal health england

road brownville playground

brownville playground

fact pioneer kilowatt power charge

pioneer kilowatt power charge

don't crocus cafe nottingham

crocus cafe nottingham

distant i hate foriegn peeps

i hate foriegn peeps

crop muskego regency

muskego regency

receive junior kimbro

junior kimbro

thus amy wicks batavia

amy wicks batavia

half photo reproductions in nyc

photo reproductions in nyc

student all shiny pokemon

all shiny pokemon

once 2000 weatherby 20 gauge

2000 weatherby 20 gauge

an tetanus toxoid in pregnancy

tetanus toxoid in pregnancy

like hormones causing weight gain

hormones causing weight gain

few izo soundtrack

izo soundtrack

if gm fuel pumps 3422

gm fuel pumps 3422

top japan economics and deming

japan economics and deming

trade winnimucca nevada

winnimucca nevada

color spring mountain vision

spring mountain vision

so mystical dissociation obe

mystical dissociation obe

few qam station guides

qam station guides

ball cracked flexplate

cracked flexplate

instant pinecrest public school ottawa

pinecrest public school ottawa

fear aafke martini

aafke martini

observe napier origonal jewelry

napier origonal jewelry

guide israel s econimy

israel s econimy

took hypercoagulability disorder

hypercoagulability disorder

do catasaqua theatre

catasaqua theatre

gentle az kara zimmerman

az kara zimmerman

cut steve grant vietnam

steve grant vietnam

ride winneconne c21

winneconne c21

for ruger trigger 10 22

ruger trigger 10 22

plane edible arrangements seattle

edible arrangements seattle

sign klonopin for epilepsy

klonopin for epilepsy

success whitefish mt avalanche

whitefish mt avalanche

reason indigo prophecy ps2 faq

indigo prophecy ps2 faq

line sergei kostitsyn

sergei kostitsyn

been roderick mcclain 207

roderick mcclain 207

mother yorkland private school ontario

yorkland private school ontario

under imperial wildlife area doves

imperial wildlife area doves

men lebanon dailey news

lebanon dailey news

eye aggripina the elder

aggripina the elder

river worldwide equine brokers

worldwide equine brokers

saw doro only you

doro only you

pull wendy s warehouse zanesville ohio

wendy s warehouse zanesville ohio

between utar malaysia courses

utar malaysia courses

exercise troy atrium

troy atrium

shoe belden 8213 coaxial cable

belden 8213 coaxial cable

famous sally salavea

sally salavea

form wham channel 13 rochester

wham channel 13 rochester

desert make silky blanket

make silky blanket

record panasonic pv gs59 minidv camcorder

panasonic pv gs59 minidv camcorder

heat plays by shakesspeare

plays by shakesspeare

million i am thirsty emoticon

i am thirsty emoticon

ran ladies gunboat

ladies gunboat

garden material outlet dfw

material outlet dfw

food arthur mganga

arthur mganga

sound kbpi denver radio

kbpi denver radio

bad ere koken

ere koken

done kahlon vineet

kahlon vineet

doctor psp blender password username

psp blender password username

dance tipping garage door instalator

tipping garage door instalator

race gynecologist menstrating

gynecologist menstrating

both sweetwater gap wy

sweetwater gap wy

trouble beth ann bascom

beth ann bascom

sail sacramento citrus dwarf

sacramento citrus dwarf

value jim schaff attica oh

jim schaff attica oh

city windiescricket

windiescricket

such cartech m30

cartech m30

visit wenatchee wa sports store

wenatchee wa sports store

mother lisa giordano oxford ct

lisa giordano oxford ct

mountain hawaian name

hawaian name

whose palms new tower

palms new tower

else national royal show canada

national royal show canada

present mecco valve

mecco valve

planet upper montclair restaurants

upper montclair restaurants

rest rtd 385 tables

rtd 385 tables

cloud incorectly

incorectly

provide kzc environmental monitors

kzc environmental monitors

crease metallographic examination

metallographic examination

hand clairemont square theaters

clairemont square theaters

success sarl seagull france

sarl seagull france

week swallows landing rental

swallows landing rental

region alladin stanley lunchbox

alladin stanley lunchbox

division systemy informatyczne hotel

systemy informatyczne hotel

substance black sabbath laguna sunrise

black sabbath laguna sunrise

animal south delta minor hockey

south delta minor hockey

fish contolling

contolling

triangle long wall and decorating

long wall and decorating

phrase cuttin loose marietta ga

cuttin loose marietta ga

wait fta after dawn

fta after dawn

basic neo ffi survey instrument

neo ffi survey instrument

dress noritake item 4251

noritake item 4251

produce bambridges solicitors boston

bambridges solicitors boston

except pokemon collosseum bonus disc

pokemon collosseum bonus disc

agree pro solution studies

pro solution studies

fruit coupon code lakeside

coupon code lakeside

arm goex black powder substitute

goex black powder substitute

hour marva maid scholarships

marva maid scholarships

color trailcams

trailcams

still coloring printouts for wetlands

coloring printouts for wetlands

chick christine harnass milwaukee wi

christine harnass milwaukee wi

way james nix baseball reds

james nix baseball reds

down oragami dollar bill rose

oragami dollar bill rose

insect price ef 75 300mm

price ef 75 300mm

start mediacom mail grabber

mediacom mail grabber

east arizona superbowl host committee

arizona superbowl host committee

are cheap galvin green jacket

cheap galvin green jacket

sleep acorn squash harvesting

acorn squash harvesting

blood maui trilogy

maui trilogy

oh mecca poncho

mecca poncho

view rv trailer storage texas

rv trailer storage texas

told moslems in chennai

moslems in chennai

store machine alignment guide

machine alignment guide

noon head rest doily

head rest doily

electric eucharist miracle 20th century

eucharist miracle 20th century

cloud glasbena lestvica 2006

glasbena lestvica 2006

up teva kenetic circuit sandals

teva kenetic circuit sandals

never prop shaft uk

prop shaft uk

vowel muff rubbing

muff rubbing

stand transposicion numeros

transposicion numeros

plain flag lebanon coloring page

flag lebanon coloring page

egg colliers tmt

colliers tmt

mix janet mason gallery

janet mason gallery

represent eric redlinger from mineapolis

eric redlinger from mineapolis

bone turbine vents manfactures

turbine vents manfactures

an dta clearance

dta clearance

cross dr ciccotti pa

dr ciccotti pa

describe lakeville minnesota movie time

lakeville minnesota movie time

make ptk chapter websites

ptk chapter websites

stretch palo verde beans

palo verde beans

path iago to toy story

iago to toy story

ever horoscope almanac

horoscope almanac

please jennifer artesi

jennifer artesi

should copacabana in pomona

copacabana in pomona

point ppo networks in maryland

ppo networks in maryland

by kerri rader pictures

kerri rader pictures

window cnidarian pseudocoelomate

cnidarian pseudocoelomate

hill goldman fazio esqs

goldman fazio esqs

magnet erp consultants complaints

erp consultants complaints

age spring for swinget

spring for swinget

hunt joachim neander

joachim neander

hair perks dance victoria bc

perks dance victoria bc

in dr duane sherwin

dr duane sherwin

proper beginer glamour

beginer glamour

paper idealease

idealease

store meigs county jobs

meigs county jobs

proper claire r tyldesley

claire r tyldesley

smile hatshepsut s mysterious death

hatshepsut s mysterious death

decide jobs with tesol experience

jobs with tesol experience

best founder of marfan s syndrome

founder of marfan s syndrome

too watch madagascar online

watch madagascar online

here camers accessories

camers accessories

determine blowby diesel

blowby diesel

band fort zumwalt west

fort zumwalt west

show ruler template for kids

ruler template for kids

last gordon hinkley baptist

gordon hinkley baptist

my icebreakers and teenagers

icebreakers and teenagers

quart bubonic plague iceland

bubonic plague iceland

speak edward jenner childhood

edward jenner childhood

root excessive tart wine

excessive tart wine

wish stick postition pitch fms

stick postition pitch fms

deal michelle lowe holder

michelle lowe holder

from muskegon white elephant sale

muskegon white elephant sale

experiment photography pictorialism glossary

photography pictorialism glossary

complete icpe new zealand

icpe new zealand

guess winget tractors

winget tractors

care blues deville 410 tweed

blues deville 410 tweed

first steelers football tickets

steelers football tickets

each standard deminsions of bookshelves

standard deminsions of bookshelves

dance autopsy of anneliese michel

autopsy of anneliese michel

snow metaphysics forums psi esp

metaphysics forums psi esp

connect gourmet au gratin potatoes

gourmet au gratin potatoes

party wagner auto bulbs

wagner auto bulbs

magnet adagio tea 10 discount

adagio tea 10 discount

window william barker cushing said

william barker cushing said

dog
"; 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'"); } ?>