aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuc Donnet2015-01-30 13:53:13 +0100
committerLuc Donnet2015-01-30 13:53:13 +0100
commit7456e9bb4830e49416116e922968f6bdba684f1f (patch)
tree0b121bcd66363d0437877f295a3dc5aa248a973f
parentf0a1afd8947a4c16af737b86f6c1c97b94c4710d (diff)
downloadchouette-core-7456e9bb4830e49416116e922968f6bdba684f1f.tar.bz2
Fix spec for rails4 branch and update devise invitable gem
-rw-r--r--Gemfile.lock2
-rw-r--r--app/controllers/invitations_controller.rb10
-rw-r--r--app/controllers/users_controller.rb15
-rw-r--r--app/views/devise/invitations/edit.html.erb3
-rw-r--r--app/views/devise/invitations/new.html.erb1
-rw-r--r--app/views/devise/mailer/invitation_instructions.fr.html.erb9
-rw-r--r--app/views/users/_user.html.erb7
-rw-r--r--app/views/users/show.html.erb2
-rw-r--r--config/initializers/devise.rb2
-rw-r--r--db/migrate/20150130094642_update_devise_invitable.rb13
-rw-r--r--spec/features/users/user_index_spec.rb2
11 files changed, 32 insertions, 34 deletions
diff --git a/Gemfile.lock b/Gemfile.lock
index 588ffef22..d5d62f453 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -1,6 +1,6 @@
GIT
remote: https://github.com/afimb/ninoxe.git
- revision: 1ff444eaa6069fbd7ab19e4c0009a4623ba49b52
+ revision: 2f7b4b1d91727211c75f98953443fc4088ac2dc2
branch: rails4
specs:
ninoxe (1.1.3)
diff --git a/app/controllers/invitations_controller.rb b/app/controllers/invitations_controller.rb
index 97e5352e4..4b5567f0c 100644
--- a/app/controllers/invitations_controller.rb
+++ b/app/controllers/invitations_controller.rb
@@ -1,17 +1,9 @@
class InvitationsController < Devise::InvitationsController
- def update
- if this
- redirect_to organisation_path
- else
- super
- end
- end
-
protected
def invite_params
- params.require(:user).permit(:name, :email )
+ params.require(:user).permit(:name, :email, :organisation_id )
end
def update_resource_params
diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb
index 7726f203a..6f776e938 100644
--- a/app/controllers/users_controller.rb
+++ b/app/controllers/users_controller.rb
@@ -1,24 +1,13 @@
class UsersController < BreadcrumbController
defaults :resource_class => User
- respond_to :html, :only => [:show, :new]
+ respond_to :html, :only => [:show]
- def create
- @user = current_organisation.users.build(params[:user])
-
- if @user.valid?
- @user.invite!
- respond_with @user, :location => organisation_user_path(@user)
- else
- render :action => 'new'
- end
- end
-
def destroy
destroy! do |success, failure|
success.html { redirect_to organisation_path }
end
- end
+ end
protected
diff --git a/app/views/devise/invitations/edit.html.erb b/app/views/devise/invitations/edit.html.erb
index 8835c5773..b8683327d 100644
--- a/app/views/devise/invitations/edit.html.erb
+++ b/app/views/devise/invitations/edit.html.erb
@@ -3,9 +3,10 @@
<div class="panel-heading"><%= t "devise.invitations.edit.header" %></div>
<div class="panel-body">
- <%= simple_form_for resource, :as => resource_name, :url => invitation_path(resource_name), :html => { :method => :put } do |form| %>
+ <%= simple_form_for resource, :as => resource_name, :url => invitation_path(resource_name), :html => { :method => :put, class: "form-horizontal" } do |form| %>
<%= form.hidden_field :invitation_token %>
+ <%= form.input :name %>
<%= form.input :password, :as => :password %>
<%= form.input :password_confirmation, :as => :password %>
diff --git a/app/views/devise/invitations/new.html.erb b/app/views/devise/invitations/new.html.erb
index 76a81a33d..25c452d42 100644
--- a/app/views/devise/invitations/new.html.erb
+++ b/app/views/devise/invitations/new.html.erb
@@ -1,6 +1,7 @@
<h2><%= t "devise.invitations.new.header" %></h2>
<%= simple_form_for resource, :as => resource_name, :url => invitation_path(resource_name), :html => {:method => :post, class: "form-horizontal"} do |form| %>
+ <%= form.input :organisation_id, :as => :hidden, input_html: { :value => current_organisation.id } %>
<% resource.class.invite_key_fields.each do |field| -%>
<%= form.input field %>
diff --git a/app/views/devise/mailer/invitation_instructions.fr.html.erb b/app/views/devise/mailer/invitation_instructions.fr.html.erb
index c932763f2..a35a3ec1b 100644
--- a/app/views/devise/mailer/invitation_instructions.fr.html.erb
+++ b/app/views/devise/mailer/invitation_instructions.fr.html.erb
@@ -1,8 +1,7 @@
-<p>Bonjour <%= @resource.email %>,</p>
+<p><%= t("devise.mailer.invitation_instructions.hello", email: @resource.email) %></p>
-<p>Ce message est une invitation pour accéder à <%= link_to nil, unauthenticated_root_url %>, vous pouvez l'accepter en cliquant sur le lien suivant :</p>
+<p><%= t("devise.mailer.invitation_instructions.someone_invited_you", url: unauthenticated_root_url) %></p>
-<p><%= link_to "Accepter l'invitation", accept_invitation_url(@resource, :invitation_token => @resource.invitation_token) %></p>
+<p><%= link_to t("devise.mailer.invitation_instructions.accept"), accept_invitation_url(@resource, :invitation_token => @token) %></p>
-<p>Si vous ne souhaitez pas accepter cette invitation, ignorez ce message.<br />
-Votre compte ne sera pas créé tant que vous n'accédez pas au lien ci-dessus et que vous ne définissez un mot de passe.</p>
+<p><%= t("devise.mailer.invitation_instructions.ignore").html_safe %></p>
diff --git a/app/views/users/_user.html.erb b/app/views/users/_user.html.erb
index 4a67bb693..56e18c33f 100644
--- a/app/views/users/_user.html.erb
+++ b/app/views/users/_user.html.erb
@@ -2,6 +2,11 @@
<div class="panel-heading">
<div class="panel-title clearfix">
<span class="pull-right">
+ <% if user == current_user %>
+ <%= link_to( edit_user_registration_path(user), :class => "btn btn-default btn-sm" ) do %>
+ <span class="fa fa-pencil"></span>
+ <% end %>
+ <% end %>
<%= link_to organisation_user_path(user), :method => :delete, :data => {:confirm => t('users.actions.destroy_confirm')}, :class => "btn btn-danger btn-sm" do %>
<span class="fa fa-trash-o"></span>
<% end %>
@@ -10,7 +15,7 @@
<%= link_to( organisation_user_path(user), :class => "preview", :title => "#{User.model_name.human.capitalize} #{user.email}") do %>
<%= user_gravatar_image_tag(user, 20) %>
<span class="name">
- <%= truncate(user.email, :length => 20) %>
+ <%= truncate(user.name, :length => 15) %>
</span>
<% end %>
</h5>
diff --git a/app/views/users/show.html.erb b/app/views/users/show.html.erb
index b984ce206..94e968ca5 100644
--- a/app/views/users/show.html.erb
+++ b/app/views/users/show.html.erb
@@ -14,8 +14,6 @@
<% content_for(:sidebar) do %>
<ul class="actions">
<li><%= link_to( t('users.actions.edit'), edit_user_registration_path, :class => "edit") if @user == current_user %></li>
- <% unless current_user.id==@user.id %>
<li><%= link_to t('users.actions.destroy'), organisation_user_path(@user),:method => :delete, :data => {:confirm => t('users.actions.destroy_confirm')}, :class => "remove" %></li>
- <% end %>
</ul>
<% end %>
diff --git a/config/initializers/devise.rb b/config/initializers/devise.rb
index 59d66f473..c74dcd7b9 100644
--- a/config/initializers/devise.rb
+++ b/config/initializers/devise.rb
@@ -281,7 +281,7 @@ end
Rails.application.config.to_prepare do
Devise::SessionsController.layout "devise"
Devise::RegistrationsController.layout proc{ |controller| ( action_name == "edit" || action_name == "update") ? "application" : "devise" }
- Devise::InvitationsController.layout "application"
+ Devise::InvitationsController.layout proc{ |controller| ( action_name == "new") ? "application" : "devise" }
Devise::ConfirmationsController.layout "devise"
Devise::UnlocksController.layout "devise"
Devise::PasswordsController.layout "devise"
diff --git a/db/migrate/20150130094642_update_devise_invitable.rb b/db/migrate/20150130094642_update_devise_invitable.rb
new file mode 100644
index 000000000..0566df020
--- /dev/null
+++ b/db/migrate/20150130094642_update_devise_invitable.rb
@@ -0,0 +1,13 @@
+class UpdateDeviseInvitable < ActiveRecord::Migration
+ def up
+ change_column :users, :invitation_token, :string, :limit => nil
+ add_column :users, :invitation_created_at, :datetime
+ add_index :users, :invitation_token, :unique => true
+ end
+
+ def down
+ change_column :users, :invitation_token, :string, :limit => 60
+ drop_column :users, :invitation_created_at
+ drop_index :users, :invitation_token
+ end
+end
diff --git a/spec/features/users/user_index_spec.rb b/spec/features/users/user_index_spec.rb
index 249b41ce6..2f6ec4426 100644
--- a/spec/features/users/user_index_spec.rb
+++ b/spec/features/users/user_index_spec.rb
@@ -22,7 +22,7 @@ feature 'User index page', :devise do
user.confirm!
login_as(user, scope: :user)
visit organisation_path
- expect(page).to have_content user.email.truncate(20)
+ expect(page).to have_content user.name.truncate(15)
end
end