summaryrefslogtreecommitdiffstats
path: root/static
diff options
context:
space:
mode:
Diffstat (limited to 'static')
-rw-r--r--static/base.css7
-rw-r--r--static/poller.js1
-rw-r--r--static/script.js62
3 files changed, 33 insertions, 37 deletions
diff --git a/static/base.css b/static/base.css
index 59ebd83..fb01a40 100644
--- a/static/base.css
+++ b/static/base.css
@@ -82,10 +82,10 @@ header input[type="submit"] {
div#results {
display: none;
position: absolute;
- width: 428px;
+ width: 430px;
height: 560px;
- left: 392px;
- top: 82px;
+ left: 390px;
+ top: 83px;
background-color: #111;
border: 1px solid #aaa;
z-index: 1;
@@ -99,6 +99,7 @@ div#results ul li {
display: block;
height: 50px;
margin: 5px 0;
+ overflow: hidden;
}
div#results ul li:hover {
background-color: #024;
diff --git a/static/poller.js b/static/poller.js
index 31d6799..edb554e 100644
--- a/static/poller.js
+++ b/static/poller.js
@@ -8,7 +8,6 @@ function getUpdates() {
url: '/poll/',
dataType: 'json',
data: {pid: pid, timestamp: timestamp},
- timeout: 1000 * 30,
success: handleUpdates
});
}
diff --git a/static/script.js b/static/script.js
index 8e8e137..26caefc 100644
--- a/static/script.js
+++ b/static/script.js
@@ -16,13 +16,16 @@ $(document).ready(function () {
for (var i = 0; i < e.data.updates.length; i++) {
update = e.data.updates[i];
switch (update.action) {
- case 0:
+ case 0: // see updates.go:addAction
drawAdd(update);
break;
+ case 1:
+ drawRemove(update.yid);
+ break;
}
}
}
- poller.postMessage({'pid': pid});
+ poller.postMessage({pid: pid});
});
function drawBar(id) {
@@ -121,14 +124,14 @@ function showPause(yid) {
function search(query) {
params = {
- 'q': query,
+ q: query,
'max-results': 10,
- 'v': 2,
- 'strict': true,
- 'alt': 'json',
- 'fields': 'entry(title,media:group(yt:videoid))',
- 'safeSearch': 'none',
- 'key': 'AI39si7SaaRqtvAZTa8lePOq6XC5r7S5Xzp3AB6oYPfeCArPbA4dIq7tSVeuIDwAkcFFDeI3rzNmYxkyN_fg8X_7w800pIvVOA'
+ v: 2,
+ strict: true,
+ alt: 'json',
+ fields: 'entry(title,media:group(yt:videoid))',
+ safeSearch: 'none',
+ key: 'AI39si7SaaRqtvAZTa8lePOq6XC5r7S5Xzp3AB6oYPfeCArPbA4dIq7tSVeuIDwAkcFFDeI3rzNmYxkyN_fg8X_7w800pIvVOA'
}
$.getJSON('https://gdata.youtube.com/feeds/api/videos', params,
function (data) {
@@ -136,9 +139,10 @@ function search(query) {
var items = [];
for (var i = 0; i < entries.length; i++) {
var title = entries[i].title.$t;
+ var escapedTitle = escape(title.replace("'", '\\\''));
var id = entries[i].media$group.yt$videoid.$t;
var html = '<li id="r_' + id + '">';
- html += '<a href="javascript:add(\'' + id + '\', \'' + escape(title) + '\')">';
+ html += '<a href="javascript:add(\'' + id + '\', \'' + escapedTitle + '\')">';
html += '<img src="http://i.ytimg.com/vi/' + id + '/1.jpg" alt="' + id + '">';
html += title;
html += '</a></li>';
@@ -154,18 +158,12 @@ function search(query) {
function add(id, title) {
var user = $('#user').val();
params = {
- 'pid': pid,
- 'yid': id,
- 'title': title,
- 'user': user
+ pid: pid,
+ yid: id,
+ title: title,
+ user: user
}
- $.getJSON('/add/', params,
- function (data) {
- if (data != 1)
- return;
- drawAdd(params);
- }
- );
+ $.getJSON('/add/', params);
}
function drawAdd(s) {
@@ -194,17 +192,15 @@ function drawAdd(s) {
function remove(id) {
var user = $('#user').val();
params = {
- 'pid': pid,
- 'yid': id,
+ pid: pid,
+ yid: id,
}
- $.getJSON('/remove/', params,
- function (data) {
- if (data == 1) {
- var element = $('#' + id);
- element.slideUp(100, function () {
- element.remove();
- });
- }
- }
- );
+ $.getJSON('/remove/', params);
+}
+
+function drawRemove(id) {
+ var element = $('#' + id);
+ element.slideUp(100, function () {
+ element.remove();
+ });
}