From e65e6cfbd2bd917faadc15378a424dd2ec6056c6 Mon Sep 17 00:00:00 2001 From: Martin Lensment Date: Mon, 3 Nov 2014 16:17:12 +0200 Subject: [PATCH] Improve epp domain renew --- app/helpers/epp/domains_helper.rb | 6 +++++- app/models/epp/epp_domain.rb | 8 ++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/app/helpers/epp/domains_helper.rb b/app/helpers/epp/domains_helper.rb index d8d8aca9a..777b8f415 100644 --- a/app/helpers/epp/domains_helper.rb +++ b/app/helpers/epp/domains_helper.rb @@ -31,7 +31,11 @@ module Epp::DomainsHelper @domain = find_domain handle_errors(@domain) and return unless @domain - handle_errors(@domain) and return unless @domain.renew(@ph[:curExpDate], @ph[:period]) + handle_errors(@domain) and return unless @domain.renew( + parsed_frame.css('curExpDate').text, + parsed_frame.css('period').text, + parsed_frame.css('period').first['unit'] + ) render '/epp/domains/renew' end diff --git a/app/models/epp/epp_domain.rb b/app/models/epp/epp_domain.rb index 3148ff9ed..40921e620 100644 --- a/app/models/epp/epp_domain.rb +++ b/app/models/epp/epp_domain.rb @@ -268,7 +268,6 @@ class Epp::EppDomain < Domain return false if errors.any? p = self.class.convert_period_to_time(period, unit) - self.valid_to = valid_to + p self.period = period self.period_unit = unit @@ -341,7 +340,12 @@ class Epp::EppDomain < Domain ### VALIDATIONS ### def validate_exp_dates(cur_exp_date) - return if cur_exp_date.to_date == valid_to + begin + return if cur_exp_date.to_date == valid_to + rescue + add_epp_error('2306', 'curExpDate', cur_exp_date, I18n.t('errors.messages.epp_exp_dates_do_not_match')) + return + end add_epp_error('2306', 'curExpDate', cur_exp_date, I18n.t('errors.messages.epp_exp_dates_do_not_match')) end