def _build_url(request, obj_or_url): if obj_or_url is not None: if isinstance(obj_or_url, Model): if DJANGO_BITLY: return bitlify(obj_or_url) else: return request.build_absolute_uri(obj_or_url.get_absolute_url()) else: return request.build_absolute_uri(obj_or_url) return ''
def _build_url(request, obj_or_url): if obj_or_url is not None: if isinstance(obj_or_url, Model): if DJANGO_BITLY: url = bitlify(obj_or_url) # type: str if not BITLY_REGEX.match(url): return request.build_absolute_uri( obj_or_url.get_absolute_url()) else: return url else: return request.build_absolute_uri( obj_or_url.get_absolute_url()) else: return request.build_absolute_uri(obj_or_url) return ''
def _build_url(request, obj_or_url): if obj_or_url is not None: if isinstance(obj_or_url, Model): if DJANGO_BITLY: url = bitlify(obj_or_url) # type: str if not BITLY_REGEX.match(url): return request.build_absolute_uri( obj_or_url.get_absolute_url() ) else: return url else: return request.build_absolute_uri(obj_or_url.get_absolute_url()) else: return request.build_absolute_uri(obj_or_url) return ''
def post_to_twitter(context, text, obj_or_url=None, link_text='Post to Twitter'): text = compile_text(context, text) request = context['request'] context['link_text'] = link_text if obj_or_url is not None: if isinstance(obj_or_url, Model): if DJANGO_BITLY: url = u' ' + bitlify(obj_or_url) else: url = u' ' + request.build_absolute_uri(obj_or_url.get_absolute_url()) else: url = u' ' + request.build_absolute_uri(obj_or_url) else: url = '' total_lenght = len(text) + len(url) if total_lenght > 140: truncated_text = text[:(140 - len(url) - 1)] + u"…" else: truncated_text = text context['full_text'] = truncated_text + url return context