muck-raker 0.1.43 → 0.1.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +1 -0
- data/VERSION +1 -1
- data/app/controllers/muck/topics_controller.rb +3 -1
- data/app/helpers/muck_raker_google_helper.rb +78 -0
- data/app/models/feed.rb +8 -4
- data/app/views/google/_combined_feed.html.erb +73 -0
- data/app/views/google/_hot_trends.html.erb +5 -0
- data/app/views/google/_search.html.erb +39 -0
- data/app/views/topics/_form.html.erb +1 -1
- data/app/views/topics/show.html.erb +23 -14
- data/db/bootstrap/services.yml +73 -0
- data/db/migrate/20091022150615_add_uri_key_to_services.rb +9 -0
- data/lib/muck_raker.rb +3 -0
- data/locales/en.yml +5 -3
- data/muck-raker.gemspec +11 -2
- data/public/stylesheets/muck-raker.css +14 -1
- data/test/rails_root/app/views/layouts/default.html.erb +2 -0
- data/test/rails_root/db/bootstrap/services.yml +73 -1
- data/test/rails_root/db/migrate/20091022150615_add_uri_key_to_services.rb +9 -0
- data/test/rails_root/public/stylesheets/muck-raker.css +14 -1
- metadata +18 -2
data/Rakefile
CHANGED
@@ -62,6 +62,7 @@ begin
|
|
62
62
|
gemspec.add_dependency "mbleigh-acts-as-taggable-on"
|
63
63
|
gemspec.add_dependency "mislav-will_paginate"
|
64
64
|
gemspec.add_dependency "httparty"
|
65
|
+
gemspec.add_dependency "nokogiri"
|
65
66
|
gemspec.add_dependency "muck-feedbag"
|
66
67
|
gemspec.add_dependency "pauldix-feedzirra"
|
67
68
|
gemspec.add_dependency "muck-engine"
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.45
|
@@ -6,6 +6,8 @@ class Muck::TopicsController < ApplicationController
|
|
6
6
|
before_filter :build_tag_feeds, :only => [:show, :rss_discovery]
|
7
7
|
|
8
8
|
def show
|
9
|
+
@show_google_search = true
|
10
|
+
@show_combined = false
|
9
11
|
respond_to do |format|
|
10
12
|
format.html do
|
11
13
|
@opml_path = topic_path(params[:id], :service_ids => params[:service_ids], :format => 'opml')
|
@@ -32,7 +34,7 @@ class Muck::TopicsController < ApplicationController
|
|
32
34
|
format.iphone { render :template => 'topics/photos' }
|
33
35
|
end
|
34
36
|
end
|
35
|
-
|
37
|
+
|
36
38
|
def videos
|
37
39
|
@terms = CGI.unescape(params[:id])
|
38
40
|
@page_title = @title = @terms.titleize
|
@@ -1,5 +1,60 @@
|
|
1
1
|
module MuckRakerGoogleHelper
|
2
2
|
|
3
|
+
# Render a google custom search control. If feeds are provided then the search will be restricted to the
|
4
|
+
# 'display_url' for each feed. If search_for is specified then a default search will be executed.
|
5
|
+
# It is not recommended that you provide feeds and locale since the overlap between the feeds provided
|
6
|
+
# and the languages might be nothing.
|
7
|
+
# Examples:
|
8
|
+
#
|
9
|
+
# Create a custom search over a specific set of feeds:
|
10
|
+
# <%= google_search('Google Search (Search within these results)', [], '', %w{web}, 'google_restricted_search') %>
|
11
|
+
#
|
12
|
+
# Create a general google search based on the current locale:
|
13
|
+
# <%= google_search('Google Search', [], @terms, %w{web video blog news image local book patent}, 'google_search', I18n.locale) %>
|
14
|
+
#
|
15
|
+
# feeds: An array of feeds to render each with a property 'display_uri' defined
|
16
|
+
# search_for: Terms to search for by default. If none are specified then no default search will be performed.
|
17
|
+
# search_types: Types of google searches to add to the dialog. Valid values are web video blog news image local book patent
|
18
|
+
# content_id: Name of the div that will hold the widget google generates.
|
19
|
+
# If this method is called more than once on a given page then you will need to
|
20
|
+
# specify different content_ids for each call.
|
21
|
+
# locale: Locale to restrict searches. For example, to restrict the search to only German sites specify 'de'
|
22
|
+
# A complete set of valid Google languages can be found here:
|
23
|
+
# http://code.google.com/apis/ajaxlanguage/documentation/#SupportedLanguages
|
24
|
+
# For a list of valid codes you can also look at the babelphish gem. Codes can be found in languages.rb.
|
25
|
+
def google_search(title, feeds = [], search_for = '', search_types = %w{web video blog news image local book patent}, content_id = 'google_search', locale = nil)
|
26
|
+
render :partial => 'google/search', :locals => { :title => title,
|
27
|
+
:feeds => feeds,
|
28
|
+
:search_for => search_for,
|
29
|
+
:search_types => search_types,
|
30
|
+
:content_id => content_id,
|
31
|
+
:locale => locale }
|
32
|
+
end
|
33
|
+
|
34
|
+
# Utility method for generating scripts required to to build google search
|
35
|
+
# type: Type of Google search. Should be one of web video blog news image local book patent
|
36
|
+
# feeds: An array of feeds to render each with a property 'display_uri' defined
|
37
|
+
# locale: Locale to restrict searches. For example, to restrict the search to only German sites specify 'de'
|
38
|
+
# A complete set of valid Google languages can be found here:
|
39
|
+
# http://code.google.com/apis/ajaxlanguage/documentation/#SupportedLanguages
|
40
|
+
# For a list of valid codes you can also look at the babelphish gem. Codes can be found in languages.rb.
|
41
|
+
def google_typed_search(type, feeds = [], locale = nil)
|
42
|
+
content = "var #{type}Search = new google.search.#{type.capitalize}Search();\n"
|
43
|
+
if !['video', 'blog'].include?(type)
|
44
|
+
if !locale.blank?
|
45
|
+
content << "#{type}Search.setRestriction(google.search.Search.RESTRICT_EXTENDED_ARGS, {lr:'lang_#{locale}'});\n"
|
46
|
+
end
|
47
|
+
end
|
48
|
+
if !['video', 'local', 'patent', 'book'].include?(type)
|
49
|
+
feeds.each do |feed|
|
50
|
+
if !feed.display_uri.blank?
|
51
|
+
content << "#{type}Search.setSiteRestriction('#{feed.display_uri}');\n"
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
content << "searchControl.addSearcher(#{type}Search);\n"
|
56
|
+
end
|
57
|
+
|
3
58
|
# Render feeds using Google's api
|
4
59
|
# feeds: Feed object.
|
5
60
|
# show_controls: Indicates whether or not to show editing controls. ie Remove
|
@@ -21,6 +76,18 @@ module MuckRakerGoogleHelper
|
|
21
76
|
:run_load_scripts => run_load_scripts}
|
22
77
|
end
|
23
78
|
|
79
|
+
# Render combined feed using Google's api
|
80
|
+
#
|
81
|
+
# feeds: Array of feeds that have attribute 'uri' defined.
|
82
|
+
# content_id: Name of the div that will hold the widget google generates.
|
83
|
+
# If this method is called more than once on a given page then you will need to
|
84
|
+
# specify different content_ids for each call.
|
85
|
+
# javascript_callback: Name of a javascript method to call after the feed has finished loading. The
|
86
|
+
# method should accept the feed uri and the content id. ie feed_callback(uri, content_id).
|
87
|
+
def google_combined_feeds(feeds, content_id = 'google_combined_feed', javascript_callback = nil)
|
88
|
+
render :partial => 'google/combined_feed', :locals => { :feeds => feeds, :content_id => content_id, :javascript_callback => javascript_callback }
|
89
|
+
end
|
90
|
+
|
24
91
|
# Render a google dynamic feed control.
|
25
92
|
#
|
26
93
|
# feeds: An array of feeds to render each with a property 'title' and 'uri' defined
|
@@ -171,4 +238,15 @@ module MuckRakerGoogleHelper
|
|
171
238
|
</script>}
|
172
239
|
end
|
173
240
|
|
241
|
+
def google_hot_trends
|
242
|
+
feed = Feed.fetch_feed('http://www.google.com/trends/hottrends/atom/hourly')
|
243
|
+
result = Nokogiri::HTML(feed.entries[0].content)
|
244
|
+
google_hot_trends_terms = result.css('a').collect{ |a| change_chars(a.text) }.compact
|
245
|
+
render :partial => 'google/hot_trends', :locals => { :google_hot_trends_terms => google_hot_trends_terms }
|
246
|
+
end
|
247
|
+
|
248
|
+
def change_chars(term)
|
249
|
+
term.gsub('+', ' ').gsub('.', '-')
|
250
|
+
end
|
251
|
+
|
174
252
|
end
|
data/app/models/feed.rb
CHANGED
@@ -35,8 +35,6 @@
|
|
35
35
|
|
36
36
|
class Feed < ActiveRecord::Base
|
37
37
|
|
38
|
-
require 'httparty'
|
39
|
-
|
40
38
|
include HTTParty
|
41
39
|
format :xml
|
42
40
|
|
@@ -144,7 +142,7 @@ class Feed < ActiveRecord::Base
|
|
144
142
|
feeds = []
|
145
143
|
@available_feeds = discover_feeds(uri)
|
146
144
|
@available_feeds.each do |feed|
|
147
|
-
feeds << new_from_feedzirra(
|
145
|
+
feeds << new_from_feedzirra(fetch_feed(feed.url)) unless feed.blank?
|
148
146
|
end
|
149
147
|
feeds
|
150
148
|
end
|
@@ -155,11 +153,17 @@ class Feed < ActiveRecord::Base
|
|
155
153
|
feeds = []
|
156
154
|
@available_feeds = discover_feeds(uri)
|
157
155
|
@available_feeds.each do |feed|
|
158
|
-
feeds << create_from_feedzirra(
|
156
|
+
feeds << create_from_feedzirra(fetch_feed(feed.url), user) unless feed.blank?
|
159
157
|
end
|
160
158
|
feeds
|
161
159
|
end
|
162
160
|
|
161
|
+
# Fetch a remote feed
|
162
|
+
def self.fetch_feed(url)
|
163
|
+
return nil if url.blank?
|
164
|
+
Feedzirra::Feed.fetch_and_parse(url)
|
165
|
+
end
|
166
|
+
|
163
167
|
# Turns a feed from feedzirra into a muck feed
|
164
168
|
def self.new_from_feedzirra(feed)
|
165
169
|
return if feed.blank?
|
@@ -0,0 +1,73 @@
|
|
1
|
+
<% content_for :head do -%>
|
2
|
+
<%= google_ajax_api_scripts -%>
|
3
|
+
<%= google_load_feeds -%>
|
4
|
+
<% end -%>
|
5
|
+
|
6
|
+
<script type="text/javascript">
|
7
|
+
entries = [];
|
8
|
+
function feed_loaded(result) {
|
9
|
+
if (!result.error) {
|
10
|
+
jQuery('#<%= content_id %> .waiting').hide();
|
11
|
+
jQuery('#<%= content_id %> ul').html('');
|
12
|
+
new_entries = result.feed.entries;
|
13
|
+
for (var i=0; i<new_entries.length; i++){
|
14
|
+
new_entries[i].feed = result.feed;
|
15
|
+
}
|
16
|
+
entries = jQuery.merge(entries, new_entries);
|
17
|
+
entries = entries.sort(function(a,b){
|
18
|
+
return a.publishedDate > b.publishedDate;
|
19
|
+
});
|
20
|
+
for (var i=0; i<entries.length; i++) {
|
21
|
+
var html = '<li class="feed-item" style="background: transparent url(/images/service_icons/24/' + get_service_name(entries[i]) + ') no-repeat scroll left top;">';
|
22
|
+
html += '<div class="feed-title"><a href="' + entries[i].link + '" target="_blank">' + entries[i].title + '</a></div>';
|
23
|
+
html += '<div class="feed-content" style="display:none;">';
|
24
|
+
html += '<h3><a href="' + entries[i].link + '" target="_blank">' + entries[i].title + '</a></h3>';
|
25
|
+
html += entries[i].content;
|
26
|
+
html += '</div>';
|
27
|
+
html += '</li>';
|
28
|
+
jQuery('#<%= content_id %> ul').append(html);
|
29
|
+
}
|
30
|
+
apply_show_content();
|
31
|
+
<%= "#{javascript_callback}('#{content_id}');" if javascript_callback -%>
|
32
|
+
}
|
33
|
+
}
|
34
|
+
google.setOnLoadCallback(function(){
|
35
|
+
<% feeds.each do |feed| -%>
|
36
|
+
new google.feeds.Feed("<%=feed.uri%>").load(feed_loaded);
|
37
|
+
<% end -%>
|
38
|
+
});
|
39
|
+
|
40
|
+
function get_service_name(entry) {
|
41
|
+
var services = eval(<%= Service.all.to_json(:only => [ :uri_key, :icon ]) %>);
|
42
|
+
for(var i=0; i<services.length; i++){
|
43
|
+
if(services[i].uri_key && (entry.link.indexOf(services[i].uri_key) >= 0 || entry.feed.link.indexOf(services[i].uri_key) >= 0)){
|
44
|
+
return services[i].icon;
|
45
|
+
}
|
46
|
+
}
|
47
|
+
return 'feed.png';
|
48
|
+
}
|
49
|
+
|
50
|
+
function apply_show_content(){
|
51
|
+
jQuery('.combined-feed-list .feed-item .feed-title').hover(
|
52
|
+
function () {
|
53
|
+
jQuery(this).next('.combined-feed-list .feed-item .feed-content').show();
|
54
|
+
},
|
55
|
+
function () {
|
56
|
+
jQuery(this).next('.combined-feed-list .feed-item .feed-content').hide();
|
57
|
+
}
|
58
|
+
);
|
59
|
+
jQuery('.combined-feed-list .feed-item .feed-content').hover(
|
60
|
+
function () {
|
61
|
+
jQuery(this).show();
|
62
|
+
},
|
63
|
+
function () {
|
64
|
+
jQuery(this).hide();
|
65
|
+
}
|
66
|
+
);
|
67
|
+
}
|
68
|
+
</script>
|
69
|
+
|
70
|
+
<div id="<%= content_id %>" class="combined-feed">
|
71
|
+
<span class="waiting"><%= t('muck.raker.loading_message') %></span>
|
72
|
+
<ul class="combined-feed-list"></ul>
|
73
|
+
</div>
|
@@ -0,0 +1,39 @@
|
|
1
|
+
<% content_for :head do -%>
|
2
|
+
<%= google_ajax_api_scripts -%>
|
3
|
+
<%= google_load_search -%>
|
4
|
+
<% end -%>
|
5
|
+
<script type="text/javascript">
|
6
|
+
function google_load_search() {
|
7
|
+
var searchControl = new google.search.SearchControl();
|
8
|
+
|
9
|
+
<% search_types.each do |type| -%>
|
10
|
+
<%= google_typed_search(type, feeds, locale) %>
|
11
|
+
<% end -%>
|
12
|
+
|
13
|
+
<% if GlobalConfig.google_ad_partner_pub -%>
|
14
|
+
searchControl.enableAds('<%= GlobalConfig.google_ad_partner_pub %>');
|
15
|
+
<% end -%>
|
16
|
+
|
17
|
+
<% if search_types.length > 1 -%>
|
18
|
+
var drawOptions = new google.search.DrawOptions();
|
19
|
+
drawOptions.setDrawMode(google.search.SearchControl.DRAW_MODE_TABBED);
|
20
|
+
searchControl.draw(document.getElementById("<%= content_id %>"), drawOptions);
|
21
|
+
<% else -%>
|
22
|
+
searchControl.draw(document.getElementById("<%= content_id %>"));
|
23
|
+
<% end -%>
|
24
|
+
|
25
|
+
searchControl.execute('<%=search_for%>');
|
26
|
+
}
|
27
|
+
google.setOnLoadCallback(google_load_search);
|
28
|
+
</script>
|
29
|
+
<div class="feed">
|
30
|
+
<div class="feed-header">
|
31
|
+
<h3 class="google-header"><%= title %></h3>
|
32
|
+
</div>
|
33
|
+
<div class="feed-content">
|
34
|
+
<div id="<%= content_id %>" class="search-container">
|
35
|
+
<span class="waiting"><%= t('muck.raker.loading_message') %></span>
|
36
|
+
</div>
|
37
|
+
</div>
|
38
|
+
</div>
|
39
|
+
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<% custom_form_for(:topic, :url => topics_path, :html => {:method => :post}) do |f| -%>
|
2
|
-
<%= text_field_tag :terms, params[:terms] %>
|
2
|
+
<%= text_field_tag :terms, params[:terms] || @terms %>
|
3
3
|
<%= f.submit t('muck.raker.build_topic'), :id => 'generate_topic' %>
|
4
4
|
<span id="generating_topic_message" style="display:none;">
|
5
5
|
<%= t('muck.raker.generating_topic_message') %><img src="/images/spinner.gif" alt="<%= t('muck.raker.discover_feed_message') %>" />
|
@@ -4,27 +4,35 @@
|
|
4
4
|
|
5
5
|
<%= output_errors('', {:class => 'help-box'}) %>
|
6
6
|
|
7
|
-
<div class="span-
|
8
|
-
<h2><%= @title %></h2>
|
9
|
-
</div>
|
10
|
-
|
11
|
-
<div class="span-7 column">
|
7
|
+
<div id="search-header" class="span-24 column center">
|
12
8
|
<%= topics_form %>
|
13
9
|
</div>
|
14
10
|
|
15
11
|
<div class="span-24 column">
|
16
12
|
<%= link_to t('muck.raker.photos'), photos_topic_path(params[:id], :service_ids => params[:service_ids]) %>
|
17
13
|
<%= link_to t('muck.raker.videos'), videos_topic_path(params[:id], :service_ids => params[:service_ids]) %>
|
14
|
+
<%= link_to t('muck.raker.download_opml', :terms => @title), @opml_path %>
|
18
15
|
</div>
|
19
16
|
|
20
17
|
<div class="span-14 column datafeeds">
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
18
|
+
|
19
|
+
<% if @show_google_search -%>
|
20
|
+
<div id="search-results">
|
21
|
+
<%= google_search('Google Search', [], @terms, %w{web video blog news image local book patent}, 'google_search', I18n.locale) %>
|
22
|
+
</div>
|
23
|
+
<% end -%>
|
24
|
+
|
25
|
+
<% if @show_combined -%>
|
26
|
+
<%= google_combined_feeds(@general_feeds + @discovered_feeds) %>
|
27
|
+
<% else -%>
|
28
|
+
<div id="calculated-feeds">
|
29
|
+
<%= google_feeds(@general_feeds, @show_controls, @number_of_items, @number_of_images, @number_of_videos) %>
|
30
|
+
</div>
|
31
|
+
<div id="discovered_feeds">
|
32
|
+
<%= google_feeds(@discovered_feeds, @show_controls, @number_of_items, @number_of_images, @number_of_videos) %>
|
33
|
+
</div>
|
34
|
+
<% end -%>
|
35
|
+
|
28
36
|
</div>
|
29
37
|
|
30
38
|
<div class="span-10 column datafeeds">
|
@@ -36,7 +44,7 @@
|
|
36
44
|
|
37
45
|
<div class="span-24 column">
|
38
46
|
<%= link_to t('muck.raker.generate_new_topic'), new_topic_path %>
|
39
|
-
|
47
|
+
|
40
48
|
<!--
|
41
49
|
<a href="http://www.google.com/reader/view/feed/<%=CGI.escape(request.url)%>" title="<%=@title%>">
|
42
50
|
<img src="http://buttons.googlesyndication.com/fusion/add.gif" border="0" alt="Add to Google" />
|
@@ -44,4 +52,5 @@
|
|
44
52
|
-->
|
45
53
|
</div>
|
46
54
|
|
47
|
-
<%= render :partial => 'google/feeds_scripts' %>
|
55
|
+
<%= render :partial => 'google/feeds_scripts' %>
|
56
|
+
|
data/db/bootstrap/services.yml
CHANGED
@@ -25,6 +25,7 @@ twitter:
|
|
25
25
|
id: 3
|
26
26
|
name: Twitter
|
27
27
|
uri: "http://www.twitter.com"
|
28
|
+
uri_key: "twitter.com"
|
28
29
|
api_uri:
|
29
30
|
uri_data_template: "http://www.twitter.com/{username}"
|
30
31
|
uri_template: "http://www.twitter.com/{username}"
|
@@ -37,6 +38,7 @@ youtube:
|
|
37
38
|
id: 4
|
38
39
|
name: You Tube
|
39
40
|
uri: "http://www.youtube.com"
|
41
|
+
uri_key: "youtube.com"
|
40
42
|
api_uri:
|
41
43
|
uri_data_template: "http://gdata.youtube.com/feeds/base/users/{username}/uploads?alt=rss&v=2&orderby=published&client=ytapi-youtube-profile"
|
42
44
|
uri_template: "http://www.youtube.com/user/{username}"
|
@@ -49,6 +51,7 @@ flickr:
|
|
49
51
|
id: 5
|
50
52
|
name: Flickr
|
51
53
|
uri: "http://www.flickr.com"
|
54
|
+
uri_key: "flickr.com"
|
52
55
|
api_uri:
|
53
56
|
uri_data_template: "http://www.flickr.com/photos/{username}/"
|
54
57
|
uri_template: "http://www.flickr.com/photos/{username}/"
|
@@ -61,6 +64,7 @@ delicious:
|
|
61
64
|
id: 6
|
62
65
|
name: delicious
|
63
66
|
uri: "http://delicious/"
|
67
|
+
uri_key: "delicious.com"
|
64
68
|
api_uri: "https://api.delicious/v1/"
|
65
69
|
uri_data_template: "http://delicious.com/{username}"
|
66
70
|
uri_template: "http://delicious.com/{username}"
|
@@ -73,6 +77,7 @@ digg:
|
|
73
77
|
id: 7
|
74
78
|
name: Digg
|
75
79
|
uri: "http://www.digg.com"
|
80
|
+
uri_key: "digg.com"
|
76
81
|
api_uri:
|
77
82
|
uri_data_template: "http://digg.com/users/{username}/history.rss"
|
78
83
|
uri_template: "http://digg.com/users/{username}"
|
@@ -85,6 +90,7 @@ yelp:
|
|
85
90
|
id: 8
|
86
91
|
name: Yelp
|
87
92
|
uri: "http://www.yelp.com/"
|
93
|
+
uri_key: "yelp.com"
|
88
94
|
api_uri:
|
89
95
|
uri_data_template: "http://{username}.yelp.com/rss"
|
90
96
|
uri_template: "http://{username}.yelp.com"
|
@@ -97,6 +103,7 @@ stumbleupon:
|
|
97
103
|
id: 9
|
98
104
|
name: StumbleUpon
|
99
105
|
uri: "http://www.stumbleupon.com/"
|
106
|
+
uri_key: "stumbleupon.com"
|
100
107
|
api_uri:
|
101
108
|
uri_data_template: "http://rss.stumbleupon.com/user/{username}/"
|
102
109
|
uri_template: "http://www.stumbleupon.com/stumbler/{username}"
|
@@ -109,6 +116,7 @@ vimeo:
|
|
109
116
|
sort: 10
|
110
117
|
name: Vimeo
|
111
118
|
uri: "http://vimeo.com"
|
119
|
+
uri_key: "vimeo.com"
|
112
120
|
api_uri:
|
113
121
|
uri_data_template: "http://vimeo.com/{username}/videos/rss"
|
114
122
|
uri_template: "http://vimeo.com/{username}"
|
@@ -121,6 +129,7 @@ lastfm:
|
|
121
129
|
sort: 11
|
122
130
|
name: Last.fm
|
123
131
|
uri: "http://www.last.fm"
|
132
|
+
uri_key: "last.fm"
|
124
133
|
api_uri:
|
125
134
|
uri_data_template: "http://ws.audioscrobbler.com/1.0/user/{username}/recenttracks.rss"
|
126
135
|
uri_template: "http://www.last.fm/user/{username}"
|
@@ -133,6 +142,7 @@ livejournal:
|
|
133
142
|
sort: 12
|
134
143
|
name: LiveJournal
|
135
144
|
uri: "http://www.livejournal.com"
|
145
|
+
uri_key: "livejournal.com"
|
136
146
|
api_uri:
|
137
147
|
uri_data_template: "http://{username}.livejournal.com"
|
138
148
|
uri_template: "http://{username}.livejournal.com"
|
@@ -145,6 +155,7 @@ simpy:
|
|
145
155
|
sort: 13
|
146
156
|
name: Simpy
|
147
157
|
uri: "http://www.simpy.com"
|
158
|
+
uri_key: "simpy.com"
|
148
159
|
api_uri:
|
149
160
|
uri_data_template: "http://www.simpy.com/rss/user/{username}/links/"
|
150
161
|
uri_template: "http://www.simpy.com/user/{username}"
|
@@ -157,6 +168,7 @@ wordpress:
|
|
157
168
|
sort: 14
|
158
169
|
name: Wordpress.com
|
159
170
|
uri: "http://www.wordpress.com/"
|
171
|
+
uri_key: "wordpress.com/"
|
160
172
|
api_uri:
|
161
173
|
uri_data_template: "http://{username}.wordpress.com/"
|
162
174
|
uri_template: "http://{username}.wordpress.com/"
|
@@ -169,6 +181,7 @@ xanga:
|
|
169
181
|
sort: 15
|
170
182
|
name: Xanga
|
171
183
|
uri: "http://www.xanga.com"
|
184
|
+
uri_key: "xanga.com"
|
172
185
|
api_uri:
|
173
186
|
uri_data_template: "http://www.xanga.com/{username}/rss"
|
174
187
|
uri_template: "http://{username}.xanga.com"
|
@@ -181,6 +194,7 @@ citeulike:
|
|
181
194
|
sort: 16
|
182
195
|
name: cite u like
|
183
196
|
uri: "http://www.citeulike.org"
|
197
|
+
uri_key: "citeulike.org"
|
184
198
|
api_uri:
|
185
199
|
uri_data_template: "http://www.citeulike.org/rss/user/{username}"
|
186
200
|
uri_template: "http://www.citeulike.org/user/{username}"
|
@@ -193,6 +207,7 @@ googlenews:
|
|
193
207
|
sort: 17
|
194
208
|
name: Google News
|
195
209
|
uri: "http://news.google.com/"
|
210
|
+
uri_key: "news.google.com"
|
196
211
|
icon: google.png
|
197
212
|
use_for: false
|
198
213
|
service_category_id: 4
|
@@ -205,6 +220,7 @@ googleblogsearch:
|
|
205
220
|
sort: 18
|
206
221
|
name: Google Blogs
|
207
222
|
uri: "http://blogsearch.google.com/"
|
223
|
+
uri_key: "blogsearch.google.com"
|
208
224
|
icon: google.png
|
209
225
|
use_for: false
|
210
226
|
service_category_id: 4
|
@@ -233,6 +249,7 @@ odeo:
|
|
233
249
|
sort: 21
|
234
250
|
name: Odeo Podcasts
|
235
251
|
uri: "http://www.odeo.com"
|
252
|
+
uri_key: "odeo.com"
|
236
253
|
icon: odeo.png
|
237
254
|
use_for: false
|
238
255
|
service_category_id: 1
|
@@ -242,6 +259,7 @@ technorati:
|
|
242
259
|
sort: 22
|
243
260
|
name: Technorati
|
244
261
|
uri: "http://www.technorati.com/"
|
262
|
+
uri_key: "technorati.com"
|
245
263
|
api_uri:
|
246
264
|
uri_data_template: "http://feeds.technorati.com/faves/{username}?format=rss"
|
247
265
|
icon: technorati.png
|
@@ -253,6 +271,7 @@ mixx:
|
|
253
271
|
sort: 23
|
254
272
|
name: Mixx
|
255
273
|
uri: "http://www.mixx.com"
|
274
|
+
uri_key: "mixx.com"
|
256
275
|
api_uri:
|
257
276
|
uri_data_template: "http://www.mixx.com/feeds/users/{username}"
|
258
277
|
uri_template: "http://www.mixx.com/users/{username}"
|
@@ -265,6 +284,7 @@ reddit:
|
|
265
284
|
sort: 24
|
266
285
|
name: Reddit
|
267
286
|
uri: "http://www.reddit.com"
|
287
|
+
uri_key: "reddit.com"
|
268
288
|
api_uri:
|
269
289
|
uri_data_template: "http://www.reddit.com/user/{username}/.rss"
|
270
290
|
uri_template: "http://www.reddit.com/user/{username}"
|
@@ -277,6 +297,7 @@ facebook:
|
|
277
297
|
sort: 25
|
278
298
|
name: Facebook
|
279
299
|
uri: "http://www.facebook.com"
|
300
|
+
uri_key: "facebook.com"
|
280
301
|
api_uri:
|
281
302
|
uri_data_template:
|
282
303
|
icon: facebook.png
|
@@ -290,6 +311,7 @@ pandora:
|
|
290
311
|
sort: 26
|
291
312
|
name: pandora
|
292
313
|
uri: "http://www.pandora.com"
|
314
|
+
uri_key: "pandora.com"
|
293
315
|
api_uri:
|
294
316
|
uri_data_template: "http://feeds.pandora.com/feeds/people/{username}/favorites.xml"
|
295
317
|
icon: pandora.png
|
@@ -301,6 +323,7 @@ technorati_tags:
|
|
301
323
|
sort: 27
|
302
324
|
name: Technorati
|
303
325
|
uri: "http://www.technorati.com/"
|
326
|
+
uri_key: "technorati.com"
|
304
327
|
api_uri:
|
305
328
|
uri_data_template: "http://feeds.technorati.com/search/{tag}?language=n"
|
306
329
|
uri_template: "http://www.technorati.com/search/{tag}?language=n"
|
@@ -313,6 +336,7 @@ flickr_tags:
|
|
313
336
|
sort: 28
|
314
337
|
name: Flickr
|
315
338
|
uri: "http://www.flickr.com"
|
339
|
+
uri_key: "flickr.com"
|
316
340
|
api_uri:
|
317
341
|
uri_data_template: 'http://api.flickr.com/services/feeds/photos_public.gne?tags={tag}&lang=en-us&format=rss_200'
|
318
342
|
uri_template: 'http://www.flickr.com/search/?q={tag}'
|
@@ -325,6 +349,7 @@ wordpress_tags:
|
|
325
349
|
sort: 29
|
326
350
|
name: Wordpress.com
|
327
351
|
uri: "http://www.wordpress.com/"
|
352
|
+
uri_key: "wordpress.com"
|
328
353
|
api_uri:
|
329
354
|
uri_data_template: 'http://wordpress.com/tag/{tag}/feed/'
|
330
355
|
uri_template: 'http://wordpress.com/tag/{tag}'
|
@@ -337,6 +362,7 @@ citeulike_tags:
|
|
337
362
|
sort: 30
|
338
363
|
name: cite u like
|
339
364
|
uri: "http://www.citeulike.org"
|
365
|
+
uri_key: "citeulike.org"
|
340
366
|
api_uri:
|
341
367
|
uri_data_template: 'http://www.citeulike.org/rss/tag/{tag}'
|
342
368
|
uri_template: 'http://www.citeulike.org/tag/{tag}'
|
@@ -349,6 +375,7 @@ delicious_tags:
|
|
349
375
|
sort: 31
|
350
376
|
name: delicious
|
351
377
|
uri: "http://delicious/"
|
378
|
+
uri_key: "delicious.com"
|
352
379
|
api_uri: "https://api.delicious/v1/"
|
353
380
|
uri_data_template: 'http://feeds.delicious.com/rss/tag/{tag}'
|
354
381
|
uri_template: 'http://delicious.com/search?p={tag}'
|
@@ -360,6 +387,7 @@ netflix:
|
|
360
387
|
id: 32
|
361
388
|
name: Netflix
|
362
389
|
uri: "http://www.netflix.com"
|
390
|
+
uri_key: "netflix.com"
|
363
391
|
api_uri:
|
364
392
|
uri_data_template:
|
365
393
|
icon: netflix.png
|
@@ -373,6 +401,7 @@ blogger:
|
|
373
401
|
id: 33
|
374
402
|
name: Blogger
|
375
403
|
uri: "http://www.blogger.com"
|
404
|
+
uri_key: "blogger.com"
|
376
405
|
api_uri:
|
377
406
|
uri_data_template:
|
378
407
|
icon: blogger.png
|
@@ -385,6 +414,7 @@ clipmarks:
|
|
385
414
|
id: 34
|
386
415
|
name: Clipmarks
|
387
416
|
uri: "http://www.clipmarks.com"
|
417
|
+
uri_key: "clipmarks.com"
|
388
418
|
api_uri:
|
389
419
|
uri_data_template: "http://rss.clipmarks.com/clipper/{username}/"
|
390
420
|
uri_template: "http://www.clipmarks.com/clipper/{username}/"
|
@@ -397,6 +427,7 @@ friendfeed:
|
|
397
427
|
id: 35
|
398
428
|
name: Friendfeed
|
399
429
|
uri: "http://friendfeed.com"
|
430
|
+
uri_key: "friendfeed.com"
|
400
431
|
api_uri:
|
401
432
|
uri_data_template:
|
402
433
|
icon: friendfeed.png
|
@@ -410,6 +441,7 @@ linkedin:
|
|
410
441
|
id: 36
|
411
442
|
name: LinkedIn
|
412
443
|
uri: "http://www.linkedin.com"
|
444
|
+
uri_key: "linkedin.com"
|
413
445
|
api_uri:
|
414
446
|
uri_data_template:
|
415
447
|
icon: linkedin.png
|
@@ -423,6 +455,7 @@ diigo:
|
|
423
455
|
id: 37
|
424
456
|
name: diigo
|
425
457
|
uri: "http://www.diigo.com"
|
458
|
+
uri_key: "diigo.com"
|
426
459
|
api_uri:
|
427
460
|
uri_data_template: "http://www.diigo.com/rss/user/{username}"
|
428
461
|
uri_template: "http://www.diigo.com/user/{username}"
|
@@ -436,6 +469,7 @@ diigo_tags:
|
|
436
469
|
sort: 38
|
437
470
|
name: diigo
|
438
471
|
uri: "http://www.diigo.org"
|
472
|
+
uri_key: "diigo.org"
|
439
473
|
api_uri:
|
440
474
|
uri_data_template: 'http://www.diigo.com/community/tag?tag={tag}'
|
441
475
|
uri_template: 'http://www.diigo.com/community/tag?tag={tag}'
|
@@ -448,6 +482,7 @@ netvibes:
|
|
448
482
|
sort: 39
|
449
483
|
name: NetVibes
|
450
484
|
uri: "http://www.netvibes.com"
|
485
|
+
uri_key: "netvibes.com"
|
451
486
|
api_uri:
|
452
487
|
uri_data_template: "http://www.netvibes.com/{username}#General"
|
453
488
|
uri_template: "http://www.netvibes.com/{username}#General"
|
@@ -460,6 +495,7 @@ dailymotion:
|
|
460
495
|
sort: 40
|
461
496
|
name: Dailymotion
|
462
497
|
uri: "http://www.dailymotion.com"
|
498
|
+
uri_key: "dailymotion.com"
|
463
499
|
uri_data_template: "http://www.dailymotion.com/rss/user/{username}/1"
|
464
500
|
uri_template: "http://www.dailymotion.com/{username}"
|
465
501
|
icon: dailymotion.png
|
@@ -471,6 +507,7 @@ polyvore:
|
|
471
507
|
sort: 41
|
472
508
|
name: Polyvore
|
473
509
|
uri: "http://www.polyvore.com"
|
510
|
+
uri_key: "polyvore.com"
|
474
511
|
icon: polyvore.png
|
475
512
|
active: false
|
476
513
|
prompt: polyvore_prompt
|
@@ -482,6 +519,7 @@ identica:
|
|
482
519
|
sort: 42
|
483
520
|
name: "identi.ca"
|
484
521
|
uri: "http://identi.ca"
|
522
|
+
uri_key: "identi.ca"
|
485
523
|
uri_data_template: "http://identi.ca/api/statuses/user_timeline/{username}.atom"
|
486
524
|
uri_template: "http://identi.ca/{username}"
|
487
525
|
icon: identica.png
|
@@ -493,6 +531,7 @@ tumblr:
|
|
493
531
|
sort: 43
|
494
532
|
name: "Tumblr"
|
495
533
|
uri: "http://www.tumblr.com"
|
534
|
+
uri_key: "tumblr.com"
|
496
535
|
uri_data_template: "http://{username}.tumblr.com/"
|
497
536
|
uri_template: "http://{username}.tumblr.com/"
|
498
537
|
icon: tumblr.png
|
@@ -504,6 +543,7 @@ joost:
|
|
504
543
|
sort: 44
|
505
544
|
name: "Joost"
|
506
545
|
uri: "http://www.joost.com"
|
546
|
+
uri_key: "joost.com"
|
507
547
|
uri_data_template: "http://www.joost.com/api/events/get/{username}?fmt=atom"
|
508
548
|
uri_template: "http://www.joost.com/users/{username}/"
|
509
549
|
icon: joost.png
|
@@ -515,6 +555,7 @@ fotolog:
|
|
515
555
|
sort: 45
|
516
556
|
name: "Fotolog"
|
517
557
|
uri: "http://www.fotolog.com"
|
558
|
+
uri_key: "fotolog.com"
|
518
559
|
uri_data_template: "http://www.fotolog.com/{username}/feed/main/rss20"
|
519
560
|
uri_template: "http://www.fotolog.com/{username}"
|
520
561
|
icon: fotolog.png
|
@@ -526,6 +567,7 @@ photobucket_photo_tags:
|
|
526
567
|
sort: 46
|
527
568
|
name: Photobucket (Photos)
|
528
569
|
uri: "http://www.photobucket.com/"
|
570
|
+
uri_key: "photobucket.com"
|
529
571
|
api_uri:
|
530
572
|
uri_data_template: "http://feed.photobucket.com/images/{tag}/feed.rss"
|
531
573
|
uri_template: "http://www.photobucket.com/images/{tag}"
|
@@ -538,6 +580,7 @@ photobucket_video_tags:
|
|
538
580
|
sort: 47
|
539
581
|
name: Photobucket (Videos)
|
540
582
|
uri: "http://www.photobucket.com/"
|
583
|
+
uri_key: "photobucket.com"
|
541
584
|
api_uri:
|
542
585
|
uri_data_template: "http://feed.photobucket.com/videos/{tag}/feed.rss"
|
543
586
|
uri_template: "http://www.photobucket.com/videos/{tag}"
|
@@ -550,6 +593,7 @@ identica_tags:
|
|
550
593
|
sort: 48
|
551
594
|
name: "identi.ca"
|
552
595
|
uri: "http://identi.ca"
|
596
|
+
uri_key: "identi.ca"
|
553
597
|
uri_data_template: "http://identi.ca/api/statusnet/tags/timeline/{tag}.atom"
|
554
598
|
uri_template: "http://identi.ca/tag/{tag}"
|
555
599
|
icon: identica.png
|
@@ -561,6 +605,7 @@ smugmug:
|
|
561
605
|
sort: 49
|
562
606
|
name: "Smugmug"
|
563
607
|
uri: "http://www.smugmug.com"
|
608
|
+
uri_key: "smugmug.com"
|
564
609
|
uri_data_template: "http://{username}.smugmug.com/"
|
565
610
|
uri_template: "http://{username}.smugmug.com/"
|
566
611
|
icon: smugmug.png
|
@@ -572,6 +617,7 @@ smugmug_tags:
|
|
572
617
|
sort: 50
|
573
618
|
name: "Smugmug"
|
574
619
|
uri: "http://www.smugmug.com"
|
620
|
+
uri_key: "smugmug.com"
|
575
621
|
uri_data_template: "http://www.smugmug.com/hack/feed.mg?Type=search&Data={tag}&format=atom10"
|
576
622
|
uri_template: "http://www.smugmug.com/search/index.mg?searchWords={tag}&searchType=global&x=0&y=0"
|
577
623
|
icon: smugmug.png
|
@@ -583,6 +629,7 @@ zooomr:
|
|
583
629
|
sort: 51
|
584
630
|
name: "Zooomr"
|
585
631
|
uri: "http://www.zooomr.com"
|
632
|
+
uri_key: "zooomr.com"
|
586
633
|
uri_data_template: "http://www.zooomr.com/photos/{username}"
|
587
634
|
uri_template: "http://www.zooomr.com/photos/{username}"
|
588
635
|
icon: zooomr.png
|
@@ -594,6 +641,7 @@ picasa:
|
|
594
641
|
sort: 52
|
595
642
|
name: "Picasa"
|
596
643
|
uri: "http://picasaweb.google.com"
|
644
|
+
uri_key: "picasaweb.google.com"
|
597
645
|
uri_data_template: "http://picasaweb.google.com/data/feed/base/user/{username}?alt=rss&kind=album&hl=en_US&access=public"
|
598
646
|
uri_template: "http://picasaweb.google.com/{username}"
|
599
647
|
icon: picasa.png
|
@@ -605,6 +653,7 @@ picasa_tags:
|
|
605
653
|
sort: 53
|
606
654
|
name: "Picasa"
|
607
655
|
uri: "http://picasaweb.google.com"
|
656
|
+
uri_key: "picasaweb.google.com"
|
608
657
|
uri_data_template: "http://picasaweb.google.com/data/feed/base/all?alt=rss&kind=photo&filter=1&q={tag}&hl=en_US"
|
609
658
|
uri_template: "http://picasaweb.google.com/lh/view?q={tag}&psc=G&filter=1#"
|
610
659
|
icon: picasa.png
|
@@ -616,6 +665,7 @@ librarything:
|
|
616
665
|
sort: 54
|
617
666
|
name: LibraryThing
|
618
667
|
uri: "http://www.librarything.com"
|
668
|
+
uri_key: "librarything.com"
|
619
669
|
uri_data_template: "http://www.librarything.com/rss/reviews/{username}"
|
620
670
|
uri_template: "http://www.librarything.com/profile/{username}"
|
621
671
|
icon: librarything.png
|
@@ -627,6 +677,7 @@ goodreads:
|
|
627
677
|
sort: 55
|
628
678
|
name: Goodreads
|
629
679
|
uri: "http://www.goodreads.com"
|
680
|
+
uri_key: "goodreads.com"
|
630
681
|
icon: goodreads.png
|
631
682
|
use_for: "identity"
|
632
683
|
service_category_id: 13
|
@@ -638,6 +689,7 @@ zotero_groups:
|
|
638
689
|
sort: 56
|
639
690
|
name: Zotero Groups
|
640
691
|
uri: "http://www.zotero.org"
|
692
|
+
uri_key: "zotero.org"
|
641
693
|
icon: zotero.png
|
642
694
|
use_for: "identity"
|
643
695
|
service_category_id: 8
|
@@ -649,6 +701,7 @@ zotero:
|
|
649
701
|
sort: 57
|
650
702
|
name: Zotero
|
651
703
|
uri: "http://www.zotero.org"
|
704
|
+
uri_key: "zotero.org"
|
652
705
|
uri_data_template: "http://www.zotero.org/{username}/items"
|
653
706
|
uri_template: "http://www.zotero.org/{username}/items"
|
654
707
|
icon: zotero.png
|
@@ -660,6 +713,7 @@ amazon:
|
|
660
713
|
sort: 58
|
661
714
|
name: Amazon
|
662
715
|
uri: "http://www.amazon.com"
|
716
|
+
uri_key: "amazon.com"
|
663
717
|
uri_data_template: "http://www.amazon.com"
|
664
718
|
uri_template:
|
665
719
|
icon: amazon.png
|
@@ -671,6 +725,7 @@ twitter_tags:
|
|
671
725
|
id: 59
|
672
726
|
name: Twitter
|
673
727
|
uri: "http://www.twitter.com"
|
728
|
+
uri_key: "twitter.com"
|
674
729
|
api_uri:
|
675
730
|
uri_data_template: "http://search.twitter.com/search.atom?q=+{tag}"
|
676
731
|
uri_template: "http://search.twitter.com/search?q=+{tag}"
|
@@ -683,6 +738,7 @@ youtube_tags:
|
|
683
738
|
id: 60
|
684
739
|
name: You Tube
|
685
740
|
uri: "http://www.youtube.com"
|
741
|
+
uri_key: "youtube.com"
|
686
742
|
api_uri:
|
687
743
|
uri_data_template: "http://gdata.youtube.com/feeds/base/videos?q={tag}&client=ytapi-youtube-search&alt=rss&v=2"
|
688
744
|
icon: youtube.png
|
@@ -694,6 +750,7 @@ icerocket_blogs:
|
|
694
750
|
id: 61
|
695
751
|
name: IceRocket Blogs
|
696
752
|
uri: "http://www.icerocket.com"
|
753
|
+
uri_key: "icerocket.com"
|
697
754
|
api_uri:
|
698
755
|
uri_data_template: "http://www.icerocket.com/search?tab=blog&q={tag}&rss=1"
|
699
756
|
uri_template: "http://www.icerocket.com/search?tab=blog&fr=h&q={tag}&x=0&y=0"
|
@@ -706,6 +763,7 @@ yahoo_search:
|
|
706
763
|
id: 62
|
707
764
|
name: Yahoo
|
708
765
|
uri: "http://www.yahoo.com"
|
766
|
+
uri_key: "yahoo.com"
|
709
767
|
api_uri:
|
710
768
|
uri_data_template: "http://api.search.yahoo.com/WebSearchService/rss/webSearch.xml?appid=yahoosearchwebrss&query={tag}"
|
711
769
|
uri_template: "http://search.yahoo.com/search?p={tag}&fr=yfp-t-152&toggle=1&cop=mss&ei=UTF-8"
|
@@ -718,6 +776,7 @@ bing_search:
|
|
718
776
|
id: 63
|
719
777
|
name: Bing
|
720
778
|
uri: "http://www.bing.com"
|
779
|
+
uri_key: "bing.com"
|
721
780
|
api_uri:
|
722
781
|
uri_data_template: "http://www.bing.com/search?q={tag}&go=&form=QBLH&qs=n&format=rss"
|
723
782
|
uri_template: "http://www.bing.com/search?q={tag}&go=&form=QBLH&qs=n"
|
@@ -730,6 +789,7 @@ bloglines_tags:
|
|
730
789
|
id: 64
|
731
790
|
name: Bloglines
|
732
791
|
uri: "http://www.bloglines.com"
|
792
|
+
uri_key: "bloglines.com"
|
733
793
|
api_uri:
|
734
794
|
uri_data_template: "feed://www.bloglines.com/search?q={tag}&ql=en&s=f&pop=l&news=m&format=rss"
|
735
795
|
uri_template: "http://www.bloglines.com/search?q={tag}&ql=en&s=f&pop=l&news=m"
|
@@ -742,6 +802,7 @@ ask_blog_search:
|
|
742
802
|
id: 65
|
743
803
|
name: Ask.com Blogs
|
744
804
|
uri: "http://www.ask.com"
|
805
|
+
uri_key: "ask.com"
|
745
806
|
api_uri:
|
746
807
|
uri_data_template: "http://ask.bloglines.com/search?q={tag}&ql=&format=rss"
|
747
808
|
uri_template: "http://www.ask.com/blogsearch?q={tag}&search=search&qsrc=0&o=0&l=dir"
|
@@ -754,6 +815,7 @@ ask_news_search:
|
|
754
815
|
id: 66
|
755
816
|
name: Ask.com News
|
756
817
|
uri: "http://www.ask.com"
|
818
|
+
uri_key: "ask.com"
|
757
819
|
api_uri:
|
758
820
|
uri_data_template: "http://news.ask.com/newsrss?q={tag}&n2c=&o=0&l=dir"
|
759
821
|
uri_template: "http://news.ask.com/news?qsrc=167&o=0&l=dir&q={tag}"
|
@@ -766,6 +828,7 @@ icerocket_news:
|
|
766
828
|
id: 67
|
767
829
|
name: IceRocket News
|
768
830
|
uri: "http://www.icerocket.com"
|
831
|
+
uri_key: "icerocket.com"
|
769
832
|
api_uri:
|
770
833
|
uri_data_template: "http://www.icerocket.com/search?tab=news&q={tag}&rss=1"
|
771
834
|
uri_template: "http://www.icerocket.com/search?tab=news&fr=h&q={tag}&x=0&y=0"
|
@@ -778,6 +841,7 @@ icerocket_search:
|
|
778
841
|
id: 68
|
779
842
|
name: IceRocket
|
780
843
|
uri: "http://www.icerocket.com"
|
844
|
+
uri_key: "icerocket.com"
|
781
845
|
api_uri:
|
782
846
|
uri_data_template: "http://www.icerocket.com/search?tab=web&q={tag}&rss=1"
|
783
847
|
uri_template: "http://www.icerocket.com/search?tab=web&q={tag}"
|
@@ -790,6 +854,7 @@ digg_search:
|
|
790
854
|
id: 69
|
791
855
|
name: Digg
|
792
856
|
uri: "http://www.digg.com"
|
857
|
+
uri_key: "digg.com"
|
793
858
|
api_uri:
|
794
859
|
uri_data_template: "feed://digg.com/rss_search?s={tag}"
|
795
860
|
uri_template: "http://digg.com/search?s={tag}"
|
@@ -802,6 +867,7 @@ clipmarks:
|
|
802
867
|
id: 70
|
803
868
|
name: Clipmarks
|
804
869
|
uri: "http://www.clipmarks.com"
|
870
|
+
uri_key: "clipmarks.com"
|
805
871
|
api_uri:
|
806
872
|
uri_data_template: "feed://rss.clipmarks.com/search/{tag}/"
|
807
873
|
uri_template: "http://clipmarks.com/search/{tag}/"
|
@@ -815,6 +881,7 @@ simpy:
|
|
815
881
|
sort: 71
|
816
882
|
name: Simpy
|
817
883
|
uri: "http://www.simpy.com"
|
884
|
+
uri_key: "simpy.com"
|
818
885
|
api_uri:
|
819
886
|
uri_data_template: "feed://www.simpy.com/rss/links/search/{tag}/s=d"
|
820
887
|
uri_template: "http://www.simpy.com/links/search/{tag}"
|
@@ -827,6 +894,7 @@ connotea_search:
|
|
827
894
|
sort: 72
|
828
895
|
name: Connotea
|
829
896
|
uri: "http://www.connotea.org"
|
897
|
+
uri_key: "connotea.org"
|
830
898
|
uri_data_template: "http://www.connotea.org/rss/search?q={tag}"
|
831
899
|
uri_template: "http://www.connotea.org/search?q={tag}"
|
832
900
|
icon: connotea.png
|
@@ -838,6 +906,7 @@ connotea:
|
|
838
906
|
sort: 73
|
839
907
|
name: Connotea
|
840
908
|
uri: "http://www.connotea.org"
|
909
|
+
uri_key: "connotea.org"
|
841
910
|
uri_data_template: "http://www.connotea.org/rss/user/{username}"
|
842
911
|
uri_template: "http://www.connotea.org/user/{username}"
|
843
912
|
icon: connotea.png
|
@@ -848,6 +917,7 @@ twine_search:
|
|
848
917
|
id: 74
|
849
918
|
name: Twine
|
850
919
|
uri: "http://www.twine.com"
|
920
|
+
uri_key: "twine.com"
|
851
921
|
api_uri:
|
852
922
|
uri_data_template: "http://www.twine.com/feed/atom/entries/search?text={tag}&type="
|
853
923
|
uri_template: "http://www.twine.com/search?type=&text={tag}"
|
@@ -861,6 +931,7 @@ bibsonomy:
|
|
861
931
|
sort: 75
|
862
932
|
name: Bibsonomy
|
863
933
|
uri: "http://www.bibsonomy.org"
|
934
|
+
uri_key: "bibsonomy.org"
|
864
935
|
uri_data_template: "feed://www.bibsonomy.org/publrss/author/{username}"
|
865
936
|
uri_template: "http://www.bibsonomy.org/author/{username}"
|
866
937
|
icon: bibsonomy.png
|
@@ -872,6 +943,7 @@ bibsonomy_search:
|
|
872
943
|
sort: 76
|
873
944
|
name: Bibsonomy
|
874
945
|
uri: "http://www.bibsonomy.org"
|
946
|
+
uri_key: "bibsonomy.org"
|
875
947
|
uri_data_template: "feed://www.bibsonomy.org/burst/tag/{tag}"
|
876
948
|
uri_template: "http://www.bibsonomy.org/tag/{tag}"
|
877
949
|
icon: bibsonomy.png
|
@@ -882,6 +954,7 @@ metacafe:
|
|
882
954
|
id: 77
|
883
955
|
name: MetaCafe
|
884
956
|
uri: "http://www.metacafe.com"
|
957
|
+
uri_key: "metacafe.com"
|
885
958
|
api_uri:
|
886
959
|
uri_data_template: "http://www.metacafe.com/tags/{tag}/rss.xml"
|
887
960
|
uri_template: "http://www.metacafe.com/tags/{tag}"
|