def report_links_availability(opts)
      cols = opts[:columns].gsub(/ /, "").split(',')
      website.report_links_availability.map do |url, response|
        result = if response == "200" and opts[:available]
                   { "url" => url, "response" => response }
                 elsif response != "200" and opts[:unavailable]
                   { "url" => url, "response" => response }
                 end
        next if result.nil?
        cols.inject([]) { |res, c| res << result[c.downcase] }
      end.compact
    end
def report_links_availability(opts)
      cols = opts[:columns].gsub(/ /, "").split(',')
      website.report_links_availability.map do |url, response|
        result = if response == "200" and opts[:available]
                   { "url" => url, "response" => response }
                 elsif response != "200" and opts[:unavailable]
                   { "url" => url, "response" => response }
                 end
        next if result.nil?
        cols.inject([]) { |res, c| res << result[c.downcase] }
      end.compact
    end
Check links availability. Takes a filter which values to return and
 whether to return available, unavailable or available and unavailable
 links. In the following example only unavailable links' url and response
 would be returned
   report_links_availability(available: false,
                             unavailable: false,
                             columns: "url,response")