* creating builddata.c containing build time information as date+time,
[olsrd.git] / lib / httpinfo / src / html.h
1 /*
2  * The olsr.org Optimized Link-State Routing daemon(olsrd)
3  * Copyright (c) 2004, Andreas T√łnnesen(andreto@olsr.org)
4  * All rights reserved.
5  *
6  * Redistribution and use in source and binary forms, with or without 
7  * modification, are permitted provided that the following conditions 
8  * are met:
9  *
10  * * Redistributions of source code must retain the above copyright 
11  *   notice, this list of conditions and the following disclaimer.
12  * * Redistributions in binary form must reproduce the above copyright 
13  *   notice, this list of conditions and the following disclaimer in 
14  *   the documentation and/or other materials provided with the 
15  *   distribution.
16  * * Neither the name of olsr.org, olsrd nor the names of its 
17  *   contributors may be used to endorse or promote products derived 
18  *   from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
21  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
22  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
23  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
24  * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
25  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
26  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
27  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
28  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
29  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
30  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
31  * POSSIBILITY OF SUCH DAMAGE.
32  *
33  * Visit http://www.olsr.org for more information.
34  *
35  * If you find this software useful feel free to make a donation
36  * to the project. For more information see the website or contact
37  * the copyright holders.
38  *
39  * $Id: html.h,v 1.8 2007/09/16 21:20:07 bernd67 Exp $
40  */
41
42 /*
43  * Dynamic linked library for the olsr.org olsr daemon
44  */
45
46 #ifndef _HTML_H
47 #define _HTML_H
48
49 static const char *httpinfo_css[] =
50 {
51   "#A {text-decoration: none}\n",
52   "TH{text-align: left}\n",
53   "H1, H3, TD, TH {font-family: Helvetica; font-size: 80%%}\n",
54   "h2\n {\nfont-family: Helvetica;\n font-size: 14px;text-align: center;\n",
55   "line-height: 16px;\ntext-decoration: none;\nborder: 1px solid #ccc;\n",
56   "margin: 5px;\nbackground: #ececec;\n}\n",
57   "hr\n{\nborder: none;\npadding: 1px;\nbackground: url(grayline.gif) repeat-x bottom;\n}\n",
58   "#maintable\n{\nmargin: 0px;\npadding: 5px;\nborder-left: 1px solid #ccc;\n",
59   "border-right: 1px solid #ccc;\nborder-bottom: 1px solid #ccc;\n}\n",
60   "#footer\n{\nfont-size: 10px;\nline-height: 14px;\ntext-decoration: none;\ncolor: #666;\n}\n",
61   "#hdr\n{\nfont-size: 14px;\ntext-align: center;\nline-height: 16px;\n",
62   "text-decoration: none;\nborder: 1px solid #ccc;\n",
63   "margin: 5px;\nbackground: #ececec;\n}\n",
64   "#container\n{\nwidth: 500px;\npadding: 30px;\nborder: 1px solid #ccc;\nbackground: #fff;\n}\n",
65   "#tabnav\n{\nheight: 20px;\nmargin: 0;\npadding-left: 10px;\n",
66   "background: url(grayline.gif) repeat-x bottom;\n}\n",
67   "#tabnav li\n{\nmargin: 0;\npadding: 0;\ndisplay: inline;\nlist-style-type: none;\n}\n",
68   "#tabnav a:link, #tabnav a:visited\n{\nfloat: left;\nbackground: #ececec;\n",
69   "font-size: 12px;\nline-height: 14px;\nfont-weight: bold;\npadding: 2px 10px 2px 10px;\n",
70   "margin-right: 4px;\nborder: 1px solid #ccc;\ntext-decoration: none;\ncolor: #777;\n}\n",
71   "#tabnav a:link.active, #tabnav a:visited.active\n{\nborder-bottom: 1px solid #fff;\n",
72   "background: #ffffff;\ncolor: #000;\n}\n",
73   "#tabnav a:hover\n{\nbackground: #777777;\ncolor: #ffffff;\n}\n",
74   ".input_text\n{\nbackground: #E5E5E5;\nmargin-left: 5px; margin-top: 0px;\n",
75   "text-align: left;\n\nwidth: 100px;\npadding: 0px;\ncolor: #000000;\n",
76   "text-decoration: none;\nfont-family: verdana;\nfont-size: 12px;\n",
77   "border: 1px solid #ccc;\n}\n", 
78   ".input_button\n{\nbackground: #B5D1EE;\nmargin-left: 5px;\nmargin-top: 0px;\n",
79   "text-align: center;\nwidth: 120px;\npadding: 0px;\ncolor: #000000;\n",
80   "text-decoration: none;\nfont-family: verdana;\nfont-size: 12px;\n",
81   "border: 1px solid #000;\n}\n",
82   NULL
83 };
84
85
86
87 static const char *http_ok_head[] =
88 {
89   "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n",
90   "<HEAD>\n",
91   "<META http-equiv=\"Content-type\" content=\"text/html; charset=ISO-8859-1\">\n",
92   "<TITLE>olsr.org httpinfo plugin</TITLE>\n",
93   "<link rel=\"icon\" href=\"favicon.ico\" type=\"image/x-icon\">\n",
94   "<link rel=\"shortcut icon\" href=\"favicon.ico\" type=\"image/x-icon\">\n",
95   "<link rel=\"stylesheet\" type=\"text/css\" href=\"httpinfo.css\">\n",
96   "</HEAD>\n",
97   "<body bgcolor=\"#ffffff\" text=\"#000000\">\n",
98   "<table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"800\">"
99   "<tbody><tr bgcolor=\"#ffffff\">",
100   "<td align=\"left\" height=\"69\" valign=\"middle\" width=\"80%\">",
101   "<font color=\"black\" face=\"timesroman\" size=\"6\">&nbsp;&nbsp;&nbsp;olsr.org OLSR daemon</font></td>",
102   "<td align=\"right\" height=\"69\" valign=\"middle\" width=\"20%\">",
103   "<img src=\"/logo.gif\" alt=\"olsrd logo\"></td>",
104   "</tr>",
105   "<p>",
106   "</table>",
107   "<!-- END HEAD -->\n\n",
108   NULL
109 };
110
111
112
113 static const char *html_tabs[] =
114 {
115   "<table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"800\">\n",
116   "<tr bgcolor=\"#ffffff\"><td>\n",
117   "<ul id=\"tabnav\">\n",
118   "<!-- TAB ELEMENTS -->",
119   "<li><a href=\"%s\" %s>%s</a></li>\n",
120   "</ul>\n",
121   "</td></tr>\n",
122   "<tr><td>\n",
123   NULL
124 };
125
126
127
128 static const char *http_ok_tail[] =
129 {
130     "\n<!-- START TAIL -->\n\n",
131     "<div id=\"footer\">\n\n",
132     "<p><center>\n",
133     "(C)2005 Andreas T&oslash;nnesen<br/>\n",
134     "<a href=\"http://www.olsr.org/\">http://www.olsr.org</a>\n",
135     "</center>\n",
136     "</div>\n",
137     "</body></html>\n",
138     NULL
139 };
140
141 static const char *cfgfile_body[] =
142 {
143     "\n\n",
144     "<strong>This is a automatically generated configuration\n",
145     "file based on the current olsrd configuration of this node.<br/>\n",
146     "<hr/>\n",
147     "<pre>\n",
148     "<!-- CFGFILE -->",
149     "</pre>\n<hr/>\n",
150     NULL
151 };
152
153
154 static const char about_frame[] =
155 {
156     "<strong>" PLUGIN_NAME " version " PLUGIN_VERSION "</strong><br/>\n"
157     "by Andreas T&oslash;nnesen (C)2005.<br/>\n"
158     "Compiled "
159 #ifdef ADMIN_INTERFACE
160               "<em>with experimental admin interface</em> "
161 #endif
162                                                            "%s at %s<hr/>\n"
163     "This plugin implements a HTTP server that supplies\n"
164     "the client with various dynamic web pages representing\n"
165     "the current olsrd status.<br/>The different pages include:\n"
166     "<ul>\n<li><strong>Configuration</strong> - This page displays information\n"
167     "about the current olsrd configuration. This includes various\n"
168     "olsr settings such as IP version, MID/TC redundancy, hysteresis\n"
169     "etc. Information about the current status of the interfaces on\n"
170     "which olsrd is configured to run is also displayed. Loaded olsrd\n"
171     "plugins are shown with their plugin parameters. Finally all local\n"
172     "HNA entries are shown. These are the networks that the local host\n"
173     "will anounce itself as a gateway to.</li>\n"
174     "<li><strong>Routes</strong> - This page displays all routes currently set in\n"
175     "the kernel <em>by olsrd</em>. The type of route is also displayed(host\n"
176     "or HNA).</li>\n"
177     "<li><strong>Links/Topology</strong> - This page displays all information about\n"
178     "links, neighbors, topology, MID and HNA entries.</li>\n"
179     "<li><strong>All</strong> - Here all the previous pages are displayed as one.\n"
180     "This is to make all information available as easy as possible(for example\n"
181     "for a script) and using as few resources as possible.</li>\n"
182 #ifdef ADMIN_INTERFACE
183     "<li><strong>Admin</strong> - This page is highly experimental(and unsecure)!\n"
184     "As of now it is not working at all but it provides a impression of\n"
185     "the future possibilities of httpinfo. This is to be a interface to\n"
186     "changing olsrd settings in realtime. These settings include various\n"
187     "\"basic\" settings and local HNA settings.</li>\n"
188 #endif
189     "<li><strong>About</strong> - this help page.</li>\n</ul>"
190     "<hr/>\n"
191     "Send questions or comments to\n"
192     "<a href=\"mailto:olsr-users@olsr.org\">olsr-users@olsr.org</a> or\n"
193     "<a href=\"mailto:andreto-at-olsr.org\">andreto-at-olsr.org</a><br/>\n"
194     "Official olsrd homepage: <a href=\"http://www.olsr.org/\">http://www.olsr.org</a><br/>\n"
195 };
196
197
198
199 static const char *http_frame[] =
200 {
201   "<div id=\"maintable\">\n",
202   "<!-- BODY -->",
203   "</div>\n",
204   NULL
205 };
206
207
208 #endif