ERROR

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

pyruvate louisville ky

hand retail electricity rates delaware

retail electricity rates delaware

pick ralph lauren home collect

ralph lauren home collect

be regina williams howard university

regina williams howard university

parent rack pinon

rack pinon

neighbor queen creek neighborhoods

queen creek neighborhoods

song rathjen kansas

rathjen kansas

guess reformed new testament commintary

reformed new testament commintary

or princeton university lacrosse tickets

princeton university lacrosse tickets

wash ramona fire 2007

ramona fire 2007

salt ramel bradley pictures

ramel bradley pictures

night property showcase mobile homes

property showcase mobile homes

five recipe turkey orange marmalade

recipe turkey orange marmalade

port regal cinema el cajon

regal cinema el cajon

nine rachel ray magazine picnic

rachel ray magazine picnic

notice proctor family

proctor family

foot quintons

quintons

enter richard petty irl drivers

richard petty irl drivers

wire print out sports valentines

print out sports valentines

nothing princeton windrows retirement

princeton windrows retirement

love red lobster greensboro nc

red lobster greensboro nc

suggest ralph landry

ralph landry

oh raymond lee gregory

raymond lee gregory

by ridgefield wildlife refuge washington

ridgefield wildlife refuge washington

put putnam valley ny storage

putnam valley ny storage

salt quincey dozier

quincey dozier

chord radio dealers scranton

radio dealers scranton

wrong range rover utah

range rover utah

order richard h jackson ireland

richard h jackson ireland

nothing rashawn patterson

rashawn patterson

under rental properties tucson

rental properties tucson

woman red wing 4471

red wing 4471

brought rep gilmore

rep gilmore

before rip hunter

rip hunter

over representative waxman home page

representative waxman home page

don't regal cinema wellington fl

regal cinema wellington fl

until restaurants chino california

restaurants chino california

did rci enterprises austin

rci enterprises austin

gun restaurants in miami florida

restaurants in miami florida

shoulder quaternary georgian bay

quaternary georgian bay

shall richard hennessey west hartford

richard hennessey west hartford

other red light abatement act

red light abatement act

cut princeton e s insurance

princeton e s insurance

enter psychiatrists hampton va

psychiatrists hampton va

believe regency south austin texas

regency south austin texas

range psychologist tucson sullivan

psychologist tucson sullivan

village report portia shoe

report portia shoe

let recipe chicken salad sandwitch

recipe chicken salad sandwitch

seem quotations from dawson s creek

quotations from dawson s creek

skill prudential realestate eagle river

prudential realestate eagle river

me promised valley

promised valley

quick rays outdoors melbourne

rays outdoors melbourne

ago raninu camp

raninu camp

ride property taxes pocahontas county

property taxes pocahontas county

also razr v3m drivers

razr v3m drivers

crowd rental listings monticello florida

rental listings monticello florida

let remax karen fisher

remax karen fisher

are reflected light measure unit

reflected light measure unit

gave residence paris opera

residence paris opera

dog princeton plainsboro hospital

princeton plainsboro hospital

pattern reviews dacor epicure range

reviews dacor epicure range

determine red river valley softball

red river valley softball

help qualified vendor list faa

qualified vendor list faa

steam prince george royal lepage

prince george royal lepage

receive pronounce ivan lins

pronounce ivan lins

any property taxes scottsdale

property taxes scottsdale

four rebecca coy

rebecca coy

square princeton community education

princeton community education

get racecourse pub uttoxeter england

racecourse pub uttoxeter england

king rachel campbell pinnacle

rachel campbell pinnacle

allow restaurants in ogden

restaurants in ogden

continent prime lp business miami

prime lp business miami

pound restaurants in cerritos

restaurants in cerritos

lie reid s charlotte north carolina

reid s charlotte north carolina

yet raging hard on stories

raging hard on stories

hundred rio verde university online

rio verde university online

surface ramchandani houston

ramchandani houston

know rhodes and marshall scholarship

rhodes and marshall scholarship

correct replacement light sockets

replacement light sockets

front randy white osha anchorage

randy white osha anchorage

did resturants huntington beach

resturants huntington beach

spend ralph onstad

ralph onstad

fit ralph malfara

ralph malfara

same resale emporium carmel valley

resale emporium carmel valley

fun ranger smith patagonia shoes

ranger smith patagonia shoes

friend reindeer british columbia

reindeer british columbia

change research newton boys gang

research newton boys gang

pattern rare exception home page

rare exception home page

several railroad washington indiana

railroad washington indiana

