new_post.naml

<override_macro name="new_post" parameters="page_name,bottom,focus" requires="servlet">
    <n.node_page.>
        <n.handle_new_node_permission_error/>
        <n.if.not.is_submitted_form>
            <then>
                <n.subject_field.set_value value="[n.page_node.default_reply_subject/]" />
                <n.alert_field.set_value value="[n.page_node.alert_default_value/]" />
                <n.init_new_post_custom_fields/>
            </then>
            <else>
                <n.catch_exception. id="save-block">
                    <n.check_antispam_submit bypass="preview"/>
                    <n.check_recent_post_limit/>
                    
                    <n.if.not.regex_matches pattern=".*"  text="[n.message_field.value/]" >
                        <then>
                            <n.throw_template_exception name="required_message_chinese"/>
                        </then>
                    </n.if.not.regex_matches>
                    
                    <n.create_child_of_page_node commit="[n.not.is_preview/]">
                        <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>post</kind>
                        <do>
                            <n.remember_new_node/>
                            <n.if.not.is_preview>
                                <then>
                                    <n.save_post/>
                                    <n.save_new_post_custom_fields/>
                                    <n.new_node.send_node_as_email/>
                                </then>
                            </n.if.not.is_preview>
                        </do>
                    </n.create_child_of_page_node>
                    <n.if.not.is_preview>
                        <then>
                            <n.new_node.save_alert_field/>
                            <n.redirect_to.new_node.path/>
                        </then>
                    </n.if.not.is_preview>
                </n.catch_exception.>
            </else>
        </n.if.not.is_submitted_form>
        <n.html>
            <head>
                <META NAME="robots" CONTENT="noindex,nofollow"/>
                <n.title.><n.page_name/></n.title.>
                <n.focus/>
                <style type="text/css">
                    .title-row {
                        padding:.6em .8em;
                        font-weight:bold;
                    }
                    div.field-title {
                        margin-top: 0;
                    }
                </style>
            </head>
            <body>
                <n.edit_header first_text="[n.page_name/]" second_text="[n.truncate. size='80'][n.page_node.subject/][/n.truncate.]" />

                <n.if.is_submitted_form>
                    <then>
                        <n.if.has_exception for="save-block">
                            <then.show_new_node_error/>
                            <else>
                                <n.if.is_preview>
                                    <then.new_node.preview/>
                                </n.if.is_preview>
                            </else>
                        </n.if.has_exception>
                    </then>
                </n.if.is_submitted_form>

                <n.if.not.global_is_var_set name="sent">
                    <then>
                        <n.form. onsubmit="return singleSubmit(this)">
                            <n.type_field.hidden/>
        
                            <n.reply_form />
        
                            <div style="margin-top:1em">
                                <n.antispam_submit_button class="toolbar action-button" value="[t]Post Message[/t]"/>
                                <input type="submit" class="toolbar action-button" name="preview" value="[t]Preview Message[/t]"/>
                                <t>or</t>
                                <a href="[n.page_node.path /]"><t>Cancel</t></a>
                            </div>
                        </n.form.>
        
                        <n.hide_null.bottom/>
                    </then>
                </n.if.not.global_is_var_set>
            </body>
        </n.html>
    </n.node_page.>
</override_macro>