From ceb2da8f23f1f447d55c0abf20d3816a486e439b Mon Sep 17 00:00:00 2001 From: pepperpepperpepper Date: Thu, 22 Oct 2015 22:49:32 -0700 Subject: added gallery and new actions to the db code --- gallery/gallery.py | 256 ++++++++++++++++++++++++++++ gallery/index.html | 23 +++ gallery/js/ZeroClipboard.js | 311 ++++++++++++++++++++++++++++++++++ gallery/js/gallery_isotope_config.js | 189 +++++++++++++++++++++ gallery/js/jquery.isotope.min.js | 13 ++ gallery/js/jquery.js | 4 + gallery/js/main.js | 157 +++++++++++++++++ gallery/js/pbembed.js | 65 +++++++ gallery/js/titleScrambler.js | 56 ++++++ gallery/main.css | 244 ++++++++++++++++++++++++++ photoblaster/.ropeproject/globalnames | Bin 1148 -> 1191 bytes photoblaster/db.py | 74 +++++++- 12 files changed, 1385 insertions(+), 7 deletions(-) create mode 100644 gallery/gallery.py create mode 100644 gallery/index.html create mode 100644 gallery/js/ZeroClipboard.js create mode 100644 gallery/js/gallery_isotope_config.js create mode 100644 gallery/js/jquery.isotope.min.js create mode 100644 gallery/js/jquery.js create mode 100644 gallery/js/main.js create mode 100644 gallery/js/pbembed.js create mode 100644 gallery/js/titleScrambler.js create mode 100644 gallery/main.css diff --git a/gallery/gallery.py b/gallery/gallery.py new file mode 100644 index 0000000..37af36c --- /dev/null +++ b/gallery/gallery.py @@ -0,0 +1,256 @@ +#!/usr/bin/python2.7 +import os +import cgi +import re + +import random + +import db +db = db.db() + +BASE_HREF = "http://i.asdf.us/im/" +PARAMLIST = "addr start limit name interface random tag" +SQL_LIMIT = 20 +QUERY_LIMIT = 20; +_TAG_TRANSLATE = { + "grid" : "PbGrid", + "gradient" : "PbGradient", + "break" : "PbBreak", + "landscape" : "PbLandscape", + "pattern" : "PbPattern", + "transparent" : "PbGenerate:transparent", + "Over" : "PbGenerate:Over", + "ATop" : "PbGenerate:ATop", + "Dst_Over" : "PbGenerate:Dst_Over", + "Dst_In" : "PbGenerate:Dst_In", + "Dst_Out" : "PbGenerate:Dst_Out", + "Multiply" : "PbGenerate:Multiply", + "Screen" : "PbGenerate:Screen", + "Divide" : "PbGenerate:Divide", + "Plus" : "PbGenerate:Plus", + "Difference" : "PbGenerate:Difference", + "Exclusion" : "PbGenerate:Exclusion", + "Lighten" : "PbGenerate:Lighten", + "Darken" : "PbGenerate:Darken", + "Overlay" : "PbGenerate:Overlay", + "Hard_Light" : "PbGenerate:Hard_Light", + "Soft_Light" : "PbGenerate:Soft_Light", + "Pegtop_Light" : "PbGenerate:Pegtop_Light", + "Linear_Light" : "PbGenerate:Linear_Light", + "Vivid_Light" : "PbGenerate:Vivid_Light", + "Pin_Light" : "PbGenerate:Pin_Light", + "Linear_Dodge" : "PbGenerate:Linear_Dodge", + "Linear_Burn" : "PbGenerate:Linear_Burn", + "Color_Dodge" : "PbGenerate:Color_Dodge", + "Color_Burn" : "PbGenerate:Color_Burn" +} + + +class Gallery(object): + def __init__(self): + pass + def select_random(self, tag=None, username=None): + + def _tag_translate(self, tag): + return _TAG_TRANSLATE.get(tag, tag) + + def get_files (params): + sql = "SELECT * FROM im_cmd " + args = [] + where = [] + + if params['start'] is not None: + where.append("id < %s") + args.append(params['start']) + if params['name'] is not None: + where.append("name=%s") + args.append(params['name']) + if params['tag'] is not None: + where.append("tag=%s") + args.append(tagTranslate(params['tag'])) + if len(where): + sql += "WHERE " + sql += " AND ".join(where) + sql += " " + + if params['random'] is not None: + if params['random'] == '1': + sql += "ORDER BY RAND(" + str(random.randint(1,2**63)) + ") " + else: + sql += "ORDER BY RAND(" + params['random'] + ") " + else: + sql += "ORDER BY id DESC " + sql += "LIMIT %s" + + if params['limit'] is not None: + args.append( int(params['limit']) ) + else: + args.append( SQL_LIMIT ) + db.execute(sql, args) + rows = db.cursor.fetchall () + return rows + +params = get_params(PARAMLIST) + + +@-webkit-keyframes pulsate_and_grow { + 0% {-webkit-transform: scale(0.1, 0.1); opacity: 0.1;} + 50% {opacity: 1.0;} + 100% {-webkit-transform: scale(1.0, 1.0); opacity: 0.1;} +} +.tag-options:active, .tag-clear:active { + -webkit-animation: pulsate_opacity 0.5s ease-out; + -webkit-animation-iteration-count: 3; + opacity: 1.0; + +} +.sorting-options:active { + -webkit-animation: pulsate_opacity 0.5s ease-out; + -webkit-animation-iteration-count: 3; + opacity: 1.0; + +} +@-webkit-keyframes pulsate_opacity{ + 0% { opacity: 0.1;} + 50% {opacity: 1.0;} + 100% {opacity: 0.1;} +} + + + + + +
+ key controls +
+
+
when composer is launched...
+
ESC toggle
+
C clear
+
R reverse
+
+
in the gallery...
+
BACKSPACE delete
+
LEFT ARROW newer
+
RIGHT ARROW older
+
+
+
+ sort +
+
date
+
username
+
height
+
width
+
gif
+
shuffle
+
lombada
+
+
+
+ tags +
+ + +
remove tag
+
transparent
+
break
+
gradient
+
grid
+
pattern
+
landscape
+
shader
+
ascii
+
Over
+
ATop
+
Dst_Over
+
Dst_In
+
Dst_Out
+
Multiply
+
Screen
+
Divide
+
Plus
+
Difference
+
Exclusion
+
Lighten
+
Darken
+
Overlay
+
Hard_Light
+
Soft_Light
+
Pegtop_Light
+
Linear_Light
+
Vivid_Light
+
Pin_Light
+
Linear_Dodge
+
Linear_Burn
+
Color_Dodge
+
Color_Burn
+ +
+
+
+
+ +
+
copy
+
+ +
+
+""" + + +previous_id = lowest_id + (SQL_LIMIT * 2) +back = ["start=%d" % lowest_id, "limit=%d" % SQL_LIMIT] +newer = ["start=%d" % previous_id, "limit=%d" % SQL_LIMIT] +random_time = "" +if params['name'] is not None: + back.append("name=%s" % params['name']) + newer.append("name=%s" % params['name']) + random_time = "name=%s" % params['name'] +if params['tag'] is not None: + back.append("tag=%s" % params['tag']) + newer.append("tag=%s" % params['tag']) + random_time = "tag=%s" % params['tag'] + +newer_QS = "&".join(newer) +back_QS = "&".join(back) +random_time_QS = ""; +if random_time: + random_time_QS = "&%s" % random_time; +print "
" +print "editor" +print "|" +print "← newer" % newer_QS; +print "|" +if params['random'] is not None and params['random'] == '1': + print "random" % (random.randint(1,2**63), random_time_QS); +else: + print "random" % (1, random_time_QS); +print "|" +print "older →" % back_QS; +print "
" +print """ +else: + print "Main.init()" +print """ + + +""" + diff --git a/gallery/index.html b/gallery/index.html new file mode 100644 index 0000000..255150f --- /dev/null +++ b/gallery/index.html @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + +