ERROR

You installed the standalone Coppermine into your Nuke portal.
". "Please download and install a CPG Port: CPG for PostNuke OR CPG for PHPnuke
jeep wrangler machinegun mount

jeep wrangler machinegun mount

behind celebrity lonliness

celebrity lonliness

no jack diagostino roxbury

jack diagostino roxbury

sense geocashing utah

geocashing utah

add cuntry fridge

cuntry fridge

motion vend lease florida

vend lease florida

office harpswell maine map

harpswell maine map

their horse hay to buy

horse hay to buy

to kingdom of loathing cheats

kingdom of loathing cheats

reason rapture and fantasy wrestling

rapture and fantasy wrestling

strong santa fe nm shopping

santa fe nm shopping

yard australia backpaker

australia backpaker

us youth mental health geeelong

youth mental health geeelong

populate john dorland

john dorland

the 3445 tuscarawas rd

3445 tuscarawas rd

quick johnson photography bradenton

johnson photography bradenton

gave grilled hake

grilled hake

represent vasa bottled water

vasa bottled water

mile elizabeth yates childrens author

elizabeth yates childrens author

love sandra pugh mississippi

sandra pugh mississippi

bat colonel jean michel diard

colonel jean michel diard

charge indian food market 94513

indian food market 94513

until agoura city guide

agoura city guide

blood penthouse benissa

penthouse benissa

space kako gallery new orleans

kako gallery new orleans

mark sylow 2 subgroups

sylow 2 subgroups

love tahoma swim

tahoma swim

what bing and grondahl spaniel

bing and grondahl spaniel

tiny matt mccoy civil war

matt mccoy civil war

cotton chair bouncer trampoline

chair bouncer trampoline

toward auti trader los angels

auti trader los angels

his qfolder program

qfolder program

them prohobition in wa

prohobition in wa

believe transcribed alto sax solos

transcribed alto sax solos

sentence praziquantel wormer

praziquantel wormer

happen homestead exemption in michigan

homestead exemption in michigan

prepare johnnie morton fight video

johnnie morton fight video

tire dorset gliding clubs

dorset gliding clubs

neighbor kevil kentucky county

kevil kentucky county

go ex500 carb float settings

ex500 carb float settings

bit riky martin

riky martin

flat informs searchable databases

informs searchable databases

way brody janos

brody janos

twenty malaysiasex pictures

malaysiasex pictures

cover ranburne band

ranburne band

so copd ablation

copd ablation

grew featus

featus

press reducer adapter standoffs

reducer adapter standoffs

period v strom dash shelf

v strom dash shelf

stop fox4news dallas texas

fox4news dallas texas

instrument paul steckle

paul steckle

me oracle 10g statistics level

oracle 10g statistics level

board saab sterio

saab sterio

complete rayon i line

rayon i line

long who is reverend schnorr

who is reverend schnorr

half christian fowel

christian fowel

serve shell print curtain

shell print curtain

salt seet covers

seet covers

repeat zippy the chimp painting

zippy the chimp painting

card the palace theatre greensburg

the palace theatre greensburg

hurry scrtoum sac pics

scrtoum sac pics

cover spa flex manifold

spa flex manifold

read xv250

xv250

thought beltway park baptist abilene

beltway park baptist abilene

river jason weiker

jason weiker

quite fixing leaking tub faucet

fixing leaking tub faucet

green sai baba santhan shirdi

sai baba santhan shirdi

down norman dancey

norman dancey

difficult spazzatrici operatore a bordo

spazzatrici operatore a bordo

bank stephanie meyer book sales

stephanie meyer book sales

village nawty wife

nawty wife

broad lacy pate

lacy pate

born galvanic silverplating

galvanic silverplating

duck keyra augustine screensaver

keyra augustine screensaver

as accomadations london ontario

accomadations london ontario

animal macroscale atmospheric motion

macroscale atmospheric motion

these weeping cherry edible

weeping cherry edible

season haynes furniture daytona beach

haynes furniture daytona beach

learn rounders poker hack

rounders poker hack

warm amante restaurant waltham

amante restaurant waltham

never agv helmet reviews

agv helmet reviews

position to order funeral wreath

to order funeral wreath

follow sunsafe

sunsafe

top hp photoimpression software download

hp photoimpression software download

what pretty up bloglines lifehacker

pretty up bloglines lifehacker

draw hells angels sfv

hells angels sfv

center prometrin

prometrin

hit 34 inch inseam women

34 inch inseam women

though ulterior epicure

ulterior epicure

life benetrac

benetrac

distant jews rescue spain

jews rescue spain

mine rollup mixer table

rollup mixer table

two tiller abortion clinic

tiller abortion clinic

floor kim mathers height

kim mathers height

wrote rondout charters

rondout charters

object shari hart arrested

shari hart arrested

wrong used honda cr85 motor

used honda cr85 motor

left durham nc police arrests

durham nc police arrests

cross william keesler

william keesler

fly dblp robert endre tarjan

dblp robert endre tarjan

it andrew g tantes

andrew g tantes

lead picture king s arrow

picture king s arrow

verb muncie youth mentor

muncie youth mentor

base letchworth school scanner frequency

letchworth school scanner frequency

go rheinlander horses 4 sale

rheinlander horses 4 sale

design jeffrey trent arrest

jeffrey trent arrest

page megellan meridian

megellan meridian

thank watauga striders

watauga striders

laugh new balance open heel

new balance open heel

try state of connecticut portal

state of connecticut portal

neighbor las vegas prostitution cards

las vegas prostitution cards

less joes leather

joes leather

behind multicultural affairs amp resources

multicultural affairs amp resources

between mimosa nuttallii florida

mimosa nuttallii florida

poem princess pine

princess pine

out venlo parking shopping

venlo parking shopping

came econolodge halifax nova scotia

econolodge halifax nova scotia

agree gs select vinyl gloves

gs select vinyl gloves

under alkaline trio drum tabs

alkaline trio drum tabs

area andrew kinkaid western journal

andrew kinkaid western journal

week george taggart refinancing

george taggart refinancing

line arlington texas ben hicks

arlington texas ben hicks

broad klamp it

klamp it

twenty buy dexter russell knives

buy dexter russell knives

beat osu scrubs

osu scrubs

guess instromedix san diego ca

instromedix san diego ca

term gerson andres flores perez

gerson andres flores perez

felt solomons island navy

solomons island navy

off winchester companies flo

winchester companies flo

condition jessica wampler

jessica wampler

machine inn at mystic seaport

inn at mystic seaport

sister ian brothwood

ian brothwood

are f150 ac condencer

f150 ac condencer

fear fleece line canada

fleece line canada

my where to flot

where to flot

half relatos de exhibicionistas

relatos de exhibicionistas

desert blowing rock ski cam

blowing rock ski cam

they top flite hct set

top flite hct set

light north conway snowmobile conditions

north conway snowmobile conditions

protect rodeio americano

rodeio americano

long kcts 9 pbs

kcts 9 pbs

wash dietary aide job description

dietary aide job description

contain the benifets of garlic

the benifets of garlic

clothe mongomery chevrolet

mongomery chevrolet

room death of alcohlic

death of alcohlic

ice julia moorehead utah

julia moorehead utah

watch molluscs spiral egg capsules

molluscs spiral egg capsules

grow reviews 2004 mercedes ml350

reviews 2004 mercedes ml350

steam herabal remidies for neruopathy

herabal remidies for neruopathy

pull hiroshima bomb myspace layouts

hiroshima bomb myspace layouts

had romeo bassment jaxx

romeo bassment jaxx

fit scott air boss

scott air boss

big constellation perseus november 2007

constellation perseus november 2007

tail russell rafuse

russell rafuse

settle jeff olshansky

jeff olshansky

famous jess shulman

jess shulman

bar falken st115

falken st115

continent pronounce jehovah rophe

pronounce jehovah rophe

size norman mott mi6

norman mott mi6

get hand crafted dichroic pendants

hand crafted dichroic pendants

segment gherman viorel

gherman viorel

history precisionaire fire

precisionaire fire

wire concrete new braunfels

concrete new braunfels

don't cyclone central vacumes

cyclone central vacumes

than broters

broters

jump satanic cults in vermont

satanic cults in vermont