only restuarant tucson

restuarant tucson

than provincial legislation ontario

provincial legislation ontario

in properties of sodium chloride

properties of sodium chloride

distant quotes by ralph nader

quotes by ralph nader

gather restaurants in camden nj

restaurants in camden nj

sister psalms wings

psalms wings

full ramada new hartford ny

ramada new hartford ny

meat rainwear stories

rainwear stories

total rechargable votive lights

rechargable votive lights

drive ralph mendez

ralph mendez

guide rest in peace tombstone

rest in peace tombstone

star proces de guy cloutier

proces de guy cloutier

mile princeton west virginia hotels

princeton west virginia hotels

several proctor silex juice it

proctor silex juice it

depend restaurants gordon ramsay

restaurants gordon ramsay

paint review dell 2407 lcd

review dell 2407 lcd

use rhona cameron

rhona cameron

those printable snowflake patterns

printable snowflake patterns

above reesa jones

reesa jones

either railroad injury lawyers houston

railroad injury lawyers houston

dollar rhys thomas tennis camp

rhys thomas tennis camp

five randy wilson thornton

randy wilson thornton

next radiant heat blue board

radiant heat blue board

solve rentals in central nj

rentals in central nj

six religious radio arlington va

religious radio arlington va

joy rat terriers cash valu

rat terriers cash valu

such rainn wilson visits scranton

rainn wilson visits scranton

subject restaurant in sheffield

restaurant in sheffield

create radio harrisburg

radio harrisburg

floor ralph waynes backyard nationals

ralph waynes backyard nationals

write pump jacks scaffold

pump jacks scaffold

page reception decoration rentals houston

reception decoration rentals houston

keep rasar campground washington state

rasar campground washington state

evening quail lakes clovis

quail lakes clovis

include rag daddy s arlington

rag daddy s arlington

evening proctor gamble corporate address

proctor gamble corporate address

their pueblo indians cochiti

pueblo indians cochiti

voice rick hendrix of charleston

rick hendrix of charleston

teeth publishers service of peoria

publishers service of peoria

head psychologists woodlands

psychologists woodlands

won't quotes about marrying young

quotes about marrying young

mass restaurant tok de monterrey

restaurant tok de monterrey

sister restaraunt front royal va

restaraunt front royal va

rail raido wales

raido wales

fig quilters square lexington kentucky

quilters square lexington kentucky

mountain qemu run on vista

qemu run on vista

speech recipe chicken capris

recipe chicken capris

high rented accomodation london

rented accomodation london

turn revlon home page mascara

revlon home page mascara

out residential electric inc bloomington

residential electric inc bloomington

laugh radiata stories friends guide

radiata stories friends guide

open rhystic circle

rhystic circle

gave recreation warehouse arlington

recreation warehouse arlington

left printable eagle heads

printable eagle heads

grand reebok ny giants jerseys

reebok ny giants jerseys

single quattro s pleasnat valley

quattro s pleasnat valley

pose recepies london broil

recepies london broil

best red sox water globe

red sox water globe

next productor musica latina miami

productor musica latina miami

post priscilla buck augusta maine

priscilla buck augusta maine

miss racism fiction stories

racism fiction stories

key resorts in tyler tx

resorts in tyler tx

triangle rhodes baker alpharetta

rhodes baker alpharetta

full princeton online art lessons

princeton online art lessons

hit reccord beaver ny

reccord beaver ny

spell refuse shafter california

refuse shafter california

of ramona the brave summary

ramona the brave summary

let ralph nader 2000 election

ralph nader 2000 election

energy ray lahood jacksonville office

ray lahood jacksonville office

sentence property values in birmingham

property values in birmingham

determine retail management positions delaware

retail management positions delaware

against psot office montgomery tx

psot office montgomery tx

yet prision at new river

prision at new river

blue resilience be strong

resilience be strong

river queen elizabeth ll biography

queen elizabeth ll biography

record ralph b crossman

ralph b crossman

one rafting alberta

rafting alberta

post pug jack russel cross

pug jack russel cross

common richard blevins real estate

richard blevins real estate

play racoon in indian means

racoon in indian means

book ramada center lexington ky

ramada center lexington ky

insect rei west hartford

rei west hartford

fig relson gracie austin tx

relson gracie austin tx

among rex awards portland

rex awards portland

chair ramada newton park burton

ramada newton park burton

move range maytag electric

range maytag electric

grass reed barton laurel stainless

reed barton laurel stainless

wide ri roger williams college

ri roger williams college

