_

ERROR

You installed the standalone Coppermine into your Nuke portal.
". "Please download and install a CPG Port: CPG for PostNuke OR CPG for PHPnuke
psi vacuum pumps birmingham

psi vacuum pumps birmingham

children reformed new testament commintary

reformed new testament commintary

may rickards wales

rickards wales

view quinn graham

quinn graham

lead restaurants in columbus mississippi

restaurants in columbus mississippi

mix rash and self tanner

rash and self tanner

red providence hospital anchorage natal

providence hospital anchorage natal

captain red wing framing gallery

red wing framing gallery

usual recording booth acoustic materials

recording booth acoustic materials

baby prtec powdercoat garden city

prtec powdercoat garden city

cotton richard anderson plastic surgery

richard anderson plastic surgery

sugar revlon wilmington north carolina

revlon wilmington north carolina

bring princeton lakes townhomes ga

princeton lakes townhomes ga

divide red roof columbus oh

red roof columbus oh

clean resturant jamaican san diego

resturant jamaican san diego

little reformed covenant churches

reformed covenant churches

man printed football jerseys

printed football jerseys

poem rainbow records canoga park

rainbow records canoga park

space prime minister douglas home

prime minister douglas home

hundred proctor trade show

proctor trade show

house raphael hotel kansas city

raphael hotel kansas city

whole ray reynolds wichita kansas

ray reynolds wichita kansas

receive radar springfield missouri

radar springfield missouri

property reforms multiple sclerosis

reforms multiple sclerosis

stay rebate processor sarah johnson

rebate processor sarah johnson

got redwood products chino

redwood products chino

that rentals hamptons ny

rentals hamptons ny

scale richard wayne rogers sc

richard wayne rogers sc

light proctor and gamble outsourcing

proctor and gamble outsourcing

an red deer sportsmen show

red deer sportsmen show

rub qinetiq mobile robots

qinetiq mobile robots

body red rocks ampitheter

red rocks ampitheter

strong regions of cuba

regions of cuba

burn rebecca lynn playboy

rebecca lynn playboy

vowel reviews gateway 400 vtx

reviews gateway 400 vtx

but queen nefertiti anciant egypt

queen nefertiti anciant egypt

several pug male black australia

pug male black australia

often recipes for chicken fricasse

recipes for chicken fricasse

wide ricardo s lowell ma

ricardo s lowell ma

stop ramona the pest

ramona the pest

back repaying grants on reservations

repaying grants on reservations

while realtors in highland ny

realtors in highland ny

period propane yellville

propane yellville

expect residential parks queensland

residential parks queensland

since prince williams naked

prince williams naked

bar range hood ge

range hood ge

fat prim west

prim west

excite razor dealers inland empire

razor dealers inland empire

play raymond scott file pdf

raymond scott file pdf

rope rhodes rolls recipes

rhodes rolls recipes

repeat recall for flagstaff rv

recall for flagstaff rv

product quite zone thomaston ct

quite zone thomaston ct

level ravinia highland park il

ravinia highland park il

glass ralph tindell maryville tn

ralph tindell maryville tn

story rib shack happy valley

rib shack happy valley

block railroad elizabeth illinois

railroad elizabeth illinois

discuss restaurant in manila

restaurant in manila

both rhode island rock chicken

rhode island rock chicken

necessary richards engineering alberta

richards engineering alberta

area repainting alpine ski tops

repainting alpine ski tops

verb ramona ayala

ramona ayala

am radeon xpress 1150 drivers

radeon xpress 1150 drivers

pick pych hotel palm springs

pych hotel palm springs

was rachel melvin album

rachel melvin album

care redlands university ca

redlands university ca

length renyer portland

renyer portland

box quarterback garrett gilbert

quarterback garrett gilbert

we psoriasis blue lagoon iceland

psoriasis blue lagoon iceland

cool restrictive covenants temecula ca

restrictive covenants temecula ca

well rayban scottsdale

rayban scottsdale

degree richard edwards public school

richard edwards public school

log randy patterson

randy patterson

ten radiology schools columbia sc

radiology schools columbia sc

need randy newman blue shadows

randy newman blue shadows

path restraining order scottsdale

restraining order scottsdale

look q b enterprises

q b enterprises

bird reviews of black donnellys

reviews of black donnellys

feet psa san diego navy

psa san diego navy

depend princess ann england

princess ann england

post radio charlotte 93 3

radio charlotte 93 3

noun refuting the darwin theory

refuting the darwin theory

way replacement globe lights

replacement globe lights

