seo_fuel 0.0.9 → 0.1.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.
- data/CHANGELOG.md +8 -5
- data/README.md +0 -1
- data/app/controllers/seo_tags_controller.rb +21 -10
- data/app/views/seo_tags/_seo_options.html.erb +1 -0
- data/lib/generators/seo_fuel_generator.rb +13 -4
- data/lib/seo_fuel/controller_helper.rb +1 -7
- data/lib/seo_fuel/version.rb +1 -1
- data/lib/seo_fuel/view_helper.rb +4 -0
- data/lib/seo_fuel.rb +3 -0
- metadata +1 -2
- data/config/seo_fuel_settings.yml +0 -5
data/CHANGELOG.md
CHANGED
@@ -1,8 +1,11 @@
|
|
1
|
-
## version 0.0.
|
2
|
-
-
|
3
|
-
-
|
4
|
-
|
1
|
+
## version 0.0.9
|
2
|
+
- improved UI
|
3
|
+
- read defaults from YAML file
|
5
4
|
|
6
5
|
## version 0.0.8
|
7
6
|
- updated README
|
8
|
-
- added option to create default description and default keywords
|
7
|
+
- added option to create default description and default keywords
|
8
|
+
|
9
|
+
## version 0.0.5
|
10
|
+
- copy locale files to config folder upon installation
|
11
|
+
- the button is now included in the same view helper as the dialog. Only use `<%= edit_seo_dialog %>` now
|
data/README.md
CHANGED
@@ -71,7 +71,6 @@ This gem is fully I18n adjustable. Just edit the locale file, placed in the loca
|
|
71
71
|
|
72
72
|
## TODO
|
73
73
|
This gem is in early development, there are still some things to do:
|
74
|
-
- add authentication layer
|
75
74
|
- add options for open_graph
|
76
75
|
- add documentation
|
77
76
|
- include testing
|
@@ -3,23 +3,34 @@ class SeoTagsController < ApplicationController
|
|
3
3
|
# POST
|
4
4
|
# creates the seo tags for given path (params[:seo_tag][:path])
|
5
5
|
def create
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
format
|
10
|
-
|
6
|
+
if params[:key] && params[:key] == authentication_key
|
7
|
+
@tag = SeoTag.find_or_create_by_path(params[:seo_tag][:path])
|
8
|
+
@tag.update_attributes(params[:seo_tag])
|
9
|
+
respond_to do |format|
|
10
|
+
format.js
|
11
|
+
format.html {redirect_to params[:path]}
|
12
|
+
end
|
11
13
|
end
|
12
14
|
end
|
13
15
|
|
14
16
|
# PUT
|
15
17
|
# updates the seo tags for given path (params[:seo_tag][:path])
|
16
18
|
def update
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
format
|
21
|
-
|
19
|
+
if params[:key] && params[:key] == authentication_key
|
20
|
+
@tag = SeoTag.find_or_create_by_path(params[:seo_tag][:path])
|
21
|
+
@tag.update_attributes(params[:seo_tag])
|
22
|
+
respond_to do |format|
|
23
|
+
format.js
|
24
|
+
format.html {redirect_to params[:path]}
|
25
|
+
end
|
22
26
|
end
|
23
27
|
end
|
28
|
+
|
29
|
+
private
|
30
|
+
|
31
|
+
# Reads the authentication key from the seo_fuel_settings.yml file
|
32
|
+
def authentication_key
|
33
|
+
YAML::load(File.open("config/seo_fuel_settings.yml"))['SEO_FUEL_SETTINGS']['key']
|
34
|
+
end
|
24
35
|
|
25
36
|
end
|
@@ -2,6 +2,7 @@
|
|
2
2
|
<div id="edit_seo_dialog" class="seo_fuel" style="display: none;">
|
3
3
|
<%= form_for SeoTag.find_or_initialize_by_path(request.path), remote: true, html: {class: "seo_form"} do |f|%>
|
4
4
|
<%= f.hidden_field :path %>
|
5
|
+
<%= hidden_field_tag :key, seo_fuel_authentication_key %>
|
5
6
|
<%= f.label :title, "#{I18n.t('seo.form.title')}".html_safe %>
|
6
7
|
<%= f.text_field :title, placeholder: @default_title %>
|
7
8
|
<div class="spacer"></div>
|
@@ -6,17 +6,25 @@ class SeoFuelGenerator < Rails::Generators::Base
|
|
6
6
|
|
7
7
|
desc "Put the JavaScript and migration in place"
|
8
8
|
source_root File.join(File.dirname(__FILE__), "templates")
|
9
|
-
|
9
|
+
|
10
10
|
def install
|
11
11
|
copy_javascript if needs_js_copied?
|
12
12
|
copy_options_file
|
13
13
|
copy_language_file
|
14
|
-
route("resources :seo_tags")
|
15
|
-
migration_template "migration.rb", "db/migrate/create_seo_fuel.rb"
|
14
|
+
# route("resources :seo_tags")
|
15
|
+
# migration_template "migration.rb", "db/migrate/create_seo_fuel.rb"
|
16
16
|
end
|
17
17
|
|
18
18
|
private
|
19
19
|
|
20
|
+
|
21
|
+
def template(from, to)
|
22
|
+
erb = File.read(File.expand_path("../../../config/templates/#{from}", __FILE__))
|
23
|
+
yml = ERB.new(erb).result(binding)
|
24
|
+
File.open(to, 'w') {|f| f.write(yml) }
|
25
|
+
puts "created option file: config/seo_fuel_settigns.yml"
|
26
|
+
end
|
27
|
+
|
20
28
|
def gsub_file(relative_destination, regexp, *args, &block)
|
21
29
|
path = destination_path(relative_destination)
|
22
30
|
content = File.read(path).gsub(regexp, *args, &block)
|
@@ -24,7 +32,8 @@ class SeoFuelGenerator < Rails::Generators::Base
|
|
24
32
|
end
|
25
33
|
|
26
34
|
def copy_options_file
|
27
|
-
|
35
|
+
template "seo_fuel_settings.yml.erb", config_destination
|
36
|
+
# copy_file File.join(config_path, 'seo_fuel_settings.yml'), config_destination
|
28
37
|
end
|
29
38
|
|
30
39
|
def copy_language_file
|
data/lib/seo_fuel/version.rb
CHANGED
data/lib/seo_fuel/view_helper.rb
CHANGED
@@ -7,6 +7,10 @@ module SeoFuel
|
|
7
7
|
def default_settings_from_config_file
|
8
8
|
YAML::load(File.open("config/seo_fuel_settings.yml"))
|
9
9
|
end
|
10
|
+
|
11
|
+
def seo_fuel_authentication_key
|
12
|
+
default_settings_from_config_file['SEO_FUEL_SETTINGS']['key']
|
13
|
+
end
|
10
14
|
|
11
15
|
# used in version < 0.0.4
|
12
16
|
def edit_seo_button(text=I18n.t('seo.button_text'), klass="")
|
data/lib/seo_fuel.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: seo_fuel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -52,7 +52,6 @@ files:
|
|
52
52
|
- config/locales/en.seo_fuel.yml
|
53
53
|
- config/locales/nl.seo_fuel.yml
|
54
54
|
- config/routes.rb
|
55
|
-
- config/seo_fuel_settings.yml
|
56
55
|
- lib/generators/seo_fuel_generator.rb
|
57
56
|
- lib/generators/templates/USAGE
|
58
57
|
- lib/generators/templates/migration.rb
|