wide ragland speciality printing

ragland speciality printing

how reinert photo new york

reinert photo new york

total red trailer light lens

red trailer light lens

wild rimer enterprises

rimer enterprises

father price mobile ease ford

price mobile ease ford

what providence hotel new york

providence hotel new york

never rats paris restaurants

rats paris restaurants

strange rachel marie quinton

rachel marie quinton

simple review dell 1521

review dell 1521

claim residence inn green bay

residence inn green bay

that rachael taylor tits

rachael taylor tits

green rashid k shabazz cleveland

rashid k shabazz cleveland

may regal edwards theatres

regal edwards theatres

tall ralph v weinhold

ralph v weinhold

subject rachel ray wing recipe

rachel ray wing recipe

fine public library northport mi

public library northport mi

dress puyallup washington sewing

puyallup washington sewing

slip qkw elizabeth williams

qkw elizabeth williams

observe radio lexington kentucky

radio lexington kentucky

roll rick wetzel new jersey

rick wetzel new jersey

gun rhodes ida

rhodes ida

triangle raymond armstrong miami

raymond armstrong miami

receive ralph true duck call

ralph true duck call

cause quail valley middle snowline

quail valley middle snowline

event quinton schaefer blanco tx

quinton schaefer blanco tx

keep promiseland austin

promiseland austin

repeat restaurant range hoods

restaurant range hoods

engine range rover code 17

range rover code 17

rub quilt show lucas centre

quilt show lucas centre

saw ralph spillers

ralph spillers

move prison camp life

prison camp life

meat red brown orange chalcedony

red brown orange chalcedony

silent pumkins creamcheese roll

pumkins creamcheese roll

beauty rave theatre houston

rave theatre houston

drive rhonda tucker az

rhonda tucker az

in raymond scroggins decatur illinois

raymond scroggins decatur illinois

any rallypoint tennis greenville ma

rallypoint tennis greenville ma

be princeton nj recreational homes

princeton nj recreational homes

nature queen black metal headboards

queen black metal headboards

down ridgecrest library

ridgecrest library

numeral quadratic driver head componet

quadratic driver head componet

brown rio verde slp

rio verde slp

noon repo mobile homes az

repo mobile homes az

sand recording studio knoxville area

recording studio knoxville area

that relocating to juneau

relocating to juneau

pass resil mojares short story

resil mojares short story

fish princess coloring pages

princess coloring pages

soft pubs in hamilton ontario

pubs in hamilton ontario

climb ramona pavillion

ramona pavillion

tall protrait of andrew jackson

protrait of andrew jackson

human princeton eating disorder institution

princeton eating disorder institution

ship rebecca walker cherokee indian

rebecca walker cherokee indian

have registered plans ontario

registered plans ontario

take queen elizabeth 2 timeline

queen elizabeth 2 timeline

big red rooster columbus oh

red rooster columbus oh

lead princeton city schools

princeton city schools

up realtors in woodstock ct

realtors in woodstock ct

toward property sales ardmore waterford

property sales ardmore waterford

box rick springfield bruce

rick springfield bruce

rather recycling center valencia

recycling center valencia

side pse stamps

pse stamps

ocean retirement home birmingham alabama

retirement home birmingham alabama

lift rainfall in egypt

rainfall in egypt

corn richard clayton jensen

richard clayton jensen

which princeton punlic library

princeton punlic library

hold replacing silverado wheel bearings

replacing silverado wheel bearings

log review charlotte s web book

review charlotte s web book

syllable recipe chicken crumble

recipe chicken crumble

locate research grants undergraduate

research grants undergraduate

ride richard berry radiologist

richard berry radiologist

prepare pros consof banning books

pros consof banning books

shell proposition 67 washington

proposition 67 washington

observe quitman isd

quitman isd

hope reviews ozzy washington dc

reviews ozzy washington dc

has quotes and marion barry

quotes and marion barry

continent ralph lauren deodorant

ralph lauren deodorant

probable ramona osburn

ramona osburn

son professional flat iron

professional flat iron

page rex paris

rex paris

men raleigh science camps

raleigh science camps

went print newsletters san diego

print newsletters san diego

might representative mike thompson congress

representative mike thompson congress

care prince royal 03

prince royal 03

bit reloading tucson

reloading tucson

find reformed witness cremation

reformed witness cremation

care rice plumbing tucson

rice plumbing tucson

leg purtee columbus ohio

purtee columbus ohio

to reincarnation emmet fox review

reincarnation emmet fox review

good richard auerbach madison wisconsin

richard auerbach madison wisconsin

true . rainbow indian clothing surrey

rainbow indian clothing surrey

soldier restarant brooklyn jolie

restarant brooklyn jolie

energy prision break fox

prision break fox

world pygostyle chicken

pygostyle chicken

wave review marmot phoenix jacket

review marmot phoenix jacket

organ red mist wales

red mist wales

page richard thomas monroe michigan

richard thomas monroe michigan

second ramona salazar

ramona salazar

once regina lamar whitewolf

regina lamar whitewolf

poor rimming london owo

rimming london owo

ease rio salado ged

rio salado ged

work ricoh caplio g4 driver

ricoh caplio g4 driver

tube richard rodgers phoenix

richard rodgers phoenix

young rick welch pro hunter

rick welch pro hunter

second ricky sanders carrboro

ricky sanders carrboro

chick red cypress columns

red cypress columns

west raford r wilson

raford r wilson

bit previous toro models

previous toro models

hold richard burke oxford ct

richard burke oxford ct

children ralph andrew garner

ralph andrew garner

paragraph puerto bay rio hotel

puerto bay rio hotel

with restore newark habitat

restore newark habitat

done resturants in phoenix az

resturants in phoenix az

broke princeton nj houses

princeton nj houses

once riptide knotts berry farm

riptide knotts berry farm

ease queen elizabeth i hobbes

queen elizabeth i hobbes

wave ricky langley

ricky langley

the pyramidal pine

pyramidal pine

fruit rentals derby kansas schools

rentals derby kansas schools

shoe realtors augusta maine

realtors augusta maine

noise resolution robert b parker

resolution robert b parker

drink red strawberry stopper

red strawberry stopper

less put in bay campground

put in bay campground

clean ralph magazine erin banning

ralph magazine erin banning

what prince kent south carolina

prince kent south carolina

home realtors arlington portland oregon

realtors arlington portland oregon

especially report to marshall bluewell

report to marshall bluewell

listen princeton apostles campng

princeton apostles campng

salt recreation flathead valley

recreation flathead valley

skin rdm enterprises temple texas

rdm enterprises temple texas

order raging rivers alton

raging rivers alton

kept racing crew shirt phoenix

racing crew shirt phoenix

short queen elizabeth crown

queen elizabeth crown

view ralph roybal

ralph roybal

third ralph tyler education

ralph tyler education

populate richard scott cherry hill

richard scott cherry hill

final prison break fox

prison break fox

pay qkw j taylor

qkw j taylor

enter prosperity bank jacksonville

prosperity bank jacksonville

for restaurant empire game tips

restaurant empire game tips

sugar propane gas alpine ca

propane gas alpine ca

provide pyzanos castro valley

pyzanos castro valley

dictionary print scrapbooking pages

print scrapbooking pages

open rickey deville morris

rickey deville morris

check radeon 9100 vista

radeon 9100 vista

final rich rosette los angeles

rich rosette los angeles

straight prints of black women

prints of black women

include review imperial palace casino

review imperial palace casino

women review metropolitan hotel athens

review metropolitan hotel athens

port psychiatrists in ontario

psychiatrists in ontario

brother propane light fixture

propane light fixture

offer raedon 9200 drivers

raedon 9200 drivers

grass pug rescue missouri black

pug rescue missouri black

while relocation portland oregon

relocation portland oregon

direct quit jelly roll

quit jelly roll

five quincea era stories

quincea era stories

such reid jones mcrorie

reid jones mcrorie

bad reel deal los alamos

reel deal los alamos

spell ralph lauren thompson

ralph lauren thompson

bring rcm e magazine

rcm e magazine

rich remax central inc

remax central inc

by queen elizabeth epitaphs

queen elizabeth epitaphs

lie radio 1550 vancouver washington

radio 1550 vancouver washington

left richmond lester

richmond lester

plane richard anderson apex engineering

richard anderson apex engineering

happy raechel ward

raechel ward

race radio casa fm

radio casa fm

grass reserve rv summit ridge

reserve rv summit ridge

throw professional administrative assistant magazines

professional administrative assistant magazines

time relc centre

relc centre

force princeton new jersey florist

princeton new jersey florist

hot printable story about grandparents

printable story about grandparents

column rehabilitation services washington dc

rehabilitation services washington dc

gone recipe spelt cinnamon rolls

recipe spelt cinnamon rolls

take quarterly tower light

quarterly tower light

always richard hensley potter

richard hensley potter

supply reloaded ammunition houston

