📄 servhtml.cpp
字号:
html.startTagEnd("td","<b>Out</b>"); html.startTagEnd("td","<b>Total</b>"); html.end(); html.startTableRow(row++); html.startTagEnd("td","Total (Kbit/s)"); html.startTagEnd("td","%.1f",BYTES_TO_KBPS(stats.getPerSecond(Stats::BYTESIN))); html.startTagEnd("td","%.1f",BYTES_TO_KBPS(stats.getPerSecond(Stats::BYTESOUT))); html.startTagEnd("td","%.1f",BYTES_TO_KBPS(stats.getPerSecond(Stats::BYTESIN) + stats.getPerSecond(Stats::BYTESOUT))); html.end(); html.startTableRow(row++); html.startTagEnd("td","Internet (Kbit/s)"); html.startTagEnd("td","%.1f",BYTES_TO_KBPS(stats.getPerSecond(Stats::BYTESIN)-stats.getPerSecond(Stats::LOCALBYTESIN))); html.startTagEnd("td","%.1f",BYTES_TO_KBPS(stats.getPerSecond(Stats::BYTESOUT)-stats.getPerSecond(Stats::LOCALBYTESOUT))); html.startTagEnd("td","%.1f",BYTES_TO_KBPS(stats.getPerSecond(Stats::BYTESIN)-stats.getPerSecond(Stats::LOCALBYTESIN) + stats.getPerSecond(Stats::BYTESOUT)-stats.getPerSecond(Stats::LOCALBYTESOUT))); html.end(); html.startTableRow(row++); html.startTagEnd("td","Network (Kbit/s)"); html.startTagEnd("td","%.1f",BYTES_TO_KBPS(stats.getPerSecond(Stats::PACKETDATAIN))); html.startTagEnd("td","%.1f",BYTES_TO_KBPS(stats.getPerSecond(Stats::PACKETDATAOUT))); html.startTagEnd("td","%.1f",BYTES_TO_KBPS(stats.getPerSecond(Stats::PACKETDATAIN)+stats.getPerSecond(Stats::PACKETDATAOUT))); html.end(); html.startTableRow(row++); html.startTagEnd("td","Packets/sec"); html.startTagEnd("td","%d",stats.getPerSecond(Stats::NUMPACKETSIN)); html.startTagEnd("td","%d",stats.getPerSecond(Stats::NUMPACKETSOUT)); html.startTagEnd("td","%d",stats.getPerSecond(Stats::NUMPACKETSIN)+stats.getPerSecond(Stats::NUMPACKETSOUT)); html.end(); html.end();}// -----------------------------------void Servent::addServerOptions(HTML &html){ html.startTag("table width=\"100%%\" border=\"0\" align=\"center\""); html.startTag("tr bgcolor=\"#cccccc\" align=\"center\""); html.startTagEnd("td colspan=\"2\" ","<b>Server</b>"); html.end(); int row=0;#if 0 // is active html.startTableRow(row++); html.startTagEnd("td","Active"); html.startTag("td"); html.startSingleTagEnd("input type=\"radio\" name=\"serveractive\" value=\"1\" %s",servMgr->server?"checked=\"1\"":""); html.startTagEnd("b","On"); html.startSingleTagEnd("input type=\"radio\" name=\"serveractive\" value=\"0\" %s",!servMgr->server?"checked=\"1\"":""); html.startTagEnd("b","Off"); html.end(); html.end(); // port html.startTableRow(row++); html.startTagEnd("td","Port"); html.startTag("td"); html.startSingleTagEnd("input name=\"port\" size=\"5\" type=\"text\" value=\"%d\"",servMgr->serverHost.port); html.end(); html.end(); // fixed ip html.startTableRow(row++); html.startTagEnd("td","Fixed IP"); html.startTag("td"); html.startSingleTagEnd("input name=\"forceip\" type=\"text\" value=\"%s\"",servMgr->forceIP); html.end(); html.end();#endif // password html.startTableRow(row++); html.startTagEnd("td width=\"50%%\" ","Password"); html.startTag("td"); html.startSingleTagEnd("input name=\"passnew\" size=\"10\" type=\"password\" value=\"%s\"",servMgr->password); html.end(); html.end(); // firewall html.startTableRow(row++); html.startTagEnd("td","Type"); { switch (servMgr->getFirewall()) { case ServMgr::FW_ON: html.startTagEnd("td","Firewalled"); break; case ServMgr::FW_OFF: html.startTagEnd("td","Normal"); break; default: html.startTagEnd("td","Unknown"); break; } //}else{ // html.startTagEnd("td","Inactive"); } html.end(); // icy meta interval html.startTableRow(row++); html.startTagEnd("td","ICY MetaInterval"); html.startTag("td"); html.startSingleTagEnd("input name=\"icymeta\" size=\"5\" type=\"text\" value=\"%d\"",chanMgr->icyMetaInterval); html.end(); html.end(); // mode html.startTableRow(row++); html.startTagEnd("td","Mode"); html.startTag("td"); html.startSingleTagEnd("input type=\"radio\" name=\"root\" value=\"0\" %s",!servMgr->isRoot?"checked=\"1\"":"","Normal"); html.startTagEnd("i","Normal<br>"); html.startSingleTagEnd("input type=\"radio\" name=\"root\" value=\"1\" %s",servMgr->isRoot?"checked=\"1\"":""); html.startTagEnd("i","Root"); html.end(); html.end();
// refresh HTML
html.startTableRow(row++);
html.startTagEnd("td","Refresh HTML (sec)");
html.startTag("td");
html.startSingleTagEnd("input name=\"refresh\" size=\"5\" type=\"text\" value=\"%d\"",servMgr->refreshHTML);
html.end();
html.end();
html.end();}// -----------------------------------void Servent::addClientOptions(HTML &html){ html.startTag("table width=\"100%%\" border=\"0\" align=\"center\""); html.startTag("tr bgcolor=\"#cccccc\" align=\"center\""); html.startTagEnd("td colspan=\"2\" ","<b>Client</b>"); html.end(); int row=0;
#if 0 // is active html.startTableRow(row++); html.startTagEnd("td width=\"50%%\" ","Auto Connect"); html.startTag("td"); html.startSingleTagEnd("input type=\"radio\" name=\"clientactive\" value=\"1\" %s",servMgr->autoConnect?"checked=\"1\"":""); html.startTagEnd("i","On"); html.startSingleTagEnd("input type=\"radio\" name=\"clientactive\" value=\"0\" %s",!servMgr->autoConnect?"checked=\"1\"":""); html.startTagEnd("i","Off"); html.end(); html.end();#endif
#if 0 // dead hit age html.startTableRow(row++); html.startTagEnd("td","Dead Hit Age (sec)"); html.startTag("td"); html.startSingleTagEnd("input name=\"deadhitage\" size=\"5\" type=\"text\" value=\"%d\"",chanMgr->deadHitAge); html.end(); html.end();#endif
html.end();}// -----------------------------------void Servent::addBroadcasterOptions(HTML &html){ html.startTag("table width=\"100%%\" border=\"0\" align=\"center\""); html.startTag("tr bgcolor=\"#cccccc\" align=\"center\""); html.startTagEnd("td colspan=\"2\" ","<b>Broadcasting</b>"); html.end(); int row=0;
// YP
html.startTableRow(row++);
html.startTagEnd("td","YP Address");
html.startTag("td");
html.startSingleTagEnd("input name=\"yp\" type=\"text\" value=\"%s\"",servMgr->rootHost.cstr());
html.end();
html.end();
// DJ message
html.startTableRow(row++);
html.startTagEnd("td","DJ Message");
html.startTag("td");
{
String djMsg = chanMgr->broadcastMsg;
djMsg.convertTo(String::T_HTML);
html.startSingleTagEnd("input name=\"djmsg\" type=\"text\" value=\"%s\"",djMsg.cstr());
}
html.end();
html.end();
html.end();}// -----------------------------------void Servent::addRelayOptions(HTML &html){ html.startTag("table width=\"100%%\" border=\"0\" align=\"center\""); html.startTag("tr bgcolor=\"#cccccc\" align=\"center\""); html.startTagEnd("td colspan=\"2\" ","<b>Network</b>"); html.end(); int row=0; // max streams html.startTableRow(row++); html.startTagEnd("td width=\"50%%\" ","Max. Total Streams"); html.startTag("td"); html.startSingleTagEnd("input name=\"maxstream\" size=\"5\" type=\"text\" value=\"%d\"",servMgr->maxStreams); html.end(); html.end(); // max streams/channel html.startTableRow(row++); html.startTagEnd("td width=\"50%%\" ","Max. Streams Per Channel"); html.startTag("td"); html.startSingleTagEnd("input name=\"maxlisten\" size=\"5\" type=\"text\" value=\"%d\"",chanMgr->maxStreamsPerChannel); html.end(); html.end(); // max bitrate out html.startTableRow(row++); html.startTagEnd("td","Max. Output (Kbits/s)"); html.startTag("td"); html.startSingleTagEnd("input name=\"maxup\" size=\"5\" type=\"text\" value=\"%d\"",servMgr->maxBitrate); html.end(); html.end();
// max control connections
html.startTableRow(row++);
html.startTagEnd("td width=\"50%%\" ","Max. Controls In");
html.startTag("td");
html.startSingleTagEnd("input name=\"maxcin\" size=\"5\" type=\"text\" value=\"%d\"",servMgr->maxControl);
html.end();
html.end();
html.end();}// -----------------------------------void Servent::addFilterOptions(HTML &html){ html.startTag("table width=\"100%%\" border=\"0\" align=\"center\""); html.startTag("tr bgcolor=\"#cccccc\" align=\"center\""); html.startTagEnd("td colspan=\"5\" ","<b>Filters</b>"); html.end(); int row=0; // ip html.startTableRow(row++); html.startTagEnd("td","<b>IP Mask</b>"); html.startTagEnd("td","<b>Network</b>"); html.startTagEnd("td","<b>Direct</b>"); html.startTagEnd("td","<b>Private</b>"); html.startTagEnd("td","<b>Ban</b>"); html.end(); // filters for(int i=0; i<servMgr->numFilters+1; i++) { ServFilter *f = &servMgr->filters[i]; int fl = f->flags; char ipstr[64]; f->host.IPtoStr(ipstr); if (i == servMgr->numFilters) ipstr[0] = 0; html.startTableRow(row++); html.startTag("td"); html.startSingleTagEnd("input name=\"filt_ip%d\" type=\"text\" value=\"%s\"",i,ipstr); html.end(); html.startTag("td"); html.startSingleTagEnd("input type=\"checkbox\" name=\"filt_nw%d\" value=\"1\" %s",i,fl & ServFilter::F_NETWORK?"checked=\"1\"":""); html.end(); html.startTag("td"); html.startSingleTagEnd("input type=\"checkbox\" name=\"filt_di%d\" value=\"1\" %s",i,fl & ServFilter::F_DIRECT?"checked=\"1\"":""); html.end(); html.startTag("td"); html.startSingleTagEnd("input type=\"checkbox\" name=\"filt_pr%d\" value=\"1\" %s",i,fl & ServFilter::F_PRIVATE?"checked=\"1\"":""); html.end(); html.startTag("td"); html.startSingleTagEnd("input type=\"checkbox\" name=\"filt_bn%d\" value=\"1\" %s",i,fl & ServFilter::F_BAN?"checked=\"1\"":""); html.end(); html.end(); } html.end();}// -----------------------------------void Servent::addLogOptions(HTML &html){ html.startTag("table width=\"100%%\" border=\"0\" align=\"center\""); html.startTag("tr bgcolor=\"#cccccc\" align=\"center\""); html.startTagEnd("td colspan=\"2\" ","<b>Log</b>"); html.end(); int row=0; // Debug html.startTableRow(row++); html.startTagEnd("td width=\"50%%\" ","Debug"); html.startTag("td"); html.startSingleTagEnd("input type=\"checkbox\" name=\"logDebug\" value=\"1\" %s",servMgr->showLog&(1<<LogBuffer::T_DEBUG)?"checked=\"1\"":""); html.end(); html.end(); // Errors html.startTableRow(row++); html.startTagEnd("td","Errors"); html.startTag("td"); html.startSingleTagEnd("input type=\"checkbox\" name=\"logErrors\" value=\"1\" %s",servMgr->showLog&(1<<LogBuffer::T_ERROR)?"checked=\"1\"":""); html.end(); html.end(); // Network html.startTableRow(row++); html.startTagEnd("td","Network"); html.startTag("td"); html.startSingleTagEnd("input type=\"checkbox\" name=\"logNetwork\" value=\"1\" %s",servMgr->showLog&(1<<LogBuffer::T_NETWORK)?"checked=\"1\"":""); html.end(); html.end(); // channels html.startTableRow(row++); html.startTagEnd("td","Channels"); html.startTag("td"); html.startSingleTagEnd("input type=\"checkbox\" name=\"logChannel\" value=\"1\" %s",servMgr->showLog&(1<<LogBuffer::T_CHANNEL)?"checked=\"1\"":""); html.end(); html.end(); html.end();}// -----------------------------------void Servent::addRootOptions(HTML &html){ html.startTag("table width=\"100%%\" border=\"0\" align=\"center\""); html.startTag("tr bgcolor=\"#cccccc\" align=\"center\""); html.startTagEnd("td colspan=\"2\" ","<b>Root Mode</b>"); html.end(); int row=0; // host update interval
html.startTableRow(row++);
html.startTagEnd("td","Host Update (sec)");
html.startTag("td");
html.startSingleTagEnd("input name=\"huint\" size=\"5\" type=\"text\" value=\"%d\"",chanMgr->hostUpdateInterval);
html.end();
html.end();
// Message html.startTableRow(row++); html.startTagEnd("td","Message"); html.startTag("td"); String pcMsg = servMgr->rootMsg; pcMsg.convertTo(String::T_HTML); html.startSingleTagEnd("input name=\"pcmsg\" size=\"50\" type=\"text\" value=\"%s\"",pcMsg.cstr()); html.end(); html.end();
// get update
html.startTableRow(row++);
html.startTagEnd("td width=\"50%%\" ","Get Update");
html.startTag("td");
html.startSingleTagEnd("input type=\"checkbox\" name=\"getupd\" value=\"1\"");
html.end();
html.end();
// broadcast settings
html.startTableRow(row++);
html.startTagEnd("td width=\"50%%\" ","Send");
html.startTag("td");
html.startSingleTagEnd("input type=\"checkbox\" name=\"brroot\" value=\"1\"");
html.end();
html.end();
html.end();}// -----------------------------------void Servent::addAuthOptions(HTML &html){ html.startTag("table width=\"100%%\" border=\"0\" align=\"center\""); html.startTag("tr bgcolor=\"#cccccc\" align=\"center\""); html.startTagEnd("td colspan=\"2\" ","<b>Authentication</b>"); html.end(); int row=0; html.startTableRow(row++); html.startTagEnd("td","HTML Authentication"); html.startTag("td"); html.startSingleTagEnd("input type=\"radio\" name=\"auth\" value=\"cookie\" %s",servMgr->authType==ServMgr::AUTH_COOKIE?"checked=\"1\"":""); html.startTagEnd("i","Cookies<br>"); html.startSingleTagEnd("input type=\"radio\" name=\"auth\" value=\"http\" %s",servMgr->authType==ServMgr::AUTH_HTTPBASIC?"checked=\"1\"":""); html.startTagEnd("i","Basic HTTP"); html.end(); html.end(); html.startTableRow(row++); html.startTagEnd("td","Cookies Expire"); html.startTag("td"); html.startSingleTagEnd("input type=\"radio\" name=\"expire\" value=\"session\" %s",servMgr->cookieList.neverExpire==false?"checked=\"1\"":""); html.startTagEnd("i","End of session<br>"); html.startSingleTagEnd("input type=\"radio\" name=\"expire\" value=\"never\" %s",servMgr->cookieList.neverExpire==true?"checked=\"1\"":""); html.startTagEnd("i","Never"); html.end(); html.end(); html.end();} // -----------------------------------void Servent::addSecurityOptions(HTML &html){ html.startTag("table width=\"100%%\" border=\"0\" align=\"center\"");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -