git.iko.soy/gigawork-coworking/gigawork-coworking.github.io
on master help sign in
11 files changed+58−25
since splitsnapshots
unifiedsplit
app/Route/Index.elm+25−23 app/Shared.elm+13−1 elm-pages.config.mjs+14−1 public/air.jpg public/chair.png public/coffee.jpg public/map.png public/printer.jpg public/sofa.jpg public/usb-c.jpg public/yandex_7a75468af3448eee.html+6
app/Route/Index.elm+25−23
@@ -10,6 +10,8 @@ import Head
1010import Head.Seo as Seo
1111import Html
1212import Html.Attributes as Html
13+import LanguageTag.Language
14+import LanguageTag.Region
1315import Pages.Url
1416import PagesMsg exposing (PagesMsg)
1517import Route
@@ -64,13 +66,13 @@ head app =
6466 { canonicalUrlOverride = Nothing
6567 , siteName = "GigaWork"
6668 , image =
67− { url = [ "images", "icon-png.png" ] |> UrlPath.join |> Pages.Url.fromPath
68− , alt = "elm-pages logo"
69+ { url = [] |> UrlPath.join |> Pages.Url.fromPath
70+ , alt = ""
6971 , dimensions = Nothing
7072 , mimeType = Nothing
7173 }
7274 , description = "Преимальный коворкинг у дома"
73− , locale = Nothing
75+ , locale = Just ( LanguageTag.Language.ru, LanguageTag.Region.ru )
7476 , title = "GigaWork"
7577 }
7678 |> Seo.website
@@ -96,38 +98,50 @@ view app shared =
9698 (text "Премиальный коворкинг у дома")
9799 ]
98100 , callToAction
101+ , column [ spacing 27, width fill ]
102+ [ subtitle "Адрес"
103+ , paragraph [ noto, Font.size 18, Font.extraBold ] [ text "Москва, Рублевское шоссе, 22" ]
104+ , el [ width fill, height (px 400) ] <|
105+ html <|
106+ Html.iframe
107+ [ Html.src "https://yandex.ru/map-widget/v1/?um=constructor%3A6021061543ae5cffca6803ac7a0fa84e727d918c403c59250d18022f582f81d0&amp;source=constructor"
108+ , Html.height 400
109+ , Html.attribute "frameborder" "0"
110+ ]
111+ []
112+ ]
99113 , column [ spacing 24, width fill ]
100114 [ subtitle "Преимущества"
101115 , wrappedRow [ spacing 16, centerX, width fill ]
102116 [ card
103117 { title = "Удобное расположение"
104118 , body = "10 минут от метро Молодежная.\nБесплатная парковка."
105− , image = mockImage
119+ , image = image [ width fill, height fill ] { src = "/map.png", description = "Карта" }
106120 }
107121 , card
108122 { title = "Эргономичная мебель"
109123 , body = "Каждое рабочее место оснащено креслом Herman Miller."
110− , image = mockImage
124+ , image = image [ width fill, height fill ] { src = "/chair.png", description = "Кресло Herman Miller Mirra" }
111125 }
112126 , card
113127 { title = "Свежий кофе"
114128 , body = "Каждую неделю заказываем для вас свежеобжаренный кофе."
115− , image = mockImage
129+ , image = image [ width fill, height fill ] { src = "/coffee.jpg", description = "Кофе" }
116130 }
117131 , card
118132 { title = "Проводной интернет"
119133 , body = "Каждое рабочее место оснащено выходом USB-C с зарядкой и интернетом."
120− , image = mockImage
134+ , image = image [ width fill, height fill ] { src = "/usb-c.jpg", description = "Кабель USB-C" }
121135 }
122136 , card
123137 { title = "Принтер"
124138 , body = "Для вашего пользования есть лазерный принтер."
125− , image = mockImage
139+ , image = image [ width fill, height fill ] { src = "/printer.jpg", description = "Принтер" }
126140 }
127141 , card
128142 { title = "Лаундж-зона"
129143 , body = "Предусмотрена лаундж-зона для отдыха."
130− , image = mockImage
144+ , image = image [ width fill, height fill ] { src = "/sofa.jpg", description = "Диван" }
131145 }
132146 , card
133147 { title = "Кабинки для звонков"
@@ -137,7 +151,7 @@ view app shared =
137151 , card
138152 { title = "Комфортные условия"
139153 , body = "В коворкинге установлен кондиционер и очиститель воздуха."
140− , image = mockImage
154+ , image = image [ width fill, height fill ] { src = "/air.jpg", description = "Воздух" }
141155 }
142156 ]
143157 ]
@@ -153,18 +167,6 @@ view app shared =
153167 , weekendDayCard { title = "Вс" }
154168 ]
155169 ]
156− , column [ spacing 27, width fill ]
157− [ subtitle "Адрес"
158− , paragraph [ noto, Font.size 18, Font.extraBold ] [ text "Москва, Рублевское шоссе, 22" ]
159− , el [ width fill, height (px 400) ] <|
160− html <|
161− Html.iframe
162− [ Html.src "https://yandex.ru/map-widget/v1/?um=constructor%3A6021061543ae5cffca6803ac7a0fa84e727d918c403c59250d18022f582f81d0&amp;source=constructor"
163− , Html.height 400
164− , Html.attribute "frameborder" "0"
165− ]
166− []
167− ]
168170 , column [ spacing 27, width fill ]
169171 [ subtitle "Цена"
170172 , row [ width fill, spaceEvenly ]
@@ -488,7 +490,7 @@ priceCard cfg =
488490 [ el [ centerX, unbounded, Font.size 14, Font.heavy ] (text cfg.price)
489491 , el [ centerX, noto, Font.size 14, Font.regular ] (text cfg.subtitle)
490492 ]
491− , minWidth = 148
493+ , minWidth = 128
492494 }
493495
494496
app/Shared.elm+13−1
@@ -6,6 +6,7 @@ import Element exposing (..)
66import Element.Background as Background
77import FatalError exposing (FatalError)
88import Html exposing (Html)
9+import Html.Attributes as Attributes
910import Pages.Flags
1011import Pages.PageUrl exposing (PageUrl)
1112import Route exposing (Route)
@@ -93,6 +94,17 @@ view :
9394 -> View msg
9495 -> { body : List (Html msg), title : String }
9596view sharedData page model toMsg pageView =
96− { body = [ layout [ Background.color (rgb255 243 243 243) ] pageView.body ]
97+ { body =
98+ [ Html.div []
99+ [ Html.img
100+ [ Attributes.src "https://mc.yandex.ru/watch/99382050"
101+ , Attributes.style "position" "absolute"
102+ , Attributes.style "left" "-9999px;"
103+ , Attributes.alt ""
104+ ]
105+ []
106+ ]
107+ , layout [ Background.color (rgb255 243 243 243) ] pageView.body
108+ ]
97109 , title = pageView.title
98110 }
elm-pages.config.mjs+14−1
@@ -8,7 +8,20 @@ export default {
88 return `
99<link rel="stylesheet" href="/style.css" />
1010<meta name="generator" content="elm-pages v${context.cliVersion}" />
11− <script src="https://api-maps.yandex.ru/v3/?apikey=ab2d2369-9d42-4b81-8406-ff02533f5fcb&lang=ru_RU"></script>
11+<script type="text/javascript" >
12+ (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
13+ m[i].l=1*new Date();
14+ for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }}
15+ k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
16+ (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
17+
18+ ym(99382050, "init", {
19+ clickmap:true,
20+ trackLinks:true,
21+ accurateTrackBounce:true,
22+ webvisor:true
23+ });
24+</script>
1225`;
1326 },
1427 preloadTagForFile(file) {
public/air.jpgnew file

Binary file not shown.

public/chair.pngnew file

Binary file not shown.

public/coffee.jpgnew file

Binary file not shown.

public/map.pngnew file

Binary file not shown.

public/printer.jpgnew file

Binary file not shown.

public/sofa.jpgnew file

Binary file not shown.

public/usb-c.jpgnew file

Binary file not shown.

public/yandex_7a75468af3448eee.htmlnew file+6
@@ -0,0 +1,6 @@
1+<html>
2+ <head>
3+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
4+ </head>
5+ <body>Verification: 7a75468af3448eee</body>
6+</html>