Example #1
0
    def change_password(self, passcode, password):
        """ change password """
        principal = self.get_principal(passcode)

        self.remove_passcode(passcode)

        if principal is not None:
            changers = config.get_cfg_storage(ID_PASSWORD_CHANGER)

            changer = changers.get(ptah.extract_uri_schema(principal.__uri__))
            if changer is not None:
                changer(principal, self.encode(password))
                return True

        return False
Example #2
0
    def change_password(self, passcode, password):
        """ change password """
        principal = self.get_principal(passcode)

        self.remove_passcode(passcode)

        if principal is not None:
            changers = config.registry.storage[PASSWORD_CHANGER_ID]

            changer = changers.get(ptah.extract_uri_schema(principal.uri))
            if changer is not None:
                changer(principal, self.encode(password))
                return True

        return False
Example #3
0
    def update(self):
        res = super(UriResolver, self).update()

        uri = self.uri
        if uri is None:
            uri = [self.request.GET.get('uri', '')]

        resolvers = config.get_cfg_storage(ID_RESOLVER)

        self.data = data = []
        for u in uri:
            if u:
                schema = ptah.extract_uri_schema(u)
                resolver = resolvers.get(schema)
                info = {
                    'uri': u,
                    'resolver': None,
                    'module': None,
                    'line': None,
                    'obj': None,
                    'cls': None,
                    'clsdoc': None
                }

                if resolver is not None:
                    info['resolver'] = resolver.__name__
                    info['r_doc'] = ptah.rst_to_html(resolver.__doc__ or '')
                    info['module'] = resolver.__module__
                    info['name'] = '%s.%s' % (resolver.__module__,
                                              resolver.__name__)
                    info['line'] = inspect.getsourcelines(resolver)[-1]

                    obj = ptah.resolve(u)
                    info['obj'] = obj

                    if obj is not None:
                        cls = getattr(obj, '__class__', None)
                        info['cls'] = cls
                        info['clsdoc'] = ptah.rst_to_html(
                            getattr(cls, '__doc__', '') or '')

                        if cls is not None:
                            info['clsmod'] = cls.__module__
                            info['clsline'] = inspect.getsourcelines(cls)[-1]

                data.append(info)

        return res
Example #4
0
File: uri.py Project: runyaga/ptah
    def update(self):
        res = super(UriResolver, self).update()

        uri = self.uri
        if uri is None:
            uri = [self.request.GET.get('uri','')]

        resolvers = config.get_cfg_storage(ID_RESOLVER)

        self.data = data = []
        for u in uri:
            if u:
                schema = ptah.extract_uri_schema(u)
                resolver = resolvers.get(schema)
                info = {'uri': u,
                        'resolver': None,
                        'module': None,
                        'line': None,
                        'obj': None,
                        'cls': None,
                        'clsdoc': None}

                if resolver is not None:
                    info['resolver'] = resolver.__name__
                    info['r_doc'] = ptah.rst_to_html(resolver.__doc__ or '')
                    info['module'] = resolver.__module__
                    info['name'] = '%s.%s'%(
                        resolver.__module__, resolver.__name__)
                    info['line'] = inspect.getsourcelines(resolver)[-1]

                    obj = ptah.resolve(u)
                    info['obj'] = obj

                    if obj is not None:
                        cls = getattr(obj, '__class__', None)
                        info['cls'] = cls
                        info['clsdoc'] = ptah.rst_to_html(
                            getattr(cls, '__doc__', '') or '')

                        if cls is not None:
                            info['clsmod'] = cls.__module__
                            info['clsline'] = inspect.getsourcelines(cls)[-1]

                data.append(info)

        return res
