seo_fuel 0.0.9 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|