be0c37aa77aba79c0e2c56b8d0477a1632b0f1bf
[project/luci.git] / libs / web / luasrc / view / cbi / map.htm
1 <%#
2 LuCI - Lua Configuration Interface
3 Copyright 2008 Steven Barth <steven@midlink.org>
4 Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net>
5
6 Licensed under the Apache License, Version 2.0 (the "License");
7 you may not use this file except in compliance with the License.
8 You may obtain a copy of the License at
9
10         http://www.apache.org/licenses/LICENSE-2.0
11
12 $Id$
13
14 -%>
15
16 <div class="cbi-map" id="cbi-<%=self.config%>">
17         <% if self.title and #self.title > 0 then %><h2><a id="content" name="content"><%=self.title%></a></h2><% end %>
18         <% if self.description and #self.description > 0 then %><div class="cbi-map-descr"><%=self.description%></div><% end %>
19         <%- if self._apply then -%>
20                 <fieldset class="cbi-section" id="cbi-apply-<%=self.config%>">
21                         <legend><%:Applying changes%></legend>
22                         <script type="text/javascript"><![CDATA[
23                                 var apply_xhr = new XHR();
24
25                                 apply_xhr.get('<%=luci.dispatcher.build_url("servicectl", "restart", table.concat(self.parsechain, ","))%>', null,
26                                         function() {
27                                                 var intv = window.setInterval(
28                                                         function() {
29                                                                 apply_xhr.abort();
30                                                                 apply_xhr.get('<%=luci.dispatcher.build_url("servicectl", "status")%>', null,
31                                                                         function(x) {
32                                                                                 if( x.responseText == 'finish' )
33                                                                                 {
34                                                                                         window.clearInterval(intv);
35
36                                                                                         var e = document.getElementById('cbi-apply-<%=self.config%>-status');
37                                                                                         if( e )
38                                                                                         {
39                                                                                                 e.innerHTML = '<%:Configuration applied.%>';
40                                                                                                 window.setTimeout(function() { e.parentNode.style.display = 'none' }, 1000);
41                                                                                         }
42                                                                                 }
43                                                                                 else
44                                                                                 {
45                                                                                         var e = document.getElementById('cbi-apply-<%=self.config%>-status');
46                                                                                         if( e && x.responseText ) e.innerHTML = x.responseText;
47
48                                                                                 }
49                                                                         }
50                                                                 );
51                                                         }, 1000
52                                                 )
53                                         }
54                                 );
55                         ]]></script>
56
57                         <img src="<%=resource%>/icons/loading.gif" alt="<%:Loading%>" style="vertical-align:middle" />
58                         <span id="cbi-apply-<%=self.config%>-status"><%:Waiting for router...%></span>
59                 </fieldset>
60         <%- end -%>
61         <%- self:render_children() %>
62         <br />
63 </div>