summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPepper <pepper@scannerjammer.com>2016-02-04 03:24:06 -0500
committerPepper <pepper@scannerjammer.com>2016-02-04 03:24:06 -0500
commit57ab941fcaa47605e49367bfea4ac066d726a9ca (patch)
tree389caa7f9f1042c8919a0310ec1faff9d2522635
parent96e0330491b20a9f6b04792d3b0f6889895bb9ed (diff)
ok fixed dead images
-rw-r--r--photoblaster/config.py33
-rw-r--r--photoblaster/db/models/__init__.py45
-rw-r--r--photoblaster/db/models/imcmd.py1
-rw-r--r--photoblaster/server.py39
-rw-r--r--scripts/log_loader.py2
-rw-r--r--sync_iasdfus_deleted.py30
6 files changed, 102 insertions, 48 deletions
diff --git a/photoblaster/config.py b/photoblaster/config.py
index 409583d..adaae8e 100644
--- a/photoblaster/config.py
+++ b/photoblaster/config.py
@@ -62,36 +62,3 @@ if LOCAL:
DB_HOST = "localhost"
-# gallery stuff
-GALLERY_TAG_TRANS = {
- "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"
-}
diff --git a/photoblaster/db/models/__init__.py b/photoblaster/db/models/__init__.py
index f35a63f..4152860 100644
--- a/photoblaster/db/models/__init__.py
+++ b/photoblaster/db/models/__init__.py
@@ -11,24 +11,38 @@ class Actions(object):
@classmethod
def create(cls, **kwargs):
session = SessionHeap()
- session.add(cls(**kwargs))
- session.commit()
- session.close()
- SessionHeap.remove()
+ try:
+ session.add(cls(**kwargs))
+ session.commit()
+ except:
+ session.rollback()
+ raise
+ finally:
+ session.close()
+ SessionHeap.remove()
def update(self, **kwargs):
for key, val in kwargs.iteritems():
self.__setattr__(key, val)
session = inspect(self).session
- session.commit()
+ try:
+ session.commit()
+ except:
+ session.rollback()
+ raise
@classmethod
def _search(cls, **kwargs):
session = SessionHeap()
query = session.query(cls).filter_by(**kwargs)
- session.commit()
- session.close()
- SessionHeap.remove()
+ try:
+ session.commit()
+ except:
+ session.rollback()
+ raise
+ finally:
+ session.close()
+ SessionHeap.remove()
return query
@classmethod
@@ -43,7 +57,16 @@ class Actions(object):
def query(cls, **kwargs):
session = SessionHeap()
query = session.query(cls)
- session.commit()
- session.close()
- SessionHeap.remove()
+ try:
+ session.add(cls(**kwargs))
+ session.commit()
+ except:
+ session.rollback()
+ raise
+ finally:
+ session.close()
+ SessionHeap.remove()
return query
+
+from photoblaster.db.models.imcmd import ImCmd
+from photoblaster.db.models.iasdfus import Iasdfus
diff --git a/photoblaster/db/models/imcmd.py b/photoblaster/db/models/imcmd.py
index 9aff784..0827aac 100644
--- a/photoblaster/db/models/imcmd.py
+++ b/photoblaster/db/models/imcmd.py
@@ -11,6 +11,7 @@ class ImCmd(Base, Actions):
__tablename__ = 'im_cmd'
id = Column(Integer, primary_key=True)
date = Column(Integer)
+ deleted = Column(Integer)
remote_addr = Column(String(16))
name = Column(String(16))
url = Column(String(256))
diff --git a/photoblaster/server.py b/photoblaster/server.py
index 753345a..0e89886 100644
--- a/photoblaster/server.py
+++ b/photoblaster/server.py
@@ -14,8 +14,41 @@ from photoblaster.modules import PbGenerate, PbGrid, PbBreaker, PbPattern,\
from photoblaster.db.models.imcmd import ImCmd
from photoblaster.param import BadParamError
from photoblaster.config import SERVER_HOST, SERVER_PORT, STATIC_FOLDER, \
- GALLERY_TAG_TRANS, WORKING_DIR, LOCAL
+ WORKING_DIR, LOCAL
+# gallery stuff
+GALLERY_TAG_TRANS = {
+ "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"
+}
# and this jsonp thing
_CLASSNAME_ALIASES = {
@@ -118,10 +151,10 @@ class Server(object):
@self.app.route('/im/gallery/', methods=['GET'])
@self.app.route('/im/gallery', methods=['GET'])
def gallery():
- search_params = {}
+ search_params = {"deleted": None}
qs = []
if request.args.get('tag'):
- search_params['tag'] = GALLERY_TAG_TRANS[request.args['tag']]
+ search_params['tag'] = GALLERY_TAG_TRANS.get(request.args['tag'], request.args['tag'])
qs.append("tag=" + request.args['tag'])
if request.args.get('name'):
search_params['name'] = request.args['name']
diff --git a/scripts/log_loader.py b/scripts/log_loader.py
index 5b2e1d6..0238fad 100644
--- a/scripts/log_loader.py
+++ b/scripts/log_loader.py
@@ -10,7 +10,7 @@ from photoblaster.db.s3db import S3 as Db
LOGS_PATH = "/mnt/sdc1/s3LOGS"
-DB_HOST = "localhost"
+DB_HOST = "lalalizard.com"
DB_USER = "asdfus"
DB_PASSWORD = "gTYgT&M6q"
DB_NAME = "asdfus"
diff --git a/sync_iasdfus_deleted.py b/sync_iasdfus_deleted.py
new file mode 100644
index 0000000..f062a19
--- /dev/null
+++ b/sync_iasdfus_deleted.py
@@ -0,0 +1,30 @@
+import sys
+import urllib
+import re
+from photoblaster.db.models import Iasdfus
+from photoblaster.db.models import ImCmd
+
+
+def super_unquote(s):
+ for i in xrange(0,20):
+ s = urllib.unquote(s)
+ return s
+
+deleted_urls = Iasdfus().search(deleted=True).all()
+print len(deleted_urls)
+#im/ff/wigglelogo_1347403794_frankhats_1347403811_frankhats.gif
+bob = 0
+for url in deleted_urls:
+ try:
+ parts = url.address.split("/")
+ dirpart = parts[1]
+ newfile = super_unquote(parts[2])
+ newfile_parts = re.split(r'\+?http', newfile)
+ newfile = newfile_parts[0]
+ matching_url = ImCmd.search(**{"dir": dirpart, "newfile": newfile}).first()
+ print matching_url.deleted
+ matching_url.update(deleted=1)
+ except AttributeError:
+ continue
+ except IndexError:
+ continue