class AdminModule::Pages::DcDetailPage

Public Instance Methods

get_definition_data() click to toggle source
# File lib/admin_module/pages/dc_detail_page.rb, line 80
def get_definition_data
  data = { name: self.name,
            description: self.description,
            delete_options: {
              :decision_data          => false,
              :conditions_with_images => false,
              :incomes                => false,
              :assets                 => false,
              :expenses               => false,
              :hud1_fields            => false,
              :payment_schedule       => false,
            }
  }

  data[:delete_options][:decision_data]           = true if self.decision_data == "Yes"
  data[:delete_options][:conditions_with_images]  = true if self.conditions == "Yes"
  data[:delete_options][:incomes]                 = true if self.incomes == "Yes"
  data[:delete_options][:assets]                  = true if self.assets == "Yes"
  data[:delete_options][:expenses]                = true if self.expenses == "Yes"
  data[:delete_options][:hud1_fields]             = true if self.hud1_fields == "Yes"
  data[:delete_options][:payment_schedule]        = true if self.payment_schedule == "Yes"

  self.dts_tab
  data[:dts] = get_selected_dts_options

  data
end
save() click to toggle source
# File lib/admin_module/pages/dc_detail_page.rb, line 128
def save
  self.save_button
end
set_definition_data(data) click to toggle source
# File lib/admin_module/pages/dc_detail_page.rb, line 108
def set_definition_data data
  self.name = data[:name]
  self.description = data[:description]

  opts = data[:delete_options]
  set_delete_option decision_data_element,    opts[:decision_data]
  set_delete_option conditions_element,       opts[:conditions_with_images]
  set_delete_option incomes_element,          opts[:incomes]
  set_delete_option assets_element,           opts[:assets]
  set_delete_option expenses_element,         opts[:expenses]
  set_delete_option hud1_fields_element,      opts[:hud1_fields]
  set_delete_option payment_schedule_element, opts[:payment_schedule]

  self.dts_tab

  set_dts_fields data[:dts]

  self
end
set_name(name) click to toggle source
# File lib/admin_module/pages/dc_detail_page.rb, line 132
def set_name name
  self.name = name

  self
end

Private Instance Methods

assert_all_dts_fields_removed() click to toggle source
# File lib/admin_module/pages/dc_detail_page.rb, line 168
def assert_all_dts_fields_removed
  raise "Unable to remove DTS fields" unless self.dts_selected_options.count == 0
end
get_available_dts_options() click to toggle source
# File lib/admin_module/pages/dc_detail_page.rb, line 142
def get_available_dts_options
  vars = []
  Nokogiri::HTML(@browser.html).css('#ctl00_cntPlh_tsSnapshotDTS_lstAvailable > option').each do |elem|
    vars << elem.text
  end
  vars
end
get_selected_dts_options() click to toggle source
# File lib/admin_module/pages/dc_detail_page.rb, line 150
def get_selected_dts_options
  vars = []
  Nokogiri::HTML(@browser.html).css('#ctl00_cntPlh_tsSnapshotDTS_lstSelected > option').each do |elem|
    vars << elem.text
  end
  vars
end
set_delete_option(elem, value, name = '') click to toggle source
# File lib/admin_module/pages/dc_detail_page.rb, line 172
def set_delete_option elem, value, name = ''
  if !elem.visible?
    $stdout << "The #{name} is not available for this definition." unless name.nil? || name.empty?
    return
  end

  if value == true
    elem.select('Yes')
  else
    elem.select('No')
  end
end
set_dts_fields(data) click to toggle source
# File lib/admin_module/pages/dc_detail_page.rb, line 158
def set_dts_fields data
  sync_available_and_selected_lists get_available_dts_options,
                                    dts_available_element,
                                    get_selected_dts_options,
                                    dts_selected_element,
                                    add_dts_button_element,
                                    remove_dts_button_element,
                                    data
end