stackoverfeeds 1.0.0
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.
- checksums.yaml +15 -0
- data/MIT-LICENSE +20 -0
- data/README.rdoc +121 -0
- data/Rakefile +32 -0
- data/app/assets/javascripts/stackoverfeeds/application.js +13 -0
- data/app/assets/stylesheets/stackoverfeeds/application.css +13 -0
- data/app/controllers/stackoverfeeds/application_controller.rb +4 -0
- data/app/controllers/stackoverfeeds/so_feeds_controller.rb +10 -0
- data/app/helpers/stackoverfeeds/application_helper.rb +4 -0
- data/app/helpers/stackoverfeeds/stackoverfeeds_helper.rb +8 -0
- data/app/models/stackoverfeeds/so_feed.rb +9 -0
- data/app/views/stackoverfeeds/_stackoverflow_feeds.html.erb +28 -0
- data/app/views/stackoverfeeds/application.html.erb +14 -0
- data/config/routes.rb +3 -0
- data/db/migrate/20140402191249_create_stackoverfeeds_so_feeds.rb +14 -0
- data/lib/generators/stackoverfeeds/install/install_generator.rb +74 -0
- data/lib/generators/stackoverfeeds/install/templates/application.css +7 -0
- data/lib/generators/stackoverfeeds/install/templates/application.js +16 -0
- data/lib/generators/stackoverfeeds/install/templates/config.yml +14 -0
- data/lib/generators/stackoverfeeds/install/templates/feeds.css +791 -0
- data/lib/generators/stackoverfeeds/install/templates/feeds.js +21 -0
- data/lib/generators/stackoverfeeds/install/templates/schedule.rb +7 -0
- data/lib/generators/stackoverfeeds/install/templates/sprites.png +0 -0
- data/lib/stackoverfeeds.rb +4 -0
- data/lib/stackoverfeeds/engine.rb +11 -0
- data/lib/stackoverfeeds/stackoverfeeds_handler.rb +34 -0
- data/lib/stackoverfeeds/version.rb +3 -0
- data/lib/tasks/stackoverfeeds_tasks.rake +14 -0
- data/spec/dummy/README.rdoc +28 -0
- data/spec/dummy/Rakefile +6 -0
- data/spec/dummy/app/assets/javascripts/application.js +13 -0
- data/spec/dummy/app/assets/stylesheets/application.css +13 -0
- data/spec/dummy/app/controllers/application_controller.rb +5 -0
- data/spec/dummy/app/helpers/application_helper.rb +2 -0
- data/spec/dummy/app/views/layouts/application.html.erb +14 -0
- data/spec/dummy/bin/bundle +3 -0
- data/spec/dummy/bin/rails +4 -0
- data/spec/dummy/bin/rake +4 -0
- data/spec/dummy/config.ru +4 -0
- data/spec/dummy/config/application.rb +28 -0
- data/spec/dummy/config/boot.rb +5 -0
- data/spec/dummy/config/database.yml +25 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +29 -0
- data/spec/dummy/config/environments/production.rb +80 -0
- data/spec/dummy/config/environments/test.rb +36 -0
- data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/spec/dummy/config/initializers/inflections.rb +16 -0
- data/spec/dummy/config/initializers/mime_types.rb +5 -0
- data/spec/dummy/config/initializers/secret_token.rb +12 -0
- data/spec/dummy/config/initializers/session_store.rb +3 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/spec/dummy/config/locales/en.yml +23 -0
- data/spec/dummy/config/routes.rb +4 -0
- data/spec/dummy/db/development.sqlite3 +0 -0
- data/spec/dummy/db/migrate/20140403144550_create_stackoverfeeds_so_feeds.stackoverfeeds.rb +15 -0
- data/spec/dummy/db/schema.rb +27 -0
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/log/development.log +19 -0
- data/spec/dummy/log/test.log +772 -0
- data/spec/dummy/public/404.html +58 -0
- data/spec/dummy/public/422.html +58 -0
- data/spec/dummy/public/500.html +57 -0
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/dummy/spec/helpers/stackoverfeeds_spec.rb +20 -0
- data/spec/dummy/spec/lib/stackoverfeeds_handler_spec.rb +17 -0
- data/spec/dummy/spec/models/so_feed_spec.rb +32 -0
- data/spec/dummy/spec/resources/member.atom +243 -0
- data/spec/dummy/spec/spec_helper.rb +18 -0
- data/spec/dummy/spec/support/blueprints.rb +10 -0
- metadata +256 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
!binary "U0hBMQ==":
|
|
3
|
+
metadata.gz: !binary |-
|
|
4
|
+
M2RiYjc2MDAzY2QwZjA1NWM3YmU3ZTM4MGQ5NzlhYWY5MTkyMTgwMg==
|
|
5
|
+
data.tar.gz: !binary |-
|
|
6
|
+
ZmM3YWNkYzY3NjM0ZTI2MGViNDg0YTNlOTlmNzcxNWNhNThhMGIzZQ==
|
|
7
|
+
!binary "U0hBNTEy":
|
|
8
|
+
metadata.gz: !binary |-
|
|
9
|
+
MmZjYTdjZjJkYWExNWQzZWEyZDRlMDMyMzQ2MmVkNzNjYjE3NWQ0OTdjYmE1
|
|
10
|
+
YjZkYmMwM2Y0M2Q0N2YzYTExMjJkMGYyNDc3YTExZTY4ZThkMTA4MmQ0ZTJm
|
|
11
|
+
YTZjMDQxMTRjNWZlYzg5NDBhNGZjNzFjYTYyZWZmMjdiZTVkMTQ=
|
|
12
|
+
data.tar.gz: !binary |-
|
|
13
|
+
ZmUyZDEyMGIyMDVjMmRkNzJjZjRiYjIyNmQ0NzE0OGUyOTlhYzc4OGE3Yjdm
|
|
14
|
+
ODUwY2E5NjM3ZTQ3ZWFmYzBiNDViYjQ1NTg4M2M4ZGFlMDRlODAwNzA0ZTY4
|
|
15
|
+
OTBlYWViMjYxMjQ5OTRmNGRiZWMzYTRkNGM2MzAwNzljM2E5NDM=
|
data/MIT-LICENSE
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
Copyright 2014 YOURNAME
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
4
|
+
a copy of this software and associated documentation files (the
|
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
9
|
+
the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be
|
|
12
|
+
included in all copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.rdoc
ADDED
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
= Stackoverfeeds
|
|
2
|
+
|
|
3
|
+
Stackoverfeeds is a full RoR gem that let you show your Stackoverflow activity in a fancy way with minimal configuration. It:
|
|
4
|
+
|
|
5
|
+
* Is a full Rails engine
|
|
6
|
+
* Can be added like a gem in your RoR application
|
|
7
|
+
* Is a complete MVC solution
|
|
8
|
+
* Offers you a predefined view (Stackoverflow like style) that displays your Stackoverflow activity
|
|
9
|
+
* Based on feedshub (https://github.com/VAIRIX/feedshub)
|
|
10
|
+
|
|
11
|
+
== Benefits
|
|
12
|
+
|
|
13
|
+
This solution fits very well for everyone who wants to give more visibility to their company or maybe themselves.
|
|
14
|
+
|
|
15
|
+
== Installation
|
|
16
|
+
|
|
17
|
+
You can add it to your Gemfile with:
|
|
18
|
+
|
|
19
|
+
<code>
|
|
20
|
+
gem 'stackoverfeeds'
|
|
21
|
+
</code>
|
|
22
|
+
|
|
23
|
+
Then run the bundle command to install it
|
|
24
|
+
|
|
25
|
+
<code>
|
|
26
|
+
bundle install
|
|
27
|
+
</code>
|
|
28
|
+
|
|
29
|
+
After you install Stackoverfeeds, you need to run the generator
|
|
30
|
+
|
|
31
|
+
<code>
|
|
32
|
+
rails generate stackoverfeeds:install
|
|
33
|
+
</code>
|
|
34
|
+
|
|
35
|
+
The generator will copy:
|
|
36
|
+
|
|
37
|
+
* Necessary migrations
|
|
38
|
+
* Assets you can customize
|
|
39
|
+
* Environment configurations
|
|
40
|
+
|
|
41
|
+
Also, it will add environment variables in your application.rb file in order to load Stackoverfeeds.
|
|
42
|
+
|
|
43
|
+
The last step is run the migrations
|
|
44
|
+
|
|
45
|
+
<code>
|
|
46
|
+
rake db:migrate
|
|
47
|
+
</code>
|
|
48
|
+
|
|
49
|
+
== Configuration
|
|
50
|
+
|
|
51
|
+
To customize the behaviour of the gem you have to edit <code>/config/stackoverfeeds/config.yml</code>
|
|
52
|
+
|
|
53
|
+
#Set your user assigned number from Stackoverflow
|
|
54
|
+
user_number: '3470100'
|
|
55
|
+
|
|
56
|
+
#Set your user name from Stackoverflow
|
|
57
|
+
user_name: 'vairix'
|
|
58
|
+
|
|
59
|
+
#Set the default number of feeds to retrieve (if no amount set by parameter)
|
|
60
|
+
feeds_number: '10'
|
|
61
|
+
|
|
62
|
+
#Set the theme to the Stackoverflow flair to show on top of the activities
|
|
63
|
+
theme: 'default'
|
|
64
|
+
|
|
65
|
+
And also edit <code>/config/stackoverfeeds/schedule.rb</code> to customize the period of feeds updates.
|
|
66
|
+
Feedshub use whenever Gem to schedule the updates of feeds. For more information visit <https://github.com/javan/whenever>
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
To generate the schedule task, run:
|
|
70
|
+
|
|
71
|
+
<code>
|
|
72
|
+
RAILS_ENV=your_environment rake stackoverfeeds:schedule
|
|
73
|
+
</code>
|
|
74
|
+
|
|
75
|
+
You need to do this to keep updated feeds.
|
|
76
|
+
|
|
77
|
+
== How to integrate it?
|
|
78
|
+
|
|
79
|
+
The integration is done using a helper that will render the public activity wherever you want in the view.
|
|
80
|
+
In order to do it you have to:
|
|
81
|
+
|
|
82
|
+
Include the helper reference in the view controller
|
|
83
|
+
<code>ruby helper Stackoverfeeds::StackoverfeedsHelper</code>
|
|
84
|
+
|
|
85
|
+
In your view, call the helper as shown below
|
|
86
|
+
|
|
87
|
+
<code>
|
|
88
|
+
<%= stackoverflow_feeds %>
|
|
89
|
+
</code>
|
|
90
|
+
|
|
91
|
+
By calling the helper without parameter, it will display the number of feeds specified in the configuration and with all activities collapsed. You can add two parameters (ie.:<code><%= stackoverflow_feeds(50, true) %></code>) to specify the number of feeds to show in the view, and the display mode (activities collapsed or expanded). In non extended mode, each activity summary is retrieve on demand.
|
|
92
|
+
|
|
93
|
+
== Screenshots
|
|
94
|
+
|
|
95
|
+
This is the default style of Feedshub.
|
|
96
|
+
|
|
97
|
+
http://vairix.com/assets/stackoverfeeds.png
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
== License
|
|
101
|
+
|
|
102
|
+
Copyright 2014 VAIRIX
|
|
103
|
+
|
|
104
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
105
|
+
a copy of this software and associated documentation files (the
|
|
106
|
+
"Software"), to deal in the Software without restriction, including
|
|
107
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
108
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
109
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
110
|
+
the following conditions:
|
|
111
|
+
|
|
112
|
+
The above copyright notice and this permission notice shall be
|
|
113
|
+
included in all copies or substantial portions of the Software.
|
|
114
|
+
|
|
115
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
116
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
117
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
118
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
119
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
120
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
121
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/Rakefile
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
begin
|
|
2
|
+
require 'bundler/setup'
|
|
3
|
+
rescue LoadError
|
|
4
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
require 'rdoc/task'
|
|
8
|
+
|
|
9
|
+
RDoc::Task.new(:rdoc) do |rdoc|
|
|
10
|
+
rdoc.rdoc_dir = 'rdoc'
|
|
11
|
+
rdoc.title = 'Stackoverfeeds'
|
|
12
|
+
rdoc.options << '--line-numbers'
|
|
13
|
+
rdoc.rdoc_files.include('README.rdoc')
|
|
14
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
|
|
18
|
+
load 'rails/tasks/engine.rake'
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
Bundler::GemHelper.install_tasks
|
|
23
|
+
|
|
24
|
+
Dir[File.join(File.dirname(__FILE__), 'tasks/**/*.rake')].each {|f| load f }
|
|
25
|
+
|
|
26
|
+
require 'rspec/core'
|
|
27
|
+
require 'rspec/core/rake_task'
|
|
28
|
+
|
|
29
|
+
desc "Run all specs in spec directory (excluding plugin specs)"
|
|
30
|
+
RSpec::Core::RakeTask.new(:spec => 'app:db:test:prepare')
|
|
31
|
+
|
|
32
|
+
task :default => :spec
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// This is a manifest file that'll be compiled into application.js, which will include all the files
|
|
2
|
+
// listed below.
|
|
3
|
+
//
|
|
4
|
+
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
|
|
5
|
+
// or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
|
|
6
|
+
//
|
|
7
|
+
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
|
|
8
|
+
// compiled file.
|
|
9
|
+
//
|
|
10
|
+
// Read Sprockets README (https://github.com/sstephenson/sprockets#sprockets-directives) for details
|
|
11
|
+
// about supported directives.
|
|
12
|
+
//
|
|
13
|
+
//= require_tree .
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This is a manifest file that'll be compiled into application.css, which will include all the files
|
|
3
|
+
* listed below.
|
|
4
|
+
*
|
|
5
|
+
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
|
|
6
|
+
* or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
|
|
7
|
+
*
|
|
8
|
+
* You're free to add application-wide styles to this file and they'll appear at the top of the
|
|
9
|
+
* compiled file, but it's generally better to create a new file per style scope.
|
|
10
|
+
*
|
|
11
|
+
*= require_self
|
|
12
|
+
*= require_tree .
|
|
13
|
+
*/
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
module Stackoverfeeds
|
|
2
|
+
module StackoverfeedsHelper
|
|
3
|
+
def stackoverflow_feeds(limit=ENV['feeds_number'].to_i, extended=!!ENV['extended'])
|
|
4
|
+
@entries = Stackoverfeeds::SoFeed.public_feeds(limit)
|
|
5
|
+
render partial: 'stackoverfeeds/stackoverflow_feeds', locals: { extended: extended }
|
|
6
|
+
end
|
|
7
|
+
end
|
|
8
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<div id='stackoverflow_feeds' class='user-tab-content'>
|
|
2
|
+
<% if ENV['theme'] -%>
|
|
3
|
+
<a href='http://stackoverflow.com/users/<%= ENV['user_number'] %>/<%= ENV['user_name'] %>' target= '_blank'>
|
|
4
|
+
<img src='http://stackoverflow.com/users/flair/<%= ENV['user_number'] %>.png?theme=<%= ENV['theme'] %>' width='208' height='58' >
|
|
5
|
+
</a>
|
|
6
|
+
<% end -%>
|
|
7
|
+
<table class='history-table'>
|
|
8
|
+
<tbody>
|
|
9
|
+
<% @entries.each do |entry| %>
|
|
10
|
+
<tr>
|
|
11
|
+
<td id='enable-load-body-<%= entry.id %>' class='async-load load-prepped'>
|
|
12
|
+
<% if(extended) -%>
|
|
13
|
+
<a class='load-body expander-arrow-small-hide hide-body expander-arrow-small-show'></a>
|
|
14
|
+
<b><%= link_to entry.title, entry.entry_id, target: '_blank', class: 'answer-hyperlink timeline-answers' %></b>
|
|
15
|
+
</br>
|
|
16
|
+
<span class='comments' style='display: block;'><%= entry.summary.html_safe unless (entry.summary.blank?) %></span>
|
|
17
|
+
<% else -%>
|
|
18
|
+
<a class='load-body expander-arrow-small-hide'></a>
|
|
19
|
+
<b><%= link_to entry.title, entry.entry_id, target: '_blank', class: 'answer-hyperlink timeline-answers' %></b>
|
|
20
|
+
</br>
|
|
21
|
+
<span class='comments' style='display: none;'></span>
|
|
22
|
+
<% end -%>
|
|
23
|
+
</td>
|
|
24
|
+
</tr>
|
|
25
|
+
<% end %>
|
|
26
|
+
</tbody>
|
|
27
|
+
</table>
|
|
28
|
+
</div>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<title>Stackoverfeeds</title>
|
|
5
|
+
<%= stylesheet_link_tag "stackoverfeeds/application", media: "all" %>
|
|
6
|
+
<%= javascript_include_tag "stackoverfeeds/application" %>
|
|
7
|
+
<%= csrf_meta_tags %>
|
|
8
|
+
</head>
|
|
9
|
+
<body>
|
|
10
|
+
|
|
11
|
+
<%= yield %>
|
|
12
|
+
|
|
13
|
+
</body>
|
|
14
|
+
</html>
|
data/config/routes.rb
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
class CreateStackoverfeedsSoFeeds < ActiveRecord::Migration
|
|
2
|
+
def change
|
|
3
|
+
create_table :stackoverfeeds_so_feeds do |t|
|
|
4
|
+
t.string :author
|
|
5
|
+
t.string :entry_id
|
|
6
|
+
t.text :summary
|
|
7
|
+
t.string :title
|
|
8
|
+
t.datetime :updated
|
|
9
|
+
t.datetime :published
|
|
10
|
+
|
|
11
|
+
t.timestamps
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
require 'rails/generators'
|
|
2
|
+
|
|
3
|
+
module Stackoverfeeds
|
|
4
|
+
module Generators
|
|
5
|
+
class InstallGenerator < ::Rails::Generators::Base
|
|
6
|
+
|
|
7
|
+
source_root File.expand_path('../templates', __FILE__)
|
|
8
|
+
desc 'This generator prepare Stackoverfeeds to be used'
|
|
9
|
+
|
|
10
|
+
def add_assets
|
|
11
|
+
css_manifest = 'app/assets/stylesheets/application.css'
|
|
12
|
+
|
|
13
|
+
if File.exist?(css_manifest)
|
|
14
|
+
content = File.read(css_manifest)
|
|
15
|
+
unless content.match(/require_tree\s+\.\s*$/) || content.match(/require stackoverfeeds\/feeds/)
|
|
16
|
+
style_require_block = "\r\n*= require stackoverfeeds/feeds\r\n"
|
|
17
|
+
insert_into_file css_manifest, style_require_block, :before => "*/"
|
|
18
|
+
end
|
|
19
|
+
else
|
|
20
|
+
copy_file 'application.css', 'app/assets/stylesheets/application.css'
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
js_manifest = 'app/assets/javascripts/application.js'
|
|
24
|
+
if File.exist?(js_manifest)
|
|
25
|
+
content = File.read(js_manifest)
|
|
26
|
+
unless content.match(/require_tree\s+\.\s*$/) || content.match(/require stackoverfeeds\/feeds/)
|
|
27
|
+
js_require_block = "\r\n//= require stackoverfeeds/feeds"
|
|
28
|
+
append_to_file js_manifest, js_require_block
|
|
29
|
+
end
|
|
30
|
+
else
|
|
31
|
+
copy_file 'application.js', 'app/assets/javascripts/application.js'
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def add_styles
|
|
36
|
+
copy_file 'feeds.css', 'app/assets/stylesheets/stackoverfeeds/feeds.css'
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def add_scripts
|
|
40
|
+
copy_file 'feeds.js', 'app/assets/javascripts/stackoverfeeds/feeds.js'
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
def add_images
|
|
44
|
+
copy_file 'sprites.png', 'app/assets/images/stackoverfeeds/sprites.png'
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def add_config
|
|
48
|
+
unless File.read('config/application.rb').match(/stackoverfeeds\/config.yml/)
|
|
49
|
+
conf_manifest = 'config/stackoverfeeds/config.yml'
|
|
50
|
+
env_update = "\r\nENV.update YAML.load(File.read(File.expand_path('../stackoverfeeds/config.yml', __FILE__)))\n"
|
|
51
|
+
copy_file 'config.yml', conf_manifest
|
|
52
|
+
append_to_file 'config/application.rb', env_update
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def add_routes
|
|
57
|
+
routes = 'config/routes.rb'
|
|
58
|
+
unless File.read(routes).match(/stackoverfeeds/)
|
|
59
|
+
routes_update = "\r\n\r\n mount Stackoverfeeds::Engine => '\/stackoverfeeds'\n"
|
|
60
|
+
insert_into_file routes, routes_update, :after => "Application.routes.draw do"
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
def copy_schedule
|
|
65
|
+
copy_file 'schedule.rb', 'config/stackoverfeeds/schedule.rb'
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def run_tasks
|
|
69
|
+
exec('rake stackoverfeeds:install:migrations')
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This is a manifest file that'll automatically include all the stylesheets available in this directory
|
|
3
|
+
* and any sub-directories. You're free to add application-wide styles to this file and they'll appear at
|
|
4
|
+
* the top of the compiled file, but it's generally better to create a new file per style scope.
|
|
5
|
+
*= require_self
|
|
6
|
+
*= require_tree .
|
|
7
|
+
*/
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// This is a manifest file that'll be compiled into application.js, which will include all the files
|
|
2
|
+
// listed below.
|
|
3
|
+
//
|
|
4
|
+
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
|
|
5
|
+
// or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
|
|
6
|
+
//
|
|
7
|
+
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
|
|
8
|
+
// compiled file.
|
|
9
|
+
//
|
|
10
|
+
// Read Sprockets README (https://github.com/sstephenson/sprockets#sprockets-directives) for details
|
|
11
|
+
// about supported directives.
|
|
12
|
+
//
|
|
13
|
+
//= require jquery
|
|
14
|
+
//= require jquery_ujs
|
|
15
|
+
//= require turbolinks
|
|
16
|
+
//= require_tree .
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
#Set your user assigned number from Stackoverflow
|
|
2
|
+
user_number: '3470100'
|
|
3
|
+
|
|
4
|
+
#Set your user name from Stackoverflow
|
|
5
|
+
user_name: 'vairix'
|
|
6
|
+
|
|
7
|
+
#Set the default number of feeds to retrieve (if no amount set by parameter)
|
|
8
|
+
feeds_number: '10'
|
|
9
|
+
|
|
10
|
+
#Set the display mode
|
|
11
|
+
#extended: false
|
|
12
|
+
|
|
13
|
+
#Set the theme to the Stackoverflow flair to show on top of the activities
|
|
14
|
+
theme: 'default'
|