rails_wiki 0.0.1 → 0.0.3
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.
@@ -3,56 +3,64 @@ require_dependency "rails_wiki/application_controller"
|
|
3
3
|
module RailsWiki
|
4
4
|
class ArticlesController < ApplicationController
|
5
5
|
def index
|
6
|
-
|
7
|
-
|
6
|
+
@articles = Article.order(:slug).paginate per_page: 20, page: params[:page]
|
7
|
+
end
|
8
8
|
|
9
9
|
|
10
|
-
|
11
|
-
|
12
|
-
|
10
|
+
def new
|
11
|
+
@article = Article.new
|
12
|
+
end
|
13
13
|
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
@markdown_body = markdown.render(@article.text || '')
|
18
|
-
@versions_available = true if @article.versions.count > 1
|
14
|
+
def show
|
15
|
+
@article = Article.friendly.find(params[:id])
|
16
|
+
markdown = Redcarpet::Markdown.new(Redcarpet::Render::HTML, autolink: true, tables: true)
|
19
17
|
|
20
|
-
|
21
|
-
|
22
|
-
|
18
|
+
if !@article.text.blank?
|
19
|
+
article_body_after_wiki_links = @article.text.gsub(/\[(?<link>\w[\w\s]+)\]\s/) do
|
20
|
+
link = Regexp.last_match[:link]
|
21
|
+
"[#{link}](/wiki/#{link.parameterize})"
|
22
|
+
end
|
23
|
+
end
|
23
24
|
|
24
|
-
|
25
|
-
|
25
|
+
@markdown_body = markdown.render(article_body_after_wiki_links || '')
|
26
|
+
@versions_available = true if @article.versions.count > 1
|
26
27
|
|
27
|
-
|
28
|
-
|
29
|
-
|
28
|
+
rescue ActiveRecord::RecordNotFound => ex
|
29
|
+
@article = Article.new(title: params[:id],text: "Article wasn't found, want to create one?")
|
30
|
+
end
|
30
31
|
|
31
|
-
|
32
|
-
|
33
|
-
end
|
32
|
+
def create
|
33
|
+
@article = Article.new(article_params)
|
34
34
|
|
35
|
-
|
36
|
-
|
37
|
-
|
35
|
+
@article.save
|
36
|
+
redirect_to @article
|
37
|
+
end
|
38
38
|
|
39
|
+
def edit
|
40
|
+
@article = Article.friendly.find(params[:id])
|
41
|
+
end
|
39
42
|
|
40
|
-
|
41
|
-
|
43
|
+
def versions
|
44
|
+
require 'differ'
|
45
|
+
Differ.format = :html
|
42
46
|
|
43
|
-
def update
|
44
|
-
@article = Article.friendly.find(params[:id])
|
45
|
-
if @article.update_attributes article_params
|
46
|
-
redirect_to @article, notice: 'All good!'
|
47
|
-
else
|
48
|
-
render :edit
|
49
|
-
end
|
50
|
-
end
|
51
47
|
|
52
|
-
|
48
|
+
@article = Article.friendly.find(params[:id])
|
49
|
+
end
|
53
50
|
|
54
|
-
|
55
|
-
|
56
|
-
|
51
|
+
def update
|
52
|
+
@article = Article.friendly.find(params[:id])
|
53
|
+
if @article.update_attributes article_params
|
54
|
+
redirect_to @article, notice: 'All good!'
|
55
|
+
else
|
56
|
+
render :edit
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
private
|
61
|
+
|
62
|
+
def article_params
|
63
|
+
params.require(:article).permit(:title, :text, :version, :references, :protected)
|
64
|
+
end
|
57
65
|
end
|
58
66
|
end
|
@@ -32,7 +32,7 @@
|
|
32
32
|
<% history.changeset.each_with_index do |change,index| %>
|
33
33
|
<%= change[0] %>
|
34
34
|
<% if change[0] == 'text' %>
|
35
|
-
|
35
|
+
<%= Differ.diff_by_word(change[1][1].to_s, change[1][0].to_s).to_s.html_safe %>
|
36
36
|
<% else %>
|
37
37
|
<b><%= change[0] %></b> <%= change[1][0] %> to <%= change[1][1] %>
|
38
38
|
<% end %>
|
data/config/routes.rb
CHANGED
@@ -0,0 +1,9 @@
|
|
1
|
+
class AddObjectChangesIfNotThere < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
if PaperTrail::Version and !PaperTrail::Version.columns.map(&:name).include?('object_changes')
|
4
|
+
add_column :versions, :object_changes, :text
|
5
|
+
else
|
6
|
+
puts "SMART! You already have it!! "*100
|
7
|
+
end
|
8
|
+
end
|
9
|
+
end
|
data/lib/rails_wiki/version.rb
CHANGED
metadata
CHANGED
@@ -1,19 +1,20 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_wiki
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Troy Anderson
|
9
|
+
- Max Wofford
|
9
10
|
autorequire:
|
10
11
|
bindir: bin
|
11
12
|
cert_chain: []
|
12
|
-
date: 2014-09-
|
13
|
+
date: 2014-09-26 00:00:00.000000000 Z
|
13
14
|
dependencies:
|
14
15
|
- !ruby/object:Gem::Dependency
|
15
16
|
name: rails
|
16
|
-
requirement: &
|
17
|
+
requirement: &70207315022300 !ruby/object:Gem::Requirement
|
17
18
|
none: false
|
18
19
|
requirements:
|
19
20
|
- - ~>
|
@@ -21,10 +22,32 @@ dependencies:
|
|
21
22
|
version: 4.1.6
|
22
23
|
type: :runtime
|
23
24
|
prerelease: false
|
24
|
-
version_requirements: *
|
25
|
+
version_requirements: *70207315022300
|
26
|
+
- !ruby/object:Gem::Dependency
|
27
|
+
name: devise
|
28
|
+
requirement: &70207315021820 !ruby/object:Gem::Requirement
|
29
|
+
none: false
|
30
|
+
requirements:
|
31
|
+
- - ! '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: *70207315021820
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: paper_trail
|
39
|
+
requirement: &70207315020940 !ruby/object:Gem::Requirement
|
40
|
+
none: false
|
41
|
+
requirements:
|
42
|
+
- - ~>
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
version: 3.0.5
|
45
|
+
type: :runtime
|
46
|
+
prerelease: false
|
47
|
+
version_requirements: *70207315020940
|
25
48
|
- !ruby/object:Gem::Dependency
|
26
49
|
name: sqlite3
|
27
|
-
requirement: &
|
50
|
+
requirement: &70207315020340 !ruby/object:Gem::Requirement
|
28
51
|
none: false
|
29
52
|
requirements:
|
30
53
|
- - ! '>='
|
@@ -32,7 +55,7 @@ dependencies:
|
|
32
55
|
version: '0'
|
33
56
|
type: :development
|
34
57
|
prerelease: false
|
35
|
-
version_requirements: *
|
58
|
+
version_requirements: *70207315020340
|
36
59
|
description: Rails Wiki is a simple engine to get you a markdown based wiki.
|
37
60
|
email:
|
38
61
|
- protected
|
@@ -54,6 +77,7 @@ files:
|
|
54
77
|
- config/initializers/route_hack.rb
|
55
78
|
- config/routes.rb
|
56
79
|
- db/migrate/20140922180259_create_rails_wiki_articles.rb
|
80
|
+
- db/migrate/20140922203738_add_object_changes_if_not_there.rb
|
57
81
|
- lib/rails_wiki/engine.rb
|
58
82
|
- lib/rails_wiki/version.rb
|
59
83
|
- lib/rails_wiki.rb
|