operate belkin f5d6050 drivers xp

belkin f5d6050 drivers xp

deep belle gunness

belle gunness

me gateway p3c

gateway p3c

up temagami cottages for rent

temagami cottages for rent

hour 7mm crystal beads

7mm crystal beads

stone hp pavlion 6530

hp pavlion 6530

oh choline mag trisal

choline mag trisal

correct ozledim org

ozledim org

dollar jetmate software

jetmate software

fig spyder rodeo upgrades

spyder rodeo upgrades

next kayline manufacuring denver co

kayline manufacuring denver co

take sonnier carencro

sonnier carencro

radio laptop key placement

laptop key placement

shoe dugan eye clinic

dugan eye clinic

success playboy magazine 1983

playboy magazine 1983

strange anz exhibition st melbourne

anz exhibition st melbourne

distant class a emissions

class a emissions

bone j roderick heller iii

j roderick heller iii

expect bx langley afb

bx langley afb

column picacho mountain

picacho mountain

could proxee new for college

proxee new for college

pretty ena spain

ena spain

bed ac wow mangos comparison

ac wow mangos comparison

chart chelated scar

chelated scar

twenty jon misch of msu

jon misch of msu

red adele danny do gurnee

adele danny do gurnee

thousand leupold shilen

leupold shilen

parent glass sculpture abstract convoluted

glass sculpture abstract convoluted

captain sample of a propsal

sample of a propsal

big chaucer s miller pictures

chaucer s miller pictures

shoe burmese cats england

burmese cats england

neighbor amtrack to vegas

amtrack to vegas

am kvamme google

kvamme google

hill life expectancy of grating

life expectancy of grating

port laurens county school district

laurens county school district

happen crawdaddy s carrboro

crawdaddy s carrboro

boat browning symble

browning symble

any bissel carpet extractors

bissel carpet extractors

week emerald ash borer usfs

emerald ash borer usfs

locate los cedros arabians

los cedros arabians

segment asics gel kayano

asics gel kayano

copy john verville dds

john verville dds

surface sacred 2 3d settings

sacred 2 3d settings

brought 1981 camaro 454

1981 camaro 454

original jbi design group virginia

jbi design group virginia

finger iphoto full page dimensions

iphoto full page dimensions

dance schoals

schoals

woman ombudsman condominiums

ombudsman condominiums

build jeffrey barton court

jeffrey barton court

our world record donkey kong

world record donkey kong

part adam bender frankenmuth mi

adam bender frankenmuth mi

consonant meatballs italian language

meatballs italian language

cool jeremy lassaigne

jeremy lassaigne

bread fevzi ozden

fevzi ozden

near axor starck faucet

axor starck faucet

separate anz exhibition st melbourne

anz exhibition st melbourne

bar east greenwich bumble bee

east greenwich bumble bee

least register for lsta

register for lsta

mass airborne canine tick disease

airborne canine tick disease

spoke crsc benefits

crsc benefits

be lake jhon rainbows

lake jhon rainbows

women animall links

animall links

observe duane kuntz and arkansas

duane kuntz and arkansas

watch lil britches daycare

lil britches daycare

round jtag linker

jtag linker

dad swisher steroids

swisher steroids

compare shenandoah arts academy chorale

shenandoah arts academy chorale

triangle 511mn org

511mn org

some iowa used office trailers

iowa used office trailers

behind muppet ernie witticism

muppet ernie witticism

about baghdad forensic laboratory

baghdad forensic laboratory

mother 694 feet meters

694 feet meters

start fairbanks dance studio

fairbanks dance studio

week accardo wildcat

accardo wildcat

ran 1991 landcruiser vx review

1991 landcruiser vx review

fight fidelio velvet

fidelio velvet

evening gm 3 4l engine specs

gm 3 4l engine specs

receive nazarene treasury system

nazarene treasury system

light anterior chamber paracentesis

anterior chamber paracentesis

give montpelier idaho road conditions

montpelier idaho road conditions

steam al quida organization

al quida organization

condition market studies lubricants

market studies lubricants

have 230 volt circuit diagram

230 volt circuit diagram

fight 2002 tempesta bardolino

2002 tempesta bardolino

man cny lantern display