Example #5
0
    def update(self):
        uri = self.uri
        if uri is None:
            uri = [self.request.GET.get("uri", "")]

        resolvers = config.get_cfg_storage(ID_RESOLVER)

        self.data = data = []
        for u in uri:
            if u:
                schema = ptah.extract_uri_schema(u)
                resolver = resolvers.get(schema)
                info = {
                    "uri": u,
                    "resolver": None,
                    "module": None,
                    "line": None,
                    "obj": None,
                    "cls": None,
                    "clsdoc": None,
                }

                if resolver is not None:
                    info["resolver"] = resolver.__name__
                    info["r_doc"] = ptah.rst_to_html(resolver.__doc__ or "")
                    info["module"] = resolver.__module__
                    info["name"] = "%s.%s" % (resolver.__module__, resolver.__name__)
                    info["line"] = inspect.getsourcelines(resolver)[-1]

                    obj = ptah.resolve(u)
                    info["obj"] = obj

                    if obj is not None:
                        cls = getattr(obj, "__class__", None)
                        info["cls"] = cls
                        info["clsdoc"] = ptah.rst_to_html(getattr(cls, "__doc__", "") or "")

                        if cls is not None:
                            info["clsmod"] = cls.__module__
                            info["clsline"] = inspect.getsourcelines(cls)[-1]

                data.append(info)
Example #6
0
    def change_password(self, passcode, password):
        """ Encode and change password.
        :py:class:`ptah.password_changer` is beeing used.

        :param passcode: Previously generated passcode
        :param passsword: Plain password.
        :rtype: True if password has been changed, False otherwise.
        """
        principal = self.get_principal(passcode)

        self.remove_passcode(passcode)

        if principal is not None:
            changers = config.get_cfg_storage(ID_PASSWORD_CHANGER)

            changer = changers.get(ptah.extract_uri_schema(principal.__uri__))
            if changer is not None:
                changer(principal, self.encode(password))
                return True

        return False
Example #7
0
    def change_password(self, passcode, password):
        """ Encode and change password.
        :py:class:`ptah.password_changer` is beeing used.

        :param passcode: Previously generated passcode
        :param passsword: Plain password.
        :rtype: True if password has been changed, False otherwise.
        """
        principal = self.get_principal(passcode)

        self.remove_passcode(passcode)

        if principal is not None:
            changers = config.get_cfg_storage(ID_PASSWORD_CHANGER)

            changer = changers.get(ptah.extract_uri_schema(principal.__uri__))
            if changer is not None:
                changer(principal, self.encode(password))
                return True

        return False
Example #8
0
 def can_change_password(self, principal):
     """ can principal password be changed """
     return ptah.extract_uri_schema(principal.uri) in \
         config.registry.storage[PASSWORD_CHANGER_ID]
Example #9
0
    def test_uri_extract_type(self):
        import ptah

        self.assertEqual(ptah.extract_uri_schema('test:uri'), 'test')
        self.assertEqual(ptah.extract_uri_schema('test'), None)
        self.assertEqual(ptah.extract_uri_schema(None), None)
Example #10
0
    def test_uri_extract_type(self):
        import ptah

        self.assertEqual(ptah.extract_uri_schema('test:uri'), 'test')
        self.assertEqual(ptah.extract_uri_schema('test'), None)
        self.assertEqual(ptah.extract_uri_schema(None), None)
Example #11
0
 def can_change_password(self, principal):
     """ can principal password be changed """
     return ptah.extract_uri_schema(principal.__uri__) in \
         config.get_cfg_storage(ID_PASSWORD_CHANGER)
Example #12
0
 def can_change_password(self, principal):
     """ Can principal password be changed.
     :py:class:`ptah.password_changer` is beeing used. """
     return ptah.extract_uri_schema(principal.__uri__) in \
         config.get_cfg_storage(ID_PASSWORD_CHANGER)
Example #13
0
 def can_change_password(self, principal):
     """ can principal password be changed """
     return ptah.extract_uri_schema(principal.__uri__) in \
         config.get_cfg_storage(ID_PASSWORD_CHANGER)
Example #14
0
 def can_change_password(self, principal):
     """ Can principal password be changed.
     :py:class:`ptah.password_changer` is beeing used. """
     return ptah.extract_uri_schema(principal.__uri__) in \
         config.get_cfg_storage(ID_PASSWORD_CHANGER)