source: trunk/oscam-http.h@ 1693

Last change on this file since 1693 was 1693, checked in by merek, 11 years ago

Merge Webinterface into Trunk - Use -DWEBIF=1 with cmake to build with Webinterface - For make add -DWEBIF to target in Makefile to build with Webinterface for, thanks to Alno and Streamboard community

File size: 69.9 KB
Line 
1#ifdef WEBIF
2#include "globals.h"
3
4#define SERVER "webserver/1.0"
5#define PROTOCOL "HTTP/1.0"
6#define RFC1123FMT "%a, %d %b %Y %H:%M:%S GMT"
7#define AUTHREALM "Forbidden"
8#define AUTHNONCEVALIDSECS 15
9#define MAXGETPARAMS 100
10#define SHUTDOWNREFRESH 30
11
12#define CSS "\
13body {background-color: white; font-family: Arial; font-size: 11px; text-align:center}\n\
14p {color: white; }\n\
15h2 {color: #F7F7F7; font-family: Arial; font-size: 50px; line-height: 50px; text-align:center; margin-top:0px; margin-bottom:0px}\n\
16h4 {color: #AAAAAA; font-family: Arial; font-size: 12px; line-height: 9px; text-align:center}\n\
17TABLE {border-spacing:1px; border:0px; padding:0px; margin-left:auto; margin-right:auto;}\n\
18TH {height:10px; border:0px; font-family: Arial; font-size: 11px; padding:5px; background-color:#CCCCCC; color:black;}\n\
19TD {height:10px; border:0px; font-family: Arial; font-size: 11px; padding:5px; background-color:#EEEEEE; color:black;}\n\
20HR {height:1px; border-width:0; color:white; background-color:#AAAAAA}\n\
21TR.s TD {background-color:#e1e1ef;}\n\
22TR.l TD {background-color:#e1e1ef;}\n\
23TR.n TD {background-color:#e1e1ef;}\n\
24TR.h TD {background-color:#e1e1ef;}\n\
25TR.r TD {background-color:#fff3e7;}\n\
26TR.p TD {background-color:#fdfbe1;}\n\
27TR.c TD {background-color:#f1f5e6;}\n\
28TR.online TD {background-color:#f1f5e6;}\n\
29TR.expired TD {background-color:#ffe2d4;}\n\
30DIV.log {border:1px dotted #AAAAAA; background-color: #FAFAFA; padding:10; font-family:\"Courier New\", monospace; color:#666666; font-size: 11px; word-wrap:break-word; text-align:left; }\n\
31DIV.sidlist {border:1px dotted #AAAAAA; background-color: #fffdf5; padding:2; font-family:\"Courier New\", monospace ; color:#666666; font-size: 11px; word-wrap:break-word; text-align:left;}\n\
32TABLE.menu {border-spacing:0px; border:0px; padding:0px; margin-left:auto; margin-right:auto;}\n\
33TABLE.status {border-spacing:1px; border:0px; padding:0px; background-color:white; empty-cells:show;}\n\
34TABLE.config {width:750px;}\n\
35TABLE.invisible TD {border:0px; font-family:Arial; font-size: 12px; padding:5px; background-color:#EEEEEE;}\n\
36TD.menu {font-color:wblack; background-color:white; font-family: Arial; font-size:14px; font-weight:bold;}\n\
37TD.script {font-color:black; background-color:white; font-family: Arial; font-size:14px; font-weight:bold;}\n\
38TD.shutdown {font-color:black; background-color:white; font-family: Arial; font-size:14px; font-weight:bold;}\n\
39TD.shutdown A:hover {color: red;}\n\
40TD.configmenu {font-color:black; background-color:white; font-family: Arial; font-size:11px; font-weight:bold;}\n\
41textarea.bt{font-family: Arial; font-size: 12px;}\n\
42input{font-family: Arial; font-size: 12px;}\n\
43A:link {color: #050840;}\n\
44A:visited {color: #050840;}\n\
45A:active {color: #050840;}\n\
46A:hover {color: #ff9e5f;}\n\
47DIV.message {float:right}\n\
48IMG{border:0px solid;}\n\
49P.blinking {text-decoration: blink; font-weight:bold; font-size:large; color:red;}\n"
50
51#define ICMAI "data:image/x-icon;base64,\
52AAABAAEAEBAAAAEACABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAAA\
53AAAAAADw//8A7/D/AODg4ADf8P8A0PD/AM///wDA4P8Az8/PALDw/wCQz/8AsLC/AGDP/wBgz88A\
54YJD/AGCQzwBfr+8AYJCQAC9gzwAvYJAAIADfAC8AzwAvL5AAHw+wAF9QXwAfQGAAEB9vACAgIAAQ\
55LzAAABAfAA8PDwAADw8AAAAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
56AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
57AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
58AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
59AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
60AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
61AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
62AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
63AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
64AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
65AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
66AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
67AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
68AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
69AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
70AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/\
71//8AICAOBgMEBiAgIAMDBg8gICAgEQ8gDgkICAgLGA8RICAgICAgBAgIBQQEBQgbICAgICAgCAYF\
72CAMBAQEDCCAgICAgIAkWEwwBAAAAAAAgICAgIB4IExYIAQwAAAAAICAgICAgCRYZFBMTFBUHASAg\
73ICAgIBQTExMTExMTExYgICAgIBMTEyAgGBAgICATExMgICAZHyANDwsIBQUIICAZICAgICAgICAS\
74DhwgICAgICAgICAgICD/AiD/AiAgICAgICAgICAg/xog/xogICAgICAgICAgIP8CIP8CICAgICAg\
75ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMHDYQDAA2UA4AcuAMADbQBAAgAAAAACAAAA\
760QKAAW4AwAF3AMABbQDgA1wA4ANpAPAHZADwB3MA+A9hAPwfYgA="
77
78#define ICDEL "data:image/png;base64,\
79iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA\
80BGdBTUEAALGeYUxB9wAAACBjSFJNAAB6JQAAgIMAAPn/AACA6AAAUggAARVYAAA6lwAAF2/XWh+Q\
81AAADFklEQVR42qSRS2icVRxHz//e+30z40zSNI1NJ5M0aWpj0hCToEiRqAhWS5G2ii7ERVdioSC4\
82E7pyI5SutIsufCJaFIoQRLJQKVpKwaRYA1XTF01MWpukdJLM8/vuw0VF3HvgtzmrHxw5uWPHrvGD\
83Bz7u6u3uvvDRJ58uXr3xjktTnEBOQQZIAOcDOE+kVfuD/f3vbhvY9dyN8xdOm7GXDn0zvm/vw/Ha\
84XdSzE8fOrZWL1/+8fURpxX+xzpPRes/A2OiHW4eHB27PL8xvNGqXTDYTt6ryKmZ9hd5NJiru6Xvj\
85+2b5qemVxhNBSTkA1ntVatt0Zmxs7FBZqdr01NTRtNH8IADyXrFILjJvPTby0LGhgt2il25SWy7z\
8681+N1Ys1P5QTBoeiaLJUKrVfrtWn55ZuTeTiOMm3tlKrrCOndvZTW1nFJE3aI94fKegjHd5FSdMz\
87V3eVnCNXMEbPeP/ZPesOiyiiOCaXz1OrrKNEBBMZspmYlVr65tnlxs5za+7XtbqjZEMh57z+yboT\
88d7w/jNYEQAARQQCTpgn1pEnTWoxSVIW7SRoi5z0uQFYLmxXPLHuFDQBCYi3NahV8QD/eqNNMU3wI\
89aOgZ9H5ut/O9VRFmjf62JSP94wXVvZBKx5plSgSch6a1JB5UCAFECNA54Nxsv/NbrBYuRerLRSUv\
90/JjKy+tZ7V7cHh9VwiMuQOD+kwAouZ9ZDTg/0xdCm4mFP4y6eQt5NQaanskzd+xrsRZ5ssNMhuAx\
91Ev6dkgBF5z4fCr47m9WsRNr+7uV5HcAFMEDDhq++nm8e3503fdti9br84w2ggndbh9rbXikUYsgJ\
92M5YTqedKCGA9BAJZBUsN//Yv99Iro3lzXAhoQANqc6FwoO/pCdM22Iu0xCFj5FRPTtGVVXRmFaLA\
93C0QaZjfsfnHhgU6tDuZFKIigqkm6mB0doWP/Xih1+Yb19dQHEh+wIRADERADAa7/VncnuxTDPRp6\
94NOhHrb2WeLevZXtP8YezF08vlCtf1FNPNfVUUo8SRaQEEUGL0IDvanC+AmEDkBAC/4e/BwACT2zM\
95WyQBIAAAAABJRU5ErkJggg=="
96
97#define ICEDI "data:image/png;base64,\
98iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAChUlEQVQ4jY2SW0hTcRzHv+dsO5ed\
99aa65jm5uYx60UVBIRCY+9BZ0EUFDNLogLbpYD/UQRBQRQQ9BRfnQQxFBUKFCSiQ9hGSaUuCNJEPL\
100W5Fzw02P7mzn8u9lTdSFfZ9/n8//++P3N2GdnBUE3PJ6X50URb+bpj+8X1xcD1lORc1hvD1Y8eAu\
101QB7b7eSdJA11BgLOzQzzfwL9a2Pp4PdvpO3KTXIbIA8FgTS7XKRPkvZRqRn6X/Dn52dAJabavCO1\
1022HnUicqRGcAp4lcohKlotORvB1Mm+HTNTgSP7Hoa/dm7O6GEoI0/gUUbgPtyO4iiTbz51FPVo6oA\
103AGo1nC2wiA1e3Rub6m9XFoYBQ4GmzoG1+qDKXxDf8iwg7Tg+gsRi5hWGWk6widkfrYnYIMzMJqjJ\
104EPisbdDVBYgbmfNVBw6l4TWCGw1l8OYzr2Phj4yZ90FLzoITimGQJKyW+e57Ldr9/vGVD6ZXcDtz\
105MN1VXx8Z7X5kGAosQhGS8jAYoQj60jCZX4hmF9aG5NWN0w1KSyQYmnRdNxKwOsqhKZPgsrZDT4bg\
106yCbVZQ3hNfAKQaHPCY0WCtiia9BYEQyTB8OQsYFXmi80hlt+R4xM/LLA780XGHsOaNqAKbccpuJz\
107YFnIQ2NL1XdezGWEV8TndW2tqdxDYmNtJDHTRUhy9GV4ujc340fJlAKPZz9vtZECV15rZKLTfeni\
108KbCcDR6PF36/H6IowuFwwG63g2XZNEfV1dUhGAz6Ozo6jtE0bS6UpAFV1a08x9p4nuNTc3EAcYqi\
109CIB5iqLmOI6bbGpqGjUrioJwOJwVCAT6AOTouu5iLCaLrms2WZZJSmADIAPQkDq9oiiReDyOP4iW\
110/fvrVslmAAAAAElFTkSuQmCC"
111
112#ifdef CS_RDR_INIT_HIST
113#define ICENT "data:image/png;base64,\
114iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ\
115bWFnZVJlYWR5ccllPAAAAjlJREFUeNqUU99LFFEU/u7MnXHujtouJWKwbbD9MIhyoexJGXwoIhR6\
116iF76A4KgJwMfliAQRJKeeqrXHgp6MqhMpTVfKoxsi/Qh2wpZUmS00FbdOzOeO625bbLYhQ9mzpzv\
117O985Zy6rv/54UHCtMwgC7PQwxlCQ/qOYMLq4Ivd2tcLzfWg7IPsEXdOQHnzdqWpyScTdFkf3s2/g\
118pMCqkJVHSQoDp/dB8UwqSQIBYpaBw3tqoTNlr4oAKXgEla94oYMiKToJi5DA/5x1n8FTDvzS8Kam\
119PpLFfy2wMKYDmkng4XtzsgmFwAbzDPDNRDtSi6CSzH6TGbexMjkAmXsAzg18HWdIN57DtcbhLYFI\
120RNCEKwbANCoq4L7qh7E0ioPtHdDNGlqFxNWZLNwl+7a2uX5LWLCsmr8gKCZsgYW3d7C/5RR0EcN0\
121ZgTTLzJoOJLCqgyubDkQgv6FoKx3ZYBDp/aLHiNyNJzP3Pxi+L3ZqoOUHq2+5FrTOWH7iUsZYM2d\
122g8452s5fhEYkz/0Oj3bKDb36//fyZhwtjgNDGPg1n4dhkmnPx5eZWeQXCg9ZXff9MRapby9SUHWg\
123VrmuZuvZyDZdQjzVhmjiEBZnc8hmnv4RHip2POm7ce+yauAAYVdl5Uzv3oljqaOIxZNwf6zi/dgQ\
124nHT+RFmK++Fua44l+obLLoqGlUBgwr6ATz/t5yZbdlR8jTeMnOl51zN+6/gbgy6MSV2PypM4a09W\
125vTtJQrT0rEb/ebukDQEGABzNvVc4pYJ1AAAAAElFTkSuQmCC"
126#endif
127
128#define ICREF "data:image/png;base64,\
129iVBORw0KGgoAAAANSUhEUgAAAA4AAAAQCAYAAAAmlE46AAAABHNCSVQICAgIfAhkiAAAABl0RVh0\
130U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAALFSURBVCiRZZFLaFx1FMZ/59x7M5OZSWJq\
13188DYpAabBkGNLVLrKIIbxQe0+MBaZQoFERG3VtRlF0UqghHBjXONZCGCUgQRIUWdSZVWSzfWpq+Y\
132ttZMm0yaTud15/6Piwwo9Vsevt/3wXfEzAAohnKHet5+4BEXx/2quiLKybjlJoGvsjmL2j4BDoqZ\
133UQxlh6pOD24cCnoHBv1EaoSWy1CvXKN04ffKtdJcZM72ZHN2aHZKPjTjRSnkGVPP+3Xz1nsyyXRA\
134HCUJ0qOIP4z4tyPaQ7N2lZM/vlNt1sonEumBrY3qYk1mP9MP+jYMvR4Enl6evyAudiB+nFm3sXrb\
1352OOZnsHHRLxekDR/zx2wW4d3y/FvnlqR2Slv0Q/8/qgZmTlXB94CpoAJ9eT9noFtm+584GDKC7pA\
136u3DxKke/vLesZnZLqxk5c+5bYBn4Ppuz5WzOZra/5CbKf/389rGvH7W4VaNV/QnWxjQ1M3XOzQGn\
137AAd4tFUMJa0qr449uM/5iQ34yfsAATAp5EkD1Wyu/Zd/IQUOAU8GnX1NETVEDSCqXl6RQsgSxjr+\
138r++A3UB8010AzxcItr3wB6JpwHH17Hvu7NHJc87xXDZn129OK4ayGZjx1xKUVu0IzqU4/cukAvv/\
139CxVDuQv4YtMEz3QkeTdqSJ+ulXv4qYfoyGxh4olpUt2DHx35XH8ohnJ3m90VJGgsLjDZinSXerok\
140xZDK/c8eSy8v5G396Bsi2oWLFlg6/7FdOjVTq19f6BBVHzA/8EVEXKPW2CfFkBvd/Vt0tfTbuc7u\
141oZHxhw+kg84RLJrHtc4T18/QuDFPVLuEiM+ZE6fLzrlxKeSpqDK9/WV7pRjK86J80r1+1OsfHs8k\
142Mz14skq98iflxVJUunilac6ezubssBTyfArszebMtYdIADs9X18zs3EXW696egU47GL3ZjZnFwH+\
143AYRRPIe3vIMRAAAAAElFTkSuQmCC"
144
145#define ICDIS "data:image/png;base64,\
146iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA\
147BGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VG\
148AAADAUlEQVR42mJkAILW1taU////FzIxMUkD6Rt///7trqurW8uABJqampwYGRkrWVhYTP/9+/cO\
149qGbm1q1bewACiBkoEcvMzDyfm5tbVExMjIOfn1/mz58/YTY2Nt/3799/FKS5vr4+mouLa4WOjo66\
150np4eh4CAgOD3799dZGVlvwEEEAvQVpDNDBwcHAxARQxAAxh4eHgY7t+/3wk0/AfQphdsbGwLjYyM\
151mB0dHRlAaj98+MAAdAXDhQsXkgACiAVomzRI8MePHwxfv35lALqGgZeXl0FRUZHhwYMHE4Hif/X1\
1529ZmBLgJrBgGgC8AWAfnCAAHE8u3bt9NATd5AGu5fYDiAFSkoKIDYzLq6unDNIPDz50+GV69eMfz+\
153/fsGQACxAImOT58+OfHx8XEC/QVWCAwsMA1yCcgmoBqws4WFhcGGHz16lOH69ev/gQZNAAgg5hMn\
154TjwyMDB48OvXL39gODCB/AbCMIOAoQ62FebN48ePMxw+fJjhy5cvFR0dHbMBAogZJHn69OnL2tra\
15514AKvIEByQYyAKQZGQMDk+HWrVsg2/+8e/euaOLEiX0gvQABxALzFygMQDEBsgmkGOgtsDjMAJDT\
156QeKsrKwMQNfCwwMggMAu8Pf3jwb6dSkwXtlhgQXTAOODYkdQUJABGFZMQBd4AGPp+6VLl44CBBCz\
157l5eXjZCQ0GoVFRU2kGKQRhiAhQfMJSB5UOyA8MePH12kpaWvAgQQs6qq6jR1dXUtkPORNcOcDooB\
158ZDFQoIJiB+gixsePH0sDBBALOzu7KScnJ1bN9+7dA4X2Xy0tLWaYV0DioBQLshCoVwMggFiAAfIU\
159mBrFgBywITDNd+/eZQDakA/0wovLly8vA+YBZpgFsFT7+fPntwABxAwMjG9ARYEgf4FsAfn54cOH\
160DI8ePSrfuXNnH9AVV4F+vQvU4AnMcKwgw0EJDphXGJ48edINEECMIBPd3d0Tgc5KAHpFAhidd4EK\
1615gA1r0POzs7Ozk5AZ2cBY0EX6Or3QK+tBqbOCQABBgCzBWGTrJ55PAAAAABJRU5ErkJggg=="
162
163#define ICENA "data:image/png;base64,\
164iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA\
165BGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VG\
166AAADKUlEQVR42mJgAAJpBgbNmQwMUy8yMOzoZ2CYKM7AoMOABtQYGMw2MjDMusTAsLOdgaGHh4FB\
167HiQOEIBmObQBEIYCKPhSwwDNlyTdoB2DDoBgcRwKhy3BPjCcP+LLN5ympBGasw9cFZY/r7AJw9a0\
168dy3FA/YJ5lcAhuTYBkAQAIDgD0HHChROQGVPIokjOIZzYOlIzEFha2Nerj1uuGZqjJqzlqIp+cGz\
169wLrBPv+1Vu1dx9DWNAQPOH8BxGLCwKAKtuY/UNkXoFvY2IBu0mRgYmAQOH/lyiagDDuDszMTQ2oq\
170A4OwMAODoCADg7Y2A4OQEIP6mzcKAAHEshXoFC0GBkeGjx8hmv/9Y2BgYgIbwvDjBycDBwcDg5cX\
171A8Pv30CPPoZYdPUqA8OzZwzA8HgAEECMfEDzgIyDwBARZuDjA5sMtkVMjIGBhwdiq5wcA4OICNDH\
172sgwMT54wMHR3M1y7c+epHgODA0AAMf9kYHgNdMUldwYGH+GfPzkY/gJ9z8gIsQnkIhYWiKtANMjm\
173adMYLj98+NKBgSHiKwPDeYAAYgZ5/x0Dwx2gZ8+4MDAEiv/6xQ42BOQNkCEgzcxAZa9eMTCsWcNw\
1748tWrN44MDAEfGBiOgvQCBBALLKqADhXiBtoJ5nz9CrEdpBHkGpDtXFwMDNzcDPzv3rEBPcb9CaoP\
175IIDALgCGacRyBoaFwMTCAY+RX78gmmF8Tk5g0pFnEPn+nd3twwe/zQwMF4CG3AUIIGagaaaLGBjW\
176mwGVoCQ9kKafPyFeABkEokGGAANU/OtXDu2PHz2WMjBsAgggZmBCaSkFJlMGbABkyI8fiHAAhQ0o\
177WoFeUXn2jGvP378fAAKIBZgPFBlwgAnA1Ai0kz39wwcucKCCMMigP3/AbGCEywAEEIMzA0PfD4hd\
178KHgaA8NLoFJrAQYGV6AX34PFBQT+/5eV/f9fTOw/SA8wqVUBBBDIIvk6YGr8BtUIkuhlYHgIjAN7\
179mEuAyct9BgPD819QNcAE/7+AgeEsUEoKIICgwcwgDcw4iVLAIAKms0fAlAmMFIa76DkamG+igFld\
180+j5Q7hoDwwKg2AuAAAMAa/8Fcw6Og8MAAAAASUVORK5CYII="
181
182#define ICHID "data:image/png;base64,\
183iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0\
184U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJdSURBVDjLpZP7S1NhGMf9W7YfogSJboSE\
185UVCY8zJ31trcps6zTI9bLGJpjp1hmkGNxVz4Q6ildtXKXzJNbJRaRmrXoeWx8tJOTWptnrNryre5\
186YCYuI3rh+8vL+/m8PA/PkwIg5X+y5mJWrxfOUBXm91QZM6UluUmthntHqplxUml2lciF6wrmdHri\
187I0Wx3xw2hAediLwZRWRkCPzdDswaSvGqkGCfq8VEUsEyPF1O8Qu3O7A09RbRvjuIttsRbT6HHzeb\
188sDjcB4/JgFFlNv9MnkmsEszodIIY7Oaut2OJcSF68Qx8dgv8tmqEL1gQaaARtp5A+N4NzB0lMXxo\
189n/uxbI8gIYjB9HytGYuusfiPIQcN71kjgnW6VeFOkgh3XcHLvAwMSDPohOADdYQJdF1FtLMZPmsl\
190vhZJk2ahkgRvq4HHUoWHRDqTEDDl2mDkfheiDgt8pw340/EocuClCuFvboQzb0cwIZgki4KhzlaE\
1916w0InipbVzBfqoK/qRH94i0rgokSFeO11iBkp8EdV8cfJo0yD75aE2ZNRvSJ0lZKcBXLaUYmQrCz\
192DT6tDN5SyRqYlWeDLZAg0H4JQ+Jt6M3atNLE10VSwQsN4Z6r0CBwqzXesHmV+BeoyAUri8EyMfi2\
193FowXS5dhd7doo2DVII0V5BAjigP89GEVAtda8b2ehodU4rNaAW+dGfzlFkyo89GTlcrHYCLpKD+V\
1947yeeHNzLjkp24Uu1Ed6G8/F8qjqGRzlbl2H2dzjpMg1KdwsHxOlmJ7GTeZC/nesXbeZ6c9OYnuxU\
195c3fmBuFft/Ff8xMd0s65SXIb/gAAAABJRU5ErkJggg=="
196
197#define TPLHEADER "\
198<HTML>\n\
199 <HEAD>\n\
200 <TITLE>OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</TITLE>\n\
201 <link rel=\"stylesheet\" type=\"text/css\" href=\"site.css\">\n\
202 <link href=\"##ICO##\" rel=\"icon\" type=\"image/x-icon\"/>\
203 ##REFRESH##\
204 </HEAD>\n\
205 <BODY>\n\
206 <H2>OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</H2>"
207
208#define TPLFOOTER "\
209 <HR/><H4>OSCAM Webinterface developed by Streamboard Team - ##CURDATE## ##CURTIME## | Access from ##CURIP##</H4><H4>Style by Eneen</H4>\
210 </BODY>\
211</HTML>"
212
213#define TPLREFRESH "\
214\n<meta http-equiv=\"refresh\" content=\"##REFRESHTIME##; URL=##REFRESHURL##\" />\n"
215
216#define TPLMENU "\
217 <TABLE border=0 class=\"menu\">\n\
218 <TR>\n\
219 <TD CLASS=\"menu\"><A HREF=\"status.html\">STATUS</TD>\n\
220 <TD CLASS=\"menu\"><A HREF=\"config.html\">CONFIGURATION</TD>\n\
221 <TD CLASS=\"menu\"><A HREF=\"readers.html\">READERS</TD>\n\
222 <TD CLASS=\"menu\"><A HREF=\"userconfig.html\">USERS</TD>\n\
223 <TD CLASS=\"menu\"><A HREF=\"services.html\">SERVICES</TD>\n\
224 <TD CLASS=\"script\"><A HREF=\"script.html\">SCRIPT</TD>\n\
225 <TD CLASS=\"shutdown\"><A HREF=\"shutdown.html\">SHUTDOWN</TD>\n\
226 </TR>\n\
227 </TABLE>"
228
229#define TPLCONFIGMENU "\
230 <BR><BR>\n\
231 <TABLE border=0 class=\"configmenu\">\n\
232 <TR>\n\
233 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=global\">Global</TD>\n\
234 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=camd33\">Camd3.3</TD>\n\
235 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=camd35\">Camd3.5</TD>\n\
236 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=camd35tcp\">Camd3.5 TCP</TD>\n\
237 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=newcamd\">Newcamd</TD>\n\
238 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=radegast\">Radegast</TD>\n\
239 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=cccam\">Cccam</TD>\n\
240 ##TPLCONFIGMENUGBOX##\
241 ##TPLCONFIGMENUANTICASC##\
242 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=monitor\">Monitor</TD>\n\
243 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=serial\">Serial</TD>\n\
244 ##TPLCONFIGMENUDVBAPI##\
245 </TR>\n\
246 </TABLE>"
247
248#ifdef CS_ANTICASC
249#define TPLCONFIGMENUANTICASC "<TD CLASS=\"configmenu\"><A HREF=\"config.html?part=anticasc\">Anticascading</TD>\n"
250#endif
251
252#ifdef HAVE_DVBAPI
253#define TPLCONFIGMENUDVBAPI "<TD CLASS=\"configmenu\"><A HREF=\"config.html?part=dvbapi\">DVB-Api</TD>\n"
254#endif
255
256#ifdef CS_WITH_GBOX
257#define TPLCONFIGMENUGBOX "<TD CLASS=\"configmenu\"><A HREF=\"config.html?part=gbox\">Gbox</TD>\n"
258#endif
259
260#define TPLSTATUS "\
261 ##TPLHEADER##\
262 ##TPLMENU##\n\
263 <BR><BR>\n\
264 <form action=\"status.html\" method=\"get\">\n\
265 <select name=\"hideidle\">\n\
266 <option value=\"0\" ##HIDEIDLECLIENTSSELECTED0##>Show idle clients</option>\n\
267 <option value=\"1\" ##HIDEIDLECLIENTSSELECTED1##>Hide idle clients</option>\n\
268 <option value=\"2\">Show hidden clients</option>\n\
269 </select>\n\
270 <input type=\"submit\" value=\"Update\">\n\
271 </form>\n\
272 <TABLE WIDTH=\"100%\" cellspacing=\"0\" class=\"status\">\n\
273 <TR>\n\
274 <TH>hide</TH>\n\
275 <TH>PID</TH>\n\
276 <TH>Typ</TH>\n\
277 <TH>ID</TH>\n\
278 <TH>Label</TH>\n\
279 <TH>AU</TH>\n\
280 <TH>Crypted</TH>\n\
281 <TH>Address</TH>\n\
282 <TH>Port</TH>\n\
283 <TH>Protocol</TH>\n\
284 <TH>Login Date</TH>\n\
285 <TH>Login Time</TH>\n\
286 <TH>Online</TH>\n\
287 <TH>caid:srvid</TH>\n\
288 <TH>Last Channel</TH>\n\
289 <TH>Idle</TH>\n\
290 <TH>Status</TH>\n\
291 </TR>\n\
292 ##CLIENTSTATUS##\
293 </TABLE><BR>\n\
294 <DIV class=\"log\">\n\
295 ##LOGHISTORY##\
296 </DIV>\n\
297 ##TPLFOOTER##"
298
299#define TPLCLIENTSTATUSBIT "\
300 <TR class=\"##CLIENTTYPE##\">\n\
301 <TD align=\"center\" WIDTH=\"10\"><A HREF =\"status.html?hide=##HIDEIDX##\" TITLE=\"Hide this client\"><IMG SRC=\"##HIDEICON##\" ALT=\"Hide\"></A></TD>\n\
302 <TD align=\"center\">##CLIENTPID##</TD>\n\
303 <TD align=\"center\">##CLIENTTYPE##</TD>\n\
304 <TD align=\"center\">##CLIENTCNR##</TD>\n\
305 <TD>##CLIENTUSER##</TD>\n\
306 <TD align=\"center\">##CLIENTCAU##</TD>\n\
307 <TD align=\"center\">##CLIENTCRYPTED##</TD>\n\
308 <TD align=\"center\">##CLIENTIP##</TD>\n\
309 <TD align=\"center\">##CLIENTPORT##</TD>\n\
310 <TD>##CLIENTPROTO##</TD>\n\
311 <TD align=\"center\">##CLIENTLOGINDATE##</TD>\n\
312 <TD align=\"center\">##CLIENTLOGINTIME##</TD>\n\
313 <TD align=\"center\">##CLIENTLOGINSECS##</TD>\n\
314 <TD align=\"center\">##CLIENTCAID##:##CLIENTSRVID##</TD>\n\
315 <TD>##CLIENTSRVPROVIDER####CLIENTSRVNAME##</TD>\n\
316 <TD align=\"center\">##CLIENTIDLESECS##</TD>\n\
317 <TD align=\"center\">##CLIENTCON##</TD>\n\
318 </TR>\n"
319
320#define TPLUSERCONFIGLIST "\
321 ##TPLHEADER##\
322 ##TPLMENU##\n\
323 ##MESSAGE##\
324 <BR>\
325 <TABLE CLASS=\"configmenu\"><TR><TD CLASS=\"configmenu\"><A HREF=\"userconfig.html?part=adduser\">Add User</TD></TR></TABLE><BR>\
326 <TABLE cellspacing=\"0\" cellpadding=\"10\">\n\
327 <TR>\n\
328 <TH>Lock</TH>\n\
329 <TH>Label</TH>\n\
330 <TH>Status</TH>\n\
331 <TH>Protocol</TH>\n\
332 <TH>Last Channel</TH>\n\
333 <TH>Idle</TH>\n\
334 <TH>OK</TH>\n\
335 <TH>NOK</TH>\n\
336 <TH>IGN</TH>\n\
337 <TH>TOUT</TH>\n\
338 <TH>CACHE</TH>\n\
339 <TH>TUN</TH>\n\
340 <TH>LTIME</TH>\n\
341 <TH>EOK</TH>\n\
342 <TH>ENOK</TH>\n\
343 <TH colspan=\"2\" align=\"center\">Action</TH>\n\
344 </TR>\n\
345 ##USERCONFIGS##\
346 ##NEWUSERFORM##\
347 </TABLE><BR>\n\
348 ##TPLFOOTER##"
349
350#define TPLADDNEWUSER "\
351 <TR>\n\
352 <FORM action=\"user_edit.html\" method=\"get\">\n\
353 <TD>&nbsp;</TD>\n\
354 <TD colspan=\"6\">New User:&nbsp;&nbsp;<input name=\"user\" type=\"text\">&nbsp;&nbsp;&nbsp;<input type=\"submit\" value=\"Add User\"></TD>\n\
355 <TD colspan=\"10\" align=\"center\"></TD>\n\
356 </FORM>\n\
357 <TR>\n"
358
359#define TPLUSERCONFIGLISTBIT "\
360 <TR class=\"##CLASSNAME##\">\n\
361 <TD align=\"center\"><A HREF=\"userconfig.html?user=##USERENC##&action=##SWITCH##\" TITLE=\"##SWITCHTITLE##\"><IMG SRC=\"##SWITCHICO##\"BORDER=\"0\" ALT=\"##SWITCHTITLE##\"/></A></TD>\n\
362 <TD>##USER##</TD>\n\
363 <TD>##STATUS####EXPIRED##</TD>\n\
364 <TD align=\"center\">##CLIENTPROTO##</TD>\n\
365 <TD>##LASTCHANNEL##</TD>\n\
366 <TD align=\"center\">##IDLESECS##</TD>\n\
367 <TD align=\"center\">##CWOK##</TD>\n\
368 <TD align=\"center\">##CWNOK##</TD>\n\
369 <TD align=\"center\">##CWIGN##</TD>\n\
370 <TD align=\"center\">##CWTOUT##</TD>\n\
371 <TD align=\"center\">##CWCACHE##</TD>\n\
372 <TD align=\"center\">##CWTUN##</TD>\n\
373 <TD align=\"center\">##CWLASTRESPONSET##</TD>\n\
374 <TD align=\"center\">##EMMOK##</TD>\n\
375 <TD align=\"center\">##EMMNOK##</TD>\n\
376 <TD align=\"center\"><A HREF=\"user_edit.html?user=##USERENC##\" TITLE=\"edit this user\"><IMG SRC=\"##EDIICO##\" BORDER=\"0\" ALT=\"Edit User\"/></A></TD>\n\
377 <TD align=\"center\"><A HREF=\"userconfig.html?user=##USERENC##&action=delete\" TITLE=\"delete this user\"><IMG SRC=\"##DELICO##\"BORDER=\"0\" ALT=\"Delete User\"/></A></TD>\n\
378 </TR>\n"
379
380#define TPLUSEREDIT "\
381##TPLHEADER##\
382##TPLMENU##\n\
383<DIV CLASS=\"message\">##MESSAGE##</DIV>\
384<BR><BR>\n\
385 <form action=\"user_edit.html\" method=\"get\">\n\
386 <input name=\"user\" type=\"hidden\" value=\"##USERNAME##\">\n\
387 <input name=\"disabled\" type=\"hidden\" value=\"0\">\n\
388 <input name=\"suppresscmd08\" type=\"hidden\" value=\"0\">\n\
389 <input name=\"keepalive\" type=\"hidden\" value=\"0\">\n\
390 <TABLE cellspacing=\"0\">\n\
391 <TR>\n\
392 <TH>&nbsp;</TH>\n\
393 <TH>Edit User ##USERNAME##</TH>\n\
394 <TR>\n\
395 <TD>Password:</TD>\n\
396 <TD><input name=\"pwd\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##PASSWORD##\"></TD>\n\
397 </TR>\n\
398 <TR>\
399 <TD>Disabled:</TD>\
400 <TD><input name=\"disabled\" type=\"checkbox\" value=\"1\" ##DISABLEDCHECKED##></TD>\n\
401 <TR>\n\
402 <TD>Exp. Date:</TD>\n\
403 <TD><input name=\"expdate\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##EXPDATE##\"></TD>\n\
404 </TR>\n\
405 <TR>\n\
406 <TD>Group:</TD>\n\
407 <TD><input name=\"group\" type=\"text\" size=\"20\" maxlength=\"20\" value=\"##GROUPS##\"></TD>\n\
408 </TR>\n\
409 <TR>\n\
410 <TD>Hostname:</TD>\n\
411 <TD><input name=\"hostname\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##DYNDNS##\"></TD>\n\
412 </TR>\n\
413 <TR>\n\
414 <TD>Uniq:</TD>\n\
415 <TD><select name=\"uniq\">\n\
416 <option value=\"0\" ##UNIQSELECTED0##>0 - none</option>\n\
417 <option value=\"1\" ##UNIQSELECTED1##>1 - strict first</option>\n\
418 <option value=\"2\" ##UNIQSELECTED2##>2 - per IP</option>\n\
419 <option value=\"3\" ##UNIQSELECTED3##>3 - strict last</option>\n\
420 <option value=\"4\" ##UNIQSELECTED4##>4 - per IP last</option>\n\
421 </SELECT></TD>\n\
422 </TR>\n\
423 <TR>\n\
424 <TD>Sleep:</TD>\n\
425 <TD><input name=\"sleep\" type=\"text\" size=\"4\" maxlength=\"4\" value=\"##SLEEP##\"></TD>\n\
426 </TR>\n\
427 <TR>\n\
428 <TD>Monlevel:</TD>\n\
429 <TD><select name=\"monlevel\">\n\
430 <option value=\"0\" ##MONSELECTED0##>0 - no access to monitor</option>\n\
431 <option value=\"1\" ##MONSELECTED1##>1 - only server and own procs</option>\n\
432 <option value=\"2\" ##MONSELECTED2##>2 - all procs, but viewing only, default</option>\n\
433 <option value=\"3\" ##MONSELECTED3##>3 - all procs, reload of oscam.user possible</option>\n\
434 <option value=\"4\" ##MONSELECTED4##>4 - complete access</option>\n\
435 </select></TD>\n\
436 </TR>\n\
437 <TR>\n\
438 <TD>AU:</TD>\n\
439 <TD><select name=\"au\">\n\
440 <option value=\" \" ##AUSELECTED##>none</option>\n\
441 <option value=\"1\" ##AUTOAUSELECTED##>auto</option>\n\
442 ##RDROPTION##\
443 </select></TD>\n\
444 </TR>\n\
445 <TR>\n\
446 <TD>Services:</TD>\n\
447 <TD>\n\
448 <TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##\
449 </TD>\n\
450 </TR>\n\
451 </TABLE>\n\
452 <TR>\n\
453 <TD>CAID:</TD>\n\
454 <TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD>\n\
455 </TR>\n\
456 <TR>\n\
457 <TD>Ident:</TD>\n\
458 <TD><input name=\"ident\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##IDENTS##\"></TD>\n\
459 </TR>\n\
460 <TR>\n\
461 <TD>Betatunnel:</TD>\n\
462 <TD><textarea name=\"betatunnel\" cols=\"47\" rows=\"4\" class=\"bt\">##BETATUNNELS##</textarea></TD>\
463 </TR>\n\
464 <TR>\n\
465 <TD>Suppresscmd08:</TD>\n\
466 <TD><input name=\"suppresscmd08\" type=\"checkbox\" value=\"1\" ##SUPPRESSCMD08##></TD>\n\
467 </TR>\n\
468 ##TPLUSEREDITANTICASC##\
469 <TR>\n\
470 <TR><TD>Keepalive:</TD><TD><input name=\"keepalive\" type=\"checkbox\" value=\"1\" ##KEEPALIVE##></TD></TD></TR>\n\
471 <TD align=\"center\"><input type=\"submit\" name=\"action\" value=\"Save\" title=\"Save settings and reload users\"></TD>\n\
472 <TD align=\"center\"><input name=\"newuser\" type=\"text\" size=\"20\" maxlength=\"20\" title=\"Enter new username if you want to clone this user\">&nbsp;&nbsp;&nbsp;<input type=\"submit\" name=\"action\" value=\"Save As\" title=\"Save as new user and reload users\"></TD>\n\
473 </TR>\n\
474 </TABLE>\n\
475</form>\n\
476##TPLFOOTER##"
477
478#define TPLUSEREDITRDRSELECTED "\t<option value=\"##READERNAME##\" ##SELECTED##>##READERNAME##</option>"
479
480#define TPLUSEREDITSIDOKBIT "\
481 <TR>\n\
482 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"##SIDLABEL##\" ##CHECKED##> ##SIDLABEL##</TD>\n"
483
484#define TPLUSEREDITSIDNOBIT "\
485 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"!##SIDLABEL##\" ##CHECKED##> !##SIDLABEL##</TD>\n\
486 </TR>\n"
487
488#ifdef CS_ANTICASC
489# define TPLUSEREDITANTICASC "\
490 <TR>\n\
491 <TD>Anticascading numusers:</TD>\n\
492 <TD><input name=\"numusers\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##AC_USERS##\"></TD>\n\
493 </TR>\n\
494 <TR>\n\
495 <TD>Anticascading penalty:</TD>\n\
496 <TD><input name=\"penalty\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##AC_PENALTY##\"></TD>\n\
497 </TR>\n"
498#endif
499
500#define TPLSIDTAB "\
501 ##TPLHEADER##\
502 ##TPLMENU##\n\
503 <BR><BR><DIV class=\"log\">\n\
504 ##SIDTABS##\
505 </DIV>\n\
506 ##TPLFOOTER##"
507
508#define TPLSIDTABBIT "\
509label=##LABEL##<BR>\n\
510caid(##CAIDNUM##)=##CAIDS##<BR>\n\
511provider(##PROVIDNUM##)=##PROVIDS##<BR>\n\
512services(##SRVIDNUM##)=##SRVIDS##<BR><BR>\n"
513
514#define TPLREADERS "\
515##TPLHEADER##\
516##TPLMENU##\n\
517<BR><BR>\n\
518 <TABLE CLASS=\"configmenu\"><TR><TD CLASS=\"configmenu\"><A HREF=\"scanusb.html\">Scan USB</A></TD></TR></TABLE><BR>\
519 <TABLE cellspacing=\"0\" cellpadding=\"10\">\n\
520 <TR>\n\
521 <TH>Reader</TH>\n\
522 <TH>Protocol</TH>\n\
523 <TH>EERR</TH>\n\
524 <TH>EWRI</TH>\n\
525 <TH>ESKI</TH>\n\
526 <TH>EBLO</TH>\n\
527 <TH COLSPAN=\"3\">Action</TH>\n\
528 </TR>\n\
529 ##READERLIST##\
530 </TABLE>\n\
531##TPLFOOTER##"
532
533#define TPLREADERSBIT "\
534 <TR>\n\
535 <TD>##READERNAME##</TD>\n\
536 <TD>##CTYP##</TD>\n\
537 <TD align=\"center\">##EMMERROR##</TD>\n\
538 <TD align=\"center\">##EMMWRITTEN##</TD>\n\
539 <TD align=\"center\">##EMMSKIPPED##</TD>\n\
540 <TD align=\"center\">##EMMBLOCKED##</TD>\n\
541 <TD align=\"center\"><A HREF=\"readerconfig.html?reader=##READERNAMEENC##\" TITLE=\"Edit this Reader\"><IMG SRC=\"##EDIICO##\" BORDER=\"0\" ALT=\"Edit Reader\"/></A></TD>\
542 <TD align=\"center\">##ENTITLEMENT##</TD>\n\
543 <TD align=\"center\">##READERREFRESH##</TD>\n\
544 </TR>\n"
545
546#define TPLREADERENTITLEBIT "<A HREF=\"entitlements.html?reader=##READERNAMEENC##\" TITLE=\"Show Entitlement\"><IMG SRC=\"##ENTICO##\" BORDER=\"0\" ALT=\"Show Entitlement\"/></A>\n"
547
548#define TPLREADERREFRESHBIT "<A HREF=\"readers.html?action=reread&ridx=##RIDX##\" TITLE=\"Refresh Entitlement\"><IMG SRC=\"##REFRICO##\" BORDER=\"0\" ALT=\"Refresh Entitlement\"/></A>"
549
550#define TPLSCANUSB "\
551##TPLHEADER##\
552##TPLMENU##\n\
553<BR><BR>\n\
554<TABLE cellspacing=\"0\" cellpadding=\"10\">\n\
555 <TR><TH>USB Devices</TH></TR>\n\
556 ##USBBIT##\n\
557</TABLE>\n\
558##TPLFOOTER##"
559
560#define TPLSCANUSBBIT "<TR><TD>##USBENTRY##</TD></TR>\n"
561
562#define TPLENTITLEMENTS "\
563##TPLHEADER##\
564##TPLMENU##\n\
565<BR><BR>Entitlements for ##READERNAME##<BR><BR>\n\n\
566<DIV class=\"log\">\n\
567 ##LOGHISTORY##\
568</DIV>\n\
569##TPLFOOTER##"
570
571#define TPLREADERCONFIG "\
572##TPLHEADER##\
573##TPLMENU##\n\
574<BR><BR>\n\
575##MESSAGE##\
576 <form action=\"readerconfig.html?action=execute\" method=\"get\"><input name=\"reader\" type=\"hidden\" value=\"##READERNAME##\">\n\
577 <TABLE cellspacing=\"0\">\n\
578 <TR><TH>&nbsp;</TH><TH>Edit Reader ##READERNAME##</TH></TR>\n\
579 ##READERDEPENDINGCONFIG##\
580 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
581 </TABLE>\n\
582<BR><BR>Saving not yet implemented - Nothing changes on click<BR><BR>\n\
583##TPLFOOTER##"
584#define TPLSAVETEMPLATES "##TPLHEADER##\
585##TPLMENU##\n\
586<br><b>Saved ##CNT## templates to ##PATH##</b><br>\n\
587##TPLFOOTER##"
588#define TPLREADERCONFIGSIDOKBIT "\
589 <TR>\n\
590 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"##SIDLABEL##\" ##CHECKED##> ##SIDLABEL##</TD>\n"
591
592#define TPLREADERCONFIGSIDNOBIT "\
593 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"!##SIDLABEL##\" ##CHECKED##> !##SIDLABEL##</TD>\n\
594 </TR>\n"
595
596#define TPLREADERCONFIGMOUSEBIT "\
597 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DEVICE####R_PORT####L_PORT##\"></TD></TR>\n\
598 <TR><TD>Group:</TD><TD><input name=\"grp\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
599 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
600 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
601 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
602 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
603 <TR><TD>Inactivitytimeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
604 <TR><TD>Reconnecttimeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
605 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
606 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##FALLBACK##\"></TD></TR>\n\
607 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
608 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##BOXID##\"></TD></TR>\n\
609 <TR><TD>Detect:</TD><TD><input name=\"detect\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##DETECT##\"></TD></TR>\n\
610 <TR><TD>Mhz:</TD><TD><input name=\"mhz\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##MHZ##\"></TD></TR>\n\
611 <TR><TD>Cardmhz:</TD><TD><input name=\"cardmhz\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CARDMHZ##\"></TD></TR>\n\
612 <TR><TD>Blocknano:</TD><TD><input name=\"blocknano\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##BLOCKNANO##\"></TD></TR>\n\
613 <TR><TD>Savenano:</TD><TD><input name=\"savenano\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##SAVENANO##\"></TD></TR>\n"
614#define TPLREADERCONFIGSMARTBIT "\
615 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DEVICE####R_PORT####L_PORT##\"></TD></TR>\n\
616 <TR><TD>Group:</TD><TD><input name=\"grp\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
617 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
618 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
619 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
620 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
621 <TR><TD>Inactivitytimeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
622 <TR><TD>Reconnecttimeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
623 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
624 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##FALLBACK##\"></TD></TR>\n\
625 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
626 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##BOXID##\"></TD></TR>\n"
627#define TPLREADERCONFIGINTERNALBIT "\
628 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DEVICE####R_PORT####L_PORT##\"></TD></TR>\n\
629 <TR><TD>Group:</TD><TD><input name=\"grp\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
630 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
631 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
632 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
633 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
634 <TR><TD>Inactivitytimeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
635 <TR><TD>Reconnecttimeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
636 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
637 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##FALLBACK##\"></TD></TR>\n\
638 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
639 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##BOXID##\"></TD></TR>\n"
640#define TPLREADERCONFIGSERIALBIT "\
641 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DEVICE####R_PORT####L_PORT##\"></TD></TR>\n\
642 <TR><TD>Group:</TD><TD><input name=\"grp\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
643 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
644 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
645 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
646 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
647 <TR><TD>Inactivitytimeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
648 <TR><TD>Reconnecttimeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
649 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
650 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##FALLBACK##\"></TD></TR>\n\
651 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
652 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##BOXID##\"></TD></TR>\n"
653#define TPLREADERCONFIGCAMD35BIT "\
654 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DEVICE####R_PORT####L_PORT##\"></TD></TR>\n\
655 <TR><TD>Account:</TD><TD><input name=\"account\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##USER##,##PASS##\"></TD></TR>\n\
656 <TR><TD>Group:</TD><TD><input name=\"grp\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
657 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
658 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
659 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
660 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
661 <TR><TD>Inactivitytimeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
662 <TR><TD>Reconnecttimeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
663 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
664 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##FALLBACK##\"></TD></TR>\n\
665 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
666 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##BOXID##\"></TD></TR>\n"
667#define TPLREADERCONFIGCS378XBIT "\
668 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DEVICE####R_PORT####L_PORT##\"></TD></TR>\n\
669 <TR><TD>Group:</TD><TD><input name=\"grp\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
670 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
671 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
672 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
673 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
674 <TR><TD>Inactivitytimeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
675 <TR><TD>Reconnecttimeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
676 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
677 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##FALLBACK##\"></TD></TR>\n\
678 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
679 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##BOXID##\"></TD></TR>\n"
680#define TPLREADERCONFIGRADEGASTBIT "\
681 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DEVICE####R_PORT####L_PORT##\"></TD></TR>\n\
682 <TR><TD>Group:</TD><TD><input name=\"grp\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
683 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
684 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
685 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
686 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
687 <TR><TD>Inactivitytimeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
688 <TR><TD>Reconnecttimeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
689 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
690 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##FALLBACK##\"></TD></TR>\n\
691 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
692 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##BOXID##\"></TD></TR>\n"
693#define TPLREADERCONFIGNCD525BIT "\
694 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DEVICE####R_PORT####L_PORT##\"></TD></TR>\n\
695 <TR><TD>Group:</TD><TD><input name=\"grp\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
696 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
697 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
698 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
699 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
700 <TR><TD>Inactivitytimeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
701 <TR><TD>Reconnecttimeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
702 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
703 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##FALLBACK##\"></TD></TR>\n\
704 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
705 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##BOXID##\"></TD></TR>\n"
706#define TPLREADERCONFIGNCD524BIT "\
707 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DEVICE####R_PORT####L_PORT##\"></TD></TR>\n\
708 <TR><TD>Group:</TD><TD><input name=\"grp\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
709 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
710 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
711 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
712 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
713 <TR><TD>Inactivitytimeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
714 <TR><TD>Reconnecttimeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
715 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
716 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##FALLBACK##\"></TD></TR>\n\
717 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
718 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##BOXID##\"></TD></TR>\n"
719#ifdef CS_WITH_GBOX
720#define TPLREADERCONFIGGBOXBIT "\
721 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DEVICE####R_PORT####L_PORT##\"></TD></TR>\n\
722 <TR><TD>Group:</TD><TD><input name=\"grp\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
723 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
724 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
725 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
726 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
727 <TR><TD>Inactivitytimeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
728 <TR><TD>Reconnecttimeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
729 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
730 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##FALLBACK##\"></TD></TR>\n\
731 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
732 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##BOXID##\"></TD></TR>\n"
733#endif
734#ifdef HAVE_PCSC
735#define TPLREADERCONFIGPCSCBIT "\
736 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DEVICE####R_PORT####L_PORT##\"></TD></TR>\n\
737 <TR><TD>Group:</TD><TD><input name=\"grp\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
738 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
739 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
740 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
741 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
742 <TR><TD>Inactivitytimeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
743 <TR><TD>Reconnecttimeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
744 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
745 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##FALLBACK##\"></TD></TR>\n\
746 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
747 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##BOXID##\"></TD></TR>\n"
748#endif
749#define TPLCONFIGGBOX "\
750##TPLHEADER##\
751##TPLMENU##\n\
752##TPLCONFIGMENU##\n\
753<BR><BR>\n\
754<DIV CLASS=\"message\">##MESSAGE##</DIV>\
755<form action=\"config.html\" method=\"get\">\n\
756 <input name=\"part\" type=\"hidden\" value=\"gbox\">\n\
757 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
758 <TABLE class=\"config\" cellspacing=\"0\">\n\
759 <TR><TH>&nbsp;</TH><TH>Edit Gbox Config </TH></TR>\n\
760 <TR><TD>Password:</TD><TD><input name=\"password\" type=\"text\" size=\"10\" maxlength=\"8\" value=\"##PASSWORD##\"></TD></TR>\n\
761 <TR><TD>Maxdist:</TD><TD><input name=\"maxdist\" type=\"text\" size=\"5\" maxlength=\"2\" value=\"##MAXDIST##\"></TD></TR>\n\
762 <TR><TD>Ignorelist:</TD><TD><input name=\"ignorelist\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##IGNORELIST##\"></TD></TR>\n\
763 <TR><TD>Onlineinfos:</TD><TD><input name=\"onlineinfos\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##ONLINEINFOS##\"></TD></TR>\n\
764 <TR><TD>Cardinfos:</TD><TD><input name=\"cardinfos\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CARDINFOS##\"></TD></TR>\n\
765 <TR><TD>Locals:</TD><TD><input name=\"locals\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##LOCALS##\"></TD></TR>\n\
766 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
767 </TABLE>\n\
768##TPLFOOTER##"
769
770#ifdef CS_ANTICASC
771#define TPLCONFIGANTICASC "\
772##TPLHEADER##\
773##TPLMENU##\n\
774##TPLCONFIGMENU##\n\
775<BR><BR>\n\
776##MESSAGE##\
777<form action=\"config.html\" method=\"get\">\n\
778 <input name=\"part\" type=\"hidden\" value=\"anticasc\">\n\
779 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
780 <TABLE class=\"config\" cellspacing=\"0\">\n\
781 <TR><TH>&nbsp;</TH><TH>Edit Anticascading Config</TH></TR>\n\
782 <TR><TD>Enabled:</TD><TD><input name=\"enabled\" type=\"checkbox\" value=\"1\" ##CHECKED##>\n\
783 <TR><TD>Numusers:</TD><TD><input name=\"numusers\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##NUMUSERS##\"></TD></TR>\n\
784 <TR><TD>Sampletime:</TD><TD><input name=\"sampletime\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SAMPLETIME##\"></TD></TR>\n\
785 <TR><TD>Samples:</TD><TD><input name=\"samples\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SAMPLES##\"></TD></TR>\n\
786 <TR><TD>Penalty:</TD><TD><input name=\"penalty\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PENALTY##\"></TD></TR>\n\
787 <TR><TD>AClogfile:</TD><TD><input name=\"aclogfile\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##ACLOGFILE##\"></TD></TR>\n\
788 <TR><TD>Fakedelay:</TD><TD><input name=\"fakedelay\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##FAKEDELAY##\"></TD></TR>\n\
789 <TR><TD>Denysamples:</TD><TD><input name=\"denysamples\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##DENYSAMPLES##\"></TD></TR>\n\
790 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
791 </TABLE>\n\
792</form>\n\
793##TPLFOOTER##"
794#endif
795
796#define TPLCONFIGCCCAM "\
797##TPLHEADER##\
798##TPLMENU##\n\
799##TPLCONFIGMENU##\n\
800<BR><BR>\n\
801##MESSAGE##\
802<form action=\"config.html\" method=\"get\">\n\
803 <input name=\"part\" type=\"hidden\" value=\"cccam\">\n\
804 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
805 <TABLE class=\"config\" cellspacing=\"0\">\n\
806 <TR><TH>&nbsp;</TH><TH>Edit Cccam Config</TH></TR>\n\
807 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"6\" maxlength=\"6\" value=\"##PORT##\"></TD></TR>\n\
808 <TR><TD>Reshare:</TD><TD><input name=\"reshare\" type=\"text\" size=\"2\" maxlength=\"1\" value=\"##RESHARE##\"></TD></TR>\n\
809 <TR><TD>Version:</TD><TD><input name=\"version\" type=\"text\" size=\"6\" maxlength=\"6\" value=\"##VERSION##\"></TD></TR>\n\
810 <TR><TD>Build:</TD><TD><input name=\"build\" type=\"text\" size=\"4\" maxlength=\"4\" value=\"##BUILD##\"></TD></TR>\n\
811 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
812 </TABLE>\n\
813</form>\n\
814##TPLFOOTER##"
815
816#define TPLCONFIGMONITOR "\
817##TPLHEADER##\
818##TPLMENU##\n\
819##TPLCONFIGMENU##\n\
820<BR><BR>\n\
821##MESSAGE##\
822<form action=\"config.html\" method=\"get\">\n\
823 <input name=\"part\" type=\"hidden\" value=\"monitor\">\n\
824 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
825 <input name=\"httphideidleclients\" type=\"hidden\" value=\"0\">\n\
826 <TABLE class=\"config\" cellspacing=\"0\">\n\
827 <TR><TH>&nbsp;</TH><TH>Edit Monitor Config</TH></TR>\n\
828 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##MONPORT##\"></TD></TR>\n\
829 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"> Use 0 (zero) to delete.</TD></TR>\n\
830 <TR><TD>Nocrypt:</TD><TD><input name=\"nocrypt\" type=\"text\" size=\"100\" maxlength=\"200\" value=\"##NOCRYPT##\"></TD></TR>\n\
831 <TR><TD>Aulow:</TD><TD><input name=\"aulow\" type=\"text\" size=\"5\" maxlength=\"1\" value=\"##AULOW##\"> min</TD></TR>\n\
832 <TR>\n\
833 <TD>Monlevel:</TD>\n\
834 <TD><select name=\"monlevel\">\n\
835 <option value=\"0\" ##MONSELECTED0##>0 - no access to monitor</option>\n\
836 <option value=\"1\" ##MONSELECTED1##>1 - only server and own procs</option>\n\
837 <option value=\"2\" ##MONSELECTED2##>2 - all procs, but viewing only, default</option>\n\
838 <option value=\"3\" ##MONSELECTED3##>3 - all procs, reload of oscam.user possible</option>\n\
839 <option value=\"4\" ##MONSELECTED4##>4 - complete access</option>\n\
840 </select></TD>\n\
841 </TR>\n\
842 <TR><TD>Hideclientto:</TD><TD><input name=\"hideclient_to\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##HIDECLIENTTO##\"> s</TD></TR>\n\
843 <TR><TD>Httpport:</TD><TD><input name=\"httpport\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##HTTPPORT##\"></TD></TR>\n\
844 <TR><TD>Httpuser:</TD><TD><input name=\"httpuser\" type=\"text\" size=\"20\" maxlength=\"20\" value=\"##HTTPUSER##\"></TD></TR>\n\
845 <TR><TD>Httppwd:</TD><TD><input name=\"httppwd\" type=\"text\" size=\"20\" maxlength=\"20\" value=\"##HTTPPASSWORD##\"></TD></TR>\n\
846 <TR><TD>Httpcss:</TD><TD><input name=\"httpcss\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##HTTPCSS##\"></TD></TR>\n\
847 <TR><TD>Httprefresh:</TD><TD><input name=\"httprefresh\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##HTTPREFRESH##\"> s</TD></TR>\n\
848 <TR><TD>Httptpl:</TD><TD><input name=\"httptpl\" type=\"text\" size=\"50\" maxlength=\"128\" value=\"##HTTPTPL##\"></TD></TR>\n\
849 <TR><TD>Httpscript:</TD><TD><input name=\"httpscript\" type=\"text\" size=\"50\" maxlength=\"128\" value=\"##HTTPSCRIPT##\"></TD></TR>\n\
850 <TR><TD>HttpHideIdleClients:</TD><TD><input name=\"httphideidleclients\" type=\"checkbox\" value=\"1\" ##CHECKED##>\n\
851 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
852 </TABLE>\n\
853</form>\n\
854##TPLFOOTER##"
855
856#define TPLCONFIGRADEGAST "\
857##TPLHEADER##\
858##TPLMENU##\n\
859##TPLCONFIGMENU##\n\
860<BR><BR>\n\
861##MESSAGE##\
862<form action=\"config.html\" method=\"get\">\n\
863 <input name=\"part\" type=\"hidden\" value=\"radegast\">\n\
864 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
865 <TABLE class=\"config\" cellspacing=\"0\">\n\
866 <TR><TH>&nbsp;</TH><TH>Edit Radegast Config</TH></TR>\n\
867 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PORT##\"></TD></TR>\n\
868 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"> Use 0 (zero) to delete.</TD></TR>\n\
869 <TR><TD>Allowed:</TD><TD><input name=\"allowed\" type=\"text\" size=\"100\" maxlength=\"200\" value=\"##ALLOWED##\"></TD></TR>\n\
870 <TR><TD>User:</TD><TD><input name=\"user\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##USER##\"></TD></TR>\n\
871 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
872 </TABLE>\n\
873</form>\n\
874##TPLFOOTER##"
875
876#define TPLCONFIGNEWCAMD "\
877##TPLHEADER##\
878##TPLMENU##\n\
879##TPLCONFIGMENU##\n\
880<BR><BR>\n\
881##MESSAGE##\
882<form action=\"config.html\" method=\"get\">\n\
883 <input name=\"part\" type=\"hidden\" value=\"newcamd\">\n\
884 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
885 <input name=\"keepalive\" type=\"hidden\" value=\"0\">\n\
886 <TABLE class=\"config\" cellspacing=\"0\">\n\
887 <TR><TH>&nbsp;</TH><TH>Edit Newcamd Config</TH></TR>\n\
888 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"100\" maxlength=\"200\" value=\"##PORT##\"></TD></TR>\n\
889 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"> Use 0 (zero) to delete.</TD></TR>\n\
890 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"35\" maxlength=\"28\" value=\"##KEY##\"></TD></TR>\n\
891 <TR><TD>Allowed:</TD><TD><input name=\"allowed\" type=\"text\" size=\"100\" maxlength=\"200\" value=\"##ALLOWED##\"></TD></TR>\n\
892 <TR><TD>Keepalive:</TD><TD><input name=\"keepalive\" type=\"checkbox\" value=\"1\" ##KEEPALIVE##></TD></TR>\n\
893 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
894 </TABLE>\n\
895</form>\n\
896##TPLFOOTER##"
897
898#define TPLCONFIGGLOBAL "\
899##TPLHEADER##\
900##TPLMENU##\n\
901##TPLCONFIGMENU##\n\
902<BR><BR>\n\
903##MESSAGE##\
904<form action=\"config.html\" method=\"get\">\n\
905 <input name=\"part\" type=\"hidden\" value=\"global\">\n\
906 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
907 <TABLE class=\"config\" cellspacing=\"0\">\n\
908 <TR><TH>&nbsp;</TH><TH>Edit Global Config</TH></TR>\n\
909 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"> Use 0 (zero) to delete.</TD></TR>\n\
910 <TR><TD>PID File:</TD><TD><input name=\"pidfile\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##PIDFILE##\"></TD></TR>\n\
911 <TR><TD>Usrfile:</TD><TD><input name=\"usrfile\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##USERFILE##\"></TD></TR>\n\
912 <TR><TD>Logfile:</TD><TD><input name=\"logfile\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##LOGFILE##\"></TD></TR>\n\
913 <TR><TD>Usrfileflag:</TD><TD><input name=\"usrfileflag\" type=\"text\" size=\"5\" maxlength=\"1\" value=\"##USERFILEFLAG##\"></TD></TR>\n\
914 <TR><TD>CWlogdir:</TD><TD><input name=\"cwlogdir\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##CWLOGDIR##\"></TD></TR>\n\
915 <TR><TD>Clienttimeout:</TD><TD><input name=\"clienttimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CLIENTTIMEOUT##\"> s</TD></TR>\n\
916 <TR><TD>Fallbacktimeout:</TD><TD><input name=\"fallbacktimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##FALLBACKTIMEOUT##\"> s</TD></TR>\n\
917 <TR><TD>Clientmaxidle:</TD><TD><input name=\"clientmaxidle\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CLIENTMAXIDLE##\"> s</TD></TR>\n\
918 <TR><TD>Cachedelay:</TD><TD><input name=\"cachedelay\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CACHEDELAY##\"> ms</TD></TR>\n\
919 <TR><TD>Bindwait:</TD><TD><input name=\"bindwait\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##BINDWAIT##\"> s</TD></TR>\n\
920 <TR><TD>Netprio:</TD><TD><input name=\"netprio\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##NETPRIO##\"></TD></TR>\n\
921 <TR><TD>Resolvedelay:</TD><TD><input name=\"resolvedelay\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##RESOLVEDELAY##\"> ms</TD></TR>\n\
922 <TR><TD>Sleep:</TD><TD><input name=\"sleep\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SLEEP##\"> min</TD></TR>\n\
923 <TR><TD>Unlockparental:</TD><TD><input name=\"unlockparental\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##UNLOCKPARENTAL##\"></TD></TR>\n\
924 <TR><TD>Nice:</TD><TD><input name=\"nice\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##NICE##\"></TD></TR>\n\
925 <TR><TD>Serialreadertimeout:</TD><TD><input name=\"serialreadertimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SERIALTIMEOUT##\"> ms</TD></TR>\n\
926 <TR><TD>Maxlogsize:</TD><TD><input name=\"maxlogsize\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##MAXLOGSIZE##\"></TD></TR>\n\
927 <TR><TD>Waitforcards:</TD><TD><input name=\"waitforcards\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##WAITFORCARDS##\"></TD></TR>\n\
928 <TR><TD>Preferlocalcards:</TD><TD><input name=\"preferlocalcards\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PREFERLOCALCARDS##\"></TD></TR>\n\
929 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
930 </TABLE>\n\
931</form>\n\
932##TPLFOOTER##"
933
934#define TPLCONFIGCAMD33 "\
935##TPLHEADER##\
936##TPLMENU##\n\
937##TPLCONFIGMENU##\n\
938<BR><BR>\n\
939##MESSAGE##\
940<form action=\"config.html\" method=\"get\">\n\
941 <input name=\"part\" type=\"hidden\" value=\"camd33\">\n\
942 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
943 <TABLE class=\"config\" cellspacing=\"0\">\n\
944 <TR><TH>&nbsp;</TH><TH>Edit Camd33 Config</TH></TR>\n\
945 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PORT##\"></TD></TR>\n\
946 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"> Use 0 (zero) to delete.</TD></TR>\n\
947 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"35\" maxlength=\"28\" value=\"##KEY##\"></TD></TR>\n\
948 <TR><TD>Passive:</TD><TD><input name=\"passive\" type=\"text\" size=\"3\" maxlength=\"1\" value=\"##PASSIVE##\"></TD></TR>\n\
949 <TR><TD>Nocrypt:</TD><TD><input name=\"nocrypt\" type=\"text\" size=\"100\" maxlength=\"200\" value=\"##NOCRYPT##\"></TD></TR>\n\
950 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
951 </TABLE>\n\
952</form>\n\
953##TPLFOOTER##"
954
955#define TPLCONFIGCAMD35 "\
956##TPLHEADER##\
957##TPLMENU##\n\
958##TPLCONFIGMENU##\n\
959<BR><BR>\n\
960##MESSAGE##\
961<form action=\"config.html\" method=\"get\">\n\
962 <input name=\"part\" type=\"hidden\" value=\"camd35\">\n\
963 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
964 <input name=\"suppresscmd08\" type=\"hidden\" value=\"0\">\n\
965 <TABLE class=\"config\" cellspacing=\"0\">\n\
966 <TR><TH>&nbsp;</TH><TH>Edit Camd35 Config</TH></TR>\n\
967 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PORT##\"></TD></TR>\n\
968 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"> Use 0 (zero) to delete.</TD></TR>\n\
969 <TR><TD>Suppresscmd08:</TD><TD><input name=\"suppresscmd08\" type=\"checkbox\" value=\"1\" ##SUPPRESSCMD08##></TD></TR>\n\
970 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
971 </TABLE>\n\
972</form>\n\
973##TPLFOOTER##"
974
975#define TPLCONFIGCAMD35TCP "\
976##TPLHEADER##\
977##TPLMENU##\n\
978##TPLCONFIGMENU##\n\
979<BR><BR>\n\
980##MESSAGE##\
981<form action=\"config.html\" method=\"get\">\n\
982 <input name=\"part\" type=\"hidden\" value=\"camd35tcp\">\n\
983 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
984 <TABLE class=\"config\" cellspacing=\"0\">\n\
985 <TR><TH>&nbsp;</TH><TH>Edit Camd35 TCP Config</TH></TR>\n\
986 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"100\" maxlength=\"200\" value=\"##PORT##\"></TD></TR>\n\
987 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"> Use 0 (zero) to delete.</TD></TR>\n\
988 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
989 </TABLE>\n\
990</form>\n\
991##TPLFOOTER##"
992
993#define TPLCONFIGSERIAL "\
994##TPLHEADER##\
995##TPLMENU##\n\
996##TPLCONFIGMENU##\n\
997<BR><BR>\n\
998##MESSAGE##\
999<form action=\"config.html\" method=\"get\">\n\
1000 <input name=\"part\" type=\"hidden\" value=\"serial\">\n\
1001 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1002 <TABLE class=\"config\" cellspacing=\"0\">\n\
1003 <TR><TH>&nbsp;</TH><TH>Edit Serial Config</TH></TR>\n\
1004 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##SERIALDEVICE##\"></TD></TR>\n\
1005 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
1006 </TABLE>\n\
1007</form>\n\
1008<BR><BR>Configuration Serial not yet implemented<BR><BR>\n\
1009##TPLFOOTER##"
1010
1011#ifdef HAVE_DVBAPI
1012#define TPLCONFIGDVBAPI "\
1013##TPLHEADER##\
1014##TPLMENU##\n\
1015##TPLCONFIGMENU##\n\
1016<BR><BR>\n\
1017##MESSAGE##\
1018<form action=\"config.html\" method=\"get\">\n\
1019 <input name=\"part\" type=\"hidden\" value=\"dvbapi\">\n\
1020 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1021 <input name=\"enabled\" type=\"hidden\" value=\"0\">\n\
1022 <input name=\"au\" type=\"hidden\" value=\"0\">\n\
1023 <TABLE class=\"config\" cellspacing=\"0\">\n\
1024 <TR><TH>&nbsp;</TH><TH>Edit DVB Api Config</TH></TR>\n\
1025 <TR><TD>Enabled:</TD><TD><input name=\"enabled\" type=\"checkbox\" value=\"1\" ##ENABLEDCHECKED##>\n\
1026 <TR><TD>AU:</TD><TD><input name=\"au\" type=\"checkbox\" value=\"1\" ##AUCHECKED##>\n\
1027 <TR><TD>Boxtype:</TD><TD><input name=\"boxtype\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##BOXTYPE##\"></TD></TR>\n\
1028 <TR><TD>User:</TD><TD><input name=\"user\" type=\"text\" size=\"20\" maxlength=\"20\" value=\"##USER##\"></TD></TR>\n\
1029 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\">\n</TD></TR>\n\
1030 </TABLE>\n\
1031</form>\n\
1032##TPLFOOTER##"
1033#endif
1034
1035#define TPLSERVICECONFIGLIST "\
1036 ##TPLHEADER##\
1037 ##TPLMENU##\n\
1038 ##MESSAGE##\
1039 <BR><BR>\
1040 <TABLE cellspacing=\"0\" cellpadding=\"10\">\n\
1041 <TR>\n\
1042 <TH>Label</TH>\n\
1043 <TH colspan=\"3\" align=\"center\">Action</TH>\n\
1044 </TR>\n\
1045 ##SERVICETABS##\
1046 <TR>\n\
1047 <FORM action=\"services_edit.html\" method=\"get\"><INPUT TYPE=\"hidden\" NAME=\"action\" VALUE=\"add\">\n\
1048 <TD>New Service:</TD>\n\
1049 <TD><input name=\"service\" type=\"text\"></TD>\n\
1050 <TD colspan=\"2\" align=\"center\"><input type=\"submit\" value=\"Add\"></TD>\n\
1051 </FORM>\n\
1052 <TR>\n\
1053 </TABLE>\n\
1054 ##TPLFOOTER##"
1055
1056#define TPLSERVICECONFIGLISTBIT "\
1057 <TR>\n\
1058 <TD>##LABEL##</TD>\n\
1059 <TD width =\"250\" align=\"center\">##SIDLIST##</TD>\n\
1060 <TD><A HREF=\"services_edit.html?service=##LABELENC##&action=edit\" TITLE=\"Edit this Service\"><IMG SRC=\"##EDIICO##\" BORDER=\"0\" ALT=\"Edit Service\"/></A></TD>\n\
1061 <TD><A HREF=\"services.html?service=##LABELENC##&action=delete\" TITLE=\"Delete this Service\"><IMG SRC=\"##DELICO##\" BORDER=\"0\" ALT=\"Delete Service\"/></A></TD>\n\
1062 </TR>\n"
1063
1064#define TPLSERVICECONFIGSIDBIT "\
1065 <DIV class=\"##SIDCLASS##\">##SID##</DIV>"
1066
1067#define TPLSERVICEEDIT "\
1068##TPLHEADER##\
1069##TPLMENU##\n\
1070<DIV CLASS=\"message\">##MESSAGE##</DIV>\
1071<BR><BR>\n\
1072 <form action=\"services_edit.html\" method=\"get\">\n\
1073 <input name=\"service\" type=\"hidden\" value=\"##LABELENC##\">\n\
1074 <TABLE cellspacing=\"0\">\n\
1075 <TR>\n<TH>&nbsp;</TH>\n<TH>Edit Service ##LABEL##</TH>\n</TR>\n\
1076 <TR>\n<TD>caid: </TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\
1077 <TR>\n<TD>provid: </TD><TD><input name=\"provid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##PROVIDS##\"></TD></TR>\
1078 <TR>\n<TD>srvid: </TD><TD><textarea name=\"srvid\" cols=\"80\" rows=\"5\">##SRVIDS##</textarea></TD></TR>\
1079 <TR>\n<TD>&nbsp;</TD><TD align=\"right\"><input type=\"submit\" name=\"action\" value=\"Save\" title=\"Save service and reload services\"></TD>\n\
1080 </TABLE>\n\
1081</form>\n\
1082##TPLFOOTER##"
1083
1084#define TPLPRESHUTDOWN "\
1085##TPLHEADER##\
1086##TPLMENU##\n\
1087<br><br><br><DIV class = \"warning\">Do you really want to shutdown oscam?<br>\
1088All users will become disconnected.<br>\
1089You will not be able to restart oscam from the webinterface.<br>\
1090The webinterface will try to connect to oscam once 30 seconds after shutdown.</b><br>\n\
1091</DIV><br><form action=\"shutdown.html\" method=\"get\">\n\
1092<input type=\"submit\" name=\"action\" value=\"Shutdown\" title=\"Save service and reload services\"></TD>\n\
1093</form>\
1094##TPLFOOTER##"
1095
1096#define TPLSHUTDOWN "\
1097<HTML>\n\
1098 <HEAD>\n\
1099 <TITLE>OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</TITLE>\n\
1100 <link href=\"##ICO##\" rel=\"icon\" type=\"image/x-icon\"/>\
1101 ##REFRESH##\
1102 <style type=\"text/css\">\n\
1103 ##STYLESHEET##\n\
1104 </style>\n\
1105 </HEAD>\n\
1106 <BODY>\n\
1107 <H2>OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</H2>\
1108##TPLMENU##\n\
1109<br><P CLASS=\"blinking\">Oscam Shutdown - Try Reconnect in ##SECONDS## Seconds</p><br><br>\n\
1110##TPLFOOTER##"
1111
1112#define TPLSCRIPT "\
1113##TPLHEADER##\
1114##TPLMENU##\n\
1115<br><br><b>Oscam execute script: ##SCRIPTNAME## --> Status: ##SCRIPTRESULT## --> Returncode: ##CODE##</b><br>\n\
1116##TPLFOOTER##"
1117
1118enum refreshtypes {REFR_ACCOUNTS, REFR_READERS, REFR_SERVER, REFR_ANTICASC, REFR_SERVICES};
1119
1120char *tpl[]={
1121 "HEADER",
1122 "FOOTER",
1123 "MENU",
1124 "REFRESH",
1125 "STATUS",
1126 "CLIENTSTATUSBIT",
1127 "USERCONFIGLIST",
1128 "ADDNEWUSER",
1129 "USERCONFIGLISTBIT",
1130 "SIDTAB",
1131 "SIDTABBIT",
1132 "READERS",
1133 "READERSBIT",
1134 "READERENTITLEBIT",
1135 "READERREFRESHBIT",
1136 "SCANUSB",
1137 "SCANUSBBIT",
1138 "ENTITLEMENTS",
1139 "READERCONFIG",
1140 "READERCONFIGSIDOKBIT",
1141 "READERCONFIGSIDNOBIT",
1142 "READERCONFIGMOUSEBIT",
1143 "READERCONFIGSMARTBIT",
1144 "READERCONFIGINTERNALBIT",
1145 "READERCONFIGSERIALBIT",
1146 "READERCONFIGCAMD35BIT",
1147 "READERCONFIGCS378XBIT",
1148 "READERCONFIGRADEGASTBIT",
1149 "READERCONFIGNCD525BIT",
1150 "READERCONFIGNCD524BIT",
1151 "USEREDIT",
1152 "USEREDITRDRSELECTED",
1153 "USEREDITSIDOKBIT",
1154 "USEREDITSIDNOBIT",
1155 "SAVETEMPLATES",
1156 "CONFIGMENU",
1157 "CONFIGGBOX",
1158 "CONFIGCCCAM",
1159 "CONFIGMONITOR",
1160 "CONFIGRADEGAST",
1161 "CONFIGNEWCAMD",
1162 "CONFIGGLOBAL",
1163 "CONFIGCAMD33",
1164 "CONFIGCAMD35",
1165 "CONFIGCAMD35TCP",
1166 "CONFIGSERIAL",
1167 "SERVICECONFIGLIST",
1168 "SERVICECONFIGLISTBIT",
1169 "SERVICECONFIGSIDBIT",
1170 "SERVICEEDIT",
1171 "PRESHUTDOWN",
1172 "SHUTDOWN",
1173 "SCRIPT"
1174#ifdef HAVE_DVBAPI
1175 ,"CONFIGDVBAPI"
1176 ,"CONFIGMENUDVBAPI"
1177#endif
1178#ifdef CS_ANTICASC
1179 ,"USEREDITANTICASC"
1180 ,"CONFIGANTICASC"
1181 ,"CONFIGMENUANTICASC"
1182#endif
1183#ifdef CS_WITH_GBOX
1184 ,"CONFIGMENUGBOX"
1185 ,"READERCONFIGGBOXBIT"
1186#endif
1187#ifdef HAVE_PCSC
1188 ,"READERCONFIGPCSCBIT"
1189#endif
1190};
1191
1192char *tplmap[]={
1193 TPLHEADER,
1194 TPLFOOTER,
1195 TPLMENU,
1196 TPLREFRESH,
1197 TPLSTATUS,
1198 TPLCLIENTSTATUSBIT,
1199 TPLUSERCONFIGLIST,
1200 TPLADDNEWUSER,
1201 TPLUSERCONFIGLISTBIT,
1202 TPLSIDTAB,
1203 TPLSIDTABBIT,
1204 TPLREADERS,
1205 TPLREADERSBIT,
1206 TPLREADERENTITLEBIT,
1207 TPLREADERREFRESHBIT,
1208 TPLSCANUSB,
1209 TPLSCANUSBBIT,
1210 TPLENTITLEMENTS,
1211 TPLREADERCONFIG,
1212 TPLREADERCONFIGSIDOKBIT,
1213 TPLREADERCONFIGSIDNOBIT,
1214 TPLREADERCONFIGMOUSEBIT,
1215 TPLREADERCONFIGSMARTBIT,
1216 TPLREADERCONFIGINTERNALBIT,
1217 TPLREADERCONFIGSERIALBIT,
1218 TPLREADERCONFIGCAMD35BIT,
1219 TPLREADERCONFIGCS378XBIT,
1220 TPLREADERCONFIGRADEGASTBIT,
1221 TPLREADERCONFIGNCD525BIT,
1222 TPLREADERCONFIGNCD524BIT,
1223 TPLUSEREDIT,
1224 TPLUSEREDITRDRSELECTED,
1225 TPLUSEREDITSIDOKBIT,
1226 TPLUSEREDITSIDNOBIT,
1227 TPLSAVETEMPLATES,
1228 TPLCONFIGMENU,
1229 TPLCONFIGGBOX,
1230 TPLCONFIGCCCAM,
1231 TPLCONFIGMONITOR,
1232 TPLCONFIGRADEGAST,
1233 TPLCONFIGNEWCAMD,
1234 TPLCONFIGGLOBAL,
1235 TPLCONFIGCAMD33,
1236 TPLCONFIGCAMD35,
1237 TPLCONFIGCAMD35TCP,
1238 TPLCONFIGSERIAL,
1239 TPLSERVICECONFIGLIST,
1240 TPLSERVICECONFIGLISTBIT,
1241 TPLSERVICECONFIGSIDBIT,
1242 TPLSERVICEEDIT,
1243 TPLPRESHUTDOWN,
1244 TPLSHUTDOWN,
1245 TPLSCRIPT
1246#ifdef HAVE_DVBAPI
1247 ,TPLCONFIGDVBAPI
1248 ,TPLCONFIGMENUDVBAPI
1249#endif
1250#ifdef CS_ANTICASC
1251 ,TPLUSEREDITANTICASC
1252 ,TPLCONFIGANTICASC
1253 ,TPLCONFIGMENUANTICASC
1254#endif
1255#ifdef CS_WITH_GBOX
1256 ,TPLCONFIGMENUGBOX
1257 ,TPLREADERCONFIGGBOXBIT
1258#endif
1259#ifdef HAVE_PCSC
1260 ,TPLREADERCONFIGPCSCBIT
1261#endif
1262};
1263
1264struct templatevars {
1265 int varscnt;
1266 int varsalloc;
1267 int tmpcnt;
1268 int tmpalloc;
1269 char **names;
1270 char **values;
1271 char **tmp;
1272};
1273
1274struct uriparams {
1275 int paramcount;
1276 char *params[MAXGETPARAMS];
1277 char *values[MAXGETPARAMS];
1278};
1279
1280static char hex2ascii[256][2];
1281static char noncekey[33];
1282
1283
1284char *tpl_addVar(struct templatevars *vars, int append, char *name, char *value);
1285char *tpl_addTmp(struct templatevars *vars, char *value);
1286char *tpl_printf(struct templatevars *vars, int append, char *varname, char *fmtstring, ...);
1287char *tpl_getVar(struct templatevars *vars, char *name);
1288struct templatevars *tpl_create();
1289void tpl_clear(struct templatevars *vars);
1290char *tpl_getUnparsedTpl(const char* name);
1291char *tpl_getTpl(struct templatevars *vars, const char* name);
1292char *parse_auth_value(char *value);
1293void calculate_nonce(char *result, int resultlen);
1294int check_auth(char *authstring, char *method, char *path, char *expectednonce);
1295void send_headers(FILE *f, int status, char *title, char *extra, char *mime);
1296void send_css(FILE *f);
1297char *getParam(struct uriparams *params, char *name);
1298int tpl_saveIncludedTpls(const char *path);
1299#endif
Note: See TracBrowser for help on using the repository browser.