%
// NOTE: Do the header carefully so there is no whitespace before the <%@page pageEncoding="UTF-8"
%><%@page trimDirectiveWhitespaces="true"
%><%@page contentType="text/html" import="net.i2p.i2ptunnel.web.IndexBean"
%>
<%
for (int curServer = 0; curServer < indexBean.getTunnelCount(); curServer++) {
if (indexBean.isClient(curServer)) continue;
%>
<%
if (("httpserver".equals(indexBean.getInternalType(curServer)) || ("httpbidirserver".equals(indexBean.getInternalType(curServer)))) && indexBean.getTunnelStatus(curServer) == IndexBean.RUNNING) {
%>
<%=intl._("Preview")%>:
<%=intl._("Preview")%>
<%
} else if (indexBean.getTunnelStatus(curServer) == IndexBean.RUNNING) {
%>
<%=intl._("Base32 Address")%>: <%=indexBean.getDestHashBase32(curServer)%>
<%
} else {
%>
<%
}
%>
<%=intl._("Status")%>:
<%
switch (indexBean.getTunnelStatus(curServer)) {
case IndexBean.STARTING:
%>
<%=intl._("Starting...")%>
<%=intl._("Stop")%>
<%
break;
case IndexBean.RUNNING:
%>
<%=intl._("Running")%>
<%=intl._("Stop")%>
<%
break;
case IndexBean.NOT_RUNNING:
%>
<%=intl._("Stopped")%>
<%=intl._("Start")%>
<%
break;
}
%>
<%=intl._("Description")%>:
<%=indexBean.getTunnelDescription(curServer)%>
<%
}
%>
<%
for (int curClient = 0; curClient < indexBean.getTunnelCount(); curClient++) {
if (!indexBean.isClient(curClient)) continue;
%>
<%=intl._("Port")%>:
<%
String cPort= indexBean.getClientPort2(curClient);
out.write(cPort);
if (indexBean.isSSLEnabled(curClient))
out.write(" SSL");
%>
<%=intl._("Type")%>:
<%=indexBean.getTunnelType(curClient)%>
<%=intl._("Interface")%>:
<%
/* should only happen for streamr client */
String cHost= indexBean.getClientInterface(curClient);
if (cHost == null || "".equals(cHost)) {
out.write("");
out.write(intl._("Host not set"));
out.write(" ");
} else {
out.write(cHost);
}
%>
<%=intl._("Status")%>:
<%
switch (indexBean.getTunnelStatus(curClient)) {
case IndexBean.STARTING:
%>
<%=intl._("Starting...")%>
<%=intl._("Stop")%>
<%
break;
case IndexBean.STANDBY:
%>
<%=intl._("Standby")%>
<%=intl._("Stop")%>
<%
break;
case IndexBean.RUNNING:
%>
<%=intl._("Running")%>
<%=intl._("Stop")%>
<%
break;
case IndexBean.NOT_RUNNING:
%>
<%=intl._("Stopped")%>
<%=intl._("Start")%>
<%
break;
}
%>
<% if ("httpclient".equals(indexBean.getInternalType(curClient)) || "connectclient".equals(indexBean.getInternalType(curClient)) ||
"sockstunnel".equals(indexBean.getInternalType(curClient)) || "socksirctunnel".equals(indexBean.getInternalType(curClient))) { %>
<%=intl._("Outproxy")%>:
<% } else { %>
<%=intl._("Destination")%>:
<% } %>
<%
if (indexBean.getIsUsingOutproxyPlugin(curClient)) {
%><%=intl._("internal plugin")%><%
} else {
String cdest = indexBean.getClientDestination(curClient);
if (cdest.length() > 70) { // Probably a B64 (a B32 is 60 chars) so truncate
%><%=cdest.substring(0, 45)%>…<%=cdest.substring(cdest.length() - 15, cdest.length())%><%
} else if (cdest.length() > 0) {
%><%=cdest%><%
} else {
%><%=intl._("none")%> <%
}
} %>
<% /* TODO SSL outproxy for httpclient if plugin not present */ %>
<%=intl._("Description")%>:
<%=indexBean.getTunnelDescription(curClient)%>
<%
}
%>
<%
} // isInitialized()
%>