def email_context_generator(): """Dummy email context generator Returns a dictionary """ request = GlobalRequestMiddleware.get_current_request() protocol = 'http' if request: if request.is_secure(): protocol = 'https' else: pass domain = request.get_host() or htk_setting('HTK_DEFAULT_DOMAIN') else: domain = htk_setting('HTK_DEFAULT_DOMAIN') base_url = '%(protocol)s://%(domain)s' % { 'protocol' : protocol, 'domain' : domain, } context = { 'base_url': base_url, 'site_name': htk_setting('HTK_SITE_NAME'), } return context
def get_s3_url(self): try: s3 = S3Manager() s3_bucket = self.get_s3_bucket() s3_key = self.get_s3_key() s3_url = s3.get_url(s3_bucket, s3_key, cache=True) except: request = GlobalRequestMiddleware.get_current_request() rollbar.report_exc_info(request=request) s3_url = '' return s3_url
def has_follower(self, user=None): """Check if the currently logged-in user is following self.user """ if user is None: request = GlobalRequestMiddleware.get_current_request() user = request.user else: pass if user: value = user.profile.get_following().filter(id=self.user.id).exists() else: value = False return value
def get_oembed_html_for_service(url, service): """Returns the oEmbed HTML for `service` (YouTube, Vimeo, etc) Makes an HTTP request, so we should probably cache its response """ c = OembedResponseCache(prekey=url) html = c.get() if html is None: request = None success = False try: oembed_base_url = OEMBED_BASE_URLS[service] oembed_url = oembed_base_url % urllib.quote(url) response = requests.get(oembed_url) if response.status_code >= 400: pass else: data = response.json() html = data['html'] c.cache_store(html) success = True except: request = GlobalRequestMiddleware.get_current_request() rollbar.report_exc_info(request=request) if success: pass else: html = 'Failed to get oEmbed for URL: %s' % url if request is None: request = GlobalRequestMiddleware.get_current_request() else: pass rollbar.report_message('Bad oembed url <%s>' % (url), 'warning', request) else: pass return html
def wrapped(*args, **kwargs): # try to get a request, may not always succeed request = GlobalRequestMiddleware.get_current_request() # notify a maximum of once per function per request/session if request: if DEPRECATED_ROLLBAR_NOTIFIED not in request.session: deprecated_notifications = {} request.session[DEPRECATED_ROLLBAR_NOTIFIED] = deprecated_notifications deprecated_notifications = request.session[DEPRECATED_ROLLBAR_NOTIFIED] key = '%s' % func # first get it already_notified = deprecated_notifications.get(key, False) # then mark it deprecated_notifications[key] = True else: already_notified = False if not already_notified: rollbar.report_message('Deprecated function call warning: %s' % func, 'warning', request) return func(*args, **kwargs)