Wednesday, February 11, 2009

RubyonRails: How to Integrate Comatose CMS & FCKEditor tutorial in your rails application

Steps

Install CMS Comatose plugin
  1. $ script/plugin install http://comatose-plugin.googlecode.com/svn/trunk/comatose  
  2. $ script/plugin install git://github.com/darthapo/comatose.git (For Rails 2.X)  
  3.   
  4. $ script/generate comatose_migration  
  5. $ rake db:migrate  


Dependencias

  1. $ ruby script/plugin install git://github.com/rails/acts_as_list  
  2. $ ruby script/plugin install git://github.com/rails/acts_as_tree  


Install FCKEditor Plugin

  1. $ script/plugin install git://github.com/davividal/fckeditor.git  


Install views in our project
  1. $ rake comatose:admin:customize  

Edit "app/views/comatose_admin/_form.rhtml"

replace:

  1. <%= f.text_area :body:rows=>20, :tabindex=>2 %>  


with:


  1. <%= fckeditor_textarea('page''body':width => '100%':height => '500px') %>  


Add FCKEditor javascript file to
  1. app/views/layouts/comatose_admin.rhtml   
  2.   
  3. <%= javascript_include_tag :fckeditor %>  

Configure FCKEditor to accept other other Files Types like "PDF".
  1. /vendor/plugins/fckeditor/app/controllers/fckeditor_controller.rb  
  2.  MIME_TYPES = [  
  3.    "image/jpg",  
  4.    "image/jpeg",  
  5.    "image/pjpeg",  
  6.    "image/gif",  
  7.    "image/png",  
  8.    "application/x-shockwave-flash"  
  9.  ]  

Comatose Configurations in config/initializers/comatose.rb
  1. Comatose.configure do |config|  
  2.   
  3.  config.admin_title          = 'Administration'  
  4.  config.admin_helpers        = []  
  5.  config.admin_sub_title      = 'Administration Pages'  
  6.  config.content_type         = 'utf-8'  
  7.  config.default_filter       = ''  
  8.  config.default_processor    = :liquid  
  9.  config.default_tree_level   = 3  
  10.  config.disable_caching      = false  
  11.  config.hidden_meta_fields   = 'filter'  
  12.  config.helpers              = []  
  13.  config.includes             = []  
  14.   
  15.  # These are 'blockable' settings  
  16.  config.authorization        = Proc.new { true }  
  17.  config.admin_get_author     = Proc.new { request.env['REMOTE_ADDR'] }  
  18.  config.after_setup          = Proc.new { true }  
  19.   
  20.   
  21.   # Includes AuthenticationSystem in the ComatoseAdminController  
  22.   #config.admin_includes << :authenticated_system  
  23.   
  24.   # Calls :login_required as a before_filter  
  25.   #config.admin_authorization = :login_required  
  26.   
  27. end  

1 comment:

奔走 Daily said...

It really helps! thank you!