gin/examples/realtime-advanced/resources/room_login.templ.html
2015-05-13 02:35:16 +02:00

106 lines
5.2 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Login in Room "{{.roomid}}"</title>
<!-- jQuery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="http://malsup.github.com/jquery.form.js"></script>
<!-- EPOCH -->
<script src="http://d3js.org/d3.v3.min.js"></script>
<script src="/static/epoch.min.js"></script>
<link rel="stylesheet" href="/static/epoch.min.css">
<script src="/static/realtime.js"></script>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap-theme.min.css">
<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
StartRealtime({{.roomid}}, {{.timestamp}});
});
</script>
</head>
<body>
<!-- Main jumbotron for a primary marketing message or call to action -->
<div class="jumbotron">
<div class="container">
<h1>Server-Sent Events in Go</h1>
<p><a href="http://www.html5rocks.com/en/tutorials/eventsource/basics/">Server-sent events (SSE)</a> is a technology where a browser receives automatic updates from a server via HTTP connection.</p>
<p>The chat and the charts data is provided in realtime using the SSE implemention of <a href="https://github.com/gin-gonic/gin/blob/15b0c49da556d58a3d934b86e3aa552ff224026d/examples/realtime-chat/main.go#L23-L32">Gin Framework</a>.</p>
<div class="row">
{{if not .nick}}
<div class="col-md-8">
{{end}}
<div id="chat-scroll" style="overflow-y:scroll; overflow-x:scroll; height:200px">
<table id="table-style" class="table">
<thead>
<tr>
<th data-field="id" class="col-md-2">Nick</th>
<th data-field="name" class="col-md-8">Message</th>
</tr>
</thead>
<tbody id="chat"></tbody>
</table>
</div>
{{if .nick}}
<form class="form-inline" id="chat-form" action="/room/{{.roomid}}?nick={{.nick}}" method="post">
<div class="form-group col-md-6">
<input name="message" id="chat-message" placeholder="a message" type="text" class="form-control" style="width:100%" />
</div>
<div class="form-group col-md-2">
<input type="submit" class="btn btn-primary" value="Send" />
</div>
</form>
{{end}}
{{if not .nick}}
</div>
<div class="col-md-4">
<form action="" method="get">
<legend>Join the SSE real-time chat</legend>
<div class="form-group">
<label for="nick">Your Name</label>
<input value='' name="nick" id="nick" placeholder="Your name" type="text" class="form-control" />
</div>
<div class="form-group text-center">
<input type="submit" class="btn btn-success btn-login-submit" value="Join" />
</div>
</form>
</div>
{{end}}
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-md-4">
<h3>Number of Goroutines</h3>
<p>
<div id="goroutinesChart" class="epoch category20c"></div>
</p>
</div>
<div class="col-md-4">
<h3>HEAP/Stack bytes</h3>
<p>
<div id="heapChart" class="epoch category20b"></div>
</p>
</div>
<div class="col-md-4">
<h3>Mallocs/Frees</h3>
<p>
<div id="mallocsChart" class="epoch category10"></div>
</p>
</div>
</div>
<hr>
<footer>
<p>&copy; Company 2014</p>
</footer>
</div>
</body>
</html>