diff options
author | danielgrippi <danielgrippi@gmail.com> | 2011-08-16 02:15:43 +0400 |
---|---|---|
committer | danielgrippi <danielgrippi@gmail.com> | 2011-08-16 02:15:43 +0400 |
commit | 32ae21a213b3c9fb713e8ceb202416aede355300 (patch) | |
tree | 692174b0d8745d4370c02d699b5eef4b2a12c900 /app | |
parent | 669cd8578e86d75e3c140cfc46cfcba57dfe8d83 (diff) |
removed user invite counter, as it was already depricated
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/admins_controller.rb | 12 | ||||
-rw-r--r-- | app/controllers/invitations_controller.rb | 48 | ||||
-rw-r--r-- | app/controllers/registrations_controller.rb | 1 | ||||
-rw-r--r-- | app/models/invitation.rb | 9 | ||||
-rw-r--r-- | app/models/user.rb | 3 | ||||
-rw-r--r-- | app/views/admins/user_search.html.haml | 1 |
6 files changed, 29 insertions, 45 deletions
diff --git a/app/controllers/admins_controller.rb b/app/controllers/admins_controller.rb index 07459baac..5a6256221 100644 --- a/app/controllers/admins_controller.rb +++ b/app/controllers/admins_controller.rb @@ -8,18 +8,6 @@ class AdminsController < ApplicationController @users = params[:user].empty? ? [] : User.where(params[:user]) end - def add_invites - user = User.find(params[:user_id]) - - if user.increment(:invites, 10).save - flash[:notice] = "Great Job!" - else - flash[:alert] = "there was a problem adding invites" - end - - redirect_to user_search_path(:user => { :id => user.id }) - end - def admin_inviter opts = {:service => 'email', :identifier => params[:identifier]} existing_user = Invitation.find_existing_user('email', params[:identifier]) diff --git a/app/controllers/invitations_controller.rb b/app/controllers/invitations_controller.rb index d063ef839..be2993777 100644 --- a/app/controllers/invitations_controller.rb +++ b/app/controllers/invitations_controller.rb @@ -16,35 +16,35 @@ class InvitationsController < Devise::InvitationsController end def create - if !AppConfig[:open_invitations] && current_user.invites == 0 - flash[:error] = I18n.t 'invitations.create.no_more' - redirect_to :back - return - end - aspect = params[:user].delete(:aspects) - message = params[:user].delete(:invite_messages) - emails = params[:user][:email].to_s.gsub(/\s/, '').split(/, */) + unless AppConfig[:open_invitations] + flash[:error] = I18n.t 'invitations.create.no_more' + redirect_to :back + return + end + aspect = params[:user].delete(:aspects) + message = params[:user].delete(:invite_messages) + emails = params[:user][:email].to_s.gsub(/\s/, '').split(/, */) - good_emails, bad_emails = emails.partition{|e| e.try(:match, Devise.email_regexp)} + good_emails, bad_emails = emails.partition{|e| e.try(:match, Devise.email_regexp)} - if good_emails.include?(current_user.email) - if good_emails.length == 1 - flash[:error] = I18n.t 'invitations.create.own_address' - redirect_to :back - return - else - bad_emails.push(current_user.email) - good_emails.delete(current_user.email) - end + if good_emails.include?(current_user.email) + if good_emails.length == 1 + flash[:error] = I18n.t 'invitations.create.own_address' + redirect_to :back + return + else + bad_emails.push(current_user.email) + good_emails.delete(current_user.email) end + end - good_emails.each{|e| Resque.enqueue(Job::Mail::InviteUserByEmail, current_user.id, e, aspect, message)} + good_emails.each{|e| Resque.enqueue(Job::Mail::InviteUserByEmail, current_user.id, e, aspect, message)} - if bad_emails.any? - flash[:error] = I18n.t('invitations.create.sent') + good_emails.join(', ') + " "+ I18n.t('invitations.create.rejected') + bad_emails.join(', ') - else - flash[:notice] = I18n.t('invitations.create.sent') + good_emails.join(', ') - end + if bad_emails.any? + flash[:error] = I18n.t('invitations.create.sent') + good_emails.join(', ') + " "+ I18n.t('invitations.create.rejected') + bad_emails.join(', ') + else + flash[:notice] = I18n.t('invitations.create.sent') + good_emails.join(', ') + end redirect_to :back end diff --git a/app/controllers/registrations_controller.rb b/app/controllers/registrations_controller.rb index 013fd820c..7385e90b5 100644 --- a/app/controllers/registrations_controller.rb +++ b/app/controllers/registrations_controller.rb @@ -7,7 +7,6 @@ class RegistrationsController < Devise::RegistrationsController def create @user = User.build(params[:user]) - @user.invites = 20 if @user.save flash[:notice] = I18n.t 'registrations.create.success' @user.seed_aspects diff --git a/app/models/invitation.rb b/app/models/invitation.rb index 49e172c50..6ba61efcf 100644 --- a/app/models/invitation.rb +++ b/app/models/invitation.rb @@ -12,6 +12,7 @@ class Invitation < ActiveRecord::Base def self.invite(opts = {}) opts[:identifier].downcase! if opts[:identifier] + # return if the current user is trying to invite himself via email return false if opts[:identifier] == opts[:from].email existing_user = self.find_existing_user(opts[:service], opts[:identifier]) @@ -51,10 +52,11 @@ class Invitation < ActiveRecord::Base result end - def self.create_invitee(opts = {}) + # @params opts [Hash] Takes :from, :existing_user, :service, :identifier, :message + # @return [User] + def self.create_invitee(opts={}) invitee = opts[:existing_user] || new_user_by_service_and_identifier(opts[:service], opts[:identifier]) return invitee if opts[:service] == 'email' && !opts[:identifier].match(Devise.email_regexp) - invitee.invites = opts[:invites] || 10 if invitee.new_record? invitee.errors.clear invitee.serialized_private_key = User.generate_key if invitee.serialized_private_key.blank? @@ -69,9 +71,6 @@ class Invitation < ActiveRecord::Base :recipient => invitee, :aspect => opts[:into], :message => opts[:message]) - - opts[:from].invites -= 1 unless opts[:from].invites == 0 - opts[:from].save! invitee.reload end invitee.skip_invitation = (opts[:service] != 'email') diff --git a/app/models/user.rb b/app/models/user.rb index ec38e9392..ce408d7df 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -269,8 +269,7 @@ class User < ActiveRecord::Base ###Invitations############ def invite_user(aspect_id, service, identifier, invite_message = "") - aspect = aspects.find(aspect_id) - if aspect + if aspect = aspects.find(aspect_id) Invitation.invite(:service => service, :identifier => identifier, :from => self, diff --git a/app/views/admins/user_search.html.haml b/app/views/admins/user_search.html.haml index feb80da2c..2dbca64a7 100644 --- a/app/views/admins/user_search.html.haml +++ b/app/views/admins/user_search.html.haml @@ -37,7 +37,6 @@ = user.person.profile.inspect %br = "invite token: #{accept_invitation_url(user, :invitation_token => user.invitation_token)}" if user.invitation_token - = link_to "add 10 invites for this user", add_invites_path(:user_id => user.id) %br %br %br |