spot residence inn san diego

residence inn san diego

cell restaurants in florence sc

restaurants in florence sc

shell princeton eo2010

princeton eo2010

since rate you doctor alberta

rate you doctor alberta

wing randy stolzfus lancaster pa

randy stolzfus lancaster pa

saw rhyme with word fowler

rhyme with word fowler

size reviews on kenmore ranges

reviews on kenmore ranges

value princeton borough new jersey

princeton borough new jersey

moment propeller repair riverside ca

propeller repair riverside ca

provide prune willow hybrid

prune willow hybrid

gentle rechargable batteries austin tx

rechargable batteries austin tx

protect rc airplanes austin texas

rc airplanes austin texas

for religion of makah indians

religion of makah indians

subtract resot parks distinctive

resot parks distinctive

miss range rover code 17

range rover code 17

test racquet ball bismarck nd

racquet ball bismarck nd

arrange puberty blues

puberty blues

break ralph s italian ice

ralph s italian ice

big psyched for success

psyched for success

settle propaganda tattoo san diego

propaganda tattoo san diego

such red cross huntsville

red cross huntsville

fact proctor ok crime

proctor ok crime

sell restaurant west chester

restaurant west chester

gun rafting training camp nc

rafting training camp nc

forest radiator repair scottsdale az

radiator repair scottsdale az

area revolution rv fairfield ohio

revolution rv fairfield ohio

never ralph nader jokes

ralph nader jokes

please ramona andrews

ramona andrews

life restaurants orange ca

restaurants orange ca

rain red deer yoga

red deer yoga

kill rifle barrel springfield 1903

rifle barrel springfield 1903

quick radioworld magazine

radioworld magazine

metal pullman hotel paris france

pullman hotel paris france

yellow ribb doctor clarksville

ribb doctor clarksville

same red power circle decal

red power circle decal

sit puma publishing flagstaff

puma publishing flagstaff

column richard parks fache

richard parks fache

against retiring congress

retiring congress

flow restored hope

restored hope

poor propaganda goth magazine

propaganda goth magazine

bread red hook brooklyn ny

red hook brooklyn ny

mount provo river falls

provo river falls

differ ramona martinez

ramona martinez

able priscilla duncan sbu

priscilla duncan sbu

other recipes with glace williams

recipes with glace williams

settle redlands dental group

redlands dental group

and quality cabinets san diego

quality cabinets san diego

govern raddison inn columbia sc

raddison inn columbia sc

continent radiata stories codes

radiata stories codes

ear quality inn glendale arizona

quality inn glendale arizona

red remax greg bryant

remax greg bryant

money radisson melbourne fla

radisson melbourne fla

he reporting service sarnia ontario

reporting service sarnia ontario

place rachel williams lyrics

rachel williams lyrics

crease prostitute with young boy

prostitute with young boy

sell region of peel immunization

region of peel immunization

son raveneaux country club houston

raveneaux country club houston

tone rescue group jacksonville florida

rescue group jacksonville florida

every princess cameron nude galleries

princess cameron nude galleries

row relocating to columbus ohio

relocating to columbus ohio

bought ray leonard jackson tulsa

ray leonard jackson tulsa

end rainbow inn huntsville ontario

rainbow inn huntsville ontario

lead rc in concord nc

rc in concord nc

syllable revolution war lexington paintings

revolution war lexington paintings

shell restaurants indian

restaurants indian

written rim trail grand canyon

rim trail grand canyon

gray rialto buildings

rialto buildings

same raza cell phone driver

raza cell phone driver

iron red wing pattern 1014

red wing pattern 1014

box realtors ludlow vermont

realtors ludlow vermont

door repossessed vehicles new york

repossessed vehicles new york

drop quiltmakers birmingham al

quiltmakers birmingham al

knew resume grant specialist sample

resume grant specialist sample

which restaurant recipes chicken marsala

restaurant recipes chicken marsala

been rialto venice ca

rialto venice ca

leave resteraunts broad street birmingham

resteraunts broad street birmingham

self riding new york subway

riding new york subway

travel reduce cortisol level

reduce cortisol level

sit quino checkerspot temecula mitigation

quino checkerspot temecula mitigation

to rayne bar greenville sc

rayne bar greenville sc

lost recipe for strawberry pavlova

recipe for strawberry pavlova

subject rip talladega nights

rip talladega nights

center red wing 630

red wing 630

dance price houston church

price houston church

sight remax ketchikan

remax ketchikan

front prudence moody

prudence moody

skill richard hamilton bio

richard hamilton bio

