diff options
| author | Pepper <pepper@scannerjammer.com> | 2016-02-04 03:24:06 -0500 |
|---|---|---|
| committer | Pepper <pepper@scannerjammer.com> | 2016-02-04 03:24:06 -0500 |
| commit | 57ab941fcaa47605e49367bfea4ac066d726a9ca (patch) | |
| tree | 389caa7f9f1042c8919a0310ec1faff9d2522635 | |
| parent | 96e0330491b20a9f6b04792d3b0f6889895bb9ed (diff) | |
ok fixed dead images
| -rw-r--r-- | photoblaster/config.py | 33 | ||||
| -rw-r--r-- | photoblaster/db/models/__init__.py | 45 | ||||
| -rw-r--r-- | photoblaster/db/models/imcmd.py | 1 | ||||
| -rw-r--r-- | photoblaster/server.py | 39 | ||||
| -rw-r--r-- | scripts/log_loader.py | 2 | ||||
| -rw-r--r-- | sync_iasdfus_deleted.py | 30 |
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 |
