module OA
  class YouTubeLabelAuditPage < OA::BasePage
    page_url("/youtubeaudit/index/vendor_id/<%=params[:label_id]%>")

    button(:generate_audit_prep_doc, id: "initiate-audit-btn")
    div(:confirmation_message, id: "message")
    table(:audits_table, id: "audits-table")
    element(:loading_audits, :tr, id: "loading-audits")
    element(:no_audits, :tr, id: "sorry-no-audits")

    # loader sometimes disappears too quickly
    def wait_for_audits
      wait_until do
        no_audits_element.element.present? ||
          # two headers and invisible no_audits element
          audits_table_element.rows > 3
      end
    end

    def report_requested_over_a_day_ago?
      date_today = Time.strptime((Time.now.strftime "%m/%d/%Y"), "%m/%d/%Y")
      last_audit_date = Time.strptime(audits_table_element[1]["Date"].text, "%m/%d/%Y")
      (date_today > last_audit_date) && audits_table_element[1]["Status"].text != "complete"
    end
  end
end
