diff options
| -rw-r--r-- | users/app/controllers/users_controller.rb | 3 | ||||
| -rw-r--r-- | users/app/models/user.rb | 7 | ||||
| -rw-r--r-- | users/app/views/users/_email_aliases.html.haml | 20 | ||||
| -rw-r--r-- | users/app/views/users/edit.html.haml | 2 | ||||
| -rw-r--r-- | users/config/locales/en.yml | 1 | 
5 files changed, 21 insertions, 12 deletions
| diff --git a/users/app/controllers/users_controller.rb b/users/app/controllers/users_controller.rb index 4921a4a..5055f4e 100644 --- a/users/app/controllers/users_controller.rb +++ b/users/app/controllers/users_controller.rb @@ -30,7 +30,8 @@ class UsersController < ApplicationController    end    def update -    if @user.update_attributes(params[:user]) +    @user.attributes = params[:user] +    if @user.changed? and @user.save        flash[:notice] = t(:user_updated_successfully)      end      respond_with @user, :location => edit_user_path(@user) diff --git a/users/app/models/user.rb b/users/app/models/user.rb index 81d5262..3ad69c7 100644 --- a/users/app/models/user.rb +++ b/users/app/models/user.rb @@ -75,6 +75,13 @@ class User < CouchRest::Model::Base      APP_CONFIG['admins'].include? self.login    end +  def email_aliases_attributes=(attrs) +    if attrs +      email_alias = EmailAlias.new(attrs.values.first) +      email_aliases << email_alias +    end +  end +    protected    def password      password_verifier diff --git a/users/app/views/users/_email_aliases.html.haml b/users/app/views/users/_email_aliases.html.haml index 54eac0f..41d4f9e 100644 --- a/users/app/views/users/_email_aliases.html.haml +++ b/users/app/views/users/_email_aliases.html.haml @@ -1,10 +1,10 @@ -%legend= t(:email_aliases) -%ul -  - @user.email_aliases.each do |email| -    %li= email -= email_alias_form do |f| -  =f.input :email, :placeholder => "alias@#{request.domain}" -  .pull-right -    %button{:type => :submit, :class => 'btn'} -      %i.icon-plus -      Add Email Alias +.span6 +  %ul.unstyled +    - @user.email_aliases.each do |email_alias| +      %li.pull-right +        %code= email_alias.email +        %i.icon-remove +      .clearfix +.clearfix += f.simple_fields_for :email_aliases, EmailAlias.new do |e| +  = e.input :email, :placeholder => "alias@#{request.domain}" diff --git a/users/app/views/users/edit.html.haml b/users/app/views/users/edit.html.haml index eb1bca4..92ab71b 100644 --- a/users/app/views/users/edit.html.haml +++ b/users/app/views/users/edit.html.haml @@ -14,4 +14,4 @@      .tab-pane#email        = user_form_with 'email_field', :legend => :set_email_address        = user_form_with 'email_forward_field', :legend => :forward_email -      = render 'email_aliases' +      = user_form_with 'email_aliases', :legend => :add_email_alias diff --git a/users/config/locales/en.yml b/users/config/locales/en.yml index fe7e824..d068e70 100644 --- a/users/config/locales/en.yml +++ b/users/config/locales/en.yml @@ -12,6 +12,7 @@ en:    set_email_address: "Set email address"    forward_email: "Forward email"    email_aliases: "Email aliases" +  add_email_alias: "Add email alias"    user_updated_successfully: "Settings have been updated successfully."    user_created_successfully: "Successfully created your account." | 
