Merge pull request #12 from internetee/staging

Staging
This commit is contained in:
Timo Võhmar 2015-11-30 19:38:16 +02:00
commit 42225d3298
10 changed files with 46 additions and 32 deletions

View file

@ -1,8 +1,10 @@
class ContactMailer < ApplicationMailer
include Que::Mailer
def email_updated(email, contact_id, should_deliver)
@contact = Contact.find_by(id: contact_id)
def email_updated(old_email, email, contact_id, should_deliver)
@contact = Contact.find_by(id: contact_id)
@old_email = old_email
return unless email || @contact
return if delivery_off?(@contact, should_deliver)
return if whitelist_blocked?(email)

View file

@ -1,8 +1,9 @@
class DomainMailer < ApplicationMailer
include Que::Mailer
def pending_update_request_for_old_registrant(domain_id, should_deliver)
def pending_update_request_for_old_registrant(domain_id, old_registrant_id, should_deliver)
@domain = Domain.find_by(id: domain_id)
@old_registrant = Registrant.find(old_registrant_id)
return unless @domain
return if delivery_off?(@domain, should_deliver)
@ -16,8 +17,6 @@ class DomainMailer < ApplicationMailer
return
end
@old_registrant = Registrant.find(@domain.registrant_id_was)
confirm_path = "#{ENV['registrant_url']}/registrant/domain_update_confirms"
@verification_url = "#{confirm_path}/#{@domain.id}?token=#{@domain.registrant_verification_token}"
@ -27,8 +26,9 @@ class DomainMailer < ApplicationMailer
name: @domain.name)} [#{@domain.name}]")
end
def pending_update_notification_for_new_registrant(domain_id, should_deliver)
def pending_update_notification_for_new_registrant(domain_id, old_registrant_id, should_deliver)
@domain = Domain.find_by(id: domain_id)
@old_registrant = Registrant.find(old_registrant_id)
return unless @domain
return if delivery_off?(@domain, should_deliver)
@ -43,7 +43,6 @@ class DomainMailer < ApplicationMailer
end
@new_registrant = @domain.registrant # NB! new registrant at this point
@old_registrant = Registrant.find(@domain.registrant_id_was)
return if whitelist_blocked?(@new_registrant.email)
mail(to: format(@new_registrant.email),
@ -107,8 +106,9 @@ class DomainMailer < ApplicationMailer
name: @domain.name)} [#{@domain.name}]")
end
def pending_deleted(domain_id, should_deliver)
def pending_deleted(domain_id, old_registrant_id, should_deliver)
@domain = Domain.find_by(id: domain_id)
@old_registrant = Registrant.find(old_registrant_id)
return unless @domain
return if delivery_off?(@domain, should_deliver)
@ -122,8 +122,6 @@ class DomainMailer < ApplicationMailer
return
end
@old_registrant = Registrant.find(@domain.registrant_id_was)
confirm_path = "#{ENV['registrant_url']}/registrant/domain_delete_confirms"
@verification_url = "#{confirm_path}/#{@domain.id}?token=#{@domain.registrant_verification_token}"

View file

@ -23,7 +23,7 @@ class Contact < ActiveRecord::Base
validates :ident,
format: { with: /\d{4}-\d{2}-\d{2}/, message: :invalid_birthday_format },
if: proc { |c| c.ident_type == 'birthday' }
validates :ident_country_code, presence: true, if: proc { |c| %w(org priv).include? c.ident_type }
validates :ident_country_code, presence: true, if: proc { |c| %w(org priv).include? c.ident_type }, on: :create
validates :code,
uniqueness: { message: :epp_id_taken },
format: { with: /\A[\w\-\:]*\Z/i, message: :invalid },
@ -51,7 +51,7 @@ class Contact < ActiveRecord::Base
emails << domains.map(&:registrant_email) if domains.present?
emails = emails.flatten.uniq
emails.each do |e|
ContactMailer.email_updated(e, id, deliver_emails).deliver
ContactMailer.email_updated(email_was, e, id, deliver_emails).deliver
end
end

View file

@ -438,6 +438,7 @@ class Domain < ActiveRecord::Base
end
def pending_update!
old_registrant_id = registrant_id
return true if pending_update?
self.epp_pending_update = true # for epp
@ -449,8 +450,8 @@ class Domain < ActiveRecord::Base
new_registrant_email = registrant.email
new_registrant_name = registrant.name
DomainMailer.pending_update_request_for_old_registrant(id, deliver_emails).deliver
DomainMailer.pending_update_notification_for_new_registrant(id, deliver_emails).deliver
DomainMailer.pending_update_request_for_old_registrant(id, old_registrant_id, deliver_emails).deliver
DomainMailer.pending_update_notification_for_new_registrant(id, old_registrant_id, deliver_emails).deliver
reload # revert back to original
@ -510,7 +511,7 @@ class Domain < ActiveRecord::Base
pending_delete_confirmation!
save(validate: false) # should check if this did succeed
DomainMailer.pending_deleted(id, deliver_emails).deliver
DomainMailer.pending_deleted(id, registrant_id_was, deliver_emails).deliver
end
def cancel_pending_delete

View file

@ -104,6 +104,7 @@ class Epp::Contact < Contact
res
end
end
delegate :ident_attr_valid?, to: :class
def epp_code_map # rubocop:disable Metrics/MethodLength
{

View file

@ -1,7 +1,7 @@
Tere <%= @contact.name %>
<br><br>
Kontakti <%= @contact.name %> eposti aadress on muudetud<br>
endine aadress: <%= @contact.email_was %><br>
endine aadress: <%= @old_email %><br>
uus aadress: <%= @contact.email %>
<br><br>
Eposti aadressile saadetakse domeenidega seotud infot seal hulgas kinnitustaotluseid omaniku vahetuse ja domeeni kustutamise korral. Palun veenduge, et muudatus on korrektne ning probleemide korral pöörduga oma registripidaja poole. Teie registripidaja on <%= @contact.registrar.name %>
@ -30,7 +30,7 @@ Eesti Interneti SA
Hi <%= @contact.name %>
<br><br>
E-mail address of <%= @contact.name %> has been changed<br>
previous address: <%= @contact.email_was %><br>
previous address: <%= @old_email %><br>
new address: <%= @contact.email %>
<br><br>
E-mail addresses are used to send important information regarding your registered domains including applications for approval of registrant change and domain deletion. Please make sure that the update and contact information are correct. Incase of problems please turn to your registrar. Your registrar is <%= @contact.registrar.name %>

View file

@ -1,7 +1,7 @@
Tere <%= @contact.name %>
Kontakti <%= @contact.name %> eposti aadress on muudetud
endine aadress: <%= @contact.email_was %>
endine aadress: <%= @old_email %>
uus aadress: <%= @contact.email %>
Eposti aadressile saadetakse domeenidega seotud infot seal hulgas kinnitustaotluseid omaniku vahetuse ja domeeni kustutamise korral. Palun veenduge, et muudatus on korrektne ning probleemide korral pöörduga oma registripidaja poole. Teie registripidaja on <%= @contact.registrar.name %>
@ -30,7 +30,7 @@ Eesti Interneti SA
Hi <%= @contact.name %>
E-mail address of <%= @contact.name %> has been changed
previous address: <%= @contact.email_was %>
previous address: <%= @old_email %>
new address: <%= @contact.email %>
E-mail addresses are used to send important information regarding your registered domains including applications for approval of registrant change and domain deletion. Please make sure that the update and contact information are correct. Incase of problems please turn to your registrar. Your registrar is <%= @contact.registrar.name %>

View file

@ -45,12 +45,15 @@ class AddIdentAutofill < ActiveRecord::Migration
END LOOP;
mod := (total % 11);
END IF;
IF (mod < 10 AND substring(r.ident, 11, 1) = to_char(mod, 'FM999MI'))
IF (mod = 10)
THEN
mod := 0;
END IF;
IF (substring(r.ident, 11, 1) = to_char(mod, 'FM999MI'))
THEN
UPDATE contacts SET ident_country_code = 'EE' WHERE id = r.id;
END IF;
total = 0;
total := 0;
END IF;
END LOOP;
@ -66,7 +69,7 @@ class AddIdentAutofill < ActiveRecord::Migration
counter := (counter + 1);
END LOOP;
mod := total % 11;
total = 0;
total := 0;
counter := 1;
IF (mod >= 10)
THEN
@ -78,7 +81,11 @@ class AddIdentAutofill < ActiveRecord::Migration
END LOOP;
mod := (total % 11);
END IF;
IF (mod < 10 AND (substring(r.ident, 8, 1) = to_char(mod, 'FM999MI')))
IF (mod = 10)
THEN
mod := 0;
END IF;
IF (substring(r.ident, 8, 1) = to_char(mod, 'FM999MI'))
THEN
UPDATE contacts SET ident_country_code = 'EE' WHERE id = r.id;
END IF;

View file

@ -250,7 +250,12 @@ namespace :import do
next if existing_contact_ids.include?(x.id)
count += 1
name = x.name.try(:strip).presence || x.organization.try(:strip).presence
if 4 == x.ssntype
name = x.organization.try(:strip).presence || x.name.try(:strip).presence
else
name = x.name.try(:strip).presence || x.organization.try(:strip).presence
end
begin
contacts << [
x.object_registry.name.try(:strip),
@ -262,7 +267,7 @@ namespace :import do
x.ssn.try(:strip),
ident_type_map[x.ssntype],
x.object.authinfopw.try(:strip),
x.organization.try(:strip)? x.organization.try(:strip): name,
name,
Registrar.find_by(legacy_id: x.object.try(:clid)).try(:id),
x.object_registry.try(:registrar).try(:name),
x.object.try(:registrar).try(:name) ? x.object.try(:registrar).try(:name) : x.object_registry.try(:registrar).try(:name),

View file

@ -9,7 +9,7 @@ describe DomainMailer do
before :all do
@registrant = Fabricate(:registrant, email: 'test@example.com')
@domain = Fabricate(:domain, registrant: @registrant)
@mail = DomainMailer.pending_update_request_for_old_registrant(@domain.id, deliver_emails)
@mail = DomainMailer.pending_update_request_for_old_registrant(@domain.id, @registrant.id,deliver_emails)
end
it 'should not render email subject' do
@ -38,7 +38,7 @@ describe DomainMailer do
@domain.registrant_verification_token = '123'
@domain.registrant_verification_asked_at = Time.zone.now
@domain.registrant = @new_registrant
@mail = DomainMailer.pending_update_request_for_old_registrant(@domain.id, deliver_emails)
@mail = DomainMailer.pending_update_request_for_old_registrant(@domain.id, @registrant.id, deliver_emails)
end
it 'should render email subject' do
@ -71,7 +71,7 @@ describe DomainMailer do
@domain.registrant_verification_token = '123'
@domain.registrant_verification_asked_at = Time.zone.now
@domain.registrant = @new_registrant
@mail = DomainMailer.pending_update_notification_for_new_registrant(@domain.id, deliver_emails)
@mail = DomainMailer.pending_update_notification_for_new_registrant(@domain.id, @registrant.id, deliver_emails)
end
it 'should render email subject' do
@ -100,7 +100,7 @@ describe DomainMailer do
@domain.registrant_verification_token = '123'
@domain.registrant_verification_asked_at = Time.zone.now
@domain.registrant = @new_registrant
@mail = DomainMailer.pending_update_notification_for_new_registrant(@domain.id, deliver_emails)
@mail = DomainMailer.pending_update_notification_for_new_registrant(@domain.id, @registrant.id, deliver_emails)
end
it 'should render email subject' do
@ -202,7 +202,7 @@ describe DomainMailer do
before :all do
@registrant = Fabricate(:registrant, email: 'test@example.com')
@domain = Fabricate(:domain, registrant: @registrant)
@mail = DomainMailer.pending_deleted(@domain.id, deliver_emails)
@mail = DomainMailer.pending_deleted(@domain.id, @registrant.id, deliver_emails)
end
it 'should not render email subject' do
@ -229,7 +229,7 @@ describe DomainMailer do
@domain.deliver_emails = true
@domain.registrant_verification_token = '123'
@domain.registrant_verification_asked_at = Time.zone.now
@mail = DomainMailer.pending_deleted(@domain.id, deliver_emails)
@mail = DomainMailer.pending_deleted(@domain.id, @registrant.id, deliver_emails)
end
it 'should render email subject' do