Commenteux

This is a mountable gem that add a presentation layer to acts_as_commentable.

Mount this gem into your app to automatically have access to screens that list and create comments on any of your resources. Those screen will be inserted in your current app layout. You can call the routes of the gem with ajax passing a parent div where you want the response to ben inserted.

Note that the presentation layer is based on bootstrap.

Also note that you must have acts_as_commentable installed and declared in your desired resources.

Installation :

Add the following line to your Gemfile

Rails 4

gem 'commenteux'

Usage

Mount the commenteux gem in your routes:

mount Commenteux::Engine => "/"

The routes that will be available are :

GET  /commenteux/:resource/:resource_id(.:format)     commenteux/notes#index
GET  /commenteux/:resource/:resource_id/new(.:format) commenteux/notes#new
POST /commenteux/:resource/:resource_id(.:format)     commenteux/notes#create

where :resource is the name of your model (you can use namespace)

Include the needed javascript file in your application.js or application.js.coffee

Javascript

//= require commenteux/application

CoffeeScript

#= require commenteux/application

Call url of commenteux screens, for exemple, like that:

<%= link_to "<i class='icon-file-text text-blue'></i> Notes".html_safe,
              "/commenteux/client::contract/#{@contract.id}?parent_div=ajax_target",
              :id => "notes_tab", :data => {:remote => true} %>

With a binding like that in your application.js

$(document).delegate '#notes_tab', 'ajax:success', (e, data, status, xhr) ->
  $('.tab_header').removeClass('active')
  $('#notes_tab_header').addClass('active')
  $('#ajax_target').html(xhr.responseText)

Credits

Jack Dempsey - The creator of acts_as_commentable.

Contributors

Serge Savoie

Rémi Gagnon

More

www.groupefungo.ca