def submit_literary_post_(request): form = request.web_input(submitfile="", coverfile="boop", thumbfile="", title="", folderid="", subtype="", rating="", friends="", critique="", content="", tags="", embedlink="") tags = searchtag.parse_tags(form.tags) if not define.config_read_bool("allow_submit"): raise WeasylError("FeatureDisabled") rating = ratings.CODE_MAP.get(define.get_int(form.rating)) if not rating: raise WeasylError("ratingInvalid") s = orm.Submission() s.title = form.title s.rating = rating s.content = form.content s.folderid = define.get_int(form.folderid) or None s.subtype = define.get_int(form.subtype) submitid, thumb = submission.create_literary( request.userid, s, embedlink=form.embedlink, friends_only=form.friends, tags=tags, coverfile=form.coverfile, thumbfile=form.thumbfile, submitfile=form.submitfile, critique=form.critique, create_notifications=('nonotification' not in form)) if thumb: raise HTTPSeeOther(location="/manage/thumbnail?submitid=%i" % (submitid,)) else: raise HTTPSeeOther(location="/submission/%i/%s" % (submitid, slug_for(form.title)))
def POST(self): form = web.input(title="", rating="", friends="", members="", content="", tags="") tags = searchtag.parse_tags(form.tags) if not define.config_read_bool("allow_submit"): raise WeasylError("FeatureDisabled") rating = ratings.CODE_MAP.get(define.get_int(form.rating)) if not rating: raise WeasylError("ratingInvalid") j = orm.Journal() j.title = form.title j.rating = rating j.content = form.content journalid = journal.create(self.user_id, j, friends_only=form.friends, tags=tags) raise web.seeother("/journal/%i/%s" % (journalid, slug_for(form.title)))
def submit_character_post_(request): form = request.web_input(submitfile="", thumbfile="", title="", age="", gender="", height="", weight="", species="", rating="", friends="", content="", tags="") tags = searchtag.parse_tags(form.tags) if not define.config_read_bool("allow_submit"): raise WeasylError("FeatureDisabled") rating = ratings.CODE_MAP.get(define.get_int(form.rating)) if not rating: raise WeasylError("ratingInvalid") c = orm.Character() c.age = form.age c.gender = form.gender c.height = form.height c.weight = form.weight c.species = form.species c.char_name = form.title c.content = form.content c.rating = rating charid = character.create(request.userid, c, form.friends, tags, form.thumbfile, form.submitfile) raise HTTPSeeOther(location="/manage/thumbnail?charid=%i" % (charid,))
def POST(self): form = web.input(submitfile="", thumbfile="", title="", folderid="", subtype="", rating="", friends="", critique="", content="", tags="", imageURL="") tags = searchtag.parse_tags(form.tags) if not define.config_read_bool("allow_submit"): raise WeasylError("FeatureDisabled") rating = ratings.CODE_MAP.get(define.get_int(form.rating)) if not rating: raise WeasylError("ratingInvalid") s = orm.Submission() s.title = form.title s.rating = rating s.content = form.content s.folderid = define.get_int(form.folderid) or None s.subtype = define.get_int(form.subtype) submitid = submission.create_visual( self.user_id, s, friends_only=form.friends, tags=tags, imageURL=form.imageURL, thumbfile=form.thumbfile, submitfile=form.submitfile, critique=form.critique, create_notifications=('nonotification' not in form)) if 'customthumb' in form: raise web.seeother("/manage/thumbnail?submitid=%i" % (submitid,)) else: raise web.seeother("/submission/%i/%s" % (submitid, slug_for(form.title)))
def submit_journal_post_(request): form = request.web_input(title="", rating="", friends="", members="", content="", tags="") tags = searchtag.parse_tags(form.tags) if not define.config_read_bool("allow_submit"): raise WeasylError("FeatureDisabled") rating = ratings.CODE_MAP.get(define.get_int(form.rating)) if not rating: raise WeasylError("ratingInvalid") j = orm.Journal() j.title = form.title j.rating = rating j.content = form.content journalid = journal.create(request.userid, j, friends_only=form.friends, tags=tags) raise HTTPSeeOther(location="/journal/%i/%s" % (journalid, slug_for(form.title)))
def POST(self): form = web.input(submitfile="", coverfile="", thumbfile="", embedlink="", title="", folderid="", subtype="", rating="", friends="", critique="", content="", tags="") tags = searchtag.parse_tags(form.tags) if not define.config_read_bool("allow_submit"): raise WeasylError("FeatureDisabled") rating = ratings.CODE_MAP.get(define.get_int(form.rating)) if not rating: raise WeasylError("ratingInvalid") s = orm.Submission() s.title = form.title s.rating = rating s.content = form.content s.folderid = define.get_int(form.folderid) or None s.subtype = define.get_int(form.subtype) autothumb = ('noautothumb' not in form) submitid, thumb = submission.create_multimedia( self.user_id, s, embedlink=form.embedlink, friends_only=form.friends, tags=tags, coverfile=form.coverfile, thumbfile=form.thumbfile, submitfile=form.submitfile, critique=form.critique, create_notifications=('nonotification' not in form), auto_thumb=autothumb) if thumb and not autothumb: raise web.seeother("/manage/thumbnail?submitid=%i" % (submitid,)) else: raise web.seeother("/submission/%i/%s" % (submitid, slug_for(form.title)))
def submit_visual_post_(request): form = request.web_input(submitfile="", thumbfile="", title="", folderid="", subtype="", rating="", friends="", critique="", content="", tags="", imageURL="") tags = searchtag.parse_tags(form.tags) if not define.config_read_bool("allow_submit"): raise WeasylError("FeatureDisabled") if not define.is_vouched_for(request.userid): raise WeasylError("vouchRequired") rating = ratings.CODE_MAP.get(define.get_int(form.rating)) if not rating: raise WeasylError("ratingInvalid") s = orm.Submission() s.title = form.title s.rating = rating s.content = form.content s.folderid = define.get_int(form.folderid) or None s.subtype = define.get_int(form.subtype) s.submitter_ip_address = request.client_addr s.submitter_user_agent_id = get_user_agent_id(ua_string=request.user_agent) submitid = submission.create_visual( request.userid, s, friends_only=form.friends, tags=tags, imageURL=form.imageURL, thumbfile=form.thumbfile, submitfile=form.submitfile, critique=form.critique, create_notifications=('nonotification' not in form)) if 'customthumb' in form: raise HTTPSeeOther(location="/manage/thumbnail?submitid=%i" % (submitid,)) else: raise HTTPSeeOther(location="/submission/%i/%s" % (submitid, slug_for(form.title)))
def submit_character_post_(request): form = request.web_input(submitfile="", thumbfile="", title="", age="", gender="", height="", weight="", species="", rating="", friends="", content="", tags="") tags = searchtag.parse_tags(form.tags) if not define.config_read_bool("allow_submit"): raise WeasylError("FeatureDisabled") if not define.is_vouched_for(request.userid): raise WeasylError("vouchRequired") rating = ratings.CODE_MAP.get(define.get_int(form.rating)) if not rating: raise WeasylError("ratingInvalid") c = orm.Character() c.age = form.age c.gender = form.gender c.height = form.height c.weight = form.weight c.species = form.species c.char_name = form.title c.content = form.content c.rating = rating charid = character.create(request.userid, c, form.friends, tags, form.thumbfile, form.submitfile) raise HTTPSeeOther(location="/manage/thumbnail?charid=%i" % (charid,))
def submit_multimedia_post_(request): form = request.web_input(submitfile="", coverfile="", thumbfile="", embedlink="", title="", folderid="", subtype="", rating="", friends="", critique="", content="", tags="") tags = searchtag.parse_tags(form.tags) if not define.config_read_bool("allow_submit"): raise WeasylError("FeatureDisabled") rating = ratings.CODE_MAP.get(define.get_int(form.rating)) if not rating: raise WeasylError("ratingInvalid") s = orm.Submission() s.title = form.title s.rating = rating s.content = form.content s.folderid = define.get_int(form.folderid) or None s.subtype = define.get_int(form.subtype) autothumb = ('noautothumb' not in form) submitid, thumb = submission.create_multimedia( request.userid, s, embedlink=form.embedlink, friends_only=form.friends, tags=tags, coverfile=form.coverfile, thumbfile=form.thumbfile, submitfile=form.submitfile, critique=form.critique, create_notifications=('nonotification' not in form), auto_thumb=autothumb) if thumb and not autothumb: raise HTTPSeeOther(location="/manage/thumbnail?submitid=%i" % (submitid, )) else: raise HTTPSeeOther(location="/submission/%i/%s" % (submitid, slug_for(form.title)))
def POST(self): form = web.input(submitfile="", coverfile="boop", thumbfile="", title="", folderid="", subtype="", rating="", friends="", critique="", content="", tags="", embedlink="") tags = searchtag.parse_tags(form.tags) if not define.config_read_bool("allow_submit"): raise WeasylError("FeatureDisabled") rating = ratings.CODE_MAP.get(define.get_int(form.rating)) if not rating: raise WeasylError("ratingInvalid") s = orm.Submission() s.title = form.title s.rating = rating s.content = form.content s.folderid = define.get_int(form.folderid) or None s.subtype = define.get_int(form.subtype) submitid, thumb = submission.create_literary( self.user_id, s, embedlink=form.embedlink, friends_only=form.friends, tags=tags, coverfile=form.coverfile, thumbfile=form.thumbfile, submitfile=form.submitfile, critique=form.critique, create_notifications=('nonotification' not in form)) if thumb: raise web.seeother("/manage/thumbnail?submitid=%i" % (submitid, )) else: raise web.seeother("/submission/%i/%s" % (submitid, slug_for(form.title)))
def POST(self): form = web.input(submitfile="", thumbfile="", title="", age="", gender="", height="", weight="", species="", rating="", friends="", content="", tags="") tags = searchtag.parse_tags(form.tags) if not define.config_read_bool("allow_submit"): raise WeasylError("FeatureDisabled") rating = ratings.CODE_MAP.get(define.get_int(form.rating)) if not rating: raise WeasylError("ratingInvalid") c = orm.Character() c.age = form.age c.gender = form.gender c.height = form.height c.weight = form.weight c.species = form.species c.char_name = form.title c.content = form.content c.rating = rating charid = character.create(self.user_id, c, form.friends, tags, form.thumbfile, form.submitfile) raise web.seeother("/manage/thumbnail?charid=%i" % (charid, ))
mw._delegate = app._delegate app._delegate = mw.endpoint_recording_delegate def weasyl_404(): userid = d.get_userid() return web.notfound(d.errorpage( userid, "**404!** The page you requested could not be found.")) app.notfound = weasyl_404 wsgi_app = app.wsgifunc() wsgi_app = mw.InputWrapMiddleware(wsgi_app) wsgi_app = mw.URLSchemeFixingMiddleware(wsgi_app) if d.config_read_bool('profile_responses', section='backend'): from werkzeug.contrib.profiler import ProfilerMiddleware wsgi_app = ProfilerMiddleware( wsgi_app, profile_dir=m.MACRO_SYS_BASE_PATH + 'profile-stats') if d.config_obj.has_option('sentry', 'dsn'): wsgi_app = mw.SentryEnvironmentMiddleware(wsgi_app, d.config_obj.get('sentry', 'dsn')) configure_libweasyl( dbsession=d.sessionmaker, not_found_exception=web.notfound, base_file_path=m.MACRO_SYS_BASE_PATH, staff_config_path=m.MACRO_SYS_STAFF_CONFIG_PATH, media_link_formatter_callback=format_media_link, )
# Setup properties and methods for request objects. config.add_request_method(mw.pg_connection_request_property, name='pg_connection', reify=True) config.add_request_method(mw.userid_request_property, name='userid', reify=True) config.add_request_method(mw.log_exc_request_method, name='log_exc') config.add_request_method(mw.web_input_request_method, name='web_input') config.add_request_method(mw.set_cookie_on_response) config.add_request_method(mw.delete_cookie_on_response) wsgi_app = config.make_wsgi_app() wsgi_app = mw.InputWrapMiddleware(wsgi_app) wsgi_app = mw.URLSchemeFixingMiddleware(wsgi_app) if d.config_read_bool('profile_responses', section='backend'): from werkzeug.contrib.profiler import ProfilerMiddleware wsgi_app = ProfilerMiddleware(wsgi_app, profile_dir=m.MACRO_STORAGE_ROOT + 'profile-stats') if d.config_obj.has_option('sentry', 'dsn'): wsgi_app = mw.SentryEnvironmentMiddleware( wsgi_app, d.config_obj.get('sentry', 'dsn')) configure_libweasyl( dbsession=d.sessionmaker, not_found_exception=HTTPNotFound, base_file_path=m.MACRO_STORAGE_ROOT, staff_config_dict=staff_config.load(), media_link_formatter_callback=format_media_link, )