Packages
phoenix_kit
1.7.59
1.7.210
1.7.209
1.7.208
1.7.207
1.7.206
1.7.205
1.7.204
1.7.203
1.7.202
1.7.201
1.7.200
1.7.199
1.7.198
1.7.197
1.7.196
1.7.194
1.7.193
1.7.192
1.7.191
1.7.190
1.7.189
1.7.187
1.7.186
1.7.185
1.7.184
1.7.183
1.7.182
1.7.181
1.7.180
1.7.179
1.7.178
1.7.177
1.7.176
1.7.175
1.7.174
1.7.173
1.7.172
1.7.171
1.7.170
1.7.169
1.7.168
1.7.167
1.7.166
1.7.165
1.7.164
1.7.162
1.7.161
1.7.160
1.7.159
1.7.157
1.7.156
1.7.155
1.7.154
1.7.153
1.7.152
1.7.151
1.7.150
1.7.149
1.7.146
1.7.145
1.7.144
1.7.143
1.7.138
1.7.133
1.7.132
1.7.131
1.7.130
1.7.128
1.7.126
1.7.125
1.7.121
1.7.120
1.7.119
1.7.118
1.7.117
1.7.116
1.7.115
1.7.114
1.7.113
1.7.112
1.7.111
1.7.110
1.7.109
1.7.108
1.7.107
1.7.106
1.7.105
1.7.104
1.7.103
1.7.102
1.7.101
1.7.100
1.7.99
1.7.98
1.7.97
1.7.96
1.7.95
1.7.94
1.7.93
1.7.92
1.7.91
1.7.90
1.7.89
1.7.88
1.7.87
1.7.86
1.7.85
1.7.84
1.7.83
1.7.82
1.7.81
1.7.80
1.7.79
1.7.78
1.7.77
1.7.76
1.7.75
1.7.74
1.7.71
1.7.70
1.7.69
1.7.66
1.7.65
1.7.64
1.7.63
1.7.62
1.7.61
1.7.59
1.7.58
1.7.57
1.7.56
1.7.55
1.7.54
1.7.53
1.7.52
1.7.51
1.7.49
1.7.44
1.7.43
1.7.42
1.7.41
1.7.39
1.7.38
1.7.37
1.7.36
1.7.34
1.7.33
1.7.31
1.7.30
1.7.29
1.7.28
1.7.27
1.7.26
1.7.25
1.7.24
1.7.23
1.7.22
1.7.21
1.7.20
1.7.19
1.7.18
1.7.17
1.7.16
1.7.15
1.7.14
1.7.13
1.7.12
1.7.11
1.7.10
1.7.9
1.7.8
1.7.7
1.7.6
1.7.5
1.7.4
1.7.3
1.7.2
1.7.1
1.7.0
1.6.20
1.6.19
1.6.18
1.6.17
1.6.16
1.6.15
1.6.14
1.6.13
1.6.12
1.6.11
1.6.10
1.6.9
1.6.8
1.6.7
1.6.6
1.6.5
1.6.4
1.6.3
1.5.2
1.5.1
1.5.0
1.4.9
1.4.8
1.4.7
1.4.6
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.2
1.3.1
1.3.0
1.2.10
1.2.9
1.2.8
1.2.7
1.2.5
1.2.4
1.2.2
1.2.1
1.2.0
1.1.0
1.0.0
A foundation for building Elixir Phoenix apps — SaaS, social networks, ERP systems, marketplaces, and more
Current section
Files
Jump to
Current section
Files
lib/phoenix_kit_web/routes/publishing.ex
defmodule PhoenixKitWeb.Routes.PublishingRoutes do
@moduledoc """
Publishing module routes.
Provides route definitions for blog/content management including
both new publishing routes and legacy blogging redirects.
"""
@doc """
Returns quoted code for publishing non-LiveView routes (legacy redirects).
"""
def generate(url_prefix) do
quote do
# Legacy blogging redirects (localized)
alias PhoenixKitWeb.Controllers.Redirects.PublishingRedirectController
scope "#{unquote(url_prefix)}/:locale" do
pipe_through [:browser]
get "/admin/blogging", PublishingRedirectController, :index
get "/admin/blogging/:blog", PublishingRedirectController, :blog
get "/admin/blogging/:blog/edit", PublishingRedirectController, :edit
get "/admin/blogging/:blog/preview", PublishingRedirectController, :preview
get "/admin/settings/blogging", PublishingRedirectController, :settings
get "/admin/settings/blogging/new", PublishingRedirectController, :new
get "/admin/settings/blogging/:blog/edit", PublishingRedirectController, :settings_edit
end
# Legacy blogging redirects (non-localized)
scope unquote(url_prefix) do
pipe_through [:browser]
get "/admin/blogging", PublishingRedirectController, :index
get "/admin/blogging/:blog", PublishingRedirectController, :blog
get "/admin/blogging/:blog/edit", PublishingRedirectController, :edit
get "/admin/blogging/:blog/preview", PublishingRedirectController, :preview
get "/admin/settings/blogging", PublishingRedirectController, :settings
get "/admin/settings/blogging/new", PublishingRedirectController, :new
get "/admin/settings/blogging/:blog/edit", PublishingRedirectController, :settings_edit
end
end
end
@doc """
Returns quoted admin LiveView route declarations for the shared admin live_session (localized).
"""
def admin_locale_routes do
quote do
live "/admin/publishing", PhoenixKit.Modules.Publishing.Web.Index, :index,
as: :publishing_index_localized
live "/admin/publishing/:group", PhoenixKit.Modules.Publishing.Web.Listing, :group,
as: :publishing_group_localized
live "/admin/publishing/:group/edit", PhoenixKit.Modules.Publishing.Web.Editor, :edit,
as: :publishing_editor_localized
live "/admin/publishing/:group/new", PhoenixKit.Modules.Publishing.Web.Editor, :new,
as: :publishing_new_post_localized
live "/admin/publishing/:group/preview",
PhoenixKit.Modules.Publishing.Web.Preview,
:preview,
as: :publishing_preview_localized
# UUID-based routes (param routes — must come AFTER literal routes above)
live "/admin/publishing/:group/:post_uuid",
PhoenixKit.Modules.Publishing.Web.PostShow,
:show,
as: :publishing_post_show_localized
live "/admin/publishing/:group/:post_uuid/edit",
PhoenixKit.Modules.Publishing.Web.Editor,
:edit_post,
as: :publishing_post_editor_localized
live "/admin/publishing/:group/:post_uuid/preview",
PhoenixKit.Modules.Publishing.Web.Preview,
:preview_post,
as: :publishing_post_preview_localized
live "/admin/settings/publishing", PhoenixKit.Modules.Publishing.Web.Settings, :index,
as: :publishing_settings_localized
live "/admin/settings/publishing/new", PhoenixKit.Modules.Publishing.Web.New, :new,
as: :publishing_new_localized
live "/admin/settings/publishing/:group/edit",
PhoenixKit.Modules.Publishing.Web.Edit,
:edit,
as: :publishing_edit_localized
end
end
@doc """
Returns quoted admin LiveView route declarations for the shared admin live_session (non-localized).
"""
def admin_routes do
quote do
live "/admin/publishing", PhoenixKit.Modules.Publishing.Web.Index, :index,
as: :publishing_index
live "/admin/publishing/:group", PhoenixKit.Modules.Publishing.Web.Listing, :group,
as: :publishing_group
live "/admin/publishing/:group/edit", PhoenixKit.Modules.Publishing.Web.Editor, :edit,
as: :publishing_editor
live "/admin/publishing/:group/new", PhoenixKit.Modules.Publishing.Web.Editor, :new,
as: :publishing_new_post
live "/admin/publishing/:group/preview",
PhoenixKit.Modules.Publishing.Web.Preview,
:preview,
as: :publishing_preview
# UUID-based routes (param routes — must come AFTER literal routes above)
live "/admin/publishing/:group/:post_uuid",
PhoenixKit.Modules.Publishing.Web.PostShow,
:show,
as: :publishing_post_show
live "/admin/publishing/:group/:post_uuid/edit",
PhoenixKit.Modules.Publishing.Web.Editor,
:edit_post,
as: :publishing_post_editor
live "/admin/publishing/:group/:post_uuid/preview",
PhoenixKit.Modules.Publishing.Web.Preview,
:preview_post,
as: :publishing_post_preview
live "/admin/settings/publishing", PhoenixKit.Modules.Publishing.Web.Settings, :index,
as: :publishing_settings
live "/admin/settings/publishing/new", PhoenixKit.Modules.Publishing.Web.New, :new,
as: :publishing_new
live "/admin/settings/publishing/:group/edit",
PhoenixKit.Modules.Publishing.Web.Edit,
:edit,
as: :publishing_edit
end
end
end