示例#1
0
 def stop(self):
     """End the current active session.
     """
     request = getRequest()
     if "euphorie.session" in request.other:
         del request.other["euphorie.session"]
     deleteCookie(request.response, SESSION_COOKIE)
     setCookie(request.response, getSecret(), SESSION_COOKIE, '')
示例#2
0
 def stop(self):
     """End the current active session.
     """
     request = getRequest()
     if "euphorie.session" in request.other:
         del request.other["euphorie.session"]
     deleteCookie(request.response, SESSION_COOKIE)
     setCookie(request.response, getSecret(), SESSION_COOKIE, '')
示例#3
0
    def resume(self, session):
        """Activate the given session.

        :param session: session to activate
        :type session: :py:class:`euphorie.client.model.SurveySession`
        """
        request = getRequest()
        request.other["euphorie.session"] = session
        setCookie(request.response, getSecret(), SESSION_COOKIE, session.id)
示例#4
0
    def resume(self, session):
        """Activate the given session.

        :param session: session to activate
        :type session: :py:class:`euphorie.client.model.SurveySession`
        """
        account = aq_base(getSecurityManager().getUser())
        if session.account is not account:
            raise ValueError('Can only resume session for current user.')

        request = getRequest()
        request.other["euphorie.session"] = session
        setCookie(request.response, getSecret(), SESSION_COOKIE, session.id)
示例#5
0
    def resume(self, session):
        """Activate the given session.

        :param session: session to activate
        :type session: :py:class:`euphorie.client.model.SurveySession`
        """
        account = aq_base(getSecurityManager().getUser())
        if session.account is not account:
            raise ValueError('Can only resume session for current user.')

        request = getRequest()
        request.other["euphorie.session"] = session
        setCookie(request.response, getSecret(), SESSION_COOKIE, session.id)
示例#6
0
    def start(self, title, survey, account=None):
        """Create a new session and activate it.

        :param title: title for the new session.
        :type title: unicode
        :param survey: survey for which the session is being created
        :type survey: :py:class:`euphorie.content.survey.Survey`
        :rtype: :py:class:`euphorie.client.model.SurveySession` instance
        """
        survey_session = create_survey_session(title, survey, account)
        request = getRequest()
        setCookie(request.response, getSecret(), SESSION_COOKIE,
                survey_session.id)
        request.other['euphorie.session'] = survey_session
        return survey_session
示例#7
0
    def start(self, title, survey, account=None):
        """Create a new session and activate it.

        :param title: title for the new session.
        :type title: unicode
        :param survey: survey for which the session is being created
        :type survey: :py:class:`euphorie.content.survey.Survey`
        :rtype: :py:class:`euphorie.client.model.SurveySession` instance
        """
        survey_session = create_survey_session(title, survey, account)
        request = getRequest()
        setCookie(request.response, getSecret(), SESSION_COOKIE,
                  survey_session.id)
        request.other['euphorie.session'] = survey_session
        return survey_session
示例#8
0
    def id(self):
        """The id of the current session, or None if there is no active
        session.

        :rtype: int or None
        """
        request = getRequest()
        if "euphorie.session" in request.other:
            return request.other["euphorie.session"].id

        session_id = getCookie(request, getSecret(), "_eu_session")

        try:
            return int(session_id)
        except TypeError:
            return None
示例#9
0
    def id(self):
        """The id of the current session, or None if there is no active
        session.

        This method does not perform any security checks.

        :rtype: int or None
        """
        request = getRequest()
        if "euphorie.session" in request.other:
            return request.other["euphorie.session"].id

        session_id = getCookie(request, getSecret(), "_eu_session")

        try:
            return int(session_id)
        except TypeError:
            return None
示例#10
0
 def getSecret(self):
     return getSecret()