Skip to content

Commit

Permalink
Removed duplicated methods
Browse files Browse the repository at this point in the history
  • Loading branch information
tejaszambre committed Jan 4, 2021
1 parent 3de755a commit 5c17279
Show file tree
Hide file tree
Showing 7 changed files with 14 additions and 19 deletions.
8 changes: 4 additions & 4 deletions app/controllers/light/newsletters_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ class NewslettersController < ApplicationController
:show, :edit, :update, :destroy, :web_version]

def index
type = params[:type].present? ? params[:type] : 'Monthly Newsletter'
type = params[:type].present? ? params[:type] : Newsletter::VALID_NEWSLETTER_TYPES[:MONTHLY]
@newsletters = Newsletter.where(newsletter_type: type).order_by([:sent_on, :desc])
end

Expand Down Expand Up @@ -64,13 +64,13 @@ def send_newsletter
type = @newsletter.newsletter_type

case type
when 'Opt-In Letter'
when Newsletter::VALID_NEWSLETTER_TYPES[:OPT_IN]
Light::OptInWorker.perform_async(@newsletter.id.to_s)
flash[:notice] = 'Sent Opt-In newsletter successfully'
when 'Opt-Out Letter'
when Newsletter::VALID_NEWSLETTER_TYPES[:OPT_OUT]
Light::OptOutWorker.perform_async(@newsletter.id.to_s)
flash[:notice] = 'Sent Opt-Out newsletter successfully'
when 'Monthly Newsletter'
when Newsletter::VALID_NEWSLETTER_TYPES[:MONTHLY]
Light::UserWorker.perform_async(@newsletter.id.to_s)
flash[:notice] = 'Sent Monthly newsletter successfully'
else
Expand Down
8 changes: 4 additions & 4 deletions app/controllers/light/users_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ def create
def unsubscribe
if @user.present? && @user.sidekiq_status == 'Subscribed'
@user.update(
is_subscribed: 'false',
is_subscribed: false,
unsubscribed_at: DateTime.now,
sidekiq_status: 'Unsubscribed'
)
Expand All @@ -50,7 +50,7 @@ def unsubscribe
def subscribe
if @user.present? && @user.sidekiq_status == 'Unsubscribed'
@user.update(
is_subscribed: 'true',
is_subscribed: true,
sidekiq_status: 'Subscribed',
subscribed_at: DateTime.now,
remote_ip: request.remote_ip,
Expand Down Expand Up @@ -152,8 +152,8 @@ def response_message(status)
if dummy_token?
"#{status.capitalize} successfully!!"
elsif @user.nil?
"Hey, it seems request you are trying to access is invalid. If you have any " +
"concerns about our newsletter's subscription, kindly get in touch with " +
'Hey, it seems request you are trying to access is invalid. If you have any ' +
'concerns about our newsletters subscription, kindly get in touch with ' +
"<a href='mailto:[email protected]' class='email'>[email protected]</a>"
else
"You have already #{status}!!"
Expand Down
7 changes: 1 addition & 6 deletions app/models/light/user.rb
Original file line number Diff line number Diff line change
Expand Up @@ -83,12 +83,7 @@ def self.import(file, email='')
{success: 'You will get an update email.'}
end

def self.users_for_opt_in_mail
date = Date.today.strftime('%Y%m')
self.new_users.where(:sent_on.nin => [date], is_blocked: false).order_by([:email_id, :asc])
end

def self.users_for_opt_out_mail
def self.get_new_users
date = Date.today.strftime('%Y%m')
self.new_users.where(:sent_on.nin => [date], is_blocked: false).order_by([:email_id, :asc])
end
Expand Down
2 changes: 1 addition & 1 deletion app/workers/light/opt_in_worker.rb
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ class OptInWorker

def perform(newsletter_id)
date = Date.today.strftime("%Y%m")
users = Light::User.users_for_opt_in_mail
users = Light::User.get_new_users
number_of_opt_in_users = users.count
number_of_opt_in_users_count = number_of_opt_in_users
current_batch = 0
Expand Down
2 changes: 1 addition & 1 deletion app/workers/light/opt_out_worker.rb
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ class OptOutWorker

def perform(newsletter_id)
date = Date.today.strftime("%Y%m")
users = Light::User.users_for_opt_out_mail
users = Light::User.get_new_users
number_of_opt_out_users = users.count
number_of_opt_out_users_count = number_of_opt_out_users
current_batch = 0
Expand Down
4 changes: 2 additions & 2 deletions app/workers/light/user_worker.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ class UserWorker
def perform(newsletter_id)
date = Date.today.strftime("%Y%m")
number_of_subscribed_users = Light::User.where(is_subscribed: true, :sent_on.nin => [date], is_blocked: {"$ne" => true}).count
#number_of_subscribed_users = Light::User.users_for_opt_in_mail.count
#number_of_subscribed_users = Light::User.get_new_users.count
number_of_subscribed_users_count = number_of_subscribed_users
current_batch = 0
users_in_batch = 250
Expand All @@ -17,7 +17,7 @@ def perform(newsletter_id)
if newsletter
while number_of_subscribed_users > 0
user_ids = Light::User.where(is_subscribed: true, :sent_on.nin => [date] , is_blocked: {"$ne" => true}).order_by([:email_id, :asc]).limit(users_in_batch).skip(users_in_batch*current_batch).collect { |user| user.id.to_s }
#user_ids = Light::User.users_for_opt_in_mail.order_by([:email_id, :asc]).limit(users_in_batch).skip(users_in_batch*current_batch).collect { |user| user.id.to_s }
#user_ids = Light::User.get_new_users.order_by([:email_id, :asc]).limit(users_in_batch).skip(users_in_batch*current_batch).collect { |user| user.id.to_s }
current_batch += 1
number_of_subscribed_users -= users_in_batch
Light::HardWorker.perform_async(user_ids, newsletter.id.to_s, date)
Expand Down
2 changes: 1 addition & 1 deletion spec/controllers/light/users_controller_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ module Light
end

it 'not arise' do
post :create, {user: {email_id: '',username: 'kanhaiya', is_subscribed: 'false'}}
post :create, {user: {email_id: '',username: 'kanhaiya', is_subscribed: false}}
expect(flash[:error]).to eq('Error while creating user')
expect(response).to render_template('new')
end
Expand Down

0 comments on commit 5c17279

Please sign in to comment.