From ca18ef726002bd64d831bc90c26ebe1b42a70069 Mon Sep 17 00:00:00 2001 From: Pepper Date: Wed, 4 Mar 2015 04:28:00 -0500 Subject: added is color --- .gitignore | 3 +++ gradient.py | 7 ++++++- imgrid.py | 9 +++++++-- pbserver.py | 2 +- 4 files changed, 17 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index f739444..8957ace 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,5 @@ ./s3config.py ./db.py +*.swp +*.swo +*.pyc diff --git a/gradient.py b/gradient.py index 6d2e15f..4d01f9b 100755 --- a/gradient.py +++ b/gradient.py @@ -18,6 +18,11 @@ import sha #logger.setLevel(logging.WARNING) #}}} +def is_color(s): + if re.match('(rgba?\([0-9]+,[0-9]+,[0-9]+\))|([a-zA-Z]+)|(\#[A-Ha-h0-9]+)', s): + return s + else: + raise ValueError PARAM_LIST = [ "width", "height", "color1", "color2", @@ -98,7 +103,7 @@ class Gradient: for key in PARAM_LIST: if key in form: if key in ['color1', 'color2']: - params[key] = form[key] + params[key] = is_color(form[key]) else: params[key] = sanitize(form[key]) diff --git a/imgrid.py b/imgrid.py index 86597bb..2dfe5bb 100755 --- a/imgrid.py +++ b/imgrid.py @@ -31,6 +31,11 @@ DEFAULT_LINE_COLOR = "silver" DEFAULT_FINALFORMAT = "png" #{{{Utility functions +def is_color(s): + if re.match('(rgba?\([0-9]+,[0-9]+,[0-9]+\))|([a-zA-Z]+)|(\#[A-Ha-h0-9]+)', s): + return s + else: + raise ValueError def bool_correct(s): if re.match(r'^false$', s, re.IGNORECASE): return False @@ -169,8 +174,8 @@ class Imgrid(): except Exception as e: sys.stderr.write(str(e)) raise; - elif k in [ 'bgcolor', 'planebgcolor' ]: - self.params[k] = params[k] + elif k in [ 'bgcolor', 'planebgcolor','linecolor' ]: + self.params[k] = is_color(params[k]) elif k == 'opacity': self.params[k] = str(float(params[k])) elif k == 'zoom': diff --git a/pbserver.py b/pbserver.py index 9f2a209..5501f54 100755 --- a/pbserver.py +++ b/pbserver.py @@ -154,7 +154,7 @@ def pattern(): try: im = Pattern(request.forms) im.create(); - return return_image(im, im.params['url']) + return return_image(im, im.params['image_url']) except Exception as e: sys.stderr.write(str(e)) sys.stderr.write("imgradient failure\n") -- cgit v1.2.3-70-g09d2