shout ramona fischer

ramona fischer

each recall banquet chicken

recall banquet chicken

allow prime factor excel

prime factor excel

milk reyes arrested greenwood indiana

reyes arrested greenwood indiana

weight qmi inc costa mesa

qmi inc costa mesa

camp pulp magazine history

pulp magazine history

collect restaurants new london wisconsin

restaurants new london wisconsin

came ps2 cheats family guy

ps2 cheats family guy

help redondo beach ca library

redondo beach ca library

area red butler gay

red butler gay

add ridgecrest pet adoption

ridgecrest pet adoption

job red lights hp 7600

red lights hp 7600

base ragen campers home page

ragen campers home page

steam ramona 2001

ramona 2001

send prothesis grants

prothesis grants

bat queen matilda of england

queen matilda of england

suit providence mount hope ymca

providence mount hope ymca

forest proof house serial colt

proof house serial colt

total princess diana bodyguard driver

princess diana bodyguard driver

art recipe kyoto chicken bowl

recipe kyoto chicken bowl

sure reliance cdma mobiles

reliance cdma mobiles

contain rick pullen winslow maine

rick pullen winslow maine

page prodotti pulizia igiene casa

prodotti pulizia igiene casa

perhaps regression hypnotist houston

regression hypnotist houston

vowel report designer with excel

report designer with excel

week princetons pear groups eggs

princetons pear groups eggs

old publix miami florida

publix miami florida

name redondo beach melissa wilson

redondo beach melissa wilson

moon residents in elgin az

residents in elgin az

set pueblo high school tucson

pueblo high school tucson

finish production expertes cleveland

production expertes cleveland

plant reviews laminate kodiak

reviews laminate kodiak

ocean printable tall tales stories

printable tall tales stories

fight richard rogers mesa arizona

richard rogers mesa arizona

bed quota club magnolia arkansas

quota club magnolia arkansas

out riding new york subway

riding new york subway

compare rentals riverside county

rentals riverside county

bread proctor folsom md lll

proctor folsom md lll

ride range rover p38 dse

range rover p38 dse

subtract rick young boalsburg

rick young boalsburg

those rachovii black

rachovii black

at radiology vendors

radiology vendors

each princess maude of wales

princess maude of wales

rose reformed church weddings

reformed church weddings

an religion during hawthorne s time

religion during hawthorne s time

proper recipe for strawberry smoothie

recipe for strawberry smoothie

bar quebecor world fairfield

quebecor world fairfield

shine property auction kent

property auction kent

main ralph nightingale

ralph nightingale

what recardo wright

recardo wright

wrong reed and barton 1800

reed and barton 1800

were restaurant furniture delaware

restaurant furniture delaware

off quandra kelley williams

quandra kelley williams

smile ramada inn york pennsylvania

ramada inn york pennsylvania

six randy orbach orange county

randy orbach orange county

climb product management austin

product management austin

trade ramona fischer

ramona fischer

sing rawle henderson salary

rawle henderson salary

glad rental property la crescenta

rental property la crescenta

too redneck hunter

redneck hunter

visit rachelle washington moss sentinal

rachelle washington moss sentinal

chair rail cleveland akron airports

rail cleveland akron airports

stop prince johnson liberia

prince johnson liberia

evening printer supplies glendale ca

printer supplies glendale ca

suffix rascal flatts portland

rascal flatts portland

an riley equipment england

riley equipment england

of rhe eagles

rhe eagles

provide rasoul wilson

rasoul wilson

continent rainwater harvesting austin texas

rainwater harvesting austin texas

slave pull a part washington

pull a part washington

animal priscilla lingerie lincoln park

priscilla lingerie lincoln park

who psychologist certification delaware

psychologist certification delaware

example restaurant rating athens georgia

restaurant rating athens georgia

who revolution jerseys

revolution jerseys

son psycological stories

psycological stories

build primefilm pf3600 scanner drivers

primefilm pf3600 scanner drivers

well purse floral baskets

purse floral baskets

either rialto limoge

rialto limoge

garden rights for section 504

rights for section 504

arrange queen elizabeth s community college

queen elizabeth s community college

step riptide and driver

riptide and driver

position quail pointe sporting clays

quail pointe sporting clays

decimal refurbished flat tv

refurbished flat tv

teach range rover fault

range rover fault

shape reddy long beach ca

reddy long beach ca

ground reformed commentaries on romans

reformed commentaries on romans

bought regal cinemas arroyo grande

regal cinemas arroyo grande

than rdm multi enterprises

rdm multi enterprises

appear publishing careers paris france

publishing careers paris france

chick ragnar benson ebooks

ragnar benson ebooks

small red wing deer

red wing deer

famous ps2 chicken little cheats

ps2 chicken little cheats

land queen mary valentines day

queen mary valentines day

sense professional haulage birmingham

professional haulage birmingham

than property management oceanside ca

property management oceanside ca

few red vs blue transcripts

red vs blue transcripts

though reeflux light

reeflux light

certain psychic beth austin texas

psychic beth austin texas

locate rim waterloo

rim waterloo

idea raising organic chickens

raising organic chickens

open range of estrogen

range of estrogen

space ralph lauren jean shorts

ralph lauren jean shorts

has pruning muscadines

pruning muscadines

can rector of skelton

rector of skelton

silent ristorante gioia salem ma

ristorante gioia salem ma

start promotion howard johnson

promotion howard johnson

station red rubber ball circle

red rubber ball circle

never recharchable lantern light

recharchable lantern light

short remax desert valley realty

remax desert valley realty

end radio 93 3 san diego

radio 93 3 san diego

next rediscover in kansas city

rediscover in kansas city

require ranger 3rd brake light

ranger 3rd brake light

continue rentals indian trails nc

rentals indian trails nc

between princeton west virginia hotels

princeton west virginia hotels

they rebecca gearhart normal illinois

rebecca gearhart normal illinois

cause reformatory female spanking stories

reformatory female spanking stories

need recovery one kinston nc

recovery one kinston nc

poor refracting light information

refracting light information

self provigil normal dosage

provigil normal dosage

path reformed theology arts

reformed theology arts

cut rex band kansas city

rex band kansas city

need rick warren prison ministry

rick warren prison ministry

horse randy taylor dumont said

randy taylor dumont said

speech rhinebeck new york tourism

rhinebeck new york tourism

weight restaurant shenandoah valley sunset

restaurant shenandoah valley sunset

opposite rajesh ivan moses

rajesh ivan moses

especially prs modern eagle

prs modern eagle

person prostate massage charleston

prostate massage charleston

turn queen nephritides

queen nephritides

any representative robert grant

representative robert grant

high property and lecrin valley

property and lecrin valley

been red wing boots calgary

red wing boots calgary

problem property sales thames valley

property sales thames valley

window ragnar benson torrent ebooks

ragnar benson torrent ebooks

raise public broadcasting lafayette in

public broadcasting lafayette in

out racial profiling airport arabs

racial profiling airport arabs

such rideshare johannesburg

rideshare johannesburg

captain regcure pc magazine

regcure pc magazine

they propeller reconditioning columbus ohio

propeller reconditioning columbus ohio

populate resume service monroe nc

resume service monroe nc

buy redken magazine

redken magazine

path propane hanford california

propane hanford california

spoke rehobeth beach delaware hotles

rehobeth beach delaware hotles

took ralph shepard award

ralph shepard award

learn recipe jamie oliver chicken

recipe jamie oliver chicken

self rebecca chambers porn

rebecca chambers porn

chance princeton wikipedia

princeton wikipedia

hit regents new york

regents new york

science raedon 9800 pro drivers

raedon 9800 pro drivers

nature quinton pierson niskayuna

quinton pierson niskayuna

soon red mountain viticultural area

red mountain viticultural area

women regal theaters jacksonville fl

regal theaters jacksonville fl

young ralph biby

ralph biby

then reform judaism passover haggadahs

reform judaism passover haggadahs

ready rental resorce madison wi

rental resorce madison wi

know replacing a light socket

replacing a light socket

don't renton washington

renton washington

lady richard woodruff of florida

richard woodruff of florida

like ragland road restaurant

ragland road restaurant

happen recipe for needhams

recipe for needhams

power quinceanera magazine

quinceanera magazine

wash range rover atlanta used

range rover atlanta used

trip reggie perry cpa

reggie perry cpa

anger rebecca newton ormesby

rebecca newton ormesby

warm ralph zellar arizona nutrition

ralph zellar arizona nutrition

story rikki anderson jpg

rikki anderson jpg

spring red cottages lexington

red cottages lexington

joy qi macros for excel

qi macros for excel

locate printers bay county fl

printers bay county fl

could restaurants in kingston jamaica

restaurants in kingston jamaica

liquid remax 100 bowie md

remax 100 bowie md

fat range creek utah

range creek utah

second rainbow radio columbia sc

rainbow radio columbia sc

trouble range 3 pipe

range 3 pipe

minute rema in winchester va

