Style: Replace yesod favicon with Vervis icon made by ikomi (thanks <3)
This commit is contained in:
parent
0c490ae986
commit
86b35e9b56
7 changed files with 204 additions and 10 deletions
Binary file not shown.
Before Width: | Height: | Size: 1.3 KiB |
BIN
config/favicon.png
Normal file
BIN
config/favicon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.2 KiB |
181
config/favicon.svg
Normal file
181
config/favicon.svg
Normal file
|
@ -0,0 +1,181 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
width="512"
|
||||||
|
height="512"
|
||||||
|
viewBox="0 0 135.46666 135.46667"
|
||||||
|
version="1.1"
|
||||||
|
id="svg824"
|
||||||
|
inkscape:version="0.92.4 5da689c313, 2019-01-14"
|
||||||
|
sodipodi:docname="vervis-icon.svg"
|
||||||
|
inkscape:export-filename="/home/mnt/c2/mnt/nas1/home/mnt/f3/groups/vervis/vervis-design/logo/vervis-icon.png"
|
||||||
|
inkscape:export-xdpi="96"
|
||||||
|
inkscape:export-ydpi="96">
|
||||||
|
<defs
|
||||||
|
id="defs818" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="base"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1.0"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:zoom="0.70710678"
|
||||||
|
inkscape:cx="190.55845"
|
||||||
|
inkscape:cy="262.6964"
|
||||||
|
inkscape:document-units="px"
|
||||||
|
inkscape:current-layer="g857"
|
||||||
|
showgrid="false"
|
||||||
|
units="px"
|
||||||
|
inkscape:showpageshadow="false"
|
||||||
|
borderlayer="true"
|
||||||
|
inkscape:window-width="1362"
|
||||||
|
inkscape:window-height="728"
|
||||||
|
inkscape:window-x="0"
|
||||||
|
inkscape:window-y="38"
|
||||||
|
inkscape:window-maximized="0"
|
||||||
|
inkscape:snap-bbox="true"
|
||||||
|
inkscape:bbox-nodes="false"
|
||||||
|
inkscape:snap-bbox-midpoints="true"
|
||||||
|
inkscape:snap-global="true"
|
||||||
|
inkscape:snap-grids="false"
|
||||||
|
inkscape:snap-intersection-paths="false"
|
||||||
|
inkscape:snap-bbox-edge-midpoints="true"
|
||||||
|
inkscape:snap-smooth-nodes="false"
|
||||||
|
inkscape:object-paths="true">
|
||||||
|
<inkscape:grid
|
||||||
|
type="xygrid"
|
||||||
|
id="grid1372"
|
||||||
|
empspacing="4" />
|
||||||
|
</sodipodi:namedview>
|
||||||
|
<metadata
|
||||||
|
id="metadata821">
|
||||||
|
<rdf:RDF>
|
||||||
|
<cc:Work
|
||||||
|
rdf:about="">
|
||||||
|
<dc:format>image/svg+xml</dc:format>
|
||||||
|
<dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
|
<dc:title></dc:title>
|
||||||
|
<cc:license
|
||||||
|
rdf:resource="" />
|
||||||
|
</cc:Work>
|
||||||
|
</rdf:RDF>
|
||||||
|
</metadata>
|
||||||
|
<g
|
||||||
|
transform="translate(0,-161.53332)"
|
||||||
|
id="g913"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="icon"
|
||||||
|
style="display:none"
|
||||||
|
sodipodi:insensitive="true">
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path899"
|
||||||
|
d="M 0,161.53332 67.733332,296.99998 135.46666,161.53332 Z"
|
||||||
|
style="opacity:1;fill:#0074d9;fill-opacity:1;stroke:none;stroke-width:0.52916664;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
style="opacity:1;fill:#ff851b;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
d="M 135.46666,161.53332 67.733332,296.99998 46.566666,254.66665 93.133332,161.53332 Z"
|
||||||
|
id="path915"
|
||||||
|
inkscape:connector-curvature="0" />
|
||||||
|
<circle
|
||||||
|
r="10.583333"
|
||||||
|
cy="203.86665"
|
||||||
|
cx="38.099998"
|
||||||
|
id="circle901"
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||||
|
<circle
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="circle903"
|
||||||
|
cx="110.06667"
|
||||||
|
cy="178.46666"
|
||||||
|
r="10.583333" />
|
||||||
|
<path
|
||||||
|
sodipodi:nodetypes="ccccc"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path905"
|
||||||
|
d="M 109.26613,176.48402 57.685872,276.90506 60.039877,281.61307 113.06499,178.3521 Z"
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
sodipodi:nodetypes="ccccc"
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
d="m 38.435213,199.89199 30.893825,60.88524 -3.79886,1.86808 -30.893825,-60.88524 z"
|
||||||
|
id="path907"
|
||||||
|
inkscape:connector-curvature="0" />
|
||||||
|
<circle
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="circle909"
|
||||||
|
cx="67.73333"
|
||||||
|
cy="258.89999"
|
||||||
|
r="10.583333" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path911"
|
||||||
|
d="M 106.89627,181.30574 42.383229,203.6554 41.047702,199.63826 105.56075,177.2886 Z"
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
sodipodi:nodetypes="ccccc" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
style="display:inline"
|
||||||
|
inkscape:label="icon-export"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="g857"
|
||||||
|
transform="translate(0,-161.53332)"
|
||||||
|
sodipodi:insensitive="true">
|
||||||
|
<path
|
||||||
|
style="opacity:1;fill:#0074d9;fill-opacity:1;stroke:none;stroke-width:0.52916664;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
d="M 0,161.53332 67.733332,296.99998 135.46666,161.53332 Z"
|
||||||
|
id="path841"
|
||||||
|
inkscape:connector-curvature="0" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path843"
|
||||||
|
d="M 135.46666,161.53332 67.733332,296.99998 46.566666,254.66665 93.133332,161.53332 Z"
|
||||||
|
style="opacity:1;fill:#ff851b;fill-opacity:1;stroke:#ff851b;stroke-width:0.26458332;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||||
|
<circle
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
id="circle845"
|
||||||
|
cx="38.099998"
|
||||||
|
cy="203.86665"
|
||||||
|
r="10.583333" />
|
||||||
|
<circle
|
||||||
|
r="10.583333"
|
||||||
|
cy="178.46666"
|
||||||
|
cx="110.06667"
|
||||||
|
id="circle847"
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:0.39687499;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
d="M 109.26613,176.48402 57.685872,276.90506 60.039877,281.61307 113.06499,178.3521 Z"
|
||||||
|
id="path849"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path851"
|
||||||
|
d="m 38.435213,199.89199 30.893825,60.88524 -3.79886,1.86808 -30.893825,-60.88524 z"
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
sodipodi:nodetypes="ccccc" />
|
||||||
|
<circle
|
||||||
|
r="10.583333"
|
||||||
|
cy="258.89999"
|
||||||
|
cx="67.73333"
|
||||||
|
id="circle853"
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
sodipodi:nodetypes="ccccc"
|
||||||
|
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.29166651;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||||
|
d="M 106.89627,181.30574 42.383229,203.6554 41.047702,199.63826 105.56075,177.2886 Z"
|
||||||
|
id="path855"
|
||||||
|
inkscape:connector-curvature="0" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 7.9 KiB |
|
@ -1,6 +1,7 @@
|
||||||
-- This file is part of Vervis.
|
-- This file is part of Vervis.
|
||||||
--
|
--
|
||||||
-- Written in 2016, 2018, 2019, 2020 by fr33domlover <fr33domlover@riseup.net>.
|
-- Written in 2016, 2018, 2019, 2020, 2022
|
||||||
|
-- by fr33domlover <fr33domlover@riseup.net>.
|
||||||
--
|
--
|
||||||
-- ♡ Copying is an act of love. Please copy, reuse and share.
|
-- ♡ Copying is an act of love. Please copy, reuse and share.
|
||||||
--
|
--
|
||||||
|
@ -17,7 +18,8 @@
|
||||||
-- ----------------------------------------------------------------------------
|
-- ----------------------------------------------------------------------------
|
||||||
|
|
||||||
/static StaticR Static appStatic
|
/static StaticR Static appStatic
|
||||||
/favicon.ico FaviconR GET
|
/favicon.svg FaviconSvgR GET
|
||||||
|
/favicon.png FaviconPngR GET
|
||||||
/robots.txt RobotsR GET
|
/robots.txt RobotsR GET
|
||||||
|
|
||||||
/highlight/#Text/style.css HighlightStyleR GET
|
/highlight/#Text/style.css HighlightStyleR GET
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{- This file is part of Vervis.
|
{- This file is part of Vervis.
|
||||||
-
|
-
|
||||||
- Written in 2016, 2018, 2019 by fr33domlover <fr33domlover@riseup.net>.
|
- Written in 2016, 2018, 2019, 2022 by fr33domlover <fr33domlover@riseup.net>.
|
||||||
-
|
-
|
||||||
- ♡ Copying is an act of love. Please copy, reuse and share.
|
- ♡ Copying is an act of love. Please copy, reuse and share.
|
||||||
-
|
-
|
||||||
|
@ -760,7 +760,8 @@ instance YesodPaginate App where
|
||||||
instance YesodBreadcrumbs App where
|
instance YesodBreadcrumbs App where
|
||||||
breadcrumb route = return $ case route of
|
breadcrumb route = return $ case route of
|
||||||
StaticR _ -> ("", Nothing)
|
StaticR _ -> ("", Nothing)
|
||||||
FaviconR -> ("", Nothing)
|
FaviconSvgR -> ("", Nothing)
|
||||||
|
FaviconPngR -> ("", Nothing)
|
||||||
RobotsR -> ("", Nothing)
|
RobotsR -> ("", Nothing)
|
||||||
|
|
||||||
PublishR -> ("Publish", Just HomeR)
|
PublishR -> ("Publish", Just HomeR)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{- This file is part of Vervis.
|
{- This file is part of Vervis.
|
||||||
-
|
-
|
||||||
- Written in 2016, 2019 by fr33domlover <fr33domlover@riseup.net>.
|
- Written in 2016, 2019, 2022 by fr33domlover <fr33domlover@riseup.net>.
|
||||||
-
|
-
|
||||||
- ♡ Copying is an act of love. Please copy, reuse and share.
|
- ♡ Copying is an act of love. Please copy, reuse and share.
|
||||||
-
|
-
|
||||||
|
@ -15,7 +15,8 @@
|
||||||
|
|
||||||
-- | Common handler functions.
|
-- | Common handler functions.
|
||||||
module Vervis.Handler.Common
|
module Vervis.Handler.Common
|
||||||
( getFaviconR
|
( getFaviconSvgR
|
||||||
|
, getFaviconPngR
|
||||||
, getRobotsR
|
, getRobotsR
|
||||||
)
|
)
|
||||||
where
|
where
|
||||||
|
@ -28,11 +29,17 @@ import Vervis.Foundation
|
||||||
-- These handlers embed files in the executable at compile time to avoid a
|
-- These handlers embed files in the executable at compile time to avoid a
|
||||||
-- runtime dependency, and for efficiency.
|
-- runtime dependency, and for efficiency.
|
||||||
|
|
||||||
getFaviconR :: Handler TypedContent
|
getFaviconSvgR :: Handler TypedContent
|
||||||
getFaviconR =
|
getFaviconSvgR =
|
||||||
return $
|
return $
|
||||||
TypedContent "image/x-icon" $
|
TypedContent "image/svg+xml" $
|
||||||
toContent $(embedFile "config/favicon.ico")
|
toContent $(embedFile "config/favicon.svg")
|
||||||
|
|
||||||
|
getFaviconPngR :: Handler TypedContent
|
||||||
|
getFaviconPngR =
|
||||||
|
return $
|
||||||
|
TypedContent "image/png" $
|
||||||
|
toContent $(embedFile "config/favicon.png")
|
||||||
|
|
||||||
getRobotsR :: Handler TypedContent
|
getRobotsR :: Handler TypedContent
|
||||||
getRobotsR =
|
getRobotsR =
|
||||||
|
|
|
@ -10,6 +10,9 @@ $newline never
|
||||||
|
|
||||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||||||
|
|
||||||
|
<link rel="icon" type="image/svg+xml" href="/favicon.svg">
|
||||||
|
<link rel="icon" type="image/png" href="/favicon.png">
|
||||||
|
|
||||||
^{pageHead pc}
|
^{pageHead pc}
|
||||||
|
|
||||||
$# <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js">
|
$# <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js">
|
||||||
|
|
Loading…
Reference in a new issue