source: trunk/oscam-http.h@ 4149

Last change on this file since 4149 was 4147, checked in by alno, 13 years ago

WebIf: add debuglevel 128 (Dvb Api)

File size: 82.7 KB
Line 
1
2#define SERVER "webserver/1.0"
3#define PROTOCOL "HTTP/1.0"
4#define RFC1123FMT "%a, %d %b %Y %H:%M:%S GMT"
5#define AUTHREALM "Forbidden"
6#define AUTHNONCEVALIDSECS 15
7#define MAXGETPARAMS 100
8#define SHUTDOWNREFRESH 30
9
10#define CSS "\
11body {background-color: white; font-family: Arial; font-size: 11px; text-align:center}\n\
12p {color: white; }\n\
13h2 {color: #F7F7F7; font-family: Arial; font-size: 50px; line-height: 50px; text-align:center; margin-top:0px; margin-bottom:0px}\n\
14h4 {color: #AAAAAA; font-family: Arial; font-size: 12px; line-height: 9px; text-align:center}\n\
15TABLE {border-spacing:1px; border:0px; padding:0px; margin-left:auto; margin-right:auto;}\n\
16TH {height:10px; border:0px; font-family: Arial; font-size: 11px; padding:5px; background-color:#CCCCCC; color:black;}\n\
17TD {height:10px; border:0px; font-family: Arial; font-size: 11px; padding:5px; background-color:#EEEEEE; color:black;}\n\
18HR {height:1px; border-width:0; color:white; background-color:#AAAAAA}\n\
19TR.s TD {background-color:#e1e1ef;}\n\
20TR.l TD {background-color:#e1e1ef;}\n\
21TR.n TD {background-color:#e1e1ef;}\n\
22TR.h TD {background-color:#e1e1ef;}\n\
23TR.r TD {background-color:#fff3e7;}\n\
24TR.p TD {background-color:#fdfbe1;}\n\
25TR.c TD {background-color:#f1f5e6;}\n\
26TR.online TD {background-color:#f1f5e6;}\n\
27TR.expired TD {background-color:#ffe2d4;}\n\
28TR.usrcfg_anticasc TD {background-color:#FEF9BF;}\n\
29TR.usrcfg_cccam TD {background-color:#E6FEBF;}\n\
30TR.scanusbsubhead TD {background-color:#fdfbe1;}\n\
31DIV.log {border:1px dotted #AAAAAA; background-color: #FAFAFA; padding:10; font-family:\"Courier New\", monospace; color:#666666; font-size: 11px; word-wrap:break-word; text-align:left; }\n\
32DIV.sidlist {border:1px dotted #AAAAAA; background-color: #fffdf5; padding:2; font-family:\"Courier New\", monospace ; color:#666666; font-size: 11px; word-wrap:break-word; text-align:left;}\n\
33TABLE.menu {border-spacing:0px; border:0px; padding:0px; margin-left:auto; margin-right:auto;}\n\
34TABLE.status {border-spacing:1px; border:0px; padding:0px; background-color:white; empty-cells:show;}\n\
35TABLE.config {width:750px;}\n\
36TABLE.invisible TD {border:0px; font-family:Arial; font-size: 12px; padding:5px; background-color:#EEEEEE;}\n\
37TD.menu {font-color:wblack; background-color:white; font-family: Arial; font-size:14px; font-weight:bold;}\n\
38TD.script {font-color:black; background-color:white; font-family: Arial; font-size:14px; font-weight:bold;}\n\
39TD.shutdown {font-color:black; background-color:white; font-family: Arial; font-size:14px; font-weight:bold;}\n\
40TD.shutdown A:hover {color: red;}\n\
41TD.configmenu {font-color:black; background-color:white; font-family: Arial; font-size:11px; font-weight:bold;}\n\
42textarea.bt{font-family: Arial; font-size: 12px;}\n\
43textarea.editor {width:100%; height:450px;border:1px dotted #AAAAAA; background-color: #FAFAFA; padding:10; font-family:\"Courier New\", monospace; color:#666666; font-size: 11px; word-wrap:break-word; text-align:left; }\n\
44input{font-family: Arial; font-size: 12px;}\n\
45A:link {color: #050840;}\n\
46A:visited {color: #050840;}\n\
47A:active {color: #050840;}\n\
48A:hover {color: #ff9e5f;}\n\
49DIV.message {float:right}\n\
50IMG{border:0px solid;}\n\
51P.blinking {text-decoration: blink; font-weight:bold; font-size:large; color:red;}\n\
52H4.styleauthor:after {content:\"Eneen\";}\n"
53
54#define JSCRIPT "\
55 function do_nothing(){}"
56
57#define ICMAI "data:image/x-icon;base64,\
58AAABAAEAEBAAAAEACABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAAA\
59AAAAAADw//8A7/D/AODg4ADf8P8A0PD/AM///wDA4P8Az8/PALDw/wCQz/8AsLC/AGDP/wBgz88A\
60YJD/AGCQzwBfr+8AYJCQAC9gzwAvYJAAIADfAC8AzwAvL5AAHw+wAF9QXwAfQGAAEB9vACAgIAAQ\
61LzAAABAfAA8PDwAADw8AAAAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
62AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
63AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
64AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
65AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
66AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
67AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
68AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
69AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
70AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
71AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
72AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
73AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
74AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
75AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
76AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/\
77//8AICAOBgMEBiAgIAMDBg8gICAgEQ8gDgkICAgLGA8RICAgICAgBAgIBQQEBQgbICAgICAgCAYF\
78CAMBAQEDCCAgICAgIAkWEwwBAAAAAAAgICAgIB4IExYIAQwAAAAAICAgICAgCRYZFBMTFBUHASAg\
79ICAgIBQTExMTExMTExYgICAgIBMTEyAgGBAgICATExMgICAZHyANDwsIBQUIICAZICAgICAgICAS\
80DhwgICAgICAgICAgICD/AiD/AiAgICAgICAgICAg/xog/xogICAgICAgICAgIP8CIP8CICAgICAg\
81ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMHDYQDAA2UA4AcuAMADbQBAAgAAAAACAAAA\
820QKAAW4AwAF3AMABbQDgA1wA4ANpAPAHZADwB3MA+A9hAPwfYgA="
83
84#define ICSTA "data:image/png;base64,\
85iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QAAAAAAAD5Q7t/AAAACXBI\
86WXMAAABIAAAASABGyWs+AAAACXZwQWcAAAAQAAAAEABcxq3DAAAC3UlEQVQ4y31QTWhUVxg93733\
873ffeZPIymczoZGISMRi1kh+zEAKiCxfZBrqwpS0yIhFcxH0GFBWDFEQR3NhC7cZAFxU1+JdKsQtL\
88N63Q2lYRNZkkxozOm2TG+Xtz73VhRFqNB87uO+d85xBWkBoZwXd79uCb8fHOiO8PWZXKDlavt4Oo\
89pKT8qxwO35xOJH5dm8+X901MAIkEAIAA4OzgIJZc1+l+9uwzN58/xIrFrSYILBjz5ohzYxzHr3ve\
90pB+JfJ2KRu+nZmdx4eFD8FN9fchz7nySyaTdxcUTVCi0Qyn+VgwA0JpQrbq8VOqzlNpwlYnJpEH1\
915ossyAD4obNzJOz7Z6hWc0GE1aCENe+vj4w7X3oz8zlM1QOq8HVdXd2xYvG0VCrJOMeHyDkHbGch\
92195ytHVEDzTLl+mQZR7s7in8LVpqtWGHaBNJ+bHk5/lE07Gug+gP0XKKjOFSBAeu/Ob9JBqIdtlS\
938lXFXGT9ePj4llHR43F/P4zkgI2Qpm2bW4Me4VpWu71Kb8VYPuc1HNl4KLSuxc5/zmCXDRwQAGVA\
94Ta7pENJxgtUMysb8ebuPbq2vyF12tSVt3mwOADDGmKVXpT8Ec90HEhj4oEVdB5fbMr1FMXcYRBLA\
95WwOCRgWEWRE4zg1hzDAH3PcMmIYSdTvgqhUM/1mZ1dm8CMS8mBHielyIu45Su/+v16QR9cJwowAY\
96reQbEBFYSdwNnrJ/xHA0mr1XqYy7Wm+WWre9+xGoG4V4swe1xgKxlQIEUMAXdImdkyleZqcLBQxm\
97Mj9nbXs0kPIx4xyMMdAKY5FGJGMRJGPNSMabkWyKZeM6ml7cS7/QbRtsbGoKY21tZmBu7scnlvXp\
98kpTf1oSY0ZwrQ0w32A6anAYVkeFcRHvXwrnGL15dEN/3nlyjr6fv4N34jY24ODSEaaXkdsa6o0C/\
99qgbl83ur952N4Z2mxP6tPDL3Or4KLV/qmMbvmTsAgNduAx7n+HHZEQAAACV0RVh0Y3JlYXRlLWRh\
100dGUAMjAwOS0wOS0yOFQxMToyNzo1NC0wNDowMEqLuj0AAAAldEVYdG1vZGlmeS1kYXRlADIwMDkt\
101MDUtMThUMTY6MTA6MDAtMDQ6MDAci9a9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5\
102ccllPAAAAABJRU5ErkJggg=="
103
104#define ICDEL "data:image/png;base64,\
105iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA\
106BGdBTUEAALGeYUxB9wAAACBjSFJNAAB6JQAAgIMAAPn/AACA6AAAUggAARVYAAA6lwAAF2/XWh+Q\
107AAADFklEQVR42qSRS2icVRxHz//e+30z40zSNI1NJ5M0aWpj0hCToEiRqAhWS5G2ii7ERVdioSC4\
108E7pyI5SutIsufCJaFIoQRLJQKVpKwaRYA1XTF01MWpukdJLM8/vuw0VF3HvgtzmrHxw5uWPHrvGD\
109Bz7u6u3uvvDRJ58uXr3xjktTnEBOQQZIAOcDOE+kVfuD/f3vbhvY9dyN8xdOm7GXDn0zvm/vw/Ha\
110XdSzE8fOrZWL1/+8fURpxX+xzpPRes/A2OiHW4eHB27PL8xvNGqXTDYTt6ryKmZ9hd5NJiru6Xvj\
111+2b5qemVxhNBSTkA1ntVatt0Zmxs7FBZqdr01NTRtNH8IADyXrFILjJvPTby0LGhgt2il25SWy7z\
11281+N1Ys1P5QTBoeiaLJUKrVfrtWn55ZuTeTiOMm3tlKrrCOndvZTW1nFJE3aI94fKegjHd5FSdMz\
113V3eVnCNXMEbPeP/ZPesOiyiiOCaXz1OrrKNEBBMZspmYlVr65tnlxs5za+7XtbqjZEMh57z+yboT\
114d7w/jNYEQAARQQCTpgn1pEnTWoxSVIW7SRoi5z0uQFYLmxXPLHuFDQBCYi3NahV8QD/eqNNMU3wI\
115aOgZ9H5ut/O9VRFmjf62JSP94wXVvZBKx5plSgSch6a1JB5UCAFECNA54Nxsv/NbrBYuRerLRSUv\
116/JjKy+tZ7V7cHh9VwiMuQOD+kwAouZ9ZDTg/0xdCm4mFP4y6eQt5NQaanskzd+xrsRZ5ssNMhuAx\
117Ev6dkgBF5z4fCr47m9WsRNr+7uV5HcAFMEDDhq++nm8e3503fdti9br84w2ggndbh9rbXikUYsgJ\
118M5YTqedKCGA9BAJZBUsN//Yv99Iro3lzXAhoQANqc6FwoO/pCdM22Iu0xCFj5FRPTtGVVXRmFaLA\
119C0QaZjfsfnHhgU6tDuZFKIigqkm6mB0doWP/Xih1+Yb19dQHEh+wIRADERADAa7/VncnuxTDPRp6\
120NOhHrb2WeLevZXtP8YezF08vlCtf1FNPNfVUUo8SRaQEEUGL0IDvanC+AmEDkBAC/4e/BwACT2zM\
121WyQBIAAAAABJRU5ErkJggg=="
122
123#define ICEDI "data:image/png;base64,\
124iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAChUlEQVQ4jY2SW0hTcRzHv+dsO5ed\
125aa65jm5uYx60UVBIRCY+9BZ0EUFDNLogLbpYD/UQRBQRQQ9BRfnQQxFBUKFCSiQ9hGSaUuCNJEPL\
126W5Fzw02P7mzn8u9lTdSFfZ9/n8//++P3N2GdnBUE3PJ6X50URb+bpj+8X1xcD1lORc1hvD1Y8eAu\
127QB7b7eSdJA11BgLOzQzzfwL9a2Pp4PdvpO3KTXIbIA8FgTS7XKRPkvZRqRn6X/Dn52dAJabavCO1\
1282HnUicqRGcAp4lcohKlotORvB1Mm+HTNTgSP7Hoa/dm7O6GEoI0/gUUbgPtyO4iiTbz51FPVo6oA\
129AGo1nC2wiA1e3Rub6m9XFoYBQ4GmzoG1+qDKXxDf8iwg7Tg+gsRi5hWGWk6widkfrYnYIMzMJqjJ\
130EPisbdDVBYgbmfNVBw6l4TWCGw1l8OYzr2Phj4yZ90FLzoITimGQJKyW+e57Ldr9/vGVD6ZXcDtz\
131MN1VXx8Z7X5kGAosQhGS8jAYoQj60jCZX4hmF9aG5NWN0w1KSyQYmnRdNxKwOsqhKZPgsrZDT4bg\
132yCbVZQ3hNfAKQaHPCY0WCtiia9BYEQyTB8OQsYFXmi80hlt+R4xM/LLA780XGHsOaNqAKbccpuJz\
133YFnIQ2NL1XdezGWEV8TndW2tqdxDYmNtJDHTRUhy9GV4ujc340fJlAKPZz9vtZECV15rZKLTfeni\
134KbCcDR6PF36/H6IowuFwwG63g2XZNEfV1dUhGAz6Ozo6jtE0bS6UpAFV1a08x9p4nuNTc3EAcYqi\
135CIB5iqLmOI6bbGpqGjUrioJwOJwVCAT6AOTouu5iLCaLrms2WZZJSmADIAPQkDq9oiiReDyOP4iW\
136/fvrVslmAAAAAElFTkSuQmCC"
137
138#define ICENT "data:image/png;base64,\
139iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ\
140bWFnZVJlYWR5ccllPAAAAjlJREFUeNqUU99LFFEU/u7MnXHujtouJWKwbbD9MIhyoexJGXwoIhR6\
141iF76A4KgJwMfliAQRJKeeqrXHgp6MqhMpTVfKoxsi/Qh2wpZUmS00FbdOzOeO625bbLYhQ9mzpzv\
142O985Zy6rv/54UHCtMwgC7PQwxlCQ/qOYMLq4Ivd2tcLzfWg7IPsEXdOQHnzdqWpyScTdFkf3s2/g\
143pMCqkJVHSQoDp/dB8UwqSQIBYpaBw3tqoTNlr4oAKXgEla94oYMiKToJi5DA/5x1n8FTDvzS8Kam\
144PpLFfy2wMKYDmkng4XtzsgmFwAbzDPDNRDtSi6CSzH6TGbexMjkAmXsAzg18HWdIN57DtcbhLYFI\
145RNCEKwbANCoq4L7qh7E0ioPtHdDNGlqFxNWZLNwl+7a2uX5LWLCsmr8gKCZsgYW3d7C/5RR0EcN0\
146ZgTTLzJoOJLCqgyubDkQgv6FoKx3ZYBDp/aLHiNyNJzP3Pxi+L3ZqoOUHq2+5FrTOWH7iUsZYM2d\
147g8452s5fhEYkz/0Oj3bKDb36//fyZhwtjgNDGPg1n4dhkmnPx5eZWeQXCg9ZXff9MRapby9SUHWg\
148VrmuZuvZyDZdQjzVhmjiEBZnc8hmnv4RHip2POm7ce+yauAAYVdl5Uzv3oljqaOIxZNwf6zi/dgQ\
149nHT+RFmK++Fua44l+obLLoqGlUBgwr6ATz/t5yZbdlR8jTeMnOl51zN+6/gbgy6MSV2PypM4a09W\
150vTtJQrT0rEb/ebukDQEGABzNvVc4pYJ1AAAAAElFTkSuQmCC"
151
152#define ICREF "data:image/png;base64,\
153iVBORw0KGgoAAAANSUhEUgAAAA4AAAAQCAYAAAAmlE46AAAABHNCSVQICAgIfAhkiAAAABl0RVh0\
154U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAALFSURBVCiRZZFLaFx1FMZ/59x7M5OZSWJq\
15588DYpAabBkGNLVLrKIIbxQe0+MBaZQoFERG3VtRlF0UqghHBjXONZCGCUgQRIUWdSZVWSzfWpq+Y\
156ttZMm0yaTud15/6Piwwo9Vsevt/3wXfEzAAohnKHet5+4BEXx/2quiLKybjlJoGvsjmL2j4BDoqZ\
157UQxlh6pOD24cCnoHBv1EaoSWy1CvXKN04ffKtdJcZM72ZHN2aHZKPjTjRSnkGVPP+3Xz1nsyyXRA\
158HCUJ0qOIP4z4tyPaQ7N2lZM/vlNt1sonEumBrY3qYk1mP9MP+jYMvR4Enl6evyAudiB+nFm3sXrb\
1592OOZnsHHRLxekDR/zx2wW4d3y/FvnlqR2Slv0Q/8/qgZmTlXB94CpoAJ9eT9noFtm+584GDKC7pA\
160u3DxKke/vLesZnZLqxk5c+5bYBn4Ppuz5WzOZra/5CbKf/389rGvH7W4VaNV/QnWxjQ1M3XOzQGn\
161AAd4tFUMJa0qr449uM/5iQ34yfsAATAp5EkD1Wyu/Zd/IQUOAU8GnX1NETVEDSCqXl6RQsgSxjr+\
162r++A3UB8010AzxcItr3wB6JpwHH17Hvu7NHJc87xXDZn129OK4ayGZjx1xKUVu0IzqU4/cukAvv/\
163CxVDuQv4YtMEz3QkeTdqSJ+ulXv4qYfoyGxh4olpUt2DHx35XH8ohnJ3m90VJGgsLjDZinSXerok\
164xZDK/c8eSy8v5G396Bsi2oWLFlg6/7FdOjVTq19f6BBVHzA/8EVEXKPW2CfFkBvd/Vt0tfTbuc7u\
165oZHxhw+kg84RLJrHtc4T18/QuDFPVLuEiM+ZE6fLzrlxKeSpqDK9/WV7pRjK86J80r1+1OsfHs8k\
166Mz14skq98iflxVJUunilac6ezubssBTyfArszebMtYdIADs9X18zs3EXW696egU47GL3ZjZnFwH+\
167AYRRPIe3vIMRAAAAAElFTkSuQmCC"
168
169#define ICKIL "data:image/png;base64,\
170R0lGODlhEAAQANUhAP///yk0QKGqtHF6hWBsdsopAJMAAP/M/8vS1+Lm6f9MDP+DIP8pAP8zAP9s\
171FK64w9zf76Ors8nQ1evs8err8PLy/Ozv+4SMlOvw+6GqsoOJkfPy/NDT3GdweP/+/tHU3Wdvd///\
172/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
173AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACEALAAAAAAQABAAAAaHwJBw\
174SBwSBEXiYDkgACSBZGgAwECcCEG0SE0IsNpk9wvIBi5cgDdAiGgfHaU6HAoEPo/tdK4HTDYAAEJj\
175Wx4FBYGHgxZfBEIFBweHkQVTVwAZAQAGCwuRnQZTYAEUmw6nDqEhoxwVAAUKsQqVow8PrwcMDQ0M\
176kgJmGiCaBroGBryhdknGQsxBADs="
177
178#define ICDIS "data:image/png;base64,\
179iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA\
180BGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VG\
181AAADAUlEQVR42mJkAILW1taU////FzIxMUkD6Rt///7trqurW8uABJqampwYGRkrWVhYTP/9+/cO\
182qGbm1q1bewACiBkoEcvMzDyfm5tbVExMjIOfn1/mz58/YTY2Nt/3799/FKS5vr4+mouLa4WOjo66\
183np4eh4CAgOD3799dZGVlvwEEEAvQVpDNDBwcHAxARQxAAxh4eHgY7t+/3wk0/AfQphdsbGwLjYyM\
184mB0dHRlAaj98+MAAdAXDhQsXkgACiAVomzRI8MePHwxfv35lALqGgZeXl0FRUZHhwYMHE4Hif/X1\
1859ZmBLgJrBgGgC8AWAfnCAAHE8u3bt9NATd5AGu5fYDiAFSkoKIDYzLq6unDNIPDz50+GV69eMfz+\
186/fsGQACxAImOT58+OfHx8XEC/QVWCAwsMA1yCcgmoBqws4WFhcGGHz16lOH69ev/gQZNAAgg5hMn\
187TjwyMDB48OvXL39gODCB/AbCMIOAoQ62FebN48ePMxw+fJjhy5cvFR0dHbMBAogZJHn69OnL2tra\
18814AKvIEByQYyAKQZGQMDk+HWrVsg2/+8e/euaOLEiX0gvQABxALzFygMQDEBsgmkGOgtsDjMAJDT\
189QeKsrKwMQNfCwwMggMAu8Pf3jwb6dSkwXtlhgQXTAOODYkdQUJABGFZMQBd4AGPp+6VLl44CBBCz\
190l5eXjZCQ0GoVFRU2kGKQRhiAhQfMJSB5UOyA8MePH12kpaWvAgQQs6qq6jR1dXUtkPORNcOcDooB\
191ZDFQoIJiB+gixsePH0sDBBALOzu7KScnJ1bN9+7dA4X2Xy0tLWaYV0DioBQLshCoVwMggFiAAfIU\
192mBrFgBywITDNd+/eZQDakA/0wovLly8vA+YBZpgFsFT7+fPntwABxAwMjG9ARYEgf4FsAfn54cOH\
193DI8ePSrfuXNnH9AVV4F+vQvU4AnMcKwgw0EJDphXGJ48edINEECMIBPd3d0Tgc5KAHpFAhidd4EK\
1945gA1r0POzs7Ozk5AZ2cBY0EX6Or3QK+tBqbOCQABBgCzBWGTrJ55PAAAAABJRU5ErkJggg=="
195
196#define ICENA "data:image/png;base64,\
197iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA\
198BGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VG\
199AAADKUlEQVR42mJgAAJpBgbNmQwMUy8yMOzoZ2CYKM7AoMOABtQYGMw2MjDMusTAsLOdgaGHh4FB\
200HiQOEIBmObQBEIYCKPhSwwDNlyTdoB2DDoBgcRwKhy3BPjCcP+LLN5ympBGasw9cFZY/r7AJw9a0\
201dy3FA/YJ5lcAhuTYBkAQAIDgD0HHChROQGVPIokjOIZzYOlIzEFha2Nerj1uuGZqjJqzlqIp+cGz\
202wLrBPv+1Vu1dx9DWNAQPOH8BxGLCwKAKtuY/UNkXoFvY2IBu0mRgYmAQOH/lyiagDDuDszMTQ2oq\
203A4OwMAODoCADg7Y2A4OQEIP6mzcKAAHEshXoFC0GBkeGjx8hmv/9Y2BgYgIbwvDjBycDBwcDg5cX\
204A8Pv30CPPoZYdPUqA8OzZwzA8HgAEECMfEDzgIyDwBARZuDjA5sMtkVMjIGBhwdiq5wcA4OICNDH\
205sgwMT54wMHR3M1y7c+epHgODA0AAMf9kYHgNdMUldwYGH+GfPzkY/gJ9z8gIsQnkIhYWiKtANMjm\
206adMYLj98+NKBgSHiKwPDeYAAYgZ5/x0Dwx2gZ8+4MDAEiv/6xQ42BOQNkCEgzcxAZa9eMTCsWcNw\
2078tWrN44MDAEfGBiOgvQCBBALLKqADhXiBtoJ5nz9CrEdpBHkGpDtXFwMDNzcDPzv3rEBPcb9CaoP\
208IIDALgCGacRyBoaFwMTCAY+RX78gmmF8Tk5g0pFnEPn+nd3twwe/zQwMF4CG3AUIIGagaaaLGBjW\
209mwGVoCQ9kKafPyFeABkEokGGAANU/OtXDu2PHz2WMjBsAgggZmBCaSkFJlMGbABkyI8fiHAAhQ0o\
210WoFeUXn2jGvP378fAAKIBZgPFBlwgAnA1Ai0kz39wwcucKCCMMigP3/AbGCEywAEEIMzA0PfD4hd\
211KHgaA8NLoFJrAQYGV6AX34PFBQT+/5eV/f9fTOw/SA8wqVUBBBDIIvk6YGr8BtUIkuhlYHgIjAN7\
212mEuAyct9BgPD819QNcAE/7+AgeEsUEoKIICgwcwgDcw4iVLAIAKms0fAlAmMFIa76DkamG+igFld\
213+j5Q7hoDwwKg2AuAAAMAa/8Fcw6Og8MAAAAASUVORK5CYII="
214
215#define ICHID "data:image/png;base64,\
216iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0\
217U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJdSURBVDjLpZP7S1NhGMf9W7YfogSJboSE\
218UVCY8zJ31trcps6zTI9bLGJpjp1hmkGNxVz4Q6ildtXKXzJNbJRaRmrXoeWx8tJOTWptnrNryre5\
219YCYuI3rh+8vL+/m8PA/PkwIg5X+y5mJWrxfOUBXm91QZM6UluUmthntHqplxUml2lciF6wrmdHri\
220I0Wx3xw2hAediLwZRWRkCPzdDswaSvGqkGCfq8VEUsEyPF1O8Qu3O7A09RbRvjuIttsRbT6HHzeb\
221sDjcB4/JgFFlNv9MnkmsEszodIIY7Oaut2OJcSF68Qx8dgv8tmqEL1gQaaARtp5A+N4NzB0lMXxo\
222n/uxbI8gIYjB9HytGYuusfiPIQcN71kjgnW6VeFOkgh3XcHLvAwMSDPohOADdYQJdF1FtLMZPmsl\
223vhZJk2ahkgRvq4HHUoWHRDqTEDDl2mDkfheiDgt8pw340/EocuClCuFvboQzb0cwIZgki4KhzlaE\
2246w0InipbVzBfqoK/qRH94i0rgokSFeO11iBkp8EdV8cfJo0yD75aE2ZNRvSJ0lZKcBXLaUYmQrCz\
225DT6tDN5SyRqYlWeDLZAg0H4JQ+Jt6M3atNLE10VSwQsN4Z6r0CBwqzXesHmV+BeoyAUri8EyMfi2\
226FowXS5dhd7doo2DVII0V5BAjigP89GEVAtda8b2ehodU4rNaAW+dGfzlFkyo89GTlcrHYCLpKD+V\
2277yeeHNzLjkp24Uu1Ed6G8/F8qjqGRzlbl2H2dzjpMg1KdwsHxOlmJ7GTeZC/nesXbeZ6c9OYnuxU\
228c3fmBuFft/Ff8xMd0s65SXIb/gAAAABJRU5ErkJggg=="
229
230#define TPLHEADER "\
231 <HTML>\n\
232 <HEAD>\n\
233 <TITLE>OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</TITLE>\n\
234 <link rel=\"stylesheet\" type=\"text/css\" href=\"site.css\">\n\
235 <link href=\"##ICO##\" rel=\"icon\" type=\"image/x-icon\"/>\
236 ##REFRESH##\
237 <script type=\"text/javascript\" src=\"oscam.js\"></script>\
238 </HEAD>\n\
239 <BODY>\n\
240 <DIV CLASS=\"header\">\
241 <H2 CLASS=\"headline1\">OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</H2>\
242 </DIV>"
243
244#define TPLAPIHEADER "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\
245<oscam version=\"##CS_VERSION## build ###CS_SVN_VERSION##\" starttime=\"##STARTDATE## - ##STARTTIME##\">\n"
246
247#define TPLFOOTER "\
248 <BR><HR/><BR><DIV CLASS=\"footer\">\n\
249 <H4 CLASS=\"footline1\">OSCAM Webinterface developed by Streamboard Team - ##CURDATE## ##CURTIME## | Access from ##CURIP##</H4>\n\
250 <H4 CLASS=\"footline2\">Start: ##STARTDATE## - ##STARTTIME## | UpTime: ##UPTIME## | Process ID: ##PROCESSID##</H4>\n\
251 <H4 CLASS=\"styleauthor\">WebIf Style by </H4>\
252 </DIV>\n\
253 </BODY>\
254 </HTML>"
255
256#define TPLAPIFOOTER "</oscam>"
257
258#define TPLREFRESH "\
259 \n<meta http-equiv=\"refresh\" content=\"##REFRESHTIME##; URL=##REFRESHURL##\" />\n"
260
261#define TPLMENU "\
262 <TABLE border=0 class=\"menu\">\n\
263 <TR>\n\
264 <TD CLASS=\"menu\"><A HREF=\"status.html\">STATUS</TD>\n\
265 <TD CLASS=\"menu\"><A HREF=\"config.html\">CONFIGURATION</TD>\n\
266 <TD CLASS=\"menu\"><A HREF=\"readers.html\">READERS</TD>\n\
267 <TD CLASS=\"menu\"><A HREF=\"userconfig.html\">USERS</TD>\n\
268 <TD CLASS=\"menu\"><A HREF=\"services.html\">SERVICES</TD>\n\
269 <TD CLASS=\"menu\"><A HREF=\"files.html\">FILES</TD>\n\
270 <TD CLASS=\"menu\"><A HREF=\"failban.html\">FAILBAN</TD>\n\
271 <TD CLASS=\"script\"><A HREF=\"script.html\">SCRIPT</TD>\n\
272 <TD CLASS=\"shutdown\"><A HREF=\"shutdown.html\">SHUTDOWN</TD>\n\
273 </TR>\n\
274 </TABLE>"
275
276#define TPLCONFIGMENU "\
277 <BR><BR>\n\
278 <TABLE border=0 class=\"configmenu\">\n\
279 <TR>\n\
280 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=global\">Global</TD>\n\
281 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=loadbalancer\">Loadbalancer</TD>\n\
282 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=camd33\">Camd3.3</TD>\n\
283 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=camd35\">Camd3.5</TD>\n\
284 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=camd35tcp\">Camd3.5 TCP</TD>\n\
285 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=newcamd\">Newcamd</TD>\n\
286 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=radegast\">Radegast</TD>\n\
287 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=cccam\">Cccam</TD>\n\
288 ##TPLCONFIGMENUGBOX##\
289 ##TPLCONFIGMENUANTICASC##\
290 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=monitor\">Monitor</TD>\n\
291 <TD CLASS=\"configmenu\"><A HREF=\"config.html?part=serial\">Serial</TD>\n\
292 ##TPLCONFIGMENUDVBAPI##\
293 </TR>\n\
294 </TABLE>"
295
296#define TPLFILEMENU "\
297 <BR><BR>\n\
298 <TABLE border=0 class=\"configmenu\">\n\
299 <TR>\n\
300 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=version\">oscam.version</TD>\n\
301 ##TPLFILEMENUDVBAPI##\
302 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=conf\">oscam.conf</TD>\n\
303 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=user\">oscam.user</TD>\n\
304 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=server\">oscam.server</TD>\n\
305 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=services\">oscam.services</TD>\n\
306 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=srvid\">oscam.srvid</TD>\n\
307 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=provid\">oscam.provid</TD>\n\
308 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=tiers\">oscam.tiers</TD>\n\
309 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=logfile\">logfile</TD>\n\
310 <TD CLASS=\"configmenu\"><A HREF=\"files.html?part=userfile\">userfile</TD>\n\
311 ##TPLFILEMENUANTICASC##\
312 </TR>\n\
313 </TABLE>"
314
315#define TPLFILE "\
316 ##TPLHEADER##\
317 ##TPLMENU##\n\
318 ##TPLFILEMENU##\n\
319 <BR><BR>##SDEBUG####SLOG####SCLEAR##<BR>##FILTER##\n\
320 <FORM ACTION=\"files.html\" method=\"post\">\n\
321 <INPUT TYPE=\"hidden\" NAME=\"part\" VALUE=\"##PART##\">\n\
322 <TEXTAREA NAME=\"filecontent\" CLASS=\"editor\">##FILECONTENT##</TEXTAREA><BR>##WRITEPROTECTION##<BR>\n\
323 <INPUT TYPE=\"submit\" NAME=\"action\" VALUE=\"Save\" TITLE=\"Save file is not yet implemented\" ##BTNDISABLED##>\n\
324 </FORM>\n\
325 ##TPLFOOTER##"
326
327#define TPLDEBUGSELECT "\
328 <SPAN CLASS=\"debugt\"> Switch Debug from&nbsp;##ACTDEBUG## to&nbsp;</SPAN>\n\
329 <A CLASS=\"debugl\" HREF=\"##NEXTPAGE##?debug=0##CUSTOMPARAM##\" title=\"no debugging (default)\">0</A>&nbsp;\n\
330 <A CLASS=\"debugl\" HREF=\"##NEXTPAGE##?debug=1##CUSTOMPARAM##\" title=\"detailed error messages\">1</A>&nbsp;\n\
331 <A CLASS=\"debugl\" HREF=\"##NEXTPAGE##?debug=2##CUSTOMPARAM##\" title=\"ATR parsing info, ECM dumps, CW dumps\">2</A>&nbsp;\n\
332 <A CLASS=\"debugl\" HREF=\"##NEXTPAGE##?debug=4##CUSTOMPARAM##\" title=\"traffic from/to the reader\">4</A>&nbsp;\n\
333 <A CLASS=\"debugl\" HREF=\"##NEXTPAGE##?debug=8##CUSTOMPARAM##\" title=\"traffic from/to the clients\">8</A>&nbsp;\n\
334 <A CLASS=\"debugl\" HREF=\"##NEXTPAGE##?debug=16##CUSTOMPARAM##\" title=\"traffic to the reader-device on IFD layer\">16</A>&nbsp;\n\
335 <A CLASS=\"debugl\" HREF=\"##NEXTPAGE##?debug=32##CUSTOMPARAM##\" title=\"traffic to the reader-device on I/O layer\">32</A>&nbsp;\n\
336 <A CLASS=\"debugl\" HREF=\"##NEXTPAGE##?debug=64##CUSTOMPARAM##\" title=\"EMM logging\">64</A>&nbsp;\n\
337 <A CLASS=\"debugl\" HREF=\"##NEXTPAGE##?debug=128##CUSTOMPARAM##\" title=\"DVB Api\">128</A>&nbsp;\n\
338 <A CLASS=\"debugl\" HREF=\"##NEXTPAGE##?debug=255##CUSTOMPARAM##\" title=\"debug all\">255</A>\n"
339
340#define TPLFAILBAN "\
341##TPLHEADER##\
342##TPLMENU##\n\
343 <BR><BR>\n\
344 <BR><BR>\n\
345 <TABLE CLASS=\"stats\">\n\
346 <TR><TH colspan=\"4\">List of banned IP Addresses</TH></TR>\n\
347 <TR><TH>IP Address</TH><TH>Violation date</TH><TH>left ban time</TH><TH>Action</TH></TR>\n\
348 ##FAILBANROW##\n\
349 </TABLE><BR>\n\
350##TPLFOOTER##"
351
352#define TPLFAILBANBIT "\
353 <TR><TD>##IPADDRESS##</TD>\
354 <TD>##VIOLATIONDATE##</TD>\
355 <TD align=\"center\">##LEFTTIME##</TD>\
356 <TD align=\"center\"><A HREF=\"failban.html?action=delete&intip=##INTIP##\" TITLE=\"Delete Entry\"><IMG SRC=\"##DELICO##\" BORDER=\"0\" ALT=\"Delete Entry\"/></A></TD></TR>\n"
357
358#ifdef CS_ANTICASC
359#define TPLCONFIGMENUANTICASC "<TD CLASS=\"configmenu\"><A HREF=\"config.html?part=anticasc\">Anticascading</A></TD>\n"
360#define TPLFILEMENUANTICASC "<TD CLASS=\"configmenu\"><A HREF=\"files.html?part=anticasc\">AC Log</A></TD>\n"
361#endif
362
363#ifdef HAVE_DVBAPI
364#define TPLCONFIGMENUDVBAPI "<TD CLASS=\"configmenu\"><A HREF=\"config.html?part=dvbapi\">DVB-Api</A></TD>\n"
365#define TPLFILEMENUDVBAPI "<TD CLASS=\"configmenu\"><A HREF=\"files.html?part=dvbapi\">oscam.dvbapi</A></TD>\n"
366#endif
367
368#ifdef CS_WITH_GBOX
369#define TPLCONFIGMENUGBOX "<TD CLASS=\"configmenu\"><A HREF=\"config.html?part=gbox\">Gbox</A></TD>\n"
370#endif
371
372#define TPLSTATUS "\
373 ##TPLHEADER##\
374 ##TPLMENU##\n\
375 <BR><BR>\n\
376 <form action=\"status.html\" method=\"get\">\n\
377 <select name=\"hideidle\">\n\
378 <option value=\"0\" ##HIDEIDLECLIENTSSELECTED0##>Show idle clients</option>\n\
379 <option value=\"1\" ##HIDEIDLECLIENTSSELECTED1##>Hide idle clients</option>\n\
380 <option value=\"2\">Show hidden clients</option>\n\
381 </select>\n\
382 <input type=\"submit\" value=\"Update\">\n\
383 </form>\n\
384 <TABLE WIDTH=\"100%\" cellspacing=\"0\" class=\"status\">\n\
385 <TR>\n\
386 <TH>hide</TH>\n\
387 <TH>Thread ID</TH>\n\
388 <TH>Type</TH>\n\
389 <TH>ID</TH>\n\
390 <TH>Label</TH>\n\
391 <TH>AU</TH>\n\
392 <TH>Crypted</TH>\n\
393 <TH>Address</TH>\n\
394 <TH>Port</TH>\n\
395 <TH>Protocol</TH>\n\
396 <TH>Login</TH>\n\
397 <TH>Online</TH>\n\
398 <TH>CAID:SRVID</TH>\n\
399 <TH>Current Channel</TH>\n\
400 <TH>LB Value/ Reader</TH>\n\
401 <TH>Idle</TH>\n\
402 <TH>Status</TH>\n\
403 </TR>\n\
404 ##SERVERSTATUS##\n\
405 ##READERHEADLINE##\n\
406 ##READERSTATUS##\n\
407 ##PROXYHEADLINE##\n\
408 ##PROXYSTATUS##\n\
409 ##CLIENTHEADLINE##\n\
410 ##CLIENTSTATUS##\n\
411 </TABLE><BR>\n\
412 <DIV class=\"log\">\n\
413 ##LOGHISTORY##\
414 </DIV><BR>\n\
415 ##SDEBUG##\
416 ##TPLFOOTER##"
417
418#define TPLAPISTATUS "##TPLAPIHEADER##\n\
419 <status>\n\
420##APISTATUSBITS##\
421 </status>\n\
422 <log>\n\
423 ##LOGHISTORY##\
424 </log>\
425##TPLAPIFOOTER##"
426
427
428#define TPLCLIENTSTATUSBIT "\
429 <TR class=\"##CLIENTTYPE##\">\n\
430 <TD align=\"center\" WIDTH=\"10\"><A HREF =\"status.html?hide=##HIDEIDX##\" TITLE=\"Hide this client\"><IMG SRC=\"##HIDEICON##\" ALT=\"Hide\"></A></TD>\n\
431 <TD align=\"center\">##CSIDX##</TD>\n\
432 <TD align=\"center\">##CLIENTTYPE##</TD>\n\
433 <TD align=\"center\">##CLIENTCNR##</TD>\n\
434 <TD>##CLIENTUSER##</TD>\n\
435 <TD align=\"center\">##CLIENTCAU##</TD>\n\
436 <TD align=\"center\">##CLIENTCRYPTED##</TD>\n\
437 <TD align=\"center\">##CLIENTIP##</TD>\n\
438 <TD align=\"center\">##CLIENTPORT##</TD>\n\
439 <TD><SPAN TITLE=\"##CLIENTPROTOTITLE##\">##CLIENTPROTO##</SPAN></TD>\n\
440 <TD align=\"center\">##CLIENTLOGINDATE##</TD>\n\
441 <TD align=\"center\">##CLIENTLOGINSECS##</TD>\n\
442 <TD align=\"center\">##CLIENTCAID##:##CLIENTSRVID##</TD>\n\
443 <TD>##CLIENTSRVPROVIDER####CLIENTSRVNAME##</TD>\n\
444 <TD align=\"center\">##CLIENTLBVALUE##</TD>\n\
445 <TD align=\"center\">##CLIENTIDLESECS##</TD>\n\
446 <TD align=\"center\">##CLIENTCON##</TD>\n\
447 </TR>\n"
448
449
450#define TPLAPISTATUSBIT " <client type=\"##CLIENTTYPE##\" name=\"##CLIENTUSER##\" protocol=\"##CLIENTPROTO##\" protocolext=\"##CLIENTPROTOTITLE##\">\n\
451 <request caid=\"##CLIENTCAID##\" srvid=\"##CLIENTSRVID##\">##CLIENTSRVPROVIDER####CLIENTSRVNAME##</request>\n\
452 <times login=\"##CLIENTLOGINDATE##\" online=\"##CLIENTLOGINSECS##\" idle=\"##CLIENTIDLESECS##\"></times>\n\
453 <connection ip=\"##CLIENTIP##\" port=\"##CLIENTPORT##\">##CLIENTCON##</connection>\n\
454 </client>\n"
455
456
457#define TPLUSERCONFIGLIST "\
458 ##TPLHEADER##\
459 ##TPLMENU##\n\
460 ##MESSAGE##\
461 <BR>\
462 <TABLE CLASS=\"configmenu\">\
463 <TR>\
464 <TD CLASS=\"configmenu\"><A HREF=\"userconfig.html?part=adduser\">Add User</TD>\
465 <TD CLASS=\"configmenu\"><A HREF=\"userconfig.html?action=reinit\">Reinit User DB</TD>\
466 </TR>\
467 </TABLE><BR>\
468 <TABLE CLASS=\"users\">\n\
469 <TR>\n\
470 <TH>Lock</TH>\n\
471 <TH>Label</TH>\n\
472 <TH>Status</TH>\n\
473 <TH>Protocol</TH>\n\
474 <TH>Last Channel</TH>\n\
475 <TH>Idle</TH>\n\
476 <TH>OK</TH>\n\
477 <TH>NOK</TH>\n\
478 <TH>IGN</TH>\n\
479 <TH>TOUT</TH>\n\
480 <TH>CACHE</TH>\n\
481 <TH>TUN</TH>\n\
482 <TH>LTIME</TH>\n\
483 <TH>EOK</TH>\n\
484 <TH>ENOK</TH>\n\
485 <TH colspan=\"2\" align=\"center\">Action</TH>\n\
486 </TR>\n\
487 ##USERCONFIGS##\
488 ##NEWUSERFORM##\
489 </TABLE><BR>\n\
490 <TH>Totals for the server: </TH>\n\
491 <TABLE cellspacing=\"0\" cellpadding=\"10\">\n\
492 <TR>\
493 <TH>OK</TH>\n\
494 <TH>NOK</TH>\n\
495 <TH>IGN</TH>\n\
496 <TH>TOUT</TH>\n\
497 <TH>CACHE</TH>\n\
498 <TH>TUN</TH>\n\
499 </TR>\n\
500 <TD align=\"center\">##TOTAL_CWOK##</TD>\n\
501 <TD align=\"center\">##TOTAL_CWNOK##</TD>\n\
502 <TD align=\"center\">##TOTAL_CWIGN##</TD>\n\
503 <TD align=\"center\">##TOTAL_CWTOUT##</TD>\n\
504 <TD align=\"center\">##TOTAL_CWCACHE##</TD>\n\
505 <TD align=\"center\">##TOTAL_CWTUN##</TD>\n\
506 </TABLE><BR>\n\
507 ##TPLFOOTER##"
508
509#define TPLADDNEWUSER "\
510 <TR>\n\
511 <FORM action=\"user_edit.html\" method=\"get\">\n\
512 <TD>&nbsp;</TD>\n\
513 <TD colspan=\"6\">New User:&nbsp;&nbsp;<input name=\"user\" type=\"text\">&nbsp;&nbsp;&nbsp;<input type=\"submit\" value=\"Add User\" ##BTNDISABLED##></TD>\n\
514 <TD colspan=\"10\" align=\"center\"></TD>\n\
515 </FORM>\n\
516 <TR>\n"
517
518#define TPLUSERCONFIGLISTBIT "\
519 <TR class=\"##CLASSNAME##\">\n\
520 <TD align=\"center\"><A HREF=\"userconfig.html?user=##USERENC##&action=##SWITCH##\" TITLE=\"##SWITCHTITLE##\"><IMG SRC=\"##SWITCHICO##\"BORDER=\"0\" ALT=\"##SWITCHTITLE##\"/></A></TD>\n\
521 <TD>##USER##</TD>\n\
522 <TD>##STATUS####EXPIRED##</TD>\n\
523 <TD align=\"center\">##CLIENTPROTO##</TD>\n\
524 <TD>##LASTCHANNEL##</TD>\n\
525 <TD align=\"center\">##IDLESECS##</TD>\n\
526 <TD align=\"center\">##CWOK##</TD>\n\
527 <TD align=\"center\">##CWNOK##</TD>\n\
528 <TD align=\"center\">##CWIGN##</TD>\n\
529 <TD align=\"center\">##CWTOUT##</TD>\n\
530 <TD align=\"center\">##CWCACHE##</TD>\n\
531 <TD align=\"center\">##CWTUN##</TD>\n\
532 <TD align=\"center\">##CWLASTRESPONSET##</TD>\n\
533 <TD align=\"center\">##EMMOK##</TD>\n\
534 <TD align=\"center\">##EMMNOK##</TD>\n\
535 <TD align=\"center\"><A HREF=\"user_edit.html?user=##USERENC##\" TITLE=\"edit this user\"><IMG SRC=\"##EDIICO##\" BORDER=\"0\" ALT=\"Edit User\"/></A></TD>\n\
536 <TD align=\"center\"><A HREF=\"userconfig.html?user=##USERENC##&action=delete\" TITLE=\"delete this user\"><IMG SRC=\"##DELICO##\"BORDER=\"0\" ALT=\"Delete User\"/></A></TD>\n\
537 </TR>\n"
538
539#define TPLUSEREDIT "\
540##TPLHEADER##\
541##TPLMENU##\n\
542<DIV CLASS=\"message\">##MESSAGE##</DIV>\
543<BR><BR>\n\
544 <form action=\"user_edit.html\" method=\"get\">\n\
545 <input name=\"user\" type=\"hidden\" value=\"##USERNAME##\">\n\
546 <TABLE CLASS=\"config\">\n\
547 <TR><TH>&nbsp;</TH> <TH>Edit User ##USERNAME##</TH></TR>\n\
548 <TR><TD>Password:</TD><TD><input name=\"pwd\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##PASSWORD##\"></TD></TR>\n\
549 <TR><TD>Disabled:</TD><TD><SELECT NAME=\"disabled\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##DISABLEDCHECKED##>YES</OPTION></SELECT></TD></TR>\n\
550 <TR><TD>Exp. Date:</TD><TD><input name=\"expdate\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##EXPDATE##\"></TD></TR>\n\
551 <TR><TD>Failban:</TD><TD><input name=\"failban\" type=\"text\" size=\"2\" maxlength=\"1\" value=\"##FAILBAN##\"></TD></TR>\n\
552 <TR><TD>Allowed Timeframe:</TD><TD><input name=\"allowedtimeframe\" type=\"text\" size=\"15\" maxlength=\"11\" value=\"##ALLOWEDTIMEFRAME##\">&nbsp;(hh:mm-hh:mm)</TD></TR>\n\
553 <TR><TD>Group:</TD><TD><input name=\"group\" type=\"text\" size=\"20\" maxlength=\"20\" value=\"##GROUPS##\"></TD></TR>\n\
554 <TR><TD>Hostname:</TD><TD><input name=\"hostname\" type=\"text\" size=\"60\" maxlength=\"50\" value=\"##DYNDNS##\"></TD></TR>\n\
555 <TR><TD>Uniq:</TD><TD><select name=\"uniq\">\n\
556 <option value=\"0\" ##UNIQSELECTED0##>0 - none</option>\n\
557 <option value=\"1\" ##UNIQSELECTED1##>1 - strict first</option>\n\
558 <option value=\"2\" ##UNIQSELECTED2##>2 - per IP</option>\n\
559 <option value=\"3\" ##UNIQSELECTED3##>3 - strict last</option>\n\
560 <option value=\"4\" ##UNIQSELECTED4##>4 - per IP last</option>\n\
561 </SELECT></TD></TR>\n\
562 <TR><TD>Sleep:</TD><TD><input name=\"sleep\" type=\"text\" size=\"4\" maxlength=\"4\" value=\"##SLEEP##\"></TD></TR>\n\
563 <TR><TD>Monlevel:</TD><TD><select name=\"monlevel\">\n\
564 <option value=\"0\" ##MONSELECTED0##>0 - no access to monitor</option>\n\
565 <option value=\"1\" ##MONSELECTED1##>1 - only server and own procs</option>\n\
566 <option value=\"2\" ##MONSELECTED2##>2 - all procs, but viewing only, default</option>\n\
567 <option value=\"3\" ##MONSELECTED3##>3 - all procs, reload of oscam.user possible</option>\n\
568 <option value=\"4\" ##MONSELECTED4##>4 - complete access</option>\n\
569 </select></TD></TR>\n\
570 <TR><TD>AU:</TD><TD><select name=\"au\">\n\
571 <option value=\" \" ##AUSELECTED##>none</option>\n\
572 <option value=\"1\" ##AUTOAUSELECTED##>auto</option>\n\
573 ##RDROPTION##\
574 </select></TD></TR>\n\
575 <TR><TD>Services:</TD><TD>\n\
576 <TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##\
577 </TD>\n\
578 </TR>\n\
579 </TABLE>\n\
580 <TR><TD>CAID:</TD><TD><input name=\"caid\" type=\"text\" size=\"60\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\n\
581 <TR><TD>Ident:</TD> <TD><textarea name=\"ident\" cols=\"58\" rows=\"3\" class=\"bt\">##IDENTS##</textarea></TD></TR>\n\
582 <TR><TD>CHID:</TD> <TD><textarea name=\"chid\" cols=\"58\" rows=\"3\" class=\"bt\">##CHIDS##</textarea></TD></TR>\n\
583 <TR><TD>Betatunnel:</TD><TD><textarea name=\"betatunnel\" cols=\"58\" rows=\"3\" class=\"bt\">##BETATUNNELS##</textarea></TD></TR>\n\
584 <TR><TD>Suppresscmd08:</TD><TD><SELECT NAME=\"suppresscmd08\"><OPTION VALUE=\"0\">OFF</OPTION><OPTION VALUE=\"1\" ##SUPPRESSCMD08##>ON</OPTION></SELECT></TD></TR>\n\
585 <TR><TD>Sleepsend:</TD><TD><input name=\"sleepsend\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##SLEEPSEND##\"> 0 or 255</TD></TR>\n\
586 ##TPLUSEREDITANTICASC##\
587 <TR class=\"usrcfg_cccam\"><TD>CCC Maxhops:</TD><TD><input name=\"cccmaxhops\" type=\"text\" size=\"3\" maxlength=\"2\" value=\"##CCCMAXHOPS##\"></TD></TR>\n\
588 <TR class=\"usrcfg_cccam\"><TD>CCC Reshare:</TD><TD><input name=\"cccreshare\" type=\"text\" size=\"3\" maxlength=\"2\" value=\"##CCCRESHARE##\"></TD></TR>\n\
589 <TR><TD>Keepalive:</TD><TD><SELECT NAME=\"keepalive\"><OPTION VALUE=\"0\">OFF</OPTION><OPTION VALUE=\"1\" ##KEEPALIVE##>ON</OPTION></SELECT></TD></TR>\n\
590 <TR>\
591 <TD align=\"center\"><input type=\"submit\" name=\"action\" value=\"Save\" title=\"Save settings and reload users\" ##BTNDISABLED##></TD>\n\
592 <TD align=\"center\"><input name=\"newuser\" type=\"text\" size=\"20\" maxlength=\"20\" title=\"Enter new username if you want to clone this user\">&nbsp;&nbsp;&nbsp;<input type=\"submit\" name=\"action\" value=\"Save As\" title=\"Save as new user and reload users\" ##BTNDISABLED##></TD>\n\
593 </TR>\n\
594 </TABLE>\n\
595</form>\n\
596##TPLFOOTER##"
597
598#define TPLUSEREDITRDRSELECTED "\t<option value=\"##READERNAME##\" ##SELECTED##>##READERNAME##</option>"
599
600#define TPLUSEREDITSIDOKBIT "\
601 <TR>\n\
602 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"##SIDLABEL##\" ##CHECKED##> ##SIDLABEL##</TD>\n"
603
604#define TPLUSEREDITSIDNOBIT "\
605 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"!##SIDLABEL##\" ##CHECKED##> !##SIDLABEL##</TD>\n\
606 </TR>\n"
607
608#ifdef CS_ANTICASC
609# define TPLUSEREDITANTICASC "\
610 <TR class=\"usrcfg_anticasc\"><TD>Anticascading numusers:</TD><TD><input name=\"numusers\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##AC_USERS##\"></TD></TR>\n\
611 <TR class=\"usrcfg_anticasc\"><TD>Anticascading penalty:</TD><TD><input name=\"penalty\" type=\"text\" size=\"3\" maxlength=\"3\" value=\"##AC_PENALTY##\"></TD></TR>\n"
612#endif
613
614#define TPLSIDTAB "\
615 ##TPLHEADER##\
616 ##TPLMENU##\n\
617 <BR><BR><DIV class=\"log\">\n\
618 ##SIDTABS##\
619 </DIV>\n\
620 ##TPLFOOTER##"
621
622#define TPLSIDTABBIT "\
623label=##LABEL##<BR>\n\
624caid(##CAIDNUM##)=##CAIDS##<BR>\n\
625provider(##PROVIDNUM##)=##PROVIDS##<BR>\n\
626services(##SRVIDNUM##)=##SRVIDS##<BR><BR>\n"
627
628#define TPLREADERS "\
629##TPLHEADER##\
630##TPLMENU##\n\
631<BR><BR>\n\
632 <TABLE CLASS=\"configmenu\"><TR><TD CLASS=\"configmenu\"><A HREF=\"scanusb.html\">Scan USB</A></TD></TR></TABLE><BR>\
633 <TABLE CLASS=\"readers\">\n\
634 <TR>\n\
635 <TH>Lock</TH>\n\
636 <TH>Reader</TH>\n\
637 <TH>Protocol</TH>\n\
638 <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\
639 <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\
640 <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\
641 <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\
642 <TH COLSPAN=\"5\">Action</TH>\n\
643 </TR>\n\
644 ##READERLIST##\
645 <TR>\
646 <form action=\"readerconfig.html\" method=\"get\">\n\
647 <TD>&nbsp;</TD>\
648 <TD COLSPAN=\"2\" align=\"center\">New Reader</TD>\
649 <TD COLSPAN=\"2\" align=\"center\">Label:&nbsp;&nbsp;<input type=\"text\" name=\"label\" value=\"##NEXTREADER##\"></TD>\
650 <TD COLSPAN=\"2\" align=\"center\">Protocol:&nbsp;&nbsp;<select name=\"protocol\">\
651 <option>mouse</option>\
652 <option>mp35</option>\
653 <option>smartreader</option>\
654 <option>internal</option>\
655 <option>serial</option>\
656 <option>camd35</option>\
657 <option>cs378x</option>\
658 <option>radegast</option>\
659 <option>newcamd</option>\
660 <option>newcamd524</option>\
661 <option>cccam</option>\
662 <option>pcsc</option>\
663 <option>constcw</option>\
664 ##ADDPROTOCOL##\
665 </select></TD>\
666 <TD COLSPAN=\"5\" align=\"center\"><input type=\"submit\" name=\"action\" value=\"Add\" ##BTNDISABLED##></TD></TR>\
667 </form>\
668 </TABLE>\n\
669##TPLFOOTER##"
670
671#define TPLREADERSBIT "\
672 <TR CLASS =\"##READERCLASS##\">\n\
673 <TD align=\"center\"><A HREF=\"readers.html?label=##READERNAMEENC##&action=##SWITCH##\" TITLE=\"##SWITCHTITLE##\"><IMG SRC=\"##SWITCHICO##\"BORDER=\"0\" ALT=\"##SWITCHTITLE##\"/></A></TD>\n\
674 <TD>##READERNAME##</TD>\n\
675 <TD>##CTYP##</TD>\n\
676 <TD align=\"center\">##EMMERRORUK## / ##EMMERRORG## / ##EMMERRORS## / ##EMMERRORUQ##</TD>\n\
677 <TD align=\"center\">##EMMWRITTENUK## / ##EMMWRITTENG## / ##EMMWRITTENS## / ##EMMWRITTENUQ##</TD>\n\
678 <TD align=\"center\">##EMMSKIPPEDUK## / ##EMMSKIPPEDG## / ##EMMSKIPPEDS## / ##EMMSKIPPEDUQ##</TD>\n\
679 <TD align=\"center\">##EMMBLOCKEDUK## / ##EMMBLOCKEDG## / ##EMMBLOCKEDS## / ##EMMBLOCKEDUQ##</TD>\n\
680 <TD align=\"center\"><A HREF=\"readerconfig.html?label=##READERNAMEENC##\" TITLE=\"Edit this Reader\"><IMG SRC=\"##EDIICO##\" BORDER=\"0\" ALT=\"Edit Reader\"/></A></TD>\
681 <TD align=\"center\">##ENTITLEMENT##</TD>\n\
682 <TD align=\"center\">##READERREFRESH##</TD>\n\
683 <TD align=\"center\"><A HREF=\"readerstats.html?label=##READERNAMEENC##&hide=4\" TITLE=\"Show loadbalancer statistics\"><IMG SRC=\"##STATICO##\" BORDER=\"0\" ALT=\"Loadbalancer statistics\"/></A></TD>\n\
684 <TD align=\"center\"><A HREF=\"readers.html?label=##READERNAMEENC##&action=delete\" TITLE=\"Delete this Reader\"><IMG SRC=\"##DELICO##\" BORDER=\"0\" ALT=\"Delete Reader\"/></A></TD>\n\
685 </TR>\n"
686
687#define TPLREADERENTITLEBIT "<A HREF=\"entitlements.html?label=##READERNAMEENC##\" TITLE=\"Show Entitlement\"><IMG SRC=\"##ENTICO##\" BORDER=\"0\" ALT=\"Show Entitlement\"/></A>\n"
688
689#define TPLREADERREFRESHBIT "<A HREF=\"readers.html?action=reread&label=##READERNAMEENC##\" TITLE=\"Refresh Entitlement\"><IMG SRC=\"##REFRICO##\" BORDER=\"0\" ALT=\"Reset and reload Entitlement\"/></A>"
690
691#define TPLREADERSTATS "\
692##TPLHEADER##\
693##TPLMENU##\n\
694 <BR><BR>\n\
695 <TABLE border=0 class=\"configmenu\">\n\
696 <TR>\n\
697 <TD CLASS=\"configmenu\"><A HREF=\"readerstats.html?label=##LABEL##&hide=-1\">show all</A></TD>\n\
698 <TD CLASS=\"configmenu\"><A HREF=\"readerstats.html?label=##LABEL##&hide=4\">hide 'not found'</A></TD>\n\
699 </TR>\n\
700 </TABLE>\
701 <BR><BR>\n\
702 <TABLE CLASS=\"stats\">\n\
703 <TR><TH colspan=\"6\"> Loadbalance statistics for reader ##LABEL##</TH></TR>\n\
704 <TR><TH>Channel</TH><TH>Channelname</TH><TH>Result</TH><TH>Time</TH><TH>Count</TH><TH>Last checked/ found</TH></TR>\n\
705 ##READERSTATSROWFOUND##\n\
706 ##READERSTATSNFHEADLINE##\n\
707 ##READERSTATSROWNOTFOUND##\n\
708 </TABLE>\n\
709##TPLFOOTER##"
710
711#define TPLREADERSTATSBIT "\
712 <TR><TD>##CHANNEL##</TD>\
713 <TD>##CHANNELNAME##</TD>\
714 <TD align=\"center\">##RC##</TD>\
715 <TD align=\"center\">##TIME##</TD>\
716 <TD align=\"center\">##COUNT##</TD>\
717 <TD align=\"center\">##LAST##</TD></TR>\n"
718
719#define TPLSCANUSB "\
720##TPLHEADER##\
721##TPLMENU##\n\
722<BR><BR>\n\
723<TABLE cellspacing=\"0\" cellpadding=\"10\">\n\
724 <TR><TH>USB Devices</TH></TR>\n\
725 ##USBBIT##\n\
726</TABLE>\n\
727##TPLFOOTER##"
728
729#define TPLSCANUSBBIT "<TR ##USBENTRYCLASS##><TD>##USBENTRY##</TD></TR>\n"
730
731#define TPLENTITLEMENTS "\
732##TPLHEADER##\
733##TPLMENU##\n\
734<BR><BR>Entitlements for ##READERNAME##<BR><BR>\n\n\
735##ENTITLEMENTCONTENT##\
736##TPLFOOTER##"
737
738#define TPLENTITLEMENTGENERICBIT "\
739 <DIV class=\"log\">\n\
740 ##LOGSUMMARY##\
741 ##LOGHISTORY##\
742 </DIV>\n"
743
744#define TPLENTITLEMENTCCCAMBIT "\
745 <TABLE CLASS=\"stats\">\
746 <TR><TH>Host</TH><TH>Caid</TH><TH>System</TH><TH>share id</TH><TH>remote id</TH><TH>Uphops</TH><TH>Maxdown</TH><TH>Providers</TH><TH>Nodes</TH></TR>\
747 ##CCCAMSTATSENTRY##\
748 </TABLE><BR><DIV CLASS=\"cccamentitlementtotals\">##TOTALS##</DIV>"
749
750#define TPLENTITLEMENTCCCAMENTRYBIT "\
751 <TR><TD>##HOST##</TD><TD>##CAID##</TD><TD>##SYSTEM##</TD><TD>##SHAREID##</TD><TD>##REMOTEID##</TD><TD>##UPHOPS##</TD><TD>##MAXDOWN##</TD><TD>##PROVIDERS##</TD><TD>##NODES##</TD></TR>"
752
753
754#define TPLREADERCONFIG "\
755##TPLHEADER##\
756##TPLMENU##\n\
757<BR><BR>\n\
758##MESSAGE##\
759 <form action=\"readerconfig.html?action=execute\" method=\"get\">\n\
760 <input name=\"label\" type=\"hidden\" value=\"##READERNAME##\">\n\
761 <input name=\"protocol\" type=\"hidden\" value=\"##PROTOCOL##\">\n\
762 <TABLE CLASS=\"config\">\n\
763 <TR><TH COLSPAN=\"2\">Edit Reader ##READERNAME##</TH></TR>\n\
764 <TR><TH>&nbsp;</TH><TH>Reader general settings</TH></TR>\n\
765 <TR><TD>Enable:</TD><TD><input name=\"enable\" type=\"hidden\" value=\"0\"><input name=\"enable\" type=\"checkbox\" value=\"1\" ##ENABLED##></TD></TR>\n\
766 <TR><TD>AU disabled:</TD><TD><input name=\"audisabled\" type=\"hidden\" value=\"0\"><input name=\"audisabled\" type=\"checkbox\" value=\"1\" ##AUDISABLED##></TD></TR>\n\
767 <TR><TD>AU Provid:</TD><TD><input name=\"auprovid\" type=\"text\" size=\"10\" maxlength=\"6\" value=\"##AUPROVID##\"></TD></TR>\n\
768 <TR><TD>Fallback:</TD><TD><input name=\"fallback\" type=\"hidden\" value=\"0\"><input name=\"fallback\" type=\"checkbox\" value=\"1\" ##FALLBACKCHECKED##></TD></TR>\n\
769 <TR><TD>Group:</TD><TD><input name=\"group\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##GRP##\"></TD></TR>\n\
770 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"60\" maxlength=\"150\" value=\"##DEVICE##\"></TD></TR>\n\
771 <TR><TD>Caid:</TD><TD><input name=\"caid\" type=\"text\" size=\"60\" maxlength=\"100\" value=\"##CAIDS##\"></TD></TR>\n\
772 <TR><TD>Ident:</TD> <TD><textarea name=\"ident\" cols=\"58\" rows=\"3\" class=\"bt\">##IDENTS##</textarea></TD></TR>\n\
773 <TR><TD>CHID:</TD> <TD><textarea name=\"chid\" cols=\"58\" rows=\"3\" class=\"bt\">##CHIDS##</textarea></TD></TR>\n\
774 <TR><TD>Emmcache:</TD><TD><input name=\"emmcache\" type=\"text\" size=\"10\" maxlength=\"10\" value=\"##EMMCACHE##\"></TD></TR>\n\
775 <TR><TD>Blockemm:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">\
776 <TR><TD align=\"center\">unknown</TD><TD align=\"center\">unique</TD><TD align=\"center\">shared</TD><TD align=\"center\">global</TD></TR>\
777 <TR><TD align=\"center\"><input name=\"blockemm-unknown\" type=\"hidden\" value=\"0\"><input name=\"blockemm-unknown\" type=\"checkbox\" value=\"1\" ##BLOCKEMMUNKNOWNCHK##></TD>\n\
778 <TD align=\"center\"><input name=\"blockemm-u\" type=\"hidden\" value=\"0\"><input name=\"blockemm-u\" type=\"checkbox\" value=\"1\" ##BLOCKEMMUNIQCHK##></TD>\n\
779 <TD align=\"center\"><input name=\"blockemm-s\" type=\"hidden\" value=\"0\"><input name=\"blockemm-s\" type=\"checkbox\" value=\"1\" ##BLOCKEMMSHAREDCHK##></TD>\n\
780 <TD align=\"center\"><input name=\"blockemm-g\" type=\"hidden\" value=\"0\"><input name=\"blockemm-g\" type=\"checkbox\" value=\"1\" ##BLOCKEMMGLOBALCHK##></TD></TR>\n\
781 </TD>\n</TR>\n</TABLE>\n\
782 <TR><TD>Loadbalance weight:</TD><TD><input name=\"lb_weight\" type=\"text\" size=\"5\" maxlength=\"4\" value=\"##LBWEIGHT##\"></TD></TR>\n\
783 <TR><TD>Services:</TD><TD>\n<TABLE cellspacing=\"0\" class=\"invisible\">##SIDS##</TD>\n</TR>\n</TABLE>\n\
784 <TR><TH>&nbsp;</TH><TH>Reader specific settings for protocol ##PROTOCOL##</TH></TR>\n\
785 ##READERDEPENDINGCONFIG##\
786 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" name=\"action\" value=\"Save\" ##BTNDISABLED##>\n</TD></TR>\n\
787 </TABLE>\n\
788 <BR><BR>\n\
789##TPLFOOTER##"
790#define TPLSAVETEMPLATES "##TPLHEADER##\
791##TPLMENU##\n\
792<br><b>Saved ##CNT## templates to ##PATH##</b><br>\n\
793##TPLFOOTER##"
794#define TPLREADERCONFIGSIDOKBIT "\
795 <TR>\n\
796 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"##SIDLABEL##\" ##CHECKED##> ##SIDLABEL##</TD>\n"
797
798#define TPLREADERCONFIGSIDNOBIT "\
799 <TD><INPUT NAME=\"services\" TYPE=\"CHECKBOX\" VALUE=\"!##SIDLABEL##\" ##CHECKED##> !##SIDLABEL##</TD>\n\
800 </TR>\n"
801
802#define TPLREADERCONFIGSTDHWREADERBIT "\
803 <TR><TD>Smargopatch:<input name=\"smargopatch\" type=\"hidden\" value=\"0\"></TD><TD><input name=\"smargopatch\" type=\"checkbox\" value=\"1\" ##SMARGOPATCHCHECKED##></TD></TR>\n\
804 <TR><TD>Pincode:</TD><TD><input name=\"pincode\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PINCODE##\"></TD></TR>\n\
805 <TR><TD>Disableserverfilter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
806 <TR><TD>Force Irdeto:<input name=\"force_irdeto\" type=\"hidden\" value=\"0\"></TD><TD><input name=\"force_irdeto\" type=\"checkbox\" value=\"1\" ##FORCEIRDETOCHECKED##></TD></TR>\n\
807 <TR><TD>Boxid:</TD><TD><input name=\"boxid\" type=\"text\" size=\"15\" maxlength=\"8\" value=\"##BOXID##\"></TD></TR>\n\
808 <TR><TD>AES Key:</TD><TD><input name=\"aeskey\" type=\"text\" size=\"35\" maxlength=\"32\" value=\"##AESKEY##\"></TD></TR>\n\
809 <TR><TD>RSA key:</TD><TD><textarea name=\"rsakey\" cols=\"98\" rows=\"4\" class=\"bt\" maxlength=\"128\">##RSAKEY##</textarea></TD></TR>\n\
810 <TR><TD>Tiger RSA key:</TD><TD><textarea name=\"tiger_rsakey\" cols=\"98\" rows=\"6\" class=\"bt\" maxlength=\"240\">##TIGERRSAKEY##</textarea></TD></TR>\n\
811 <TR><TD>Boxkey:</TD><TD><input name=\"boxkey\" type=\"text\" size=\"20\" maxlength=\"16\" value=\"##BOXKEY##\"></TD></TR>\n\
812 <TR><TD>ATR:</TD><TD><input name=\"atr\" type=\"text\" size=\"100\" maxlength=\"54\" value=\"##ATR##\"></TD></TR>\n\
813 <TR><TD>Detect:</TD><TD><input name=\"detect\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##DETECT##\"></TD></TR>\n\
814 <TR><TD>Mhz:</TD><TD><input name=\"mhz\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##MHZ##\"></TD></TR>\n\
815 <TR><TD>Cardmhz:</TD><TD><input name=\"cardmhz\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CARDMHZ##\"></TD></TR>\n\
816 <TR><TD>Deprecated:<input name=\"deprecated\" type=\"hidden\" value=\"0\"></TD><TD><input name=\"deprecated\" type=\"checkbox\" value=\"1\" ##DEPRECATEDCHCHECKED##></TD></TR>\n\
817 <TR><TD>Readnano:</TD><TD><input name=\"readnano\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##EMMFILE##\"></TD></TR>\n\
818 <TR><TD>Blocknano:</TD><TD><input name=\"blocknano\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##BLOCKNANO##\"></TD></TR>\n\
819 <TR><TD>Savenano:</TD><TD><input name=\"savenano\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##SAVENANO##\"></TD></TR>\n\
820 <TR><TD>Force NDS Version:</TD><TD><SELECT name=\"ndsversion\">\
821 <OPTION value=\"0\" ##NDSVERSION0##>0 - AUTO</OPTION>\
822 <OPTION value=\"1\" ##NDSVERSION1##>1 - NDS1 Forced</OPTION>\
823 <OPTION value=\"12\" ##NDSVERSION21##>12 - NDS1+ Forced</OPTION>\
824 <OPTION value=\"2\" ##NDSVERSION2##>2 - NDS2 Forced</OPTION>\
825 </SELECT></TD></TR>\n\
826 <TR><TD>Read Nagra Records:</TD><TD><SELECT name=\"nagra_read\">\
827 <OPTION value=\"0\" ##NAGRAREAD0##>0 - Disabled</OPTION>\
828 <OPTION value=\"1\" ##NAGRAREAD1##>1 - Read all records</OPTION>\
829 <OPTION value=\"2\" ##NAGRAREAD2##>2 - Read only valid records</OPTION>\
830 </SELECT></TD></TR>\n\
831 <TR><TD>Device Out Endpoint:</TD><TD>##DEVICEEP##</TD></TR>\n"
832
833#ifdef LIBUSB
834#define TPLREADERCONFIGDEVICEEPBIT "\
835 <SELECT name=\"device_out_endpoint\">\
836 <OPTION value=\"\" ##DEVICEOUTEP0##>default</OPTION>\
837 <OPTION value=\"0x82\" ##DEVICEOUTEP1##>0x82 - Smargo+</OPTION>\
838 <OPTION value=\"0x81\" ##DEVICEOUTEP2##>0x81 - Infinity USB Smart</OPTION>\
839 </SELECT>"
840#endif
841
842#define TPLREADERCONFIGCAMD35BIT "\
843 <TR><TD>Account:</TD><TD><input name=\"account\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
844 <TR><TD>Password:</TD><TD><input name=\"password\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PASSWORD##\"></TD></TR>\n\
845 <TR><TD>Reconnect timeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
846 <TR><TD>Disable server filter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n"
847#define TPLREADERCONFIGCS378XBIT "\
848 <TR><TD>Account:</TD><TD><input name=\"account\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
849 <TR><TD>Password:</TD><TD><input name=\"password\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PASSWORD##\"></TD></TR>\n\
850 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##NCD_KEY##\"></TD></TR>\n\
851 <TR><TD>Reconnect timeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
852 <TR><TD>Disable server filter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n"
853#define TPLREADERCONFIGRADEGASTBIT "\
854 <TR><TD>Account:</TD><TD><input name=\"account\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
855 <TR><TD>Password:</TD><TD><input name=\"password\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PASSWORD##\"></TD></TR>\n\
856 <TR><TD>Inactivity timeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
857 <TR><TD>Reconnect timeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
858 <TR><TD>Disable server filter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n"
859#define TPLREADERCONFIGNCD525BIT "\
860 <TR><TD>Account:</TD><TD><input name=\"account\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
861 <TR><TD>Password:</TD><TD><input name=\"password\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PASSWORD##\"></TD></TR>\n\
862 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"40\" maxlength=\"28\" value=\"##NCD_KEY##\"></TD></TR>\n\
863 <TR><TD>Inactivity timeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
864 <TR><TD>Reconnect timeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
865 <TR><TD>Disable server filter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n"
866#define TPLREADERCONFIGNCD524BIT "\
867 <TR><TD>Account:</TD><TD><input name=\"account\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
868 <TR><TD>Password:</TD><TD><input name=\"password\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PASSWORD##\"></TD></TR>\n\
869 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"40\" maxlength=\"28\" value=\"##NCD_KEY##\"></TD></TR>\n\
870 <TR><TD>Inactivity timeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
871 <TR><TD>Reconnect timeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
872 <TR><TD>Disable server filter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n"
873#define TPLREADERCONFIGCCCAMBIT "\
874 <TR><TD>Account:</TD><TD><input name=\"account\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
875 <TR><TD>Password:</TD><TD><input name=\"password\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##PASSWORD##\"></TD></TR>\n\
876 <TR><TD>Version:</TD><TD><SELECT name=\"cccversion\">\
877 <OPTION value=\"2.0.11\" ##CCCVERSIONSELECTED0##>2.0.11</OPTION>\
878 <OPTION value=\"2.1.1\"##CCCVERSIONSELECTED1##>2.1.1</OPTION>\
879 <OPTION value=\"2.1.2\"##CCCVERSIONSELECTED2##>2.1.2</OPTION>\
880 <OPTION value=\"2.1.3\"##CCCVERSIONSELECTED3##>2.1.3</OPTION>\
881 <OPTION value=\"2.1.4\"##CCCVERSIONSELECTED4##>2.1.4</OPTION>\
882 <OPTION value=\"2.2.0\"##CCCVERSIONSELECTED5##>2.2.0 (experimental)</OPTION>\
883 <OPTION value=\"2.2.1\"##CCCVERSIONSELECTED6##>2.2.1 (experimental)</OPTION>\
884 </SELECT></TD></TR>\n\
885 <TR><TD>Maxhop:</TD><TD><input name=\"cccmaxhop\" type=\"text\" size=\"3\" maxlength=\"2\" value=\"##CCCMAXHOP##\"></TD></TR>\n\
886 <TR><TD>Want Emu:<input name=\"cccwantemu\" type=\"hidden\" value=\"0\"></TD><TD><input name=\"cccwantemu\" type=\"checkbox\" value=\"1\" ##CCCWANTEMUCHECKED##></TD></TR>\n\
887 <TR><TD>Reconnect-timeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
888 <TR><TD>Disable server filter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n\
889 <TR><TD>Keep alive:</TD><TD><SELECT NAME=\"ccckeepalive\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##KEEPALIVECHECKED##>YES</OPTION></SELECT></TD></TR>\n"
890#ifdef CS_WITH_GBOX
891#define TPLREADERCONFIGGBOXBIT "\
892 <TR><TD>Account:</TD><TD><input name=\"account\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##ACCOUNT##\"></TD></TR>\n\
893 <TR><TD>Password:</TD><TD><input name=\"password\" type=\"text\" size=\"10\" maxlength=\"8\" value=\"##PASSWORD##\"></TD></TR>\n\
894 <TR><TD>Inactivity timeout:</TD><TD><input name=\"inactivitytimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##INACTIVITYTIMEOUT##\"></TD></TR>\n\
895 <TR><TD>Reconnect timeout:</TD><TD><input name=\"reconnecttimeout\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##RECEIVETIMEOUT##\"></TD></TR>\n\
896 <TR><TD>Disable server filter:</TD><TD><input name=\"disableserverfilter\" type=\"text\" size=\"30\" maxlength=\"50\" value=\"##DISABLESERVERFILTER##\"></TD></TR>\n"
897#endif
898
899#define TPLCONFIGGBOX "\
900##TPLHEADER##\
901##TPLMENU##\n\
902##TPLCONFIGMENU##\n\
903<BR><BR>\n\
904<DIV CLASS=\"message\">##MESSAGE##</DIV>\
905<form action=\"config.html\" method=\"get\">\n\
906 <input name=\"part\" type=\"hidden\" value=\"gbox\">\n\
907 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
908 <TABLE class=\"config\" cellspacing=\"0\">\n\
909 <TR><TH>&nbsp;</TH><TH>Edit Gbox Config </TH></TR>\n\
910 <TR><TD>Password:</TD><TD><input name=\"password\" type=\"text\" size=\"10\" maxlength=\"8\" value=\"##PASSWORD##\"></TD></TR>\n\
911 <TR><TD>Maxdist:</TD><TD><input name=\"maxdist\" type=\"text\" size=\"5\" maxlength=\"2\" value=\"##MAXDIST##\"></TD></TR>\n\
912 <TR><TD>Ignorelist:</TD><TD><input name=\"ignorelist\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##IGNORELIST##\"></TD></TR>\n\
913 <TR><TD>Onlineinfos:</TD><TD><input name=\"onlineinfos\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##ONLINEINFOS##\"></TD></TR>\n\
914 <TR><TD>Cardinfos:</TD><TD><input name=\"cardinfos\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CARDINFOS##\"></TD></TR>\n\
915 <TR><TD>Locals:</TD><TD><input name=\"locals\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##LOCALS##\"></TD></TR>\n\
916 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
917 </TABLE>\n\
918##TPLFOOTER##"
919
920#ifdef CS_ANTICASC
921#define TPLCONFIGANTICASC "\
922##TPLHEADER##\
923##TPLMENU##\n\
924##TPLCONFIGMENU##\n\
925<BR><BR>\n\
926##MESSAGE##\
927<form action=\"config.html\" method=\"get\">\n\
928 <input name=\"part\" type=\"hidden\" value=\"anticasc\">\n\
929 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
930 <input name=\"enabled\" type=\"hidden\" value=\"0\">\n\
931 <TABLE class=\"config\" cellspacing=\"0\">\n\
932 <TR><TH>&nbsp;</TH><TH>Edit Anticascading Config</TH></TR>\n\
933 <TR><TD>Enabled:</TD><TD><input name=\"enabled\" type=\"checkbox\" value=\"1\" ##CHECKED##>\n\
934 <TR><TD>Numusers:</TD><TD><input name=\"numusers\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##NUMUSERS##\"></TD></TR>\n\
935 <TR><TD>Sampletime:</TD><TD><input name=\"sampletime\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SAMPLETIME##\"></TD></TR>\n\
936 <TR><TD>Samples:</TD><TD><input name=\"samples\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SAMPLES##\"></TD></TR>\n\
937 <TR><TD>Penalty:</TD><TD><input name=\"penalty\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PENALTY##\"></TD></TR>\n\
938 <TR><TD>AClogfile:</TD><TD><input name=\"aclogfile\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##ACLOGFILE##\"></TD></TR>\n\
939 <TR><TD>Fakedelay:</TD><TD><input name=\"fakedelay\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##FAKEDELAY##\"></TD></TR>\n\
940 <TR><TD>Denysamples:</TD><TD><input name=\"denysamples\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##DENYSAMPLES##\"></TD></TR>\n\
941 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
942 </TABLE>\n\
943</form>\n\
944##TPLFOOTER##"
945#endif
946
947#define TPLCONFIGCCCAM "\
948##TPLHEADER##\
949##TPLMENU##\n\
950##TPLCONFIGMENU##\n\
951<BR><BR>\n\
952##MESSAGE##\
953<form action=\"config.html\" method=\"get\">\n\
954 <input name=\"part\" type=\"hidden\" value=\"cccam\">\n\
955 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
956 <TABLE class=\"config\" cellspacing=\"0\">\n\
957 <TR><TH>&nbsp;</TH><TH>Edit Cccam Config</TH></TR>\n\
958 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"6\" maxlength=\"6\" value=\"##PORT##\"></TD></TR>\n\
959 <TR><TD>Reshare:</TD><TD><input name=\"reshare\" type=\"text\" size=\"2\" maxlength=\"1\" value=\"##RESHARE##\"></TD></TR>\n\
960 <TR><TD>Ignore reshare:</TD><TD><SELECT NAME=\"ignorereshare\"><OPTION VALUE=\"0\">OFF</OPTION><OPTION VALUE=\"1\" ##IGNORERESHARE##>ON</OPTION></SELECT></TD></TR>\n\
961 <TR><TD>Keep clients connected:</TD><TD><SELECT NAME=\"keepconnected\"><OPTION VALUE=\"0\">OFF</OPTION><OPTION VALUE=\"1\" ##KEEPCONNECTED##>ON</OPTION></SELECT></TD></TR>\n\
962 <TR><TD>Version:</TD><TD><SELECT name=\"version\">\
963 <OPTION value=\"2.0.11\" ##VERSIONSELECTED0##>2.0.11</OPTION>\
964 <OPTION value=\"2.1.1\" ##VERSIONSELECTED1##>2.1.1</OPTION>\
965 <OPTION value=\"2.1.2\" ##VERSIONSELECTED2##>2.1.2</OPTION>\
966 <OPTION value=\"2.1.3\" ##VERSIONSELECTED3##>2.1.3</OPTION>\
967 <OPTION value=\"2.1.4\" ##VERSIONSELECTED4##>2.1.4</OPTION>\
968 <OPTION value=\"2.2.0\" ##VERSIONSELECTED5##>2.2.0 (experimental)</OPTION>\
969 <OPTION value=\"2.2.1\" ##VERSIONSELECTED6##>2.2.1 (experimental)</OPTION>\
970 </SELECT></TD></TR>\n\
971 <TR><TD>Update Interval:</TD><TD><input name=\"updateinterval\" type=\"text\" size=\"5\" maxlength=\"4\" value=\"##UPDATEINTERVAL##\"></TD></TR>\n\
972 <TR><TD>Minimize cards:</TD><TD><SELECT name=\"minimizecards\">\
973 <OPTION value=\"0\" ##MINIMIZECARDSELECTED0##>0 - legacy (default)</OPTION>\
974 <OPTION value=\"1\" ##MINIMIZECARDSELECTED1##>1 - smallest hop</OPTION>\
975 <OPTION value=\"2\" ##MINIMIZECARDSELECTED2##>2 - via caid</OPTION>\
976 </SELECT></TD></TR>\n\
977 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
978 </TABLE>\n\
979</form>\n\
980##TPLFOOTER##"
981
982#define TPLCONFIGMONITOR "\
983##TPLHEADER##\
984##TPLMENU##\n\
985##TPLCONFIGMENU##\n\
986<BR><BR>\n\
987##MESSAGE##\
988<form action=\"config.html\" method=\"get\">\n\
989 <input name=\"part\" type=\"hidden\" value=\"monitor\">\n\
990 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
991 <input name=\"httphideidleclients\" type=\"hidden\" value=\"0\">\n\
992 <input name=\"appendchaninfo\" type=\"hidden\" value=\"0\">\n\
993 <TABLE class=\"config\" cellspacing=\"0\">\n\
994 <TR><TH>&nbsp;</TH><TH>Edit Monitor Config</TH></TR>\n\
995 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##MONPORT##\"></TD></TR>\n\
996 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"></TD></TR>\n\
997 <TR><TD>No crypt:</TD><TD><input name=\"nocrypt\" type=\"text\" size=\"100\" maxlength=\"200\" value=\"##NOCRYPT##\"></TD></TR>\n\
998 <TR><TD>Au low:</TD><TD><input name=\"aulow\" type=\"text\" size=\"5\" maxlength=\"1\" value=\"##AULOW##\"> min</TD></TR>\n\
999 <TR>\n\
1000 <TD>Monlevel:</TD>\n\
1001 <TD><select name=\"monlevel\">\n\
1002 <option value=\"0\" ##MONSELECTED0##>0 - no access to monitor</option>\n\
1003 <option value=\"1\" ##MONSELECTED1##>1 - only server and own procs</option>\n\
1004 <option value=\"2\" ##MONSELECTED2##>2 - all procs, but viewing only, default</option>\n\
1005 <option value=\"3\" ##MONSELECTED3##>3 - all procs, reload of oscam.user possible</option>\n\
1006 <option value=\"4\" ##MONSELECTED4##>4 - complete access</option>\n\
1007 </select></TD>\n\
1008 </TR>\n\
1009 <TR><TD>Hide client to:</TD><TD><input name=\"hideclient_to\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##HIDECLIENTTO##\"> s</TD></TR>\n\
1010 <TR><TD>Append channel info:</TD><TD><input name=\"appendchaninfo\" type=\"checkbox\" value=\"1\" ##APPENDCHANINFO##></TD></TR>\n\
1011 <TR><TH>&nbsp;</TH><TH>Webinterface Config</TH></TR>\n\
1012 <TR><TD>Http port:</TD><TD><input name=\"httpport\" type=\"text\" size=\"6\" maxlength=\"6\" value=\"##HTTPPORT##\"></TD></TR>\n\
1013 <TR><TD>Http user:</TD><TD><input name=\"httpuser\" type=\"text\" size=\"20\" maxlength=\"20\" value=\"##HTTPUSER##\"></TD></TR>\n\
1014 <TR><TD>Http pwd:</TD><TD><input name=\"httppwd\" type=\"text\" size=\"20\" maxlength=\"20\" value=\"##HTTPPASSWORD##\"></TD></TR>\n\
1015 <TR><TD>Http css:</TD><TD><SELECT name=\"httpcss\">##CSSOPTIONS##</select></TD></TR>\n\
1016 <TR><TD>Http javascript:</TD><TD><input name=\"httpjscript\" type=\"text\" size=\"50\" maxlength=\"128\" value=\"##HTTPJSCRIPT##\"></TD></TR>\n\
1017 <TR><TD>Http refresh:</TD><TD><input name=\"httprefresh\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##HTTPREFRESH##\"> s</TD></TR>\n\
1018 <TR><TD>Http tpl:</TD><TD><input name=\"httptpl\" type=\"text\" size=\"50\" maxlength=\"128\" value=\"##HTTPTPL##\"></TD></TR>\n\
1019 <TR><TD>Http script:</TD><TD><input name=\"httpscript\" type=\"text\" size=\"50\" maxlength=\"128\" value=\"##HTTPSCRIPT##\"></TD></TR>\n\
1020 <TR><TD>Http Hide Idle Clients:</TD><TD><input name=\"httphideidleclients\" type=\"checkbox\" value=\"1\" ##CHECKED##>\n\
1021 <TR><TD>Http allowed:</TD><TD><input name=\"httpallowed\" type=\"text\" size=\"100\" maxlength=\"200\" value=\"##HTTPALLOW##\"></TD></TR>\n\
1022 <TR><TD>Http dyndns:</TD><TD><input name=\"httpdyndns\" type=\"text\" size=\"100\" maxlength=\"200\" value=\"##HTTPDYNDNS##\"></TD></TR>\n\
1023 <TR><TD>Http save full config:</TD><TD><SELECT NAME=\"httpsavefullcfg\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##HTTPSAVEFULLSELECT##>YES</OPTION></SELECT></TD></TR>\n\
1024 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
1025 </TABLE>\n\
1026</form>\n\
1027##TPLFOOTER##"
1028
1029#define TPLCONFIGRADEGAST "\
1030##TPLHEADER##\
1031##TPLMENU##\n\
1032##TPLCONFIGMENU##\n\
1033<BR><BR>\n\
1034##MESSAGE##\
1035<form action=\"config.html\" method=\"get\">\n\
1036 <input name=\"part\" type=\"hidden\" value=\"radegast\">\n\
1037 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1038 <TABLE class=\"config\" cellspacing=\"0\">\n\
1039 <TR><TH>&nbsp;</TH><TH>Edit Radegast Config</TH></TR>\n\
1040 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PORT##\"></TD></TR>\n\
1041 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"></TD></TR>\n\
1042 <TR><TD>Allowed:</TD><TD><input name=\"allowed\" type=\"text\" size=\"100\" maxlength=\"200\" value=\"##ALLOWED##\"></TD></TR>\n\
1043 <TR><TD>User:</TD><TD><input name=\"user\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##USER##\"></TD></TR>\n\
1044 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
1045 </TABLE>\n\
1046</form>\n\
1047##TPLFOOTER##"
1048
1049#define TPLCONFIGNEWCAMD "\
1050##TPLHEADER##\
1051##TPLMENU##\n\
1052##TPLCONFIGMENU##\n\
1053<BR><BR>\n\
1054##MESSAGE##\
1055<form action=\"config.html\" method=\"get\">\n\
1056 <input name=\"part\" type=\"hidden\" value=\"newcamd\">\n\
1057 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1058 <input name=\"keepalive\" type=\"hidden\" value=\"0\">\n\
1059 <input name=\"mgclient\" type=\"hidden\" value=\"0\">\n\
1060 <TABLE class=\"config\" cellspacing=\"0\">\n\
1061 <TR><TH>&nbsp;</TH><TH>Edit Newcamd Config</TH></TR>\n\
1062 <TR><TD>Port:</TD> <TD><textarea name=\"port\" cols=\"120\" rows=\"3\" class=\"bt\">##PORT##</textarea></TD></TR>\n\
1063 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"60\" maxlength=\"30\" value=\"##SERVERIP##\"></TD></TR>\n\
1064 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"60\" maxlength=\"28\" value=\"##KEY##\"></TD></TR>\n\
1065 <TR><TD>Allowed:</TD> <TD><textarea name=\"allowed\" cols=\"58\" rows=\"3\" class=\"bt\">##ALLOWED##</textarea></TD></TR>\n\
1066 <TR><TD>Keepalive:</TD><TD><input name=\"keepalive\" type=\"checkbox\" value=\"1\" ##KEEPALIVE##></TD></TR>\n\
1067 <TR><TD>Mgclient:</TD><TD><input name=\"mgclient\" type=\"checkbox\" value=\"1\" ##MGCLIENTCHK##></TD></TR>\n\
1068 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
1069 </TABLE>\n\
1070</form>\n\
1071##TPLFOOTER##"
1072
1073#define TPLCONFIGGLOBAL "\
1074##TPLHEADER##\
1075##TPLMENU##\n\
1076##TPLCONFIGMENU##\n\
1077<BR><BR>\n\
1078##MESSAGE##\
1079<form action=\"config.html\" method=\"get\">\n\
1080 <input name=\"part\" type=\"hidden\" value=\"global\">\n\
1081 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1082 <input name=\"disableuserfile\" type=\"hidden\" value=\"0\">\n\
1083 <input name=\"disablelog\" type=\"hidden\" value=\"0\">\n\
1084 <input name=\"clientdyndns\" type=\"hidden\" value=\"0\">\n\
1085 <input name=\"unlockparental\" type=\"hidden\" value=\"0\">\n\
1086 <input name=\"waitforcards\" type=\"hidden\" value=\"0\">\n\
1087 <input name=\"preferlocalcards\" type=\"hidden\" value=\"0\">\n\
1088 <input name=\"saveinithistory\" type=\"hidden\" value=\"0\">\n\
1089 <TABLE class=\"config\" cellspacing=\"0\">\n\
1090 <TR><TH>&nbsp;</TH><TH>Edit Global Config</TH></TR>\n\
1091 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"></TD></TR>\n\
1092 <TR><TD>Disable userfile:</TD><TD><input name=\"disableuserfile\" type=\"checkbox\" value=\"1\" ##CHKDISABLEUSERFILE##></TD></TR>\n\
1093 <TR><TD>Usr file:</TD><TD><input name=\"usrfile\" type=\"text\" size=\"30\" maxlength=\"128\" value=\"##USERFILE##\"></TD></TR>\n\
1094 <TR><TD>Disable log:</TD><TD><input name=\"disablelog\" type=\"checkbox\" value=\"1\" ##CHKDISABLELOG##></TD></TR>\n\
1095 <TR><TD>Log file:</TD><TD><input name=\"logfile\" type=\"text\" size=\"30\" maxlength=\"128\" value=\"##LOGFILE##\"></TD></TR>\n\
1096 <TR><TD>Usr file flag:</TD><TD><input name=\"usrfileflag\" type=\"text\" size=\"5\" maxlength=\"1\" value=\"##USERFILEFLAG##\"></TD></TR>\n\
1097 <TR><TD>CW log dir:</TD><TD><input name=\"cwlogdir\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##CWLOGDIR##\"></TD></TR>\n\
1098 <TR><TD>Failban time:</TD><TD><input name=\"failbantime\" type=\"text\" size=\"7\" maxlength=\"6\" value=\"##FAILBANTIME##\"></TD></TR>\n\
1099 <TR><TD>Client timeout:</TD><TD><input name=\"clienttimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CLIENTTIMEOUT##\"> ms</TD></TR>\n\
1100 <TR><TD>Fallback timeout:</TD><TD><input name=\"fallbacktimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##FALLBACKTIMEOUT##\"> ms</TD></TR>\n\
1101 <TR><TD>Cache delay:</TD><TD><input name=\"cachedelay\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CACHEDELAY##\"> ms</TD></TR>\n\
1102 <TR><TD>Client max idle:</TD><TD><input name=\"clientmaxidle\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##CLIENTMAXIDLE##\"> s</TD></TR>\n\
1103 <TR><TD>Bind wait:</TD><TD><input name=\"bindwait\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##BINDWAIT##\"> s</TD></TR>\n\
1104 <TR><TD>Net prio:</TD><TD><input name=\"netprio\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##NETPRIO##\"></TD></TR>\n\
1105 <TR><TD>Client dyndns:</TD><TD><input name=\"clientdyndns\" type=\"checkbox\" value=\"1\" ##CHKCLIENTDYNDNS##></TD></TR>\n\
1106 <TR><TD>Resolve delay:</TD><TD><input name=\"resolvedelay\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##RESOLVEDELAY##\"> s</TD></TR>\n\
1107 <TR><TD>Sleep:</TD><TD><input name=\"sleep\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SLEEP##\"> min</TD></TR>\n\
1108 <TR><TD>Unlock parental:</TD><TD><input name=\"unlockparental\" type=\"checkbox\" value=\"1\" ##UNLOCKPARENTAL##></TD></TR>\n\
1109 <TR><TD>Nice:</TD><TD><input name=\"nice\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##NICE##\"></TD></TR>\n\
1110 <TR><TD>Serial reader timeout:</TD><TD><input name=\"serialreadertimeout\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##SERIALTIMEOUT##\"> ms</TD></TR>\n\
1111 <TR><TD>Max log size:</TD><TD><input name=\"maxlogsize\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##MAXLOGSIZE##\"> kB</TD></TR>\n\
1112 <TR><TD>Wait for cards:</TD><TD><input name=\"waitforcards\" type=\"checkbox\" value=\"1\" ##WAITFORCARDS##></TD></TR>\n\
1113 <TR><TD>Prefer local cards:</TD><TD><input name=\"preferlocalcards\" type=\"checkbox\" value=\"1\" ##PREFERLOCALCARDS##></TD></TR>\n\
1114 <TR><TD>Save init history:</TD><TD><input name=\"saveinithistory\" type=\"checkbox\" value=\"1\" ##SAVEINITHISTORY##></TD></TR>\n\
1115 <TR><TD>Reader restart seconds:</TD><TD><input name=\"readerrestartseconds\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##READERRESTARTSECONDS##\"></TD></TR>\n\
1116 <TR><TD>Resolver:</TD>\n\
1117 <TD><select name=\"resolvegethostbyname\">\n\
1118 <option value=\"0\" ##RESOLVER0##>0 - getadressinfo()</option>\n\
1119 <option value=\"1\" ##RESOLVER1##>1 - gethostbyname()</option>\n\
1120 </select></TD></TR>\n\
1121 ##TPLDOUBLECHECKBIT##\
1122 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
1123 </TABLE>\n\
1124</form>\n\
1125##TPLFOOTER##"
1126
1127#ifdef CS_WITH_DOUBLECHECK
1128#define TPLDOUBLECHECKBIT "\
1129 <TR><TD>ECM Doublecheck:</TD><TD><SELECT NAME=\"double_check\"><OPTION VALUE=\"0\">NO</OPTION><OPTION VALUE=\"1\" ##DCHECKCSELECTED##>YES</OPTION></SELECT></TD></TR>\n"
1130#endif
1131
1132#define TPLCONFIGLOADBALANCER "\
1133##TPLHEADER##\
1134##TPLMENU##\n\
1135##TPLCONFIGMENU##\n\
1136<BR><BR>\n\
1137##MESSAGE##\
1138<form action=\"config.html\" method=\"get\">\n\
1139 <input name=\"part\" type=\"hidden\" value=\"loadbalancer\">\n\
1140 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1141 <TABLE class=\"config\" cellspacing=\"0\">\n\
1142 <TR><TH>&nbsp;</TH><TH>Edit Loadbalancer Config</TH></TR>\n\
1143 <TR><TD>Loadbalance Mode:</TD>\n\
1144 <TD><select name=\"lb_mode\">\n\
1145 <option value=\"0\" ##LBMODE0##>0 - Loadbalancer disabled (send to all readers)</option>\n\
1146 <option value=\"1\" ##LBMODE1##>1 - Fastest reader first</option>\n\
1147 <option value=\"2\" ##LBMODE2##>2 - Oldest reader first</option>\n\
1148 <option value=\"3\" ##LBMODE3##>3 - Lowest usagelevel</option>\n\
1149 </select></TD></TR>\n\
1150 <TR><TD>Loadbalance save every:</TD><TD><input name=\"lb_save\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBSAVE##\"></TD></TR>\n\
1151 <TR><TD>Number of best readers:</TD><TD><input name=\"lb_nbest_readers\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBNBESTREADERS##\"></TD></TR>\n\
1152 <TR><TD>Number of fallback readers:</TD><TD><input name=\"lb_nfb_readers\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBNFBREADERS##\"></TD></TR>\n\
1153 <TR><TD>Min ECM count:</TD><TD><input name=\"lb_min_ecmcount\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBMINECMCOUNT##\"></TD></TR>\n\
1154 <TR><TD>Max ECM count:</TD><TD><input name=\"lb_max_ecmcount\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBMAXECEMCOUNT##\"></TD></TR>\n\
1155 <TR><TD>Time to reopen:</TD><TD><input name=\"lb_reopen_seconds\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##LBREOPENSECONDS##\"></TD></TR>\n\
1156 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
1157 </TABLE>\n\
1158</form>\n\
1159##TPLFOOTER##"
1160
1161#define TPLCONFIGCAMD33 "\
1162##TPLHEADER##\
1163##TPLMENU##\n\
1164##TPLCONFIGMENU##\n\
1165<BR><BR>\n\
1166##MESSAGE##\
1167<form action=\"config.html\" method=\"get\">\n\
1168 <input name=\"part\" type=\"hidden\" value=\"camd33\">\n\
1169 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1170 <input name=\"passive\" type=\"hidden\" value=\"0\">\n\
1171 <TABLE CLASS=\"config\" cellspacing=\"0\">\n\
1172 <TR><TH>&nbsp;</TH><TH>Edit Camd33 Config</TH></TR>\n\
1173 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PORT##\"></TD></TR>\n\
1174 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"></TD></TR>\n\
1175 <TR><TD>Key:</TD><TD><input name=\"key\" type=\"text\" size=\"35\" maxlength=\"28\" value=\"##KEY##\"></TD></TR>\n\
1176 <TR><TD>Passive:</TD><TD><input name=\"passive\" type=\"checkbox\" value=\"1\" ##PASSIVE##></TD></TR>\n\
1177 <TR><TD>Nocrypt:</TD><TD><input name=\"nocrypt\" type=\"text\" size=\"100\" maxlength=\"200\" value=\"##NOCRYPT##\"></TD></TR>\n\
1178 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
1179 </TABLE>\n\
1180</form>\n\
1181##TPLFOOTER##"
1182
1183#define TPLCONFIGCAMD35 "\
1184##TPLHEADER##\
1185##TPLMENU##\n\
1186##TPLCONFIGMENU##\n\
1187<BR><BR>\n\
1188##MESSAGE##\
1189<form action=\"config.html\" method=\"get\">\n\
1190 <input name=\"part\" type=\"hidden\" value=\"camd35\">\n\
1191 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1192 <input name=\"suppresscmd08\" type=\"hidden\" value=\"0\">\n\
1193 <TABLE class=\"config\" cellspacing=\"0\">\n\
1194 <TR><TH>&nbsp;</TH><TH>Edit Camd35 Config</TH></TR>\n\
1195 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"5\" maxlength=\"5\" value=\"##PORT##\"></TD></TR>\n\
1196 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"></TD></TR>\n\
1197 <TR><TD>Suppress cmd08:</TD><TD><input name=\"suppresscmd08\" type=\"checkbox\" value=\"1\" ##SUPPRESSCMD08##></TD></TR>\n\
1198 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
1199 </TABLE>\n\
1200</form>\n\
1201##TPLFOOTER##"
1202
1203#define TPLCONFIGCAMD35TCP "\
1204##TPLHEADER##\
1205##TPLMENU##\n\
1206##TPLCONFIGMENU##\n\
1207<BR><BR>\n\
1208##MESSAGE##\
1209<form action=\"config.html\" method=\"get\">\n\
1210 <input name=\"part\" type=\"hidden\" value=\"camd35tcp\">\n\
1211 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1212 <TABLE class=\"config\" cellspacing=\"0\">\n\
1213 <TR><TH>&nbsp;</TH><TH>Edit Camd35 TCP Config</TH></TR>\n\
1214 <TR><TD>Port:</TD><TD><input name=\"port\" type=\"text\" size=\"50\" maxlength=\"100\" value=\"##PORT##\"></TD></TR>\n\
1215 <TR><TD>Serverip:</TD><TD><input name=\"serverip\" type=\"text\" size=\"30\" maxlength=\"30\" value=\"##SERVERIP##\"></TD></TR>\n\
1216 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
1217 </TABLE>\n\
1218</form>\n\
1219##TPLFOOTER##"
1220
1221#define TPLCONFIGSERIAL "\
1222##TPLHEADER##\
1223##TPLMENU##\n\
1224##TPLCONFIGMENU##\n\
1225<BR><BR>\n\
1226##MESSAGE##\
1227<form action=\"config.html\" method=\"get\">\n\
1228 <input name=\"part\" type=\"hidden\" value=\"serial\">\n\
1229 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1230 <TABLE class=\"config\" cellspacing=\"0\">\n\
1231 <TR><TH>&nbsp;</TH><TH>Edit Serial Config</TH></TR>\n\
1232 ##DEVICES##\
1233 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
1234 </TABLE>\n\
1235</form>\n\
1236<BR><BR>\n\
1237##TPLFOOTER##"
1238
1239#define TPLCONFIGSERIALDEVICEBIT "\
1240 <TR><TD>Device:</TD><TD><input name=\"device\" type=\"text\" size=\"50\" maxlength=\"100\" value=\"##SERIALDEVICE##\"></TD></TR>\n"
1241
1242#ifdef HAVE_DVBAPI
1243#define TPLCONFIGDVBAPI "\
1244##TPLHEADER##\
1245##TPLMENU##\n\
1246##TPLCONFIGMENU##\n\
1247<BR><BR>\n\
1248##MESSAGE##\
1249<form action=\"config.html\" method=\"get\">\n\
1250 <input name=\"part\" type=\"hidden\" value=\"dvbapi\">\n\
1251 <input name=\"action\" type=\"hidden\" value=\"execute\">\n\
1252 <input name=\"enabled\" type=\"hidden\" value=\"0\">\n\
1253 <input name=\"au\" type=\"hidden\" value=\"0\">\n\
1254 <TABLE class=\"config\" cellspacing=\"0\">\n\
1255 <TR><TH>&nbsp;</TH><TH>Edit DVB Api Config</TH></TR>\n\
1256 <TR><TD>Enabled:</TD><TD><input name=\"enabled\" type=\"checkbox\" value=\"1\" ##ENABLEDCHECKED##>\n\
1257 <TR><TD>AU:</TD><TD><input name=\"au\" type=\"checkbox\" value=\"1\" ##AUCHECKED##>\n\
1258 <TR><TD>Boxtype:</TD><TD><SELECT name=\"boxtype\">##BOXTYPE##</select></TD></TR>\n\
1259 <TR><TD>User:</TD><TD><input name=\"user\" type=\"text\" size=\"20\" maxlength=\"20\" value=\"##USER##\"></TD></TR>\n\
1260 <TR><TD>PMT Mode:</TD><TD><select name=\"pmt_mode\">\n\
1261 <option value=\"0\" ##PMTMODESELECTED0##>0 - use camd.socket and PMT file</option>\n\
1262 <option value=\"1\" ##PMTMODESELECTED1##>1 - disable reading PMT file</option>\n\
1263 <option value=\"2\" ##PMTMODESELECTED2##>2 - disable camd.socket</option>\n\
1264 <option value=\"3\" ##PMTMODESELECTED3##>3 - read PMT file on startup only</option>\n\
1265 </SELECT></TD></TR>\n\
1266 <TR><TD colspan=\"2\" align=\"right\"><input type=\"submit\" value=\"OK\" ##BTNDISABLED##>\n</TD></TR>\n\
1267 </TABLE>\n\
1268</form>\n\
1269##TPLFOOTER##"
1270#endif
1271
1272#define TPLSERVICECONFIGLIST "\
1273 ##TPLHEADER##\
1274 ##TPLMENU##\n\
1275 ##MESSAGE##\
1276 <BR><BR>\
1277 <TABLE CLASS=\"stats\">\n\
1278 <TR>\n\
1279 <TH>Label</TH>\n\
1280 <TH colspan=\"3\" align=\"center\">Action</TH>\n\
1281 </TR>\n\
1282 ##SERVICETABS##\
1283 <TR>\n\
1284 <FORM action=\"services_edit.html\" method=\"get\"><INPUT TYPE=\"hidden\" NAME=\"action\" VALUE=\"add\">\n\
1285 <TD>New Service:</TD>\n\
1286 <TD><input name=\"service\" type=\"text\"></TD>\n\
1287 <TD colspan=\"2\" align=\"center\"><input type=\"submit\" value=\"Add\" ##BTNDISABLED##></TD>\n\
1288 </FORM>\n\
1289 <TR>\n\
1290 </TABLE>\n\
1291 ##TPLFOOTER##"
1292
1293#define TPLSERVICECONFIGLISTBIT "\
1294 <TR>\n\
1295 <TD>##LABEL##</TD>\n\
1296 <TD width =\"250\" align=\"center\">##SIDLIST##</TD>\n\
1297 <TD><A HREF=\"services_edit.html?service=##LABELENC##&action=edit\" TITLE=\"Edit this Service\"><IMG SRC=\"##EDIICO##\" BORDER=\"0\" ALT=\"Edit Service\"/></A></TD>\n\
1298 <TD><A HREF=\"services.html?service=##LABELENC##&action=delete\" TITLE=\"Delete this Service\"><IMG SRC=\"##DELICO##\" BORDER=\"0\" ALT=\"Delete Service\"/></A></TD>\n\
1299 </TR>\n"
1300
1301#define TPLSERVICECONFIGSIDBIT "\
1302 <DIV class=\"##SIDCLASS##\">##SID##</DIV>"
1303
1304#define TPLSERVICEEDIT "\
1305##TPLHEADER##\
1306##TPLMENU##\n\
1307##MESSAGE##\
1308<BR><BR>\n\
1309 <form action=\"services_edit.html\" method=\"get\">\n\
1310 <input name=\"service\" type=\"hidden\" value=\"##LABELENC##\">\n\
1311 <TABLE CLASS=\"stats\">\n\
1312 <TR>\n<TH>&nbsp;</TH>\n<TH>Edit Service ##LABEL##</TH>\n</TR>\n\
1313 <TR>\n<TD>caid: </TD><TD><input name=\"caid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##CAIDS##\"></TD></TR>\
1314 <TR>\n<TD>provid: </TD><TD><input name=\"provid\" type=\"text\" size=\"50\" maxlength=\"50\" value=\"##PROVIDS##\"></TD></TR>\
1315 <TR>\n<TD>srvid: </TD><TD><textarea name=\"srvid\" cols=\"80\" rows=\"5\">##SRVIDS##</textarea></TD></TR>\
1316 <TR>\n<TD>&nbsp;</TD><TD align=\"right\"><input type=\"submit\" name=\"action\" value=\"Save\" title=\"Save service and reload services\" ##BTNDISABLED##></TD>\n\
1317 </TABLE>\n\
1318</form>\n\
1319##TPLFOOTER##"
1320
1321#define TPLPRESHUTDOWN "\
1322##TPLHEADER##\
1323##TPLMENU##\n\
1324<br><br><br><DIV class = \"warning\">Do you really want to shutdown oscam?<br>\
1325All users will become disconnected.<br>\
1326You will not be able to restart oscam from the webinterface.<br>\
1327The webinterface will try to connect to oscam once 30 seconds after shutdown.</b><br>\n\
1328</DIV><br><form action=\"shutdown.html\" method=\"get\">\n\
1329<input type=\"submit\" name=\"action\" value=\"Shutdown\" title=\"Save service and reload services\" ##BTNDISABLED##></TD>\n\
1330</form>\
1331##TPLFOOTER##"
1332
1333#define TPLSHUTDOWN "\
1334<HTML>\n\
1335 <HEAD>\n\
1336 <TITLE>OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</TITLE>\n\
1337 <link href=\"##ICO##\" rel=\"icon\" type=\"image/x-icon\"/>\
1338 ##REFRESH##\
1339 <style type=\"text/css\">\n\
1340 ##STYLESHEET##\n\
1341 </style>\n\
1342 </HEAD>\n\
1343 <BODY>\n\
1344 <H2>OSCAM ##CS_VERSION## build ###CS_SVN_VERSION##</H2>\
1345##TPLMENU##\n\
1346<br><P CLASS=\"blinking\">Oscam Shutdown - Try Reconnect in ##SECONDS## Seconds</p><br><br>\n\
1347##TPLFOOTER##"
1348
1349#define TPLSCRIPT "\
1350##TPLHEADER##\
1351##TPLMENU##\n\
1352##MESSAGE##\
1353<br><br><b>Oscam execute script: ##SCRIPTNAME## --> Status: ##SCRIPTRESULT## --> Returncode: ##CODE##</b><br>\n\
1354##TPLFOOTER##"
1355
1356enum refreshtypes {REFR_ACCOUNTS, REFR_READERS, REFR_SERVER, REFR_ANTICASC, REFR_SERVICES};
1357
1358char *tpl[]={
1359 "HEADER",
1360 "APIHEADER",
1361 "FOOTER",
1362 "APIFOOTER",
1363 "MENU",
1364 "REFRESH",
1365 "STATUS",
1366 "APISTATUS",
1367 "CLIENTSTATUSBIT",
1368 "APISTATUSBIT",
1369 "USERCONFIGLIST",
1370 "ADDNEWUSER",
1371 "USERCONFIGLISTBIT",
1372 "SIDTAB",
1373 "SIDTABBIT",
1374 "READERS",
1375 "READERSBIT",
1376 "READERENTITLEBIT",
1377 "READERREFRESHBIT",
1378 "READERSTATS",
1379 "READERSTATSBIT",
1380 "SCANUSB",
1381 "SCANUSBBIT",
1382 "ENTITLEMENTS",
1383 "ENTITLEMENTGENERICBIT",
1384 "ENTITLEMENTCCCAMBIT",
1385 "ENTITLEMENTCCCAMENTRYBIT",
1386 "READERCONFIG",
1387 "READERCONFIGSIDOKBIT",
1388 "READERCONFIGSIDNOBIT",
1389 "READERCONFIGSTDHWREADERBIT",
1390 "READERCONFIGCAMD35BIT",
1391 "READERCONFIGCS378XBIT",
1392 "READERCONFIGRADEGASTBIT",
1393 "READERCONFIGNCD525BIT",
1394 "READERCONFIGNCD524BIT",
1395 "READERCONFIGCCCAMBIT",
1396 "USEREDIT",
1397 "USEREDITRDRSELECTED",
1398 "USEREDITSIDOKBIT",
1399 "USEREDITSIDNOBIT",
1400 "SAVETEMPLATES",
1401 "CONFIGMENU",
1402 "FILEMENU",
1403 "FILE",
1404 "DEBUGSELECT",
1405 "FAILBAN",
1406 "FAILBANBIT",
1407 "CONFIGGBOX",
1408 "CONFIGCCCAM",
1409 "CONFIGMONITOR",
1410 "CONFIGRADEGAST",
1411 "CONFIGNEWCAMD",
1412 "CONFIGGLOBAL",
1413 "CONFIGLOADBALANCER",
1414 "CONFIGCAMD33",
1415 "CONFIGCAMD35",
1416 "CONFIGCAMD35TCP",
1417 "CONFIGSERIAL",
1418 "CONFIGSERIALDEVICEBIT",
1419 "SERVICECONFIGLIST",
1420 "SERVICECONFIGLISTBIT",
1421 "SERVICECONFIGSIDBIT",
1422 "SERVICEEDIT",
1423 "PRESHUTDOWN",
1424 "SHUTDOWN",
1425 "SCRIPT"
1426#ifdef HAVE_DVBAPI
1427 ,"CONFIGDVBAPI"
1428 ,"CONFIGMENUDVBAPI"
1429 ,"FILEMENUDVBAPI"
1430#endif
1431#ifdef CS_ANTICASC
1432 ,"USEREDITANTICASC"
1433 ,"CONFIGANTICASC"
1434 ,"CONFIGMENUANTICASC"
1435 ,"FILEMENUANTICASC"
1436#endif
1437#ifdef CS_WITH_GBOX
1438 ,"CONFIGMENUGBOX"
1439 ,"READERCONFIGGBOXBIT"
1440#endif
1441#ifdef CS_WITH_DOUBLECHECK
1442 ,"DOUBLECHECKBIT"
1443#endif
1444#ifdef LIBUSB
1445 ,"READERCONFIGDEVICEEPBIT"
1446#endif
1447};
1448
1449char *tplmap[]={
1450 TPLHEADER,
1451 TPLAPIHEADER,
1452 TPLFOOTER,
1453 TPLAPIFOOTER,
1454 TPLMENU,
1455 TPLREFRESH,
1456 TPLSTATUS,
1457 TPLAPISTATUS,
1458 TPLCLIENTSTATUSBIT,
1459 TPLAPISTATUSBIT,
1460 TPLUSERCONFIGLIST,
1461 TPLADDNEWUSER,
1462 TPLUSERCONFIGLISTBIT,
1463 TPLSIDTAB,
1464 TPLSIDTABBIT,
1465 TPLREADERS,
1466 TPLREADERSBIT,
1467 TPLREADERENTITLEBIT,
1468 TPLREADERREFRESHBIT,
1469 TPLREADERSTATS,
1470 TPLREADERSTATSBIT,
1471 TPLSCANUSB,
1472 TPLSCANUSBBIT,
1473 TPLENTITLEMENTS,
1474 TPLENTITLEMENTGENERICBIT,
1475 TPLENTITLEMENTCCCAMBIT,
1476 TPLENTITLEMENTCCCAMENTRYBIT,
1477 TPLREADERCONFIG,
1478 TPLREADERCONFIGSIDOKBIT,
1479 TPLREADERCONFIGSIDNOBIT,
1480 TPLREADERCONFIGSTDHWREADERBIT,
1481 TPLREADERCONFIGCAMD35BIT,
1482 TPLREADERCONFIGCS378XBIT,
1483 TPLREADERCONFIGRADEGASTBIT,
1484 TPLREADERCONFIGNCD525BIT,
1485 TPLREADERCONFIGNCD524BIT,
1486 TPLREADERCONFIGCCCAMBIT,
1487 TPLUSEREDIT,
1488 TPLUSEREDITRDRSELECTED,
1489 TPLUSEREDITSIDOKBIT,
1490 TPLUSEREDITSIDNOBIT,
1491 TPLSAVETEMPLATES,
1492 TPLCONFIGMENU,
1493 TPLFILEMENU,
1494 TPLFILE,
1495 TPLDEBUGSELECT,
1496 TPLFAILBAN,
1497 TPLFAILBANBIT,
1498 TPLCONFIGGBOX,
1499 TPLCONFIGCCCAM,
1500 TPLCONFIGMONITOR,
1501 TPLCONFIGRADEGAST,
1502 TPLCONFIGNEWCAMD,
1503 TPLCONFIGGLOBAL,
1504 TPLCONFIGLOADBALANCER,
1505 TPLCONFIGCAMD33,
1506 TPLCONFIGCAMD35,
1507 TPLCONFIGCAMD35TCP,
1508 TPLCONFIGSERIAL,
1509 TPLCONFIGSERIALDEVICEBIT,
1510 TPLSERVICECONFIGLIST,
1511 TPLSERVICECONFIGLISTBIT,
1512 TPLSERVICECONFIGSIDBIT,
1513 TPLSERVICEEDIT,
1514 TPLPRESHUTDOWN,
1515 TPLSHUTDOWN,
1516 TPLSCRIPT
1517#ifdef HAVE_DVBAPI
1518 ,TPLCONFIGDVBAPI
1519 ,TPLCONFIGMENUDVBAPI
1520 ,TPLFILEMENUDVBAPI
1521#endif
1522#ifdef CS_ANTICASC
1523 ,TPLUSEREDITANTICASC
1524 ,TPLCONFIGANTICASC
1525 ,TPLCONFIGMENUANTICASC
1526 ,TPLFILEMENUANTICASC
1527#endif
1528#ifdef CS_WITH_GBOX
1529 ,TPLCONFIGMENUGBOX
1530 ,TPLREADERCONFIGGBOXBIT
1531#endif
1532#ifdef CS_WITH_DOUBLECHECK
1533 ,TPLDOUBLECHECKBIT
1534#endif
1535#ifdef LIBUSB
1536 ,TPLREADERCONFIGDEVICEEPBIT
1537#endif
1538};
1539
1540struct templatevars {
1541 int varscnt;
1542 int varsalloc;
1543 int tmpcnt;
1544 int tmpalloc;
1545 char **names;
1546 char **values;
1547 char **tmp;
1548};
1549
1550struct uriparams {
1551 int paramcount;
1552 char *params[MAXGETPARAMS];
1553 char *values[MAXGETPARAMS];
1554};
1555
1556static char hex2ascii[256][2];
1557static char noncekey[33];
1558
1559
1560char *tpl_addVar(struct templatevars *vars, int append, char *name, char *value);
1561char *tpl_addTmp(struct templatevars *vars, char *value);
1562char *tpl_printf(struct templatevars *vars, int append, char *varname, char *fmtstring, ...);
1563char *tpl_getVar(struct templatevars *vars, char *name);
1564struct templatevars *tpl_create();
1565void tpl_clear(struct templatevars *vars);
1566char *tpl_getUnparsedTpl(const char* name);
1567char *tpl_getTpl(struct templatevars *vars, const char* name);
1568char *parse_auth_value(char *value);
1569void calculate_nonce(char *result, int resultlen);
1570int check_auth(char *authstring, char *method, char *path, char *expectednonce);
1571void send_headers(FILE *f, int status, char *title, char *extra, char *mime);
1572void send_css(FILE *f);
1573void send_js(FILE *f);
1574char *getParam(struct uriparams *params, char *name);
1575int tpl_saveIncludedTpls(const char *path);
1576int cv(){return 91789605==crc32(0L,(unsigned char*)ICMAI,strlen(ICMAI))/2?1:0;}
1577
Note: See TracBrowser for help on using the repository browser.