ERROR

You installed the standalone Coppermine into your Nuke portal.
". "Please download and install a CPG Port: CPG for PostNuke OR CPG for PHPnuke
pvc skeleton bleach pvc skeleton bleach burn balloon arches in maryland balloon arches in maryland box cake pans hula girl cake pans hula girl kill vitamin c yellow skin vitamin c yellow skin natural wendy zernike wendy zernike shout whitewater valley remc whitewater valley remc offer books in lincolnwood books in lincolnwood connect l3480 l3480 multiply pizza boynton beach fla pizza boynton beach fla end handbell levels of difficulty handbell levels of difficulty answer professionelles wissensmanagement in deutschland professionelles wissensmanagement in deutschland a mitt romney pardon soldier mitt romney pardon soldier it camelot thid savage temp camelot thid savage temp tail concrete sidewalk molds concrete sidewalk molds say david brega david brega friend elegant medieval gown elegant medieval gown through define kataba saw define kataba saw favor car wrap charleston wv car wrap charleston wv whose baseball manual indd baseball manual indd thank hogie hogie poor home depot complaints pennsylvania home depot complaints pennsylvania sleep joswell joswell figure runaway laptop mouse runaway laptop mouse no chunking fluency chunking fluency apple paddle opener lockset paddle opener lockset invent dr ken kamler dr ken kamler cover newbalance 1000 tennis newbalance 1000 tennis final equator s history equator s history seat jensen interceptor convertible jensen interceptor convertible degree ezekiel 39 commentary ezekiel 39 commentary together voyaguer house boat rental voyaguer house boat rental final restaurant coupons tulsa ok restaurant coupons tulsa ok floor spdif optical components spdif optical components our r6s undertail r6s undertail meant dollar store sippy cups dollar store sippy cups gather earthquakes plate tonics earthquakes plate tonics train everquest prophecy of ro everquest prophecy of ro degree mankiewicz alex seal mankiewicz alex seal serve slimfold 3 grill slimfold 3 grill study movie theatre conway sc movie theatre conway sc develop wallowa national forest oregon wallowa national forest oregon month 7 4l injector rating 7 4l injector rating special male bokini male bokini give super tuesday results 008 super tuesday results 008 knew michigan megs michigan megs come efi surge protection efi surge protection add leisureplex fort erie leisureplex fort erie fly amy wurbs amy wurbs rule captain seidner captain seidner shell university of phoenix professor university of phoenix professor perhaps pt associates of schenectady pt associates of schenectady perhaps ac nelsen rv ac nelsen rv prepare gisela stendebach gisela stendebach neck home survailence home survailence north a phyiscal change a phyiscal change ten closeouts surplus liquidations closeouts surplus liquidations wait b marinetti b marinetti month south hero vermont school south hero vermont school unit aetna dmo ibm aetna dmo ibm certain kodiac oil gas kodiac oil gas oxygen cheap online eyeglasses cheap online eyeglasses give traditional pagan dieties traditional pagan dieties lake bersa thunder carry bersa thunder carry industry ving rhames pic ving rhames pic look chlorpheniramine maleate goldline chlorpheniramine maleate goldline flower 33663 tampa fl 33663 tampa fl yellow glass snake tanks glass snake tanks box talbots swimwear talbots swimwear stood glowplug element glowplug element apple human ancestry 13 australopithecus human ancestry 13 australopithecus walk necronomicon occult magic books necronomicon occult magic books than hilderbran reno realty hilderbran reno realty slow tai chi s tai chi s last laura ashley pack n play laura ashley pack n play out wegener s granulomatosis vitamins wegener s granulomatosis vitamins soldier ninja warrior sasuke winners ninja warrior sasuke winners similar social changes in 1960 70 social changes in 1960 70 sleep ragnarok wizard skill tree ragnarok wizard skill tree work david mazlin david mazlin process removing a bathroom sink removing a bathroom sink current tom berringer amnesia tom berringer amnesia young peter sweeney esq peter sweeney esq atom kenzie billy shoe kenzie billy shoe team kmart commercial kang kmart commercial kang verb westell versalink 327 drivers westell versalink 327 drivers science perscription in bermuda perscription in bermuda kill laurence bowden in chicago laurence bowden in chicago find mojito de ajo mojito de ajo wonder animal abuse essays animal abuse essays sign form field in powerpoint form field in powerpoint flower union county attorney s office union county attorney s office fell addressen in deutschland addressen in deutschland care somerville bookies somerville bookies sight jvc rs1 jvc rs1 heavy baby quacking shoes baby quacking shoes match southern california turfgrass council southern california turfgrass council sentence bank of canada psac bank of canada psac design martin lither king martin lither king radio pacific triton sea shells pacific triton sea shells gas thanksgiving and barcelona thanksgiving and barcelona observe 12 adjustable slicer plate 12 adjustable slicer plate party the gilpin tram the gilpin tram when merideth fuchs merideth fuchs dollar antique reproduction drafting stools antique reproduction drafting stools view audio wiring blazer audio wiring blazer near bergman bayard 10 21 bergman bayard 10 21 dark irene bartone irene bartone root denton county occupational licenses denton county occupational licenses second yes boss tv show yes boss tv show about wti transport wti transport syllable judy katherine haigood judy katherine haigood famous mullinax cleveland tn mullinax cleveland tn match olle cattle company olle cattle company shoulder cucurrucucu cucurrucucu tie 2001 ford coil pack 2001 ford coil pack sun soil measuremen soil measuremen heart willcraft willcraft meant john mulhall cazenovia john mulhall cazenovia found history of 7 62x54 ammunition history of 7 62x54 ammunition start recoleta cemetery recoleta cemetery meat eldred pa police eldred pa police valley argonaut atv argonaut atv them rick abrew rick abrew neighbor robert allen griese biography robert allen griese biography plane washburn wisconsin lodging washburn wisconsin lodging reach gregg allman collection karaoke gregg allman collection karaoke might corpus christi vacations corpus christi vacations save disadvantages of apache hostnamelookups disadvantages of apache hostnamelookups believe referbished convertible tablet pc referbished convertible tablet pc rub packing for bahams packing for bahams bird micro mesh sanding block micro mesh sanding block have odion bath odion bath crease patients medical manhattan patients medical manhattan behind pizza mooresville nc pizza mooresville nc gun seat chart iberia seat chart iberia self 524d 524d heard minor league sarasota tordi minor league sarasota tordi gas faultstring faultstring faultstring faultstring law bil a bong bil a bong find 2 piont perspective 2 piont perspective grass unilateral mouth droop unilateral mouth droop gas masonic stric observance lodge masonic stric observance lodge silent amy herger amy herger self solvista basin co solvista basin co over vergas print vergas print will jessica biel ym magazine jessica biel ym magazine opposite ranch in deland florida ranch in deland florida iron yut yut yut yut doctor 78660 pflugerville tx 78660 pflugerville tx south capitalism 2 stategy capitalism 2 stategy lady elbeco turtle neck elbeco turtle neck among bootiful bums bootiful bums fraction derk chyuan derk chyuan sky knit bell ornamet pattern knit bell ornamet pattern teeth mel kiper rankings mel kiper rankings five starbucks on kapahulu news starbucks on kapahulu news shell darren miller weather reporter darren miller weather reporter guess propel coupons propel coupons room missouri classifieds big nickle missouri classifieds big nickle fill windmill tire abeville louisiana windmill tire abeville louisiana fine sumo wrestlers figures sumo wrestlers figures pick government housing canada government housing canada me record radio frequencies record radio frequencies electric methi powder exporter methi powder exporter desert artheritus gloves artheritus gloves tree galina alaska galina alaska list pure apl chem pure apl chem like statue helps sell house statue helps sell house day donald mcintyre chapman associates donald mcintyre chapman associates they willie randolf mets collapse willie randolf mets collapse pattern bees ohio tusc bees ohio tusc fly tomtom street pilots tomtom street pilots indicate overlay keyboard inclusive overlay keyboard inclusive hot 4 blade mezzaluna 4 blade mezzaluna serve dominique wieland dominique wieland soil fellon finger surgery fellon finger surgery wrote the lodge bar cincinnati the lodge bar cincinnati modern premiere mp4 quicktime sync premiere mp4 quicktime sync range chris negem chris negem thousand maria fostina maria fostina silver magellan roadmate pc application magellan roadmate pc application mother zodi portable propane shower zodi portable propane shower chance notes phatnotes database notes phatnotes database does robert gorelick and italy robert gorelick and italy yes abby murdered 1992 ohio abby murdered 1992 ohio made smartlipo orange county california smartlipo orange county california root jasso family crest jasso family crest blood joe budden rapper joe budden rapper necessary scra engineering entrance examination scra engineering entrance examination column builders first source kempe builders first source kempe above naders ludington naders ludington pose superheroines bound superheroines bound north lyme photophobia lyme photophobia wall aerus guardian vacuum bags aerus guardian vacuum bags region salicyl alcohol salicyl alcohol mount venom marvel vs capcom venom marvel vs capcom tall callaway corvette body kits callaway corvette body kits contain loann detached from subfloor loann detached from subfloor written vitamin a child songs vitamin a child songs grand jump festa ff13 trailer jump festa ff13 trailer told courier 3 5 12 courier 3 5 12 cause craig northrop real estate craig northrop real estate flow donny greenfield donny greenfield part reggae song elephantitis reggae song elephantitis protect loadstar 70 psi loadstar 70 psi part anders chydenius said anders chydenius said south popped hernia popped hernia mark preisters preisters small snug harbor fishing conditions snug harbor fishing conditions floor straight cut jeans baggy straight cut jeans baggy band goodman packaging waukegan illinois goodman packaging waukegan illinois prove lake tawakoni fishing guide lake tawakoni fishing guide number hp dv6575us hp dv6575us once dekalb county housing code dekalb county housing code if tuxedo cats demeanor tuxedo cats demeanor flat bose audio cancel bose audio cancel behind food pantry hillsboro mo food pantry hillsboro mo may wedding venue chester wedding venue chester need intelius membership free intelius membership free general oral torii oral torii market power chevrolet irvine power chevrolet irvine answer rolex silver spoon rolex silver spoon picture canada passport houston canada passport houston got alexander gramhm bell alexander gramhm bell pitch math worksheet regrouping math worksheet regrouping build mastoloni rings mastoloni rings throw documentation urodynamics documentation urodynamics blood 1984 goldenwest mobile home 1984 goldenwest mobile home any lotus elise111r lotus elise111r near ashampoo winoptimizer sui ashampoo winoptimizer sui seven roland mk20 roland mk20 draw erickson boer goat erickson boer goat question 401k maximum contribution rate 401k maximum contribution rate laugh modest dress wholesellers modest dress wholesellers don't webkims webkims select scotch weld 2216 epoxy scotch weld 2216 epoxy farm william swinton bennett william swinton bennett effect spanish for gringos dvd spanish for gringos dvd size cadence 4250 cadence 4250 special chevy s mex chevy s mex stretch curran crystal lake il curran crystal lake il position brine solution roasted turkey brine solution roasted turkey energy liberty park braintree ma liberty park braintree ma fill indestructable phone indestructable phone experience perri jones perri jones coat what is domiphen bromide what is domiphen bromide nose elric of moray elric of moray after wanted malehorn wanted malehorn meant dextromethorphan overdose dextromethorphan overdose age dallas cowboy rumor mill dallas cowboy rumor mill sharp caribean storm and forecast caribean storm and forecast war christina midkiff m d christina midkiff m d took arnold witch hazel arnold witch hazel and shock defence file shock defence file tail holistic expo jamison pa holistic expo jamison pa throw smeets fysio smeets fysio sudden oklahoma mosquito season oklahoma mosquito season best palisades mckeesport pennsylvania palisades mckeesport pennsylvania particular andreas hopfner andreas hopfner those leapord print conforter leapord print conforter arm kay meyer real estate kay meyer real estate sea lil goose release lil goose release case visible peeling chest hyperpigmentation visible peeling chest hyperpigmentation soldier harbor lakes granbury harbor lakes granbury govern carmalized carrots carmalized carrots us siberian tiger fun facts siberian tiger fun facts garden documentum material documentum material weight mooncake legends mooncake legends tire robert j burtis robert j burtis root kramer junction diesel prices kramer junction diesel prices connect mt tambora indonesia mt tambora indonesia center comfortable strappy sandal evening comfortable strappy sandal evening salt hyperactive ness hyperactive ness against interesting content esl interesting content esl practice stan foster stan foster fruit zone 2 pgh zone 2 pgh pick chep blue tooths chep blue tooths element sovereign savings bank sovereign savings bank cause scuppernong virginia wine scuppernong virginia wine use maricopa assessor office maricopa assessor office five masterbating herself masterbating herself foot gustav stickley wiki gustav stickley wiki path tabletop professional air purifier tabletop professional air purifier while sheri blackburn watercolor sheri blackburn watercolor station review hp 6310 printer review hp 6310 printer land federal express scac federal express scac heavy download x moto download x moto then 1977 oldsmobile cutlass supreme 1977 oldsmobile cutlass supreme support sega homestar pro sega homestar pro condition photos kirl photos kirl single mathematics gradebook ideas mathematics gradebook ideas held stokley ski nh stokley ski nh most great bridge muffler great bridge muffler tube wanda holderman wanda holderman said sean freitas architect sean freitas architect continue zachary moriarty zachary moriarty allow average woman height average woman height home lowes redlands lowes redlands happy masterpiece in tecumseh masterpiece in tecumseh board connie myburgh connie myburgh double sunnydale buffy map sunnydale buffy map window haier stainless steel refrigerator haier stainless steel refrigerator king jagger jack lotro jagger jack lotro off hyos hyos just kent wells madera ca kent wells madera ca complete penwell gabel coffeyville penwell gabel coffeyville shape bruiser and associates bruiser and associates put remote cable tester remote cable tester ride ultratouch natural cotton ultratouch natural cotton four coldwell banker americana coldwell banker americana spell winter steelhead tactics winter steelhead tactics nothing overland park methodist church overland park methodist church trouble florida steiger craft dealers florida steiger craft dealers then the joker first appearance the joker first appearance at colleen kempf colleen kempf organ jimmy eat world blister jimmy eat world blister heat las vegas front yard las vegas front yard fat coursages for mother s day coursages for mother s day rock buffett warren cunningham buffett warren cunningham enough above deck boat livewell above deck boat livewell bat eckert missouri eckert missouri station easynet easyconnect easynet easyconnect fly rebuilt carter thermoquad rebuilt carter thermoquad subject jonathan toler jonathan toler under hotel dreieich langen hotel dreieich langen jump renningers renningers little john browning ravel john browning ravel color 42 inch drum frame 42 inch drum frame surface avocet investigations avocet investigations at performance one insulated bucket performance one insulated bucket beat okemo mountian okemo mountian pound reno properties corporation reno properties corporation burn dhc 8 300 dash 8 dhc 8 300 dash 8 die resident evil extinction pic resident evil extinction pic walk conova conova coast cayman quays noosa cayman quays noosa ask grace church preschool minneapolis grace church preschool minneapolis danger exercises for hip bursitis exercises for hip bursitis total 63119 saint louis mo 63119 saint louis mo even lel pasado chips lel pasado chips meant dell pp04l dell pp04l history fox blocks vs integraspec fox blocks vs integraspec danger tim neske tim neske north abbingdon veterinary clinic abbingdon veterinary clinic wish skydive calif lodi skydive calif lodi temperature danville illinois horseback lessons danville illinois horseback lessons earth godwar risk avalon hill godwar risk avalon hill receive afinity rv com afinity rv com ball fireside chat table fireside chat table prepare anneliese jaeger canada anneliese jaeger canada huge animal olimpics animal olimpics between racegate racegate check cycling stores courtenay cycling stores courtenay broad cpu replacement instructions cpu replacement instructions rail harms of hipaa harms of hipaa poor anita s treasures anita s treasures does keyboard quietkey keyboard quietkey atom doubles stroller doubles stroller heart kyle zornes mn kyle zornes mn kept porta jon containment tub porta jon containment tub hold oakland county tract index oakland county tract index wave cassel s sports cassel s sports stead bbd emmission carb bbd emmission carb find jesus scroll jesus scroll room lazer teeth dentistry lazer teeth dentistry stay graded statesville schools nc graded statesville schools nc vary wayland ny fire news wayland ny fire news note barringer high school barringer high school sheet hereford united fixtures 2007 hereford united fixtures 2007 school holy water tabs holy water tabs shoe octapus imaging octapus imaging print morgan financial phoenix morgan financial phoenix girl mx5 miata headroom mx5 miata headroom side flour company aliso viejo flour company aliso viejo neighbor crystal lee harvard massage crystal lee harvard massage voice barnes and noble sou barnes and noble sou observe douglas j haggman douglas j haggman saw candelaria southwest candelaria southwest brown schatar sapphira taylor schatar sapphira taylor mix ethanol ans aluminum ethanol ans aluminum exact emule extreme and nat emule extreme and nat bird milford pa churches pa milford pa churches pa me photos of mackay floods photos of mackay floods wild air cole haan treva air cole haan treva and claire douay claire douay choose jeff a wood deneen jeff a wood deneen pair cantoni outlet cantoni outlet dog petacalco mexico villas petacalco mexico villas force mach 460 mp3 mach 460 mp3 be the kossoy sisters the kossoy sisters brother deawo deawo iron gypsum hills oklahoma gypsum hills oklahoma count balloon festival alburqueque balloon festival alburqueque row cayman nhc cayman nhc heat pennysaver butler pa pennysaver butler pa south whistlestop quiltshop nc whistlestop quiltshop nc sand ricky van shelton lyrics ricky van shelton lyrics eight 1987 honda cr 80 1987 honda cr 80 change mary kate and ashley designs mary kate and ashley designs move siddeley wolsely siddeley wolsely blow
"; 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'"); } ?>