fembem-forem 0.0.1

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.
Files changed (89) hide show
  1. data/.gitignore +14 -0
  2. data/.ruby-gemset +1 -0
  3. data/.ruby-version +1 -0
  4. data/Gemfile +21 -0
  5. data/Gemfile.lock +139 -0
  6. data/MIT-LICENSE +20 -0
  7. data/README.rdoc +3 -0
  8. data/Rakefile +34 -0
  9. data/app/assets/images/forem/.gitkeep +0 -0
  10. data/app/assets/javascripts/forem/application.js +9 -0
  11. data/app/assets/stylesheets/forem/application.css +7 -0
  12. data/app/controllers/forem/application_controller.rb +14 -0
  13. data/app/controllers/forem/posts_controller.rb +24 -0
  14. data/app/controllers/forem/topics_controller.rb +27 -0
  15. data/app/helpers/forem/application_helper.rb +4 -0
  16. data/app/models/forem/post.rb +6 -0
  17. data/app/models/forem/topic.rb +22 -0
  18. data/app/views/forem/posts/_form.html.erb +4 -0
  19. data/app/views/forem/posts/_post.html.erb +6 -0
  20. data/app/views/forem/posts/new.html.erb +5 -0
  21. data/app/views/forem/topics/_form.html.erb +11 -0
  22. data/app/views/forem/topics/index.html.erb +26 -0
  23. data/app/views/forem/topics/new.html.erb +2 -0
  24. data/app/views/forem/topics/show.html.erb +6 -0
  25. data/app/views/layouts/forem/application.html.erb +18 -0
  26. data/bin/erubis +16 -0
  27. data/bin/rackup +16 -0
  28. data/bin/rails +16 -0
  29. data/bin/rake +16 -0
  30. data/bin/rake2thor +16 -0
  31. data/bin/rdoc +16 -0
  32. data/bin/ri +16 -0
  33. data/bin/thor +16 -0
  34. data/bin/tilt +16 -0
  35. data/bin/tt +16 -0
  36. data/config/routes.rb +9 -0
  37. data/db/migrate/20130722031947_create_forem_topics.rb +10 -0
  38. data/db/migrate/20130722033925_create_forem_posts.rb +11 -0
  39. data/db/migrate/20130722051123_add_posts_count_to_forem_topics.rb +5 -0
  40. data/fembem-forem.gemspec +28 -0
  41. data/lib/forem/engine.rb +19 -0
  42. data/lib/forem/version.rb +3 -0
  43. data/lib/forem.rb +8 -0
  44. data/lib/tasks/forem_tasks.rake +4 -0
  45. data/script/rails +6 -0
  46. data/spec/configuration_spec.rb +17 -0
  47. data/spec/dummy/Rakefile +7 -0
  48. data/spec/dummy/app/assets/javascripts/application.js +9 -0
  49. data/spec/dummy/app/assets/stylesheets/application.css +7 -0
  50. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  51. data/spec/dummy/app/controllers/fake_controller.rb +5 -0
  52. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  53. data/spec/dummy/app/mailers/.gitkeep +0 -0
  54. data/spec/dummy/app/models/.gitkeep +0 -0
  55. data/spec/dummy/app/models/user.rb +5 -0
  56. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  57. data/spec/dummy/config/application.rb +45 -0
  58. data/spec/dummy/config/boot.rb +10 -0
  59. data/spec/dummy/config/database.yml +11 -0
  60. data/spec/dummy/config/environment.rb +5 -0
  61. data/spec/dummy/config/environments/development.rb +30 -0
  62. data/spec/dummy/config/environments/production.rb +60 -0
  63. data/spec/dummy/config/environments/test.rb +39 -0
  64. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  65. data/spec/dummy/config/initializers/forem.rb +1 -0
  66. data/spec/dummy/config/initializers/inflections.rb +10 -0
  67. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  68. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  69. data/spec/dummy/config/initializers/session_store.rb +8 -0
  70. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  71. data/spec/dummy/config/locales/en.yml +5 -0
  72. data/spec/dummy/config/routes.rb +7 -0
  73. data/spec/dummy/config.ru +4 -0
  74. data/spec/dummy/db/migrate/20130722071025_create_users.rb +9 -0
  75. data/spec/dummy/db/schema.rb +38 -0
  76. data/spec/dummy/lib/assets/.gitkeep +0 -0
  77. data/spec/dummy/log/.gitkeep +0 -0
  78. data/spec/dummy/public/404.html +26 -0
  79. data/spec/dummy/public/422.html +26 -0
  80. data/spec/dummy/public/500.html +26 -0
  81. data/spec/dummy/public/favicon.ico +0 -0
  82. data/spec/dummy/script/rails +6 -0
  83. data/spec/integration/posts_spec.rb +60 -0
  84. data/spec/integration/topics_spec.rb +42 -0
  85. data/spec/spec_helper.rb +13 -0
  86. data/spec/support/capybara.rb +7 -0
  87. data/spec/support/dummy_login.rb +20 -0
  88. data/spec/support/load_routes.rb +6 -0
  89. metadata +219 -0
data/.gitignore ADDED
@@ -0,0 +1,14 @@
1
+ .bundle/
2
+ log/*.log
3
+ pkg/
4
+ spec/dummy/db/*.sqlite3
5
+ spec/dummy/log/*.log
6
+ spec/dummy/tmp/
7
+ spec/dummy/test/
8
+
9
+ .idea
10
+
11
+ /bin
12
+
13
+
14
+
data/.ruby-gemset ADDED
@@ -0,0 +1 @@
1
+ ticketee
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ ruby-1.9.2-p320
data/Gemfile ADDED
@@ -0,0 +1,21 @@
1
+ #source "http://rubygems.org"
2
+
3
+ # Declare your gem's dependencies in forem.gemspec.
4
+ # Bundler will treat runtime dependencies like base dependencies, and
5
+ # development dependencies will be added by default to the :development group.
6
+ #gemspec
7
+
8
+ # jquery-rails is used by the dummy application
9
+ gem "jquery-rails"
10
+
11
+ # Declare any dependencies that are still in development here instead of in
12
+ # your gemspec. These might include edge Rails or gems from your path or
13
+ # Git. Remember to move these dependencies to your gemspec before releasing
14
+ # your gem to rubygems.org.
15
+
16
+ # To use debugger
17
+ # gem 'ruby-debug19', :require => 'ruby-debug'
18
+
19
+
20
+ source :rubygems
21
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,139 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ fembem-forem (0.0.1)
5
+ rails (~> 3.1.3)
6
+
7
+ GEM
8
+ remote: http://rubygems.org/
9
+ specs:
10
+ actionmailer (3.1.12)
11
+ actionpack (= 3.1.12)
12
+ mail (~> 2.4.4)
13
+ actionpack (3.1.12)
14
+ activemodel (= 3.1.12)
15
+ activesupport (= 3.1.12)
16
+ builder (~> 3.0.0)
17
+ erubis (~> 2.7.0)
18
+ i18n (~> 0.6)
19
+ rack (~> 1.3.6)
20
+ rack-cache (~> 1.2)
21
+ rack-mount (~> 0.8.2)
22
+ rack-test (~> 0.6.1)
23
+ sprockets (~> 2.0.4)
24
+ activemodel (3.1.12)
25
+ activesupport (= 3.1.12)
26
+ builder (~> 3.0.0)
27
+ i18n (~> 0.6)
28
+ activerecord (3.1.12)
29
+ activemodel (= 3.1.12)
30
+ activesupport (= 3.1.12)
31
+ arel (~> 2.2.3)
32
+ tzinfo (~> 0.3.29)
33
+ activeresource (3.1.12)
34
+ activemodel (= 3.1.12)
35
+ activesupport (= 3.1.12)
36
+ activesupport (3.1.12)
37
+ multi_json (~> 1.0)
38
+ addressable (2.2.6)
39
+ arel (2.2.3)
40
+ builder (3.0.4)
41
+ capybara (1.1.2)
42
+ mime-types (>= 1.16)
43
+ nokogiri (>= 1.3.3)
44
+ rack (>= 1.0.0)
45
+ rack-test (>= 0.5.4)
46
+ selenium-webdriver (~> 2.0)
47
+ xpath (~> 0.1.4)
48
+ childprocess (0.3.9)
49
+ ffi (~> 1.0, >= 1.0.11)
50
+ diff-lcs (1.1.3)
51
+ erubis (2.7.0)
52
+ ffi (1.9.0)
53
+ hike (1.2.3)
54
+ i18n (0.6.4)
55
+ jquery-rails (3.0.4)
56
+ railties (>= 3.0, < 5.0)
57
+ thor (>= 0.14, < 2.0)
58
+ json (1.8.0)
59
+ launchy (2.0.5)
60
+ addressable (~> 2.2.6)
61
+ mail (2.4.4)
62
+ i18n (>= 0.4.0)
63
+ mime-types (~> 1.16)
64
+ treetop (~> 1.4.8)
65
+ mime-types (1.23)
66
+ multi_json (1.7.7)
67
+ nokogiri (1.5.0)
68
+ polyglot (0.3.3)
69
+ rack (1.3.10)
70
+ rack-cache (1.2)
71
+ rack (>= 0.4)
72
+ rack-mount (0.8.3)
73
+ rack (>= 1.0.0)
74
+ rack-ssl (1.3.3)
75
+ rack
76
+ rack-test (0.6.2)
77
+ rack (>= 1.0)
78
+ rails (3.1.12)
79
+ actionmailer (= 3.1.12)
80
+ actionpack (= 3.1.12)
81
+ activerecord (= 3.1.12)
82
+ activeresource (= 3.1.12)
83
+ activesupport (= 3.1.12)
84
+ bundler (~> 1.0)
85
+ railties (= 3.1.12)
86
+ railties (3.1.12)
87
+ actionpack (= 3.1.12)
88
+ activesupport (= 3.1.12)
89
+ rack-ssl (~> 1.3.2)
90
+ rake (>= 0.8.7)
91
+ rdoc (~> 3.4)
92
+ thor (~> 0.14.6)
93
+ rake (10.1.0)
94
+ rdoc (3.12.2)
95
+ json (~> 1.4)
96
+ rspec (2.7.0)
97
+ rspec-core (~> 2.7.0)
98
+ rspec-expectations (~> 2.7.0)
99
+ rspec-mocks (~> 2.7.0)
100
+ rspec-core (2.7.1)
101
+ rspec-expectations (2.7.0)
102
+ diff-lcs (~> 1.1.2)
103
+ rspec-mocks (2.7.0)
104
+ rspec-rails (2.7.0)
105
+ actionpack (~> 3.0)
106
+ activesupport (~> 3.0)
107
+ railties (~> 3.0)
108
+ rspec (~> 2.7.0)
109
+ rubyzip (0.9.9)
110
+ selenium-webdriver (2.33.0)
111
+ childprocess (>= 0.2.5)
112
+ multi_json (~> 1.0)
113
+ rubyzip
114
+ websocket (~> 1.0.4)
115
+ sprockets (2.0.4)
116
+ hike (~> 1.2)
117
+ rack (~> 1.0)
118
+ tilt (~> 1.1, != 1.3.0)
119
+ sqlite3 (1.3.7)
120
+ thor (0.14.6)
121
+ tilt (1.4.1)
122
+ treetop (1.4.14)
123
+ polyglot
124
+ polyglot (>= 0.3.1)
125
+ tzinfo (0.3.37)
126
+ websocket (1.0.7)
127
+ xpath (0.1.4)
128
+ nokogiri (~> 1.3)
129
+
130
+ PLATFORMS
131
+ ruby
132
+
133
+ DEPENDENCIES
134
+ capybara
135
+ fembem-forem!
136
+ jquery-rails
137
+ launchy
138
+ rspec-rails (~> 2.5)
139
+ sqlite3
data/MIT-LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright 2013 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,3 @@
1
+ = Forem
2
+
3
+ This project rocks and uses MIT-LICENSE.
data/Rakefile ADDED
@@ -0,0 +1,34 @@
1
+ #!/usr/bin/env rake
2
+ begin
3
+ require 'bundler/setup'
4
+ rescue LoadError
5
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
6
+ end
7
+ begin
8
+ require 'rdoc/task'
9
+ rescue LoadError
10
+ require 'rdoc/rdoc'
11
+ require 'rake/rdoctask'
12
+ RDoc::Task = Rake::RDocTask
13
+ end
14
+
15
+ RDoc::Task.new(:rdoc) do |rdoc|
16
+ rdoc.rdoc_dir = 'rdoc'
17
+ rdoc.title = 'Forem'
18
+ rdoc.options << '--line-numbers'
19
+ rdoc.rdoc_files.include('README.rdoc')
20
+ rdoc.rdoc_files.include('lib/**/*.rb')
21
+ end
22
+
23
+ APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
24
+ load 'rails/tasks/engine.rake'
25
+
26
+
27
+ Bundler::GemHelper.install_tasks
28
+
29
+ require 'rspec/core/rake_task'
30
+ RSpec::Core::RakeTask.new(:spec)
31
+ task :default => :spec
32
+
33
+
34
+
File without changes
@@ -0,0 +1,9 @@
1
+ // This is a manifest file that'll be compiled into including all the files listed below.
2
+ // Add new JavaScript/Coffee code in separate files in this directory and they'll automatically
3
+ // be included in the compiled file accessible from http://example.com/assets/application.js
4
+ // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
5
+ // the compiled file.
6
+ //
7
+ //= require jquery
8
+ //= require jquery_ujs
9
+ //= require_tree .
@@ -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,14 @@
1
+ module Forem
2
+ class ApplicationController < ::ApplicationController
3
+
4
+ private
5
+ def authenticate_forem_user!
6
+ if !current_user
7
+ flash[:notice] = "You must be authenticated before you can do that."
8
+ redirect_to main_app.sign_in_url
9
+ end
10
+ end
11
+
12
+ end
13
+ end
14
+
@@ -0,0 +1,24 @@
1
+ module Forem
2
+ class PostsController < ApplicationController
3
+
4
+ before_filter :authenticate_forem_user!, :only => [:new, :create]
5
+
6
+ before_filter :find_topic
7
+ def new
8
+ @post = @topic.posts.build
9
+ end
10
+
11
+ def create
12
+ params[:post].merge!(:user => current_user)
13
+ @post = @topic.posts.create(params[:post])
14
+
15
+ flash[:notice] = "Post has been created!"
16
+ redirect_to topic_path(@topic)
17
+ end
18
+
19
+ private
20
+ def find_topic
21
+ @topic = Forem::Topic.find(params[:topic_id])
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,27 @@
1
+ module Forem
2
+ class TopicsController < ApplicationController
3
+
4
+ before_filter :authenticate_forem_user!, :only => [:new, :create]
5
+
6
+ def index
7
+ @topics = Forem::Topic.all
8
+ end
9
+
10
+ def new
11
+ @topic = Forem::Topic.new
12
+ @topic.posts.build
13
+ end
14
+
15
+ def create
16
+ params[:topic].merge!(:user => current_user)
17
+ @topic = Forem::Topic.create(params[:topic])
18
+ flash[:notice] = "Topic has been created!"
19
+ redirect_to @topic
20
+ end
21
+
22
+ def show
23
+ @topic = Forem::Topic.find(params[:id])
24
+ end
25
+
26
+ end
27
+ end
@@ -0,0 +1,4 @@
1
+ module Forem
2
+ module ApplicationHelper
3
+ end
4
+ end
@@ -0,0 +1,6 @@
1
+ module Forem
2
+ class Post < ActiveRecord::Base
3
+ belongs_to :topic, :counter_cache => true
4
+ belongs_to :user, :class_name => Forem::Engine.user_class.to_s
5
+ end
6
+ end
@@ -0,0 +1,22 @@
1
+ module Forem
2
+ class Topic < ActiveRecord::Base
3
+ has_many :posts, :order => "created_at ASC"
4
+ accepts_nested_attributes_for :posts
5
+ belongs_to :user, :class_name => Forem::Engine.user_class.to_s
6
+
7
+ #has_one :last_post, :class_name => "Forem::Post",
8
+ # :order => "created_at DESC"
9
+
10
+ before_save :set_post_user
11
+
12
+ def last_post
13
+ Post.order("created_at").last
14
+ end
15
+
16
+ private
17
+ def set_post_user
18
+ self.posts.first.user = self.user
19
+ end
20
+
21
+ end
22
+ end
@@ -0,0 +1,4 @@
1
+ <p>
2
+ <%= post.label :text %><br>
3
+ <%= post.text_area :text %>
4
+ </p>
@@ -0,0 +1,6 @@
1
+ <%= div_for(post) do %>
2
+ <small>Written at <%= post.created_at %></small>
3
+ <small class='user'>By <%= post.user %></small>
4
+ <%= simple_format(post.text) %>
5
+ <%= link_to "Reply", new_topic_post_path(@topic) %>
6
+ <% end %>
@@ -0,0 +1,5 @@
1
+ <h2>New Post</h2>
2
+ <%= form_for [@topic, @post] do |post| %>
3
+ <%= render :partial => "form", :locals => { :post => post } %>
4
+ <%= post.submit %>
5
+ <% end %>
@@ -0,0 +1,11 @@
1
+ <%= form_for @topic do |f| %>
2
+ <p>
3
+ <%= f.label :subject %>
4
+ <%= f.text_field :subject %>
5
+ </p>
6
+
7
+ <%= f.fields_for :posts do |post| %>
8
+ <%= render :partial => "forem/posts/form", :locals => { :post => post} %>
9
+ <% end %>
10
+ <%= f.submit %>
11
+ <% end %>
@@ -0,0 +1,26 @@
1
+ <h1>Topics</h1>
2
+ <% if current_user %>
3
+ <%= link_to "New Topic", new_topic_path %>
4
+ <% end %>
5
+ <% if @topics.empty? %>
6
+ There are currently no topics.
7
+ <% else %>
8
+ <table id='topics'>
9
+ <thead>
10
+ <tr>
11
+ <td>Subject</td>
12
+ <td>Posts count</td>
13
+ <td>Last post at</td>
14
+ </tr>
15
+ </thead>
16
+ <tbody>
17
+ <% @topics.each do |topic| %>
18
+ <tr>
19
+ <td id='topic_subject'><%= link_to topic.subject, topic %></td>
20
+ <td id='posts_count'><%= topic.posts_count %></td>
21
+ <td id='last_post'>last post was <%= time_ago_in_words(topic.last_post.created_at) %> ago by <%= topic.last_post.user %></td>
22
+ </tr>
23
+ <% end %>
24
+ </tbody>
25
+ </table>
26
+ <% end %>
@@ -0,0 +1,2 @@
1
+ <h1>New Topic</h1>
2
+ <%= render "form" %>
@@ -0,0 +1,6 @@
1
+ <%= div_for @topic do %>
2
+ <h1><%= @topic.subject %></h1>
3
+ <div id='posts'>
4
+ <%= render :partial => "forem/posts/post", :collection => @topic.posts %>
5
+ </div>
6
+ <% end %>
@@ -0,0 +1,18 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>Forem</title>
5
+ <%= stylesheet_link_tag "forem/application" %>
6
+ <%= javascript_include_tag "forem/application" %>
7
+ <%= csrf_meta_tags %>
8
+ </head>
9
+ <body>
10
+
11
+ <% flash.each do |key, message| %>
12
+ <div id='flash_<%= key %>'><%= message %></div>
13
+ <% end %>
14
+
15
+ <%= yield %>
16
+
17
+ </body>
18
+ </html>
data/bin/erubis ADDED
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # This file was generated by Bundler.
4
+ #
5
+ # The application 'erubis' is installed as part of a gem, and
6
+ # this file is here to facilitate running it.
7
+ #
8
+
9
+ require 'pathname'
10
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
+ Pathname.new(__FILE__).realpath)
12
+
13
+ require 'rubygems'
14
+ require 'bundler/setup'
15
+
16
+ load Gem.bin_path('erubis', 'erubis')
data/bin/rackup ADDED
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # This file was generated by Bundler.
4
+ #
5
+ # The application 'rackup' is installed as part of a gem, and
6
+ # this file is here to facilitate running it.
7
+ #
8
+
9
+ require 'pathname'
10
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
+ Pathname.new(__FILE__).realpath)
12
+
13
+ require 'rubygems'
14
+ require 'bundler/setup'
15
+
16
+ load Gem.bin_path('rack', 'rackup')
data/bin/rails ADDED
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # This file was generated by Bundler.
4
+ #
5
+ # The application 'rails' is installed as part of a gem, and
6
+ # this file is here to facilitate running it.
7
+ #
8
+
9
+ require 'pathname'
10
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
+ Pathname.new(__FILE__).realpath)
12
+
13
+ require 'rubygems'
14
+ require 'bundler/setup'
15
+
16
+ load Gem.bin_path('rails', 'rails')
data/bin/rake ADDED
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # This file was generated by Bundler.
4
+ #
5
+ # The application 'rake' is installed as part of a gem, and
6
+ # this file is here to facilitate running it.
7
+ #
8
+
9
+ require 'pathname'
10
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
+ Pathname.new(__FILE__).realpath)
12
+
13
+ require 'rubygems'
14
+ require 'bundler/setup'
15
+
16
+ load Gem.bin_path('rake', 'rake')
data/bin/rake2thor ADDED
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # This file was generated by Bundler.
4
+ #
5
+ # The application 'rake2thor' is installed as part of a gem, and
6
+ # this file is here to facilitate running it.
7
+ #
8
+
9
+ require 'pathname'
10
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
+ Pathname.new(__FILE__).realpath)
12
+
13
+ require 'rubygems'
14
+ require 'bundler/setup'
15
+
16
+ load Gem.bin_path('thor', 'rake2thor')
data/bin/rdoc ADDED
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # This file was generated by Bundler.
4
+ #
5
+ # The application 'rdoc' is installed as part of a gem, and
6
+ # this file is here to facilitate running it.
7
+ #
8
+
9
+ require 'pathname'
10
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
+ Pathname.new(__FILE__).realpath)
12
+
13
+ require 'rubygems'
14
+ require 'bundler/setup'
15
+
16
+ load Gem.bin_path('rdoc', 'rdoc')
data/bin/ri ADDED
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # This file was generated by Bundler.
4
+ #
5
+ # The application 'ri' is installed as part of a gem, and
6
+ # this file is here to facilitate running it.
7
+ #
8
+
9
+ require 'pathname'
10
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
+ Pathname.new(__FILE__).realpath)
12
+
13
+ require 'rubygems'
14
+ require 'bundler/setup'
15
+
16
+ load Gem.bin_path('rdoc', 'ri')
data/bin/thor ADDED
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # This file was generated by Bundler.
4
+ #
5
+ # The application 'thor' is installed as part of a gem, and
6
+ # this file is here to facilitate running it.
7
+ #
8
+
9
+ require 'pathname'
10
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
+ Pathname.new(__FILE__).realpath)
12
+
13
+ require 'rubygems'
14
+ require 'bundler/setup'
15
+
16
+ load Gem.bin_path('thor', 'thor')
data/bin/tilt ADDED
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # This file was generated by Bundler.
4
+ #
5
+ # The application 'tilt' is installed as part of a gem, and
6
+ # this file is here to facilitate running it.
7
+ #
8
+
9
+ require 'pathname'
10
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
+ Pathname.new(__FILE__).realpath)
12
+
13
+ require 'rubygems'
14
+ require 'bundler/setup'
15
+
16
+ load Gem.bin_path('tilt', 'tilt')
data/bin/tt ADDED
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # This file was generated by Bundler.
4
+ #
5
+ # The application 'tt' is installed as part of a gem, and
6
+ # this file is here to facilitate running it.
7
+ #
8
+
9
+ require 'pathname'
10
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path("../../Gemfile",
11
+ Pathname.new(__FILE__).realpath)
12
+
13
+ require 'rubygems'
14
+ require 'bundler/setup'
15
+
16
+ load Gem.bin_path('treetop', 'tt')
data/config/routes.rb ADDED
@@ -0,0 +1,9 @@
1
+ Forem::Engine.routes.draw do
2
+
3
+ root :to => "topics#index"
4
+
5
+ resources :topics do
6
+ resources :posts
7
+ end
8
+
9
+ end
@@ -0,0 +1,10 @@
1
+ class CreateForemTopics < ActiveRecord::Migration
2
+ def change
3
+ create_table :forem_topics do |t|
4
+ t.text :subject
5
+ t.integer :user_id
6
+
7
+ t.timestamps
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,11 @@
1
+ class CreateForemPosts < ActiveRecord::Migration
2
+ def change
3
+ create_table :forem_posts do |t|
4
+ t.integer :topic_id
5
+ t.text :text
6
+ t.integer :user_id
7
+
8
+ t.timestamps
9
+ end
10
+ end
11
+ end