--- a/src/pyams_content/component/paragraph/zmi/milestone.py Thu Sep 06 17:43:49 2018 +0200
+++ b/src/pyams_content/component/paragraph/zmi/milestone.py Fri Sep 07 16:40:05 2018 +0200
@@ -16,34 +16,41 @@
# import standard library
import json
+from pyramid.decorator import reify
+from pyramid.view import view_config
+from z3c.form import field, button
+from z3c.form.interfaces import INPUT_MODE
+from z3c.table.column import GetAttrColumn
+from z3c.table.interfaces import IValues, IColumn
+from zope.interface import implementer, Interface
+from zope.schema.vocabulary import getVocabularyRegistry
+
+from pyams_content import _
# import interfaces
from pyams_content.component.paragraph.interfaces import IParagraphContainerTarget, IParagraphContainer, \
PARAGRAPH_HIDDEN_FIELDS
from pyams_content.component.paragraph.interfaces.milestone import MILESTONE_PARAGRAPH_TYPE, IMilestoneParagraph, \
IMilestoneContainer, IMilestoneContainerTarget, IMilestone
-from pyams_content.component.paragraph.zmi import IParagraphContainerView, IParagraphEditFormButtons
-from pyams_content.component.paragraph.zmi.interfaces import IParagraphInnerEditor
-from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION
-from pyams_content.shared.common import IWfSharedContent
-from pyams_form.interfaces.form import IInnerForm, IInnerSubForm
-from pyams_i18n.interfaces import II18n
-from pyams_skin.interfaces.viewlet import IToolbarAddingMenu, IWidgetTitleViewletManager
-from pyams_skin.layer import IPyAMSLayer
-from z3c.form.interfaces import INPUT_MODE
-from z3c.table.interfaces import IValues, IColumn
-
# import packages
from pyams_content.component.paragraph.milestone import MilestoneParagraph, Milestone
from pyams_content.component.paragraph.zmi import BaseParagraphAddMenu, BaseParagraphAJAXAddForm, \
BaseParagraphPropertiesEditForm, BaseParagraphAJAXEditForm
+from pyams_content.component.paragraph.zmi import IParagraphContainerView, IParagraphEditFormButtons
+from pyams_content.component.paragraph.zmi.interfaces import IParagraphInnerEditor
from pyams_content.features.renderer.zmi.widget import RendererFieldWidget
+from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION
+from pyams_content.shared.common import IWfSharedContent
from pyams_form.form import AJAXAddForm, ajax_config
+from pyams_form.interfaces.form import IInnerForm, IInnerSubForm
from pyams_form.security import ProtectedFormObjectMixin
from pyams_i18n.column import I18nAttrColumn
+from pyams_i18n.interfaces import II18n
from pyams_pagelet.pagelet import pagelet_config
from pyams_skin.container import switch_element_visibility
from pyams_skin.event import get_json_switched_table_refresh_event, get_json_table_row_refresh_event, \
get_json_widget_refresh_event
+from pyams_skin.interfaces.viewlet import IToolbarAddingMenu, IWidgetTitleViewletManager
+from pyams_skin.layer import IPyAMSLayer
from pyams_skin.table import BaseTable, SorterColumn, I18nColumn, TrashColumn, VisibilitySwitcherColumn
from pyams_skin.viewlet.toolbar import ToolbarAction
from pyams_utils.adapter import adapter_config, ContextRequestViewAdapter
@@ -52,14 +59,6 @@
from pyams_viewlet.viewlet import viewlet_config
from pyams_zmi.form import AdminDialogAddForm, AdminDialogEditForm
from pyams_zmi.zmi.table import InnerTableView
-from pyramid.decorator import reify
-from pyramid.view import view_config
-from z3c.form import field, button
-from z3c.table.column import GetAttrColumn
-from zope.interface import implementer, Interface
-from zope.schema.vocabulary import getVocabularyRegistry
-
-from pyams_content import _
class IMilestonesView(Interface):
@@ -74,29 +73,29 @@
layer=IPyAMSLayer, manager=IToolbarAddingMenu, weight=600)
class MilestoneParagraphAddMenu(BaseParagraphAddMenu):
"""Milestone paragraph add menu"""
-
+
label = _("Milestones...")
label_css_class = 'fa fa-fw fa-arrows-h'
url = 'add-milestone-paragraph.html'
paragraph_type = MILESTONE_PARAGRAPH_TYPE
-
-
+
+
@pagelet_config(name='add-milestone-paragraph.html', context=IParagraphContainerTarget, layer=IPyAMSLayer,
permission=MANAGE_CONTENT_PERMISSION)
@ajax_config(name='add-milestone-paragraph.json', context=IParagraphContainerTarget, layer=IPyAMSLayer,
base=BaseParagraphAJAXAddForm)
class MilestoneParagraphAddForm(AdminDialogAddForm):
"""Milestone paragraph add form"""
-
+
legend = _("Add new milestone paragraph")
icon_css_class = 'fa fa-fw fa-arrows-h'
- fields = field.Fields(IMilestoneParagraph).select('title', 'renderer')
+ fields = field.Fields(IMilestoneParagraph).omit(*PARAGRAPH_HIDDEN_FIELDS)
edit_permission = MANAGE_CONTENT_PERMISSION
def create(self, data):
return MilestoneParagraph()
-
+
def add(self, object):
IParagraphContainer(self.context).append(object)
@@ -118,7 +117,7 @@
legend = _("Edit milestone paragraph properties")
icon_css_class = 'fa fa-fw fa-arrows-h'
- fields = field.Fields(IMilestoneParagraph).select('title', 'renderer')
+ fields = field.Fields(IMilestoneParagraph).omit(*PARAGRAPH_HIDDEN_FIELDS)
fields['renderer'].widgetFactory = RendererFieldWidget
edit_permission = MANAGE_CONTENT_PERMISSION
@@ -320,7 +319,7 @@
legend = _("Add new milestone")
icon_css_class = 'fa fa-fw fa-arrow-h'
- fields = field.Fields(IMilestone).omit(*PARAGRAPH_HIDDEN_FIELDS)
+ fields = field.Fields(IMilestone).omit('__parent__', '__name__', 'visible')
edit_permission = MANAGE_CONTENT_PERMISSION
def create(self, data):
@@ -347,7 +346,7 @@
legend = _("Edit milestone properties")
icon_css_class = 'fa fa-fw fa-arrows-h'
- fields = field.Fields(IMilestone).omit(*PARAGRAPH_HIDDEN_FIELDS)
+ fields = field.Fields(IMilestone).omit('__parent__', '__name__', 'visible')
edit_permission = MANAGE_CONTENT_PERMISSION
def get_ajax_output(self, changes):