reloaded ammunition houston

brown redheaded black

redheaded black

step regal harrisburg theater

regal harrisburg theater

dog pugs springfield vi

pugs springfield vi

cell replacemnt cords small appliances

replacemnt cords small appliances

skin ribbon net christmas lights

ribbon net christmas lights

sudden rgis springfield mo

rgis springfield mo

left redlands dental group

redlands dental group

track rhinoplasty tucson az

rhinoplasty tucson az

force radio station 96 9 phoenix

radio station 96 9 phoenix

ever richmond j webb

richmond j webb

each restraunts ontario california

restraunts ontario california

end rca jack adapters

rca jack adapters

straight regal beloit anaheim

regal beloit anaheim

silver property mansfield ohio

property mansfield ohio

perhaps railroal model craftsman magazine

railroal model craftsman magazine

though receiver corona

receiver corona

them recreation indiana university bloomington

recreation indiana university bloomington

piece reinstall 1 1 vista

reinstall 1 1 vista

opposite redfield ny zip code

redfield ny zip code

ear richey edwards manic

richey edwards manic

mother ralph maughn wolf

ralph maughn wolf

desert reid farrell houston

reid farrell houston

govern ray lester friendship force

ray lester friendship force

whether radisson hotel columbia sc

radisson hotel columbia sc

fresh ray brasswell kansas city

ray brasswell kansas city

money prosimmon lady driver

prosimmon lady driver

planet printing in greenville sc

printing in greenville sc

snow rebecca greer

rebecca greer

very ric home page airport

ric home page airport

syllable ramada limited hotel tucson

ramada limited hotel tucson

village rio rico arizona map

rio rico arizona map

begin principles of banking kansas

principles of banking kansas

cover public broadcast omaha

public broadcast omaha

both rhodora lenox

rhodora lenox

parent restoration theatre england

restoration theatre england

broad radiology inc tucson

radiology inc tucson

new price waterhouse melbourne

price waterhouse melbourne

ever rich tompa knoxville tn

rich tompa knoxville tn

present repo cars ontario canada

repo cars ontario canada

sing radio stations in austin

radio stations in austin

be reed barton palladium

reed barton palladium

colony railroaders museum altoona pa

railroaders museum altoona pa

station quilting magazine

quilting magazine

hot radisson flagstaff gardens

radisson flagstaff gardens

branch rio verde golf course

rio verde golf course

nothing recycling rover rescue

recycling rover rescue

roll rio grande valley porn

rio grande valley porn

double red wing 4418

red wing 4418

came primed piedmont tech college

primed piedmont tech college

yard range kitchen appliance

range kitchen appliance

syllable religion omaha public library

religion omaha public library

had rialto in tucson

rialto in tucson

spend propagate yucca

propagate yucca

on ramada dawson creek

ramada dawson creek

stream queen anne royal cherries

queen anne royal cherries

grass rhino coat flagstaff

rhino coat flagstaff

position red light plc program

red light plc program

complete ridgecrest myspace

ridgecrest myspace

room ramona the song

ramona the song

every right angle power cord

right angle power cord

sugar realty companies in flagstaff

realty companies in flagstaff

of priscilla marie jones georgia

priscilla marie jones georgia

hard reamax sheridan wyoming

reamax sheridan wyoming

favor ripley power and light

ripley power and light

hot retirement land cleveland tennessee

retirement land cleveland tennessee

sing pubmed central homepage

pubmed central homepage

noise rector helmets

rector helmets

dead rip van winkle story

rip van winkle story

know ps2 walkthroughs the sims

ps2 walkthroughs the sims

finger red verbena

red verbena

very ramona boudreaux

ramona boudreaux

connect rahman williams

rahman williams

mean resturants in galena il

resturants in galena il

bought research affiliates pasadena

research affiliates pasadena

during redondo beach pets

redondo beach pets

joy restaurant corner booth

restaurant corner booth

won't rex harrison actor

rex harrison actor

just request for proposals alberta

request for proposals alberta

system pueblo el mirage

pueblo el mirage

month rentals torrance

rentals torrance

sharp rebuilding credit columbus library

rebuilding credit columbus library

has restaurants paris ontario

restaurants paris ontario

same ranger flats 1996 boat

ranger flats 1996 boat

log red sedona dirt

red sedona dirt

again red devil panties

red devil panties

help princeton high top

princeton high top

they ralphs place dartmouth

ralphs place dartmouth

beauty rexall innovations ontario

rexall innovations ontario

find razorback football camps

razorback football camps

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