<!-- ZMSObject/input_elements -->
	<tal:block tal:define="
			standard modules/Products.zms/standard;
			pilutil modules/Products.zms/pilutil;
			action options/action;
			meta_id options/meta_id;
			metaObj python:here.getMetaobj(meta_id);
			metaObjIds python:here.getMetaobjIds();
			metaObjAttrIds python:here.getMetaobjAttrIds(metaObj['id'])"
		><tal:block tal:repeat="metaObjAttrId metaObjAttrIds"
			><tal:block tal:define=" 
					metaObjAttr python:here.getMetaobjAttr(metaObj['id'],metaObjAttrId)"
				><tal:block tal:condition="python:metaObjAttr['id'].find('_')!=0 and metaObjAttr['id'] not in request.get('ZMS_HIDE_ELEMENTS',[]) and metaObjAttr['type'] not in here.metaobj_manager.valid_zopetypes+[ 'constant', 'method', 'py', 'zpt', 'resource']"
				><tal:block tal:on-error="python:standard.writeError(here,'error in %s.%s'%(metaObjAttr['type'],metaObjAttr['type']))" tal:define=" 
						elName python:here.getObjAttrName(metaObjAttr,request['lang']);
						elLabel python:here.getObjAttrLabel(metaObjAttr);"
					><tal:block tal:condition="python:metaObjAttr['type']=='delimiter'"
						><tal:block tal:content="structure python:'</div><!-- .card-body --></div><!-- .collapse -->'"></tal:block>
						<div class="card-header btn-collapse">
							<a class="btn card-toggle pull-left" data-toggle="collapse" 
								tal:attributes="href python:'#%s'%metaObjAttr['id']"
								><i class="fas fa-invisible"></i>
								<tal:block tal:content="elLabel">the label</tal:block
							></a>
						</div><!-- .card-header -->
						<tal:block tal:content="structure python:'<div id=\042%s\042 class=\042collapse show\042><div class=\042card-body\042>'%metaObjAttr['id']"></tal:block>
					</tal:block
					><tal:block tal:condition="python:metaObjAttr['type']=='hint'"
						><div class="zmi-hint" tal:content="structure elLabel">the hint</div>
					</tal:block
					><tal:block tal:condition="python:metaObjAttr['type']=='interface'"
						><div class="zmi-interface" tal:content="structure python:here.attr(metaObjAttrId)">the interface</div>
					</tal:block
					><tal:block tal:condition="python:metaObjAttr['type']=='richtext'"
						><div tal:attributes="class python:' '.join(['zmi-richtext']+[[],['is-modified']][int(here.attr_is_modified(metaObjAttrId))])" tal:content="structure python:here.getObjInput(metaObjAttr['id'],request)">the richtext</div>
					</tal:block
					><tal:block tal:condition="python:metaObjAttr['type'] in metaObjIds and here.getMetaobj(metaObjAttr['type'])['type']=='ZMSResource' and action.lower()!='insert'"
						><tal:block tal:content="structure python:'</div><!-- .card-body --></div><!-- .collapse -->'"></tal:block
						><div class="card-header btn-collapse">
							<a class="btn card-toggle pull-left" data-toggle="collapse" tal:attributes="href python:'#%s'%metaObjAttr['id']">
								<i class="fas fa-invisible"></i>
								<tal:block tal:content="elLabel">the label</tal:block>
							</a>
							<div class="zmi-action btn-group pull-right dropleft" tal:condition="python:not standard.nvl(metaObjAttr.get('mandatory'),False)">
								<button class="btn dropdown-toggle" data-toggle="dropdown"><i class="fas fa--caret-square-down"></i></button>
								<div class="dropdown-menu dropdown-menu-right">
									<tal:block tal:condition="python:len(here.getObjChildren(metaObjAttr['id'],request))==0">
										<a class="dropdown-item" tal:attributes="href python:'manage_initObjChild?id=%s&type=%s&lang=%s&manage_target=%s'%(metaObjAttr['id'],metaObjAttr['type'],request['lang'],request['URL'])">
											<i class="fas fa-plus-square"></i>
											<tal:block tal:content="python:here.getZMILangStr('BTN_INSERT')">Insert</tal:block>
										</a>
									</tal:block>
									<tal:block tal:condition="python:len(here.getObjChildren(metaObjAttr['id'],request))>0">
										<a class="dropdown-item" tal:attributes="href python:'manage_deleteObjs?ids:list=%s&lang=%s&manage_target=%s'%(metaObjAttr['id'],request['lang'],request['URL'])">
											<i class="fas fa-trash"></i>
											<tal:block tal:content="python:here.getZMILangStr('BTN_DELETE')">Delete</tal:block>
										</a>
									</tal:block>
								</div><!-- .dropdown-menu -->
							</div>
						</div><!-- .card-header -->
						<tal:block tal:content="structure python:'<div id=\042%s\042 class=\042collapse show\042><div class=\042card-body\042>'%metaObjAttr['id']"></tal:block>
						<tal:block tal:repeat="childNode python:here.getObjChildren(metaObjAttr['id'],request)"
							><tal:block tal:define="dummy0 python:request.set('objAttrNamePrefix','%s_'%childNode.id)"></tal:block
							><tal:block tal:content="structure python:childNode.obj_input_elements(action=action,meta_id=childNode.meta_id)">obj_input_elements</tal:block
							><tal:block tal:define="dummy0 python:request.set('objAttrNamePrefix','')"></tal:block
						></tal:block
					></tal:block
					><tal:block tal:condition="python:
	metaObjAttr['type'] not in ['?','delimiter','hint','interface','richtext']+metaObjIds+['*'] and metaObjAttr['type'] in here.metaobj_manager.valid_types and not (metaObjAttr['id'] in ['displaytype','format']) and not (metaObjAttr['id'].find('align') > 0 and len(here.filter_list(metaObj['attrs'],'id',metaObjAttr['id'][:metaObjAttr['id'].find('align')],'=='))>0) and (metaObjAttr['id']!='imgsuperres' or (pilutil.enabled() and here.getConfProperty('ZMSGraphic.superres',0)==1))">
						<div class="form-group row" tal:attributes="id python:'tr_%s'%(elName); class python:' '.join(['form-group','row']+[[],['is-modified']][int(here.attr_is_modified(metaObjAttrId))])">
							<label tal:attributes="for elName; class python:' '.join(['col-sm-2 control-label']+[[],['mandatory']][int(standard.nvl(metaObjAttr.get('mandatory'),False))])">
								<span tal:content="structure elLabel">the label</span>
							</label>
							<div class="col-sm-10"
								tal:content="structure python:here.getObjInput(metaObjAttr['id'],request)">the control</div><!-- .col-lg-10 -->
						</div><!-- .form-group -->
					</tal:block
				></tal:block>
				</tal:block>
			</tal:block>
		</tal:block>
	</tal:block>
<!-- /ZMSObject/input_elements -->