webui/files/usr/lib/kagera/webui/index.sh

105 行
4.1 KiB
Bash
実行ファイル

#!/usr/bin/cbsi
<%
THEME=$(uci get kagera.webui.theme)
TIMEOUT=$(uci get kagera.webui.timeout)
if [ "${GET_option}" == "logout" ]; then
eval $(sessmgr -l -r "index.sh?option=overview")
elif [ "${POST_sessopen}" == "1" ] && [ -n "${POST_sesspass}" ]; then
sleep 3
eval $(sessmgr -u "${POST_sessuser}" -p "${POST_sesspass}" -b "${COOKIE_browser_time}" -a "${HTTP_USER_AGENT}" -i "${REMOTE_ADDR}" -t "${TIMEOUT}" -r "index.sh?option=${GET_option}")
fi
eval $(sessmgr -c "${COOKIE_kagera_sid}" -u "${COOKIE_kagera_usr}" -e "${COOKIE_kagera_exp}" -b "${COOKIE_browser_time}" -a "${HTTP_USER_AGENT}" -i "${REMOTE_ADDR}" -t "${TIMEOUT}")
[ -f /usr/lib/kagera/config/${GET_option}.cbsi ] || GET_option="overview"
if [ -n "${GET_refresh}" ]; then
echo "Content-type: text/plain; charset=utf-8"
if [ -n "${VALIDSESS}" ]; then
if [ "${GET_runcommand}" == "1" ]; then
if [ -n "${POST_commands}" ]; then
echo ""
echo "${POST_commands}" | tr -d "\r" > /tmp/run.sh
sh /tmp/run.sh
rm -f /tmp/run.sh
fi
else
/usr/bin/cbsi /usr/lib/kagera/config/${GET_option}.cbsi
fi
fi
exit
fi
echo "Content-type: text/html; charset=utf-8"
. /etc/version
%>
<!DOCTYPE html>
<html>
<head>
<title>Kagera Router Management Utility</title>
<meta name="robots" content="noindex,nofollow" />
<link rel="shortcut icon" href="/themes/kagera/images/favicon.ico"/>
<link rel="stylesheet" href="<%: themes/${THEME}/style.css %>" />
<script src="scripts/kagera.js" type="text/javascript"></script>
<script src="<%: scripts/${GET_option}.js %>" type="text/javascript"></script>
<script>
var sysmsg = ["<%@ Executing commands... %>", "<%@ Applying system changes... %>", "<%@ Restarting services... %>", "<%@ Downloading firmware image... %>", "<%@ Flashing image... %>", "<%@ Rebooting device... %>", "<%@ Do you really want to reboot? %>"];
var multimenu = <% uci get kagera.webui.multimenu %>;
</script>
</head>
<body>
<% if [ "${VALIDSESS}" == "1" ]; then %>
<div class="webui">
<div class="header">
<div class="logo">
<span id="title"><%: ${SYSTEM_DESCRIPTION} %></span>
<span id="version"><%: ${SYSTEM_VERSION} %></span>
</div>
<div class="controls">
<input type="button" class="creboot" value="<%@ Reboot %>" onclick="reboot(true);" />
<input type="button" class="clogout" value="<%@ Logout %>" onclick="logout();" />
</div>
</div>
<div class="body">
<div id="mainmenu">
<div class="navbox">
<span class="navheader"><%@ Status %></span>
<ul class="navbody">
<li><a href="index.sh?option=overview"><%@ Overview %></a></li>
<li><a href="index.sh?option=command"><%@ Run Command %></a></li>
<li><a href="index.sh?option=syslogs"><%@ System Logs %></a></li>
</ul>
<span class="navfooter"></span>
</div>
<div class="navbox">
<span class="navheader"><%@ System %></span>
<ul class="navbody">
<li><a href="index.sh?option=about"><%@ About Kagera %></a></li>
</ul>
<span class="navfooter"></span>
</div>
</div>
<div id="content">
<% /usr/bin/cbsi -t ${GET_option} /usr/lib/kagera/config/${GET_option}.cbsi %>
</div>
</div>
<div class="footer">
Copyright&copy; 2010-2013, <a href="http://www.asiotec.eu.org" target="_blank">Asio Software Technologies</a>
</div>
<% else %>
<div class="loginbox">
<div class="body">
<form action="<%: index.sh?option=${GET_option} %>" method="POST">
<h1><%@ Authorization Required %></h1>
<label><%@ User Name: %></label><input type="text" name="sessuser" autofocus="autofocus" />
<label><%@ Password: %></label><input type="password" name="sesspass" />
<hr />
<div class="formctrl">
<input type="hidden" name="sessopen" value="1" />
<input type="reset" value="<%@ Reset %>" />
<input type="submit" value="<%@ Login %>" />
</div>
</form>
</div>
<% fi %>
</div>
<div id="dim"></div><div id="msg"><img src="<%: themes/${THEME}/images/loader.gif %>" alt="L" /></div>
</body>
</html>