diff --git a/Gemfile b/Gemfile index 921074895..b2fd0f844 100644 --- a/Gemfile +++ b/Gemfile @@ -8,7 +8,7 @@ end if Bundler::VERSION < '2' source 'https://rubygems.org' # core -gem 'rails', '4.2.3' +gem 'rails', '4.2.3' # when update, all initializers eis_custom files needs check/update gem 'iso8601', '~> 0.8.2' # for dates and times gem 'hashie-forbidden_attributes', '~> 0.1.1' @@ -19,8 +19,8 @@ gem 'figaro', '~> 1.1.1' gem 'pg', '~> 0.18.0' gem 'ransack', '~> 1.5.1' # for searching # with polymorphic fix -gem 'paper_trail', - github: 'airblade/paper_trail', +gem 'paper_trail', + github: 'airblade/paper_trail', ref: 'a453811226ec4ea59753ba6b827e390ced2fc140' gem 'rails-settings-cached', '~> 0.4.1' # for settings @@ -82,7 +82,7 @@ gem 'digidoc_client', '~> 0.2.1' # epp gem 'epp', '~> 1.4.2', github: 'internetee/epp' -gem 'epp-xml', '~> 1.0.3' # EIS EPP XMLs +gem 'epp-xml', '~> 1.0.4' # EIS EPP XMLs gem 'uuidtools', '~> 2.1.4' # For unique IDs (used by the epp gem) # que @@ -144,13 +144,13 @@ group :development, :test do gem 'simplecov', '~> 0.10.0', require: false gem 'rubycritic', '~> 1.4.0' gem 'bullet', '~> 4.14.4' # for finding database optimizations - gem 'bundler-audit', + gem 'bundler-audit', github: 'rubysec/bundler-audit', ref: 'f89ef7fae1090bbad825ea76812d56d72b417055' # for finding future vulnerable gems gem 'brakeman', '~> 3.0.5', require: false # for security audit' # tmp, otherwise conflics with breakman # gem 'html2haml', github: 'haml/html2haml', ref: '6984f50bdbbd6291535027726a5697f28778ee8d' - gem 'html2haml', '~> 2.0.0' + gem 'html2haml', '~> 2.0.0' gem 'sdoc', '~> 0.4.0' # bundle exec rake doc:rails generates the API under doc/api. gem 'railroady', '~> 1.3.0' # to generate database diagrams diff --git a/Gemfile.lock b/Gemfile.lock index b6ac5c808..ee1c0ad36 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -177,7 +177,7 @@ GEM nokogiri (>= 1.4.0) savon (>= 2.4.0) docile (1.1.5) - epp-xml (1.0.3) + epp-xml (1.0.4) activesupport (~> 4.1) builder (~> 3.2) equalizer (0.0.11) @@ -564,7 +564,7 @@ DEPENDENCIES devise (~> 3.5.1) digidoc_client (~> 0.2.1) epp (~> 1.4.2)! - epp-xml (~> 1.0.3) + epp-xml (~> 1.0.4) fabrication (~> 2.13.2) faker (~> 1.4.3) figaro (~> 1.1.1) diff --git a/app/assets/javascripts/admin-manifest.coffee b/app/assets/javascripts/admin-manifest.coffee index df3af084c..759e78c5a 100644 --- a/app/assets/javascripts/admin-manifest.coffee +++ b/app/assets/javascripts/admin-manifest.coffee @@ -8,5 +8,6 @@ #= require selectize #= require shared/jquery.validate.bootstrap #= require jquery-ui/datepicker +#= require select2 #= require shared/general #= require admin/application diff --git a/app/assets/javascripts/shared/general.coffee b/app/assets/javascripts/shared/general.coffee index db6e371c3..17b4f5725 100644 --- a/app/assets/javascripts/shared/general.coffee +++ b/app/assets/javascripts/shared/general.coffee @@ -22,8 +22,7 @@ $(document).on 'page:change', -> tomorrow.setDate(today.getDate() + 1) $('.datepicker').datepicker( - dateFormat: "yy-mm-dd", - maxDate: tomorrow + dateFormat: "yy-mm-dd" ) if $('.js-combobox').length diff --git a/app/assets/stylesheets/admin-manifest.sass b/app/assets/stylesheets/admin-manifest.sass index b93e65268..b69267519 100644 --- a/app/assets/stylesheets/admin-manifest.sass +++ b/app/assets/stylesheets/admin-manifest.sass @@ -1,6 +1,8 @@ //= require 'shared/general-manifest' //= require 'admin/admin-bootstrap' //= require 'jquery-ui/datepicker' +//= require 'select2' +//= require 'select2-bootstrap' @import shared/fonts @import shared/general @import nprogress diff --git a/app/controllers/admin/domains_controller.rb b/app/controllers/admin/domains_controller.rb index 453fc179b..c5d60ced3 100644 --- a/app/controllers/admin/domains_controller.rb +++ b/app/controllers/admin/domains_controller.rb @@ -2,10 +2,39 @@ class Admin::DomainsController < AdminController load_and_authorize_resource before_action :set_domain, only: [:show, :edit, :update, :zonefile] + # rubocop: disable Metrics/PerceivedComplexity + # rubocop: disable Metrics/CyclomaticComplexity + # rubocop: disable Metrics/AbcSize def index - @q = Domain.includes(:registrar, :registrant).search(params[:q]) - @domains = @q.result.page(params[:page]) + params[:q] ||= {} + if params[:statuses_contains] + domains = Domain.includes(:registrar, :registrant).where( + "statuses @> ?::varchar[]", "{#{params[:statuses_contains].join(',')}}" + ) + else + domains = Domain.includes(:registrar, :registrant) + end + + normalize_search_parameters do + @q = domains.search(params[:q]) + @domains = @q.result.page(params[:page]) + if @domains.count == 1 + redirect_to [:admin, @domains.first] and return + elsif @domains.count == 0 && params[:q][:name_matches] !~ /^%.+%$/ + # if we do not get any results, add wildcards to the name field and search again + n_cache = params[:q][:name_matches] + params[:q][:name_matches] = "%#{params[:q][:name_matches]}%" + @q = domains.search(params[:q]) + @domains = @q.result.page(params[:page]) + params[:q][:name_matches] = n_cache # we don't want to show wildcards in search form + end + end + + @domains = @domains.per(params[:results_per_page]) if params[:results_per_page].to_i > 0 end + # rubocop: enable Metrics/PerceivedComplexity + # rubocop: enable Metrics/CyclomaticComplexity + # rubocop: enable Metrics/AbcSize def show @domain.valid? @@ -71,5 +100,19 @@ class Admin::DomainsController < AdminController dp[:statuses].reject!(&:blank?) dp end + + def normalize_search_parameters + ca_cache = params[:q][:valid_to_lteq] + begin + end_time = params[:q][:valid_to_lteq].try(:to_date) + params[:q][:valid_to_lteq] = end_time.try(:end_of_day) + rescue + logger.warn('Invalid date') + end + + yield + + params[:q][:valid_to_lteq] = ca_cache + end end diff --git a/app/controllers/admin/invoices_controller.rb b/app/controllers/admin/invoices_controller.rb index 39d4e805c..dce34ac2a 100644 --- a/app/controllers/admin/invoices_controller.rb +++ b/app/controllers/admin/invoices_controller.rb @@ -12,7 +12,7 @@ class Admin::InvoicesController < AdminController @deposit = Deposit.new(deposit_params.merge(registrar: r)) @invoice = @deposit.issue_prepayment_invoice - if @invoice.persisted? + if @invoice && @invoice.persisted? flash[:notice] = t(:record_created) redirect_to [:admin, @invoice] else diff --git a/app/controllers/admin/pricelists_controller.rb b/app/controllers/admin/pricelists_controller.rb index 200d27e48..8037f57f6 100644 --- a/app/controllers/admin/pricelists_controller.rb +++ b/app/controllers/admin/pricelists_controller.rb @@ -4,6 +4,8 @@ class Admin::PricelistsController < AdminController def index @q = Pricelist.search(params[:q]) + @q.sorts = ['category asc', 'duration asc', 'operation_category asc', + 'valid_from desc', 'valid_to asc'] if @q.sorts.empty? @pricelists = @q.result.page(params[:page]) end diff --git a/app/controllers/admin/settings_controller.rb b/app/controllers/admin/settings_controller.rb index 805c983f4..615ee63ca 100644 --- a/app/controllers/admin/settings_controller.rb +++ b/app/controllers/admin/settings_controller.rb @@ -53,6 +53,7 @@ class Admin::SettingsController < AdminController :transfer_wait_time, :invoice_number_min, :invoice_number_max, + :days_to_keep_invoices_active, :days_to_keep_overdue_invoices_active, :days_to_renew_domain_before_expire, :expire_warning_period, @@ -67,7 +68,9 @@ class Admin::SettingsController < AdminController :key_data_allowed, :client_side_status_editing_enabled, :registrar_ip_whitelist_enabled, - :api_ip_whitelist_enabled + :api_ip_whitelist_enabled, + :request_confrimation_on_registrant_change_enabled, + :request_confirmation_on_domain_deletion_enabled ] params[:settings].each do |k, v| diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 5aa6c40f1..87099d6fa 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -56,15 +56,7 @@ class ApplicationController < ActionController::Base end def user_for_paper_trail - if defined?(current_user) && current_user.present? - # Most of the time it's not loaded in correct time because PaperTrail before filter kicks in - # before current_user is defined. PaperTrail is triggered also at current_user - api_user_log_str(current_user) - elsif current_user.present? - "#{current_user.id}-#{current_user.username}" - else - 'public' - end + user_log_str(current_user) end def depp_current_user @@ -74,11 +66,8 @@ class ApplicationController < ActionController::Base ) end - def api_user_log_str(user) - if user.present? - "#{user.id}-api-#{user.username}" - else - 'api-public' - end + def user_log_str(user) + return 'public' if user.nil? + "#{user.id}-#{user.class}: #{user.username}" end end diff --git a/app/controllers/epp/domains_controller.rb b/app/controllers/epp/domains_controller.rb index c7713e3e6..5d942882b 100644 --- a/app/controllers/epp/domains_controller.rb +++ b/app/controllers/epp/domains_controller.rb @@ -196,13 +196,22 @@ class Epp::DomainsController < EppController end def validate_transfer + # period element is disabled for now + if params[:parsed_frame].css('period').any? + epp_errors << { + code: '2307', + msg: I18n.t(:unimplemented_object_service), + value: { obj: 'period' } + } + end + requires 'transfer > transfer' @prefix = 'transfer > transfer >' requires 'name' @prefix = nil - requires_attribute 'transfer', 'op', values: %(approve, query, reject, request) + requires_attribute 'transfer', 'op', values: %(approve, query, reject, request, cancel) end def find_domain diff --git a/app/controllers/epp/sessions_controller.rb b/app/controllers/epp/sessions_controller.rb index 021011390..b877c01ce 100644 --- a/app/controllers/epp/sessions_controller.rb +++ b/app/controllers/epp/sessions_controller.rb @@ -75,8 +75,8 @@ class Epp::SessionsController < EppController end if success - if parsed_frame.css('newPW').first - unless @api_user.update(password: parsed_frame.css('newPW').first.text) + if params[:parsed_frame].css('newPW').first + unless @api_user.update(password: params[:parsed_frame].css('newPW').first.text) response.headers['X-EPP-Returncode'] = '2500' handle_errors(@api_user) and return end @@ -124,11 +124,8 @@ class Epp::SessionsController < EppController ### HELPER METHODS ### def login_params - ph = params_hash['epp']['command']['login'] - { username: ph[:clID], password: ph[:pw] } - end - - def parsed_frame - @parsed_frame ||= Nokogiri::XML(request.params[:raw_frame]).remove_namespaces! + user = params[:parsed_frame].css('clID').first.text + pw = params[:parsed_frame].css('pw').first.text + { username: user, password: pw } end end diff --git a/app/controllers/epp_controller.rb b/app/controllers/epp_controller.rb index 3fec7910b..a61b155a1 100644 --- a/app/controllers/epp_controller.rb +++ b/app/controllers/epp_controller.rb @@ -6,6 +6,20 @@ class EppController < ApplicationController before_action :generate_svtrid before_action :latin_only + + before_action :validate_against_schema + def validate_against_schema + return if ['hello', 'error', 'keyrelay'].include?(params[:action]) + schema.validate(params[:nokogiri_frame]).each do |error| + epp_errors << { + code: 2001, + msg: error + } + end + + handle_errors and return if epp_errors.any? + end + before_action :validate_request before_action :update_epp_session @@ -43,7 +57,8 @@ class EppController < ApplicationController if Rails.env.test? || Rails.env.development? # rubocop:disable Rails/Output puts e.backtrace.reverse.join("\n") - puts "\nFROM-EPP-RESCUE: #{e.message}\n" + puts "\n BACKTRACE REVERSED!\n" + puts "\n FROM-EPP-RESCUE: #{e.message}\n\n\n" # rubocop:enable Rails/Output else logger.error "FROM-EPP-RESCUE: #{e.message}" @@ -57,6 +72,13 @@ class EppController < ApplicationController render_epp_response '/epp/error' end + def schema + # TODO: Support multiple schemas + return DOMAIN_SCHEMA if params[:epp_object_type] == :domain + return CONTACT_SCHEMA if params[:epp_object_type] == :contact + EPP_SCHEMA + end + def generate_svtrid # rubocop: disable Style/VariableName @svTRID = "ccReg-#{format('%010d', rand(10**10))}" @@ -98,7 +120,7 @@ class EppController < ApplicationController @current_user ||= ApiUser.find_by_id(epp_session[:api_user_id]) # by default PaperTrail uses before filter and at that # time current_user is not yet present - ::PaperTrail.whodunnit = api_user_log_str(@current_user) + ::PaperTrail.whodunnit = user_log_str(@current_user) ::PaperSession.session = epp_session.session_id if epp_session.session_id.present? @current_user end @@ -328,6 +350,7 @@ class EppController < ApplicationController # rubocop: enable Style/PredicateName # rubocop: disable Metrics/CyclomaticComplexity + # rubocop: disable Metrics/PerceivedComplexity def write_to_epp_log # return nil if EPP_LOG_ENABLED request_command = params[:command] || params[:action] # error receives :command, other methods receive :action @@ -344,12 +367,13 @@ class EppController < ApplicationController request_successful: epp_errors.empty?, request_object: params[:epp_object_type], response: @response, - api_user_name: api_user_log_str(@api_user || current_user), + api_user_name: @api_user.try(:username) || current_user.try(:username) || 'api-public', api_user_registrar: @api_user.try(:registrar).try(:to_s) || current_user.try(:registrar).try(:to_s), ip: request.ip }) end # rubocop: enable Metrics/CyclomaticComplexity + # rubocop: enable Metrics/PerceivedComplexity def iptables_counter_update return if ENV['iptables_counter_enabled'].blank? && ENV['iptables_counter_enabled'] != 'true' diff --git a/app/controllers/registrar/deposits_controller.rb b/app/controllers/registrar/deposits_controller.rb index 6f1dfff13..4bd40eaa6 100644 --- a/app/controllers/registrar/deposits_controller.rb +++ b/app/controllers/registrar/deposits_controller.rb @@ -9,7 +9,7 @@ class Registrar::DepositsController < RegistrarController @deposit = Deposit.new(deposit_params.merge(registrar: current_user.registrar)) @invoice = @deposit.issue_prepayment_invoice - if @invoice.persisted? + if @invoice && @invoice.persisted? flash[:notice] = t(:please_pay_the_following_invoice) redirect_to [:registrar, @invoice] else diff --git a/app/controllers/registrar/depp_controller.rb b/app/controllers/registrar/depp_controller.rb index 753a8a6e0..aff0406a3 100644 --- a/app/controllers/registrar/depp_controller.rb +++ b/app/controllers/registrar/depp_controller.rb @@ -1,7 +1,10 @@ class Registrar::DeppController < RegistrarController # EPP controller helper_method :depp_current_user - rescue_from(Errno::ECONNRESET, Errno::ECONNREFUSED) do |_exception| + rescue_from(Errno::ECONNRESET, Errno::ECONNREFUSED) do |exception| + logger.error 'COULD NOT CONNECT TO REGISTRY' + logger.error exception.backtrace.join("\n") + NewRelic::Agent.notice_error(exception) redirect_to registrar_login_url, alert: t(:no_connection_to_registry) end diff --git a/app/controllers/registrar/invoices_controller.rb b/app/controllers/registrar/invoices_controller.rb index 23af8ab77..543c4623d 100644 --- a/app/controllers/registrar/invoices_controller.rb +++ b/app/controllers/registrar/invoices_controller.rb @@ -6,15 +6,15 @@ class Registrar::InvoicesController < RegistrarController def index params[:q] ||= {} invoices = current_user.registrar.invoices.includes(:invoice_items, :account_activity) - params[:q][:sum_cache_gteq].gsub!(',', '.') if params[:q][:sum_cache_gteq] - params[:q][:sum_cache_lteq].gsub!(',', '.') if params[:q][:sum_cache_lteq] - @q = invoices.search(params[:q]) - @q.sorts = 'id desc' if @q.sorts.empty? - @invoices = @q.result.page(params[:page]) + + normalize_search_parameters do + @q = invoices.search(params[:q]) + @q.sorts = 'id desc' if @q.sorts.empty? + @invoices = @q.result.page(params[:page]) + end end - def show - end + def show; end def forward @invoice.billing_email = @invoice.buyer.billing_email @@ -51,4 +51,21 @@ class Registrar::InvoicesController < RegistrarController def set_invoice @invoice = Invoice.find(params[:id]) end + + def normalize_search_parameters + params[:q][:sum_cache_gteq].gsub!(',', '.') if params[:q][:sum_cache_gteq] + params[:q][:sum_cache_lteq].gsub!(',', '.') if params[:q][:sum_cache_lteq] + + ca_cache = params[:q][:due_date_lteq] + begin + end_time = params[:q][:due_date_lteq].try(:to_date) + params[:q][:due_date_lteq] = end_time.try(:end_of_day) + rescue + logger.warn('Invalid date') + end + + yield + + params[:q][:due_date_lteq] = ca_cache + end end diff --git a/app/controllers/registrar/sessions_controller.rb b/app/controllers/registrar/sessions_controller.rb index 940e5f415..6875d9291 100644 --- a/app/controllers/registrar/sessions_controller.rb +++ b/app/controllers/registrar/sessions_controller.rb @@ -64,6 +64,12 @@ class Registrar::SessionsController < Devise::SessionsController # rubocop:enable Metrics/MethodLength # rubocop:enable Metrics/AbcSize + def switch_user + @api_user = ApiUser.find(params[:id]) + sign_in @api_user if @api_user.identity_code == current_user.identity_code + redirect_to :back + end + def id @user = ApiUser.find_by_idc_data(request.env['SSL_CLIENT_S_DN']) diff --git a/app/jobs/domain_delete_confirm_job.rb b/app/jobs/domain_delete_confirm_job.rb index 90a76e47b..153ef7012 100644 --- a/app/jobs/domain_delete_confirm_job.rb +++ b/app/jobs/domain_delete_confirm_job.rb @@ -8,6 +8,7 @@ class DomainDeleteConfirmJob < Que::Job domain.apply_pending_delete! domain.clean_pendings! when RegistrantVerification::REJECTED + DomainMailer.pending_delete_rejected_notification(domain).deliver_now domain.clean_pendings! end destroy # it's best to destroy the job in the same transaction diff --git a/app/jobs/domain_update_confirm_job.rb b/app/jobs/domain_update_confirm_job.rb index 2310eaad4..ab57e0a45 100644 --- a/app/jobs/domain_update_confirm_job.rb +++ b/app/jobs/domain_update_confirm_job.rb @@ -8,6 +8,7 @@ class DomainUpdateConfirmJob < Que::Job domain.apply_pending_update! domain.clean_pendings! when RegistrantVerification::REJECTED + DomainMailer.pending_update_rejected_notification_for_new_registrant(domain).deliver_now domain.clean_pendings! end destroy # it's best to destroy the job in the same transaction diff --git a/app/mailers/application_mailer.rb b/app/mailers/application_mailer.rb index 40266edb4..1ed7e0ce7 100644 --- a/app/mailers/application_mailer.rb +++ b/app/mailers/application_mailer.rb @@ -1,4 +1,5 @@ class ApplicationMailer < ActionMailer::Base + append_view_path Rails.root.join('app', 'views', 'mailers') default from: 'noreply@internet.ee' layout 'mailer' @@ -8,8 +9,8 @@ class ApplicationMailer < ActionMailer::Base emails = [emails] unless emails.is_a?(Array) emails = emails.flatten emails.each do |email| - next unless TEST_EMAILS.include?(email) - logger.warn "EMAIL SENDING WAS BLOCKED BY WHITELIST: #{email}" + next if TEST_EMAILS.include?(email) + logger.info "EMAIL SENDING WAS BLOCKED BY WHITELIST: #{email}" return true end false @@ -18,7 +19,7 @@ class ApplicationMailer < ActionMailer::Base # turn on delivery on specific (epp) request only, thus rake tasks does not deliver anything def delivery_off?(model) return false if model.deliver_emails == true - logger.warn "EMAIL SENDING WAS NOT ACTIVATED " \ + logger.info "EMAIL SENDING WAS NOT ACTIVATED " \ "BY MODEL OBJECT: id ##{model.try(:id)} deliver_emails returned false" true end diff --git a/app/mailers/contact_mailer.rb b/app/mailers/contact_mailer.rb index 859f73088..42968fe5a 100644 --- a/app/mailers/contact_mailer.rb +++ b/app/mailers/contact_mailer.rb @@ -1,34 +1,26 @@ class ContactMailer < ApplicationMailer - # rubocop:disable Metrics/MethodLength - def email_updated(contact) + def email_updated(email, contact) return if delivery_off?(contact) @contact = contact - emails = [] - emails << [@contact.email, @contact.email_was] if @contact.registrant_domains.present? - emails << @contact.domains.map(&:registrant_email) if @contact.domains.present? - emails = emails.uniq - return if whitelist_blocked?(emails) - emails.each do |email| - begin - mail(to: email, subject: "#{I18n.t(:contact_email_update_subject)} [#{@contact.code}]") - rescue EOFError, - IOError, - TimeoutError, - Errno::ECONNRESET, - Errno::ECONNABORTED, - Errno::EPIPE, - Errno::ETIMEDOUT, - Net::SMTPAuthenticationError, - Net::SMTPServerBusy, - Net::SMTPFatalError, - Net::SMTPSyntaxError, - Net::SMTPUnknownError, - OpenSSL::SSL::SSLError => e - logger.warn "EMAIL SENDING FAILED: #{email}: #{e}" - end + return if whitelist_blocked?(email) + begin + mail(to: email, subject: "#{I18n.t(:contact_email_update_subject)} [#{@contact.code}]") + rescue EOFError, + IOError, + TimeoutError, + Errno::ECONNRESET, + Errno::ECONNABORTED, + Errno::EPIPE, + Errno::ETIMEDOUT, + Net::SMTPAuthenticationError, + Net::SMTPServerBusy, + Net::SMTPFatalError, + Net::SMTPSyntaxError, + Net::SMTPUnknownError, + OpenSSL::SSL::SSLError => e + logger.info "EMAIL SENDING FAILED: #{email}: #{e}" end end - # rubocop:enable Metrics/MethodLength end diff --git a/app/mailers/domain_mailer.rb b/app/mailers/domain_mailer.rb index 936a4559c..1eb4341c9 100644 --- a/app/mailers/domain_mailer.rb +++ b/app/mailers/domain_mailer.rb @@ -1,5 +1,5 @@ class DomainMailer < ApplicationMailer - def registrant_pending_updated(domain) + def pending_update_request_for_old_registrant(domain) @domain = domain return if delivery_off?(@domain) @@ -20,16 +20,83 @@ class DomainMailer < ApplicationMailer return if whitelist_blocked?(@old_registrant.email) mail(to: @old_registrant.email, - subject: "#{I18n.t(:domain_registrant_pending_updated_subject, name: @domain.name)} [#{@domain.name}]") + subject: "#{I18n.t(:pending_update_request_for_old_registrant_subject, + name: @domain.name)} [#{@domain.name}]") end - def registrant_updated(domain) + def pending_update_notification_for_new_registrant(domain) + @domain = domain + return if delivery_off?(@domain) + + if @domain.registrant_verification_token.blank? + logger.warn "EMAIL NOT DELIVERED: registrant_verification_token is missing for #{@domain.name}" + return + end + + if @domain.registrant_verification_asked_at.blank? + logger.warn "EMAIL NOT DELIVERED: registrant_verification_asked_at is missing for #{@domain.name}" + return + 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: @new_registrant.email, + subject: "#{I18n.t(:pending_update_notification_for_new_registrant_subject, + name: @domain.name)} [#{@domain.name}]") + end + + def registrant_updated_notification_for_new_registrant(domain) @domain = domain return if delivery_off?(@domain) return if whitelist_blocked?(@domain.registrant_email) mail(to: @domain.registrant_email, - subject: "#{I18n.t(:domain_registrant_updated, name: @domain.name)} [#{@domain.name}]") + subject: "#{I18n.t(:registrant_updated_notification_for_new_registrant_subject, + name: @domain.name)} [#{@domain.name}]") + end + + def registrant_updated_notification_for_old_registrant(domain) + @domain = domain + return if delivery_off?(@domain) + + @old_registrant_email = domain.registrant_email # Nb! before applying pending updates + + return if whitelist_blocked?(@old_registrant_email) + mail(to: @old_registrant_email, + subject: "#{I18n.t(:registrant_updated_notification_for_old_registrant_subject, + name: @domain.name)} [#{@domain.name}]") + end + + def pending_update_rejected_notification_for_new_registrant(domain) + @domain = domain + # no delivery off control, driggered by que, no epp request + + @new_registrant_email = @domain.pending_json[:new_registrant_email] + @new_registrant_name = @domain.pending_json[:new_registrant_name] + + return if whitelist_blocked?(@new_registrant_email) + mail(to: @new_registrant_email, + subject: "#{I18n.t(:pending_update_rejected_notification_for_new_registrant_subject, + name: @domain.name)} [#{@domain.name}]") + end + + def pending_update_expired_notification_for_new_registrant(domain) + @domain = domain + # no delivery off control, driggered by cron, no epp request + + @new_registrant_email = @domain.pending_json[:new_registrant_email] + @new_registrant_name = @domain.pending_json[:new_registrant_name] + + return if whitelist_blocked?(@new_registrant_email) + if @new_registrant_email.blank? + logger.info "EMAIL NOT DELIVERED: no registrant email [pending_update_expired_notification_for_new_registrant]" + return + end + mail(to: @new_registrant_email, + subject: "#{I18n.t(:pending_update_expired_notification_for_new_registrant_subject, + name: @domain.name)} [#{@domain.name}]") end def pending_deleted(domain) @@ -53,6 +120,46 @@ class DomainMailer < ApplicationMailer return if whitelist_blocked?(@old_registrant.email) mail(to: @old_registrant.email, - subject: "#{I18n.t(:domain_pending_deleted_subject, name: @domain.name)} [#{@domain.name}]") + subject: "#{I18n.t(:domain_pending_deleted_subject, + name: @domain.name)} [#{@domain.name}]") + end + + def pending_delete_rejected_notification(domain) + @domain = domain + # no delivery off control, driggered by que, no epp request + + if @domain.registrant_verification_token.blank? + logger.warn "EMAIL NOT DELIVERED: registrant_verification_token is missing for #{@domain.name}" + return + end + + if @domain.registrant_verification_asked_at.blank? + logger.warn "EMAIL NOT DELIVERED: registrant_verification_asked_at is missing for #{@domain.name}" + return + end + + return if whitelist_blocked?(@domain.registrant.email) + mail(to: @domain.registrant.email, + subject: "#{I18n.t(:pending_delete_rejected_notification_subject, + name: @domain.name)} [#{@domain.name}]") + end + + def pending_delete_expired_notification(domain) + @domain = domain + # no delivery off control, driggered by cron, no epp request + + return if whitelist_blocked?(@domain.registrant.email) + mail(to: @domain.registrant.email, + subject: "#{I18n.t(:pending_delete_expired_notification_subject, + name: @domain.name)} [#{@domain.name}]") + end + + def delete_confirmation(domain) + @domain = domain + + return if whitelist_blocked?(@domain.registrant.email) + mail(to: @domain.registrant.email, + subject: "#{I18n.t(:delete_confirmation_subject, + name: @domain.name)} [#{@domain.name}]") end end diff --git a/app/models/api_user.rb b/app/models/api_user.rb index 3d18ea181..51f4d54b9 100644 --- a/app/models/api_user.rb +++ b/app/models/api_user.rb @@ -3,7 +3,7 @@ require 'open3' class ApiUser < User include EppErrors - def epp_code_map + def epp_code_map { '2306' => [ # Parameter policy error [:password, :blank] @@ -16,6 +16,7 @@ class ApiUser < User has_many :certificates validates :username, :password, :registrar, :roles, presence: true + validates :password, length: { minimum: 6 } validates :username, uniqueness: true # TODO: probably cache, because it's requested on every EPP diff --git a/app/models/concerns/versions.rb b/app/models/concerns/versions.rb index eff834218..2cbdca838 100644 --- a/app/models/concerns/versions.rb +++ b/app/models/concerns/versions.rb @@ -20,17 +20,15 @@ module Versions true end - # needs refactoring - # TODO: optimization work - # belongs_to :api_creator, class_name: 'ApiUser', foreign_key: :creator_str - # belongs_to :creator, class_name: 'User', foreign_key: :creator_str def creator return nil if creator_str.blank? - if creator_str =~ /^\d-api-/ - creator = ApiUser.find_by(id: creator_str) - else + if creator_str =~ /^\d+-AdminUser:/ creator = AdminUser.find_by(id: creator_str) + elsif creator_str =~ /^\d+-ApiUser:/ + creator = ApiUser.find_by(id: creator_str) + elsif creator_str =~ /^\d+-api-/ # depricated + creator = ApiUser.find_by(id: creator_str) end creator.present? ? creator : creator_str @@ -39,10 +37,12 @@ module Versions def updator return nil if updator_str.blank? - if updator_str =~ /^\d-api-/ - updator = ApiUser.find_by(id: updator_str) - else + if updator_str =~ /^\d+-AdminUser:/ updator = AdminUser.find_by(id: updator_str) + elsif updator_str =~ /^\d+-ApiUser:/ + updator = ApiUser.find_by(id: updator_str) + elsif updator_str =~ /^\d+-api-/ # depricated + updator = ApiUser.find_by(id: updator_str) end updator.present? ? updator : updator_str diff --git a/app/models/contact.rb b/app/models/contact.rb index 7db3e5ea6..c69797403 100644 --- a/app/models/contact.rb +++ b/app/models/contact.rb @@ -9,7 +9,7 @@ class Contact < ActiveRecord::Base has_many :registrant_domains, class_name: 'Domain', foreign_key: 'registrant_id' # when contant is registrant # TODO: remove later - has_many :depricated_statuses, class_name: 'DepricatedContactStatus', dependent: :destroy + has_many :depricated_statuses, class_name: 'DepricatedContactStatus', dependent: :destroy accepts_nested_attributes_for :legal_documents @@ -30,7 +30,7 @@ class Contact < ActiveRecord::Base validate :ident_valid_format? validate :uniq_statuses? - after_initialize do + after_initialize do self.statuses = [] if statuses.nil? self.status_notes = {} if status_notes.nil? end @@ -42,7 +42,14 @@ class Contact < ActiveRecord::Base before_update :manage_emails def manage_emails return nil unless email_changed? - ContactMailer.email_updated(self).deliver_now + return nil unless deliver_emails == true + emails = [] + emails << [email, email_was] + emails << domains.map(&:registrant_email) if domains.present? + emails = emails.flatten.uniq + emails.each do |e| + ContactMailer.email_updated(e, self).deliver_now + end end before_save :manage_statuses @@ -51,6 +58,9 @@ class Contact < ActiveRecord::Base manage_ok end + # for overwrite when doing children loop + attr_writer :domains_present + scope :current_registrars, ->(id) { where(registrar_id: id) } BIC = 'bic' @@ -113,12 +123,12 @@ class Contact < ActiveRecord::Base # "pendingUpdate" status MUST NOT be combined with either # "clientUpdateProhibited" or "serverUpdateProhibited" status. PENDING_UPDATE = 'pendingUpdate' - # "pendingDelete" MUST NOT be combined with either + # "pendingDelete" MUST NOT be combined with either # "clientDeleteProhibited" or "serverDeleteProhibited" status. - PENDING_DELETE = 'pendingDelete' + PENDING_DELETE = 'pendingDelete' STATUSES = [ - CLIENT_DELETE_PROHIBITED, SERVER_DELETE_PROHIBITED, + CLIENT_DELETE_PROHIBITED, SERVER_DELETE_PROHIBITED, CLIENT_TRANSFER_PROHIBITED, SERVER_TRANSFER_PROHIBITED, CLIENT_UPDATE_PROHIBITED, SERVER_UPDATE_PROHIBITED, OK, PENDING_CREATE, PENDING_DELETE, PENDING_TRANSFER, @@ -132,7 +142,7 @@ class Contact < ActiveRecord::Base SERVER_STATUSES = [ SERVER_UPDATE_PROHIBITED, - SERVER_DELETE_PROHIBITED, + SERVER_DELETE_PROHIBITED, SERVER_TRANSFER_PROHIBITED ] # @@ -156,9 +166,19 @@ class Contact < ActiveRecord::Base end def destroy_orphans - logger.info "#{Time.zone.now.utc} - Destroying orphaned contacts\n" - count = find_orphans.destroy_all.count - logger.info "#{Time.zone.now.utc} - Successfully destroyed #{count} orphaned contacts\n" + STDOUT << "#{Time.zone.now.utc} - Destroying orphaned contacts\n" unless Rails.env.test? + + orphans = find_orphans + + unless Rails.env.test? + orphans.each do |m| + STDOUT << "#{Time.zone.now.utc} Contact.destroy_orphans: ##{m.id}\n" + end + end + + count = orphans.destroy_all.count + + STDOUT << "#{Time.zone.now.utc} - Successfully destroyed #{count} orphaned contacts\n" unless Rails.env.test? end def privs @@ -260,21 +280,11 @@ class Contact < ActiveRecord::Base Country.new(country_code) end - # Find a way to use self.domains with contact - def domains_owned - Domain.where(registrant_id: id) - end - - def relations_with_domain? - return true if domain_contacts.present? || domains_owned.present? - false - end - # TODO: refactor, it should not allow to destroy with normal destroy, # no need separate method # should use only in transaction def destroy_and_clean - if relations_with_domain? + if domains_present? errors.add(:domains, :exist) return false end @@ -311,19 +321,34 @@ class Contact < ActiveRecord::Base def status_notes_array=(notes) self.status_notes = {} notes ||= [] - statuses.each_with_index do |status,i| - self.status_notes[status] = notes[i] + statuses.each_with_index do |status, i| + status_notes[status] = notes[i] end end + # optimization under children loop, + # otherwise bullet will not be happy + def domains_present? + return @domains_present if @domains_present + domain_contacts.present? || registrant_domains.present? + end + def manage_linked - if domains.present? - statuses << LINKED if statuses.detect { |s| s == LINKED }.blank? + if domains_present? + set_linked else - statuses.delete_if { |s| s == LINKED } + unset_linked end end + def set_linked + statuses << LINKED if statuses.detect { |s| s == LINKED }.blank? + end + + def unset_linked + statuses.delete_if { |s| s == LINKED } + end + # rubocop:disable Metrics/CyclomaticComplexity def manage_ok return unset_ok unless valid? diff --git a/app/models/depp/contact.rb b/app/models/depp/contact.rb index 9af836d45..316d78818 100644 --- a/app/models/depp/contact.rb +++ b/app/models/depp/contact.rb @@ -4,7 +4,7 @@ module Depp include DisableHtml5Validation attr_accessor :id, :name, :email, :phone, :org_name, - :ident, :ident_type, :ident_country_code, + :ident, :ident_type, :ident_country_code, :street, :city, :zip, :state, :country_code, :password, :legal_document, :statuses, :code @@ -68,7 +68,7 @@ module Depp zip: res.css('postalInfo addr pc').text, state: res.css('postalInfo addr sp').text, country_code: res.css('postalInfo addr cc').text, - + # authInfo password: res.css('authInfo pw').text, @@ -145,25 +145,26 @@ module Depp end def save - create_xml = Depp::Contact.epp_xml.create( - { - id: { value: code }, - email: { value: email }, - voice: { value: phone }, - postalInfo: { - name: { value: name }, - org: { value: org_name }, - addr: { - street: { value: street }, - city: { value: city }, - pc: { value: zip }, - sp: { value: state }, - cc: { value: country_code } - } + hash = { + id: { value: code }, + postalInfo: { + name: { value: name }, + org: { value: org_name }, + addr: { + street: { value: street }, + city: { value: city }, + sp: { value: state }, + pc: { value: zip }, + cc: { value: country_code } } - }, - extension_xml - ) + }, + voice: { value: phone }, + email: { value: email } + } + + hash[:id] = nil if code.blank? + create_xml = Depp::Contact.epp_xml.create(hash, extension_xml) + data = Depp::Contact.user.request(create_xml) self.id = data.css('id').text handle_errors(data) @@ -191,22 +192,22 @@ module Depp { id: { value: id }, chg: { - voice: { value: phone }, - email: { value: email }, postalInfo: { name: { value: name }, org: { value: org_name }, addr: { street: { value: street }, city: { value: city }, - pc: { value: zip }, sp: { value: state }, + pc: { value: zip }, cc: { value: country_code } } + }, + voice: { value: phone }, + email: { value: email }, + authInfo: { + pw: { value: password } } - }, - authInfo: { - pw: { value: password } } }, extension_xml @@ -250,7 +251,7 @@ module Depp return {} if legal_document.blank? type = legal_document.original_filename.split('.').last.downcase - { + { _anonymus: [ legalDocument: { value: Base64.encode64(legal_document.read), attrs: { type: type } } ] @@ -274,7 +275,7 @@ module Depp ident_type == 'priv' end - def persisted? + def persisted? id.present? end @@ -282,13 +283,13 @@ module Depp data.css('result').each do |x| success_codes = %(1000, 1300, 1301) next if success_codes.include?(x['code']) - + message = "#{x.css('msg').text} #{x.css('value').text}" attr = message.split('[').last.strip.sub(']', '') if message.include?('[') attr = :base if attr.nil? attr = 'phone' if attr == 'voice' attr = 'zip' if attr == 'pc' - errors.add(attr, message) + errors.add(attr, message) end errors.blank? end diff --git a/app/models/depp/domain.rb b/app/models/depp/domain.rb index fa252819e..36dafa128 100644 --- a/app/models/depp/domain.rb +++ b/app/models/depp/domain.rb @@ -36,15 +36,17 @@ module Depp end def create(domain_params) + dns_hash = {} + keys = Domain.create_dnskeys_hash(domain_params) + dns_hash[:_anonymus] = keys if keys.any? + xml = epp_xml.create({ name: { value: domain_params[:name] }, - registrant: { value: domain_params[:registrant] }, period: { value: domain_params[:period].to_s[0], attrs: { unit: domain_params[:period].to_s[1] } }, ns: Domain.create_nameservers_hash(domain_params), + registrant: { value: domain_params[:registrant] }, _anonymus: Domain.create_contacts_hash(domain_params) - }, { - _anonymus: Domain.create_dnskeys_hash(domain_params) - }, Domain.construct_custom_params_hash(domain_params)) + }, dns_hash, Domain.construct_custom_params_hash(domain_params)) current_user.request(xml) end @@ -198,6 +200,8 @@ module Depp custom_params end + # rubocop: disable Metrics/PerceivedComplexity + # rubocop: disable Metrics/CyclomaticComplexity def construct_edit_hash(domain_params, old_domain_params) contacts = array_difference(create_contacts_hash(domain_params), create_contacts_hash(old_domain_params)) add_anon = contacts @@ -205,29 +209,40 @@ module Depp contacts = array_difference(create_contacts_hash(old_domain_params), create_contacts_hash(domain_params)) rem_anon = contacts + add_arr = [] + add_ns = create_nameservers_hash(domain_params) - create_nameservers_hash(old_domain_params) + add_arr << { ns: add_ns } if add_ns.any? + add_arr << { _anonymus: add_anon } if add_anon.any? + + rem_arr = [] + rem_ns = create_nameservers_hash(old_domain_params) - create_nameservers_hash(domain_params) + rem_arr << { ns: rem_ns } if rem_ns.any? + rem_arr << { _anonymus: rem_anon } if rem_anon.any? + if domain_params[:registrant] != old_domain_params[:registrant] chg = [{ registrant: { value: domain_params[:registrant] } }] end + add_arr = nil if add_arr.none? + rem_arr = nil if rem_arr.none? + { name: { value: domain_params[:name] }, chg: chg, - add: [ - { ns: create_nameservers_hash(domain_params) - create_nameservers_hash(old_domain_params) }, - { _anonymus: add_anon } - ], - rem: [ - { ns: create_nameservers_hash(old_domain_params) - create_nameservers_hash(domain_params) }, - { _anonymus: rem_anon } - ] + add: add_arr, + rem: rem_arr } end + # rubocop: enable Metrics/PerceivedComplexity + # rubocop: enable Metrics/CyclomaticComplexity def construct_ext_edit_hash(domain_params, old_domain_params) - { - add: create_dnskeys_hash(domain_params) - create_dnskeys_hash(old_domain_params), - rem: create_dnskeys_hash(old_domain_params) - create_dnskeys_hash(domain_params) - } + rem_keys = create_dnskeys_hash(old_domain_params) - create_dnskeys_hash(domain_params) + add_keys = create_dnskeys_hash(domain_params) - create_dnskeys_hash(old_domain_params) + hash = {} + hash[:rem] = rem_keys if rem_keys.any? + hash[:add] = add_keys if add_keys.any? + hash end def create_nameservers_hash(domain_params) diff --git a/app/models/depp/user.rb b/app/models/depp/user.rb index 4efbd42d9..d510edecd 100644 --- a/app/models/depp/user.rb +++ b/app/models/depp/user.rb @@ -90,7 +90,8 @@ module Depp server.close_connection - rescue OpenSSL::SSL::SSLError + rescue OpenSSL::SSL::SSLError => e + Rails.logger.error "INVALID CERT: #{e}" errors.add(:base, :invalid_cert) end end diff --git a/app/models/domain.rb b/app/models/domain.rb index 70eedccc8..48f8c4960 100644 --- a/app/models/domain.rb +++ b/app/models/domain.rb @@ -5,7 +5,6 @@ class Domain < ActiveRecord::Base # TODO: whois requests ip whitelist for full info for own domains and partial info for other domains # TODO: most inputs should be trimmed before validatation, probably some global logic? - paginates_per 10 # just for showoff belongs_to :registrar belongs_to :registrant @@ -63,21 +62,21 @@ class Domain < ActiveRecord::Base before_create :generate_auth_info before_create :set_validity_dates before_create -> { self.reserved = in_reserved_list?; nil } - before_update :manage_statuses - def manage_statuses - return unless registrant_id_changed? - pending_update! if registrant_verification_asked? - true - end before_save :manage_automatic_statuses - before_save :touch_always_version def touch_always_version self.updated_at = Time.zone.now end - after_save :update_whois_record + before_update :manage_statuses + def manage_statuses + return unless registrant_id_changed? # rollback has not yet happened + pending_update! if registrant_verification_asked? + true + end + + after_save :update_whois_record after_create :update_reserved_domains def update_reserved_domains @@ -183,6 +182,9 @@ class Domain < ActiveRecord::Base ) end + # rubocop: disable Metrics/AbcSize + # rubocop: disable Metrics/CyclomaticComplexity + # rubocop: disable Metrics/PerceivedComplexity def clean_expired_pendings STDOUT << "#{Time.zone.now.utc} - Clean expired domain pendings\n" unless Rails.env.test? @@ -197,19 +199,32 @@ class Domain < ActiveRecord::Base next end count += 1 + if domain.pending_update? + DomainMailer.pending_update_expired_notification_for_new_registrant(domain).deliver_now + end + if domain.pending_delete? + DomainMailer.pending_delete_expired_notification(domain).deliver_now + end domain.clean_pendings! + STDOUT << "#{Time.zone.now.utc} Domain.clean_expired_pendings: ##{domain.id}\n" unless Rails.env.test? end STDOUT << "#{Time.zone.now.utc} - Successfully cancelled #{count} domain pendings\n" unless Rails.env.test? count end + # rubocop: enable Metrics/PerceivedComplexity + # rubocop: enable Metrics/AbcSize + # rubocop: enable Metrics/CyclomaticComplexity + # rubocop: disable Metrics/LineLength def start_expire_period STDOUT << "#{Time.zone.now.utc} - Expiring domains\n" unless Rails.env.test? domains = Domain.where('valid_to <= ?', Time.zone.now) domains.each do |domain| next unless domain.expirable? - domain.set_expired! + domain.set_expired + STDOUT << "#{Time.zone.now.utc} Domain.start_expire_period: ##{domain.id} #{domain.changes}\n" unless Rails.env.test? + domain.save(validate: false) end STDOUT << "#{Time.zone.now.utc} - Successfully expired #{domains.count} domains\n" unless Rails.env.test? @@ -219,12 +234,11 @@ class Domain < ActiveRecord::Base STDOUT << "#{Time.zone.now.utc} - Setting server_hold to domains\n" unless Rails.env.test? d = Domain.where('outzone_at <= ?', Time.zone.now) - d.each do |x| - next unless x.server_holdable? - x.statuses << DomainStatus::SERVER_HOLD - # TODO: This should be managed by automatic_statuses - x.statuses.delete(DomainStatus::OK) - x.save + d.each do |domain| + next unless domain.server_holdable? + domain.statuses << DomainStatus::SERVER_HOLD + STDOUT << "#{Time.zone.now.utc} Domain.start_redemption_grace_period: ##{domain.id} #{domain.changes}\n" unless Rails.env.test? + domain.save end STDOUT << "#{Time.zone.now.utc} - Successfully set server_hold to #{d.count} domains\n" unless Rails.env.test? @@ -234,11 +248,11 @@ class Domain < ActiveRecord::Base STDOUT << "#{Time.zone.now.utc} - Setting delete_candidate to domains\n" unless Rails.env.test? d = Domain.where('delete_at <= ?', Time.zone.now) - d.each do |x| - x.statuses << DomainStatus::DELETE_CANDIDATE if x.delete_candidateable? - # TODO: This should be managed by automatic_statuses - x.statuses.delete(DomainStatus::OK) - x.save + d.each do |domain| + next unless domain.delete_candidateable? + domain.statuses << DomainStatus::DELETE_CANDIDATE + STDOUT << "#{Time.zone.now.utc} Domain.start_delete_period: ##{domain.id} #{domain.changes}\n" unless Rails.env.test? + domain.save end return if Rails.env.test? @@ -252,17 +266,20 @@ class Domain < ActiveRecord::Base c = 0 Domain.where("statuses @> '{deleteCandidate}'::varchar[]").each do |x| x.destroy + STDOUT << "#{Time.zone.now.utc} Domain.destroy_delete_candidates: by deleteCandidate ##{x.id}\n" unless Rails.env.test? c += 1 end Domain.where('force_delete_at <= ?', Time.zone.now).each do |x| x.destroy + STDOUT << "#{Time.zone.now.utc} Domain.destroy_delete_candidates: by force delete time ##{x.id}\n" unless Rails.env.test? c += 1 end STDOUT << "#{Time.zone.now.utc} - Successfully destroyed #{c} domains\n" unless Rails.env.test? end # rubocop:enable Rails/FindEach + # rubocop: enable Metrics/LineLength end def name=(value) @@ -337,10 +354,6 @@ class Domain < ActiveRecord::Base save end - def pending_update? - statuses.include?(DomainStatus::PENDING_UPDATE) - end - def pending_update! return true if pending_update? self.epp_pending_update = true # for epp @@ -350,16 +363,29 @@ class Domain < ActiveRecord::Base token = registrant_verification_token asked_at = registrant_verification_asked_at changes_cache = changes + new_registrant_id = registrant.id + new_registrant_email = registrant.email + new_registrant_name = registrant.name - DomainMailer.registrant_pending_updated(self).deliver_now + DomainMailer.pending_update_request_for_old_registrant(self).deliver_now + DomainMailer.pending_update_notification_for_new_registrant(self).deliver_now reload # revert back to original self.pending_json = pending_json_cache self.registrant_verification_token = token self.registrant_verification_asked_at = asked_at - self.statuses = [DomainStatus::PENDING_UPDATE] + set_pending_update pending_json[:domain] = changes_cache + pending_json[:new_registrant_id] = new_registrant_id + pending_json[:new_registrant_email] = new_registrant_email + pending_json[:new_registrant_name] = new_registrant_name + + # This pending_update! method is triggered by before_update + # Note, all before_save callbacks are excecuted before before_update, + # thus automatic statuses has already excectued by this point + # and we need to trigger automatic statuses manually (second time). + manage_automatic_statuses end # rubocop: disable Metrics/CyclomaticComplexity @@ -399,16 +425,12 @@ class Domain < ActiveRecord::Base self.registrant_verification_token = SecureRandom.hex(42) end - def pending_delete? - statuses.include?(DomainStatus::PENDING_DELETE) - end - def pending_delete! return true if pending_delete? self.epp_pending_delete = true # for epp return true unless registrant_verification_asked? - self.statuses = [DomainStatus::PENDING_DELETE] + set_pending_delete save(validate: false) # should check if this did succeed DomainMailer.pending_deleted(self).deliver_now @@ -547,6 +569,60 @@ class Domain < ActiveRecord::Base save(validate: false) end + def pending_update? + statuses.include?(DomainStatus::PENDING_UPDATE) + end + + def update_prohibited? + pending_update_prohibited? && pending_delete_prohibited? + end + + # TODO: Review the list and disallow epp calls + def pending_update_prohibited? + (statuses & [ + DomainStatus::CLIENT_UPDATE_PROHIBITED, + DomainStatus::SERVER_UPDATE_PROHIBITED, + DomainStatus::PENDING_CREATE, + DomainStatus::PENDING_UPDATE, + DomainStatus::PENDING_DELETE, + DomainStatus::PENDING_RENEW, + DomainStatus::PENDING_TRANSFER + ]).present? + end + + def set_pending_update + if pending_update_prohibited? + logger.info "DOMAIN STATUS UPDATE ISSUE ##{id}: PENDING_UPDATE not allowed to set. [#{statuses}]" + return nil + end + statuses << DomainStatus::PENDING_UPDATE + end + + def pending_delete? + statuses.include?(DomainStatus::PENDING_DELETE) + end + + # TODO: Review the list and disallow epp calls + def pending_delete_prohibited? + (statuses & [ + DomainStatus::CLIENT_DELETE_PROHIBITED, + DomainStatus::SERVER_DELETE_PROHIBITED, + DomainStatus::PENDING_CREATE, + DomainStatus::PENDING_UPDATE, + DomainStatus::PENDING_DELETE, + DomainStatus::PENDING_RENEW, + DomainStatus::PENDING_TRANSFER + ]).present? + end + + def set_pending_delete + if pending_delete_prohibited? + logger.info "DOMAIN STATUS UPDATE ISSUE ##{id}: PENDING_DELETE not allowed to set. [#{statuses}]" + return nil + end + statuses << DomainStatus::PENDING_DELETE + end + def manage_automatic_statuses # domain_statuses.create(value: DomainStatus::DELETE_CANDIDATE) if delete_candidateable? if statuses.empty? && valid? diff --git a/app/models/epp/domain.rb b/app/models/epp/domain.rb index 37cbbfa75..ae571fa4f 100644 --- a/app/models/epp/domain.rb +++ b/app/models/epp/domain.rb @@ -4,22 +4,32 @@ class Epp::Domain < Domain before_validation :manage_permissions def manage_permissions - return unless pending_update? || pending_delete? + return unless update_prohibited? add_epp_error('2304', nil, nil, I18n.t(:object_status_prohibits_operation)) false end before_validation :validate_contacts def validate_contacts - return if contacts.map {|c| c.valid? }.all? + return if contacts.map(&:valid?).all? add_epp_error('2304', nil, nil, I18n.t(:object_status_prohibits_operation)) false end - before_save :update_contact_status - def update_contact_status + before_save :link_contacts + def link_contacts + # Based on bullet report + unlinked_contacts = contacts.select { |c| !c.linked? } # speed up a bit + unlinked_contacts.each do |uc| + uc.domains_present = true # no need to fetch domains again + uc.save(validate: false) + end + end + + after_destroy :unlink_contacts + def unlink_contacts contacts.each do |c| - next if c.linked? + c.domains_present = false c.save(validate: false) end end @@ -94,6 +104,9 @@ class Epp::Domain < Domain [:base, :key_data_not_allowed], [:period, :not_a_number], [:period, :not_an_integer] + ], + '2308' => [ + [:base, :domain_name_blocked, { value: { obj: 'name', val: name_dirty } }] ] } end @@ -134,7 +147,6 @@ class Epp::Domain < Domain at[:reserved_pw] = frame.css('reserved > pw').text # at[:statuses] = domain_statuses_attrs(frame, action) - # binding.pry at[:nameservers_attributes] = nameservers_attrs(frame, action) at[:admin_domain_contacts_attributes] = admin_domain_contacts_attrs(frame, action) at[:tech_domain_contacts_attributes] = tech_domain_contacts_attrs(frame, action) @@ -383,6 +395,7 @@ class Epp::Domain < Domain end # rubocop: disable Metrics/AbcSize + # rubocop: disable Metrics/CyclomaticComplexity def update(frame, current_user, verify = true) return super if frame.blank? at = {}.with_indifferent_access @@ -399,15 +412,20 @@ class Epp::Domain < Domain # at[:statuses] += at_add[:domain_statuses_attributes] - if verify && frame.css('registrant').present? && frame.css('registrant').attr('verified').to_s.downcase != 'yes' + if verify && + Setting.request_confrimation_on_registrant_change_enabled && + frame.css('registrant').present? && + frame.css('registrant').attr('verified').to_s.downcase != 'yes' registrant_verification_asked!(frame.to_s, current_user.id) end self.deliver_emails = true # turn on email delivery for epp errors.empty? && super(at) end # rubocop: enable Metrics/AbcSize + # rubocop: enable Metrics/CyclomaticComplexity def apply_pending_update! + old_registrant_email = DomainMailer.registrant_updated_notification_for_old_registrant(self) preclean_pendings user = ApiUser.find(pending_json['current_user_id']) frame = Nokogiri::XML(pending_json['frame']) @@ -416,7 +434,8 @@ class Epp::Domain < Domain return unless update(frame, user, false) clean_pendings! self.deliver_emails = true # turn on email delivery for epp - DomainMailer.registrant_updated(self).deliver_now + DomainMailer.registrant_updated_notification_for_new_registrant(self).deliver_now + old_registrant_email.deliver_now end def apply_pending_delete! @@ -424,6 +443,7 @@ class Epp::Domain < Domain user = ApiUser.find(pending_json['current_user_id']) frame = Nokogiri::XML(pending_json['frame']) statuses.delete(DomainStatus::PENDING_DELETE) + DomainMailer.delete_confirmation(self).deliver_now clean_pendings! if epp_destroy(frame, user, false) end @@ -440,7 +460,10 @@ class Epp::Domain < Domain def epp_destroy(frame, user_id, verify = true) return false unless valid? - if verify && frame.css('delete').attr('verified').to_s.downcase != 'yes' + if verify && + Setting.request_confirmation_on_domain_deletion_enabled && + frame.css('delete').attr('verified').to_s.downcase != 'yes' + registrant_verification_asked!(frame.to_s, user_id) self.deliver_emails = true # turn on email delivery for epp pending_delete! @@ -519,7 +542,7 @@ class Epp::Domain < Domain return if registrant.registrar_id == registrar_id is_other_domains_contact = DomainContact.where('contact_id = ? AND domain_id != ?', registrant_id, id).count > 0 - if registrant.domains_owned.count > 1 || is_other_domains_contact + if registrant.registrant_domains.count > 1 || is_other_domains_contact oc = copy_and_transfer_contact(registrant_id, registrar_id) self.registrant_id = oc.id else diff --git a/app/models/invoice.rb b/app/models/invoice.rb index f55851849..83145553b 100644 --- a/app/models/invoice.rb +++ b/app/models/invoice.rb @@ -29,7 +29,7 @@ class Invoice < ActiveRecord::Base return if number <= Setting.invoice_number_max.to_i - errors.add(:base, I18n.t('failed_to_generate_invoice')) + errors.add(:base, I18n.t('failed_to_generate_invoice_invoice_number_limit_reached')) logger.error('INVOICE NUMBER LIMIT REACHED, COULD NOT GENERATE INVOICE') false end @@ -45,6 +45,12 @@ class Invoice < ActiveRecord::Base 'due_date < ? AND cancelled_at IS NULL', cr_at ) + unless Rails.env.test? + invoices.each do |m| + STDOUT << "#{Time.zone.now.utc} Invoice.cancel_overdue_invoices: ##{m.id}\n" + end + end + count = invoices.update_all(cancelled_at: Time.zone.now) STDOUT << "#{Time.zone.now.utc} - Successfully cancelled #{count} overdue invoices\n" unless Rails.env.test? diff --git a/app/models/pricelist.rb b/app/models/pricelist.rb index bb37ad0e1..cc7b898ea 100644 --- a/app/models/pricelist.rb +++ b/app/models/pricelist.rb @@ -1,7 +1,12 @@ class Pricelist < ActiveRecord::Base include Versions # version/pricelist_version.rb - scope :valid, -> { where("valid_from <= ? AND valid_to >= ? OR valid_to IS NULL", Time.zone.now, Time.zone.now) } + scope :valid, lambda { + where( + "valid_from <= ? AND valid_to >= ? OR valid_to IS NULL", + Time.zone.now.end_of_day, Time.zone.now.beginning_of_day + ) + } monetize :price_cents diff --git a/app/models/registrar.rb b/app/models/registrar.rb index 1da3f2d20..d5ba8bd9a 100644 --- a/app/models/registrar.rb +++ b/app/models/registrar.rb @@ -72,10 +72,11 @@ class Registrar < ActiveRecord::Base end # rubocop:disable Metrics/MethodLength + # rubocop:disable Metrics/AbcSize def issue_prepayment_invoice(amount, description = nil) invoices.create( invoice_type: 'DEB', - due_date: Time.zone.now.to_date + 1.day, + due_date: (Time.zone.now.to_date + Setting.days_to_keep_invoices_active.days).end_of_day, payment_term: 'prepayment', description: description, currency: 'EUR', @@ -117,6 +118,7 @@ class Registrar < ActiveRecord::Base ] ) end + # rubocop:enable Metrics/AbcSize # rubocop:enable Metrics/MethodLength def cash_account diff --git a/app/validators/domain_name_validator.rb b/app/validators/domain_name_validator.rb index 79fec0291..471565c30 100644 --- a/app/validators/domain_name_validator.rb +++ b/app/validators/domain_name_validator.rb @@ -3,7 +3,7 @@ class DomainNameValidator < ActiveModel::EachValidator if !self.class.validate_format(value) record.errors[attribute] << (options[:message] || record.errors.generate_message(attribute, :invalid)) elsif !self.class.validate_blocked(value) - record.errors.add(attribute, (options[:message] || record.errors.generate_message(attribute, :blocked))) + record.errors.add(:base, :domain_name_blocked) end end diff --git a/app/views/admin/contacts/partials/_domains.haml b/app/views/admin/contacts/partials/_domains.haml index 142c06397..0c319127b 100644 --- a/app/views/admin/contacts/partials/_domains.haml +++ b/app/views/admin/contacts/partials/_domains.haml @@ -8,7 +8,7 @@ %th{class: 'col-xs-4'}= t(:registrar) %th{class: 'col-xs-4'}= t(:valid_to) %tbody - - @contact.domains_owned.each do |x| + - @contact.registrant_domains.each do |x| %tr %td= link_to(x.name, [:admin, x]) %td= link_to(x.registrar, [:admin, x.registrar]) diff --git a/app/views/admin/domains/index.haml b/app/views/admin/domains/index.haml index 8f60fb2a6..d6c2a9be9 100644 --- a/app/views/admin/domains/index.haml +++ b/app/views/admin/domains/index.haml @@ -2,16 +2,53 @@ .row .col-md-12 - = search_form_for [:admin, @q], html: { class: 'form-horizontal' } do |f| - .col-md-11 - .form-group - = f.search_field :name_cont, class: 'form-control' - .col-md-1.text-right.text-center-xs - .form-group + = search_form_for [:admin, @q], html: { style: 'margin-bottom: 0;', class: 'js-form', autocomplete: 'off' } do |f| + .row + .col-md-3 + .form-group + = f.label :name + = f.search_field :name_matches, value: params[:q][:name_matches], class: 'form-control', placeholder: t(:name) + .col-md-3 + .form-group + = f.label t(:registrant_ident) + = f.search_field :registrant_ident_eq, class: 'form-control', placeholder: t(:registrant_ident) + .col-md-3 + .form-group + = f.label t(:contact_ident) + = f.search_field :contacts_ident_eq, class: 'form-control', placeholder: t(:contact_ident) + .col-md-3 + .form-group + = f.label t(:nameserver_hostname) + = f.search_field :nameservers_hostname_eq, class: 'form-control', placeholder: t(:nameserver_hostname) + .row + .col-md-6 + .form-group + = f.label t(:registrar) + = f.select :registrar_id_eq, Registrar.all.map { |x| [x, x.id] }, { include_blank: true }, class: 'form-control selectize', placeholder: t(:choose) + .col-md-3 + .form-group + = f.label t(:valid_to_from) + = f.search_field :valid_to_gteq, value: params[:q][:valid_to_gteq], class: 'form-control datepicker', placeholder: t(:valid_to_from) + .col-md-3 + .form-group + = f.label t(:valid_to_until) + = f.search_field :valid_to_lteq, value: params[:q][:valid_to_lteq], class: 'form-control datepicker', placeholder: t(:valid_to_until) + .row + .col-md-6 + .form-group + = label_tag t(:status) + = select_tag :statuses_contains, options_for_select(DomainStatus::STATUSES, params[:statuses_contains]), { multiple: true, placeholder: t(:choose), class: 'form-control js-combobox' } + .col-md-3 + .form-group + = label_tag t(:results_per_page) + = text_field_tag :results_per_page, params[:results_per_page], class: 'form-control', placeholder: t(:results_per_page) + .col-md-3{style: 'padding-top: 25px;'} %button.btn.btn-primary   %span.glyphicon.glyphicon-search   + %button.btn.btn-default.js-reset-form + = t(:clear_fields) %hr .row .col-md-12 @@ -38,5 +75,13 @@ %td= l(x.valid_to, format: :short) %td= link_to(x.registrar, admin_registrar_path(x.registrar)) if x.registrar .row - .col-md-12 + .col-md-6 = paginate @domains + .col-md-6.text-right + .pagination + = t(:result_count, count: @domains.total_count) + +:coffee + $(".js-reset-form").on "click", (e) -> + e.preventDefault(); + window.location = "#{admin_domains_path}" diff --git a/app/views/admin/epp_logs/show.haml b/app/views/admin/epp_logs/show.haml index 0840360f7..583124af7 100644 --- a/app/views/admin/epp_logs/show.haml +++ b/app/views/admin/epp_logs/show.haml @@ -31,7 +31,7 @@ %dd= @epp_log.created_at .row - .col-md-6 + .col-md-12 .panel.panel-default .panel-heading %h3.panel-title= t(:request) @@ -43,7 +43,8 @@ = formatted_req - else = @epp_log.request - .col-md-6 +.row + .col-md-12 .panel.panel-default .panel-heading %h3.panel-title= t(:response) diff --git a/app/views/admin/invoices/index.haml b/app/views/admin/invoices/index.haml index 837300133..75b6285a4 100644 --- a/app/views/admin/invoices/index.haml +++ b/app/views/admin/invoices/index.haml @@ -1,7 +1,6 @@ - content_for :actions do = link_to(t(:add), new_admin_invoice_path, class: 'btn btn-primary') = render 'shared/title', name: t(:invoices) - .row .col-md-12 .table-responsive @@ -24,10 +23,10 @@ - if x.cancelled? %td.text-grey= t(:cancelled) - else - %td= l(x.due_date) + %td= l(x.due_date, format: :date_long) - if x.binded? - %td= l(x.receipt_date) + %td= l(x.receipt_date, format: :date_long) - elsif x.cancelled? %td.text-grey= t(:cancelled) - else diff --git a/app/views/admin/invoices/new.haml b/app/views/admin/invoices/new.haml index 3b10341af..920b11903 100644 --- a/app/views/admin/invoices/new.haml +++ b/app/views/admin/invoices/new.haml @@ -4,7 +4,8 @@ = form_for([:admin, @deposit], url: admin_invoices_path, method: :post, html: { class: 'form-horizontal' }) do |f| = render 'shared/full_errors', object: @deposit - + - if @invoice + = render 'shared/full_errors', object: @invoice .row .col-md-8 .form-group diff --git a/app/views/admin/pricelists/edit.haml b/app/views/admin/pricelists/edit.haml index 329f7979b..4330b6240 100644 --- a/app/views/admin/pricelists/edit.haml +++ b/app/views/admin/pricelists/edit.haml @@ -2,5 +2,13 @@ .col-sm-6 %h2.text-center-xs= "#{t(:edit)}: #{@pricelist.name}" +- if @pricelist.persisted? && @pricelist.errors.none? + %hr + - active_pricelist = Pricelist.pricelist_for(@pricelist.category, @pricelist.operation_category, @pricelist.duration) + - if active_pricelist + = t('active_price_for_this_operation_is', price: "#{active_pricelist.price.amount.to_s} #{active_pricelist.price_currency}") + - else + = t('active_price_missing_for_this_operation') + %hr = render 'form' diff --git a/app/views/admin/pricelists/index.haml b/app/views/admin/pricelists/index.haml index 15a6b9c6b..2f51a4329 100644 --- a/app/views/admin/pricelists/index.haml +++ b/app/views/admin/pricelists/index.haml @@ -14,10 +14,10 @@ %tr %th{class: 'col-xs-2'} = sort_link(@q, 'category', t(:category)) - %th{class: 'col-xs-2'} - = sort_link(@q, 'operation_category', t(:operation)) %th{class: 'col-xs-2'} = sort_link(@q, 'duration', t(:duration)) + %th{class: 'col-xs-2'} + = sort_link(@q, 'operation_category', t(:operation)) %th{class: 'col-xs-2'} = sort_link(@q, 'price', t(:price)) %th{class: 'col-xs-2'} @@ -26,13 +26,13 @@ = sort_link(@q, 'valid_to', t(:valid_to)) %th{class: 'col-xs-2'} = t(:action) - + %tbody - @pricelists.each do |pricelist| %tr %td= pricelist.category - %td= pricelist.operation_category %td= pricelist.duration + %td= pricelist.operation_category %td= pricelist.price %td= l(pricelist.valid_from, format: :ydate) %td= l(pricelist.valid_to, format: :ydate) diff --git a/app/views/admin/settings/index.haml b/app/views/admin/settings/index.haml index b47a23384..2c46c1f2e 100644 --- a/app/views/admin/settings/index.haml +++ b/app/views/admin/settings/index.haml @@ -52,6 +52,8 @@ = render 'setting_row', var: :client_side_status_editing_enabled = render 'setting_row', var: :api_ip_whitelist_enabled = render 'setting_row', var: :registrar_ip_whitelist_enabled + = render 'setting_row', var: :request_confrimation_on_registrant_change_enabled + = render 'setting_row', var: :request_confirmation_on_domain_deletion_enabled .panel.panel-default .panel-heading.clearfix @@ -65,6 +67,7 @@ %tbody = render 'setting_row', var: :invoice_number_min = render 'setting_row', var: :invoice_number_max + = render 'setting_row', var: :days_to_keep_invoices_active = render 'setting_row', var: :days_to_keep_overdue_invoices_active = render 'setting_row', var: :registry_billing_email = render 'setting_row', var: :registry_invoice_contact diff --git a/app/views/epp/contacts/check.xml.builder b/app/views/epp/contacts/check.xml.builder index f4dcdea82..4d342fad4 100644 --- a/app/views/epp/contacts/check.xml.builder +++ b/app/views/epp/contacts/check.xml.builder @@ -5,7 +5,7 @@ xml.epp_head do end xml.resData do - xml.tag!('contact:chkData', 'xmlns:contact' => 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd') do + xml.tag!('contact:chkData', 'xmlns:contact' => 'https://epp.tld.ee/schema/contact-eis-1.0.xsd') do @results.each do |result| xml.tag!('contact:cd') do xml.tag! "contact:id", result[:code], avail: result[:avail] diff --git a/app/views/epp/contacts/create.xml.builder b/app/views/epp/contacts/create.xml.builder index 1a4da8473..2d2c40097 100644 --- a/app/views/epp/contacts/create.xml.builder +++ b/app/views/epp/contacts/create.xml.builder @@ -5,7 +5,7 @@ xml.epp_head do end xml.resData do - xml.tag!('contact:creData', 'xmlns:contact' => 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd') do + xml.tag!('contact:creData', 'xmlns:contact' => 'https://epp.tld.ee/schema/contact-eis-1.0.xsd') do xml.tag!('contact:id', @contact.code) xml.tag!('contact:crDate', @contact.created_at.try(:iso8601)) end diff --git a/app/views/epp/contacts/info.xml.builder b/app/views/epp/contacts/info.xml.builder index 30afc4196..ea6306839 100644 --- a/app/views/epp/contacts/info.xml.builder +++ b/app/views/epp/contacts/info.xml.builder @@ -5,7 +5,7 @@ xml.epp_head do end xml.resData do - xml.tag!('contact:infData', 'xmlns:contact' => 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd') do + xml.tag!('contact:infData', 'xmlns:contact' => 'https://epp.tld.ee/schema/contact-eis-1.0.xsd') do xml.tag!('contact:id', @contact.code) xml.tag!('contact:roid', @contact.roid) @@ -55,7 +55,7 @@ xml.epp_head do end if can? :view_full_info, @contact, @password xml.tag!('extension') do - xml.tag!('eis:extdata', 'xmlns:eis' => 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd') do + xml.tag!('eis:extdata', 'xmlns:eis' => 'https://epp.tld.ee/schema/eis-1.0.xsd') do xml.tag!('eis:ident', @contact.ident, type: @contact.ident_type, cc: @contact.ident_country_code) end diff --git a/app/views/epp/contacts/update.xml.builder b/app/views/epp/contacts/update.xml.builder index 1a4da8473..2d2c40097 100644 --- a/app/views/epp/contacts/update.xml.builder +++ b/app/views/epp/contacts/update.xml.builder @@ -5,7 +5,7 @@ xml.epp_head do end xml.resData do - xml.tag!('contact:creData', 'xmlns:contact' => 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd') do + xml.tag!('contact:creData', 'xmlns:contact' => 'https://epp.tld.ee/schema/contact-eis-1.0.xsd') do xml.tag!('contact:id', @contact.code) xml.tag!('contact:crDate', @contact.created_at.try(:iso8601)) end diff --git a/app/views/epp/domains/check.xml.builder b/app/views/epp/domains/check.xml.builder index 8441f4118..903cee769 100644 --- a/app/views/epp/domains/check.xml.builder +++ b/app/views/epp/domains/check.xml.builder @@ -5,7 +5,7 @@ xml.epp_head do end xml.resData do - xml.tag!('domain:chkData', 'xmlns:domain' => 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd') do + xml.tag!('domain:chkData', 'xmlns:domain' => 'https://epp.tld.ee/schema/domain-eis-1.0.xsd') do @domains.each do |x| xml.tag!('domain:cd') do xml.tag!('domain:name', x[:name], 'avail' => x[:avail]) diff --git a/app/views/epp/domains/create.xml.builder b/app/views/epp/domains/create.xml.builder index dd22fb0b8..213a2aa8f 100644 --- a/app/views/epp/domains/create.xml.builder +++ b/app/views/epp/domains/create.xml.builder @@ -5,7 +5,7 @@ xml.epp_head do end xml.resData do - xml.tag!('domain:creData', 'xmlns:domain' => 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd') do + xml.tag!('domain:creData', 'xmlns:domain' => 'https://epp.tld.ee/schema/domain-eis-1.0.xsd') do xml.tag!('domain:name', @domain.name) xml.tag!('domain:crDate', @domain.created_at.try(:iso8601)) xml.tag!('domain:exDate', @domain.valid_to.try(:iso8601)) diff --git a/app/views/epp/domains/info.xml.builder b/app/views/epp/domains/info.xml.builder index ebaf613d5..c4827f29f 100644 --- a/app/views/epp/domains/info.xml.builder +++ b/app/views/epp/domains/info.xml.builder @@ -5,7 +5,7 @@ xml.epp_head do end xml.resData do - xml.tag!('domain:infData', 'xmlns:domain' => 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd') do + xml.tag!('domain:infData', 'xmlns:domain' => 'https://epp.tld.ee/schema/domain-eis-1.0.xsd') do xml.tag!('domain:name', @domain.name) xml.tag!('domain:roid', @domain.roid) @domain.statuses.each do |s| diff --git a/app/views/epp/domains/partials/_transfer.xml.builder b/app/views/epp/domains/partials/_transfer.xml.builder index a98cf231e..13daf8014 100644 --- a/app/views/epp/domains/partials/_transfer.xml.builder +++ b/app/views/epp/domains/partials/_transfer.xml.builder @@ -1,4 +1,4 @@ -builder.tag!('domain:trnData', 'xmlns:domain' => 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd') do +builder.tag!('domain:trnData', 'xmlns:domain' => 'https://epp.tld.ee/schema/domain-eis-1.0.xsd') do builder.tag!('domain:name', dt.domain_name) builder.tag!('domain:trStatus', dt.status) builder.tag!('domain:reID', dt.transfer_to.code) diff --git a/app/views/epp/domains/renew.xml.builder b/app/views/epp/domains/renew.xml.builder index b970b322e..5d03c7128 100644 --- a/app/views/epp/domains/renew.xml.builder +++ b/app/views/epp/domains/renew.xml.builder @@ -5,7 +5,7 @@ xml.epp_head do end xml.resData do - xml.tag!('domain:renData', 'xmlns:domain' => 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd') do + xml.tag!('domain:renData', 'xmlns:domain' => 'https://epp.tld.ee/schema/domain-eis-1.0.xsd') do xml.tag!('domain:name', @domain[:name]) xml.tag!('domain:exDate', @domain.valid_to.try(:iso8601)) end diff --git a/app/views/epp/poll/poll_keyrelay.xml.builder b/app/views/epp/poll/poll_keyrelay.xml.builder index 9e245bd3e..a2fed7915 100644 --- a/app/views/epp/poll/poll_keyrelay.xml.builder +++ b/app/views/epp/poll/poll_keyrelay.xml.builder @@ -2,7 +2,7 @@ xml.instruct!(:xml, standalone: 'no') xml.epp( 'xmlns' => 'urn:ietf:params:xml:ns:epp-1.0', 'xmlns:secDNS' => 'urn:ietf:params:xml:ns:secDNS-1.1', - 'xmlns:domain' => 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd', + 'xmlns:domain' => 'https://epp.tld.ee/schema/domain-eis-1.0.xsd', 'xmlns:keyrelay' => 'urn:ietf:params:xml:ns:keyrelay-1.0' ) do xml.response do diff --git a/app/views/epp/sessions/greeting.xml.builder b/app/views/epp/sessions/greeting.xml.builder index 34a983aca..308de3c59 100644 --- a/app/views/epp/sessions/greeting.xml.builder +++ b/app/views/epp/sessions/greeting.xml.builder @@ -5,13 +5,13 @@ xml.epp_head do xml.svcMenu do xml.version '1.0' xml.lang 'en' - xml.objURI 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd' - xml.objURI 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd' + xml.objURI 'https://epp.tld.ee/schema/domain-eis-1.0.xsd' + xml.objURI 'https://epp.tld.ee/schema/contact-eis-1.0.xsd' xml.objURI 'urn:ietf:params:xml:ns:host-1.0' xml.objURI 'urn:ietf:params:xml:ns:keyrelay-1.0' xml.svcExtension do xml.extURI 'urn:ietf:params:xml:ns:secDNS-1.1' - xml.extURI 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd' + xml.extURI 'https://epp.tld.ee/schema/eis-1.0.xsd' end end diff --git a/app/views/layouts/registrar/application.haml b/app/views/layouts/registrar/application.haml index 8b92a5b6d..d6c8cf30c 100644 --- a/app/views/layouts/registrar/application.haml +++ b/app/views/layouts/registrar/application.haml @@ -49,8 +49,15 @@ %li{class: active_class}= link_to t(:xml_console), registrar_xml_console_path %ul.nav.navbar-nav.navbar-right + %li.dropdown + %a.dropdown-toggle{"data-toggle" => "dropdown", href: "#"} + = "#{current_user} (#{current_user.roles.first}) - #{current_user.registrar}" + %span.caret + %ul.dropdown-menu{role: "menu"} + - ApiUser.where(identity_code: current_user.identity_code).includes(:registrar).each do |x| + %li= link_to "#{x} (#{x.roles.first}) - #{x.registrar}", "/registrar/switch_user/#{x.id}" - if user_signed_in? - %li= link_to t(:log_out, user: current_user), '/registrar/logout' + %li= link_to t(:log_out_), '/registrar/logout' .container = render 'shared/flash' diff --git a/app/views/contact_mailer/email_updated.html.erb b/app/views/mailers/contact_mailer/email_updated.html.erb similarity index 93% rename from app/views/contact_mailer/email_updated.html.erb rename to app/views/mailers/contact_mailer/email_updated.html.erb index e4785444b..552e97cdf 100644 --- a/app/views/contact_mailer/email_updated.html.erb +++ b/app/views/mailers/contact_mailer/email_updated.html.erb @@ -29,9 +29,9 @@ Eesti Interneti SA

Hi <%= @contact.name %>

-E-mail address of <% @contact.name %> has been changed
-previous address: <% @contact.email_was %>
-new address: <% @contact.email %> +E-mail address of <%= @contact.name %> has been changed
+previous address: <%= @contact.email_was %>
+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 %>

diff --git a/app/views/contact_mailer/email_updated.text.erb b/app/views/mailers/contact_mailer/email_updated.text.erb similarity index 93% rename from app/views/contact_mailer/email_updated.text.erb rename to app/views/mailers/contact_mailer/email_updated.text.erb index 61d875351..ce43b5401 100644 --- a/app/views/contact_mailer/email_updated.text.erb +++ b/app/views/mailers/contact_mailer/email_updated.text.erb @@ -29,9 +29,9 @@ Eesti Interneti SA Hi <%= @contact.name %> -E-mail address of <% @contact.name %> has been changed -previous address: <% @contact.email_was %> -new address: <% @contact.email %> +E-mail address of <%= @contact.name %> has been changed +previous address: <%= @contact.email_was %> +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 %> diff --git a/app/views/mailers/domain_mailer/delete_confirmation.html.erb b/app/views/mailers/domain_mailer/delete_confirmation.html.erb new file mode 100644 index 000000000..acc915787 --- /dev/null +++ b/app/views/mailers/domain_mailer/delete_confirmation.html.erb @@ -0,0 +1,15 @@ +Tere, +

+Domeeni <%= @domain.name %> kustutamise taotlus on registreerija poolt kinnitatud. Domeen <%= @domain.name %> on peatatud ja kustub registrist. +

+Lugupidamisega
+Eesti Interneti SA +

+
+

+Hi, +

+Domain <%= @domain.name %> deletion confirmed and will be deleted. +

+Best Regards,
+Estonian Internet Foundation diff --git a/app/views/mailers/domain_mailer/delete_confirmation.text.erb b/app/views/mailers/domain_mailer/delete_confirmation.text.erb new file mode 100644 index 000000000..a587b7f78 --- /dev/null +++ b/app/views/mailers/domain_mailer/delete_confirmation.text.erb @@ -0,0 +1,15 @@ +Tere, + +Domeeni <%= @domain.name %> kustutamise taotlus on registreerija poolt kinnitatud. Domeen <%= @domain.name %> on peatatud ja kustub registrist. + +Lugupidamisega +Eesti Interneti SA + +-------------------------------------- + +Hi, + +Domain <%= @domain.name %> deletion confirmed and will be deleted. + +Best Regards, +Estonian Internet Foundation diff --git a/app/views/mailers/domain_mailer/pending_delete_expired_notification.html.erb b/app/views/mailers/domain_mailer/pending_delete_expired_notification.html.erb new file mode 100644 index 000000000..c5ed71c39 --- /dev/null +++ b/app/views/mailers/domain_mailer/pending_delete_expired_notification.html.erb @@ -0,0 +1,15 @@ +Tere, +

+Domeeni <%= @domain.name %> kustutamise taotlust ei kinnitatud tähtaegselt registreerija <%= @domain.registrant_name %> poolt. Domeeni <%= @domain.name %> kustutamine on sellest tulenevalt tühistatud. +

+Lugupidamisega
+Eesti Interneti SA +

+
+

+Hi, +

+Domain <%= @domain.name %> deletion cancelled. +

+Best Regards,
+Estonian Internet Foundation diff --git a/app/views/mailers/domain_mailer/pending_delete_expired_notification.text.erb b/app/views/mailers/domain_mailer/pending_delete_expired_notification.text.erb new file mode 100644 index 000000000..5ff510820 --- /dev/null +++ b/app/views/mailers/domain_mailer/pending_delete_expired_notification.text.erb @@ -0,0 +1,15 @@ +Tere, + +Domeeni <%= @domain.name %> kustutamise taotlust ei kinnitatud tähtaegselt registreerija <%= @domain.registrant_name %> poolt. Domeeni <%= @domain.name %> kustutamine on sellest tulenevalt tühistatud. + +Lugupidamisega +Eesti Interneti SA + +-------------------------------------- + +Hi, + +Domain <%= @domain.name %> deletion cancelled. + +Best Regards, +Estonian Internet Foundation diff --git a/app/views/mailers/domain_mailer/pending_delete_rejected_notification.html.erb b/app/views/mailers/domain_mailer/pending_delete_rejected_notification.html.erb new file mode 100644 index 000000000..e89a02327 --- /dev/null +++ b/app/views/mailers/domain_mailer/pending_delete_rejected_notification.html.erb @@ -0,0 +1,15 @@ +Tere, +

+Domeeni <%= @domain.name %> kustutamise taotlus on registreerija <%= @domain.registrar_name %> poolt tagasi lükatud. +

+Lugupidamisega
+Eesti Interneti SA +

+
+

+Hi, +

+Domain <%= @domain.name %> deletion rejected. +

+Best Regards,
+Estonian Internet Foundation diff --git a/app/views/mailers/domain_mailer/pending_delete_rejected_notification.text.erb b/app/views/mailers/domain_mailer/pending_delete_rejected_notification.text.erb new file mode 100644 index 000000000..d3600a3c7 --- /dev/null +++ b/app/views/mailers/domain_mailer/pending_delete_rejected_notification.text.erb @@ -0,0 +1,15 @@ +Tere, + +Domeeni <%= @domain.name %> kustutamise taotlus on registreerija <%= @domain.registrar_name %> poolt tagasi lükatud. + +Lugupidamisega +Eesti Interneti SA + +-------------------------------------- + +Hi, + +Domain <%= @domain.name %> deletion rejected. + +Best Regards, +Estonian Internet Foundation diff --git a/app/views/domain_mailer/pending_deleted.html.erb b/app/views/mailers/domain_mailer/pending_deleted.html.erb similarity index 100% rename from app/views/domain_mailer/pending_deleted.html.erb rename to app/views/mailers/domain_mailer/pending_deleted.html.erb diff --git a/app/views/domain_mailer/pending_deleted.text.erb b/app/views/mailers/domain_mailer/pending_deleted.text.erb similarity index 100% rename from app/views/domain_mailer/pending_deleted.text.erb rename to app/views/mailers/domain_mailer/pending_deleted.text.erb diff --git a/app/views/mailers/domain_mailer/pending_update_expired_notification_for_new_registrant.html.erb b/app/views/mailers/domain_mailer/pending_update_expired_notification_for_new_registrant.html.erb new file mode 100644 index 000000000..a8bf8723d --- /dev/null +++ b/app/views/mailers/domain_mailer/pending_update_expired_notification_for_new_registrant.html.erb @@ -0,0 +1,19 @@ +Tere, +

+Domeeni <%= @domain.name %> registreerija <%= @domain.registrant_name %> ei kinnitanud tähtaegselt registreerija vahetuse taotlust. Domeeni <%= @domain.name %> registreerija vahetus on sellest tulenevalt tühistatud. +

+Küsimuste korral palun võtke ühendust registripidajaga <%= @domain.registrar_name %>, kelle kontaktid leiate http://internet.ee/registripidajad/akrediteeritud-registripidajad +

+Lugupidamisega
+Eesti Interneti SA +

+
+

+Hi, +

+Domain registrant change has been expired for the domain <%= @domain.name %>. +

+Please contact to your registrar <%= @domain.registrar_name %> if you have any questions. +

+Best Regards,
+Estonian Internet Foundation diff --git a/app/views/mailers/domain_mailer/pending_update_expired_notification_for_new_registrant.text.erb b/app/views/mailers/domain_mailer/pending_update_expired_notification_for_new_registrant.text.erb new file mode 100644 index 000000000..020a9da65 --- /dev/null +++ b/app/views/mailers/domain_mailer/pending_update_expired_notification_for_new_registrant.text.erb @@ -0,0 +1,19 @@ +Tere, + +Domeeni <%= @domain.name %> registreerija <%= @domain.registrant_name %> ei kinnitanud tähtaegselt registreerija vahetuse taotlust. Domeeni <%= @domain.name %> registreerija vahetus on sellest tulenevalt tühistatud. + +Küsimuste korral palun võtke ühendust registripidajaga <%= @domain.registrar_name %>, kelle kontaktid leiate http://internet.ee/registripidajad/akrediteeritud-registripidajad + +Lugupidamisega +Eesti Interneti SA + +-------------------------------------- + +Hi, + +Domain registrant change has been expired for the domain <%= @domain.name %>. + +Please contact to your registrar <%= @domain.registrar_name %> if you have any questions. + +Best Regards, +Estonian Internet Foundation diff --git a/app/views/mailers/domain_mailer/pending_update_notification_for_new_registrant.html.erb b/app/views/mailers/domain_mailer/pending_update_notification_for_new_registrant.html.erb new file mode 100644 index 000000000..df31c9139 --- /dev/null +++ b/app/views/mailers/domain_mailer/pending_update_notification_for_new_registrant.html.erb @@ -0,0 +1,47 @@ +Tere, +

+Registripidaja <%= @domain.registrar_name %> vahendusel on algatatud <%= @domain.name %> domeeni omanikuvahetuse protseduur. +

+Palun veenduge, et muudatus on korrektne ning probleemide korral pöörduge oma registripidaja poole. Teie registripidaja on <%= @domain.registrar_name %> +

+Uued registreerija andmed:
+Nimi: <%= @domain.registrant_name %>
+<% if @domain.registrant.priv? %> + Isikukood: <%= @domain.registrant_ident %>
+<% else %> + Äriregistrikood: <%= @domain.registrant_ident %>
+<% end %> +Tänav: <%= @domain.registrant_street %>
+Linn: <%= @domain.registrant_city %>
+Riik: <%= @domain.registrant_country %> +

+Juhime Teie tähelepanu asjaolule, et omanikuvahetuse protseduur viiaks lõpule vaid juhul, kui domeeni hetkel kehtiv registreerija <%= @old_registrant.name %> omanikuvahetuse tähtaegselt kinnitab. +

+Juhul kui <%= @old_registrant.name %> lükkab omanikuvahtuse taotluse tagasi või ei anna kinnitust enne <%= Setting.expire_pending_confirmation %> tundi, omanikuvahetuse protseduur tühistatakse. +

+Küsimuste korral palun võtke ühendust registripidajaga <%= @domain.registrar_name %>, kelle kontaktid leiate http://internet.ee/registripidajad/akrediteeritud-registripidajad +

+Lugupidamisega
+Eesti Interneti SA +

+
+

+Hi, +

+Registrant change process for the domain <%= @domain.name %> has been started. +

+New registrant:
+Name: <%= @domain.registrant_name %>
+<% if @domain.registrant.priv? %> +Personal code: <%= @domain.registrant_ident %>
+<% else %> +Business Registry code: <%= @domain.registrant_ident %>
+<% end %> +Street: <%= @domain.registrant_street %>
+City: <%= @domain.registrant_city %>
+Country: <%= @domain.registrant_country %> +

+Please contact to your registrar <%= @domain.registrar_name %> if you have any questions. +

+Best Regards,
+Estonian Internet Foundation diff --git a/app/views/mailers/domain_mailer/pending_update_notification_for_new_registrant.text.erb b/app/views/mailers/domain_mailer/pending_update_notification_for_new_registrant.text.erb new file mode 100644 index 000000000..80265c05f --- /dev/null +++ b/app/views/mailers/domain_mailer/pending_update_notification_for_new_registrant.text.erb @@ -0,0 +1,47 @@ +Tere, + +Registripidaja <%= @domain.registrar_name %> vahendusel on algatatud <%= @domain.name %> domeeni omanikuvahetuse protseduur. + +Palun veenduge, et muudatus on korrektne ning probleemide korral pöörduge oma registripidaja poole. Teie registripidaja on <%= @domain.registrar_name %> + +Uued registreerija andmed: +Nimi: <%= @domain.registrant_name %> +<% if @domain.registrant.priv? %> +Isikukood: <%= @domain.registrant_ident %> +<% else %> +Äriregistrikood: <%= @domain.registrant_ident %> +<% end %> +Tänav: <%= @domain.registrant_street %> +Linn: <%= @domain.registrant_city %> +Riik: <%= @domain.registrant_country %> + +Juhime Teie tähelepanu asjaolule, et omanikuvahetuse protseduur viiaks lõpule vaid juhul, kui domeeni hetkel kehtiv registreerija <%= @old_registrant.name %> omanikuvahetuse tähtaegselt kinnitab. + +Juhul kui <%= @old_registrant.name %> lükkab omanikuvahtuse taotluse tagasi või ei anna kinnitust enne <%= Setting.expire_pending_confirmation %> tundi, omanikuvahetuse protseduur tühistatakse. + +Küsimuste korral palun võtke ühendust registripidajaga <%= @domain.registrar_name %>, kelle kontaktid leiate http://internet.ee/registripidajad/akrediteeritud-registripidajad + +Lugupidamisega +Eesti Interneti SA + +-------------------------------------- + +Hi, + +Registrant change process for the domain <%= @domain.name %> has been started. + +New registrant: +Name: <%= @domain.registrant_name %> +<% if @domain.registrant.priv? %> +Personal code: <%= @domain.registrant_ident %> +<% else %> +Business Registry code: <%= @domain.registrant_ident %> +<% end %> +Street: <%= @domain.registrant_street %> +City: <%= @domain.registrant_city %> +Country: <%= @domain.registrant_country %> + +Please contact to your registrar <%= @domain.registrar_name %> if you have any questions. + +Best Regards, +Estonian Internet Foundation diff --git a/app/views/mailers/domain_mailer/pending_update_rejected_notification_for_new_registrant.html.erb b/app/views/mailers/domain_mailer/pending_update_rejected_notification_for_new_registrant.html.erb new file mode 100644 index 000000000..94672f176 --- /dev/null +++ b/app/views/mailers/domain_mailer/pending_update_rejected_notification_for_new_registrant.html.erb @@ -0,0 +1,19 @@ +Tere, +

+Domeeni <%= @domain.name %> registreerija <%= @new_registrant_name %> on domeeni registreerija vahetamise taotluse tagasi lükanud. +

+Küsimuste korral palun võtke ühendust registripidajaga <%= @domain.registrar_name %>, kelle kontaktid leiate http://internet.ee/registripidajad/akrediteeritud-registripidajad +

+Lugupidamisega,
+Eesti Interneti SA +

+
+

+Hi, +

+Registrant change was declined for the domain <%= @domain.name %>. +

+Please contact to your registrar <%= @domain.registrar_name %> if you have any questions. +

+Best Regards,
+Estonian Internet Foundation diff --git a/app/views/mailers/domain_mailer/pending_update_rejected_notification_for_new_registrant.text.erb b/app/views/mailers/domain_mailer/pending_update_rejected_notification_for_new_registrant.text.erb new file mode 100644 index 000000000..afdf06325 --- /dev/null +++ b/app/views/mailers/domain_mailer/pending_update_rejected_notification_for_new_registrant.text.erb @@ -0,0 +1,19 @@ +Tere, + +Domeeni <%= @domain.name %> registreerija <%= @new_registrant_name %> on domeeni registreerija vahetamise taotluse tagasi lükanud. + +Küsimuste korral palun võtke ühendust registripidajaga <%= @domain.registrar_name %>, kelle kontaktid leiate http://internet.ee/registripidajad/akrediteeritud-registripidajad + +Lugupidamisega +Eesti Interneti SA + +-------------------------------------- + +Hi, + +Registrant change was declined for the domain <%= @domain.name %>. + +Please contact to your registrar <%= @domain.registrar_name %> if you have any questions. + +Best Regards, +Estonian Internet Foundation diff --git a/app/views/domain_mailer/registrant_pending_updated.html.erb b/app/views/mailers/domain_mailer/pending_update_request_for_old_registrant.html.erb similarity index 95% rename from app/views/domain_mailer/registrant_pending_updated.html.erb rename to app/views/mailers/domain_mailer/pending_update_request_for_old_registrant.html.erb index 2689eff68..c62cb5561 100644 --- a/app/views/domain_mailer/registrant_pending_updated.html.erb +++ b/app/views/mailers/domain_mailer/pending_update_request_for_old_registrant.html.erb @@ -13,7 +13,8 @@ Tänav: <%= @domain.registrant_street %>
Linn: <%= @domain.registrant_city %>
Riik: <%= @domain.registrant_country %>

-Taotlus on aktiivne <%= Setting.expire_pending_confirmation %> tundi ja lükatakse automaatselt tagasi kui te seda enne ise ei kinnita või tagasi lükka.
+Taotlus on aktiivne <%= Setting.expire_pending_confirmation %> tundi ja lükatakse automaatselt tagasi kui te seda enne ise ei kinnita või tagasi lükka. +

Muudatuse kinnitamiseks külastage palun allolevat võrgulehekülge, kontrollige uuesti üle muudatuse andmed ning vajutage nuppu kinnitan:
<%= link_to @verification_url, @verification_url %> @@ -38,7 +39,8 @@ Street: <%= @domain.registrant_street %>
City: <%= @domain.registrant_city %>
Country: <%= @domain.registrant_country %>

-The application will remain in pending status for <%= Setting.expire_pending_confirmation %> hrs and will be automaticcally rejected if it is not approved nor rejected before.
+The application will remain in pending status for <%= Setting.expire_pending_confirmation %> hrs and will be automaticcally rejected if it is not approved nor rejected before. +

To confirm the update please visit this website, once again review the data and press approve:
<%= link_to @verification_url, @verification_url %>

diff --git a/app/views/domain_mailer/registrant_pending_updated.text.erb b/app/views/mailers/domain_mailer/pending_update_request_for_old_registrant.text.erb similarity index 100% rename from app/views/domain_mailer/registrant_pending_updated.text.erb rename to app/views/mailers/domain_mailer/pending_update_request_for_old_registrant.text.erb diff --git a/app/views/domain_mailer/registrant_updated.html.erb b/app/views/mailers/domain_mailer/registrant_updated_notification_for_new_registrant.html.erb similarity index 100% rename from app/views/domain_mailer/registrant_updated.html.erb rename to app/views/mailers/domain_mailer/registrant_updated_notification_for_new_registrant.html.erb diff --git a/app/views/domain_mailer/registrant_updated.text.erb b/app/views/mailers/domain_mailer/registrant_updated_notification_for_new_registrant.text.erb similarity index 100% rename from app/views/domain_mailer/registrant_updated.text.erb rename to app/views/mailers/domain_mailer/registrant_updated_notification_for_new_registrant.text.erb diff --git a/app/views/mailers/domain_mailer/registrant_updated_notification_for_old_registrant.html.erb b/app/views/mailers/domain_mailer/registrant_updated_notification_for_old_registrant.html.erb new file mode 100644 index 000000000..bdfda76dc --- /dev/null +++ b/app/views/mailers/domain_mailer/registrant_updated_notification_for_old_registrant.html.erb @@ -0,0 +1,21 @@ +Tere, +

+Domeeni <%= @domain.name %> registreerija vahetuse taotlus on kinnitatud ning andmed registris uuendatud. +

+Uued registreerija:
+Nimi: <%= @domain.registrant_name %> +

+Lugupidamisega
+Eesti Interneti SA +

+
+

+Hi, +

+Process for changing registrant of the domain <%= @domain.name %> has been approved and the data in the registry is updated. +

+New registrant:
+Name: <%= @domain.registrant_name %> +

+Best Regards,
+Estonian Internet Foundation diff --git a/app/views/mailers/domain_mailer/registrant_updated_notification_for_old_registrant.text.erb b/app/views/mailers/domain_mailer/registrant_updated_notification_for_old_registrant.text.erb new file mode 100644 index 000000000..08fb37fe0 --- /dev/null +++ b/app/views/mailers/domain_mailer/registrant_updated_notification_for_old_registrant.text.erb @@ -0,0 +1,21 @@ +Tere, + +Domeeni <%= @domain.name %> registreerija vahetuse taotlus on kinnitatud ning andmed registris uuendatud. + +Uued registreerija: +Nimi: <%= @domain.registrant_name %> + +Lugupidamisega +Eesti Interneti SA + +-------------------------------------- + +Hi, + +Process for changing registrant of the domain <%= @domain.name %> has been approved and the data in the registry is updated. + +New registrant: +Name: <%= @domain.registrant_name %> + +Best Regards, +Estonian Internet Foundation diff --git a/app/views/invoice_mailer/invoice_email.html.erb b/app/views/mailers/invoice_mailer/invoice_email.html.erb similarity index 100% rename from app/views/invoice_mailer/invoice_email.html.erb rename to app/views/mailers/invoice_mailer/invoice_email.html.erb diff --git a/app/views/invoice_mailer/invoice_email.text.erb b/app/views/mailers/invoice_mailer/invoice_email.text.erb similarity index 100% rename from app/views/invoice_mailer/invoice_email.text.erb rename to app/views/mailers/invoice_mailer/invoice_email.text.erb diff --git a/app/views/registrar/invoices/index.haml b/app/views/registrar/invoices/index.haml index e20158ea7..ed543f381 100644 --- a/app/views/registrar/invoices/index.haml +++ b/app/views/registrar/invoices/index.haml @@ -61,13 +61,13 @@ %tr %td= link_to(x, [:registrar, x]) - if x.receipt_date - %td= l(x.receipt_date) + %td= l(x.receipt_date, format: :date_long) - elsif x.cancelled? %td.text-grey= t(:cancelled) - else %td{class: 'text-danger'}= t(:unpaid) - %td= l(x.due_date) + %td= l(x.due_date, format: :date_long) %td= x.sum .row .col-md-12 diff --git a/app/views/registrar/invoices/partials/_details.haml b/app/views/registrar/invoices/partials/_details.haml index 07a2d0761..0b897ce7f 100644 --- a/app/views/registrar/invoices/partials/_details.haml +++ b/app/views/registrar/invoices/partials/_details.haml @@ -2,21 +2,21 @@ %hr %dl.dl-horizontal %dt= t(:issue_date) - %dd= l(@invoice.created_at) + %dd= l(@invoice.created_at, format: :date_long) - if @invoice.cancelled? %dt= t(:cancel_date) - %dd= l(@invoice.cancelled_at) + %dd= l(@invoice.cancelled_at, format: :date_long) %dt= t(:due_date) - if @invoice.cancelled? %dd.text-grey= t(:cancelled) - else - %dd= l(@invoice.due_date) + %dd= l(@invoice.due_date, format: :date_long) %dt= t(:receipt_date) - if @invoice.binded? - %dd= l(@invoice.receipt_date) + %dd= l(@invoice.receipt_date, format: :date_long) - elsif @invoice.cancelled? %dd.text-grey= t(:cancelled) - else diff --git a/app/views/registrar/invoices/pdf.haml b/app/views/registrar/invoices/pdf.haml index f4644d80e..5888f2bc2 100644 --- a/app/views/registrar/invoices/pdf.haml +++ b/app/views/registrar/invoices/pdf.haml @@ -149,21 +149,21 @@ %hr %dl.dl-horizontal %dt= t(:issue_date) - %dd= l(@invoice.created_at) + %dd= l(@invoice.created_at, format: :date_long) - if @invoice.cancelled? %dt= t(:cancel_date) - %dd= l(@invoice.cancelled_at) + %dd= l(@invoice.cancelled_at, format: :date_long) %dt= t(:due_date) - if @invoice.cancelled? %dd= t(:cancelled) - else - %dd= l(@invoice.due_date) + %dd= l(@invoice.due_date, format: :date_long) %dt= t(:receipt_date) - if @invoice.binded? - %dd= l(@invoice.receipt_date) + %dd= l(@invoice.receipt_date, format: :date_long) - elsif @invoice.cancelled? %dd= t(:cancelled) - else diff --git a/app/views/registrar/xml_consoles/epp_requests/contact/check.xml b/app/views/registrar/xml_consoles/epp_requests/contact/check.xml index 4bf1e6eb3..a0e02a3dc 100644 --- a/app/views/registrar/xml_consoles/epp_requests/contact/check.xml +++ b/app/views/registrar/xml_consoles/epp_requests/contact/check.xml @@ -3,7 +3,7 @@ + xmlns:contact="https://epp.tld.ee/schema/contact-eis-1.0.xsd"> sh8013 diff --git a/app/views/registrar/xml_consoles/epp_requests/contact/check_multiple.xml b/app/views/registrar/xml_consoles/epp_requests/contact/check_multiple.xml index 67f9f266c..57f0ad279 100644 --- a/app/views/registrar/xml_consoles/epp_requests/contact/check_multiple.xml +++ b/app/views/registrar/xml_consoles/epp_requests/contact/check_multiple.xml @@ -3,7 +3,7 @@ + xmlns:contact="https://epp.tld.ee/schema/contact-eis-1.0.xsd"> sh8013 sh13 vsdfvq diff --git a/app/views/registrar/xml_consoles/epp_requests/contact/create.xml b/app/views/registrar/xml_consoles/epp_requests/contact/create.xml index 8fa81d779..cab39ffe6 100644 --- a/app/views/registrar/xml_consoles/epp_requests/contact/create.xml +++ b/app/views/registrar/xml_consoles/epp_requests/contact/create.xml @@ -2,7 +2,7 @@ - + Sillius Soddus @@ -20,7 +20,7 @@ - + 123 JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp== diff --git a/app/views/registrar/xml_consoles/epp_requests/contact/delete.xml b/app/views/registrar/xml_consoles/epp_requests/contact/delete.xml index 69dc8d3b8..d288df7a0 100644 --- a/app/views/registrar/xml_consoles/epp_requests/contact/delete.xml +++ b/app/views/registrar/xml_consoles/epp_requests/contact/delete.xml @@ -3,7 +3,7 @@ + xmlns:contact="https://epp.tld.ee/schema/contact-eis-1.0.xsd"> sh8013 wrong-one @@ -11,7 +11,7 @@ - + JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp== diff --git a/app/views/registrar/xml_consoles/epp_requests/contact/info.xml b/app/views/registrar/xml_consoles/epp_requests/contact/info.xml index 19ad4de9d..3a2f195a6 100644 --- a/app/views/registrar/xml_consoles/epp_requests/contact/info.xml +++ b/app/views/registrar/xml_consoles/epp_requests/contact/info.xml @@ -2,7 +2,7 @@ - + sh8013 Aas34fq diff --git a/app/views/registrar/xml_consoles/epp_requests/contact/update_chg.xml b/app/views/registrar/xml_consoles/epp_requests/contact/update_chg.xml index 49631d3a0..aec36cc92 100644 --- a/app/views/registrar/xml_consoles/epp_requests/contact/update_chg.xml +++ b/app/views/registrar/xml_consoles/epp_requests/contact/update_chg.xml @@ -2,7 +2,7 @@ - + sh8013 @@ -25,7 +25,7 @@ - + JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp== diff --git a/app/views/registrar/xml_consoles/epp_requests/domain/check.xml b/app/views/registrar/xml_consoles/epp_requests/domain/check.xml index 94c765ab6..88dd550b6 100644 --- a/app/views/registrar/xml_consoles/epp_requests/domain/check.xml +++ b/app/views/registrar/xml_consoles/epp_requests/domain/check.xml @@ -3,7 +3,7 @@ + xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd"> example.ee diff --git a/app/views/registrar/xml_consoles/epp_requests/domain/create.xml b/app/views/registrar/xml_consoles/epp_requests/domain/create.xml index e80c17cbf..3cb39cf0e 100644 --- a/app/views/registrar/xml_consoles/epp_requests/domain/create.xml +++ b/app/views/registrar/xml_consoles/epp_requests/domain/create.xml @@ -3,7 +3,7 @@ + xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd"> example.ee 1 @@ -33,7 +33,7 @@ - + JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp== diff --git a/app/views/registrar/xml_consoles/epp_requests/domain/delete.xml b/app/views/registrar/xml_consoles/epp_requests/domain/delete.xml index 1a97703f8..c1c7fd96f 100644 --- a/app/views/registrar/xml_consoles/epp_requests/domain/delete.xml +++ b/app/views/registrar/xml_consoles/epp_requests/domain/delete.xml @@ -3,12 +3,12 @@ + xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd"> example.ee - + JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp== diff --git a/app/views/registrar/xml_consoles/epp_requests/domain/info.xml b/app/views/registrar/xml_consoles/epp_requests/domain/info.xml index f7f0192c0..36204bba9 100644 --- a/app/views/registrar/xml_consoles/epp_requests/domain/info.xml +++ b/app/views/registrar/xml_consoles/epp_requests/domain/info.xml @@ -3,7 +3,7 @@ + xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd"> example.ee 2fooBAR diff --git a/app/views/registrar/xml_consoles/epp_requests/domain/renew.xml b/app/views/registrar/xml_consoles/epp_requests/domain/renew.xml index 73070bfc4..512d88de5 100644 --- a/app/views/registrar/xml_consoles/epp_requests/domain/renew.xml +++ b/app/views/registrar/xml_consoles/epp_requests/domain/renew.xml @@ -3,7 +3,7 @@ + xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd"> example.ee 2014-08-07 1 diff --git a/app/views/registrar/xml_consoles/epp_requests/domain/transfer.xml b/app/views/registrar/xml_consoles/epp_requests/domain/transfer.xml index 266b56e9c..e1bb7d1ee 100644 --- a/app/views/registrar/xml_consoles/epp_requests/domain/transfer.xml +++ b/app/views/registrar/xml_consoles/epp_requests/domain/transfer.xml @@ -1,9 +1,9 @@ - + + xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd"> example.ee 2BARfoo @@ -11,7 +11,7 @@ - + JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp== diff --git a/app/views/registrar/xml_consoles/epp_requests/domain/update.xml b/app/views/registrar/xml_consoles/epp_requests/domain/update.xml index 26df74165..bd1df68c6 100644 --- a/app/views/registrar/xml_consoles/epp_requests/domain/update.xml +++ b/app/views/registrar/xml_consoles/epp_requests/domain/update.xml @@ -3,7 +3,7 @@ + xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd"> example.ee mak21 @@ -37,7 +37,7 @@ - + JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp== diff --git a/app/views/registrar/xml_consoles/epp_requests/keyrelay/keyrelay.xml b/app/views/registrar/xml_consoles/epp_requests/keyrelay/keyrelay.xml index 54532f23a..f04b34969 100644 --- a/app/views/registrar/xml_consoles/epp_requests/keyrelay/keyrelay.xml +++ b/app/views/registrar/xml_consoles/epp_requests/keyrelay/keyrelay.xml @@ -1,5 +1,5 @@ - + example6.ee @@ -16,7 +16,7 @@ P1D - + JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp== 1422542244 diff --git a/config/environments/test.rb b/config/environments/test.rb index ee1ae12b7..80f7b9064 100644 --- a/config/environments/test.rb +++ b/config/environments/test.rb @@ -44,18 +44,27 @@ Rails.application.configure do # The available log levels are: :debug, :info, :warn, :error, :fatal, and :unknown, # corresponding to the log level numbers from 0 up to 5 respectively - config.log_level = :info + config.log_level = :debug # for finding database optimization config.after_initialize do Bullet.enable = true Bullet.bullet_logger = true + Bullet.rails_logger = true Bullet.raise = true # raise an error if n+1 query occurs Bullet.unused_eager_loading_enable = false # Currenty hard to fix, it is triggered by Epp::Domain.new_from_epp for create request Bullet.add_whitelist type: :n_plus_one_query, class_name: 'Contact', association: :registrar + + # when domain updates, then we need to update all contact linked status, + # somehow it triggers bullet counter cache for versions, + # there was no output indicating each version where fetched or counted + # thus needs more investigation + Bullet.add_whitelist type: :counter_cache, class_name: 'Contact', association: :versions end + + # config.logger = Logger.new(STDOUT) end # In this mode, any jobs you queue will be run in the same thread, synchronously diff --git a/config/initializers/eis_custom_active_model.rb b/config/initializers/eis_custom_active_model.rb new file mode 100644 index 000000000..ba5f29b06 --- /dev/null +++ b/config/initializers/eis_custom_active_model.rb @@ -0,0 +1,20 @@ +# Log all active model user errors +# rubocop: disable Lint/AssignmentInCondition +# rubocop: disable Style/SignalException +module ActiveModel + class Errors + def add(attribute, message = :invalid, options = {}) + message = normalize_message(attribute, message, options) + if exception = options[:strict] + exception = ActiveModel::StrictValidationFailed if exception == true + raise exception, full_message(attribute, message) + end + + # CUSTOM logging + Rails.logger.info "USER MSG: ACTIVEMODEL: #{@base.try(:class)} [#{attribute}] #{message}" if message.present? + # END of CUSTOM logging + + self[attribute] << message + end + end +end diff --git a/config/initializers/eis_custom_active_record.rb b/config/initializers/eis_custom_active_record.rb new file mode 100644 index 000000000..60dcebeb9 --- /dev/null +++ b/config/initializers/eis_custom_active_record.rb @@ -0,0 +1,8 @@ +# Log all user issues raised by active record +# rubocop: disable Metrics/LineLength +class ActiveRecord::Base + after_validation do |m| + Rails.logger.info "USER MSG: ACTIVERECORD: #{m.class} ##{m.id} #{m.errors.full_messages} #{m.errors['epp_errors']}" if m.errors.present? + true + end +end diff --git a/config/initializers/eis_custom_flash.rb b/config/initializers/eis_custom_flash.rb new file mode 100644 index 000000000..4e4d359b5 --- /dev/null +++ b/config/initializers/eis_custom_flash.rb @@ -0,0 +1,31 @@ +# Log all flash messages +# rubocop: disable Metrics/CyclomaticComplexity +# rubocop: disable Metrics/LineLength +module ActionDispatch + class Flash + # rubocop: disable Metrics/PerceivedComplexity + # rubocop: disable Style/MultilineOperationIndentation + def call(env) + @app.call(env) + ensure + session = Request::Session.find(env) || {} + flash_hash = env[KEY] + + if flash_hash && (flash_hash.present? || session.key?('flash')) + session["flash"] = flash_hash.to_session_value + + # EIS custom logging + Rails.logger.info "USER MSG: FLASH: #{session['flash']['flashes'].inspect}" if session['flash'] + # END OF EIS custom logging + + env[KEY] = flash_hash.dup + end + + if (!session.respond_to?(:loaded?) || session.loaded?) && # (reset_session uses {}, which doesn't implement #loaded?) + session.key?('flash') && session['flash'].nil? + session.delete('flash') + end + end + end +end + diff --git a/config/initializers/initial_settings.rb b/config/initializers/initial_settings.rb index 1417ef7e3..c2d867c26 100644 --- a/config/initializers/initial_settings.rb +++ b/config/initializers/initial_settings.rb @@ -22,11 +22,14 @@ if con.present? && con.table_exists?('settings') Setting.save_default(:ns_max_count, 11) Setting.save_default(:transfer_wait_time, 0) + Setting.save_default(:request_confrimation_on_registrant_change_enabled, true) + Setting.save_default(:request_confirmation_on_domain_deletion_enabled, true) Setting.save_default(:client_side_status_editing_enabled, false) Setting.save_default(:invoice_number_min, 131050) Setting.save_default(:invoice_number_max, 149999) + Setting.save_default(:days_to_keep_invoices_active, 30) Setting.save_default(:days_to_keep_overdue_invoices_active, 30) Setting.save_default(:days_to_renew_domain_before_expire, 90) Setting.save_default(:expire_warning_period, 15) diff --git a/config/initializers/load_schemas.rb b/config/initializers/load_schemas.rb new file mode 100644 index 000000000..617022179 --- /dev/null +++ b/config/initializers/load_schemas.rb @@ -0,0 +1,3 @@ +EPP_SCHEMA = Nokogiri::XML::Schema(File.read("lib/schemas/epp-1.0.xsd")) +DOMAIN_SCHEMA = Nokogiri::XML::Schema(File.read("lib/schemas/domain-eis-1.0.xsd")) +CONTACT_SCHEMA = Nokogiri::XML::Schema(File.read("lib/schemas/contact-eis-1.0.xsd")) diff --git a/config/locales/en.yml b/config/locales/en.yml index c4b70c2e9..5d2f0dfff 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -65,10 +65,10 @@ en: key_data_not_allowed: 'keyData object is not allowed' required_parameter_missing_reserved: 'Required parameter missing; reserved>pw element required for reserved domains' invalid_auth_information_reserved: 'Invalid authorization information; invalid reserved>pw value' + domain_name_blocked: 'Data management policy violation: Domain name is blocked [name]' name_dirty: invalid: 'Domain name is invalid' reserved: 'Domain name is reserved' - blocked: 'Domain name is blocked' taken: 'Domain name already exists' puny_label: too_long: 'Domain name is too long (maximum is 63 characters)' @@ -555,7 +555,6 @@ en: username: 'Username' password: 'Password' log_in: 'Log in' - log_out: 'Log out (%{user})' domains: 'Domains' register: 'Register' check: 'Check' @@ -778,8 +777,16 @@ en: unimplemented_object_service: 'Unimplemented object service' contact_email_update_subject: 'Teie domeenide kontakt epostiaadress on muutunud / Contact e-mail addresses of your domains have changed' object_status_prohibits_operation: 'Object status prohibits operation' - domain_registrant_pending_updated_subject: "Kinnitustaotlus domeeni %{name} registreerija vahetuseks / Application for approval for registrant chache of %{name}" + pending_update_request_for_old_registrant_subject: "Kinnitustaotlus domeeni %{name} registreerija vahetuseks / Application for approval for registrant chache of %{name}" + pending_update_notification_for_new_registrant_subject: "Domeeni %{name} registreerija vahetus protseduur on algatatud / %{name} registrant change" + pending_update_rejected_notification_for_new_registrant_subject: "Domeeni %{name} registreerija vahetuse taotlus tagasi lükatud / %{name} registrant change declined" + pending_update_expired_notification_for_new_registrant_subject: "Domeeni %{name} registreerija vahetuse taotlus on tühistatud / %{name} registrant change cancelled" + registrant_updated_notification_for_new_registrant_subject: 'Domeeni %{name} registreerija vahetus teostatud / Registrant change of %{name} has been finished.' + registrant_updated_notification_for_old_registrant_subject: 'Domeeni %{name} registreerija vahetus teostatud / Registrant change of %{name} has been finished.' domain_pending_deleted_subject: "Kinnitustaotlus domeeni %{name} kustutamiseks .ee registrist / Application for approval for deletion of %{name}" + pending_delete_rejected_notification_subject: "Domeeni %{name} kustutamise taotlus tagasi lükatud / %{name) deletion declined" + pending_delete_expired_notification_subject: "Domeeni %{name} kustutamise taotlus on tühistatud / %{name} deletion cancelled" + delete_confirmation_subject: "Domeeni %{name} kustutatud / %{name} deleted" whois: WHOIS login_failed_check_id_card: 'Log in failed, check ID card' not_valid_domain_verification_title: Domain verification not available @@ -873,7 +880,17 @@ en: no_transfers_found: 'No transfers found' parameter_value_range_error: 'Parameter value range error: %{key}' payment_received: 'Payment received' - domain_registrant_updated: 'Domeeni %{name} registreerija vahetus teostatud / Registrant change of %{name} has been finished.' api_user_not_found: 'API user not found' domain_already_belongs_to_the_querying_registrar: 'Domain already belongs to the querying registrar' notes: Notes + active_price_for_this_operation_is: 'Active price for this operation is %{price}' + active_price_missing_for_this_operation: 'Active price missing for this operation!' + log_out_: 'Log out' + valid_to_from: 'Valid to from' + valid_to_until: 'Valid to until' + registrant_ident: 'Registrant ident' + contact_ident: 'Contact ident' + results_per_page: 'Results per page' + nameserver_hostname: 'Nameserver hostname' + result_count: '%{count} results' + failed_to_generate_invoice_invoice_number_limit_reached: 'Failed to generate invoice - invoice number limit reached' diff --git a/config/routes.rb b/config/routes.rb index bb1828c36..c1b7ad237 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -2,15 +2,15 @@ require 'epp_constraint' Rails.application.routes.draw do namespace(:epp, defaults: { format: :xml }) do - match 'session/:action', controller: 'sessions', via: :all - match 'session/pki/:action', controller: 'sessions', via: :all + match 'session/:action', controller: 'sessions', via: :all, constraints: EppConstraint.new(:session) + match 'session/pki/:action', controller: 'sessions', via: :all, constraints: EppConstraint.new(:session) post 'command/:action', controller: 'domains', constraints: EppConstraint.new(:domain) post 'command/:action', controller: 'contacts', constraints: EppConstraint.new(:contact) post 'command/poll', to: 'polls#poll', constraints: EppConstraint.new(:poll) post 'command/keyrelay', to: 'keyrelays#keyrelay', constraints: EppConstraint.new(:keyrelay) - post 'command/:command', to: 'errors#not_found' # fallback route + post 'command/:command', to: 'errors#not_found', constraints: EppConstraint.new(:not_found) # fallback route get 'error/:command', to: 'errors#error' end @@ -41,6 +41,7 @@ Rails.application.routes.draw do post 'sessions' => 'sessions#create' post 'id' => 'sessions#id' post 'mid' => 'sessions#mid' + get 'switch_user/:id' => 'sessions#switch_user' get 'logout' => '/devise/sessions#destroy' end diff --git a/config/schedule.rb b/config/schedule.rb index c418de420..265306904 100644 --- a/config/schedule.rb +++ b/config/schedule.rb @@ -24,9 +24,10 @@ every :day, at: '12:10am' do runner 'Invoice.cancel_overdue_invoices' end -every :day, at: '12:15am' do - runner 'Domain.expire_domains' -end +# TODO +# every :day, at: '12:15am' do + # runner 'Domain.expire_domains' +# end every :day, at: '12:20am' do runner 'Domain.clean_expired_pendings' diff --git a/config/unicorn.rb b/config/unicorn.rb index 350bc5ed1..0e6d8d383 100644 --- a/config/unicorn.rb +++ b/config/unicorn.rb @@ -1,7 +1,6 @@ worker_processes 2 # after_fork do |server, worker| - # binding.pry # ActiveRecord::Base.establish_connection # Que.mode = :async diff --git a/doc/epp-doc.md b/doc/epp-doc.md index cf4a84d71..cf6ae2788 100644 --- a/doc/epp-doc.md +++ b/doc/epp-doc.md @@ -16,15 +16,11 @@ Our implementation supports following protocols: [RFC5910 - DNSSEC Mapping](http://tools.ietf.org/html/rfc5910) [RFC3735 - Guidelines for Extending the EPP](http://tools.ietf.org/html/rfc3735) -Related XML Schema Definitions (may differ from policies applied to registry): +EIS specific XML Schema Definitions (may differ from policies applied to registry): [contact-eis-1.0.xsd](schemas/contact-eis-1.0.xsd) [domain-eis-1.0.xsd](schemas/domain-eis-1.0.xsd) [eis-1.0.xsd](schemas/eis-1.0.xsd) -[epp-1.0.xsd](schemas/epp-1.0.xsd) -[eppcom-1.0.xsd](schemas/eppcom-1.0.xsd) -[host-1.0.xsd](schemas/host-1.0.xsd) -[secDNS-1.1.xsd](schemas/secDNS-1.1.xsd) More info about The Extensible Provisioning Protocol (EPP):
http://en.wikipedia.org/wiki/Extensible_Provisioning_Protocol diff --git a/doc/epp-examples.md b/doc/epp-examples.md index 1d7999cdc..c26d25426 100644 --- a/doc/epp-examples.md +++ b/doc/epp-examples.md @@ -1,7 +1,6 @@ -Run options: include {:focus=>true, :epp=>true} # EPP REQUEST - RESPONSE EXAMPLES -GENERATED AT: 2015-07-20 12:20:02 UTC -EXAMPLE COUNT: 182 +GENERATED AT: 2015-07-28 08:39:28 UTC +EXAMPLE COUNT: 187 --- @@ -19,13 +18,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -45,7 +44,7 @@ RESPONSE: ABC-12345 - ccReg-4920267570 + ccReg-3999773216
@@ -60,7 +59,7 @@ REQUEST: - + ABC-12345 @@ -73,33 +72,12 @@ RESPONSE: - - Required parameter missing: create > create > postalInfo > name [name] - - - Required parameter missing: create > create > postalInfo > addr > street [street] - - - Required parameter missing: create > create > postalInfo > addr > city [city] - - - Required parameter missing: create > create > postalInfo > addr > pc [pc] - - - Required parameter missing: create > create > postalInfo > addr > cc [cc] - - - Required parameter missing: create > create > voice [voice] - - - Required parameter missing: create > create > email [email] - - - Required parameter missing: extension > extdata > ident [ident] + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}create': Missing child element(s). Expected is one of ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}id, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}postalInfo ). ABC-12345 - ccReg-2829680447 + ccReg-5475530912 @@ -114,7 +92,7 @@ REQUEST: - + John Doe @@ -129,7 +107,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -150,13 +128,13 @@ RESPONSE: - FIRST0:C2587535 - 2015-07-20T12:20:04Z + FIRST0:6A469D40 + 2015-07-28T08:39:31Z ABC-12345 - ccReg-8333628932 + ccReg-9419100913 @@ -171,7 +149,7 @@ REQUEST: - + John Doe @@ -186,7 +164,7 @@ REQUEST: - + 1990-22-12 dGVzdCBmYWlsCg== @@ -207,13 +185,13 @@ RESPONSE: - FIRST0:CFD72BFA - 2015-07-20T12:20:04Z + FIRST0:9175FF51 + 2015-07-28T08:39:31Z ABC-12345 - ccReg-4302090779 + ccReg-7112806347 @@ -228,7 +206,7 @@ REQUEST: - + John Doe @@ -243,7 +221,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -264,13 +242,13 @@ RESPONSE: - FIRST0:E7BBB510 - 2015-07-20T12:20:05Z + FIRST0:B0D47101 + 2015-07-28T08:39:31Z ABC-12345 - ccReg-7603334266 + ccReg-3112027327 @@ -285,7 +263,7 @@ REQUEST: - + John Doe @@ -300,7 +278,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -321,13 +299,13 @@ RESPONSE: - FIRST0:1946F17C - 2015-07-20T12:20:05Z + FIRST0:D97D17A8 + 2015-07-28T08:39:31Z ABC-12345 - ccReg-1020907599 + ccReg-8158844070 @@ -342,7 +320,7 @@ REQUEST: - + abc12345 John Doe @@ -358,7 +336,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -380,12 +358,12 @@ RESPONSE: FIRST0:ABC12345 - 2015-07-20T12:20:05Z + 2015-07-28T08:39:32Z ABC-12345 - ccReg-6093271914 + ccReg-6348378603 @@ -400,7 +378,7 @@ REQUEST: - + abc:ABC:12345 John Doe @@ -416,7 +394,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -438,12 +416,12 @@ RESPONSE: FIRST0:ABC:ABC:12345 - 2015-07-20T12:20:05Z + 2015-07-28T08:39:32Z ABC-12345 - ccReg-2872143839 + ccReg-6309817337 @@ -458,7 +436,7 @@ REQUEST: - + abc 123 John Doe @@ -474,7 +452,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -495,13 +473,13 @@ RESPONSE: ABC-12345 - ccReg-7072544384 + ccReg-3718665628 ``` -### EPP Contact with valid user create command should not saves ident type with wrong country code +### EPP Contact with valid user create command should not strange characters in custom code REQUEST: @@ -510,7 +488,8 @@ REQUEST: - + + 33&$@@ John Doe @@ -525,8 +504,9 @@ REQUEST: - - 1990-22-12 + + 37605030299 + dGVzdCBmYWlsCg== ABC-12345 @@ -541,11 +521,219 @@ RESPONSE: - Ident country code is not valid, should be in ISO_3166-1 alpha 2 format [ident] + is invalid [code] ABC-12345 - ccReg-7730182529 + ccReg-7046803120 + + + +``` + +### EPP Contact with valid user create command should not strange characters in custom code + +REQUEST: + +```xml + + + + + + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + + John Doe + + 123 Example + Tallinn + 123456 + EE + + + +372.1234567 + test@example.example + + + + + 37605030299 + dGVzdCBmYWlsCg== + + + ABC-12345 + + +``` + +RESPONSE: + +```xml + + + + + Contact code is too long, max 100 characters [code] + + + ABC-12345 + ccReg-7830897117 + + + +``` + +### EPP Contact with valid user create command should not saves ident type with wrong country code + +REQUEST: + +```xml + + + + + + + John Doe + + 123 Example + Tallinn + 123456 + EE + + + +372.1234567 + test@example.example + + + + + 1990-22-12 + + + ABC-12345 + + +``` + +RESPONSE: + +```xml + + + + + Element '{https://epp.tld.ee/schema/eis-1.0.xsd}ident', attribute 'cc': [facet 'maxLength'] The value 'WRONG' has a length of '5'; this exceeds the allowed maximum length of '2'. + + + Element '{https://epp.tld.ee/schema/eis-1.0.xsd}ident', attribute 'cc': 'WRONG' is not a valid value of the atomic type '{https://epp.tld.ee/schema/eis-1.0.xsd}ccType'. + + + ABC-12345 + ccReg-0585936448 + + + +``` + +### EPP Contact with valid user create command should return country missing + +REQUEST: + +```xml + + + + + + + John Doe + + 123 Example + Tallinn + 123456 + EE + + + +372.1234567 + test@example.example + + + + + 1990-22-12 + + + ABC-12345 + + +``` + +RESPONSE: + +```xml + + + + + Element '{https://epp.tld.ee/schema/eis-1.0.xsd}ident': The attribute 'cc' is required but missing. + + + ABC-12345 + ccReg-9395726958 + + + +``` + +### EPP Contact with valid user create command should return country missing + +REQUEST: + +```xml + + + + + + + John Doe + + 123 Example + Tallinn + 123456 + EE + + + +372.1234567 + test@example.example + + + + + 1990-22-12 + + + ABC-12345 + + +``` + +RESPONSE: + +```xml + + + + + Element '{https://epp.tld.ee/schema/eis-1.0.xsd}ident': The attribute 'type' is required but missing. + + + Element '{https://epp.tld.ee/schema/eis-1.0.xsd}ident': The attribute 'cc' is required but missing. + + + ABC-12345 + ccReg-3003187201 @@ -560,7 +748,7 @@ REQUEST: - + CID:FIRST0:abc:ABC:NEW:12345 John Doe @@ -576,7 +764,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -598,12 +786,12 @@ RESPONSE: FIRST0:CID:FIRST0:ABC:ABC:NEW:12345 - 2015-07-20T12:20:07Z + 2015-07-28T08:39:38Z ABC-12345 - ccReg-6222136293 + ccReg-3792142117 @@ -618,7 +806,7 @@ REQUEST: - + CID:FIRST0:abc:CID:ABC:NEW:12345 John Doe @@ -634,7 +822,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -656,12 +844,12 @@ RESPONSE: FIRST0:CID:FIRST0:ABC:CID:ABC:NEW:12345 - 2015-07-20T12:20:07Z + 2015-07-28T08:39:38Z ABC-12345 - ccReg-9080919659 + ccReg-8833719931 @@ -676,7 +864,7 @@ REQUEST: - + FIRST0:abc22 John Doe @@ -692,7 +880,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -714,12 +902,12 @@ RESPONSE: FIRST0:ABC22 - 2015-07-20T12:20:07Z + 2015-07-28T08:39:39Z ABC-12345 - ccReg-5432573173 + ccReg-9289988831 @@ -734,7 +922,7 @@ REQUEST: - + cid2:first0:abc:ABC:11111 John Doe @@ -750,7 +938,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -772,12 +960,12 @@ RESPONSE: FIRST0:CID2:FIRST0:ABC:ABC:11111 - 2015-07-20T12:20:07Z + 2015-07-28T08:39:39Z ABC-12345 - ccReg-3698130590 + ccReg-8383857357 @@ -792,7 +980,7 @@ REQUEST: - + CID:FIRST0 John Doe @@ -808,7 +996,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -830,12 +1018,12 @@ RESPONSE: FIRST0:CID:FIRST0 - 2015-07-20T12:20:07Z + 2015-07-28T08:39:39Z ABC-12345 - ccReg-8343524830 + ccReg-5997788919 @@ -850,7 +1038,7 @@ REQUEST: - + John Doe @@ -865,7 +1053,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -886,13 +1074,13 @@ RESPONSE: - FIRST0:C2E220E5 - 2015-07-20T12:20:07Z + FIRST0:87E70060 + 2015-07-28T08:39:39Z ABC-12345 - ccReg-1230036196 + ccReg-9532742811 @@ -907,7 +1095,7 @@ REQUEST: - + John Doe @@ -922,7 +1110,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -943,13 +1131,13 @@ RESPONSE: - FIRST0:B4E6C044 - 2015-07-20T12:20:07Z + FIRST0:A74EABFE + 2015-07-28T08:39:39Z ABC-12345 - ccReg-1305492733 + ccReg-2995036796 @@ -964,7 +1152,7 @@ REQUEST: - + John Doe should not save @@ -980,7 +1168,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -1001,7 +1189,7 @@ RESPONSE: ABC-12345 - ccReg-6235132526 + ccReg-9068419905 @@ -1016,7 +1204,7 @@ REQUEST: - + John Doe @@ -1032,7 +1220,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -1053,7 +1241,7 @@ RESPONSE: ABC-12345 - ccReg-0548112175 + ccReg-3667432897 @@ -1068,7 +1256,7 @@ REQUEST: - + ABC-12345 @@ -1081,15 +1269,12 @@ RESPONSE: - - Required parameter missing: add, rem or chg - - - Required parameter missing: update > update > id [id] + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}update': Missing child element(s). Expected is ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}id ). ABC-12345 - ccReg-4283141204 + ccReg-8184249905 @@ -1104,7 +1289,7 @@ REQUEST: - + not-exists @@ -1119,7 +1304,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -1142,7 +1327,7 @@ RESPONSE: ABC-12345 - ccReg-9934346442 + ccReg-7422710793 @@ -1157,7 +1342,7 @@ REQUEST: - + FIRST0:SH8013 @@ -1172,7 +1357,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -1193,12 +1378,12 @@ RESPONSE: FIRST0:SH8013 - 2015-07-20T12:20:10Z + 2015-07-28T08:39:41Z ABC-12345 - ccReg-9640595881 + ccReg-4865022436 @@ -1213,7 +1398,7 @@ REQUEST: - + FIRST0:SH8013 @@ -1239,12 +1424,12 @@ RESPONSE: FIRST0:SH8013 - 2015-07-20T12:20:10Z + 2015-07-28T08:39:41Z ABC-12345 - ccReg-3267691971 + ccReg-6633367984 @@ -1266,13 +1451,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -1292,7 +1477,7 @@ RESPONSE: ABC-12345 - ccReg-7922782878 + ccReg-7530163933 @@ -1305,7 +1490,7 @@ REQUEST: - + FIRST0:SH8013 @@ -1320,7 +1505,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -1341,12 +1526,12 @@ RESPONSE: FIRST0:SH8013 - 2015-07-20T12:20:10Z + 2015-07-28T08:39:41Z ABC-12345 - ccReg-4465076583 + ccReg-4277646314 @@ -1366,13 +1551,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -1392,7 +1577,7 @@ RESPONSE: ABC-12345 - ccReg-0386955176 + ccReg-4538846364 @@ -1414,13 +1599,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -1440,7 +1625,7 @@ RESPONSE: ABC-12345 - ccReg-0382849943 + ccReg-6831340132 @@ -1453,7 +1638,7 @@ REQUEST: - + FIRST0:SH8013 @@ -1478,7 +1663,7 @@ RESPONSE: ABC-12345 - ccReg-6132228546 + ccReg-6564840615 @@ -1498,13 +1683,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -1524,7 +1709,7 @@ RESPONSE: ABC-12345 - ccReg-1914602917 + ccReg-5442863323
@@ -1539,7 +1724,7 @@ REQUEST: - + FIRST0:SH8013 @@ -1554,7 +1739,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -1577,7 +1762,7 @@ RESPONSE: ABC-12345 - ccReg-1060982386 + ccReg-8528718455 @@ -1592,7 +1777,7 @@ REQUEST: - + FIRST0:SH8013 @@ -1608,7 +1793,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -1623,15 +1808,12 @@ RESPONSE: - - Object does not exist - - FIRST0:SH8013NOTPOSSIBLETOUPDATE - + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}id': This element is not expected. ABC-12345 - ccReg-0568353576 + ccReg-4331200914 @@ -1646,7 +1828,7 @@ REQUEST: - + FIRST0:SH8013 @@ -1661,7 +1843,7 @@ REQUEST: - + 1990-22-12 dGVzdCBmYWlsCg== @@ -1682,7 +1864,7 @@ RESPONSE: ABC-12345 - ccReg-9542690815 + ccReg-4397523800 @@ -1697,7 +1879,7 @@ REQUEST: - + FIRST0:SH8013 @@ -1713,7 +1895,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -1733,7 +1915,7 @@ RESPONSE: ABC-12345 - ccReg-6359354372 + ccReg-7928150587 @@ -1748,7 +1930,7 @@ REQUEST: - + FIRST0:SH8013 @@ -1764,7 +1946,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -1784,7 +1966,7 @@ RESPONSE: ABC-12345 - ccReg-1556756909 + ccReg-3817458970 @@ -1799,10 +1981,10 @@ REQUEST: - + FIRST0:SH8013 - Payment overdue. + Payment overdue. @@ -1823,7 +2005,7 @@ RESPONSE: ABC-12345 - ccReg-4931159448 + ccReg-3807652405 @@ -1838,7 +2020,7 @@ REQUEST: - + FIRST0:SH8013 +372.11111111 @@ -1865,12 +2047,12 @@ RESPONSE: FIRST0:SH8013 - 2015-07-20T12:20:10Z + 2015-07-28T08:39:41Z ABC-12345 - ccReg-3983107320 + ccReg-8133702938 @@ -1885,7 +2067,7 @@ REQUEST: - + FIRST0:SH8013 @@ -1915,7 +2097,7 @@ RESPONSE: ABC-12345 - ccReg-7993909097 + ccReg-7011374408 @@ -1930,7 +2112,7 @@ REQUEST: - + FIRST0:SH8013 +372.11111111111 @@ -1954,18 +2136,12 @@ RESPONSE: - - Command completed successfully + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}voice': This element is not expected. Expected is ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}status ). - - - FIRST0:SH8013 - 2015-07-20T12:20:10Z - - ABC-12345 - ccReg-4048395100 + ccReg-7610710976 @@ -1980,7 +2156,7 @@ REQUEST: - + FIRST0:SH8013 @@ -2009,7 +2185,7 @@ RESPONSE: ABC-12345 - ccReg-9680507822 + ccReg-6395479303 @@ -2024,7 +2200,7 @@ REQUEST: - + FIRST0:SH8013 password @@ -2045,15 +2221,12 @@ RESPONSE: - - Required parameter missing - phone [phone] - - - Phone nr is invalid [phone] + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}authInfo': This element is not expected. Expected is one of ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}add, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}rem, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}chg ). ABC-12345 - ccReg-1188969737 + ccReg-7007003785 @@ -2068,7 +2241,7 @@ REQUEST: - + FIRST0:SH8013 password @@ -2092,18 +2265,12 @@ RESPONSE: - - Command completed successfully + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}authInfo': This element is not expected. Expected is one of ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}add, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}rem, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}chg ). - - - FIRST0:SH8013 - 2015-07-20T12:20:10Z - - ABC-12345 - ccReg-6297323206 + ccReg-8061878233 @@ -2118,7 +2285,7 @@ REQUEST: - + FIRST0:SH8013 password @@ -2142,18 +2309,12 @@ RESPONSE: - - Command completed successfully + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}authInfo': This element is not expected. Expected is one of ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}add, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}rem, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}chg ). - - - FIRST0:SH8013 - 2015-07-20T12:20:10Z - - ABC-12345 - ccReg-0548767531 + ccReg-3091851486 @@ -2168,7 +2329,7 @@ REQUEST: - + FIRST0:SH8013 password @@ -2195,18 +2356,12 @@ RESPONSE: - - Command completed successfully + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}authInfo': This element is not expected. Expected is one of ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}add, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}rem, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}chg ). - - - FIRST0:SH8013 - 2015-07-20T12:20:10Z - - ABC-12345 - ccReg-7386099764 + ccReg-8609322144 @@ -2221,7 +2376,7 @@ REQUEST: - + FIRST0:SH8013 password @@ -2244,18 +2399,12 @@ RESPONSE: - - Command completed successfully + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}authInfo': This element is not expected. Expected is one of ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}add, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}rem, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}chg ). - - - FIRST0:SH8013 - 2015-07-20T12:20:10Z - - ABC-12345 - ccReg-0459626647 + ccReg-0582559112 @@ -2270,16 +2419,16 @@ REQUEST: - + FIRST0:SH8013 - - password - - + - not important + - + + password + + ABC-12345 @@ -2293,12 +2442,18 @@ RESPONSE: - - Parameter value policy error. Org must be blank: postalInfo > org [org] + + Command completed successfully + + + FIRST0:SH8013 + 2015-07-28T08:39:41Z + + ABC-12345 - ccReg-0963745173 + ccReg-8655942919 @@ -2313,7 +2468,7 @@ REQUEST: - + FIRST0:SH8013 password @@ -2336,12 +2491,12 @@ RESPONSE: - - Required parameter missing - name [name] + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}authInfo': This element is not expected. Expected is one of ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}add, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}rem, {https://epp.tld.ee/schema/contact-eis-1.0.xsd}chg ). ABC-12345 - ccReg-1128233182 + ccReg-9481106190 @@ -2356,7 +2511,7 @@ REQUEST: - + ABC-12345 @@ -2369,12 +2524,12 @@ RESPONSE: - - Required parameter missing: delete > delete > id [id] + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}delete': Missing child element(s). Expected is ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}id ). ABC-12345 - ccReg-3956770183 + ccReg-5578564225 @@ -2389,7 +2544,7 @@ REQUEST: - + not-exists password @@ -2397,7 +2552,7 @@ REQUEST: - + 37605030299 dGVzdCBmYWlsCg== @@ -2421,7 +2576,7 @@ RESPONSE: ABC-12345 - ccReg-6096556295 + ccReg-6663525094 @@ -2436,15 +2591,15 @@ REQUEST: - - FIRST0:SH737607533 + + FIRST0:SH231039313 password - + 37605030299 dGVzdCBmYWlsCg== @@ -2465,7 +2620,7 @@ RESPONSE: ABC-12345 - ccReg-4335042546 + ccReg-3780043277 @@ -2480,15 +2635,15 @@ REQUEST: - - FIRST0:SH348236744 + + FIRST0:SH495814614 wrong password - + 37605030299 dGVzdCBmYWlsCg== @@ -2509,7 +2664,7 @@ RESPONSE: ABC-12345 - ccReg-3107421005 + ccReg-7212720521 @@ -2524,8 +2679,8 @@ REQUEST: - - FIRST0:SH982687135 + + FIRST0:SH345416025 ABC-12345 @@ -2544,7 +2699,7 @@ RESPONSE: ABC-12345 - ccReg-2771879725 + ccReg-6437000685 @@ -2559,15 +2714,15 @@ REQUEST: - - FIRST0:SH648273286 + + FIRST0:SH527033126 password - + 37605030299 dGVzdCBmYWlsCg== @@ -2588,7 +2743,7 @@ RESPONSE: ABC-12345 - ccReg-2141698310 + ccReg-1807855170 @@ -2610,13 +2765,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -2636,7 +2791,7 @@ RESPONSE: ABC-12345 - ccReg-2385731488 + ccReg-0288992099 @@ -2649,15 +2804,15 @@ REQUEST: - - FIRST0:SH129859989 + + FIRST0:SH031616179 password - + 37605030299 dGVzdCBmYWlsCg== @@ -2678,7 +2833,7 @@ RESPONSE: ABC-12345 - ccReg-6081027274 + ccReg-4336841702 @@ -2698,13 +2853,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -2724,7 +2879,7 @@ RESPONSE: ABC-12345 - ccReg-0519720508 + ccReg-8729288024 @@ -2746,13 +2901,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -2772,7 +2927,7 @@ RESPONSE: ABC-12345 - ccReg-4115551482 + ccReg-6840346616 @@ -2785,8 +2940,8 @@ REQUEST: - - FIRST0:SH5773127110 + + FIRST0:SH2297814310 ABC-12345 @@ -2805,7 +2960,7 @@ RESPONSE: ABC-12345 - ccReg-4744405315 + ccReg-3383228806 @@ -2825,13 +2980,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -2851,7 +3006,7 @@ RESPONSE: ABC-12345 - ccReg-0830971889 + ccReg-4682199982 @@ -2873,13 +3028,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -2899,7 +3054,7 @@ RESPONSE: ABC-12345 - ccReg-0164388863 + ccReg-6469460670 @@ -2912,15 +3067,15 @@ REQUEST: - - FIRST0:SH8279968911 + + FIRST0:SH3326380711 wrong password - + 37605030299 dGVzdCBmYWlsCg== @@ -2941,7 +3096,7 @@ RESPONSE: ABC-12345 - ccReg-3707602954 + ccReg-7404986506 @@ -2961,13 +3116,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -2987,7 +3142,7 @@ RESPONSE: ABC-12345 - ccReg-6825816378 + ccReg-7294017342 @@ -3002,7 +3157,7 @@ REQUEST: - + ABC-12345 @@ -3015,12 +3170,12 @@ RESPONSE: - - Required parameter missing: check > check > id [id] + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}check': Missing child element(s). Expected is ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}id ). ABC-12345 - ccReg-9788764550 + ccReg-7052563758 @@ -3035,7 +3190,7 @@ REQUEST: - + FIXED:CHECK-1234 check-4321 @@ -3067,7 +3222,7 @@ RESPONSE: ABC-12345 - ccReg-9839785016 + ccReg-9831020858 @@ -3082,7 +3237,7 @@ REQUEST: - + FIXED:CHECK-LEGACY CID:FIXED:CHECK-LEGACY @@ -3114,7 +3269,7 @@ RESPONSE: ABC-12345 - ccReg-9362972292 + ccReg-3695978327 @@ -3129,7 +3284,7 @@ REQUEST: - + ABC-12345 @@ -3142,12 +3297,12 @@ RESPONSE: - - Required parameter missing: info > info > id [id] + + Element '{https://epp.tld.ee/schema/contact-eis-1.0.xsd}info': Missing child element(s). Expected is ( {https://epp.tld.ee/schema/contact-eis-1.0.xsd}id ). ABC-12345 - ccReg-3116135051 + ccReg-0977011305 @@ -3162,7 +3317,7 @@ REQUEST: - + no-contact password @@ -3188,7 +3343,7 @@ RESPONSE: ABC-12345 - ccReg-6543073909 + ccReg-5298387301 @@ -3203,7 +3358,7 @@ REQUEST: - + FIXED:INFO-4444 password @@ -3240,10 +3395,10 @@ RESPONSE: +372.12345678 - christop@rohanwiegand.name + adaline.farrell@wilkinson.org fixed registrar TEST-CREATOR - 2015-07-20T12:20:28Z + 2015-07-28T08:40:06Z password @@ -3256,7 +3411,7 @@ RESPONSE:
ABC-12345 - ccReg-4281590418 + ccReg-5155368245
@@ -3271,7 +3426,7 @@ REQUEST: - + FIXED:CID:FIXED:INFO-5555 password @@ -3308,10 +3463,10 @@ RESPONSE: +372.12345678 - christop@rohanwiegand.name + adaline.farrell@wilkinson.org fixed registrar TEST-CREATOR - 2015-07-20T12:20:28Z + 2015-07-28T08:40:06Z password @@ -3324,7 +3479,7 @@ RESPONSE:
ABC-12345 - ccReg-3537755285 + ccReg-5763471786
@@ -3339,7 +3494,7 @@ REQUEST: - + FIRST0:INFO-IDENT password @@ -3376,10 +3531,10 @@ RESPONSE: +372.12345678 - christop@rohanwiegand.name + adaline.farrell@wilkinson.org registrar1 TEST-CREATOR - 2015-07-20T12:20:28Z + 2015-07-28T08:40:06Z password @@ -3392,7 +3547,7 @@ RESPONSE:
ABC-12345 - ccReg-9599330280 + ccReg-1407507322
@@ -3407,8 +3562,8 @@ REQUEST: - - FIRST0:SH025726680 + + FIRST0:SH401752550 wrong-pw @@ -3430,11 +3585,11 @@ RESPONSE: - FIRST0:SH025726680 + FIRST0:SH401752550 EIS-1 - Mya Schultz0 + Gloria Boyer MD0 Short street 11 Tallinn @@ -3444,10 +3599,10 @@ RESPONSE: +372.12345678 - christop@rohanwiegand.name + adaline.farrell@wilkinson.org registrar1 TEST-CREATOR - 2015-07-20T12:20:03Z + 2015-07-28T08:39:30Z password @@ -3460,7 +3615,7 @@ RESPONSE: ABC-12345 - ccReg-6604068273 + ccReg-6798027147 @@ -3475,7 +3630,7 @@ REQUEST: - + FIXED:TEST:CUSTOM:CODE password @@ -3502,7 +3657,7 @@ RESPONSE: EIS-32 - Salma Braun I15 + Mr. Brooks Crooks15 Short street 11 Tallinn @@ -3512,10 +3667,10 @@ RESPONSE: +372.12345678 - christop@rohanwiegand.name + adaline.farrell@wilkinson.org fixed registrar TEST-CREATOR - 2015-07-20T12:20:29Z + 2015-07-28T08:40:06Z password @@ -3528,7 +3683,7 @@ RESPONSE: ABC-12345 - ccReg-9069364744 + ccReg-3521737420 @@ -3550,13 +3705,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -3576,7 +3731,7 @@ RESPONSE: ABC-12345 - ccReg-2255565060 + ccReg-9495273454 @@ -3589,8 +3744,8 @@ REQUEST: - - FIRST0:SH025726680 + + FIRST0:SH401752550 password @@ -3612,11 +3767,11 @@ RESPONSE: - FIRST0:SH025726680 + FIRST0:SH401752550 EIS-1 - Mya Schultz0 + Gloria Boyer MD0 Short street 11 Tallinn @@ -3626,10 +3781,10 @@ RESPONSE: +372.12345678 - christop@rohanwiegand.name + adaline.farrell@wilkinson.org registrar1 TEST-CREATOR - 2015-07-20T12:20:03Z + 2015-07-28T08:39:30Z password @@ -3642,7 +3797,7 @@ RESPONSE: ABC-12345 - ccReg-4126996626 + ccReg-7991464495 @@ -3662,13 +3817,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -3688,7 +3843,7 @@ RESPONSE: ABC-12345 - ccReg-3158238134 + ccReg-4527051077 @@ -3710,13 +3865,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -3736,7 +3891,7 @@ RESPONSE: ABC-12345 - ccReg-8816679423 + ccReg-0913409657 @@ -3749,8 +3904,8 @@ REQUEST: - - FIRST0:SH025726680 + + FIRST0:SH401752550 wrong-pw @@ -3772,7 +3927,7 @@ RESPONSE: ABC-12345 - ccReg-8022868547 + ccReg-6286749211 @@ -3792,13 +3947,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -3818,7 +3973,7 @@ RESPONSE: ABC-12345 - ccReg-8211008101 + ccReg-8291798513 @@ -3840,13 +3995,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -3866,7 +4021,7 @@ RESPONSE: ABC-12345 - ccReg-3690078288 + ccReg-5404035767 @@ -3879,8 +4034,8 @@ REQUEST: - - FIRST0:SH025726680 + + FIRST0:SH401752550 @@ -3902,20 +4057,20 @@ RESPONSE: - FIRST0:SH025726680 + FIRST0:SH401752550 EIS-1 - Mya Schultz0 + Gloria Boyer MD0 registrar1 TEST-CREATOR - 2015-07-20T12:20:03Z + 2015-07-28T08:39:30Z ABC-12345 - ccReg-4424374395 + ccReg-2003839888 @@ -3935,13 +4090,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -3961,7 +4116,7 @@ RESPONSE: ABC-12345 - ccReg-8805009598 + ccReg-5982274752 @@ -3981,13 +4136,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -4007,7 +4162,7 @@ RESPONSE: ABC-12345 - ccReg-9912536318 + ccReg-1309091299 @@ -4022,8 +4177,8 @@ REQUEST: - - example570502870390653.ee + + example92166977555993338.ee 1 @@ -4050,7 +4205,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -4070,7 +4225,7 @@ RESPONSE: ABC-12345 - ccReg-5417579954 + ccReg-0406877402 @@ -4085,8 +4240,8 @@ REQUEST: - - example75362879070324119.ee + + example81690264966073237.ee 1 @@ -4113,7 +4268,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -4142,7 +4297,7 @@ RESPONSE: ABC-12345 - ccReg-4615781545 + ccReg-7250362476 @@ -4157,7 +4312,7 @@ REQUEST: - + test.ee @@ -4186,7 +4341,7 @@ RESPONSE: ABC-12345 - ccReg-2345416164 + ccReg-0791690819 @@ -4201,8 +4356,8 @@ REQUEST: - - example33195882581021572.ee + + example32543506110306742.ee 1 @@ -4229,7 +4384,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -4249,14 +4404,14 @@ RESPONSE: - example33195882581021572.ee - 2015-07-20T12:20:33Z - 2016-07-20T12:20:33Z + example32543506110306742.ee + 2015-07-28T08:40:12Z + 2016-07-28T08:40:12Z ABC-12345 - ccReg-1147889264 + ccReg-3409698461 @@ -4271,8 +4426,8 @@ REQUEST: - - example29083099037202800.ee + + example36382345567850627.ee 1 @@ -4291,7 +4446,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -4311,14 +4466,14 @@ RESPONSE: - example29083099037202800.ee - 2015-07-20T12:20:34Z - 2016-07-20T12:20:34Z + example36382345567850627.ee + 2015-07-28T08:40:12Z + 2016-07-28T08:40:12Z ABC-12345 - ccReg-6390466416 + ccReg-4473161202 @@ -4333,15 +4488,15 @@ REQUEST: - - example50220100704932421.ee + + example94744851802697081.ee 1 - ns1.example50220100704932421.ee + ns1.example94744851802697081.ee - ns2.example50220100704932421.ee + ns2.example94744851802697081.ee FIXED:CITIZEN_1234 @@ -4359,7 +4514,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -4379,7 +4534,7 @@ RESPONSE: ABC-12345 - ccReg-0487604546 + ccReg-0945142666 @@ -4394,7 +4549,7 @@ REQUEST: - + äääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääää.ee 1 @@ -4422,7 +4577,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -4442,7 +4597,7 @@ RESPONSE: ABC-12345 - ccReg-8422952576 + ccReg-1975664747 @@ -4457,7 +4612,7 @@ REQUEST: - + 1162.ee 1 @@ -4485,7 +4640,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -4505,7 +4660,7 @@ RESPONSE: ABC-12345 - ccReg-9059359716 + ccReg-1640127046 @@ -4518,7 +4673,7 @@ REQUEST: - + 1162.ee 1 @@ -4546,7 +4701,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== wrong_pw @@ -4569,7 +4724,7 @@ RESPONSE: ABC-12345 - ccReg-7880510278 + ccReg-2908502858 @@ -4584,7 +4739,7 @@ REQUEST: - + 1162.ee 1 @@ -4612,7 +4767,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== abc @@ -4636,13 +4791,13 @@ RESPONSE: 1162.ee - 2015-07-20T12:20:38Z - 2016-07-20T12:20:38Z + 2015-07-28T08:40:17Z + 2016-07-28T08:40:17Z ABC-12345 - ccReg-5735880569 + ccReg-0275498048 @@ -4657,7 +4812,7 @@ REQUEST: - + ftp.ee 1 @@ -4685,7 +4840,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -4708,7 +4863,7 @@ RESPONSE: ABC-12345 - ccReg-4380789258 + ccReg-9470981751 @@ -4723,8 +4878,8 @@ REQUEST: - - example60325525827762784.ee + + example62168642411513599.ee 1 @@ -4747,7 +4902,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -4767,7 +4922,7 @@ RESPONSE: ABC-12345 - ccReg-4021668229 + ccReg-0968519360 @@ -4782,8 +4937,8 @@ REQUEST: - - example42884591161561847.ee + + example71800352143417997.ee 1 FIXED:CITIZEN_1234 FIXED:SH8013 @@ -4800,7 +4955,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -4823,7 +4978,7 @@ RESPONSE: ABC-12345 - ccReg-0839423432 + ccReg-7839854930 @@ -4838,8 +4993,8 @@ REQUEST: - - example51822641645885173.ee + + example71680402331588779.ee 1 @@ -4900,7 +5055,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -4920,7 +5075,7 @@ RESPONSE: ABC-12345 - ccReg-2879314203 + ccReg-3550426764 @@ -4935,8 +5090,8 @@ REQUEST: - - example95701265975718561.ee + + example68109979538689428.ee 1 @@ -4961,7 +5116,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -4990,7 +5145,7 @@ RESPONSE: ABC-12345 - ccReg-5350649366 + ccReg-3024443751 @@ -5005,8 +5160,8 @@ REQUEST: - - example79689508380822639.ee + + example76831955690582435.ee 1 ns1.example.ee @@ -5027,7 +5182,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -5047,7 +5202,7 @@ RESPONSE: ABC-12345 - ccReg-8596117535 + ccReg-6323264384 @@ -5062,8 +5217,8 @@ REQUEST: - - example65830382884082211.ee + + example32514723684684037.ee 1 @@ -5085,7 +5240,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -5105,14 +5260,14 @@ RESPONSE: - example65830382884082211.ee - 2015-07-20T12:20:45Z - 2016-07-20T12:20:45Z + example32514723684684037.ee + 2015-07-28T08:40:23Z + 2016-07-28T08:40:23Z ABC-12345 - ccReg-5868012961 + ccReg-5056598055 @@ -5127,8 +5282,8 @@ REQUEST: - - example37104311749905114.ee + + example40338285586899571.ee 1 @@ -5150,7 +5305,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -5179,7 +5334,7 @@ RESPONSE: ABC-12345 - ccReg-0235011217 + ccReg-0826897719 @@ -5194,8 +5349,8 @@ REQUEST: - - example17283406877102608.ee + + example66186778295502856.ee 365 @@ -5222,7 +5377,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -5242,14 +5397,14 @@ RESPONSE: - example17283406877102608.ee - 2015-07-20T12:20:47Z - 2016-07-20T12:20:47Z + example66186778295502856.ee + 2015-07-28T08:40:25Z + 2016-07-28T08:40:25Z ABC-12345 - ccReg-1880838523 + ccReg-1614664137 @@ -5264,8 +5419,8 @@ REQUEST: - - example42530658953623496.ee + + example91954080942379032.ee 2 @@ -5292,7 +5447,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -5312,14 +5467,14 @@ RESPONSE: - example42530658953623496.ee - 2015-07-20T12:20:47Z - 2017-07-20T12:20:47Z + example91954080942379032.ee + 2015-07-28T08:40:25Z + 2017-07-28T08:40:25Z ABC-12345 - ccReg-8325021198 + ccReg-4703652719 @@ -5334,8 +5489,8 @@ REQUEST: - - example20254148699039299.ee + + example30928593583996919.ee 36 @@ -5362,7 +5517,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -5382,14 +5537,14 @@ RESPONSE: - example20254148699039299.ee - 2015-07-20T12:20:47Z - 2018-07-20T12:20:47Z + example30928593583996919.ee + 2015-07-28T08:40:26Z + 2018-07-28T08:40:26Z ABC-12345 - ccReg-7073164530 + ccReg-7270105536 @@ -5404,8 +5559,8 @@ REQUEST: - - example41984719173309545.ee + + example46362933949869671.ee ns1.example.net @@ -5431,7 +5586,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -5451,14 +5606,14 @@ RESPONSE: - example41984719173309545.ee - 2015-07-20T12:20:48Z - 2016-07-20T12:20:48Z + example46362933949869671.ee + 2015-07-28T08:40:26Z + 2016-07-28T08:40:26Z ABC-12345 - ccReg-4589575398 + ccReg-1881376659 @@ -5473,8 +5628,8 @@ REQUEST: - - example85680911639912537.ee + + example11714535017331079.ee 367 @@ -5501,7 +5656,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -5524,7 +5679,7 @@ RESPONSE: ABC-12345 - ccReg-6760895164 + ccReg-5484931345 @@ -5539,8 +5694,8 @@ REQUEST: - - example80718300051718809.ee + + example12063060146758107.ee 1 @@ -5567,7 +5722,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -5582,12 +5737,15 @@ RESPONSE: - - Attribute is invalid: unit + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}period', attribute 'unit': [facet 'enumeration'] The value '' is not an element of the set {'y', 'm', 'd'}. + + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}period', attribute 'unit': '' is not a valid value of the atomic type '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}pUnitType'. ABC-12345 - ccReg-3281076662 + ccReg-8109184091 @@ -5600,8 +5758,8 @@ REQUEST: - - example53736479297046054.ee + + example22134060080142573.ee 1 @@ -5628,7 +5786,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -5643,12 +5801,15 @@ RESPONSE: - - Attribute is invalid: unit + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}period', attribute 'unit': [facet 'enumeration'] The value 'bla' is not an element of the set {'y', 'm', 'd'}. + + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}period', attribute 'unit': 'bla' is not a valid value of the atomic type '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}pUnitType'. ABC-12345 - ccReg-9798834679 + ccReg-6082364829 @@ -5663,8 +5824,8 @@ REQUEST: - - example18929120996156482.ee + + example81422504470924299.ee 1 @@ -5703,7 +5864,7 @@ REQUEST: 841936717ae427ace63c28d04918569a841936717ae427ace63c28d0 - + dGVzdCBmYWlsCg== @@ -5723,14 +5884,14 @@ RESPONSE: - example18929120996156482.ee - 2015-07-20T12:20:51Z - 2016-07-20T12:20:51Z + example81422504470924299.ee + 2015-07-28T08:40:30Z + 2016-07-28T08:40:30Z ABC-12345 - ccReg-3259504282 + ccReg-1274053409 @@ -5745,8 +5906,8 @@ REQUEST: - - example92492494814312141.ee + + example52530934380418051.ee 1 @@ -5785,7 +5946,83 @@ REQUEST: - + + dGVzdCBmYWlsCg== + + + ABC-12345 + + +``` + +RESPONSE: + +```xml + + + + + Element '{urn:ietf:params:xml:ns:secDNS-1.1}pubKey': [facet 'minLength'] The value has a length of '0'; this underruns the allowed minimum length of '1'. + + + Element '{urn:ietf:params:xml:ns:secDNS-1.1}pubKey': '' is not a valid value of the atomic type '{urn:ietf:params:xml:ns:secDNS-1.1}keyType'. + + + ABC-12345 + ccReg-0039779987 + + + +``` + +REQUEST: + +```xml + + + + + + example6111657126731846.ee + 1 + + + ns1.example.net + 192.0.2.2 + 1080:0:0:0:8:800:200C:417A + + + ns2.example.net + + + FIXED:CITIZEN_1234 + FIXED:SH8013 + FIXED:SH8013 + FIXED:SH801333 + + + + + + 250 + 4 + 9 + AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 + + + 1 + 3 + 10 + 700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f + + + 256 + 5 + 254 + AwEAAbuFiHS4jZL7ZQKvEPBmsbceNHTVYpEVMdxz2A6YCjlZTEoAH3qK + + + dGVzdCBmYWlsCg== @@ -5830,9 +6067,6 @@ RESPONSE: 1 - - Public key is missing [public_key] - Valid protocols are: 3 [protocol] @@ -5841,7 +6075,7 @@ RESPONSE: ABC-12345 - ccReg-0230853937 + ccReg-5415301002 @@ -5856,8 +6090,8 @@ REQUEST: - - example62629375729901991.ee + + example59960668723180884.ee 1 @@ -5890,7 +6124,7 @@ REQUEST: 700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f - + dGVzdCBmYWlsCg== @@ -5913,7 +6147,7 @@ RESPONSE: ABC-12345 - ccReg-7041910495 + ccReg-3029612280 @@ -5928,8 +6162,8 @@ REQUEST: - - example96324057439285023.ee + + example96012563680688440.ee 1 @@ -5962,7 +6196,7 @@ REQUEST: 700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f - + dGVzdCBmYWlsCg== @@ -5982,7 +6216,7 @@ RESPONSE: ABC-12345 - ccReg-8684907061 + ccReg-0186058439 @@ -5997,8 +6231,8 @@ REQUEST: - - example7613404788385072.ee + + example76656279799751526.ee 1 @@ -6025,7 +6259,7 @@ REQUEST: 49FD46E6C4B45C55D4AC - + dGVzdCBmYWlsCg== @@ -6045,14 +6279,14 @@ RESPONSE: - example7613404788385072.ee - 2015-07-20T12:20:55Z - 2016-07-20T12:20:55Z + example76656279799751526.ee + 2015-07-28T08:40:35Z + 2016-07-28T08:40:35Z ABC-12345 - ccReg-1502217297 + ccReg-2063281633 @@ -6067,8 +6301,8 @@ REQUEST: - - example49277921871401732.ee + + example70580501288966544.ee 1 @@ -6101,7 +6335,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -6121,14 +6355,14 @@ RESPONSE: - example49277921871401732.ee - 2015-07-20T12:20:55Z - 2016-07-20T12:20:55Z + example70580501288966544.ee + 2015-07-28T08:40:35Z + 2016-07-28T08:40:35Z ABC-12345 - ccReg-7793749692 + ccReg-4381859223 @@ -6143,8 +6377,8 @@ REQUEST: - - example56030289069030352.ee + + example95275486168393163.ee 1 @@ -6177,7 +6411,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -6197,7 +6431,7 @@ RESPONSE: ABC-12345 - ccReg-6717955892 + ccReg-3354909144 @@ -6212,8 +6446,8 @@ REQUEST: - - example75160608584221394.ee + + example97367469702829730.ee 1 @@ -6240,7 +6474,7 @@ REQUEST: 700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f - + dGVzdCBmYWlsCg== @@ -6260,7 +6494,7 @@ RESPONSE: ABC-12345 - ccReg-5278324812 + ccReg-8644792351 @@ -6275,8 +6509,8 @@ REQUEST: - - example3956990749578865.ee + + example70071198549943103.ee 1 @@ -6309,7 +6543,7 @@ REQUEST: 700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f - + dGVzdCBmYWlsCg== @@ -6324,12 +6558,12 @@ RESPONSE: - - Mutually exclusive parameters: extension > create > keyData, extension > create > dsData + + Element '{urn:ietf:params:xml:ns:secDNS-1.1}keyData': This element is not expected. Expected is ( {urn:ietf:params:xml:ns:secDNS-1.1}dsData ). ABC-12345 - ccReg-2075438432 + ccReg-8173091592 @@ -6344,8 +6578,8 @@ REQUEST: - - example75024791554839013.ee + + example22431835510518513.ee 1 @@ -6370,7 +6604,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -6390,14 +6624,14 @@ RESPONSE: - example75024791554839013.ee - 2015-07-20T12:20:59Z - 2016-07-20T12:20:59Z + example22431835510518513.ee + 2015-07-28T08:40:39Z + 2016-07-28T08:40:39Z ABC-12345 - ccReg-9163696822 + ccReg-2819985278 @@ -6412,8 +6646,8 @@ REQUEST: - - example53305717298495096.ee + + example59566819674530307.ee 1 @@ -6438,7 +6672,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -6458,7 +6692,7 @@ RESPONSE: ABC-12345 - ccReg-3120626473 + ccReg-6708083266 @@ -6473,8 +6707,8 @@ REQUEST: - - example32384352982726855.ee + + example72083543502407430.ee 1 @@ -6499,7 +6733,7 @@ REQUEST: AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - + dGVzdCBmYWlsCg== @@ -6522,7 +6756,7 @@ RESPONSE: ABC-12345 - ccReg-5596974110 + ccReg-7325897703 @@ -6544,13 +6778,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -6570,7 +6804,7 @@ RESPONSE: ABC-12345 - ccReg-6631909729 + ccReg-4047445422 @@ -6583,15 +6817,15 @@ REQUEST: - + domain1.ee - 42ae0ae9efbfe30e392c68f43868c156 + 512701cc6a8455e43612526cfd613ef1 - + dGVzdCBmYWlsCg== @@ -6614,15 +6848,15 @@ RESPONSE: domain1.ee serverApproved REGDOMAIN2 - 2015-07-20T12:21:01Z + 2015-07-28T08:40:42Z REGDOMAIN1 - 2015-07-20T12:21:01Z - 2016-07-20T12:21:01Z + 2015-07-28T08:40:42Z + 2016-07-28T08:40:41Z ABC-12345 - ccReg-2214642281 + ccReg-2882098037 @@ -6642,13 +6876,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -6668,7 +6902,7 @@ RESPONSE: ABC-12345 - ccReg-1292310412 + ccReg-4020170558 @@ -6696,23 +6930,23 @@ RESPONSE: Command completed successfully; ack to dequeue - 2015-07-20T12:21:01Z - Domain transfer was approved, associated contacts were: ["FIXED:SH0793743512", "FIXED:SH0934542813"] and registrant was FIXED:REGISTRANT628212490 + 2015-07-28T08:40:42Z + Domain transfer was approved, associated contacts were: ["FIXED:SH0465812013", "FIXED:SH3835271712"] and registrant was FIXED:REGISTRANT779976690 domain1.ee serverApproved REGDOMAIN2 - 2015-07-20T12:21:01Z + 2015-07-28T08:40:42Z REGDOMAIN1 - 2015-07-20T12:21:01Z - 2016-07-20T12:21:01Z + 2015-07-28T08:40:42Z + 2016-07-28T08:40:41Z ABC-12345 - ccReg-9388013169 + ccReg-2433533762 @@ -6725,15 +6959,15 @@ REQUEST: - + domain1.ee - 0e24645ded1d5674883359a3a6efc6d8 + 3c706b7554d122c07c3a96255b62f728 - + dGVzdCBmYWlsCg== @@ -6756,15 +6990,15 @@ RESPONSE: domain1.ee pending REGDOMAIN1 - 2015-07-20T12:21:02Z + 2015-07-28T08:40:42Z REGDOMAIN2 - 2015-07-20T13:21:02Z - 2016-07-20T12:21:01Z + 2015-07-28T09:40:42Z + 2016-07-28T08:40:41Z ABC-12345 - ccReg-9029270554 + ccReg-9163815770 @@ -6777,15 +7011,15 @@ REQUEST: - + domain1.ee - 0e24645ded1d5674883359a3a6efc6d8 + 3c706b7554d122c07c3a96255b62f728 - + dGVzdCBmYWlsCg== @@ -6808,15 +7042,15 @@ RESPONSE: domain1.ee pending REGDOMAIN1 - 2015-07-20T12:21:02Z + 2015-07-28T08:40:42Z REGDOMAIN2 - 2015-07-20T13:21:02Z - 2016-07-20T12:21:01Z + 2015-07-28T09:40:42Z + 2016-07-28T08:40:41Z ABC-12345 - ccReg-0388826817 + ccReg-1344906774 @@ -6836,13 +7070,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -6862,7 +7096,7 @@ RESPONSE: ABC-12345 - ccReg-0498670065 + ccReg-2023826073 @@ -6890,7 +7124,7 @@ RESPONSE: Command completed successfully; ack to dequeue - 2015-07-20T12:21:02Z + 2015-07-28T08:40:42Z Transfer requested. @@ -6898,15 +7132,15 @@ RESPONSE: domain1.ee pending REGDOMAIN1 - 2015-07-20T12:21:02Z + 2015-07-28T08:40:42Z REGDOMAIN2 - 2015-07-20T13:21:02Z - 2016-07-20T12:21:01Z + 2015-07-28T09:40:42Z + 2016-07-28T08:40:41Z ABC-12345 - ccReg-6099337553 + ccReg-1404467939 @@ -6926,13 +7160,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -6952,7 +7186,7 @@ RESPONSE: ABC-12345 - ccReg-6330709065 + ccReg-8545555548 @@ -6972,13 +7206,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -6998,7 +7232,7 @@ RESPONSE: ABC-12345 - ccReg-0823078626 + ccReg-8253885703 @@ -7028,7 +7262,7 @@ RESPONSE: ABC-12345 - ccReg-3407108277 + ccReg-3483466836 @@ -7048,13 +7282,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7074,7 +7308,7 @@ RESPONSE: ABC-12345 - ccReg-8158959328 + ccReg-4285977126 @@ -7096,13 +7330,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7122,7 +7356,7 @@ RESPONSE: ABC-12345 - ccReg-7908078276 + ccReg-4057108889 @@ -7135,15 +7369,15 @@ REQUEST: - + domain2.ee - cc8d4d0ec06659816e33ffa712bfcb96 + 5d98f2cbe11306469ce55447e995a1c4 - + dGVzdCBmYWlsCg== @@ -7166,15 +7400,15 @@ RESPONSE: domain2.ee pending REGDOMAIN2 - 2015-07-20T12:21:03Z + 2015-07-28T08:40:43Z REGDOMAIN1 - 2015-07-20T13:21:03Z - 2016-07-20T12:21:02Z + 2015-07-28T09:40:43Z + 2016-07-28T08:40:43Z ABC-12345 - ccReg-7665340028 + ccReg-4612548825 @@ -7194,13 +7428,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7220,7 +7454,7 @@ RESPONSE: ABC-12345 - ccReg-5828166420 + ccReg-4051705615 @@ -7240,13 +7474,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7266,7 +7500,7 @@ RESPONSE: ABC-12345 - ccReg-0390925631 + ccReg-1410613698 @@ -7279,15 +7513,15 @@ REQUEST: - + domain2.ee - cc8d4d0ec06659816e33ffa712bfcb96 + 5d98f2cbe11306469ce55447e995a1c4 - + dGVzdCBmYWlsCg== @@ -7310,15 +7544,15 @@ RESPONSE: domain2.ee pending REGDOMAIN2 - 2015-07-20T12:21:03Z + 2015-07-28T08:40:43Z REGDOMAIN1 - 2015-07-20T13:21:03Z - 2016-07-20T12:21:02Z + 2015-07-28T09:40:43Z + 2016-07-28T08:40:43Z ABC-12345 - ccReg-7815459019 + ccReg-2313898331 @@ -7338,13 +7572,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7364,7 +7598,7 @@ RESPONSE: ABC-12345 - ccReg-5696383242 + ccReg-5075928895 @@ -7386,13 +7620,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7412,7 +7646,7 @@ RESPONSE: ABC-12345 - ccReg-0361532903 + ccReg-8432415801 @@ -7425,10 +7659,10 @@ REQUEST: - + domain3.ee - 11a06f18e5e558f6b64753eaaa49173c + d21cc5784da4f1cd0a69ebccd64ea825 @@ -7451,15 +7685,15 @@ RESPONSE: domain3.ee serverApproved REGDOMAIN2 - 2015-07-20T12:21:03Z + 2015-07-28T08:40:44Z REGDOMAIN1 - 2015-07-20T12:21:03Z - 2016-07-20T12:21:03Z + 2015-07-28T08:40:44Z + 2016-07-28T08:40:44Z ABC-12345 - ccReg-1922684214 + ccReg-8319808701 @@ -7479,13 +7713,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7505,7 +7739,7 @@ RESPONSE: ABC-12345 - ccReg-6625998366 + ccReg-3709709960 @@ -7527,13 +7761,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7553,7 +7787,7 @@ RESPONSE: ABC-12345 - ccReg-6115177494 + ccReg-7289638867 @@ -7566,10 +7800,10 @@ REQUEST: - + domain4.ee - fc66d69a22fd1bcdbf3be76be431b09d + c542d3f99353e1d042716d824f6fec12 @@ -7592,15 +7826,15 @@ RESPONSE: domain4.ee serverApproved REGDOMAIN2 - 2015-07-20T12:21:04Z + 2015-07-28T08:40:45Z REGDOMAIN1 - 2015-07-20T12:21:04Z - 2016-07-20T12:21:04Z + 2015-07-28T08:40:45Z + 2016-07-28T08:40:45Z ABC-12345 - ccReg-6602340224 + ccReg-6544417100 @@ -7620,13 +7854,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7646,7 +7880,7 @@ RESPONSE: ABC-12345 - ccReg-0189478310 + ccReg-9728924318 @@ -7668,13 +7902,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7694,7 +7928,7 @@ RESPONSE: ABC-12345 - ccReg-1849244891 + ccReg-4703756087 @@ -7707,10 +7941,10 @@ REQUEST: - + domain5.ee - 4d5a71cc6c7d0ddcf59d2816b42e98d3 + d4bf9e0bc0fd09c7252541a194473cec @@ -7733,15 +7967,15 @@ RESPONSE: domain5.ee serverApproved REGDOMAIN2 - 2015-07-20T12:21:04Z + 2015-07-28T08:40:46Z REGDOMAIN1 - 2015-07-20T12:21:04Z - 2016-07-20T12:21:04Z + 2015-07-28T08:40:46Z + 2016-07-28T08:40:46Z ABC-12345 - ccReg-4389324014 + ccReg-1877217438 @@ -7761,13 +7995,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7787,7 +8021,7 @@ RESPONSE: ABC-12345 - ccReg-1406038981 + ccReg-3796353322 @@ -7809,13 +8043,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7835,7 +8069,7 @@ RESPONSE: ABC-12345 - ccReg-9456181034 + ccReg-3792624699 @@ -7848,10 +8082,10 @@ REQUEST: - + domain8.ee - 2ec2e6c76768ad88df0dbeba38f710e6 + 0bd19effb6079c4790d1475bd0199723 @@ -7874,15 +8108,15 @@ RESPONSE: domain8.ee serverApproved REGDOMAIN2 - 2015-07-20T12:21:05Z + 2015-07-28T08:40:47Z REGDOMAIN1 - 2015-07-20T12:21:05Z - 2016-07-20T12:21:05Z + 2015-07-28T08:40:47Z + 2016-07-28T08:40:46Z ABC-12345 - ccReg-8961033045 + ccReg-2654465761 @@ -7902,13 +8136,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7928,7 +8162,7 @@ RESPONSE: ABC-12345 - ccReg-3331669362 + ccReg-9967282082 @@ -7950,13 +8184,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -7976,7 +8210,7 @@ RESPONSE: ABC-12345 - ccReg-8610740309 + ccReg-7212461778 @@ -7989,10 +8223,10 @@ REQUEST: - + domain9.ee - d36b447200a1aaac2bd7b5a878652bf5 + 10eadc71cf7e6f1e87e1bf54bc99e263 @@ -8015,15 +8249,15 @@ RESPONSE: domain9.ee serverApproved REGDOMAIN2 - 2015-07-20T12:21:06Z + 2015-07-28T08:40:48Z REGDOMAIN1 - 2015-07-20T12:21:06Z - 2016-07-20T12:21:05Z + 2015-07-28T08:40:48Z + 2016-07-28T08:40:47Z ABC-12345 - ccReg-4924038906 + ccReg-1877104282 @@ -8043,13 +8277,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8069,7 +8303,7 @@ RESPONSE: ABC-12345 - ccReg-9466435181 + ccReg-6337086891 @@ -8091,13 +8325,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8117,7 +8351,7 @@ RESPONSE: ABC-12345 - ccReg-1012066886 + ccReg-0660234392 @@ -8130,10 +8364,10 @@ REQUEST: - + domain11.ee - cbb169bf8cd2f5ba0a3fcebaf7fa97fb + 5d943994996a6a851e7247db3d2c1c4a @@ -8156,15 +8390,15 @@ RESPONSE: domain11.ee serverApproved REGDOMAIN2 - 2015-07-20T12:21:06Z + 2015-07-28T08:40:48Z REGDOMAIN1 - 2015-07-20T12:21:06Z - 2016-07-20T12:21:06Z + 2015-07-28T08:40:48Z + 2016-07-28T08:40:48Z ABC-12345 - ccReg-3666773781 + ccReg-9157975420 @@ -8184,13 +8418,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8210,7 +8444,7 @@ RESPONSE: ABC-12345 - ccReg-8539521284 + ccReg-6402981411 @@ -8232,13 +8466,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8258,7 +8492,7 @@ RESPONSE: ABC-12345 - ccReg-9934829298 + ccReg-4407801058 @@ -8271,10 +8505,10 @@ REQUEST: - + domain14.ee - 7590473cda31d3a0b3c2d8ffbf410b7c + 75065639f9945045256b9c5fe2a8fadc @@ -8297,15 +8531,15 @@ RESPONSE: domain14.ee serverApproved REGDOMAIN2 - 2015-07-20T12:21:07Z + 2015-07-28T08:40:49Z REGDOMAIN1 - 2015-07-20T12:21:07Z - 2016-07-20T12:21:07Z + 2015-07-28T08:40:49Z + 2016-07-28T08:40:49Z ABC-12345 - ccReg-3957958416 + ccReg-9637117596 @@ -8325,13 +8559,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8351,7 +8585,7 @@ RESPONSE: ABC-12345 - ccReg-2846490102 + ccReg-0421936954 @@ -8373,13 +8607,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8399,7 +8633,7 @@ RESPONSE: ABC-12345 - ccReg-8593621207 + ccReg-8532719762 @@ -8412,10 +8646,10 @@ REQUEST: - + domain15.ee - 91a1593675c6b62f498280dcff1613ae + e6349b913cb0788975f93a02ba220510 @@ -8438,15 +8672,15 @@ RESPONSE: domain15.ee serverApproved REGDOMAIN2 - 2015-07-20T12:21:08Z + 2015-07-28T08:40:50Z REGDOMAIN1 - 2015-07-20T12:21:08Z - 2016-07-20T12:21:08Z + 2015-07-28T08:40:50Z + 2016-07-28T08:40:50Z ABC-12345 - ccReg-0429313130 + ccReg-1495969172 @@ -8466,13 +8700,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8492,7 +8726,7 @@ RESPONSE: ABC-12345 - ccReg-6710200336 + ccReg-1225162463 @@ -8514,13 +8748,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8540,7 +8774,7 @@ RESPONSE: ABC-12345 - ccReg-4167067814 + ccReg-5138326156 @@ -8553,7 +8787,7 @@ REQUEST: - + domain16.ee 98oiewslkfkd @@ -8576,7 +8810,7 @@ RESPONSE: ABC-12345 - ccReg-0768769368 + ccReg-9171426317 @@ -8596,13 +8830,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8622,7 +8856,7 @@ RESPONSE: ABC-12345 - ccReg-2348843036 + ccReg-2262790683 @@ -8637,15 +8871,15 @@ REQUEST: - + domain17.ee - 66a79e8236d629c800bc4cddbb5b4b5f + d0d6f5f660ba9b1cb777074e05c9f9d5 - + dGVzdCBmYWlsCg== @@ -8668,15 +8902,15 @@ RESPONSE: domain17.ee clientApproved REGDOMAIN2 - 2015-07-20T12:21:09Z + 2015-07-28T08:40:51Z REGDOMAIN1 - 2015-07-20T12:21:09Z - 2016-07-20T12:21:09Z + 2015-07-28T08:40:51Z + 2016-07-28T08:40:51Z ABC-12345 - ccReg-6454975571 + ccReg-2925262739 @@ -8698,13 +8932,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8724,7 +8958,7 @@ RESPONSE: ABC-12345 - ccReg-5053250099 + ccReg-2033369372 @@ -8737,15 +8971,15 @@ REQUEST: - + domain18.ee - 6d38dcddecdb6cd04201e5bffd7ac13d + f40c17f5451f5c80e562bf9250ccd4d2 - + dGVzdCBmYWlsCg== @@ -8765,7 +8999,7 @@ RESPONSE: ABC-12345 - ccReg-8244838170 + ccReg-7553628884 @@ -8785,13 +9019,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8811,7 +9045,7 @@ RESPONSE: ABC-12345 - ccReg-0300500177 + ccReg-8494729995 @@ -8824,15 +9058,15 @@ REQUEST: - + domain18.ee - 6d38dcddecdb6cd04201e5bffd7ac13d + f40c17f5451f5c80e562bf9250ccd4d2 - + dGVzdCBmYWlsCg== @@ -8855,15 +9089,15 @@ RESPONSE: domain18.ee clientRejected REGDOMAIN2 - 2015-07-20T12:21:09Z + 2015-07-28T08:40:51Z REGDOMAIN1 - 2015-07-20T12:21:09Z - 2016-07-20T12:21:09Z + 2015-07-28T08:40:51Z + 2016-07-28T08:40:51Z ABC-12345 - ccReg-0452666013 + ccReg-0035055015 @@ -8885,13 +9119,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8911,7 +9145,7 @@ RESPONSE: ABC-12345 - ccReg-6312904697 + ccReg-8757184492 @@ -8924,15 +9158,15 @@ REQUEST: - + domain19.ee - c39986ad356b45908b93934b9b531b3e + 619c6d2109ee1b2deca3674b73619fda - + dGVzdCBmYWlsCg== @@ -8952,7 +9186,7 @@ RESPONSE: ABC-12345 - ccReg-8667002062 + ccReg-4815280002 @@ -8972,13 +9206,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -8998,7 +9232,7 @@ RESPONSE: ABC-12345 - ccReg-0572347318 + ccReg-2650484631 @@ -9013,7 +9247,7 @@ REQUEST: - + domain20.ee test @@ -9021,7 +9255,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -9041,7 +9275,7 @@ RESPONSE: ABC-12345 - ccReg-1663579730 + ccReg-1473008535 @@ -9056,15 +9290,15 @@ REQUEST: - + domain21.ee - 97ffdf9ce35006bb804a90b0be86158f + fd06d8982dbdecde7e39f41d7f278c7d - + dGVzdCBmYWlsCg== @@ -9084,7 +9318,7 @@ RESPONSE: ABC-12345 - ccReg-9847617368 + ccReg-0989479481 @@ -9099,8 +9333,8 @@ REQUEST: - - example23607638467376100.ee + + example44755290217170574.ee 98oiewslkfkd @@ -9117,12 +9351,15 @@ RESPONSE: - - Parameter value range error: op + + Element '{urn:ietf:params:xml:ns:epp-1.0}transfer', attribute 'op': [facet 'enumeration'] The value 'bla' is not an element of the set {'approve', 'cancel', 'query', 'reject', 'request'}. + + + Element '{urn:ietf:params:xml:ns:epp-1.0}transfer', attribute 'op': 'bla' is not a valid value of the atomic type '{urn:ietf:params:xml:ns:epp-1.0}transferOpType'. ABC-12345 - ccReg-0869737076 + ccReg-7927987439 @@ -9144,13 +9381,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -9170,7 +9407,7 @@ RESPONSE: ABC-12345 - ccReg-4985517781 + ccReg-2792059598 @@ -9183,15 +9420,15 @@ REQUEST: - + domain22.ee - ed362ab554eed93eef9ba15f47b3a86b + d7aa8aba40bf70cb78dfebc9474664b2 - + dGVzdCBmYWlsCg== @@ -9214,15 +9451,15 @@ RESPONSE: domain22.ee serverApproved REGDOMAIN2 - 2015-07-20T12:21:14Z + 2015-07-28T08:40:57Z REGDOMAIN1 - 2015-07-20T12:21:14Z - 2016-07-20T12:21:14Z + 2015-07-28T08:40:57Z + 2016-07-28T08:40:57Z ABC-12345 - ccReg-5260342726 + ccReg-0573122351 @@ -9235,15 +9472,15 @@ REQUEST: - + domain22.ee - ed362ab554eed93eef9ba15f47b3a86b + d7aa8aba40bf70cb78dfebc9474664b2 - + dGVzdCBmYWlsCg== @@ -9263,7 +9500,7 @@ RESPONSE: ABC-12345 - ccReg-9380689525 + ccReg-0832624566 @@ -9283,13 +9520,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -9309,7 +9546,7 @@ RESPONSE: ABC-12345 - ccReg-6443178020 + ccReg-8225650710 @@ -9324,15 +9561,15 @@ REQUEST: - + domain23.ee - aefa0df0d6e304b99ae3c5ff5220feec + 2c47c46daf97e12ddc0d9fc80da511d0 - + dGVzdCBmYWlsCg== @@ -9352,7 +9589,7 @@ RESPONSE: ABC-12345 - ccReg-7792092906 + ccReg-2025440519 @@ -9367,10 +9604,10 @@ REQUEST: - + domain24.ee - 40bce48fe3a738128d78e17d37bf296b + 9bbf18edcc83fb42ddf249dc1f3e42af @@ -9390,7 +9627,7 @@ RESPONSE: ABC-12345 - ccReg-4927161603 + ccReg-8629472751 @@ -9412,13 +9649,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -9438,7 +9675,7 @@ RESPONSE: ABC-12345 - ccReg-8216102896 + ccReg-7696022252 @@ -9451,15 +9688,15 @@ REQUEST: - + domain25.ee - 064c71aaa009061b95fba395d67df5c5 + 0935877a40fea9441ffd17fee6c0e7d8 - + dGVzdCBmYWlsCg== @@ -9482,15 +9719,15 @@ RESPONSE: domain25.ee pending REGDOMAIN2 - 2015-07-20T12:21:17Z + 2015-07-28T08:41:00Z REGDOMAIN1 - 2015-07-20T13:21:17Z - 2016-07-20T12:21:17Z + 2015-07-28T09:41:00Z + 2016-07-28T08:41:00Z ABC-12345 - ccReg-9762150816 + ccReg-7042077941 @@ -9503,10 +9740,10 @@ REQUEST: - + domain25.ee - 064c71aaa009061b95fba395d67df5c5 + 0935877a40fea9441ffd17fee6c0e7d8 @@ -9529,15 +9766,15 @@ RESPONSE: domain25.ee pending REGDOMAIN2 - 2015-07-20T12:21:17Z + 2015-07-28T08:41:00Z REGDOMAIN1 - 2015-07-20T13:21:17Z - 2016-07-20T12:21:17Z + 2015-07-28T09:41:00Z + 2016-07-28T08:41:00Z ABC-12345 - ccReg-0079805855 + ccReg-4814615747 @@ -9557,13 +9794,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -9583,7 +9820,7 @@ RESPONSE: ABC-12345 - ccReg-1489226149 + ccReg-6824308586 @@ -9596,15 +9833,15 @@ REQUEST: - + domain25.ee - 064c71aaa009061b95fba395d67df5c5 + 0935877a40fea9441ffd17fee6c0e7d8 - + dGVzdCBmYWlsCg== @@ -9627,15 +9864,15 @@ RESPONSE: domain25.ee clientApproved REGDOMAIN2 - 2015-07-20T12:21:17Z + 2015-07-28T08:41:00Z REGDOMAIN1 - 2015-07-20T12:21:18Z - 2016-07-20T12:21:17Z + 2015-07-28T08:41:00Z + 2016-07-28T08:41:00Z ABC-12345 - ccReg-5729769473 + ccReg-2690846279 @@ -9648,10 +9885,10 @@ REQUEST: - + domain25.ee - 5bfe0b53635867fb9e51d987d686b95e + 665baee3468e834243928ce917ecc3ef @@ -9674,15 +9911,149 @@ RESPONSE: domain25.ee clientApproved REGDOMAIN2 - 2015-07-20T12:21:17Z + 2015-07-28T08:41:00Z REGDOMAIN1 - 2015-07-20T12:21:18Z - 2016-07-20T12:21:17Z + 2015-07-28T08:41:00Z + 2016-07-28T08:41:00Z ABC-12345 - ccReg-3432351900 + ccReg-9400606855 + + + +``` + +### EPP Domain with valid domain should not transfer when period element is present + +REQUEST: + +```xml + + + + + registrar2 + ghyt9e4fu + + 1.0 + en + + + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd + urn:ietf:params:xml:ns:host-1.0 + urn:ietf:params:xml:ns:keyrelay-1.0 + + urn:ietf:params:xml:ns:secDNS-1.1 + https://epp.tld.ee/schema/eis-1.0.xsd + + + + ABC-12345 + + +``` + +RESPONSE: + +```xml + + + + + Command completed successfully + + + ABC-12345 + ccReg-1604970396 + + + +``` + +REQUEST: + +```xml + + + + + + domain26.ee + 1 + + e0c3f74927da4bb3eee5667c66115352 + + + + ABC-12345 + + +``` + +RESPONSE: + +```xml + + + + + Unimplemented object service + + + + + + ABC-12345 + ccReg-8617519056 + + + +``` + +REQUEST: + +```xml + + + + + registrar1 + ghyt9e4fu + + 1.0 + en + + + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd + urn:ietf:params:xml:ns:host-1.0 + urn:ietf:params:xml:ns:keyrelay-1.0 + + urn:ietf:params:xml:ns:secDNS-1.1 + https://epp.tld.ee/schema/eis-1.0.xsd + + + + ABC-12345 + + +``` + +RESPONSE: + +```xml + + + + + Command completed successfully + + + ABC-12345 + ccReg-1118050637 @@ -9697,8 +10068,8 @@ REQUEST: - - domain26.ee + + domain27.ee FIXED:CITIZEN_1234 @@ -9706,7 +10077,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -9726,7 +10097,7 @@ RESPONSE: ABC-12345 - ccReg-9973702297 + ccReg-2670008628 @@ -9741,8 +10112,8 @@ REQUEST: - - domain27.ee + + domain28.ee FIXED:CITIZEN_1234 @@ -9750,7 +10121,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -9770,7 +10141,7 @@ RESPONSE: ABC-12345 - ccReg-8501693053 + ccReg-8289277865 @@ -9785,18 +10156,18 @@ REQUEST: - - domain28.ee + + domain29.ee - ns.larkin86.ee + ns.bernhard89.ee - ns.rogahn85.ee + ns.effertzebert88.ee - ns.millerreinger84.ee + ns.ondrickajakubowski87.ee @@ -9807,7 +10178,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -9827,7 +10198,7 @@ RESPONSE: ABC-12345 - ccReg-4663382085 + ccReg-1648208045 @@ -9842,8 +10213,8 @@ REQUEST: - - domain29.ee + + domain30.ee FIXED:CITIZEN_1234 @@ -9851,7 +10222,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -9871,7 +10242,7 @@ RESPONSE: ABC-12345 - ccReg-5422549379 + ccReg-5575143855 @@ -9886,8 +10257,8 @@ REQUEST: - - domain30.ee + + domain31.ee FIXED:CITIZEN_1234 @@ -9895,7 +10266,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -9915,7 +10286,7 @@ RESPONSE: ABC-12345 - ccReg-3789746865 + ccReg-7420673440 @@ -9930,8 +10301,8 @@ REQUEST: - - domain31.ee + + domain32.ee @@ -9984,7 +10355,7 @@ RESPONSE: ABC-12345 - ccReg-8812097526 + ccReg-5413112744 @@ -9997,8 +10368,8 @@ REQUEST: - - domain31.ee + + domain32.ee @@ -10048,7 +10419,7 @@ RESPONSE: ABC-12345 - ccReg-9781141294 + ccReg-3340757346 @@ -10061,8 +10432,8 @@ REQUEST: - - domain31.ee + + domain32.ee @@ -10128,18 +10499,18 @@ RESPONSE: Public key already exists [public_key] - 841936717ae427ace63c28d04918569a841936717ae427ace63c28d0 + 700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f Public key already exists [public_key] - 700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f + 841936717ae427ace63c28d04918569a841936717ae427ace63c28d0 ABC-12345 - ccReg-8076872898 + ccReg-2640140355 @@ -10154,8 +10525,8 @@ REQUEST: - - domain32.ee + + domain33.ee @@ -10191,7 +10562,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -10214,7 +10585,7 @@ RESPONSE: ABC-12345 - ccReg-4282322448 + ccReg-7630828881 @@ -10227,8 +10598,8 @@ REQUEST: - - domain32.ee + + domain33.ee @@ -10264,7 +10635,7 @@ REQUEST: - + dGVzdCBmYWlsCg== @@ -10284,7 +10655,7 @@ RESPONSE: ABC-12345 - ccReg-8176843432 + ccReg-4914897472 @@ -10299,8 +10670,8 @@ REQUEST: - - domain33.ee + + domain34.ee Payment overdue. @@ -10323,7 +10694,7 @@ RESPONSE: ABC-12345 - ccReg-7937074073 + ccReg-1063100515 @@ -10338,8 +10709,8 @@ REQUEST: - - domain34.ee + + domain35.ee @@ -10389,7 +10760,7 @@ RESPONSE: ABC-12345 - ccReg-7570068359 + ccReg-6247129672 @@ -10402,8 +10773,8 @@ REQUEST: - - domain34.ee + + domain35.ee @@ -10443,7 +10814,7 @@ RESPONSE: ABC-12345 - ccReg-1432441976 + ccReg-1536077793 @@ -10456,8 +10827,8 @@ REQUEST: - - domain34.ee + + domain35.ee @@ -10518,7 +10889,7 @@ RESPONSE: ABC-12345 - ccReg-7970574669 + ccReg-9074810399 @@ -10533,8 +10904,8 @@ REQUEST: - - domain35.ee + + domain36.ee @@ -10559,7 +10930,7 @@ RESPONSE: ABC-12345 - ccReg-4754082938 + ccReg-6433694543 @@ -10574,15 +10945,15 @@ REQUEST: - - domain36.ee + + domain37.ee - ns.durganbartoletti105.ee + ns.westemmerich108.ee - FIXED:SH2376317183 + FIXED:SH2488479285 @@ -10602,7 +10973,7 @@ RESPONSE: ABC-12345 - ccReg-5451489239 + ccReg-2752561257 @@ -10615,15 +10986,15 @@ REQUEST: - - domain36.ee + + domain37.ee - ns.durganbartoletti105.ee + ns.westemmerich108.ee - FIXED:SH2376317183 + FIXED:SH2488479285 @@ -10641,18 +11012,18 @@ RESPONSE: Nameserver already exists on this domain [hostname] - ns.durganbartoletti105.ee + ns.westemmerich108.ee Contact already exists on this domain [contact_code_cache] - FIXED:SH2376317183 + FIXED:SH2488479285 ABC-12345 - ccReg-3672850292 + ccReg-9298371804 @@ -10667,8 +11038,8 @@ REQUEST: - - domain37.ee + + domain38.ee FIXED:CITIZEN_1234 @@ -10690,7 +11061,7 @@ RESPONSE: ABC-12345 - ccReg-9096243278 + ccReg-4198817730 @@ -10705,8 +11076,8 @@ REQUEST: - - domain38.ee + + domain39.ee @@ -10723,15 +11094,15 @@ RESPONSE: - - Status was not found - - invalidStatus - + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}status', attribute 's': [facet 'enumeration'] The value 'invalidStatus' is not an element of the set {'clientDeleteProhibited', 'clientHold', 'clientRenewProhibited', 'clientTransferProhibited', 'clientUpdateProhibited', 'inactive', 'ok', 'pendingCreate', 'pendingDelete', 'pendingRenew', 'pendingTransfer', 'pendingUpdate', 'serverDeleteProhibited', 'serverHold', 'serverRenewProhibited', 'serverTransferProhibited', 'serverUpdateProhibited'}. + + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}status', attribute 's': 'invalidStatus' is not a valid value of the atomic type '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}statusValueType'. ABC-12345 - ccReg-0254454948 + ccReg-8053378605 @@ -10746,52 +11117,9 @@ REQUEST: - - domain39.ee - 2016-07-20 - 1 - - - ABC-12345 - - -``` - -RESPONSE: - -```xml - - - - - Command completed successfully - - - - domain39.ee - 2017-07-20T12:21:34Z - - - - ABC-12345 - ccReg-7528194119 - - - -``` - -### EPP Domain with valid domain renews a domain when outzone_at or delete_at is nil for some reason - -REQUEST: - -```xml - - - - - + domain40.ee - 2016-07-20 + 2016-07-28 1 @@ -10812,18 +11140,18 @@ RESPONSE: domain40.ee - 2017-07-20T12:21:34Z + 2017-07-28T08:41:19Z ABC-12345 - ccReg-5368631388 + ccReg-2144233121 ``` -### EPP Domain with valid domain renews a domain with no period specified +### EPP Domain with valid domain renews a domain when outzone_at or delete_at is nil for some reason REQUEST: @@ -10832,9 +11160,10 @@ REQUEST: - + domain41.ee - 2016-07-20 + 2016-07-28 + 1 ABC-12345 @@ -10854,12 +11183,54 @@ RESPONSE: domain41.ee - 2017-07-20T12:21:35Z + 2017-07-28T08:41:20Z ABC-12345 - ccReg-9962016550 + ccReg-6734533900 + + + +``` + +### EPP Domain with valid domain renews a domain with no period specified + +REQUEST: + +```xml + + + + + + domain42.ee + 2016-07-28 + + + ABC-12345 + + +``` + +RESPONSE: + +```xml + + + + + Command completed successfully + + + + domain42.ee + 2017-07-28T08:41:20Z + + + + ABC-12345 + ccReg-1952216525 @@ -10874,9 +11245,9 @@ REQUEST: - - domain42.ee - 2016-07-20 + + domain43.ee + 2016-07-28 1 @@ -10891,12 +11262,15 @@ RESPONSE: - - Attribute is invalid: unit + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}period', attribute 'unit': [facet 'enumeration'] The value '' is not an element of the set {'y', 'm', 'd'}. + + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}period', attribute 'unit': '' is not a valid value of the atomic type '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}pUnitType'. ABC-12345 - ccReg-2852772415 + ccReg-9450436889 @@ -10909,9 +11283,9 @@ REQUEST: - - domain42.ee - 2016-07-20 + + domain43.ee + 2016-07-28 1 @@ -10926,12 +11300,15 @@ RESPONSE: - - Attribute is invalid: unit + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}period', attribute 'unit': [facet 'enumeration'] The value 'bla' is not an element of the set {'y', 'm', 'd'}. + + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}period', attribute 'unit': 'bla' is not a valid value of the atomic type '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}pUnitType'. ABC-12345 - ccReg-4566744629 + ccReg-1447208589 @@ -10946,9 +11323,9 @@ REQUEST: - - domain43.ee - 2015-07-30 + + domain44.ee + 2015-08-07 730 @@ -10968,13 +11345,13 @@ RESPONSE: - domain43.ee - 2017-07-30T00:00:00Z + domain44.ee + 2017-08-07T00:00:00Z ABC-12345 - ccReg-3667306360 + ccReg-8888058768 @@ -10989,9 +11366,9 @@ REQUEST: - - domain44.ee - 2015-07-30 + + domain45.ee + 2015-08-07 36 @@ -11011,13 +11388,13 @@ RESPONSE: - domain44.ee - 2018-07-30T00:00:00Z + domain45.ee + 2018-08-07T00:00:00Z ABC-12345 - ccReg-1779357497 + ccReg-2368607304 @@ -11032,9 +11409,9 @@ REQUEST: - - domain45.ee - 2015-07-30 + + domain46.ee + 2015-08-07 1 @@ -11054,7 +11431,7 @@ RESPONSE: ABC-12345 - ccReg-1591253780 + ccReg-6821240882 @@ -11069,8 +11446,8 @@ REQUEST: - - domain46.ee + + domain47.ee 2200-08-07 1 @@ -11097,7 +11474,7 @@ RESPONSE: ABC-12345 - ccReg-8983361045 + ccReg-3646435252 @@ -11112,9 +11489,9 @@ REQUEST: - - domain47.ee - 2015-07-30 + + domain48.ee + 2015-08-07 4 @@ -11137,7 +11514,7 @@ RESPONSE: ABC-12345 - ccReg-1784590716 + ccReg-6217040456 @@ -11152,9 +11529,9 @@ REQUEST: - - domain48.ee - 2015-10-18 + + domain49.ee + 2015-10-26 1 @@ -11174,7 +11551,7 @@ RESPONSE: ABC-12345 - ccReg-8062610008 + ccReg-8796521058 @@ -11187,52 +11564,9 @@ REQUEST: - - domain48.ee - 2015-10-17 - 1 - - - ABC-12345 - - -``` - -RESPONSE: - -```xml - - - - - Command completed successfully - - - - domain48.ee - 2016-10-17T00:00:00Z - - - - ABC-12345 - ccReg-6641508559 - - - -``` - -### EPP Domain with valid domain does not renew a domain unless less than 90 days till expiration - -REQUEST: - -```xml - - - - - + domain49.ee - 2020-07-20 + 2015-10-25 1 @@ -11253,12 +11587,55 @@ RESPONSE: domain49.ee - 2021-07-20T00:00:00Z + 2016-10-25T00:00:00Z ABC-12345 - ccReg-4269436324 + ccReg-0448578516 + + + +``` + +### EPP Domain with valid domain does not renew a domain unless less than 90 days till expiration + +REQUEST: + +```xml + + + + + + domain50.ee + 2020-07-28 + 1 + + + ABC-12345 + + +``` + +RESPONSE: + +```xml + + + + + Command completed successfully + + + + domain50.ee + 2021-07-28T00:00:00Z + + + + ABC-12345 + ccReg-5093886658 @@ -11273,9 +11650,9 @@ REQUEST: - - domain50.ee - 2015-07-30 + + domain51.ee + 2015-08-07 1 @@ -11295,7 +11672,7 @@ RESPONSE: ABC-12345 - ccReg-6783528631 + ccReg-1090831490 @@ -11319,13 +11696,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -11345,7 +11722,7 @@ RESPONSE: ABC-12345 - ccReg-4175488967 + ccReg-0660211759 @@ -11358,9 +11735,9 @@ REQUEST: - - domain52.ee - 2016-07-20 + + domain53.ee + 2016-07-28 1 @@ -11380,7 +11757,7 @@ RESPONSE: ABC-12345 - ccReg-2346400220 + ccReg-9082042804 @@ -11400,13 +11777,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -11426,7 +11803,7 @@ RESPONSE: ABC-12345 - ccReg-0994749954 + ccReg-0461998559 @@ -11441,411 +11818,7 @@ REQUEST: - - domain53.ee - - 2fooBAR - - - - - -``` - -RESPONSE: - -```xml - - - - - Command completed successfully - - - - domain53.ee - EIS-65 - - FIXED:REGISTRANT7307565451 - FIXED:SH34551752120 - FIXED:SH65763191119 - - - ns.wehner159.ee - 192.168.1.1 - - - ns.wilderman160.ee - 192.168.1.1 - - - ns.hauck161.ee - 192.168.1.1 - - - ns1.example.com - 192.168.1.1 - 1080:0:0:0:8:800:200C:417A - - - registrar1 - 2015-07-20T12:21:46Z - 2015-07-20T12:21:46Z - 2016-07-20T12:21:46Z - - cd8ed996f0e6401b8b5a086d50c54763 - - - - - - - 123 - 3 - 1 - 0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB - - 257 - 3 - 3 - AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - - - - 123 - 3 - 1 - 0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB - - 0 - 3 - 5 - 700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f - - - - - - ccReg-7650872478 - - - -``` - -REQUEST: - -```xml - - - - - - domain53.ee - - 2fooBAR - - - - - -``` - -RESPONSE: - -```xml - - - - - Command completed successfully - - - - domain53.ee - EIS-65 - - FIXED:REGISTRANT7307565451 - FIXED:SH34551752120 - FIXED:SH65763191119 - - - ns.wehner159.ee - 192.168.1.1 - - - ns.wilderman160.ee - 192.168.1.1 - - - ns.hauck161.ee - 192.168.1.1 - - - ns1.example.com - 192.168.1.1 - 1080:0:0:0:8:800:200C:417A - - - registrar1 - 2015-07-20T12:21:46Z - 2015-07-20T12:21:46Z - 2016-07-20T12:21:46Z - - cd8ed996f0e6401b8b5a086d50c54763 - - - - - - - 123 - 3 - 1 - 0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB - - 257 - 3 - 3 - AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 - - - - 123 - 3 - 1 - 0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB - - 0 - 3 - 5 - 700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f - - - - - - ccReg-6212765052 - - - -``` - -### EPP Domain with valid domain returns domain info with different nameservers - -REQUEST: - -```xml - - - - - - domain54.ee - - 2fooBAR - - - - - -``` - -RESPONSE: - -```xml - - - - - Attribute is invalid: hosts - - - ccReg-8441039728 - - - -``` - -REQUEST: - -```xml - - - - - - domain54.ee - - 2fooBAR - - - - - -``` - -RESPONSE: - -```xml - - - - - Command completed successfully - - - - domain54.ee - EIS-66 - - FIXED:REGISTRANT4591564452 - FIXED:SH08627254122 - FIXED:SH13521612121 - - - ns1.domain54.ee - 192.168.1.1 - 1080:0:0:0:8:800:200C:417A - - - ns2.domain54.ee - 192.168.1.1 - 1080:0:0:0:8:800:200C:417A - - - registrar1 - 2015-07-20T12:21:46Z - 2015-07-20T12:21:46Z - 2016-07-20T12:21:46Z - - 87c62b989527eca8eefee7826767d526 - - - - - ccReg-9775633810 - - - -``` - -REQUEST: - -```xml - - - - - - domain54.ee - - 2fooBAR - - - - - -``` - -RESPONSE: - -```xml - - - - - Command completed successfully - - - - domain54.ee - EIS-66 - - FIXED:REGISTRANT4591564452 - FIXED:SH08627254122 - FIXED:SH13521612121 - - - ns3.test.ee - 192.168.1.1 - 1080:0:0:0:8:800:200C:417A - - - registrar1 - 2015-07-20T12:21:46Z - 2015-07-20T12:21:46Z - 2016-07-20T12:21:46Z - - 87c62b989527eca8eefee7826767d526 - - - - - ccReg-0577915344 - - - -``` - -REQUEST: - -```xml - - - - - - domain54.ee - - 2fooBAR - - - - - -``` - -RESPONSE: - -```xml - - - - - Command completed successfully - - - - domain54.ee - EIS-66 - - FIXED:REGISTRANT4591564452 - FIXED:SH08627254122 - FIXED:SH13521612121 - registrar1 - 2015-07-20T12:21:46Z - 2015-07-20T12:21:46Z - 2016-07-20T12:21:46Z - - 87c62b989527eca8eefee7826767d526 - - - - - ccReg-9228927284 - - - -``` - -REQUEST: - -```xml - - - - - + domain54.ee 2fooBAR @@ -11869,45 +11842,73 @@ RESPONSE: domain54.ee EIS-66 - - FIXED:REGISTRANT4591564452 - FIXED:SH08627254122 - FIXED:SH13521612121 + + FIXED:REGISTRANT3821775852 + FIXED:SH92766468122 + FIXED:SH95283245121 - ns1.domain54.ee + ns.halvorsonkeeling162.ee 192.168.1.1 - 1080:0:0:0:8:800:200C:417A - ns2.domain54.ee + ns.cummings163.ee 192.168.1.1 - 1080:0:0:0:8:800:200C:417A - ns3.test.ee + ns.dibbert164.ee + 192.168.1.1 + + + ns1.example.com 192.168.1.1 1080:0:0:0:8:800:200C:417A registrar1 - 2015-07-20T12:21:46Z - 2015-07-20T12:21:46Z - 2016-07-20T12:21:46Z + 2015-07-28T08:41:31Z + 2015-07-28T08:41:31Z + 2016-07-28T08:41:31Z - 87c62b989527eca8eefee7826767d526 + 7bde3f39e40a68635bf5a69098169cc5 + + + + 123 + 3 + 1 + 0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB + + 257 + 3 + 3 + AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 + + + + 123 + 3 + 1 + 0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB + + 0 + 3 + 5 + 700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f + + + + - ccReg-3580690965 + ccReg-6011078959 ``` -### EPP Domain with valid domain returns error when domain can not be found - REQUEST: ```xml @@ -11915,8 +11916,8 @@ REQUEST: - - test.ee + + domain54.ee 2fooBAR @@ -11932,20 +11933,81 @@ RESPONSE: - - Domain not found - - test.ee - + + Command completed successfully + + + domain54.ee + EIS-66 + + FIXED:REGISTRANT3821775852 + FIXED:SH92766468122 + FIXED:SH95283245121 + + + ns.halvorsonkeeling162.ee + 192.168.1.1 + + + ns.cummings163.ee + 192.168.1.1 + + + ns.dibbert164.ee + 192.168.1.1 + + + ns1.example.com + 192.168.1.1 + 1080:0:0:0:8:800:200C:417A + + + registrar1 + 2015-07-28T08:41:31Z + 2015-07-28T08:41:31Z + 2016-07-28T08:41:31Z + + 7bde3f39e40a68635bf5a69098169cc5 + + + + + + + 123 + 3 + 1 + 0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB + + 257 + 3 + 3 + AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8 + + + + 123 + 3 + 1 + 0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB + + 0 + 3 + 5 + 700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f + + + + - ccReg-1301920390 + ccReg-9484163738 ``` -### EPP Domain with valid domain sets ok status by default +### EPP Domain with valid domain returns domain info with different nameservers REQUEST: @@ -11954,7 +12016,216 @@ REQUEST: - + + domain55.ee + + 2fooBAR + + + + + +``` + +RESPONSE: + +```xml + + + + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}name', attribute 'hosts': [facet 'enumeration'] The value 'invalid' is not an element of the set {'all', 'del', 'none', 'sub'}. + + + Element '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}name', attribute 'hosts': 'invalid' is not a valid value of the atomic type '{https://epp.tld.ee/schema/domain-eis-1.0.xsd}hostsType'. + + + ccReg-6664642362 + + + +``` + +REQUEST: + +```xml + + + + + + domain55.ee + + 2fooBAR + + + + + +``` + +RESPONSE: + +```xml + + + + + Command completed successfully + + + + domain55.ee + EIS-67 + + FIXED:REGISTRANT0861566953 + FIXED:SH41938455124 + FIXED:SH51239690123 + + + ns1.domain55.ee + 192.168.1.1 + 1080:0:0:0:8:800:200C:417A + + + ns2.domain55.ee + 192.168.1.1 + 1080:0:0:0:8:800:200C:417A + + + registrar1 + 2015-07-28T08:41:31Z + 2015-07-28T08:41:31Z + 2016-07-28T08:41:31Z + + 1f00f9c3dd3137349c89cb6122fd2087 + + + + + ccReg-4706656698 + + + +``` + +REQUEST: + +```xml + + + + + + domain55.ee + + 2fooBAR + + + + + +``` + +RESPONSE: + +```xml + + + + + Command completed successfully + + + + domain55.ee + EIS-67 + + FIXED:REGISTRANT0861566953 + FIXED:SH41938455124 + FIXED:SH51239690123 + + + ns3.test.ee + 192.168.1.1 + 1080:0:0:0:8:800:200C:417A + + + registrar1 + 2015-07-28T08:41:31Z + 2015-07-28T08:41:31Z + 2016-07-28T08:41:31Z + + 1f00f9c3dd3137349c89cb6122fd2087 + + + + + ccReg-6524782384 + + + +``` + +REQUEST: + +```xml + + + + + + domain55.ee + + 2fooBAR + + + + + +``` + +RESPONSE: + +```xml + + + + + Command completed successfully + + + + domain55.ee + EIS-67 + + FIXED:REGISTRANT0861566953 + FIXED:SH41938455124 + FIXED:SH51239690123 + registrar1 + 2015-07-28T08:41:31Z + 2015-07-28T08:41:31Z + 2016-07-28T08:41:31Z + + 1f00f9c3dd3137349c89cb6122fd2087 + + + + + ccReg-6513443999 + + + +``` + +REQUEST: + +```xml + + + + + domain55.ee 2fooBAR @@ -11979,34 +12250,143 @@ RESPONSE: domain55.ee EIS-67 - FIXED:REGISTRANT6281282953 - FIXED:SH61146403124 - FIXED:SH05028645123 + FIXED:REGISTRANT0861566953 + FIXED:SH41938455124 + FIXED:SH51239690123 - ns.klockodouglas165.ee + ns1.domain55.ee 192.168.1.1 + 1080:0:0:0:8:800:200C:417A - ns.hoeger166.ee + ns2.domain55.ee 192.168.1.1 + 1080:0:0:0:8:800:200C:417A - ns.millerkassulke167.ee + ns3.test.ee 192.168.1.1 + 1080:0:0:0:8:800:200C:417A registrar1 - 2015-07-20T12:21:47Z - 2015-07-20T12:21:47Z - 2016-07-20T12:21:47Z + 2015-07-28T08:41:31Z + 2015-07-28T08:41:31Z + 2016-07-28T08:41:31Z - e89d931b05e7e3248ecbd872341f14dc + 1f00f9c3dd3137349c89cb6122fd2087 - ccReg-6276745674 + ccReg-4393101167 + + + +``` + +### EPP Domain with valid domain returns error when domain can not be found + +REQUEST: + +```xml + + + + + + test.ee + + 2fooBAR + + + + + +``` + +RESPONSE: + +```xml + + + + + Domain not found + + test.ee + + + + ccReg-7830292127 + + + +``` + +### EPP Domain with valid domain sets ok status by default + +REQUEST: + +```xml + + + + + + domain56.ee + + 2fooBAR + + + + + +``` + +RESPONSE: + +```xml + + + + + Command completed successfully + + + + domain56.ee + EIS-68 + + FIXED:REGISTRANT8926104554 + FIXED:SH54896149126 + FIXED:SH80337499125 + + + ns.conroy168.ee + 192.168.1.1 + + + ns.bahringer169.ee + 192.168.1.1 + + + ns.kochhyatt170.ee + 192.168.1.1 + + + registrar1 + 2015-07-28T08:41:33Z + 2015-07-28T08:41:33Z + 2016-07-28T08:41:33Z + + da322dc86ce37e526f9c2dedc0f5c9f4 + + + + + ccReg-0824891046 @@ -12028,13 +12408,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -12054,7 +12434,7 @@ RESPONSE: ABC-12345 - ccReg-2432219885 + ccReg-7661910824 @@ -12067,8 +12447,8 @@ REQUEST: - - domain56.ee + + domain57.ee 2fooBAR @@ -12088,7 +12468,7 @@ RESPONSE: Authorization error - ccReg-9065841205 + ccReg-8708797571 @@ -12108,13 +12488,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -12134,7 +12514,7 @@ RESPONSE: ABC-12345 - ccReg-5259254646 + ccReg-2730417805 @@ -12156,13 +12536,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -12182,7 +12562,7 @@ RESPONSE: ABC-12345 - ccReg-7973413482 + ccReg-0152975550 @@ -12195,8 +12575,8 @@ REQUEST: - - domain57.ee + + domain58.ee @@ -12214,34 +12594,34 @@ RESPONSE: - domain57.ee - EIS-69 + domain58.ee + EIS-70 - FIXED:REGISTRANT4020838555 - FIXED:SH24162244128 - FIXED:SH02787398127 + FIXED:REGISTRANT2923781556 + FIXED:SH74442662130 + FIXED:SH98223564129 - ns.mcdermott171.ee + ns.wizastanton174.ee 192.168.1.1 - ns.swaniawski172.ee + ns.hermann175.ee 192.168.1.1 - ns.hegmann173.ee + ns.mrazhintz176.ee 192.168.1.1 registrar1 - 2015-07-20T12:21:48Z - 2015-07-20T12:21:48Z - 2016-07-20T12:21:48Z + 2015-07-28T08:41:33Z + 2015-07-28T08:41:33Z + 2016-07-28T08:41:33Z - ccReg-1470647082 + ccReg-5496759020 @@ -12261,13 +12641,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -12287,7 +12667,7 @@ RESPONSE: ABC-12345 - ccReg-3611707532 + ccReg-5839948259 @@ -12309,13 +12689,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -12335,7 +12715,7 @@ RESPONSE: ABC-12345 - ccReg-5006604468 + ccReg-9962481595 @@ -12348,10 +12728,10 @@ REQUEST: - - domain58.ee + + domain59.ee - 6247f0cbf6ef99c7803d68f9604ef0b0 + d1a0c13cf710ce60125dda34bc047357 @@ -12370,37 +12750,37 @@ RESPONSE: - domain58.ee - EIS-70 + domain59.ee + EIS-71 - FIXED:REGISTRANT4781706556 - FIXED:SH25367569130 - FIXED:SH37119437129 + FIXED:REGISTRANT9338146457 + FIXED:SH08033657132 + FIXED:SH95760244131 - ns.koelpinmills174.ee + ns.hansen177.ee 192.168.1.1 - ns.marks175.ee + ns.bechtelar178.ee 192.168.1.1 - ns.kubwitting176.ee + ns.ryan179.ee 192.168.1.1 registrar1 - 2015-07-20T12:21:48Z - 2015-07-20T12:21:48Z - 2016-07-20T12:21:48Z + 2015-07-28T08:41:34Z + 2015-07-28T08:41:34Z + 2016-07-28T08:41:34Z - 6247f0cbf6ef99c7803d68f9604ef0b0 + d1a0c13cf710ce60125dda34bc047357 - ccReg-7100649597 + ccReg-5565279418 @@ -12420,13 +12800,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -12446,7 +12826,7 @@ RESPONSE: ABC-12345 - ccReg-0704412947 + ccReg-1086178421 @@ -12461,12 +12841,12 @@ REQUEST: - - domain59.ee + + domain60.ee - + dGVzdCBmYWlsCg== @@ -12486,7 +12866,7 @@ RESPONSE: ABC-12345 - ccReg-4832480822 + ccReg-6748161709 @@ -12501,12 +12881,12 @@ REQUEST: - - domain60.ee + + domain61.ee - + dGVzdCBmYWlsCg== @@ -12526,7 +12906,7 @@ RESPONSE: ABC-12345 - ccReg-6927257206 + ccReg-3721491187 @@ -12541,12 +12921,12 @@ REQUEST: - - domain61.ee + + domain62.ee - + dGVzdCBmYWlsCg== @@ -12566,7 +12946,7 @@ RESPONSE: ABC-12345 - ccReg-7990485739 + ccReg-8985283918 @@ -12581,7 +12961,7 @@ REQUEST: - + example.ee @@ -12601,7 +12981,7 @@ RESPONSE: ABC-12345 - ccReg-0019926200 + ccReg-6341995809 @@ -12616,7 +12996,7 @@ REQUEST: - + one.ee @@ -12643,7 +13023,7 @@ RESPONSE: ABC-12345 - ccReg-4831555868 + ccReg-5323793544 @@ -12656,8 +13036,8 @@ REQUEST: - - domain62.ee + + domain63.ee ABC-12345 @@ -12677,14 +13057,14 @@ RESPONSE: - domain62.ee + domain63.ee in use ABC-12345 - ccReg-1342461345 + ccReg-9376664446 @@ -12699,7 +13079,7 @@ REQUEST: - + one.ee two.ee three.ee @@ -12734,7 +13114,7 @@ RESPONSE: ABC-12345 - ccReg-7798136960 + ccReg-8665354623 @@ -12749,7 +13129,7 @@ REQUEST: - + one.ee notcorrectdomain @@ -12781,7 +13161,7 @@ RESPONSE: ABC-12345 - ccReg-7326641121 + ccReg-0776655399 @@ -12803,13 +13183,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -12829,7 +13209,7 @@ RESPONSE: ABC-12345 - ccReg-4487243988 + ccReg-6119482698 @@ -12841,10 +13221,10 @@ REQUEST: ```xml - + - domain63.ee + domain64.ee 256 3 @@ -12852,13 +13232,13 @@ REQUEST: cmlraXN0aGViZXN0 - b077de0c7ce21d4d5ea2c1e3f6472259 + 5a561b9d331c998c4f0383c7c67837be P1M13D - 1437394914 + 1438072899 ``` @@ -12872,12 +13252,12 @@ RESPONSE: Unimplemented object service - domain63.ee + domain64.ee - 1437394914 - ccReg-0158557268 + 1438072899 + ccReg-0546548236 @@ -12889,23 +13269,23 @@ REQUEST: ```xml - + - domain63.ee + domain64.ee 3 8 cmlraXN0aGViZXN0 - b077de0c7ce21d4d5ea2c1e3f6472259 + 5a561b9d331c998c4f0383c7c67837be Invalid Expiry - 1437394915 + 1438072900 ``` @@ -12926,8 +13306,8 @@ RESPONSE: - 1437394915 - ccReg-7506053865 + 1438072900 + ccReg-6339589638 @@ -12939,10 +13319,10 @@ REQUEST: ```xml - + - domain63.ee + domain64.ee 256 3 @@ -12950,13 +13330,13 @@ REQUEST: cmlraXN0aGViZXN0 - b077de0c7ce21d4d5ea2c1e3f6472259 + 5a561b9d331c998c4f0383c7c67837be Invalid Expiry - 1437394916 + 1438072901 ``` @@ -12974,8 +13354,8 @@ RESPONSE: - 1437394916 - ccReg-6186370335 + 1438072901 + ccReg-5588050715 @@ -12987,10 +13367,10 @@ REQUEST: ```xml - + - domain63.ee + domain64.ee 256 3 @@ -12998,13 +13378,13 @@ REQUEST: cmlraXN0aGViZXN0 - b077de0c7ce21d4d5ea2c1e3f6472259 + 5a561b9d331c998c4f0383c7c67837be Invalid Absolute - 1437394917 + 1438072902 ``` @@ -13022,8 +13402,8 @@ RESPONSE: - 1437394917 - ccReg-7506426099 + 1438072902 + ccReg-3072813596 @@ -13035,10 +13415,10 @@ REQUEST: ```xml - + - domain63.ee + domain64.ee 256 3 @@ -13046,16 +13426,16 @@ REQUEST: cmlraXN0aGViZXN0 - b077de0c7ce21d4d5ea2c1e3f6472259 + 5a561b9d331c998c4f0383c7c67837be P1D - + JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp== - 1437394918 + 1438072903 ``` @@ -13069,12 +13449,12 @@ RESPONSE: Unimplemented object service - domain63.ee + domain64.ee - 1437394918 - ccReg-9663347445 + 1438072903 + ccReg-8005218060 @@ -13086,10 +13466,10 @@ REQUEST: ```xml - + - domain63.ee + domain64.ee 256 3 @@ -13097,16 +13477,16 @@ REQUEST: cmlraXN0aGViZXN0 - b077de0c7ce21d4d5ea2c1e3f6472259 + 5a561b9d331c998c4f0383c7c67837be P1D - + JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp== - 1437394919 + 1438072904 ``` @@ -13121,8 +13501,8 @@ RESPONSE: Attribute is invalid: type - 1437394919 - ccReg-9389252278 + 1438072904 + ccReg-7669723424 @@ -13142,13 +13522,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -13168,7 +13548,7 @@ RESPONSE: ABC-12345 - ccReg-7621736554 + ccReg-7183215230 @@ -13183,7 +13563,7 @@ REQUEST: - 1437394921 + 1438072906 ``` @@ -13198,8 +13578,8 @@ RESPONSE: Command completed successfully; no messages - 1437394921 - ccReg-3217706142 + 1438072906 + ccReg-0904688053 @@ -13221,13 +13601,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -13247,7 +13627,7 @@ RESPONSE: ABC-12345 - ccReg-4682258427 + ccReg-9330176861 @@ -13260,7 +13640,7 @@ REQUEST: - 1437394921 + 1438072906 ``` @@ -13275,8 +13655,8 @@ RESPONSE: Command completed successfully; no messages - 1437394921 - ccReg-3374319928 + 1438072906 + ccReg-9666096812 @@ -13296,13 +13676,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -13322,7 +13702,7 @@ RESPONSE: ABC-12345 - ccReg-5625822303 + ccReg-2827332510 @@ -13335,7 +13715,7 @@ REQUEST: - 1437394921 + 1438072906 ``` @@ -13350,12 +13730,12 @@ RESPONSE: Command completed successfully; ack to dequeue - 2015-07-20T12:22:01Z + 2015-07-28T08:41:46Z Balance low. - 1437394921 - ccReg-9128319649 + 1438072906 + ccReg-8105139529 @@ -13375,13 +13755,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -13401,7 +13781,7 @@ RESPONSE: ABC-12345 - ccReg-0065623857 + ccReg-4202898264 @@ -13414,7 +13794,7 @@ REQUEST: - 1437394921 + 1438072906 ``` @@ -13432,8 +13812,8 @@ RESPONSE: - 1437394921 - ccReg-3167220528 + 1438072906 + ccReg-6713795149 @@ -13453,13 +13833,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -13479,7 +13859,7 @@ RESPONSE: ABC-12345 - ccReg-4376189947 + ccReg-8383726441 @@ -13492,7 +13872,7 @@ REQUEST: - 1437394921 + 1438072906 ``` @@ -13508,8 +13888,8 @@ RESPONSE: - 1437394921 - ccReg-8178583447 + 1438072906 + ccReg-9660232901 @@ -13522,7 +13902,7 @@ REQUEST: - 1437394921 + 1438072906 ``` @@ -13540,8 +13920,8 @@ RESPONSE: - 1437394921 - ccReg-3357677572 + 1438072906 + ccReg-8436895537 @@ -13556,7 +13936,7 @@ REQUEST: - 1437394923 + 1438072909 ``` @@ -13567,12 +13947,15 @@ RESPONSE: - - Parameter value range error: op + + Element '{urn:ietf:params:xml:ns:epp-1.0}poll', attribute 'op': [facet 'enumeration'] The value 'bla' is not an element of the set {'ack', 'req'}. + + + Element '{urn:ietf:params:xml:ns:epp-1.0}poll', attribute 'op': 'bla' is not a valid value of the atomic type '{urn:ietf:params:xml:ns:epp-1.0}pollOpType'. - 1437394923 - ccReg-9173157016 + 1438072909 + ccReg-0720048091 @@ -13587,7 +13970,7 @@ REQUEST: - 1437394924 + 1438072910 ``` @@ -13602,12 +13985,12 @@ RESPONSE: Command completed successfully; ack to dequeue - 2015-07-20T12:22:04Z + 2015-07-28T08:41:50Z Smth else. - 1437394924 - ccReg-5958950001 + 1438072910 + ccReg-4999056673 @@ -13620,7 +14003,7 @@ REQUEST: - 1437394925 + 1438072910 ``` @@ -13636,8 +14019,8 @@ RESPONSE: - 1437394925 - ccReg-5283049409 + 1438072910 + ccReg-2484759210 @@ -13650,7 +14033,7 @@ REQUEST: - 1437394925 + 1438072910 ``` @@ -13665,12 +14048,12 @@ RESPONSE: Command completed successfully; ack to dequeue - 2015-07-20T12:22:04Z + 2015-07-28T08:41:50Z Something. - 1437394925 - ccReg-0653965093 + 1438072910 + ccReg-8852256138 @@ -13683,7 +14066,7 @@ REQUEST: - 1437394925 + 1438072910 ``` @@ -13699,8 +14082,8 @@ RESPONSE: - 1437394925 - ccReg-5975626851 + 1438072910 + ccReg-4857662573 @@ -13713,7 +14096,7 @@ REQUEST: - 1437394925 + 1438072910 ``` @@ -13728,12 +14111,12 @@ RESPONSE: Command completed successfully; ack to dequeue - 2015-07-20T12:22:04Z + 2015-07-28T08:41:50Z Balance low. - 1437394925 - ccReg-7080395365 + 1438072910 + ccReg-7845130069 @@ -13746,7 +14129,7 @@ REQUEST: - 1437394925 + 1438072910 ``` @@ -13762,8 +14145,8 @@ RESPONSE: - 1437394925 - ccReg-0487240311 + 1438072910 + ccReg-5213820888 @@ -13776,7 +14159,7 @@ REQUEST: - 1437394925 + 1438072910 ``` @@ -13791,8 +14174,8 @@ RESPONSE: Command completed successfully; no messages - 1437394925 - ccReg-2728391744 + 1438072910 + ccReg-5526530522 @@ -13807,17 +14190,17 @@ RESPONSE: EPP server (EIS) - 2015-07-20T12:22:05Z + 2015-07-28T08:41:50Z 1.0 en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -13857,13 +14240,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -13883,7 +14266,7 @@ RESPONSE: ABC-12345 - ccReg-6356137272 + ccReg-3357021379 @@ -13905,13 +14288,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -13931,7 +14314,7 @@ RESPONSE: ABC-12345 - ccReg-4823490197 + ccReg-7648731033 @@ -13946,7 +14329,7 @@ REQUEST: - + test.ee @@ -13966,7 +14349,7 @@ RESPONSE: ABC-12345 - ccReg-2897934955 + ccReg-9110727237 @@ -13988,13 +14371,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -14012,7 +14395,7 @@ RESPONSE: Authentication error; server closing connection (API user not found) - ccReg-8596651543 + ccReg-3560736149 @@ -14034,13 +14417,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -14060,7 +14443,7 @@ RESPONSE: ABC-12345 - ccReg-2882658867 + ccReg-9604669451 @@ -14082,13 +14465,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -14108,7 +14491,7 @@ RESPONSE: ABC-12345 - ccReg-4279783750 + ccReg-2841249388 @@ -14130,13 +14513,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -14156,7 +14539,7 @@ RESPONSE: ABC-12345 - ccReg-7491166215 + ccReg-7967943283 @@ -14176,13 +14559,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -14202,7 +14585,7 @@ RESPONSE: ABC-12345 - ccReg-2938349089 + ccReg-8815596190 @@ -14224,13 +14607,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -14250,7 +14633,7 @@ RESPONSE: ABC-12345 - ccReg-5870608814 + ccReg-3572848696 @@ -14279,7 +14662,7 @@ RESPONSE: ABC-12345 - ccReg-2182587183 + ccReg-9539000551 @@ -14302,13 +14685,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -14328,7 +14711,7 @@ RESPONSE: ABC-12345 - ccReg-7741248933 + ccReg-6256430973 @@ -14351,13 +14734,13 @@ REQUEST: en - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd + https://epp.tld.ee/schema/domain-eis-1.0.xsd + https://epp.tld.ee/schema/contact-eis-1.0.xsd urn:ietf:params:xml:ns:host-1.0 urn:ietf:params:xml:ns:keyrelay-1.0 urn:ietf:params:xml:ns:secDNS-1.1 - https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd + https://epp.tld.ee/schema/eis-1.0.xsd @@ -14372,12 +14755,15 @@ RESPONSE: - - Password is missing [password] + + Element '{urn:ietf:params:xml:ns:epp-1.0}newPW': [facet 'minLength'] The value has a length of '0'; this underruns the allowed minimum length of '6'. + + + Element '{urn:ietf:params:xml:ns:epp-1.0}newPW': '' is not a valid value of the atomic type '{urn:ietf:params:xml:ns:epp-1.0}pwType'. ABC-12345 - ccReg-8509961811 + ccReg-6382004519 diff --git a/doc/epp/contact.md b/doc/epp/contact.md index 8d0045506..b8a0be47d 100644 --- a/doc/epp/contact.md +++ b/doc/epp/contact.md @@ -12,7 +12,7 @@ Contact Mapping protocol short version: Field name Min-max Field description ----------------------- ------- ----------------- 1 - 1 Attribute: xmlns:contact="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd" + 1 Attribute: xmlns:contact="https://epp.tld.ee/schema/contact-eis-1.0.xsd" 0-1 Contact id, optional, string, no spaces, max 100 characters, generated automatically if missing 1 Postal information container @@ -27,7 +27,7 @@ Contact Mapping protocol short version: 1 Phone number in format \+ddd.d+ 1 E-mail 1 - 1 Attribute: xmlns:eis="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd" + 1 Attribute: xmlns:eis="https://epp.tld.ee/schema/eis-1.0.xsd" 1 Contact identificator Attribute: "type" "bic" # Business registry code @@ -46,7 +46,7 @@ Contact Mapping protocol short version: Field name Min-max Field description ----------------------- ------- ----------------- 1 - 1 Attribute: xmlns:contact="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd" + 1 Attribute: xmlns:contact="https://epp.tld.ee/schema/contact-eis-1.0.xsd" 1 Contact id, required 1 Change container 1 Postal information container @@ -63,7 +63,7 @@ Contact Mapping protocol short version: 0-1 Required if registrar is not the owner of the contact. 1 Contact password. Attribute: roid="String" 0-1 - 0-1 Attribute: xmlns:eis="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd" + 0-1 Attribute: xmlns:eis="https://epp.tld.ee/schema/eis-1.0.xsd" 0-1 Contact identificator Attribute: "type" "bic" # Business registry code @@ -83,12 +83,12 @@ Contact Mapping protocol short version: Field name Min-max Field description ----------------------- ------- ----------------- 1 - 1 Attribute: xmlns:contact="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd" + 1 Attribute: xmlns:contact="https://epp.tld.ee/schema/contact-eis-1.0.xsd" 1 Contact id 0-1 Required if registrar is not the owner of the contact. 1 Contact password. Attribute: roid="String" 0-1 - 0-1 Attribute: xmlns:eis="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd" + 0-1 Attribute: xmlns:eis="https://epp.tld.ee/schema/eis-1.0.xsd" 0-1 Base64 encoded document. Attribute: type="pdf/bdoc/ddoc/zip/rar/gz/tar/7z" 0-1 Client transaction id @@ -101,7 +101,7 @@ Contact Mapping protocol short version: Field name Min-max Field description ----------------------- ------- ----------------- 1 - 1 Attribute: xmlns:contact="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd" + 1 Attribute: xmlns:contact="https://epp.tld.ee/schema/contact-eis-1.0.xsd" 1-n Contact id 0-1 Client transaction id @@ -113,7 +113,7 @@ Contact Mapping protocol short version: Field name Min-max Field description ----------------------- ------- ----------------- 1 - 1 Attribute: xmlns:contact="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd" + 1 Attribute: xmlns:contact="https://epp.tld.ee/schema/contact-eis-1.0.xsd" 1-n Contact id 0-1 Required if registrar is not the owner of the contact. 1 Contact password. Attribute: roid="String" diff --git a/doc/epp/domain.md b/doc/epp/domain.md index f3a45c8da..e609b934e 100644 --- a/doc/epp/domain.md +++ b/doc/epp/domain.md @@ -13,7 +13,7 @@ Domain name mapping protocol short version: Field name Min-max Field description ------------------------- ------- ----------------- 1 - 1 Attribute: xmlns:domain="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd" + 1 Attribute: xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd" 1 Domain name. Can contain unicode characters. 0-1 Registration period for domain. Must add up to 1 / 2 / 3 years. @@ -36,7 +36,7 @@ Domain name mapping protocol short version: 1 Allowed values: 3 1 Allowed values: 3, 5, 6, 7, 8, 252, 253, 254, 255 1 Public key - 1 Attribute: xmlns:eis="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd" + 1 Attribute: xmlns:eis="https://epp.tld.ee/schema/eis-1.0.xsd" 1 Base64 encoded document. Attribute: type="pdf/bdoc/ddoc/zip/rar/gz/tar/7z" 0-1 @@ -50,7 +50,7 @@ Domain name mapping protocol short version: Field name Min-max Field description ------------------------ -------- ----------------- 1 - 1 Attribute: xmlns:domain="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd" + 1 Attribute: xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd" 1 Domain name. Can contain unicode characters. 0-1 Attributes to change 0-1 Contact reference to the registrant @@ -85,7 +85,7 @@ Domain name mapping protocol short version: 0-1 1-n 1 Public key - 0-1 Attribute: xmlns:eis="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd" + 0-1 Attribute: xmlns:eis="https://epp.tld.ee/schema/eis-1.0.xsd" 0-1 Base64 encoded document. Required if registrant is changing. Attribute: type="pdf/bdoc/ddoc/zip/rar/gz/tar/7z" 0-1 Client transaction id @@ -97,11 +97,11 @@ Domain name mapping protocol short version: Field name Min-max Field description ----------------------- ------- ----------------- 1 - 1 Attribute: xmlns:domain="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd" + 1 Attribute: xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd" Optional attribute: verified="yes/no" 1 Domain name. Can contain unicode characters. 1 - 1 Attribute: xmlns:eis="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd" + 1 Attribute: xmlns:eis="https://epp.tld.ee/schema/eis-1.0.xsd" 1 Base64 encoded document. Attribute: type="pdf/bdoc/ddoc/zip/rar/gz/tar/7z" 0-1 Client transaction id @@ -113,7 +113,7 @@ Domain name mapping protocol short version: Field name Min-max Field description ----------------------- ------- ----------------- 1 - 1 Attribute: xmlns:domain="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd" + 1 Attribute: xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd" 1 Domain name. Can contain unicode characters. Attribute: hosts="all / del / sub / none" 0-1 Required if registrar is not the owner of the domain. @@ -127,14 +127,14 @@ Domain name mapping protocol short version: Field name Min-max Field description ----------------------- ------- ----------------- 1 - 1 Attribute: xmlns:domain="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd" + 1 Attribute: xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd" 1 Domain name. Can contain unicode characters. 1 Current expiry date (ISO8601 format) 0-1 Registration period for domain. Must add up to 1 / 2 / 3 years. Attribute: unit="y/m/d" Default value is 1 year. 0-1 - 0-1 Attribute: xmlns:eis="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd" + 0-1 Attribute: xmlns:eis="https://epp.tld.ee/schema/eis-1.0.xsd" 0-1 Base64 encoded document. Attribute: type="pdf/bdoc/ddoc/zip/rar/gz/tar/7z" 0-1 Client transaction id @@ -146,12 +146,12 @@ Domain name mapping protocol short version: Field name Min-max Field description ----------------------- ------- ----------------- 1 Attribute: op="request/query/approve/reject/cancel" - 1 Attribute: xmlns:domain="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd" + 1 Attribute: xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd" 1 Domain name. Can contain unicode characters. 1 1 Domain password. Attribute: roid="String" 0-1 - 0-1 Attribute: xmlns:eis="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/eis-1.0.xsd" + 0-1 Attribute: xmlns:eis="https://epp.tld.ee/schema/eis-1.0.xsd" 0-1 Base64 encoded document. Attribute: type="pdf/bdoc/ddoc/zip/rar/gz/tar/7z" 0-1 Client transaction id @@ -163,7 +163,7 @@ Domain name mapping protocol short version: Field name Min-max Field description ----------------------- ------- ----------------- 1 - 1 Attribute: xmlns:domain="https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd" + 1 Attribute: xmlns:domain="https://epp.tld.ee/schema/domain-eis-1.0.xsd" 1 Domain name. Can contain unicode characters. 0-1 Client transaction id diff --git a/doc/schemas/contact-eis-1.0.xsd b/doc/schemas/contact-eis-1.0.xsd index 341888e47..e1fb084a5 100644 --- a/doc/schemas/contact-eis-1.0.xsd +++ b/doc/schemas/contact-eis-1.0.xsd @@ -1,7 +1,7 @@ - - - - + + + diff --git a/doc/schemas/domain-eis-1.0.xsd b/doc/schemas/domain-eis-1.0.xsd index a0b89c0c6..62da465fe 100644 --- a/doc/schemas/domain-eis-1.0.xsd +++ b/doc/schemas/domain-eis-1.0.xsd @@ -1,7 +1,7 @@ - - - - - - + + + + + diff --git a/doc/schemas/eis-1.0.xsd b/doc/schemas/eis-1.0.xsd index 2612b5e57..a8b7221a3 100644 --- a/doc/schemas/eis-1.0.xsd +++ b/doc/schemas/eis-1.0.xsd @@ -1,7 +1,7 @@ diff --git a/lib/epp_constraint.rb b/lib/epp_constraint.rb index 02bf285d9..06cf3d45a 100644 --- a/lib/epp_constraint.rb +++ b/lib/epp_constraint.rb @@ -1,7 +1,7 @@ class EppConstraint OBJECT_TYPES = { - domain: { domain: 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/domain-eis-1.0.xsd' }, - contact: { contact: 'https://raw.githubusercontent.com/internetee/registry/alpha/doc/schemas/contact-eis-1.0.xsd' } + domain: { domain: 'https://epp.tld.ee/schema/domain-eis-1.0.xsd' }, + contact: { contact: 'https://epp.tld.ee/schema/contact-eis-1.0.xsd' } } def initialize(type) @@ -10,14 +10,15 @@ class EppConstraint # creates parsed_frame, detects epp request object def matches?(request) - parsed_frame = Nokogiri::XML(request.params[:raw_frame]) + # TODO: Maybe move this to controller to keep params clean + request.params[:nokogiri_frame] ||= Nokogiri::XML(request.params[:raw_frame]) + request.params[:parsed_frame] ||= request.params[:nokogiri_frame].dup.remove_namespaces! - unless [:keyrelay, :poll].include?(@type) + unless [:keyrelay, :poll, :session, :not_found].include?(@type) element = "//#{@type}:#{request.params[:action]}" - return false if parsed_frame.xpath("#{element}", OBJECT_TYPES[@type]).none? + return false if request.params[:nokogiri_frame].xpath("#{element}", OBJECT_TYPES[@type]).none? end - request.params[:parsed_frame] = parsed_frame.remove_namespaces! request.params[:epp_object_type] = @type true end diff --git a/doc/schemas/contact-1.0.xsd b/lib/schemas/contact-eis-1.0.xsd similarity index 84% rename from doc/schemas/contact-1.0.xsd rename to lib/schemas/contact-eis-1.0.xsd index 3ed0eb6d8..ed0596c96 100644 --- a/doc/schemas/contact-1.0.xsd +++ b/lib/schemas/contact-eis-1.0.xsd @@ -1,388 +1,366 @@ - - - - - - - - - - - Extensible Provisioning Protocol v1.0 - contact provisioning schema. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + Extensible Provisioning Protocol v1.0 + contact provisioning schema. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/schemas/domain-1.0.xsd b/lib/schemas/domain-eis-1.0.xsd similarity index 90% rename from doc/schemas/domain-1.0.xsd rename to lib/schemas/domain-eis-1.0.xsd index db650414e..222d3d6f4 100644 --- a/doc/schemas/domain-1.0.xsd +++ b/lib/schemas/domain-eis-1.0.xsd @@ -1,7 +1,7 @@ - - - - + + + + + @@ -46,7 +48,7 @@ minOccurs="0"/> - + @@ -62,7 +64,7 @@ - + @@ -70,6 +72,7 @@ + @@ -89,6 +92,7 @@ @@ -237,12 +241,28 @@ Allow the registrant value to be nullified by changing the minLength restriction to "0". --> - + + + + + + + + + + - - + + + + + + + + + diff --git a/lib/schemas/eis-1.0.xsd b/lib/schemas/eis-1.0.xsd new file mode 100644 index 000000000..a8b7221a3 --- /dev/null +++ b/lib/schemas/eis-1.0.xsd @@ -0,0 +1,102 @@ + + + + + + EIS Extensible Provisioning Protocol v1.0 extension schema. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/doc/schemas/epp-1.0.xsd b/lib/schemas/epp-1.0.xsd similarity index 99% rename from doc/schemas/epp-1.0.xsd rename to lib/schemas/epp-1.0.xsd index 1efc25947..448b9ae25 100644 --- a/doc/schemas/epp-1.0.xsd +++ b/lib/schemas/epp-1.0.xsd @@ -9,7 +9,7 @@ - + diff --git a/doc/schemas/eppcom-1.0.xsd b/lib/schemas/eppcom-1.0.xsd similarity index 100% rename from doc/schemas/eppcom-1.0.xsd rename to lib/schemas/eppcom-1.0.xsd diff --git a/doc/schemas/host-1.0.xsd b/lib/schemas/host-1.0.xsd similarity index 100% rename from doc/schemas/host-1.0.xsd rename to lib/schemas/host-1.0.xsd diff --git a/doc/schemas/secDNS-1.1.xsd b/lib/schemas/secDNS-1.1.xsd similarity index 100% rename from doc/schemas/secDNS-1.1.xsd rename to lib/schemas/secDNS-1.1.xsd diff --git a/public/assets/.sprockets-manifest-48c2dd3ff16b86b70040480e74a50543.json b/public/assets/.sprockets-manifest-48c2dd3ff16b86b70040480e74a50543.json index 4e8ca8054..c5fd0c69d 100644 --- a/public/assets/.sprockets-manifest-48c2dd3ff16b86b70040480e74a50543.json +++ b/public/assets/.sprockets-manifest-48c2dd3ff16b86b70040480e74a50543.json @@ -1 +1 @@ -{"files":{"admin-manifest-58660819bb55d95ee3f0c8149722a0e2ea507a3a45f24d22a2610d060bdc8dc0.css":{"logical_path":"admin-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":435358,"digest":"58660819bb55d95ee3f0c8149722a0e2ea507a3a45f24d22a2610d060bdc8dc0","integrity":"sha256-WGYIGbtV2V7j8MgUlyKg4upQejpF8k0iomENBgvcjcA="},"admin-manifest-025801216a3b153631239205b373c5e4ac42d55cc9a53960d3c485b5eed9d467.js":{"logical_path":"admin-manifest.js","mtime":"2015-06-08T14:38:06+03:00","size":712602,"digest":"025801216a3b153631239205b373c5e4ac42d55cc9a53960d3c485b5eed9d467","integrity":"sha256-AlgBIWo7FTYxI5IFs3PF5KxC1VzJpTlg08SFte7Z1Gc="},"registrar-manifest-70dd177301fef149b726705917e97491911b4a74c1760a223eaefaaf3918a38b.css":{"logical_path":"registrar-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":475725,"digest":"70dd177301fef149b726705917e97491911b4a74c1760a223eaefaaf3918a38b","integrity":"sha256-cN0XcwH+8Um3JnBZF+l0kZEbSnTBdgoiPq76rzkYo4s="},"registrar-manifest-037217137e7dd50d2a0c4aec309e532b9cd2696de45c826cc0c4ff8bf58025e6.js":{"logical_path":"registrar-manifest.js","mtime":"2015-06-19T15:29:08+03:00","size":730835,"digest":"037217137e7dd50d2a0c4aec309e532b9cd2696de45c826cc0c4ff8bf58025e6","integrity":"sha256-A3IXE3591Q0qDErsMJ5TK5zSaW3kXIJswMT/i/WAJeY="},"registrant-manifest-6bfceed2fd52330f303b890fa9d229b1ecd097fda1b7df2db41829b8c25d40c0.css":{"logical_path":"registrant-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":476257,"digest":"6bfceed2fd52330f303b890fa9d229b1ecd097fda1b7df2db41829b8c25d40c0","integrity":"sha256-a/zu0v1SMw8wO4kPqdIpsezQl/2ht98ttBgpuMJdQMA="},"registrant-manifest-037217137e7dd50d2a0c4aec309e532b9cd2696de45c826cc0c4ff8bf58025e6.js":{"logical_path":"registrant-manifest.js","mtime":"2015-06-19T15:29:08+03:00","size":730835,"digest":"037217137e7dd50d2a0c4aec309e532b9cd2696de45c826cc0c4ff8bf58025e6","integrity":"sha256-A3IXE3591Q0qDErsMJ5TK5zSaW3kXIJswMT/i/WAJeY="},"shared/pdf-2f929bf92af2ce26249b1b02bb998c63cf49da0ae4e3526f869fccd0af65ac3b.css":{"logical_path":"shared/pdf.css","mtime":"2015-05-15T15:29:32+03:00","size":353119,"digest":"2f929bf92af2ce26249b1b02bb998c63cf49da0ae4e3526f869fccd0af65ac3b","integrity":"sha256-L5Kb+SryziYkmxsCu5mMY89J2grk41Jvhp/M0K9lrDs="},"select2-d6b5d8d83dbc18fb8d77c8761d331cd9e5123c9684950bab0406e98a24ac5ae8.png":{"logical_path":"select2.png","mtime":"2015-05-12T11:05:57+03:00","size":613,"digest":"d6b5d8d83dbc18fb8d77c8761d331cd9e5123c9684950bab0406e98a24ac5ae8","integrity":"sha256-1rXY2D28GPuNd8h2HTMc2eUSPJaElQurBAbpiiSsWug="},"select2-spinner-f6ecff617ec2ba7f559e6f535cad9b70a3f91120737535dab4d4548a6c83576c.gif":{"logical_path":"select2-spinner.gif","mtime":"2015-05-12T11:05:57+03:00","size":1849,"digest":"f6ecff617ec2ba7f559e6f535cad9b70a3f91120737535dab4d4548a6c83576c","integrity":"sha256-9uz/YX7Cun9Vnm9TXK2bcKP5ESBzdTXatNRUimyDV2w="},"select2x2-6fe28d687dc0ed4d96016238c608ba1e7198c9c9accfa0b360b78018b9fb9bc2.png":{"logical_path":"select2x2.png","mtime":"2015-05-12T11:05:57+03:00","size":845,"digest":"6fe28d687dc0ed4d96016238c608ba1e7198c9c9accfa0b360b78018b9fb9bc2","integrity":"sha256-b+KNaH3A7U2WAWI4xgi6HnGYycmsz6CzYLeAGLn7m8I="},"alpha-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png":{"logical_path":"alpha.png","mtime":"2015-07-13T18:30:38+03:00","size":7089,"digest":"9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947","integrity":"sha256-msRaazwT3Vxc8bXRjG8kpTfdLkWYI4Un0jKj4upbWUc="},"bg-b8036abd2f0f36e3ab54d5d5b25b0fbac11d63ec6106d959df3fa180b379de05.jpg":{"logical_path":"bg.jpg","mtime":"2015-07-13T18:30:38+03:00","size":69058,"digest":"b8036abd2f0f36e3ab54d5d5b25b0fbac11d63ec6106d959df3fa180b379de05","integrity":"sha256-uANqvS8PNuOrVNXVslsPusEdY+xhBtlZ3z+hgLN53gU="},"danske-07a4395cc406785da129414e15872fe1d6a4f6f6da0066da6701b56cdb72ea96.png":{"logical_path":"danske.png","mtime":"2015-07-13T18:30:38+03:00","size":1130,"digest":"07a4395cc406785da129414e15872fe1d6a4f6f6da0066da6701b56cdb72ea96","integrity":"sha256-B6Q5XMQGeF2hKUFOFYcv4dak9vbaAGbaZwG1bNty6pY="},"development-0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5.png":{"logical_path":"development.png","mtime":"2015-07-13T18:30:38+03:00","size":14496,"digest":"0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5","integrity":"sha256-C5k+IkEMeVI5SsGc47QbciqXuTE4qaACCR4eUibSm/U="},"eis-logo-et-86a549d266cda73e3225c5eeba14532c59d498e1fd980ec129fded68da8bb307.png":{"logical_path":"eis-logo-et.png","mtime":"2015-07-13T18:30:38+03:00","size":1440,"digest":"86a549d266cda73e3225c5eeba14532c59d498e1fd980ec129fded68da8bb307","integrity":"sha256-hqVJ0mbNpz4yJcXuuhRTLFnUmOH9mA7BKf3taNqLswc="},"favicon-309e00e2f78f9a2b042abc2806a8a4ed9cf6bb5d3f00ccc0985b1308bfd86c49.ico":{"logical_path":"favicon.ico","mtime":"2015-07-13T18:30:38+03:00","size":1150,"digest":"309e00e2f78f9a2b042abc2806a8a4ed9cf6bb5d3f00ccc0985b1308bfd86c49","integrity":"sha256-MJ4A4vePmisEKrwoBqik7Zz2u10/AMzAmFsTCL/YbEk="},"id_card-ea506a49b25c8de4e68e786d90f5ec5defb6c8e895b90f2f129815f5e550fe8e.gif":{"logical_path":"id_card.gif","mtime":"2015-07-13T18:30:38+03:00","size":564,"digest":"ea506a49b25c8de4e68e786d90f5ec5defb6c8e895b90f2f129815f5e550fe8e","integrity":"sha256-6lBqSbJcjeTmjnhtkPXsXe+2yOiVuQ8vEpgV9eVQ/o4="},"lhv-4d09d3126a05df392b73c54fa9b1eb605798c2e9bd361cf44500f73038832030.png":{"logical_path":"lhv.png","mtime":"2015-07-13T18:30:38+03:00","size":3417,"digest":"4d09d3126a05df392b73c54fa9b1eb605798c2e9bd361cf44500f73038832030","integrity":"sha256-TQnTEmoF3zkrc8VPqbHrYFeYwum9Nhz0RQD3MDiDIDA="},"mid-275543ecea377debe1ac892470f3aea4f7e7f0f9089fc0fbea4de410742e5239.gif":{"logical_path":"mid.gif","mtime":"2015-07-13T18:30:38+03:00","size":1566,"digest":"275543ecea377debe1ac892470f3aea4f7e7f0f9089fc0fbea4de410742e5239","integrity":"sha256-J1VD7Oo3fevhrIkkcPOupPfn8PkIn8D76k3kEHQuUjk="},"nordea-75c938c7436e0c8316f056be8df8acd0e8b16e09790e78f78da96d9f8633ef3b.png":{"logical_path":"nordea.png","mtime":"2015-07-13T18:30:38+03:00","size":1181,"digest":"75c938c7436e0c8316f056be8df8acd0e8b16e09790e78f78da96d9f8633ef3b","integrity":"sha256-dck4x0NuDIMW8Fa+jfis0Oixbgl5Dnj3jaltn4Yz7zs="},"registrar/bg-alpha-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png":{"logical_path":"registrar/bg-alpha.png","mtime":"2015-07-13T18:30:38+03:00","size":7089,"digest":"9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947","integrity":"sha256-msRaazwT3Vxc8bXRjG8kpTfdLkWYI4Un0jKj4upbWUc="},"registrar/bg-development-0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5.png":{"logical_path":"registrar/bg-development.png","mtime":"2015-07-13T18:30:38+03:00","size":14496,"digest":"0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5","integrity":"sha256-C5k+IkEMeVI5SsGc47QbciqXuTE4qaACCR4eUibSm/U="},"registrar/bg-staging-6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d.png":{"logical_path":"registrar/bg-staging.png","mtime":"2015-07-13T18:30:38+03:00","size":12294,"digest":"6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d","integrity":"sha256-Ynb4wAkRvJnzAfkZ5AiuPvcmxzeDJKxV/V03i6Ok3C0="},"registrar/favicon-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855.ico":{"logical_path":"registrar/favicon.ico","mtime":"2015-07-13T18:30:38+03:00","size":0,"digest":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","integrity":"sha256-47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU="},"seb-9c9d943014cc4ee706244893cd8a2c4a8a7cc97bfbdef6a66e22c72f33d5f25e.png":{"logical_path":"seb.png","mtime":"2015-07-13T18:30:38+03:00","size":2439,"digest":"9c9d943014cc4ee706244893cd8a2c4a8a7cc97bfbdef6a66e22c72f33d5f25e","integrity":"sha256-nJ2UMBTMTucGJEiTzYosSop8yXv73vambiLHLzPV8l4="},"staging-6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d.png":{"logical_path":"staging.png","mtime":"2015-07-13T18:30:38+03:00","size":12294,"digest":"6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d","integrity":"sha256-Ynb4wAkRvJnzAfkZ5AiuPvcmxzeDJKxV/V03i6Ok3C0="},"swed-2cf45729062cf5fa634247ba372c579c97f382e5cc43fa111219077e7473fdbb.png":{"logical_path":"swed.png","mtime":"2015-07-13T18:30:38+03:00","size":1521,"digest":"2cf45729062cf5fa634247ba372c579c97f382e5cc43fa111219077e7473fdbb","integrity":"sha256-LPRXKQYs9fpjQke6NyxXnJfzguXMQ/oREhkHfnRz/bs="},"test-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png":{"logical_path":"test.png","mtime":"2015-07-13T18:30:38+03:00","size":7089,"digest":"9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947","integrity":"sha256-msRaazwT3Vxc8bXRjG8kpTfdLkWYI4Un0jKj4upbWUc="},"admin/application-b1444f5083209e83d34a087d1ff78a91b8a3eb487815a1987cbc5a120bf4e48f.js":{"logical_path":"admin/application.js","mtime":"2015-06-08T11:23:15+03:00","size":396,"digest":"b1444f5083209e83d34a087d1ff78a91b8a3eb487815a1987cbc5a120bf4e48f","integrity":"sha256-sURPUIMgnoPTSgh9H/eKkbij60h4FaGYfLxaEgv05I8="},"registrar/application-8ad3d7cb40be14b5c7dd76340db3618c0cd651644aa1e29bff59cc32e454ea85.js":{"logical_path":"registrar/application.js","mtime":"2015-06-19T15:29:08+03:00","size":1107,"digest":"8ad3d7cb40be14b5c7dd76340db3618c0cd651644aa1e29bff59cc32e454ea85","integrity":"sha256-itPXy0C+FLXH3XY0DbNhjAzWUWRKoeKb/1nMMuRU6oU="},"etelkalight-webfont-baf7e35ab2f64bf1c6fa4476d3934c7422062995738fd9e5715b02f55002d7c0.eot":{"logical_path":"etelkalight-webfont.eot","mtime":"2015-07-13T18:30:38+03:00","size":23109,"digest":"baf7e35ab2f64bf1c6fa4476d3934c7422062995738fd9e5715b02f55002d7c0","integrity":"sha256-uvfjWrL2S/HG+kR205NMdCIGKZVzj9nlcVsC9VAC18A="},"etelkalight-webfont-2b575f6e4696d74957af27a7c7bb7976b7ca31d0ebe8ec25bb4c3494d5d16e24.svg":{"logical_path":"etelkalight-webfont.svg","mtime":"2015-07-13T18:30:38+03:00","size":64768,"digest":"2b575f6e4696d74957af27a7c7bb7976b7ca31d0ebe8ec25bb4c3494d5d16e24","integrity":"sha256-K1dfbkaW10lXryenx7t5drfKMdDr6Owlu0w0lNXRbiQ="},"etelkalight-webfont-f68a2db6346d864f82c3b3e725ee60b0217e91e46ec47f96710f70f996b61af1.ttf":{"logical_path":"etelkalight-webfont.ttf","mtime":"2015-07-13T18:30:38+03:00","size":49748,"digest":"f68a2db6346d864f82c3b3e725ee60b0217e91e46ec47f96710f70f996b61af1","integrity":"sha256-9oottjRthk+Cw7PnJe5gsCF+keRuxH+WcQ9w+Za2GvE="},"etelkalight-webfont-1ed38dbac6b817bf74bd46a98d61005aa2615db7ac743e4037364d1021084043.woff":{"logical_path":"etelkalight-webfont.woff","mtime":"2015-07-13T18:30:38+03:00","size":26204,"digest":"1ed38dbac6b817bf74bd46a98d61005aa2615db7ac743e4037364d1021084043","integrity":"sha256-HtONusa4F790vUapjWEAWqJhXbesdD5ANzZNECEIQEM="},"etelkalightbold-webfont-1d94cabe6fb55b05f746fe0aa51a7a503683d7afdb68360ed26bfac03e1b3c39.eot":{"logical_path":"etelkalightbold-webfont.eot","mtime":"2015-07-13T18:30:38+03:00","size":23707,"digest":"1d94cabe6fb55b05f746fe0aa51a7a503683d7afdb68360ed26bfac03e1b3c39","integrity":"sha256-HZTKvm+1WwX3Rv4KpRp6UDaD16/baDYO0mv6wD4bPDk="},"etelkalightbold-webfont-bb0c8e17b99b10f211be3531a51d6ad48a5c6e4670c8fb6160a329fa4758c555.svg":{"logical_path":"etelkalightbold-webfont.svg","mtime":"2015-07-13T18:30:38+03:00","size":62829,"digest":"bb0c8e17b99b10f211be3531a51d6ad48a5c6e4670c8fb6160a329fa4758c555","integrity":"sha256-uwyOF7mbEPIRvjUxpR1q1IpcbkZwyPthYKMp+kdYxVU="},"etelkalightbold-webfont-0f06d1e7f099578e1cc0e9b1875aca2a7128c0ca0d640fd504e97bae0b028429.ttf":{"logical_path":"etelkalightbold-webfont.ttf","mtime":"2015-07-13T18:30:38+03:00","size":51172,"digest":"0f06d1e7f099578e1cc0e9b1875aca2a7128c0ca0d640fd504e97bae0b028429","integrity":"sha256-DwbR5/CZV44cwOmxh1rKKnEowMoNZA/VBOl7rgsChCk="},"etelkalightbold-webfont-d608c036b3e3f04ca87a1c494f8d9e9620a729b2760b5eb1dcee52c4bc8e8805.woff":{"logical_path":"etelkalightbold-webfont.woff","mtime":"2015-07-13T18:30:38+03:00","size":26956,"digest":"d608c036b3e3f04ca87a1c494f8d9e9620a729b2760b5eb1dcee52c4bc8e8805","integrity":"sha256-1gjANrPj8EyoehxJT42eliCnKbJ2C16x3O5SxLyOiAU="},"etelkalightitalic-webfont-ce5cdffe6c589a6dc6bd2c482c718486ff5fb416ab01740750db325179e58654.eot":{"logical_path":"etelkalightitalic-webfont.eot","mtime":"2015-07-13T18:30:38+03:00","size":26426,"digest":"ce5cdffe6c589a6dc6bd2c482c718486ff5fb416ab01740750db325179e58654","integrity":"sha256-zlzf/mxYmm3GvSxILHGEhv9ftBarAXQHUNsyUXnlhlQ="},"etelkalightitalic-webfont-dd5353c2af4ea63e1d0e99ec5f1f85162cee0c4dd0a3840260a2606eefc3e517.svg":{"logical_path":"etelkalightitalic-webfont.svg","mtime":"2015-07-13T18:30:38+03:00","size":69857,"digest":"dd5353c2af4ea63e1d0e99ec5f1f85162cee0c4dd0a3840260a2606eefc3e517","integrity":"sha256-3VNTwq9Opj4dDpnsXx+FFizuDE3Qo4QCYKJgbu/D5Rc="},"etelkalightitalic-webfont-54eb91ad0e0b639f50be02b7c25836c99ad989185f5d2a240d60ea14a1b7384a.ttf":{"logical_path":"etelkalightitalic-webfont.ttf","mtime":"2015-07-13T18:30:38+03:00","size":57040,"digest":"54eb91ad0e0b639f50be02b7c25836c99ad989185f5d2a240d60ea14a1b7384a","integrity":"sha256-VOuRrQ4LY59QvgK3wlg2yZrZiRhfXSokDWDqFKG3OEo="},"etelkalightitalic-webfont-d1fb9621d40ef45104078a4a5b98ce4cba00872cf8ac56e299cf1397c146cac3.woff":{"logical_path":"etelkalightitalic-webfont.woff","mtime":"2015-07-13T18:30:38+03:00","size":29884,"digest":"d1fb9621d40ef45104078a4a5b98ce4cba00872cf8ac56e299cf1397c146cac3","integrity":"sha256-0fuWIdQO9FEEB4pKW5jOTLoAhyz4rFbimc8Tl8FGysM="},"infotexb-webfont-1951e43e1d9ab99b0d4998abba4aab34f3e68b337be90800db517e4a8d27d001.eot":{"logical_path":"infotexb-webfont.eot","mtime":"2015-07-13T18:30:38+03:00","size":23124,"digest":"1951e43e1d9ab99b0d4998abba4aab34f3e68b337be90800db517e4a8d27d001","integrity":"sha256-GVHkPh2auZsNSZirukqrNPPmizN76QgA21F+So0n0AE="},"infotexb-webfont-0dda72e34d0d0ced7693b55ed08acc60fb1a9036afd7736e432ac3f22f2e6fdf.svg":{"logical_path":"infotexb-webfont.svg","mtime":"2015-07-13T18:30:38+03:00","size":90188,"digest":"0dda72e34d0d0ced7693b55ed08acc60fb1a9036afd7736e432ac3f22f2e6fdf","integrity":"sha256-Ddpy400NDO12k7Ve0IrMYPsakDav13NuQyrD8i8ub98="},"infotexb-webfont-c0737d1e2edff50645e201bf99f68f2313502ee2bdeb2e56435ee24721baf5cd.ttf":{"logical_path":"infotexb-webfont.ttf","mtime":"2015-07-13T18:30:38+03:00","size":47396,"digest":"c0737d1e2edff50645e201bf99f68f2313502ee2bdeb2e56435ee24721baf5cd","integrity":"sha256-wHN9Hi7f9QZF4gG/mfaPIxNQLuK96y5WQ17iRyG69c0="},"infotexb-webfont-8da32e6db23c39390c55dd5ea8949714757fddba516c5db65e72867504493fbc.woff":{"logical_path":"infotexb-webfont.woff","mtime":"2015-07-13T18:30:38+03:00","size":26228,"digest":"8da32e6db23c39390c55dd5ea8949714757fddba516c5db65e72867504493fbc","integrity":"sha256-jaMubbI8OTkMVd1eqJSXFHV/3bpRbF22XnKGdQRJP7w="},"infotexm-webfont-74df99faeb66d8b02966b8884b860af03c359ed41d348ddb813dbcc3c460eb26.eot":{"logical_path":"infotexm-webfont.eot","mtime":"2015-07-13T18:30:38+03:00","size":23273,"digest":"74df99faeb66d8b02966b8884b860af03c359ed41d348ddb813dbcc3c460eb26","integrity":"sha256-dN+Z+utm2LApZriIS4YK8Dw1ntQdNI3bgT28w8Rg6yY="},"infotexm-webfont-0b52ef10620b8cb7289dc809aac67826d5031e6ab040194fdb7365dc83e95557.svg":{"logical_path":"infotexm-webfont.svg","mtime":"2015-07-13T18:30:38+03:00","size":90423,"digest":"0b52ef10620b8cb7289dc809aac67826d5031e6ab040194fdb7365dc83e95557","integrity":"sha256-C1LvEGILjLconcgJqsZ4JtUDHmqwQBlP23Nl3IPpVVc="},"infotexm-webfont-1d244d27a4ec4c1a5f98c82966faa26e7855c4292c730429477003b6dab5c08b.ttf":{"logical_path":"infotexm-webfont.ttf","mtime":"2015-07-13T18:30:38+03:00","size":47484,"digest":"1d244d27a4ec4c1a5f98c82966faa26e7855c4292c730429477003b6dab5c08b","integrity":"sha256-HSRNJ6TsTBpfmMgpZvqibnhVxCkscwQpR3ADttq1wIs="},"infotexm-webfont-872b5ab4e0b7de6655a52f137a3c99f1e7941fa91ff21a56550f2039834ee9d0.woff":{"logical_path":"infotexm-webfont.woff","mtime":"2015-07-13T18:30:38+03:00","size":26492,"digest":"872b5ab4e0b7de6655a52f137a3c99f1e7941fa91ff21a56550f2039834ee9d0","integrity":"sha256-hytatOC33mZVpS8TejyZ8eeUH6kf8hpWVQ8gOYNO6dA="},"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-9a8492a580bf85d3e98ae8861fbd45567e5a1f83eeafcf9574da0399d5f602ab.png":{"logical_path":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png","mtime":"2015-06-03T16:55:27+03:00","size":180,"digest":"9a8492a580bf85d3e98ae8861fbd45567e5a1f83eeafcf9574da0399d5f602ab","integrity":"sha256-moSSpYC/hdPpiuiGH71FVn5aH4Pur8+VdNoDmdX2Aqs="},"jquery-ui/ui-bg_flat_75_ffffff_40x100-39ab7ccd9f4e82579da78a9241265df288d8eb65dbbd7cf48aed2d0129887df5.png":{"logical_path":"jquery-ui/ui-bg_flat_75_ffffff_40x100.png","mtime":"2015-06-03T16:55:27+03:00","size":178,"digest":"39ab7ccd9f4e82579da78a9241265df288d8eb65dbbd7cf48aed2d0129887df5","integrity":"sha256-Oat8zZ9Ogledp4qSQSZd8ojY62XbvXz0iu0tASmIffU="},"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-691597e8a40a891ea94d3589976ecfc33e6145c49422443b00ac2b5a0022964c.png":{"logical_path":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png","mtime":"2015-06-03T16:55:27+03:00","size":120,"digest":"691597e8a40a891ea94d3589976ecfc33e6145c49422443b00ac2b5a0022964c","integrity":"sha256-aRWX6KQKiR6pTTWJl27Pwz5hRcSUIkQ7AKwrWgAilkw="},"jquery-ui/ui-bg_glass_65_ffffff_1x400-f0e6cd91b837d5c5644d026e5ffeccd907953317cd5c0f689901733afda260b2.png":{"logical_path":"jquery-ui/ui-bg_glass_65_ffffff_1x400.png","mtime":"2015-06-03T16:55:27+03:00","size":105,"digest":"f0e6cd91b837d5c5644d026e5ffeccd907953317cd5c0f689901733afda260b2","integrity":"sha256-8ObNkbg31cVkTQJuX/7M2QeVMxfNXA9omQFzOv2iYLI="},"jquery-ui/ui-bg_glass_75_dadada_1x400-c108f5cbf2dd9ec07a26530695ddd95e1664597ce6c056ae44c162cc2e28cec4.png":{"logical_path":"jquery-ui/ui-bg_glass_75_dadada_1x400.png","mtime":"2015-06-03T16:55:27+03:00","size":111,"digest":"c108f5cbf2dd9ec07a26530695ddd95e1664597ce6c056ae44c162cc2e28cec4","integrity":"sha256-wQj1y/LdnsB6JlMGld3ZXhZkWXzmwFauRMFizC4ozsQ="},"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-ddf5dd4e0ef2b185e8bb0af7b6e90ebe74a84384cb4700658e76e754c8bfe550.png":{"logical_path":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png","mtime":"2015-06-03T16:55:27+03:00","size":110,"digest":"ddf5dd4e0ef2b185e8bb0af7b6e90ebe74a84384cb4700658e76e754c8bfe550","integrity":"sha256-3fXdTg7ysYXouwr3tukOvnSoQ4TLRwBljnbnVMi/5VA="},"jquery-ui/ui-bg_glass_95_fef1ec_1x400-f6f1c1bedf1a0f37cfef81d12f5f012869d1ee7c984775a569827a1784d34f5c.png":{"logical_path":"jquery-ui/ui-bg_glass_95_fef1ec_1x400.png","mtime":"2015-06-03T16:55:27+03:00","size":119,"digest":"f6f1c1bedf1a0f37cfef81d12f5f012869d1ee7c984775a569827a1784d34f5c","integrity":"sha256-9vHBvt8aDzfP74HRL18BKGnR7nyYR3WlaYJ6F4TTT1w="},"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-54270656df079c4da5182629a080fc633b6f84b87985eb016d25a560e2c38d4a.png":{"logical_path":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png","mtime":"2015-06-03T16:55:27+03:00","size":101,"digest":"54270656df079c4da5182629a080fc633b6f84b87985eb016d25a560e2c38d4a","integrity":"sha256-VCcGVt8HnE2lGCYpoID8YztvhLh5hesBbSWlYOLDjUo="},"jquery-ui/ui-icons_222222_256x240-57adb0d65f4e91dacfee975d9574422bee7486c8a182d60133728c672f2cdbbc.png":{"logical_path":"jquery-ui/ui-icons_222222_256x240.png","mtime":"2015-06-03T16:55:27+03:00","size":4369,"digest":"57adb0d65f4e91dacfee975d9574422bee7486c8a182d60133728c672f2cdbbc","integrity":"sha256-V62w1l9OkdrP7pddlXRCK+50hsihgtYBM3KMZy8s27w="},"jquery-ui/ui-icons_2e83ff_256x240-20f8c6667afc48aa433ee9eb6d8a0584bdbd6b4a4a9091ff1e6b3adb31e63bd9.png":{"logical_path":"jquery-ui/ui-icons_2e83ff_256x240.png","mtime":"2015-06-03T16:55:27+03:00","size":4369,"digest":"20f8c6667afc48aa433ee9eb6d8a0584bdbd6b4a4a9091ff1e6b3adb31e63bd9","integrity":"sha256-IPjGZnr8SKpDPunrbYoFhL29a0pKkJH/Hms62zHmO9k="},"jquery-ui/ui-icons_454545_256x240-07460e843c3e59aaadbb34231e699e856a2980753c7a47b66447da5d9f93fb7f.png":{"logical_path":"jquery-ui/ui-icons_454545_256x240.png","mtime":"2015-06-03T16:55:27+03:00","size":4369,"digest":"07460e843c3e59aaadbb34231e699e856a2980753c7a47b66447da5d9f93fb7f","integrity":"sha256-B0YOhDw+WaqtuzQjHmmehWopgHU8eke2ZEfaXZ+T+38="},"jquery-ui/ui-icons_888888_256x240-ea2e29625de3463465e93b002b065f5833e05b97f7a052b1c141e754d62e1a8b.png":{"logical_path":"jquery-ui/ui-icons_888888_256x240.png","mtime":"2015-06-03T16:55:27+03:00","size":4369,"digest":"ea2e29625de3463465e93b002b065f5833e05b97f7a052b1c141e754d62e1a8b","integrity":"sha256-6i4pYl3jRjRl6TsAKwZfWDPgW5f3oFKxwUHnVNYuGos="},"jquery-ui/ui-icons_cd0a0a_256x240-1e32c6dbf5d3fd342f27a78aa881550d6412aa207f48468724a6a15402b6041b.png":{"logical_path":"jquery-ui/ui-icons_cd0a0a_256x240.png","mtime":"2015-06-03T16:55:27+03:00","size":4369,"digest":"1e32c6dbf5d3fd342f27a78aa881550d6412aa207f48468724a6a15402b6041b","integrity":"sha256-HjLG2/XT/TQvJ6eKqIFVDWQSqiB/SEaHJKahVAK2BBs="},"bootstrap/glyphicons-halflings-regular-13634da87d9e23f8c3ed9108ce1724d183a39ad072e73e1b3d8cbf646d2d0407.eot":{"logical_path":"bootstrap/glyphicons-halflings-regular.eot","mtime":"2015-06-26T14:45:36+03:00","size":20127,"digest":"13634da87d9e23f8c3ed9108ce1724d183a39ad072e73e1b3d8cbf646d2d0407","integrity":"sha256-E2NNqH2eI/jD7ZEIzhck0YOjmtBy5z4bPYy/ZG0tBAc="},"bootstrap/glyphicons-halflings-regular-42f60659d265c1a3c30f9fa42abcbb56bd4a53af4d83d316d6dd7a36903c43e5.svg":{"logical_path":"bootstrap/glyphicons-halflings-regular.svg","mtime":"2015-06-26T14:45:36+03:00","size":108738,"digest":"42f60659d265c1a3c30f9fa42abcbb56bd4a53af4d83d316d6dd7a36903c43e5","integrity":"sha256-QvYGWdJlwaPDD5+kKry7Vr1KU69Ng9MW1t16NpA8Q+U="},"bootstrap/glyphicons-halflings-regular-e395044093757d82afcb138957d06a1ea9361bdcf0b442d06a18a8051af57456.ttf":{"logical_path":"bootstrap/glyphicons-halflings-regular.ttf","mtime":"2015-06-26T14:45:36+03:00","size":45404,"digest":"e395044093757d82afcb138957d06a1ea9361bdcf0b442d06a18a8051af57456","integrity":"sha256-45UEQJN1fYKvyxOJV9BqHqk2G9zwtELQahioBRr1dFY="},"bootstrap/glyphicons-halflings-regular-a26394f7ede100ca118eff2eda08596275a9839b959c226e15439557a5a80742.woff":{"logical_path":"bootstrap/glyphicons-halflings-regular.woff","mtime":"2015-06-26T14:45:36+03:00","size":23424,"digest":"a26394f7ede100ca118eff2eda08596275a9839b959c226e15439557a5a80742","integrity":"sha256-omOU9+3hAMoRjv8u2ghZYnWpg5uVnCJuFUOVV6WoB0I="},"bootstrap/glyphicons-halflings-regular-fe185d11a49676890d47bb783312a0cda5a44c4039214094e7957b4c040ef11c.woff2":{"logical_path":"bootstrap/glyphicons-halflings-regular.woff2","mtime":"2015-06-26T14:45:36+03:00","size":18028,"digest":"fe185d11a49676890d47bb783312a0cda5a44c4039214094e7957b4c040ef11c","integrity":"sha256-/hhdEaSWdokNR7t4MxKgzaWkTEA5IUCU55V7TAQO8Rw="},"admin-manifest-1b7a9adf38de3299af2f97b0c037bf01c21b7056910e5ee41507a91ab675bd4d.css":{"logical_path":"admin-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":163910,"digest":"1b7a9adf38de3299af2f97b0c037bf01c21b7056910e5ee41507a91ab675bd4d","integrity":"sha256-G3qa3zjeMpmvL5ewwDe/AcIbcFaRDl7kFQepGrZ1vU0="},"admin-manifest-5f612f59c9effcca0be5396c4f00654de236d2bb1b16bbdf929b47e6504381f3.js":{"logical_path":"admin-manifest.js","mtime":"2015-06-08T14:38:06+03:00","size":323893,"digest":"5f612f59c9effcca0be5396c4f00654de236d2bb1b16bbdf929b47e6504381f3","integrity":"sha256-X2EvWcnv/MoL5TlsTwBlTeI20rsbFrvfkptH5lBDgfM="},"registrar-manifest-b4694748846de7a7f12463c4524f71013645b58fc770188432dfc5c5a93ded3a.css":{"logical_path":"registrar-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":187703,"digest":"b4694748846de7a7f12463c4524f71013645b58fc770188432dfc5c5a93ded3a","integrity":"sha256-tGlHSIRt56fxJGPEUk9xATZFtY/HcBiEMt/Fxak97To="},"registrar-manifest-700f689d9abdd73516260d2622b912a8d3e003de966996ba7a331bfa065720e7.js":{"logical_path":"registrar-manifest.js","mtime":"2015-06-19T15:29:08+03:00","size":314928,"digest":"700f689d9abdd73516260d2622b912a8d3e003de966996ba7a331bfa065720e7","integrity":"sha256-cA9onZq91zUWJg0mIrkSqNPgA96WaZa6ejMb+gZXIOc="},"registrant-manifest-ffb2502ddd176bf6bf64424abdf509f1c2fa44883cd159ffc6e0bf5bba81a226.css":{"logical_path":"registrant-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":187888,"digest":"ffb2502ddd176bf6bf64424abdf509f1c2fa44883cd159ffc6e0bf5bba81a226","integrity":"sha256-/7JQLd0Xa/a/ZEJKvfUJ8cL6RIg80Vn/xuC/W7qBoiY="},"registrant-manifest-700f689d9abdd73516260d2622b912a8d3e003de966996ba7a331bfa065720e7.js":{"logical_path":"registrant-manifest.js","mtime":"2015-06-19T15:29:08+03:00","size":314928,"digest":"700f689d9abdd73516260d2622b912a8d3e003de966996ba7a331bfa065720e7","integrity":"sha256-cA9onZq91zUWJg0mIrkSqNPgA96WaZa6ejMb+gZXIOc="},"shared/pdf-8d8bf4207c64d5de1ad8a683ed3c0d97dbe85a73644e9440b3a7c1d638c93590.css":{"logical_path":"shared/pdf.css","mtime":"2015-05-15T15:29:32+03:00","size":119782,"digest":"8d8bf4207c64d5de1ad8a683ed3c0d97dbe85a73644e9440b3a7c1d638c93590","integrity":"sha256-jYv0IHxk1d4a2KaD7TwNl9voWnNkTpRAs6fB1jjJNZA="},"admin/application-2e4aafc94dbce8d43d7bac4eb5521a14a72e3bbeece3b4363494d70fcd274542.js":{"logical_path":"admin/application.js","mtime":"2015-07-13T18:30:38+03:00","size":287,"digest":"2e4aafc94dbce8d43d7bac4eb5521a14a72e3bbeece3b4363494d70fcd274542","integrity":"sha256-LkqvyU286NQ9e6xOtVIaFKcuO77s47Q2NJTXD80nRUI="},"registrar/application-f96ff2f3f4d2326db627c9191074e5c10ad3679eac8eb2d22e3a9faef39e06a9.js":{"logical_path":"registrar/application.js","mtime":"2015-06-19T15:29:08+03:00","size":826,"digest":"f96ff2f3f4d2326db627c9191074e5c10ad3679eac8eb2d22e3a9faef39e06a9","integrity":"sha256-+W/y8/TSMm22J8kZEHTlwQrTZ56sjrLSLjqfrvOeBqk="},"registrar-manifest-413fda057832b25dee9d45f5f07b29ac369fc85f51ecd9e7bc2cdefa5297b4f3.js":{"logical_path":"registrar-manifest.js","mtime":"2015-06-08T14:38:06+03:00","size":314906,"digest":"413fda057832b25dee9d45f5f07b29ac369fc85f51ecd9e7bc2cdefa5297b4f3","integrity":"sha256-QT/aBXgysl3unUX18HsprDafyF9R7NnnvCze+lKXtPM="},"registrant-manifest-f9e9d795de4f7dabe387365fd329c1cb24da923bd357988c120cc5710230cc48.js":{"logical_path":"registrant-manifest.js","mtime":"2015-06-08T14:38:06+03:00","size":314906,"digest":"f9e9d795de4f7dabe387365fd329c1cb24da923bd357988c120cc5710230cc48","integrity":"sha256-+enXld5PfavjhzZf0ynByyTakjvTV5iMEgzFcQIwzEg="},"registrar/application-978b21a99ae3caabb8a9e301dccaa0b93f86cc789a9595158c98ee51393b8cb9.js":{"logical_path":"registrar/application.js","mtime":"2015-07-13T18:30:38+03:00","size":804,"digest":"978b21a99ae3caabb8a9e301dccaa0b93f86cc789a9595158c98ee51393b8cb9","integrity":"sha256-l4shqZrjyqu4qeMB3MqguT+GzHialZUVjJjuUTk7jLk="},"admin-manifest-6e5e54ad9b1f48eb4372bf4d3ffd1854d859dc5e2ab4977dbf59c4abfeebd760.css":{"logical_path":"admin-manifest.css","mtime":"2015-07-13T18:30:38+03:00","size":169226,"digest":"6e5e54ad9b1f48eb4372bf4d3ffd1854d859dc5e2ab4977dbf59c4abfeebd760","integrity":"sha256-bl5UrZsfSOtDcr9NP/0YVNhZ3F4qtJd9v1nEq/7r12A="},"admin-manifest-b904d5679d9ed357c2412b8d9054c5d60b6c8524e11e4ff80d2e45580108e709.js":{"logical_path":"admin-manifest.js","mtime":"2015-07-13T18:30:38+03:00","size":325028,"digest":"b904d5679d9ed357c2412b8d9054c5d60b6c8524e11e4ff80d2e45580108e709","integrity":"sha256-uQTVZ52e01fCQSuNkFTF1gtshSThHk/4DS5FWAEI5wk="},"registrar-manifest-d9e1a3fb37873e44c313486ea2ad7ff1791e9ce4d6d44e95a602d87d480f27e1.css":{"logical_path":"registrar-manifest.css","mtime":"2015-07-13T18:30:38+03:00","size":193019,"digest":"d9e1a3fb37873e44c313486ea2ad7ff1791e9ce4d6d44e95a602d87d480f27e1","integrity":"sha256-2eGj+zeHPkTDE0huoq1/8XkenOTW1E6VpgLYfUgPJ+E="},"registrar-manifest-0297caa2939148f9284b754e7a0cc2a08272b8ff3194d97be0c95858498cbe39.js":{"logical_path":"registrar-manifest.js","mtime":"2015-07-13T18:30:38+03:00","size":316041,"digest":"0297caa2939148f9284b754e7a0cc2a08272b8ff3194d97be0c95858498cbe39","integrity":"sha256-ApfKopORSPkoS3VOegzCoIJyuP8xlNl74MlYWEmMvjk="},"registrant-manifest-651e30954782cb9b1e582abeb18c47402c951e3fd4aa71311363a058869f4d66.css":{"logical_path":"registrant-manifest.css","mtime":"2015-07-13T18:30:38+03:00","size":193204,"digest":"651e30954782cb9b1e582abeb18c47402c951e3fd4aa71311363a058869f4d66","integrity":"sha256-ZR4wlUeCy5seWCq+sYxHQCyVHj/UqnExE2OgWIafTWY="},"registrant-manifest-a94cc4d69bafc048f1cb08fffd1c733fc37157e660e4897005207cf03f1d98ca.js":{"logical_path":"registrant-manifest.js","mtime":"2015-07-13T18:30:38+03:00","size":316041,"digest":"a94cc4d69bafc048f1cb08fffd1c733fc37157e660e4897005207cf03f1d98ca","integrity":"sha256-qUzE1puvwEjxywj//RxzP8NxV+Zg5IlwBSB88D8dmMo="},"shared/pdf-3f6858cfb5eec601002c5a418b287ccdddf38bb953111ffdff1321d3b1fbbddc.css":{"logical_path":"shared/pdf.css","mtime":"2015-07-13T18:30:38+03:00","size":125098,"digest":"3f6858cfb5eec601002c5a418b287ccdddf38bb953111ffdff1321d3b1fbbddc","integrity":"sha256-P2hYz7XuxgEALFpBiyh8zd3zi7lTER/9/xMh07H7vdw="},"admin-manifest-7058b706893af7473775946fa6171e3c3d7d81f5fe323c402acc8b207eac4f1b.css":{"logical_path":"admin-manifest.css","mtime":"2015-07-21T18:38:58+03:00","size":169258,"digest":"7058b706893af7473775946fa6171e3c3d7d81f5fe323c402acc8b207eac4f1b","integrity":"sha256-cFi3Bok690c3dZRvphcePD19gfX+MjxAKsyLIH6sTxs="},"registrar-manifest-12ddf3d27aeb82ed229b8a7ec6b50fdfa33c115326bb540d3c64d630122382bb.css":{"logical_path":"registrar-manifest.css","mtime":"2015-07-21T18:38:58+03:00","size":193051,"digest":"12ddf3d27aeb82ed229b8a7ec6b50fdfa33c115326bb540d3c64d630122382bb","integrity":"sha256-Et3z0nrrgu0im4p+xrUP36M8EVMmu1QNPGTWMBIjgrs="},"registrant-manifest-9711ccec91402d435ddfb0b0fbf708a1ffef67868a86c38014f975183d61e324.css":{"logical_path":"registrant-manifest.css","mtime":"2015-07-21T18:38:58+03:00","size":193236,"digest":"9711ccec91402d435ddfb0b0fbf708a1ffef67868a86c38014f975183d61e324","integrity":"sha256-lxHM7JFALUNd37Cw+/cIof/vZ4aKhsOAFPl1GD1h4yQ="}},"assets":{"admin-manifest.css":"admin-manifest-7058b706893af7473775946fa6171e3c3d7d81f5fe323c402acc8b207eac4f1b.css","admin-manifest.js":"admin-manifest-b904d5679d9ed357c2412b8d9054c5d60b6c8524e11e4ff80d2e45580108e709.js","registrar-manifest.css":"registrar-manifest-12ddf3d27aeb82ed229b8a7ec6b50fdfa33c115326bb540d3c64d630122382bb.css","registrar-manifest.js":"registrar-manifest-0297caa2939148f9284b754e7a0cc2a08272b8ff3194d97be0c95858498cbe39.js","registrant-manifest.css":"registrant-manifest-9711ccec91402d435ddfb0b0fbf708a1ffef67868a86c38014f975183d61e324.css","registrant-manifest.js":"registrant-manifest-a94cc4d69bafc048f1cb08fffd1c733fc37157e660e4897005207cf03f1d98ca.js","shared/pdf.css":"shared/pdf-3f6858cfb5eec601002c5a418b287ccdddf38bb953111ffdff1321d3b1fbbddc.css","select2.png":"select2-d6b5d8d83dbc18fb8d77c8761d331cd9e5123c9684950bab0406e98a24ac5ae8.png","select2-spinner.gif":"select2-spinner-f6ecff617ec2ba7f559e6f535cad9b70a3f91120737535dab4d4548a6c83576c.gif","select2x2.png":"select2x2-6fe28d687dc0ed4d96016238c608ba1e7198c9c9accfa0b360b78018b9fb9bc2.png","alpha.png":"alpha-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png","bg.jpg":"bg-b8036abd2f0f36e3ab54d5d5b25b0fbac11d63ec6106d959df3fa180b379de05.jpg","danske.png":"danske-07a4395cc406785da129414e15872fe1d6a4f6f6da0066da6701b56cdb72ea96.png","development.png":"development-0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5.png","eis-logo-et.png":"eis-logo-et-86a549d266cda73e3225c5eeba14532c59d498e1fd980ec129fded68da8bb307.png","favicon.ico":"favicon-309e00e2f78f9a2b042abc2806a8a4ed9cf6bb5d3f00ccc0985b1308bfd86c49.ico","id_card.gif":"id_card-ea506a49b25c8de4e68e786d90f5ec5defb6c8e895b90f2f129815f5e550fe8e.gif","lhv.png":"lhv-4d09d3126a05df392b73c54fa9b1eb605798c2e9bd361cf44500f73038832030.png","mid.gif":"mid-275543ecea377debe1ac892470f3aea4f7e7f0f9089fc0fbea4de410742e5239.gif","nordea.png":"nordea-75c938c7436e0c8316f056be8df8acd0e8b16e09790e78f78da96d9f8633ef3b.png","registrar/bg-alpha.png":"registrar/bg-alpha-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png","registrar/bg-development.png":"registrar/bg-development-0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5.png","registrar/bg-staging.png":"registrar/bg-staging-6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d.png","registrar/favicon.ico":"registrar/favicon-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855.ico","seb.png":"seb-9c9d943014cc4ee706244893cd8a2c4a8a7cc97bfbdef6a66e22c72f33d5f25e.png","staging.png":"staging-6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d.png","swed.png":"swed-2cf45729062cf5fa634247ba372c579c97f382e5cc43fa111219077e7473fdbb.png","test.png":"test-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png","admin/application.js":"admin/application-2e4aafc94dbce8d43d7bac4eb5521a14a72e3bbeece3b4363494d70fcd274542.js","registrar/application.js":"registrar/application-978b21a99ae3caabb8a9e301dccaa0b93f86cc789a9595158c98ee51393b8cb9.js","etelkalight-webfont.eot":"etelkalight-webfont-baf7e35ab2f64bf1c6fa4476d3934c7422062995738fd9e5715b02f55002d7c0.eot","etelkalight-webfont.svg":"etelkalight-webfont-2b575f6e4696d74957af27a7c7bb7976b7ca31d0ebe8ec25bb4c3494d5d16e24.svg","etelkalight-webfont.ttf":"etelkalight-webfont-f68a2db6346d864f82c3b3e725ee60b0217e91e46ec47f96710f70f996b61af1.ttf","etelkalight-webfont.woff":"etelkalight-webfont-1ed38dbac6b817bf74bd46a98d61005aa2615db7ac743e4037364d1021084043.woff","etelkalightbold-webfont.eot":"etelkalightbold-webfont-1d94cabe6fb55b05f746fe0aa51a7a503683d7afdb68360ed26bfac03e1b3c39.eot","etelkalightbold-webfont.svg":"etelkalightbold-webfont-bb0c8e17b99b10f211be3531a51d6ad48a5c6e4670c8fb6160a329fa4758c555.svg","etelkalightbold-webfont.ttf":"etelkalightbold-webfont-0f06d1e7f099578e1cc0e9b1875aca2a7128c0ca0d640fd504e97bae0b028429.ttf","etelkalightbold-webfont.woff":"etelkalightbold-webfont-d608c036b3e3f04ca87a1c494f8d9e9620a729b2760b5eb1dcee52c4bc8e8805.woff","etelkalightitalic-webfont.eot":"etelkalightitalic-webfont-ce5cdffe6c589a6dc6bd2c482c718486ff5fb416ab01740750db325179e58654.eot","etelkalightitalic-webfont.svg":"etelkalightitalic-webfont-dd5353c2af4ea63e1d0e99ec5f1f85162cee0c4dd0a3840260a2606eefc3e517.svg","etelkalightitalic-webfont.ttf":"etelkalightitalic-webfont-54eb91ad0e0b639f50be02b7c25836c99ad989185f5d2a240d60ea14a1b7384a.ttf","etelkalightitalic-webfont.woff":"etelkalightitalic-webfont-d1fb9621d40ef45104078a4a5b98ce4cba00872cf8ac56e299cf1397c146cac3.woff","infotexb-webfont.eot":"infotexb-webfont-1951e43e1d9ab99b0d4998abba4aab34f3e68b337be90800db517e4a8d27d001.eot","infotexb-webfont.svg":"infotexb-webfont-0dda72e34d0d0ced7693b55ed08acc60fb1a9036afd7736e432ac3f22f2e6fdf.svg","infotexb-webfont.ttf":"infotexb-webfont-c0737d1e2edff50645e201bf99f68f2313502ee2bdeb2e56435ee24721baf5cd.ttf","infotexb-webfont.woff":"infotexb-webfont-8da32e6db23c39390c55dd5ea8949714757fddba516c5db65e72867504493fbc.woff","infotexm-webfont.eot":"infotexm-webfont-74df99faeb66d8b02966b8884b860af03c359ed41d348ddb813dbcc3c460eb26.eot","infotexm-webfont.svg":"infotexm-webfont-0b52ef10620b8cb7289dc809aac67826d5031e6ab040194fdb7365dc83e95557.svg","infotexm-webfont.ttf":"infotexm-webfont-1d244d27a4ec4c1a5f98c82966faa26e7855c4292c730429477003b6dab5c08b.ttf","infotexm-webfont.woff":"infotexm-webfont-872b5ab4e0b7de6655a52f137a3c99f1e7941fa91ff21a56550f2039834ee9d0.woff","jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-9a8492a580bf85d3e98ae8861fbd45567e5a1f83eeafcf9574da0399d5f602ab.png","jquery-ui/ui-bg_flat_75_ffffff_40x100.png":"jquery-ui/ui-bg_flat_75_ffffff_40x100-39ab7ccd9f4e82579da78a9241265df288d8eb65dbbd7cf48aed2d0129887df5.png","jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-691597e8a40a891ea94d3589976ecfc33e6145c49422443b00ac2b5a0022964c.png","jquery-ui/ui-bg_glass_65_ffffff_1x400.png":"jquery-ui/ui-bg_glass_65_ffffff_1x400-f0e6cd91b837d5c5644d026e5ffeccd907953317cd5c0f689901733afda260b2.png","jquery-ui/ui-bg_glass_75_dadada_1x400.png":"jquery-ui/ui-bg_glass_75_dadada_1x400-c108f5cbf2dd9ec07a26530695ddd95e1664597ce6c056ae44c162cc2e28cec4.png","jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-ddf5dd4e0ef2b185e8bb0af7b6e90ebe74a84384cb4700658e76e754c8bfe550.png","jquery-ui/ui-bg_glass_95_fef1ec_1x400.png":"jquery-ui/ui-bg_glass_95_fef1ec_1x400-f6f1c1bedf1a0f37cfef81d12f5f012869d1ee7c984775a569827a1784d34f5c.png","jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-54270656df079c4da5182629a080fc633b6f84b87985eb016d25a560e2c38d4a.png","jquery-ui/ui-icons_222222_256x240.png":"jquery-ui/ui-icons_222222_256x240-57adb0d65f4e91dacfee975d9574422bee7486c8a182d60133728c672f2cdbbc.png","jquery-ui/ui-icons_2e83ff_256x240.png":"jquery-ui/ui-icons_2e83ff_256x240-20f8c6667afc48aa433ee9eb6d8a0584bdbd6b4a4a9091ff1e6b3adb31e63bd9.png","jquery-ui/ui-icons_454545_256x240.png":"jquery-ui/ui-icons_454545_256x240-07460e843c3e59aaadbb34231e699e856a2980753c7a47b66447da5d9f93fb7f.png","jquery-ui/ui-icons_888888_256x240.png":"jquery-ui/ui-icons_888888_256x240-ea2e29625de3463465e93b002b065f5833e05b97f7a052b1c141e754d62e1a8b.png","jquery-ui/ui-icons_cd0a0a_256x240.png":"jquery-ui/ui-icons_cd0a0a_256x240-1e32c6dbf5d3fd342f27a78aa881550d6412aa207f48468724a6a15402b6041b.png","bootstrap/glyphicons-halflings-regular.eot":"bootstrap/glyphicons-halflings-regular-13634da87d9e23f8c3ed9108ce1724d183a39ad072e73e1b3d8cbf646d2d0407.eot","bootstrap/glyphicons-halflings-regular.svg":"bootstrap/glyphicons-halflings-regular-42f60659d265c1a3c30f9fa42abcbb56bd4a53af4d83d316d6dd7a36903c43e5.svg","bootstrap/glyphicons-halflings-regular.ttf":"bootstrap/glyphicons-halflings-regular-e395044093757d82afcb138957d06a1ea9361bdcf0b442d06a18a8051af57456.ttf","bootstrap/glyphicons-halflings-regular.woff":"bootstrap/glyphicons-halflings-regular-a26394f7ede100ca118eff2eda08596275a9839b959c226e15439557a5a80742.woff","bootstrap/glyphicons-halflings-regular.woff2":"bootstrap/glyphicons-halflings-regular-fe185d11a49676890d47bb783312a0cda5a44c4039214094e7957b4c040ef11c.woff2"}} \ No newline at end of file +{"files":{"admin-manifest-58660819bb55d95ee3f0c8149722a0e2ea507a3a45f24d22a2610d060bdc8dc0.css":{"logical_path":"admin-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":435358,"digest":"58660819bb55d95ee3f0c8149722a0e2ea507a3a45f24d22a2610d060bdc8dc0","integrity":"sha256-WGYIGbtV2V7j8MgUlyKg4upQejpF8k0iomENBgvcjcA="},"admin-manifest-025801216a3b153631239205b373c5e4ac42d55cc9a53960d3c485b5eed9d467.js":{"logical_path":"admin-manifest.js","mtime":"2015-06-08T14:38:06+03:00","size":712602,"digest":"025801216a3b153631239205b373c5e4ac42d55cc9a53960d3c485b5eed9d467","integrity":"sha256-AlgBIWo7FTYxI5IFs3PF5KxC1VzJpTlg08SFte7Z1Gc="},"registrar-manifest-70dd177301fef149b726705917e97491911b4a74c1760a223eaefaaf3918a38b.css":{"logical_path":"registrar-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":475725,"digest":"70dd177301fef149b726705917e97491911b4a74c1760a223eaefaaf3918a38b","integrity":"sha256-cN0XcwH+8Um3JnBZF+l0kZEbSnTBdgoiPq76rzkYo4s="},"registrar-manifest-037217137e7dd50d2a0c4aec309e532b9cd2696de45c826cc0c4ff8bf58025e6.js":{"logical_path":"registrar-manifest.js","mtime":"2015-06-19T15:29:08+03:00","size":730835,"digest":"037217137e7dd50d2a0c4aec309e532b9cd2696de45c826cc0c4ff8bf58025e6","integrity":"sha256-A3IXE3591Q0qDErsMJ5TK5zSaW3kXIJswMT/i/WAJeY="},"registrant-manifest-6bfceed2fd52330f303b890fa9d229b1ecd097fda1b7df2db41829b8c25d40c0.css":{"logical_path":"registrant-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":476257,"digest":"6bfceed2fd52330f303b890fa9d229b1ecd097fda1b7df2db41829b8c25d40c0","integrity":"sha256-a/zu0v1SMw8wO4kPqdIpsezQl/2ht98ttBgpuMJdQMA="},"registrant-manifest-037217137e7dd50d2a0c4aec309e532b9cd2696de45c826cc0c4ff8bf58025e6.js":{"logical_path":"registrant-manifest.js","mtime":"2015-06-19T15:29:08+03:00","size":730835,"digest":"037217137e7dd50d2a0c4aec309e532b9cd2696de45c826cc0c4ff8bf58025e6","integrity":"sha256-A3IXE3591Q0qDErsMJ5TK5zSaW3kXIJswMT/i/WAJeY="},"shared/pdf-2f929bf92af2ce26249b1b02bb998c63cf49da0ae4e3526f869fccd0af65ac3b.css":{"logical_path":"shared/pdf.css","mtime":"2015-05-15T15:29:32+03:00","size":353119,"digest":"2f929bf92af2ce26249b1b02bb998c63cf49da0ae4e3526f869fccd0af65ac3b","integrity":"sha256-L5Kb+SryziYkmxsCu5mMY89J2grk41Jvhp/M0K9lrDs="},"select2-d6b5d8d83dbc18fb8d77c8761d331cd9e5123c9684950bab0406e98a24ac5ae8.png":{"logical_path":"select2.png","mtime":"2015-05-14T14:33:49+03:00","size":613,"digest":"d6b5d8d83dbc18fb8d77c8761d331cd9e5123c9684950bab0406e98a24ac5ae8","integrity":"sha256-1rXY2D28GPuNd8h2HTMc2eUSPJaElQurBAbpiiSsWug="},"select2-spinner-f6ecff617ec2ba7f559e6f535cad9b70a3f91120737535dab4d4548a6c83576c.gif":{"logical_path":"select2-spinner.gif","mtime":"2015-05-14T14:33:49+03:00","size":1849,"digest":"f6ecff617ec2ba7f559e6f535cad9b70a3f91120737535dab4d4548a6c83576c","integrity":"sha256-9uz/YX7Cun9Vnm9TXK2bcKP5ESBzdTXatNRUimyDV2w="},"select2x2-6fe28d687dc0ed4d96016238c608ba1e7198c9c9accfa0b360b78018b9fb9bc2.png":{"logical_path":"select2x2.png","mtime":"2015-05-14T14:33:49+03:00","size":845,"digest":"6fe28d687dc0ed4d96016238c608ba1e7198c9c9accfa0b360b78018b9fb9bc2","integrity":"sha256-b+KNaH3A7U2WAWI4xgi6HnGYycmsz6CzYLeAGLn7m8I="},"alpha-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png":{"logical_path":"alpha.png","mtime":"2015-05-15T15:29:32+03:00","size":7089,"digest":"9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947","integrity":"sha256-msRaazwT3Vxc8bXRjG8kpTfdLkWYI4Un0jKj4upbWUc="},"bg-b8036abd2f0f36e3ab54d5d5b25b0fbac11d63ec6106d959df3fa180b379de05.jpg":{"logical_path":"bg.jpg","mtime":"2015-05-15T15:29:32+03:00","size":69058,"digest":"b8036abd2f0f36e3ab54d5d5b25b0fbac11d63ec6106d959df3fa180b379de05","integrity":"sha256-uANqvS8PNuOrVNXVslsPusEdY+xhBtlZ3z+hgLN53gU="},"danske-07a4395cc406785da129414e15872fe1d6a4f6f6da0066da6701b56cdb72ea96.png":{"logical_path":"danske.png","mtime":"2015-05-15T15:29:32+03:00","size":1130,"digest":"07a4395cc406785da129414e15872fe1d6a4f6f6da0066da6701b56cdb72ea96","integrity":"sha256-B6Q5XMQGeF2hKUFOFYcv4dak9vbaAGbaZwG1bNty6pY="},"development-0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5.png":{"logical_path":"development.png","mtime":"2015-05-15T15:29:32+03:00","size":14496,"digest":"0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5","integrity":"sha256-C5k+IkEMeVI5SsGc47QbciqXuTE4qaACCR4eUibSm/U="},"eis-logo-et-86a549d266cda73e3225c5eeba14532c59d498e1fd980ec129fded68da8bb307.png":{"logical_path":"eis-logo-et.png","mtime":"2015-05-15T15:29:32+03:00","size":1440,"digest":"86a549d266cda73e3225c5eeba14532c59d498e1fd980ec129fded68da8bb307","integrity":"sha256-hqVJ0mbNpz4yJcXuuhRTLFnUmOH9mA7BKf3taNqLswc="},"favicon-309e00e2f78f9a2b042abc2806a8a4ed9cf6bb5d3f00ccc0985b1308bfd86c49.ico":{"logical_path":"favicon.ico","mtime":"2015-05-15T15:29:32+03:00","size":1150,"digest":"309e00e2f78f9a2b042abc2806a8a4ed9cf6bb5d3f00ccc0985b1308bfd86c49","integrity":"sha256-MJ4A4vePmisEKrwoBqik7Zz2u10/AMzAmFsTCL/YbEk="},"id_card-ea506a49b25c8de4e68e786d90f5ec5defb6c8e895b90f2f129815f5e550fe8e.gif":{"logical_path":"id_card.gif","mtime":"2015-05-15T15:29:32+03:00","size":564,"digest":"ea506a49b25c8de4e68e786d90f5ec5defb6c8e895b90f2f129815f5e550fe8e","integrity":"sha256-6lBqSbJcjeTmjnhtkPXsXe+2yOiVuQ8vEpgV9eVQ/o4="},"lhv-4d09d3126a05df392b73c54fa9b1eb605798c2e9bd361cf44500f73038832030.png":{"logical_path":"lhv.png","mtime":"2015-05-15T15:29:32+03:00","size":3417,"digest":"4d09d3126a05df392b73c54fa9b1eb605798c2e9bd361cf44500f73038832030","integrity":"sha256-TQnTEmoF3zkrc8VPqbHrYFeYwum9Nhz0RQD3MDiDIDA="},"mid-275543ecea377debe1ac892470f3aea4f7e7f0f9089fc0fbea4de410742e5239.gif":{"logical_path":"mid.gif","mtime":"2015-05-15T15:29:32+03:00","size":1566,"digest":"275543ecea377debe1ac892470f3aea4f7e7f0f9089fc0fbea4de410742e5239","integrity":"sha256-J1VD7Oo3fevhrIkkcPOupPfn8PkIn8D76k3kEHQuUjk="},"nordea-75c938c7436e0c8316f056be8df8acd0e8b16e09790e78f78da96d9f8633ef3b.png":{"logical_path":"nordea.png","mtime":"2015-05-15T15:29:32+03:00","size":1181,"digest":"75c938c7436e0c8316f056be8df8acd0e8b16e09790e78f78da96d9f8633ef3b","integrity":"sha256-dck4x0NuDIMW8Fa+jfis0Oixbgl5Dnj3jaltn4Yz7zs="},"registrar/bg-alpha-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png":{"logical_path":"registrar/bg-alpha.png","mtime":"2015-05-15T15:29:32+03:00","size":7089,"digest":"9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947","integrity":"sha256-msRaazwT3Vxc8bXRjG8kpTfdLkWYI4Un0jKj4upbWUc="},"registrar/bg-development-0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5.png":{"logical_path":"registrar/bg-development.png","mtime":"2015-05-15T15:29:32+03:00","size":14496,"digest":"0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5","integrity":"sha256-C5k+IkEMeVI5SsGc47QbciqXuTE4qaACCR4eUibSm/U="},"registrar/bg-staging-6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d.png":{"logical_path":"registrar/bg-staging.png","mtime":"2015-05-15T15:29:32+03:00","size":12294,"digest":"6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d","integrity":"sha256-Ynb4wAkRvJnzAfkZ5AiuPvcmxzeDJKxV/V03i6Ok3C0="},"registrar/favicon-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855.ico":{"logical_path":"registrar/favicon.ico","mtime":"2015-05-15T15:29:32+03:00","size":0,"digest":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","integrity":"sha256-47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU="},"seb-9c9d943014cc4ee706244893cd8a2c4a8a7cc97bfbdef6a66e22c72f33d5f25e.png":{"logical_path":"seb.png","mtime":"2015-05-15T15:29:32+03:00","size":2439,"digest":"9c9d943014cc4ee706244893cd8a2c4a8a7cc97bfbdef6a66e22c72f33d5f25e","integrity":"sha256-nJ2UMBTMTucGJEiTzYosSop8yXv73vambiLHLzPV8l4="},"staging-6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d.png":{"logical_path":"staging.png","mtime":"2015-05-15T15:29:32+03:00","size":12294,"digest":"6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d","integrity":"sha256-Ynb4wAkRvJnzAfkZ5AiuPvcmxzeDJKxV/V03i6Ok3C0="},"swed-2cf45729062cf5fa634247ba372c579c97f382e5cc43fa111219077e7473fdbb.png":{"logical_path":"swed.png","mtime":"2015-05-15T15:29:32+03:00","size":1521,"digest":"2cf45729062cf5fa634247ba372c579c97f382e5cc43fa111219077e7473fdbb","integrity":"sha256-LPRXKQYs9fpjQke6NyxXnJfzguXMQ/oREhkHfnRz/bs="},"test-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png":{"logical_path":"test.png","mtime":"2015-05-15T15:29:32+03:00","size":7089,"digest":"9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947","integrity":"sha256-msRaazwT3Vxc8bXRjG8kpTfdLkWYI4Un0jKj4upbWUc="},"admin/application-b1444f5083209e83d34a087d1ff78a91b8a3eb487815a1987cbc5a120bf4e48f.js":{"logical_path":"admin/application.js","mtime":"2015-06-08T11:23:15+03:00","size":396,"digest":"b1444f5083209e83d34a087d1ff78a91b8a3eb487815a1987cbc5a120bf4e48f","integrity":"sha256-sURPUIMgnoPTSgh9H/eKkbij60h4FaGYfLxaEgv05I8="},"registrar/application-8ad3d7cb40be14b5c7dd76340db3618c0cd651644aa1e29bff59cc32e454ea85.js":{"logical_path":"registrar/application.js","mtime":"2015-06-19T15:29:08+03:00","size":1107,"digest":"8ad3d7cb40be14b5c7dd76340db3618c0cd651644aa1e29bff59cc32e454ea85","integrity":"sha256-itPXy0C+FLXH3XY0DbNhjAzWUWRKoeKb/1nMMuRU6oU="},"etelkalight-webfont-baf7e35ab2f64bf1c6fa4476d3934c7422062995738fd9e5715b02f55002d7c0.eot":{"logical_path":"etelkalight-webfont.eot","mtime":"2015-05-15T15:29:32+03:00","size":23109,"digest":"baf7e35ab2f64bf1c6fa4476d3934c7422062995738fd9e5715b02f55002d7c0","integrity":"sha256-uvfjWrL2S/HG+kR205NMdCIGKZVzj9nlcVsC9VAC18A="},"etelkalight-webfont-2b575f6e4696d74957af27a7c7bb7976b7ca31d0ebe8ec25bb4c3494d5d16e24.svg":{"logical_path":"etelkalight-webfont.svg","mtime":"2015-05-15T15:29:32+03:00","size":64768,"digest":"2b575f6e4696d74957af27a7c7bb7976b7ca31d0ebe8ec25bb4c3494d5d16e24","integrity":"sha256-K1dfbkaW10lXryenx7t5drfKMdDr6Owlu0w0lNXRbiQ="},"etelkalight-webfont-f68a2db6346d864f82c3b3e725ee60b0217e91e46ec47f96710f70f996b61af1.ttf":{"logical_path":"etelkalight-webfont.ttf","mtime":"2015-05-15T15:29:32+03:00","size":49748,"digest":"f68a2db6346d864f82c3b3e725ee60b0217e91e46ec47f96710f70f996b61af1","integrity":"sha256-9oottjRthk+Cw7PnJe5gsCF+keRuxH+WcQ9w+Za2GvE="},"etelkalight-webfont-1ed38dbac6b817bf74bd46a98d61005aa2615db7ac743e4037364d1021084043.woff":{"logical_path":"etelkalight-webfont.woff","mtime":"2015-05-15T15:29:32+03:00","size":26204,"digest":"1ed38dbac6b817bf74bd46a98d61005aa2615db7ac743e4037364d1021084043","integrity":"sha256-HtONusa4F790vUapjWEAWqJhXbesdD5ANzZNECEIQEM="},"etelkalightbold-webfont-1d94cabe6fb55b05f746fe0aa51a7a503683d7afdb68360ed26bfac03e1b3c39.eot":{"logical_path":"etelkalightbold-webfont.eot","mtime":"2015-05-15T15:29:32+03:00","size":23707,"digest":"1d94cabe6fb55b05f746fe0aa51a7a503683d7afdb68360ed26bfac03e1b3c39","integrity":"sha256-HZTKvm+1WwX3Rv4KpRp6UDaD16/baDYO0mv6wD4bPDk="},"etelkalightbold-webfont-bb0c8e17b99b10f211be3531a51d6ad48a5c6e4670c8fb6160a329fa4758c555.svg":{"logical_path":"etelkalightbold-webfont.svg","mtime":"2015-05-15T15:29:32+03:00","size":62829,"digest":"bb0c8e17b99b10f211be3531a51d6ad48a5c6e4670c8fb6160a329fa4758c555","integrity":"sha256-uwyOF7mbEPIRvjUxpR1q1IpcbkZwyPthYKMp+kdYxVU="},"etelkalightbold-webfont-0f06d1e7f099578e1cc0e9b1875aca2a7128c0ca0d640fd504e97bae0b028429.ttf":{"logical_path":"etelkalightbold-webfont.ttf","mtime":"2015-05-15T15:29:32+03:00","size":51172,"digest":"0f06d1e7f099578e1cc0e9b1875aca2a7128c0ca0d640fd504e97bae0b028429","integrity":"sha256-DwbR5/CZV44cwOmxh1rKKnEowMoNZA/VBOl7rgsChCk="},"etelkalightbold-webfont-d608c036b3e3f04ca87a1c494f8d9e9620a729b2760b5eb1dcee52c4bc8e8805.woff":{"logical_path":"etelkalightbold-webfont.woff","mtime":"2015-05-15T15:29:32+03:00","size":26956,"digest":"d608c036b3e3f04ca87a1c494f8d9e9620a729b2760b5eb1dcee52c4bc8e8805","integrity":"sha256-1gjANrPj8EyoehxJT42eliCnKbJ2C16x3O5SxLyOiAU="},"etelkalightitalic-webfont-ce5cdffe6c589a6dc6bd2c482c718486ff5fb416ab01740750db325179e58654.eot":{"logical_path":"etelkalightitalic-webfont.eot","mtime":"2015-05-15T15:29:32+03:00","size":26426,"digest":"ce5cdffe6c589a6dc6bd2c482c718486ff5fb416ab01740750db325179e58654","integrity":"sha256-zlzf/mxYmm3GvSxILHGEhv9ftBarAXQHUNsyUXnlhlQ="},"etelkalightitalic-webfont-dd5353c2af4ea63e1d0e99ec5f1f85162cee0c4dd0a3840260a2606eefc3e517.svg":{"logical_path":"etelkalightitalic-webfont.svg","mtime":"2015-05-15T15:29:32+03:00","size":69857,"digest":"dd5353c2af4ea63e1d0e99ec5f1f85162cee0c4dd0a3840260a2606eefc3e517","integrity":"sha256-3VNTwq9Opj4dDpnsXx+FFizuDE3Qo4QCYKJgbu/D5Rc="},"etelkalightitalic-webfont-54eb91ad0e0b639f50be02b7c25836c99ad989185f5d2a240d60ea14a1b7384a.ttf":{"logical_path":"etelkalightitalic-webfont.ttf","mtime":"2015-05-15T15:29:32+03:00","size":57040,"digest":"54eb91ad0e0b639f50be02b7c25836c99ad989185f5d2a240d60ea14a1b7384a","integrity":"sha256-VOuRrQ4LY59QvgK3wlg2yZrZiRhfXSokDWDqFKG3OEo="},"etelkalightitalic-webfont-d1fb9621d40ef45104078a4a5b98ce4cba00872cf8ac56e299cf1397c146cac3.woff":{"logical_path":"etelkalightitalic-webfont.woff","mtime":"2015-05-15T15:29:32+03:00","size":29884,"digest":"d1fb9621d40ef45104078a4a5b98ce4cba00872cf8ac56e299cf1397c146cac3","integrity":"sha256-0fuWIdQO9FEEB4pKW5jOTLoAhyz4rFbimc8Tl8FGysM="},"infotexb-webfont-1951e43e1d9ab99b0d4998abba4aab34f3e68b337be90800db517e4a8d27d001.eot":{"logical_path":"infotexb-webfont.eot","mtime":"2015-05-15T15:29:32+03:00","size":23124,"digest":"1951e43e1d9ab99b0d4998abba4aab34f3e68b337be90800db517e4a8d27d001","integrity":"sha256-GVHkPh2auZsNSZirukqrNPPmizN76QgA21F+So0n0AE="},"infotexb-webfont-0dda72e34d0d0ced7693b55ed08acc60fb1a9036afd7736e432ac3f22f2e6fdf.svg":{"logical_path":"infotexb-webfont.svg","mtime":"2015-05-15T15:29:32+03:00","size":90188,"digest":"0dda72e34d0d0ced7693b55ed08acc60fb1a9036afd7736e432ac3f22f2e6fdf","integrity":"sha256-Ddpy400NDO12k7Ve0IrMYPsakDav13NuQyrD8i8ub98="},"infotexb-webfont-c0737d1e2edff50645e201bf99f68f2313502ee2bdeb2e56435ee24721baf5cd.ttf":{"logical_path":"infotexb-webfont.ttf","mtime":"2015-05-15T15:29:32+03:00","size":47396,"digest":"c0737d1e2edff50645e201bf99f68f2313502ee2bdeb2e56435ee24721baf5cd","integrity":"sha256-wHN9Hi7f9QZF4gG/mfaPIxNQLuK96y5WQ17iRyG69c0="},"infotexb-webfont-8da32e6db23c39390c55dd5ea8949714757fddba516c5db65e72867504493fbc.woff":{"logical_path":"infotexb-webfont.woff","mtime":"2015-05-15T15:29:32+03:00","size":26228,"digest":"8da32e6db23c39390c55dd5ea8949714757fddba516c5db65e72867504493fbc","integrity":"sha256-jaMubbI8OTkMVd1eqJSXFHV/3bpRbF22XnKGdQRJP7w="},"infotexm-webfont-74df99faeb66d8b02966b8884b860af03c359ed41d348ddb813dbcc3c460eb26.eot":{"logical_path":"infotexm-webfont.eot","mtime":"2015-05-15T15:29:32+03:00","size":23273,"digest":"74df99faeb66d8b02966b8884b860af03c359ed41d348ddb813dbcc3c460eb26","integrity":"sha256-dN+Z+utm2LApZriIS4YK8Dw1ntQdNI3bgT28w8Rg6yY="},"infotexm-webfont-0b52ef10620b8cb7289dc809aac67826d5031e6ab040194fdb7365dc83e95557.svg":{"logical_path":"infotexm-webfont.svg","mtime":"2015-05-15T15:29:32+03:00","size":90423,"digest":"0b52ef10620b8cb7289dc809aac67826d5031e6ab040194fdb7365dc83e95557","integrity":"sha256-C1LvEGILjLconcgJqsZ4JtUDHmqwQBlP23Nl3IPpVVc="},"infotexm-webfont-1d244d27a4ec4c1a5f98c82966faa26e7855c4292c730429477003b6dab5c08b.ttf":{"logical_path":"infotexm-webfont.ttf","mtime":"2015-05-15T15:29:32+03:00","size":47484,"digest":"1d244d27a4ec4c1a5f98c82966faa26e7855c4292c730429477003b6dab5c08b","integrity":"sha256-HSRNJ6TsTBpfmMgpZvqibnhVxCkscwQpR3ADttq1wIs="},"infotexm-webfont-872b5ab4e0b7de6655a52f137a3c99f1e7941fa91ff21a56550f2039834ee9d0.woff":{"logical_path":"infotexm-webfont.woff","mtime":"2015-05-15T15:29:32+03:00","size":26492,"digest":"872b5ab4e0b7de6655a52f137a3c99f1e7941fa91ff21a56550f2039834ee9d0","integrity":"sha256-hytatOC33mZVpS8TejyZ8eeUH6kf8hpWVQ8gOYNO6dA="},"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-9a8492a580bf85d3e98ae8861fbd45567e5a1f83eeafcf9574da0399d5f602ab.png":{"logical_path":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png","mtime":"2015-06-08T14:38:06+03:00","size":180,"digest":"9a8492a580bf85d3e98ae8861fbd45567e5a1f83eeafcf9574da0399d5f602ab","integrity":"sha256-moSSpYC/hdPpiuiGH71FVn5aH4Pur8+VdNoDmdX2Aqs="},"jquery-ui/ui-bg_flat_75_ffffff_40x100-39ab7ccd9f4e82579da78a9241265df288d8eb65dbbd7cf48aed2d0129887df5.png":{"logical_path":"jquery-ui/ui-bg_flat_75_ffffff_40x100.png","mtime":"2015-06-08T14:38:06+03:00","size":178,"digest":"39ab7ccd9f4e82579da78a9241265df288d8eb65dbbd7cf48aed2d0129887df5","integrity":"sha256-Oat8zZ9Ogledp4qSQSZd8ojY62XbvXz0iu0tASmIffU="},"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-691597e8a40a891ea94d3589976ecfc33e6145c49422443b00ac2b5a0022964c.png":{"logical_path":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png","mtime":"2015-06-08T14:38:06+03:00","size":120,"digest":"691597e8a40a891ea94d3589976ecfc33e6145c49422443b00ac2b5a0022964c","integrity":"sha256-aRWX6KQKiR6pTTWJl27Pwz5hRcSUIkQ7AKwrWgAilkw="},"jquery-ui/ui-bg_glass_65_ffffff_1x400-f0e6cd91b837d5c5644d026e5ffeccd907953317cd5c0f689901733afda260b2.png":{"logical_path":"jquery-ui/ui-bg_glass_65_ffffff_1x400.png","mtime":"2015-06-08T14:38:06+03:00","size":105,"digest":"f0e6cd91b837d5c5644d026e5ffeccd907953317cd5c0f689901733afda260b2","integrity":"sha256-8ObNkbg31cVkTQJuX/7M2QeVMxfNXA9omQFzOv2iYLI="},"jquery-ui/ui-bg_glass_75_dadada_1x400-c108f5cbf2dd9ec07a26530695ddd95e1664597ce6c056ae44c162cc2e28cec4.png":{"logical_path":"jquery-ui/ui-bg_glass_75_dadada_1x400.png","mtime":"2015-06-08T14:38:06+03:00","size":111,"digest":"c108f5cbf2dd9ec07a26530695ddd95e1664597ce6c056ae44c162cc2e28cec4","integrity":"sha256-wQj1y/LdnsB6JlMGld3ZXhZkWXzmwFauRMFizC4ozsQ="},"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-ddf5dd4e0ef2b185e8bb0af7b6e90ebe74a84384cb4700658e76e754c8bfe550.png":{"logical_path":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png","mtime":"2015-06-08T14:38:06+03:00","size":110,"digest":"ddf5dd4e0ef2b185e8bb0af7b6e90ebe74a84384cb4700658e76e754c8bfe550","integrity":"sha256-3fXdTg7ysYXouwr3tukOvnSoQ4TLRwBljnbnVMi/5VA="},"jquery-ui/ui-bg_glass_95_fef1ec_1x400-f6f1c1bedf1a0f37cfef81d12f5f012869d1ee7c984775a569827a1784d34f5c.png":{"logical_path":"jquery-ui/ui-bg_glass_95_fef1ec_1x400.png","mtime":"2015-06-08T14:38:06+03:00","size":119,"digest":"f6f1c1bedf1a0f37cfef81d12f5f012869d1ee7c984775a569827a1784d34f5c","integrity":"sha256-9vHBvt8aDzfP74HRL18BKGnR7nyYR3WlaYJ6F4TTT1w="},"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-54270656df079c4da5182629a080fc633b6f84b87985eb016d25a560e2c38d4a.png":{"logical_path":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png","mtime":"2015-06-08T14:38:06+03:00","size":101,"digest":"54270656df079c4da5182629a080fc633b6f84b87985eb016d25a560e2c38d4a","integrity":"sha256-VCcGVt8HnE2lGCYpoID8YztvhLh5hesBbSWlYOLDjUo="},"jquery-ui/ui-icons_222222_256x240-57adb0d65f4e91dacfee975d9574422bee7486c8a182d60133728c672f2cdbbc.png":{"logical_path":"jquery-ui/ui-icons_222222_256x240.png","mtime":"2015-06-08T14:38:06+03:00","size":4369,"digest":"57adb0d65f4e91dacfee975d9574422bee7486c8a182d60133728c672f2cdbbc","integrity":"sha256-V62w1l9OkdrP7pddlXRCK+50hsihgtYBM3KMZy8s27w="},"jquery-ui/ui-icons_2e83ff_256x240-20f8c6667afc48aa433ee9eb6d8a0584bdbd6b4a4a9091ff1e6b3adb31e63bd9.png":{"logical_path":"jquery-ui/ui-icons_2e83ff_256x240.png","mtime":"2015-06-08T14:38:06+03:00","size":4369,"digest":"20f8c6667afc48aa433ee9eb6d8a0584bdbd6b4a4a9091ff1e6b3adb31e63bd9","integrity":"sha256-IPjGZnr8SKpDPunrbYoFhL29a0pKkJH/Hms62zHmO9k="},"jquery-ui/ui-icons_454545_256x240-07460e843c3e59aaadbb34231e699e856a2980753c7a47b66447da5d9f93fb7f.png":{"logical_path":"jquery-ui/ui-icons_454545_256x240.png","mtime":"2015-06-08T14:38:06+03:00","size":4369,"digest":"07460e843c3e59aaadbb34231e699e856a2980753c7a47b66447da5d9f93fb7f","integrity":"sha256-B0YOhDw+WaqtuzQjHmmehWopgHU8eke2ZEfaXZ+T+38="},"jquery-ui/ui-icons_888888_256x240-ea2e29625de3463465e93b002b065f5833e05b97f7a052b1c141e754d62e1a8b.png":{"logical_path":"jquery-ui/ui-icons_888888_256x240.png","mtime":"2015-06-08T14:38:06+03:00","size":4369,"digest":"ea2e29625de3463465e93b002b065f5833e05b97f7a052b1c141e754d62e1a8b","integrity":"sha256-6i4pYl3jRjRl6TsAKwZfWDPgW5f3oFKxwUHnVNYuGos="},"jquery-ui/ui-icons_cd0a0a_256x240-1e32c6dbf5d3fd342f27a78aa881550d6412aa207f48468724a6a15402b6041b.png":{"logical_path":"jquery-ui/ui-icons_cd0a0a_256x240.png","mtime":"2015-06-08T14:38:06+03:00","size":4369,"digest":"1e32c6dbf5d3fd342f27a78aa881550d6412aa207f48468724a6a15402b6041b","integrity":"sha256-HjLG2/XT/TQvJ6eKqIFVDWQSqiB/SEaHJKahVAK2BBs="},"bootstrap/glyphicons-halflings-regular-13634da87d9e23f8c3ed9108ce1724d183a39ad072e73e1b3d8cbf646d2d0407.eot":{"logical_path":"bootstrap/glyphicons-halflings-regular.eot","mtime":"2015-06-29T12:04:56+03:00","size":20127,"digest":"13634da87d9e23f8c3ed9108ce1724d183a39ad072e73e1b3d8cbf646d2d0407","integrity":"sha256-E2NNqH2eI/jD7ZEIzhck0YOjmtBy5z4bPYy/ZG0tBAc="},"bootstrap/glyphicons-halflings-regular-42f60659d265c1a3c30f9fa42abcbb56bd4a53af4d83d316d6dd7a36903c43e5.svg":{"logical_path":"bootstrap/glyphicons-halflings-regular.svg","mtime":"2015-06-29T12:04:56+03:00","size":108738,"digest":"42f60659d265c1a3c30f9fa42abcbb56bd4a53af4d83d316d6dd7a36903c43e5","integrity":"sha256-QvYGWdJlwaPDD5+kKry7Vr1KU69Ng9MW1t16NpA8Q+U="},"bootstrap/glyphicons-halflings-regular-e395044093757d82afcb138957d06a1ea9361bdcf0b442d06a18a8051af57456.ttf":{"logical_path":"bootstrap/glyphicons-halflings-regular.ttf","mtime":"2015-06-29T12:04:56+03:00","size":45404,"digest":"e395044093757d82afcb138957d06a1ea9361bdcf0b442d06a18a8051af57456","integrity":"sha256-45UEQJN1fYKvyxOJV9BqHqk2G9zwtELQahioBRr1dFY="},"bootstrap/glyphicons-halflings-regular-a26394f7ede100ca118eff2eda08596275a9839b959c226e15439557a5a80742.woff":{"logical_path":"bootstrap/glyphicons-halflings-regular.woff","mtime":"2015-06-29T12:04:56+03:00","size":23424,"digest":"a26394f7ede100ca118eff2eda08596275a9839b959c226e15439557a5a80742","integrity":"sha256-omOU9+3hAMoRjv8u2ghZYnWpg5uVnCJuFUOVV6WoB0I="},"bootstrap/glyphicons-halflings-regular-fe185d11a49676890d47bb783312a0cda5a44c4039214094e7957b4c040ef11c.woff2":{"logical_path":"bootstrap/glyphicons-halflings-regular.woff2","mtime":"2015-06-29T12:04:56+03:00","size":18028,"digest":"fe185d11a49676890d47bb783312a0cda5a44c4039214094e7957b4c040ef11c","integrity":"sha256-/hhdEaSWdokNR7t4MxKgzaWkTEA5IUCU55V7TAQO8Rw="},"admin-manifest-1b7a9adf38de3299af2f97b0c037bf01c21b7056910e5ee41507a91ab675bd4d.css":{"logical_path":"admin-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":163910,"digest":"1b7a9adf38de3299af2f97b0c037bf01c21b7056910e5ee41507a91ab675bd4d","integrity":"sha256-G3qa3zjeMpmvL5ewwDe/AcIbcFaRDl7kFQepGrZ1vU0="},"admin-manifest-5f612f59c9effcca0be5396c4f00654de236d2bb1b16bbdf929b47e6504381f3.js":{"logical_path":"admin-manifest.js","mtime":"2015-06-08T14:38:06+03:00","size":323893,"digest":"5f612f59c9effcca0be5396c4f00654de236d2bb1b16bbdf929b47e6504381f3","integrity":"sha256-X2EvWcnv/MoL5TlsTwBlTeI20rsbFrvfkptH5lBDgfM="},"registrar-manifest-b4694748846de7a7f12463c4524f71013645b58fc770188432dfc5c5a93ded3a.css":{"logical_path":"registrar-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":187703,"digest":"b4694748846de7a7f12463c4524f71013645b58fc770188432dfc5c5a93ded3a","integrity":"sha256-tGlHSIRt56fxJGPEUk9xATZFtY/HcBiEMt/Fxak97To="},"registrar-manifest-700f689d9abdd73516260d2622b912a8d3e003de966996ba7a331bfa065720e7.js":{"logical_path":"registrar-manifest.js","mtime":"2015-06-19T15:29:08+03:00","size":314928,"digest":"700f689d9abdd73516260d2622b912a8d3e003de966996ba7a331bfa065720e7","integrity":"sha256-cA9onZq91zUWJg0mIrkSqNPgA96WaZa6ejMb+gZXIOc="},"registrant-manifest-ffb2502ddd176bf6bf64424abdf509f1c2fa44883cd159ffc6e0bf5bba81a226.css":{"logical_path":"registrant-manifest.css","mtime":"2015-06-16T16:19:54+03:00","size":187888,"digest":"ffb2502ddd176bf6bf64424abdf509f1c2fa44883cd159ffc6e0bf5bba81a226","integrity":"sha256-/7JQLd0Xa/a/ZEJKvfUJ8cL6RIg80Vn/xuC/W7qBoiY="},"registrant-manifest-700f689d9abdd73516260d2622b912a8d3e003de966996ba7a331bfa065720e7.js":{"logical_path":"registrant-manifest.js","mtime":"2015-06-19T15:29:08+03:00","size":314928,"digest":"700f689d9abdd73516260d2622b912a8d3e003de966996ba7a331bfa065720e7","integrity":"sha256-cA9onZq91zUWJg0mIrkSqNPgA96WaZa6ejMb+gZXIOc="},"shared/pdf-8d8bf4207c64d5de1ad8a683ed3c0d97dbe85a73644e9440b3a7c1d638c93590.css":{"logical_path":"shared/pdf.css","mtime":"2015-05-15T15:29:32+03:00","size":119782,"digest":"8d8bf4207c64d5de1ad8a683ed3c0d97dbe85a73644e9440b3a7c1d638c93590","integrity":"sha256-jYv0IHxk1d4a2KaD7TwNl9voWnNkTpRAs6fB1jjJNZA="},"admin/application-2e4aafc94dbce8d43d7bac4eb5521a14a72e3bbeece3b4363494d70fcd274542.js":{"logical_path":"admin/application.js","mtime":"2015-06-08T11:23:15+03:00","size":287,"digest":"2e4aafc94dbce8d43d7bac4eb5521a14a72e3bbeece3b4363494d70fcd274542","integrity":"sha256-LkqvyU286NQ9e6xOtVIaFKcuO77s47Q2NJTXD80nRUI="},"registrar/application-f96ff2f3f4d2326db627c9191074e5c10ad3679eac8eb2d22e3a9faef39e06a9.js":{"logical_path":"registrar/application.js","mtime":"2015-06-19T15:29:08+03:00","size":826,"digest":"f96ff2f3f4d2326db627c9191074e5c10ad3679eac8eb2d22e3a9faef39e06a9","integrity":"sha256-+W/y8/TSMm22J8kZEHTlwQrTZ56sjrLSLjqfrvOeBqk="},"registrar-manifest-413fda057832b25dee9d45f5f07b29ac369fc85f51ecd9e7bc2cdefa5297b4f3.js":{"logical_path":"registrar-manifest.js","mtime":"2015-06-08T14:38:06+03:00","size":314906,"digest":"413fda057832b25dee9d45f5f07b29ac369fc85f51ecd9e7bc2cdefa5297b4f3","integrity":"sha256-QT/aBXgysl3unUX18HsprDafyF9R7NnnvCze+lKXtPM="},"registrant-manifest-f9e9d795de4f7dabe387365fd329c1cb24da923bd357988c120cc5710230cc48.js":{"logical_path":"registrant-manifest.js","mtime":"2015-06-08T14:38:06+03:00","size":314906,"digest":"f9e9d795de4f7dabe387365fd329c1cb24da923bd357988c120cc5710230cc48","integrity":"sha256-+enXld5PfavjhzZf0ynByyTakjvTV5iMEgzFcQIwzEg="},"registrar/application-978b21a99ae3caabb8a9e301dccaa0b93f86cc789a9595158c98ee51393b8cb9.js":{"logical_path":"registrar/application.js","mtime":"2015-06-19T16:03:53+03:00","size":804,"digest":"978b21a99ae3caabb8a9e301dccaa0b93f86cc789a9595158c98ee51393b8cb9","integrity":"sha256-l4shqZrjyqu4qeMB3MqguT+GzHialZUVjJjuUTk7jLk="},"admin-manifest-6e5e54ad9b1f48eb4372bf4d3ffd1854d859dc5e2ab4977dbf59c4abfeebd760.css":{"logical_path":"admin-manifest.css","mtime":"2015-07-13T18:30:38+03:00","size":169226,"digest":"6e5e54ad9b1f48eb4372bf4d3ffd1854d859dc5e2ab4977dbf59c4abfeebd760","integrity":"sha256-bl5UrZsfSOtDcr9NP/0YVNhZ3F4qtJd9v1nEq/7r12A="},"admin-manifest-b904d5679d9ed357c2412b8d9054c5d60b6c8524e11e4ff80d2e45580108e709.js":{"logical_path":"admin-manifest.js","mtime":"2015-07-13T18:30:38+03:00","size":325028,"digest":"b904d5679d9ed357c2412b8d9054c5d60b6c8524e11e4ff80d2e45580108e709","integrity":"sha256-uQTVZ52e01fCQSuNkFTF1gtshSThHk/4DS5FWAEI5wk="},"registrar-manifest-d9e1a3fb37873e44c313486ea2ad7ff1791e9ce4d6d44e95a602d87d480f27e1.css":{"logical_path":"registrar-manifest.css","mtime":"2015-07-13T18:30:38+03:00","size":193019,"digest":"d9e1a3fb37873e44c313486ea2ad7ff1791e9ce4d6d44e95a602d87d480f27e1","integrity":"sha256-2eGj+zeHPkTDE0huoq1/8XkenOTW1E6VpgLYfUgPJ+E="},"registrar-manifest-0297caa2939148f9284b754e7a0cc2a08272b8ff3194d97be0c95858498cbe39.js":{"logical_path":"registrar-manifest.js","mtime":"2015-07-13T18:30:38+03:00","size":316041,"digest":"0297caa2939148f9284b754e7a0cc2a08272b8ff3194d97be0c95858498cbe39","integrity":"sha256-ApfKopORSPkoS3VOegzCoIJyuP8xlNl74MlYWEmMvjk="},"registrant-manifest-651e30954782cb9b1e582abeb18c47402c951e3fd4aa71311363a058869f4d66.css":{"logical_path":"registrant-manifest.css","mtime":"2015-07-13T18:30:38+03:00","size":193204,"digest":"651e30954782cb9b1e582abeb18c47402c951e3fd4aa71311363a058869f4d66","integrity":"sha256-ZR4wlUeCy5seWCq+sYxHQCyVHj/UqnExE2OgWIafTWY="},"registrant-manifest-a94cc4d69bafc048f1cb08fffd1c733fc37157e660e4897005207cf03f1d98ca.js":{"logical_path":"registrant-manifest.js","mtime":"2015-07-13T18:30:38+03:00","size":316041,"digest":"a94cc4d69bafc048f1cb08fffd1c733fc37157e660e4897005207cf03f1d98ca","integrity":"sha256-qUzE1puvwEjxywj//RxzP8NxV+Zg5IlwBSB88D8dmMo="},"shared/pdf-3f6858cfb5eec601002c5a418b287ccdddf38bb953111ffdff1321d3b1fbbddc.css":{"logical_path":"shared/pdf.css","mtime":"2015-06-29T12:04:56+03:00","size":125098,"digest":"3f6858cfb5eec601002c5a418b287ccdddf38bb953111ffdff1321d3b1fbbddc","integrity":"sha256-P2hYz7XuxgEALFpBiyh8zd3zi7lTER/9/xMh07H7vdw="},"admin-manifest-7058b706893af7473775946fa6171e3c3d7d81f5fe323c402acc8b207eac4f1b.css":{"logical_path":"admin-manifest.css","mtime":"2015-07-22T12:51:15+03:00","size":169258,"digest":"7058b706893af7473775946fa6171e3c3d7d81f5fe323c402acc8b207eac4f1b","integrity":"sha256-cFi3Bok690c3dZRvphcePD19gfX+MjxAKsyLIH6sTxs="},"registrar-manifest-12ddf3d27aeb82ed229b8a7ec6b50fdfa33c115326bb540d3c64d630122382bb.css":{"logical_path":"registrar-manifest.css","mtime":"2015-07-22T12:51:15+03:00","size":193051,"digest":"12ddf3d27aeb82ed229b8a7ec6b50fdfa33c115326bb540d3c64d630122382bb","integrity":"sha256-Et3z0nrrgu0im4p+xrUP36M8EVMmu1QNPGTWMBIjgrs="},"registrant-manifest-9711ccec91402d435ddfb0b0fbf708a1ffef67868a86c38014f975183d61e324.css":{"logical_path":"registrant-manifest.css","mtime":"2015-07-22T12:51:15+03:00","size":193236,"digest":"9711ccec91402d435ddfb0b0fbf708a1ffef67868a86c38014f975183d61e324","integrity":"sha256-lxHM7JFALUNd37Cw+/cIof/vZ4aKhsOAFPl1GD1h4yQ="},"admin-manifest-8e7ee8a12ecba21371b22a0f225d918c48c4edb92c4e793c76bcbc85f1d11b2d.js":{"logical_path":"admin-manifest.js","mtime":"2015-07-29T11:55:32+03:00","size":325018,"digest":"8e7ee8a12ecba21371b22a0f225d918c48c4edb92c4e793c76bcbc85f1d11b2d","integrity":"sha256-jn7ooS7LohNxsioPIl2RjEjE7bksTnk8dry8hfHRGy0="},"registrar-manifest-ccfec673488bbf1709b257f959ddaba3153692cd4ed34f7c10617e7cb8079c7f.js":{"logical_path":"registrar-manifest.js","mtime":"2015-07-29T11:55:32+03:00","size":316031,"digest":"ccfec673488bbf1709b257f959ddaba3153692cd4ed34f7c10617e7cb8079c7f","integrity":"sha256-zP7Gc0iLvxcJslf5Wd2roxU2ks1O0098EGF+fLgHnH8="},"registrant-manifest-029b3513f5314789848386b24148311e44df8160a0a4b5b587a6e6a446eddd45.js":{"logical_path":"registrant-manifest.js","mtime":"2015-07-29T11:55:32+03:00","size":316031,"digest":"029b3513f5314789848386b24148311e44df8160a0a4b5b587a6e6a446eddd45","integrity":"sha256-Aps1E/UxR4mEg4ayQUgxHkTfgWCgpLW1h6bmpEbt3UU="},"admin-manifest-faacc44f2693434d482abfa34e565890367f8a34a73a4334fb690dfd36606599.css":{"logical_path":"admin-manifest.css","mtime":"2015-07-30T17:08:04+03:00","size":195931,"digest":"faacc44f2693434d482abfa34e565890367f8a34a73a4334fb690dfd36606599","integrity":"sha256-+qzETyaTQ01IKr+jTlZYkDZ/ijSnOkM0+2kN/TZgZZk="},"admin-manifest-2d50db228bce0154b10046fa6de58775cf879387a8a2e63e278e51ef7802ddba.js":{"logical_path":"admin-manifest.js","mtime":"2015-07-30T17:08:04+03:00","size":391499,"digest":"2d50db228bce0154b10046fa6de58775cf879387a8a2e63e278e51ef7802ddba","integrity":"sha256-LVDbIovOAVSxAEb6beWHdc+Hk4eoouY+J45R73gC3bo="}},"assets":{"admin-manifest.css":"admin-manifest-faacc44f2693434d482abfa34e565890367f8a34a73a4334fb690dfd36606599.css","admin-manifest.js":"admin-manifest-2d50db228bce0154b10046fa6de58775cf879387a8a2e63e278e51ef7802ddba.js","registrar-manifest.css":"registrar-manifest-12ddf3d27aeb82ed229b8a7ec6b50fdfa33c115326bb540d3c64d630122382bb.css","registrar-manifest.js":"registrar-manifest-ccfec673488bbf1709b257f959ddaba3153692cd4ed34f7c10617e7cb8079c7f.js","registrant-manifest.css":"registrant-manifest-9711ccec91402d435ddfb0b0fbf708a1ffef67868a86c38014f975183d61e324.css","registrant-manifest.js":"registrant-manifest-029b3513f5314789848386b24148311e44df8160a0a4b5b587a6e6a446eddd45.js","shared/pdf.css":"shared/pdf-3f6858cfb5eec601002c5a418b287ccdddf38bb953111ffdff1321d3b1fbbddc.css","select2.png":"select2-d6b5d8d83dbc18fb8d77c8761d331cd9e5123c9684950bab0406e98a24ac5ae8.png","select2-spinner.gif":"select2-spinner-f6ecff617ec2ba7f559e6f535cad9b70a3f91120737535dab4d4548a6c83576c.gif","select2x2.png":"select2x2-6fe28d687dc0ed4d96016238c608ba1e7198c9c9accfa0b360b78018b9fb9bc2.png","alpha.png":"alpha-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png","bg.jpg":"bg-b8036abd2f0f36e3ab54d5d5b25b0fbac11d63ec6106d959df3fa180b379de05.jpg","danske.png":"danske-07a4395cc406785da129414e15872fe1d6a4f6f6da0066da6701b56cdb72ea96.png","development.png":"development-0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5.png","eis-logo-et.png":"eis-logo-et-86a549d266cda73e3225c5eeba14532c59d498e1fd980ec129fded68da8bb307.png","favicon.ico":"favicon-309e00e2f78f9a2b042abc2806a8a4ed9cf6bb5d3f00ccc0985b1308bfd86c49.ico","id_card.gif":"id_card-ea506a49b25c8de4e68e786d90f5ec5defb6c8e895b90f2f129815f5e550fe8e.gif","lhv.png":"lhv-4d09d3126a05df392b73c54fa9b1eb605798c2e9bd361cf44500f73038832030.png","mid.gif":"mid-275543ecea377debe1ac892470f3aea4f7e7f0f9089fc0fbea4de410742e5239.gif","nordea.png":"nordea-75c938c7436e0c8316f056be8df8acd0e8b16e09790e78f78da96d9f8633ef3b.png","registrar/bg-alpha.png":"registrar/bg-alpha-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png","registrar/bg-development.png":"registrar/bg-development-0b993e22410c7952394ac19ce3b41b722a97b93138a9a002091e1e5226d29bf5.png","registrar/bg-staging.png":"registrar/bg-staging-6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d.png","registrar/favicon.ico":"registrar/favicon-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855.ico","seb.png":"seb-9c9d943014cc4ee706244893cd8a2c4a8a7cc97bfbdef6a66e22c72f33d5f25e.png","staging.png":"staging-6276f8c00911bc99f301f919e408ae3ef726c7378324ac55fd5d378ba3a4dc2d.png","swed.png":"swed-2cf45729062cf5fa634247ba372c579c97f382e5cc43fa111219077e7473fdbb.png","test.png":"test-9ac45a6b3c13dd5c5cf1b5d18c6f24a537dd2e4598238527d232a3e2ea5b5947.png","admin/application.js":"admin/application-2e4aafc94dbce8d43d7bac4eb5521a14a72e3bbeece3b4363494d70fcd274542.js","registrar/application.js":"registrar/application-978b21a99ae3caabb8a9e301dccaa0b93f86cc789a9595158c98ee51393b8cb9.js","etelkalight-webfont.eot":"etelkalight-webfont-baf7e35ab2f64bf1c6fa4476d3934c7422062995738fd9e5715b02f55002d7c0.eot","etelkalight-webfont.svg":"etelkalight-webfont-2b575f6e4696d74957af27a7c7bb7976b7ca31d0ebe8ec25bb4c3494d5d16e24.svg","etelkalight-webfont.ttf":"etelkalight-webfont-f68a2db6346d864f82c3b3e725ee60b0217e91e46ec47f96710f70f996b61af1.ttf","etelkalight-webfont.woff":"etelkalight-webfont-1ed38dbac6b817bf74bd46a98d61005aa2615db7ac743e4037364d1021084043.woff","etelkalightbold-webfont.eot":"etelkalightbold-webfont-1d94cabe6fb55b05f746fe0aa51a7a503683d7afdb68360ed26bfac03e1b3c39.eot","etelkalightbold-webfont.svg":"etelkalightbold-webfont-bb0c8e17b99b10f211be3531a51d6ad48a5c6e4670c8fb6160a329fa4758c555.svg","etelkalightbold-webfont.ttf":"etelkalightbold-webfont-0f06d1e7f099578e1cc0e9b1875aca2a7128c0ca0d640fd504e97bae0b028429.ttf","etelkalightbold-webfont.woff":"etelkalightbold-webfont-d608c036b3e3f04ca87a1c494f8d9e9620a729b2760b5eb1dcee52c4bc8e8805.woff","etelkalightitalic-webfont.eot":"etelkalightitalic-webfont-ce5cdffe6c589a6dc6bd2c482c718486ff5fb416ab01740750db325179e58654.eot","etelkalightitalic-webfont.svg":"etelkalightitalic-webfont-dd5353c2af4ea63e1d0e99ec5f1f85162cee0c4dd0a3840260a2606eefc3e517.svg","etelkalightitalic-webfont.ttf":"etelkalightitalic-webfont-54eb91ad0e0b639f50be02b7c25836c99ad989185f5d2a240d60ea14a1b7384a.ttf","etelkalightitalic-webfont.woff":"etelkalightitalic-webfont-d1fb9621d40ef45104078a4a5b98ce4cba00872cf8ac56e299cf1397c146cac3.woff","infotexb-webfont.eot":"infotexb-webfont-1951e43e1d9ab99b0d4998abba4aab34f3e68b337be90800db517e4a8d27d001.eot","infotexb-webfont.svg":"infotexb-webfont-0dda72e34d0d0ced7693b55ed08acc60fb1a9036afd7736e432ac3f22f2e6fdf.svg","infotexb-webfont.ttf":"infotexb-webfont-c0737d1e2edff50645e201bf99f68f2313502ee2bdeb2e56435ee24721baf5cd.ttf","infotexb-webfont.woff":"infotexb-webfont-8da32e6db23c39390c55dd5ea8949714757fddba516c5db65e72867504493fbc.woff","infotexm-webfont.eot":"infotexm-webfont-74df99faeb66d8b02966b8884b860af03c359ed41d348ddb813dbcc3c460eb26.eot","infotexm-webfont.svg":"infotexm-webfont-0b52ef10620b8cb7289dc809aac67826d5031e6ab040194fdb7365dc83e95557.svg","infotexm-webfont.ttf":"infotexm-webfont-1d244d27a4ec4c1a5f98c82966faa26e7855c4292c730429477003b6dab5c08b.ttf","infotexm-webfont.woff":"infotexm-webfont-872b5ab4e0b7de6655a52f137a3c99f1e7941fa91ff21a56550f2039834ee9d0.woff","jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png":"jquery-ui/ui-bg_flat_0_aaaaaa_40x100-9a8492a580bf85d3e98ae8861fbd45567e5a1f83eeafcf9574da0399d5f602ab.png","jquery-ui/ui-bg_flat_75_ffffff_40x100.png":"jquery-ui/ui-bg_flat_75_ffffff_40x100-39ab7ccd9f4e82579da78a9241265df288d8eb65dbbd7cf48aed2d0129887df5.png","jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png":"jquery-ui/ui-bg_glass_55_fbf9ee_1x400-691597e8a40a891ea94d3589976ecfc33e6145c49422443b00ac2b5a0022964c.png","jquery-ui/ui-bg_glass_65_ffffff_1x400.png":"jquery-ui/ui-bg_glass_65_ffffff_1x400-f0e6cd91b837d5c5644d026e5ffeccd907953317cd5c0f689901733afda260b2.png","jquery-ui/ui-bg_glass_75_dadada_1x400.png":"jquery-ui/ui-bg_glass_75_dadada_1x400-c108f5cbf2dd9ec07a26530695ddd95e1664597ce6c056ae44c162cc2e28cec4.png","jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png":"jquery-ui/ui-bg_glass_75_e6e6e6_1x400-ddf5dd4e0ef2b185e8bb0af7b6e90ebe74a84384cb4700658e76e754c8bfe550.png","jquery-ui/ui-bg_glass_95_fef1ec_1x400.png":"jquery-ui/ui-bg_glass_95_fef1ec_1x400-f6f1c1bedf1a0f37cfef81d12f5f012869d1ee7c984775a569827a1784d34f5c.png","jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png":"jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100-54270656df079c4da5182629a080fc633b6f84b87985eb016d25a560e2c38d4a.png","jquery-ui/ui-icons_222222_256x240.png":"jquery-ui/ui-icons_222222_256x240-57adb0d65f4e91dacfee975d9574422bee7486c8a182d60133728c672f2cdbbc.png","jquery-ui/ui-icons_2e83ff_256x240.png":"jquery-ui/ui-icons_2e83ff_256x240-20f8c6667afc48aa433ee9eb6d8a0584bdbd6b4a4a9091ff1e6b3adb31e63bd9.png","jquery-ui/ui-icons_454545_256x240.png":"jquery-ui/ui-icons_454545_256x240-07460e843c3e59aaadbb34231e699e856a2980753c7a47b66447da5d9f93fb7f.png","jquery-ui/ui-icons_888888_256x240.png":"jquery-ui/ui-icons_888888_256x240-ea2e29625de3463465e93b002b065f5833e05b97f7a052b1c141e754d62e1a8b.png","jquery-ui/ui-icons_cd0a0a_256x240.png":"jquery-ui/ui-icons_cd0a0a_256x240-1e32c6dbf5d3fd342f27a78aa881550d6412aa207f48468724a6a15402b6041b.png","bootstrap/glyphicons-halflings-regular.eot":"bootstrap/glyphicons-halflings-regular-13634da87d9e23f8c3ed9108ce1724d183a39ad072e73e1b3d8cbf646d2d0407.eot","bootstrap/glyphicons-halflings-regular.svg":"bootstrap/glyphicons-halflings-regular-42f60659d265c1a3c30f9fa42abcbb56bd4a53af4d83d316d6dd7a36903c43e5.svg","bootstrap/glyphicons-halflings-regular.ttf":"bootstrap/glyphicons-halflings-regular-e395044093757d82afcb138957d06a1ea9361bdcf0b442d06a18a8051af57456.ttf","bootstrap/glyphicons-halflings-regular.woff":"bootstrap/glyphicons-halflings-regular-a26394f7ede100ca118eff2eda08596275a9839b959c226e15439557a5a80742.woff","bootstrap/glyphicons-halflings-regular.woff2":"bootstrap/glyphicons-halflings-regular-fe185d11a49676890d47bb783312a0cda5a44c4039214094e7957b4c040ef11c.woff2"}} \ No newline at end of file diff --git a/public/assets/admin-manifest-2d50db228bce0154b10046fa6de58775cf879387a8a2e63e278e51ef7802ddba.js b/public/assets/admin-manifest-2d50db228bce0154b10046fa6de58775cf879387a8a2e63e278e51ef7802ddba.js new file mode 100644 index 000000000..4aef412d5 --- /dev/null +++ b/public/assets/admin-manifest-2d50db228bce0154b10046fa6de58775cf879387a8a2e63e278e51ef7802ddba.js @@ -0,0 +1,223 @@ +/*! + * jQuery JavaScript Library v1.11.2 + * http://jquery.com/ + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * + * Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors + * Released under the MIT license + * http://jquery.org/license + * + * Date: 2014-12-17T15:27Z + */ +!function(t,e){"object"==typeof module&&"object"==typeof module.exports?module.exports=t.document?e(t,!0):function(t){if(!t.document)throw new Error("jQuery requires a window with a document");return e(t)}:e(t)}("undefined"!=typeof window?window:this,function(t,e){function n(t){var e=t.length,n=re.type(t);return"function"===n||re.isWindow(t)?!1:1===t.nodeType&&e?!0:"array"===n||0===e||"number"==typeof e&&e>0&&e-1 in t}function i(t,e,n){if(re.isFunction(e))return re.grep(t,function(t,i){return!!e.call(t,i,t)!==n});if(e.nodeType)return re.grep(t,function(t){return t===e!==n});if("string"==typeof e){if(he.test(e))return re.filter(e,t,n);e=re.filter(e,t)}return re.grep(t,function(t){return re.inArray(t,e)>=0!==n})}function r(t,e){do t=t[e];while(t&&1!==t.nodeType);return t}function s(t){var e=we[t]={};return re.each(t.match(be)||[],function(t,n){e[n]=!0}),e}function o(){fe.addEventListener?(fe.removeEventListener("DOMContentLoaded",a,!1),t.removeEventListener("load",a,!1)):(fe.detachEvent("onreadystatechange",a),t.detachEvent("onload",a))}function a(){(fe.addEventListener||"load"===event.type||"complete"===fe.readyState)&&(o(),re.ready())}function l(t,e,n){if(void 0===n&&1===t.nodeType){var i="data-"+e.replace(_e,"-$1").toLowerCase();if(n=t.getAttribute(i),"string"==typeof n){try{n="true"===n?!0:"false"===n?!1:"null"===n?null:+n+""===n?+n:Se.test(n)?re.parseJSON(n):n}catch(r){}re.data(t,e,n)}else n=void 0}return n}function c(t){var e;for(e in t)if(("data"!==e||!re.isEmptyObject(t[e]))&&"toJSON"!==e)return!1;return!0}function u(t,e,n,i){if(re.acceptData(t)){var r,s,o=re.expando,a=t.nodeType,l=a?re.cache:t,c=a?t[o]:t[o]&&o;if(c&&l[c]&&(i||l[c].data)||void 0!==n||"string"!=typeof e)return c||(c=a?t[o]=Y.pop()||re.guid++:o),l[c]||(l[c]=a?{}:{toJSON:re.noop}),("object"==typeof e||"function"==typeof e)&&(i?l[c]=re.extend(l[c],e):l[c].data=re.extend(l[c].data,e)),s=l[c],i||(s.data||(s.data={}),s=s.data),void 0!==n&&(s[re.camelCase(e)]=n),"string"==typeof e?(r=s[e],null==r&&(r=s[re.camelCase(e)])):r=s,r}}function d(t,e,n){if(re.acceptData(t)){var i,r,s=t.nodeType,o=s?re.cache:t,a=s?t[re.expando]:re.expando;if(o[a]){if(e&&(i=n?o[a]:o[a].data)){re.isArray(e)?e=e.concat(re.map(e,re.camelCase)):e in i?e=[e]:(e=re.camelCase(e),e=e in i?[e]:e.split(" ")),r=e.length;for(;r--;)delete i[e[r]];if(n?!c(i):!re.isEmptyObject(i))return}(n||(delete o[a].data,c(o[a])))&&(s?re.cleanData([t],!0):ne.deleteExpando||o!=o.window?delete o[a]:o[a]=null)}}}function h(){return!0}function p(){return!1}function f(){try{return fe.activeElement}catch(t){}}function g(t){var e=Re.split("|"),n=t.createDocumentFragment();if(n.createElement)for(;e.length;)n.createElement(e.pop());return n}function m(t,e){var n,i,r=0,s=typeof t.getElementsByTagName!==ke?t.getElementsByTagName(e||"*"):typeof t.querySelectorAll!==ke?t.querySelectorAll(e||"*"):void 0;if(!s)for(s=[],n=t.childNodes||t;null!=(i=n[r]);r++)!e||re.nodeName(i,e)?s.push(i):re.merge(s,m(i,e));return void 0===e||e&&re.nodeName(t,e)?re.merge([t],s):s}function v(t){Fe.test(t.type)&&(t.defaultChecked=t.checked)}function y(t,e){return re.nodeName(t,"table")&&re.nodeName(11!==e.nodeType?e:e.firstChild,"tr")?t.getElementsByTagName("tbody")[0]||t.appendChild(t.ownerDocument.createElement("tbody")):t}function b(t){return t.type=(null!==re.find.attr(t,"type"))+"/"+t.type,t}function w(t){var e=Ve.exec(t.type);return e?t.type=e[1]:t.removeAttribute("type"),t}function x(t,e){for(var n,i=0;null!=(n=t[i]);i++)re._data(n,"globalEval",!e||re._data(e[i],"globalEval"))}function C(t,e){if(1===e.nodeType&&re.hasData(t)){var n,i,r,s=re._data(t),o=re._data(e,s),a=s.events;if(a){delete o.handle,o.events={};for(n in a)for(i=0,r=a[n].length;r>i;i++)re.event.add(e,n,a[n][i])}o.data&&(o.data=re.extend({},o.data))}}function k(t,e){var n,i,r;if(1===e.nodeType){if(n=e.nodeName.toLowerCase(),!ne.noCloneEvent&&e[re.expando]){r=re._data(e);for(i in r.events)re.removeEvent(e,i,r.handle);e.removeAttribute(re.expando)}"script"===n&&e.text!==t.text?(b(e).text=t.text,w(e)):"object"===n?(e.parentNode&&(e.outerHTML=t.outerHTML),ne.html5Clone&&t.innerHTML&&!re.trim(e.innerHTML)&&(e.innerHTML=t.innerHTML)):"input"===n&&Fe.test(t.type)?(e.defaultChecked=e.checked=t.checked,e.value!==t.value&&(e.value=t.value)):"option"===n?e.defaultSelected=e.selected=t.defaultSelected:("input"===n||"textarea"===n)&&(e.defaultValue=t.defaultValue)}}function S(e,n){var i,r=re(n.createElement(e)).appendTo(n.body),s=t.getDefaultComputedStyle&&(i=t.getDefaultComputedStyle(r[0]))?i.display:re.css(r[0],"display");return r.detach(),s}function _(t){var e=fe,n=Je[t];return n||(n=S(t,e),"none"!==n&&n||(Xe=(Xe||re("