root/branches/release-36/tmpl/cms/edit_template.tmpl @ 2115

Revision 2115, 33.9 kB (checked in by bchoate, 19 months ago)

Paginate rebuild operation for list action to publish archive templates. Added 'save and rebuild' button for archive templates. BugId:79515

  • Property svn:keywords set to Author Date Id Revision
Line 
1<mt:setvarblock name="page_title">
2    <mt:if name="template_group" eq="widget">
3        <mt:if name="id">
4    <__trans phrase="Edit Widget">
5        <mt:else>
6    <__trans phrase="Create Widget">
7        </mt:if>
8    <mt:else>
9        <mt:if name="id">
10    <__trans phrase="Edit Template">
11        <mt:else>
12    <__trans phrase="Create Template">
13        </mt:if>
14    </mt:if>
15</mt:setvarblock>
16<mt:setvarblock name="html_title"><mt:if name="id"><mt:if name="has_name"><mt:var name="name"><mt:else><mt:var name="template_name"></mt:if> - <__trans phrase="Edit Template"><mt:else><__trans phrase="Create Template"></mt:if></mt:setvarblock>
17<mt:var name="position_actions_bottom" value="1">
18<mt:setvarblock name="system_msg">
19    <mt:unless name="recovered_object">
20        <mt:if name="autosaved_object_exists">
21            <mtapp:statusmsg
22                id="autosaved-object-exists"
23                can_close="1"
24                class="info">
25                <__trans phrase="A saved version of this [_1] was auto-saved [_3]. <a href="[_2]">Recover auto-saved content</a>" params="<mt:var name="object_label">%%<mt:var name="script_url">?__mode=view&amp;_type=template&amp;&amp;_recover=1&amp;blog_id=<mt:var name="blog_id"><mt:if name="id">&amp;id=<mt:var name="id"></mt:if>%%<mt:date ts="$autosaved_object_ts" relative="1" offset_blog_id="<$mt:var name="blog_id"$>">">
26            </mtapp:statusmsg>
27        </mt:if>
28    </mt:unless>
29    <mt:if name="recovered_object">
30        <mtapp:statusmsg
31            id="recovered-object"
32            class="success">
33            <__trans phrase="You have successfully recovered your saved [_1]." params="<mt:var name="object_label">">
34        </mtapp:statusmsg>
35    </mt:if>
36    <mt:if name="recovered_failed">
37        <mtapp:statusmsg
38            id="recovered-failed"
39            class="error">
40            <__trans phrase="An error occurred while trying to recover your saved [_1]." params="<mt:var name="object_label">">
41        </mtapp:statusmsg>
42    </mt:if>
43    <mt:if name="saved">
44        <mt:if name="error">
45            <mtapp:statusmsg
46                id="generic-error"
47                class="error">
48                <__trans phrase="Your template changes have been saved.">
49                <mt:var name="error">
50            </mtapp:statusmsg>
51        <mt:else>
52            <mtapp:statusmsg
53                id="saved"
54                class="success">
55                <__trans phrase="Your template changes have been saved.">
56                <mt:unless name="build_dynamic">
57                <mt:unless name="build_type_0">
58                    <mt:if name="has_rebuild">
59                        <mt:if name="can_rebuild">
60                            <__trans phrase="<a href="[_1]" class="rebuild-link">Publish</a> this template." params="<mt:var name="script_url">?__mode=start_rebuild&amp;blog_id=<mt:var name="blog_id">&amp;next=0&amp;type=index-<mt:var name="id">&amp;tmpl_id=<mt:var name="id">&amp;single_template=1'"></a>
61                        </mt:if>
62                    </mt:if>
63                </mt:unless>
64                </mt:unless>
65            </mtapp:statusmsg>
66        </mt:if>
67    <mt:else>
68        <mt:if name="error">
69            <mtapp:statusmsg
70                id="generic-error"
71                class="error">
72                <mt:var name="error">
73            </mtapp:statusmsg>
74        </mt:if>
75    </mt:if>
76    <mt:if name="message">
77        <mtapp:statusmsg
78            id="message"
79            class="alert">
80            <mt:var name="message">
81        </mtapp:statusmsg>
82    </mt:if>
83    <mt:if name="saved_rebuild">
84        <mtapp:statusmsg
85            id="saved-rebuild"
86            class="success">
87            <__trans phrase="Your [_1] has been published." params="<mt:var name="name">">
88        </mtapp:statusmsg>
89    </mt:if>
90</mt:setvarblock>
91<mt:setvarblock name="related_content">
92    <mtapp:widget
93        id="useful-links"
94        label="<__trans phrase="Useful Links">">
95        <ul>
96        <mt:if name="template_group" eq="widget">
97            <li><a href="<mt:var name="script_url">?__mode=list_widget&amp;blog_id=<mt:var name="blog_id">" class="icon-left icon-related"><__trans phrase="Widgets"></a></li>
98        <mt:else>
99            <li><a href="<mt:var name="script_url">?__mode=list&amp;_type=template&amp;blog_id=<mt:var name="blog_id">#<$mt:var name="template_group"$>" class="icon-left icon-related"><__trans phrase="List [_1] templates" params="<$mt:var name="template_group_trans"$>"></a></li>
100            <li><a href="<mt:var name="script_url">?__mode=list&amp;_type=template&amp;blog_id=<mt:var name="blog_id">" class="icon-left icon-related"><__trans phrase="List all templates"></a></li>
101        </mt:if>
102        <mt:if name="published_url">
103            <li><a href="<mt:var name="published_url">" class="icon-left icon-related" target="<__trans phrase="_external_link_target">"><__trans phrase="View Published Template"></a></li>
104        </mt:if>
105        </ul>
106    </mtapp:widget>
107
108    <mt:if name="have_includes">
109        <mtapp:widget
110            id="template-includes"
111            label="<__trans phrase="Included Templates">">
112        <ul>
113        <mt:loop name="include_loop">
114            <li><mt:if name="include_link"><a href="<mt:var name="include_link">" class="icon-left icon-related"><mt:var name="include_module"></a><mt:else><mt:var name="include_module"> (<a href="<mt:var name="create_link">"><__trans phrase="create"></a>)</mt:if></li>
115        </mt:loop>
116        <mt:loop name="widget_loop">
117            <li><mt:if name="include_link"><a href="<mt:var name="include_link">" class="icon-left icon-related"><mt:var name="include_module"></a><mt:else><mt:var name="include_module"> (<a href="<mt:var name="create_link">"><__trans phrase="create"></a>)</mt:if></li>
118        </mt:loop>
119        <mt:loop name="widget_set_loop">
120            <li><mt:if name="include_link"><a href="<mt:var name="include_link">" class="icon-left icon-related"><mt:var name="include_module"></a><mt:else><mt:var name="include_module"> (<a href="<mt:var name="create_link">"><__trans phrase="create"></a>)</mt:if></li>
121        </mt:loop>
122        </ul>
123        </mtapp:widget>
124    </mt:if>
125    <mtapp:widget
126        id="tag-list"
127        class="hidden"
128        label="<__trans phrase="Template Tag Docs">"
129        label_link="$link_doc">
130        <div id="tag-list-inner">
131        </div>
132    </mtapp:widget>
133    <mtapp:widget
134        id="badtag-list"
135        class="hidden"
136        label="<__trans phrase="Unrecognized Tags">">
137        <div id="badtag-list-inner">
138        </div>
139    </mtapp:widget>
140</mt:setvarblock>
141<mt:setvartemplate name="action_buttons">
142    <button
143        onclick="return validate(this.form);"
144        type="submit"
145        accesskey="s"
146        tabindex="12"
147        title="<__trans phrase="Save (s)">"
148        class="primary-button"
149        ><__trans phrase="Save"></button>
150    <mt:if name="can_preview">
151    <button
152        mt:mode="preview_template"
153        name="preview_template"
154        type="submit"
155        accesskey="v"
156        tabindex="13"
157        title="Preview"
158        onclick="return validate(this.form);"
159        ><__trans phrase="Preview"></button>
160    </mt:if>
161    <mt:unless name="build_dynamic">
162        <mt:if name="can_rebuild">
163            <mt:if name="template_group" like="/^(archive|index)$/">
164    <button
165        type="submit"
166        accesskey="r"
167        tabindex="14"
168        title="<__trans phrase="Save and Publish this template (r)">"
169        onclick="return validate(this.form, 1);"
170        ><__trans phrase="Save &amp; Publish"></button>
171            </mt:if>
172        </mt:if>
173    </mt:unless>
174    <div id="autosave-notification-<$mt:var name="bar_position" default="top"$>" class="autosave-notification"></div>
175</mt:setvartemplate>
176<mt:setvarblock name="html_head" append="1">
177<script type="text/javascript" src="<mt:var name="static_uri">js/tc/client.js"></script>
178<script type="text/javascript">
179/* <![CDATA[ */
180var tag_inserts = {};
181var snippets = [];
182<mt:loop name="template_snippets">
183var content = "<mt:var name="content" escape="js">";
184<mt:if name="trigger">
185var output = content.replace(/\$(?!0)/g, '');
186snippets.push({ 'input' : '<mt:var name="trigger" escape="js">',
187    'output' : output });
188</mt:if>
189content = content.replace(/\$0/, '');
190tag_inserts['<mt:var name="id" escape="js">'] = content;
191</mt:loop>
192
193if ( !window.Editor )
194    Editor = { strings: {} };
195Editor.strings.unsavedChanges = '<__trans phrase="You have unsaved changes to this template that will be lost." escape="js">';
196
197var fieldStorage = {};
198var dirty = false;
199function setDirty () {
200    log.warn('deprecated function setDirty(), call app.setDirty instead');
201    app.setDirty();
202}
203function clearDirty () {
204    log.warn('deprecated function clearDirty(), call app.clearDirty instead');
205    app.clearDirty();
206}
207
208var tag_docs = <tmpl_var name="tag_docs" to_json="1">;
209
210function documentTags( useTextInput ) {
211    // scan text of editor for tags
212    var str;
213    if ( !useTextInput && ( window.app && window.app.cpeList.length > 0
214        && window.app.cpeList[0].editor ) ) {
215        str = window.app.cpeList[0].getCode();
216    } else {
217        var area = DOM.getElement('text_cpe') || DOM.getElement('text');
218        str = area.value;
219    }
220   
221    if ( !defined( str ) )
222        str = '';
223
224    // clear any ignore blocks
225    var re = new RegExp('(<m' + 't:?ignore([^>])*?>)[\\S\\s]*?</mt:?ignore>',
226        'gi');
227    str = str.replace(re, '$1');
228    // scan template string for MT tags and build
229    // a hash of unique tag names
230    var tags = {};
231    var matches = str.match(/<\$?[mM][tT]:?[^\s>]+/g);
232    if (matches) {
233        for (var i = 0; i < matches.length; i++ ) {
234            var orig_tag = matches[i];
235            if (orig_tag.match(/^<\$/)) {
236                if (!orig_tag.match(/\$$/))
237                    orig_tag += '$';
238            }
239            orig_tag = orig_tag.replace(/^</, '&lt;');
240            orig_tag += '&gt;';
241            var tag = matches[i].replace(/^<\$?[mM][tT]:?/, '');
242            tag = tag.replace(/\$$/, '');
243            tags[dirify(tag.toLowerCase())] = orig_tag;
244        }
245    }
246
247    // construct a set of bullets for all discovered tags
248    // separate into valid/invalid lists
249    var sorted_tags = [];
250    for ( var t in tags ) {
251        if ( !tags.hasOwnProperty( t ) )
252            continue;
253        sorted_tags.push(t);
254    }
255    sorted_tags.sort();
256    var list = '';
257    var bad_list = '';
258    for ( var i = 0; i < sorted_tags.length; i++ ) {
259        var t = sorted_tags[i];
260        var url = tagDocURL( t );
261        var tag_name = tags[t];
262        if (!url) {
263            bad_list = bad_list + "<li>" + tag_name + "</li>";
264            continue;
265        }
266        var link = "<a target=\"mt_docs\" href=\"" + url + "\">" + tag_name + "</a>";
267        list = list + "<li>" + link + "</li>";
268    }
269
270    // if we found tags to list, display the tag-list widget, otherwise
271    // hide it
272    if (list != '') {
273        list = '<ul>' + list + '</ul>';
274        DOM.getElement("tag-list-inner").innerHTML = list;
275        DOM.removeClassName("tag-list", "hidden");
276    } else {
277        DOM.addClassName("tag-list", "hidden");
278    }
279    // if we found invalid tags, display them in badtag-list, otherwise
280    // hide it
281    if (bad_list != '') {
282        bad_list = '<ul>' + bad_list + '</ul>';
283        DOM.getElement("badtag-list-inner").innerHTML = bad_list;
284        DOM.removeClassName("badtag-list", "hidden");
285    } else {
286        DOM.addClassName("badtag-list", "hidden");
287    }
288}
289
290function tagDocURL(name) {
291    var re = new RegExp('(?:^|,)' + name + '\\??(?:,|$)', 'i');
292    for ( var u in tag_docs ) {
293        if ( !tag_docs.hasOwnProperty(u) ) continue;
294
295        var tags = tag_docs[u];
296        var m;
297        if (m = tags.match(re)) {
298            return u.replace(/\%t/, name);
299        }
300    }
301    return;
302}
303
304function archiveFileSelect(sel) {
305    var fld = sel.name;
306    fld = fld.replace(/sel/, 'tmpl');
307    var edit = getByID(fld);
308    var map = sel.options[sel.selectedIndex].value;
309    if (map == '') {
310        DOM.addClassName(sel, "hidden");
311        DOM.removeClassName(edit, "hidden");
312        edit.focus();
313    } else {
314        edit.value = map;
315    }
316}
317
318function insertSnippet(el) {
319    if (el.selectedIndex == -1) return false;
320    var opt = el.options[el.selectedIndex].value;
321    if (!opt) return false;
322    el.selectedIndex = 0;
323    if (tag_inserts[opt]) {
324        app.insertCode( tag_inserts[opt] );
325    }
326}
327function setRebuild(f) {
328    f['rebuild'].value = 'Y';
329}
330
331function validate (f, rebuild) {
332    if (f.name && !f.name.value) {
333        alert('<__trans phrase="You must set the Template Name." escape="js">');
334        return false;
335    }
336    else if (f.outfile && !f.outfile.value) {
337        alert('<__trans phrase="You must set the template Output File." escape="js">');
338        return false;
339    }
340    else {
341        app.clearDirty();
342        if (rebuild) setRebuild(f);
343    }
344    return true;
345}
346function saveArchiveMapChange(param) {
347    showMsg('<__trans phrase="Processing request..." escape="js">', 'map-message', 'success')
348
349    // TBD: we need to get the blog id from the selector control
350    // itself
351    var params = { uri: '<mt:var name="script_url">', method: 'POST', arguments: param, load: savedArchiveMapChange };
352    TC.Client.call(params);
353
354}
355function savedArchiveMapChange(c) {
356    var res = c.responseText;
357    if (res == '')
358        message = '<__trans phrase="Error occurred while updating archive maps." escape="js">';
359    else
360        message = '<__trans phrase="Archive map has been successfully updated." escape="js">';
361    showMsg(message, 'map-message', 'success');
362    var map = getByID('template-maps');
363    if (map)
364        map.innerHTML = res;
365}
366function deleteMap(mapid) {
367    if (!confirm('<__trans phrase="Are you sure you want to remove this template map?" escape="js">'))
368        return;
369    var tr = getByID(mapid);
370    if (tr) {
371        var tbody = tr.parentNode;
372        if (tbody)
373            tbody.deleteRow(tr.rowIndex - 1); // thead has a row - subtract it
374    }
375    var frm = document.forms['archive_map_form'];
376    if (!frm) return false;
377    var param = '__mode=delete_map'
378        + '&blog_id=' + frm['blog_id'].value
379        + '&template_id=<mt:var name="id">'
380        + '&id=' + mapid
381        + '&magic_token=<mt:var name="magic_token">';
382    saveArchiveMapChange(param);
383}
384function setCreateMode () {
385    var el = getByID('map-message');
386    if (el) el.style.display = 'none';
387    getByID('create-inline-mapping').style.display = 'block';
388    return false;
389}
390
391function cancelCreateMode () {
392    getByID('create-inline-mapping').style.display = 'none';
393    return false;
394}
395function addMap() {
396    getByID('create-inline-mapping').style.display = 'none';
397    var f = document.forms['template-listing-form'];
398    var frm = document.forms['archive_map_form'];
399    if (!frm) return false;
400    var param = '__mode=add_map'
401        + '&blog_id=' + frm['blog_id'].value
402        + '&template_id=<mt:var name="id">'
403        + '&new_archive_type=' + f['new_archive_type'].value
404        + '&magic_token=<mt:var name="magic_token">';
405    saveArchiveMapChange(param);
406}
407
408function togglePreferred(checkbox, mapid) {
409    var frm = document.forms['template-listing-form'];
410    if (!frm) return false;
411    var checkboxes = frm[checkbox.name];
412    if (checkbox.length == undefined) {
413        for (var j = 0; j < frm[checkbox.id].length; ++j) {
414            if (frm[checkbox.id][j].type == 'hidden')
415                frm[checkbox.id][j].value = checkbox.checked ? '1' : '0';
416        }
417    } else {
418        for (var i = 0; i < checkboxes.length; ++i) {
419            if (checkboxes[i] != checkbox)
420                checkboxes[i].checked = false;
421            for (var j = 0; j < frm[checkboxes[i].id].length; ++j) {
422                if (frm[checkboxes[i].id][j].type == 'hidden') {
423                    frm[checkboxes[i].id][j].value = checkboxes[i].checked ? '1' : '0';
424                }
425            }
426        }
427    }
428}
429
430function toggleCache(id) {
431    if ("expire-time" == id) {
432        toggleDisable('cache-time-value', 0);
433        toggleDisable('cache-time-unit', 0);
434    } else {
435        toggleDisable('cache-time-value', 1);
436        toggleDisable('cache-time-unit', 1);
437    }
438    var es = DOM.getElement('cache-events').getElementsByTagName('input');
439    for (var i=0, len=es.length; i<len; i++)
440        toggleDisable( es[i].id, "expire-event" != id )
441    return false;
442}
443
444    Template.templates.autoSave = '<mt:section encode_js="1">
445    [# if ( saving ) { #]
446        [#= trans("Auto-saving..." ) #]
447    [# } else { #]
448        [#= trans("Last auto-save at [_1]:[_2]:[_3]", hh, mm, ss ) #]
449    [# } #]
450    </mt:section>';
451
452function init() {
453    var txt = getByID("text");
454    if (txt) {
455        var w;
456        if (w = txt.contentWindow) {
457            if (w.Language) {
458                if (w.Language && !w.Language.snippets) {
459                    w.Language.snippets = [];
460                }
461                var fsnippets = w.Language.snippets;
462                for (var i = 0; i < snippets.length; i++) {
463                    fsnippets.push(snippets[i]);
464                }
465            }
466        }
467    }
468}
469
470TC.attachLoadEvent( init );
471/* ]]> */
472</script>
473</mt:setvarblock>
474<mt:setvarblock name="html_body" append="1">
475    <mt:if name="dirty">
476    <script type="text/javascript">
477        /* <![CDATA[ */
478            MT.App.dirty = true;
479        /* ]]> */
480    </script>
481    </mt:if>
482</mt:setvarblock>
483<mt:include name="include/header.tmpl">
484
485<form name="template-listing-form" id="template-listing-form" method="post" action="<mt:var name="script_url">" mt:once="1" mt:auto-save="1" mt:auto-save-delay="<$mt:var name="autosave_frequency"$>000">
486<input type="hidden" name="id" value="<mt:var name="id">" />
487<input type="hidden" name="blog_id" value="<mt:var name="blog_id" default="0">" />
488<input type="hidden" name="type" value="<mt:var name="type" escape="html">" />
489<input type="hidden" name="__mode" value="save" />
490<input type="hidden" name="_type" value="template" />
491<input type="hidden" name="rebuild" value="" />
492<input type="hidden" name="action_name" value="" />
493<input type="hidden" name="action_input" value="" />
494<input type="hidden" name="return_args" value="<mt:var name="return_args" escape="html">" />
495<input type="hidden" name="magic_token" value="<mt:var name="magic_token">" />
496
497<mt:include name="include/actions_bar.tmpl" hide_pager="1">
498
499<mtapp:setting
500    id="title"
501    label="<__trans phrase="Template Name">"
502    label_class = "no-header"
503    help_page="templates"
504    help_section="template_name">
505    <mt:if name="has_name">
506    <input name="name" id="title" tabindex="1" value="<mt:var name="name" escape="html">" maxlength="255" mt:watch-change="1" />
507    <mt:else>
508    <input type="hidden" name="name" value="<$mt:var name="template_name" escape="html"$>" />
509    <input type="text" id="title" name="name_display" value="<$mt:var name="template_name_label" escape="html">" disabled="disabled" />
510    </mt:if>
511</mtapp:setting>
512
513<mt:if name="type_custom">
514    <$mt:setvar name="template_name" value="<__trans phrase="Module Body">"$>
515<mt:else>
516    <$mt:setvar name="template_name" value="<__trans phrase="Template Body">"$>
517</mt:if>
518<mtapp:setting
519    id="template-body"
520    label="$template_name"
521    label_class="no-header"
522    help_page="templates"
523    help_section="template_name">
524    <div id="template-body-actions">
525        <span class="codepress-toolbar" style="float:right">
526            <a href="javascript: void 0;" title="<__trans phrase="Syntax Highlight On" escape="singlequotes">" mt:command="set-mode-codepress-on" class="command-toggle-codepress-on toolbar button"><b>Syntax Hightlight On</b><s></s></a>
527            <a href="javascript: void 0;" title="<__trans phrase="Syntax Highlight Off" escape="singlequotes">" mt:command="set-mode-codepress-off" class="command-toggle-codepress-off toolbar button"><b>Syntax Hightlight Off</b><s></s></a>
528        </span>
529        <mt:if name="template_snippets">
530        <select id="tag-insert" tabindex="2" name="tag-insert" onchange="insertSnippet(this)">
531            <option value=""><__trans phrase="Insert..."></option>
532            <mt:loop name="template_snippets">
533            <option value="<mt:var name="id">"><mt:var name="label" escape="html"><mt:if name="trigger"> (<mt:var name="trigger" escape="html">)</mt:if></option>
534            </mt:loop>
535        </select>
536        </mt:if>
537    </div>
538    <div id="textarea-enclosure" style="position: relative; padding-bottom: 10px; height: <mt:var name="disp_prefs_height_text" default="290">px" mt:min-height="66" mt:update-field-height="text_height">
539        <textarea tabindex="3" class="full-width monospace medium" spellcheck="false" name="text" id="text" cols="" rows="" mt:watch-change="1" style="height: <mt:var name="disp_prefs_height_text" default="290">px" mt:editor="codepress" mt:editor-options="lang:<mt:var name="template_lang"> autocomplete:off" /><mt:var name="text" escape="html"></textarea>
540        <input type="hidden" name="text_height" id="text_height" value="<mt:var name="disp_prefs_height_text" default="290">" />
541        <div class="resizer" mt:delegate="resizer" mt:target="textarea-enclosure" mt:lock="x">
542            <img src="<$mt:var name="static_uri"$>images/spacer.gif" width="100%" height="10"/>
543        </div>
544    </div>
545</mtapp:setting>
546
547<div id="template-options"<mt:unless name="id"> class="active"</mt:unless>>
548    <div id="template-options-header" class="pkg">
549        <h3><a href="javascript:void(0);" onclick="return toggleActive('template-options');"><__trans phrase="Template Options"></a></h3>
550        <div class="template-options-summary">
551<mt:if name="has_outfile">
552            <__trans phrase="Output file: <strong>[_1]</strong>" params="<mt:var name="outfile" escape="html">">
553</mt:if>
554<mt:if name="enabled_archive_types">
555            <__trans phrase="Enabled Mappings: [_1]" params="<mt:var name="enabled_archive_types">">
556</mt:if>
557        </div>
558    </div>
559    <div id="template-options-content" class="pkg">
560<mt:if name="has_outfile">
561    <mtapp:setting
562        id="outfile"
563        label="<__trans phrase="Output File">"
564        help_page="templates"
565        help_section="output_file">
566        <div class="textarea-wrapper">
567            <input name="outfile" id="outfile" tabindex="4" value="<mt:var name="outfile" escape="html">" class="full-width" mt:watch-change="1" />
568        </div>
569    </mtapp:setting>
570</mt:if>
571
572<mt:if name="type" eq="index">
573    <mtapp:setting
574        label="<__trans phrase="Template Type">"
575        id="identifier"
576        help_page="templates"
577        help_section="template_type">
578        <select name="identifier" id="identifier" tabindex="5" class="full-width">
579            <option value="" <mt:unless name="identifier">selected="selected"</mt:unless>><__trans phrase="Custom Index Template"></option>
580        <mt:loop name="index_identifiers">
581            <option value="<mt:var name="key" escape="html">" <mt:if name="selected">selected="selected"</mt:if>><$mt:var name="label" escape="html"$> (<$mt:var name="key" escape="html"$>)</option>
582        </mt:loop>
583        </select>
584    </mtapp:setting>
585</mt:if>
586
587<mtapp:setting
588    label="<__trans phrase="Link to File">"
589    id="linked_file"
590    help_page="templates"
591    help_section="linked_templates">
592        <div class="textarea-wrapper">
593            <input name="linked_file" id="linked_file" tabindex="8" value="<mt:var name="linked_file" escape="html">" maxlength="255" class="full-width" mt:watch-change="1" />
594        </div>
595</mtapp:setting>
596
597<mt:if name="archive_types">
598    <mtapp:setting
599        id="archive_mapping"
600        label="<__trans phrase="Archive Mapping">"
601        content_class="field-content-text"
602        hint=""
603        show_hint="0">
604        <p><a href="javascript:void(0)" onclick="return setCreateMode()" class="icon-left icon-create"><__trans phrase="Create Archive Mapping"></a></p>
605        <div id="msg-block"></div>
606        <div class="create-inline" id="create-inline-mapping">
607            <label for="new_archive_type"><strong><__trans phrase="Type"></strong></label>
608            <select name="new_archive_type" id="new_archive_type" tabindex="9">
609    <mt:loop name="archive_types">
610                <option value="<mt:var name="archive_type" escape="html">"><mt:var name="archive_type_translated" escape="html"></option>
611    </mt:loop>
612            </select>
613            &nbsp;
614            <span class="buttons">
615                <a href="javascript:void(0)"
616                    onclick="addMap(); return false;"
617                    ><__trans phrase="Add"></a>
618                <a href="javascript:void(0)"
619                    onclick="cancelCreateMode(); return false"
620                    ><__trans phrase="Cancel"></a>
621            </span>
622        </div>
623        <div id="template-maps">
624            <mt:include name="include/archive_maps.tmpl">
625        </div>
626    </mtapp:setting>
627<mt:else>
628    <mt:if name="template_group" eq="index">
629        <mt:setvarblock name="build_dynamic_hint">
630            <__trans phrase="Learn more about <a href="http://www.movabletype.org/documentation/administrator/publishing/publishing-profiles-and-strategies.html">publishing profiles</a>">
631        </mt:setvarblock>
632        <mtapp:setting
633            id="build_dynamic"
634            label="<__trans phrase="Publish Options">"
635            hint="$build_dynamic_hint"
636            show_hint="1"
637            help_page="templates"
638            help_section="enable_dynamic_publishing">
639            <select name="build_type" id="build-type" class="full-width">
640                <option value="1"<mt:if name="build_type_1"> selected="selected"</mt:if>><__trans phrase="Statically"></option>
641                <option value="3"<mt:if name="build_type_3"> selected="selected"</mt:if>><__trans phrase="Dynamically"></option>
642                <mt:if name="publish_queue_available">
643                <option value="4"<mt:if name="build_type_4"> selected="selected"</mt:if>><__trans phrase="Background"></option>
644        <mt:ignore>
645            <!-- untested features -->
646                    <option value="5"<mt:if name="build_type_5"> selected="selected"</mt:if>><__trans phrase="On a schedule"></option>
647                        <!-- This code needs to be shown if the "On a schedule" has been selected -->
648                    <__trans phrase=": every "><input name="schedule_interval" id="schedule_interval" value="<mt:var name="schedule_interval" escape="html">" maxlength="10" class="quarter-width" mt:watch-change="1" />
649                    <select name="schedule_period" id="schedule_period">
650                        <option value="minutes"<mt:if name="schedule_period_minutes"> selected="selected"</mt:if>><__trans phrase="minutes"></option>
651                        <option value="hours"<mt:if name="schedule_period_hours"> selected="selected"</mt:if>><__trans phrase="hours"></option>
652                        <option value="days"<mt:if name="schedule_period_days"> selected="selected"</mt:if>><__trans phrase="days"></option>
653                    </select>
654        </mt:ignore>
655                </mt:if>
656                <option value="2"<mt:if name="build_type_2"> selected="selected"</mt:if>><__trans phrase="Manually"></option>
657                <option value="0"<mt:if name="build_type_0"> selected="selected"</mt:if>><__trans phrase="Disabled"></option>
658            </select>
659        </mtapp:setting>
660    </mt:if>
661</mt:if>
662<mt:if name="template_group" like="(module|widget)">
663
664    <mt:if name="include_system">
665        <mtapp:setting
666            id="server_side_include"
667            label="<__trans phrase="Server Side Include">"
668            content_class="field-content-text">
669            <input type="checkbox" id="server-side-include" name="include_with_ssi" value="1" onclick="toggleHidden('include_cache_path-field')"<mt:if name="include_with_ssi"> checked</mt:if> />
670            <label for="server-side-include"><__trans phrase="Process as <strong>[_1]</strong> include" params="<$mt:var name="ssi_type"$>"></label>
671        </mtapp:setting>
672        <mt:ignore>
673            <mtapp:setting
674                id="include_cache_path"
675                label="<__trans phrase="Include cache path">"
676                shown="<mt:if name="include_with_ssi">0<mt:else>1</mt:if>">
677                <div class="textarea-wrapper">
678                    <input type="text" id="include-cache-path" name="cache_path" value="<mt:var name="cache_path">" maxlength="255" class="full-width" mt:watch-change="1" />
679                </div>
680            </mtapp:setting>
681        </mt:ignore>
682    </mt:if>
683
684    <mt:if name="include_cache">
685        <mtapp:setting
686            id="caching"
687            label="<__trans phrase="Module Caching">"
688            content_class="field-content-text">
689            <mt:if name="caching_disabled">
690            <__trans phrase="Disabled (<a href="[_1]">change publishing settings</a>)" params="<mt:var name="script_url">?__mode=cfg_archives&amp;blog_id=<mt:var name="blog_id">">
691            <mt:else>
692            <ul id="cache-options">
693                <li><input type="radio" value="0" name="cache_expire_type" id="no-cache" onclick="toggleCache('cache-none');"<mt:if name="cache_expire_type" eq="0"> checked="checked"</mt:if>> <label for="no-cache"><__trans phrase="No caching"></label></li>
694                <li><input type="radio" value="1" name="cache_expire_type" id="expire-time" onclick="toggleCache('expire-time');"<mt:if name="cache_expire_type" eq="1"> checked="checked"</mt:if>> <label for="expire-time"><__trans phrase="Expire after"></label>
695                    <input type="text" id="cache-time-value" name="cache_expire_interval" value="<$mt:var name="cache_expire_interval">" size="4" maxlength="3" <mt:unless name="cache_expire_type" eq="1"> disabled="disabled"</mt:unless> />
696                    <select id="cache-time-unit" name="cache_expire_period"<mt:unless name="cache_expire_type" eq="1"> disabled="disabled"</mt:unless>>
697                        <option value="minutes"<mt:if name="cache_expire_period" eq="minutes"> selected="selected"</mt:if>><__trans phrase="minutes"></option>
698                        <option value="hours"<mt:if name="cache_expire_period" eq="hours"> selected="selected"</mt:if>><__trans phrase="hours"></option>
699                        <option value="days"<mt:if name="cache_expire_period" eq="days"> selected="selected"</mt:if>><__trans phrase="days"></option>
700                    </select>
701                </li>
702                <li><input type="radio" value="2" name="cache_expire_type" id="expire-event" onclick="toggleCache('expire-event');"<mt:if name="cache_expire_type" eq="2"> checked="checked"</mt:if>> <label for="expire-event"><__trans phrase="Expire upon creation or modification of:"></label>
703                    <ul id="cache-events">
704                        <li><input type="checkbox" value="entry" name="cache_expire_event" id="cache-event-entry" onclick=""<mt:if name="cache_expire_event_entry"> checked="checked"</mt:if><mt:unless name="cache_expire_type" eq="2"> disabled="disabled"</mt:unless>> <label for="cache-event-entry"><__trans phrase="Entry"></label></li>
705                        <li><input type="checkbox" value="comment" name="cache_expire_event" id="cache-event-comment" onclick=""<mt:if name="cache_expire_event_comment"> checked="checked"</mt:if><mt:unless name="cache_expire_type" eq="2"> disabled="disabled"</mt:unless>> <label for="cache-event-comment"><__trans phrase="Comment"></label></li>
706                        <li><input type="checkbox" value="tbping" name="cache_expire_event" id="cache-event-trackback" onclick=""<mt:if name="cache_expire_event_tbping"> checked="checked"</mt:if><mt:unless name="cache_expire_type" eq="2"> disabled="disabled"</mt:unless>> <label for="cache-event-trackback"><__trans phrase="TrackBack"></label></li>
707                        <li><input type="checkbox" value="page" name="cache_expire_event" id="cache-event-page" onclick=""<mt:if name="cache_expire_event_page"> checked="checked"</mt:if><mt:unless name="cache_expire_type" eq="2"> disabled="disabled"</mt:unless>> <label for="cache-event-page"><__trans phrase="Page"></label></li>
708                        <li><input type="checkbox" value="author" name="cache_expire_event" id="cache-event-author" onclick=""<mt:if name="cache_expire_event_author"> checked="checked"</mt:if><mt:unless name="cache_expire_type" eq="2"> disabled="disabled"</mt:unless>> <label for="cache-event-author"><__trans phrase="User"></label></li>
709                        <li><input type="checkbox" value="category" name="cache_expire_event" id="cache-event-category" onclick=""<mt:if name="cache_expire_event_category"> checked="checked"</mt:if><mt:unless name="cache_expire_type" eq="2"> disabled="disabled"</mt:unless>> <label for="cache-event-category"><__trans phrase="Category"></label></li>
710                        <li><input type="checkbox" value="folder" name="cache_expire_event" id="cache-event-folder" onclick=""<mt:if name="cache_expire_event_folder"> checked="checked"</mt:if><mt:unless name="cache_expire_type" eq="2"> disabled="disabled"</mt:unless>> <label for="cache-event-folder"><__trans phrase="Folder"></label></li>
711                        <li><input type="checkbox" value="asset" name="cache_expire_event" id="cache-event-asset" onclick=""<mt:if name="cache_expire_event_asset"> checked="checked"</mt:if><mt:unless name="cache_expire_type" eq="2"> disabled="disabled"</mt:unless>> <label for="cache-event-asset"><__trans phrase="Asset"></label></li>
712                    </ul>
713                </li>
714            </ul>
715            </mt:if>
716        </mtapp:setting>
717    </mt:if>
718</mt:if>
719    </div>
720</div>
721
722<mt:include name="include/actions_bar.tmpl" bar_position="bottom" hide_pager="1">
723</form>
724<form name="archive_map_form" method="post" action="<mt:var name="script_url">">
725    <input type="hidden" name="__mode" value="" />
726    <input type="hidden" name="_type" value="<mt:var name="object_type">" />
727    <input type="hidden" name="blog_id" value="<mt:var name="blog_id">" />
728    <input type="hidden" name="magic_token" value="<mt:var name="magic_token">" />
729</form>
730
731<script type="text/javascript">
732/* <![CDATA[ */
733App.singletonConstructor =
734MT.App = new Class( MT.App, {
735
736    initComponents: function() {
737       arguments.callee.applySuper( this, arguments );
738       documentTags( true );
739    },
740
741    autoSave: function() {
742        arguments.callee.applySuper( this, arguments );
743        documentTags();
744    }
745
746} );
747/* ]]> */
748</script>
749
750<mt:include name="include/footer.tmpl">
Note: See TracBrowser for help on using the browser.