def sph_publicemailaddress(value): if get_sph_setting('community_email_anonymous_require_captcha'): # as a security constraint we don't return the public email # address if the user is not logged in. if not get_current_user().is_authenticated: validated = get_current_request().session.get('sph_email_captcha_validated', 0) # if the timeout is reached or the captcha was never entered # provide a link for the user to enter the captcha. if validated < time() - get_sph_setting('community_email_anonymous_require_captcha_timeout'): return mark_safe('<a href="%s">%s</a>' % ( sph_reverse('sph_reveal_emailaddress', kwargs={'user_id': value.id, }), _('Reveal this emailaddress'))) if get_sph_setting('community_email_show_only_public'): try: return CommunityUserProfile.objects.get(user=value, ).public_emailaddress except CommunityUserProfile.DoesNotExist: pass return '' try: profile = CommunityUserProfile.objects.get(user=value, ) except CommunityUserProfile.DoesNotExist: return "n/a" # value.email return profile.public_emailaddress or value.email
def authorinfo_cachekey(user_id, group_id = None, language_code = None): if group_id is None: group_id = get_current_group().id if language_code is None: language_code = getattr(get_current_request(), 'LANGUAGE_CODE', '') return 'sphboard_authorinfo_%s_%s_%s' % \ (str(group_id),str(user_id), language_code)
def sph_url(view): req = get_current_request() urlconf = getattr(req, 'urlconf', None) try: return reverse(view, urlconf) except: return 'NOT FOUND'
def authorinfo_cachekey(user_id, group_id = None, language_code = None): if group_id is None: group_id = get_current_group().id if language_code is None: language_code = getattr(get_current_request(), 'LANGUAGE_CODE', '') return '%s_sphboard_authorinfo_%s_%s_%s' % \ (settings.CACHE_MIDDLEWARE_KEY_PREFIX, str(group_id), str(user_id), language_code)
def render(self, context): from django.core.urlresolvers import reverse, NoReverseMatch args = [arg.resolve(context) for arg in self.args] kwargs = dict([(smart_str(k, 'ascii'), v.resolve(context)) for k, v in self.kwargs.items()]) #if not 'groupName' in kwargs: # kwargs['groupName'] = get_current_group().name req = get_current_request() urlconf = getattr(req, 'urlconf', None) try: return reverse(self.view_name, urlconf=urlconf, args=args, kwargs=kwargs) except NoReverseMatch: try: project_name = settings.SETTINGS_MODULE.split('.')[0] return reverse(project_name + '.' + self.view_name, urlconf=urlconf, args=args, kwargs=kwargs) except NoReverseMatch: return ''
def get_absolute_editurl(self): return reverse('sphwiki_editversion', urlconf=getattr(get_current_request(), 'urlconf', None), kwargs={ 'snipName': self.snip.name, 'versionId': self.id })
def sph_publicemailaddress(value): if get_sph_setting('community_email_anonymous_require_captcha'): # as a security constraint we don't return the public email # address if the user is not logged in. if not get_current_user().is_authenticated(): validated = get_current_request().session.get( 'sph_email_captcha_validated', 0) # if the timeout is reached or the captcha was never entered # provide a link for the user to enter the captcha. if validated < time() - get_sph_setting( 'community_email_anonymous_require_captcha_timeout'): return mark_safe('<a href="%s">%s</a>' % (sph_reverse('sph_reveal_emailaddress', (), { 'user_id': value.id, }), ugettext('Reveal this emailaddress'))) if get_sph_setting('community_email_show_only_public'): try: return CommunityUserProfile.objects.get( user=value, ).public_emailaddress except CommunityUserProfile.DoesNotExist: pass return '' try: profile = CommunityUserProfile.objects.get(user=value, ) except CommunityUserProfile.DoesNotExist: return "n/a" #value.email return profile.public_emailaddress or value.email
def sph_user_profile_link(value): """ Returns the URL to the user profile. """ req = get_current_request() urlconf = getattr(req, 'urlconf', None) # print "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ",reverse('sphene.community.views.profile', urlconf, (), { 'user_id': value.id } ) return reverse('sphene.community.views.profile', urlconf, (), {'user_id': value.id})
def sph_url(view): req = get_current_request() urlconf = getattr(req, 'urlconf', None) try: return sph_reverse(view) except: log.exception('Unable to reverse sph_url for view %r' % view) return 'NOT FOUND'
def is_active(self): from sphene.community.middleware import get_current_request req = get_current_request() if not req: return False nav = getattr(req, 'nav', req.path) if self.href == '/': return self.href == nav or nav == '' return nav.startswith(self.href)
def sph_reverse(viewname, args=(), kwargs={}): req = get_current_request() urlconf = getattr(req, "urlconf", None) sphdata = get_current_sphdata() if "group_fromhost" in sphdata and not sphdata.get("group_fromhost", False): kwargs["groupName"] = get_current_group().name elif "groupName" in kwargs: del kwargs["groupName"] return reverse(viewname, urlconf, args, kwargs)
def sph_reverse( viewname, args=(), kwargs={} ): req = get_current_request() urlconf = getattr(req, 'urlconf', None) sphdata = get_current_sphdata() if 'group_fromhost' in sphdata and \ not sphdata.get('group_fromhost', False): kwargs['groupName'] = get_current_group().name elif 'groupName' in kwargs: del kwargs['groupName'] return reverse( viewname, urlconf, args, kwargs )
def generate_captcha(): """ Generates a captcha. and returns an object which has a method get_absolute_url() which returns the url to the captcha image and a attribute 'uid' which contains the id of the captcha. """ if not usecaptcha: return None numbers = (int(random()*9)+1,int(random()*9)+1) text = "%d+%d" % numbers answer = sum(numbers) req = CaptchaRequest.generate_request(text,answer,get_current_request().path) return req
def handleMacroCall(self, doc, params): templateName = params.get('template', 'sphene/sphwiki/macros/_attachment_list.html') attachments = WikiAttachment.objects.filter( snip = self.snip ) res = object_list( request = get_current_request(), queryset = attachments, template_name = templateName, extra_context = { 'snip': self.snip, }, allow_empty = True, template_object_name = 'attachment', ) return HTML(res.content)
def handleMacroCall(self, doc, params): templateName = params.get( 'template', 'sphene/sphwiki/macros/_attachment_list.html') attachments = WikiAttachment.objects.filter(snip=self.snip) res = object_list( request=get_current_request(), queryset=attachments, template_name=templateName, extra_context={ 'snip': self.snip, }, allow_empty=True, template_object_name='attachment', ) return HTML(res.content)
def handlePreprocessorMacroCall(self, params): if not params.has_key( 'snip' ): return 'No "snip" parameter given to redirect macro.' sphdata = get_current_sphdata() snipName = params['snip']; try: snip = WikiSnip.objects.get( group = get_current_group(), name = snipName ) except WikiSnip.DoesNotExist: return '**Wiki snip "%s" does not exist.**' % snipName request = get_current_request() if 'redirect' in request.GET and request.GET['redirect'] == 'no': return '**Redirect to "%s" disabled.**' % snipName sphdata['sphwiki_redirect_to_snip'] = snip return "**Redirecting to %s ...**" % snipName
def handlePreprocessorMacroCall(self, params): if 'snip' not in params: return 'No "snip" parameter given to redirect macro.' sphdata = get_current_sphdata() snipName = params['snip'] try: snip = WikiSnip.objects.get(group=get_current_group(), name=snipName) except WikiSnip.DoesNotExist: return '**Wiki snip "%s" does not exist.**' % snipName request = get_current_request() if 'redirect' in request.GET and request.GET['redirect'] == 'no': return '**Redirect to "%s" disabled.**' % snipName sphdata['sphwiki_redirect_to_snip'] = snip return "**Redirecting to %s ...**" % snipName
def render(self, context): from django.core.urlresolvers import reverse, NoReverseMatch args = [arg.resolve(context) for arg in self.args] kwargs = dict([(smart_str(k,'ascii'), v.resolve(context)) for k, v in self.kwargs.items()]) #if not 'groupName' in kwargs: # kwargs['groupName'] = get_current_group().name req = get_current_request() urlconf = getattr(req, 'urlconf', None) try: return reverse(self.view_name, urlconf=urlconf, args=args, kwargs=kwargs) except NoReverseMatch: try: project_name = settings.SETTINGS_MODULE.split('.')[0] return reverse(project_name + '.' + self.view_name, urlconf=urlconf, args=args, kwargs=kwargs) except NoReverseMatch: return ''
def sph_html_user(user): str = template.loader \ .render_to_string( 'sphene/community/_display_username.html', { 'user': user, }, context_instance = RequestContext(get_current_request()) ) return str
def mainsite_html_user(user): str = template.loader \ .render_to_string( '_display_username.html', { 'user': user, }, context_instance = RequestContext(get_current_request()) ) return str
def sph_user_profile_link(value): """ Returns the URL to the user profile. """ req = get_current_request() urlconf = getattr(req, 'urlconf', None) # print "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ",reverse('sphene.community.views.profile', urlconf, (), { 'user_id': value.id } ) return reverse('sphene.community.views.profile', urlconf, (), { 'user_id': value.id } )
def get_request(self): return get_current_request()
def sph_render_to_response(template_name, context=None): return render_to_response(template_name, context, context_instance=RequestContext( get_current_request()))
def sph_reverse(viewname, args=(), kwargs={}): req = get_current_request() urlconf = getattr(req, 'urlconf', None) return reverse(viewname, urlconf, args, kwargs)
def sph_reverse( viewname, args=(), kwargs={} ): req = get_current_request() urlconf = getattr(req, 'urlconf', None) return reverse( viewname, urlconf, args, kwargs )
def sph_html_user(user): return render_to_string('sphene/community/_display_username.html', { 'user': user, }, request=get_current_request())
def sph_render_to_response(template_name, context = None): return render_to_response(template_name, context, context_instance = RequestContext(get_current_request()))
def sph_html_user(user): return render_to_string('sphene/community/_display_username.html', {'user': user, }, request=get_current_request())
def get_urlconf(): request = get_current_request() return getattr(request, 'urlconf', None)
def get_urlconf(): from sphene.community.middleware import get_current_request return getattr(get_current_request(), 'urlconf', None)
def sph_render_to_response(template_name, context=None): return render(get_current_request(), template_name, context)