Module: Loopiator::Domains
- Included in:
- Client
- Defined in:
- lib/loopiator/domains.rb
Instance Method Summary collapse
- #domain_is_free(domain_name) ⇒ Object
- #get_domain(domain_name, customer_number: "") ⇒ Object
- #get_domains(customer_number: "") ⇒ Object
- #order_domain(domain_name, accept_terms: true, customer_number: "", raise_exception_on_occupied: false) ⇒ Object
- #purchase_domain(domain_name, customer_number: "", raise_exception_on_occupied: false) ⇒ Object
- #remove_domain(domain, deactivate: true, customer_number: "") ⇒ Object
- #remove_subdomain(domain, subdomain, customer_number: "") ⇒ Object
- #update_nameservers(domain, nameservers = ["ns1.loopia.se", "ns2.loopia.se"], customer_number: "") ⇒ Object
Instance Method Details
#domain_is_free(domain_name) ⇒ Object
4 5 6 7 8 |
# File 'lib/loopiator/domains.rb', line 4 def domain_is_free(domain_name) response = parse_status_response(call("domainIsFree", encode_domain(domain_name))) return response.eql?(:ok) end |
#get_domain(domain_name, customer_number: "") ⇒ Object
10 11 12 13 14 15 16 17 18 19 |
# File 'lib/loopiator/domains.rb', line 10 def get_domain(domain_name, customer_number: "") domain = nil response = call("getDomain", customer_number, encode_domain(domain_name)) if response && response.is_a?(Hash) domain = Loopiator::Models::Domain.new(response) end return domain end |
#get_domains(customer_number: "") ⇒ Object
21 22 23 24 25 26 27 28 29 30 |
# File 'lib/loopiator/domains.rb', line 21 def get_domains(customer_number: "") domains = [] response = call("getDomains", customer_number) response.each do |item| domains << Loopiator::Models::Domain.new(item) end if response && response.is_a?(Array) return domains end |
#order_domain(domain_name, accept_terms: true, customer_number: "", raise_exception_on_occupied: false) ⇒ Object
32 33 34 35 36 37 38 |
# File 'lib/loopiator/domains.rb', line 32 def order_domain(domain_name, accept_terms: true, customer_number: "", raise_exception_on_occupied: false) response = parse_status_response(call("orderDomain", customer_number, encode_domain(domain_name), accept_terms)) raise Loopiator::DomainOccupiedError if (response.eql?(:domain_occupied) && raise_exception_on_occupied) return response.eql?(:ok) end |
#purchase_domain(domain_name, customer_number: "", raise_exception_on_occupied: false) ⇒ Object
40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/loopiator/domains.rb', line 40 def purchase_domain(domain_name, customer_number: "", raise_exception_on_occupied: false) success = false order_domain(domain_name, accept_terms: true, customer_number: customer_number, raise_exception_on_occupied: raise_exception_on_occupied) domain = get_domain(domain_name, customer_number: customer_number) if (domain && domain.needs_to_be_paid? && !domain.reference_number.nil? && !domain.reference_number.empty?) success = pay_invoice_using_credits(domain.reference_number, customer_number: customer_number) end return success end |
#remove_domain(domain, deactivate: true, customer_number: "") ⇒ Object
54 55 56 57 58 |
# File 'lib/loopiator/domains.rb', line 54 def remove_domain(domain, deactivate: true, customer_number: "") response = parse_status_response(call("removeDomain", customer_number, encode_domain(domain), deactivate)) return response.eql?(:ok) end |
#remove_subdomain(domain, subdomain, customer_number: "") ⇒ Object
60 61 62 63 64 |
# File 'lib/loopiator/domains.rb', line 60 def remove_subdomain(domain, subdomain, customer_number: "") response = parse_status_response(call("removeSubdomain", customer_number, encode_domain(domain), subdomain)) return response.eql?(:ok) end |
#update_nameservers(domain, nameservers = ["ns1.loopia.se", "ns2.loopia.se"], customer_number: "") ⇒ Object
66 67 68 69 70 |
# File 'lib/loopiator/domains.rb', line 66 def update_nameservers(domain, nameservers = ["ns1.loopia.se", "ns2.loopia.se"], customer_number: "") response = parse_status_response(call("updateDNSServers", customer_number, encode_domain(domain), nameservers)) return response.eql?(:ok) end |