All pastes #562577 Raw Edit

Stuff

public text v1 · immutable
·published 2007-06-12 20:56 UTC
rendered paste body
    @instance.memoizedproperty
    def member_info(self):
        """
        Returns a dict containing information about the currently
        authenticated member for easy template access.  If the member
        is not currently logged in, the returned dictionary will be
        empty.
        """
        return self.member_info_for_member(self.loggedinmember)

    def member_info_for_member(self, member):
        result = {}
        if member is not None:
            if IReMember.providedBy(member):
                id = member.getId()
                fullname = member.getFullname()
                membersince = prettyDate(member.getRawCreation_date())
                lastlogin = prettyDate(member.getLast_login_time())
                location = member.getLocation()
                statement = member.getStatement()
                skills = member.getSkills()
                affiliations = member.getAffiliations()
                background = member.getBackground()
                favorites = member.getFavorites()
            else:
                # we're an old school member object, e.g. an admin user
                id = member.id
                fullname = member.fullname
                # XXX TODO
                membersince = '' #prettyDate(member.creation_date)
                lastlogin = '' #prettyDate(member.last_login_time)
                location = '' #member.location
                statement = ''
                skills = ''
                affiliations = ''
                background = ''
                favorites = ''
                
            url = ''
            folder = self.membertool.getHomeFolder(id)
            if folder:
                url = folder.absolute_url()

            portrait = member.getProperty('portrait', None)
            portraiturl = portrait and portrait.absolute_url() or self.defaultPortraitURL

            result.update(id=id,
                          url=url,
                          portraiturl=portraiturl,
                          fullname=fullname,
                          membersince=membersince,
                          lastlogin=lastlogin,
                          location=location,
                          statement=statement,
                          skills=skills,
                          affiliations=affiliations,
                          background=background,
                          favorites=favorites,
                         )
        return result