Update TwoStateWidget to use a template
Make it compatible with the SourceColumn class. Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
This commit is contained in:
@@ -128,6 +128,8 @@
|
|||||||
* Backport source column identifiable and sortable
|
* Backport source column identifiable and sortable
|
||||||
improvements.
|
improvements.
|
||||||
* Update the way the no-result template is shown.
|
* Update the way the no-result template is shown.
|
||||||
|
* Improve TwoStateWidget to use a template. Make
|
||||||
|
it compatible with the SourceColumn.
|
||||||
|
|
||||||
3.1.11 (2019-04-XX)
|
3.1.11 (2019-04-XX)
|
||||||
===================
|
===================
|
||||||
|
|||||||
@@ -160,7 +160,8 @@ Other changes
|
|||||||
* Backport source column identifiable and sortable
|
* Backport source column identifiable and sortable
|
||||||
improvements.
|
improvements.
|
||||||
* Update the way the no-result template is shown.
|
* Update the way the no-result template is shown.
|
||||||
|
* Improve TwoStateWidget to use a template. Make
|
||||||
|
it compatible with the SourceColumn.
|
||||||
|
|
||||||
Removals
|
Removals
|
||||||
--------
|
--------
|
||||||
|
|||||||
22
mayan/apps/common/html_widgets.py
Normal file
22
mayan/apps/common/html_widgets.py
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.template.loader import render_to_string
|
||||||
|
|
||||||
|
from .icons import icon_fail as default_icon_fail
|
||||||
|
from .icons import icon_ok as default_icon_ok
|
||||||
|
|
||||||
|
|
||||||
|
class TwoStateWidget(object):
|
||||||
|
template_name = 'common/two_state_widget.html'
|
||||||
|
|
||||||
|
def __init__(self, center=False, icon_ok=None, icon_fail=None):
|
||||||
|
self.icon_ok = icon_ok or default_icon_ok
|
||||||
|
self.icon_fail = icon_fail or default_icon_fail
|
||||||
|
|
||||||
|
def render(self, name=None, value=None):
|
||||||
|
return render_to_string(
|
||||||
|
template_name=self.template_name, context={
|
||||||
|
'icon_ok': self.icon_ok, 'icon_fail': self.icon_fail,
|
||||||
|
'value': value
|
||||||
|
}
|
||||||
|
)
|
||||||
5
mayan/apps/common/templates/common/two_state_widget.html
Normal file
5
mayan/apps/common/templates/common/two_state_widget.html
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
{% if value %}
|
||||||
|
<div class="text-success">{{ icon_ok.render }}</div>
|
||||||
|
{% else %}
|
||||||
|
<div class="text-danger">{{ icon_fail.render }}</div>
|
||||||
|
{% endif %}
|
||||||
@@ -5,8 +5,6 @@ from django.utils.encoding import force_text
|
|||||||
from django.utils.html import format_html
|
from django.utils.html import format_html
|
||||||
from django.utils.safestring import mark_safe
|
from django.utils.safestring import mark_safe
|
||||||
|
|
||||||
from .icons import icon_fail as default_icon_fail, icon_ok as default_icon_ok
|
|
||||||
|
|
||||||
|
|
||||||
class DisableableSelectWidget(forms.SelectMultiple):
|
class DisableableSelectWidget(forms.SelectMultiple):
|
||||||
allow_multiple_selected = True
|
allow_multiple_selected = True
|
||||||
@@ -76,29 +74,3 @@ class TextAreaDiv(forms.widgets.Widget):
|
|||||||
if attrs:
|
if attrs:
|
||||||
default_attrs.update(attrs)
|
default_attrs.update(attrs)
|
||||||
super(TextAreaDiv, self).__init__(default_attrs)
|
super(TextAreaDiv, self).__init__(default_attrs)
|
||||||
|
|
||||||
|
|
||||||
class TwoStateWidget(object):
|
|
||||||
def __init__(self, state, center=False, icon_ok=None, icon_fail=None):
|
|
||||||
self.state = state
|
|
||||||
self.icon_ok = icon_ok or default_icon_ok
|
|
||||||
self.icon_fail = icon_fail or default_icon_fail
|
|
||||||
self.center = center
|
|
||||||
|
|
||||||
def render(self):
|
|
||||||
center_class = ''
|
|
||||||
if self.center:
|
|
||||||
center_class = 'text-center'
|
|
||||||
|
|
||||||
if self.state:
|
|
||||||
return mark_safe(
|
|
||||||
'<div class="{} text-success">{}</div>'.format(
|
|
||||||
center_class, self.icon_ok.render()
|
|
||||||
)
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
return mark_safe(
|
|
||||||
'<div class="{} text-danger">{}</div>'.format(
|
|
||||||
center_class, self.icon_fail.render()
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|||||||
@@ -10,11 +10,11 @@ from mayan.apps.acls.classes import ModelPermission
|
|||||||
from mayan.apps.acls.links import link_acl_list
|
from mayan.apps.acls.links import link_acl_list
|
||||||
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
||||||
from mayan.apps.common.apps import MayanAppConfig
|
from mayan.apps.common.apps import MayanAppConfig
|
||||||
|
from mayan.apps.common.html_widgets import TwoStateWidget
|
||||||
from mayan.apps.common.menus import (
|
from mayan.apps.common.menus import (
|
||||||
menu_facet, menu_list_facet, menu_main, menu_object, menu_secondary,
|
menu_facet, menu_list_facet, menu_main, menu_object, menu_secondary,
|
||||||
menu_setup, menu_tools
|
menu_setup, menu_tools
|
||||||
)
|
)
|
||||||
from mayan.apps.common.widgets import TwoStateWidget
|
|
||||||
from mayan.apps.documents.signals import post_document_created, post_initial_document_type
|
from mayan.apps.documents.signals import post_document_created, post_initial_document_type
|
||||||
from mayan.apps.navigation import SourceColumn
|
from mayan.apps.navigation import SourceColumn
|
||||||
from mayan.celery import app
|
from mayan.celery import app
|
||||||
@@ -86,10 +86,8 @@ class DocumentIndexingApp(MayanAppConfig):
|
|||||||
SourceColumn(source=Index, label=_('Label'), attribute='label')
|
SourceColumn(source=Index, label=_('Label'), attribute='label')
|
||||||
SourceColumn(source=Index, label=_('Slug'), attribute='slug')
|
SourceColumn(source=Index, label=_('Slug'), attribute='slug')
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=Index, label=_('Enabled'),
|
attribute='enabled', label=_('Enabled'), source=Index,
|
||||||
func=lambda context: TwoStateWidget(
|
widget=TwoStateWidget
|
||||||
state=context['object'].enabled
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
|
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
@@ -112,18 +110,13 @@ class DocumentIndexingApp(MayanAppConfig):
|
|||||||
func=lambda context: node_level(context['object'])
|
func=lambda context: node_level(context['object'])
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=IndexTemplateNode, label=_('Enabled'),
|
attribute='enabled', label=_('Enabled'), source=IndexTemplateNode,
|
||||||
func=lambda context: TwoStateWidget(
|
widget=TwoStateWidget
|
||||||
state=context['object'].enabled
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=IndexTemplateNode, label=_('Has document links?'),
|
attribute='enabled', label=_('Has document links?'),
|
||||||
func=lambda context: TwoStateWidget(
|
source=IndexTemplateNode, widget=TwoStateWidget
|
||||||
state=context['object'].link_documents
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
|
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=IndexInstanceNode, label=_('Level'),
|
source=IndexInstanceNode, label=_('Level'),
|
||||||
func=lambda context: index_instance_item_link(context['object'])
|
func=lambda context: index_instance_item_link(context['object'])
|
||||||
|
|||||||
@@ -11,12 +11,12 @@ from mayan.apps.acls.links import link_acl_list
|
|||||||
from mayan.apps.common.apps import MayanAppConfig
|
from mayan.apps.common.apps import MayanAppConfig
|
||||||
from mayan.apps.common.classes import ModelAttribute
|
from mayan.apps.common.classes import ModelAttribute
|
||||||
from mayan.apps.common.links import link_object_error_list
|
from mayan.apps.common.links import link_object_error_list
|
||||||
|
from mayan.apps.common.html_widgets import TwoStateWidget
|
||||||
from mayan.apps.common.menus import (
|
from mayan.apps.common.menus import (
|
||||||
menu_facet, menu_list_facet, menu_main, menu_object, menu_secondary,
|
menu_facet, menu_list_facet, menu_main, menu_object, menu_secondary,
|
||||||
menu_setup, menu_tools
|
menu_setup, menu_tools
|
||||||
)
|
)
|
||||||
from mayan.apps.common.permissions_runtime import permission_error_log_view
|
from mayan.apps.common.permissions_runtime import permission_error_log_view
|
||||||
from mayan.apps.common.widgets import TwoStateWidget
|
|
||||||
from mayan.apps.navigation import SourceColumn
|
from mayan.apps.navigation import SourceColumn
|
||||||
from mayan.celery import app
|
from mayan.celery import app
|
||||||
|
|
||||||
@@ -200,10 +200,8 @@ class DocumentStatesApp(MayanAppConfig):
|
|||||||
)
|
)
|
||||||
|
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=WorkflowState, label=_('Is initial state?'),
|
attribute='initial', label=_('Is initial state?'),
|
||||||
func=lambda context: TwoStateWidget(
|
source=WorkflowState, widget=TwoStateWidget
|
||||||
state=context['object'].initial
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=WorkflowState, label=_('Completion'), attribute='completion'
|
source=WorkflowState, label=_('Completion'), attribute='completion'
|
||||||
@@ -213,10 +211,8 @@ class DocumentStatesApp(MayanAppConfig):
|
|||||||
source=WorkflowStateAction, label=_('Label'), attribute='label'
|
source=WorkflowStateAction, label=_('Label'), attribute='label'
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=WorkflowStateAction, label=_('Enabled?'),
|
attribute='enabled', label=_('Enabled?'),
|
||||||
func=lambda context: TwoStateWidget(
|
source=WorkflowStateAction, widget=TwoStateWidget
|
||||||
state=context['object'].enabled
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=WorkflowStateAction, label=_('When?'),
|
source=WorkflowStateAction, label=_('When?'),
|
||||||
|
|||||||
@@ -12,12 +12,12 @@ from mayan.apps.acls.links import link_acl_list
|
|||||||
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
||||||
from mayan.apps.common.apps import MayanAppConfig
|
from mayan.apps.common.apps import MayanAppConfig
|
||||||
from mayan.apps.common.classes import MissingItem, ModelField, Template
|
from mayan.apps.common.classes import MissingItem, ModelField, Template
|
||||||
|
from mayan.apps.common.html_widgets import TwoStateWidget
|
||||||
from mayan.apps.common.menus import (
|
from mayan.apps.common.menus import (
|
||||||
menu_facet, menu_list_facet, menu_main, menu_object, menu_secondary,
|
menu_facet, menu_list_facet, menu_main, menu_object, menu_secondary,
|
||||||
menu_setup, menu_multi_item, menu_tools
|
menu_setup, menu_multi_item, menu_tools
|
||||||
)
|
)
|
||||||
from mayan.apps.common.signals import post_initial_setup
|
from mayan.apps.common.signals import post_initial_setup
|
||||||
from mayan.apps.common.widgets import TwoStateWidget
|
|
||||||
from mayan.apps.dashboards.dashboards import dashboard_main
|
from mayan.apps.dashboards.dashboards import dashboard_main
|
||||||
from mayan.apps.converter.links import link_transformation_list
|
from mayan.apps.converter.links import link_transformation_list
|
||||||
from mayan.apps.converter.permissions import (
|
from mayan.apps.converter.permissions import (
|
||||||
@@ -285,10 +285,8 @@ class DocumentsApp(MayanAppConfig):
|
|||||||
)
|
)
|
||||||
|
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=DocumentTypeFilename, label=_('Enabled'),
|
attribute='enabled', label=_('Enabled'),
|
||||||
func=lambda context: TwoStateWidget(
|
source=DocumentTypeFilename, widget=TwoStateWidget
|
||||||
state=context['object'].enabled
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
|
|
||||||
# DeletedDocument
|
# DeletedDocument
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ from django.apps import apps
|
|||||||
from django.utils.translation import ugettext_lazy as _
|
from django.utils.translation import ugettext_lazy as _
|
||||||
|
|
||||||
from mayan.apps.common.apps import MayanAppConfig
|
from mayan.apps.common.apps import MayanAppConfig
|
||||||
|
from mayan.apps.common.html_widgets import TwoStateWidget
|
||||||
from mayan.apps.common.menus import (
|
from mayan.apps.common.menus import (
|
||||||
menu_main, menu_object, menu_secondary, menu_tools, menu_user
|
menu_main, menu_object, menu_secondary, menu_tools, menu_user
|
||||||
)
|
)
|
||||||
from mayan.apps.common.widgets import TwoStateWidget
|
|
||||||
from mayan.apps.navigation import SourceColumn
|
from mayan.apps.navigation import SourceColumn
|
||||||
|
|
||||||
from .html_widgets import (
|
from .html_widgets import (
|
||||||
@@ -79,10 +79,8 @@ class EventsApp(MayanAppConfig):
|
|||||||
)
|
)
|
||||||
|
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=Notification, label=_('Seen'),
|
attribute='read', label=_('Seen'), source=Notification,
|
||||||
func=lambda context: TwoStateWidget(
|
widget=TwoStateWidget
|
||||||
state=context['object'].read
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
|
|
||||||
menu_main.bind_links(
|
menu_main.bind_links(
|
||||||
|
|||||||
@@ -7,10 +7,10 @@ from mayan.apps.acls.classes import ModelPermission
|
|||||||
from mayan.apps.acls.links import link_acl_list
|
from mayan.apps.acls.links import link_acl_list
|
||||||
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
||||||
from mayan.apps.common.apps import MayanAppConfig
|
from mayan.apps.common.apps import MayanAppConfig
|
||||||
|
from mayan.apps.common.html_widgets import TwoStateWidget
|
||||||
from mayan.apps.common.menus import (
|
from mayan.apps.common.menus import (
|
||||||
menu_facet, menu_list_facet, menu_object, menu_secondary, menu_setup
|
menu_facet, menu_list_facet, menu_object, menu_secondary, menu_setup
|
||||||
)
|
)
|
||||||
from mayan.apps.common.widgets import TwoStateWidget
|
|
||||||
from mayan.apps.navigation import SourceColumn
|
from mayan.apps.navigation import SourceColumn
|
||||||
|
|
||||||
from .links import (
|
from .links import (
|
||||||
@@ -66,17 +66,13 @@ class LinkingApp(MayanAppConfig):
|
|||||||
attribute='dynamic_label'
|
attribute='dynamic_label'
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=SmartLink, label=_('Enabled'),
|
attribute='enabled', label=_('Enabled'), source=SmartLink,
|
||||||
func=lambda context: TwoStateWidget(
|
widget=TwoStateWidget
|
||||||
state=context['object'].enabled
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
|
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=SmartLinkCondition, label=_('Enabled'),
|
attribute='enabled', label=_('Enabled'), source=SmartLinkCondition,
|
||||||
func=lambda context: TwoStateWidget(
|
widget=TwoStateWidget
|
||||||
state=context['object'].enabled
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
|
|
||||||
menu_facet.bind_links(
|
menu_facet.bind_links(
|
||||||
|
|||||||
@@ -9,11 +9,11 @@ from mayan.apps.acls.classes import ModelPermission
|
|||||||
from mayan.apps.acls.links import link_acl_list
|
from mayan.apps.acls.links import link_acl_list
|
||||||
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
||||||
from mayan.apps.common.apps import MayanAppConfig
|
from mayan.apps.common.apps import MayanAppConfig
|
||||||
|
from mayan.apps.common.html_widgets import TwoStateWidget
|
||||||
from mayan.apps.common.menus import (
|
from mayan.apps.common.menus import (
|
||||||
menu_list_facet, menu_multi_item, menu_object, menu_secondary, menu_setup,
|
menu_list_facet, menu_multi_item, menu_object, menu_secondary, menu_setup,
|
||||||
menu_tools
|
menu_tools
|
||||||
)
|
)
|
||||||
from mayan.apps.common.widgets import TwoStateWidget
|
|
||||||
from mayan.apps.events import ModelEventType
|
from mayan.apps.events import ModelEventType
|
||||||
from mayan.apps.events.links import (
|
from mayan.apps.events.links import (
|
||||||
link_events_for_object, link_object_event_types_user_subcriptions_list
|
link_events_for_object, link_object_event_types_user_subcriptions_list
|
||||||
@@ -72,16 +72,12 @@ class MailerApp(MayanAppConfig):
|
|||||||
source=UserMailer, label=_('Label'), attribute='label'
|
source=UserMailer, label=_('Label'), attribute='label'
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=UserMailer, label=_('Default?'),
|
attribute='default', label=_('Default?'), source=UserMailer,
|
||||||
func=lambda context: TwoStateWidget(
|
widget=TwoStateWidget
|
||||||
state=context['object'].default
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=UserMailer, label=_('Enabled?'),
|
attribute='enabled', label=_('Enabled?'), source=UserMailer,
|
||||||
func=lambda context: TwoStateWidget(
|
widget=TwoStateWidget
|
||||||
state=context['object'].enabled
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=UserMailer, label=_('Label'), attribute='backend_label'
|
source=UserMailer, label=_('Label'), attribute='backend_label'
|
||||||
|
|||||||
@@ -13,11 +13,11 @@ from mayan.apps.acls.links import link_acl_list
|
|||||||
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
||||||
from mayan.apps.common.apps import MayanAppConfig
|
from mayan.apps.common.apps import MayanAppConfig
|
||||||
from mayan.apps.common.classes import ModelAttribute, ModelField
|
from mayan.apps.common.classes import ModelAttribute, ModelField
|
||||||
|
from mayan.apps.common.html_widgets import TwoStateWidget
|
||||||
from mayan.apps.common.menus import (
|
from mayan.apps.common.menus import (
|
||||||
menu_facet, menu_list_facet, menu_multi_item, menu_object, menu_secondary,
|
menu_facet, menu_list_facet, menu_multi_item, menu_object, menu_secondary,
|
||||||
menu_setup
|
menu_setup
|
||||||
)
|
)
|
||||||
from mayan.apps.common.widgets import TwoStateWidget
|
|
||||||
from mayan.apps.documents.search import document_page_search, document_search
|
from mayan.apps.documents.search import document_page_search, document_search
|
||||||
from mayan.apps.documents.signals import post_document_type_change
|
from mayan.apps.documents.signals import post_document_type_change
|
||||||
from mayan.apps.events import ModelEventType
|
from mayan.apps.events import ModelEventType
|
||||||
@@ -166,10 +166,8 @@ class MetadataApp(MayanAppConfig):
|
|||||||
attribute='value'
|
attribute='value'
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=DocumentMetadata, label=_('Required'),
|
attribute='is_required', label=_('Required'),
|
||||||
func=lambda context: TwoStateWidget(
|
source=DocumentMetadata, widget=TwoStateWidget
|
||||||
state=context['object'].is_required
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
|
|
||||||
app.conf.CELERY_QUEUES.append(
|
app.conf.CELERY_QUEUES.append(
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ from kombu import Exchange, Queue
|
|||||||
|
|
||||||
from mayan.apps.common.apps import MayanAppConfig
|
from mayan.apps.common.apps import MayanAppConfig
|
||||||
from mayan.apps.common.classes import MissingItem
|
from mayan.apps.common.classes import MissingItem
|
||||||
|
from mayan.apps.common.html_widgets import TwoStateWidget
|
||||||
from mayan.apps.common.menus import (
|
from mayan.apps.common.menus import (
|
||||||
menu_list_facet, menu_object, menu_secondary, menu_setup
|
menu_list_facet, menu_object, menu_secondary, menu_setup
|
||||||
)
|
)
|
||||||
@@ -65,6 +66,23 @@ class SourcesApp(MayanAppConfig):
|
|||||||
view='sources:setup_source_list'
|
view='sources:setup_source_list'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
SourceColumn(
|
||||||
|
attribute='label', is_identifier=True,
|
||||||
|
source=Source
|
||||||
|
)
|
||||||
|
SourceColumn(
|
||||||
|
attribute='class_fullname', label=_('Type'), source=Source
|
||||||
|
)
|
||||||
|
SourceColumn(
|
||||||
|
attribute='enabled', source=Source,
|
||||||
|
widget=TwoStateWidget
|
||||||
|
)
|
||||||
|
|
||||||
|
SourceColumn(
|
||||||
|
attribute='enabled', is_sortable=True, source=Source,
|
||||||
|
widget=TwoStateWidget
|
||||||
|
)
|
||||||
|
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=StagingFile,
|
source=StagingFile,
|
||||||
label=_('Created'),
|
label=_('Created'),
|
||||||
|
|||||||
@@ -16,12 +16,10 @@ from mayan.apps.acls.models import AccessControlList
|
|||||||
from mayan.apps.checkouts.models import NewVersionBlock
|
from mayan.apps.checkouts.models import NewVersionBlock
|
||||||
from mayan.apps.common.menus import menu_facet
|
from mayan.apps.common.menus import menu_facet
|
||||||
from mayan.apps.common.models import SharedUploadedFile
|
from mayan.apps.common.models import SharedUploadedFile
|
||||||
from mayan.apps.common.utils import encapsulate
|
|
||||||
from mayan.apps.common.views import (
|
from mayan.apps.common.views import (
|
||||||
ConfirmView, MultiFormView, SingleObjectCreateView,
|
ConfirmView, MultiFormView, SingleObjectCreateView,
|
||||||
SingleObjectDeleteView, SingleObjectEditView, SingleObjectListView
|
SingleObjectDeleteView, SingleObjectEditView, SingleObjectListView
|
||||||
)
|
)
|
||||||
from mayan.apps.common.widgets import TwoStateWidget
|
|
||||||
from mayan.apps.documents.models import DocumentType, Document
|
from mayan.apps.documents.models import DocumentType, Document
|
||||||
from mayan.apps.documents.permissions import (
|
from mayan.apps.documents.permissions import (
|
||||||
permission_document_create, permission_document_new_version
|
permission_document_create, permission_document_new_version
|
||||||
@@ -605,19 +603,8 @@ class SetupSourceListView(SingleObjectListView):
|
|||||||
|
|
||||||
def get_extra_context(self):
|
def get_extra_context(self):
|
||||||
return {
|
return {
|
||||||
'extra_columns': (
|
|
||||||
{
|
|
||||||
'name': _('Type'),
|
|
||||||
'attribute': encapsulate(lambda entry: entry.class_fullname())
|
|
||||||
},
|
|
||||||
{
|
|
||||||
'name': _('Enabled'),
|
|
||||||
'attribute': encapsulate(
|
|
||||||
lambda entry: TwoStateWidget(state=entry.enabled).render()
|
|
||||||
)
|
|
||||||
},
|
|
||||||
),
|
|
||||||
'hide_link': True,
|
'hide_link': True,
|
||||||
|
'hide_object': True,
|
||||||
'no_results_icon': icon_setup_sources,
|
'no_results_icon': icon_setup_sources,
|
||||||
'no_results_secondary_links': [
|
'no_results_secondary_links': [
|
||||||
link_setup_source_create_webform.resolve(
|
link_setup_source_create_webform.resolve(
|
||||||
|
|||||||
@@ -3,8 +3,8 @@ from __future__ import unicode_literals
|
|||||||
from django.utils.translation import ugettext_lazy as _
|
from django.utils.translation import ugettext_lazy as _
|
||||||
|
|
||||||
from mayan.apps.common.apps import MayanAppConfig
|
from mayan.apps.common.apps import MayanAppConfig
|
||||||
|
from mayan.apps.common.html_widgets import TwoStateWidget
|
||||||
from mayan.apps.common.menus import menu_object, menu_secondary, menu_tools
|
from mayan.apps.common.menus import menu_object, menu_secondary, menu_tools
|
||||||
from mayan.apps.common.widgets import TwoStateWidget
|
|
||||||
from mayan.apps.navigation import SourceColumn
|
from mayan.apps.navigation import SourceColumn
|
||||||
|
|
||||||
from .classes import CeleryQueue, Task
|
from .classes import CeleryQueue, Task
|
||||||
@@ -32,16 +32,12 @@ class TaskManagerApp(MayanAppConfig):
|
|||||||
source=CeleryQueue, label=_('Name'), attribute='name'
|
source=CeleryQueue, label=_('Name'), attribute='name'
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=CeleryQueue, label=_('Default queue?'),
|
attribute='is_default_queue', label=_('Default queue?'),
|
||||||
func=lambda context: TwoStateWidget(
|
source=CeleryQueue, widget=TwoStateWidget
|
||||||
state=context['object'].is_default_queue
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=CeleryQueue, label=_('Is transient?'),
|
attribute='is_transient', label=_('Is transient?'),
|
||||||
func=lambda context: TwoStateWidget(
|
source=CeleryQueue, widget=TwoStateWidget
|
||||||
state=context['object'].is_transient
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=Task, label=_('Type'), attribute='task_type'
|
source=Task, label=_('Type'), attribute='task_type'
|
||||||
@@ -53,12 +49,6 @@ class TaskManagerApp(MayanAppConfig):
|
|||||||
source=Task, label=_('Host'),
|
source=Task, label=_('Host'),
|
||||||
func=lambda context: context['object'].kwargs['hostname']
|
func=lambda context: context['object'].kwargs['hostname']
|
||||||
)
|
)
|
||||||
SourceColumn(
|
|
||||||
source=Task, label=_('Acknowledged'),
|
|
||||||
func=lambda context: TwoStateWidget(
|
|
||||||
state=context['object'].kwargs['acknowledged']
|
|
||||||
).render()
|
|
||||||
)
|
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=Task, label=_('Arguments'),
|
source=Task, label=_('Arguments'),
|
||||||
func=lambda context: context['object'].kwargs['args']
|
func=lambda context: context['object'].kwargs['args']
|
||||||
|
|||||||
@@ -9,11 +9,11 @@ from mayan.apps.acls.classes import ModelPermission
|
|||||||
from mayan.apps.acls.links import link_acl_list
|
from mayan.apps.acls.links import link_acl_list
|
||||||
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
from mayan.apps.acls.permissions import permission_acl_edit, permission_acl_view
|
||||||
from mayan.apps.common.apps import MayanAppConfig
|
from mayan.apps.common.apps import MayanAppConfig
|
||||||
|
from mayan.apps.common.html_widgets import TwoStateWidget
|
||||||
from mayan.apps.common.menus import (
|
from mayan.apps.common.menus import (
|
||||||
menu_list_facet, menu_multi_item, menu_object, menu_secondary, menu_setup,
|
menu_list_facet, menu_multi_item, menu_object, menu_secondary, menu_setup,
|
||||||
menu_user
|
menu_user
|
||||||
)
|
)
|
||||||
from mayan.apps.common.widgets import TwoStateWidget
|
|
||||||
from mayan.apps.events.classes import ModelEventType
|
from mayan.apps.events.classes import ModelEventType
|
||||||
from mayan.apps.events.links import (
|
from mayan.apps.events.links import (
|
||||||
link_events_for_object, link_object_event_types_user_subcriptions_list
|
link_events_for_object, link_object_event_types_user_subcriptions_list
|
||||||
@@ -131,16 +131,12 @@ class UserManagementApp(MayanAppConfig):
|
|||||||
source=User, label=_('Email'), attribute='email'
|
source=User, label=_('Email'), attribute='email'
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=User, label=_('Active'),
|
attribute='is_active', label=_('Active'), source=User,
|
||||||
func=lambda context: TwoStateWidget(
|
widget=TwoStateWidget
|
||||||
state=context['object'].is_active
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
SourceColumn(
|
SourceColumn(
|
||||||
source=User, label=_('Has usable password?'),
|
attribute='has_usable_password', label=_('Has usable password?'),
|
||||||
func=lambda context: TwoStateWidget(
|
source=User, widget=TwoStateWidget
|
||||||
state=context['object'].has_usable_password()
|
|
||||||
).render()
|
|
||||||
)
|
)
|
||||||
|
|
||||||
# Silence UnorderedObjectListWarning
|
# Silence UnorderedObjectListWarning
|
||||||
|
|||||||
Reference in New Issue
Block a user