当前位置: 首页>>代码示例>>Python>>正文


Python RedditController.__before__方法代码示例

本文整理汇总了Python中r2.controllers.reddit_base.RedditController.__before__方法的典型用法代码示例。如果您正苦于以下问题:Python RedditController.__before__方法的具体用法?Python RedditController.__before__怎么用?Python RedditController.__before__使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在r2.controllers.reddit_base.RedditController的用法示例。


在下文中一共展示了RedditController.__before__方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: __before__

# 需要导入模块: from r2.controllers.reddit_base import RedditController [as 别名]
# 或者: from r2.controllers.reddit_base.RedditController import __before__ [as 别名]
    def __before__(self, event):
        RedditController.__before__(self)

        if event:
            try:
                c.liveupdate_event = LiveUpdateEvent._byID(event)
            except tdb_cassandra.NotFound:
                pass

        if not c.liveupdate_event:
            self.abort404()

        if c.user_is_loggedin:
            c.liveupdate_permissions = \
                    c.liveupdate_event.get_permissions(c.user)

            # revoke some permissions from everyone after closing
            if c.liveupdate_event.state != "live":
                c.liveupdate_permissions = (c.liveupdate_permissions
                    .without("update")
                    .without("close")
                )

            if c.user_is_admin:
                c.liveupdate_permissions = ContributorPermissionSet.SUPERUSER
        else:
            c.liveupdate_permissions = ContributorPermissionSet.NONE
开发者ID:sol2tice,项目名称:peachtree,代码行数:29,代码来源:controllers.py

示例2: __before__

# 需要导入模块: from r2.controllers.reddit_base import RedditController [as 别名]
# 或者: from r2.controllers.reddit_base.RedditController import __before__ [as 别名]
 def __before__(self):
     try:
         c.error_page = True
         RedditController.__before__(self)
     except (HTTPMovedPermanently, HTTPFound):
         # ignore an attempt to redirect from an error page
         pass
     except:
         handle_awful_failure("Error occurred in ErrorController.__before__")
开发者ID:kurikintoki,项目名称:reddit,代码行数:11,代码来源:error.py

示例3: __before__

# 需要导入模块: from r2.controllers.reddit_base import RedditController [as 别名]
# 或者: from r2.controllers.reddit_base.RedditController import __before__ [as 别名]
    def __before__(self):
        try:
            c.error_page = True
            RedditController.__before__(self)
        except (HTTPMovedPermanently, HTTPFound):
            # ignore an attempt to redirect from an error page
            pass
        except Exception as e:
            handle_awful_failure("ErrorController.__before__: %r" % e)

        # c.error_page is special-cased in a couple places to bypass
        # c.site checks. We shouldn't allow the user to get here other
        # than through `middleware.py:error_mapper`.
        if not request.environ.get('pylons.error_call'):
            abort(403, "direct access to error controller disallowed")
开发者ID:ActivateServices,项目名称:reddit,代码行数:17,代码来源:error.py

示例4: __before__

# 需要导入模块: from r2.controllers.reddit_base import RedditController [as 别名]
# 或者: from r2.controllers.reddit_base.RedditController import __before__ [as 别名]
    def __before__(self, event):
        RedditController.__before__(self)

        if event:
            try:
                c.liveupdate_event = LiveUpdateEvent._byID(event)
            except tdb_cassandra.NotFound:
                pass

        if not c.liveupdate_event:
            self.abort404()

        c.liveupdate_can_manage = (c.liveupdate_event.state == "live" and
                                   (c.user_is_loggedin and c.user_is_admin))
        c.liveupdate_can_edit = (c.liveupdate_event.state == "live" and
                                 (c.user_is_loggedin and
                                  (c.liveupdate_event.is_editor(c.user) or
                                   c.user_is_admin)))
开发者ID:Web5design,项目名称:reddit-plugin-liveupdate,代码行数:20,代码来源:controllers.py

示例5: __before__

# 需要导入模块: from r2.controllers.reddit_base import RedditController [as 别名]
# 或者: from r2.controllers.reddit_base.RedditController import __before__ [as 别名]
    def __before__(self, event):
        RedditController.__before__(self)

        if event:
            try:
                c.liveupdate_event = LiveUpdateEvent._byID(event)
            except tdb_cassandra.NotFound:
                pass

        if not c.liveupdate_event:
            self.abort404()

        if c.user_is_loggedin:
            c.liveupdate_permissions = \
                    c.liveupdate_event.get_permissions(c.user)

            # revoke some permissions from everyone after closing
            if c.liveupdate_event.state != "live":
                c.liveupdate_permissions = (c.liveupdate_permissions
                    .without("update")
                    .without("close")
                )

            if c.user_is_admin:
                c.liveupdate_permissions = ContributorPermissionSet.SUPERUSER
        else:
            c.liveupdate_permissions = ContributorPermissionSet.NONE

        if c.liveupdate_event.banned and not c.liveupdate_permissions:
            error_page = RedditError(
                title=_("this thread has been banned"),
                message="",
                image="subreddit-banned.png",
            )
            request.environ["usable_error_content"] = error_page.render()
            self.abort403()

        if (c.liveupdate_event.nsfw and
                not c.over18 and
                request.host != g.media_domain and  # embeds are special
                c.render_style == "html"):
            return self.intermediate_redirect("/over18", sr_path=False)
开发者ID:Safturento,项目名称:reddit-plugin-liveupdate,代码行数:44,代码来源:controllers.py


注:本文中的r2.controllers.reddit_base.RedditController.__before__方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。