mirror of
https://gh.wpcy.net/https://github.com/discourse/discourse.git
synced 2026-05-27 23:52:59 +08:00
Adds an Events category type alongside Support and Ideas in the simplified category creation flow. Auto-enables Calendar + Discourse Post Event, registers the category in events_calendar_categories, and writes a matching calendar_categories entry. Gated behind enable_events_category_type_setup. The Events tab exposes: default calendar view, display weekends, allowed groups, event date format, topic sorting, and the upcoming events sidebar link. Framework support for per-category type settings: - CategoriesController#create and #update now accept category_type_settings, slicing the payload by each type's own configuration_schema_keys(:category_settings). On create the slice merges into Categories::Configure's category_configuration_values; on update the controller iterates the category's attached types and calls configure_category per type, so per-type fields persist on edit and a type only ever sees its own keys. - Categories::Types::Base#read_category_settings is a new extension point types override to return current per-category values; the CategorySerializer aggregates these as category_type_settings so the edit form preloads stored values rather than schema defaults. - Categories::Types::Base forwards :choices through the resolved schema and lets a type override site setting :type and :choices when it wants a bool to render as a labelled enum. configure_custom_fields and configure_site_settings tolerate string or symbol keys. - SchemaFormField gains enum (FormKit select) and group_list (GroupChooser) branches. EditCategoryTypeSchemaFields renders a new form section bound to a category_type_settings form object that iterates schema.category_settings, gated by a hasCategorySettings getter. tabs.js seeds the bucket from model.category_type_settings plus schema defaults; Category#_categoryTypeSaveProperties sends it on save. --------- Co-authored-by: Martin Brennan <martin@discourse.org> |
||
|---|---|---|
| .. | ||
| concerns | ||
| about_serializer_spec.rb | ||
| admin_detailed_user_serializer_spec.rb | ||
| admin_plugin_serializer_spec.rb | ||
| admin_user_action_serializer_spec.rb | ||
| admin_user_list_serializer_spec.rb | ||
| auth_provider_serializer_spec.rb | ||
| basic_group_serializer_spec.rb | ||
| basic_group_user_serializer_spec.rb | ||
| basic_post_serializer_spec.rb | ||
| basic_reviewable_flagged_post_serializer_spec.rb | ||
| basic_reviewable_queued_post_serializer_spec.rb | ||
| basic_reviewable_serializer_spec.rb | ||
| basic_reviewable_user_serializer_spec.rb | ||
| basic_topic_serializer_spec.rb | ||
| basic_user_serializer_spec.rb | ||
| category_detailed_serializer_spec.rb | ||
| category_serializer_spec.rb | ||
| category_upload_serializer_spec.rb | ||
| color_scheme_serializer_spec.rb | ||
| component_index_serializer_spec.rb | ||
| current_user_serializer_spec.rb | ||
| detailed_user_badge_serializer_spec.rb | ||
| directory_item_serializer_spec.rb | ||
| emoji_serializer_spec.rb | ||
| flag_serializer_spec.rb | ||
| flagged_user_serializer_spec.rb | ||
| found_user_serializer_spec.rb | ||
| group_show_serializer_spec.rb | ||
| group_user_serializer_spec.rb | ||
| group_user_with_custom_fields_serializer_spec.rb | ||
| incoming_email_details_serializer_spec.rb | ||
| incoming_email_serializer_spec.rb | ||
| invite_serializer_spec.rb | ||
| listable_topic_serializer_spec.rb | ||
| nested_replies_basic_category_serializer_spec.rb | ||
| new_post_result_serializer_spec.rb | ||
| notification_serializer_spec.rb | ||
| pending_post_serializer_spec.rb | ||
| post_action_type_serializer_spec.rb | ||
| post_item_excerpt_spec.rb | ||
| post_localization_serializer_spec.rb | ||
| post_revision_serializer_spec.rb | ||
| post_serializer_spec.rb | ||
| poster_serializer_spec.rb | ||
| remote_theme_serializer_spec.rb | ||
| reviewable_claimed_topic_serializer_spec.rb | ||
| reviewable_flagged_post_serializer_spec.rb | ||
| reviewable_note_serializer_spec.rb | ||
| reviewable_queued_post_serializer_spec.rb | ||
| reviewable_score_serializer_spec.rb | ||
| reviewable_serializer_spec.rb | ||
| reviewable_user_serializer_spec.rb | ||
| single_sign_on_record_serializer_spec.rb | ||
| site_serializer_spec.rb | ||
| suggested_topic_serializer_spec.rb | ||
| tag_group_serializer_spec.rb | ||
| tag_serializer_spec.rb | ||
| theme_index_serializer_spec.rb | ||
| theme_objects_setting_metadata_serializer_spec.rb | ||
| theme_serializer_spec.rb | ||
| theme_settings_serializer_spec.rb | ||
| topic_link_serializer_spec.rb | ||
| topic_list_item_serializer_spec.rb | ||
| topic_list_serializer_spec.rb | ||
| topic_tracking_state_item_serializer_spec.rb | ||
| topic_tracking_state_serializer_spec.rb | ||
| topic_view_details_serializer_spec.rb | ||
| topic_view_posts_serializer_spec.rb | ||
| topic_view_serializer_spec.rb | ||
| upload_serializer_spec.rb | ||
| user_auth_token_serializer_spec.rb | ||
| user_badge_serializer_spec.rb | ||
| user_bookmark_list_serializer_spec.rb | ||
| user_card_serializer_spec.rb | ||
| user_export_serializer_spec.rb | ||
| user_notification_total_serializer_spec.rb | ||
| user_post_bookmark_serializer_spec.rb | ||
| user_serializer_spec.rb | ||
| user_status_serializer_spec.rb | ||
| user_summary_serializer_spec.rb | ||
| user_with_custom_fields_serializer_spec.rb | ||
| web_hook_post_serializer_spec.rb | ||
| web_hook_topic_view_serializer_spec.rb | ||
| web_hook_user_serializer_spec.rb | ||
| wizard_serializer_spec.rb | ||