def shout(text=None): if request.method == 'POST': result = str() for part in request.form.keys(): RDB.redis_shout(APP.config['REDIS_OPT']['shout_pubsub'], part) result += part return result if text is not None: return RDB.redis_shout(APP.config['REDIS_OPT']['shout_pubsub'], text) return redirect(url_for('index'))
def action(): if request.method == 'POST': if request.json: target = None if request.json['action'] == 'plus': target = 'public' if request.json['action'] == 'minus': target = 'reject' if target: RDB.move_image(request.json['image'], target) return '%s -> %s' %(request.json['image'], target)
def index(): '''homepage''' sidebar = { 'status': RDB.get_status(), 'imagestats': RDB.get_imagestats(), 'tagline': next(TAGLINES), } LOGGER.info('index requested') return render_template('main.html', title='fnordpad', image=RDB.random_image(folder='public'), sidebar=sidebar, )
def stream_channel(channel=None): if channel: if channel in [APP.config['REDIS_OPT'][psc] for psc in APP.config['REDIS_OPT'] if psc.endswith('_pubsub')]: LOGGER.info('stream for %s requested' %(channel)) return Response( stream_with_context(RDB.browser_shout(APP.config['REDIS_OPT']['%s_pubsub' %(channel)])), direct_passthrough=True, mimetype='text/event-stream' )
def kasper(self): load = list() for user in self._users: LOGGER.info('kasper %s' %(user)) for image in self._usercrawl(user): if image.split('/')[-1] not in RDB.get_all_images(): load.append(image) yield user, image tpool(self.__net.download_image, load)
def sort(ressource='unsorted', page=0): imagestats = RDB.get_imagestats(); sortimages = dict() folderimages = list() if ressource in APP.config['CONTENTSUB'].keys(): # folder/rdb match sortimages = RDB.get_sort_images(folder=ressource, page=page) if len(sortimages) == 0 and page != 0: return redirect(url_for('sort', ressource=ressource, page=page-1)) folderimages = RDB.get_dict_images(folder=ressource) elif ressource in RDB.get_all_images(): # file match sortimages[ressource] = RDB.locate_image(ressource) else: return redirect(url_for('sort')) flash('%s left: %i, page: %i' %(ressource, len(folderimages), page)) return render_template('sort.html', title='sort', folderimages=folderimages, sortimages=sortimages, imagestats=imagestats, )
def flush(): RDB.flush_all() flash('redis flushed') RDB.get_images() return redirect(url_for('index'))
def conf_globals(): result = dict() result['js'] = {'delay': RDB.get_ropt('image_timeout')*1000} result['ji'] = {'sort_slices': RDB.get_ropt('sort_slices')} return result