source: trunk/oscam-http.h@ 5363

Last change on this file since 5363 was 5363, checked in by pattex, 9 years ago

WebIf: better sizing of editboxes

File size: 113.5 KB
Line 
1struct s_connection{
2 int32_t socket;
3 struct s_client *cl;
4 struct in_addr remote;
5#ifdef WITH_SSL
6 SSL *ssl;
7#endif
8};
9
10#define GET_IP() *(in_addr_t *)pthread_getspecific(getip)
11pthread_key_t getkeepalive;
12
13#ifdef WITH_SSL
14static int32_t ssl_active = 0;
15#endif
16
17/* The server string in the http header */
18#define SERVER "webserver/1.0"
19/* The protocol that gets output. Currently only 1.0 is possible as 1.1 requires many features we don't have. */
20#define PROTOCOL "HTTP/1.0"
21/* The RFC1123 time format which is used in http headers. */
22#define RFC1123FMT "%a, %d %b %Y %H:%M:%S GMT"
23/* The realm for http digest authentication. Gets displayed to browser. */
24#define AUTHREALM "Forbidden"
25/* How long a nonce is valid in seconds. If it isn't valid anymore, the browser gets a "stale=true" message and must resubmit with the current nonce. */
26#define AUTHNONCEVALIDSECS 15
27/* The maximum amount of GET parameters the webserver will parse. */
28#define MAXGETPARAMS 100
29/* The refresh delay (in seconds) when stopping OSCam via http. */
30#define SHUTDOWNREFRESH 30
31/* Templates: Adds a variable. The variable can be used as often as wanted. */
32#define TPLADD 0
33/* Templates: Appends a variable or adds it if doesn't exist yet. The variable can be used as often as wanted. */
34#define TPLAPPEND 1
35/* Templates: Adds a variable which will be reset to "" after being used once, either through tpl_getVar or when used in a template.
36 tpl_addVar/tpl_printf don't do a reset and will overwrite the appendmode with a new value. */
37#define TPLADDONCE 2
38/* Templates: Appends a variable or adds it if doesn't exist yet. The variable will be reset to "" after being used once. See TPLADDONCE for details. */
39#define TPLAPPENDONCE 3
40
41#define CSS "\
42body {background-color: white; font-family: Arial; font-size: 11px; text-align:center}\n\
43p {color: white; }\n\
44h2 {color: #F7F7F7; font-family: Arial; font-size: 50px; line-height: 50px; text-align:center; margin-top:0px; margin-bottom:0px}\n\
45h4 {color: #AAAAAA; font-family: Arial; font-size: 12px; line-height: 9px; text-align:center}\n\
46TABLE {border-spacing:1px; border:0px; padding:0px; margin-left:auto; margin-right:auto;}\n\
47TH {height:10px; border:0px; font-family: Arial; font-size: 11px; padding:5px; background-color:#CCCCCC; color:black;}\n\
48TH.statuscol0 {text-align:center;width:10px;}\n\
49TH.statuscol1 {text-align:center;}\n\
50TH.statuscol2 {text-align:center;}\n\
51TH.statuscol3 {text-align:center;}\n\
52TH.statuscol4 {text-align:center;}\n\
53TH.statuscol5 {text-align:center;}\n\
54TH.statuscol6 {text-align:center;}\n\
55TH.statuscol7 {text-align:center;}\n\
56TH.statuscol8 {text-align:center;}\n\
57TH.statuscol9 {text-align:center;}\n\
58TH.statuscol10 {text-align:center;}\n\
59TH.statuscol11 {text-align:center;}\n\
60TH.statuscol12 {text-align:center;}\n\
61TH.statuscol13 {text-align:center;}\n\
62TH.statuscol14 {text-align:center;}\n\
63TH.statuscol15 {text-align:center;}\n\
64TH.statuscol16 {text-align:center;}\n\
65TD {height:10px; border:0px; font-family: Arial; font-size: 11px; padding:5px; background-color:#EEEEEE; color:black;text-align: left}\n\
66TD.centered {text-align:center;}\n\
67TD.statuscol0 {text-align:center;width:10px;}\n\
68TD.statuscol1 {text-align:center;}\n\
69TD.statuscol2 {text-align:center;}\n\
70TD.statuscol3 {text-align:center;}\n\
71TD.statuscol4 {}\n\
72TD.statuscol5 {text-align:center;}\n\
73TD.statuscol6 {text-align:center;}\n\
74TD.statuscol7 {text-align:center;}\n\
75TD.statuscol8 {text-align:center;}\n\
76TD.statuscol9 {}\n\
77TD.statuscol10 {text-align:center;}\n\
78TD.statuscol11 {text-align:center;}\n\
79TD.statuscol12 {text-align:center;}\n\
80TD.statuscol13 {}\n\
81TD.statuscol14 {text-align:center;}\n\
82TD.statuscol14 A {text-decoration: none;}\n\
83TD.statuscol15 {text-align:center;}\n\
84TD.statuscol16 {text-align:center;}\n\
85TD.statuscol16 A {text-decoration: none;}\n\
86HR {height:1px; border-width:0; color:white; background-color:#AAAAAA}\n\
87TR.s TD {background-color:#e1e1ef;}\n\
88TR.l TD {background-color:#e1e1ef;}\n\
89TR.n TD {background-color:#e1e1ef;}\n\
90TR.h TD {background-color:#e1e1ef;}\n\
91TR.r TD {background-color:#fff3e7;}\n\
92TR.p TD {background-color:#fdfbe1;}\n\
93TR.c TD {background-color:#f1f5e6;}\n\
94TR.a TD {background-color:#33ff00;}\n\
95TR.online TD {background-color:#f1f5e6;}\n\
96TR.expired TD {background-color:#ffe2d4;}\n\
97TR.usrcfg_anticasc TD {background-color:#FEF9BF;}\n\
98TR.usrcfg_cccam TD {background-color:#E6FEBF;}\n\
99TR.scanusbsubhead TD {background-color:#fdfbe1;}\n\
100DIV.log {border:1px dotted #AAAAAA; background-color: #FAFAFA; padding:10px; font-family:\"Courier New\", monospace; color:#666666; font-size: 11px; word-wrap:break-word; text-align:left; }\n\
101DIV.sidlist {border:1px dotted #AAAAAA; background-color: #fffdf5; padding:2px; font-family:\"Courier New\", monospace ; color:#666666; font-size: 11px; word-wrap:break-word; text-align:left;}\n\
102TABLE.menu {border-spacing:0px; border:0px; padding:0px; margin-left:auto; margin-right:auto;}\n\
103TABLE.status {border-spacing:1px; border:0px; padding:0px; background-color:white; empty-cells:show;}\n\
104TABLE.config {width:750px;}\n\
105TABLE.invisible TD {border:0px; font-family:Arial; font-size: 12px; padding:5px; background-color:#EEEEEE;}\n\
106TD.menu {color:black; background-color:white; font-family: Arial; font-size:14px; font-weight:bold;}\n\
107TD.script {color:black; background-color:white; font-family: Arial; font-size:14px; font-weight:bold;}\n\
108TD.shutdown {color:black; background-color:white; font-family: Arial; font-size:14px; font-weight:bold;}\n\
109TD.shutdown A:hover {color: red;}\n\
110TD.configmenu {color:black; background-color:white; font-family: Arial; font-size:11px; font-weight:bold;}\n\
111textarea.bt{font-family: Arial; font-size: 12px;}\n\
112textarea.editor {width:99%; height:450px;border:1px dotted #AAAAAA; background-color: #FAFAFA; padding:10px; font-family:\"Courier New\", monospace; color:#666666; font-size: 11px; word-wrap:break-word; text-align:left; }\n\
113input{font-family: Arial; font-size: 12px;}\n\
114A:link {color: #050840;}\n\
115A.debugls:link {color: white;background-color:red;}\n\
116A.debugls:visited {color: white;background-color:red;}\n\
117A:visited {color: #050840;}\n\
118A:active {color: #050840;}\n\
119A:hover {color: #ff9e5f;}\n\
120DIV.message {float:right}\n\
121IMG{border:0px solid;}\n\
122P.blinking {text-decoration: blink; font-weight:bold; font-size:large; color:red;}\n\
123a.tooltip {position: relative; text-decoration: none; cursor:default;}\n\
124a.tooltip1 {position: relative; text-decoration: none; cursor:default;color:red;}\n\
125a.tooltip span {display: none; z-index:99;}\n\
126a.tooltip1 span {display: none; z-index:99;}\n\
127a:hover span{display: block;position: absolute;top: 2em; left: 1em; margin: 0px;padding: 10px;color: #335500;font-weight: normal;background: #ffffdd;text-align: left;border: 1px solid #666;}\n\
128H4.styleauthor:after {content:\"Eneen\";}"
129
130#define JSCRIPT ""
131
132#define ICMAI "data:image/x-icon;base64,\
133AAABAAEAEBAAAAEACABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAAA\
134AAAAAADw//8A7/D/AODg4ADf8P8A0PD/AM///wDA4P8Az8/PALDw/wCQz/8AsLC/AGDP/wBgz88A\
135YJD/AGCQzwBfr+8AYJCQAC9gzwAvYJAAIADfAC8AzwAvL5AAHw+wAF9QXwAfQGAAEB9vACAgIAAQ\
136LzAAABAfAA8PDwAADw8AAAAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
137AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
138AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
139AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
140AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
141AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
142AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
143AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
144AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
145AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
146AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
147AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
148AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
149AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
150AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
151AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/\
152//8AICAOBgMEBiAgIAMDBg8gICAgEQ8gDgkICAgLGA8RICAgICAgBAgIBQQEBQgbICAgICAgCAYF\
153CAMBAQEDCCAgICAgIAkWEwwBAAAAAAAgICAgIB4IExYIAQwAAAAAICAgICAgCRYZFBMTFBUHASAg\
154ICAgIBQTExMTExMTExYgICAgIBMTEyAgGBAgICATExMgICAZHyANDwsIBQUIICAZICAgICAgICAS\
155DhwgICAgICAgICAgICD/AiD/AiAgICAgICAgICAg/xog/xogICAgICAgICAgIP8CIP8CICAgICAg\
156ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMHDYQDAA2UA4AcuAMADbQBAAgAAAAACAAAA\
1570QKAAW4AwAF3AMABbQDgA1wA4ANpAPAHZADwB3MA+A9hAPwfYgA="
158
159#define ICSTA "data:image/png;base64,\
160iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QAAAAAAAD5Q7t/AAAACXBI\
161WXMAAABIAAAASABGyWs+AAAACXZwQWcAAAAQAAAAEABcxq3DAAAC3UlEQVQ4y31QTWhUVxg93733\
1623ffeZPIymczoZGISMRi1kh+zEAKiCxfZBrqwpS0yIhFcxH0GFBWDFEQR3NhC7cZAFxU1+JdKsQtL\
163N63Q2lYRNZkkxozOm2TG+Xtz73VhRFqNB87uO+d85xBWkBoZwXd79uCb8fHOiO8PWZXKDlavt4Oo\
164pKT8qxwO35xOJH5dm8+X901MAIkEAIAA4OzgIJZc1+l+9uwzN58/xIrFrSYILBjz5ohzYxzHr3ve\
165pB+JfJ2KRu+nZmdx4eFD8FN9fchz7nySyaTdxcUTVCi0Qyn+VgwA0JpQrbq8VOqzlNpwlYnJpEH1\
1665ossyAD4obNzJOz7Z6hWc0GE1aCENe+vj4w7X3oz8zlM1QOq8HVdXd2xYvG0VCrJOMeHyDkHbGch\
167195ytHVEDzTLl+mQZR7s7in8LVpqtWGHaBNJ+bHk5/lE07Gug+gP0XKKjOFSBAeu/Ob9JBqIdtlS\
1688lXFXGT9ePj4llHR43F/P4zkgI2Qpm2bW4Me4VpWu71Kb8VYPuc1HNl4KLSuxc5/zmCXDRwQAGVA\
169Ta7pENJxgtUMysb8ebuPbq2vyF12tSVt3mwOADDGmKVXpT8Ec90HEhj4oEVdB5fbMr1FMXcYRBLA\
170WwOCRgWEWRE4zg1hzDAH3PcMmIYSdTvgqhUM/1mZ1dm8CMS8mBHielyIu45Su/+v16QR9cJwowAY\
171reQbEBFYSdwNnrJ/xHA0mr1XqYy7Wm+WWre9+xGoG4V4swe1xgKxlQIEUMAXdImdkyleZqcLBQxm\
172Mj9nbXs0kPIx4xyMMdAKY5FGJGMRJGPNSMabkWyKZeM6ml7cS7/QbRtsbGoKY21tZmBu7scnlvXp\
173kpTf1oSY0ZwrQ0w32A6anAYVkeFcRHvXwrnGL15dEN/3nlyjr6fv4N34jY24ODSEaaXkdsa6o0C/\
174qgbl83ur952N4Z2mxP6tPDL3Or4KLV/qmMbvmTsAgNduAx7n+HHZEQAAACV0RVh0Y3JlYXRlLWRh\
175dGUAMjAwOS0wOS0yOFQxMToyNzo1NC0wNDowMEqLuj0AAAAldEVYdG1vZGlmeS1kYXRlADIwMDkt\
176MDUtMThUMTY6MTA6MDAtMDQ6MDAci9a9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5\
177ccllPAAAAABJRU5ErkJggg=="
178
179#define ICDEL "data:image/png;base64,\
180iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA\
181BGdBTUEAALGeYUxB9wAAACBjSFJNAAB6JQAAgIMAAPn/AACA6AAAUggAARVYAAA6lwAAF2/XWh+Q\
182AAADFklEQVR42qSRS2icVRxHz//e+30z40zSNI1NJ5M0aWpj0hCToEiRqAhWS5G2ii7ERVdioSC4\
183E7pyI5SutIsufCJaFIoQRLJQKVpKwaRYA1XTF01MWpukdJLM8/vuw0VF3HvgtzmrHxw5uWPHrvGD\
184Bz7u6u3uvvDRJ58uXr3xjktTnEBOQQZIAOcDOE+kVfuD/f3vbhvY9dyN8xdOm7GXDn0zvm/vw/Ha\
185XdSzE8fOrZWL1/+8fURpxX+xzpPRes/A2OiHW4eHB27PL8xvNGqXTDYTt6ryKmZ9hd5NJiru6Xvj\
186+2b5qemVxhNBSTkA1ntVatt0Zmxs7FBZqdr01NTRtNH8IADyXrFILjJvPTby0LGhgt2il25SWy7z\
18781+N1Ys1P5QTBoeiaLJUKrVfrtWn55ZuTeTiOMm3tlKrrCOndvZTW1nFJE3aI94fKegjHd5FSdMz\
188V3eVnCNXMEbPeP/ZPesOiyiiOCaXz1OrrKNEBBMZspmYlVr65tnlxs5za+7XtbqjZEMh57z+yboT\
189d7w/jNYEQAARQQCTpgn1pEnTWoxSVIW7SRoi5z0uQFYLmxXPLHuFDQBCYi3NahV8QD/eqNNMU3wI\
190aOgZ9H5ut/O9VRFmjf62JSP94wXVvZBKx5plSgSch6a1JB5UCAFECNA54Nxsv/NbrBYuRerLRSUv\
191/JjKy+tZ7V7cHh9VwiMuQOD+kwAouZ9ZDTg/0xdCm4mFP4y6eQt5NQaanskzd+xrsRZ5ssNMhuAx\
192Ev6dkgBF5z4fCr47m9WsRNr+7uV5HcAFMEDDhq++nm8e3503fdti9br84w2ggndbh9rbXikUYsgJ\
193M5YTqedKCGA9BAJZBUsN//Yv99Iro3lzXAhoQANqc6FwoO/pCdM22Iu0xCFj5FRPTtGVVXRmFaLA\
194C0QaZjfsfnHhgU6tDuZFKIigqkm6mB0doWP/Xih1+Yb19dQHEh+wIRADERADAa7/VncnuxTDPRp6\
195NOhHrb2WeLevZXtP8YezF08vlCtf1FNPNfVUUo8SRaQEEUGL0IDvanC+AmEDkBAC/4e/BwACT2zM\
196WyQBIAAAAABJRU5ErkJggg=="
197
198#define ICEDI "data:image/png;base64,\
199iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAChUlEQVQ4jY2SW0hTcRzHv+dsO5ed\
200aa65jm5uYx60UVBIRCY+9BZ0EUFDNLogLbpYD/UQRBQRQQ9BRfnQQxFBUKFCSiQ9hGSaUuCNJEPL\
201W5Fzw02P7mzn8u9lTdSFfZ9/n8//++P3N2GdnBUE3PJ6X50URb+bpj+8X1xcD1lORc1hvD1Y8eAu\
202QB7b7eSdJA11BgLOzQzzfwL9a2Pp4PdvpO3KTXIbIA8FgTS7XKRPkvZRqRn6X/Dn52dAJabavCO1\
2032HnUicqRGcAp4lcohKlotORvB1Mm+HTNTgSP7Hoa/dm7O6GEoI0/gUUbgPtyO4iiTbz51FPVo6oA\
204AGo1nC2wiA1e3Rub6m9XFoYBQ4GmzoG1+qDKXxDf8iwg7Tg+gsRi5hWGWk6widkfrYnYIMzMJqjJ\
205EPisbdDVBYgbmfNVBw6l4TWCGw1l8OYzr2Phj4yZ90FLzoITimGQJKyW+e57Ldr9/vGVD6ZXcDtz\
206MN1VXx8Z7X5kGAosQhGS8jAYoQj60jCZX4hmF9aG5NWN0w1KSyQYmnRdNxKwOsqhKZPgsrZDT4bg\
207yCbVZQ3hNfAKQaHPCY0WCtiia9BYEQyTB8OQsYFXmi80hlt+R4xM/LLA780XGHsOaNqAKbccpuJz\
208YFnIQ2NL1XdezGWEV8TndW2tqdxDYmNtJDHTRUhy9GV4ujc340fJlAKPZz9vtZECV15rZKLTfeni\
209KbCcDR6PF36/H6IowuFwwG63g2XZNEfV1dUhGAz6Ozo6jtE0bS6UpAFV1a08x9p4nuNTc3EAcYqi\
210CIB5iqLmOI6bbGpqGjUrioJwOJwVCAT6AOTouu5iLCaLrms2WZZJSmADIAPQkDq9oiiReDyOP4iW\
211/fvrVslmAAAAAElFTkSuQmCC"
212
213#define ICENT "data:image/png;base64,\
214iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ\
215bWFnZVJlYWR5ccllPAAAAjlJREFUeNqUU99LFFEU/u7MnXHujtouJWKwbbD9MIhyoexJGXwoIhR6\
216iF76A4KgJwMfliAQRJKeeqrXHgp6MqhMpTVfKoxsi/Qh2wpZUmS00FbdOzOeO625bbLYhQ9mzpzv\
217O985Zy6rv/54UHCtMwgC7PQwxlCQ/qOYMLq4Ivd2tcLzfWg7IPsEXdOQHnzdqWpyScTdFkf3s2/g\
218pMCqkJVHSQoDp/dB8UwqSQIBYpaBw3tqoTNlr4oAKXgEla94oYMiKToJi5DA/5x1n8FTDvzS8Kam\
219PpLFfy2wMKYDmkng4XtzsgmFwAbzDPDNRDtSi6CSzH6TGbexMjkAmXsAzg18HWdIN57DtcbhLYFI\
220RNCEKwbANCoq4L7qh7E0ioPtHdDNGlqFxNWZLNwl+7a2uX5LWLCsmr8gKCZsgYW3d7C/5RR0EcN0\
221ZgTTLzJoOJLCqgyubDkQgv6FoKx3ZYBDp/aLHiNyNJzP3Pxi+L3ZqoOUHq2+5FrTOWH7iUsZYM2d\
222g8452s5fhEYkz/0Oj3bKDb36//fyZhwtjgNDGPg1n4dhkmnPx5eZWeQXCg9ZXff9MRapby9SUHWg\
223VrmuZuvZyDZdQjzVhmjiEBZnc8hmnv4RHip2POm7ce+yauAAYVdl5Uzv3oljqaOIxZNwf6zi/dgQ\
224nHT+RFmK++Fua44l+obLLoqGlUBgwr6ATz/t5yZbdlR8jTeMnOl51zN+6/gbgy6MSV2PypM4a09W\
225vTtJQrT0rEb/ebukDQEGABzNvVc4pYJ1AAAAAElFTkSuQmCC"
226
227#define ICREF "data:image/png;base64,\
228iVBORw0KGgoAAAANSUhEUgAAAA4AAAAQCAYAAAAmlE46AAAABHNCSVQICAgIfAhkiAAAABl0RVh0\
229U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAALFSURBVCiRZZFLaFx1FMZ/59x7M5OZSWJq\
23088DYpAabBkGNLVLrKIIbxQe0+MBaZQoFERG3VtRlF0UqghHBjXONZCGCUgQRIUWdSZVWSzfWpq+Y\
231ttZMm0yaTud15/6Piwwo9Vsevt/3wXfEzAAohnKHet5+4BEXx/2quiLKybjlJoGvsjmL2j4BDoqZ\
232UQxlh6pOD24cCnoHBv1EaoSWy1CvXKN04ffKtdJcZM72ZHN2aHZKPjTjRSnkGVPP+3Xz1nsyyXRA\
233HCUJ0qOIP4z4tyPaQ7N2lZM/vlNt1sonEumBrY3qYk1mP9MP+jYMvR4Enl6evyAudiB+nFm3sXrb\
2342OOZnsHHRLxekDR/zx2wW4d3y/FvnlqR2Slv0Q/8/qgZmTlXB94CpoAJ9eT9noFtm+584GDKC7pA\
235u3DxKke/vLesZnZLqxk5c+5bYBn4Ppuz5WzOZra/5CbKf/389rGvH7W4VaNV/QnWxjQ1M3XOzQGn\
236AAd4tFUMJa0qr449uM/5iQ34yfsAATAp5EkD1Wyu/Zd/IQUOAU8GnX1NETVEDSCqXl6RQsgSxjr+\
237r++A3UB8010AzxcItr3wB6JpwHH17Hvu7NHJc87xXDZn129OK4ayGZjx1xKUVu0IzqU4/cukAvv/\
238CxVDuQv4YtMEz3QkeTdqSJ+ulXv4qYfoyGxh4olpUt2DHx35XH8ohnJ3m90VJGgsLjDZinSXerok\
239xZDK/c8eSy8v5G396Bsi2oWLFlg6/7FdOjVTq19f6BBVHzA/8EVEXKPW2CfFkBvd/Vt0tfTbuc7u\
240oZHxhw+kg84RLJrHtc4T18/QuDFPVLuEiM+ZE6fLzrlxKeSpqDK9/WV7pRjK86J80r1+1OsfHs8k\
241Mz14skq98iflxVJUunilac6ezubssBTyfArszebMtYdIADs9X18zs3EXW696egU47GL3ZjZnFwH+\
242AYRRPIe3vIMRAAAAAElFTkSuQmCC"
243
244#define ICKIL "data:image/png;base64,\
245R0lGODlhEAAQANUhAP///yk0QKGqtHF6hWBsdsopAJMAAP/M/8vS1+Lm6f9MDP+DIP8pAP8zAP9s\
246FK64w9zf76Ors8nQ1evs8err8PLy/Ozv+4SMlOvw+6GqsoOJkfPy/NDT3GdweP/+/tHU3Wdvd///\
247/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
248AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACEALAAAAAAQABAAAAaHwJBw\
249SBwSBEXiYDkgACSBZGgAwECcCEG0SE0IsNpk9wvIBi5cgDdAiGgfHaU6HAoEPo/tdK4HTDYAAEJj\
250Wx4FBYGHgxZfBEIFBweHkQVTVwAZAQAGCwuRnQZTYAEUmw6nDqEhoxwVAAUKsQqVow8PrwcMDQ0M\
251kgJmGiCaBroGBryhdknGQsxBADs="
252
253#define ICDIS "data:image/png;base64,\
254iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA\
255BGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VG\
256AAADAUlEQVR42mJkAILW1taU////FzIxMUkD6Rt///7trqurW8uABJqampwYGRkrWVhYTP/9+/cO\
257qGbm1q1bewACiBkoEcvMzDyfm5tbVExMjIOfn1/mz58/YTY2Nt/3799/FKS5vr4+mouLa4WOjo66\
258np4eh4CAgOD3799dZGVlvwEEEAvQVpDNDBwcHAxARQxAAxh4eHgY7t+/3wk0/AfQphdsbGwLjYyM\
259mB0dHRlAaj98+MAAdAXDhQsXkgACiAVomzRI8MePHwxfv35lALqGgZeXl0FRUZHhwYMHE4Hif/X1\
2609ZmBLgJrBgGgC8AWAfnCAAHE8u3bt9NATd5AGu5fYDiAFSkoKIDYzLq6unDNIPDz50+GV69eMfz+\
261/fsGQACxAImOT58+OfHx8XEC/QVWCAwsMA1yCcgmoBqws4WFhcGGHz16lOH69ev/gQZNAAgg5hMn\
262TjwyMDB48OvXL39gODCB/AbCMIOAoQ62FebN48ePMxw+fJjhy5cvFR0dHbMBAogZJHn69OnL2tra\
26314AKvIEByQYyAKQZGQMDk+HWrVsg2/+8e/euaOLEiX0gvQABxALzFygMQDEBsgmkGOgtsDjMAJDT\
264QeKsrKwMQNfCwwMggMAu8Pf3jwb6dSkwXtlhgQXTAOODYkdQUJABGFZMQBd4AGPp+6VLl44CBBCz\
265l5eXjZCQ0GoVFRU2kGKQRhiAhQfMJSB5UOyA8MePH12kpaWvAgQQs6qq6jR1dXUtkPORNcOcDooB\
266ZDFQoIJiB+gixsePH0sDBBALOzu7KScnJ1bN9+7dA4X2Xy0tLWaYV0DioBQLshCoVwMggFiAAfIU\
267mBrFgBywITDNd+/eZQDakA/0wovLly8vA+YBZpgFsFT7+fPntwABxAwMjG9ARYEgf4FsAfn54cOH\
268DI8ePSrfuXNnH9AVV4F+vQvU4AnMcKwgw0EJDphXGJ48edINEECMIBPd3d0Tgc5KAHpFAhidd4EK\
2695gA1r0POzs7Ozk5AZ2cBY0EX6Or3QK+tBqbOCQABBgCzBWGTrJ55PAAAAABJRU5ErkJggg=="
270
271#define ICENA "data:image/png;base64,\
272iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA\
273BGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VG\
274AAADKUlEQVR42mJgAAJpBgbNmQwMUy8yMOzoZ2CYKM7AoMOABtQYGMw2MjDMusTAsLOdgaGHh4FB\
275HiQOEIBmObQBEIYCKPhSwwDNlyTdoB2DDoBgcRwKhy3BPjCcP+LLN5ympBGasw9cFZY/r7AJw9a0\
276dy3FA/YJ5lcAhuTYBkAQAIDgD0HHChROQGVPIokjOIZzYOlIzEFha2Nerj1uuGZqjJqzlqIp+cGz\
277wLrBPv+1Vu1dx9DWNAQPOH8BxGLCwKAKtuY/UNkXoFvY2IBu0mRgYmAQOH/lyiagDDuDszMTQ2oq\
278A4OwMAODoCADg7Y2A4OQEIP6mzcKAAHEshXoFC0GBkeGjx8hmv/9Y2BgYgIbwvDjBycDBwcDg5cX\
279A8Pv30CPPoZYdPUqA8OzZwzA8HgAEECMfEDzgIyDwBARZuDjA5sMtkVMjIGBhwdiq5wcA4OICNDH\
280sgwMT54wMHR3M1y7c+epHgODA0AAMf9kYHgNdMUldwYGH+GfPzkY/gJ9z8gIsQnkIhYWiKtANMjm\
281adMYLj98+NKBgSHiKwPDeYAAYgZ5/x0Dwx2gZ8+4MDAEiv/6xQ42BOQNkCEgzcxAZa9eMTCsWcNw\
2828tWrN44MDAEfGBiOgvQCBBALLKqADhXiBtoJ5nz9CrEdpBHkGpDtXFwMDNzcDPzv3rEBPcb9CaoP\
283IIDALgCGacRyBoaFwMTCAY+RX78gmmF8Tk5g0pFnEPn+nd3twwe/zQwMF4CG3AUIIGagaaaLGBjW\
284mwGVoCQ9kKafPyFeABkEokGGAANU/OtXDu2PHz2WMjBsAgggZmBCaSkFJlMGbABkyI8fiHAAhQ0o\
285WoFeUXn2jGvP378fAAKIBZgPFBlwgAnA1Ai0kz39wwcucKCCMMigP3/AbGCEywAEEIMzA0PfD4hd\
286KHgaA8NLoFJrAQYGV6AX34PFBQT+/5eV/f9fTOw/SA8wqVUBBBDIIvk6YGr8BtUIkuhlYHgIjAN7\
287mEuAyct9BgPD819QNcAE/7+AgeEsUEoKIICgwcwgDcw4iVLAIAKms0fAlAmMFIa76DkamG+igFld\
288+j5Q7hoDwwKg2AuAAAMAa/8Fcw6Og8MAAAAASUVORK5CYII="
289
290#define ICHID "data:image/png;base64,\
291iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0\
292U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJdSURBVDjLpZP7S1NhGMf9W7YfogSJboSE\
293UVCY8zJ31trcps6zTI9bLGJpjp1hmkGNxVz4Q6ildtXKXzJNbJRaRmrXoeWx8tJOTWptnrNryre5\
294YCYuI3rh+8vL+/m8PA/PkwIg5X+y5mJWrxfOUBXm91QZM6UluUmthntHqplxUml2lciF6wrmdHri\
295I0Wx3xw2hAediLwZRWRkCPzdDswaSvGqkGCfq8VEUsEyPF1O8Qu3O7A09RbRvjuIttsRbT6HHzeb\
296sDjcB4/JgFFlNv9MnkmsEszodIIY7Oaut2OJcSF68Qx8dgv8tmqEL1gQaaARtp5A+N4NzB0lMXxo\
297n/uxbI8gIYjB9HytGYuusfiPIQcN71kjgnW6VeFOkgh3XcHLvAwMSDPohOADdYQJdF1FtLMZPmsl\
298vhZJk2ahkgRvq4HHUoWHRDqTEDDl2mDkfheiDgt8pw340/EocuClCuFvboQzb0cwIZgki4KhzlaE\
2996w0InipbVzBfqoK/qRH94i0rgokSFeO11iBkp8EdV8cfJo0yD75aE2ZNRvSJ0lZKcBXLaUYmQrCz\
300DT6tDN5SyRqYlWeDLZAg0H4JQ+Jt6M3atNLE10VSwQsN4Z6r0CBwqzXesHmV+BeoyAUri8EyMfi2\
301FowXS5dhd7doo2DVII0V5BAjigP89GEVAtda8b2ehodU4rNaAW+dGfzlFkyo89GTlcrHYCLpKD+V\
3027yeeHNzLjkp24Uu1Ed6G8/F8qjqGRzlbl2H2dzjpMg1KdwsHxOlmJ7GTeZC/nesXbeZ6c9OYnuxU\
303c3fmBuFft/Ff8xMd0s65SXIb/gAAAABJRU5ErkJggg=="
304
305#define ICRES "data:image/png;base64,\
306iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI\
307WXMAAABIAAAASABGyWs+AAABVUlEQVQ4y6WSPUtCURjHf+d2vV5f0l5Mr0KQERbUYChJQ1D0FaKh\
308phra/QBOQY3NYV+guZagMVxysVGIhhLELDQRzLidBlG8qSDcB85wznOe33nO//kLicROqKMSnrRm\
309ITcv2mIsQLfQv6rj0jW8ut45R5PDIOr/YtWrEI77mXTqtKsmWstBeG6a1OHyUIja/6rucxBLGbiE\
310RuHhle/WD0jJi/5OJDTDycHuAKTXQSxpEDGm8Oke7m6f+DxvDrRrZPzyaH/HAlG6AhXzZaIBg4VA\
311kMRadEBEgPJpXVzf5NhMxHp5pf/CYjBEpfRFLl8cObb3s4Z4LDz39qLfB13qqJENC2HXSMKddgwY\
312JosYm6oCZNJ7VBo1Lq/ue4njjQmEyw2zYcT8EmJlHeJbkNwG1QlAVogOoFSv8lb7sJDbJmgSkBJ+\
313O0uYJpimxX62v2BbRMVWNfAHT997IDXV+VUAAAAASUVORK5CYII="
314
315#define TPLHEADER "\
316<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\
317<HTML>\n\
318<HEAD>\n\
319 <TITLE>OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</TITLE>\n\
320 <meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-1\">\n\
321 <link rel=\"stylesheet\" type=\"text/css\" href=\"site.css\">\n\
322 <link href=\"favicon.ico\" rel=\"icon\" type=\"image/x-icon\">\n\
323##REFRESH##\
324 <script type=\"text/javascript\" src=\"oscam.js\"></script>\n\
325</HEAD>\n\
326<BODY ##ONLOADSCRIPT##>\n\
327 <DIV CLASS=\"header\"><H2 CLASS=\"headline1\">OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</H2></DIV>\n"
328
329#define TPLAPIHEADER "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\
330<oscam version=\"##CS_VERSION## build ###CS_SVN_VERSION##\" revision=\"##CS_SVN_VERSION##\" starttime=\"##APISTARTTIME##\" uptime=\"##APIUPTIME##\" readonly=\"##APIREADONLY##\">\n"
331
332#define TPLAPIERROR "##TPLAPIHEADER##\n\
333 <error>##APIERRORMESSAGE##</error>\n\
334##TPLAPIFOOTER##"
335
336#define TPLAPICONFIRMATION "##TPLAPIHEADER##\n\
337 <confirm>##APICONFIRMMESSAGE##</confirm>\n\
338##TPLAPIFOOTER##"
339
340#define TPLFOOTER "\
341 <BR><HR><BR>\n\
342 <DIV CLASS=\"footer\">\n\
343 <H4 CLASS=\"footline1\">OSCAM Webinterface developed by Streamboard Team - ##CURDATE## ##CURTIME## | Access from ##CURIP##</H4>\n\
344 <H4 CLASS=\"footline2\">Start: ##STARTDATE## - ##STARTTIME## | UpTime: ##UPTIME## | Process ID: ##PROCESSID##</H4>\n\
345 <H4 CLASS=\"styleauthor\">WebIf Style by </H4>\n\
346 </DIV>\n\
347</BODY>\n\
348</HTML>"
349
350#define TPLAPIFOOTER "</oscam>"
351
352#define TPLREFRESH "\
353 <script>\n\
354 <!--\n\
355 window.onload=setTimeout(function(){window.location.href=\"##REFRESHURL##\"},##REFRESHTIME## * 1000)\n\
356 //-->\n\
357 </script>\n"
358
359#define TPLHELPPREFIX "<A HREF=\"http://streamboard.gmc.to/wiki/index.php/OSCam/##LANGUAGE##/Config/oscam."
360
361#define TPLHELPSUFFIX "\" TARGET=\"_blank\">"
362
363#define TPLMENU "\
364 <TABLE border=0 class=\"menu\">\n\
365 <TR>\n\
366 <TD CLASS=\"menu\"><A HREF=\"status.html\">STATUS</A></TD>\n\
367 <TD CLASS=\"menu\"><A HREF=\"config.html\">CONFIGURATION</A></TD>\n\
368 <TD CLASS=\"menu\"><A HREF=\"readers.html\">READERS</A></TD>\n\
369 <TD CLASS=\"menu\"><A HREF=\"userconfig.html\">USERS</A></TD>\n\
370 <TD CLASS=\"menu\"><A HREF=\"services.html\">SERVICES</A></TD>\n\
371 <TD CLASS=\"menu\"><A HREF=\"files.html\">FILES</A></TD>\n\
372 <TD CLASS=\"menu\"><A HREF=\"failban.html\">FAILBAN</A></TD>\n\
373 <TD CLASS=\"script\"><A HREF=\"script.html\">SCRIPT</A></TD>\n\
374 <TD CLASS=\"shutdown\"><A HREF=\"shutdown.html\">SHUTDOWN</A></TD>\n\
375 </TR>\n\
376 </TABLE>\n"
377
378#define TPLCONFIGMENU "\
379 <BR><BR>\n\
380 <TABLE border=0 class=\"configmenu\">\n\
381 <TR>\n\
382 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=global\">Global</A></TD>\n\
383##TPLCONFIGMENULB##\
384##TPLCONFIGMENUCAMD33##\
385##TPLCONFIGMENUCAMD35##\
386##TPLCONFIGMENUCAMD35TCP##\
387##TPLCONFIGMENUNEWCAMD##\
388##TPLCONFIGMENURADEGAST##\
389##TPLCONFIGMENUCCCAM##\
390##TPLCONFIGMENUGBOX##\
391##TPLCONFIGMENUANTICASC##\
392 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=monitor\">Monitor</A></TD>\n\
393##TPLCONFIGMENUSERIAL##\
394##TPLCONFIGMENUDVBAPI##\
395 </TR>\n\
396 </TABLE>\n"
397
398#define TPLFILEMENU "\
399 <BR><BR>\n\
400 <TABLE border=0 class=\"configmenu\">\n\
401 <TR>\n\
402 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=version\">oscam.version</A></TD>\n\
403##TPLFILEMENUDVBAPI##\
404 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=conf\">oscam.conf</A></TD>\n\
405 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=user\">oscam.user</A></TD>\n\
406 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=server\">oscam.server</A></TD>\n\
407 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=services\">oscam.services</A></TD>\n\
408 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=srvid\">oscam.srvid</A></TD>\n\
409 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=provid\">oscam.provid</A></TD>\n\
410 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=tiers\">oscam.tiers</A></TD>\n\
411 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=logfile\">logfile</A></TD>\n\
412 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=userfile\">userfile</A></TD>\n\
413##TPLFILEMENUANTICASC##\
414 </TR>\n\
415 </TABLE>"
416
417#define TPLFILE "\
418##TPLHEADER##\
419##TPLMENU##\
420##TPLFILEMENU##\n\
421 <BR><BR>##SDEBUG####SLOG####SCLEAR##<BR>##FILTER##\n\
422 <FORM ACTION=\"files.html\" method=\"post\">\n\
423 <INPUT TYPE=\"hidden\" NAME=\"part\" VALUE=\"##PART##\">\n\
424 <TEXTAREA NAME=\"filecontent\" CLASS=\"editor\" rows=\"50\" cols=\"200\">##FILECONTENT##</TEXTAREA>\n\
425 <BR>##WRITEPROTECTION##<BR>\n\
426 <INPUT TYPE=\"submit\" NAME=\"action\" VALUE=\"Save\" TITLE=\"Save file\" ##BTNDISABLED##>\n\
427 </FORM>\n\
428##TPLFOOTER##"
429
430#ifdef WITH_DEBUG
431#define TPLDEBUGSELECT "\
432 <SPAN CLASS=\"debugt\"> Switch Debug from&nbsp;##ACTDEBUG## to&nbsp;</SPAN>\n\
433 <SPAN CLASS=\"debugl\"><A CLASS=\"debugl\" HREF=\"##NEXTPAGE##?debug=0##CUSTOMPARAM##\" title=\"no debugging (default)\">&nbsp;0&nbsp;</A></SPAN>\n\
434 <SPAN CLASS=\"debugl\"><A CLASS=\"##DCLASS1##\" HREF=\"##NEXTPAGE##?debug=##DEBUGVAL1####CUSTOMPARAM##\" title=\"detailed error messages\">&nbsp;1&nbsp;</A></SPAN>\n\
435 <SPAN CLASS=\"debugl\"><A CLASS=\"##DCLASS2##\" HREF=\"##NEXTPAGE##?debug=##DEBUGVAL2####CUSTOMPARAM##\" title=\"ATR parsing info, ECM dumps, CW dumps\">&nbsp;2&nbsp;</A></SPAN>\n\
436 <SPAN CLASS=\"debugl\"><A CLASS=\"##DCLASS4##\" HREF=\"##NEXTPAGE##?debug=##DEBUGVAL4####CUSTOMPARAM##\" title=\"traffic from/to the reader\">&nbsp;4&nbsp;</A></SPAN>\n\
437 <SPAN CLASS=\"debugl\"><A CLASS=\"##DCLASS8##\" HREF=\"##NEXTPAGE##?debug=##DEBUGVAL8####CUSTOMPARAM##\" title=\"traffic from/to the clients\">&nbsp;8&nbsp;</A></SPAN>\n\
438 <SPAN CLASS=\"debugl\"><A CLASS=\"##DCLASS16##\" HREF=\"##NEXTPAGE##?debug=##DEBUGVAL16####CUSTOMPARAM##\" title=\"traffic to the reader-device on IFD layer\">&nbsp;16&nbsp;</A></SPAN>\n\
439 <SPAN CLASS=\"debugl\"><A CLASS=\"##DCLASS32##\" HREF=\"##NEXTPAGE##?debug=##DEBUGVAL32####CUSTOMPARAM##\" title=\"traffic to the reader-device on I/O layer\">&nbsp;32&nbsp;</A></SPAN>\n\
440 <SPAN CLASS=\"debugl\"><A CLASS=\"##DCLASS64##\" HREF=\"##NEXTPAGE##?debug=##DEBUGVAL64####CUSTOMPARAM##\" title=\"EMM logging\">&nbsp;64&nbsp;</A></SPAN>\n\
441 <SPAN CLASS=\"debugl\"><A CLASS=\"##DCLASS128##\" HREF=\"##NEXTPAGE##?debug=##DEBUGVAL128####CUSTOMPARAM##\" title=\"DVBAPI logging\">&nbsp;128&nbsp;</A></SPAN>\n\
442 <SPAN CLASS=\"debugl\"><A CLASS=\"##DCLASS255##\" HREF=\"##NEXTPAGE##?debug=255##CUSTOMPARAM##\" title=\"debug all\">&nbsp;255&nbsp;</A></SPAN>\n"
443#endif
444
445#define TPLFAILBAN "\
446##TPLHEADER##\
447##TPLMENU##\
448 <BR><BR>\n\
449 <TABLE border=0 class=\"configmenu\">\n\
450 <TR>\n\
451 <TD CLASS=\"configmenu\"><A HREF=\"failban.html?action=delete&intip=all\">Clear all</TD>\n\
452 </TR>\n\
453 </TABLE>\
454 <BR><BR>\n\
455 <TABLE CLASS=\"stats\">\n\
456 <TR><TH colspan=\"5\">List of banned IP Addresses</TH></TR>\n\
457 <TR><TH>IP Address</TH><TH>Violation date</TH><TH>Violation count</TH><TH>left ban time</TH><TH>Action</TH></TR>\n\
458##FAILBANROW##\
459 </TABLE><BR>\n\
460##TPLFOOTER##"
461
462#define TPLFAILBANBIT "\
463 <TR>\n\
464 <TD>##IPADDRESS##</TD>\
465 <TD>##VIOLATIONDATE##</TD>\
466 <TD>##VIOLATIONCOUNT##</TD>\
467 <TD class=\"centered\">##LEFTTIME##</TD>\
468 <TD class=\"centered\"><A HREF=\"failban.html?action=delete&intip=##INTIP##\" TITLE=\"Delete Entry\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"image?i=ICDEL\" BORDER=\"0\" ALT=\"Delete Entry\"/></A></TD>\n\
469 </TR>\n"
470
471#ifdef CS_ANTICASC
472#define TPLCONFIGMENUANTICASC " <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=anticasc\">Anticascading</A></TD>\n"
473#define TPLFILEMENUANTICASC " <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=anticasc\">AC Log</A></TD>\n"
474#endif
475
476#ifdef HAVE_DVBAPI
477#define TPLCONFIGMENUDVBAPI " <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=dvbapi\">DVB-Api</A></TD>\n"
478#define TPLFILEMENUDVBAPI " <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=dvbapi\">oscam.dvbapi</A></TD>\n"
479#endif
480
481#ifdef WITH_LB
482#define TPLCONFIGMENULB " <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=loadbalancer\">Loadbalancer</A></TD>\n"
483#endif
484
485#ifdef MODULE_CAMD33
486#define TPLCONFIGMENUCAMD33 " <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=camd33\">Camd3.3</A></TD>\n"
487#endif
488
489#ifdef MODULE_CAMD35
490#define TPLCONFIGMENUCAMD35 " <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=camd35\">Camd3.5</A></TD>\n"
491#endif
492
493#ifdef MODULE_CAMD35_TCP
494#define TPLCONFIGMENUCAMD35TCP " <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=camd35tcp\">Camd3.5 TCP</A></TD>\n"
495#endif
496
497#ifdef MODULE_CCCAM
498#define TPLCONFIGMENUCCCAM " <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=cccam\">CCcam</A></TD>\n"
499#endif
500
501#ifdef MODULE_NEWCAMD
502#define TPLCONFIGMENUNEWCAMD " <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=newcamd\">Newcamd</A></TD>\n"
503#endif
504
505#ifdef MODULE_RADEGAST
506#define TPLCONFIGMENURADEGAST " <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=radegast\">Radegast</A></TD>\n"
507#endif
508
509#ifdef MODULE_SERIAL
510#define TPLCONFIGMENUSERIAL " <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=serial\">Serial</A></TD>\n"
511#endif
512
513#define TPLSTATUS "\
514##TPLHEADER##\
515##TPLMENU##\
516 <BR><BR>\n\
517 <form action=\"status.html\" method=\"get\">\n\
518 <select name=\"hideidle\">\n\
519 <option value=\"0\" ##HIDEIDLECLIENTSSELECTED0##>Show idle clients</option>\n\
520 <option value=\"1\" ##HIDEIDLECLIENTSSELECTED1##>Hide idle clients</option>\n\
521 <option value=\"2\">Show hidden clients</option>\n\
522 </select>\n\
523 <input type=\"submit\" value=\"Update\">\n\
524 </form>\n\
525 <TABLE WIDTH=\"100%\" class=\"status\">\n\
526 <TR>\n\
527 <TH class=\"statuscol0\">hide</TH>\n\
528 <TH class=\"statuscol1\">Thread ID</TH>\n\
529 <TH class=\"statuscol2\">Type</TH>\n\
530 <TH class=\"statuscol3\">ID</TH>\n\
531 <TH class=\"statuscol4\">Label</TH>\n\
532 <TH class=\"statuscol5\">AU</TH>\n\
533 <TH class=\"statuscol6\">Crypted</TH>\n\
534 <TH class=\"statuscol7\">Address</TH>\n\
535 <TH class=\"statuscol8\">Port</TH>\n\
536 <TH class=\"statuscol9\">Protocol</TH>\n\
537 <TH class=\"statuscol10\">Login</TH>\n\
538 <TH class=\"statuscol11\">Online</TH>\n\
539 <TH class=\"statuscol12\">CAID:SRVID</TH>\n\
540 <TH class=\"statuscol13\">Current Channel</TH>\n\
541 <TH class=\"statuscol14\">LB Value/ Reader</TH>\n\
542 <TH class=\"statuscol15\">Idle</TH>\n\
543 <TH class=\"statuscol16\">Status</TH>\n\
544 </TR>\n\
545##SERVERSTATUS##\n\
546##READERHEADLINE##\n\
547##READERSTATUS##\n\
548##PROXYHEADLINE##\n\
549##PROXYSTATUS##\n\
550##CLIENTHEADLINE##\n\
551##CLIENTSTATUS##\n\
552 </TABLE><BR>\n\
553 <DIV class=\"log\">\n\
554##LOGHISTORY##\
555 </DIV><BR>\n\
556##SDEBUG##\
557##TPLFOOTER##"
558
559#define TPLAPISTATUS "##TPLAPIHEADER##\n\
560 <status>\n\
561##APISTATUSBITS##\
562 </status>\n\
563 <log><![CDATA[ \n\
564 ##LOGHISTORY##\
565 ]]></log>\
566##TPLAPIFOOTER##"
567
568
569#define TPLCLIENTSTATUSBIT "\
570 <TR class=\"##CLIENTTYPE##\">\n\
571 <TD class=\"statuscol0\"><A HREF =\"status.html?hide=##HIDEIDX##\" TITLE=\"Hide this client\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"image?i=ICHID\" ALT=\"Hide\"></A></TD>\n\
572 <TD class=\"statuscol1\">##CSIDX##</TD>\n\
573 <TD class=\"statuscol2\">##CLIENTTYPE##</TD>\n\
574 <TD class=\"statuscol3\">##CLIENTCNR##</TD>\n\
575 <TD class=\"statuscol4\"><SPAN TITLE=\"##CLIENTDESCRIPTION##\">##CLIENTUSER##</SPAN></TD>\n\
576 <TD class=\"statuscol5\">##CLIENTCAUHTTP##</TD>\n\
577 <TD class=\"statuscol6\">##CLIENTCRYPTED##</TD>\n\
578 <TD class=\"statuscol7\">##CLIENTIP##</TD>\n\
579 <TD class=\"statuscol8\">##CLIENTPORT##</TD>\n\
580 <TD class=\"statuscol9\"><SPAN TITLE=\"##CLIENTPROTOTITLE##\">##CLIENTPROTO##</SPAN></TD>\n\
581 <TD class=\"statuscol10\">##CLIENTLOGINDATE##</TD>\n\
582 <TD class=\"statuscol11\">##CLIENTLOGINSECS##</TD>\n\
583 <TD class=\"statuscol12\">##CLIENTCAID##:##CLIENTSRVID##</TD>\n\
584 <TD class=\"statuscol13\">##CLIENTSRVPROVIDER####CLIENTSRVNAME##</TD>\n\
585 <TD class=\"statuscol14\">##CLIENTLBVALUE##</TD>\n\
586 <TD class=\"statuscol15\">##CLIENTIDLESECS##</TD>\n\
587 <TD class=\"statuscol16\">##CLIENTCON##</TD>\n\
588 </TR>\n"
589
590
591#define TPLAPISTATUSBIT " <client type=\"##CLIENTTYPE##\" name=\"##CLIENTUSER##\" protocol=\"##CLIENTPROTO##\" protocolext=\"##CLIENTPROTOTITLE##\" au=\"##CLIENTCAU##\">\n\
592 <request caid=\"##CLIENTCAID##\" srvid=\"##CLIENTSRVID##\" ecmtime=\"##CLIENTLASTRESPONSETIME##\" ecmhistory=\"##CLIENTLASTRESPONSETIMEHIST##\" answered=\"##LASTREADER##\">##CLIENTSRVPROVIDER####CLIENTSRVNAME##</request>\n\
593 <times login=\"##CLIENTLOGINDATE##\" online=\"##CLIENTLOGINSECS##\" idle=\"##CLIENTIDLESECS##\"></times>\n\
594 <connection ip=\"##CLIENTIP##\" port=\"##CLIENTPORT##\">##CLIENTCON##</connection>\n\
595 </client>\n"
596
597
598#define TPLAPIUSERCONFIGLIST "##TPLAPIHEADER##\n\
599 <users>\n\
600##APIUSERCONFIGS##\
601 </users>\n\
602 <totals>\n\
603 <cwok>##TOTAL_CWOK##</cwok>\n\
604 <cwnok>##TOTAL_CWNOK##</cwnok>\n\
605 <cwignore>##TOTAL_CWIGN##</cwignore>\n\
606 <cwtimeout>##TOTAL_CWTOUT##</cwtimeout>\n\
607 <cwcache>##TOTAL_CWCACHE##</cwcache>\n\
608 <cwtun>##TOTAL_CWTUN##</cwtun>\n\
609 </totals>\n\
610##TPLAPIFOOTER##"
611
612#define TPLAPIUSERCONFIGLISTBIT " <user name=\"##USER##\">\n\
613 <stats>\n\
614 <cwok>##CWOK##</cwok>\n\
615 <cwnok>##CWNOK##</cwnok>\n\
616 <cwignore>##CWIGN##</cwignore>\n\
617 <cwtimeout>##CWTOUT##</cwtimeout>\n\
618 <cwcache>##CWCACHE##</cwcache>\n\
619 <cwtun>##CWTUN##</cwtun>\n\
620 <cwlastresptime>##CWLASTRESPONSET##</cwlastresptime>\n\
621 <emmok>##EMMOK##</emmok>\n\
622 <emmnok>##EMMNOK##</emmnok>\n\
623 <cwrate>##CWRATE##</cwrate>\n\
624 </stats>\n\
625 </user>\n"
626
627
628#define TPLUSERCONFIGLIST "\
629##TPLHEADER##\
630##TPLMENU##\
631##MESSAGE##\
632 <BR>\n\
633 <TABLE CLASS=\"configmenu\">\n\
634 <TR>\n\
635 <TD CLASS=\"configmenu\"><A HREF=\"userconfig.html?part=adduser\">Add User</A></TD>\n\
636 <TD CLASS=\"configmenu\"><A HREF=\"userconfig.html?action=reinit\">Reinit User DB</A></TD>\n\
637 <TD CLASS=\"configmenu\"><A HREF=\"userconfig.html?action=resetalluserstats\">Reset Userstats</A></TD>\n\
638 </TR>\n\
639 </TABLE><BR>\n\
640 <TABLE CLASS=\"users\">\n\
641 <TR>\n\
642 <TH>Lock</TH>\n\
643 <TH>Label</TH>\n\
644 <TH>Status</TH>\n\
645 <TH>Address</TH>\n\
646 <TH>Protocol</TH>\n\
647 <TH>Last Channel</TH>\n\
648 <TH>Idle</TH>\n\
649 <TH>OK</TH>\n\
650 <TH>NOK</TH>\n\
651 <TH>IGN</TH>\n\
652 <TH>TOUT</TH>\n\
653 <TH>CACHE</TH>\n\
654 <TH>TUN</TH>\n\
655 <TH>LTIME</TH>\n\
656 <TH>EOK</TH>\n\
657 <TH>ENOK</TH>\n\
658 <TH>CW Rate</TH>\n\
659 <TH colspan=\"3\" class=\"centered\">Action</TH>\n\
660 </TR>\n\
661##USERCONFIGS##\
662##NEWUSERFORM##\
663 </TABLE><BR>\n\
664 Totals for the server:\n\
665 <TABLE cellpadding=\"10\">\n\
666 <TR>\n\
667 <TH>OK</TH>\n\
668 <TH>NOK</TH>\n\
669 <TH>IGN</TH>\n\
670 <TH>TOUT</TH>\n\
671 <TH>CACHE</TH>\n\
672 <TH>TUN</TH>\n\
673 <TH>Action</TH>\n\
674 </TR>\n\
675 <TR>\n\
676 <TD class=\"centered\">##TOTAL_CWOK##</TD>\n\
677 <TD class=\"centered\">##TOTAL_CWNOK##</TD>\n\
678 <TD class=\"centered\">##TOTAL_CWIGN##</TD>\n\
679 <TD class=\"centered\">##TOTAL_CWTOUT##</TD>\n\
680 <TD class=\"centered\">##TOTAL_CWCACHE##</TD>\n\
681 <TD class=\"centered\">##TOTAL_CWTUN##</TD>\n\
682 <TD class=\"centered\"><A HREF=\"userconfig.html?action=resetserverstats\" TITLE=\"reset statistics for server\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"image?i=ICRES\"BORDER=\"0\" ALT=\"Reset Server Stats\"></A></TD>\n\
683 </TR>\n\
684 </TABLE><BR>\n\
685##TPLFOOTER##"
686
687#define TPLADDNEWUSER "\
688 <TR>\n\
689 <FORM action=\"user_edit.html\" method=\"get\">\n\
690 <TD>&nbsp;</TD>\n\
691 <TD colspan=\"6\">New User:&nbsp;&nbsp;<input name=\"user\" type=\"text\">&nbsp;&nbsp;&nbsp;<input type=\"submit\" value=\"Add User\" ##BTNDISABLED##></TD>\n\
692 <TD colspan=\"10\" class=\"centered\"></TD>\n\
693 </FORM>\n\
694 <TR>\n"
695
696#define TPLUSERCONFIGLISTBIT "\
697 <TR class=\"##CLASSNAME##\">\n\
698 <TD class=\"centered\"><A HREF=\"userconfig.html?user=##USERENC##&amp;action=##SWITCH##\" TITLE=\"##SWITCHTITLE##\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"##SWITCHICO##\"BORDER=\"0\" ALT=\"##SWITCHTITLE##\"></A></TD>\n\
699 <TD><SPAN TITLE=\"##DESCRIPTION##\">##USER##</SPAN></TD>\n\
700 <TD>##STATUS##</TD>\n\
701 <TD>##CLIENTIP##</TD>\n\
702 <TD class=\"centered\"><SPAN TITLE=\"##CLIENTPROTOTITLE##\">##CLIENTPROTO##</SPAN></TD>\n\
703 <TD>##LASTCHANNEL##</TD>\n\
704 <TD class=\"centered\">##IDLESECS##</TD>\n\
705 <TD class=\"centered\">##CWOK##</TD>\n\
706 <TD class=\"centered\">##CWNOK##</TD>\n\
707 <TD class=\"centered\">##CWIGN##</TD>\n\
708 <TD class=\"centered\">##CWTOUT##</TD>\n\
709 <TD class=\"centered\">##CWCACHE##</TD>\n\
710 <TD class=\"centered\">##CWTUN##</TD>\n\
711 <TD class=\"centered\">##CWLASTRESPONSET##</TD>\n\
712 <TD class=\"centered\">##EMMOK##</TD>\n\
713 <TD class=\"centered\">##EMMNOK##</TD>\n\
714 <TD class=\"centered\">##CWRATE####CWRATE2##</TD>\n\
715 <TD class=\"centered\"><A HREF=\"user_edit.html?user=##USERENC##\" TITLE=\"edit this user\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"image?i=ICEDI\" BORDER=\"0\" ALT=\"Edit User\"></A></TD>\n\
716 <TD class=\"centered\"><A HREF=\"userconfig.html?user=##USERENC##&amp;action=resetstats\" TITLE=\"reset statistics for this user\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"image?i=ICRES\"BORDER=\"0\" ALT=\"Reset Stats\"></A></TD>\n\
717 <TD class=\"centered\"><A HREF=\"userconfig.html?user=##USERENC##&amp;action=delete\" TITLE=\"delete this user\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"image?i=ICDEL\"BORDER=\"0\" ALT=\"Delete User\"></A></TD>\n\
718 </TR>\n"
719
720#define TPLUSEREDIT "\
721##TPLHEADER##\
722##TPLMENU##\
723 <DIV CLASS=\"message\">##MESSAGE##</DIV>\
724 <BR><BR>\n\
725 <form action=\"user_edit.html\" method=\"get\">\n\
726 <input name=\"user\" type=\"hidden\" value=\"##USERNAME##\">\n\
727 <TABLE CLASS=\"config\">\n\
728 <TR><TH>&nbsp;</TH> <TH>Edit User ##USERNAME##</TH></TR>\n\
729 <TR><TD>##TPLHELPPREFIX##user#pwd##TPLHELPSUFFIX##Password:</A></TD><TD><input name=\"pwd\" type=\"text\" size=\"63\" maxlength=\"63\" value=\"##PASSWORD##\"></TD></TR>\n\
730 <TR><TD>##TPLHELPPREFIX##user#description##TPLHELPSUFFIX##Description:</A></TD><TD><input name=\"description\" type=\"text\" size=\"63\" maxlength=\"63\" value=\"##DESCRIPTION##\"></TD></TR>\n\
731 <TR><TD>##TPLHELPPREFIX##user#disabled##TPLHELPSUFFIX##Disabled:</A></TD><TD><SELECT NAME=\"disabled\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##DISABLEDCHECKED##>YES</OPTION></SELECT></TD></TR>\n\
732 <TR><TD>##TPLHELPPREFIX##user#expdate##TPLHELPSUFFIX##Exp. Date:</A></TD><TD><input name=\"expdate\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##EXPDATE##\"></TD></TR>\n\
733 <TR><TD>##TPLHELPPREFIX##user#failban##TPLHELPSUFFIX##Failban:</A></TD><TD><input name=\"failban\" type=\"text\" size=\"2\" maxlength=\"1\" value=\"##FAILBAN##\"></TD></TR>\n\
734 <TR><TD>##TPLHELPPREFIX##user#allowedtimeframe##TPLHELPSUFFIX##Allowed Timeframe:</A></TD><TD><input name=\"allowedtimeframe\" type=\"text\" size=\"15\" maxlength=\"11\" value=\"##ALLOWEDTIMEFRAME##\">&nbsp;(hh:mm-hh:mm)</TD></TR>\n\
735 <TR><TD>##TPLHELPPREFIX##user#group##TPLHELPSUFFIX##Group:</A></TD><TD><input name=\"group\" type=\"text\" size=\"20\" maxlength=\"100\" value=\"##GROUPS##\"></TD></TR>\n\
736 <TR><TD>##TPLHELPPREFIX##user#hostname##TPLHELPSUFFIX##Hostname:</A></TD><TD><input name=\"hostname\" type=\"text\" size=\"63\" maxlength=\"63\" value=\"##DYNDNS##\"></TD></TR>\n\
737 <TR><TD>##TPLHELPPREFIX##user#uniq##TPLHELPSUFFIX##Uniq:</A></TD>\n\
738 <TD>\n\
739 <select name=\"uniq\">\n\
740 <option value=\"0\" ##UNIQSELECTED0##>0 - none</option>\n\
741 <option value=\"1\" ##UNIQSELECTED1##>1 - strict first</option>\n\
742 <option value=\"2\" ##UNIQSELECTED2##>2 - per IP</option>\n\
743 <option value=\"3\" ##UNIQSELECTED3##>3 - strict last</option>\n\
744 <option value=\"4\" ##UNIQSELECTED4##>4 - per IP last</option>\n\
745 </select>\n\
746 </TD>\n\
747 </TR>\n\
748 <TR><TD>##TPLHELPPREFIX##user#sleep##TPLHELPSUFFIX##Sleep:</A></TD><TD><input name=\"sleep\" type=\"text\" size=\"4\" maxlength=\"4\" value=\"##SLEEP##\"></TD></TR>\n\
749 <TR><TD>##TPLHELPPREFIX##user#monlevel##TPLHELPSUFFIX##Monlevel:</A></TD>\n\
750 <TD>\n\
751 <select name=\"monlevel\">\n\
752 <option value=\"0\" ##MONSELECTED0##>0 - no access to monitor</option>\n\
753 <option value=\"1\" ##MONSELECTED1##>1 - only server and own procs</option>\n\
754 <option value=\"2\" ##MONSELECTED2##>2 - all procs, but viewing only, default</option>\n\
755 <option value=\"3\" ##MONSELECTED3##>3 - all procs, reload of oscam.user possible</option>\n\
756 <option value=\"4\" ##MONSELECTED4##>4 - complete access</option>\n\
757 </select>\n\
758 </TD>\n\
759 </TR>\n\
760 <TR><TD>##TPLHELPPREFIX##user#au##TPLHELPSUFFIX##AU:</A></TD><TD><input name=\"au\" type=\"text\" size=\"63\" maxlength=\"63\" value=\"##AUREADER##\"></TD></TR>\n\
761 <TR><TD>##TPLHELPPREFIX##user#services##TPLHELPSUFFIX##Services:</A></TD>\n\
762 <TD>\n\
763 <TABLE class=\"invisible\">\n\
764##SIDS##\
765 </TABLE>\n\
766 </TD>\n\
767 </TR>\n\
768 <TR><TD>##TPLHELPPREFIX##user#caid##TPLHELPSUFFIX##CAID:</A></TD><TD><input name=\"caid\" type=\"text\" size=\"63\" maxlength=\"160\" value=\"##CAIDS##\"></TD></TR>\n\
769 <TR><TD>##TPLHELPPREFIX##user#ident##TPLHELPSUFFIX##Ident:</A></TD><TD><textarea name=\"ident\" cols=\"58\" rows=\"3\" class=\"bt\">##IDENTS##</textarea></TD></TR>\n\
770 <TR><TD>##TPLHELPPREFIX##user#chid##TPLHELPSUFFIX##CHID:</A></TD><TD><textarea name=\"chid\" cols=\"58\" rows=\"3\" class=\"bt\">##CHIDS##</textarea></TD></TR>\n\
771 <TR><TD>##TPLHELPPREFIX##user#class##TPLHELPSUFFIX##Class:</A></TD><TD><input name=\"class\" type=\"text\" size=\"63\" maxlength=\"150\" value=\"##CLASS##\"></TD></TR>\n\
772 <TR><TD>##TPLHELPPREFIX##user#betatunnel##TPLHELPSUFFIX##Betatunnel:</A></TD><TD><textarea name=\"betatunnel\" cols=\"58\" rows=\"3\" class=\"bt\">##BETATUNNELS##</textarea></TD></TR>\n\
773 <TR><TD>##TPLHELPPREFIX##user#suppresscmd08##TPLHELPSUFFIX##Suppresscmd08:</A></TD><TD><SELECT NAME=\"suppresscmd08\"><OPTION VALUE=\"0\">CMD08 active</OPTION><OPTION VALUE=\"1\" ##SUPPRESSCMD08##>CMD08 suppressed</OPTION></SELECT></TD></TR>\n\
774 <TR><TD>##TPLHELPPREFIX##user#sleepsend##TPLHELPSUFFIX##Sleepsend:</A></TD><TD><input name=\"sleepsend\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##SLEEPSEND##\"> 0 or 255</TD></TR>\n\
775##TPLUSEREDITANTICASC##\
776 <TR class=\"usrcfg_cccam\"><TD>##TPLHELPPREFIX##user#cccmaxhops##TPLHELPSUFFIX##CCC Maxhops:</A></TD><TD><input name=\"cccmaxhops\" type=\"text\" size=\"3\" maxlength=\"2\" value=\"##CCCMAXHOPS##\"></TD></TR>\n\
777 <TR class=\"usrcfg_cccam\"><TD>##TPLHELPPREFIX##user#cccreshare##TPLHELPSUFFIX##CCC Reshare:</A></TD><TD><input name=\"cccreshare\" type=\"text\" size=\"3\" maxlength=\"2\" value=\"##CCCRESHARE##\"></TD></TR>\n\
778 <TR class=\"usrcfg_cccam\"><TD>##TPLHELPPREFIX##user#cccignorereshare##TPLHELPSUFFIX##CCC Ignore reshare:</A></TD><TD><SELECT NAME=\"cccignorereshare\"><OPTION VALUE=\"0\">OFF</OPTION><OPTION VALUE=\"1\" ##CCCIGNORERESHARE##>ON</OPTION></SELECT></TD></TR>\n\
779 <TR class=\"usrcfg_cccam\"><TD>##TPLHELPPREFIX##user#cccstealth##TPLHELPSUFFIX##CCC stealth:</A></TD><TD><SELECT NAME=\"cccstealth\"><OPTION VALUE=\"0\">OFF</OPTION><OPTION VALUE=\"1\" ##CCCSTEALTH##>ON</OPTION></SELECT></TD></TR>\n\
780 <TR><TD>##TPLHELPPREFIX##user#keepalive##TPLHELPSUFFIX##Keepalive:</A></TD><TD><SELECT NAME=\"keepalive\"><OPTION VALUE=\"0\">OFF</OPTION><OPTION VALUE=\"1\" ##KEEPALIVE##>ON</OPTION></SELECT></TD></TR>\n\
781 <TR>\n\
782 <TD class=\"centered\"><input type=\"submit\" name=\"action\" value=\"Save\" title=\"Save settings and reload users\" ##BTNDISABLED##></TD>\n\
783 <TD class=\"centered\"><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\" ##BTNDISABLED##></TD>\n\
784 </TR>\n\
785 </TABLE>\n\
786 </form>\n\
787##TPLFOOTER##"
788
789#define TPLUSEREDITRDRSELECTED " <option value=\"##READERNAME##\" ##SELECTED##>##READERNAME##</option>"
790
791#define TPLUSEREDITSIDOKBIT "\
792 <TR>\n\
793 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"##SIDLABEL##\" ##CHECKED##> ##SIDLABEL##</TD>\n"
794
795#define TPLUSEREDITSIDNOBIT "\
796 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"!##SIDLABEL##\" ##CHECKED##> !##SIDLABEL##</TD>\n\
797 </TR>\n"
798
799#ifdef CS_ANTICASC
800# define TPLUSEREDITANTICASC "\
801 <TR class=\"usrcfg_anticasc\"><TD>##TPLHELPPREFIX##user#numusers##TPLHELPSUFFIX##Anticascading numusers:</A></TD><TD><input name=\"numusers\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##AC_USERS##\"></TD></TR>\n\
802 <TR class=\"usrcfg_anticasc\"><TD>##TPLHELPPREFIX##user#penalty##TPLHELPSUFFIX##Anticascading penalty:</A></TD>\
803 <TD>\
804 <select name=\"penalty\">\n\
805 <option value=\"0\" ##PENALTY0##>0 - Only write to log</option>\n\
806 <option value=\"1\" ##PENALTY1##>1 - Fake DW</option>\n\
807 <option value=\"2\" ##PENALTY2##>2 - Ban</option>\n\
808 <option value=\"3\" ##PENALTY3##>3 - Fake DW delayed</option>\n\
809 </select>\n\
810 </TD></TR>\n"
811#endif
812
813#define TPLSIDTAB "\
814##TPLHEADER##\
815##TPLMENU##\
816 <BR><BR><DIV class=\"log\">\n\
817##SIDTABS##\
818 </DIV>\n\
819##TPLFOOTER##"
820
821#define TPLSIDTABBIT "\
822 label=##LABEL##<BR>\n\
823 caid(##CAIDNUM##)=##CAIDS##<BR>\n\
824 provider(##PROVIDNUM##)=##PROVIDS##<BR>\n\
825 services(##SRVIDNUM##)=##SRVIDS##<BR><BR>\n"
826
827#define TPLREADERS "\
828##TPLHEADER##\
829##TPLMENU##\
830 <BR><BR>\n\
831 <TABLE CLASS=\"configmenu\"><TR><TD CLASS=\"configmenu\"><A HREF=\"scanusb.html\">Scan USB</A></TD></TR></TABLE><BR>\
832 <form action=\"readerconfig.html\" method=\"get\">\n\
833 <TABLE CLASS=\"readers\">\n\
834 <TR>\n\
835 <TH>Lock</TH>\n\
836 <TH>Reader</TH>\n\
837 <TH>Protocol</TH>\n\
838 <TH>EMM error<br><span title=\"unknown EMM\"> UK </span>/<span title=\"global EMM\"> G </span>/<span title=\"shared EMM\"> S </span>/<span title=\"unique EMM\"> UQ </span></TH>\n\
839 <TH>EMM written<br><span title=\"unknown EMM\"> UK </span>/<span title=\"global EMM\"> G </span>/<span title=\"shared EMM\"> S </span>/<span title=\"unique EMM\"> UQ </span></TH>\n\
840 <TH>EMM skipped<br><span title=\"unknown EMM\"> UK </span>/<span title=\"global EMM\"> G </span>/<span title=\"shared EMM\"> S </span>/<span title=\"unique EMM\"> UQ </span></TH>\n\
841 <TH>EMM blocked<br><span title=\"unknown EMM\"> UK </span>/<span title=\"global EMM\"> G </span>/<span title=\"shared EMM\"> S </span>/<span title=\"unique EMM\"> UQ </span></TH>\n\
842 <TH COLSPAN=\"5\">Action</TH>\n\
843 </TR>\n\
844##READERLIST##\n\
845 <TR>\n\
846 <TD>&nbsp;</TD>\
847 <TD COLSPAN=\"2\" class=\"centered\">New Reader</TD>\n\
848 <TD COLSPAN=\"2\" class=\"centered\">Label:&nbsp;&nbsp;<input type=\"text\" name=\"label\" value=\"##NEXTREADER##\"></TD>\n\
849 <TD COLSPAN=\"2\" class=\"centered\">Protocol:&nbsp;&nbsp;\n\
850 <select name=\"protocol\">\n\
851 <option>mouse</option>\n\
852 <option>mp35</option>\n\
853 <option>smartreader</option>\n\
854 <option>internal</option>\n\
855 <option>sc8in1</option>\n\
856 <option>serial</option>\n\
857 <option>camd35</option>\n\
858 <option>cs378x</option>\n\
859 <option>radegast</option>\n\
860 <option>newcamd</option>\n\
861 <option>newcamd524</option>\n\
862 <option>cccam</option>\n\
863 <option>constcw</option>\n\
864##ADDPROTOCOL##\n\
865 </select>\n\
866 </TD>\n\
867 <TD COLSPAN=\"5\" class=\"centered\"><input type=\"submit\" name=\"action\" value=\"Add\" ##BTNDISABLED##></TD>\n\
868 </TR>\n\
869 </TABLE>\n\
870 </form>\n\
871##TPLFOOTER##"
872
873#define TPLREADERSBIT "\
874 <TR CLASS =\"##READERCLASS##\">\n\
875 <TD class=\"centered\"><A HREF=\"readers.html?label=##READERNAMEENC##&amp;action=##SWITCH##\" TITLE=\"##SWITCHTITLE##\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"##SWITCHICO##\"BORDER=\"0\" ALT=\"##SWITCHTITLE##\"></A></TD>\n\
876 <TD>##READERNAME##</TD>\n\
877 <TD>##CTYP##</TD>\n\
878 <TD class=\"centered\">##EMMERRORUK## / ##EMMERRORG## / ##EMMERRORS## / ##EMMERRORUQ##</TD>\n\
879 <TD class=\"centered\">##EMMWRITTENUK## / ##EMMWRITTENG## / ##EMMWRITTENS## / ##EMMWRITTENUQ##</TD>\n\
880 <TD class=\"centered\">##EMMSKIPPEDUK## / ##EMMSKIPPEDG## / ##EMMSKIPPEDS## / ##EMMSKIPPEDUQ##</TD>\n\
881 <TD class=\"centered\">##EMMBLOCKEDUK## / ##EMMBLOCKEDG## / ##EMMBLOCKEDS## / ##EMMBLOCKEDUQ##</TD>\n\
882 <TD class=\"centered\"><A HREF=\"readerconfig.html?label=##READERNAMEENC##\" TITLE=\"Edit this Reader\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"image?i=ICEDI\" BORDER=\"0\" ALT=\"Edit Reader\"></A></TD>\n\
883 <TD class=\"centered\">##ENTITLEMENT##</TD>\n\
884 <TD class=\"centered\">##READERREFRESH##</TD>\n\
885 <TD class=\"centered\"><A HREF=\"readerstats.html?label=##READERNAMEENC##&amp;hide=4\" TITLE=\"Show loadbalancer statistics\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"image?i=ICSTA\" BORDER=\"0\" ALT=\"Loadbalancer statistics\"></A></TD>\n\
886 <TD class=\"centered\"><A HREF=\"readers.html?label=##READERNAMEENC##&amp;action=delete\" TITLE=\"Delete this Reader\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"image?i=ICDEL\" BORDER=\"0\" ALT=\"Delete Reader\"></A></TD>\n\
887 </TR>\n"
888
889#define TPLREADERENTITLEBIT "<A HREF=\"entitlements.html?label=##READERNAMEENC##\" TITLE=\"Show Entitlement\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"##ENTICO##\" BORDER=\"0\" ALT=\"Show Entitlement\"></A>"
890
891#define TPLREADERREFRESHBIT "<A HREF=\"readers.html?action=reread&amp;label=##READERNAMEENC##\" TITLE=\"Refresh Entitlement\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"##REFRICO##\" BORDER=\"0\" ALT=\"Reset and reload Entitlement\"></A>"
892
893#define TPLREADERSTATS "\
894##TPLHEADER##\
895##TPLMENU##\
896 <DIV CLASS=\"message\">##MESSAGE##</DIV>\
897 <BR><BR>\n\
898 <TABLE border=0 class=\"configmenu\">\n\
899 <TR>\n\
900 <TD CLASS=\"configmenu\"><A HREF=\"readerstats.html?label=##ENCODEDLABEL##&amp;hide=-1\">show all</A></TD>\n\
901 <TD CLASS=\"configmenu\"><A HREF=\"readerstats.html?label=##ENCODEDLABEL##&amp;hide=4\">hide 'not found'</A></TD>\n\
902 <TD CLASS=\"configmenu\"><A HREF=\"readerstats.html?label=##ENCODEDLABEL##&amp;action=resetstat\">reset statistics</A>\
903 </TR>\n\
904 </TABLE>\n\
905 <BR><BR>\n\
906 <TABLE CLASS=\"stats\">\n\
907 <TR><TH colspan=\"8\"> Loadbalance statistics for reader ##LABEL##</TH></TR>\n\
908 <TR><TH>Channel</TH><TH>Channelname</TH><TH>ECM Length</TH><TH>Result</TH><TH>Avg-Time</TH><TH>Last-Time</TH><TH>Count</TH><TH>Last checked/ found</TH></TR>\n\
909##READERSTATSROWFOUND##\
910##READERSTATSNFHEADLINE##\
911##READERSTATSROWNOTFOUND##\
912 </TABLE>\n\
913 <br>Total ECM count: ##TOTALECM##<br>\n\
914##TPLFOOTER##"
915
916#define TPLREADERSTATSBIT "\
917 <TR><TD>##CHANNEL##</TD>\
918 <TD>##CHANNELNAME##</TD>\
919 <TD class=\"centered\">##ECMLEN##</TD>\
920 <TD class=\"centered\">##RC##</TD>\
921 <TD class=\"centered\">##TIME##</TD>\
922 <TD class=\"centered\">##TIMELAST##</TD>\
923 <TD class=\"centered\">##COUNT##</TD>\
924 <TD class=\"centered\">##LAST##</TD></TR>\n"
925
926#define TPLSCANUSB "\
927##TPLHEADER##\
928##TPLMENU##\
929 <DIV CLASS=\"message\">##MESSAGE##</DIV>\
930 <BR><BR>\n\
931 <TABLE cellpadding=\"10\">\n\
932 <TR><TH>USB Devices</TH></TR>\n\
933##USBBIT##\n\
934 </TABLE>\n\
935##TPLFOOTER##"
936
937#define TPLSCANUSBBIT " <TR ##USBENTRYCLASS##><TD>##USBENTRY##</TD></TR>\n"
938
939#define TPLENTITLEMENTS "\
940##TPLHEADER##\
941##TPLMENU##\
942 <DIV CLASS=\"message\">##MESSAGE##</DIV>\
943 <BR><BR>Entitlements for ##READERNAME##<BR><BR>\n\
944##ENTITLEMENTCONTENT##\
945##TPLFOOTER##"
946
947#define TPLENTITLEMENTGENERICBIT "\
948 <DIV class=\"log\">\n\
949##LOGSUMMARY##\n\
950##LOGHISTORY##\n\
951 </DIV>\n"
952
953#define TPLENTITLEMENTCCCAMBIT "\
954 <TABLE CLASS=\"stats\">\
955 <TR><TH>Host</TH><TH>Caid</TH><TH>System</TH><TH>Type</TH><TH>share id</TH><TH>remote id</TH><TH>Uphops</TH><TH>Reshare</TH><TH>Providers</TH><TH>Nodes</TH><TH>Good sids</TH><TH>Bad sids</TH></TR>\
956##CCCAMSTATSENTRY##\
957 </TABLE>\n\
958 <BR><DIV CLASS=\"cccamentitlementtotals\">##TOTALS##</DIV>\
959 <BR><DIV CLASS=\"cccamentitlementcontrols\">##CONTROLS##</DIV>"
960
961#define TPLENTITLEMENTCCCAMENTRYBIT "\
962 <TR><TD>##HOST##</TD><TD>##CAID##</TD><TD>##SYSTEM##</TD><TD>##CARDTYPE##</TD><TD>##SHAREID##</TD><TD>##REMOTEID##</TD><TD>##UPHOPS##</TD><TD>##MAXDOWN##</TD><TD>##PROVIDERS##</TD><TD>##NODES##</TD><TD>##SERVICESGOOD##</TD><TD>##SERVICESBAD##</TD></TR>"
963
964#define TPLAPICCCAMCARDLIST "##TPLAPIHEADER##\
965 <reader label=\"##READERNAME##\" hostaddress=\"##APIHOST##\" hostport=\"##APIHOSTPORT##\">\n\
966 <cardlist totalcards=\"##APITOTALCARDS##\">\n\
967##CARDLIST##\n\
968 </cardlist>\n\
969 </reader>\n\
970##TPLAPIFOOTER##"
971
972#define TPLAPICCCAMCARDBIT " <card number=\"##APICARDNUMBER##\" caid=\"##APICAID##\" system=\"##SYSTEM##\" \
973reshare=\"##MAXDOWN##\" hop=\"##UPHOPS##\">\n\
974 <shareid>##SHAREID##</shareid>\n\
975 <remoteid>##REMOTEID##</remoteid>\n\
976 <providers totalproviders=\"##APITOTALPROVIDERS##\">\n\
977##PROVIDERLIST##\n\
978 </providers>\n\
979 <nodes totalnodes=\"##APITOTALNODES##\">\n\
980##NODELIST##\n\
981 </nodes>\n\
982 </card>\n"
983
984#define TPLAPICCCAMCARDPROVIDERBIT " <provider number=\"##APIPROVIDERNUMBER##\" sa=\"##APIPROVIDERSA##\" \
985caid=\"##APIPROVIDERCAID##\" \
986provid=\"##APIPROVIDERPROVID##\">##APIPROVIDERNAME##</provider>\n"
987
988#define TPLAPICCCAMCARDNODEBIT " <node number=\"##APINODENUMBER##\">##APINODE##</node>\n"
989
990#define TPLAPIREADERSTATS "##TPLAPIHEADER##\
991 <reader label=\"##READERNAME##\">\n\
992 <emmstats totalwritten=\"##TOTALWRITTEN##\" totalskipped=\"##TOTALSKIPPED##\" totalblocked=\"##TOTALBLOCKED##\" totalerror=\"##TOTALERROR##\">\n\
993##EMMSTATS##\n\
994 </emmstats>\n\
995 <ecmstats count=\"##ROWCOUNT##\" totalecm=\"##TOTALECM##\" lastaccess=\"##LASTACCESS##\">\n\
996##ECMSTATS##\n\
997 </ecmstats>\n\
998 </reader>\n\
999##TPLAPIFOOTER##"
1000
1001#define TPLAPIREADERSTATSEMMBIT " <emm type=\"##EMMTYPE##\" result=\"##EMMRESULT##\">##EMMCOUNT##</emm>\n"
1002
1003#define TPLAPIREADERSTATSECMBIT " <ecm caid=\"##ECMCAID##\" provid=\"##ECMPROVID##\" srvid=\"##ECMSRVID##\"\
1004 channelname=\"##ECMCHANNELNAME##\" avgtime=\"##ECMTIME##\" lasttime=\"##ECMTIMELAST##\" rc=\"##ECMRC##\" rcs=\"##ECMRCS##\" lastrequest=\"##ECMLAST##\">##ECMCOUNT##</ecm>\n"
1005
1006#define TPLREADERCONFIG "\
1007##TPLHEADER##\
1008##TPLMENU##\
1009 <BR><BR>\n\
1010##MESSAGE##\n\
1011 <form action=\"readerconfig.html?action=execute\" method=\"get\">\n\
1012 <input name=\"label\" type=\"hidden\" value=\"##READERNAME##\">\n\
1013 <input name=\"protocol\" type=\"hidden\" value=\"##PROTOCOL##\">\n\
1014 <TABLE CLASS=\"config\">\n\
1015 <TR><TH COLSPAN=\"2\">Edit Reader ##READERNAME##</TH></TR>\n\
1016 <TR><TH>&nbsp;</TH><TH>Reader general settings</TH></TR>\n\
1017 <TR><TD>##TPLHELPPREFIX##server#enable##TPLHELPSUFFIX##Enable:</A></TD><TD><input name=\"enable\" type=\"hidden\" value=\"0\"><input name=\"enable\" type=\"checkbox\" value=\"1\" ##ENABLED##></TD></TR>\n\
1018 <TR><TD>##TPLHELPPREFIX##server#device##TPLHELPSUFFIX##Device:</A></TD><TD><input name=\"device\" type=\"text\" size=\"63\" maxlength=\"127\" value=\"##DEVICE##\"></TD></TR>\n\
1019 <TR><TD>##TPLHELPPREFIX##server#group##TPLHELPSUFFIX##Group:</A></TD><TD><input name=\"group\" type=\"text\" size=\"20\" maxlength=\"100\" value=\"##GRP##\"></TD></TR>\n\
1020 <TR><TD>##TPLHELPPREFIX##server#fallback##TPLHELPSUFFIX##Fallback:</A></TD><TD><input name=\"fallback\" type=\"hidden\" value=\"0\"><input name=\"fallback\" type=\"checkbox\" value=\"1\" ##FALLBACKCHECKED##></TD></TR>\n\
1021 <TR><TD>##TPLHELPPREFIX##server#lb_weight##TPLHELPSUFFIX##Loadbalance weight:</A></TD><TD><input name=\"lb_weight\" type=\"text\" size=\"5\" maxlength=\"4\" value=\"##LBWEIGHT##\"></TD></TR>\n\
1022 <TR><TD>##TPLHELPPREFIX##server#caid##TPLHELPSUFFIX##Caid:</A></TD><TD><input name=\"caid\" type=\"text\" size=\"63\" maxlength=\"160\" value=\"##CAIDS##\"></TD></TR>\n\
1023 <TR><TD>##TPLHELPPREFIX##server#ident##TPLHELPSUFFIX##Ident:</A></TD><TD><textarea name=\"ident\" cols=\"58\" rows=\"3\" class=\"bt\">##IDENTS##</textarea></TD></TR>\n\
1024 <TR><TD>##TPLHELPPREFIX##server#chid##TPLHELPSUFFIX##CHID:</A></TD><TD><textarea name=\"chid\" cols=\"58\" rows=\"3\" class=\"bt\">##CHIDS##</textarea></TD></TR>\n\
1025 <TR><TD>##TPLHELPPREFIX##server#class##TPLHELPSUFFIX##Class:</A></TD><TD><input name=\"class\" type=\"text\" size=\"63\" maxlength=\"150\" value=\"##CLASS##\"></TD></TR>\n\
1026 <TR><TD>##TPLHELPPREFIX##server#services##TPLHELPSUFFIX##Services:</A></TD>\n\
1027 <TD>\n\
1028 <TABLE class=\"invisible\">\n\
1029##SIDS##\
1030 </TABLE>\n\
1031 </TD>\n\
1032 </TR>\n\
1033 <TR><TD>##TPLHELPPREFIX##server#audisabled##TPLHELPSUFFIX##AU disabled:</A></TD><TD><input name=\"audisabled\" type=\"hidden\" value=\"0\"><input name=\"audisabled\" type=\"checkbox\" value=\"1\" ##AUDISABLED##></TD></TR>\n\
1034 <TR><TD>##TPLHELPPREFIX##server#auprovid##TPLHELPSUFFIX##AU Provid:</A></TD><TD><input name=\"auprovid\" type=\"text\" size=\"10\" maxlength=\"6\" value=\"##AUPROVID##\"></TD></TR>\n\
1035 <TR><TD>##TPLHELPPREFIX##server#emmcache##TPLHELPSUFFIX##Emmcache:</A></TD><TD><input name=\"emmcache\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##EMMCACHE##\"></TD></TR>\n\
1036 <TR><TD>##TPLHELPPREFIX##server#ecmwhitelist##TPLHELPSUFFIX##ECM whitelist:</A></TD><TD><textarea name=\"ecmwhitelist\" cols=\"58\" rows=\"2\" class=\"bt\">##ECMWHITELIST##</textarea></TD></TR>\n\
1037 <TR><TD>##TPLHELPPREFIX##server#blockemm-u##TPLHELPSUFFIX##Blockemm:</A></TD>\n\
1038 <TD>\n\
1039 <TABLE class=\"invisible\">\n\
1040 <TR><TD class=\"centered\">unknown</TD><TD class=\"centered\">unique</TD><TD class=\"centered\">shared</TD><TD class=\"centered\">global</TD></TR>\n\
1041 <TR>\n\
1042 <TD class=\"centered\"><input name=\"blockemm-unknown\" type=\"hidden\" value=\"0\"><input name=\"blockemm-unknown\" type=\"checkbox\" value=\"1\" ##BLOCKEMMUNKNOWNCHK##></TD>\n\
1043 <TD class=\"centered\"><input name=\"blockemm-u\" type=\"hidden\" value=\"0\"><input name=\"blockemm-u\" type=\"checkbox\" value=\"1\" ##BLOCKEMMUNIQCHK##></TD>\n\
1044 <TD class=\"centered\"><input name=\"blockemm-s\" type=\"hidden\" value=\"0\"><input name=\"blockemm-s\" type=\"checkbox\" value=\"1\" ##BLOCKEMMSHAREDCHK##></TD>\n\
1045 <TD class=\"centered\"><input name=\"blockemm-g\" type=\"hidden\" value=\"0\"><input name=\"blockemm-g\" type=\"checkbox\" value=\"1\" ##BLOCKEMMGLOBALCHK##></TD>\n\
1046 </TR>\n\
1047 </TABLE>\n\
1048 </TD>\n\
1049 <TR><TH>&nbsp;</TH><TH>Reader specific settings for protocol ##PROTOCOL##</TH></TR>\n\
1050##READERDEPENDINGCONFIG##\n\
1051 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" name=\"action\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1052 </TABLE>\n\
1053 </form>\n\
1054 <BR><BR>\n\
1055##TPLFOOTER##"
1056#define TPLSAVETEMPLATES "##TPLHEADER##\
1057##TPLMENU##\
1058 <br><b>Saved ##CNT## templates to ##PATH##</b><br>\n\
1059##TPLFOOTER##"
1060
1061#define TPLREADERCONFIGSIDOKBIT "\
1062 <TR>\n\
1063 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"##SIDLABEL##\" ##CHECKED##> ##SIDLABEL##</TD>\n"
1064
1065#define TPLREADERCONFIGSIDNOBIT "\
1066 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"!##SIDLABEL##\" ##CHECKED##> !##SIDLABEL##</TD>\n\
1067 </TR>\n"
1068
1069#define TPLREADERCONFIGSTDHWREADERBIT "\
1070 <TR><TD>##TPLHELPPREFIX##server#mhz##TPLHELPSUFFIX##Mhz:</A></TD><TD><input name=\"mhz\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##MHZ##\"></TD></TR>\n\
1071 <TR><TD>##TPLHELPPREFIX##server#cardmhz##TPLHELPSUFFIX##Cardmhz:</A></TD><TD><input name=\"cardmhz\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CARDMHZ##\"></TD></TR>\n\
1072 <TR><TD>##TPLHELPPREFIX##server#pincode##TPLHELPSUFFIX##Pincode:</A></TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
1073 <TR><TD>##TPLHELPPREFIX##server#detect##TPLHELPSUFFIX##Detect:</A></TD><TD><input name=\"detect\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##DETECT##\"></TD></TR>\n\
1074 <TR><TD>##TPLHELPPREFIX##server#readnano##TPLHELPSUFFIX##Readnano:</A></TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
1075 <TR><TD>##TPLHELPPREFIX##server#blocknano##TPLHELPSUFFIX##Blocknano:</A></TD><TD><input name=\"blocknano\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##BLOCKNANO##\"></TD></TR>\n\
1076 <TR><TD>##TPLHELPPREFIX##server#savenano##TPLHELPSUFFIX##Savenano:</A></TD><TD><input name=\"savenano\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##SAVENANO##\"></TD></TR>\n\
1077 <TR><TD>##TPLHELPPREFIX##server#atr##TPLHELPSUFFIX##ATR:</A></TD><TD><input name=\"atr\" type=\"text\" size=\"100\" maxlength=\"54\" value=\"##ATR##\"></TD></TR>\n\
1078 <TR><TD>##TPLHELPPREFIX##server#boxid##TPLHELPSUFFIX##Boxid:</A></TD><TD><input name=\"boxid\" type=\"text\" size=\"15\" maxlength=\"8\" value=\"##BOXID##\"></TD></TR>\n\
1079 <TR><TD>##TPLHELPPREFIX##server#aeskeys##TPLHELPSUFFIX##AES Keys:</A></TD><TD><textarea name=\"aeskeys\" cols=\"98\" rows=\"4\" class=\"bt\" maxlength=\"128\">##AESKEYS##</textarea></TD></TR>\n\
1080 <TR><TD>##TPLHELPPREFIX##server#rsakey##TPLHELPSUFFIX##RSA Key:</A></TD><TD><textarea name=\"rsakey\" cols=\"98\" rows=\"4\" class=\"bt\" maxlength=\"128\">##RSAKEY##</textarea></TD></TR>\n\
1081 <TR><TD>##TPLHELPPREFIX##server#boxkey##TPLHELPSUFFIX##Boxkey:</A></TD><TD><input name=\"boxkey\" type=\"text\" size=\"20\" maxlength=\"16\" value=\"##BOXKEY##\"></TD></TR>\n\
1082 <TR><TD>##TPLHELPPREFIX##server#showcls##TPLHELPSUFFIX##Showcls:</A></TD><TD><input name=\"showcls\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SHOWCLS##\"></TD></TR>\n\
1083 <TR><TD>##TPLHELPPREFIX##server#force_irdeto##TPLHELPSUFFIX##Force Irdeto:</A><input name=\"force_irdeto\" type=\"hidden\" value=\"0\"></TD><TD><input name=\"force_irdeto\" type=\"checkbox\" value=\"1\" ##FORCEIRDETOCHECKED##></TD></TR>\n\
1084 <TR><TD>##TPLHELPPREFIX##server#fix9993##TPLHELPSUFFIX##Fix 9993 for CAID 0919:</A><input name=\"fix9993\" type=\"hidden\" value=\"0\"></TD><TD><input name=\"fix9993\" type=\"checkbox\" value=\"1\" ##FIX9993CHECKED##></TD></TR>\n\
1085 <TR><TD>##TPLHELPPREFIX##server#ndsversion##TPLHELPSUFFIX##Force NDS Version:</A></TD>\n\
1086 <TD>\n\
1087 <SELECT name=\"ndsversion\">\n\
1088 <OPTION value=\"0\" ##NDSVERSION0##>0 - AUTO</OPTION>\n\
1089 <OPTION value=\"1\" ##NDSVERSION1##>1 - NDS1 Forced</OPTION>\n\
1090 <OPTION value=\"12\" ##NDSVERSION21##>12 - NDS1+ Forced</OPTION>\n\
1091 <OPTION value=\"2\" ##NDSVERSION2##>2 - NDS2 Forced</OPTION>\n\
1092 </SELECT>\n\
1093 </TD>\n\
1094 </TR>\n\
1095 <TR><TD>##TPLHELPPREFIX##server#nagra_read##TPLHELPSUFFIX##Read Nagra Records:</A></TD>\n\
1096 <TD>\n\
1097 <SELECT name=\"nagra_read\">\n\
1098 <OPTION value=\"0\" ##NAGRAREAD0##>0 - Disabled</OPTION>\n\
1099 <OPTION value=\"1\" ##NAGRAREAD1##>1 - Read all records</OPTION>\n\
1100 <OPTION value=\"2\" ##NAGRAREAD2##>2 - Read only valid records</OPTION>\n\
1101 </SELECT>\n\
1102 </TD>\n\
1103 </TR>\n\
1104 <TR><TD>##TPLHELPPREFIX##server#deprecated##TPLHELPSUFFIX##Deprecated:</A><input name=\"deprecated\" type=\"hidden\" value=\"0\"></TD><TD><input name=\"deprecated\" type=\"checkbox\" value=\"1\" ##DEPRECATEDCHCHECKED##></TD></TR>\n\
1105 <TR><TD>##TPLHELPPREFIX##server#smargopatch##TPLHELPSUFFIX##Smargopatch:</A><input name=\"smargopatch\" type=\"hidden\" value=\"0\"></TD><TD><input name=\"smargopatch\" type=\"checkbox\" value=\"1\" ##SMARGOPATCHCHECKED##></TD></TR>\n\
1106 <TR><TD>##TPLHELPPREFIX##server#device_out_endpoint##TPLHELPSUFFIX##Device Out Endpoint:</A></TD><TD>##DEVICEEP##</TD></TR>\n"
1107
1108#ifdef LIBUSB
1109#define TPLREADERCONFIGDEVICEEPBIT "\
1110 <SELECT name=\"device_out_endpoint\">\n\
1111 <OPTION value=\"\" ##DEVICEOUTEP0##>default</OPTION>\n\
1112 <OPTION value=\"0x82\" ##DEVICEOUTEP1##>0x82 - Smargo+</OPTION>\n\
1113 <OPTION value=\"0x81\" ##DEVICEOUTEP2##>0x81 - Infinity USB Smart</OPTION>\n\
1114 </SELECT>\n"
1115#endif
1116
1117#define TPLREADERCONFIGHOPBIT "\
1118 <TR><TD>##TPLHELPPREFIX##server#ccchop##TPLHELPSUFFIX##CCC Hop:</A></TD><TD><input name=\"ccchop\" type=\"text\" size=\"2\" maxlength=\"1\" value=\"##CCCHOP##\"></TD></TR>\n"
1119#define TPLREADERCONFIGCAMD35BIT "\
1120 <TR><TD>##TPLHELPPREFIX##server#user##TPLHELPSUFFIX##User:</A></TD><TD><input name=\"user\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
1121 <TR><TD>##TPLHELPPREFIX##server#password##TPLHELPSUFFIX##Password:</A></TD><TD><input name=\"password\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PASSWORD##\"></TD></TR>\n\
1122 <TR><TD>##TPLHELPPREFIX##server#reconnecttimeout##TPLHELPSUFFIX##Reconnect timeout:</A></TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n"
1123#define TPLREADERCONFIGCS378XBIT "\
1124 <TR><TD>##TPLHELPPREFIX##server#user##TPLHELPSUFFIX##User:</A></TD><TD><input name=\"user\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
1125 <TR><TD>##TPLHELPPREFIX##server#password##TPLHELPSUFFIX##Password:</A></TD><TD><input name=\"password\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PASSWORD##\"></TD></TR>\n\
1126 <TR><TD>##TPLHELPPREFIX##server#inactivitytimeout##TPLHELPSUFFIX##Inactivity timeout:</A></TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
1127 <TR><TD>##TPLHELPPREFIX##server#reconnecttimeout##TPLHELPSUFFIX##Reconnect timeout:</A></TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n"
1128#define TPLREADERCONFIGRADEGASTBIT "\
1129 <TR><TD>##TPLHELPPREFIX##server#user##TPLHELPSUFFIX##User:</A></TD><TD><input name=\"user\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
1130 <TR><TD>##TPLHELPPREFIX##server#password##TPLHELPSUFFIX##Password:</A></TD><TD><input name=\"password\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PASSWORD##\"></TD></TR>\n\
1131 <TR><TD>##TPLHELPPREFIX##server#inactivitytimeout##TPLHELPSUFFIX##Inactivity timeout:</A></TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
1132 <TR><TD>##TPLHELPPREFIX##server#reconnecttimeout##TPLHELPSUFFIX##Reconnect timeout:</A></TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n"
1133#define TPLREADERCONFIGNCD525BIT "\
1134 <TR><TD>##TPLHELPPREFIX##server#user##TPLHELPSUFFIX##User:</A></TD><TD><input name=\"user\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
1135 <TR><TD>##TPLHELPPREFIX##server#password##TPLHELPSUFFIX##Password:</A></TD><TD><input name=\"password\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PASSWORD##\"></TD></TR>\n\
1136 <TR><TD>##TPLHELPPREFIX##server#key##TPLHELPSUFFIX##Key:</A></TD><TD><input name=\"key\" type=\"text\" size=\"40\" maxlength=\"28\" value=\"##NCD_KEY##\"></TD></TR>\n\
1137 <TR><TD>##TPLHELPPREFIX##server#inactivitytimeout##TPLHELPSUFFIX##Inactivity timeout:</A></TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
1138 <TR><TD>##TPLHELPPREFIX##server#reconnecttimeout##TPLHELPSUFFIX##Reconnect timeout:</A></TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
1139 <TR><TD>##TPLHELPPREFIX##server#disableserverfilter##TPLHELPSUFFIX##Disable server Filter:</A><input name=\"disableserverfilter\" type=\"hidden\" value=\"0\"></TD><TD><input name=\"disableserverfilter\" type=\"checkbox\" value=\"1\" ##DISABLESERVERFILTERCHECKED##></TD></TR>\n"
1140#define TPLREADERCONFIGNCD524BIT "\
1141 <TR><TD>##TPLHELPPREFIX##server#user##TPLHELPSUFFIX##User:</A></TD><TD><input name=\"user\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
1142 <TR><TD>##TPLHELPPREFIX##server#password##TPLHELPSUFFIX##Password:</A></TD><TD><input name=\"password\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PASSWORD##\"></TD></TR>\n\
1143 <TR><TD>##TPLHELPPREFIX##server#key##TPLHELPSUFFIX##Key:</A></TD><TD><input name=\"key\" type=\"text\" size=\"40\" maxlength=\"28\" value=\"##NCD_KEY##\"></TD></TR>\n\
1144 <TR><TD>##TPLHELPPREFIX##server#inactivitytimeout##TPLHELPSUFFIX##Inactivity timeout:</A></TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
1145 <TR><TD>##TPLHELPPREFIX##server#reconnecttimeout##TPLHELPSUFFIX##Reconnect timeout:</A></TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
1146 <TR><TD>##TPLHELPPREFIX##server#disableserverfilter##TPLHELPSUFFIX##Disable server Filter:</A><input name=\"disableserverfilter\" type=\"hidden\" value=\"0\"></TD><TD><input name=\"disableserverfilter\" type=\"checkbox\" value=\"1\" ##DISABLESERVERFILTERCHECKED##></TD></TR>\n"
1147#define TPLREADERCONFIGCCCAMBIT "\
1148 <TR><TD>##TPLHELPPREFIX##server#user##TPLHELPSUFFIX##User:</A></TD><TD><input name=\"user\" type=\"text\" size=\"63\" maxlength=\"63\" value=\"##ACCOUNT##\"></TD></TR>\n\
1149 <TR><TD>##TPLHELPPREFIX##server#password##TPLHELPSUFFIX##Password:</A></TD><TD><input name=\"password\" type=\"text\" size=\"63\" maxlength=\"63\" value=\"##PASSWORD##\"></TD></TR>\n\
1150 <TR><TD>##TPLHELPPREFIX##server#cccversion##TPLHELPSUFFIX##Version:</A></TD>\n\
1151 <TD>\n\
1152 <SELECT name=\"cccversion\">\n\
1153 <OPTION value=\"2.0.11\" ##CCCVERSIONSELECTED0##>2.0.11</OPTION>\n\
1154 <OPTION value=\"2.1.1\"##CCCVERSIONSELECTED1##>2.1.1</OPTION>\n\
1155 <OPTION value=\"2.1.2\"##CCCVERSIONSELECTED2##>2.1.2</OPTION>\n\
1156 <OPTION value=\"2.1.3\"##CCCVERSIONSELECTED3##>2.1.3</OPTION>\n\
1157 <OPTION value=\"2.1.4\"##CCCVERSIONSELECTED4##>2.1.4</OPTION>\n\
1158 <OPTION value=\"2.2.0\"##CCCVERSIONSELECTED5##>2.2.0</OPTION>\n\
1159 <OPTION value=\"2.2.1\"##CCCVERSIONSELECTED6##>2.2.1</OPTION>\n\
1160 </SELECT>\n\
1161 </TD>\n\
1162 </TR>\n\
1163 <TR><TD>##TPLHELPPREFIX##server#cccmaxhops##TPLHELPSUFFIX##Maxhop:</A></TD><TD><input name=\"cccmaxhop\" type=\"text\" size=\"3\" maxlength=\"2\" value=\"##CCCMAXHOP##\"></TD></TR>\n\
1164 <TR><TD>##TPLHELPPREFIX##server#cccmindown##TPLHELPSUFFIX##Mindown:</A></TD><TD><input name=\"cccmindown\" type=\"text\" size=\"3\" maxlength=\"2\" value=\"##CCCMINDOWN##\"></TD></TR>\n\
1165 <TR><TD>##TPLHELPPREFIX##server#cccreshare##TPLHELPSUFFIX##Reshare:</A></TD><TD><input name=\"cccreshare\" type=\"text\" size=\"3\" maxlength=\"2\" value=\"##CCCRESHARE##\"></TD></TR>\n\
1166 <TR><TD>##TPLHELPPREFIX##server#cccwantemu##TPLHELPSUFFIX##Want Emu:</A><input name=\"cccwantemu\" type=\"hidden\" value=\"0\"></TD><TD><input name=\"cccwantemu\" type=\"checkbox\" value=\"1\" ##CCCWANTEMUCHECKED##></TD></TR>\n\
1167 <TR><TD>##TPLHELPPREFIX##server#reconnecttimeout##TPLHELPSUFFIX##Reconnect-timeout:</A></TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
1168 <TR><TD>##TPLHELPPREFIX##server#ccckeepalive##TPLHELPSUFFIX##Keep alive:</A></TD><TD><SELECT NAME=\"ccckeepalive\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##KEEPALIVECHECKED##>YES</OPTION></SELECT></TD></TR>\n"
1169
1170#define TPLCONFIGGBOX "\
1171##TPLHEADER##\
1172##TPLMENU##\
1173##TPLCONFIGMENU##\
1174 <BR><BR>\n\
1175 <DIV CLASS=\"message\">##MESSAGE##</DIV>\
1176 <form action=\"config.html\" method=\"get\">\n\
1177 <input name=\"part\" type=\"hidden\" value=\"gbox\">\n\
1178 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1179 <TABLE class=\"config\">\n\
1180 <TR><TH COLSPAN=\"2\">Edit Gbox Config </TH></TR>\n\
1181 <TR><TD>Password:</TD><TD><input name=\"password\" type=\"text\" size=\"10\" maxlength=\"8\" value=\"##PASSWORD##\"></TD></TR>\n\
1182 <TR><TD>Maxdist:</TD><TD><input name=\"maxdist\" type=\"text\" size=\"5\" maxlength=\"2\" value=\"##MAXDIST##\"></TD></TR>\n\
1183 <TR><TD>Ignorelist:</TD><TD><input name=\"ignorelist\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##IGNORELIST##\"></TD></TR>\n\
1184 <TR><TD>Onlineinfos:</TD><TD><input name=\"onlineinfos\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##ONLINEINFOS##\"></TD></TR>\n\
1185 <TR><TD>Cardinfos:</TD><TD><input name=\"cardinfos\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CARDINFOS##\"></TD></TR>\n\
1186 <TR><TD>Locals:</TD><TD><input name=\"locals\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##LOCALS##\"></TD></TR>\n\
1187 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##></TD></TR>\n\
1188 </TABLE>\n\
1189 </form>\n\
1190##TPLFOOTER##"
1191
1192#ifdef CS_ANTICASC
1193#define TPLCONFIGANTICASC "\
1194##TPLHEADER##\
1195##TPLMENU##\
1196##TPLCONFIGMENU##\
1197 <BR><BR>\n\
1198##MESSAGE##\
1199 <form action=\"config.html\" method=\"get\">\n\
1200 <input name=\"part\" type=\"hidden\" value=\"anticasc\">\n\
1201 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1202 <input name=\"enabled\" type=\"hidden\" value=\"0\">\n\
1203 <TABLE class=\"config\">\n\
1204 <TR><TH COLSPAN=\"2\">Edit Anticascading Config</TH></TR>\n\
1205 <TR><TD>##TPLHELPPREFIX##conf#enabled_2##TPLHELPSUFFIX##Enabled:</A></TD><TD><input name=\"enabled\" type=\"checkbox\" value=\"1\" ##CHECKED##>\n\
1206 <TR><TD>##TPLHELPPREFIX##conf#numusers##TPLHELPSUFFIX##Numusers:</A></TD><TD><input name=\"numusers\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##NUMUSERS##\"></TD></TR>\n\
1207 <TR><TD>##TPLHELPPREFIX##conf#sampletime##TPLHELPSUFFIX##Sampletime:</A></TD><TD><input name=\"sampletime\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SAMPLETIME##\"></TD></TR>\n\
1208 <TR><TD>##TPLHELPPREFIX##conf#samples##TPLHELPSUFFIX##Samples:</A></TD><TD><input name=\"samples\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SAMPLES##\"></TD></TR>\n\
1209 <TR><TD>##TPLHELPPREFIX##conf#penalty##TPLHELPSUFFIX##Penalty:</A></TD>\
1210 <TD>\
1211 <select name=\"penalty\">\n\
1212 <option value=\"0\" ##PENALTY0##>0 - Only write to log</option>\n\
1213 <option value=\"1\" ##PENALTY1##>1 - Fake DW delayed</option>\n\
1214 <option value=\"2\" ##PENALTY2##>2 - Ban</option>\n\
1215 <option value=\"3\" ##PENALTY3##>3 - Real DW delayed</option>\n\
1216 </select>\n\
1217 </TD></TR>\n\
1218 <TR><TD>##TPLHELPPREFIX##conf#aclogfile##TPLHELPSUFFIX##AClogfile:</A></TD><TD><input name=\"aclogfile\" type=\"text\" size=\"63\" maxlength=\"127\" value=\"##ACLOGFILE##\"></TD></TR>\n\
1219 <TR><TD>##TPLHELPPREFIX##conf#fakedelay##TPLHELPSUFFIX##Fakedelay:</A></TD><TD><input name=\"fakedelay\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##FAKEDELAY##\"></TD></TR>\n\
1220 <TR><TD>##TPLHELPPREFIX##conf#denysamples##TPLHELPSUFFIX##Denysamples:</A></TD><TD><input name=\"denysamples\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##DENYSAMPLES##\"></TD></TR>\n\
1221 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1222 </TABLE>\n\
1223 </form>\n\
1224##TPLFOOTER##"
1225#endif
1226
1227#ifdef MODULE_CCCAM
1228#define TPLCONFIGCCCAM "\
1229##TPLHEADER##\
1230##TPLMENU##\
1231##TPLCONFIGMENU##\
1232 <BR><BR>\n\
1233##MESSAGE##\
1234 <form action=\"config.html\" method=\"get\">\n\
1235 <input name=\"part\" type=\"hidden\" value=\"cccam\">\n\
1236 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1237 <TABLE class=\"config\">\n\
1238 <TR><TH COLSPAN=\"2\">Edit Cccam Config</TH></TR>\n\
1239 <TR><TD>##TPLHELPPREFIX##conf#port_7##TPLHELPSUFFIX##Port:</A></TD><TD><input name=\"port\" type=\"text\" size=\"16\" maxlength=\"128\" value=\"##PORT##\"></TD></TR>\n\
1240 <TR><TD>##TPLHELPPREFIX##conf#reshare##TPLHELPSUFFIX##Reshare:</A></TD><TD><input name=\"reshare\" type=\"text\" size=\"2\" maxlength=\"1\" value=\"##RESHARE##\"></TD></TR>\n\
1241 <TR><TD>##TPLHELPPREFIX##conf#ignorereshare##TPLHELPSUFFIX##Ignore reshare:</A></TD><TD><SELECT NAME=\"ignorereshare\"><OPTION VALUE=\"0\">OFF</OPTION><OPTION VALUE=\"1\" ##IGNORERESHARE##>ON</OPTION></SELECT></TD></TR>\n\
1242 <TR><TD>##TPLHELPPREFIX##conf#forward_origin_card##TPLHELPSUFFIX##Forward origin card:</A></TD><TD><SELECT NAME=\"forward_origin_card\"><OPTION VALUE=\"0\">OFF</OPTION><OPTION VALUE=\"1\" ##FORWARDORIGINCARD##>ON</OPTION></SELECT></TD></TR>\n\
1243 <TR><TD>##TPLHELPPREFIX##conf#stealth##TPLHELPSUFFIX##Stealth mode:</A></TD><TD><SELECT NAME=\"stealth\"><OPTION VALUE=\"0\">OFF</OPTION><OPTION VALUE=\"1\" ##STEALTH##>ON</OPTION></SELECT></TD></TR>\n\
1244 <TR><TD>##TPLHELPPREFIX##conf#nodeid##TPLHELPSUFFIX##Node Id:</A></TD><TD><input name=\"nodeid\" type=\"text\" size=\"16\" maxlength=\"16\" value=\"##NODEID##\"></TD></TR>\n\
1245 <TR><TD>##TPLHELPPREFIX##conf#keepconnected##TPLHELPSUFFIX##Keep clients connected:</A></TD><TD><SELECT NAME=\"keepconnected\"><OPTION VALUE=\"0\">OFF</OPTION><OPTION VALUE=\"1\" ##KEEPCONNECTED##>ON</OPTION></SELECT></TD></TR>\n\
1246 <TR><TD>##TPLHELPPREFIX##conf#version##TPLHELPSUFFIX##Version:</A></TD>\n\
1247 <TD>\n\
1248 <SELECT name=\"version\">\n\
1249 <OPTION value=\"2.0.11\" ##VERSIONSELECTED0##>2.0.11</OPTION>\n\
1250 <OPTION value=\"2.1.1\" ##VERSIONSELECTED1##>2.1.1</OPTION>\n\
1251 <OPTION value=\"2.1.2\" ##VERSIONSELECTED2##>2.1.2</OPTION>\n\
1252 <OPTION value=\"2.1.3\" ##VERSIONSELECTED3##>2.1.3</OPTION>\n\
1253 <OPTION value=\"2.1.4\" ##VERSIONSELECTED4##>2.1.4</OPTION>\n\
1254 <OPTION value=\"2.2.0\" ##VERSIONSELECTED5##>2.2.0</OPTION>\n\
1255 <OPTION value=\"2.2.1\" ##VERSIONSELECTED6##>2.2.1</OPTION>\n\
1256 </SELECT>\n\
1257 </TD>\n\
1258 </TR>\n\
1259 <TR><TD>##TPLHELPPREFIX##conf#updateinterval##TPLHELPSUFFIX##Update Interval:</A></TD><TD><input name=\"updateinterval\" type=\"text\" size=\"5\" maxlength=\"4\" value=\"##UPDATEINTERVAL##\"></TD></TR>\n\
1260 <TR><TD>##TPLHELPPREFIX##conf#minimizecards##TPLHELPSUFFIX##Minimize cards:</A></TD>\n\
1261 <TD>\n\
1262 <SELECT name=\"minimizecards\">\n\
1263 <OPTION value=\"0\" ##MINIMIZECARDSELECTED0##>0 - legacy (default)</OPTION>\n\
1264 <OPTION value=\"1\" ##MINIMIZECARDSELECTED1##>1 - smallest hop</OPTION>\n\
1265 <OPTION value=\"2\" ##MINIMIZECARDSELECTED2##>2 - via caid</OPTION>\n\
1266 </SELECT>\n\
1267 </TD>\n\
1268 </TR>\n\
1269 <TR><TD>##TPLHELPPREFIX##conf#reshare_mode##TPLHELPSUFFIX##Reshare mode:</A></TD>\n\
1270 <TD>\n\
1271 <SELECT name=\"reshare_mode\">\n\
1272 <OPTION value=\"0\" ##RESHAREMODE0##>0 - reshare cards only (default)</OPTION>\n\
1273 <OPTION value=\"1\" ##RESHAREMODE1##>1 - reshare cards+services</OPTION>\n\
1274 <OPTION value=\"2\" ##RESHAREMODE2##>2 - reshare reader-services</OPTION>\n\
1275 <OPTION value=\"3\" ##RESHAREMODE3##>3 - reshare user-services</OPTION>\n\
1276 <OPTION value=\"4\" ##RESHAREMODE4##>4 - reshare only received cards</OPTION>\n\
1277 </SELECT>\n\
1278 </TD>\n\
1279 </TR>\n\
1280 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1281 </TABLE>\n\
1282 </form>\n\
1283 <BR><BR>\
1284 <TABLE class=\"config\">\n\
1285 <TR><TH COLSPAN=\"2\">Control</TH></TR>\n\
1286 <TR>\n\
1287 <TD STYLE=\"text-align:center;\">\
1288 <form action=\"config.html\" method=\"get\">\n\
1289 <input name=\"part\" type=\"hidden\" value=\"cccam\">\n\
1290 <input type=\"submit\" name=\"button\" value=\"Refresh global list\" ##BTNDISABLED##>\n\
1291 </form></TD>\n\
1292 <TD STYLE=\"text-align:center;\">\
1293 <form action=\"entitlements.html\" method=\"get\">\n\
1294 <input name=\"globallist\" type=\"hidden\" value=\"1\">\n\
1295 <input type=\"submit\" name=\"button\" value=\"Show global list\" ##BTNDISABLED##>\n\
1296 </form></TD>\n\
1297 </TR>\n\
1298 </TABLE>\n\
1299##TPLFOOTER##"
1300#endif
1301
1302#define TPLCONFIGMONITOR "\
1303##TPLHEADER##\
1304##TPLMENU##\
1305##TPLCONFIGMENU##\
1306 <BR><BR>\n\
1307##MESSAGE##\
1308 <form action=\"config.html\" method=\"get\">\n\
1309 <input name=\"part\" type=\"hidden\" value=\"monitor\">\n\
1310 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1311 <input name=\"httphideidleclients\" type=\"hidden\" value=\"0\">\n\
1312 <input name=\"appendchaninfo\" type=\"hidden\" value=\"0\">\n\
1313 <TABLE class=\"config\">\n\
1314 <TR><TH COLSPAN=\"2\">Edit Monitor Config</TH></TR>\n\
1315 <TR><TD>##TPLHELPPREFIX##conf#port##TPLHELPSUFFIX##Port:</A></TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##MONPORT##\"></TD></TR>\n\
1316 <TR><TD>##TPLHELPPREFIX##conf#serverip_2##TPLHELPSUFFIX##Serverip:</A></TD><TD><input name=\"serverip\" type=\"text\" size=\"15\" maxlength=\"15\" value=\"##SERVERIP##\"></TD></TR>\n\
1317 <TR><TD>##TPLHELPPREFIX##conf#nocrypt##TPLHELPSUFFIX##No crypt:</A></TD><TD><input name=\"nocrypt\" type=\"text\" size=\"63\" maxlength=\"200\" value=\"##NOCRYPT##\"></TD></TR>\n\
1318 <TR><TD>##TPLHELPPREFIX##conf#aulow##TPLHELPSUFFIX##Au low:</A></TD><TD><input name=\"aulow\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##AULOW##\"> min</TD></TR>\n\
1319 <TR>\n\
1320 <TD>##TPLHELPPREFIX##conf#monlevel##TPLHELPSUFFIX##Monlevel:</A></TD>\n\
1321 <TD><select name=\"monlevel\">\n\
1322 <option value=\"0\" ##MONSELECTED0##>0 - no access to monitor</option>\n\
1323 <option value=\"1\" ##MONSELECTED1##>1 - only server and own procs</option>\n\
1324 <option value=\"2\" ##MONSELECTED2##>2 - all procs, but viewing only, default</option>\n\
1325 <option value=\"3\" ##MONSELECTED3##>3 - all procs, reload of oscam.user possible</option>\n\
1326 <option value=\"4\" ##MONSELECTED4##>4 - complete access</option>\n\
1327 </select>\n\
1328 </TD>\n\
1329 </TR>\n\
1330 <TR><TD>##TPLHELPPREFIX##conf#hideclient_to##TPLHELPSUFFIX##Hide client to:</A></TD><TD><input name=\"hideclient_to\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##HIDECLIENTTO##\"> s</TD></TR>\n\
1331 <TR><TD>##TPLHELPPREFIX##conf#appendchaninfo##TPLHELPSUFFIX##Append channel info:</A></TD><TD><input name=\"appendchaninfo\" type=\"checkbox\" value=\"1\" ##APPENDCHANINFO##></TD></TR>\n\
1332 <TR><TH COLSPAN=\"2\">Webinterface Config</TH></TR>\n\
1333 <TR><TD>##TPLHELPPREFIX##conf#httpport##TPLHELPSUFFIX##Http port:</A></TD><TD><input name=\"httpport\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##HTTPPORT##\"></TD></TR>\n\
1334 <TR><TD>##TPLHELPPREFIX##conf#httpuser##TPLHELPSUFFIX##Http user:</A></TD><TD><input name=\"httpuser\" type=\"text\" size=\"63\" maxlength=\"64\" value=\"##HTTPUSER##\"></TD></TR>\n\
1335 <TR><TD>##TPLHELPPREFIX##conf#httppwd##TPLHELPSUFFIX##Http pwd:</A></TD><TD><input name=\"httppwd\" type=\"text\" size=\"63\" maxlength=\"64\" value=\"##HTTPPASSWORD##\"></TD></TR>\n\
1336 <TR><TD>##TPLHELPPREFIX##conf#httpcss##TPLHELPSUFFIX##Http css:</A></TD>\n\
1337 <TD>\n\
1338 <SELECT name=\"httpcss\">\n\
1339##CSSOPTIONS##\
1340 </SELECT>\n\
1341 </TD>\n\
1342 </TR>\n\
1343 <TR><TD>##TPLHELPPREFIX##conf#httphelplang##TPLHELPSUFFIX##Http Help Language (en|de|fr|it):</A></TD><TD><input name=\"httphelplang\" type=\"text\" size=\"3\" maxlength=\"2\" value=\"##HTTPHELPLANG##\"></TD></TR>\n\
1344 <TR><TD>##TPLHELPPREFIX##conf#httpjscript##TPLHELPSUFFIX##Http javascript:</A></TD><TD><input name=\"httpjscript\" type=\"text\" size=\"63\" maxlength=\"127\" value=\"##HTTPJSCRIPT##\"></TD></TR>\n\
1345 <TR><TD>##TPLHELPPREFIX##conf#httprefresh##TPLHELPSUFFIX##Http refresh:</A></TD><TD><input name=\"httprefresh\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##HTTPREFRESH##\"> s</TD></TR>\n\
1346 <TR><TD>##TPLHELPPREFIX##conf#httptpl##TPLHELPSUFFIX##Http tpl:</A></TD><TD><input name=\"httptpl\" type=\"text\" size=\"63\" maxlength=\"127\" value=\"##HTTPTPL##\"></TD></TR>\n\
1347 <TR><TD>##TPLHELPPREFIX##conf#httpscript##TPLHELPSUFFIX##Http script:</A></TD><TD><input name=\"httpscript\" type=\"text\" size=\"63\" maxlength=\"127\" value=\"##HTTPSCRIPT##\"></TD></TR>\n\
1348 <TR><TD>##TPLHELPPREFIX##conf#httphideidleclients##TPLHELPSUFFIX##Http Hide Idle Clients:</A></TD><TD><input name=\"httphideidleclients\" type=\"checkbox\" value=\"1\" ##CHECKED##>\n\
1349 <TR><TD>##TPLHELPPREFIX##conf#httpallowed##TPLHELPSUFFIX##Http allowed:</A></TD><TD><input name=\"httpallowed\" type=\"text\" size=\"63\" maxlength=\"200\" value=\"##HTTPALLOW##\"></TD></TR>\n\
1350 <TR><TD>##TPLHELPPREFIX##conf#httpdyndns##TPLHELPSUFFIX##Http dyndns:</A></TD><TD><input name=\"httpdyndns\" type=\"text\" size=\"63\" maxlength=\"200\" value=\"##HTTPDYNDNS##\"></TD></TR>\n\
1351 <TR><TD>##TPLHELPPREFIX##conf#httpsavefullcfg##TPLHELPSUFFIX##Http save full config:</A></TD><TD><SELECT NAME=\"httpsavefullcfg\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##HTTPSAVEFULLSELECT##>YES</OPTION></SELECT></TD></TR>\n\
1352##TPLLCDOPTIONS##\
1353 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1354 </TABLE>\n\
1355 </form>\n\
1356##TPLFOOTER##"
1357
1358#ifdef LCDSUPPORT
1359#define TPLLCDOPTIONS "\
1360 <TR><TH COLSPAN=\"2\">LCD Config</TH></TR>\n\
1361 <TR><TD>##TPLHELPPREFIX##conf#lcd_outputpath##TPLHELPSUFFIX##LCD Output Path:</A></TD><TD><input name=\"lcd_outputpath\" type=\"text\" size=\"63\" maxlength=\"200\" value=\"##LCDOUTPUTPATH##\"></TD></TR>\n\
1362 <TR><TD>##TPLHELPPREFIX##conf#lcd_writeintervall##TPLHELPSUFFIX##LCD Write Interval:</A></TD><TD><input name=\"lcd_writeintervall\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##LCDOUTPUTPATH##\"></TD></TR>\n\
1363 <TR><TD>##TPLHELPPREFIX##conf#lcd_hideidle##TPLHELPSUFFIX##LCD Hide idle Readers:</A></TD><TD><SELECT NAME=\"lcd_hideidle\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##LCDHIDEIDLE##>YES</OPTION></SELECT></TD></TR>\n"
1364
1365#endif
1366
1367#ifdef MODULE_RADEGAST
1368#define TPLCONFIGRADEGAST "\
1369##TPLHEADER##\
1370##TPLMENU##\
1371##TPLCONFIGMENU##\
1372 <BR><BR>\n\
1373##MESSAGE##\
1374 <form action=\"config.html\" method=\"get\">\n\
1375 <input name=\"part\" type=\"hidden\" value=\"radegast\">\n\
1376 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1377 <TABLE class=\"config\">\n\
1378 <TR><TH COLSPAN=\"2\">Edit Radegast Config</TH></TR>\n\
1379 <TR><TD>##TPLHELPPREFIX##conf#port_6##TPLHELPSUFFIX##Port:</A></TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PORT##\"></TD></TR>\n\
1380 <TR><TD>##TPLHELPPREFIX##conf#serverip_7##TPLHELPSUFFIX##Serverip:</A></TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"></TD></TR>\n\
1381 <TR><TD>##TPLHELPPREFIX##conf#allowed_2##TPLHELPSUFFIX##Allowed:</A></TD><TD><input name=\"allowed\" type=\"text\" size=\"63\" maxlength=\"200\" value=\"##ALLOWED##\"></TD></TR>\n\
1382 <TR><TD>##TPLHELPPREFIX##conf#user##TPLHELPSUFFIX##User:</A></TD><TD><input name=\"user\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##USER##\"></TD></TR>\n\
1383 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1384 </TABLE>\n\
1385 </form>\n\
1386##TPLFOOTER##"
1387#endif
1388
1389#ifdef MODULE_NEWCAMD
1390#define TPLCONFIGNEWCAMD "\
1391##TPLHEADER##\
1392##TPLMENU##\
1393##TPLCONFIGMENU##\
1394 <BR><BR>\n\
1395##MESSAGE##\
1396 <form action=\"config.html\" method=\"get\">\n\
1397 <input name=\"part\" type=\"hidden\" value=\"newcamd\">\n\
1398 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1399 <input name=\"keepalive\" type=\"hidden\" value=\"0\">\n\
1400 <input name=\"mgclient\" type=\"hidden\" value=\"0\">\n\
1401 <TABLE class=\"config\">\n\
1402 <TR><TH COLSPAN=\"2\">Edit Newcamd Config</TH></TR>\n\
1403 <TR><TD>##TPLHELPPREFIX##conf#port_5##TPLHELPSUFFIX##Port:</A></TD><TD><textarea name=\"port\" cols=\"120\" rows=\"3\" class=\"bt\">##PORT##</textarea></TD></TR>\n\
1404 <TR><TD>##TPLHELPPREFIX##conf#serverip_6##TPLHELPSUFFIX##Serverip:</A></TD><TD><input name=\"serverip\" type=\"text\" size=\"15\" maxlength=\"15\" value=\"##SERVERIP##\"></TD></TR>\n\
1405 <TR><TD>##TPLHELPPREFIX##conf#key_2##TPLHELPSUFFIX##Key:</A></TD><TD><input name=\"key\" type=\"text\" size=\"28\" maxlength=\"28\" value=\"##KEY##\"></TD></TR>\n\
1406 <TR><TD>##TPLHELPPREFIX##conf#allowed##TPLHELPSUFFIX##Allowed:</A></TD><TD><textarea name=\"allowed\" cols=\"58\" rows=\"3\" class=\"bt\">##ALLOWED##</textarea></TD></TR>\n\
1407 <TR><TD>##TPLHELPPREFIX##conf#keepalive##TPLHELPSUFFIX##Keepalive:</A></TD><TD><input name=\"keepalive\" type=\"checkbox\" value=\"1\" ##KEEPALIVE##></TD></TR>\n\
1408 <TR><TD>##TPLHELPPREFIX##conf#mgclient##TPLHELPSUFFIX##Mgclient:</A></TD><TD><input name=\"mgclient\" type=\"checkbox\" value=\"1\" ##MGCLIENTCHK##></TD></TR>\n\
1409 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1410 </TABLE>\n\
1411 </form>\n\
1412##TPLFOOTER##"
1413#endif
1414
1415#define TPLCONFIGGLOBAL "\
1416##TPLHEADER##\
1417##TPLMENU##\
1418##TPLCONFIGMENU##\
1419 <BR><BR>\n\
1420##MESSAGE##\
1421 <form action=\"config.html\" method=\"get\">\n\
1422 <input name=\"part\" type=\"hidden\" value=\"global\">\n\
1423 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1424 <input name=\"suppresscmd08\" type=\"hidden\" value=\"0\">\n\
1425 <TABLE class=\"config\">\n\
1426 <TR><TH COLSPAN=\"2\">Edit Global Config</TH></TR>\n\
1427 <TR><TD>##TPLHELPPREFIX##conf#serverip##TPLHELPSUFFIX##Serverip:</A></TD><TD><input name=\"serverip\" type=\"text\" size=\"15\" maxlength=\"15\" value=\"##SERVERIP##\"></TD></TR>\n\
1428 <TR><TD>##TPLHELPPREFIX##conf#nice##TPLHELPSUFFIX##Nice:</A></TD><TD><input name=\"nice\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##NICE##\"></TD></TR>\n\
1429 <TR><TD>##TPLHELPPREFIX##conf#netprio##TPLHELPSUFFIX##Net prio:</A></TD><TD><input name=\"netprio\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##NETPRIO##\"></TD></TR>\n\
1430 <TR><TD>##TPLHELPPREFIX##conf#bindwait##TPLHELPSUFFIX##Bind wait:</A></TD><TD><input name=\"bindwait\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##BINDWAIT##\"> s</TD></TR>\n\
1431 <TR><TD>##TPLHELPPREFIX##conf#resolvegethostbyname##TPLHELPSUFFIX##Resolver:</A></TD>\n\
1432 <TD>\n\
1433 <select name=\"resolvegethostbyname\">\n\
1434 <option value=\"0\" ##RESOLVER0##>0 - getadressinfo()</option>\n\
1435 <option value=\"1\" ##RESOLVER1##>1 - gethostbyname()</option>\n\
1436 </select>\n\
1437 </TD>\n\
1438 </TR>\n\
1439 <TR><TD>##TPLHELPPREFIX##conf#waitforcards##TPLHELPSUFFIX##Wait for cards:</A></TD><TD><SELECT NAME=\"waitforcards\"><OPTION VALUE=\"0\">0 - enable clientlogins while init</OPTION><OPTION VALUE=\"1\" ##WAITFORCARDSCHECKED##>1 - disable clientlogins while init</OPTION></SELECT></TD></TR>\n\
1440 <TR><TD>##TPLHELPPREFIX##conf#waitforcards_extra_delay##TPLHELPSUFFIX##Extra delay:</A></TD><TD><input name=\"waitforcards_extra_delay\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##EXTRADELAY##\"></TD></TR>\n\
1441 <TR><TD>##TPLHELPPREFIX##conf#preferlocalcards##TPLHELPSUFFIX##Prefer local cards:</A></TD><TD><SELECT NAME=\"preferlocalcards\"><OPTION VALUE=\"0\">0 - local cards like proxied</OPTION><OPTION VALUE=\"1\" ##PREFERLOCALCARDSCHECKED##>1 - prefer local cards</OPTION></SELECT></TD></TR>\n\
1442 <TR><TD>##TPLHELPPREFIX##conf#unlockparental##TPLHELPSUFFIX##Unlock parental:</A></TD><TD><SELECT NAME=\"unlockparental\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##UNLOCKPARENTALCHECKED##>YES</OPTION></SELECT></TD></TR>\n\
1443 <TR><TH COLSPAN=\"2\">Logging</TH></TR>\n\
1444 <TR><TD>##TPLHELPPREFIX##conf#disableuserfile##TPLHELPSUFFIX##Usr file:</A></TD>\n\
1445 <TD>\n\
1446 <input name=\"usrfile\" type=\"text\" size=\"63\" maxlength=\"128\" value=\"##USERFILE##\">&nbsp;\n\
1447 <SELECT NAME=\"disableuserfile\"><OPTION VALUE=\"0\">0 - enabled</OPTION><OPTION VALUE=\"1\" ##DISABLEUSERFILECHECKED##>1 - disabled</OPTION></SELECT>&nbsp;\n\
1448 <SELECT NAME=\"usrfileflag\"><OPTION VALUE=\"0\">0 - just join/leave</OPTION><OPTION VALUE=\"1\" ##USERFILEFLAGCHECKED##>1 - each zap</OPTION></SELECT>\n\
1449 </TD>\n\
1450 </TR>\n\
1451 <TR><TD>##TPLHELPPREFIX##conf#disablemail##TPLHELPSUFFIX##Mail file:</A></TD>\n\
1452 <TD>\n\
1453 <input name=\"mailfile\" type=\"text\" size=\"30\" maxlength=\"128\" value=\"##MAILFILE##\">&nbsp;\n\
1454 <SELECT NAME=\"disablemail\"><OPTION VALUE=\"0\">0 - enabled</OPTION><OPTION VALUE=\"1\" ##DISABLEMAILCHECKED##>1 - disabled</OPTION></SELECT>&nbsp;\n\
1455 </TD>\n\
1456 </TR>\n\
1457 <TR><TD>##TPLHELPPREFIX##conf#logfile##TPLHELPSUFFIX##Log file / max size:</A></TD>\n\
1458 <TD>\n\
1459 <input name=\"logfile\" type=\"text\" size=\"63\" maxlength=\"128\" value=\"##LOGFILE##\">&nbsp;\n\
1460 <SELECT NAME=\"disablelog\"><OPTION VALUE=\"0\">0 - enabled</OPTION><OPTION VALUE=\"1\" ##DISABLELOGCHECKED##>1 - disabled</OPTION></SELECT>&nbsp;\n\
1461 <input name=\"maxlogsize\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##MAXLOGSIZE##\"> kB\n\
1462 </TD>\n\
1463 </TR>\n\
1464 <TR><TD>##TPLHELPPREFIX##conf#cwlogdir##TPLHELPSUFFIX##CW log dir:</A></TD><TD><input name=\"cwlogdir\" type=\"text\" size=\"63\" maxlength=\"128\" value=\"##CWLOGDIR##\"></TD></TR>\n\
1465 <TR><TD>##TPLHELPPREFIX##conf#emmlogdir##TPLHELPSUFFIX##EMM log dir:</A></TD><TD><input name=\"emmlogdir\" type=\"text\" size=\"63\" maxlength=\"128\" value=\"##EMMLOGDIR##\"></TD></TR>\n\
1466 <TR><TD>##TPLHELPPREFIX##conf#saveinithistory##TPLHELPSUFFIX##Reader entitlements:</A></TD><TD><SELECT NAME=\"saveinithistory\"><OPTION VALUE=\"0\">0 - dismiss entitlements</OPTION><OPTION VALUE=\"1\" ##SAVEINITHISTORYCHECKED##>1 - save entitlements</OPTION></SELECT></TD></TR>\n\
1467 <TR><TD>##TPLHELPPREFIX##conf#loghistorysize##TPLHELPSUFFIX##Loghistory Size:</A></TD><TD><input name=\"loghistorysize\" type=\"text\" size=\"5\" maxlength=\"4\" value=\"##LOGHISTORYSIZE##\"></TD></TR>\n\
1468 <TR><TH COLSPAN=\"2\">Failban</TH></TR>\n\
1469 <TR><TD>##TPLHELPPREFIX##conf#failbantime##TPLHELPSUFFIX##Failban time:</A></TD><TD><input name=\"failbantime\" type=\"text\" size=\"5\" maxlength=\"6\" value=\"##FAILBANTIME##\"> min blocking IP based</TD></TR>\n\
1470 <TR><TD>##TPLHELPPREFIX##conf#failbancount##TPLHELPSUFFIX##Failban count:</A></TD><TD><input name=\"failbancount\" type=\"text\" size=\"5\" maxlength=\"2\" value=\"##FAILBANCOUNT##\"> chances with wrong credenticals</TD></TR>\n\
1471 <TR><TH COLSPAN=\"2\">Timeouts / Times</TH></TR>\n\
1472 <TR><TD>##TPLHELPPREFIX##conf#clienttimeout##TPLHELPSUFFIX##Client timeout:</A></TD><TD><input name=\"clienttimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CLIENTTIMEOUT##\"> ms to give up and return timeout</TD></TR>\n\
1473 <TR><TD>##TPLHELPPREFIX##conf#fallbacktimeout##TPLHELPSUFFIX##Fallback timeout:</A></TD><TD><input name=\"fallbacktimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##FALLBACKTIMEOUT##\"> ms to switch to fallback reader</TD></TR>\n\
1474 <TR><TD>##TPLHELPPREFIX##conf#cachedelay##TPLHELPSUFFIX##Cache delay:</A></TD><TD><input name=\"cachedelay\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CACHEDELAY##\"> ms delaying answers from cache</TD></TR>\n\
1475 <TR><TD>##TPLHELPPREFIX##conf#clientmaxidle##TPLHELPSUFFIX##Client max idle:</A></TD><TD><input name=\"clientmaxidle\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CLIENTMAXIDLE##\"> s to disconnect idle clients</TD></TR>\n\
1476 <TR><TD>##TPLHELPPREFIX##conf#sleep##TPLHELPSUFFIX##Global sleep:</A></TD><TD><input name=\"sleep\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SLEEP##\"> min to switch a client in sleepmode</TD></TR>\n\
1477 <TR><TD>##TPLHELPPREFIX##conf#suppresscmd08##TPLHELPSUFFIX##Suppress cmd08:</A></TD><TD><input name=\"suppresscmd08\" type=\"checkbox\" value=\"1\" ##SUPPRESSCMD08##></TD></TR>\n\
1478 <TR><TD>##TPLHELPPREFIX##conf#serialreadertimeout##TPLHELPSUFFIX##Serial reader timeout:</A></TD><TD><input name=\"serialreadertimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SERIALTIMEOUT##\"> ms</TD></TR>\n\
1479 <TR><TD>##TPLHELPPREFIX##conf#readerrestartseconds##TPLHELPSUFFIX##Reader restart seconds:</A></TD><TD><input name=\"readerrestartseconds\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##READERRESTARTSECONDS##\"> s waittime to restart a reader</TD></TR>\n\
1480 <TR><TD>##TPLHELPPREFIX##conf#dropdups##TPLHELPSUFFIX##Drop duplicate users:</A></TD><TD><SELECT NAME=\"dropdups\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##DROPDUPSCHECKED##>YES</OPTION></SELECT></TD></TR>\n\
1481##TPLDOUBLECHECKBIT##\
1482 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1483 </TABLE>\n\
1484 </form>\n\
1485##TPLFOOTER##"
1486
1487#ifdef CS_WITH_DOUBLECHECK
1488#define TPLDOUBLECHECKBIT "\
1489 <TR><TD>##TPLHELPPREFIX##conf#double_check##TPLHELPSUFFIX##ECM Doublecheck:</A></TD><TD><SELECT NAME=\"double_check\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##DCHECKCSELECTED##>YES</OPTION></SELECT></TD></TR>\n"
1490#endif
1491
1492#ifdef WITH_LB
1493#define TPLCONFIGLOADBALANCER "\
1494##TPLHEADER##\
1495##TPLMENU##\
1496##TPLCONFIGMENU##\
1497 <BR><BR>\n\
1498##MESSAGE##\
1499 <form action=\"config.html\" method=\"get\">\n\
1500 <input name=\"part\" type=\"hidden\" value=\"loadbalancer\">\n\
1501 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1502 <TABLE class=\"config\">\n\
1503 <TR><TH COLSPAN=\"2\">Edit Loadbalancer Config</TH></TR>\n\
1504 <TR><TD>##TPLHELPPREFIX##conf#lb_mode##TPLHELPSUFFIX##Loadbalance Mode:</A></TD>\n\
1505 <TD>\n\
1506 <select name=\"lb_mode\">\n\
1507 <option value=\"0\" ##LBMODE0##>0 - Loadbalancer disabled (send to all readers)</option>\n\
1508 <option value=\"1\" ##LBMODE1##>1 - Fastest reader first</option>\n\
1509 <option value=\"2\" ##LBMODE2##>2 - Oldest reader first</option>\n\
1510 <option value=\"3\" ##LBMODE3##>3 - Lowest usagelevel</option>\n\
1511 <option value=\"10\" ##LBMODE10##>10 - Log statistics only</option>\n\
1512 </select>\n\
1513 </TD>\n\
1514 </TR>\n\
1515 <TR><TD>##TPLHELPPREFIX##conf#lb_save##TPLHELPSUFFIX##Loadbalance save every:</A></TD><TD><input name=\"lb_save\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBSAVE##\"></TD></TR>\n\
1516 <TR><TD>##TPLHELPPREFIX##conf#lb_savepath##TPLHELPSUFFIX##Statistics save path:</A></TD><TD><input name=\"lb_savepath\" type=\"text\" size=\"63\" maxlength=\"128\" value=\"##LBSAVEPATH##\"></TD></TR>\n\
1517 <TR><TD>##TPLHELPPREFIX##conf#lb_nbest_readers##TPLHELPSUFFIX##Number of best readers:</A></TD><TD><input name=\"lb_nbest_readers\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBNBESTREADERS##\"></TD></TR>\n\
1518 <TR><TD>##TPLHELPPREFIX##conf#lb_nbest_percaid##TPLHELPSUFFIX##Number of best readers per caid:</A></TD><TD><input name=\"lb_nbest_percaid\" type=\"text\" size=\"63\" maxlength=\"320\" value=\"##LBNBESTPERCAID##\"></TD></TR>\n\
1519 <TR><TD>##TPLHELPPREFIX##conf#lb_nfb_readers##TPLHELPSUFFIX##Number of fallback readers:</A></TD><TD><input name=\"lb_nfb_readers\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBNFBREADERS##\"></TD></TR>\n\
1520 <TR><TD>##TPLHELPPREFIX##conf#lb_max_readers##TPLHELPSUFFIX##Max Readers:</A></TD><TD><input name=\"lb_max_readers\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBMAXREADERS##\"></TD></TR>\n\
1521 <TR><TD>##TPLHELPPREFIX##conf#lb_min_ecmcount##TPLHELPSUFFIX##Min ECM count:</A></TD><TD><input name=\"lb_min_ecmcount\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBMINECMCOUNT##\"></TD></TR>\n\
1522 <TR><TD>##TPLHELPPREFIX##conf#lb_max_ecmcount##TPLHELPSUFFIX##Max ECM count:</A></TD><TD><input name=\"lb_max_ecmcount\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBMAXECEMCOUNT##\"></TD></TR>\n\
1523 <TR><TD>##TPLHELPPREFIX##conf#lb_retrylimit##TPLHELPSUFFIX##Retry limit:</A></TD><TD><input name=\"lb_retrylimit\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBRETRYLIMIT##\"></TD></TR>\n\
1524 <TR><TD>##TPLHELPPREFIX##conf#lb_retrylimits##TPLHELPSUFFIX##Special retry limit per caid:</A></TD><TD><input name=\"lb_retrylimits\" type=\"text\" size=\"63\" maxlength=\"320\" value=\"##LBRETRYLIMITS##\"></TD></TR>\n\
1525 <TR><TD>##TPLHELPPREFIX##conf#lb_reopen_seconds##TPLHELPSUFFIX##Time to reopen:</A></TD><TD><input name=\"lb_reopen_seconds\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBREOPENSECONDS##\"></TD></TR>\n\
1526 <TR><TD>##TPLHELPPREFIX##conf#lb_stat_cleanup##TPLHELPSUFFIX##Hours to cleanup older than:</A></TD><TD><input name=\"lb_stat_cleanup\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBCLEANUP##\"></TD></TR>\n\
1527 <TR><TD>##TPLHELPPREFIX##conf#lb_use_locking##TPLHELPSUFFIX##Use locking:</A></TD><TD><SELECT NAME=\"lb_use_locking\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##USELOCKINGCHECKED##>YES</OPTION></SELECT></TD></TR>\n\
1528 <TR><TD>##TPLHELPPREFIX##conf#lb_reopen_mode##TPLHELPSUFFIX##Reopen mode:</A></TD><TD><SELECT NAME=\"lb_reopen_mode\"><OPTION VALUE=\"0\">0 - reopen after time</OPTION><OPTION VALUE=\"1\" ##REOPENMODE##>1 - reopen fast</OPTION></SELECT></TD></TR>\n\
1529 <TR><TD>##TPLHELPPREFIX##conf#lb_noproviderforcaid##TPLHELPSUFFIX##Ignore provider for:</A></TD><TD><input name=\"lb_noproviderforcaid\" type=\"text\" size=\"63\" maxlength=\"160\" value=\"##LBNOPROVIDERFORCAID##\"></TD></TR>\n\
1530 <TR><TD>##TPLHELPPREFIX##conf#lb_auto_betatunnel##TPLHELPSUFFIX##Auto Betatunnel:</A></TD><TD><SELECT NAME=\"lb_auto_betatunnel\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##LBAUTOBETATUNNEL##>YES</OPTION></SELECT></TD></TR>\n\
1531 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1532 </TABLE>\n\
1533 </form>\n\
1534 <BR><BR>\
1535 <form action=\"config.html\" method=\"get\">\n\
1536 <input name=\"part\" type=\"hidden\" value=\"loadbalancer\">\n\
1537 <TABLE class=\"config\">\n\
1538 <TR><TH COLSPAN=\"3\">Control</TH></TR>\n\
1539 <TR>\n\
1540 <TD STYLE=\"text-align:center;\"><input type=\"submit\" name=\"button\" value=\"Load Stats\" ##BTNDISABLED##></TD>\n\
1541 <TD STYLE=\"text-align:center;\"><input type=\"submit\" name=\"button\" value=\"Save Stats\" ##BTNDISABLED##></TD>\n\
1542 <TD STYLE=\"text-align:center;\"><input type=\"submit\" name=\"button\" value=\"Clear Stats\" ##BTNDISABLED##></TD>\n\
1543 </TR>\n\
1544 </TABLE>\n\
1545 </form>\n\
1546##TPLFOOTER##"
1547#endif
1548
1549#ifdef MODULE_CAMD33
1550#define TPLCONFIGCAMD33 "\
1551##TPLHEADER##\
1552##TPLMENU##\
1553##TPLCONFIGMENU##\
1554 <BR><BR>\n\
1555##MESSAGE##\
1556 <form action=\"config.html\" method=\"get\">\n\
1557 <input name=\"part\" type=\"hidden\" value=\"camd33\">\n\
1558 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1559 <TABLE CLASS=\"config\">\n\
1560 <TR><TH COLSPAN=\"2\">Edit Camd33 Config</TH></TR>\n\
1561 <TR><TD>##TPLHELPPREFIX##conf#port_2##TPLHELPSUFFIX##Port:</A></TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PORT##\"></TD></TR>\n\
1562 <TR><TD>##TPLHELPPREFIX##conf#serverip_3##TPLHELPSUFFIX##Serverip:</A></TD><TD><input name=\"serverip\" type=\"text\" size=\"15\" maxlength=\"15\" value=\"##SERVERIP##\"></TD></TR>\n\
1563 <TR><TD>##TPLHELPPREFIX##conf#key##TPLHELPSUFFIX##Key:</A></TD><TD><input name=\"key\" type=\"text\" size=\"32\" maxlength=\"32\" value=\"##KEY##\"></TD></TR>\n\
1564 <TR><TD>##TPLHELPPREFIX##conf#passive##TPLHELPSUFFIX##Passive:</A></TD><TD><SELECT NAME=\"passive\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##PASSIVECHECKED##>YES</OPTION></SELECT></TD></TR>\n\
1565 <TR><TD>##TPLHELPPREFIX##conf#nocrypt_2##TPLHELPSUFFIX##Nocrypt:</A></TD><TD><input name=\"nocrypt\" type=\"text\" size=\"63\" maxlength=\"200\" value=\"##NOCRYPT##\"></TD></TR>\n\
1566 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1567 </TABLE>\n\
1568 </form>\n\
1569##TPLFOOTER##"
1570#endif
1571
1572#ifdef MODULE_CAMD35
1573#define TPLCONFIGCAMD35 "\
1574##TPLHEADER##\
1575##TPLMENU##\
1576##TPLCONFIGMENU##\
1577 <BR><BR>\n\
1578##MESSAGE##\
1579 <form action=\"config.html\" method=\"get\">\n\
1580 <input name=\"part\" type=\"hidden\" value=\"camd35\">\n\
1581 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1582 <input name=\"suppresscmd08\" type=\"hidden\" value=\"0\">\n\
1583 <TABLE class=\"config\">\n\
1584 <TR><TH COLSPAN=\"2\">Edit Camd35 Config</TH></TR>\n\
1585 <TR><TD>##TPLHELPPREFIX##conf#port_3##TPLHELPSUFFIX##Port:</A></TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PORT##\"></TD></TR>\n\
1586 <TR><TD>##TPLHELPPREFIX##conf#serverip_4##TPLHELPSUFFIX##Serverip:</A></TD><TD><input name=\"serverip\" type=\"text\" size=\"15\" maxlength=\"15\" value=\"##SERVERIP##\"></TD></TR>\n\
1587 <TR><TD>##TPLHELPPREFIX##conf#suppresscmd08##TPLHELPSUFFIX##Suppress cmd08:</A></TD><TD><input name=\"suppresscmd08\" type=\"checkbox\" value=\"1\" ##SUPPRESSCMD08UDP##></TD></TR>\n\
1588 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1589 </TABLE>\n\
1590 </form>\n\
1591##TPLFOOTER##"
1592#endif
1593
1594#ifdef MODULE_CAMD35_TCP
1595#define TPLCONFIGCAMD35TCP "\
1596##TPLHEADER##\
1597##TPLMENU##\
1598##TPLCONFIGMENU##\
1599 <BR><BR>\n\
1600##MESSAGE##\
1601 <form action=\"config.html\" method=\"get\">\n\
1602 <input name=\"part\" type=\"hidden\" value=\"camd35tcp\">\n\
1603 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1604 <input name=\"suppresscmd08\" type=\"hidden\" value=\"0\">\n\
1605 <TABLE class=\"config\">\n\
1606 <TR><TH COLSPAN=\"2\">Edit Camd35 TCP Config</TH></TR>\n\
1607 <TR><TD>##TPLHELPPREFIX##conf#port_4##TPLHELPSUFFIX##Port:</A></TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PORT##\"></TD></TR>\n\
1608 <TR><TD>##TPLHELPPREFIX##conf#serverip_5##TPLHELPSUFFIX##Serverip:</A></TD><TD><input name=\"serverip\" type=\"text\" size=\"15\" maxlength=\"15\" value=\"##SERVERIP##\"></TD></TR>\n\
1609 <TR><TD>##TPLHELPPREFIX##conf#suppresscmd08##TPLHELPSUFFIX##Suppress cmd08:</A></TD><TD><input name=\"suppresscmd08\" type=\"checkbox\" value=\"1\" ##SUPPRESSCMD08TCP##></TD></TR>\n\
1610 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1611 </TABLE>\n\
1612 </form>\n\
1613##TPLFOOTER##"
1614#endif
1615
1616#ifdef MODULE_SERIAL
1617#define TPLCONFIGSERIAL "\
1618##TPLHEADER##\
1619##TPLMENU##\
1620##TPLCONFIGMENU##\
1621 <BR><BR>\n\
1622##MESSAGE##\
1623 <form action=\"config.html\" method=\"get\">\n\
1624 <input name=\"part\" type=\"hidden\" value=\"serial\">\n\
1625 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1626 <TABLE class=\"config\">\n\
1627 <TR><TH COLSPAN=\"2\">Edit Serial Config</TH></TR>\n\
1628##DEVICES##\
1629 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1630 </TABLE>\n\
1631 </form>\n\
1632 <BR><BR>\n\
1633##TPLFOOTER##"
1634#endif
1635
1636#define TPLCONFIGSERIALDEVICEBIT "\
1637 <TR><TD>##TPLHELPPREFIX##conf#device##TPLHELPSUFFIX##Device:</A></TD><TD><input name=\"device\" type=\"text\" size=\"63\" maxlength=\"511\" value=\"##SERIALDEVICE##\"></TD></TR>\n"
1638
1639#ifdef HAVE_DVBAPI
1640#define TPLCONFIGDVBAPI "\
1641##TPLHEADER##\
1642##TPLMENU##\
1643##TPLCONFIGMENU##\
1644<BR><BR>\n\
1645##MESSAGE##\
1646<form action=\"config.html\" method=\"get\">\n\
1647 <input name=\"part\" type=\"hidden\" value=\"dvbapi\">\n\
1648 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1649 <input name=\"enabled\" type=\"hidden\" value=\"0\">\n\
1650 <input name=\"au\" type=\"hidden\" value=\"0\">\n\
1651 <TABLE class=\"config\">\n\
1652 <TR><TH COLSPAN=\"2\">Edit DVB Api Config</TH></TR>\n\
1653 <TR><TD>##TPLHELPPREFIX##conf#enabled##TPLHELPSUFFIX##Enabled:</A></TD><TD><input name=\"enabled\" type=\"checkbox\" value=\"1\" ##ENABLEDCHECKED##>\n\
1654 <TR><TD>##TPLHELPPREFIX##conf#au##TPLHELPSUFFIX##AU:</A></TD><TD><input name=\"au\" type=\"checkbox\" value=\"1\" ##AUCHECKED##>\n\
1655 <TR><TD>##TPLHELPPREFIX##conf#boxtype##TPLHELPSUFFIX##Boxtype:</A></TD><TD><SELECT name=\"boxtype\">##BOXTYPE##</select></TD></TR>\n\
1656 <TR><TD>##TPLHELPPREFIX##conf#user_2##TPLHELPSUFFIX##User:</A></TD><TD><input name=\"user\" type=\"text\" size=\"63\" maxlength=\"63\" value=\"##USER##\"></TD></TR>\n\
1657 <TR><TD>##TPLHELPPREFIX##conf#pmt_mode##TPLHELPSUFFIX##PMT Mode:</A></TD><TD><select name=\"pmt_mode\">\n\
1658 <option value=\"0\" ##PMTMODESELECTED0##>0 - use camd.socket and PMT file</option>\n\
1659 <option value=\"1\" ##PMTMODESELECTED1##>1 - disable reading PMT file</option>\n\
1660 <option value=\"2\" ##PMTMODESELECTED2##>2 - disable camd.socket</option>\n\
1661 <option value=\"3\" ##PMTMODESELECTED3##>3 - read PMT file on startup only</option>\n\
1662 <option value=\"4\" ##PMTMODESELECTED4##>4 - do not use signal handler to monitor /tmp</option>\n\
1663 <option value=\"5\" ##PMTMODESELECTED5##>5 - do not use signal handler to monitor /tmp & disable camd.socket</option>\n\
1664 </SELECT></TD></TR>\n\
1665 <TR><TD>##TPLHELPPREFIX##conf#request_mode##TPLHELPSUFFIX##Request Mode:</A></TD><TD><select name=\"request_mode\">\n\
1666 <option value=\"0\" ##REQMODESELECTED0##>0 - try all possible CAIDs one by one</option>\n\
1667 <option value=\"1\" ##REQMODESELECTED1##>1 - try all CAIDs simultaneously</option>\n\
1668 </SELECT></TD></TR>\n\
1669 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"Save\" ##BTNDISABLED##></TD></TR>\n\
1670 </TABLE>\n\
1671</form>\n\
1672##TPLFOOTER##"
1673#endif
1674
1675#define TPLSERVICECONFIGLIST "\
1676##TPLHEADER##\
1677##TPLMENU##\
1678##MESSAGE##\
1679 <BR><BR>\n\
1680 <FORM action=\"services_edit.html\" method=\"get\"><INPUT TYPE=\"hidden\" NAME=\"action\" VALUE=\"add\">\n\
1681 <TABLE CLASS=\"stats\">\n\
1682 <TR>\n\
1683 <TH>Label</TH>\n\
1684 <TH colspan=\"3\" class=\"centered\">Action</TH>\n\
1685 </TR>\n\
1686##SERVICETABS##\
1687 <TR>\n\
1688 <TD>New Service:</TD>\n\
1689 <TD><input name=\"service\" type=\"text\"></TD>\n\
1690 <TD colspan=\"2\" class=\"centered\"><input type=\"submit\" value=\"Add\" ##BTNDISABLED##></TD>\n\
1691 </TR>\n\
1692 </TABLE>\n\
1693 </FORM>\n\
1694##TPLFOOTER##"
1695
1696#define TPLSERVICECONFIGLISTBIT "\
1697 <TR>\n\
1698 <TD>##LABEL##</TD>\n\
1699 <TD width=\"250\" class=\"centered\">\n\
1700##SIDLIST##\
1701 </TD>\n\
1702 <TD><A HREF=\"services_edit.html?service=##LABELENC##&amp;action=edit\" TITLE=\"Edit this Service\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"image?i=ICEDI\" BORDER=\"0\" ALT=\"Edit Service\"></A></TD>\n\
1703 <TD><A HREF=\"services.html?service=##LABELENC##&amp;action=delete\" TITLE=\"Delete this Service\"><IMG HEIGHT=\"16\" WIDTH=\"16\" SRC=\"image?i=ICDEL\" BORDER=\"0\" ALT=\"Delete Service\"></A></TD>\n\
1704 </TR>\n"
1705
1706#define TPLSERVICECONFIGSIDBIT " <DIV class=\"##SIDCLASS##\">##SID##</DIV>\n"
1707
1708#define TPLSERVICEEDIT "\
1709##TPLHEADER##\
1710##TPLMENU##\
1711##MESSAGE##\
1712 <BR><BR>\n\
1713 <form action=\"services_edit.html\" method=\"get\">\n\
1714 <input name=\"service\" type=\"hidden\" value=\"##LABELENC##\">\n\
1715 <TABLE CLASS=\"stats\">\n\
1716 <TR><TH COLSPAN=\"2\">Edit Service ##LABEL##</TH></TR>\n\
1717 <TR><TD>##TPLHELPPREFIX##services#caid##TPLHELPSUFFIX##caid: </A></TD><TD><input name=\"caid\" type=\"text\" size=\"63\" maxlength=\"160\" value=\"##CAIDS##\"></TD></TR>\n\
1718 <TR><TD>##TPLHELPPREFIX##services#provid##TPLHELPSUFFIX##provid: </A></TD><TD><input name=\"provid\" type=\"text\" size=\"63\" maxlength=\"60\" value=\"##PROVIDS##\"></TD></TR>\n\
1719 <TR><TD>##TPLHELPPREFIX##services#srvid##TPLHELPSUFFIX##srvid: </A></TD><TD><textarea name=\"srvid\" cols=\"80\" rows=\"5\">##SRVIDS##</textarea></TD></TR>\n\
1720 <TR><TD>&nbsp;</TD><TD align=\"right\"><input type=\"submit\" name=\"action\" value=\"Save\" title=\"Save service and reload services\" ##BTNDISABLED##></TD>\n\
1721 </TABLE>\n\
1722 </form>\n\
1723##TPLFOOTER##"
1724
1725#define TPLPRESHUTDOWN "\
1726##TPLHEADER##\
1727##TPLMENU##\
1728 <br><br><br>\n\
1729 <DIV class = \"warning\">Do you really want to shutdown&#47; restart oscam?<br>All users will become disconnected.<br>\n\
1730 If you use &#39;Shutdown&#39; you will not be able to restart oscam from webinterface.<br>\n\
1731 The webinterface will try to connect to oscam once a few seconds after shutdown&#47; restart.</b><br>\n\
1732 </DIV>\n\
1733 <br>\n\
1734 <form action=\"shutdown.html\" method=\"get\">\n\
1735 <input type=\"submit\" name=\"action\" value=\"Shutdown\" title=\"Shutdown OSCam\" ##BTNDISABLED##>\n\
1736 <input type=\"submit\" name=\"action\" value=\"Restart\" title=\"Restart OSCam\" ##BTNDISABLED##>\n\
1737 </form>\n\
1738##TPLFOOTER##"
1739
1740#define TPLSHUTDOWN "\
1741<HTML>\n\
1742<HEAD>\n\
1743 <TITLE>OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</TITLE>\n\
1744 <link href=\"favicon.ico\" rel=\"icon\" type=\"image/x-icon\"/>\
1745##REFRESH##\
1746 <style type=\"text/css\">\n\
1747##STYLESHEET##\n\
1748 </style>\n\
1749</HEAD>\n\
1750<BODY>\n\
1751 <H2>OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</H2>\
1752##TPLMENU##\
1753 <br><P CLASS=\"blinking\">OSCam Shutdown - Try Reconnect in ##SECONDS## Seconds</p><br><br>\n\
1754##TPLFOOTER##"
1755
1756#define TPLSCRIPT "\
1757##TPLHEADER##\
1758##TPLMENU##\
1759##MESSAGE##\
1760 <br><br><b>OSCam execute script: ##SCRIPTNAME## --> Status: ##SCRIPTRESULT## --> Returncode: ##CODE##</b><br>\n\
1761##TPLFOOTER##"
1762
1763enum refreshtypes {REFR_ACCOUNTS, REFR_READERS, REFR_SERVER, REFR_ANTICASC, REFR_SERVICES};
1764
1765char *tpl[]={
1766 "HEADER",
1767 "APIHEADER",
1768 "APIERROR",
1769 "APICONFIRMATION",
1770 "FOOTER",
1771 "APIFOOTER",
1772 "MENU",
1773 "REFRESH",
1774 "HELPPREFIX",
1775 "HELPSUFFIX",
1776 "STATUS",
1777 "APISTATUS",
1778 "CLIENTSTATUSBIT",
1779 "APISTATUSBIT",
1780 "USERCONFIGLIST",
1781 "ADDNEWUSER",
1782 "USERCONFIGLISTBIT",
1783 "APIUSERCONFIGLIST",
1784 "APIUSERCONFIGLISTBIT",
1785 "SIDTAB",
1786 "SIDTABBIT",
1787 "READERS",
1788 "READERSBIT",
1789 "READERENTITLEBIT",
1790 "READERREFRESHBIT",
1791 "READERSTATS",
1792 "READERSTATSBIT",
1793 "SCANUSB",
1794 "SCANUSBBIT",
1795 "ENTITLEMENTS",
1796 "ENTITLEMENTGENERICBIT",
1797 "ENTITLEMENTCCCAMBIT",
1798 "ENTITLEMENTCCCAMENTRYBIT",
1799 "APICCCAMCARDLIST",
1800 "APICCCAMCARDBIT",
1801 "APICCCAMCARDNODEBIT",
1802 "APICCCAMCARDPROVIDERBIT",
1803 "APIREADERSTATS",
1804 "APIREADERSTATSEMMBIT",
1805 "APIREADERSTATSECMBIT",
1806 "READERCONFIG",
1807 "READERCONFIGSIDOKBIT",
1808 "READERCONFIGSIDNOBIT",
1809 "READERCONFIGSTDHWREADERBIT",
1810 "READERCONFIGHOPBIT",
1811 "READERCONFIGCAMD35BIT",
1812 "READERCONFIGCS378XBIT",
1813 "READERCONFIGRADEGASTBIT",
1814 "READERCONFIGNCD525BIT",
1815 "READERCONFIGNCD524BIT",
1816 "READERCONFIGCCCAMBIT",
1817 "USEREDIT",
1818 "USEREDITRDRSELECTED",
1819 "USEREDITSIDOKBIT",
1820 "USEREDITSIDNOBIT",
1821 "SAVETEMPLATES",
1822 "CONFIGMENU",
1823 "FILEMENU",
1824 "FILE",
1825 "FAILBAN",
1826 "FAILBANBIT",
1827 "CONFIGGBOX",
1828 "CONFIGMONITOR",
1829 "CONFIGGLOBAL",
1830 "CONFIGSERIALDEVICEBIT",
1831 "SERVICECONFIGLIST",
1832 "SERVICECONFIGLISTBIT",
1833 "SERVICECONFIGSIDBIT",
1834 "SERVICEEDIT",
1835 "PRESHUTDOWN",
1836 "SHUTDOWN",
1837 "SCRIPT"
1838#ifdef HAVE_DVBAPI
1839 ,"CONFIGDVBAPI"
1840 ,"CONFIGMENUDVBAPI"
1841 ,"FILEMENUDVBAPI"
1842#endif
1843#ifdef CS_ANTICASC
1844 ,"USEREDITANTICASC"
1845 ,"CONFIGANTICASC"
1846 ,"CONFIGMENUANTICASC"
1847 ,"FILEMENUANTICASC"
1848#endif
1849#ifdef CS_WITH_DOUBLECHECK
1850 ,"DOUBLECHECKBIT"
1851#endif
1852#ifdef LIBUSB
1853 ,"READERCONFIGDEVICEEPBIT"
1854#endif
1855#ifdef WITH_DEBUG
1856 ,"DEBUGSELECT"
1857#endif
1858#ifdef WITH_LB
1859 ,"CONFIGMENULB"
1860 ,"CONFIGLOADBALANCER"
1861#endif
1862#ifdef MODULE_CAMD33
1863 ,"CONFIGCAMD33"
1864 ,"CONFIGMENUCAMD33"
1865#endif
1866#ifdef MODULE_CAMD35
1867 ,"CONFIGCAMD35"
1868 ,"CONFIGMENUCAMD35"
1869#endif
1870#ifdef MODULE_CCCAM
1871 ,"CONFIGCCCAM"
1872 ,"CONFIGMENUCCCAM"
1873#endif
1874#ifdef MODULE_NEWCAMD
1875 ,"CONFIGNEWCAMD"
1876 ,"CONFIGMENUNEWCAMD"
1877#endif
1878#ifdef MODULE_RADEGAST
1879 ,"CONFIGRADEGAST"
1880 ,"CONFIGMENURADEGAST"
1881#endif
1882#ifdef MODULE_CAMD35_TCP
1883 ,"CONFIGCAMD35TCP"
1884 ,"CONFIGMENUCAMD35TCP"
1885#endif
1886#ifdef MODULE_SERIAL
1887 ,"CONFIGSERIAL"
1888 ,"CONFIGMENUSERIAL"
1889#endif
1890#ifdef LCDSUPPORT
1891 ,"LCDOPTIONS"
1892#endif
1893 ,"ICMAI"
1894 ,"ICSTA"
1895 ,"ICDEL"
1896 ,"ICEDI"
1897 ,"ICENT"
1898 ,"ICREF"
1899 ,"ICKIL"
1900 ,"ICDIS"
1901 ,"ICENA"
1902 ,"ICHID"
1903 ,"ICRES"
1904};
1905
1906char *tplmap[]={
1907 TPLHEADER,
1908 TPLAPIHEADER,
1909 TPLAPIERROR,
1910 TPLAPICONFIRMATION,
1911 TPLFOOTER,
1912 TPLAPIFOOTER,
1913 TPLMENU,
1914 TPLREFRESH,
1915 TPLHELPPREFIX,
1916 TPLHELPSUFFIX,
1917 TPLSTATUS,
1918 TPLAPISTATUS,
1919 TPLCLIENTSTATUSBIT,
1920 TPLAPISTATUSBIT,
1921 TPLUSERCONFIGLIST,
1922 TPLADDNEWUSER,
1923 TPLUSERCONFIGLISTBIT,
1924 TPLAPIUSERCONFIGLIST,
1925 TPLAPIUSERCONFIGLISTBIT,
1926 TPLSIDTAB,
1927 TPLSIDTABBIT,
1928 TPLREADERS,
1929 TPLREADERSBIT,
1930 TPLREADERENTITLEBIT,
1931 TPLREADERREFRESHBIT,
1932 TPLREADERSTATS,
1933 TPLREADERSTATSBIT,
1934 TPLSCANUSB,
1935 TPLSCANUSBBIT,
1936 TPLENTITLEMENTS,
1937 TPLENTITLEMENTGENERICBIT,
1938 TPLENTITLEMENTCCCAMBIT,
1939 TPLENTITLEMENTCCCAMENTRYBIT,
1940 TPLAPICCCAMCARDLIST,
1941 TPLAPICCCAMCARDBIT,
1942 TPLAPICCCAMCARDNODEBIT,
1943 TPLAPICCCAMCARDPROVIDERBIT,
1944 TPLAPIREADERSTATS,
1945 TPLAPIREADERSTATSEMMBIT,
1946 TPLAPIREADERSTATSECMBIT,
1947 TPLREADERCONFIG,
1948 TPLREADERCONFIGSIDOKBIT,
1949 TPLREADERCONFIGSIDNOBIT,
1950 TPLREADERCONFIGSTDHWREADERBIT,
1951 TPLREADERCONFIGHOPBIT,
1952 TPLREADERCONFIGCAMD35BIT,
1953 TPLREADERCONFIGCS378XBIT,
1954 TPLREADERCONFIGRADEGASTBIT,
1955 TPLREADERCONFIGNCD525BIT,
1956 TPLREADERCONFIGNCD524BIT,
1957 TPLREADERCONFIGCCCAMBIT,
1958 TPLUSEREDIT,
1959 TPLUSEREDITRDRSELECTED,
1960 TPLUSEREDITSIDOKBIT,
1961 TPLUSEREDITSIDNOBIT,
1962 TPLSAVETEMPLATES,
1963 TPLCONFIGMENU,
1964 TPLFILEMENU,
1965 TPLFILE,
1966 TPLFAILBAN,
1967 TPLFAILBANBIT,
1968 TPLCONFIGGBOX,
1969 TPLCONFIGMONITOR,
1970 TPLCONFIGGLOBAL,
1971 TPLCONFIGSERIALDEVICEBIT,
1972 TPLSERVICECONFIGLIST,
1973 TPLSERVICECONFIGLISTBIT,
1974 TPLSERVICECONFIGSIDBIT,
1975 TPLSERVICEEDIT,
1976 TPLPRESHUTDOWN,
1977 TPLSHUTDOWN,
1978 TPLSCRIPT
1979#ifdef HAVE_DVBAPI
1980 ,TPLCONFIGDVBAPI
1981 ,TPLCONFIGMENUDVBAPI
1982 ,TPLFILEMENUDVBAPI
1983#endif
1984#ifdef CS_ANTICASC
1985 ,TPLUSEREDITANTICASC
1986 ,TPLCONFIGANTICASC
1987 ,TPLCONFIGMENUANTICASC
1988 ,TPLFILEMENUANTICASC
1989#endif
1990#ifdef CS_WITH_DOUBLECHECK
1991 ,TPLDOUBLECHECKBIT
1992#endif
1993#ifdef LIBUSB
1994 ,TPLREADERCONFIGDEVICEEPBIT
1995#endif
1996#ifdef WITH_DEBUG
1997 ,TPLDEBUGSELECT
1998#endif
1999#ifdef WITH_LB
2000 ,TPLCONFIGMENULB
2001 ,TPLCONFIGLOADBALANCER
2002#endif
2003#ifdef MODULE_CAMD33
2004 ,TPLCONFIGCAMD33
2005 ,TPLCONFIGMENUCAMD33
2006#endif
2007#ifdef MODULE_CAMD35
2008 ,TPLCONFIGCAMD35
2009 ,TPLCONFIGMENUCAMD35
2010#endif
2011#ifdef MODULE_CCCAM
2012 ,TPLCONFIGCCCAM
2013 ,TPLCONFIGMENUCCCAM
2014#endif
2015#ifdef MODULE_NEWCAMD
2016 ,TPLCONFIGNEWCAMD
2017 ,TPLCONFIGMENUNEWCAMD
2018#endif
2019#ifdef MODULE_RADEGAST
2020 ,TPLCONFIGRADEGAST
2021 ,TPLCONFIGMENURADEGAST
2022#endif
2023#ifdef MODULE_CAMD35_TCP
2024 ,TPLCONFIGCAMD35TCP
2025 ,TPLCONFIGMENUCAMD35TCP
2026#endif
2027#ifdef MODULE_SERIAL
2028 ,TPLCONFIGSERIAL
2029 ,TPLCONFIGMENUSERIAL
2030#endif
2031#ifdef LCDSUPPORT
2032 ,TPLLCDOPTIONS
2033#endif
2034 ,ICMAI
2035 ,ICSTA
2036 ,ICDEL
2037 ,ICEDI
2038 ,ICENT
2039 ,ICREF
2040 ,ICKIL
2041 ,ICDIS
2042 ,ICENA
2043 ,ICHID
2044 ,ICRES
2045};
2046
2047struct templatevars {
2048 uint32_t varscnt;
2049 uint32_t varsalloc;
2050 uint32_t tmpcnt;
2051 uint32_t tmpalloc;
2052 char **names;
2053 char **values;
2054 uint8_t *vartypes;
2055 char **tmp;
2056};
2057
2058struct uriparams {
2059 int32_t paramcount;
2060 char *params[MAXGETPARAMS];
2061 char *values[MAXGETPARAMS];
2062};
2063
2064static char noncekey[33];
2065
2066int32_t cv(){return 91789605==crc32(0L,(unsigned char*)ICMAI,strlen(ICMAI))/2?1:0;}
2067
Note: See TracBrowser for help on using the repository browser.