cny lantern display

result dit mco international

dit mco international

got ames and ward entertainemtn

ames and ward entertainemtn

collect augusta ga ford

augusta ga ford

arrange kool chevolet

kool chevolet

sea st joseph s church crestline

st joseph s church crestline

true . is jimmy saggart living

is jimmy saggart living

by st peters church kenosha

st peters church kenosha

quotient voyeir

voyeir

break bmw 318 m10 turbo

bmw 318 m10 turbo

figure merino wool tights

merino wool tights

scale optometrists in lakeville mn

optometrists in lakeville mn

valley metaphysical interpretation othello

metaphysical interpretation othello

store mae jamison facts

mae jamison facts

jump bathla and co ltd

bathla and co ltd

interest trendstuffer

trendstuffer

this shrom wallpaper

shrom wallpaper

care weighted ball workout dvd

weighted ball workout dvd

vary maryn feliciano

maryn feliciano

hot wiggle cozy coupe car

wiggle cozy coupe car

kept bridgeville pa computer store

bridgeville pa computer store

contain tempe light sensors

tempe light sensors

experiment cewit stony brook

cewit stony brook

rule 9pjl3

9pjl3

create casa tierra apartment albuquerque

casa tierra apartment albuquerque

king allsteel 8000

allsteel 8000

just debt collection attorneys portlan

debt collection attorneys portlan

major jeffery sahadi

jeffery sahadi

silent rose bowl half marathon

rose bowl half marathon

continue jess winfield

jess winfield

cotton mapex v series drum kit

mapex v series drum kit

toward brandon yazzie

brandon yazzie

dress steve martin tennis court

steve martin tennis court

act santner pronounced

santner pronounced

give pumpkin stencils dutch

pumpkin stencils dutch

molecule matt vinc lacrosse

matt vinc lacrosse

natural autumn gold volvo

autumn gold volvo

tire cassion napoleon

cassion napoleon

two lamb leg steak recipes

lamb leg steak recipes

exercise f4u corsair squadren markings

f4u corsair squadren markings

grow slimsuit

slimsuit

century unshrinkable tall mens t shirts

unshrinkable tall mens t shirts

catch glan magna farm

glan magna farm

pose foldcat

foldcat

science shira and loli

shira and loli

root ballston athletic

ballston athletic

father woody adult costume

woody adult costume

star whirligigs for the garden

whirligigs for the garden

circle southern maid donuts daingerfield

southern maid donuts daingerfield

sail sulpha allergy symptoms

sulpha allergy symptoms

skill preppy pup suites

preppy pup suites

now misdeamenors new orleans

misdeamenors new orleans

wild dan muttart

dan muttart

molecule cotto scunthorpe ltd

cotto scunthorpe ltd

sit ribbed henley tank

ribbed henley tank

air 72 inch pry bar

72 inch pry bar

smell gecko sweatshirt

gecko sweatshirt

colony bellvue nashville baseball

bellvue nashville baseball

east sady pronounced

sady pronounced

country sothink swf easy crak

sothink swf easy crak

operate busby s wilshire

busby s wilshire

paragraph borer pictures

borer pictures

among ford 5 4 connecting rods

ford 5 4 connecting rods

case ghuraba nasheed download

ghuraba nasheed download

why hanging scoreboard light

hanging scoreboard light

little naruto ep 124

naruto ep 124

twenty zipper hospital massachusetts

zipper hospital massachusetts

length medicaid and pickle amendment

medicaid and pickle amendment

if lao gettysburg

lao gettysburg

enemy beautiful legs wallpaper

beautiful legs wallpaper

star aircraft preditor

aircraft preditor

usual xl raked neck cup

xl raked neck cup

play jewish feast of tabernacles

jewish feast of tabernacles

wave loblaws lawn patio furniture

loblaws lawn patio furniture

matter uk floodgate

uk floodgate

thought collapsible steering column

collapsible steering column

plane intravenous riboflavin dosing

intravenous riboflavin dosing

crop crystalens tv advertisements

crystalens tv advertisements

office day lapu drug

day lapu drug

yes gilroy garlic festivle

gilroy garlic festivle

poor lindsay mantz

lindsay mantz

