The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
[SQL]
# Album
PageNow=SELECT now FROM updates WHERE pageid=0 AND area='site'
SearchPagesLatest=SELECT p.*,u.now FROM pages AS p \
    INNER JOIN updates AS u ON u.pageid=p.pageid \
    WHERE p.area=2 AND p.year > 0 AND p.pageid=u.pageid AND p.hide = 0 \
    ORDER BY p.year desc,p.month desc,p.orderno,p.pageid desc LIMIT 10
SearchPages=SELECT p.*,u.now,i.thumb,i.dimensions FROM pages AS p \
    INNER JOIN updates AS u ON u.pageid=p.pageid \
    INNER JOIN photos AS i ON i.pageid=p.pageid AND i.cover=1 \
    WHERE p.area=2 AND p.hide = 0 $where \
    ORDER BY p.year desc,p.month desc,p.orderno,p.pageid desc

CurrentPages=SELECT pageid,hide FROM pages
ShowPages=UPDATE pages SET hide=0 WHERE pageid IN ($list)
HidePages=UPDATE pages SET hide=1 WHERE pageid IN ($list)
AdminPages=SELECT pa.*,count(ph.photoid) AS count \
    FROM pages pa \
    LEFT JOIN photos ph ON ph.pageid=pa.pageid \
    $where \
    GROUP BY pa.pageid \
    ORDER BY pa.year DESC,pa.month DESC,pa.orderno DESC,pa.pageid DESC

GetPage=SELECT * FROM pages WHERE pageid=?
GetPageByOrderNo=SELECT * FROM pages WHERE orderno=?
ReorderPage=UPDATE pages SET orderno=? WHERE pageid=?
InsertPage=INSERT INTO pages (parent,title,summary,year,month,hide,area,path) VALUES (?,?,?,?,?,?,?,?)
UpdatePage=UPDATE pages SET parent=?,title=?,summary=?,year=?,month=?,hide=? WHERE pageid=?
DeletePage=DELETE FROM pages WHERE pageid=?

MaxPhotoID=SELECT MAX(photoid) FROM photos
GetRandomPhoto=SELECT ph.* FROM photos AS ph \
    INNER JOIN pages AS pg ON pg.pageid=ph.pageid \
    WHERE pg.hide=0 AND ph.hide=0 AND ph.photoid >= ? \
    LIMIT 1
RandomPhotos=SELECT ph.* FROM photos AS ph \
    INNER JOIN pages AS pg ON pg.pageid=ph.pageid \
    WHERE pg.hide=0 AND ph.hide=0

GetPhotos=SELECT * FROM photos WHERE pageid=?
GetAllPhotos=SELECT * FROM photos
ReorderPhoto=UPDATE photos SET orderno=? WHERE photoid=?
UpdatePhoto=UPDATE photos SET orderno=?,hide=?,tagline=?,cover=? WHERE photoid=?
GetPhotosInOrder=SELECT * FROM photos WHERE pageid=? ORDER BY orderno
HiddenPhotos=SELECT * FROM photos WHERE hide=1
SetDimensions=UPDATE photos SET dimensions=? WHERE photoid=?
SetThumb=UPDATE photos SET thumb=? WHERE photoid=?
SetImage=UPDATE photos SET image=? WHERE photoid=?

CheckPhotos=SELECT * FROM photos WHERE pageid=? AND photoid IN ($ids)
CheckPhoto=SELECT ph.*,count(p1.photoid) AS count FROM photos ph \
    LEFT JOIN photos p1 ON p1.thumb=ph.thumb OR p1.image=ph.image \
    WHERE ph.pageid=? AND ph.photoid=? GROUP BY ph.photoid

DeletePhotos=DELETE FROM photos WHERE pageid=1 AND photoid IN ($ids)
MovePhotos=UPDATE photos SET pageid=? WHERE photoid IN ($ids)
DeletePhoto=DELETE FROM photos WHERE pageid=1 AND photoid=?
MovePhoto=UPDATE photos SET pageid=? WHERE photoid=?

GetPhotoId=SELECT photoid FROM photos WHERE pageid=?
ListPhotos=SELECT * FROM photos WHERE hide=0 AND pageid=? ORDER BY orderno
GetPhotoDetail=SELECT * FROM photos WHERE photoid=?
PhotoHits=SELECT ph.photoid,ph.pageid,ph.thumb,ph.image,ph.tagline,pg.title,pg.year,pg.month,h.counter \
    FROM hits AS h \
    INNER JOIN photos AS ph ON ph.photoid=h.photoid\
    INNER JOIN pages AS pg ON pg.pageid=ph.pageid \
    WHERE h.counter > 0 \
    ORDER BY h.counter DESC LIMIT 10
AdminPhotos=SELECT photoid,thumb,tagline FROM photos WHERE pageid=0 ORDER BY photoid
AllPhotos=SELECT photoid,pageid,orderno,image,hide FROM photos ORDER BY pageid,orderno,photoid
AllPhotos2=SELECT photoid,pageid,orderno,image,hide FROM photos ORDER BY photoid

