diff options
| -rw-r--r-- | frontend/templates/room.html | 222 | ||||
| -rw-r--r-- | frontend/views.py | 34 | ||||
| -rw-r--r-- | scannerjammer/urls.py | 1 |
3 files changed, 257 insertions, 0 deletions
diff --git a/frontend/templates/room.html b/frontend/templates/room.html new file mode 100644 index 0000000..2ce2edd --- /dev/null +++ b/frontend/templates/room.html @@ -0,0 +1,222 @@ +{% load static %} +{% get_static_prefix as STATIC_PREFIX %} +<!doctype html> +<html> +<head> +<title>{{ UCROOM }}</title> +<link href="{{ STATIC_PREFIX }}/css/sasscss/screen.css" media="screen, projection" rel="stylesheet" type="text/css" /> +<link href="{{ STATIC_PREFIX }}/css/sasscss/tiny.css" media="screen, projection" rel="alternate stylesheet" type="text/css" title="tiny" disabled="disabled" /> +<link href="{{ STATIC_PREFIX }}/css/sasscss/{{ ROOM }}.css" media="screen, projection" rel="alternate stylesheet" type="text/css" title="{{ ROOM }}" disabled="disabled" /> +<link href="{{ STATIC_PREFIX }}/css/{{ ROOM }}.css" media="screen, projection" rel="alternate stylesheet" type="text/css" title="custom" disabled="disabled" /> +<link href="{{ STATIC_PREFIX }}/css/sasscss/gallery-white.css" media="screen, projection" rel="alternate stylesheet" type="text/css" title="white" disabled="disabled" /> +<link rel="shortcut icon" href="{{ STATIC_PREFIX }}/favicon.ico" /> +<meta http-equiv="Content-Type" content="text/html; charset=iso=8859-1" /> +<meta property="og:url" content="{{ STATIC_PREFIX }}/{{ ROOM }}/"/> +<meta property="og:type" content="website"/> +<meta property="og:site_name" content="ScannerJammer"/> +<meta property="og:description" content="Youtube video chat"/> +<meta property="fb:admins" content="100001923956223,1709246"/> +<meta property="og:title" content="{{ OPENGRAPH_TITLE }}"/> +<meta property="og:image" content="{{ OPENGRAPH_IMAGE }}"/> +<meta name="description" content="Youtube video chat" /> +<style type="text/css"> +#login, #lunacy, #likereport, #logo, #logobg, #chat, #chatbg, #form, #formbg, #player, #playlist, #playlistbg, #lastlogbox, #lastlogbg, #plant, #flower, #sitez, #bg, #instructions + { display: none } +</style> +</head> +<body> +<p id="instructions"> + INSTRUCTIONS: + Paste Youtube links into the chat. + You can also paste GIFs and images. +</p> +<div id="lunacy"> + NOTE: SCANNERJAMMER ONLY WORKS IN FIREFOX AND CHROME. DO NOT TRY THIS WITH INTERNET EXPLORER +</div> +<section id="plea"> + please enable javascript + <script type="text/javascript">document.getElementById("plea").style.display="none"</script> +</section> +<section id="loading"> + loading . . . +</section> + +<section id="bg"> + <img src="{{ STATIC_PREFIX }}/bgz/1302474305250-dumpfm-GucciSoFlosy-pattern4.gif" /> +</section> +<section id="plant"><img src="{{ STATIC_PREFIX }}/img/plant.gif" height="700" /></section> +<section id="flower"><img src="{{ STATIC_PREFIX }}/img/flower-red.gif" height="400" /></section> +<section id="curtain"></section> +<section id="login"> + <img src="{{ STATIC_PREFIX }}/img/scanjam-flipping.gif" width="100%" /><br /> + <label>username:</label> <input type="text" id="login-username" maxlength="25" /><br /> + <label>password:</label> <input type="password" id="login-password" maxlength="32" /><br /> + <label> </label> <div id="button-shim"><button id="login-go">ROCKET</button></div><br /> + <a href="/register/#{{ ROOM }}">get an account - no email required</a> +</section> + +<section id="logo"> + <a href="/"><img src="{{ STATIC_PREFIX }}/img/scannerjammer-logo.png" width="347" height="44" id="scanjam" border="0" /></a> + <h2 id='preamblewords' class='preamblish'>Post urls into the chat!<br/>Use arrow keys to switch videos<br/>Hit L key to LIKE<br/>Hit ESC to switch views</h2> + <h1 id="heading"></h1> + <div id="likebutton"> + <fb:like href="http://scannerjammer.com:17769/" layout="button_count" show_faces="false" width="90" font=""></fb:like> +<!-- +<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.scannerjammer.com:17769%2F&layout=button_count&show_faces=false&width=450&action=like&font=tahoma&colorscheme=light&height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:100px; height:21px;" allowTransparency="true"id="fblike"></iframe> +--> + + </div> +</section> +<section id="logobg"></section> +<section id="likereport"></section> + +<section id="player"> + <section id="projector"> + <section id="screen"></section> + <section id="ytscreen"></section> + <section id="video-title"></section> + </section> + <nav id="controls"> + <button id="prev"></button> + <button id="pause"></button> + <button id="next"></button> + <button id="scan">SCAN</button> + <button id="like">LIKE</button> + <button id="fullscreen">FULLSCREEN</button> + <a id="video-link" target="_blank">[link]</a> + <span id="sharebutton" class="st_sharethis" st_url="{{ STATIC_PREFIX }}/" st_title="Scanner Jammer"></span> + </nav> +</section> + +<section id="playlistbg"></section> +<section id="playlist"> + <div style="padding-left: 10px; background: #333; opacity: 0.7; display: block; text-align: center; color: #6dd;"> + <img src='{{ STATIC_PREFIX }}/img/playlist_chat.gif' height='32' /> + </div> + <ul id="queue"> + </ul> +</section> + +<section id="chatbg"></section> +<section id="chat"></section> + +<section id="tokbox-embed"> + <span id="tokbox-loading"><img src="{{ STATIC_PREFIX }}/img/loading.gif" /></span> + <div id="tokbox-settings"> + microphone <button id="tokbox-microphone">off</button><br/> + mute all <button id="tokbox-mute-all">off</button><br/> + </div> + <section id="tokbox-publisher"></section> + <section id="tokbox-subscribers"></section> +</section> + +<section id="lastlogbg"></section> +<section id="lastlogbox"> + <h4>NOW ACTIVE</h4> + <ul id="lastlog"></ul> +</section> + +<section id="form"> + <input type="text" id="chat-message" maxlength="512" /> + <button id="chat-send">SEND</button> + <button id="videochat-toggle">WEBCAM</button> + <div id="videochat-badge"></div> +</section> + +<div id="search-results-container"> + <img id="search-loading" src="{{ STATIC_PREFIX }}/img/loading2.gif" /> + <div id="search-instructions">click to post in the room</div> + <ul id="search-results"></ul> +</div> + +<div id="sitez"> + <input type="text" id="search-terms" /> + + <div id="settings-hook"><img src="{{ STATIC_PREFIX }}/img/cube.png" width="20" height="20"/></div><div id="rooms-hook"><img src="{{ STATIC_PREFIX }}/img/icosahedron.png" width="20" height="20"/></div><div id="about-hook"><img src="{{ STATIC_PREFIX }}/img/pyramid.png" width="20" height="20"/></div> +</section> + +<section id="settings-container"> + <div id="settings-close" class="close">X</div> + <h5>CHANGE ROOM THEME</h5> + <div class="shim"></div> + <label>name:</label> <span id="room-name"></span><br /> + <div class="shim"></div> + <label>title:</label> <input type="text" id="room-title"/><br /> +<!-- + <label>topic:</label> <input type="text" id="room-topic"/><br /> +--> + <label>background image:</label> <input type="text" id="room-bg"/><br /> +<!-- + <label>background reset:</label> <input type="text" id="room-bgreset"/><br /> + <label>background color:</label> <input type="text" id="room-bgcolor"/><br /> + <label>phase:</label> <input type="text" id="room-phase"/><br /> +--> + <label></label><button id="room-settings-save">SAVE</button><br /> + <label><small><i>last updated by</i></small></label> <span id="room-updater"></span><br/> + <span id="room-mod-tag"></span> + <span id="gallery-link"> + <a href="/backgrounds/">View Background History</a> + <a href="/gallery/">Gallery</a> + </span> + <div class="shim"></div> + <div class="shim"></div> +<!-- + <label>ops:</label> <span id="room-ops"></span><br /> + <label>bans:</label> <span id="room-bans"></span><br /> +--> +</section> + +<section id="rooms-container"> + <div id="rooms-close" class="close">X</div> + <h5>ROOMS</h5> + <img src="{{ STATIC_PREFIX }}/img/loading.gif" width="32" height="32" id="rooms-loading" /> + <ul id="rooms-list"> + </ul> +</section> + +<section id="about-container"> + <div id="about-close" class="close">X</div> + <h5>INSTRUCTIONS</h5> + <p> + Paste YOUTUBE, VIMEO, or SOUNDCLOUD links into the chat. + You can also paste links to GIFs and images. + </p> + <ul> + <a href="/faq/"><li>Frequently Asked Questions</li></a> + <a href="/rooms/"><li>Open Rooms</li></a> + <a href="/top/"><li>Top Videos Today</li></a> + <a href="/history/"><li>Top Videos in Scannerjammer History</li></a> + <a href="/directory/"><li>Scanners Directory</li></a> + <a id="your-profile"><li>Your Profile</li></a> + <li id="logout">Logout</li> + </ul> +</section> + +<section id="msg"></section> + +</body> +<script type="text/javascript">if (navigator.userAgent.indexOf("MSIE") !== -1) { document.getElementById("lunacy").style.display="block" }</script> +<script src="http://staging.tokbox.com/v0.91/js/TB.min.js" type="text/javascript" charset="utf-8"></script> +<script type="text/javascript"> + serverHost = "{{ SERVER_HOST }}" + serverPort = {{ SERVER_PORT }} + roomName = "{{ ROOM }}" // window.location.pathname.split("/")[1] + retrograde = false +</script> +<script type="text/javascript" src="{{ STATIC_PREFIX }}{{ JS_PATH }}"></script> + +<!-- + var sj = document.createElement('script') + sj.type = 'text/javascript' + sj.async = 'true' + sj.src = '{{ STATIC_PREFIX }}/js/sj6.js?t=' + new Date().getTime().toString() + + var scripts = document.getElementsByTagName('script') + scripts[scripts.length-1].parentNode.insertBefore(sj, scripts[scripts.length-1]) +<script type="text/javascript">var switchTo5x=true;</script> +<script type="text/javascript" src="http://w.sharethis.com/button/buttons.js"></script> +<script type="text/javascript">stLight.options({publisher:'12cf4ab4-b19f-44d7-81ac-9454fd7334b0',onhover:false});</script> +<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script> +--> +</html> + diff --git a/frontend/views.py b/frontend/views.py index 1b3c963..bc12b82 100644 --- a/frontend/views.py +++ b/frontend/views.py @@ -192,3 +192,37 @@ def roomlist(request): ) response['Pragma'] = 'no-cache' return response + +def room(request, roomname): + sjroom = SJRoom.objects.filter(name=roomname)[0]; + jsPath = "/js/sj6.js" + + title = sjroom.name.capitalize() + " room on ScannerJammer" + thumbnail = "http://scannerjammer.fm/img/plant.gif" + if sjroom.name == "glitter": + thumbnail = "http://scannerjammer.fm/img/glitter_flower.gif" + elif sjroom.name == "glasspopcorn": + thumbnail = "http://scannerjammer.fm/img/glasspopthumb.gif" + title = "GlassPopcorn TV" + elif room == "adult": + #serverPort = 6969 + jsPath = "/js/sandbox/sj7.js" + elif room != "main": + s = json.loads(sjroom.settings_text) + if "bg" in s: + thumbnail = s["bg"] + + response = render_to_response( + 'room.html', + { + 'SERVER_HOST': settings.SERVER_HOST, + 'SERVER_PORT': settings.SERVER_PORT, + 'JS_PATH': jsPath, + 'ROOM': sjroom.name.lower(), + 'UCROOM': sjroom.name.upper(), + 'OPENGRAPH_IMAGE': thumbnail, + 'OPENGRAPH_TITLE': title, + } + ) + response['Pragma'] = 'no-cache' + return response diff --git a/scannerjammer/urls.py b/scannerjammer/urls.py index 74852be..5e51d1b 100644 --- a/scannerjammer/urls.py +++ b/scannerjammer/urls.py @@ -25,6 +25,7 @@ urlpatterns = patterns('', url(r'^top/$', 'frontend.views.topvideos', name='topvideos'), url(r'^directory/$', 'frontend.views.directory', name='directory'), url(r'^profile/(?P<username>[a-z0-9_]+)$', 'frontend.views.profile', name='profile'), + url(r'^(?P<roomname>[a-z0-9_]+)$', 'frontend.views.room', name='room'), #url(r'.*', 'backend.views.redirect'), ) |
