|
|
|
class DomainsController < ApplicationController
|
|
|
|
|
|
|
|
active_scaffold :domain do |conf|
|
|
|
|
conf.columns = [:name, :ip, :records, :soa_record, :ns_records]
|
|
|
|
conf.list.columns = [:name, :records]
|
|
|
|
conf.create.columns = [:name, :ip, :soa_record, :ns_records]
|
|
|
|
conf.update.columns = [:name, :soa_record]
|
|
|
|
conf.columns[:name].description = 'Ex. "domain.com"'
|
|
|
|
conf.columns[:ip].description = 'Ex. "10.10.5.12", optional IP to associate your domain with'
|
|
|
|
conf.columns[:ns_records].show_blank_record = false
|
|
|
|
conf.actions.exclude :show
|
|
|
|
conf.list.sorting = { :name => :asc }
|
|
|
|
conf.create.link.label = "Add Domain"
|
|
|
|
|
|
|
|
# conf.columns[:records].label = 'All Records'
|
|
|
|
end
|
|
|
|
|
|
|
|
protected
|
|
|
|
|
|
|
|
def do_new
|
|
|
|
super
|
|
|
|
@record.setup(current_user.email)
|
|
|
|
end
|
|
|
|
|
|
|
|
def before_create_save(record)
|
|
|
|
record.type = 'NATIVE'
|
|
|
|
end
|
|
|
|
|
|
|
|
def after_create_save(record)
|
|
|
|
@record.reload
|
|
|
|
end
|
|
|
|
|
|
|
|
def before_update_save(record) # just to make sure of params tampering
|
|
|
|
record.type = 'NATIVE'
|
|
|
|
@name_changed = @record.name_changed?
|
|
|
|
end
|
|
|
|
|
|
|
|
def after_update_save(record)
|
|
|
|
if @name_changed
|
|
|
|
flash.now[:warning] = "Changing the name of a domain migrates all it's records to the new name!"
|
|
|
|
end
|
|
|
|
@record.reload
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|