ListPages=SELECT pageid,title FROM pages
UpdatePhoto1=UPDATE photos SET pageid=?,thumb=?,image=?,hide=? WHERE photoid=?
UpdatePhoto2=UPDATE photos SET pageid=?,thumb=?,image=?,tagline=?,hide=? WHERE photoid=?
SavePhoto=INSERT INTO photos (pageid,thumb,image,dimensions,tagline,orderno,hide) VALUES (?,?,?,?,?,?,0)

SearchPhoto=SELECT i.photoid,p.pageid,p.title,i.hide FROM photos as i,pages as p \
    WHERE (i.image LIKE ? OR i.thumb LIKE ?)AND i.pageid=p.pageid

InYearPhotosAll=SELECT i.image,i.thumb \
    FROM photos AS i \
    INNER JOIN pages AS p ON p.pageid=i.pageid \
    WHERE i.hide=0 AND p.year=?
InYearPhotos=SELECT i.image \
    FROM photos AS i \
    INNER JOIN pages AS p ON p.pageid=i.pageid \
    WHERE i.hide=0 AND p.year=?
AllThumbnails=SELECT thumb FROM photos WHERE hide=0

Gallery=SELECT * FROM photos AS i \
    WHERE i.photoid >= ? $where \
    ORDER BY i.photoid \
    LIMIT 10
MetaGallery=SELECT i.* FROM photos AS i \
    INNER JOIN imetadata AS m ON i.photoid=m.imageid \
    WHERE i.photoid >= ? $where \
    ORDER BY i.photoid \
    LIMIT 10
GalleryMin=SELECT i.photoid FROM photos AS i \
    WHERE i.photoid < ? $where  \
    ORDER BY i.photoid DESC LIMIT 9
MetaGalleryMin=SELECT i.photoid FROM photos AS i \
    INNER JOIN imetadata AS m ON i.photoid=m.imageid \
    WHERE i.photoid < ? $where  \
    ORDER BY i.photoid DESC LIMIT 9

GetChildPages=SELECT * FROM pages WHERE parent=?

# Update Entries
PageTimeStamp=SELECT pagets FROM updates WHERE area=? AND pageid=?
PageCounter=SELECT counter FROM hits WHERE area=? AND pageid=? AND photoid=?
AdminHits=SELECT h.pageid,h.photoid,h.counter,pg.title,ph.thumb FROM hits AS h LEFT JOIN pages AS pg ON pg.pageid=h.pageid LEFT JOIN photos AS ph ON ph.photoid=h.photoid ORDER BY $orderby h.pageid,h.photoid
AdminUpdates=SELECT * FROM updates ORDER BY pagets desc

GetUpdate=SELECT * FROM updates WHERE area=? AND pageid=?
SetUpdate=UPDATE updates SET now=? WHERE area=? AND pageid=?
AddUpdate=INSERT INTO updates (now,area,pageid) VALUES (?,?,?)


# Hit Entries
PageHits=SELECT h.* \
    FROM hits AS h \
    WHERE h.pageid=0 AND h.photoid=0 \
    ORDER BY h.counter DESC,h.pageid LIMIT 10
PageHits2=SELECT h.*,pg.title,pg.year,pg.month,pg.summary \
    FROM hits AS h \
    LEFT JOIN pages AS pg ON pg.pageid=h.pageid \
    WHERE h.pageid > 0 AND h.photoid=0 \
    ORDER BY h.counter DESC,h.pageid LIMIT 10


# Metadata Entries
MetaSearchPage=SELECT x.pageid AS id,p.* FROM mxpages AS x INNER JOIN pages AS p ON p.pageid=x.pageid WHERE metadata IN ($meta)
MetaDetailPage=SELECT pageid AS id,* FROM pages WHERE title LIKE '%$meta%' OR summary LIKE '%$meta%'
MetaDeletePage=DELETE FROM mxpages WHERE pageid=?
MetaUpdatePage=INSERT INTO mxpages (pageid,metadata) VALUES (?,?)
MetaSearchPagePhoto=SELECT p.photoid AS id,p.* FROM mxpages AS x \
    INNER JOIN photos AS p ON p.pageid=x.pageid \
    INNER JOIN pages AS g ON g.pageid=x.pageid \
    WHERE metadata IN ($meta)
MetaDetailPagePhoto=SELECT p.photoid AS id,p.tagline,p.thumb,g.pageid,g.title FROM photos AS p \
    INNER JOIN pages AS g ON g.pageid=p.pageid \
    WHERE tagline LIKE '%$meta%'
MetaSearchPhoto=SELECT x.photoid AS id,p.*,g.* FROM mxphotos AS x \
    INNER JOIN photos AS p ON p.photoid=x.photoid \
    INNER JOIN pages AS g ON g.pageid=p.pageid \
    WHERE metadata IN ($meta)
MetaDetailPhoto=SELECT p.photoid AS id,p.tagline,p.thumb,g.pageid,g.title FROM photos AS p \
    INNER JOIN pages AS g ON g.pageid=p.pageid \
    WHERE tagline LIKE '%$meta%'
MetaDeletePhoto=DELETE FROM mxphotos WHERE photoid=?
MetaUpdatePhoto=INSERT INTO mxphotos (photoid,metadata) VALUES (?,?)
MetaGetPhoto=SELECT * FROM mxphotos WHERE photoid=?