diff options
author | André Glüpker <git@wgmd.de> | 2017-10-01 14:50:19 +0200 |
---|---|---|
committer | André Glüpker <git@wgmd.de> | 2017-10-01 14:50:19 +0200 |
commit | 1585395e7e530665c565b88fea15cbea68d3a88d (patch) | |
tree | 204033b68d01e27036a68d625f4474f3254880c2 /templates/premades_html.jinja | |
download | steam-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.jinja | 102 |
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&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\ #} |