change_post_date.naml
<macro name="change_post_date" requires="servlet">
<n.node_page.>
<n.if.not.visitor.can_change_post_date_of.page_node>
<then>
<n.login.><t>Only authorized users can proceed in this area.</t></n.login.>
</then>
</n.if.not.visitor.can_change_post_date_of.page_node>
<n.if.is_submitted_form>
<then>
<n.edit_page_node.>
<n.set_when_created date="[n.when_created_field.value/]"/>
<n.save_node/>
</n.edit_page_node.>
<n.redirect_to.page_node.url/>
</then>
</n.if.is_submitted_form>
<n.when_created_field.set_value value="0"/>
<n.html>
<head>
<META NAME="robots" CONTENT="noindex,nofollow"/>
<n.title.><t>Change Post Date</t></n.title.>
<style type="text/css">
table.calendar { text-align:center; border-collapse: collapse; margin-top: .3em; }
table.calendar td.week-header { color:black; background: #eeeeee; }
table.calendar td.day { padding:.2em .4em; }
table.calendar td.current { background: #eeeeee; color:blue; }
</style>
<script type="text/javascript">
$(document).ready(function() {
var date = new Date(<n.page_node.when_created.raw_time/>);
$('#hour').val(date.getHours());
$('#minute').val(date.getMinutes());
});
function updateHiddenField() {
var date = new Date(
nabbleCalendar.getYear(),
nabbleCalendar.getMonth(),
nabbleCalendar.getDay(),
parseInt($('#hour').val()),
parseInt($('#minute').val()),
0,
0);
$('#when_created').val(date.getTime());
};
</script>
</head>
<body>
<n.edit_header first_text="Change Post Date" second_text="[n.page_node.subject/]" />
<div style="padding:1em">
<div style="float:left">
<n.calendar
date_time="[n.page_node.when_created.raw_time/]"
months="[t]January[/t]|[t]February[/t]|[t]March[/t]|[t]April[/t]|[t]May[/t]|[t]June[/t]|[t]July[/t]|[t]August[/t]|[t]September[/t]|[t]October[/t]|[t]November[/t]|[t]December[/t]"
week_days="[t]S|M|T|W|T|F|S[/t]"
min_year="2000"
/>
</div>
<div style="float:left;margin-left:1em">
<div class="second-font field-title" style="margin-top:0">
<t>Time</t>
</div>
<n.hour_editor/> : <n.minute_editor/>
</div>
<div style="clear:both;padding-top:1em">
<n.form. onsubmit="return updateHiddenField()">
<n.when_created_field.hidden/>
<input type="submit" value="[t]Save Changes[/t]" />
<t>or</t> <a href="[n.page_node.url/]"><t>Cancel</t></a>
</n.form.>
</div>
</div>
</body>
</n.html>
</n.node_page.>
</macro>
<macro name="when_created_field" dot_parameter="do">
<n.field. name="when_created"><n.do/></n.field.>
</macro>
<macro name="hour_editor">
<select id="hour">
<option value="0">00</option>
<option value="1">01</option>
<option value="2">02</option>
<option value="3">03</option>
<option value="4">04</option>
<option value="5">05</option>
<option value="6">06</option>
<option value="7">07</option>
<option value="8">08</option>
<option value="9">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
</select>
</macro>
<macro name="minute_editor">
<select id="minute">
<option value="0">00</option>
<option value="1">01</option>
<option value="2">02</option>
<option value="3">03</option>
<option value="4">04</option>
<option value="5">05</option>
<option value="6">06</option>
<option value="7">07</option>
<option value="8">08</option>
<option value="9">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
<option value="32">32</option>
<option value="33">33</option>
<option value="34">34</option>
<option value="35">35</option>
<option value="36">36</option>
<option value="37">37</option>
<option value="38">38</option>
<option value="39">39</option>
<option value="40">40</option>
<option value="41">41</option>
<option value="42">42</option>
<option value="43">43</option>
<option value="44">44</option>
<option value="45">45</option>
<option value="46">46</option>
<option value="47">47</option>
<option value="48">48</option>
<option value="49">49</option>
<option value="50">50</option>
<option value="51">51</option>
<option value="52">52</option>
<option value="53">53</option>
<option value="54">54</option>
<option value="55">55</option>
<option value="56">56</option>
<option value="57">57</option>
<option value="58">58</option>
<option value="59">59</option>
</select>
</macro>