homeland 1.0.0.beta2 → 1.0.0.beta3
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 +4 -4
- data/README.md +3 -1
- data/app/assets/javascripts/homeland/homeland/nodes.js +2 -0
- data/app/assets/javascripts/homeland/nodes.js +2 -0
- data/app/assets/stylesheets/homeland/application.scss +33 -0
- data/app/assets/stylesheets/homeland/homeland/nodes.css +4 -0
- data/app/controllers/homeland/application_controller.rb +12 -1
- data/app/controllers/homeland/nodes_controller.rb +49 -0
- data/app/models/homeland/reply.rb +4 -3
- data/app/models/homeland/topic.rb +5 -4
- data/app/views/homeland/nodes/_form.html.erb +27 -0
- data/app/views/homeland/nodes/_node.html.erb +25 -0
- data/app/views/homeland/nodes/edit.html.erb +8 -0
- data/app/views/homeland/nodes/index.html.erb +14 -0
- data/app/views/homeland/nodes/new.html.erb +7 -0
- data/app/views/homeland/nodes/update.html.erb +2 -0
- data/app/views/homeland/topics/_node_info.html.erb +5 -1
- data/app/views/layouts/homeland/application.html.erb +3 -0
- data/config/locales/homeland.en.yml +4 -1
- data/config/locales/homeland.zh-CN.yml +38 -3
- data/config/routes.rb +1 -0
- data/lib/generators/homeland/controllers_generator.rb +10 -2
- data/lib/generators/homeland/models_generator.rb +22 -0
- data/lib/homeland.rb +10 -0
- data/{app/models/homeland/concerns/markdown_body.rb → lib/homeland/concerns/markup.rb} +1 -1
- data/{app/models → lib}/homeland/concerns/soft_delete.rb +2 -2
- data/{app/models/homeland/concerns/user_methods.rb → lib/homeland/concerns/user_delegates.rb} +1 -1
- data/lib/homeland/configuration.rb +2 -0
- data/lib/homeland/version.rb +1 -1
- metadata +15 -5
- data/app/models/homeland/concerns/pagination.rb +0 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cfcb275be53c93806dcc275f7c76b2dc846c2193
|
4
|
+
data.tar.gz: 604b6421b2fa89afe5669989c35d55e8fee1fbf4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 797f4b1dd577bcd590c31144380d9a05bf91767fd9d5b2146100a3722b9ef2a05e1ebad7f6012c61611f5e1150f4b257805e3bf245b48fbbc6756d0abc91be25
|
7
|
+
data.tar.gz: 20b207acab1c5f48dd51541779f1f8b8179d3ffc49b9c132950b785e9da4cbdde1531dff315358a344b971723d942653183869c111f61ee6425fa9303126f2de
|
data/README.md
CHANGED
@@ -112,9 +112,11 @@ end
|
|
112
112
|
|
113
113
|
```
|
114
114
|
|
115
|
-
### 如果你有更高级的需要,可以直接生成出 Homeland 的 View 文件,然后按自己的需要定制:
|
115
|
+
### 如果你有更高级的需要,可以直接生成出 Homeland 的 Model, Controller, View 文件,然后按自己的需要定制:
|
116
116
|
|
117
117
|
```bash
|
118
|
+
$ rails g homeland:models
|
119
|
+
$ rails g homeland:controllers
|
118
120
|
$ rails g homeland:views
|
119
121
|
```
|
120
122
|
|
@@ -22,6 +22,8 @@
|
|
22
22
|
border-radius: 180px;
|
23
23
|
}
|
24
24
|
|
25
|
+
.timeago { color: #999; text-decoration: none; }
|
26
|
+
|
25
27
|
.btn-opt {
|
26
28
|
line-height: 100%;
|
27
29
|
padding: 6px 8px 8px 8px;
|
@@ -112,3 +114,34 @@
|
|
112
114
|
box-shadow: 0 1px 4px rgba(0,0,0,0.28);
|
113
115
|
}
|
114
116
|
}
|
117
|
+
|
118
|
+
.nodes {
|
119
|
+
margin-bottom: 20px;
|
120
|
+
|
121
|
+
.node-item {
|
122
|
+
padding: 15px 15px;
|
123
|
+
border: 1px solid #eee;
|
124
|
+
&:last-child {
|
125
|
+
border-bottom: 1px solid #eee;
|
126
|
+
}
|
127
|
+
border-bottom: 0px;
|
128
|
+
border-left: 5px solid #EEE;
|
129
|
+
|
130
|
+
|
131
|
+
.info {
|
132
|
+
.title {
|
133
|
+
font-size: 18px; font-weight: bold;
|
134
|
+
.count { font-weight: normal; font-size: 14px; }
|
135
|
+
}
|
136
|
+
.desc { color: #666; margin-top: 10px; }
|
137
|
+
}
|
138
|
+
|
139
|
+
.topics {
|
140
|
+
.item {
|
141
|
+
margin: 3px;
|
142
|
+
a { color: #333; font-size: 13px; }
|
143
|
+
.timeago { font-size: 12px; }
|
144
|
+
}
|
145
|
+
}
|
146
|
+
}
|
147
|
+
}
|
@@ -3,7 +3,7 @@ module Homeland
|
|
3
3
|
helper Homeland::ActionView::WillPaginate
|
4
4
|
helper Homeland::ApplicationHelper
|
5
5
|
|
6
|
-
helper_method :current_user, :owner?
|
6
|
+
helper_method :current_user, :owner?, :admin?
|
7
7
|
|
8
8
|
alias_method :origin_current_user, Homeland.config.current_user_method.to_sym
|
9
9
|
alias_method :origin_authenticate_user!, Homeland.config.authenticate_user_method.to_sym
|
@@ -22,6 +22,12 @@ module Homeland
|
|
22
22
|
end
|
23
23
|
end
|
24
24
|
|
25
|
+
def authorize_admin!
|
26
|
+
if !admin?
|
27
|
+
redirect_to homeland.root_path, alert: t('homeland.access_denied')
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
25
31
|
def set_seo_meta(title = '', meta_keywords = '', meta_description = '')
|
26
32
|
@page_title = "#{title}" if title.length > 0
|
27
33
|
@meta_keywords = meta_keywords
|
@@ -35,5 +41,10 @@ module Homeland
|
|
35
41
|
|
36
42
|
obj.user_id == current_user.id
|
37
43
|
end
|
44
|
+
|
45
|
+
def admin?
|
46
|
+
return false if current_user.blank?
|
47
|
+
current_user.send(Homeland.config.user_admin_method) == true
|
48
|
+
end
|
38
49
|
end
|
39
50
|
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
module Homeland
|
2
|
+
class NodesController < Homeland::ApplicationController
|
3
|
+
before_action :authorize_admin!, except: [:index]
|
4
|
+
before_action :node, only: [:edit, :update, :destroy]
|
5
|
+
|
6
|
+
def index
|
7
|
+
@nodes = Node.order('sort desc')
|
8
|
+
end
|
9
|
+
|
10
|
+
def new
|
11
|
+
@node = Node.new
|
12
|
+
end
|
13
|
+
|
14
|
+
def create
|
15
|
+
@node = Node.new(node_params)
|
16
|
+
if @node.save
|
17
|
+
redirect_to(node_topics_path(@node), notice: t('homeland.node_created'))
|
18
|
+
else
|
19
|
+
render action: "new"
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
def edit
|
24
|
+
end
|
25
|
+
|
26
|
+
def update
|
27
|
+
if @node.update_attributes(node_params)
|
28
|
+
redirect_to(node_topics_path(@node), notice: t('homeland.node_updated'))
|
29
|
+
else
|
30
|
+
render action: "new"
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
def destroy
|
35
|
+
@node.destroy
|
36
|
+
redirect_to(nodes_path, notice: t('homeland.node_deleted'))
|
37
|
+
end
|
38
|
+
|
39
|
+
private
|
40
|
+
|
41
|
+
def node
|
42
|
+
@node ||= Node.find(params[:id])
|
43
|
+
end
|
44
|
+
|
45
|
+
def node_params
|
46
|
+
params.require(:node).permit(:name, :description, :color, :sort)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -1,9 +1,10 @@
|
|
1
1
|
module Homeland
|
2
2
|
class Reply < ActiveRecord::Base
|
3
3
|
include Homeland::Concerns::SoftDelete
|
4
|
-
include Homeland::Concerns::
|
5
|
-
include Homeland::Concerns::
|
6
|
-
|
4
|
+
include Homeland::Concerns::Markup
|
5
|
+
include Homeland::Concerns::UserDelegates
|
6
|
+
|
7
|
+
self.per_page = Homeland.config.per_page
|
7
8
|
|
8
9
|
belongs_to :user, class_name: Homeland.config.user_class.to_s
|
9
10
|
belongs_to :topic, class_name: 'Homeland::Topic'
|
@@ -1,13 +1,14 @@
|
|
1
1
|
module Homeland
|
2
2
|
class Topic < ActiveRecord::Base
|
3
3
|
include Homeland::Concerns::SoftDelete
|
4
|
-
include Homeland::Concerns::
|
5
|
-
include Homeland::Concerns::
|
6
|
-
|
4
|
+
include Homeland::Concerns::Markup
|
5
|
+
include Homeland::Concerns::UserDelegates
|
6
|
+
|
7
|
+
self.per_page = Homeland.config.per_page
|
7
8
|
|
8
9
|
belongs_to :user, class_name: Homeland.config.user_class.to_s
|
9
10
|
belongs_to :last_reply_user, class_name: Homeland.config.user_class.to_s
|
10
|
-
belongs_to :node, class_name: 'Homeland::Node'
|
11
|
+
belongs_to :node, class_name: 'Homeland::Node', counter_cache: true
|
11
12
|
has_many :replies, class_name: 'Homeland::Reply'
|
12
13
|
|
13
14
|
validates :user_id, :title, :body, :node_id, presence: true
|
@@ -0,0 +1,27 @@
|
|
1
|
+
<%= form_for(@node) do |f| %>
|
2
|
+
<%= render_errors @node %>
|
3
|
+
|
4
|
+
<div class="form-group">
|
5
|
+
<%= f.label :name %>
|
6
|
+
<%= f.text_field :name, class: 'form-control' %>
|
7
|
+
</div>
|
8
|
+
|
9
|
+
<div class="form-group">
|
10
|
+
<%= f.label :description %>
|
11
|
+
<%= f.text_area :description, rows: 4, class: 'form-control' %>
|
12
|
+
</div>
|
13
|
+
|
14
|
+
<div class="form-group">
|
15
|
+
<%= f.label :color %>
|
16
|
+
<%= f.select :color, Homeland.config.node_colors , {}, class: 'form-control' %>
|
17
|
+
</div>
|
18
|
+
|
19
|
+
<div class="form-group">
|
20
|
+
<%= f.label :sort %>
|
21
|
+
<%= f.text_field :sort, class: 'form-control' %>
|
22
|
+
</div>
|
23
|
+
|
24
|
+
<div class="form-group">
|
25
|
+
<button type="submit" class="btn btn-primary btn-lg" data-disable-with="<%= t('homeland.submiting') %>"><%= t('homeland.submit') %></button>
|
26
|
+
</div>
|
27
|
+
<% end %>
|
@@ -0,0 +1,25 @@
|
|
1
|
+
<div class="node-item row" style="border-left-color: <%= node.badge_color %>;">
|
2
|
+
<div class="info col-sm-5">
|
3
|
+
<div class="title"><%= link_to node.name, homeland.node_topics_path(node) %> <span class="count"><%= node.topics_count %></span></div>
|
4
|
+
<div class="desc">
|
5
|
+
<%= simple_format node.description %>
|
6
|
+
</div>
|
7
|
+
<div class="opts">
|
8
|
+
<% if admin? %>
|
9
|
+
<a class="btn-opt edit" href="<%= homeland.edit_node_path(node) %>"><i class="fa fa-pencil"></i></a>
|
10
|
+
|
11
|
+
<a class="btn-opt delete" href="<%= homeland.node_path(node) %>" data-method="DELETE" data-confirm="<%= t('homeland.are_you_sure_to_delete') %>"><i class="fa fa-trash"></i></a>
|
12
|
+
<% end %>
|
13
|
+
</div>
|
14
|
+
</div>
|
15
|
+
<div class="topics col-sm-7">
|
16
|
+
<%= cache(node, 'topics-recent-5') do %>
|
17
|
+
<% node.topics.recent.limit(3).each do |topic| %>
|
18
|
+
<div class="item">
|
19
|
+
<%= link_to topic.title, homeland.topic_path(topic) %>
|
20
|
+
<%= timeago topic.created_at %>
|
21
|
+
</div>
|
22
|
+
<% end %>
|
23
|
+
<% end %>
|
24
|
+
</div>
|
25
|
+
</div>
|
@@ -0,0 +1,8 @@
|
|
1
|
+
<ol class="breadcrumb">
|
2
|
+
<li><a href="<%= homeland.root_path %>"><%= t('homeland.nav.home') %></a></li>
|
3
|
+
<li><a href="<%= homeland.nodes_path %>"><%= t('homeland.nav.channels') %></a></li>
|
4
|
+
<li><a href="<%= homeland.node_topics_path %>"><%= @node.name %></a></li>
|
5
|
+
<li class="active"><%= t('homeland.nav.edit') %></li>
|
6
|
+
</ol>
|
7
|
+
|
8
|
+
<%= render 'form' %>
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<% if admin? %>
|
2
|
+
<ul class="nav nav-pills" style="margin-bottom:20px ">
|
3
|
+
<li class="nav-item">
|
4
|
+
<a class="nav-link active" href="<%= homeland.nodes_path %>"><%= t("homeland.channels") %></a>
|
5
|
+
</li>
|
6
|
+
<li class="nav-item">
|
7
|
+
<a class="nav-link" href="<%= homeland.new_node_path %>"><%= t("homeland.new_node") %></a>
|
8
|
+
</li>
|
9
|
+
</ul>
|
10
|
+
<% end %>
|
11
|
+
|
12
|
+
<div class="nodes">
|
13
|
+
<%= render @nodes %>
|
14
|
+
</div>
|
@@ -0,0 +1,7 @@
|
|
1
|
+
<ol class="breadcrumb">
|
2
|
+
<li><a href="<%= homeland.root_path %>"><%= t('homeland.nav.home') %></a></li>
|
3
|
+
<li><a href="<%= homeland.nodes_path %>"><%= t('homeland.nav.channels') %></a></li>
|
4
|
+
<li class="active"><%= t('homeland.nav.new') %></li>
|
5
|
+
</ol>
|
6
|
+
|
7
|
+
<%= render 'form' %>
|
@@ -3,7 +3,11 @@
|
|
3
3
|
<div class="card-block">
|
4
4
|
<h4 class="card-title"><%= node_tag(@node) %></h4>
|
5
5
|
<p class="card-text"><%= simple_format @node.description %></p>
|
6
|
-
|
6
|
+
<% if admin? %>
|
7
|
+
<a class="btn-opt" href="<%= homeland.edit_node_path(@node) %>"><i class="fa fa-pencil"></i></a>
|
8
|
+
|
9
|
+
<a class="btn-opt" href="<%= homeland.node_path(@node) %>" data-method="DELETE" data-confirm="<%= t('homeland.are_you_sure_to_delete') %>"><i class="fa fa-trash"></i></a>
|
10
|
+
<% end %>
|
7
11
|
</div>
|
8
12
|
</div>
|
9
13
|
<% end %>
|
@@ -21,6 +21,9 @@
|
|
21
21
|
<li class="nav-item<%= ' active' if controller_name == 'topics' and action_name == 'recent' %>">
|
22
22
|
<a class="nav-link" href="<%= homeland.recent_topics_path %>"><%= t('homeland.nav.recent') %></a>
|
23
23
|
</li>
|
24
|
+
<li class="nav-item<%= ' active' if controller_name == 'nodes' %>">
|
25
|
+
<a class="nav-link" href="<%= homeland.nodes_path %>"><%= t('homeland.nav.channels') %></a>
|
26
|
+
</li>
|
24
27
|
</ul>
|
25
28
|
<ul class="nav navbar-nav pull-xs-right">
|
26
29
|
<li class="nav-item<%= ' active' if controller_name == 'topics' and action_name == 'new' %>">
|
@@ -20,7 +20,7 @@ en:
|
|
20
20
|
features: 'Features'
|
21
21
|
recent: 'Recent'
|
22
22
|
node: "Channel"
|
23
|
-
new: "New
|
23
|
+
new: "New"
|
24
24
|
edit: 'Edit'
|
25
25
|
topics:
|
26
26
|
empty: 'Ther have no subject created.'
|
@@ -38,3 +38,6 @@ en:
|
|
38
38
|
reply_created: "Reply created success."
|
39
39
|
reply_deleted: "Reply deleted success."
|
40
40
|
reply_updated: "Reply updated success."
|
41
|
+
node_created: "Channel created success."
|
42
|
+
node_updated: "Channel updated success."
|
43
|
+
node_deleted: "Channel deleted success."
|
@@ -1,8 +1,43 @@
|
|
1
1
|
zh-CN:
|
2
|
+
activerecord:
|
3
|
+
models:
|
4
|
+
homeland/topic: "话题"
|
5
|
+
homeland/reply: "回帖"
|
6
|
+
attributes:
|
7
|
+
homeland/topic:
|
8
|
+
title: "标题"
|
9
|
+
body: "正文"
|
10
|
+
node: "频道"
|
11
|
+
replies_count: "回帖量"
|
12
|
+
user: "作者"
|
13
|
+
activity: "更新"
|
14
|
+
homeland/reply:
|
15
|
+
body: "正文"
|
2
16
|
homeland:
|
3
17
|
nav:
|
4
|
-
home: '
|
5
|
-
|
6
|
-
|
18
|
+
home: 'Homeland'
|
19
|
+
latest: '话题'
|
20
|
+
features: '精华帖'
|
21
|
+
recent: '最新发布'
|
22
|
+
node: "频道"
|
23
|
+
new: "发帖"
|
24
|
+
edit: '编辑'
|
25
|
+
topics:
|
26
|
+
empty: '没有查到任何话题'
|
27
|
+
type_reply: '在这里输入你要参与回复的内容...'
|
28
|
+
reply_to: "回复"
|
29
|
+
submiting: '提交中,请稍后...'
|
7
30
|
submit: '提交'
|
8
31
|
cancel: '取消'
|
32
|
+
reply: '回复'
|
33
|
+
access_denied: "拒绝访问."
|
34
|
+
are_you_sure_to_delete: "确定要删除么?"
|
35
|
+
topic_created: "话题创建成功"
|
36
|
+
topic_updated: "话题修改成功"
|
37
|
+
topic_deleted: "话题删除成功"
|
38
|
+
reply_created: "回帖创建成功"
|
39
|
+
reply_deleted: "话题删除成功"
|
40
|
+
reply_updated: "话题修改成功"
|
41
|
+
node_created: "节点创建成功"
|
42
|
+
node_updated: "节点修改成功"
|
43
|
+
node_deleted: "节点删除成功"
|
data/config/routes.rb
CHANGED
@@ -4,10 +4,18 @@ module Homeland
|
|
4
4
|
module Generators
|
5
5
|
class ControllersGenerator < Rails::Generators::Base #:nodoc:
|
6
6
|
source_root File.expand_path("../../../../app/controllers", __FILE__)
|
7
|
-
desc "Used to copy Homeland's
|
7
|
+
desc "Used to copy Homeland's controllers to your application's controllers."
|
8
8
|
|
9
9
|
def copy_controllers
|
10
|
-
|
10
|
+
%w(nodes replies topics).each do |fname|
|
11
|
+
path = "#{Rails.root}/app/controllers/homeland/#{fname}_controller.rb"
|
12
|
+
if File.exists?(path)
|
13
|
+
puts "Skipping homeland/#{fname}_controller.rb creation, as file already exists!"
|
14
|
+
else
|
15
|
+
puts "Adding model (homeland/#{fname}_controller.rb)..."
|
16
|
+
template "homeland/#{fname}_controller.rb", path
|
17
|
+
end
|
18
|
+
end
|
11
19
|
end
|
12
20
|
end
|
13
21
|
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
require 'rails/generators'
|
3
|
+
module Homeland
|
4
|
+
module Generators
|
5
|
+
class ModelsGenerator < Rails::Generators::Base #:nodoc:
|
6
|
+
source_root File.expand_path("../../../../app/models", __FILE__)
|
7
|
+
desc "Used to copy Homeland's models to your application's models."
|
8
|
+
|
9
|
+
def copy_models
|
10
|
+
%w(node reply topic).each do |fname|
|
11
|
+
path = "#{Rails.root}/app/models/homeland/#{fname}.rb"
|
12
|
+
if File.exists?(path)
|
13
|
+
puts "Skipping homeland/#{fname}.rb creation, as file already exists!"
|
14
|
+
else
|
15
|
+
puts "Adding model (homeland/#{fname}.rb)..."
|
16
|
+
template "homeland/#{fname}.rb", path
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
data/lib/homeland.rb
CHANGED
@@ -3,6 +3,11 @@ require "homeland/engine"
|
|
3
3
|
require 'homeland/configuration'
|
4
4
|
require 'homeland/markup'
|
5
5
|
require 'homeland/action_view/will_paginate'
|
6
|
+
require 'homeland/concerns/markup'
|
7
|
+
require 'homeland/concerns/soft_delete'
|
8
|
+
require 'homeland/concerns/user_delegates'
|
9
|
+
require 'will_paginate'
|
10
|
+
require 'will_paginate/active_record'
|
6
11
|
require 'font-awesome-rails'
|
7
12
|
|
8
13
|
module Homeland
|
@@ -22,11 +27,16 @@ module Homeland
|
|
22
27
|
@config.user_profile_url_method = 'profile_url'
|
23
28
|
@config.authenticate_user_method = 'authenticate_user!'
|
24
29
|
@config.current_user_method = 'current_user'
|
30
|
+
@config.node_colors = ['#0E76BD', '#CEA9A9', '#e9dd00', '#222', '#F7941D', '#AB9364', '#76923C', '#33b']
|
25
31
|
@config
|
26
32
|
end
|
27
33
|
|
28
34
|
def configure(&block)
|
29
35
|
config.instance_exec(&block)
|
30
36
|
end
|
37
|
+
|
38
|
+
def node_colors
|
39
|
+
|
40
|
+
end
|
31
41
|
end
|
32
42
|
end
|
data/lib/homeland/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: homeland
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.
|
4
|
+
version: 1.0.0.beta3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jason Lee
|
@@ -125,24 +125,30 @@ files:
|
|
125
125
|
- Rakefile
|
126
126
|
- app/assets/javascripts/homeland/application.coffee
|
127
127
|
- app/assets/javascripts/homeland/bootstrap.min.js
|
128
|
+
- app/assets/javascripts/homeland/homeland/nodes.js
|
128
129
|
- app/assets/javascripts/homeland/jquery.timeago.js
|
130
|
+
- app/assets/javascripts/homeland/nodes.js
|
129
131
|
- app/assets/javascripts/homeland/tether.min.js
|
130
132
|
- app/assets/stylesheets/homeland/application.scss
|
131
133
|
- app/assets/stylesheets/homeland/bootstrap-theme.scss
|
132
134
|
- app/assets/stylesheets/homeland/bootstrap.min.css
|
135
|
+
- app/assets/stylesheets/homeland/homeland/nodes.css
|
133
136
|
- app/assets/stylesheets/homeland/markdown.scss
|
134
137
|
- app/assets/stylesheets/homeland/tether.min.css
|
135
138
|
- app/controllers/homeland/application_controller.rb
|
139
|
+
- app/controllers/homeland/nodes_controller.rb
|
136
140
|
- app/controllers/homeland/replies_controller.rb
|
137
141
|
- app/controllers/homeland/topics_controller.rb
|
138
142
|
- app/helpers/homeland/application_helper.rb
|
139
|
-
- app/models/homeland/concerns/markdown_body.rb
|
140
|
-
- app/models/homeland/concerns/pagination.rb
|
141
|
-
- app/models/homeland/concerns/soft_delete.rb
|
142
|
-
- app/models/homeland/concerns/user_methods.rb
|
143
143
|
- app/models/homeland/node.rb
|
144
144
|
- app/models/homeland/reply.rb
|
145
145
|
- app/models/homeland/topic.rb
|
146
|
+
- app/views/homeland/nodes/_form.html.erb
|
147
|
+
- app/views/homeland/nodes/_node.html.erb
|
148
|
+
- app/views/homeland/nodes/edit.html.erb
|
149
|
+
- app/views/homeland/nodes/index.html.erb
|
150
|
+
- app/views/homeland/nodes/new.html.erb
|
151
|
+
- app/views/homeland/nodes/update.html.erb
|
146
152
|
- app/views/homeland/replies/_reply.html.erb
|
147
153
|
- app/views/homeland/replies/edit.html.erb
|
148
154
|
- app/views/homeland/shared/_error_messages.html.erb
|
@@ -165,10 +171,14 @@ files:
|
|
165
171
|
- lib/generators/homeland/controllers_generator.rb
|
166
172
|
- lib/generators/homeland/i18n_generator.rb
|
167
173
|
- lib/generators/homeland/install_generator.rb
|
174
|
+
- lib/generators/homeland/models_generator.rb
|
168
175
|
- lib/generators/homeland/templates/config/initializers/homeland.rb
|
169
176
|
- lib/generators/homeland/views_generator.rb
|
170
177
|
- lib/homeland.rb
|
171
178
|
- lib/homeland/action_view/will_paginate.rb
|
179
|
+
- lib/homeland/concerns/markup.rb
|
180
|
+
- lib/homeland/concerns/soft_delete.rb
|
181
|
+
- lib/homeland/concerns/user_delegates.rb
|
172
182
|
- lib/homeland/configuration.rb
|
173
183
|
- lib/homeland/engine.rb
|
174
184
|
- lib/homeland/markup.rb
|