create_sub_app.naml

<macro name="create_sub_app" requires="servlet">
	<n.node_page.>
		<n.if.not.visitor.can_create_sub_apps_under.page_node>
			<then>
				<n.login.><t>Only authorized users can proceed in this area.</t></n.login.>
			</then>
		</n.if.not.visitor.can_create_sub_apps_under.page_node>
		<n.if.not.is_submitted_form>
			<then>
				<n.type_field.set_value value="[n.page_node.sub_app_type/]" />
			</then>
			<else>
				<n.catch_exception. id="save-block">
					<n.create_child_of_page_node>
						<subject><n.subject_field.value/></subject>
						<message><n.message_field.value/></message>
						<is_html><n.html_format_field.value/></is_html>
						<type><n.type_field.value/></type>
						<kind>app</kind>
						<do>
							<n.remember_new_node/>
							<n.save_node/>
						</do>
					</n.create_child_of_page_node>
					<n.if.visitor.can_edit.page_node>
						<then.new_node.pin/>
					</n.if.visitor.can_edit.page_node>
					<n.redirect_to.new_node.path/>
				</n.catch_exception.>
			</else>
		</n.if.not.is_submitted_form>
		<n.html>
			<head>
				<META NAME="robots" CONTENT="noindex,nofollow"/>
				<n.title.><t>Create <t.element.page_node.child_name/></t></n.title.>
				<n.subject_field.focus/>
				<style type="text/css">
					div.field-title {
						margin-top: 0;
					}
				</style>
			</head>
			<body>
				<n.edit_header first_text="[n.page_node.get_app_node.subject/]" second_text="[t]Create new [t.element.page_node.child_name/][/t]" />
				<n.if.is_submitted_form>
					<then>
						<n.if.has_exception for="save-block">
							<then.show_new_node_error/>
						</n.if.has_exception>
					</then>
				</n.if.is_submitted_form>
				<n.form.>
					<n.type_field.hidden/>

					<div class="field-box light-border-color">
						<div class="second-font field-title"><t>Name</t></div>
						<div class="weak-color">
							<n.subject_field.input size="40" />
							(<t>max. 80 characters</t>)
						</div>
					</div>

					<div class="field-box light-border-color">
						<div class="second-font field-title"><t>Description</t></div>
						<div class="weak-color">
							<n.if.visitor.is_registered>
								<then>
									<n.html_format_field.checkbox />
									<label for="[n.html_format_field.name/]"><t>Description is in HTML Format</t></label><br/>
									<div style="margin:.1em 0">
										<n.editor_toolbar textarea_id="[n.message_field.name/]"/>
									</div>
								</then>
							</n.if.visitor.is_registered>
							<n.message_field.textarea wrap="SOFT" style="min-width:30em;max-width:55em;width:100%;height:12em;" />
						</div>
					</div>

					<n.if.not.visitor.is_registered>
						<then>
							<div class="weak-color field-box light-border-color" style="padding-top:0">
								<div>
									<div style="padding-bottom:.4em">
										<t>Since you are not a registered user, we must check that you are a human.</t>
									</div>
									<n.captcha_control/>
								</div>
							</div>
						</then>
					</n.if.not.visitor.is_registered>

					<input type="submit" class="toolbar action-button" value="[t]Create [t.element.page_node.child_name/][/t]"/>
					<t>or</t> <a href="[n.page_node.path /]"><t>Cancel</t></a>
				</n.form.>

				<div class="light-bg-color" style="padding: .5em;margin:1.5em 0 0">
					<div class="second-font field-title"><t>Related Help Article</t></div>
					<n.help.cataloging.link/>
				</div>
			</body>
		</n.html>
	</n.node_page.>
</macro>

<macro name="sub_app_type" requires="node">
	<n.if.regex_matches text="[n.type/]" pattern="forum|category|mixed">
		<then>forum</then>
		<else>
			<n.if.type equals="board">
				<then>category</then>
				<else><n.type/></else>
			</n.if.type>
		</else>
	</n.if.regex_matches>
</macro>