src/pyams_portal/zmi/templates/portlet.pt
changeset 5 670b7956c689
child 12 f972da099b1e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/pyams_portal/zmi/templates/portlet.pt	Mon Jan 18 18:09:46 2016 +0100
@@ -0,0 +1,184 @@
+<div class="modal-content" i18n:domain="pyams_portal">
+	<div class="modal-header"
+		 tal:define="header provider:form_header">
+		<tal:if condition="header">
+			<tal:var replace="structure header" />
+		</tal:if>
+		<tal:if condition="not:header">
+			<button type="button" class="close" data-dismiss="modal" aria-hidden="true"
+					tal:condition="view.is_dialog">
+				<i class="fa fa-fw fa-times-circle"></i>
+			</button>
+			<h3 class="modal-title"
+				tal:define="config extension:configuration;">
+				<span class="title" tal:content="view.title">Title</span>
+			</h3>
+			<tal:var replace="structure provider:form_toolbar" />
+		</tal:if>
+	</div>
+	<div class="modal-body no-padding">
+		<div class="form-prefix"
+			 tal:define="prefix provider:form_prefix"
+			 tal:condition="prefix"
+			 tal:content="structure prefix">Form prefix</div>
+		<form method="post"
+			  data-async
+			  tal:attributes="id view.id;
+							  name view.name;
+							  action view.get_form_action();
+							  method view.method;
+							  enctype view.enctype;
+							  acceptCharset view.acceptCharset;
+							  accept view.accept;
+							  autocomplete view.autocomplete;
+							  class view.css_class;
+							  data-ams-data extension:view_data;
+							  data-ams-form-handler view.get_ajax_handler() | nothing;
+							  data-ams-form-options view.get_form_options() | nothing;
+							  data-ams-form-submit-target view.form_target | nothing;
+							  data-ams-form-download-target view.download_target | nothing;
+							  data-ams-warn-on-change view.warn_on_change;">
+			<div class="modal-viewport">
+				<fieldset tal:attributes="class view.fieldset_class | default">
+					<legend tal:define="legend view.legend"
+							tal:condition="legend">
+						<i tal:attributes="class view.icon_css_class | nothing"></i>
+						<tal:var content="legend">Legend</tal:var>
+						<tal:var condition="python:getattr(view, 'show_widget_title', False)"
+								 content="structure provider:pyams.widget_title" />
+					</legend>
+					<tal:var content="structure provider:form_help" />
+					<fieldset class="bordered"
+							  tal:define="configuration view.getContent().configuration;
+										  can_inherit configuration.can_inherit;"
+							  tal:omit-tag="not can_inherit">
+						<input type="hidden" name="form.widgets.portlet_id"
+							   tal:attributes="value configuration.portlet_id" />
+						<legend tal:condition="can_inherit"
+								class="inner checker"
+								data-ams-checker-value="selected"
+								data-ams-checker-mode="disable"
+								data-ams-checker-fieldname="form.widgets.override_parent"
+								tal:attributes="data-ams-checker-state 'off' if configuration.inherit_parent else 'on';">
+							<label tal:content="view.override_label">Override parent settings</label>
+						</legend>
+						<div class="widgets-prefix"
+							 tal:define="prefix provider:widgets_prefix"
+							 tal:condition="prefix"
+							 tal:content="structure prefix">Widgets prefix</div>
+						<tal:loop repeat="group view.groups">
+							<fieldset tal:define="legend group.legend"
+									  tal:omit-tag="not:legend"
+									  tal:attributes="class 'bordered' if group.bordered else None">
+								<tal:if condition="group.checkbox_switch">
+									<legend data-ams-checker-value="selected"
+											tal:condition="legend"
+											tal:attributes="class group.css_class;
+															data-ams-checker-fieldname '{0}:list'.format(group.checkbox_widget.name);
+															data-ams-checker-readonly 'readonly' if group.checkbox_widget.mode == 'display' else None;
+															data-ams-checker-mode 'disable' if group.checkbox_mode == 'disable' else None;
+															data-ams-checker-marker '{0}-empty-marker'.format(group.checkbox_widget.name);
+															data-ams-checker-state group.checker_state;">
+										<label tal:content="legend">Legend</label>
+									</legend>
+								</tal:if>
+								<tal:if condition="not:group.checkbox_switch">
+									<legend tal:condition="legend"
+											tal:content="legend"
+											tal:attributes="class group.css_class;
+															data-ams-switcher-state group.switcher_state;">Legend</legend>
+								</tal:if>
+								<tal:var define="help group.help" condition="help">
+									<div class="alert alert-info padding-5"
+										 tal:define="html import:pyams_utils.text.text_to_html;
+													 i18n_help html(request.localizer.translate(help));"
+										 tal:content="structure i18n_help"></div>
+								</tal:var>
+								<tal:loop repeat="widget group.visible_widgets">
+									<input type="hidden"
+										   tal:condition="widget.mode == 'hidden'"
+										   tal:replace="structure widget.render()" />
+									<tal:if condition="widget.mode != 'hidden'">
+										<div tal:define="required 'required-field' if widget.required and (widget.mode != 'display') else ''"
+											 tal:attributes="class string:form-group ${required}">
+											<label tal:attributes="class group.label_css_class | view.label_css_class">
+												<span>
+													<tal:var content="widget.label" />
+													<i class="fa fa-question-circle hint" title="Input hint"
+													   tal:define="description widget.field.description"
+													   tal:condition="description"
+													   tal:attributes="title description;
+																	   data-ams-hint-html '<' in description;"></i>
+												</span>
+											</label>
+											<div tal:attributes="class widget.input_css_class | group.input_css_class | view.input_css_class">
+												<label class="input"
+													   tal:attributes="class widget.label_css_class | default;
+																	   data-ams-data extension:object_data(widget);
+																	   data-ams-form-validator view.get_widget_callback(widget.field.getName())">
+													<input tal:replace="structure widget.render()" />
+												</label>
+											</div>
+										</div>
+									</tal:if>
+								</tal:loop>
+							</fieldset>
+							<div class="subforms"
+								 tal:condition="group.subforms">
+								<fieldset tal:define="title group.subforms_legend"
+										  tal:omit-tag="not:title">
+									<legend tal:condition="title" tal:content="title" i18n:translate="">Title</legend>
+									<tal:loop repeat="subform group.subforms">
+										<tal:var replace="structure subform.render()" />
+									</tal:loop>
+								</fieldset>
+							</div>
+						</tal:loop>
+						<div class="widgets-suffix"
+							 tal:define="suffix provider:widgets_suffix"
+							 tal:condition="suffix"
+							 tal:content="structure suffix">Widgets suffix</div>
+						<div class="subforms"
+							 tal:condition="view.subforms">
+							<fieldset tal:define="title view.subforms_legend"
+									  tal:omit-tag="not:title">
+								<legend tal:condition="title" tal:content="title" i18n:translate="">Title</legend>
+								<tal:loop repeat="subform view.subforms">
+									<tal:var replace="structure subform.render()" />
+								</tal:loop>
+							</fieldset>
+						</div>
+						<div class="tabforms"
+							 tal:condition="view.tabforms">
+							<ul class="nav nav-tabs">
+								<li tal:repeat="tabform view.tabforms"
+									tal:attributes="class 'small {active} {errors}'.format(active='active' if repeat['tabform'].start() else '',
+																						   errors='state-error' if tabform.widgets.errors else '')">
+									<a data-toggle="tab"
+									   tal:attributes="href string:#${tabform.id};
+													   data-ams-url python:getattr(tabform, 'tab_target', None);"
+									   tal:content="tabform.tab_label" i18n:translate="">Tab label</a>
+								</li>
+							</ul>
+							<div class="tab-content bordered padding-x-10">
+								<div class="tab-pane fade in"
+									 tal:repeat="tabform view.tabforms"
+									 tal:attributes="id tabform.id;
+													 class 'tab-pane {active} fade in'.format(active='active' if repeat['tabform'].start() else '');"
+									 tal:content="structure tabform.render()"></div>
+							</div>
+						</div>
+					</fieldset>
+				</fieldset>
+			</div>
+			<footer tal:condition="view.actions and (view.is_dialog or (view.mode == 'input'))">
+				<button tal:repeat="action view.actions.values()"
+						tal:replace="structure action.render()">Action</button>
+			</footer>
+		</form>
+		<div class="form-suffix"
+			 tal:define="suffix provider:form_suffix"
+			 tal:condition="suffix"
+			 tal:content="structure suffix">Form suffix</div>
+	</div>
+</div>