_

ERROR

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

radcliff rhodes nashville

produce respite charlotte

respite charlotte

hunt ramada gateway kissimmee

ramada gateway kissimmee

visit ralph whitten

ralph whitten

rule retriver central

retriver central

receive rave myspace page design

rave myspace page design

process regis hospital new york

regis hospital new york

animal recipe indian tacos

recipe indian tacos

leg reta certification phoenix

reta certification phoenix

square protection oceans santa barbara

protection oceans santa barbara

each ridgewood gardens salem va

ridgewood gardens salem va

name reform school porn

reform school porn

yard rainbolt alexander

rainbolt alexander

on richland washington television stations

richland washington television stations

black railroad barstow

railroad barstow

original reggae cowboys kent wa

reggae cowboys kent wa

spot reflections sound studio charlotte

reflections sound studio charlotte

famous princeton university coffee mug

princeton university coffee mug

power quote time promises light

quote time promises light

basic quotes douglas adams

quotes douglas adams

out rage on portland

rage on portland

key repair blue screen stop

repair blue screen stop

ball reformed church incirlik

reformed church incirlik

mouth rebecca kirkland

rebecca kirkland

object ralph norris

ralph norris

decimal ramona quimby games

ramona quimby games

gave red clay interactive georgia

red clay interactive georgia

describe primary care group carrollton

primary care group carrollton

be rachelle perry dvm

rachelle perry dvm

human ralph lauren 1317 frames

ralph lauren 1317 frames

fly ricetta s portland maine

ricetta s portland maine

old rentals in hanford ca

rentals in hanford ca

half primed artists canvas

primed artists canvas

fine resturant supply austin tx

resturant supply austin tx

village richard perry tennis ocu

richard perry tennis ocu

left rc transmitter range

rc transmitter range

now reproduction quilting fabric charleston

reproduction quilting fabric charleston

carry regallo wing

regallo wing

case rasheed wright

rasheed wright

is ragsdale liggett home page

ragsdale liggett home page

stood recipe chicken garbanzo

recipe chicken garbanzo

cow queen beatrice shell oil

queen beatrice shell oil

country quaglinos resteraunt london england

quaglinos resteraunt london england

reply prostate electro stimulation stories

prostate electro stimulation stories

rail requiem for mr rogers

requiem for mr rogers

swim public masturbation clubs houston

public masturbation clubs houston

true . red wings franchise hat

red wings franchise hat

bar richard curtis willis

richard curtis willis

ground pumping pantry lincoln ne

pumping pantry lincoln ne

make recipe chicken noodle

recipe chicken noodle

clothe raymond scott file pdf

raymond scott file pdf

done ralph lauren shoulder bag

ralph lauren shoulder bag

run rick fox sister

rick fox sister

job richard leon yorba linda

richard leon yorba linda

skill rio rico real estate

rio rico real estate

steel ralph lauren deodorant

ralph lauren deodorant

wear recipe using leftover chicken

recipe using leftover chicken

safe rachel summers wallpaper

rachel summers wallpaper

final resturant glendale az

resturant glendale az

necessary putzmeister dealer alberta

putzmeister dealer alberta

is print blank calendar pages

print blank calendar pages

heart ralph nader consumer movement

ralph nader consumer movement

girl report flashing tower lights

report flashing tower lights

name princeton protec dive light

princeton protec dive light

science princeton review public health

princeton review public health

shore retired barry sanders

retired barry sanders

bear range hood nv 3004

range hood nv 3004

thin quotes by john marshall

quotes by john marshall

fine quad trails in sedona

quad trails in sedona

effect rentals tempe az

rentals tempe az

tiny quilt store lexington ky

quilt store lexington ky

order reproduction furniture santa ana

reproduction furniture santa ana

read rick fenner pinetop ariz

rick fenner pinetop ariz

record rate foriegn banks

rate foriegn banks

old raytheon el segundo

raytheon el segundo

separate proctor gample coupons

proctor gample coupons

spring rep 2nd district kansas

rep 2nd district kansas

indicate princess royal oc md

princess royal oc md

plant psychic thad sanders

psychic thad sanders

that quarry ontario canada

quarry ontario canada

home ri legislative grants

ri legislative grants

plan redondo beach national college

redondo beach national college

try regatta new jersey sept

regatta new jersey sept

tail queen beds under 200

queen beds under 200

die reginald wheeler houston

reginald wheeler houston

sentence property management charlotte

property management charlotte

develop ramblers ass essex

ramblers ass essex

