mirror of
https://github.com/internetee/registry.git
synced 2025-05-17 09:57:23 +02:00
Depp vendorized
This commit is contained in:
parent
98ace9d49f
commit
65f50c23f0
154 changed files with 4485 additions and 29 deletions
3
Gemfile
3
Gemfile
|
@ -65,8 +65,7 @@ gem 'deep_cloneable', '~> 2.1.1'
|
|||
gem 'digidoc_client', '~> 0.2.1'
|
||||
|
||||
# epp + repp client
|
||||
gem 'depp', github: 'domify/depp', ref: 'bac84dba62baa1b6465523f52df9eb3140f4d1ee'
|
||||
# gem 'depp', path: '../depp'
|
||||
gem 'depp', path: 'vendor/gems/depp'
|
||||
gem 'epp', '~> 1.4.2', github: 'gitlabeu/epp'
|
||||
|
||||
# for importing legacy db
|
||||
|
|
52
Gemfile.lock
52
Gemfile.lock
|
@ -8,26 +8,6 @@ GIT
|
|||
activesupport (>= 3.0, < 6.0)
|
||||
request_store (~> 1.1.0)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/domify/depp.git
|
||||
revision: bac84dba62baa1b6465523f52df9eb3140f4d1ee
|
||||
ref: bac84dba62baa1b6465523f52df9eb3140f4d1ee
|
||||
specs:
|
||||
depp (0.0.2)
|
||||
coderay (>= 1.1.0)
|
||||
coffee-rails (>= 4.1.0)
|
||||
countries (>= 0.9.3)
|
||||
epp-xml (>= 0.10.4)
|
||||
figaro (>= 1.1.0)
|
||||
haml-rails (>= 0.9.0)
|
||||
jquery-rails (>= 4.0.3)
|
||||
kaminari (~> 0.16.3)
|
||||
nokogiri (>= 1.6.6.2)
|
||||
rails (>= 4.2.1)
|
||||
sass-rails (>= 5.0.0)
|
||||
uglifier (>= 2.6.1)
|
||||
uuidtools (>= 2.1.4)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/gitlabeu/epp.git
|
||||
revision: 505c3f2739eb1da918e54111aecfb138a822739d
|
||||
|
@ -47,6 +27,24 @@ GIT
|
|||
nokogiri (~> 1.6.0)
|
||||
ruby_parser (~> 3.5)
|
||||
|
||||
PATH
|
||||
remote: vendor/gems/depp
|
||||
specs:
|
||||
depp (0.0.2)
|
||||
coderay (>= 1.1.0)
|
||||
coffee-rails (>= 4.1.0)
|
||||
countries (>= 0.9.3)
|
||||
epp-xml (>= 0.10.4)
|
||||
figaro (>= 1.1.0)
|
||||
haml-rails (>= 0.9.0)
|
||||
jquery-rails (>= 4.0.3)
|
||||
kaminari (~> 0.16.3)
|
||||
nokogiri (>= 1.6.6.2)
|
||||
rails (>= 4.2.1)
|
||||
sass-rails (>= 5.0.0)
|
||||
uglifier (>= 2.6.1)
|
||||
uuidtools (>= 2.1.4)
|
||||
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
|
@ -147,7 +145,7 @@ GEM
|
|||
coffee-rails (4.1.0)
|
||||
coffee-script (>= 2.2.0)
|
||||
railties (>= 4.0.0, < 5.0)
|
||||
coffee-script (2.3.0)
|
||||
coffee-script (2.4.1)
|
||||
coffee-script-source
|
||||
execjs
|
||||
coffee-script-source (1.9.1)
|
||||
|
@ -182,7 +180,7 @@ GEM
|
|||
builder (~> 3.2)
|
||||
equalizer (0.0.11)
|
||||
erubis (2.7.0)
|
||||
execjs (2.4.0)
|
||||
execjs (2.5.0)
|
||||
fabrication (2.12.2)
|
||||
faker (1.3.0)
|
||||
i18n (~> 0.5)
|
||||
|
@ -223,7 +221,7 @@ GEM
|
|||
guard-rubocop (1.1.0)
|
||||
guard (~> 2.0)
|
||||
rubocop (~> 0.20)
|
||||
gyoku (1.3.0)
|
||||
gyoku (1.3.1)
|
||||
builder (>= 2.1.2)
|
||||
haml (4.0.6)
|
||||
tilt
|
||||
|
@ -301,7 +299,7 @@ GEM
|
|||
cliver (~> 0.3.1)
|
||||
multi_json (~> 1.0)
|
||||
websocket-driver (>= 0.2.0)
|
||||
polyamorous (1.1.0)
|
||||
polyamorous (1.2.0)
|
||||
activerecord (>= 3.0)
|
||||
powerpack (0.0.9)
|
||||
pry (0.10.1)
|
||||
|
@ -405,7 +403,7 @@ GEM
|
|||
virtus (~> 1.0)
|
||||
safe_yaml (1.0.4)
|
||||
sass (3.4.13)
|
||||
sass-rails (5.0.2)
|
||||
sass-rails (5.0.1)
|
||||
railties (>= 4.0.0, < 5.0)
|
||||
sass (~> 3.1)
|
||||
sprockets (>= 2.8, < 4.0)
|
||||
|
@ -437,7 +435,7 @@ GEM
|
|||
temple (~> 0.6.9)
|
||||
tilt (>= 1.3.3, < 2.1)
|
||||
slop (3.6.0)
|
||||
spring (1.3.3)
|
||||
spring (1.3.4)
|
||||
spring-commands-rspec (1.0.4)
|
||||
spring (>= 0.9.1)
|
||||
sprockets (2.12.3)
|
||||
|
@ -454,7 +452,7 @@ GEM
|
|||
systemu (2.6.5)
|
||||
temple (0.6.10)
|
||||
terminal-table (1.4.5)
|
||||
therubyracer (0.12.1)
|
||||
therubyracer (0.12.2)
|
||||
libv8 (~> 3.16.14.0)
|
||||
ref
|
||||
thor (0.19.1)
|
||||
|
|
1
depp
Symbolic link
1
depp
Symbolic link
|
@ -0,0 +1 @@
|
|||
vendor/gems/depp
|
17
vendor/gems/depp/Gemfile
vendored
Normal file
17
vendor/gems/depp/Gemfile
vendored
Normal file
|
@ -0,0 +1,17 @@
|
|||
source 'https://rubygems.org'
|
||||
|
||||
# Declare your gem's dependencies in depp.gemspec.
|
||||
# Bundler will treat runtime dependencies like base dependencies, and
|
||||
# development dependencies will be added by default to the :development group.
|
||||
gemspec
|
||||
|
||||
gem 'epp', '~> 1.4.2', github: 'gitlabeu/epp'
|
||||
|
||||
# Declare any dependencies that are still in development here instead of in
|
||||
# your gemspec. These might include edge Rails or gems from your path or
|
||||
# Git. Remember to move these dependencies to your gemspec before releasing
|
||||
# your gem to rubygems.org.
|
||||
|
||||
# To use a debugger
|
||||
# gem 'byebug', group: [:development, :test]
|
||||
|
182
vendor/gems/depp/Gemfile.lock
vendored
Normal file
182
vendor/gems/depp/Gemfile.lock
vendored
Normal file
|
@ -0,0 +1,182 @@
|
|||
GIT
|
||||
remote: git://github.com/gitlabeu/epp.git
|
||||
revision: 505c3f2739eb1da918e54111aecfb138a822739d
|
||||
specs:
|
||||
epp (1.4.2)
|
||||
hpricot
|
||||
libxml-ruby
|
||||
|
||||
PATH
|
||||
remote: .
|
||||
specs:
|
||||
depp (0.0.2)
|
||||
coderay (>= 1.1.0)
|
||||
coffee-rails (>= 4.1.0)
|
||||
countries (>= 0.9.3)
|
||||
epp-xml (>= 0.10.4)
|
||||
figaro (>= 1.1.0)
|
||||
haml-rails (>= 0.9.0)
|
||||
jquery-rails (>= 4.0.3)
|
||||
nokogiri (>= 1.6.6.2)
|
||||
rails (>= 4.2.1)
|
||||
sass-rails (>= 5.0.0)
|
||||
uglifier (>= 2.6.1)
|
||||
uuidtools (>= 2.1.4)
|
||||
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
actionmailer (4.2.1)
|
||||
actionpack (= 4.2.1)
|
||||
actionview (= 4.2.1)
|
||||
activejob (= 4.2.1)
|
||||
mail (~> 2.5, >= 2.5.4)
|
||||
rails-dom-testing (~> 1.0, >= 1.0.5)
|
||||
actionpack (4.2.1)
|
||||
actionview (= 4.2.1)
|
||||
activesupport (= 4.2.1)
|
||||
rack (~> 1.6)
|
||||
rack-test (~> 0.6.2)
|
||||
rails-dom-testing (~> 1.0, >= 1.0.5)
|
||||
rails-html-sanitizer (~> 1.0, >= 1.0.1)
|
||||
actionview (4.2.1)
|
||||
activesupport (= 4.2.1)
|
||||
builder (~> 3.1)
|
||||
erubis (~> 2.7.0)
|
||||
rails-dom-testing (~> 1.0, >= 1.0.5)
|
||||
rails-html-sanitizer (~> 1.0, >= 1.0.1)
|
||||
activejob (4.2.1)
|
||||
activesupport (= 4.2.1)
|
||||
globalid (>= 0.3.0)
|
||||
activemodel (4.2.1)
|
||||
activesupport (= 4.2.1)
|
||||
builder (~> 3.1)
|
||||
activerecord (4.2.1)
|
||||
activemodel (= 4.2.1)
|
||||
activesupport (= 4.2.1)
|
||||
arel (~> 6.0)
|
||||
activesupport (4.2.1)
|
||||
i18n (~> 0.7)
|
||||
json (~> 1.7, >= 1.7.7)
|
||||
minitest (~> 5.1)
|
||||
thread_safe (~> 0.3, >= 0.3.4)
|
||||
tzinfo (~> 1.1)
|
||||
arel (6.0.0)
|
||||
builder (3.2.2)
|
||||
coderay (1.1.0)
|
||||
coffee-rails (4.1.0)
|
||||
coffee-script (>= 2.2.0)
|
||||
railties (>= 4.0.0, < 5.0)
|
||||
coffee-script (2.3.0)
|
||||
coffee-script-source
|
||||
execjs
|
||||
coffee-script-source (1.9.1)
|
||||
countries (0.11.3)
|
||||
currencies (~> 0.4.2)
|
||||
i18n_data (~> 0.6.0)
|
||||
currencies (0.4.2)
|
||||
epp-xml (0.10.4)
|
||||
activesupport (~> 4.1)
|
||||
builder (~> 3.2)
|
||||
erubis (2.7.0)
|
||||
execjs (2.4.0)
|
||||
figaro (1.1.0)
|
||||
thor (~> 0.14)
|
||||
globalid (0.3.3)
|
||||
activesupport (>= 4.1.0)
|
||||
haml (4.0.6)
|
||||
tilt
|
||||
haml-rails (0.9.0)
|
||||
actionpack (>= 4.0.1)
|
||||
activesupport (>= 4.0.1)
|
||||
haml (>= 4.0.6, < 5.0)
|
||||
html2haml (>= 1.0.1)
|
||||
railties (>= 4.0.1)
|
||||
hike (1.2.3)
|
||||
hpricot (0.8.6)
|
||||
html2haml (2.0.0)
|
||||
erubis (~> 2.7.0)
|
||||
haml (~> 4.0.0)
|
||||
nokogiri (~> 1.6.0)
|
||||
ruby_parser (~> 3.5)
|
||||
i18n (0.7.0)
|
||||
i18n_data (0.6.3)
|
||||
jquery-rails (4.0.3)
|
||||
rails-dom-testing (~> 1.0)
|
||||
railties (>= 4.2.0)
|
||||
thor (>= 0.14, < 2.0)
|
||||
json (1.8.2)
|
||||
libxml-ruby (2.8.0)
|
||||
loofah (2.0.1)
|
||||
nokogiri (>= 1.5.9)
|
||||
mail (2.6.3)
|
||||
mime-types (>= 1.16, < 3)
|
||||
mime-types (2.4.3)
|
||||
mini_portile (0.6.2)
|
||||
minitest (5.5.1)
|
||||
multi_json (1.11.0)
|
||||
nokogiri (1.6.6.2)
|
||||
mini_portile (~> 0.6.0)
|
||||
rack (1.6.0)
|
||||
rack-test (0.6.3)
|
||||
rack (>= 1.0)
|
||||
rails (4.2.1)
|
||||
actionmailer (= 4.2.1)
|
||||
actionpack (= 4.2.1)
|
||||
actionview (= 4.2.1)
|
||||
activejob (= 4.2.1)
|
||||
activemodel (= 4.2.1)
|
||||
activerecord (= 4.2.1)
|
||||
activesupport (= 4.2.1)
|
||||
bundler (>= 1.3.0, < 2.0)
|
||||
railties (= 4.2.1)
|
||||
sprockets-rails
|
||||
rails-deprecated_sanitizer (1.0.3)
|
||||
activesupport (>= 4.2.0.alpha)
|
||||
rails-dom-testing (1.0.6)
|
||||
activesupport (>= 4.2.0.beta, < 5.0)
|
||||
nokogiri (~> 1.6.0)
|
||||
rails-deprecated_sanitizer (>= 1.0.1)
|
||||
rails-html-sanitizer (1.0.2)
|
||||
loofah (~> 2.0)
|
||||
railties (4.2.1)
|
||||
actionpack (= 4.2.1)
|
||||
activesupport (= 4.2.1)
|
||||
rake (>= 0.8.7)
|
||||
thor (>= 0.18.1, < 2.0)
|
||||
rake (10.4.2)
|
||||
ruby_parser (3.6.5)
|
||||
sexp_processor (~> 4.1)
|
||||
sass (3.4.13)
|
||||
sass-rails (5.0.1)
|
||||
railties (>= 4.0.0, < 5.0)
|
||||
sass (~> 3.1)
|
||||
sprockets (>= 2.8, < 4.0)
|
||||
sprockets-rails (>= 2.0, < 4.0)
|
||||
tilt (~> 1.1)
|
||||
sexp_processor (4.5.0)
|
||||
sprockets (2.12.3)
|
||||
hike (~> 1.2)
|
||||
multi_json (~> 1.0)
|
||||
rack (~> 1.0)
|
||||
tilt (~> 1.1, != 1.3.0)
|
||||
sprockets-rails (2.2.4)
|
||||
actionpack (>= 3.0)
|
||||
activesupport (>= 3.0)
|
||||
sprockets (>= 2.8, < 4.0)
|
||||
thor (0.19.1)
|
||||
thread_safe (0.3.5)
|
||||
tilt (1.4.1)
|
||||
tzinfo (1.2.2)
|
||||
thread_safe (~> 0.1)
|
||||
uglifier (2.7.1)
|
||||
execjs (>= 0.3.0)
|
||||
json (>= 1.8.0)
|
||||
uuidtools (2.1.5)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
depp!
|
||||
epp (~> 1.4.2)!
|
20
vendor/gems/depp/MIT-LICENSE
vendored
Normal file
20
vendor/gems/depp/MIT-LICENSE
vendored
Normal file
|
@ -0,0 +1,20 @@
|
|||
Copyright 2015 Priit Tark
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
23
vendor/gems/depp/README.md
vendored
Normal file
23
vendor/gems/depp/README.md
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
Depp
|
||||
====
|
||||
|
||||
EPP/REPP Rails engine
|
||||
|
||||
Installation
|
||||
------------
|
||||
|
||||
Add Depp and epp to your Gemfile:
|
||||
|
||||
gem 'depp', github: 'domify/depp'
|
||||
gem 'epp', '~> 1.4.2', github: 'gitlabeu/epp'
|
||||
|
||||
Mount Depp to your application routes, example:
|
||||
|
||||
mount Depp::Engine, at: '/depp'
|
||||
|
||||
Depp requires login_url helper, example in routes:
|
||||
|
||||
get '/login', to: 'sessions#login', as: 'login'
|
||||
|
||||
Depp requires current_user helper in controller
|
||||
|
37
vendor/gems/depp/Rakefile
vendored
Normal file
37
vendor/gems/depp/Rakefile
vendored
Normal file
|
@ -0,0 +1,37 @@
|
|||
begin
|
||||
require 'bundler/setup'
|
||||
rescue LoadError
|
||||
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
||||
end
|
||||
|
||||
require 'rdoc/task'
|
||||
|
||||
RDoc::Task.new(:rdoc) do |rdoc|
|
||||
rdoc.rdoc_dir = 'rdoc'
|
||||
rdoc.title = 'Depp'
|
||||
rdoc.options << '--line-numbers'
|
||||
rdoc.rdoc_files.include('README.rdoc')
|
||||
rdoc.rdoc_files.include('lib/**/*.rb')
|
||||
end
|
||||
|
||||
APP_RAKEFILE = File.expand_path("../test/dummy/Rakefile", __FILE__)
|
||||
load 'rails/tasks/engine.rake'
|
||||
|
||||
|
||||
load 'rails/tasks/statistics.rake'
|
||||
|
||||
|
||||
|
||||
Bundler::GemHelper.install_tasks
|
||||
|
||||
require 'rake/testtask'
|
||||
|
||||
Rake::TestTask.new(:test) do |t|
|
||||
t.libs << 'lib'
|
||||
t.libs << 'test'
|
||||
t.pattern = 'test/**/*_test.rb'
|
||||
t.verbose = false
|
||||
end
|
||||
|
||||
|
||||
task default: :test
|
1
vendor/gems/depp/TODO
vendored
Normal file
1
vendor/gems/depp/TODO
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
* add config/application.yml default with rake task
|
0
vendor/gems/depp/app/assets/images/depp/.keep
vendored
Normal file
0
vendor/gems/depp/app/assets/images/depp/.keep
vendored
Normal file
BIN
vendor/gems/depp/app/assets/images/depp/bg-alpha.png
vendored
Normal file
BIN
vendor/gems/depp/app/assets/images/depp/bg-alpha.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.9 KiB |
BIN
vendor/gems/depp/app/assets/images/depp/bg-development.png
vendored
Normal file
BIN
vendor/gems/depp/app/assets/images/depp/bg-development.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
BIN
vendor/gems/depp/app/assets/images/depp/bg-staging.png
vendored
Normal file
BIN
vendor/gems/depp/app/assets/images/depp/bg-staging.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 12 KiB |
0
vendor/gems/depp/app/assets/images/depp/favicon.ico
vendored
Normal file
0
vendor/gems/depp/app/assets/images/depp/favicon.ico
vendored
Normal file
31
vendor/gems/depp/app/assets/javascripts/depp/application.coffee
vendored
Normal file
31
vendor/gems/depp/app/assets/javascripts/depp/application.coffee
vendored
Normal file
|
@ -0,0 +1,31 @@
|
|||
#= require jquery
|
||||
#= require jquery_ujs
|
||||
#= require turbolinks
|
||||
#= require bootstrap-sprockets
|
||||
#= require jquery.nested_attributes
|
||||
|
||||
$(document).on 'ready page:load', ->
|
||||
$('.js-contact-form').on 'restoreDefault', (e) ->
|
||||
form = $(e.target)
|
||||
form.find('.js-ident-tip').hide()
|
||||
switch $('.js-ident-country-code option:selected').val()
|
||||
when 'EE'
|
||||
$('.js-ident-type').find('option[value=birthday]').prop('disabled', true)
|
||||
else
|
||||
$('.js-ident-type').find('option[value=birthday]').prop('disabled', false)
|
||||
|
||||
$('.js-ident-country-code').change (e) ->
|
||||
form = $('.js-contact-form')
|
||||
form.trigger 'restoreDefault'
|
||||
|
||||
$('.js-ident-type').change (e) ->
|
||||
form = $('.js-contact-form')
|
||||
form.trigger 'restoreDefault'
|
||||
|
||||
switch e.target.value
|
||||
# when 'bic'
|
||||
# when 'priv'
|
||||
when 'birthday'
|
||||
form.find('.js-ident-tip').show()
|
||||
|
||||
$('.js-contact-form').trigger('restoreDefault')
|
3
vendor/gems/depp/app/assets/stylesheets/depp/application.scss
vendored
Normal file
3
vendor/gems/depp/app/assets/stylesheets/depp/application.scss
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
//= require './custom-boostrap'
|
||||
//= require './general'
|
||||
//= require './overwrites'
|
5
vendor/gems/depp/app/assets/stylesheets/depp/custom-boostrap.scss
vendored
Normal file
5
vendor/gems/depp/app/assets/stylesheets/depp/custom-boostrap.scss
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
$font-family-sans-serif: 'EtelkaLightProRegular', Arial, Helvetica, sans-serif;
|
||||
$font-family-serif: 'EtelkaLightProBold', Georgia, "Times New Roman", Times, serif;
|
||||
|
||||
@import "bootstrap-sprockets";
|
||||
@import "bootstrap";
|
226
vendor/gems/depp/app/assets/stylesheets/depp/general.sass
vendored
Normal file
226
vendor/gems/depp/app/assets/stylesheets/depp/general.sass
vendored
Normal file
|
@ -0,0 +1,226 @@
|
|||
html
|
||||
font-size: 100%
|
||||
overflow-y: scroll
|
||||
-webkit-text-size-adjust: 100%
|
||||
-ms-text-size-adjust: 100%
|
||||
|
||||
body
|
||||
background: url(image_path('bg.jpg'))
|
||||
|
||||
h1
|
||||
font-size: 26px
|
||||
margin-bottom: 16px
|
||||
|
||||
a
|
||||
color: #008fd7
|
||||
text-decoration: none
|
||||
|
||||
a:hover,
|
||||
a:active
|
||||
color: #008fd7
|
||||
outline: 0
|
||||
|
||||
h1, h2, h3, h4, h1 a, h2 a, h3 a, h4 a
|
||||
color: #272f34
|
||||
text-decoration: none
|
||||
font-weight: normal
|
||||
font-family: 'EtelkaLightProBold'
|
||||
|
||||
h1
|
||||
font-size: 22px
|
||||
text-transform: uppercase
|
||||
|
||||
body,
|
||||
button,
|
||||
input,
|
||||
select,
|
||||
textarea
|
||||
font-family: 'EtelkaLightProRegular', Arial, Helvetica, sans-serif
|
||||
color: #5d6064
|
||||
font-size: 13px
|
||||
|
||||
abbr[title]
|
||||
border-bottom: 1px dotted
|
||||
|
||||
b,
|
||||
strong
|
||||
font-weight: normal
|
||||
font-family: 'EtelkaLightProBold'
|
||||
|
||||
blockquote
|
||||
margin: 1em 40px
|
||||
|
||||
dfn
|
||||
font-style: italic
|
||||
|
||||
mark
|
||||
background: #ff0
|
||||
color: #000
|
||||
|
||||
pre,
|
||||
code,
|
||||
kbd,
|
||||
samp
|
||||
font-family: monospace, serif
|
||||
_font-family: 'courier new', monospace
|
||||
font-size: 1em
|
||||
|
||||
pre
|
||||
white-space: pre
|
||||
white-space: pre-wrap
|
||||
word-wrap: break-word
|
||||
|
||||
q
|
||||
quotes: none
|
||||
|
||||
q:before,
|
||||
q:after
|
||||
content: ''
|
||||
content: none
|
||||
|
||||
small
|
||||
font-size: 75%
|
||||
|
||||
sub,
|
||||
sup
|
||||
font-size: 75%
|
||||
line-height: 0
|
||||
position: relative
|
||||
vertical-align: baseline
|
||||
|
||||
sup
|
||||
top: -0.5em
|
||||
|
||||
sub
|
||||
bottom: -0.25em
|
||||
|
||||
.title-row
|
||||
margin-bottom: 22px
|
||||
|
||||
.app-nav
|
||||
padding-top: 7px
|
||||
|
||||
.general-tab
|
||||
padding-top: 30px
|
||||
padding-right: 20px
|
||||
border-top: 0px
|
||||
|
||||
.container
|
||||
border-radius: 3px
|
||||
width: 860px
|
||||
body > .container
|
||||
background: #F8F8F8
|
||||
margin-bottom: 50px
|
||||
min-height: 600px
|
||||
padding: 30px 30px 56px 30px
|
||||
|
||||
.container.version
|
||||
background: transparent
|
||||
margin-top: -116px
|
||||
min-height: 0px
|
||||
text-align: right
|
||||
font-size: 12px
|
||||
color: gray
|
||||
|
||||
.container.subnav
|
||||
background: transparent
|
||||
min-height: 0
|
||||
padding: 0 46px 0 0
|
||||
margin-bottom: 0
|
||||
ul.nav
|
||||
li a
|
||||
background: #E7E7E7
|
||||
height: 33px
|
||||
line-height: 12px
|
||||
color: gray
|
||||
&:hover
|
||||
color: #333
|
||||
li.active a
|
||||
background: #F8F8F8
|
||||
font-weight: bold
|
||||
color: #333
|
||||
|
||||
|
||||
.subactions
|
||||
h4
|
||||
margin-bottom: 20px
|
||||
margin-top: 10px
|
||||
min-height: 600px
|
||||
|
||||
.sidebar
|
||||
min-height: 400px
|
||||
|
||||
.content
|
||||
margin-right: 240px
|
||||
margin-left: 0
|
||||
|
||||
h4
|
||||
margin: 0
|
||||
|
||||
.top-actions
|
||||
margin-top: 12px
|
||||
margin-bottom: 16px
|
||||
float: right
|
||||
|
||||
.navbar-brand
|
||||
line-height: 12px
|
||||
padding-top: 20px
|
||||
padding-bottom: 5px
|
||||
|
||||
.navbar-brand small
|
||||
display: block
|
||||
font-size: 10px
|
||||
|
||||
.footer
|
||||
color: #777
|
||||
padding-top: 70px
|
||||
padding-bottom: 10px
|
||||
font-size: 10px
|
||||
|
||||
.domify
|
||||
td
|
||||
vertical-align: middle !important
|
||||
|
||||
body.login
|
||||
padding-top: 40px
|
||||
padding-bottom: 40px
|
||||
|
||||
.form-signin
|
||||
.form-signin-heading,
|
||||
.form-signin
|
||||
.checkbox
|
||||
margin-bottom: 10px
|
||||
|
||||
.form-signin
|
||||
max-width: 330px
|
||||
padding: 15px
|
||||
margin: 0 auto
|
||||
|
||||
input[type="text"]
|
||||
margin-bottom: 8px
|
||||
|
||||
input[type="password"]
|
||||
margin-bottom: 10px
|
||||
|
||||
.btn-lg
|
||||
margin-top: 28px
|
||||
|
||||
.checkbox
|
||||
font-weight: normal
|
||||
|
||||
.form-control
|
||||
position: relative
|
||||
height: auto
|
||||
-webkit-box-sizing: border-box
|
||||
-moz-box-sizing: border-box
|
||||
box-sizing: border-box
|
||||
padding: 10px
|
||||
font-size: 16px
|
||||
|
||||
.form-control:focus
|
||||
z-index: 2
|
||||
|
||||
// fix label position for medium screen
|
||||
@media (min-width: 768px) and (max-width: 991px)
|
||||
.form-horizontal .control-label
|
||||
text-align: left
|
1
vendor/gems/depp/app/assets/stylesheets/depp/overwrites.sass
vendored
Normal file
1
vendor/gems/depp/app/assets/stylesheets/depp/overwrites.sass
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
// Overwrite this file at your application app/assets/stylesheets/depp/overwrite.sass
|
54
vendor/gems/depp/app/controllers/depp/application_controller.rb
vendored
Normal file
54
vendor/gems/depp/app/controllers/depp/application_controller.rb
vendored
Normal file
|
@ -0,0 +1,54 @@
|
|||
module Depp
|
||||
# class ApplicationController < ::ApplicationController
|
||||
class ApplicationController < ActionController::Base
|
||||
include CurrentUserHelper
|
||||
include ApplicationHelper
|
||||
|
||||
# Prevent CSRF attacks by raising an exception.
|
||||
# For APIs, you may want to use :null_session instead.
|
||||
protect_from_forgery with: :exception
|
||||
|
||||
helper_method :depp_current_user
|
||||
|
||||
rescue_from(Errno::ECONNRESET, Errno::ECONNREFUSED) do |exception|
|
||||
redirect_to login_url, alert: t(:no_connection_to_registry)
|
||||
end
|
||||
|
||||
before_action :authenticate_user
|
||||
def authenticate_user
|
||||
if ENV['session_timeout']
|
||||
redirect_to main_app.login_url and return unless depp_current_user && session[:last_seen]
|
||||
|
||||
if (session[:last_seen].to_i + ENV['session_timeout'].to_i) < Time.now.to_i
|
||||
session_timeout
|
||||
else
|
||||
session[:last_seen] = Time.now.to_i
|
||||
end
|
||||
else
|
||||
redirect_to main_app.login_url and return unless depp_current_user
|
||||
end
|
||||
end
|
||||
|
||||
def session_timeout
|
||||
reset_session
|
||||
flash[:alert] = t('your_session_has_timed_out')
|
||||
redirect_to main_app.login_url and return
|
||||
end
|
||||
|
||||
def depp_current_user
|
||||
return nil unless current_user
|
||||
@depp_current_user ||= Depp::User.new(
|
||||
tag: current_user.username,
|
||||
password: current_user.password
|
||||
)
|
||||
end
|
||||
|
||||
def response_ok?
|
||||
@data.css('result').each do |x|
|
||||
success_codes = %(1000, 1300, 1301)
|
||||
return false unless success_codes.include?(x['code'])
|
||||
end
|
||||
true
|
||||
end
|
||||
end
|
||||
end
|
84
vendor/gems/depp/app/controllers/depp/contacts_controller.rb
vendored
Normal file
84
vendor/gems/depp/app/controllers/depp/contacts_controller.rb
vendored
Normal file
|
@ -0,0 +1,84 @@
|
|||
module Depp
|
||||
class ContactsController < ApplicationController
|
||||
before_action :init_epp_contact
|
||||
|
||||
def index
|
||||
limit, offset = pagination_details
|
||||
|
||||
res = depp_current_user.repp_request('contacts', { details: true, limit: limit, offset: offset })
|
||||
flash.now[:epp_results] = [{ 'code' => res.code, 'msg' => res.message }]
|
||||
@response = res.parsed_body.with_indifferent_access if res.code == '200'
|
||||
@contacts = @response ? @response[:contacts] : []
|
||||
|
||||
@paginatable_array = Kaminari.paginate_array(
|
||||
[], total_count: @response[:total_number_of_records]
|
||||
).page(params[:page]).per(limit)
|
||||
end
|
||||
|
||||
def new
|
||||
@contact = Depp::Contact.new
|
||||
end
|
||||
|
||||
def show
|
||||
@contact = Depp::Contact.find_by_id(params[:id])
|
||||
end
|
||||
|
||||
def edit
|
||||
@contact = Depp::Contact.find_by_id(params[:id])
|
||||
end
|
||||
|
||||
def create
|
||||
@contact = Depp::Contact.new(params[:contact])
|
||||
|
||||
if @contact.save
|
||||
redirect_to contact_url(@contact.id)
|
||||
else
|
||||
render 'new'
|
||||
end
|
||||
end
|
||||
|
||||
def update
|
||||
@contact = Depp::Contact.new(params[:contact])
|
||||
|
||||
if @contact.update_attributes(params[:contact])
|
||||
redirect_to contact_url(@contact.id)
|
||||
else
|
||||
render 'edit'
|
||||
end
|
||||
end
|
||||
|
||||
def delete
|
||||
@contact = Depp::Contact.find_by_id(params[:id])
|
||||
end
|
||||
|
||||
def destroy
|
||||
@contact = Depp::Contact.new(params[:contact])
|
||||
|
||||
if @contact.delete
|
||||
redirect_to contacts_url, notice: t(:destroyed)
|
||||
else
|
||||
render 'delete'
|
||||
end
|
||||
end
|
||||
|
||||
def check
|
||||
@ids = params[:contacts]
|
||||
# if @ids
|
||||
# @contacts = []
|
||||
# @ids.split(',').each do |id|
|
||||
# @contacts << id.strip
|
||||
# end
|
||||
# end
|
||||
return unless @ids
|
||||
|
||||
@data = @contact.check(@ids)
|
||||
@contacts = Depp::Contact.construct_check_hash_from_data(@data)
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def init_epp_contact
|
||||
Depp::Contact.user = depp_current_user
|
||||
end
|
||||
end
|
||||
end
|
107
vendor/gems/depp/app/controllers/depp/domains_controller.rb
vendored
Normal file
107
vendor/gems/depp/app/controllers/depp/domains_controller.rb
vendored
Normal file
|
@ -0,0 +1,107 @@
|
|||
module Depp
|
||||
class DomainsController < ApplicationController
|
||||
before_action :init_domain, except: :new
|
||||
|
||||
def index
|
||||
limit, offset = pagination_details
|
||||
|
||||
res = depp_current_user.repp_request('domains', { details: true, limit: limit, offset: offset })
|
||||
flash.now[:epp_results] = [{ 'code' => res.code, 'msg' => res.message }]
|
||||
@response = res.parsed_body.with_indifferent_access if res.code == '200'
|
||||
@contacts = @response ? @response[:contacts] : []
|
||||
|
||||
@paginatable_array = Kaminari.paginate_array(
|
||||
[], total_count: @response[:total_number_of_records]
|
||||
).page(params[:page]).per(limit)
|
||||
end
|
||||
|
||||
def info
|
||||
@data = @domain.info(params[:domain_name]) if params[:domain_name]
|
||||
if response_ok?
|
||||
render 'info'
|
||||
else
|
||||
flash[:alert] = t('domain_not_found')
|
||||
redirect_to domains_path and return
|
||||
end
|
||||
end
|
||||
|
||||
def check
|
||||
if params[:domain_name]
|
||||
@data = @domain.check(params[:domain_name])
|
||||
render 'check_index' and return unless response_ok?
|
||||
else
|
||||
render 'check_index'
|
||||
end
|
||||
end
|
||||
|
||||
def new
|
||||
@domain_params = Depp::Domain.default_params
|
||||
end
|
||||
|
||||
def create
|
||||
@domain_params = params[:domain]
|
||||
@data = @domain.create(@domain_params)
|
||||
|
||||
if response_ok?
|
||||
redirect_to info_domains_path(domain_name: @domain_params[:name])
|
||||
else
|
||||
render 'new'
|
||||
end
|
||||
end
|
||||
|
||||
def edit
|
||||
@data = @domain.info(params[:domain_name])
|
||||
@domain_params = Depp::Domain.construct_params_from_server_data(@data)
|
||||
end
|
||||
|
||||
def update
|
||||
@domain_params = params[:domain]
|
||||
@data = @domain.update(@domain_params)
|
||||
|
||||
if response_ok?
|
||||
redirect_to info_domains_path(domain_name: @domain_params[:name])
|
||||
else
|
||||
params[:domain_name] = @domain_params[:name]
|
||||
render 'new'
|
||||
end
|
||||
end
|
||||
|
||||
def delete; end
|
||||
|
||||
def destroy
|
||||
@data = @domain.delete(params[:domain])
|
||||
@results = @data.css('result')
|
||||
if response_ok?
|
||||
params[:domain_name] = nil
|
||||
render 'info_index'
|
||||
else
|
||||
params[:domain_name] = params[:domain][:name]
|
||||
render 'delete'
|
||||
end
|
||||
end
|
||||
|
||||
def renew
|
||||
if params[:domain_name] && params[:cur_exp_date]
|
||||
@data = @domain.renew(params)
|
||||
render 'renew_index' and return unless response_ok?
|
||||
else
|
||||
render 'renew_index'
|
||||
end
|
||||
end
|
||||
|
||||
def transfer
|
||||
if params[:domain_name]
|
||||
@data = @domain.transfer(params)
|
||||
render 'transfer_index' and return unless response_ok?
|
||||
else
|
||||
render 'transfer_index'
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def init_domain
|
||||
@domain = Depp::Domain.new(current_user: depp_current_user)
|
||||
end
|
||||
end
|
||||
end
|
17
vendor/gems/depp/app/controllers/depp/keyrelays_controller.rb
vendored
Normal file
17
vendor/gems/depp/app/controllers/depp/keyrelays_controller.rb
vendored
Normal file
|
@ -0,0 +1,17 @@
|
|||
module Depp
|
||||
class KeyrelaysController < ApplicationController
|
||||
def show; end
|
||||
|
||||
def create
|
||||
keyrelay = Depp::Keyrelay.new(current_user: depp_current_user)
|
||||
@data = keyrelay.keyrelay(params)
|
||||
|
||||
if response_ok?
|
||||
flash[:epp_results] = [{ 'code' => '1000', 'msg' => 'Command completed successfully' }]
|
||||
redirect_to keyrelay_path
|
||||
else
|
||||
render 'show'
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
50
vendor/gems/depp/app/controllers/depp/polls_controller.rb
vendored
Normal file
50
vendor/gems/depp/app/controllers/depp/polls_controller.rb
vendored
Normal file
|
@ -0,0 +1,50 @@
|
|||
module Depp
|
||||
class PollsController < ApplicationController
|
||||
before_action :init_epp_xml
|
||||
|
||||
def show
|
||||
@data = depp_current_user.request(@ex.poll)
|
||||
end
|
||||
|
||||
def destroy
|
||||
@data = depp_current_user.request(@ex.poll(poll: {
|
||||
value: '', attrs: { op: 'ack', msgID: params[:id] }
|
||||
}))
|
||||
|
||||
@results = @data.css('result')
|
||||
|
||||
@data = depp_current_user.request(@ex.poll)
|
||||
render 'show'
|
||||
end
|
||||
|
||||
def confirm_keyrelay
|
||||
domain_params = params[:domain]
|
||||
@data = @domain.confirm_keyrelay(domain_params)
|
||||
|
||||
if response_ok?
|
||||
redirect_to info_domains_path(domain_name: domain_params[:name])
|
||||
else
|
||||
@results = @data.css('result')
|
||||
@data = depp_current_user.request(@ex.poll)
|
||||
render 'show'
|
||||
end
|
||||
end
|
||||
|
||||
def confirm_transfer
|
||||
domain_params = params[:domain]
|
||||
@data = @domain.confirm_transfer(domain_params)
|
||||
|
||||
@results = @data.css('result')
|
||||
@data = depp_current_user.request(@ex.poll)
|
||||
|
||||
render 'show'
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def init_epp_xml
|
||||
@ex = EppXml::Session.new(cl_trid_prefix: depp_current_user.tag)
|
||||
@domain = Depp::Domain.new(current_user: depp_current_user)
|
||||
end
|
||||
end
|
||||
end
|
23
vendor/gems/depp/app/controllers/depp/xml_consoles_controller.rb
vendored
Normal file
23
vendor/gems/depp/app/controllers/depp/xml_consoles_controller.rb
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
module Depp
|
||||
class XmlConsolesController < ApplicationController
|
||||
def show; end
|
||||
|
||||
def create
|
||||
begin
|
||||
@result = depp_current_user.server.request(params[:payload])
|
||||
rescue
|
||||
@result = 'CONNECTION ERROR - Is the EPP server running?'
|
||||
end
|
||||
render :show
|
||||
end
|
||||
|
||||
def load_xml
|
||||
# binding.pry
|
||||
cl_trid = "#{depp_current_user.tag}-#{Time.now.to_i}"
|
||||
xml_dir_path = Depp::Engine.root + 'app/views/depp/xml_consoles/epp_requests'
|
||||
xml = File.read("#{xml_dir_path}/#{params[:obj]}/#{params[:epp_action]}.xml")
|
||||
xml.gsub!('<clTRID>ABC-12345</clTRID>', "<clTRID>#{cl_trid}</clTRID>")
|
||||
render text: xml
|
||||
end
|
||||
end
|
||||
end
|
29
vendor/gems/depp/app/helpers/depp/application_helper.rb
vendored
Normal file
29
vendor/gems/depp/app/helpers/depp/application_helper.rb
vendored
Normal file
|
@ -0,0 +1,29 @@
|
|||
module Depp
|
||||
module ApplicationHelper
|
||||
def unstable_env
|
||||
return nil if Rails.env.production?
|
||||
Rails.env
|
||||
end
|
||||
|
||||
def env_style
|
||||
return '' if unstable_env.nil?
|
||||
"background-image: url(#{image_path("depp/bg-#{unstable_env}.png")});"
|
||||
end
|
||||
|
||||
def ident_for(contact)
|
||||
case contact.ident_type
|
||||
when 'birthday'
|
||||
"#{contact.ident} [#{contact.ident_type}]"
|
||||
else
|
||||
"#{contact.ident} [#{contact.ident_country_code} #{contact.ident_type}]"
|
||||
end
|
||||
end
|
||||
|
||||
def pagination_details
|
||||
params[:page] ||= 1
|
||||
limit = ENV['depp_records_on_page'] || DEPP_RECORDS_ON_PAGE
|
||||
offset = ((params[:page].to_i - 1) * limit.to_i)
|
||||
[limit, offset]
|
||||
end
|
||||
end
|
||||
end
|
0
vendor/gems/depp/app/models/depp/concerns/.keep
vendored
Normal file
0
vendor/gems/depp/app/models/depp/concerns/.keep
vendored
Normal file
293
vendor/gems/depp/app/models/depp/contact.rb
vendored
Normal file
293
vendor/gems/depp/app/models/depp/contact.rb
vendored
Normal file
|
@ -0,0 +1,293 @@
|
|||
module Depp
|
||||
class Contact
|
||||
include ActiveModel::Model
|
||||
|
||||
attr_accessor :id, :name, :email, :phone, :org_name,
|
||||
:ident, :ident_type, :ident_country_code,
|
||||
:street, :city, :zip, :state, :country_code,
|
||||
:password, :legal_document, :statuses, :code
|
||||
|
||||
DISABLED = 'Disabled'
|
||||
DISCLOSURE_TYPES = [DISABLED, '1', '0']
|
||||
TYPES = %w( bic priv birthday )
|
||||
SELECTION_TYPES = [
|
||||
[ 'Business code', 'bic' ],
|
||||
[ 'Personal identification code', 'priv' ],
|
||||
[ 'Birthday', 'birthday' ]
|
||||
]
|
||||
|
||||
class << self
|
||||
def new_from_params(params)
|
||||
new(
|
||||
id: params[:code],
|
||||
code: params[:code],
|
||||
email: params[:email],
|
||||
phone: params[:phone],
|
||||
ident: params[:ident],
|
||||
ident_type: params[:ident_type],
|
||||
ident_country_code: params[:ident_country_code],
|
||||
|
||||
# postalInfo
|
||||
name: params[:name],
|
||||
org_name: params[:org_name],
|
||||
|
||||
# address
|
||||
street: params[:street],
|
||||
city: params[:city],
|
||||
zip: params[:zip],
|
||||
state: params[:state],
|
||||
country_code: params[:country_code],
|
||||
)
|
||||
end
|
||||
|
||||
def find_by_id(id)
|
||||
data = info_xml(id)
|
||||
|
||||
res = data.css('epp response resData infData')
|
||||
new(
|
||||
id: res.css('id').text,
|
||||
code: res.css('id').text,
|
||||
email: res.css('email').text,
|
||||
phone: res.css('voice').text,
|
||||
ident: res.css('ident').text,
|
||||
ident_type: res.css('ident').first.try(:attributes).try(:[], 'type').try(:value),
|
||||
ident_country_code: res.css('ident').first.try(:attributes).try(:[], 'cc').try(:value),
|
||||
|
||||
# postalInfo
|
||||
name: res.css('postalInfo name').text,
|
||||
org_name: res.css('postalInfo org').text,
|
||||
|
||||
# address
|
||||
street: res.css('postalInfo addr street').text,
|
||||
city: res.css('postalInfo addr city').text,
|
||||
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,
|
||||
|
||||
# statuses
|
||||
statuses: data.css('status').map { |s| [s['s'], s.text] }
|
||||
)
|
||||
end
|
||||
|
||||
def user=(user)
|
||||
@user = user
|
||||
@epp_xml = EppXml::Contact.new(cl_trid_prefix: user.tag)
|
||||
end
|
||||
|
||||
def epp_xml
|
||||
@epp_xml
|
||||
end
|
||||
|
||||
def user
|
||||
@user
|
||||
end
|
||||
|
||||
def info_xml(id, password = nil)
|
||||
xml = epp_xml.info(
|
||||
id: { value: id },
|
||||
authInfo: { pw: { value: password } }
|
||||
)
|
||||
user.request(xml)
|
||||
end
|
||||
|
||||
def construct_check_hash_from_data(data)
|
||||
res = data.css('epp response resData chkData cd')
|
||||
@contacts = []
|
||||
res.each do |_r|
|
||||
id = res.css('id').try(:text)
|
||||
reason = res.css('reason').present? ? res.css('reason').text : I18n.t(:available)
|
||||
@contacts << { id: id, reason: reason }
|
||||
end
|
||||
@contacts
|
||||
end
|
||||
|
||||
def contact_id_from_xml(data)
|
||||
id = data.css('epp response resData creData id').text
|
||||
id.blank? ? nil : id
|
||||
end
|
||||
|
||||
def construct_create_disclosure_xml(cph, flag)
|
||||
xml = { disclose: {} }
|
||||
cph.each do |k, v|
|
||||
xml[:disclose][k] = {}
|
||||
xml[:disclose][k][:value] = v
|
||||
end
|
||||
xml[:disclose][:attrs] = {}
|
||||
xml[:disclose][:attrs][:flag] = flag
|
||||
xml.with_indifferent_access
|
||||
end
|
||||
|
||||
def extract_disclosure_hash(cpd) # cpd = contact_params[:disclose]
|
||||
return {} unless cpd
|
||||
cpd = cpd.delete_if { |k, v| v if v != '1' && k == 'flag' }
|
||||
cpd
|
||||
end
|
||||
|
||||
def extract_info_disclosure(data)
|
||||
hash = {}
|
||||
data.css('disclose').each do |d|
|
||||
flag = d.attributes['flag'].value
|
||||
next unless flag
|
||||
hash[flag] = {}
|
||||
d.children.each do |c|
|
||||
hash[flag][c.name] = flag if %w( name email fax voice addr org_name ).include?(c.name)
|
||||
end
|
||||
end
|
||||
hash
|
||||
end
|
||||
end
|
||||
|
||||
def initialize(attributes={})
|
||||
super
|
||||
self.country_code = 'EE' if country_code.blank?
|
||||
self.ident_type = 'bic' if ident_type.blank?
|
||||
self.ident_country_code = 'EE' if ident_country_code.blank?
|
||||
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 }
|
||||
}
|
||||
}
|
||||
},
|
||||
extension_xml
|
||||
)
|
||||
data = Depp::Contact.user.request(create_xml)
|
||||
self.id = data.css('id').text
|
||||
handle_errors(data)
|
||||
end
|
||||
|
||||
def update_attributes(params)
|
||||
self.ident_country_code = params[:ident_country_code]
|
||||
self.ident_type = params[:ident_type]
|
||||
self.ident = params[:ident]
|
||||
|
||||
self.name = params[:name]
|
||||
self.email = params[:email]
|
||||
self.phone = params[:phone]
|
||||
|
||||
self.org_name = params[:org_name]
|
||||
self.street = params[:street]
|
||||
self.city = params[:city]
|
||||
self.zip = params[:zip]
|
||||
self.state = params[:state]
|
||||
self.country_code = params[:country_code]
|
||||
|
||||
update_xml = Depp::Contact.epp_xml.update(
|
||||
{
|
||||
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 },
|
||||
cc: { value: country_code }
|
||||
}
|
||||
}
|
||||
},
|
||||
authInfo: {
|
||||
pw: { value: password }
|
||||
}
|
||||
},
|
||||
extension_xml
|
||||
)
|
||||
data = Depp::Contact.user.request(update_xml)
|
||||
handle_errors(data)
|
||||
end
|
||||
|
||||
def delete
|
||||
delete_xml = Contact.epp_xml.delete(
|
||||
{
|
||||
id: { value: id },
|
||||
authInfo: { pw: { value: password } }
|
||||
},
|
||||
extension_xml
|
||||
)
|
||||
data = Depp::Contact.user.request(delete_xml)
|
||||
handle_errors(data)
|
||||
end
|
||||
|
||||
def extension_xml
|
||||
ident_xml.merge(legal_document_xml)
|
||||
end
|
||||
|
||||
def ident_xml
|
||||
{
|
||||
_anonymus: [
|
||||
ident: { value: ident, attrs: { type: ident_type, cc: ident_country_code } }
|
||||
]
|
||||
}
|
||||
end
|
||||
|
||||
def legal_document_xml
|
||||
return {} if legal_document.blank?
|
||||
|
||||
type = legal_document.original_filename.split('.').last.downcase
|
||||
{
|
||||
_anonymus: [
|
||||
legalDocument: { value: Base64.encode64(legal_document.read), attrs: { type: type } }
|
||||
]
|
||||
}
|
||||
end
|
||||
|
||||
def check(id)
|
||||
xml = epp_xml.check(id: { value: id })
|
||||
current_user.request(xml)
|
||||
end
|
||||
|
||||
def country_name
|
||||
Country.new(country_code)
|
||||
end
|
||||
|
||||
def bic?
|
||||
ident_type == 'bic'
|
||||
end
|
||||
|
||||
def priv?
|
||||
ident_type == 'priv'
|
||||
end
|
||||
|
||||
def persisted?
|
||||
id.present?
|
||||
end
|
||||
|
||||
def handle_errors(data)
|
||||
data.css('result').each do |x|
|
||||
success_codes = %(1000, 1300, 1301)
|
||||
|
||||
unless 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'
|
||||
|
||||
errors.add(attr, message)
|
||||
end
|
||||
end
|
||||
errors.blank?
|
||||
end
|
||||
end
|
||||
end
|
25
vendor/gems/depp/app/models/depp/dnskey.rb
vendored
Normal file
25
vendor/gems/depp/app/models/depp/dnskey.rb
vendored
Normal file
|
@ -0,0 +1,25 @@
|
|||
module Depp
|
||||
class Dnskey
|
||||
FLAGS = [
|
||||
['0 - not for DNSSEC validation', 0],
|
||||
['256 - ZSK', 256],
|
||||
['257 - KSK', 257]
|
||||
]
|
||||
|
||||
ALGORITHMS = [
|
||||
['3 - DSA/SHA-1', 3],
|
||||
['5 - RSA/SHA-1', 5],
|
||||
['6 - DSA-NSEC3-SHA1', 6],
|
||||
['7 - RSASHA1-NSEC3-SHA1', 7],
|
||||
['8 - RSA/SHA-256', 8],
|
||||
['252 - Reserved for Indirect Keys', 252],
|
||||
['253 - Private algorithm', 253],
|
||||
['254 - Private algorithm OID', 254],
|
||||
['255 - Reserved', 255]
|
||||
]
|
||||
|
||||
PROTOCOLS = [3]
|
||||
|
||||
DS_DIGEST_TYPES = [1, 2]
|
||||
end
|
||||
end
|
300
vendor/gems/depp/app/models/depp/domain.rb
vendored
Normal file
300
vendor/gems/depp/app/models/depp/domain.rb
vendored
Normal file
|
@ -0,0 +1,300 @@
|
|||
module Depp
|
||||
class Domain
|
||||
include ActiveModel::Conversion
|
||||
extend ActiveModel::Naming
|
||||
|
||||
attr_accessor :name, :current_user, :epp_xml
|
||||
|
||||
DOMAIN_STATUSES = %w(
|
||||
clientDeleteProhibited
|
||||
clientHold
|
||||
clientRenewProhibited
|
||||
clientTransferProhibited
|
||||
clientUpdateProhibited
|
||||
)
|
||||
|
||||
def initialize(args = {})
|
||||
self.current_user = args[:current_user]
|
||||
self.epp_xml = EppXml::Domain.new(cl_trid_prefix: current_user.tag)
|
||||
end
|
||||
|
||||
def info(domain_name)
|
||||
xml = epp_xml.info(name: { value: domain_name })
|
||||
current_user.request(xml)
|
||||
end
|
||||
|
||||
def check(domain_name)
|
||||
xml = epp_xml.check(
|
||||
_anonymus: [
|
||||
name: { value: domain_name }
|
||||
]
|
||||
)
|
||||
current_user.request(xml)
|
||||
end
|
||||
|
||||
def create(domain_params)
|
||||
xml = epp_xml.create({
|
||||
name: { value: domain_params[:name] },
|
||||
registrant: { value: domain_params[:registrant] },
|
||||
period: { value: domain_params[:period], attrs: { unit: domain_params[:period_unit] } },
|
||||
ns: Domain.create_nameservers_hash(domain_params),
|
||||
_anonymus: Domain.create_contacts_hash(domain_params)
|
||||
}, {
|
||||
_anonymus: Domain.create_dnskeys_hash(domain_params)
|
||||
}, Domain.construct_custom_params_hash(domain_params))
|
||||
|
||||
current_user.request(xml)
|
||||
end
|
||||
|
||||
def update(domain_params)
|
||||
data = current_user.request(epp_xml.info(name: { value: domain_params[:name] }))
|
||||
old_domain_params = Depp::Domain.construct_params_from_server_data(data)
|
||||
|
||||
xml = epp_xml.update(
|
||||
Depp::Domain.construct_edit_hash(domain_params, old_domain_params),
|
||||
Depp::Domain.construct_ext_edit_hash(domain_params, old_domain_params),
|
||||
Depp::Domain.construct_custom_params_hash(domain_params)
|
||||
)
|
||||
|
||||
current_user.request(xml)
|
||||
end
|
||||
|
||||
def delete(domain_params)
|
||||
xml = epp_xml.delete({
|
||||
name: { value: domain_params[:name] }
|
||||
}, Depp::Domain.construct_custom_params_hash(domain_params))
|
||||
|
||||
current_user.request(xml)
|
||||
end
|
||||
|
||||
def renew(params)
|
||||
current_user.request(epp_xml.renew(
|
||||
name: { value: params[:domain_name] },
|
||||
curExpDate: { value: params[:cur_exp_date] },
|
||||
period: { value: params[:period], attrs: { unit: params[:period_unit] } }
|
||||
))
|
||||
end
|
||||
|
||||
def transfer(params)
|
||||
op = params[:query] ? 'query' : nil
|
||||
op = params[:approve] ? 'approve' : op
|
||||
op = params[:reject] ? 'reject' : op
|
||||
|
||||
current_user.request(epp_xml.transfer({
|
||||
name: { value: params[:domain_name] },
|
||||
authInfo: { pw: { value: params[:password] } }
|
||||
}, op, Domain.construct_custom_params_hash(params)))
|
||||
end
|
||||
|
||||
def confirm_keyrelay(domain_params)
|
||||
xml = epp_xml.update({
|
||||
name: { value: domain_params[:name] }
|
||||
}, {
|
||||
add: Domain.create_dnskeys_hash(domain_params)
|
||||
})
|
||||
|
||||
current_user.request(xml)
|
||||
end
|
||||
|
||||
def confirm_transfer(domain_params)
|
||||
data = current_user.request(epp_xml.info(name: { value: domain_params[:name] }))
|
||||
pw = data.css('pw').text
|
||||
|
||||
xml = epp_xml.transfer({
|
||||
name: { value: domain_params[:name] },
|
||||
authInfo: { pw: { value: pw } }
|
||||
}, 'approve')
|
||||
|
||||
current_user.request(xml)
|
||||
end
|
||||
|
||||
class << self
|
||||
def default_params
|
||||
ret = {}
|
||||
|
||||
ret[:contacts_attributes] ||= {}
|
||||
ENV['default_admin_contacts_count'].to_i.times do |i|
|
||||
ret[:contacts_attributes][i] = { code: '', type: 'admin' }
|
||||
end
|
||||
|
||||
ret[:nameservers_attributes] ||= {}
|
||||
ENV['default_nameservers_count'].to_i.times do |i|
|
||||
ret[:nameservers_attributes][i] = {}
|
||||
end
|
||||
|
||||
ret[:dnskeys_attributes] ||= { 0 => {} }
|
||||
ret[:statuses_attributes] ||= { 0 => {} }
|
||||
ret.with_indifferent_access
|
||||
end
|
||||
|
||||
def construct_params_from_server_data(data) # rubocop:disable Metrics/MethodLength
|
||||
ret = default_params
|
||||
ret[:name] = data.css('name').text
|
||||
ret[:registrant] = data.css('registrant').text
|
||||
|
||||
data.css('contact').each_with_index do |x, i|
|
||||
ret[:contacts_attributes][i] = { code: x.text, type: x['type'] }
|
||||
end
|
||||
|
||||
data.css('hostAttr').each_with_index do |x, i|
|
||||
ret[:nameservers_attributes][i] = {
|
||||
hostname: x.css('hostName').text,
|
||||
ipv4: x.css('hostAddr[ip="v4"]').text,
|
||||
ipv6: x.css('hostAddr[ip="v6"]').text
|
||||
}
|
||||
end
|
||||
|
||||
data.css('dsData').each_with_index do |x, i|
|
||||
ds = {
|
||||
ds_key_tag: x.css('keyTag').first.try(:text),
|
||||
ds_alg: x.css('alg').first.try(:text),
|
||||
ds_digest_type: x.css('digestType').first.try(:text),
|
||||
ds_digest: x.css('digest').first.try(:text)
|
||||
}
|
||||
|
||||
kd = x.css('keyData').first
|
||||
ds.merge!({
|
||||
flags: kd.css('flags').first.try(:text),
|
||||
protocol: kd.css('protocol').first.try(:text),
|
||||
alg: kd.css('alg').first.try(:text),
|
||||
public_key: kd.css('pubKey').first.try(:text)
|
||||
}) if kd
|
||||
|
||||
ret[:dnskeys_attributes][i] = ds
|
||||
end
|
||||
|
||||
data.css('status').each_with_index do |x, i|
|
||||
next unless DOMAIN_STATUSES.include?(x['s'])
|
||||
ret[:statuses_attributes][i] = {
|
||||
code: x['s'],
|
||||
description: x.text
|
||||
}
|
||||
end
|
||||
|
||||
ret
|
||||
end
|
||||
|
||||
def construct_custom_params_hash(domain_params)
|
||||
custom_params = {}
|
||||
if domain_params[:legal_document].present?
|
||||
type = domain_params[:legal_document].original_filename.split('.').last.downcase
|
||||
custom_params = {
|
||||
_anonymus: [
|
||||
legalDocument: { value: Base64.encode64(domain_params[:legal_document].read), attrs: { type: type } }
|
||||
]
|
||||
}
|
||||
end
|
||||
|
||||
custom_params
|
||||
end
|
||||
|
||||
def construct_edit_hash(domain_params, old_domain_params)
|
||||
contacts = create_contacts_hash(domain_params) - create_contacts_hash(old_domain_params)
|
||||
statuses = create_statuses_hash(domain_params) - create_statuses_hash(old_domain_params)
|
||||
add_anon = contacts + statuses
|
||||
|
||||
contacts = create_contacts_hash(old_domain_params) - create_contacts_hash(domain_params)
|
||||
statuses = create_statuses_hash(old_domain_params) - create_statuses_hash(domain_params)
|
||||
rem_anon = contacts + statuses
|
||||
|
||||
if domain_params[:registrant] != old_domain_params[:registrant]
|
||||
chg = [{ registrant: { value: domain_params[:registrant] } }]
|
||||
end
|
||||
|
||||
{
|
||||
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 }
|
||||
]
|
||||
}
|
||||
end
|
||||
|
||||
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)
|
||||
}
|
||||
end
|
||||
|
||||
def create_nameservers_hash(domain_params)
|
||||
ret = []
|
||||
domain_params[:nameservers_attributes].each do |_k, v|
|
||||
next if v['hostname'].blank?
|
||||
|
||||
host_attr = []
|
||||
host_attr << { hostName: { value: v['hostname'] } }
|
||||
host_attr << { hostAddr: { value: v['ipv4'], attrs: { ip: 'v4' } } } if v['ipv4'].present?
|
||||
host_attr << { hostAddr: { value: v['ipv6'], attrs: { ip: 'v6' } } } if v['ipv6'].present?
|
||||
|
||||
ret << { hostAttr: host_attr }
|
||||
end
|
||||
|
||||
ret
|
||||
end
|
||||
|
||||
def create_contacts_hash(domain_params)
|
||||
ret = []
|
||||
domain_params[:contacts_attributes].each do |_k, v|
|
||||
next if v['code'].blank?
|
||||
ret << {
|
||||
contact: { value: v['code'], attrs: { type: v['type'] } }
|
||||
}
|
||||
end
|
||||
|
||||
ret
|
||||
end
|
||||
|
||||
def create_dnskeys_hash(domain_params)
|
||||
ret = []
|
||||
domain_params[:dnskeys_attributes].each do |_k, v|
|
||||
if v['ds_key_tag'].blank?
|
||||
kd = create_key_data_hash(v)
|
||||
ret << {
|
||||
keyData: kd
|
||||
} if kd
|
||||
else
|
||||
ret << {
|
||||
dsData: [
|
||||
keyTag: { value: v['ds_key_tag'] },
|
||||
alg: { value: v['ds_alg'] },
|
||||
digestType: { value: v['ds_digest_type'] },
|
||||
digest: { value: v['ds_digest'] },
|
||||
keyData: create_key_data_hash(v)
|
||||
]
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
ret
|
||||
end
|
||||
|
||||
def create_key_data_hash(key_data_params)
|
||||
return nil if key_data_params['public_key'].blank?
|
||||
{
|
||||
flags: { value: key_data_params['flags'] },
|
||||
protocol: { value: key_data_params['protocol'] },
|
||||
alg: { value: key_data_params['alg'] },
|
||||
pubKey: { value: key_data_params['public_key'] }
|
||||
}
|
||||
end
|
||||
|
||||
def create_statuses_hash(domain_params)
|
||||
ret = []
|
||||
domain_params[:statuses_attributes].each do |_k, v|
|
||||
next if v['code'].blank?
|
||||
ret << {
|
||||
status: { value: v['description'], attrs: { s: v['code'] } }
|
||||
}
|
||||
end
|
||||
|
||||
ret
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
41
vendor/gems/depp/app/models/depp/keyrelay.rb
vendored
Normal file
41
vendor/gems/depp/app/models/depp/keyrelay.rb
vendored
Normal file
|
@ -0,0 +1,41 @@
|
|||
module Depp
|
||||
class Keyrelay
|
||||
attr_accessor :current_user, :epp_xml
|
||||
|
||||
def initialize(args = {})
|
||||
self.current_user = args[:current_user]
|
||||
self.epp_xml = EppXml::Keyrelay.new(cl_trid_prefix: current_user.tag)
|
||||
end
|
||||
|
||||
def keyrelay(params) # rubocop:disable Metrics/MethodLength
|
||||
custom_params = {}
|
||||
if params[:legal_document].present?
|
||||
type = params[:legal_document].original_filename.split('.').last.downcase
|
||||
custom_params = {
|
||||
_anonymus: [
|
||||
legalDocument: { value: Base64.encode64(params[:legal_document].read), attrs: { type: type } }
|
||||
]
|
||||
}
|
||||
end
|
||||
|
||||
xml = epp_xml.keyrelay({
|
||||
name: { value: params['domain_name'] },
|
||||
keyData: {
|
||||
flags: { value: params['key_data_flags'] },
|
||||
protocol: { value: params['key_data_protocol'] },
|
||||
alg: { value: params['key_data_alg'] },
|
||||
pubKey: { value: params['key_data_public_key'] }
|
||||
},
|
||||
authInfo: {
|
||||
pw: { value: params['password'] }
|
||||
},
|
||||
expiry: {
|
||||
relative: { value: params['expiry_relative'] },
|
||||
absolute: { value: params['expiry_absolute'] }
|
||||
}
|
||||
}, custom_params)
|
||||
|
||||
current_user.request(xml)
|
||||
end
|
||||
end
|
||||
end
|
92
vendor/gems/depp/app/models/depp/user.rb
vendored
Normal file
92
vendor/gems/depp/app/models/depp/user.rb
vendored
Normal file
|
@ -0,0 +1,92 @@
|
|||
module Depp
|
||||
class User
|
||||
include ActiveModel::Validations
|
||||
include ActiveModel::Conversion
|
||||
extend ActiveModel::Naming
|
||||
|
||||
attr_accessor :tag, :password, :pki
|
||||
|
||||
validates :tag, :password, presence: true
|
||||
|
||||
validate :validate_existance_in_server
|
||||
|
||||
def initialize(args = {})
|
||||
args.each { |k, v| send(k.to_s + '=', v) }
|
||||
end
|
||||
|
||||
def server
|
||||
client_cert = File.read(ENV['cert_path'])
|
||||
client_key = File.read(ENV['key_path'])
|
||||
port = Rails.env.test? ? 701 : ENV['epp_port']
|
||||
|
||||
@server_cache ||= Epp::Server.new({
|
||||
server: ENV['epp_hostname'],
|
||||
tag: tag,
|
||||
password: password,
|
||||
port: port,
|
||||
cert: OpenSSL::X509::Certificate.new(client_cert),
|
||||
key: OpenSSL::PKey::RSA.new(client_key)
|
||||
})
|
||||
end
|
||||
|
||||
def request(xml)
|
||||
Nokogiri::XML(server.request(xml)).remove_namespaces!
|
||||
end
|
||||
|
||||
def repp_request(path, params = {})
|
||||
client_cert = File.read(ENV['cert_path'])
|
||||
client_key = File.read(ENV['key_path'])
|
||||
|
||||
uri = URI.parse("#{ENV['repp_url']}#{path}")
|
||||
uri.query = URI.encode_www_form(params)
|
||||
|
||||
req = Net::HTTP::Get.new(uri)
|
||||
req.basic_auth tag, password
|
||||
|
||||
res = Net::HTTP.start(uri.hostname, uri.port,
|
||||
use_ssl: (uri.scheme == 'https'),
|
||||
verify_mode: OpenSSL::SSL::VERIFY_NONE,
|
||||
cert: OpenSSL::X509::Certificate.new(client_cert),
|
||||
key: OpenSSL::PKey::RSA.new(client_key)
|
||||
) do |http|
|
||||
http.request(req)
|
||||
end
|
||||
|
||||
ret = OpenStruct.new(code: res.code)
|
||||
ret.parsed_body = JSON.parse(res.body) if res.body.present?
|
||||
|
||||
if ret.parsed_body && ret.parsed_body['error']
|
||||
ret.message = ret.parsed_body['error']
|
||||
else
|
||||
ret.message = res.message
|
||||
end
|
||||
|
||||
ret
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def validate_existance_in_server
|
||||
return if errors.any?
|
||||
res = server.open_connection
|
||||
unless Nokogiri::XML(res).css('greeting')
|
||||
errors.add(:base, :failed_to_open_connection_to_epp_server)
|
||||
server.close_connection # just in case
|
||||
return
|
||||
end
|
||||
|
||||
ex = EppXml::Session.new(cl_trid_prefix: tag)
|
||||
xml = ex.login(clID: { value: tag }, pw: { value: password })
|
||||
res = server.send_request(xml)
|
||||
|
||||
if Nokogiri::XML(res).css('result').first['code'] != '1000'
|
||||
errors.add(:base, :authorization_error)
|
||||
end
|
||||
|
||||
server.close_connection
|
||||
|
||||
rescue OpenSSL::SSL::SSLError
|
||||
errors.add(:base, :invalid_cert)
|
||||
end
|
||||
end
|
||||
end
|
24
vendor/gems/depp/app/views/depp/contacts/_form.haml
vendored
Normal file
24
vendor/gems/depp/app/views/depp/contacts/_form.haml
vendored
Normal file
|
@ -0,0 +1,24 @@
|
|||
= form_for(@contact, html: {class: 'form-horizontal js-contact-form'}) do |f|
|
||||
= render 'depp/shared/error_messages', f: f
|
||||
= f.hidden_field :id
|
||||
= f.hidden_field :password
|
||||
.row
|
||||
.col-md-12
|
||||
= render 'depp/contacts/form_partials/general', f: f
|
||||
.row
|
||||
.col-md-12
|
||||
= render 'depp/contacts/form_partials/address', f: f
|
||||
- if !@contact.persisted?
|
||||
.row
|
||||
.col-md-12
|
||||
= render 'depp/contacts/form_partials/code', f: f
|
||||
.row
|
||||
.col-md-12
|
||||
= render 'depp/contacts/form_partials/legal_document', f: f
|
||||
|
||||
.row
|
||||
.col-md-12.text-right
|
||||
- if @contact.persisted?
|
||||
= button_tag(t(:save), class: 'btn btn-primary')
|
||||
- else
|
||||
= button_tag(t(:create), class: 'btn btn-primary')
|
33
vendor/gems/depp/app/views/depp/contacts/check.haml
vendored
Normal file
33
vendor/gems/depp/app/views/depp/contacts/check.haml
vendored
Normal file
|
@ -0,0 +1,33 @@
|
|||
= render 'depp/shared/title', name: t(:contact_info)
|
||||
|
||||
%hr
|
||||
.row
|
||||
.col-md-12
|
||||
= form_tag check_contacts_path, class: 'form-horizontal', method: :get do
|
||||
.col-md-11
|
||||
.form-group
|
||||
= text_field_tag :contacts, params[:contacts], class: 'form-control', autocomplete: 'off'
|
||||
|
||||
.col-md-1.text-right.text-center-xs
|
||||
.form-group
|
||||
.col-md-offset-2.col-md-10
|
||||
%button.btn.btn-primary
|
||||
|
||||
%span.glyphicon.glyphicon-search
|
||||
|
||||
|
||||
- if @contacts
|
||||
%hr
|
||||
.row
|
||||
.col-md-12
|
||||
.table-responsive
|
||||
%table.table.table-hover.table-bordered.table-condensed
|
||||
%thead
|
||||
%tr
|
||||
%th= t('id')
|
||||
%th= t('value')
|
||||
%tbody
|
||||
- @contacts.each do |contact|
|
||||
%tr
|
||||
%td= contact[:id]
|
||||
%td= contact[:reason]
|
18
vendor/gems/depp/app/views/depp/contacts/delete.haml
vendored
Normal file
18
vendor/gems/depp/app/views/depp/contacts/delete.haml
vendored
Normal file
|
@ -0,0 +1,18 @@
|
|||
- if @contact.persisted?
|
||||
= render 'depp/shared/title', name: "#{t(:delete)}: #{@contact.name}"
|
||||
|
||||
= form_for(@contact, class: 'form-horizontal', multipart: true, method: :delete) do |f|
|
||||
= render 'depp/shared/error_messages', f: f
|
||||
= f.hidden_field :id
|
||||
= f.hidden_field :password
|
||||
|
||||
.row
|
||||
.col-md-12
|
||||
= render 'depp/contacts/form_partials/legal_document', f: f
|
||||
|
||||
%hr
|
||||
.row
|
||||
.col-md-12.text-right
|
||||
= button_tag t(:delete), class: 'btn btn-danger'
|
||||
- else
|
||||
%h2= "#{t(:delete)}: #{t(:not_found)}"
|
3
vendor/gems/depp/app/views/depp/contacts/edit.haml
vendored
Normal file
3
vendor/gems/depp/app/views/depp/contacts/edit.haml
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
= render 'depp/shared/title', name: "#{t(:edit)}: #{@contact.name}"
|
||||
|
||||
= render 'form'
|
33
vendor/gems/depp/app/views/depp/contacts/form_partials/_address.haml
vendored
Normal file
33
vendor/gems/depp/app/views/depp/contacts/form_partials/_address.haml
vendored
Normal file
|
@ -0,0 +1,33 @@
|
|||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t(:address)
|
||||
.panel-body
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :street, t(:street) + '*'
|
||||
.col-md-10
|
||||
= f.text_field :street, class: 'form-control'
|
||||
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :city, t(:city) + '*'
|
||||
.col-md-10
|
||||
= f.text_field :city, class: 'form-control'
|
||||
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :zip, t(:zip) + '*'
|
||||
.col-md-10
|
||||
= f.text_field :zip, class: 'form-control'
|
||||
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :state, t(:state)
|
||||
.col-md-10
|
||||
= f.text_field :state, class: 'form-control'
|
||||
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :country_code, t(:country) + '*'
|
||||
.col-md-10
|
||||
= f.select(:country_code, SortedCountry.all_options(f.object.country_code))
|
9
vendor/gems/depp/app/views/depp/contacts/form_partials/_code.haml
vendored
Normal file
9
vendor/gems/depp/app/views/depp/contacts/form_partials/_code.haml
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t(:code)
|
||||
.panel-body
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :code
|
||||
.col-md-10
|
||||
= f.text_field :code, class: 'form-control'
|
41
vendor/gems/depp/app/views/depp/contacts/form_partials/_disclose.haml
vendored
Normal file
41
vendor/gems/depp/app/views/depp/contacts/form_partials/_disclose.haml
vendored
Normal file
|
@ -0,0 +1,41 @@
|
|||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t('contact_disclosure')
|
||||
|
||||
.panel-body
|
||||
.form-group
|
||||
= label_tag :contact_disclose_flag, t('flag_type'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
=# check_box_tag('contact[disclose][sv_policy]', @contact_params[:disclose][:sv_policy], class: 'form-control')
|
||||
= select_tag('contact[disclose][flag]', options_for_select(Depp::Contact::DISCLOSURE_TYPES) )
|
||||
|
||||
.panel-body
|
||||
.form-group
|
||||
= label_tag :contact_disclose_name, t('name'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= check_box_tag('contact[disclose][name]')
|
||||
|
||||
.form-group
|
||||
= label_tag :contact_disclose_email, t('email'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= check_box_tag('contact[disclose][email]')
|
||||
|
||||
.form-group
|
||||
= label_tag :contact_disclose_org_name, t('org_name'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= check_box_tag('contact[disclose][org_name]')
|
||||
|
||||
.form-group
|
||||
= label_tag :contact_disclose_address, t('address'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= check_box_tag('contact[disclose][address]')
|
||||
|
||||
.form-group
|
||||
= label_tag :contact_disclose_voice, t('voice'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= check_box_tag('contact[disclose][voice]')
|
||||
|
||||
.form-group
|
||||
= label_tag :contact_disclose_fax, t('fax'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= check_box_tag('contact[disclose][fax]')
|
50
vendor/gems/depp/app/views/depp/contacts/form_partials/_general.haml
vendored
Normal file
50
vendor/gems/depp/app/views/depp/contacts/form_partials/_general.haml
vendored
Normal file
|
@ -0,0 +1,50 @@
|
|||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t(:ident)
|
||||
.panel-body
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :ident_country_code, t(:country) + '*'
|
||||
.col-md-10
|
||||
= f.select(:ident_country_code, SortedCountry.all_options(f.object.ident_country_code), {},
|
||||
class: 'js-ident-country-code')
|
||||
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :ident_type, t(:type) + '*'
|
||||
.col-md-10
|
||||
= f.select(:ident_type, Depp::Contact::SELECTION_TYPES, { selected: f.object.ident_type },
|
||||
class: 'js-ident-type')
|
||||
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :ident, t(:ident) + '*'
|
||||
.col-md-10
|
||||
= f.text_field :ident, class: 'form-control'
|
||||
- tip_visibility = f.object.ident_type == 'birthday' ? '' : 'display: none'
|
||||
.js-ident-tip{ style: tip_visibility }
|
||||
= t(:birthday_format)
|
||||
|
||||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t(:general)
|
||||
.panel-body
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :name, t(:name) + '*'
|
||||
.col-md-10
|
||||
= f.text_field :name, class: 'form-control'
|
||||
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :email, t(:email) + '*'
|
||||
.col-md-10
|
||||
= f.text_field :email, class: 'form-control'
|
||||
|
||||
.form-group
|
||||
.col-md-2.control-label
|
||||
= f.label :phone, t(:phone) + '*'
|
||||
.col-md-10
|
||||
= f.text_field(:phone, class: 'form-control', placeholder: '+372.12323344')
|
||||
|
||||
|
12
vendor/gems/depp/app/views/depp/contacts/form_partials/_legal_document.haml
vendored
Normal file
12
vendor/gems/depp/app/views/depp/contacts/form_partials/_legal_document.haml
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
.form-group
|
||||
.col-md-10
|
||||
|
||||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t(:legal_document)
|
||||
.panel-body
|
||||
.form-group
|
||||
.col-md-3.control-label
|
||||
= f.label :legal_document, t(:legal_document)
|
||||
.col-md-7
|
||||
= f.file_field :legal_document, :value => ''
|
25
vendor/gems/depp/app/views/depp/contacts/index.haml
vendored
Normal file
25
vendor/gems/depp/app/views/depp/contacts/index.haml
vendored
Normal file
|
@ -0,0 +1,25 @@
|
|||
- content_for :actions do
|
||||
= link_to(t(:new), new_contact_path, class: 'btn btn-primary')
|
||||
= render 'depp/shared/title', name: t(:contacts)
|
||||
|
||||
- if @response
|
||||
.panel.panel-default
|
||||
.table-responsive
|
||||
%table.table.table-hover.table-bordered.table-condensed.domify
|
||||
%thead
|
||||
%tr
|
||||
%th{class: 'col-xs-3'}= t(:name)
|
||||
%th{class: 'col-xs-3'}= t(:code)
|
||||
%th{class: 'col-xs-3'}= t(:ident)
|
||||
%th{class: 'col-xs-3'}= t(:actions)
|
||||
%tbody
|
||||
- @contacts.each do |c|
|
||||
%tr
|
||||
%td= link_to(c[:name], contact_path(id: c[:code]))
|
||||
%td= c[:code]
|
||||
%td= c[:ident]
|
||||
%td
|
||||
= link_to(t(:edit), edit_contact_path(c[:code]), class: 'btn btn-primary btn-xs')
|
||||
= link_to(t(:delete), delete_contact_path(c[:code]), class: 'btn btn-default btn-xs')
|
||||
|
||||
= paginate @paginatable_array
|
19
vendor/gems/depp/app/views/depp/contacts/info_index.haml
vendored
Normal file
19
vendor/gems/depp/app/views/depp/contacts/info_index.haml
vendored
Normal file
|
@ -0,0 +1,19 @@
|
|||
= render 'depp/shared/title', name: t(:contacts_info)
|
||||
|
||||
.row
|
||||
.col-md-12
|
||||
= form_tag contact_path, class: 'form-horizontal', method: :get do
|
||||
.form-group
|
||||
= label_tag :contact_id, t('contact_id'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag :contact_id, params[:contact_id], class: 'form-control', autocomplete: 'off'
|
||||
.form-group
|
||||
= label_tag :password, t('password'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag :password, params[:password], class: 'form-control', autocomplete: 'off'
|
||||
.form-group
|
||||
.col-md-offset-2.col-md-10
|
||||
%button.btn.btn-primary
|
||||
|
||||
%span.glyphicon.glyphicon-search
|
||||
|
3
vendor/gems/depp/app/views/depp/contacts/new.haml
vendored
Normal file
3
vendor/gems/depp/app/views/depp/contacts/new.haml
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
= render 'depp/shared/title', name: t(:new_contact)
|
||||
|
||||
= render 'form'
|
23
vendor/gems/depp/app/views/depp/contacts/partials/_address.haml
vendored
Normal file
23
vendor/gems/depp/app/views/depp/contacts/partials/_address.haml
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
.panel.panel-default
|
||||
.panel-heading
|
||||
%h3.panel-title= t(:address)
|
||||
.panel-body
|
||||
%dl.dl-horizontal
|
||||
- if @contact.org_name.present?
|
||||
%dt= t(:org_name)
|
||||
%dd= @contact.org_name
|
||||
|
||||
%dt= t(:street)
|
||||
%dd= @contact.street
|
||||
|
||||
%dt= t(:city)
|
||||
%dd= @contact.city
|
||||
|
||||
%dt= t(:zip)
|
||||
%dd= @contact.zip
|
||||
|
||||
%dt= t(:state)
|
||||
%dd= @contact.state
|
||||
|
||||
%dt= t(:country)
|
||||
%dd= @contact.country_name
|
10
vendor/gems/depp/app/views/depp/contacts/partials/_disclose.haml
vendored
Normal file
10
vendor/gems/depp/app/views/depp/contacts/partials/_disclose.haml
vendored
Normal file
|
@ -0,0 +1,10 @@
|
|||
- @contact[:disclose].each do |flag, data|
|
||||
- next if data.empty?
|
||||
.panel.panel-default
|
||||
.panel-heading
|
||||
%h3.panel-title= t("disclosure-#{flag}")
|
||||
.panel-body
|
||||
%dl.dl-horizontal
|
||||
- data.each do |k,v|
|
||||
%dt= t(k)
|
||||
|
23
vendor/gems/depp/app/views/depp/contacts/partials/_general.haml
vendored
Normal file
23
vendor/gems/depp/app/views/depp/contacts/partials/_general.haml
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
.panel.panel-default
|
||||
.panel-heading
|
||||
%h3.panel-title= t(:general)
|
||||
.panel-body
|
||||
%dl.dl-horizontal
|
||||
%dt= t(:ident)
|
||||
%dd= ident_for(@contact)
|
||||
|
||||
%br
|
||||
|
||||
%dt= t(:email)
|
||||
%dd= @contact.email
|
||||
|
||||
%dt= t(:phone)
|
||||
%dd= @contact.phone
|
||||
|
||||
%br
|
||||
|
||||
%dt= t(:contact_code)
|
||||
%dd= @contact.id
|
||||
|
||||
%dt= t(:password)
|
||||
%dd= @contact.password
|
16
vendor/gems/depp/app/views/depp/contacts/partials/_statuses.haml
vendored
Normal file
16
vendor/gems/depp/app/views/depp/contacts/partials/_statuses.haml
vendored
Normal file
|
@ -0,0 +1,16 @@
|
|||
.panel.panel-default
|
||||
.panel-heading
|
||||
%h3.panel-title= t(:statuses)
|
||||
.table-responsive
|
||||
%table.table.table-hover.table-bordered.table-condensed
|
||||
%thead
|
||||
%tr
|
||||
%th{class: 'col-xs-6'}= t(:status)
|
||||
%th{class: 'col-xs-6'}= t(:description)
|
||||
%tbody
|
||||
- statuses.each do |s|
|
||||
%tr
|
||||
%td= s.first
|
||||
%td= s.second
|
||||
|
||||
|
16
vendor/gems/depp/app/views/depp/contacts/show.haml
vendored
Normal file
16
vendor/gems/depp/app/views/depp/contacts/show.haml
vendored
Normal file
|
@ -0,0 +1,16 @@
|
|||
- if @contact.id.present?
|
||||
- content_for :actions do
|
||||
= link_to(t(:edit), edit_contact_path(@contact.id), class: 'btn btn-primary')
|
||||
= link_to(t(:delete), delete_contact_path(@contact.id), class: 'btn btn-default')
|
||||
= render 'depp/shared/title', name: truncate(@contact.name)
|
||||
|
||||
.row
|
||||
.col-md-6= render 'depp/contacts/partials/general'
|
||||
.col-md-6= render 'depp/contacts/partials/address'
|
||||
.row
|
||||
.col-md-12= render 'depp/contacts/partials/statuses', statuses: @contact.statuses
|
||||
|
||||
- else
|
||||
.row
|
||||
.col-sm-6
|
||||
%h1= t(:not_found)
|
10
vendor/gems/depp/app/views/depp/domains/_check_form.haml
vendored
Normal file
10
vendor/gems/depp/app/views/depp/domains/_check_form.haml
vendored
Normal file
|
@ -0,0 +1,10 @@
|
|||
= form_tag check_domains_path, class: 'form-horizontal', method: :get do
|
||||
.col-md-11
|
||||
.form-group
|
||||
= text_field_tag :domain_name, params[:domain_name], class: 'form-control', placeholder: t('domain_name'), autocomplete: 'off'
|
||||
.col-md-1.text-right.text-center-xs
|
||||
.form-group
|
||||
%button.btn.btn-primary
|
||||
|
||||
%span.glyphicon.glyphicon-search
|
||||
|
41
vendor/gems/depp/app/views/depp/domains/_form.haml
vendored
Normal file
41
vendor/gems/depp/app/views/depp/domains/_form.haml
vendored
Normal file
|
@ -0,0 +1,41 @@
|
|||
- path = (params[:domain_name]) ? update_domains_path : domains_path
|
||||
= form_tag(path, class: 'form-horizontal', multipart: true) do
|
||||
.row
|
||||
.col-md-12
|
||||
/ Nav tabs
|
||||
%ul.nav.nav-tabs{:role => "tablist", id: 'tabs'}
|
||||
%li.active
|
||||
%a{"data-toggle" => "tab", :href => "#general-tab", :role => "tab"}= t('general')
|
||||
- if params['domain_name']
|
||||
%li
|
||||
%a{"data-toggle" => "tab", :href => "#statuses-tab", :role => "tab"}= t('statuses')
|
||||
/ Tab panes
|
||||
.tab-content
|
||||
#general-tab.tab-pane.active
|
||||
= render 'depp/domains/form_partials/general'
|
||||
= render 'depp/domains/form_partials/contacts'
|
||||
%hr
|
||||
= render 'depp/domains/form_partials/nameservers'
|
||||
%hr
|
||||
= render 'depp/domains/form_partials/dnskeys'
|
||||
- if params['domain_name']
|
||||
#statuses-tab.tab-pane
|
||||
= render 'depp/domains/form_partials/statuses'
|
||||
|
||||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t(:legal_document)
|
||||
.panel-body
|
||||
.form-group
|
||||
= label_tag 'domain[legal_document]', t('legal_document'),class: 'col-md-3 control-label'
|
||||
.col-md-9
|
||||
= file_field_tag 'domain[legal_document]'
|
||||
|
||||
.row
|
||||
.col-md-12.text-right
|
||||
= button_tag(t('shared.save'), class: 'btn btn-primary')
|
||||
|
||||
:javascript
|
||||
$(function () {
|
||||
$('#tabs a:first').tab('show')
|
||||
})
|
25
vendor/gems/depp/app/views/depp/domains/check.haml
vendored
Normal file
25
vendor/gems/depp/app/views/depp/domains/check.haml
vendored
Normal file
|
@ -0,0 +1,25 @@
|
|||
= render 'depp/shared/title', name: t(:check_domain)
|
||||
|
||||
.row
|
||||
.col-md-12
|
||||
= render 'check_form'
|
||||
|
||||
%hr
|
||||
|
||||
.row
|
||||
.col-md-12
|
||||
.panel.panel-default
|
||||
.panel-heading
|
||||
%h3.panel-title= t('result')
|
||||
.panel-body
|
||||
%dl.dl-horizontal
|
||||
%dt= t('name')
|
||||
%dd= @data.css('name').text
|
||||
|
||||
- name = @data.css('name').first
|
||||
%dt= t('available')
|
||||
%dd= name['avail']
|
||||
|
||||
- if @data.css('reason').text.present?
|
||||
%dt= t('reason')
|
||||
%dd= @data.css('reason').text
|
5
vendor/gems/depp/app/views/depp/domains/check_index.haml
vendored
Normal file
5
vendor/gems/depp/app/views/depp/domains/check_index.haml
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
= render 'depp/shared/title', name: t(:check_domain)
|
||||
|
||||
.row
|
||||
.col-md-12
|
||||
= render 'check_form'
|
17
vendor/gems/depp/app/views/depp/domains/delete.haml
vendored
Normal file
17
vendor/gems/depp/app/views/depp/domains/delete.haml
vendored
Normal file
|
@ -0,0 +1,17 @@
|
|||
= render 'depp/shared/title', name: "#{t(:delete)}: #{params[:domain_name]}"
|
||||
|
||||
= form_tag(destroy_domains_path, class: 'form-horizontal', multipart: true, method: :delete) do
|
||||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
= t(:legal_document)
|
||||
.panel-body
|
||||
.form-group
|
||||
.col-md-4.control-label
|
||||
= label_tag 'domain[legal_document]', t('legal_document')
|
||||
.col-md-6
|
||||
= file_field_tag 'domain[legal_document]'
|
||||
= hidden_field_tag 'domain[name]', params[:domain_name]
|
||||
%hr
|
||||
.row
|
||||
.col-md-12.text-right
|
||||
= button_tag t('delete'), class: 'btn btn-danger'
|
4
vendor/gems/depp/app/views/depp/domains/edit.haml
vendored
Normal file
4
vendor/gems/depp/app/views/depp/domains/edit.haml
vendored
Normal file
|
@ -0,0 +1,4 @@
|
|||
= render 'depp/shared/title', name: "#{t(:edit)}: #{params[:domain_name]}"
|
||||
|
||||
%hr
|
||||
= render 'form'
|
24
vendor/gems/depp/app/views/depp/domains/form_partials/_contacts.haml
vendored
Normal file
24
vendor/gems/depp/app/views/depp/domains/form_partials/_contacts.haml
vendored
Normal file
|
@ -0,0 +1,24 @@
|
|||
#domain-contacts
|
||||
- @domain_params['contacts_attributes'].each do |k, v|
|
||||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t('contact')
|
||||
.pull-right
|
||||
= link_to(t('add_another'), '#', class: 'btn btn-primary btn-xs add-domain-contact')
|
||||
= link_to(t('delete'), '#', class: 'btn btn-danger btn-xs destroy')
|
||||
.panel-body
|
||||
.form-group
|
||||
= label_tag "domain_contacts_attributes_#{k}_type", t('contact_type'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= select_tag "domain[contacts_attributes][#{k}][type]", options_for_select(['admin', 'tech'], v['type']), {class: 'form-control'}
|
||||
|
||||
.form-group
|
||||
= label_tag "domain_contacts_attributes_#{k}_code", t('contact_code'), class: 'col-md-2 control-label'
|
||||
.col-md-10.has-feedback
|
||||
= text_field_tag("domain[contacts_attributes][#{k}][code]", v['code'], class: 'form-control', placeholder: t('contact_code'), autocomplete: 'off')
|
||||
:coffee
|
||||
$("#domain-contacts").nestedAttributes
|
||||
bindAddTo: $(".add-domain-contact")
|
||||
afterAdd: (item) ->
|
||||
item.find('select').each (k, v) ->
|
||||
$(v).val($(v).find('option:first-child').val())
|
57
vendor/gems/depp/app/views/depp/domains/form_partials/_dnskeys.haml
vendored
Normal file
57
vendor/gems/depp/app/views/depp/domains/form_partials/_dnskeys.haml
vendored
Normal file
|
@ -0,0 +1,57 @@
|
|||
#dnskeys
|
||||
- @domain_params['dnskeys_attributes'].each do |k, v|
|
||||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t('dnskey')
|
||||
.pull-right
|
||||
= link_to(t('add_another'), '#', class: 'btn btn-primary btn-xs add-dnskey')
|
||||
= link_to(t('delete'), '#', class: 'btn btn-danger btn-xs destroy')
|
||||
.panel-body
|
||||
- if ENV['show_ds_data_fields'] == 'true'
|
||||
.form-group
|
||||
= label_tag "domain_dnskeys_attributes_#{k}_ds_key_tag", t('ds_key_tag'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag "domain[dnskeys_attributes][#{k}][ds_key_tag]", v['ds_key_tag'], {class: 'form-control'}
|
||||
|
||||
.form-group
|
||||
= label_tag "domain_dnskeys_attributes_#{k}_ds_alg", t('ds_algorithm'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= select_tag "domain[dnskeys_attributes][#{k}][ds_alg]", options_for_select(Depp::Dnskey::ALGORITHMS, v['ds_alg']), {class: 'form-control'}
|
||||
|
||||
.form-group
|
||||
= label_tag "domain_dnskeys_attributes_#{k}_ds_digest_type", t('ds_digest_type'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= select_tag "domain[dnskeys_attributes][#{k}][ds_digest_type]", options_for_select(Depp::Dnskey::DS_DIGEST_TYPES, v['ds_digest_type']), {class: 'form-control'}
|
||||
|
||||
.form-group
|
||||
= label_tag "domain_dnskeys_attributes_#{k}_ds_digest", t('ds_digest'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag "domain[dnskeys_attributes][#{k}][ds_digest]", v['ds_digest'], {class: 'form-control'}
|
||||
|
||||
.form-group
|
||||
= label_tag "domain_dnskeys_attributes_#{k}_flags", t('flags'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= select_tag "domain[dnskeys_attributes][#{k}][flags]", options_for_select(Depp::Dnskey::FLAGS, v['flags']), {class: 'form-control'}
|
||||
|
||||
.form-group
|
||||
= label_tag "domain_dnskeys_attributes_#{k}_protocol", t('protocol'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= select_tag "domain[dnskeys_attributes][#{k}][protocol]", options_for_select(Depp::Dnskey::PROTOCOLS, v['protocol']), {class: 'form-control'}
|
||||
|
||||
.form-group
|
||||
= label_tag "domain_dnskeys_attributes_#{k}_alg", t('alg'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= select_tag "domain[dnskeys_attributes][#{k}][alg]", options_for_select(Depp::Dnskey::ALGORITHMS, v['alg']), {class: 'form-control'}
|
||||
|
||||
.form-group
|
||||
= label_tag "domain_dnskeys_attributes_#{k}_public_key", t('public_key'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag "domain[dnskeys_attributes][#{k}][public_key]", v['public_key'], class: 'form-control'
|
||||
:coffee
|
||||
$("#dnskeys").nestedAttributes
|
||||
bindAddTo: $(".add-dnskey")
|
||||
afterAdd: (item) ->
|
||||
item.find('select').each (k, v) ->
|
||||
$(v).val($(v).find('option:first-child').val())
|
||||
|
||||
|
19
vendor/gems/depp/app/views/depp/domains/form_partials/_general.haml
vendored
Normal file
19
vendor/gems/depp/app/views/depp/domains/form_partials/_general.haml
vendored
Normal file
|
@ -0,0 +1,19 @@
|
|||
.general-tab.panel.panel-default
|
||||
.form-group
|
||||
= label_tag :domain_name, t('name'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
- readonly = params[:domain_name] ? true : false
|
||||
= text_field_tag('domain[name]', @domain_params[:name], class: 'form-control', readonly: readonly)
|
||||
|
||||
- unless params[:domain_name]
|
||||
.form-group
|
||||
= label_tag :domain_period, t('period'), class: 'col-md-2 control-label'
|
||||
.col-md-5
|
||||
= text_field_tag('domain[period]', @domain_params[:period], class: 'form-control')
|
||||
.col-md-5
|
||||
= select_tag 'domain[period_unit]', options_for_select(['y', 'm', 'd'], @domain_params[:period_unit]), { class: 'form-control' }
|
||||
|
||||
.form-group
|
||||
= label_tag :domain_registrant, t('registrant'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag('domain[registrant]', @domain_params[:registrant], class: 'form-control', placeholder: t('contact_code'), autocomplete: 'off')
|
24
vendor/gems/depp/app/views/depp/domains/form_partials/_nameservers.haml
vendored
Normal file
24
vendor/gems/depp/app/views/depp/domains/form_partials/_nameservers.haml
vendored
Normal file
|
@ -0,0 +1,24 @@
|
|||
#nameservers
|
||||
- @domain_params['nameservers_attributes'].each do |k, v|
|
||||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t('nameserver')
|
||||
.pull-right
|
||||
= link_to(t('add_another'), '#', class: 'btn btn-primary btn-xs add-nameserver')
|
||||
= link_to(t('delete'), '#', class: 'btn btn-danger btn-xs destroy')
|
||||
.panel-body
|
||||
.form-group
|
||||
= label_tag "domain_nameservers_attributes_#{k}_hostname", t('hostname'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag "domain[nameservers_attributes][#{k}][hostname]", v['hostname'], class: 'form-control'
|
||||
.form-group
|
||||
= label_tag "domain_nameservers_attributes_#{k}_ipv4", t('ipv4'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag "domain[nameservers_attributes][#{k}][ipv4]", v['ipv4'], class: 'form-control'
|
||||
.form-group
|
||||
= label_tag "domain_nameservers_attributes_#{k}_ipv6", t('ipv6'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag "domain[nameservers_attributes][#{k}][ipv6]", v['ipv6'], class: 'form-control'
|
||||
:coffee
|
||||
$("#nameservers").nestedAttributes
|
||||
bindAddTo: $(".add-nameserver")
|
24
vendor/gems/depp/app/views/depp/domains/form_partials/_statuses.haml
vendored
Normal file
24
vendor/gems/depp/app/views/depp/domains/form_partials/_statuses.haml
vendored
Normal file
|
@ -0,0 +1,24 @@
|
|||
#domain-statuses
|
||||
- @domain_params['statuses_attributes'].each do |k, v|
|
||||
%br
|
||||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t('status')
|
||||
.pull-right
|
||||
= link_to(t('add_another'), '#', class: 'btn btn-primary btn-xs add-domain-status')
|
||||
= link_to(t('delete'), '#', class: 'btn btn-danger btn-xs destroy')
|
||||
.panel-body
|
||||
.form-group
|
||||
= label_tag "domain_statuses_attributes_#{k}_code", t('code'),class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= select_tag "domain[statuses_attributes][#{k}][code]", options_for_select(Depp::Domain::DOMAIN_STATUSES, v['code']), {class: 'form-control', prompt: ''}
|
||||
.form-group
|
||||
= label_tag "domain_statuses_attributes_#{k}_description", t('description'),class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag "domain[statuses_attributes][#{k}][description]", v['description'], class: 'form-control', autocomplete: 'off'
|
||||
:coffee
|
||||
$("#domain-statuses").nestedAttributes
|
||||
bindAddTo: $(".add-domain-status")
|
||||
afterAdd: (item) ->
|
||||
item.find('select').each (k, v) ->
|
||||
$(v).val($(v).find('option:first-child').val())
|
47
vendor/gems/depp/app/views/depp/domains/index.haml
vendored
Normal file
47
vendor/gems/depp/app/views/depp/domains/index.haml
vendored
Normal file
|
@ -0,0 +1,47 @@
|
|||
- content_for :actions do
|
||||
= link_to(t(:new), new_domain_path, class: 'btn btn-primary')
|
||||
= link_to(t(:transfer), transfer_domains_path, class: 'btn btn-default')
|
||||
= link_to(t(:keyrelay), keyrelay_path, class: 'btn btn-default')
|
||||
= render 'depp/shared/title', name: t(:domains)
|
||||
|
||||
.row
|
||||
.col-md-12{style: 'margin-bottom: -15px;'}
|
||||
= form_tag info_domains_path, class: 'form-horizontal', method: :get do
|
||||
.col-md-11
|
||||
.form-group
|
||||
= text_field_tag :domain_name, params[:domain_name], class: 'form-control', placeholder: t('domain_name'), autocomplete: 'off', autofocus: true
|
||||
.col-md-1.text-right.text-center-xs
|
||||
.form-group
|
||||
%button.btn.btn-primary
|
||||
|
||||
%span.glyphicon.glyphicon-search
|
||||
|
||||
|
||||
%hr
|
||||
|
||||
- if @response
|
||||
.panel.panel-default
|
||||
.table-responsive
|
||||
%table.table.table-hover.table-bordered.table-condensed.domify
|
||||
%thead
|
||||
%tr
|
||||
%th{class: 'col-xs-3'}= t(:name)
|
||||
%th{class: 'col-xs-6'}= t(:valid)
|
||||
%th{class: 'col-xs-3'}= t(:actions)
|
||||
%tbody
|
||||
- @response['domains'].each do |x|
|
||||
%tr
|
||||
%td= link_to(x['name'], info_domains_path(domain_name: x['name']))
|
||||
%td
|
||||
= Time.parse(x['valid_from']).try(:to_date)
|
||||
\-
|
||||
= Time.parse(x['valid_to']).try(:to_date)
|
||||
%td
|
||||
= link_to(t(:edit), edit_domains_path(domain_name: x['name']),
|
||||
class: 'btn btn-primary btn-xs')
|
||||
= link_to(t(:renew), renew_domains_path(domain_name: x['name']),
|
||||
class: 'btn btn-default btn-xs')
|
||||
= link_to(t(:delete), delete_domains_path(domain_name: x['name']),
|
||||
class: 'btn btn-default btn-xs')
|
||||
|
||||
= paginate @paginatable_array
|
26
vendor/gems/depp/app/views/depp/domains/info.haml
vendored
Normal file
26
vendor/gems/depp/app/views/depp/domains/info.haml
vendored
Normal file
|
@ -0,0 +1,26 @@
|
|||
- content_for :actions do
|
||||
= link_to(t(:edit), edit_domains_path(domain_name: params[:domain_name]),
|
||||
class: 'btn btn-primary')
|
||||
= link_to(t(:renew), renew_domains_path(domain_name: params[:domain_name]),
|
||||
class: 'btn btn-default')
|
||||
= link_to(t(:delete), delete_domains_path(domain_name: params[:domain_name]),
|
||||
class: 'btn btn-default')
|
||||
= render 'depp/shared/title', name: truncate(@data.css('name').text)
|
||||
|
||||
.row
|
||||
.col-sm-12
|
||||
- if @data.css('result').first['code'] == '1000'
|
||||
.row
|
||||
.col-md-12= render 'depp/domains/partials/general'
|
||||
.row
|
||||
.col-md-12= render 'depp/domains/partials/contacts'
|
||||
.row
|
||||
.col-md-12= render 'depp/domains/partials/statuses'
|
||||
.row
|
||||
.col-md-12= render 'depp/domains/partials/nameservers'
|
||||
.row
|
||||
.col-md-12= render 'depp/domains/partials/dnskeys'
|
||||
- else
|
||||
.row
|
||||
.col-sm-6
|
||||
%h1= t(:not_found)
|
3
vendor/gems/depp/app/views/depp/domains/new.haml
vendored
Normal file
3
vendor/gems/depp/app/views/depp/domains/new.haml
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
= render 'depp/shared/title', name: t(:new_domain)
|
||||
|
||||
= render 'form'
|
15
vendor/gems/depp/app/views/depp/domains/partials/_contacts.haml
vendored
Normal file
15
vendor/gems/depp/app/views/depp/domains/partials/_contacts.haml
vendored
Normal file
|
@ -0,0 +1,15 @@
|
|||
#tech_contacts.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
%h3.panel-title= t(:contacts)
|
||||
.table-responsive
|
||||
%table.table.table-hover.table-bordered.table-condensed
|
||||
%thead
|
||||
%tr
|
||||
%th{class: 'col-xs-4'}= t('type')
|
||||
%th{class: 'col-xs-8'}= t('code')
|
||||
%tbody
|
||||
- @data.css('contact').each do |x|
|
||||
%tr
|
||||
%td= x['type']
|
||||
%td= x.text
|
||||
|
33
vendor/gems/depp/app/views/depp/domains/partials/_dnskeys.haml
vendored
Normal file
33
vendor/gems/depp/app/views/depp/domains/partials/_dnskeys.haml
vendored
Normal file
|
@ -0,0 +1,33 @@
|
|||
.panel.panel-default
|
||||
.panel-heading
|
||||
%h3.panel-title= t('dnskeys')
|
||||
.panel-body{style: 'word-wrap: break-word;'}
|
||||
- @data.css('dsData').each do |x|
|
||||
%dl.dl-horizontal
|
||||
- if x.css('keyTag').text.present?
|
||||
%dt= t('ds_key_tag')
|
||||
%dd= x.css('keyTag').text
|
||||
|
||||
- if x.css('alg').first.text.present?
|
||||
%dt= t('ds_algorithm')
|
||||
%dd= x.css('alg').first.text
|
||||
|
||||
- if x.css('digestType').text.present?
|
||||
%dt= t('ds_digest_type')
|
||||
%dd= x.css('digestType').text
|
||||
|
||||
- if x.css('digest').text.present?
|
||||
%dt= t('ds_digest')
|
||||
%dd= x.css('digest').text
|
||||
|
||||
%dt= t('flag')
|
||||
%dd= x.css('flags').text
|
||||
|
||||
%dt= t('protocol')
|
||||
%dd= x.css('protocol').text
|
||||
|
||||
%dt= t('algorithm')
|
||||
%dd= x.css('keyData > alg').text
|
||||
|
||||
%dt= t('public_key')
|
||||
%dd= x.css('pubKey').text
|
22
vendor/gems/depp/app/views/depp/domains/partials/_general.haml
vendored
Normal file
22
vendor/gems/depp/app/views/depp/domains/partials/_general.haml
vendored
Normal file
|
@ -0,0 +1,22 @@
|
|||
.panel.panel-default
|
||||
.panel-heading
|
||||
%h3.panel-title= t(:general)
|
||||
.panel-body
|
||||
%dl.dl-horizontal
|
||||
%dt= t(:password)
|
||||
%dd= @data.css('pw').text
|
||||
|
||||
%dt= t(:registrant)
|
||||
%dd= @data.css('registrant').text
|
||||
|
||||
%dt= t(:registered)
|
||||
%dd= @data.css('crDate').text
|
||||
|
||||
%dt= t(:valid_to)
|
||||
%dd= @data.css('exDate').text
|
||||
|
||||
%dt= t(:created)
|
||||
%dd= @data.css('crDate').text
|
||||
|
||||
%dt= t(:updated)
|
||||
%dd= @data.css('upDate').text
|
17
vendor/gems/depp/app/views/depp/domains/partials/_nameservers.haml
vendored
Normal file
17
vendor/gems/depp/app/views/depp/domains/partials/_nameservers.haml
vendored
Normal file
|
@ -0,0 +1,17 @@
|
|||
#nameservers.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
%h3.panel-title= t(:nameservers)
|
||||
.table-responsive
|
||||
%table.table.table-hover.table-bordered.table-condensed
|
||||
%thead
|
||||
%tr
|
||||
%th{class: 'col-xs-4'}= t('hostname')
|
||||
%th{class: 'col-xs-4'}= t('ipv4')
|
||||
%th{class: 'col-xs-4'}= t('ipv6')
|
||||
%tbody
|
||||
- @data.css('hostAttr').each do |x|
|
||||
%tr
|
||||
%td= x.css('hostName').text
|
||||
%td= x.css('hostAddr[ip="v4"]').text
|
||||
%td= x.css('hostAddr[ip="v6"]').text
|
||||
|
14
vendor/gems/depp/app/views/depp/domains/partials/_statuses.haml
vendored
Normal file
14
vendor/gems/depp/app/views/depp/domains/partials/_statuses.haml
vendored
Normal file
|
@ -0,0 +1,14 @@
|
|||
#domain_statuses.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
%h3.panel-title= t(:statuses)
|
||||
.table-responsive
|
||||
%table.table.table-hover.table-bordered.table-condensed
|
||||
%thead
|
||||
%tr
|
||||
%th{class: 'col-xs-6'}= t('status')
|
||||
%th{class: 'col-xs-6'}= t('description')
|
||||
%tbody
|
||||
- @data.css('status').each do |x|
|
||||
%tr
|
||||
%td= x['s']
|
||||
%td= x.text
|
14
vendor/gems/depp/app/views/depp/domains/renew.haml
vendored
Normal file
14
vendor/gems/depp/app/views/depp/domains/renew.haml
vendored
Normal file
|
@ -0,0 +1,14 @@
|
|||
= render 'depp/shared/title', name: t(:renew_domain)
|
||||
|
||||
.row
|
||||
.col-md-12
|
||||
.panel.panel-default
|
||||
.panel-heading
|
||||
%h3.panel-title= t('result')
|
||||
.panel-body
|
||||
%dl.dl-horizontal
|
||||
%dt= t('domain_name')
|
||||
%dd= @data.css('name').text
|
||||
|
||||
%dt= t('valid_to')
|
||||
%dd= @data.css('exDate').text
|
22
vendor/gems/depp/app/views/depp/domains/renew_index.haml
vendored
Normal file
22
vendor/gems/depp/app/views/depp/domains/renew_index.haml
vendored
Normal file
|
@ -0,0 +1,22 @@
|
|||
= render 'depp/shared/title', name: t(:renew_domain)
|
||||
|
||||
.row
|
||||
.col-md-12
|
||||
= form_tag renew_domains_path, class: 'form-horizontal', method: :get do
|
||||
.form-group
|
||||
= label_tag :domain_name, t('name'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag :domain_name, params[:domain_name], class: 'form-control', placeholder: t('domain_name'), autocomplete: 'off'
|
||||
.form-group
|
||||
= label_tag :cur_exp_date, t('cur_exp_date'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag :cur_exp_date, params[:cur_exp_date], class: 'form-control', placeholder: 'yyyy-mm-dd', autocomplete: 'off'
|
||||
.form-group
|
||||
= label_tag :domain_period, t('period'), class: 'col-md-2 control-label'
|
||||
.col-md-5
|
||||
= text_field_tag(:period, params[:period], class: 'form-control')
|
||||
.col-md-5
|
||||
= select_tag :period_unit, options_for_select(['y', 'm', 'd'], params[:period_unit]), { class: 'form-control' }
|
||||
.form-group
|
||||
.col-md-offset-2.col-md-10
|
||||
%button.btn.btn-primary= t('renew')
|
16
vendor/gems/depp/app/views/depp/domains/transfer.haml
vendored
Normal file
16
vendor/gems/depp/app/views/depp/domains/transfer.haml
vendored
Normal file
|
@ -0,0 +1,16 @@
|
|||
= render 'depp/shared/title', name: t(:transfer_domain)
|
||||
|
||||
.row
|
||||
.col-md-12
|
||||
.panel.panel-default
|
||||
.panel-heading
|
||||
%h3.panel-title= t('result')
|
||||
.panel-body
|
||||
%dl.dl-horizontal
|
||||
%dt= t('domain_name')
|
||||
%dd= @data.css('name').text
|
||||
|
||||
- @data.css('trnData').children.each do |x|
|
||||
- next if x.blank?
|
||||
%dt= t(x.name)
|
||||
%dd= x.text
|
22
vendor/gems/depp/app/views/depp/domains/transfer_index.haml
vendored
Normal file
22
vendor/gems/depp/app/views/depp/domains/transfer_index.haml
vendored
Normal file
|
@ -0,0 +1,22 @@
|
|||
= render 'depp/shared/title', name: t(:transfer_domain)
|
||||
|
||||
.row
|
||||
.col-md-12
|
||||
= form_tag transfer_domains_path, class: 'form-horizontal', method: :post, multipart: true do
|
||||
.form-group
|
||||
= label_tag :domain_name, t('name'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag :domain_name, params[:domain_name], class: 'form-control', placeholder: t('domain_name'), autocomplete: 'off', autofocus: true
|
||||
.form-group
|
||||
= label_tag :password, t('password'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag :password, params[:password], class: 'form-control', autocomplete: 'off'
|
||||
.form-group
|
||||
= label_tag 'legal_document', t('legal_document'),class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= file_field_tag 'legal_document'
|
||||
.form-group
|
||||
.col-md-offset-2.col-md-10
|
||||
%button.btn.btn-primary{ name: 'query' }= t('query')
|
||||
%button.btn.btn-primary{ name: 'approve' }= t('approve')
|
||||
%button.btn.btn-primary{ name: 'reject' }= t('reject')
|
55
vendor/gems/depp/app/views/depp/keyrelays/show.haml
vendored
Normal file
55
vendor/gems/depp/app/views/depp/keyrelays/show.haml
vendored
Normal file
|
@ -0,0 +1,55 @@
|
|||
.row
|
||||
.col-sm-12
|
||||
%h2.text-center-xs= t('keyrelay')
|
||||
%hr
|
||||
.row
|
||||
.col-md-12
|
||||
= form_tag keyrelay_path, class: 'form-horizontal', method: :post, multipart: true do
|
||||
.form-group
|
||||
= label_tag :domain_name, t('domain_name'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag :domain_name, params[:domain_name], class: 'form-control', autocomplete: 'off'
|
||||
|
||||
.form-group
|
||||
= label_tag :password, t('password'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag :password, params[:password], class: 'form-control', autocomplete: 'off'
|
||||
|
||||
.form-group
|
||||
= label_tag :expiry_relative, t('expiry_relative'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag :expiry_relative, params[:expiry_relative], class: 'form-control', autocomplete: 'off'
|
||||
|
||||
.form-group
|
||||
= label_tag :expiry_absolute, t('expiry_absolute'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag :expiry_absolute, params[:expiry_absolute], class: 'form-control', autocomplete: 'off'
|
||||
|
||||
.form-group
|
||||
= label_tag :key_data_flags, t('flag'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= select_tag :key_data_flags, options_for_select(Depp::Dnskey::FLAGS, params['key_data_flags']), {class: 'form-control'}
|
||||
|
||||
.form-group
|
||||
= label_tag :key_data_protocol, t('protocol'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= select_tag :key_data_protocol, options_for_select(Depp::Dnskey::PROTOCOLS, params['key_data_protocol']), {class: 'form-control'}
|
||||
|
||||
.form-group
|
||||
= label_tag :key_data_alg, t('algorithm'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= select_tag :key_data_alg, options_for_select(Depp::Dnskey::ALGORITHMS, params['key_data_alg']), {class: 'form-control'}
|
||||
|
||||
.form-group
|
||||
= label_tag :key_data_public_key, t('public_key'), class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= text_field_tag :key_data_public_key, params['key_data_public_key'], class: 'form-control'
|
||||
|
||||
.form-group
|
||||
= label_tag :legal_document, t('legal_document'),class: 'col-md-2 control-label'
|
||||
.col-md-10
|
||||
= file_field_tag :legal_document
|
||||
|
||||
.form-group
|
||||
.col-md-offset-2.col-md-10
|
||||
%button.btn.btn-primary= t('upload_key')
|
89
vendor/gems/depp/app/views/depp/polls/show.haml
vendored
Normal file
89
vendor/gems/depp/app/views/depp/polls/show.haml
vendored
Normal file
|
@ -0,0 +1,89 @@
|
|||
- if @data.css('msgQ').any?
|
||||
- msg_q = @data.css('msgQ').first
|
||||
.row
|
||||
.col-sm-12
|
||||
%h2= t('messages', count: msg_q['count'])
|
||||
%hr
|
||||
.row
|
||||
.col-md-12
|
||||
.panel.panel-default
|
||||
.panel-heading.clearfix
|
||||
.pull-left= t('message_no', id: msg_q['id'])
|
||||
.pull-right
|
||||
- if @data.css('panData').any? # this is a keyrelay request
|
||||
= link_to(t('confirm'), 'javascript: void(0);', class: 'btn btn-primary btn-xs js-keyrelay-confirm')
|
||||
- if @data.css('trnData trStatus').any? # this is a transfer request
|
||||
- unless ['serverApproved', 'clientApproved'].include?(@data.css('trStatus').first.text)
|
||||
= link_to(t('confirm'), 'javascript: void(0);', class: 'btn btn-primary btn-xs js-transfer-confirm')
|
||||
= link_to(t('dequeue'), poll_path(id: msg_q['id']), method: :delete, class: 'btn btn-primary btn-xs')
|
||||
.panel-body
|
||||
%dl.dl-horizontal
|
||||
%dt= t('message')
|
||||
%dd= msg_q.css('msg').text
|
||||
|
||||
%dt= t('queue_date')
|
||||
%dd= @data.css('qDate').text
|
||||
|
||||
%dl.dl-horizontal
|
||||
/ keyrelay
|
||||
- if @data.css('panData').any?
|
||||
%dt= t('domain_name')
|
||||
%dd= @data.css('name').text
|
||||
|
||||
%dt= t('password')
|
||||
%dd= @data.css('pw').text
|
||||
|
||||
- if @data.css('relative').text.present?
|
||||
%dt= t('expiry_relative')
|
||||
%dd= @data.css('relative').text
|
||||
|
||||
- if @data.css('absolute').text.present?
|
||||
%dt= t('expiry_absolute')
|
||||
%dd= @data.css('absolute').text
|
||||
|
||||
%dt paDate
|
||||
%dd= @data.css('paDate').text
|
||||
|
||||
%dt= t('flag')
|
||||
%dd= @data.css('flags').text
|
||||
|
||||
%dt= t('protocol')
|
||||
%dd= @data.css('protocol').text
|
||||
|
||||
%dt= t('algorithm')
|
||||
%dd= @data.css('alg').text
|
||||
|
||||
%dt= t('public_key')
|
||||
%dd= @data.css('pubKey').text
|
||||
|
||||
= form_tag confirm_keyrelay_poll_path, class: 'js-keyrelay-form' do
|
||||
= hidden_field_tag 'domain[name]', @data.css('name').text
|
||||
= hidden_field_tag 'domain[dnskeys_attributes][0][flags]', @data.css('flags').text
|
||||
= hidden_field_tag 'domain[dnskeys_attributes][0][protocol]', @data.css('protocol').text
|
||||
= hidden_field_tag 'domain[dnskeys_attributes][0][alg]', @data.css('alg').text
|
||||
= hidden_field_tag 'domain[dnskeys_attributes][0][public_key]', @data.css('pubKey').text
|
||||
|
||||
- else
|
||||
- if @data.css('trnData trStatus').any? # this is a transfer request
|
||||
= form_tag confirm_transfer_poll_path, class: 'js-transfer-form' do
|
||||
= hidden_field_tag 'domain[name]', @data.css('name').text
|
||||
|
||||
- @data.css('trnData').children.each do |x|
|
||||
- next if x.blank?
|
||||
%dt= t(x.name)
|
||||
%dd= x.text
|
||||
- else
|
||||
.row
|
||||
.col-sm-12
|
||||
%h2= t('messages', count: 0)
|
||||
%hr
|
||||
.row
|
||||
.col-md-12
|
||||
%p.bg-info{style: 'padding: 15px;'}= t('you_have_no_new_messages')
|
||||
|
||||
:coffee
|
||||
$(".js-keyrelay-confirm").on "click", ->
|
||||
$(".js-keyrelay-form").submit()
|
||||
|
||||
$(".js-transfer-confirm").on "click", ->
|
||||
$(".js-transfer-form").submit()
|
29
vendor/gems/depp/app/views/depp/shared/_epp_results.haml
vendored
Normal file
29
vendor/gems/depp/app/views/depp/shared/_epp_results.haml
vendored
Normal file
|
@ -0,0 +1,29 @@
|
|||
- if @data && @data.css('result')
|
||||
- @results ||= @data.css('result')
|
||||
|
||||
- if @results || flash[:epp_results]
|
||||
- success_codes = %(1000, 1300, 1301, 200)
|
||||
|
||||
- if @results
|
||||
- @results.each do |x|
|
||||
- next if success_codes.include?(x['code'])
|
||||
.row
|
||||
.col-md-12
|
||||
%p{class: "alert alert-danger"}
|
||||
= x.css('msg').text.split('[').first
|
||||
- if x.css('value').text.present?
|
||||
= " - #{x.css('value').text}"
|
||||
%span.pull-right
|
||||
= "[code: #{x['code']}]"
|
||||
|
||||
- if flash[:epp_results]
|
||||
- flash[:epp_results].each do |x|
|
||||
- next if success_codes.include?(x['code'])
|
||||
.row
|
||||
.col-md-12
|
||||
%p{class: "alert alert-danger"}
|
||||
= x['msg'].split('[').first
|
||||
- if x['value'].present?
|
||||
= " - #{x['value']}"
|
||||
%span.pull-right
|
||||
= "[code: #{x['code']}]"
|
5
vendor/gems/depp/app/views/depp/shared/_error_messages.haml
vendored
Normal file
5
vendor/gems/depp/app/views/depp/shared/_error_messages.haml
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
- if f.object.errors.present?
|
||||
.alert.alert-warning
|
||||
%ul
|
||||
- f.object.errors.messages.each do |message|
|
||||
%li= message.second.first.split('[').first
|
5
vendor/gems/depp/app/views/depp/shared/_errors.haml
vendored
Normal file
5
vendor/gems/depp/app/views/depp/shared/_errors.haml
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
- if object.errors.any?
|
||||
%p.text-danger
|
||||
- object.errors.each do |attr, err|
|
||||
= err
|
||||
%br
|
4
vendor/gems/depp/app/views/depp/shared/_flash.haml
vendored
Normal file
4
vendor/gems/depp/app/views/depp/shared/_flash.haml
vendored
Normal file
|
@ -0,0 +1,4 @@
|
|||
- if flash[:notice].present? || flash[:alert].present?
|
||||
#flash
|
||||
- type = (flash[:notice]) ? 'bg-success' : 'bg-danger'
|
||||
.alert{class: type}= flash[:notice] || flash[:alert]
|
4
vendor/gems/depp/app/views/depp/shared/_flash_messages.haml
vendored
Normal file
4
vendor/gems/depp/app/views/depp/shared/_flash_messages.haml
vendored
Normal file
|
@ -0,0 +1,4 @@
|
|||
- display = (flash.empty?) ? 'none' : 'block'
|
||||
#flash{style: "display: #{display};"}
|
||||
- type = (flash[:notice]) ? 'bg-success' : 'bg-danger'
|
||||
.alert{class: type}= flash[:notice] || flash[:alert]
|
13
vendor/gems/depp/app/views/depp/shared/_nav.haml
vendored
Normal file
13
vendor/gems/depp/app/views/depp/shared/_nav.haml
vendored
Normal file
|
@ -0,0 +1,13 @@
|
|||
- content_for :tabs do
|
||||
.container.subnav
|
||||
%ul.nav.nav-tabs.navbar-right
|
||||
%li{role: :presentation, class: active == :domains ? 'active' : ''}
|
||||
= link_to t(:all), domains_path
|
||||
%li{role: :presentation, class: active == :new ? 'active' : ''}
|
||||
= link_to t(:new), new_domain_path
|
||||
%li{role: :presentation, class: active == :check ? 'active' : ''}
|
||||
= link_to t(:check), check_domains_path
|
||||
%li{role: :presentation, class: active == :transfer ? 'active' : ''}
|
||||
= link_to t(:transfer), transfer_domains_path
|
||||
%li{role: :presentation, class: active == :keyrelay ? 'active' : ''}
|
||||
= link_to t(:keyrelay), keyrelay_path
|
9
vendor/gems/depp/app/views/depp/shared/_title.haml
vendored
Normal file
9
vendor/gems/depp/app/views/depp/shared/_title.haml
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
- content_for :window_title do
|
||||
%title= name
|
||||
|
||||
.row.title-row
|
||||
.col-sm-6
|
||||
%h1= name
|
||||
.col-sm-6
|
||||
.top-actions
|
||||
= yield :actions
|
12
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/check.xml
vendored
Normal file
12
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/check.xml
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<check>
|
||||
<contact:check
|
||||
xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
|
||||
<contact:id>sh8013</contact:id>
|
||||
</contact:check>
|
||||
</check>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
14
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/check_multiple.xml
vendored
Normal file
14
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/check_multiple.xml
vendored
Normal file
|
@ -0,0 +1,14 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<check>
|
||||
<contact:check
|
||||
xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
|
||||
<contact:id>sh8013</contact:id>
|
||||
<contact:id>sh13</contact:id>
|
||||
<contact:id>vsdfvq</contact:id>
|
||||
</contact:check>
|
||||
</check>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
34
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/create.xml
vendored
Normal file
34
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/create.xml
vendored
Normal file
|
@ -0,0 +1,34 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<create>
|
||||
<contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
|
||||
<contact:postalInfo>
|
||||
<contact:name>Sillius Soddus</contact:name>
|
||||
<contact:addr>
|
||||
<contact:street>123 Example Dr.</contact:street>
|
||||
<contact:street>Suite 100</contact:street>
|
||||
<contact:street/>
|
||||
<contact:city>Megaton</contact:city>
|
||||
<contact:sp>F3 </contact:sp>
|
||||
<contact:pc>201-33</contact:pc>
|
||||
<contact:cc>EE</contact:cc>
|
||||
</contact:addr>
|
||||
</contact:postalInfo>
|
||||
<contact:voice>+372.1234567</contact:voice>
|
||||
<contact:email>example@test.example</contact:email>
|
||||
</contact:create>
|
||||
</create>
|
||||
<extension>
|
||||
<eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
|
||||
<eis:ident type="bic" cc="EE">
|
||||
123
|
||||
</eis:ident>
|
||||
<eis:legalDocument type="pdf">
|
||||
JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp==
|
||||
</eis:legalDocument>
|
||||
</eis:extdata>
|
||||
</extension>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
22
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/delete.xml
vendored
Normal file
22
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/delete.xml
vendored
Normal file
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<delete>
|
||||
<contact:delete
|
||||
xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
|
||||
<contact:id>sh8013</contact:id>
|
||||
<contact:authInfo>
|
||||
<contact:pw>wrong-one</contact:pw>
|
||||
</contact:authInfo>
|
||||
</contact:delete>
|
||||
</delete>
|
||||
<extension>
|
||||
<eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
|
||||
<eis:legalDocument type="pdf">
|
||||
JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp==
|
||||
</eis:legalDocument>
|
||||
</eis:extdata>
|
||||
</extension>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
14
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/info.xml
vendored
Normal file
14
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/info.xml
vendored
Normal file
|
@ -0,0 +1,14 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<info>
|
||||
<contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
|
||||
<contact:id>sh8013</contact:id>
|
||||
<contact:authInfo>
|
||||
<contact:pw>Aas34fq</contact:pw>
|
||||
</contact:authInfo>
|
||||
</contact:info>
|
||||
</info>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
36
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/update_chg.xml
vendored
Normal file
36
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/contact/update_chg.xml
vendored
Normal file
|
@ -0,0 +1,36 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<update>
|
||||
<contact:update xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
|
||||
<contact:id>sh8013</contact:id>
|
||||
<contact:chg>
|
||||
<contact:postalInfo>
|
||||
<contact:name>John Doe</contact:name>
|
||||
<contact:addr>
|
||||
<contact:street>123 Example Dr.</contact:street>
|
||||
<contact:street>Suite 100</contact:street>
|
||||
<contact:city>Dulles</contact:city>
|
||||
<contact:sp>VA</contact:sp>
|
||||
<contact:pc>20166-6503</contact:pc>
|
||||
<contact:cc>EE</contact:cc>
|
||||
</contact:addr>
|
||||
</contact:postalInfo>
|
||||
<contact:voice>+123.7035555555</contact:voice>
|
||||
<contact:email>jdoe@example.com</contact:email>
|
||||
</contact:chg>
|
||||
<contact:authInfo>
|
||||
<contact:pw>2fooBAR</contact:pw>
|
||||
</contact:authInfo>
|
||||
</contact:update>
|
||||
</update>
|
||||
<extension>
|
||||
<eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
|
||||
<eis:legalDocument type="pdf">
|
||||
JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp==
|
||||
</eis:legalDocument>
|
||||
</eis:extdata>
|
||||
</extension>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
12
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/check.xml
vendored
Normal file
12
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/check.xml
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<check>
|
||||
<domain:check
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.ee</domain:name>
|
||||
</domain:check>
|
||||
</check>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
44
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/create.xml
vendored
Normal file
44
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/create.xml
vendored
Normal file
|
@ -0,0 +1,44 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<create>
|
||||
<domain:create
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.ee</domain:name>
|
||||
<domain:period unit="y">1</domain:period>
|
||||
<domain:ns>
|
||||
<domain:hostAttr>
|
||||
<domain:hostName>ns1.example.net</domain:hostName>
|
||||
</domain:hostAttr>
|
||||
<domain:hostAttr>
|
||||
<domain:hostName>ns2.example.net</domain:hostName>
|
||||
<domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
|
||||
<domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
|
||||
</domain:hostAttr>
|
||||
</domain:ns>
|
||||
<domain:registrant>jd1234</domain:registrant>
|
||||
<domain:contact type="admin">sh8013</domain:contact>
|
||||
<domain:contact type="tech">sh8013</domain:contact>
|
||||
<domain:contact type="tech">sh801333</domain:contact>
|
||||
</domain:create>
|
||||
</create>
|
||||
<extension>
|
||||
<secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
|
||||
<secDNS:keyData>
|
||||
<secDNS:flags>257</secDNS:flags>
|
||||
<secDNS:protocol>3</secDNS:protocol>
|
||||
<secDNS:alg>8</secDNS:alg>
|
||||
<secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
|
||||
</secDNS:keyData>
|
||||
</secDNS:create>
|
||||
</extension>
|
||||
<extension>
|
||||
<eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
|
||||
<eis:legalDocument type="pdf">
|
||||
JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp==
|
||||
</eis:legalDocument>
|
||||
</eis:extdata>
|
||||
</extension>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
19
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/delete.xml
vendored
Normal file
19
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/delete.xml
vendored
Normal file
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<delete>
|
||||
<domain:delete
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.ee</domain:name>
|
||||
</domain:delete>
|
||||
</delete>
|
||||
<extension>
|
||||
<eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
|
||||
<eis:legalDocument type="pdf">
|
||||
JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp==
|
||||
</eis:legalDocument>
|
||||
</eis:extdata>
|
||||
</extension>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
15
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/info.xml
vendored
Normal file
15
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/info.xml
vendored
Normal file
|
@ -0,0 +1,15 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<info>
|
||||
<domain:info
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name hosts="all">example.ee</domain:name>
|
||||
<domain:authInfo>
|
||||
<domain:pw>2fooBAR</domain:pw>
|
||||
</domain:authInfo>
|
||||
</domain:info>
|
||||
</info>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
14
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/renew.xml
vendored
Normal file
14
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/renew.xml
vendored
Normal file
|
@ -0,0 +1,14 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<renew>
|
||||
<domain:renew
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.ee</domain:name>
|
||||
<domain:curExpDate>2014-08-07</domain:curExpDate>
|
||||
<domain:period unit="y">1</domain:period>
|
||||
</domain:renew>
|
||||
</renew>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
22
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/transfer.xml
vendored
Normal file
22
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/transfer.xml
vendored
Normal file
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<transfer op="query">
|
||||
<domain:transfer
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.ee</domain:name>
|
||||
<domain:authInfo>
|
||||
<domain:pw roid="JD1234-REP">2BARfoo</domain:pw>
|
||||
</domain:authInfo>
|
||||
</domain:transfer>
|
||||
</transfer>
|
||||
<extension>
|
||||
<eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
|
||||
<eis:legalDocument type="pdf">
|
||||
JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp==
|
||||
</eis:legalDocument>
|
||||
</eis:extdata>
|
||||
</extension>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
48
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/update.xml
vendored
Normal file
48
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/domain/update.xml
vendored
Normal file
|
@ -0,0 +1,48 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
|
||||
<command>
|
||||
<update>
|
||||
<domain:update
|
||||
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
|
||||
<domain:name>example.ee</domain:name>
|
||||
<domain:chg>
|
||||
<domain:registrant>mak21</domain:registrant>
|
||||
</domain:chg>
|
||||
<domain:add>
|
||||
<domain:ns>
|
||||
<domain:hostObj>ns1.example.com</domain:hostObj>
|
||||
<domain:hostObj>ns2.example.com</domain:hostObj>
|
||||
</domain:ns>
|
||||
<domain:contact type="tech">mak21</domain:contact>
|
||||
<domain:status s="clientHold"
|
||||
lang="en">Payment overdue.</domain:status>
|
||||
<domain:status s="clientUpdateProhibited"/>
|
||||
</domain:add>
|
||||
<domain:rem>
|
||||
<domain:ns>
|
||||
<domain:hostObj>ns1.example.com</domain:hostObj>
|
||||
</domain:ns>
|
||||
<domain:contact type="tech">mak21</domain:contact>
|
||||
<domain:status s="clientHold"/>
|
||||
</domain:rem>
|
||||
</domain:update>
|
||||
</update>
|
||||
<extension>
|
||||
<secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
|
||||
<secDNS:rem>
|
||||
<secDNS:keyData>
|
||||
<secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
|
||||
</secDNS:keyData>
|
||||
</secDNS:rem>
|
||||
</secDNS:update>
|
||||
</extension>
|
||||
<extension>
|
||||
<eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
|
||||
<eis:legalDocument type="pdf">
|
||||
JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp==
|
||||
</eis:legalDocument>
|
||||
</eis:extdata>
|
||||
</extension>
|
||||
<clTRID>ABC-12345</clTRID>
|
||||
</command>
|
||||
</epp>
|
24
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/keyrelay/keyrelay.xml
vendored
Normal file
24
vendor/gems/depp/app/views/depp/xml_consoles/epp_requests/keyrelay/keyrelay.xml
vendored
Normal file
|
@ -0,0 +1,24 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1" xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xmlns:ext="urn:ietf:params:xml:ns:keyrelay-1.0">
|
||||
<command>
|
||||
<ext:keyrelay>
|
||||
<ext:name>example6.ee</ext:name>
|
||||
<ext:keyData>
|
||||
<secDNS:flags>256</secDNS:flags>
|
||||
<secDNS:protocol>3</secDNS:protocol>
|
||||
<secDNS:alg>8</secDNS:alg>
|
||||
<secDNS:pubKey>cmlraXN0aGViZXN0</secDNS:pubKey>
|
||||
</ext:keyData>
|
||||
<ext:authInfo>
|
||||
<domain:pw>7521f360ae480e67c3096e4c046beb84</domain:pw>
|
||||
</ext:authInfo>
|
||||
<ext:expiry>
|
||||
<ext:relative>P1D</ext:relative>
|
||||
</ext:expiry>
|
||||
</ext:keyrelay>
|
||||
<eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
|
||||
<eis:legalDocument type="pdf">JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp==</eis:legalDocument>
|
||||
</eis:extdata>
|
||||
<ext:clTRID>1422542244</ext:clTRID>
|
||||
</command>
|
||||
</epp>
|
66
vendor/gems/depp/app/views/depp/xml_consoles/show.haml
vendored
Normal file
66
vendor/gems/depp/app/views/depp/xml_consoles/show.haml
vendored
Normal file
|
@ -0,0 +1,66 @@
|
|||
.row
|
||||
.col-md-8
|
||||
= form_tag(xml_console_path) do
|
||||
.form-group
|
||||
= text_area_tag(:payload, params[:payload], class: 'form-control', rows: 15, style: 'font-family:monospace; font-size: 11px;')
|
||||
|
||||
= button_tag t('send_epp_request'), class: 'btn btn-default'
|
||||
.col-md-4
|
||||
%h4 Domain
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'domain', epp_action: 'create'}}
|
||||
Create
|
||||
,
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'domain', epp_action: 'update'}}
|
||||
Update
|
||||
,
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'domain', epp_action: 'info'}}
|
||||
Info
|
||||
,
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'domain', epp_action: 'renew'}}
|
||||
Renew
|
||||
,
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'domain', epp_action: 'check'}}
|
||||
Check
|
||||
,
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'domain', epp_action: 'transfer'}}
|
||||
Transfer
|
||||
,
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'domain', epp_action: 'delete'}}
|
||||
Delete
|
||||
|
||||
%h4 Keyrelay
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'keyrelay', epp_action: 'keyrelay'}}
|
||||
Keyrelay
|
||||
|
||||
%h4 Contact
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'contact', epp_action: 'create'}}
|
||||
Create
|
||||
,
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'contact', epp_action: 'check'}}
|
||||
Check
|
||||
,
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'contact', epp_action: 'check_multiple'}}
|
||||
Check(multiple)
|
||||
,
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'contact', epp_action: 'delete'}}
|
||||
Delete
|
||||
,
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'contact', epp_action: 'info'}}
|
||||
Info
|
||||
,
|
||||
%a.js-load-xml{href: 'javascript:void(0)', data: {obj: 'contact', epp_action: 'update_chg'}}
|
||||
Update(chg)
|
||||
|
||||
- if @result
|
||||
%hr
|
||||
.row
|
||||
.col-md-12
|
||||
= preserve do
|
||||
= CodeRay.scan(@result.to_s.force_encoding("UTF-8"), :xml).div().html_safe
|
||||
|
||||
:javascript
|
||||
$('.js-load-xml').click(function() {
|
||||
$.get('xml_console/load_xml', {obj: $(this).data('obj'), epp_action: $(this).data('epp-action')}, function(data) {
|
||||
$('textarea[name="payload"]').html(data);
|
||||
});
|
||||
});
|
42
vendor/gems/depp/app/views/layouts/depp/application.haml
vendored
Normal file
42
vendor/gems/depp/app/views/layouts/depp/application.haml
vendored
Normal file
|
@ -0,0 +1,42 @@
|
|||
%html{lang: I18n.locale.to_s}
|
||||
%head
|
||||
%meta{charset: "utf-8"}/
|
||||
%meta{content: "IE=edge", "http-equiv" => "X-UA-Compatible"}/
|
||||
%meta{content: "width=device-width, initial-scale=1", name: "viewport"}/
|
||||
%meta{content: "EPP-Client", name: "description"}/
|
||||
%meta{content: "Gitlab LTD", name: "author"}/
|
||||
= csrf_meta_tags
|
||||
= stylesheet_link_tag 'depp/application', media: 'all', 'data-turbolinks-track' => true
|
||||
= javascript_include_tag 'depp/application', 'data-turbolinks-track' => true
|
||||
= favicon_link_tag 'favicon.ico'
|
||||
= yield :window_title
|
||||
%body{:style => env_style}
|
||||
/ Static navbar
|
||||
.navbar.navbar-default.navbar-static-top{role: "navigation"}
|
||||
.container
|
||||
.navbar-header
|
||||
%button.navbar-toggle{"data-target" => ".navbar-collapse", "data-toggle" => "collapse", type: "button"}
|
||||
%span.sr-only Toggle navigation
|
||||
%span.icon-bar
|
||||
%span.icon-bar
|
||||
%span.icon-bar
|
||||
= link_to 'EPP Client', root_path, class: 'navbar-brand'
|
||||
.navbar-collapse.collapse
|
||||
%ul.nav.navbar-nav
|
||||
- active_class = %w(domains check renew tranfer keyrelays).include?(params[:controller]) ? 'active' :nil
|
||||
%li{class: active_class}= link_to t(:domains), domains_path
|
||||
|
||||
- active_class = ['contacts'].include?(params[:controller]) ? 'active' :nil
|
||||
%li{class: active_class}= link_to t(:contacts), contacts_path
|
||||
|
||||
- active_class = ['xml_consoles'].include?(params[:controller]) ? 'active' :nil
|
||||
%li{class: active_class}= link_to t(:xml_console), xml_console_path
|
||||
|
||||
%ul.nav.navbar-nav.navbar-right
|
||||
%li= link_to t(:log_out, user: depp_current_user.tag), '/logout'
|
||||
/ /.nav-collapse
|
||||
|
||||
.container
|
||||
= render 'depp/shared/flash'
|
||||
= render 'depp/shared/epp_results'
|
||||
= yield
|
12
vendor/gems/depp/bin/rails
vendored
Executable file
12
vendor/gems/depp/bin/rails
vendored
Executable file
|
@ -0,0 +1,12 @@
|
|||
#!/usr/bin/env ruby
|
||||
# This command will automatically be run when you run "rails" with Rails 4 gems installed from the root of your application.
|
||||
|
||||
ENGINE_ROOT = File.expand_path('../..', __FILE__)
|
||||
ENGINE_PATH = File.expand_path('../../lib/depp/engine', __FILE__)
|
||||
|
||||
# Set up gems listed in the Gemfile.
|
||||
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
|
||||
require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
|
||||
|
||||
require 'rails/all'
|
||||
require 'rails/engine/commands'
|
126
vendor/gems/depp/config/locales/en.yml
vendored
Normal file
126
vendor/gems/depp/config/locales/en.yml
vendored
Normal file
|
@ -0,0 +1,126 @@
|
|||
en:
|
||||
activemodel:
|
||||
errors:
|
||||
models:
|
||||
'depp/user':
|
||||
attributes:
|
||||
base:
|
||||
failed_to_open_connection_to_epp_server: 'Failed to open connection to EPP server!'
|
||||
authorization_error: 'Authorization error'
|
||||
invalid_cert: 'Invalid certificate'
|
||||
tag:
|
||||
blank: "Username can't be blank"
|
||||
password:
|
||||
blank: "Password can't be blank"
|
||||
|
||||
username: 'Username'
|
||||
password: 'Password'
|
||||
log_in: 'Log in'
|
||||
log_out: 'Log out (%{user})'
|
||||
domain_name: 'Domain name'
|
||||
domains: 'Domains'
|
||||
register: 'Register'
|
||||
check: 'Check'
|
||||
contacts: 'Contacts'
|
||||
domain_info: 'Domain info'
|
||||
domain_details: 'Domain details'
|
||||
xml_console: 'XML Console'
|
||||
info: 'Info'
|
||||
register: 'Register'
|
||||
send_epp_request: 'Send EPP Request'
|
||||
registrant: 'Registrant'
|
||||
created_at: 'Created at'
|
||||
valid_to: 'Valid to'
|
||||
updated_at: 'Updated at'
|
||||
tech_contacts: 'Tech contacts'
|
||||
name: 'Name'
|
||||
type: 'Type'
|
||||
code: 'Code'
|
||||
nameservers: 'Nameservers'
|
||||
hostname: 'Hostname'
|
||||
ipv4: 'IPv4'
|
||||
ipv6: 'IPv6'
|
||||
dnskeys: 'DNS Keys'
|
||||
flag: 'Flag'
|
||||
protocol: 'Protocol'
|
||||
algorithm: 'Algorithm'
|
||||
public_key: 'Public key'
|
||||
ds_key_tag: 'DS key tag'
|
||||
ds_algorithm: 'DS algorithm'
|
||||
ds_digest_type: 'DS digest type'
|
||||
ds_digest: 'DS digest'
|
||||
statuses: 'Statuses'
|
||||
status: 'Status'
|
||||
description: 'Description'
|
||||
check_domain: 'Check domain'
|
||||
result: 'Result'
|
||||
available: 'Available'
|
||||
reason: 'Reason'
|
||||
contact_code: 'Code'
|
||||
add_another: 'Add another'
|
||||
delete: 'Delete'
|
||||
contact_type: 'Contact type'
|
||||
edit_domain: 'Edit domain'
|
||||
new_domain: 'New domain'
|
||||
edit: 'Edit'
|
||||
delete: 'Delete'
|
||||
are_you_sure: 'Are you sure?'
|
||||
renew: 'Renew'
|
||||
renew_domain: 'Renew domain'
|
||||
cur_exp_date: 'curExpDate'
|
||||
transfer: 'Transfer'
|
||||
query: 'Query'
|
||||
transfer_domain: 'Transfer domain'
|
||||
reject: 'Reject'
|
||||
approve: 'Approve'
|
||||
contact_info: 'Contact info'
|
||||
contact_id: 'Contact ID'
|
||||
address: 'Address'
|
||||
street: 'Street'
|
||||
city: 'City'
|
||||
messages: 'Messages (%{count})'
|
||||
message: 'Message'
|
||||
message_no: 'Message #%{id}'
|
||||
queue_date: 'Queue date'
|
||||
messages_in_queue: 'Messages in queue'
|
||||
you_have_no_new_messages: 'You have no new messages'
|
||||
message_id: 'Message ID'
|
||||
trStatus: 'Status'
|
||||
reID: 'Transfer from'
|
||||
reDate: 'Transfer requested at'
|
||||
acID: 'Transfer to'
|
||||
acDate: 'Accept date'
|
||||
exDate: 'Valid to'
|
||||
dequeue: 'Dequeue'
|
||||
are_you_sure_you_want_to_delete_domain: 'Are you sure you want to delete domain %{domain}?'
|
||||
keyrelay: 'Keyrelay'
|
||||
expiry_relative: 'Expiry relative'
|
||||
expiry_absolute: 'Expiry absolute'
|
||||
upload_key: 'Upload key'
|
||||
legal_document: 'Legal document'
|
||||
delete_domain: 'Delete domain'
|
||||
index: 'Index'
|
||||
ident: 'Ident'
|
||||
email: 'E-mail'
|
||||
value: 'Value'
|
||||
phone: 'Phone'
|
||||
org_name: Org name
|
||||
ident_type: Ident code
|
||||
country: Country
|
||||
period: Period
|
||||
birthday_format: 'Insert birthday in format: YYYY-MM-DD'
|
||||
your_session_has_timed_out: 'Your session has timed out. Please log in again.'
|
||||
certificate_loaded: 'Certificate (already loaded)'
|
||||
private_key_loaded: 'Private key (already loaded)'
|
||||
credentials: 'Credentials'
|
||||
pki: 'PKI'
|
||||
zip: Postcode
|
||||
contact_details: Contact Details
|
||||
general: General
|
||||
id_card: 'ID Card'
|
||||
m_id: 'M-ID'
|
||||
destroyed: It was successfully deleted.
|
||||
not_found: Not found
|
||||
no_connection_to_registry: Connection issue to the registry server! Please try again later.
|
||||
domain_not_found: 'Domain was not found'
|
||||
new_contact: 'New contact'
|
4
vendor/gems/depp/config/locales/et.yml
vendored
Normal file
4
vendor/gems/depp/config/locales/et.yml
vendored
Normal file
|
@ -0,0 +1,4 @@
|
|||
et:
|
||||
username: 'Kasutajanimi'
|
||||
password: 'Parool'
|
||||
log_in: 'Logi sisse'
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue