예제 #1
0
파일: error.py 프로젝트: tjr1351/reddit
 def __before__(self):
     try:
         c.error_page = True
         RedditController.__before__(self)
     except:
         handle_awful_failure(
             "Error occurred in ErrorController.__before__")
예제 #2
0
    def pre(self):
        RedditController.pre(self)
        if g.disable_wiki and not c.user_is_admin:
            self.handle_error(403, 'WIKI_DOWN')
        if not c.site._should_wiki:
            self.handle_error(404, 'NOT_WIKIABLE')  # /r/mod for an example
        frontpage = c.site.is_homepage
        c.wiki_base_url = join_urls(c.site.path, 'wiki')
        c.wiki_api_url = join_urls(c.site.path, '/api/wiki')

        # CUSTOM
        if frontpage:
            c.wiki_base_url = join_urls('/', 'wiki')
            c.wiki_api_url = join_urls('/', '/api/wiki')

        c.wiki_id = g.default_sr if frontpage else c.site.name

        self.editconflict = False
        c.is_wiki_mod = (c.user_is_admin or c.site.is_moderator_with_perms(
            c.user, 'wiki')) if c.user_is_loggedin else False
        c.wikidisabled = False

        mode = c.site.wikimode
        if not mode or mode == 'disabled':
            if not c.is_wiki_mod:
                self.handle_error(403, 'WIKI_DISABLED')
            else:
                c.wikidisabled = True
예제 #3
0
 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__")
예제 #4
0
 def __before__(self):
     try:
         c.error_page = True
         RedditController.__before__(self)
     except HTTPFound:
         # ignore an attempt to redirect from an error page
         pass
     except:
         handle_awful_failure("Error occurred in ErrorController.__before__")
예제 #5
0
 def pre(self):
     RedditController.pre(self)
     if g.disable_wiki and not c.user_is_admin:
         self.handle_error(403, 'WIKI_DOWN')
     if not c.site._should_wiki:
         self.handle_error(404, 'NOT_WIKIABLE') # /r/mod for an example
     frontpage = isinstance(c.site, DefaultSR)
     c.wiki_base_url = join_urls(c.site.path, 'wiki')
     c.wiki_api_url = join_urls(c.site.path, '/api/wiki')
     c.wiki_id = g.default_sr if frontpage else c.site.name
     self.editconflict = False
     c.is_wiki_mod = (c.user_is_admin or c.site.is_moderator(c.user)) if c.user_is_loggedin else False
     c.wikidisabled = False
     
     mode = c.site.wikimode
     if not mode or mode == 'disabled':
         if not c.is_wiki_mod:
             self.handle_error(403, 'WIKI_DISABLED')
         else:
             c.wikidisabled = True
예제 #6
0
 def pre(self):
     RedditController.pre(self)
     if g.wiki_disabled and not c.user_is_admin:
         self.handle_error(403, 'WIKI_DOWN')
     if not c.site._should_wiki:
         self.handle_error(404, 'NOT_WIKIABLE') # /r/mod for an example
     frontpage = isinstance(c.site, DefaultSR)
     c.wiki_base_url = '/wiki' if frontpage else '/r/%s/wiki' % c.site.name
     c.wiki_id = g.default_sr if frontpage else c.site.name
     c.page = None
     c.show_wiki_actions = True
     self.editconflict = False
     c.is_wiki_mod = (c.user_is_admin or c.site.is_moderator(c.user)) if c.user_is_loggedin else False
     c.wikidisabled = False
     
     mode = c.site.wikimode
     if not mode or mode == 'disabled':
         if not c.is_wiki_mod:
             self.handle_error(403, 'WIKI_DISABLED')
         else:
             c.wikidisabled = True
예제 #7
0
 def pre(self):
     self.check_for_bearer_token()
     RedditController.pre(self)
예제 #8
0
 def __call__(self, environ, start_response):
     try:
         return RedditController.__call__(self, environ, start_response)
     except:
         return handle_awful_failure("something really awful just happened.")
예제 #9
0
 def pre(self):
     self.check_for_bearer_token()
     RedditController.pre(self)
예제 #10
0
파일: wiki.py 프로젝트: dinxx/reddit
 def on_validation_error(self, error):
     RedditController.on_validation_error(self, error)
     if error.code:
         self.handle_error(error.code, error.name)
예제 #11
0
 def on_validation_error(self, error):
     RedditController.on_validation_error(self, error)
     if error.code:
         self.handle_error(error.code, error.name)
예제 #12
0
파일: oauth2.py 프로젝트: AHAMED750/reddit
 def pre(self):
     RedditController.pre(self)
     require_https()
예제 #13
0
파일: error.py 프로젝트: t0mt0m10/reddit
 def __call__(self, environ, start_response):
     try:
         return RedditController.__call__(self, environ, start_response)
     except:
         return handle_awful_failure(
             "something really awful just happened.")
예제 #14
0
 def __after__(self): 
     try:
         RedditController.__after__(self)
     except:
         handle_awful_failure("Error occurred in ErrorController.__after__")
예제 #15
0
파일: error.py 프로젝트: LateNitePie/reddit
 def __before__(self):
     try:
         c.error_page = True
         RedditController.__before__(self)
     except:
         handle_awful_failure("Error occurred in ErrorController.__before__")
예제 #16
0
파일: error.py 프로젝트: cmak/reddit
 def __call__(self, environ, start_response):
     try:
         return RedditController.__call__(self, environ, start_response)
     except:
         c.response.content = "something really awful just happened"
         return c.response
예제 #17
0
파일: error.py 프로젝트: cmak/reddit
 def __after__(self):
     try:
         RedditController.__after__(self)
     except:
         pass
예제 #18
0
파일: error.py 프로젝트: cmak/reddit
 def __before__(self):
     try:
         RedditController.__before__(self)
     except:
         pass
예제 #19
0
파일: oauth2.py 프로젝트: j4gold/reddit
 def pre(self):
     RedditController.pre(self)
     require_https()
예제 #20
0
파일: error.py 프로젝트: t0mt0m10/reddit
 def __after__(self):
     try:
         RedditController.__after__(self)
     except:
         handle_awful_failure("Error occurred in ErrorController.__after__")