本文整理汇总了Python中weasyl.define.get_config函数的典型用法代码示例。如果您正苦于以下问题:Python get_config函数的具体用法?Python get_config怎么用?Python get_config使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了get_config函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: GET
def GET(self, name=""):
form = web.input(userid="", name="", backid=None, nextid=None)
form.name = name if name else form.name
form.userid = define.get_int(form.userid)
config = define.get_config(self.user_id)
rating = define.get_rating(self.user_id)
otherid = profile.resolve(self.user_id, form.userid, form.name)
if not otherid:
raise WeasylError("userRecordMissing")
elif not self.user_id and "h" in define.get_config(otherid):
return define.errorpage(self.user_id, errorcode.no_guest_access)
userprofile = profile.select_profile(otherid, images=True, viewer=self.user_id)
has_fullname = userprofile['full_name'] is not None and userprofile['full_name'].strip() != ''
page_title = u"%s's journals" % (userprofile['full_name'] if has_fullname else userprofile['username'],)
page = define.common_page_start(self.user_id, title=page_title)
page.append(define.render(template.user_journals, [
# Profile information
userprofile,
# User information
profile.select_userinfo(otherid, config=userprofile['config']),
# Relationship
profile.select_relation(self.user_id, otherid),
# Journals list
# TODO(weykent): use select_user_list
journal.select_list(self.user_id, rating, 250, otherid=otherid, config=config),
# Latest journal
journal.select_latest(self.user_id, rating, otherid=otherid),
]))
return define.common_page_end(self.user_id, page)
开发者ID:0x15,项目名称:weasyl,代码行数:34,代码来源:profile.py
示例2: select_latest
def select_latest(userid, rating, otherid=None, config=None):
if config is None:
config = d.get_config(userid)
statement = ["SELECT jo.journalid, jo.title, jo.content, jo.unixtime FROM journal jo WHERE"]
if userid:
if d.is_sfw_mode():
statement.append(" (jo.rating <= %i)" % (rating,))
else:
statement.append(" (jo.userid = %i OR jo.rating <= %i)" % (userid, rating))
if not otherid:
statement.append(m.MACRO_IGNOREUSER % (userid, "jo"))
statement.append(m.MACRO_BLOCKTAG_JOURNAL % (userid, userid))
else:
statement.append(" jo.rating <= %i" % (rating,))
if otherid:
statement.append(
" AND jo.userid = %i AND jo.settings !~ '[%sh]'" % (otherid, "" if frienduser.check(userid, otherid) else "f"))
statement.append("ORDER BY jo.journalid DESC LIMIT 1")
query = d.execute("".join(statement), options="single")
if query:
return {
"journalid": query[0],
"title": query[1],
"content": query[2],
"unixtime": query[3],
"comments": d.execute("SELECT COUNT(*) FROM journalcomment WHERE targetid = %i AND settings !~ 'h'",
[query[0]], ["element"]),
}
开发者ID:Syfaro,项目名称:weasyl,代码行数:33,代码来源:journal.py
示例3: select_list
def select_list(userid, rating, limit, otherid=None, backid=None, nextid=None, config=None):
if config is None:
config = d.get_config(userid)
statement = ["SELECT jo.journalid, jo.title, jo.unixtime FROM journal jo WHERE"]
if userid:
# filter own content in SFW mode
if d.is_sfw_mode():
statement.append(" (jo.rating <= %i)" % (rating,))
else:
statement.append(" (jo.userid = %i OR jo.rating <= %i)" % (userid, rating))
if not otherid:
statement.append(m.MACRO_IGNOREUSER % (userid, "jo"))
statement.append(m.MACRO_BLOCKTAG_JOURNAL % (userid, userid))
else:
statement.append(" jo.rating <= %i" % (rating,))
if otherid:
statement.append(
" AND jo.userid = %i AND jo.settings !~ '[%sh]'" % (otherid, "" if frienduser.check(userid, otherid) else "f"))
else:
statement.append(" AND jo.settings !~ 'h'")
statement.append("ORDER BY jo.journalid DESC LIMIT %i" % limit)
query = [{
"journalid": i[0],
"title": i[1],
"unixtime": i[2],
} for i in d.execute("".join(statement))]
return query[::-1] if backid else query
开发者ID:Syfaro,项目名称:weasyl,代码行数:33,代码来源:journal.py
示例4: followed_
def followed_(request):
cachename = "user/followed.html"
form = request.web_input(userid="", name="", backid=None, nextid=None)
form.name = request.matchdict.get('name', form.name)
form.userid = define.get_int(form.userid)
otherid = profile.resolve(request.userid, form.userid, form.name)
if not otherid:
raise WeasylError("userRecordMissing")
elif not request.userid and "h" in define.get_config(otherid):
return Response(define.errorpage(request.userid, errorcode.no_guest_access))
userprofile = profile.select_profile(otherid, images=True, viewer=request.userid)
return Response(define.webpage(request.userid, cachename, [
# Profile information
userprofile,
# User information
profile.select_userinfo(otherid, config=userprofile['config']),
# Relationship
profile.select_relation(request.userid, otherid),
# Followed
followuser.select_followed(request.userid, otherid, limit=44,
backid=define.get_int(form.backid), nextid=define.get_int(form.nextid)),
]))
开发者ID:Syfaro,项目名称:weasyl,代码行数:27,代码来源:profile.py
示例5: shouts_
def shouts_(request):
form = request.web_input(userid="", name="", backid=None, nextid=None)
form.name = request.matchdict.get('name', form.name)
form.userid = define.get_int(form.userid)
otherid = profile.resolve(request.userid, form.userid, form.name)
if not otherid:
raise WeasylError("userRecordMissing")
elif not request.userid and "h" in define.get_config(otherid):
return Response(define.errorpage(request.userid, errorcode.no_guest_access))
userprofile = profile.select_profile(otherid, images=True, viewer=request.userid)
has_fullname = userprofile['full_name'] is not None and userprofile['full_name'].strip() != ''
page_title = u"%s's shouts" % (userprofile['full_name'] if has_fullname else userprofile['username'],)
page = define.common_page_start(request.userid, title=page_title)
page.append(define.render('user/shouts.html', [
# Profile information
userprofile,
# User information
profile.select_userinfo(otherid, config=userprofile['config']),
# Relationship
profile.select_relation(request.userid, otherid),
# Myself
profile.select_myself(request.userid),
# Comments
shout.select(request.userid, ownerid=otherid),
# Feature
"shouts",
]))
return Response(define.common_page_end(request.userid, page))
开发者ID:Syfaro,项目名称:weasyl,代码行数:33,代码来源:profile.py
示例6: select_query
def select_query(userid, rating, otherid=None, folderid=None,
backid=None, nextid=None, subcat=None, exclude=None,
options=[], config=None, profile_page_filter=False,
index_page_filter=False, featured_filter=False):
if config is None:
config = d.get_config(userid)
statement = [
"FROM submission su "
"INNER JOIN profile pr ON su.userid = pr.userid "
"LEFT JOIN folder f USING (folderid) "
"WHERE su.settings !~ 'h'"]
if profile_page_filter:
statement.append(" AND COALESCE(f.settings !~ 'u', true)")
if index_page_filter:
statement.append(" AND COALESCE(f.settings !~ 'm', true)")
if featured_filter:
statement.append(" AND COALESCE(f.settings ~ 'f', false)")
# Logged in users will see their own submissions regardless of rating
# EXCEPT if they are in SFW mode
if userid and not d.is_sfw_mode():
statement.append(" AND (su.rating <= %i OR su.userid = %i)" % (rating, userid))
else:
statement.append(" AND su.rating <= %i" % (rating,))
if otherid:
statement.append(" AND su.userid = %i" % (otherid,))
if folderid:
statement.append(" AND su.folderid = %i" % (folderid,))
if exclude:
statement.append(" AND su.submitid != %i" % (exclude,))
if subcat:
statement.append(" AND su.subtype >= %i AND su.subtype < %i" % (subcat, subcat + 1000))
if "critique" in options:
statement.append(" AND su.settings ~ 'q' AND su.unixtime > %i" % (d.get_time() - 259200,))
if backid:
statement.append(" AND su.submitid > %i" % (backid,))
elif nextid:
statement.append(" AND su.submitid < %i" % (nextid,))
elif "offset" in options:
statement.append(" AND su.unixtime < %i" % (d.get_time() - 1800,))
if userid:
statement.append(m.MACRO_FRIENDUSER_SUBMIT % (userid, userid, userid))
if not otherid:
statement.append(m.MACRO_IGNOREUSER % (userid, "su"))
statement.append(m.MACRO_BLOCKTAG_SUBMIT % (userid, userid))
else:
statement.append(" AND su.settings !~ 'f'")
return statement
开发者ID:Syfaro,项目名称:weasyl,代码行数:57,代码来源:submission.py
示例7: edit_preferences
def edit_preferences(userid, timezone=None,
preferences=None, jsonb_settings=None):
"""
Apply changes to stored preferences for a given user.
:param userid: The userid to apply changes to
:param timezone: (optional) new Timezone to set for user
:param preferences: (optional) old-style char preferences, overwrites all previous settings
:param jsonb_settings: (optional) JSON preferences, overwrites all previous settings
:return: None
"""
config = d.get_config(userid)
tooyoung = False
if preferences is not None:
tooyoung |= get_user_age(userid) < preferences.rating.minimum_age
if jsonb_settings is not None:
sfwrating = jsonb_settings.max_sfw_rating
sfwrating = ratings.CODE_MAP.get(sfwrating, ratings.GENERAL)
tooyoung |= get_user_age(userid) < sfwrating.minimum_age
if tooyoung:
raise WeasylError("birthdayInsufficient")
if timezone is not None and timezone not in pytz.all_timezones:
raise WeasylError('invalidTimezone')
db = d.connect()
updates = {}
if preferences is not None:
# update legacy preferences
# clear out the option codes that are being replaced.
for i in Config.all_option_codes:
config = config.replace(i, "")
config_str = config + preferences.to_code()
updates['config'] = config_str
d._get_config.invalidate(userid)
if jsonb_settings is not None:
# update jsonb preferences
updates['jsonb_settings'] = jsonb_settings.get_raw()
d._get_profile_settings.invalidate(userid)
d.engine.execute(
tables.profile.update().where(tables.profile.c.userid == userid),
updates
)
# update TZ
if timezone is not None:
tz = db.query(orm.UserTimezone).get(userid)
if tz is None:
tz = orm.UserTimezone(userid=userid)
db.add(tz)
tz.timezone = timezone
db.flush()
tz.cache()
else:
db.flush()
开发者ID:makyo,项目名称:weasyl,代码行数:56,代码来源:profile.py
示例8: select_char
def select_char(userid, rating, limit, otherid=None, backid=None, nextid=None, config=None):
if config is None:
config = d.get_config(userid)
query = []
statement = ["""
SELECT ch.charid, ch.char_name, ch.rating, fa.unixtime, ch.userid, pr.username, ch.settings
FROM favorite fa
INNER JOIN character ch ON fa.targetid = ch.charid
INNER JOIN profile pr ON ch.userid = pr.userid
WHERE fa.type = 'f'
AND ch.settings !~ 'h'
"""]
if userid:
# filter own content in SFW mode
if d.is_sfw_mode():
statement.append(" AND (ch.rating <= %i)" % (rating,))
else:
statement.append(" AND (ch.userid = %i OR ch.rating <= %i)" % (userid, rating))
statement.append(m.MACRO_FRIENDUSER_CHARACTER % (userid, userid, userid))
statement.append(m.MACRO_IGNOREUSER % (userid, "ch"))
statement.append(m.MACRO_BLOCKTAG_CHAR % (userid, userid))
else:
statement.append(" AND ch.rating <= %i AND ch.settings !~ 'f'" % (rating,))
if otherid:
statement.append(" AND fa.userid = %i" % (otherid,))
if backid:
statement.append(" AND fa.unixtime > "
"(SELECT unixtime FROM favorite WHERE (userid, targetid, type) = (%i, %i, 'f'))"
% (otherid, backid))
elif nextid:
statement.append(" AND fa.unixtime < "
"(SELECT unixtime FROM favorite WHERE (userid, targetid, type) = (%i, %i, 'f'))"
% (otherid, nextid))
statement.append(" ORDER BY fa.unixtime%s LIMIT %i" % ("" if backid else " DESC", limit))
from weasyl import character
query = [{
"contype": 20,
"charid": i[0],
"title": i[1],
"rating": i[2],
"unixtime": i[3],
"userid": i[4],
"username": i[5],
"sub_media": character.fake_media_items(i[0], i[4], d.get_sysname(i[5]), i[6]),
} for i in d.execute("".join(statement))]
return query[::-1] if backid else query
开发者ID:Syfaro,项目名称:weasyl,代码行数:52,代码来源:favorite.py
示例9: select_journal
def select_journal(userid, rating, limit, otherid=None, backid=None, nextid=None, config=None):
if config is None:
config = d.get_config(userid)
query = []
statement = ["""
SELECT jo.journalid, jo.title, jo.rating, fa.unixtime, jo.userid, pr.username, pr.config
FROM favorite fa
INNER JOIN journal jo ON fa.targetid = jo.journalid
INNER JOIN profile pr ON jo.userid = pr.userid
WHERE fa.type = 'j'
AND jo.settings !~ 'h'
"""]
if userid:
# filter own content in SFW mode
if d.is_sfw_mode():
statement.append(" AND (jo.rating <= %i)" % (rating,))
else:
statement.append(" AND (jo.userid = %i OR jo.rating <= %i)" % (userid, rating))
statement.append(m.MACRO_FRIENDUSER_JOURNAL % (userid, userid, userid))
statement.append(m.MACRO_IGNOREUSER % (userid, "jo"))
statement.append(m.MACRO_BLOCKTAG_JOURNAL % (userid, userid))
else:
statement.append(" AND jo.rating <= %i AND jo.settings !~ 'f'" % (rating,))
if otherid:
statement.append(" AND fa.userid = %i" % (otherid,))
if backid:
statement.append(" AND fa.unixtime > "
"(SELECT unixtime FROM favorite WHERE (userid, targetid, type) = (%i, %i, 'j'))"
% (otherid, backid))
elif nextid:
statement.append(" AND fa.unixtime < "
"(SELECT unixtime FROM favorite WHERE (userid, targetid, type) = (%i, %i, 'j'))"
% (otherid, nextid))
statement.append(" ORDER BY fa.unixtime%s LIMIT %i" % ("" if backid else " DESC", limit))
query = [{
"contype": 30,
"journalid": i[0],
"title": i[1],
"rating": i[2],
"unixtime": i[3],
"userid": i[4],
"username": i[5],
} for i in d.execute("".join(statement))]
media.populate_with_user_media(query)
return query[::-1] if backid else query
开发者ID:Syfaro,项目名称:weasyl,代码行数:51,代码来源:favorite.py
示例10: insert
def insert(userid, otherid):
if ignoreuser.check(otherid, userid):
raise WeasylError("IgnoredYou")
elif ignoreuser.check(userid, otherid):
raise WeasylError("YouIgnored")
d.engine.execute(
'INSERT INTO watchuser (userid, otherid, settings) VALUES (%(user)s, %(other)s, %(settings)s) '
'ON CONFLICT DO NOTHING',
user=userid, other=otherid, settings=WatchSettings.from_code(d.get_config(userid)).to_code())
from weasyl import welcome
welcome.followuser_remove(userid, otherid)
welcome.followuser_insert(userid, otherid)
开发者ID:Weasyl,项目名称:weasyl,代码行数:14,代码来源:followuser.py
示例11: collections_
def collections_(request):
form = request.web_input(userid="", name="", backid=None, nextid=None,
folderid=None)
form.name = request.matchdict.get('name', form.name)
form.userid = define.get_int(form.userid)
config = define.get_config(request.userid)
rating = define.get_rating(request.userid)
otherid = profile.resolve(request.userid, form.userid, form.name)
if not otherid:
raise WeasylError("userRecordMissing")
elif not request.userid and "h" in define.get_config(otherid):
return Response(define.errorpage(request.userid, errorcode.no_guest_access))
userprofile = profile.select_profile(otherid, images=True, viewer=request.userid)
has_fullname = userprofile['full_name'] is not None and userprofile['full_name'].strip() != ''
page_title = u"%s's collections" % (userprofile['full_name'] if has_fullname else userprofile['username'],)
page = define.common_page_start(request.userid, title=page_title)
url_format = "/collections?userid={userid}&%s".format(userid=userprofile['userid'])
result = pagination.PaginatedResult(
collection.select_list, collection.select_count, 'submitid', url_format, request.userid, rating, 66,
otherid=otherid, backid=define.get_int(form.backid), nextid=define.get_int(form.nextid), config=config)
page.append(define.render('user/collections.html', [
# Profile information
userprofile,
# User information
profile.select_userinfo(otherid, config=userprofile['config']),
# Relationship
profile.select_relation(request.userid, otherid),
# Collections
result,
]))
return Response(define.common_page_end(request.userid, page))
开发者ID:Syfaro,项目名称:weasyl,代码行数:37,代码来源:profile.py
示例12: template_fields
def template_fields(userid):
config = d.get_config(userid)
rating = d.get_rating(userid)
submissions = list(filter_submissions(userid, recent_submissions()))
ret = partition_submissions(submissions)
return ret + [
# Recent site news update
siteupdate.select(),
# Recent critique submissions
submission.select_list(userid, rating, 4, options=["critique"], config=config),
# Currently streaming users
profile.select_streaming(userid, rating, 4),
# Recently popular submissions
list(itertools.islice(filter_submissions(userid, submission.select_recently_popular(), incidence_limit=1), 11)),
]
开发者ID:charmander,项目名称:weasyl,代码行数:16,代码来源:index.py
示例13: select_user_list
def select_user_list(userid, rating, limit, otherid=None, backid=None, nextid=None, config=None):
if config is None:
config = d.get_config(userid)
statement = [
"SELECT jo.journalid, jo.title, jo.userid, pr.username, pr.config, jo.rating, jo.unixtime"
" FROM journal jo"
" JOIN profile pr ON jo.userid = pr.userid"
" WHERE jo.settings !~ 'h'"]
if otherid:
statement.append(" AND jo.userid = %i")
if userid:
# filter own content in SFW mode
if d.is_sfw_mode():
statement.append(" AND (jo.rating <= %i)" % (rating,))
else:
statement.append(" AND (jo.userid = %i OR jo.rating <= %i)" % (userid, rating))
statement.append(m.MACRO_FRIENDUSER_JOURNAL % (userid, userid, userid))
if not otherid:
statement.append(m.MACRO_IGNOREUSER % (userid, "jo"))
statement.append(m.MACRO_BLOCKTAG_JOURNAL % (userid, userid))
else:
statement.append(" AND jo.rating <= %i AND jo.settings !~ 'f'" % (rating,))
if backid:
statement.append(" AND jo.journalid > %i" % backid)
elif nextid:
statement.append(" AND jo.journalid < %i" % nextid)
statement.append(" ORDER BY jo.journalid%s LIMIT %i" % ("" if backid else " DESC", limit))
query = [{
"contype": 30,
"journalid": i[0],
"title": i[1],
"userid": i[2],
"username": i[3],
"rating": i[5],
"unixtime": i[6],
} for i in d.execute("".join(statement))]
media.populate_with_user_media(query)
return query[::-1] if backid else query
开发者ID:Syfaro,项目名称:weasyl,代码行数:47,代码来源:journal.py
示例14: select_near
def select_near(userid, rating, limit, otherid, folderid, submitid, config=None):
if config is None:
config = d.get_config(userid)
statement = ["""
SELECT su.submitid, su.title, su.rating, su.unixtime, su.userid,
pr.username, su.settings, su.subtype
FROM submission su
INNER JOIN profile pr ON su.userid = pr.userid
WHERE su.userid = %i
AND su.settings !~ 'h'
""" % (otherid,)]
if userid:
# Users always see their own content.
statement.append(" AND (su.rating <= %i OR su.userid = %i)" % (rating, userid))
statement.append(m.MACRO_IGNOREUSER % (userid, "su"))
statement.append(m.MACRO_FRIENDUSER_SUBMIT % (userid, userid, userid))
statement.append(m.MACRO_BLOCKTAG_SUBMIT % (userid, userid))
else:
statement.append(" AND su.rating <= %i AND su.settings !~ 'f'" % (rating,))
if folderid:
statement.append(" AND su.folderid = %i" % folderid)
query = [{
"contype": 10,
"submitid": i[0],
"title": i[1],
"rating": i[2],
"unixtime": i[3],
"userid": i[4],
"username": i[5],
"subtype": i[7],
} for i in d.execute("".join(statement))]
query.sort(key=lambda i: i['submitid'])
older = [i for i in query if i["submitid"] < submitid][-limit:]
newer = [i for i in query if i["submitid"] > submitid][:limit]
media.populate_with_submission_media(older + newer)
return {
"older": older,
"newer": newer,
}
开发者ID:Syfaro,项目名称:weasyl,代码行数:45,代码来源:submission.py
示例15: GET
def GET(self):
config = define.get_config(self.user_id)
current_rating, current_sfw_rating = define.get_config_rating(self.user_id)
age = profile.get_user_age(self.user_id)
allowed_ratings = ratings.get_ratings_for_age(age)
jsonb_settings = define.get_profile_settings(self.user_id)
return define.webpage(self.user_id, "control/edit_preferences.html", [
# Config
config,
jsonb_settings,
# Rating
current_rating,
current_sfw_rating,
age,
allowed_ratings,
web.ctx.weasyl_session.timezone.timezone,
define.timezones(),
])
开发者ID:0x15,项目名称:weasyl,代码行数:18,代码来源:settings.py
示例16: control_editpreferences_get_
def control_editpreferences_get_(request):
config = define.get_config(request.userid)
current_rating, current_sfw_rating = define.get_config_rating(request.userid)
age = profile.get_user_age(request.userid)
allowed_ratings = ratings.get_ratings_for_age(age)
jsonb_settings = define.get_profile_settings(request.userid)
return Response(define.webpage(request.userid, "control/edit_preferences.html", [
# Config
config,
jsonb_settings,
# Rating
current_rating,
current_sfw_rating,
age,
allowed_ratings,
request.weasyl_session.timezone.timezone,
define.timezones(),
]))
开发者ID:charmander,项目名称:weasyl,代码行数:18,代码来源:settings.py
示例17: manage_collections_get_
def manage_collections_get_(request):
form = request.web_input(feature="", backid="", nextid="")
backid = int(form.backid) if form.backid else None
nextid = int(form.nextid) if form.nextid else None
config = define.get_config(request.userid)
rating = define.get_rating(request.userid)
if form.feature == "pending":
return Response(define.webpage(request.userid, "manage/collections_pending.html", [
# Pending Collections
collection.select_list(request.userid, rating, 30, otherid=request.userid, backid=backid, nextid=nextid,
pending=True, config=config),
request.userid
]))
return Response(define.webpage(request.userid, "manage/collections_accepted.html", [
# Accepted Collections
collection.select_list(request.userid, rating, 30, otherid=request.userid, backid=backid, nextid=nextid,
config=config),
]))
开发者ID:charmander,项目名称:weasyl,代码行数:21,代码来源:settings.py
示例18: select_submit_query
def select_submit_query(userid, rating, otherid=None, backid=None, nextid=None, config=None):
if config is None:
config = d.get_config(userid)
statement = [
" FROM favorite fa INNER JOIN"
" submission su ON fa.targetid = su.submitid"
" INNER JOIN profile pr ON su.userid = pr.userid"
" WHERE fa.type = 's' AND su.settings !~ 'h'"]
if userid:
# filter own content in SFW mode
if d.is_sfw_mode():
statement.append(" AND (su.rating <= %i)" % (rating,))
else:
statement.append(" AND (su.userid = %i OR su.rating <= %i)" % (userid, rating))
statement.append(m.MACRO_IGNOREUSER % (userid, "su"))
statement.append(m.MACRO_BLOCKTAG_SUBMIT % (userid, userid))
statement.append(m.MACRO_FRIENDUSER_SUBMIT % (userid, userid, userid))
else:
statement.append(" AND su.rating <= %i" % (rating,))
statement.append(" AND su.settings !~ 'f'")
if otherid:
statement.append(" AND fa.userid = %i" % otherid)
if backid:
statement.append(" AND fa.unixtime > "
"(SELECT unixtime FROM favorite WHERE (userid, targetid, type) = (%i, %i, 's'))"
% (otherid, backid))
elif nextid:
statement.append(" AND fa.unixtime < "
"(SELECT unixtime FROM favorite WHERE (userid, targetid, type) = (%i, %i, 's'))"
% (otherid, nextid))
return statement
开发者ID:Syfaro,项目名称:weasyl,代码行数:36,代码来源:favorite.py
示例19: GET
def GET(self, login):
userid = self.user_id
otherid = profile.resolve_by_login(login)
user = profile.select_profile(otherid)
rating = d.get_rating(userid)
u_config = d.get_config(userid)
o_config = user.pop('config')
o_settings = user.pop('settings')
if not otherid and "h" in o_config:
return json.dumps({
"error": {
"code": 200,
"text": "Profile hidden from unlogged users."
}})
user.pop('userid', None)
user.pop('commish_slots', None)
user['created_at'] = d.iso8601(user.pop('unixtime'))
user['media'] = api.tidy_all_media(user.pop('user_media'))
user['login_name'] = d.get_sysname(user['username'])
user['profile_text'] = markdown(user['profile_text'])
folders = folder.select_list(otherid, "api/all")
if folders:
old_folders = folders
folders = list()
for fldr in (i for i in old_folders if 'parentid' not in i):
newfolder = {
"folder_id": fldr['folderid'],
"title": fldr['title']
}
if fldr['haschildren']:
subfolders = list()
for sub in (i for i in old_folders if 'parentid' in i and i['parentid'] == fldr['folderid']):
subfolders.append({
"folder_id": sub['folderid'],
"title": sub['title']
})
newfolder['subfolders'] = subfolders
folders.append(newfolder)
user['folders'] = folders
commissions = {
"details": None,
"price_classes": None,
"commissions": self.convert_commission_setting(o_settings[0]),
"trades": self.convert_commission_setting(o_settings[1]),
"requests": self.convert_commission_setting(o_settings[2])
}
commission_list = commishinfo.select_list(otherid)
if commission_list:
commissions['details'] = commission_list['content']
if len(commission_list['class']) > 0:
classes = list()
for cclass in commission_list['class']:
commission_class = {
"title": cclass['title']
}
if len(commission_list['price']) > 0:
prices = list()
for cprice in (i for i in commission_list['price'] if i['classid'] == cclass['classid']):
if 'a' in cprice['settings']:
ptype = 'additional'
else:
ptype = 'base'
price = {
"title": cprice['title'],
"price_min": self.convert_commission_price(cprice['amount_min'], cprice['settings']),
"price_max": self.convert_commission_price(cprice['amount_min'], cprice['settings']),
'price_type': ptype
}
prices.append(price)
commission_class['prices'] = prices
classes.append(commission_class)
commissions['price_classes'] = classes
user['commission_info'] = commissions
user['relationship'] = profile.select_relation(userid, otherid) if userid else None
if 'O' in o_config:
submissions = collection.select_list(
userid, rating, 11, otherid=otherid, options=["cover"], config=u_config)
more_submissions = 'collections'
featured = None
elif 'A' in o_config:
submissions = character.select_list(
userid, rating, 11, otherid=otherid, options=["cover"], config=u_config)
#.........这里部分代码省略.........
开发者ID:0x15,项目名称:weasyl,代码行数:101,代码来源:api.py
示例20: can_remove_tags
def can_remove_tags(userid, ownerid):
return userid == ownerid or userid in staff.MODS or 'k' not in d.get_config(ownerid)
开发者ID:charmander,项目名称:weasyl,代码行数:2,代码来源:searchtag.py
注:本文中的weasyl.define.get_config函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论