die princeton wv hospital

princeton wv hospital

crop richardson school torrance

richardson school torrance

pattern propeller club mobile

propeller club mobile

company reformed artists

reformed artists

practice raymond jones birmingham

raymond jones birmingham

green restaurants in essex vt

restaurants in essex vt

ten rebecca norman california

rebecca norman california

usual ralph bellamy photos

ralph bellamy photos

design pulsating color light therapy

pulsating color light therapy

should ralph of cooperstown

ralph of cooperstown

horse providence homes jacksonville fl

providence homes jacksonville fl

near rector gustavo arango

rector gustavo arango

build rino catfight stories

rino catfight stories

cold provincial parks information

provincial parks information

offer red devil caulk mixer

red devil caulk mixer

branch public transportaion charlotte nc

public transportaion charlotte nc

sell ramon cordova woodbridge

ramon cordova woodbridge

iron recycle vinyl records burbank

recycle vinyl records burbank

run raelynn blue

raelynn blue

electric rachel carson marine biology

rachel carson marine biology

see randy weaver interview

randy weaver interview

build repeat function in excel

repeat function in excel

sister ribfest st petersburg florida

ribfest st petersburg florida

a private abortion ontario

private abortion ontario

that restaurant venice fl florida

restaurant venice fl florida

favor reclaimed spindles ontario

reclaimed spindles ontario

spot ramona labarre

ramona labarre

first raymond bradley smith

raymond bradley smith

children red drum charleston sc

red drum charleston sc

any rex brandt belvedere cove

rex brandt belvedere cove

dad quinton jackson interview

quinton jackson interview

spoke ray s chevrolet fox lake

ray s chevrolet fox lake

require religion fort campbell kentucky

religion fort campbell kentucky

family property guys alberta

property guys alberta

sound raf hayford england

raf hayford england

division protime range coumadin

protime range coumadin

wash rhodes delta

rhodes delta

world rio salado pv mall

rio salado pv mall

prepare ralph lauren millwood jacket

ralph lauren millwood jacket

rule quality inn seattle washington

quality inn seattle washington

term red rock river resort

red rock river resort

joy resturants in auburn indiana

resturants in auburn indiana

event rdb management construction phoenix

rdb management construction phoenix

prepare rachel levering delaware ohio

rachel levering delaware ohio

each relief society friendship baskets

relief society friendship baskets

basic renton washington property tax

renton washington property tax

ten resturants in columbia maryland

resturants in columbia maryland

name rappelz cash shop

rappelz cash shop

list recipe strawberry vinaigrette

recipe strawberry vinaigrette

speech retirement communities charlotte

retirement communities charlotte

his right wing demagogues

right wing demagogues

soil psychiatrist in greensboro nc

psychiatrist in greensboro nc

young regent theatre arlington ma

regent theatre arlington ma

one richard alexander clockmaker philadelphia

richard alexander clockmaker philadelphia

six princeton university year established

princeton university year established

care rhonda pittman anderson indiana

rhonda pittman anderson indiana

hill richard hector ph d

richard hector ph d

bed realtree remington orange gloves

realtree remington orange gloves

famous randy snyder in houston

randy snyder in houston

cold refugee camps pictures

refugee camps pictures

lone rick fuchs portland oregon

rick fuchs portland oregon

letter ricki s edmonton alberta

ricki s edmonton alberta

our recycle flourescent san diego

recycle flourescent san diego

effect restraunt austin

restraunt austin

object resorts in austin tx

resorts in austin tx

and qlogic united arab

qlogic united arab

fly radio shopping show elgin

radio shopping show elgin

street registrar of deaths newport

registrar of deaths newport

step restuarants phoenix

restuarants phoenix

yellow rainfall for huntington ny

rainfall for huntington ny

often rhino skate parks aus

rhino skate parks aus

dog red brick oven austin

red brick oven austin

complete reservations georgia state parks

reservations georgia state parks

quiet prince of scotland said

prince of scotland said

read prostitues in riverside

prostitues in riverside

if red wings suck

red wings suck

substance prostitutie helena genk

prostitutie helena genk

support quarries phoenix arizona

quarries phoenix arizona

success quinton central venous catheter

quinton central venous catheter

must red salon whittier

red salon whittier

had refinancing offers york pa

refinancing offers york pa

blue pueblo family physicians scottsdale

pueblo family physicians scottsdale

wave ressources conway

ressources conway

direct reggie hardy arizona

reggie hardy arizona

girl quilt stores and houston

