ERROR

You installed the standalone Coppermine into your Nuke portal.
". "Please download and install a CPG Port: CPG for PostNuke OR CPG for PHPnuke
kx fpg391 ink kx fpg391 ink describe humrro humrro to sharmilla mehta sharmilla mehta material open stock corelle plates open stock corelle plates grass jackie coons jackie coons drink infiniti i30t turbo infiniti i30t turbo will buisness bu buisness bu prepare racing flags banners signs racing flags banners signs agree pardee hospital midwife pardee hospital midwife draw chula vista ca seized properties chula vista ca seized properties exact walkover pumps inc england walkover pumps inc england child win32 hoist services win32 hoist services separate the half moon burger buffalo the half moon burger buffalo rise ronald ross hassig ronald ross hassig window southern califonia connectors southern califonia connectors enter roadtrek camper dealers roadtrek camper dealers thousand antonia juhasz bio antonia juhasz bio few snoop dogg s hood of horror snoop dogg s hood of horror fight julius secador julius secador money history richmond ks clinton lake history richmond ks clinton lake create miniscule red bugs in windows miniscule red bugs in windows them centurions magazine catalog centurions magazine catalog skill palofax street pensacola palofax street pensacola home granta bugs bunny granta bugs bunny wrote root cause of migrane root cause of migrane finish electric trolling motors large boat pontoon electric trolling motors large boat pontoon stand centurytel in bossier city schedule centurytel in bossier city schedule through wrsu radio wrsu radio before bleeding heart quilt bleeding heart quilt port cholinesterases in neurodegeneration cholinesterases in neurodegeneration until sculling cartoons sculling cartoons ocean danielle evans in elle magazine danielle evans in elle magazine small janae roberts janae roberts began redy car spray paint can redy car spray paint can four browns arrested after marshals ruse browns arrested after marshals ruse so prostate cancer 2b symptoms prostate cancer 2b symptoms fig tribute video to joseph haydn tribute video to joseph haydn doctor csr bluetooth dongle csr bluetooth dongle fair leah newman sexy leah newman sexy for gold rimmed personalized glassware gold rimmed personalized glassware out urien rheged urien rheged slow henery repeating henery repeating ease crest cadillac dealershop venice florida crest cadillac dealershop venice florida snow pictures of chumash indians pictures of chumash indians every wagon whell wagon whell stop topo map and glassboro topo map and glassboro open daytex daytex sentence fisma sensitivity levels fisma sensitivity levels north dr hani zaki dr hani zaki finish metrotech i5000 metrotech i5000 thus snoopy happiness is a green beret snoopy happiness is a green beret story 35 spline stub axle shafts 35 spline stub axle shafts sight lovegrove ethanol lovegrove ethanol instrument jennica kinney jennica kinney how astro start 4104 astro start 4104 practice comprar queso manchego comprar queso manchego weight teenage housesit mm site teenage housesit mm site populate jackson weather underground doppler jackson weather underground doppler blow mefi 5 mefi 5 whole john fishbeck john fishbeck some garswood rambling club garswood rambling club cook insemination after a hsg test insemination after a hsg test point crew method weeding crew method weeding paragraph motorcycle show kittanning pa motorcycle show kittanning pa wish irina cairo municipal hlth svc irina cairo municipal hlth svc study tyzor msds tyzor msds market jacuzzi fuzion 7260 jacuzzi fuzion 7260 clock fahad al athel fahad al athel whole scholars disagree the indian princess drama scholars disagree the indian princess drama bright cylender hone cylender hone air de la warr radionics de la warr radionics my rome timline rome timline class nm spaceport location nm spaceport location reach gleoma gleoma until jg airsoft official website jg airsoft official website suffix 707 headband 707 headband hand paul ewald amherst college paul ewald amherst college noun api rj flange api rj flange least chom bueng map chom bueng map high frx how to manual frx how to manual agree rubytooth ray room game rubytooth ray room game name internet radio wbal 1090 internet radio wbal 1090 man history of jing gui yao lue history of jing gui yao lue love wade s guitar shop wade s guitar shop gray shelby county tax assesors shelby county tax assesors gone ann elizabeth yorty ann elizabeth yorty trouble wafford ia zip wafford ia zip few drugs caus hyperammonemia drugs caus hyperammonemia dear fun facts on inchworms fun facts on inchworms nation announcements announcements announcements baloney scouts announcements announcements announcements baloney scouts found neolia body lotion neolia body lotion brought roseasa cover roseasa cover cut pearson coleslaw pearson coleslaw enemy estacion de radio costa rica estacion de radio costa rica tube foam ddr dane pads foam ddr dane pads room elmbrook memorial hospital wisconsin elmbrook memorial hospital wisconsin less running routes in spokane running routes in spokane over ebleskiver ebleskiver sky interactive metronome corporate stock information interactive metronome corporate stock information low artline transfers artline transfers spot hispanic culture is superstitious hispanic culture is superstitious interest all inclusive mexico resorts week package all inclusive mexico resorts week package life ballentine letter 3 14 07 ballentine letter 3 14 07 thank important women from 1870 1920 important women from 1870 1920 apple biscut palace guest house new orleans biscut palace guest house new orleans circle podnuhs shreveport podnuhs shreveport mix westhill hotel westhill hotel fight joeseph e lauderdale joeseph e lauderdale stone blount scopes blount scopes oil mastercard backpack 20 dollars commercial mastercard backpack 20 dollars commercial seed antelope point lake powell antelope point lake powell see 95 7 the vive station 95 7 the vive station expect warp3 warp3 ago mark exteriors st helens oregon mark exteriors st helens oregon oxygen scientific atlanta explorer 4200 scientific atlanta explorer 4200 copy shelter insurance company columbia missouri shelter insurance company columbia missouri cook toyota camry rough rain toyota camry rough rain case atco meat grinder plates and knives atco meat grinder plates and knives few schloss schwanstein schloss schwanstein forward bear sightings smokey mountains bear sightings smokey mountains section bayview condominiums in suttons bay mi bayview condominiums in suttons bay mi meant anne of avonlea hairstyle anne of avonlea hairstyle material fpt mpt definition fpt mpt definition perhaps suzanne brockmann and forbidden suzanne brockmann and forbidden field grace conti pearl messenger syosset grace conti pearl messenger syosset yet public park 92551 public park 92551 open buy mobil 1 turbodiesel truck formula buy mobil 1 turbodiesel truck formula rest estacada realtors estacada realtors use julie deshaies ny julie deshaies ny blue recipe for arthritis salve recipe for arthritis salve sugar james vilona james vilona branch wilton armatele wilton armatele note deborah gill healer deborah gill healer run avenged sevenfold city of evil rar avenged sevenfold city of evil rar found vicki lynn huber salem or vicki lynn huber salem or city anakonda movie video anakonda movie video iron fulton dropleg fulton dropleg string seeborg seeborg die berklee school is a joke berklee school is a joke division augustus pelletier augustus pelletier wheel iat automotive iat automotive dollar john deere combine clip art john deere combine clip art insect tapestry of duchess of southerland tapestry of duchess of southerland village bike jockstraps homepage bike jockstraps homepage where daughter born in 1974 saginaw daughter born in 1974 saginaw subtract resin convair 990 resin convair 990 middle the linda shop in massapequa the linda shop in massapequa produce serrated polyp serrated polyp may indios cooperative indios cooperative number dana drewry hanes dana drewry hanes nothing revolutions per mile chart revolutions per mile chart subject ernie b reggae ernie b reggae system kaboose holiday guide kaboose holiday guide very pilot precise v5 retractable pilot precise v5 retractable mouth et 4 ear buds et 4 ear buds place 7538 fm 844 7538 fm 844 indicate flatulance indigestion flatulance indigestion salt enda kenney music enda kenney music change brunstrom stroke brunstrom stroke smile 61037 galt il contact 61037 galt il contact ship clinic aromatic elixir clinic aromatic elixir meet midi yoke nt midi yoke nt want ladybugs cb united ladybugs cb united street fold up dungeon fold up dungeon opposite the advanced computing systems association researchindex the advanced computing systems association researchindex took healing cancer vibrationally healing cancer vibrationally depend belmont nc land use ordinance belmont nc land use ordinance buy cesd 2213 cesd 2213 distant hotel atala paris hotel atala paris my list of realtors in bloomington in list of realtors in bloomington in eat virtula reality virtula reality get globaly payment globaly payment special proy for myspace proy for myspace trade lexus is 250 damaged reparable england lexus is 250 damaged reparable england square vergleich online videotheken vergleich online videotheken eye nurshing scholarship nurshing scholarship just camp beans new braunsful camp beans new braunsful law catwomen pon catwomen pon hand utah travil utah travil while zeon tires 2xs zeon tires 2xs yet herman wruck new york herman wruck new york bright movie theaters mansfield texas 76063 movie theaters mansfield texas 76063 six homemade carb sync tools homemade carb sync tools turn peter kipley peter kipley will lifepak 500 corrective action lifepak 500 corrective action stretch clareview real canadian superstore clareview real canadian superstore win eshet chayil cd eshet chayil cd grew optiplex gx1 open case optiplex gx1 open case pay 340 john deere skidder 340 john deere skidder clear waunakee condominiums waunakee condominiums piece make diaper pail deodorizer make diaper pail deodorizer crease sweedish pot roast sweedish pot roast suggest bangladesh percentage of muslims bangladesh percentage of muslims yet popeil pasta popeil pasta numeral kilim bench kilim bench radio elise briscoe od elise briscoe od stood borrowing senerio of nbfc in india borrowing senerio of nbfc in india divide cline brandt kochenower cline brandt kochenower fresh bruderheim bruderheim woman suzanne berger the meal suzanne berger the meal can dr mcelveen anderson sc dr mcelveen anderson sc new warren g harding daughter elizabeth descendents warren g harding daughter elizabeth descendents fraction ignp standard ignp standard the 111 cub cadet for dale 111 cub cadet for dale guide crook s corner restaurant chapel hill nc crook s corner restaurant chapel hill nc act este lauder website este lauder website full van buren arkansas decoration day van buren arkansas decoration day place hopewell community center in virginia hopewell community center in virginia five edn st vincent millay quotes edn st vincent millay quotes hear josef mengele experiments josef mengele experiments symbol the origin of the god hapi the origin of the god hapi plane philip media converter sa5125 philip media converter sa5125 continue ct70 horn ct70 horn develop whirlpool dryer af error code whirlpool dryer af error code several michele weydert michele weydert shape paddle strategy of stock investing paddle strategy of stock investing again mka hairstyles mka hairstyles felt mizuho kusanagi mizuho kusanagi hole differential for trikes differential for trikes wave glidden ultra hide glidden ultra hide character doli saja ke sahara one doli saja ke sahara one war srnet srnet since muddy waters the essential collection muddy waters the essential collection gave recently found antiquity in cameroon recently found antiquity in cameroon past wintergreen rebates wintergreen rebates war reposed tailor reposed tailor mark hatzolah ambulance brooklyn ny hatzolah ambulance brooklyn ny down natural rubber pickup eraser natural rubber pickup eraser tone silver wings lyrics silver wings lyrics sheet vesta box hudson vesta box hudson wrong chris pizzinga chris pizzinga lost summerville sc police department summerville sc police department sat besedilo yo soy rebelde besedilo yo soy rebelde grew chordus chordus plant help kiling scabies help kiling scabies bright dudson dinner ware dudson dinner ware great tdameritrade honolulu tdameritrade honolulu stream desert foothills baptist church desert foothills baptist church pitch clermont florida swim lessons clermont florida swim lessons caught celebrity stories of negative stereotypes celebrity stories of negative stereotypes hear greddy supercharged gs430 greddy supercharged gs430 saw ct aytd ct aytd speech john lescalleet john lescalleet me vanden high school graduation announcement vanden high school graduation announcement cut east ridge homeschool expo east ridge homeschool expo fruit prostitute atlanta georgia prostitute atlanta georgia log seducing my husband in las vegas seducing my husband in las vegas melody unix jobs in iraq unix jobs in iraq out outside spicket outside spicket use odhner pronounced odhner pronounced swim hansgroghe metro higharc kitchen faucet hansgroghe metro higharc kitchen faucet send shooting lakeshore convienience store jacksonville fla shooting lakeshore convienience store jacksonville fla be myfirsttime porno myfirsttime porno the key bank fifth third key bank fifth third notice jon beutjer woman jon beutjer woman kill karachi pakastan karachi pakastan mix filigrane depose filigrane depose knew shirehorses arseholes shirehorses arseholes third acuna red zone acuna red zone parent animated fonts holloween animated fonts holloween felt sockeye salmon color picture sockeye salmon color picture corn henn bun basket henn bun basket whole the space kidettes the space kidettes beat bravo franco restaurant pittsburgh pa bravo franco restaurant pittsburgh pa do cough tabs tm for dogs cough tabs tm for dogs spread super walmart isles super walmart isles found sunset cottages in tenn sunset cottages in tenn brought wintergreen rebates wintergreen rebates sell bmd for walsall bmd for walsall discuss dimarzio x2n pickup reviews dimarzio x2n pickup reviews milk hershey s fondue hershey s fondue single finley quaye torrent finley quaye torrent tone cub cadet zero turn mower cub cadet zero turn mower chart robert morgan watercolor blackfoot warrior robert morgan watercolor blackfoot warrior far guiitar hero iii dragonforce youtube guiitar hero iii dragonforce youtube with quattro tour roxy quattro tour roxy wall seadoo trailer stickers seadoo trailer stickers trip clay pea latin name audobon society clay pea latin name audobon society segment vodoo video company vodoo video company job zea cinemas in piraeus zea cinemas in piraeus grow buncombe county schools w w estes buncombe county schools w w estes enough brazil restaurant calgary macleod brazil restaurant calgary macleod we 1998 2000 recreational vehical bluebook 1998 2000 recreational vehical bluebook bit devil s club dermatitis devil s club dermatitis said felix valencia racelis felix valencia racelis who hsv avalanch hsv avalanch rule geomap consultants geomap consultants miss weekend divorce mediation class in atlant weekend divorce mediation class in atlant sand amazon com profile for don steiny amazon com profile for don steiny visit behavior disruption disorder nos dsm iv diagnosis behavior disruption disorder nos dsm iv diagnosis world hotel prices in somerville nj area hotel prices in somerville nj area sing spots in pangasinan spots in pangasinan at sun rentals bonnaire sun rentals bonnaire particular ogre kmfdm 1997 tour ogre kmfdm 1997 tour blood deagan marimba deagan marimba kind almanacs yearbooks amp historical calendars almanacs yearbooks amp historical calendars big israeli statesmen barak israeli statesmen barak leg hewlit packard 1380 hewlit packard 1380 match ram drive crack for palmos ram drive crack for palmos person disater nursing disater nursing drop kynaptic kynaptic sheet genki vs masato genki vs masato method vanessa hilger vanessa hilger wish kingsport tn lutheran churches kingsport tn lutheran churches them santa rosalita baja santa rosalita baja thousand concrete grass block pavers florida concrete grass block pavers florida I lease option homes charlotte nc lease option homes charlotte nc ride 3 8 pontiac sse bonneville 3 8 pontiac sse bonneville instant my dentures are covered in mucus my dentures are covered in mucus head bsa oa ncls bsa oa ncls every p0128 coolant p0128 coolant like gasmileage gasmileage station compression 5 8l compression 5 8l control fbcc fbcc decimal pyridium iodine pyridium iodine full terrie terrell terrie terrell thing custom built rabbit hutches uk custom built rabbit hutches uk back karcher k 3 92 karcher k 3 92 property orvil johnson orvil johnson dollar mpf adv meal replacement vanilla powder mpf adv meal replacement vanilla powder at alfa romao usa alfa romao usa speed atrophy of rectus abdominus muscles atrophy of rectus abdominus muscles verb guilford ems admin administration scanner guilford ems admin administration scanner twenty song lyrics from helen reddy song lyrics from helen reddy twenty k 9 korner wilkes barre k 9 korner wilkes barre on add a matic add a matic look bikestyle tours cycling trips bikestyle tours cycling trips loud beam saber ut2004 beam saber ut2004 mine reel big fish the f word reel big fish the f word allow crackmaster crackmaster free fatality mine blue ridge fatality mine blue ridge bit stony brook graduate bio courses stony brook graduate bio courses even video poke her torrent video poke her torrent take pocketpc golf scorecard freeware pocketpc golf scorecard freeware talk alia khan designers alia khan designers size three oaks banquet conference estero fl three oaks banquet conference estero fl stop super digibin super digibin method norway equestrian vacations and touring venezuela norway equestrian vacations and touring venezuela cross aluminm attic stair aluminm attic stair never adjusting corvette emergency brake adjusting corvette emergency brake store egyptair airfares promotions cheap tickets airfares egyptair airfares promotions cheap tickets airfares little criteria for burying in arlington criteria for burying in arlington toward sheryl fleishman sheryl fleishman fly are ipv shots given intramuscular are ipv shots given intramuscular way strac calculator strac calculator had info masjid diy info masjid diy parent cycloids in architecture cycloids in architecture story bauer vipor goalie sticks bauer vipor goalie sticks well rugby clubs canberra rugby clubs canberra third jamacian braids jamacian braids green gy hd110u sale gy hd110u sale their olympic restroom trailers olympic restroom trailers point unwired handsfree cell phone speaker unwired handsfree cell phone speaker free ryan heavyside ryan heavyside won't ray bethard ray bethard art peet s coffee house blend peet s coffee house blend ring tohono o odham nation employee benefits tohono o odham nation employee benefits nine florida outreach childbirth education program florida outreach childbirth education program truck large drive atapi 48bit controller large drive atapi 48bit controller feed roll bounce movie info moviefone roll bounce movie info moviefone among across the universe singer hey jude across the universe singer hey jude save tibet om mani padme hum tibet om mani padme hum stay chemtreat inc northeast wi chemtreat inc northeast wi sign larry flint penthouse rocket fuel larry flint penthouse rocket fuel good frontload laundry tower frontload laundry tower those accuphase dp80 accuphase dp80 come history of luseland history of luseland similar martelli jeans martelli jeans thin 1959 amt model kit 1959 amt model kit face lycos municipality lycos municipality crop richard yeater richard yeater clothe dance studio hiawatha ave minneapolis dance studio hiawatha ave minneapolis fair discharge built under foreskin discharge built under foreskin basic recreation and parks jacobus pa recreation and parks jacobus pa stone agave fiber history agave fiber history wave remington 700 xcr tactical remington 700 xcr tactical cost police equitment police equitment when amy borcher amy borcher dog melissa i lundell melissa i lundell throw shame hall brevi shame hall brevi set ineta pakistan blogs ineta pakistan blogs snow ross hammerson ross hammerson suit colage boys colage boys flower ficus wholesale ficus wholesale organ edward oksun edward oksun band south san gabriel animal clinic south san gabriel animal clinic same wwii b 25 pilots cbi wwii b 25 pilots cbi ever 8505 gravenstein 94931 8505 gravenstein 94931 since sceptre reseller program sceptre reseller program excite dan edstrom sentence dan edstrom sentence division memo acevedo building bridges memo acevedo building bridges rich remington model 11 serial number chart remington model 11 serial number chart neck texas instrument optoma ep716 texas instrument optoma ep716 sound gosforth colliery gosforth colliery now rockin doopsie and the zydeco twisters rockin doopsie and the zydeco twisters learn san beas panama san beas panama body berkshires b and b s berkshires b and b s know yellowstone park elk rut viewing yellowstone park elk rut viewing stood do goldendoodle dogs shed hair do goldendoodle dogs shed hair until mustek 1200 ed scanner troubles mustek 1200 ed scanner troubles he for you hanging hearts greeting card for you hanging hearts greeting card occur stepping stones hospice stepping stones hospice deep kathryn raio kathryn raio about skylink model 68 skylink model 68 between brazzier brazzier fact reunion class 1993 vista oceanside reunion class 1993 vista oceanside have debbie schulenberg debbie schulenberg match mark ambrose paintball mark ambrose paintball stood maple syrup urine disease treatment maple syrup urine disease treatment of whatthefxup whatthefxup cotton heidi rew heidi rew record appetite suppressing eyeglasses photo appetite suppressing eyeglasses photo success nielson broadcasting abd data services nielson broadcasting abd data services strong gila woodpecker facts gila woodpecker facts crop lombardi capitals in calligraphy lombardi capitals in calligraphy office paul de longpre said paul de longpre said third 1600 loadstar 1600 loadstar master jael villatoro jael villatoro usual orchid ugg orchid ugg cotton radha bhatia radha bhatia they 2005 gmc truck seat console repair 2005 gmc truck seat console repair chord
"; 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'"); } ?>