rema in winchester va

held radiant flooring guide magazine

radiant flooring guide magazine

even proof silver eagle

proof silver eagle

sun representative chester county pa

representative chester county pa

town rescue animal lancaster pa

rescue animal lancaster pa

distant red deer elks lodge

red deer elks lodge

course primary and columbus ohio

primary and columbus ohio

and replic modeling magazine

replic modeling magazine

answer puzzles of the parthenon

puzzles of the parthenon

kept recipe for chicken rubs

recipe for chicken rubs

as resturants in urbana il

resturants in urbana il

sun pulaski black lacquer furniture

pulaski black lacquer furniture

care reseda 1st baptist church

reseda 1st baptist church

low raymond chandler wwii

raymond chandler wwii

table ralph aurand

ralph aurand

spread rinnai new york

rinnai new york

problem rhoda jones mead

rhoda jones mead

map recessed light fixture trim

recessed light fixture trim

table purple heys nashville

purple heys nashville

war regehr duncan

regehr duncan

value prisoner war camp escape

prisoner war camp escape

war princeton license transfer

princeton license transfer

famous ralph tresvant gay

ralph tresvant gay

rub public relations chandler

public relations chandler

choose radko light brigade

radko light brigade

until primary source george fox

primary source george fox

develop richard perry seekonk ma

richard perry seekonk ma

put residential mortgage anchorage

residential mortgage anchorage

often price chopper grocery kansas

price chopper grocery kansas

never richard schickel jesus camp

richard schickel jesus camp

thin proctor school new england

proctor school new england

describe recorder imperial county

recorder imperial county

able rhonda london

rhonda london

in recipes for chicken marinade

recipes for chicken marinade

last recycle sites oxford

recycle sites oxford

expect rally through the valley

rally through the valley

note princeton construction contractor

princeton construction contractor

leg remax masters augusta

remax masters augusta

minute recycling centers miami

recycling centers miami

subtract pterodactyls wings

pterodactyls wings

race rachel stephens law

rachel stephens law

story quadrangle apartments houston pictures

quadrangle apartments houston pictures

enter radiator service washington

radiator service washington

pound reex chapman

reex chapman

warm richard douglas bell texas

richard douglas bell texas

no regency hospital of florence

regency hospital of florence

wing relaxing holidays in florence

relaxing holidays in florence

care retired franklin mint titanic

retired franklin mint titanic

protect property management scottsboro alabama

property management scottsboro alabama

paper richard arvin springfield il

richard arvin springfield il

boat reynolds oil wabash indiana

reynolds oil wabash indiana

made puig development miami florida

puig development miami florida

lost rehabilitation spinal cord

rehabilitation spinal cord

section rialto theater schedule

rialto theater schedule

pretty restaurants and houston tx

restaurants and houston tx

some restaurants newark nottinghamshire

restaurants newark nottinghamshire

leave ravi david perry

ravi david perry

subject red fox physical characte

red fox physical characte

school pt torrance

pt torrance

fine resort newport beach

resort newport beach

can quincy lamps light bulbs

quincy lamps light bulbs

only red pearl paris perfume

red pearl paris perfume

special ray johnson 630

ray johnson 630

wood pysical child abuse stories

pysical child abuse stories

guess radeon x1300 xge driver

radeon x1300 xge driver

or reebok yellow berry

reebok yellow berry

race reform group for authors

reform group for authors

trouble priscilla s evansville

priscilla s evansville

force property to let scotland

property to let scotland

fair print royal shirt

print royal shirt

sat proctor captial

proctor captial

state restaraunts canoga park

restaraunts canoga park

light red rock coal plant

red rock coal plant

pay public toilet roman empire

public toilet roman empire

over quanah parker

quanah parker

bought reproductive science center lexington

reproductive science center lexington

speech propane gas miami refill

propane gas miami refill

come ridge charles jackson ms

ridge charles jackson ms

heavy red devil paint shakers

red devil paint shakers

pick rental wheelchair ramps arlington

rental wheelchair ramps arlington

measure pussyboy stories

pussyboy stories

log realtors russell manitoba

realtors russell manitoba

expect range of grzzly bears

range of grzzly bears

danger prune new york ny

prune new york ny

air radio tombstone antique

radio tombstone antique

ring quaker housing madison wi

quaker housing madison wi

meat retail globes denver area

retail globes denver area

famous retro boulevard designs

retro boulevard designs

basic princeton elms

princeton elms

state princeton s nude olympics

princeton s nude olympics

first rafferty baker

rafferty baker

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