From 34bbaa4af4e69f7adc5deba2dfe6b79a63b30c74 Mon Sep 17 00:00:00 2001 From: Damiano Date: Sun, 24 Feb 2013 11:10:12 +0100 Subject: [PATCH 1/8] tried to fix contact mailer --- app/mailers/spree/contact_mailer.rb | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/app/mailers/spree/contact_mailer.rb b/app/mailers/spree/contact_mailer.rb index 8c04c98..aed6098 100644 --- a/app/mailers/spree/contact_mailer.rb +++ b/app/mailers/spree/contact_mailer.rb @@ -1,15 +1,13 @@ module Spree class ContactMailer < ActionMailer::Base helper 'spree/base' - - default :from => Spree::Config[:store_default_email] def contacts_form(name, email, text) @name = name @email = email @messaggio = text - mail(:to => "#{email} - #{name}", - :subject => "[Spree Ecommerce] - Contatto dal sito web") + mail(:to => "#{email} <#{name}>", + :subject => "#{Spree::Config[:site_name]} - Contatto dal sito web") end end end From d9c4bd1b5c71fd65158fbfda23f541bdb39b77c7 Mon Sep 17 00:00:00 2001 From: Damiano Date: Sun, 24 Feb 2013 11:18:21 +0100 Subject: [PATCH 2/8] added from and to for contact email --- app/mailers/spree/contact_mailer.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/mailers/spree/contact_mailer.rb b/app/mailers/spree/contact_mailer.rb index aed6098..6ccf74c 100644 --- a/app/mailers/spree/contact_mailer.rb +++ b/app/mailers/spree/contact_mailer.rb @@ -6,7 +6,8 @@ def contacts_form(name, email, text) @name = name @email = email @messaggio = text - mail(:to => "#{email} <#{name}>", + mail(:from => "#{email} <#{name}>", + :to => "#{Spree::Config[:store_default_email]}" :subject => "#{Spree::Config[:site_name]} - Contatto dal sito web") end end From 26b5aa802f444e199bab6b9e417164a3dbfbe04b Mon Sep 17 00:00:00 2001 From: Damiano Date: Sun, 24 Feb 2013 11:26:48 +0100 Subject: [PATCH 3/8] fixed bug --- app/mailers/spree/contact_mailer.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/mailers/spree/contact_mailer.rb b/app/mailers/spree/contact_mailer.rb index 6ccf74c..b0f2635 100644 --- a/app/mailers/spree/contact_mailer.rb +++ b/app/mailers/spree/contact_mailer.rb @@ -7,7 +7,7 @@ def contacts_form(name, email, text) @email = email @messaggio = text mail(:from => "#{email} <#{name}>", - :to => "#{Spree::Config[:store_default_email]}" + :to => "#{Spree::Config[:store_default_email]}", :subject => "#{Spree::Config[:site_name]} - Contatto dal sito web") end end From 7ffb1154575185588f4fc4ac7a1200341d88acec Mon Sep 17 00:00:00 2001 From: Damiano Date: Sun, 24 Feb 2013 11:37:24 +0100 Subject: [PATCH 4/8] change mail for contacts_form --- app/mailers/spree/contact_mailer.rb | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/app/mailers/spree/contact_mailer.rb b/app/mailers/spree/contact_mailer.rb index b0f2635..e6e4ced 100644 --- a/app/mailers/spree/contact_mailer.rb +++ b/app/mailers/spree/contact_mailer.rb @@ -6,9 +6,7 @@ def contacts_form(name, email, text) @name = name @email = email @messaggio = text - mail(:from => "#{email} <#{name}>", - :to => "#{Spree::Config[:store_default_email]}", - :subject => "#{Spree::Config[:site_name]} - Contatto dal sito web") + mail(:to => "#{Spree::Config[:store_default_email]}", :from => "#{email} <#{name}>", :subject => "#{Spree::Config[:site_name]} - Contatto dal sito web") end end end From 6ccdb2cbb4a5d385e24e3ba34a679eb50d807289 Mon Sep 17 00:00:00 2001 From: Damiano Date: Sun, 24 Feb 2013 12:00:52 +0100 Subject: [PATCH 5/8] update version of gem --- app/controllers/spree/static_pages_controller.rb | 2 +- app/mailers/spree/contact_mailer.rb | 4 ++-- spree_simple_cms.gemspec | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/controllers/spree/static_pages_controller.rb b/app/controllers/spree/static_pages_controller.rb index 9630b90..31d85f7 100644 --- a/app/controllers/spree/static_pages_controller.rb +++ b/app/controllers/spree/static_pages_controller.rb @@ -11,7 +11,7 @@ def show def create_mail unless (params[:name].blank? && params[:email].blank? && params[:messaggio].blank?) - Spree::ContactMailer.contacts_form(params[:name], params[:email], params[:messaggio]).deliver + Spree::ContactMailer.contact_form(params[:name], params[:email], params[:messaggio]).deliver flash[:notice] = 'Email inviata correttamente' else flash[:notice] = 'Si e` verificato un problema durante l\'invio della mail. Verifica di aver compilato tutti i campi' diff --git a/app/mailers/spree/contact_mailer.rb b/app/mailers/spree/contact_mailer.rb index e6e4ced..c360661 100644 --- a/app/mailers/spree/contact_mailer.rb +++ b/app/mailers/spree/contact_mailer.rb @@ -2,11 +2,11 @@ module Spree class ContactMailer < ActionMailer::Base helper 'spree/base' - def contacts_form(name, email, text) + def contact_form(name, email, text) @name = name @email = email @messaggio = text - mail(:to => "#{Spree::Config[:store_default_email]}", :from => "#{email} <#{name}>", :subject => "#{Spree::Config[:site_name]} - Contatto dal sito web") + mail(:to => "#{Spree::Config[:store_default_email]}", :from => "#{name} <#{email}>", :subject => "#{Spree::Config[:site_name]} - Contatto dal sito web") end end end diff --git a/spree_simple_cms.gemspec b/spree_simple_cms.gemspec index e2cb8c7..cbc1f13 100644 --- a/spree_simple_cms.gemspec +++ b/spree_simple_cms.gemspec @@ -2,7 +2,7 @@ Gem::Specification.new do |s| s.platform = Gem::Platform::RUBY s.name = 'spree_simple_cms' - s.version = '1.1.0' + s.version = '1.1.1' s.summary = 'Extension to create a simple CMS and Blog for you Spree Shop' s.required_ruby_version = '>= 1.8.7' From 5bdd0f6458acc020e186228448813e7a92d5eab2 Mon Sep 17 00:00:00 2001 From: Damiano Date: Sun, 24 Feb 2013 13:02:00 +0100 Subject: [PATCH 6/8] removed from for mailer --- app/mailers/spree/contact_mailer.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/mailers/spree/contact_mailer.rb b/app/mailers/spree/contact_mailer.rb index c360661..12cb118 100644 --- a/app/mailers/spree/contact_mailer.rb +++ b/app/mailers/spree/contact_mailer.rb @@ -6,7 +6,7 @@ def contact_form(name, email, text) @name = name @email = email @messaggio = text - mail(:to => "#{Spree::Config[:store_default_email]}", :from => "#{name} <#{email}>", :subject => "#{Spree::Config[:site_name]} - Contatto dal sito web") + mail(:to => "#{Spree::Config[:store_default_email]}", :subject => "#{Spree::Config[:site_name]} - Contatto dal sito web") end end end From f65c183ebf1b5dac8ad7d8cc0c77f4e3c72e9f46 Mon Sep 17 00:00:00 2001 From: Damiano Date: Sun, 24 Feb 2013 13:10:54 +0100 Subject: [PATCH 7/8] fixed contact_form and added contact_form view --- app/mailers/spree/contact_mailer.rb | 2 +- app/views/spree/contact_mailer/contact_form.html.erb | 6 ++++++ app/views/spree/contact_mailer/contact_form.text.erb | 8 ++++++++ 3 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 app/views/spree/contact_mailer/contact_form.html.erb create mode 100644 app/views/spree/contact_mailer/contact_form.text.erb diff --git a/app/mailers/spree/contact_mailer.rb b/app/mailers/spree/contact_mailer.rb index 12cb118..2fa8636 100644 --- a/app/mailers/spree/contact_mailer.rb +++ b/app/mailers/spree/contact_mailer.rb @@ -6,7 +6,7 @@ def contact_form(name, email, text) @name = name @email = email @messaggio = text - mail(:to => "#{Spree::Config[:store_default_email]}", :subject => "#{Spree::Config[:site_name]} - Contatto dal sito web") + mail(:to => Spree::Config[:store_default_email], :subject => "#{Spree::Config[:site_name]} - Contatto dal sito web") end end end diff --git a/app/views/spree/contact_mailer/contact_form.html.erb b/app/views/spree/contact_mailer/contact_form.html.erb new file mode 100644 index 0000000..fec2f71 --- /dev/null +++ b/app/views/spree/contact_mailer/contact_form.html.erb @@ -0,0 +1,6 @@ +

Richiesta contatto

+
+

Nome: <%= @name %>

+

Email: <%= @email %>

+
+

Messaggio:
<%= @messaggio %>

\ No newline at end of file diff --git a/app/views/spree/contact_mailer/contact_form.text.erb b/app/views/spree/contact_mailer/contact_form.text.erb new file mode 100644 index 0000000..0ff2a00 --- /dev/null +++ b/app/views/spree/contact_mailer/contact_form.text.erb @@ -0,0 +1,8 @@ +Richiesta contatto + +Nome: <%= @name %> +Email: <%= @email %> + +Messaggio: +<%= @messaggio %> + From 5c7ae3316eb123b7978045836e5051e1b5ab170a Mon Sep 17 00:00:00 2001 From: Damiano Date: Sun, 3 Mar 2013 12:36:20 +0100 Subject: [PATCH 8/8] tried to fixed for spree 1-1-stable. removed formtastic and friendly_id and refactor model --- .../javascripts/admin/spree_simple_cms.js | 2 - .../stylesheets/admin/spree_simple_cms.css | 21 ---- .../stylesheets/store/spree_simple_cms.css | 3 - .../spree/admin/posts_controller.rb | 8 -- .../spree/admin/static_pages_controller.rb | 103 +++++++----------- .../spree/static_pages_controller.rb | 16 ++- .../spree/app_configuration_decorator.rb | 2 - app/models/spree/blog.rb | 36 +++--- app/models/{ => spree}/comment.rb | 0 app/models/spree/page.rb | 37 ++----- app/models/spree/post.rb | 5 +- app/models/spree/post_category.rb | 11 +- app/models/spree/static_page.rb | 8 -- app/views/spree/admin/posts/_form.html.erb | 8 +- .../spree/admin/static_pages/_form.html.erb | 55 +++++++--- .../spree/admin/static_pages/edit.html.erb | 19 +--- .../spree/admin/static_pages/index.html.erb | 32 +++--- .../spree/admin/static_pages/new.html.erb | 19 +--- config/routes.rb | 19 ++-- db/migrate/20120316074916_create_pages.rb | 2 +- db/migrate/20120316075003_create_uploads.rb | 1 - db/migrate/20120316081104_create_blogs.rb | 2 +- db/migrate/20130301082910_refactor_tables.rb | 39 +++++++ .../install/install_generator.rb | 16 +-- lib/spree_simple_cms.rb | 2 + spree_simple_cms.gemspec | 10 +- 26 files changed, 216 insertions(+), 260 deletions(-) rename app/models/{ => spree}/comment.rb (100%) create mode 100644 db/migrate/20130301082910_refactor_tables.rb diff --git a/app/assets/javascripts/admin/spree_simple_cms.js b/app/assets/javascripts/admin/spree_simple_cms.js index 7cace55..e69de29 100644 --- a/app/assets/javascripts/admin/spree_simple_cms.js +++ b/app/assets/javascripts/admin/spree_simple_cms.js @@ -1,2 +0,0 @@ -//= require admin/spree_core -//= require ckeditor/init diff --git a/app/assets/stylesheets/admin/spree_simple_cms.css b/app/assets/stylesheets/admin/spree_simple_cms.css index ef47b5b..e69de29 100644 --- a/app/assets/stylesheets/admin/spree_simple_cms.css +++ b/app/assets/stylesheets/admin/spree_simple_cms.css @@ -1,21 +0,0 @@ -/* - *= require admin/spree_core - *= require formtastic -*/ - -.formtastic input, .formtastic textarea, .formtastic select { - font-size: 100%; - padding: 5px; -} - -.formtastic button { - margin: 0; - padding: 0 20px 0 0; -} -.formtastic button:hover { - text-shadow: #FFFFFF -1px -1px 0px; -} - -.tags { - margin-right: 5px; -} diff --git a/app/assets/stylesheets/store/spree_simple_cms.css b/app/assets/stylesheets/store/spree_simple_cms.css index 94dbe33..e69de29 100644 --- a/app/assets/stylesheets/store/spree_simple_cms.css +++ b/app/assets/stylesheets/store/spree_simple_cms.css @@ -1,3 +0,0 @@ -/* - *= require store/spree_core -*/ diff --git a/app/controllers/spree/admin/posts_controller.rb b/app/controllers/spree/admin/posts_controller.rb index 7ae2e90..666e2f7 100644 --- a/app/controllers/spree/admin/posts_controller.rb +++ b/app/controllers/spree/admin/posts_controller.rb @@ -10,14 +10,6 @@ def index def collection @search = super.ransack(params[:search]) end - - def new - @post = @object - end - - def edit - @post = @object - end =begin TODO da togliere: sarebbe preferibile lasciare : def location_after_save diff --git a/app/controllers/spree/admin/static_pages_controller.rb b/app/controllers/spree/admin/static_pages_controller.rb index 3f1703a..84b9082 100644 --- a/app/controllers/spree/admin/static_pages_controller.rb +++ b/app/controllers/spree/admin/static_pages_controller.rb @@ -1,14 +1,32 @@ module Spree module Admin class StaticPagesController < ResourceController + def index - params[:search] ||= {} - params[:search][:meta_sort] ||= "name.asc" - @static_pages = @search.result.page(params[:name]).per(Spree::Config[:admin_products_per_page]) + respond_with(@collection) do |format| + format.html + format.json { render :json => json_data } + end + end + + def show + redirect_to( :action => :edit ) end + + def destroy + @static_page = StaticPage.where(:permalink => params[:id]).first! + @static_page.delete + + flash.notice = I18n.t('notice_messages.page_deleted') + respond_with(@static_page) do |format| + format.html { redirect_to collection_url } + format.js { render_js_for_destroy } + end + end + def published - sp = Spree::StaticPage.find(params[:id]) + sp = StaticPage.find(params[:id]) if sp.update_attribute(:published_at, Time.now) flash[:notice] = t("info_published_static_page") @@ -19,7 +37,7 @@ def published end def in_nav_menu - sp = Spree::StaticPage.find(params[:id]) + sp = StaticPage.find(params[:id]) if sp.update_attribute(:in_nav_menu, true) flash[:notice] = t("info_in_nav_menu_static_page") @@ -31,76 +49,29 @@ def in_nav_menu def update_positions params[:positions].each do |id, index| - Spree::StaticPage.update_all(['position=?', index], ['id=?', id]) + StaticPage.where(:id => id).update_all(:position => index) end respond_to do |format| - format.js { render :text => 'Ok' } + format.js { render :text => 'Ok' } end end - def collection - @search = super.ransack(params[:search]) + protected + def find_resource + StaticPage.find_by_permalink!(params[:id]) end - - def new - @static_page = @object + + def location_after_save + edit_admin_static_page_url(@static_page) end - - def edit - @static_page = @object + + def collection + params[:q] ||= {} + params[:q][:s] ||= "title asc" + @search = super.ransack(params[:q]) + @collection = @search.result.page(params[:page]).per(Spree::Config[:admin_products_per_page]) end - -=begin - TODO da togliere: sarebbe preferibile lasciare : - def location_after_save - admin_static_pages_url - end - e togliere: - - def update - - def create -=end - - def update - invoke_callbacks(:update, :before) - if @object.update_attributes(params[object_name]) - invoke_callbacks(:update, :after) - flash.notice = flash_message_for(@object, :successfully_updated) - redirect_to location_after_save - #respond_with(@object) do |format| - # format.html { redirect_to self.location_after_save } - # format.js { render :layout => false } - #end - else - invoke_callbacks(:update, :fails) - respond_with(@object) - end - end - - def create - invoke_callbacks(:create, :before) - if @object.save - invoke_callbacks(:create, :after) - flash.notice = flash_message_for(@object, :successfully_created) - redirect_to location_after_save - #respond_with(@object) do |format| - # format.html { redirect_to location_after_save } - # format.js { render :layout => false } - #end - else - invoke_callbacks(:create, :fails) - respond_with(@object) - end - end - - - protected - - def location_after_save - admin_static_pages_url - end - - end end end \ No newline at end of file diff --git a/app/controllers/spree/static_pages_controller.rb b/app/controllers/spree/static_pages_controller.rb index 31d85f7..ab41c45 100644 --- a/app/controllers/spree/static_pages_controller.rb +++ b/app/controllers/spree/static_pages_controller.rb @@ -1,12 +1,16 @@ module Spree class StaticPagesController < BaseController - before_filter :load_obj + before_filter :load_page, :only => :show + rescue_from ActiveRecord::RecordNotFound, :with => :render_404 + helper 'spree/taxons' + + respond_to :html def contacts end def show - @page = Spree::StaticPage.find(params[:id]) + return unless @static_page end def create_mail @@ -19,9 +23,13 @@ def create_mail redirect_to contacts_url end - def load_obj - @static_pages = Spree::StaticPage.published + private + def accurate_title + @static_page ? @static_page.title : super end + def load_page + @static_page = Spree::StaticPage.find_by_permalink!(params[:id]) + end end end diff --git a/app/models/spree/app_configuration_decorator.rb b/app/models/spree/app_configuration_decorator.rb index 735a522..a3669ff 100644 --- a/app/models/spree/app_configuration_decorator.rb +++ b/app/models/spree/app_configuration_decorator.rb @@ -1,6 +1,4 @@ Spree::AppConfiguration.class_eval do - - # TODO in questa classe vanno inserite le impostazioni di default per qualsiasi tipo di estensione compresa nel tema preference :store_name, :string, :default => 'Ecommerce demo' preference :store_default_email, :string, :default => 'example@ecommerce.com' preference :store_address, :string, :default => 'Address, 123 - 123456 City (IT)' diff --git a/app/models/spree/blog.rb b/app/models/spree/blog.rb index 0e0c974..1f0ffcf 100644 --- a/app/models/spree/blog.rb +++ b/app/models/spree/blog.rb @@ -1,38 +1,28 @@ module Spree class Blog < ActiveRecord::Base + attr_accessible :title, :permalink, :tag_title, :meta_description, :meta_keywords, :description, :content, :link, + :position, :in_nav_menu, :published_at # TAGGING AND COMMENT SYSTEM acts_as_taggable acts_as_taggable_on :tags - validates_presence_of :name, :content - validate :no_image_errors + make_permalink :order => :title - extend ::FriendlyId - friendly_id :name, :use => :slugged - - has_attached_file :image, :styles => { - :thumbnail => "100x100>", - :small => "200x200>", - :medium => "300x300>", - :big => "400x400#", - :custom => Proc.new { |instance| "#{instance.image_width}x#{instance.image_height}#" }} - + validates_presence_of :title, :content + + has_many :products, :through => :post_products + has_many :blog_images, :source => :images, :as => :viewable, :order => :position, :dependent => :destroy has_many :uploads, :as => :uploadable accepts_nested_attributes_for :uploads, :allow_destroy => true before_save :set_published_at, :if => Proc.new {|model| model.published_at.nil? } - - def set_published_at - self.published_at = Time.now - end - - #TODO: spostare in libreria - def no_image_errors - unless image.errors.empty? - errors.add :image, "Paperclip returned errors for file '#{image_file_name}' - check ImageMagick installation or image source file." - false - end + + def to_param + permalink.present? ? permalink : (permalink_was || title.to_s.to_url) end + def set_published_at + self.published_at = Time.now + end end end diff --git a/app/models/comment.rb b/app/models/spree/comment.rb similarity index 100% rename from app/models/comment.rb rename to app/models/spree/comment.rb diff --git a/app/models/spree/page.rb b/app/models/spree/page.rb index 89330e0..4c17c24 100644 --- a/app/models/spree/page.rb +++ b/app/models/spree/page.rb @@ -1,39 +1,20 @@ module Spree class Page < ActiveRecord::Base - validate :no_image_errors + attr_accessible :title, :permalink, :tag_title, :meta_description, :meta_keywords, :body, :link, + :position, :in_nav_menu, :published_at - extend ::FriendlyId - friendly_id :name, :use => :slugged - - has_attached_file :image, :styles => { - :thumbnail => "100x100>", - :small => "200x200>", - :medium => "300x300>", - :big => "400x400#", - :custom => Proc.new { |instance| "#{instance.image_width}x#{instance.image_height}#" }} - + has_many :images, :as => :viewable, :order => :position, :dependent => :destroy has_many :uploads, :as => :uploadable accepts_nested_attributes_for :uploads, :allow_destroy => true - def should_generate_new_friendly_id? - new_record? + make_permalink :order => :title + + def to_param + permalink.present? ? permalink : (permalink_was || title.to_s.to_url) end - - def link_is_blank + + def link_is_blank? self.link.blank? end - - def content_is_blank - self.content.blank? - end - - #TODO: spostare in libreria - def no_image_errors - unless image.errors.empty? - errors.add :image, "Paperclip returned errors for file '#{image_file_name}' - check ImageMagick installation or image source file." - false - end - end - end end diff --git a/app/models/spree/post.rb b/app/models/spree/post.rb index 30bacd2..4c5428b 100644 --- a/app/models/spree/post.rb +++ b/app/models/spree/post.rb @@ -1,7 +1,10 @@ module Spree class Post < Blog #acts_as_commentable - belongs_to :post_category + + has_and_belongs_to_many :post_categories, :join_table => "spree_post_categories_posts", :class_name => "Spree::PostCategory" + alias_attribute :categories, :post_categories + attr_accessible :name, :content, :published_at, :active, :tag_list scope :published, lambda { where("published_at <= '#{Time.now}' AND active = 1") } scope :valid, lambda { where("from <= #{Time.now} AND to >= #{Time.now}") } diff --git a/app/models/spree/post_category.rb b/app/models/spree/post_category.rb index 788c7c9..294931e 100644 --- a/app/models/spree/post_category.rb +++ b/app/models/spree/post_category.rb @@ -1,10 +1,15 @@ module Spree class PostCategory < ActiveRecord::Base - extend ::FriendlyId - friendly_id :name, :use => :slugged - has_many :posts + attr_accessible :title, :permalink, :tag_title, :meta_description, :meta_keywords, :presentation, + :position, :published_at + + make_permalink :order => :title + has_and_belongs_to_many :posts, :join_table => 'spree_post_categories_posts', :uniq => true scope :published, lambda { where(:published_at => "published_at <= #{Time.now}", :active => true) } + def to_param + permalink.present? ? permalink : (permalink_was || title.to_s.to_url) + end end end \ No newline at end of file diff --git a/app/models/spree/static_page.rb b/app/models/spree/static_page.rb index 0e9b7b2..a173904 100644 --- a/app/models/spree/static_page.rb +++ b/app/models/spree/static_page.rb @@ -2,18 +2,10 @@ module Spree class StaticPage < Page belongs_to :product - attr_accessible :name, :slug, :tag_title, :meta_description, :meta_keywords, :content, :published_at, :image_width, :image_height scope :published, lambda { where("published_at <= ? AND published_at IS NOT NULL", Time.now) } - def initialize(*args) - super(*args) - last_static_page = StaticPage.last - self.position = last_static_page ? last_static_page.position + 1 : 0 - end - def published? !self.published_at.blank? end - end end \ No newline at end of file diff --git a/app/views/spree/admin/posts/_form.html.erb b/app/views/spree/admin/posts/_form.html.erb index 44ec763..f182c6a 100644 --- a/app/views/spree/admin/posts/_form.html.erb +++ b/app/views/spree/admin/posts/_form.html.erb @@ -29,4 +29,10 @@ seq<%= javascript_include_tag 'admin/tags' %> <% end %> <% end %> - \ No newline at end of file + + +<%= form.field_container :tag_list do %> + <%= form.label :tag_list, t("activerecord.attributes.post.tags") %>
+ <%= form.text_field :tag_list, :class => 'text' %>
+ <%= error_message_on :post, :tag_list %> +<% end %> \ No newline at end of file diff --git a/app/views/spree/admin/static_pages/_form.html.erb b/app/views/spree/admin/static_pages/_form.html.erb index 3e47a2e..dd097d8 100644 --- a/app/views/spree/admin/static_pages/_form.html.erb +++ b/app/views/spree/admin/static_pages/_form.html.erb @@ -1,16 +1,43 @@
- <%= f.inputs do %> - <%= f.input :name, :label => t("simple_cms.page.name") %> - <%= f.input :slug, :label => t("simple_cms.page.slug") %> - <%= f.input :tag_title, :label => t("simple_cms.page.tag_title") %> - <%= f.input :meta_description, :label => t("simple_cms.page.meta_description") %> - <%= f.input :meta_keywords, :label => t("simple_cms.page.meta_keywords") %> - <%= f.cktext_area :content, :input_html => { :value => @static_page.content }, :label => t("simple_cms.page.content") %> - <%= f.input :published_at, :as => :string, :input_html => { :class => 'datepicker'}, :label => t("simple_cms.page.published_at") %> - - <%= f.input :image_width, :label => t("simple_cms.page.image_width") %> - <%= f.input :image_height, :label => t("simple_cms.page.image_height") %> - - <%= f.input :image, :as => :file, :label => t("simple_cms.page.image.one").capitalize, :hint => f.object.image.blank? ? f.template.content_tag(:span, t("simple_cms.page.no_image")) : f.template.image_tag(f.object.image.url(:thumbnail)) %> - <% end %> +
+
+ <%= f.field_container :name do %> + <%= f.label :name, t(:name) %> *
+ <%= f.text_field :name, :class => 'fullwidth title' %> + %= f.error_message_on :name %> + <% end %> + + <%= f.field_container :body do %> + <%= f.label :body, t(:body) %>
+ <%= f.text_area :body, {:cols => 60, :rows => 4, :class => 'fullwidth'} %> + <%= f.error_message_on :body %> + <% end %> +
+
+ <%= f.field_container :permalink do %> + <%= f.label :permalink, t(:permalink) %> *
+ <%= f.text_field :permalink, :class => 'fullwidth title' %> + <%= f.error_message_on :permalink %> + <% end %> + + <%= f.field_container :published_at do %> + <%= f.label :published_at, t(:published_at) %>
+ <%= f.error_message_on :published_at %> + <%= f.text_field :published_at, :class => 'datepicker' %> + <% end %> +
+
+ +

<%= t(:metadata) %>

+
+ <%= f.field_container :meta_keywords do %> + <%= f.label :meta_keywords, t(:meta_keywords) %>
+ <%= f.text_field :meta_keywords, :class => 'fullwidth' %> + <% end %> + + <%= f.field_container :meta_description do %> + <%= f.label :meta_description, t(:meta_description) %>
+ <%= f.text_field :meta_description, :class => 'fullwidth' %> + <% end %> +
\ No newline at end of file diff --git a/app/views/spree/admin/static_pages/edit.html.erb b/app/views/spree/admin/static_pages/edit.html.erb index dc50d22..64a2c99 100644 --- a/app/views/spree/admin/static_pages/edit.html.erb +++ b/app/views/spree/admin/static_pages/edit.html.erb @@ -1,14 +1,7 @@ -
- <%= render :partial => 'spree/shared/error_messages', :locals => { :target => @static_page } %> -

<%= t("simple_cms.page.edit_page") %>

-
+

<%= t(:edit_page) %>

+<%= render :partial => 'spree/shared/error_messages', :locals => { :target => @static_page } %> -
- <%= semantic_form_for([:admin, @static_page], :html => { :enctype => "multipart/form-data" }) do |f| %> - <%= render :partial => 'form', :locals => { :f => f } %> - -
- <%= render :partial => 'spree/admin/shared/edit_resource_links' %> -
- <% end %> -
\ No newline at end of file +<%= form_for [:admin, @static_page], :html => { :multipart => true } do |f| %> + <%= render :partial => 'form', :locals => { :f => f } %> + <%= render :partial => 'spree/admin/shared/edit_resource_links' %> +<% end %> diff --git a/app/views/spree/admin/static_pages/index.html.erb b/app/views/spree/admin/static_pages/index.html.erb index 9b9ca00..201a7c5 100644 --- a/app/views/spree/admin/static_pages/index.html.erb +++ b/app/views/spree/admin/static_pages/index.html.erb @@ -1,35 +1,35 @@
-
    -
  • -

    <%= button_link_to t("simple_cms.page.new_page"), new_object_url, :icon => 'add', :id => 'admin_new_page_link' %>

    -
  • -
-
+
    + +
+
-

<%= t("simple_cms.page.listing_pages") %>

+

<%= t(:listing_pages) %>

- +
- + - + - <% @static_pages.each do |sp|%> - + <% @collection.each do |sp|%> + - - - - + + +
<%= sort_link @search,:name, t(:page), {}, {:title => t("simple_cms.page.name")} %><%= sort_link @search,:title, t(:page), {}, {:title => t(:title)} %> <%= t(:position) %> <%= t(:in_nav_menu) %> <%= t(:published_at) %><%= t(:action) %>
<%= sp.name %> <%= sp.position %><%= sp.in_nav_menu %><%= l(sp.published_at, :format => :short) rescue "" %> + <%= sp.position %><%= sp.in_nav_menu %><%= l(sp.published_at, :format => :short) rescue "" %> <%= link_to_edit sp, :class => 'edit' %>   <%= link_to_delete sp %> <% unless sp.published? %> diff --git a/app/views/spree/admin/static_pages/new.html.erb b/app/views/spree/admin/static_pages/new.html.erb index 074d84d..4f413b7 100644 --- a/app/views/spree/admin/static_pages/new.html.erb +++ b/app/views/spree/admin/static_pages/new.html.erb @@ -1,14 +1,7 @@ -
- <%= render :partial => 'spree/shared/error_messages', :locals => { :target => @static_page } %> -

<%= t("simple_cms.page.new_page") %>

-
+

<%= t(:new_page) %>

+<%= render :partial => 'spree/shared/error_messages', :locals => { :target => @static_page } %> -
- <%= semantic_form_for([:admin, @static_page], :html => { :enctype => "multipart/form-data" }) do |f| %> - <%= render :partial => 'form', :locals => { :f => f } %> - -
- <%= render :partial => 'spree/admin/shared/new_resource_links' %> -
- <% end %> -
\ No newline at end of file +<%= form_for [:admin, @static_page], :html => { :multipart => true } do |f| %> + <%= render :partial => 'form', :locals => { :f => f } %> + <%= render :partial => 'spree/admin/shared/new_resource_links' %> +<% end %> diff --git a/config/routes.rb b/config/routes.rb index 1b9b282..126add6 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -2,18 +2,21 @@ namespace :admin do resource :store_settings - resources :posts - resources :blogs do - #resources :posts do - # collection do - # post :update_positions - # end - #end + resources :images do + collection do + post :update_positions + end + end end resources :articles resources :static_pages do + resources :images do + collection do + post :update_positions + end + end collection do post :update_positions end @@ -36,5 +39,5 @@ #match '/blog', :to => 'posts#index', :as => :posts match '/news', :to => 'posts#index', :as => :posts match '/news/*id', :to => 'posts#show', :as => :post - + end diff --git a/db/migrate/20120316074916_create_pages.rb b/db/migrate/20120316074916_create_pages.rb index 20021c5..5cafd19 100644 --- a/db/migrate/20120316074916_create_pages.rb +++ b/db/migrate/20120316074916_create_pages.rb @@ -24,4 +24,4 @@ def change end add_index :spree_pages, :slug, :unique => true end -end +end \ No newline at end of file diff --git a/db/migrate/20120316075003_create_uploads.rb b/db/migrate/20120316075003_create_uploads.rb index e42c1c8..f99dccc 100644 --- a/db/migrate/20120316075003_create_uploads.rb +++ b/db/migrate/20120316075003_create_uploads.rb @@ -7,7 +7,6 @@ def change t.string :attachment_content_type, :attachment_file_name t.integer :attachment_size - t.string :type, :limit => 75 t.integer :attachment_width, :attachment_height t.integer :position diff --git a/db/migrate/20120316081104_create_blogs.rb b/db/migrate/20120316081104_create_blogs.rb index fe34565..02479c8 100644 --- a/db/migrate/20120316081104_create_blogs.rb +++ b/db/migrate/20120316081104_create_blogs.rb @@ -26,4 +26,4 @@ def change end add_index :spree_blogs, :slug, :unique => true end -end +end \ No newline at end of file diff --git a/db/migrate/20130301082910_refactor_tables.rb b/db/migrate/20130301082910_refactor_tables.rb new file mode 100644 index 0000000..a4664d6 --- /dev/null +++ b/db/migrate/20130301082910_refactor_tables.rb @@ -0,0 +1,39 @@ +class RefactorTables < ActiveRecord::Migration + def change + # Remove slug, added permalink and rename name => title + remove_index :spree_pages, :slug + rename_column :spree_pages, :slug, :permalink + rename_column :spree_pages, :name, :title + add_index :spree_pages, :permalink, :unique => true + remove_index :spree_blogs, :slug + rename_column :spree_blogs, :slug, :permalink + rename_column :spree_blogs, :name, :title + add_index :spree_blogs, :permalink, :unique => true + + # Remove all image attachment for model + remove_column :spree_pages, :image_file_name + remove_column :spree_pages, :image_content_type + remove_column :spree_pages, :image_file_size + remove_column :spree_pages, :image_update_at + remove_column :spree_pages, :image_width + remove_column :spree_pages, :image_height + remove_column :spree_blogs, :image_file_name + remove_column :spree_blogs, :image_content_type + remove_column :spree_blogs, :image_file_size + remove_column :spree_blogs, :image_update_at + remove_column :spree_blogs, :image_width + remove_column :spree_blogs, :image_height + + remove_column :spree_pages, :description + rename_column :spree_pages, :content, :body + remove_column :spree_blogs, :description + rename_column :spree_blogs, :content, :body + + # Remove slug, added permalink and rename name => title for category + remove_index :spree_post_category, :slug + rename_column :spree_post_category, :slug, :permalink + rename_column :spree_post_category, :name, :title + add_index :spree_post_category, :permalink, :unique => true + rename_column :spree_post_category, :description, :presentation + end +end diff --git a/lib/generators/spree_simple_cms/install/install_generator.rb b/lib/generators/spree_simple_cms/install/install_generator.rb index 7c13472..7154e73 100644 --- a/lib/generators/spree_simple_cms/install/install_generator.rb +++ b/lib/generators/spree_simple_cms/install/install_generator.rb @@ -4,11 +4,7 @@ class InstallGenerator < Rails::Generators::Base def add_javascripts append_file "app/assets/javascripts/store/all.js", "//= require store/spree_simple_cms\n" - append_file "app/assets/javascripts/admin/all.js", "//= require admin/spree_simple_cms\n" - end - - def add_stylesheets - inject_into_file "app/assets/stylesheets/admin/all.css", " *= require admin/spree_simple_cms\n", :before => /\*\//, :verbose => true + #append_file "app/assets/javascripts/admin/all.js", "//= require admin/spree_simple_cms\n" end def add_migrations @@ -23,16 +19,6 @@ def run_migrations puts "Skiping rake db:migrate, don't forget to run it!" end end - - def add_ckeditor - res = ask "Would you like to run the ckeditor generator now? [Y/n]" - if res == "" || res.downcase == "y" - run 'rails generate ckeditor:install --orm=active_record --backend=paperclip' - else - puts "Skiping rails generate ckeditor:install --orm=active_record --backend=paperclip, don't forget to run it!" - end - end - end end end diff --git a/lib/spree_simple_cms.rb b/lib/spree_simple_cms.rb index 0c11a85..90fbda0 100644 --- a/lib/spree_simple_cms.rb +++ b/lib/spree_simple_cms.rb @@ -1,2 +1,4 @@ require 'spree_core' +require 'acts-as-taggable-on' +require 'acts_as_commentable_with_threading' require 'spree_simple_cms/engine' diff --git a/spree_simple_cms.gemspec b/spree_simple_cms.gemspec index cbc1f13..73ff0bf 100644 --- a/spree_simple_cms.gemspec +++ b/spree_simple_cms.gemspec @@ -2,7 +2,7 @@ Gem::Specification.new do |s| s.platform = Gem::Platform::RUBY s.name = 'spree_simple_cms' - s.version = '1.1.1' + s.version = '1.1.2' s.summary = 'Extension to create a simple CMS and Blog for you Spree Shop' s.required_ruby_version = '>= 1.8.7' @@ -16,14 +16,8 @@ Gem::Specification.new do |s| s.require_path = 'lib' s.requirements << 'none' - s.add_dependency 'spree_core' - s.add_dependency 'spree_auth' - s.add_dependency 'formtastic' - s.add_dependency 'friendly_id' - s.add_dependency 'ckeditor' + s.add_dependency 'spree_core', '>= 1.1.3' s.add_dependency 'paperclip' s.add_dependency 'acts-as-taggable-on' s.add_dependency 'acts_as_commentable_with_threading' - - s.add_development_dependency 'rspec-rails' end