8 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
8 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
9 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS |
9 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS |
10 # FOR A PARTICULAR PURPOSE. |
10 # FOR A PARTICULAR PURPOSE. |
11 # |
11 # |
12 |
12 |
|
13 |
13 __docformat__ = 'restructuredtext' |
14 __docformat__ = 'restructuredtext' |
14 |
15 |
15 |
16 |
16 # import standard library |
17 # import standard library |
17 import json |
18 import json |
18 |
19 |
19 # import interfaces |
20 # import interfaces |
20 from pyams_content.component.association.interfaces import IAssociationTarget, IAssociationContainer, IAssociationInfo |
21 from pyams_content.component.association.interfaces import IAssociationTarget, IAssociationContainer, IAssociationInfo |
21 from pyams_content.component.association.zmi.interfaces import IAssociationsParentForm, IAssociationsView |
22 from pyams_content.component.association.zmi.interfaces import IAssociationsParentForm, IAssociationsView |
22 from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION |
23 from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION |
|
24 from pyams_content.skin import pyams_content |
23 from pyams_form.interfaces.form import IInnerSubForm |
25 from pyams_form.interfaces.form import IInnerSubForm |
24 from pyams_skin.layer import IPyAMSLayer |
26 from pyams_skin.layer import IPyAMSLayer |
25 from pyams_utils.interfaces import VIEW_SYSTEM_PERMISSION, MANAGE_PERMISSION |
27 from pyams_utils.interfaces import VIEW_SYSTEM_PERMISSION, MANAGE_PERMISSION |
26 from pyams_zmi.interfaces.menu import IPropertiesMenu |
28 from pyams_zmi.interfaces.menu import IPropertiesMenu |
27 from z3c.table.interfaces import IValues, IColumn |
29 from z3c.table.interfaces import IValues, IColumn |
32 from pyams_pagelet.pagelet import pagelet_config, Pagelet |
34 from pyams_pagelet.pagelet import pagelet_config, Pagelet |
33 from pyams_skin.table import BaseTable, SorterColumn, JsActionColumn, NameColumn, ImageColumn, I18nColumn, TrashColumn |
35 from pyams_skin.table import BaseTable, SorterColumn, JsActionColumn, NameColumn, ImageColumn, I18nColumn, TrashColumn |
34 from pyams_skin.viewlet.menu import MenuItem |
36 from pyams_skin.viewlet.menu import MenuItem |
35 from pyams_template.template import template_config |
37 from pyams_template.template import template_config |
36 from pyams_utils.adapter import adapter_config, ContextRequestViewAdapter |
38 from pyams_utils.adapter import adapter_config, ContextRequestViewAdapter |
|
39 from pyams_utils.fanstatic import get_resource_path |
37 from pyams_utils.traversing import get_parent |
40 from pyams_utils.traversing import get_parent |
38 from pyams_utils.url import absolute_url |
41 from pyams_utils.url import absolute_url |
39 from pyams_viewlet.viewlet import viewlet_config |
42 from pyams_viewlet.viewlet import viewlet_config |
40 from pyams_zmi.form import InnerAdminDisplayForm, AdminDialogDisplayForm |
43 from pyams_zmi.form import InnerAdminDisplayForm, AdminDialogDisplayForm |
41 from pyams_zmi.view import ContainerAdminView |
44 from pyams_zmi.view import ContainerAdminView |
126 def data_attributes(self): |
129 def data_attributes(self): |
127 attributes = super(AssociationsTable, self).data_attributes |
130 attributes = super(AssociationsTable, self).data_attributes |
128 attributes['table'] = {'id': self.id, |
131 attributes['table'] = {'id': self.id, |
129 'data-ams-plugins': 'pyams_content', |
132 'data-ams-plugins': 'pyams_content', |
130 'data-ams-plugin-pyams_content-src': |
133 'data-ams-plugin-pyams_content-src': |
131 '/--static--/pyams_content/js/pyams_content{MyAMS.devext}.js', |
134 get_resource_path(pyams_content), |
132 'data-ams-location': absolute_url(IAssociationContainer(self.context), self.request), |
135 'data-ams-location': absolute_url(IAssociationContainer(self.context), self.request), |
133 'data-ams-tablednd-drag-handle': 'td.sorter', |
136 'data-ams-tablednd-drag-handle': 'td.sorter', |
134 'data-ams-tablednd-drop-target': 'set-associations-order.json'} |
137 'data-ams-tablednd-drop-target': 'set-associations-order.json'} |
135 attributes.setdefault('tr', {}).setdefault('data-ams-delete-target', 'delete-association.json') |
138 attributes.setdefault('tr', {}).setdefault('data-ams-delete-target', 'delete-association.json') |
136 return attributes |
139 return attributes |