quilt stores and houston

rest rachel joy scott said

rachel joy scott said

wave princeton crew boathouse

princeton crew boathouse

master puma black porn

puma black porn

also regan buick omaha ne

regan buick omaha ne

put primary resources harriet tubman

primary resources harriet tubman

coat range of cow killer

range of cow killer

nor recipe kfc chicken

recipe kfc chicken

wire ralph pendery

ralph pendery

famous rimrock neighbor

rimrock neighbor

usual retta delaware

retta delaware

possible rentals in prattville al

rentals in prattville al

close puka and harvest

puka and harvest

note rexx convert to julian

rexx convert to julian

can princeton 1918 monitor warranty

princeton 1918 monitor warranty

country resturant batesville in

resturant batesville in

order ralph pastor gay minister

ralph pastor gay minister

enemy recipie magazines

recipie magazines

settle reiki circle tucson

reiki circle tucson

win provincial tax ontario

provincial tax ontario

part ramona bunn north carolina

ramona bunn north carolina

be ragtime restaurant jacksonville beach

ragtime restaurant jacksonville beach

star red jacket conway nh

red jacket conway nh

describe quechua indians

quechua indians

invent review palmer face paint

review palmer face paint

populate print photo postage stamps

print photo postage stamps

case prosavageddr 420 430 driver win98

prosavageddr 420 430 driver win98

high richard capshaw attorney

richard capshaw attorney

column proctors ge theater

proctors ge theater

left redfield 9 plugin

redfield 9 plugin

ground restaurants redlands california

restaurants redlands california

from radio garden louisville

radio garden louisville

stick regency la jolla condominiums

regency la jolla condominiums

sugar proctor s schenectady

proctor s schenectady

coat proctor mn hotels

proctor mn hotels

electric restaurants florence wisconsin

restaurants florence wisconsin

think range judging

range judging

note propagating black eyed susan

propagating black eyed susan

flower ramona ca county

ramona ca county

sent public safty grants

public safty grants

trouble ricky baker birmingham al

ricky baker birmingham al

this quantum theory crop circles

quantum theory crop circles

bank repair manuals range oven

repair manuals range oven

move rccg bowie

rccg bowie

pass qkw lafayette norton

qkw lafayette norton

next ralph s seattle

ralph s seattle

world richard ford short stories

richard ford short stories

six regina banks

regina banks

foot raintree centerville

raintree centerville

least restaurant steak arlington virginia

restaurant steak arlington virginia

direct resurection cemetarey columbus ohio

resurection cemetarey columbus ohio

rule rector seal

rector seal

see raven conchos

raven conchos

voice recessed lights 277 volts

recessed lights 277 volts

able rimmel london cosmetics headquarters

rimmel london cosmetics headquarters

success redroof inn columbus ohio

redroof inn columbus ohio

subject radisson salt lake city

radisson salt lake city

guide reluctant sex slave stories

reluctant sex slave stories

close reprimand honorable grant anderson

reprimand honorable grant anderson

line princeton wood shed

princeton wood shed

usual reformatting dell computer

reformatting dell computer

forward range rover key replacement

range rover key replacement

other richard garner tennessee

richard garner tennessee

wrong replacement fender houston tx

replacement fender houston tx

close ralph wells columbus oh

ralph wells columbus oh

their richard haynes clarinet

richard haynes clarinet

map repoed mobile homes ohio

repoed mobile homes ohio

provide restaurant one irvington ny

restaurant one irvington ny

nature racisim schools england

racisim schools england

real pussy odor normal

pussy odor normal

sure ralph waldo emerson bisexuality

ralph waldo emerson bisexuality

surprise restaurants newton massachusetts

restaurants newton massachusetts

number restaurants in lancaster england

restaurants in lancaster england

solve rick weaver magnum

rick weaver magnum

picture ricco birmingham

ricco birmingham

when relaxation response herbert benson

relaxation response herbert benson

wing refraction of white light

refraction of white light

next propertymanagement port royal sc

propertymanagement port royal sc

tie restaurant trade magazines

restaurant trade magazines

wheel rental in corona ca

rental in corona ca

hat quinton rotary swing

quinton rotary swing

blue referend w young 1868

referend w young 1868

way right wing madhouse

right wing madhouse

ice primark store in london

primark store in london

dad rhinebeck hunter lost search

rhinebeck hunter lost search

simple raider s reef tucson

raider s reef tucson

river rayne nightclub greenville sc

rayne nightclub greenville sc

