Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F77428
web.ex
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Subscribers
None
web.ex
View Options
defmodule
NolaWeb
do
@moduledoc
"""
The entrypoint for defining your web interface, such
as controllers, views, channels and so on.
This can be used in your application as:
use NolaWeb, :controller
use NolaWeb, :view
The definitions below will be executed for every view,
controller, etc, so keep them short and clean, focused
on imports, uses and aliases.
Do NOT define functions inside the quoted expressions
below. Instead, define any helper function in modules
and import those modules here.
"""
def
format_chan
(
"
##
"
)
do
"♯♯"
end
def
format_chan
(
"
#
"
)
do
"♯"
end
def
format_chan
(
"
#
"
<>
chan
)
do
chan
end
def
format_chan
(
chan
=
"!"
<>
_
),
do
:
chan
def
reformat_chan
(
"♯"
)
do
"
#
"
end
def
reformat_chan
(
"♯♯"
)
do
"
##
"
end
def
reformat_chan
(
chan
=
"!"
<>
_
),
do
:
chan
def
reformat_chan
(
chan
)
do
"
#
"
<>
chan
end
def
controller
do
quote
do
use
Phoenix.Controller
,
namespace
:
NolaWeb
import
Plug.Conn
import
NolaWeb.Router.Helpers
import
NolaWeb.Gettext
alias
NolaWeb.Router.Helpers
,
as
:
Routes
end
end
def
view
do
quote
do
use
Phoenix.View
,
root
:
"lib/nola_web/templates"
,
namespace
:
NolaWeb
# Import convenience functions from controllers
import
Phoenix.Controller
,
only
:
[
get_flash
:
2
,
view_module
:
1
]
# Use all HTML functionality (forms, tags, etc)
use
Phoenix.HTML
import
NolaWeb.Router.Helpers
import
NolaWeb.ErrorHelpers
import
NolaWeb.Gettext
import
Phoenix.LiveView.Helpers
alias
NolaWeb.Router.Helpers
,
as
:
Routes
end
end
def
router
do
quote
do
use
Phoenix.Router
import
Plug.Conn
import
Phoenix.Controller
import
Phoenix.LiveView.Router
end
end
def
channel
do
quote
do
use
Phoenix.Channel
import
NolaWeb.Gettext
end
end
@doc
"""
When used, dispatch to the appropriate controller/view/etc.
"""
defmacro
__using__
(
which
)
when
is_atom
(
which
)
do
apply
(
__MODULE__
,
which
,
[])
end
end
File Metadata
Details
Attached
Mime Type
text/x-ruby
Expires
Mon, Jul 7, 3:08 PM (1 d, 10 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
49909
Default Alt Text
web.ex (2 KB)
Attached To
rNOLA Nola
Event Timeline
Log In to Comment