src/pyams_security/zmi/plugin/social.py
changeset 42 07229ac2497b
parent 30 6744fc0a44c3
child 54 59683c264d94
equal deleted inserted replaced
41:905e30f5467b 42:07229ac2497b
    18 # import interfaces
    18 # import interfaces
    19 from pyams_security.interfaces import ISecurityManager, ISocialUsersFolderPlugin, ISocialUser, \
    19 from pyams_security.interfaces import ISecurityManager, ISocialUsersFolderPlugin, ISocialUser, \
    20     ISocialLoginConfiguration, ISocialLoginProviderConnection
    20     ISocialLoginConfiguration, ISocialLoginProviderConnection
    21 from pyams_security.zmi.interfaces import ISecurityManagerMenu
    21 from pyams_security.zmi.interfaces import ISecurityManagerMenu
    22 from pyams_skin.interfaces import IPageHeader, IInnerPage
    22 from pyams_skin.interfaces import IPageHeader, IInnerPage
    23 from pyams_skin.interfaces.viewlet import IToolbarViewletManager, IToolbarAddingMenu
    23 from pyams_skin.interfaces.viewlet import IToolbarAddingMenu, IWidgetTitleViewletManager
    24 from pyams_skin.layer import IPyAMSLayer
    24 from pyams_skin.layer import IPyAMSLayer
    25 from pyams_zmi.layer import IAdminLayer
    25 from pyams_zmi.layer import IAdminLayer
    26 from z3c.form.interfaces import DISPLAY_MODE, IDataExtractedEvent
    26 from z3c.form.interfaces import DISPLAY_MODE, IDataExtractedEvent
    27 from z3c.table.interfaces import IColumn, IValues
    27 from z3c.table.interfaces import IColumn, IValues
    28 from zope.component.interfaces import ISite
    28 from zope.component.interfaces import ISite
    33 from pyams_form.search import SearchView, SearchResultsView
    33 from pyams_form.search import SearchView, SearchResultsView
    34 from pyams_pagelet.pagelet import pagelet_config
    34 from pyams_pagelet.pagelet import pagelet_config
    35 from pyams_security.plugin.social import SocialUsersFolder, SocialLoginProviderConnection, get_provider_info
    35 from pyams_security.plugin.social import SocialUsersFolder, SocialLoginProviderConnection, get_provider_info
    36 from pyams_security.zmi.utility import SecurityManagerPluginsTable
    36 from pyams_security.zmi.utility import SecurityManagerPluginsTable
    37 from pyams_skin.container import ContainerView
    37 from pyams_skin.container import ContainerView
       
    38 from pyams_skin.page import DefaultPageHeaderAdapter
    38 from pyams_skin.skin import apply_skin
    39 from pyams_skin.skin import apply_skin
    39 from pyams_skin.table import I18nColumn, BaseTable, ActionColumn, TrashColumn
    40 from pyams_skin.table import I18nColumn, BaseTable, ActionColumn, TrashColumn
    40 from pyams_skin.viewlet.menu import MenuItem
    41 from pyams_skin.viewlet.menu import MenuItem
    41 from pyams_skin.viewlet.toolbar import ToolbarMenuItem, ToolbarAction
    42 from pyams_skin.viewlet.toolbar import ToolbarMenuItem, ToolbarAction
    42 from pyams_utils.adapter import adapter_config, ContextRequestViewAdapter
    43 from pyams_utils.adapter import adapter_config, ContextRequestViewAdapter
   148     def __init__(self, context, request):
   149     def __init__(self, context, request):
   149         super(SocialUsersFolderSearchView, self).__init__(context, request)
   150         super(SocialUsersFolderSearchView, self).__init__(context, request)
   150 
   151 
   151 
   152 
   152 @adapter_config(context=(ISocialUsersFolderPlugin, IAdminLayer, SocialUsersFolderSearchView), provides=IPageHeader)
   153 @adapter_config(context=(ISocialUsersFolderPlugin, IAdminLayer, SocialUsersFolderSearchView), provides=IPageHeader)
   153 class SocialUsersFolderSearchViewHeaderAdapter(ContextRequestViewAdapter):
   154 class SocialUsersFolderSearchViewHeaderAdapter(DefaultPageHeaderAdapter):
   154     """Social users folder search view header adapter"""
   155     """Social users folder search view header adapter"""
   155 
   156 
   156     back_url = '#security-manager.html'
   157     back_url = '#security-manager.html'
   157     icon_class = 'fa fa-fw fa-share-alt'
   158     icon_class = 'fa fa-fw fa-share-alt'
   158 
   159 
   361     def __init__(self, context, request):
   362     def __init__(self, context, request):
   362         super(SecurityManagerSocialProvidersView, self).__init__(context, request)
   363         super(SecurityManagerSocialProvidersView, self).__init__(context, request)
   363 
   364 
   364 
   365 
   365 @adapter_config(context=(ISite, IAdminLayer, SecurityManagerSocialProvidersView), provides=IPageHeader)
   366 @adapter_config(context=(ISite, IAdminLayer, SecurityManagerSocialProvidersView), provides=IPageHeader)
   366 class SecurityManagerSocialProvidersHeaderAdapter(ContextRequestViewAdapter):
   367 class SecurityManagerSocialProvidersHeaderAdapter(DefaultPageHeaderAdapter):
   367     """Security manager social providers header adapter"""
   368     """Security manager social providers header adapter"""
   368 
   369 
   369     icon_class = 'fa fa-fw fa-share-alt'
   370     icon_class = 'fa fa-fw fa-share-alt'
   370     title = _("Security manager")
   371     title = _("Security manager")
   371     subtitle = _("Social networks login providers")
   372     subtitle = _("Social networks login providers")
   372 
   373 
   373 
   374 
   374 @viewlet_config(name='security-manager.social.adding', context=ISite, view=SecurityManagerSocialProvidersTable,
   375 @viewlet_config(name='security-manager.social.adding', context=ISite, view=SecurityManagerSocialProvidersTable,
   375                 layer=IAdminLayer, manager=IToolbarViewletManager, permission='system.manage')
   376                 layer=IAdminLayer, manager=IWidgetTitleViewletManager, permission='system.manage')
   376 class SocialToolbarAddingsAction(ToolbarAction):
   377 class SocialToolbarAddingsAction(ToolbarAction):
   377     """Security manager social toolbar adding action"""
   378     """Security manager social toolbar adding action"""
   378 
   379 
   379     label = _("Add provider")
   380     label = _("Add provider")
   380     url = "add-social-provider.html"
   381     url = "add-social-provider.html"