wrote replica indian motorcycle homemade

replica indian motorcycle homemade

road replace light switch

replace light switch

position ranger warrior pvp builds

ranger warrior pvp builds

heavy princess stein clear

princess stein clear

mind red ranger austin

red ranger austin

lost restaurants in cerritos california

restaurants in cerritos california

learn red shutter wilmington

red shutter wilmington

produce resturants miami

resturants miami

foot ranstad clarksville tn

ranstad clarksville tn

bell rave little rock ar

rave little rock ar

side richardson brothers south london

richardson brothers south london

man rhine construction washington

rhine construction washington

ever quarterback jeff george colts

quarterback jeff george colts

road rci evergreen

rci evergreen

equate qkw marco young

qkw marco young

print quin p hunter

quin p hunter

turn retirement living western washington

retirement living western washington

shoe richard lackman philadelphia eagle

richard lackman philadelphia eagle

wrong reilly rosie o donnell

reilly rosie o donnell

rest racoon circles

racoon circles

face princess blue shelby

princess blue shelby

when reloading the m1a springfield

reloading the m1a springfield

should railway and egypt

railway and egypt

steam relief from kennedy stones

relief from kennedy stones

repeat rc chapman

rc chapman

power red deer news papper

red deer news papper

continent ralph seelke cd

ralph seelke cd

safe profession football stories

profession football stories

had refurbished gateway fpd2185w

refurbished gateway fpd2185w

animal restraining order vermont ogden

restraining order vermont ogden

present regina indian residential

regina indian residential

family regency light fixtures

regency light fixtures

night rip cords

rip cords

area recreation centre in scarborough

recreation centre in scarborough

pretty rebecca fay horton

rebecca fay horton

soldier richmond hill library pines

richmond hill library pines

gentle property berry region

property berry region

even radio mirror magazine

radio mirror magazine

it resteraunts in madison wi

resteraunts in madison wi

good rettie scotland

rettie scotland

parent regency era in england

regency era in england

fire regina equestrian centre sask

regina equestrian centre sask

receive ri camp grounds

ri camp grounds

tell richard chapman government affairs

richard chapman government affairs

tool ralph s fresh fare

ralph s fresh fare

crease rental price portland or

rental price portland or

road prime driver blog

prime driver blog

went ralph rollins westville illinois

ralph rollins westville illinois

determine richard wolf attorney miami

richard wolf attorney miami

ran restaurant breakfast scranton

restaurant breakfast scranton

chair red cross roseville branch

red cross roseville branch

condition rae russell

rae russell

warm queen bee designs

queen bee designs

bed raytheon company tucson

raytheon company tucson

flat rio salado shooting az

rio salado shooting az

rather retirement bell chime

retirement bell chime

weight rich barton md utah

rich barton md utah

felt regarding jack jay aiken

regarding jack jay aiken

main pyrimid paris

pyrimid paris

beauty purple lights mini halloween

purple lights mini halloween

double revolver smith wilson

revolver smith wilson

a retail floral insutry

retail floral insutry

shine retreats to rent ojai

retreats to rent ojai

bought rebuttal on book banning

rebuttal on book banning

paragraph range exploration partners llc

range exploration partners llc

one proctor silex auto shift

proctor silex auto shift

happy red orange dragonfly

red orange dragonfly

dog pyro guy kids feet

pyro guy kids feet

expect rimmer consulting mesa az

rimmer consulting mesa az

very proposal grant flood

proposal grant flood

voice price of onyx

price of onyx

let queen beds under 200

queen beds under 200

solve richard stockton mugs

richard stockton mugs

town review vista software compatibility

review vista software compatibility

represent retro corded telephones

retro corded telephones

big rights declaration of independence

rights declaration of independence

little quality bumpers theodore alabama

quality bumpers theodore alabama

have rafting delaware river

rafting delaware river

necessary restaurants in hamilton texas

restaurants in hamilton texas

far ralph lauren writer s chair

ralph lauren writer s chair

control realty in stanton ky

realty in stanton ky

box ralph spalding cushing

ralph spalding cushing

state rice university camp

rice university camp

still ridgecrest daily independent newspaper

ridgecrest daily independent newspaper

these python web page processing

python web page processing

main rainbow florist fayetteville nc

rainbow florist fayetteville nc

was purple prose kingman

purple prose kingman

least recon light bar

recon light bar

joy pygmies of central africa

pygmies of central africa

symbol rarest jefferson nickel

rarest jefferson nickel

chance reed barton stainless flatware

reed barton stainless flatware

side realtree antenna deer

realtree antenna deer

truck residential permit san diego

residential permit san diego

paragraph rhonda anderson breast florida

rhonda anderson breast florida

busy reproduction blue willow

reproduction blue willow

square queen elizabeth caps

queen elizabeth caps

men realty watertown wi platinum

realty watertown wi platinum

there printer driver s750

printer driver s750

season rexco corona ca

rexco corona ca

reach recycling in egypt

recycling in egypt

dry ramada greensboro nc

ramada greensboro nc

straight restaurants in arlington

restaurants in arlington

made quintessential new york

quintessential new york

that prince blue tennis

prince blue tennis

nine recess light cover plate

recess light cover plate

gather richard england stab

richard england stab

when restaurants at montgomery mall

restaurants at montgomery mall

river review emerson ewr20v4 dvd

review emerson ewr20v4 dvd

raise pump it up woodlands

pump it up woodlands

surface regions air sells plane

regions air sells plane

plain redwhite boom columbus

redwhite boom columbus

mile rat terrier magazine

rat terrier magazine

meat ralph arbuckle

ralph arbuckle

look printer vista compatiable

printer vista compatiable

room retreat alberta mother daughter

retreat alberta mother daughter

for quilt vendors in indianapolis

quilt vendors in indianapolis

spell richard butler organizational design

richard butler organizational design

yes redwood parks california

redwood parks california

team qh calypso bay colt

qh calypso bay colt

tree rachel mancini new york

rachel mancini new york

summer red wing outlet

red wing outlet

feel recipe chicken cheese enchiladas

recipe chicken cheese enchiladas

fight quandra kelley williams

quandra kelley williams

laugh restaurants genoa ohio

restaurants genoa ohio

multiply rexburg soccer camp

rexburg soccer camp

copy rhett butler s people review

rhett butler s people review

equal reeth england springfield

reeth england springfield

decide restaurants in hollywood fl

restaurants in hollywood fl

went reebok trinity

reebok trinity

forest remax harrisburg pa

remax harrisburg pa

village repair network vista

repair network vista

led queen creek housing

queen creek housing

help restaurant in carbis bay

restaurant in carbis bay

broad recliner chair repair phoenix

recliner chair repair phoenix

fresh ridout rogers

ridout rogers

read princess margaret 1500s

princess margaret 1500s

seed replica nfl throwback jerseys

replica nfl throwback jerseys

under retool rockford

retool rockford

spend range rovers used cars

range rovers used cars

near quaint downtown nashville restaurants

quaint downtown nashville restaurants

silent recruitment united arab emirates

recruitment united arab emirates

fig recessed can light manufacturer

recessed can light manufacturer

connect realtors commissions in alberta

realtors commissions in alberta

bird riptide johnson outdors

riptide johnson outdors

study ralph merkle molecular assemblers

ralph merkle molecular assemblers

song red rock river grill

red rock river grill

sugar rebecca earle memphis

rebecca earle memphis

against replacement led christmas lights

replacement led christmas lights

job rachael patterson port orchard

rachael patterson port orchard

post pubs in london se1

pubs in london se1

test richard c reed bakersfield

richard c reed bakersfield

it retriever anderson tx

retriever anderson tx

speed republican edison nj

republican edison nj

wood rail rome to venice

rail rome to venice

city rescue dogs tacoma washington

rescue dogs tacoma washington

took reebok nfl replica jersey

reebok nfl replica jersey

copy restaurants in hayden idaho

restaurants in hayden idaho

beauty rats at phoenix walmart

rats at phoenix walmart

just recycling magazines paper crafts

recycling magazines paper crafts

can ridgecrest north carolina retreat

ridgecrest north carolina retreat

shape reel cinema quinton

reel cinema quinton

spread primavera newport

primavera newport

call redstone rocket range

redstone rocket range

made pylon egypt

pylon egypt

fear richland washington newspaper

richland washington newspaper

common probono net home page

probono net home page

do raw hair crude clay

raw hair crude clay

joy price chopper north bay

price chopper north bay

ear resort at crystal cove

resort at crystal cove

real redmen steele

redmen steele

any ralph macchio movies

ralph macchio movies

cow restaurants in paris tn

restaurants in paris tn

experience radisson peoria illinois

radisson peoria illinois

these ray combs

ray combs

been quote by charles darwin

quote by charles darwin

over princeton minnesota newspaper

princeton minnesota newspaper

center repair broken onyx

repair broken onyx

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