mirror of
https://github.com/internetee/registry.git
synced 2025-05-17 17:59:47 +02:00
Domain create action
This commit is contained in:
parent
1c165cd1e4
commit
e9e1e057f5
4 changed files with 30 additions and 11 deletions
|
@ -1,5 +1,6 @@
|
||||||
class @Autocomplete
|
class @Autocomplete
|
||||||
@bindTypeahead: (obj) ->
|
@bindTypeahead: (obj) ->
|
||||||
|
Autocomplete.toggleOkFeedback(obj.hiddenSelector)
|
||||||
$(obj.selector).typeahead(
|
$(obj.selector).typeahead(
|
||||||
highlight: true,
|
highlight: true,
|
||||||
hint: false
|
hint: false
|
||||||
|
@ -8,12 +9,7 @@ class @Autocomplete
|
||||||
source: Autocomplete.constructSourceAdapter(obj.remote)
|
source: Autocomplete.constructSourceAdapter(obj.remote)
|
||||||
).on('typeahead:selected', (e, item) ->
|
).on('typeahead:selected', (e, item) ->
|
||||||
$(obj.hiddenSelector).val item.id
|
$(obj.hiddenSelector).val item.id
|
||||||
|
Autocomplete.toggleOkFeedback(obj.hiddenSelector)
|
||||||
ok = $(obj.hiddenSelector).parent('div.has-feedback').find('.js-typeahead-ok')
|
|
||||||
remove = $(obj.hiddenSelector).parents('div.has-feedback').find('.js-typeahead-remove')
|
|
||||||
|
|
||||||
ok.removeClass('hidden')
|
|
||||||
remove.addClass('hidden')
|
|
||||||
)
|
)
|
||||||
|
|
||||||
@constructSourceAdapter: (remote) ->
|
@constructSourceAdapter: (remote) ->
|
||||||
|
@ -27,3 +23,11 @@ class @Autocomplete
|
||||||
|
|
||||||
source.initialize()
|
source.initialize()
|
||||||
source.ttAdapter()
|
source.ttAdapter()
|
||||||
|
|
||||||
|
@toggleOkFeedback: (hiddenSelector) ->
|
||||||
|
if $(hiddenSelector).val()
|
||||||
|
ok = $(hiddenSelector).parent('div.has-feedback').find('.js-typeahead-ok')
|
||||||
|
remove = $(hiddenSelector).parents('div.has-feedback').find('.js-typeahead-remove')
|
||||||
|
|
||||||
|
ok.removeClass('hidden')
|
||||||
|
remove.addClass('hidden')
|
||||||
|
|
|
@ -6,6 +6,13 @@ class Admin::DomainsController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def create
|
def create
|
||||||
|
@domain = Domain.new(domain_params)
|
||||||
|
|
||||||
|
if @domain.save
|
||||||
|
redirect_to [:admin, @domain]
|
||||||
|
else
|
||||||
|
render 'new'
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def index
|
def index
|
||||||
|
@ -20,6 +27,6 @@ class Admin::DomainsController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def domain_params
|
def domain_params
|
||||||
params.require(:domain).permit(:name, :period, :registrar, :owner_contact)
|
params.require(:domain).permit(:name, :period, :registrar_id, :owner_contact_id)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,6 +1,13 @@
|
||||||
%h2= t('shared.new_domain')
|
%h2= t('shared.new_domain')
|
||||||
%hr
|
%hr
|
||||||
= form_for([:admin, @domain]) do |f|
|
= form_for([:admin, @domain]) do |f|
|
||||||
|
- if @domain.errors.any?
|
||||||
|
- @domain.errors.full_messages.each do |x|
|
||||||
|
= x
|
||||||
|
%br
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.row
|
.row
|
||||||
.col-md-6
|
.col-md-6
|
||||||
.form-group
|
.form-group
|
||||||
|
@ -12,16 +19,16 @@
|
||||||
.col-md-6
|
.col-md-6
|
||||||
.form-group.has-feedback
|
.form-group.has-feedback
|
||||||
= f.label :registrar
|
= f.label :registrar
|
||||||
= f.text_field(:registrar, class: 'form-control js-registrar-typeahead', placeholder: t('shared.registrar_name'), autocomplete: 'off')
|
= text_field_tag(:registrar, params[:registrar], class: 'form-control js-registrar-typeahead', placeholder: t('shared.registrar_name'), autocomplete: 'off')
|
||||||
%span.glyphicon.glyphicon-ok.form-control-feedback.js-typeahead-ok.hidden
|
%span.glyphicon.glyphicon-ok.form-control-feedback.js-typeahead-ok.hidden
|
||||||
%span.glyphicon.glyphicon-remove.form-control-feedback.js-typeahead-remove
|
%span.glyphicon.glyphicon-remove.form-control-feedback.js-typeahead-remove
|
||||||
= f.hidden_field(:registrar_id, class: 'js-registrar-id')
|
= f.hidden_field(:registrar_id, class: 'js-registrar-id')
|
||||||
.form-group.has-feedback
|
.form-group.has-feedback
|
||||||
= f.label :owner_contact
|
= f.label :owner_contact
|
||||||
= f.text_field(:owner_contact, class: 'form-control js-contact-typeahead', placeholder: t('shared.contact_code'), autocomplete: 'off')
|
= text_field_tag(:owner_contact, params[:owner_contact], class: 'form-control js-contact-typeahead', placeholder: t('shared.contact_code'), autocomplete: 'off')
|
||||||
%span.glyphicon.glyphicon-ok.form-control-feedback.js-typeahead-ok.hidden
|
%span.glyphicon.glyphicon-ok.form-control-feedback.js-typeahead-ok.hidden
|
||||||
%span.glyphicon.glyphicon-remove.form-control-feedback.js-typeahead-remove
|
%span.glyphicon.glyphicon-remove.form-control-feedback.js-typeahead-remove
|
||||||
= f.hidden_field(:owner_contact, class: 'js-contact-id')
|
= f.hidden_field(:owner_contact_id, class: 'js-contact-id')
|
||||||
.row
|
.row
|
||||||
.col-md-12.text-right
|
.col-md-12.text-right
|
||||||
= button_tag(t('shared.save'), class: 'btn btn-primary')
|
= button_tag(t('shared.save'), class: 'btn btn-primary')
|
||||||
|
|
|
@ -80,7 +80,7 @@ en:
|
||||||
admin_contacts:
|
admin_contacts:
|
||||||
out_of_range: 'Admin contacts count must be between 1 - infinity'
|
out_of_range: 'Admin contacts count must be between 1 - infinity'
|
||||||
nameservers:
|
nameservers:
|
||||||
out_of_range: 'Nameservers count must be between %{min}-%{max}'
|
out_of_range: 'count must be between %{min}-%{max}'
|
||||||
not_found: 'Nameserver was not found'
|
not_found: 'Nameserver was not found'
|
||||||
taken: 'Nameserver already exists on this domain'
|
taken: 'Nameserver already exists on this domain'
|
||||||
period:
|
period:
|
||||||
|
@ -112,6 +112,7 @@ en:
|
||||||
name_dirty: 'Domain name'
|
name_dirty: 'Domain name'
|
||||||
name_puny: 'Domain name'
|
name_puny: 'Domain name'
|
||||||
owner_contact: 'Registrant'
|
owner_contact: 'Registrant'
|
||||||
|
nameservers: 'Nameservers'
|
||||||
|
|
||||||
errors:
|
errors:
|
||||||
messages:
|
messages:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue