summaryrefslogtreecommitdiff
path: root/templates/premades_html.jinja
diff options
context:
space:
mode:
authorAndré Glüpker <git@wgmd.de>2017-10-01 14:50:19 +0200
committerAndré Glüpker <git@wgmd.de>2017-10-01 14:50:19 +0200
commit1585395e7e530665c565b88fea15cbea68d3a88d (patch)
tree204033b68d01e27036a68d625f4474f3254880c2 /templates/premades_html.jinja
downloadsteam-1585395e7e530665c565b88fea15cbea68d3a88d.tar.gz
steam-1585395e7e530665c565b88fea15cbea68d3a88d.tar.bz2
steam-1585395e7e530665c565b88fea15cbea68d3a88d.zip
Initial public release
Diffstat (limited to 'templates/premades_html.jinja')
-rw-r--r--templates/premades_html.jinja102
1 files changed, 102 insertions, 0 deletions
diff --git a/templates/premades_html.jinja b/templates/premades_html.jinja
new file mode 100644
index 0000000..39ebb0b
--- /dev/null
+++ b/templates/premades_html.jinja
@@ -0,0 +1,102 @@
+<html><head>
+ <title>CS:GO Premadefinder</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link rel="stylesheet" type="text/css" href="static/style.css" />
+ <script src="static/vivagraph.min.js"></script>
+ </head>
+ <body onload="onLoad();">
+
+ <ul id="menu">
+ <li class="menu app"><a class="joinbutton" href="lobby">Lobbylinkfinder</a></li>
+ </ul>
+
+ <div class="form">
+ Copy&amp;Paste den Inhalt von 'status' aus der Konsole.<br />
+ <form action="premadefinder" method="post">
+ <textarea name="statustext" cols="75" rows="10"></textarea><br />
+ <input class="joinbutton" type="submit" name="Freunde finden!" />
+ </form>
+ </div>
+
+
+ {% if steamids %}
+
+ <script type="text/javascript">
+ function onLoad(){
+ var graph = Viva.Graph.graph();
+
+ {% for steamid in steamids %}
+ graph.addNode('{{ steamid }}', {url : '{{ profiles[steamid]['avatarmedium'] }}', name : '{{ profiles[steamid]['personaname']|e }}', friends : {% if profiles[steamid]['communityvisibilitystate'] == 3 %} 'yes' {% else %} 'no' {% endif %}});
+ {% endfor %}
+ {% for connection in connections %}
+ graph.addLink('{{ connection[0] }}', '{{ connection[1] }}');
+ {% endfor %}
+
+ var graphics = Viva.Graph.View.svgGraphics();
+ graphics.node(
+ function(node) {
+ if (node.data) {
+ var ui = Viva.Graph.svg('g'),
+ svgText = Viva.Graph.svg('text')
+ .attr('text-anchor', 'middle')
+ .attr('fill', 'rgb(150, 150, 0)')
+ .attr('x', '+16px')
+ .attr('y', '+48px')
+ .text(node.data.name),
+ img = Viva.Graph.svg('image')
+ .attr('width', 32)
+ .attr('height', 32)
+ .link(node.data.url),
+ border = Viva.Graph.svg('rect')
+ .attr('width', 36)
+ .attr('height', 36)
+ .attr('x', '-2px')
+ .attr('y', '-2px')
+ .attr('fill', 'red');
+ if (node.data.friends == 'no') {
+ ui.append(border);
+ }
+ ui.append(img);
+ ui.append(svgText);
+ return ui;
+ }
+ }
+ ).placeNode(
+ function(nodeUI, pos){
+ // Shift image to let links go to the center:
+ nodeUI.attr('transform',
+ 'translate(' +
+ (pos.x - 16) + ',' + (pos.y - 16) +
+ ')');
+ }
+ );
+
+ var layout = Viva.Graph.Layout.forceDirected(graph, {
+ stableThreshold : 0.09,
+ springLength : 150,
+ springCoeff : 0.0008,
+ dragCoeff : 0.05,
+ gravity : -1.0
+ });
+
+ var renderer = Viva.Graph.View.renderer(graph, {
+ container: document.getElementById('premades'),
+ graphics : graphics,
+ layout : layout
+ });
+
+ renderer.run();
+ };
+ </script>
+
+ <div id="premades">
+ </div>
+ <div id="info">
+ (Private Profile sind durch eine rote Umrandung gekennzeichnet.)
+ </div>
+ {% endif %}
+
+ </body>
+</html>
+
+{# vim: commentstring={#\ %s\ #}