website_builder_engine 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +6 -0
- data/Gemfile +20 -0
- data/Gemfile.lock +173 -0
- data/MIT-LICENSE +20 -0
- data/README.textile +260 -0
- data/Rakefile +26 -0
- data/app/assets/images/website_builder_engine/.gitkeep +0 -0
- data/app/assets/javascripts/website_builder_engine/application.js +9 -0
- data/app/assets/javascripts/website_builder_engine/articles.js.coffee +3 -0
- data/app/assets/javascripts/website_builder_engine/home.js.coffee +3 -0
- data/app/assets/javascripts/website_builder_engine/jqueryui.js +406 -0
- data/app/assets/javascripts/website_builder_engine/modernizr.js +4 -0
- data/app/assets/javascripts/website_builder_engine/offerpages.js.coffee +3 -0
- data/app/assets/javascripts/website_builder_engine/respond.js +2 -0
- data/app/assets/javascripts/website_builder_engine/settings.js.coffee +3 -0
- data/app/assets/javascripts/website_builder_engine/tabs.js +41 -0
- data/app/assets/stylesheets/website_builder_engine/application.css +33 -0
- data/app/assets/stylesheets/website_builder_engine/articles.css.scss +87 -0
- data/app/assets/stylesheets/website_builder_engine/base.css.scss +336 -0
- data/app/assets/stylesheets/website_builder_engine/home.css.scss +7 -0
- data/app/assets/stylesheets/website_builder_engine/layout.css.scss +64 -0
- data/app/assets/stylesheets/website_builder_engine/normalize.css.scss +413 -0
- data/app/assets/stylesheets/website_builder_engine/offerpages.css.scss +232 -0
- data/app/assets/stylesheets/website_builder_engine/scaffolds.css.scss +56 -0
- data/app/assets/stylesheets/website_builder_engine/settings.css.scss +7 -0
- data/app/assets/stylesheets/website_builder_engine/skeleton.css.scss +237 -0
- data/app/controllers/website_builder_engine/application_controller.rb +5 -0
- data/app/controllers/website_builder_engine/articles_controller.rb +113 -0
- data/app/controllers/website_builder_engine/home_controller.rb +7 -0
- data/app/controllers/website_builder_engine/offerpages_controller.rb +98 -0
- data/app/controllers/website_builder_engine/settings_controller.rb +85 -0
- data/app/helpers/website_builder_engine/application_helper.rb +4 -0
- data/app/models/article.rb +13 -0
- data/app/models/offerpage.rb +15 -0
- data/app/models/setting.rb +13 -0
- data/app/views/layouts/website_builder_engine/application.html.haml +22 -0
- data/app/views/layouts/website_builder_engine/home.html.haml +24 -0
- data/app/views/shared/_navigation.html.haml +3 -0
- data/app/views/website_builder_engine/articles/_form.html.haml +47 -0
- data/app/views/website_builder_engine/articles/edit.html.haml +7 -0
- data/app/views/website_builder_engine/articles/index.html.haml +16 -0
- data/app/views/website_builder_engine/articles/new.html.haml +5 -0
- data/app/views/website_builder_engine/articles/publish.html.haml +7 -0
- data/app/views/website_builder_engine/articles/show.html.haml +36 -0
- data/app/views/website_builder_engine/articles/template.html.haml +72 -0
- data/app/views/website_builder_engine/home/index.html.haml +26 -0
- data/app/views/website_builder_engine/offerpages/_form.html.haml +49 -0
- data/app/views/website_builder_engine/offerpages/edit.html.haml +7 -0
- data/app/views/website_builder_engine/offerpages/index.html.haml +16 -0
- data/app/views/website_builder_engine/offerpages/new.html.haml +5 -0
- data/app/views/website_builder_engine/offerpages/publish.html.haml +7 -0
- data/app/views/website_builder_engine/offerpages/show.html.haml +37 -0
- data/app/views/website_builder_engine/offerpages/template.html.haml +71 -0
- data/app/views/website_builder_engine/settings/_form.html.haml +40 -0
- data/app/views/website_builder_engine/settings/edit.html.haml +7 -0
- data/app/views/website_builder_engine/settings/index.html.haml +19 -0
- data/app/views/website_builder_engine/settings/new.html.haml +5 -0
- data/app/views/website_builder_engine/settings/show.html.haml +34 -0
- data/app/views/website_builder_engine/welcome/template.html.haml +66 -0
- data/config/routes.rb +19 -0
- data/db/seeds.rb +68 -0
- data/lib/tasks/website_builder_engine_tasks.rake +4 -0
- data/lib/website_builder_engine.rb +4 -0
- data/lib/website_builder_engine/engine.rb +5 -0
- data/script/rails +6 -0
- data/spec/dummy/Rakefile +7 -0
- data/spec/dummy/app/assets/javascripts/application.js +9 -0
- data/spec/dummy/app/assets/stylesheets/application.css +7 -0
- data/spec/dummy/app/controllers/application_controller.rb +3 -0
- data/spec/dummy/app/helpers/application_helper.rb +2 -0
- data/spec/dummy/app/mailers/.gitkeep +0 -0
- data/spec/dummy/app/models/.gitkeep +0 -0
- data/spec/dummy/app/views/layouts/application.html.erb +14 -0
- data/spec/dummy/config.ru +4 -0
- data/spec/dummy/config/application.rb +51 -0
- data/spec/dummy/config/boot.rb +10 -0
- data/spec/dummy/config/database.yml +25 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +27 -0
- data/spec/dummy/config/environments/production.rb +51 -0
- data/spec/dummy/config/environments/test.rb +39 -0
- data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy/config/initializers/inflections.rb +10 -0
- data/spec/dummy/config/initializers/mime_types.rb +5 -0
- data/spec/dummy/config/initializers/secret_token.rb +7 -0
- data/spec/dummy/config/initializers/session_store.rb +8 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +12 -0
- data/spec/dummy/config/locales/en.yml +5 -0
- data/spec/dummy/config/mongoid.yml +20 -0
- data/spec/dummy/config/routes.rb +3 -0
- data/spec/dummy/db/seeds.rb +68 -0
- data/spec/dummy/lib/assets/.gitkeep +0 -0
- data/spec/dummy/log/.gitkeep +0 -0
- data/spec/dummy/public/404.html +26 -0
- data/spec/dummy/public/422.html +26 -0
- data/spec/dummy/public/500.html +26 -0
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/dummy/script/rails +6 -0
- data/spec/spec_helper.rb +41 -0
- data/version.rb +3 -0
- data/website_builder_engine.gemspec +31 -0
- metadata +381 -0
@@ -0,0 +1,16 @@
|
|
1
|
+
%h2 Articles
|
2
|
+
|
3
|
+
%table
|
4
|
+
- @articles.each do |article|
|
5
|
+
%tr
|
6
|
+
%td.three.columns= link_to article.title, article
|
7
|
+
%td.two.columns= link_to 'Edit', edit_article_path(article)
|
8
|
+
%td.two.columns= link_to 'Publish', publish_article_path(article)
|
9
|
+
%td.two.columns= link_to 'Remove', article, :confirm => 'Are you sure?', :method => :delete
|
10
|
+
%td.two.columns
|
11
|
+
- if article.published
|
12
|
+
= link_to "#{@url_path + article.filename}.html", "#{@url_path + article.filename}.html"
|
13
|
+
|
14
|
+
%br
|
15
|
+
|
16
|
+
= link_to 'New Article', new_article_path
|
@@ -0,0 +1,36 @@
|
|
1
|
+
%p
|
2
|
+
%b Title:
|
3
|
+
= @article.title
|
4
|
+
%p
|
5
|
+
%b Filename:
|
6
|
+
= @article.filename
|
7
|
+
%p
|
8
|
+
%b Description:
|
9
|
+
= @article.description
|
10
|
+
%p
|
11
|
+
%b Keywords:
|
12
|
+
= @article.keywords
|
13
|
+
%p
|
14
|
+
%b Headline:
|
15
|
+
= @article.headline
|
16
|
+
%p
|
17
|
+
%b Subhead:
|
18
|
+
= @article.subhead
|
19
|
+
%p
|
20
|
+
%b Content:
|
21
|
+
= @article.content
|
22
|
+
|
23
|
+
%p
|
24
|
+
%b Article sidebar:
|
25
|
+
= @article.sidebar
|
26
|
+
|
27
|
+
%p
|
28
|
+
%b Related Articles:
|
29
|
+
- if @article.related_items
|
30
|
+
- @article.related_items.each do |item|
|
31
|
+
%br
|
32
|
+
= item
|
33
|
+
|
34
|
+
= link_to 'Edit', edit_article_path(@article)
|
35
|
+
\|
|
36
|
+
= link_to 'Back', articles_path
|
@@ -0,0 +1,72 @@
|
|
1
|
+
- html_tag class: 'no-js' do
|
2
|
+
%head
|
3
|
+
%meta{:charset => "utf-8"}
|
4
|
+
%meta{"http-equiv" => "X-UA-Compatible", :content => "IE=edge,chrome=1"}
|
5
|
+
%meta{:name => "viewport", :content => "width=device-width, initial-scale=1, maximum-scale=1"}
|
6
|
+
%meta{:name=>'description', :content=>"#{@article.description}"}
|
7
|
+
%meta{:name=>'keywords', :content=>"#{@article.keywords}"}
|
8
|
+
-# meta tags for the Open Graph protocol for Facebook
|
9
|
+
%meta{:property => "og:title", :content => "#{@article.title}"}
|
10
|
+
%meta{:property => "og:type", :content => "article"}
|
11
|
+
%meta{:property => "og:url", :content => "#{@permalink}"}
|
12
|
+
%meta{:property => "og:image", :content => ""}
|
13
|
+
%meta{:property => "og:description", :content => "#{@article.description}"}
|
14
|
+
%meta{:property => "og:site_name", :content => "#{@settings.site_name}"}
|
15
|
+
= stylesheet_link_tag :application
|
16
|
+
= javascript_include_tag :application
|
17
|
+
= csrf_meta_tags
|
18
|
+
%title
|
19
|
+
= @article.title
|
20
|
+
%body.articles
|
21
|
+
.container
|
22
|
+
.logo.sixteen.columns
|
23
|
+
.sitename
|
24
|
+
= link_to @settings.site_name, '/index.html'
|
25
|
+
.tagline
|
26
|
+
= @settings.site_tagline
|
27
|
+
%hr/
|
28
|
+
%article.twelve.columns
|
29
|
+
%header
|
30
|
+
%hgroup
|
31
|
+
%h1
|
32
|
+
= @article.headline
|
33
|
+
%h2
|
34
|
+
= @article.subhead
|
35
|
+
= @content
|
36
|
+
#fb-root
|
37
|
+
%fb:like{:action => "recommend", :send => "true", :show_faces => "false", :width => "450"}
|
38
|
+
%aside.four.columns
|
39
|
+
%section
|
40
|
+
%h1
|
41
|
+
Recommend This Article
|
42
|
+
%ul
|
43
|
+
%li
|
44
|
+
%g:plusone{:count => "medium", :size => "small"}
|
45
|
+
%li
|
46
|
+
%a.twitter-share-button{"data-count" => "none",
|
47
|
+
"data-via" => "#{@settings.twitter_account}", :href => "http://twitter.com/share"}
|
48
|
+
%section
|
49
|
+
%h1
|
50
|
+
Related Articles
|
51
|
+
%ul
|
52
|
+
- if @related_items.empty?
|
53
|
+
%li
|
54
|
+
none
|
55
|
+
- else
|
56
|
+
- @related_items.each do |title, link|
|
57
|
+
%li
|
58
|
+
= link_to title, link
|
59
|
+
- unless @sidebar.blank?
|
60
|
+
%section
|
61
|
+
%hr
|
62
|
+
= @sidebar
|
63
|
+
%hr
|
64
|
+
%footer.sixteen.columns
|
65
|
+
%hr/
|
66
|
+
-# Javascript for Facebook, Twitter, and Google+ sharing
|
67
|
+
%script{:type => "text/javascript",
|
68
|
+
:src => "http://connect.facebook.net/en_US/all.js#appId=176448065752391&xfbml=1"}
|
69
|
+
%script{:type => "text/javascript",
|
70
|
+
:src => "http://platform.twitter.com/widgets.js"}
|
71
|
+
%script{:type => "text/javascript",
|
72
|
+
:src => "https://apis.google.com/js/plusone.js"}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
.one-third.column
|
2
|
+
%h3 Build a Website
|
3
|
+
%p Skeleton is a small collection of well-organized CSS & JS files that can help you rapidly develop sites that look beautiful at any size, be it a 17" laptop screen or an iPhone. It's based on a responsive grid, but also provides very basic CSS for typography, buttons, tabs, forms and media queries. Go ahead, resize this super basic page to see the grid in action.
|
4
|
+
.one-third.column
|
5
|
+
%h3 Get Started
|
6
|
+
%p Skeleton is built on three core principles:
|
7
|
+
%ul.square
|
8
|
+
%li
|
9
|
+
%strong
|
10
|
+
=link_to "Pick Your Keywords:", website_builder_engine.settings_path
|
11
|
+
\ Provide basic information about your site.
|
12
|
+
%li
|
13
|
+
%strong
|
14
|
+
=link_to "Create an Offer:", website_builder_engine.offerpages_path
|
15
|
+
\ Add a page to sell a product or capture an email address.
|
16
|
+
%li
|
17
|
+
%strong
|
18
|
+
=link_to "Add Articles:", website_builder_engine.articles_path
|
19
|
+
\ Create a bridge between popular searches and your offer.
|
20
|
+
%li
|
21
|
+
%strong Publish to the Web:
|
22
|
+
\ #{link_to "View your site", "/index.html"},
|
23
|
+
\ then deploy to a free web host.
|
24
|
+
.one-third.column
|
25
|
+
%h3 Docs & Support
|
26
|
+
%p blah blah
|
@@ -0,0 +1,49 @@
|
|
1
|
+
= form_for @offerpage do |f|
|
2
|
+
-if @offerpage.errors.any?
|
3
|
+
#error_explanation
|
4
|
+
%h2= "#{pluralize(@offerpage.errors.count, "error")} prohibited this offerpage from being saved:"
|
5
|
+
%ul
|
6
|
+
- @offerpage.errors.full_messages.each do |msg|
|
7
|
+
%li= msg
|
8
|
+
|
9
|
+
.field
|
10
|
+
= f.label :title
|
11
|
+
= f.text_field :title
|
12
|
+
.field
|
13
|
+
= f.label :filename
|
14
|
+
= f.text_field :filename
|
15
|
+
.field
|
16
|
+
= f.label :description
|
17
|
+
= f.text_area :description
|
18
|
+
.field
|
19
|
+
= f.label :keywords
|
20
|
+
= f.text_area :keywords
|
21
|
+
.field
|
22
|
+
= f.label :headline
|
23
|
+
= f.text_area :headline
|
24
|
+
.field
|
25
|
+
= f.label :subhead
|
26
|
+
= f.text_area :subhead
|
27
|
+
.field
|
28
|
+
= radio_button_tag(:format, "textile")
|
29
|
+
= label_tag(:format_textile, "Textile")
|
30
|
+
= radio_button_tag(:format, "html")
|
31
|
+
= label_tag(:format_html, "Convert HTML to Textile")
|
32
|
+
.field
|
33
|
+
= f.label :content_block1
|
34
|
+
= f.text_area :content_block1
|
35
|
+
.field
|
36
|
+
= f.label :content_block2
|
37
|
+
= f.text_area :content_block2
|
38
|
+
.field
|
39
|
+
= f.label :offer_block
|
40
|
+
= f.text_area :offer_block
|
41
|
+
.field
|
42
|
+
= f.label :testimonials
|
43
|
+
= f.text_area :testimonials
|
44
|
+
.field
|
45
|
+
= f.label :video
|
46
|
+
= f.text_area :video
|
47
|
+
.actions
|
48
|
+
= f.submit 'Save'
|
49
|
+
|
@@ -0,0 +1,16 @@
|
|
1
|
+
%h2 Offer Pages
|
2
|
+
|
3
|
+
%table
|
4
|
+
- @offerpages.each do |offerpage|
|
5
|
+
%tr
|
6
|
+
%td.three.columns= link_to offerpage.title, offerpage
|
7
|
+
%td.two.columns= link_to 'Edit', edit_offerpage_path(offerpage)
|
8
|
+
%td.two.columns= link_to 'Publish', publish_offerpage_path(offerpage)
|
9
|
+
%td.two.columns= link_to 'Remove', offerpage, :confirm => 'Are you sure?', :method => :delete
|
10
|
+
%td.two.columns
|
11
|
+
- if offerpage.published
|
12
|
+
= link_to "#{@url_path + offerpage.filename}.html", "#{@url_path + offerpage.filename}.html"
|
13
|
+
|
14
|
+
%br
|
15
|
+
|
16
|
+
= link_to 'New Offerpage', new_offerpage_path
|
@@ -0,0 +1,37 @@
|
|
1
|
+
%p
|
2
|
+
%b Title:
|
3
|
+
= @offerpage.title
|
4
|
+
%p
|
5
|
+
%b Filename:
|
6
|
+
= @offerpage.filename
|
7
|
+
%p
|
8
|
+
%b Description:
|
9
|
+
= @offerpage.description
|
10
|
+
%p
|
11
|
+
%b Keywords:
|
12
|
+
= @offerpage.keywords
|
13
|
+
%p
|
14
|
+
%b Headline:
|
15
|
+
= @offerpage.headline
|
16
|
+
%p
|
17
|
+
%b Subhead:
|
18
|
+
= @offerpage.subhead
|
19
|
+
%p
|
20
|
+
%b Content Block 1:
|
21
|
+
= @offerpage.content_block1
|
22
|
+
%p
|
23
|
+
%b Content Block 2:
|
24
|
+
= @offerpage.content_block2
|
25
|
+
%p
|
26
|
+
%b Offer Block:
|
27
|
+
= @offerpage.offer_block
|
28
|
+
%p
|
29
|
+
%b Testimonials:
|
30
|
+
= @offerpage.testimonials
|
31
|
+
%p
|
32
|
+
%b Video:
|
33
|
+
= @offerpage.video
|
34
|
+
|
35
|
+
= link_to 'Edit', edit_offerpage_path(@offerpage)
|
36
|
+
\|
|
37
|
+
= link_to 'Back', offerpages_path
|
@@ -0,0 +1,71 @@
|
|
1
|
+
- html_tag class: 'no-js' do
|
2
|
+
%head
|
3
|
+
%meta{:charset => "utf-8"}
|
4
|
+
%meta{"http-equiv" => "X-UA-Compatible", :content => "IE=edge,chrome=1"}
|
5
|
+
%meta{:name => "viewport", :content => "width=device-width, initial-scale=1, maximum-scale=1"}
|
6
|
+
%meta{:name=>'description', :content=>"#{@offerpage.description}"}
|
7
|
+
%meta{:name=>'keywords', :content=>"#{@offerpage.keywords}"}
|
8
|
+
-# meta tags for the Open Graph protocol for Facebook
|
9
|
+
%meta{:property => "og:title", :content => "#{@offerpage.title}"}
|
10
|
+
%meta{:property => "og:type", :content => "product"}
|
11
|
+
%meta{:property => "og:url", :content => "#{@permalink}"}
|
12
|
+
%meta{:property => "og:image", :content => ""}
|
13
|
+
%meta{:property => "og:description", :content => "#{@offerpage.description}"}
|
14
|
+
%meta{:property => "og:site_name", :content => "#{@settings.site_name}"}
|
15
|
+
= stylesheet_link_tag :application
|
16
|
+
= javascript_include_tag :application
|
17
|
+
= csrf_meta_tags
|
18
|
+
%title
|
19
|
+
= @offerpage.title
|
20
|
+
%body.offerpages
|
21
|
+
.container
|
22
|
+
.logo.sixteen.columns
|
23
|
+
%br.clear
|
24
|
+
.row
|
25
|
+
.recommend.two.columns.alpha
|
26
|
+
.plusone
|
27
|
+
%g:plusone{:size => "tall"}
|
28
|
+
.tweet
|
29
|
+
%a.twitter-share-button{"data-count" => "none",
|
30
|
+
"data-via" => "#{@settings.twitter_account}", :href => "http://twitter.com/share"}
|
31
|
+
.twelve.columns.box.clearfix.omega
|
32
|
+
%section
|
33
|
+
- unless @offerpage.video.blank?
|
34
|
+
.video
|
35
|
+
%script{:type => "text/javascript",
|
36
|
+
:src => "#{@offerpage.video}"}
|
37
|
+
%p Press Play to Watch This Video
|
38
|
+
#fb-root
|
39
|
+
%fb:like{:action => "recommend", :send => "true", :show_faces => "false", :width => "450"}
|
40
|
+
%header
|
41
|
+
%hgroup
|
42
|
+
%h1
|
43
|
+
:textile
|
44
|
+
#{@offerpage.headline}
|
45
|
+
%h2
|
46
|
+
:textile
|
47
|
+
#{@offerpage.subhead}
|
48
|
+
:textile
|
49
|
+
#{@offerpage.content_block1}
|
50
|
+
%section
|
51
|
+
- if @offerpage.testimonials
|
52
|
+
%aside
|
53
|
+
%section
|
54
|
+
:textile
|
55
|
+
#{@offerpage.testimonials}
|
56
|
+
:textile
|
57
|
+
#{@offerpage.content_block2}
|
58
|
+
%br.clear
|
59
|
+
%section
|
60
|
+
:textile
|
61
|
+
#{@offerpage.offer_block}
|
62
|
+
%br.clear
|
63
|
+
%hr/
|
64
|
+
%footer.twelve.columns
|
65
|
+
-# Javascript for Facebook, Twitter, and Google+ sharing
|
66
|
+
%script{:type => "text/javascript",
|
67
|
+
:src => "http://connect.facebook.net/en_US/all.js#appId=176448065752391&xfbml=1"}
|
68
|
+
%script{:type => "text/javascript",
|
69
|
+
:src => "http://platform.twitter.com/widgets.js"}
|
70
|
+
%script{:type => "text/javascript",
|
71
|
+
:src => "https://apis.google.com/js/plusone.js"}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
= form_for @setting do |f|
|
2
|
+
-if @setting.errors.any?
|
3
|
+
#error_explanation
|
4
|
+
%h2= "#{pluralize(@setting.errors.count, "error")} prohibited this setting from being saved:"
|
5
|
+
%ul
|
6
|
+
- @setting.errors.full_messages.each do |msg|
|
7
|
+
%li= msg
|
8
|
+
|
9
|
+
.field
|
10
|
+
= f.label :site_name
|
11
|
+
= f.text_field :site_name
|
12
|
+
.field
|
13
|
+
= f.label :site_title
|
14
|
+
= f.text_field :site_title
|
15
|
+
.field
|
16
|
+
= f.label :site_tagline
|
17
|
+
= f.text_field :site_tagline
|
18
|
+
.field
|
19
|
+
= f.label :site_description
|
20
|
+
= f.text_field :site_description
|
21
|
+
.field
|
22
|
+
= f.label :site_keywords
|
23
|
+
= f.text_field :site_keywords
|
24
|
+
.field
|
25
|
+
= f.label :twitter_account
|
26
|
+
= f.text_field :twitter_account
|
27
|
+
.field
|
28
|
+
= f.label :domain
|
29
|
+
= f.text_field :domain
|
30
|
+
.field
|
31
|
+
= f.label :articles_directory
|
32
|
+
= f.text_field :articles_directory
|
33
|
+
.field
|
34
|
+
= f.label :offerpages_directory
|
35
|
+
= f.text_field :offerpages_directory
|
36
|
+
.field
|
37
|
+
= f.label :sidebar
|
38
|
+
= f.text_area :sidebar
|
39
|
+
.actions
|
40
|
+
= f.submit 'Save'
|
@@ -0,0 +1,19 @@
|
|
1
|
+
%h1 Listing settings
|
2
|
+
|
3
|
+
%table
|
4
|
+
%tr
|
5
|
+
%th Articles path
|
6
|
+
%th
|
7
|
+
%th
|
8
|
+
%th
|
9
|
+
|
10
|
+
- @settings.each do |setting|
|
11
|
+
%tr
|
12
|
+
%td= setting.articles_directory
|
13
|
+
%td= link_to 'Show', setting
|
14
|
+
%td= link_to 'Edit', edit_setting_path(setting)
|
15
|
+
%td= link_to 'Destroy', setting, :confirm => 'Are you sure?', :method => :delete
|
16
|
+
|
17
|
+
%br
|
18
|
+
|
19
|
+
= link_to 'New Setting', new_setting_path
|