2022-11-10 08:00:12 -05:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module PageObjects
|
|
|
|
module Pages
|
|
|
|
class Category < PageObjects::Pages::Base
|
|
|
|
# keeping the various category related features combined for now
|
|
|
|
|
|
|
|
def visit(category)
|
2022-11-11 04:44:40 -05:00
|
|
|
page.visit("/c/#{category.id}")
|
2022-11-10 08:00:12 -05:00
|
|
|
self
|
|
|
|
end
|
|
|
|
|
|
|
|
def visit_settings(category)
|
2022-11-11 04:44:40 -05:00
|
|
|
page.visit("/c/#{category.slug}/edit/settings")
|
2022-11-10 08:00:12 -05:00
|
|
|
self
|
|
|
|
end
|
|
|
|
|
2023-02-23 14:18:14 -05:00
|
|
|
def visit_edit_template(category)
|
|
|
|
page.visit("/c/#{category.slug}/edit/topic-template")
|
|
|
|
self
|
|
|
|
end
|
|
|
|
|
2022-11-10 08:00:12 -05:00
|
|
|
def back_to_category
|
|
|
|
find(".edit-category-title-bar span", text: "Back to category").click
|
|
|
|
self
|
|
|
|
end
|
|
|
|
|
|
|
|
def save_settings
|
|
|
|
find("#save-category").click
|
|
|
|
self
|
|
|
|
end
|
|
|
|
|
2022-11-11 04:44:40 -05:00
|
|
|
def toggle_setting(setting, text = "")
|
2023-05-28 08:15:10 -04:00
|
|
|
find(".edit-category-tab .#{setting} label.checkbox-label", text: text, visible: :all).click
|
2022-11-10 08:00:12 -05:00
|
|
|
self
|
|
|
|
end
|
2023-02-23 14:18:14 -05:00
|
|
|
|
|
|
|
# Edit Category Page
|
|
|
|
def has_form_template_enabled?
|
|
|
|
find(".d-toggle-switch .toggle-template-type", visible: false)["aria-checked"] == "true"
|
|
|
|
end
|
|
|
|
|
2023-05-04 19:45:53 -04:00
|
|
|
D_EDITOR_SELECTOR = ".d-editor"
|
|
|
|
|
2023-02-23 14:18:14 -05:00
|
|
|
def has_d_editor?
|
2023-05-04 19:45:53 -04:00
|
|
|
page.has_selector?(D_EDITOR_SELECTOR)
|
|
|
|
end
|
|
|
|
|
|
|
|
def has_no_d_editor?
|
|
|
|
page.has_no_selector?(D_EDITOR_SELECTOR)
|
2023-02-23 14:18:14 -05:00
|
|
|
end
|
|
|
|
|
|
|
|
def has_selected_template?(template_name)
|
2023-07-06 00:42:59 -04:00
|
|
|
has_css?(".select-category-template .select-kit-header[data-name='#{template_name}']")
|
2023-02-23 14:18:14 -05:00
|
|
|
end
|
|
|
|
|
|
|
|
def toggle_form_templates
|
|
|
|
find(".d-toggle-switch .d-toggle-switch__checkbox-slider").click
|
|
|
|
self
|
|
|
|
end
|
|
|
|
|
|
|
|
def select_form_template(template_name)
|
|
|
|
find(".select-category-template").click
|
|
|
|
find(".select-kit-collection .select-kit-row", text: template_name).click
|
|
|
|
find(".select-category-template").click
|
|
|
|
end
|
2023-03-05 21:13:10 -05:00
|
|
|
|
2023-05-10 13:34:39 -04:00
|
|
|
def new_topic_button
|
|
|
|
find("#create-topic")
|
|
|
|
end
|
|
|
|
|
2023-03-05 21:13:10 -05:00
|
|
|
CATEGORY_NAVIGATION_NEW_NAV_ITEM_SELECTOR = ".category-navigation .nav-item_new"
|
|
|
|
|
|
|
|
def has_no_new_topics?
|
|
|
|
page.has_no_css?(CATEGORY_NAVIGATION_NEW_NAV_ITEM_SELECTOR)
|
|
|
|
end
|
|
|
|
|
|
|
|
def has_new_topics?
|
|
|
|
page.has_css?(CATEGORY_NAVIGATION_NEW_NAV_ITEM_SELECTOR)
|
|
|
|
end
|
|
|
|
|
|
|
|
def click_new
|
|
|
|
page.find(CATEGORY_NAVIGATION_NEW_NAV_ITEM_SELECTOR).click
|
|
|
|
end
|
2022-11-10 08:00:12 -05:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|