NewsBlur/media/js/newsblur/common/router.js

79 lines
2.5 KiB
JavaScript
Raw Normal View History

NEWSBLUR.Router = Backbone.Router.extend({
routes: {
"": "index",
"add/?": "add_site",
"try/?": "try_site",
"site/:site_id/:slug": "site",
"site/:site_id/": "site",
"site/:site_id": "site",
"folder/:folder_name": "folder",
"folder/:folder_name/": "folder",
2012-02-10 19:33:31 -08:00
"social/:user_id/:slug": "social",
"social/:user_id/": "social",
"social/:user_id": "social",
"user/*user": "user"
},
2012-01-18 17:39:00 -08:00
index: function() {
2012-07-10 15:26:34 -07:00
// NEWSBLUR.log(["index"]);
2012-01-18 17:39:00 -08:00
NEWSBLUR.reader.show_splash_page();
},
add_site: function() {
2012-07-10 15:26:34 -07:00
NEWSBLUR.log(["add", window.location, $.getQueryString('url')]);
NEWSBLUR.reader.open_add_feed_modal({url: $.getQueryString('url')});
},
try_site: function() {
2012-07-10 15:26:34 -07:00
NEWSBLUR.log(["try", window.location]);
},
site: function(site_id, slug) {
2012-07-10 15:26:34 -07:00
// NEWSBLUR.log(["site", site_id, slug]);
site_id = parseInt(site_id, 10);
var feed = NEWSBLUR.assets.get_feed(site_id);
2012-05-23 10:02:30 -07:00
if (feed) {
NEWSBLUR.reader.open_feed(site_id, {force: true});
} else {
NEWSBLUR.reader.load_feed_in_tryfeed_view(site_id, {force: true, feed: {
feed_title: _.string.humanize(slug || "")
}});
}
2012-02-10 19:33:31 -08:00
},
folder: function(folder_name) {
folder_name = folder_name.replace(/-/g, ' ');
// NEWSBLUR.log(["folder", folder_name]);
if (folder_name == "everything") {
NEWSBLUR.reader.open_river_stories();
} else if (folder_name == "blurblogs") {
NEWSBLUR.reader.open_river_blurblogs_stories();
} else {
var folder = NEWSBLUR.assets.get_folder(folder_name);
if (folder) {
NEWSBLUR.reader.open_river_stories(folder.folder_view.$el, folder);
}
}
},
2012-02-10 19:33:31 -08:00
social: function(user_id, slug) {
2012-07-10 15:26:34 -07:00
// NEWSBLUR.log(["router:social", user_id, slug]);
var feed_id = "social:" + user_id;
if (NEWSBLUR.assets.get_feed(feed_id)) {
NEWSBLUR.reader.open_social_stories(feed_id, {force: true});
} else {
NEWSBLUR.reader.load_social_feed_in_tryfeed_view(feed_id, {force: true, feed: {
username: _.string.humanize(slug),
id: feed_id,
user_id: parseInt(user_id, 10),
feed_title: _.string.humanize(slug)
}});
}
},
user: function(user) {
2012-07-10 15:26:34 -07:00
NEWSBLUR.log(["user", user]);
}
});