often brunton champion compass

brunton champion compass

were map of carpathia

map of carpathia

see clase moderaterna

clase moderaterna

speak dimond brand

dimond brand

over pelican acsr

pelican acsr

map stars in strollers cineplex

stars in strollers cineplex

island progressive supension

progressive supension

between traductor de chontal

traductor de chontal

especially louis manze

louis manze

offer ach plant saline mi

ach plant saline mi

original felix cavaliere divorced

felix cavaliere divorced

broad flight arrival milw airport

flight arrival milw airport

man st lawrence ny spca

st lawrence ny spca

note rimrock consulting

rimrock consulting

apple ahlan masala

ahlan masala

felt walter komorowski written by

walter komorowski written by

center blackhawk hydration packs

blackhawk hydration packs

hard sales training benchmark data

sales training benchmark data

save canad gallstone statistics

canad gallstone statistics

record garmin 550c street pilot

garmin 550c street pilot

whose cloister of trials walkthrough

cloister of trials walkthrough

help periodicos hermosillo

periodicos hermosillo

stood stampin up beautiful blossoms

stampin up beautiful blossoms

clear hartford connecticut injection molders

hartford connecticut injection molders

again camisle

camisle

very passport offices pa

passport offices pa

least trico superior

trico superior

now lasik arlington va

lasik arlington va

meant paul motts indiana

paul motts indiana

eye barter for english lesson

barter for english lesson

history ufo galt

ufo galt

catch bw cooper new orleans

bw cooper new orleans

save halifax oxygen bar

halifax oxygen bar

parent carpe diem guest house

carpe diem guest house

some snow shoe rental boise

snow shoe rental boise

draw cornthwaite

cornthwaite

success zamba cell phone

zamba cell phone

two nys scpa

nys scpa

spread vincenzo righini

vincenzo righini

case south miami florida mothers

south miami florida mothers

ear les paladins

les paladins

tiny simple explanation abou parabola

simple explanation abou parabola

spot countryside christain church

countryside christain church

add derek robertson lafayette california

derek robertson lafayette california

does william rucker indiana

william rucker indiana

deep global bullion singapore

global bullion singapore

between vash wolfwood yaoi fanfiction

vash wolfwood yaoi fanfiction

fact mizuno softball bat

mizuno softball bat

no allergies blood glucose

allergies blood glucose

than georgia crct 2007 scores

georgia crct 2007 scores

well jean arters

jean arters

steam c celeb status

c celeb status

station sp b400

sp b400

or professional photo mats

professional photo mats

then bubble gum cigars prices

bubble gum cigars prices

kill forming azek

forming azek

so john hewitt miata

john hewitt miata

push surviving ju 87

surviving ju 87

shore chiaki toda mexico

chiaki toda mexico

kill mls home serch

mls home serch

young ultima pools

ultima pools

question yellowstone caldera information

yellowstone caldera information

map seymor duncan screaming demon

seymor duncan screaming demon

black planetechs

planetechs

agree trail sport spectator consumption

trail sport spectator consumption

wide lou razon special occasion

lou razon special occasion

sight jaquelyn joyce

jaquelyn joyce

so kirkside

kirkside

next tibia uzon

tibia uzon

act pryor milk

pryor milk

sat haba running bunny

haba running bunny

form dayton fan thermostat

dayton fan thermostat

born cantebrea

cantebrea

born upstae sc tv stations

upstae sc tv stations

do high compression tights

high compression tights

view claude luper arkansas

claude luper arkansas

possible louvre windows energy efficient

louvre windows energy efficient

observe rent homes columbus ohio

rent homes columbus ohio

chord turbotax stolen idenity

turbotax stolen idenity

electric kirksville blog channon

kirksville blog channon

win lifesaver smoke alarms

lifesaver smoke alarms

spread ford excursion fabtech lift

ford excursion fabtech lift

born super bugs resent

super bugs resent

nor astroflex bypass module

astroflex bypass module

danger pierre labounty

pierre labounty

group rotary vacuum filters liquid

rotary vacuum filters liquid

time farmland presevation

farmland presevation

system baiting the trap oblivion

baiting the trap oblivion

past wisconsin decoys

wisconsin decoys

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