1
0
mirror of https://github.com/robonen/metr.git synced 2026-03-20 10:54:41 +00:00
This commit is contained in:
2022-04-29 08:53:19 +07:00
parent 7a6ba238a6
commit f0fa19d3cd
148 changed files with 38214 additions and 91 deletions

21
public/.htaccess Normal file
View File

@@ -0,0 +1,21 @@
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
RewriteEngine On
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
# Send Requests To Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>

545
public/css/app.css Normal file
View File

@@ -0,0 +1,545 @@
body {
margin: 0;
font-family: 'Inter', sans-serif;
background-color: rgba(124, 173, 201, 1);
font-size: 17px;
color: white;
line-height: 1.6;
}
*,
*:before,
*:after {
box-sizing: border-box;
}
h1, h2, h3, h4, h5, h6 {
margin: 0;
font-family: 'Montserrat', sans-serif;
}
.container {
width: 100%;
height: 100vh;
max-width: 1920px;
margin: 0 auto;
background-image: linear-gradient(to top, rgba(124, 173, 201, 0.2), rgba(124, 173, 201, 0.2)), url(/images/intro.jpg?fe9a5c089b02d7e91471aac13045b7c3);
background-size: cover;
display: flex;
flex-direction: column;
justify-content:center;
}
.logo {
display: flex;
flex-direction: column;
align-items: center;
}
.logoMetr {
width: 185px;
height: 100px;
background: url(/images/metr.svg?4222bf66d404af1ce5164dd0ed7b04f4) center no-repeat;
background-size: cover;
}
.title {
margin: 1% 0;
display: flex;
flex-direction: column;
align-items: center;
}
.title h2{
font-size: 35px;
}
.form__example {
display: flex;
flex-direction: column;
align-items: center;
}
.form__input {
margin-top: 30px;
width: 320px;
height: 40px;
background-color: #1A89C9;
color: white;
font-family: 'Montserrat', sans-serif;
font-size: 14px;
border-radius: 10px;
border: 0px;
}
.form__input:hover {
color: rgb(15, 10, 41);
font-weight: 600;
transition: color .1s linear;
}
.login {
width: 320px;
height: 50px;
padding-left: 1%;
}
input {
margin: 0;
padding: 0;
color: rgb(129, 125, 125);
font-family: 'Montserrat', sans-serif;
}
.header {
width: 100%;
position: absolute;
top: 0;
left: 0;
right: 0;
z-index: 1000;
}
.header__table {
width: 1052px;
height: 100px;
border: 2px solid white;
margin: 50px auto 0;
display: flex;
flex-direction: row;
justify-content: center;
color: white;
}
.header__image {
width: 140px;
height: 96px;
margin: 0 auto;
background: url(/images/metr.svg?4222bf66d404af1ce5164dd0ed7b04f4) center
no-repeat;
background-size: cover;
border-right: 2px solid white;
}
.header__block {
width: 145px;
height: 96px;
margin: 0 auto;
border-right: 2px solid white;
}
.header__search {
width: 426px;
height: 96px;
margin: 0 auto;
display: flex;
flex-direction: row;
justify-content: center;
border-right: 2px solid white;
}
.search {
width: 340px;
height: 40px;
padding-top: 25px;
display: flex;
flex-direction: row;
justify-content: space-between;
}
.search__block {
width: 300px;
height: 40px;
margin: 0;
padding-top: 20px;
background: white;
border: 1px solid black;
}
.search__img {
width: 40px;
height: 40px;
margin: 0;
padding-top: 2px;
}
.header__contacts {
width: 46px;
height: 96px;
margin: 0 auto;
display: flex;
flex-direction: column;
}
.header__contacts__imgtop {
width: 48px;
height: 48px;
padding-top: 5px;
border-bottom: 2px solid white;
}
.header__contacts__img {
width: 48px;
height: 48px;
padding-top: 5px;
}
.header__block__content {
width: 70px;
height: 20px;
margin: 0 auto;
padding-top: 35px;
}
.header__block__contenttop {
width: 145px;
height: 48px;
margin: 0 auto;
border-bottom: 2px solid white;
}
.header__block__contentbott {
width: 145px;
height: 48px;
}
.nav__link {
text-decoration: none;
color: white;
font-size: 15px;
display: flex;
flex-direction: row;
justify-content: center;
padding-top: 10px;
}
.nav__link_tomsk {
text-decoration: none;
color: white;
font-size: 15px;
}
.nav__link:hover, .nav__link_tomsk:hover {
color: #389EEB;
transition: color .2s linear;
}
/* Intro */
.intro {
width: 100%;
height: 100vh;
display: flex;
flex-direction: column;
justify-content:center;
padding-top: 250px;
background-image: linear-gradient(to top, rgba(124, 173, 201, 1), rgba(94, 196, 242, 0.3)), url(/images/intro.jpg?fe9a5c089b02d7e91471aac13045b7c3);
background-size: cover;
}
.intro__text {
width: 100%;
height: 100px;
margin: 0 auto;
}
.intro__title {
font-size: 25px;
color: white;
text-align: center;
}
.newhome {
font-family: 'Stapel';
}
.intro__subtitle {
font-size: 17px;
color: white;
text-align: center;
font-family: 'Inter', sans-serif;
}
.intro_footer {
width: 1050px;
height: 80px;
margin: 300px auto 0;
display: flex;
flex-direction: row;
justify-content: space-between;
}
.intro__btn {
width: 185px;
height: 55px;
display: flex;
flex-direction: column;
justify-content: center;
border-radius: 5px;
background-color: rgba(26, 137, 201, 1);
}
.intro__button {
font-size: 12px;
text-transform: uppercase;
text-decoration: none;
margin: 0 auto;
font-weight: 500;
color: white;
}
.intro__button:hover {
color: #0f171d;
font-weight: 600;
transition: color .2s linear;
}
.intro__odnushka {
width: 250px;
height: 50px;
display: flex;
flex-direction: column;
}
.odnushka {
font-size: 17px;
color: black;
background: white;
text-decoration: none;
padding: 2px;
font-weight: 600;
}
.odnushka__price {
width: 115px;
font-size: 17px;
text-decoration: none;
padding: 2px;
font-weight: 900;
color: black;
background: white;
font-family: 'Inter';
}
.title {
font-size: 25px;
font-family: 'Inter';
font-weight: 400;
}
/* About */
.about {
height: 100vh;
background-color: rgba(124, 173, 201, 1);
margin: 0 auto;
display: flex;
flex-direction: column;
justify-content: space-between;
font-family: 'Inter', sans-serif;
}
.about__title {
padding-left: 10%;
padding-top: 50px;
font-size: 40px;
font-family: 'Stapel';
}
.video {
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
width: 1300px;
height: 590px;
border: 1px solid black;
background-image: linear-gradient(to top, rgba(124, 173, 201, 0.6), rgba(94, 196, 242, 0.2)), url(/images/video.jpg?376d4147a4b5eb5d4dc903728361d6fc);
background-size: cover;
}
.about__us {
margin-right: 5%;
font-family: 'Inter';
font-weight: 100;
font-size: 17px;
display: flex;
flex-direction: column;
align-items: flex-end;
}
/* Suggestions */
.suggestions {
padding-top: 10%;
background-color: rgba(124, 173, 201, 1);
height: 100%;
min-height: 600px;
display: flex;
flex-direction: column;
justify-content: space-between;
margin: 0 auto;
}
.suggestions__title {
font-size: 25px;
padding-left: 10%;
}
.suggestions__images {
margin: 2% 12%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: center;
}
.sugg__img {
flex-basis: 30%;
height: 460px;
margin: 4% 0 1% auto;
background: linear-gradient(to top, rgba(1, 80, 140, 1), rgba(37, 45, 45, 0.6));
transition: transform .2s linear;
}
.afterword {
margin: 0 5% 0 0;
display: flex;
flex-direction: column;
align-items: flex-end;
font-size: 17px;
}
.after__afterword {
font-weight: 600;
margin-right: 5%;
}
.gradient {
display: inline-block;
position: relative;
line-height: 0;
}
.gradient:after {
content: "";
display: block;
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background: transparent;
background-image: linear-gradient(to bottom, rgba(15, 34, 38, 0.4), rgba(99, 137, 159, 0.8));
opacity: 0.8;
}
.podlozhka {
position: relative;
}
.podlozhka:hover .sugg__img {
transform: translate3d(-10px, -10px, 0);
}
.podlozhka:hover .sugg__img img {
opacity: 0.6;
}
.podlozhka:hover .sugg__text{
opacity: 1;
}
.sugg__img img {
transition: opacity .1s linear;
}
.sugg__text {
width: 100%;
text-align: center;
position: absolute;
top: 90%;
left: 0;
z-index: 2;
transform: translate3d(0, -50%, 0);
opacity: 0;
transition: opacity .2s linear;
}
.sugg__text p {
width: 180px;
color: black;
font-family:sans-serif;
font-weight: 100;
font-size: 17px;
background: white;
text-decoration: none;
margin: 0 auto;
}
.sugg__text h2 {
width: 100px;
font-weight: 700;
margin: 0 auto;
color: black;
font-family:sans-serif;
font-size: 17px;
background: white;
}
/* Footer */
.footer {
height: 200px;
margin: 0 auto;
padding-top: 1%;
background-color: rgba(124, 173, 201, 1);
}
.footer__search {
width: 300px;
height: 96px;
margin: 0 auto;
display: flex;
flex-direction: row;
justify-content: center;
border-right: 2px solid white;
}
.footer__contacts {
width: 165px;
height: 96px;
margin: 0 auto;
display: flex;
flex-direction: column;
}
.footer__contacts__imgtop {
width: 165px;
height: 48px;
border-bottom: 2px solid white;
margin: 0;
}
.footer__contacts__img {
width: 166px;
height: 48px;
margin: 0;
}

0
public/favicon.ico Normal file
View File

BIN
public/images/intro.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 461 KiB

3
public/images/metr.svg Normal file
View File

@@ -0,0 +1,3 @@
<svg width="265" height="139" viewBox="0 0 265 139" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M264.708 0H0V139H264.708V0ZM127.614 71.5571V68.2211C127.614 63.7361 126.374 60.5113 123.894 58.5467C121.414 56.5822 117.656 55.5999 112.619 55.5999C107.201 55.5999 103.252 56.7119 100.772 58.9359C98.3295 61.1229 97.1085 64.9778 97.1085 70.5007C97.1085 75.8754 98.3486 79.6562 100.829 81.8431C103.309 83.993 107.258 85.0679 112.676 85.0679C117.56 85.0679 121.204 84.2525 123.608 82.6215C126.012 80.9906 127.347 78.1921 127.614 74.2259H117.999C117.732 76.7094 115.958 77.9511 112.676 77.9511C110.692 77.9511 109.204 77.4693 108.212 76.5055C107.258 75.5418 106.762 73.9294 106.724 71.6683V71.5571H127.614ZM106.724 68.6659V68.2211C106.8 66.2195 107.334 64.811 108.326 63.9955C109.318 63.143 110.73 62.7167 112.562 62.7167C114.355 62.7167 115.691 63.1801 116.568 64.1067C117.484 64.9963 117.942 66.5161 117.942 68.6659H106.724ZM62.2136 69.4999L70.1691 77.5619L78.1247 69.4999V84.2339H87.3966V56.4339H79.7272L70.1691 66.9423L60.611 56.4339H52.9416V84.2339H62.2136V69.4999ZM134.941 56.4339H162.871V63.5507H153.714V84.2339H144.098V63.5507H134.941V56.4339ZM181.922 78.5071C183.067 82.881 186.138 85.0679 191.137 85.0679C195.029 85.0679 197.89 84.0115 199.722 81.8987C201.553 79.7489 202.469 75.931 202.469 70.4451C202.469 64.9222 201.553 61.0673 199.722 58.8803C197.89 56.6934 195.029 55.5999 191.137 55.5999C188.695 55.5999 186.672 56.1745 185.07 57.3235C183.505 58.4726 182.456 60.085 181.922 62.1607H180.949V56.4339H171.334V94.2419H180.949V78.5071H181.922ZM180.949 67.7207C181.064 64.3847 182.971 62.7167 186.672 62.7167C189.038 62.7167 190.66 63.2357 191.537 64.2735C192.453 65.2743 192.911 67.3315 192.911 70.4451C192.911 73.4846 192.472 75.5047 191.595 76.5055C190.717 77.4693 189.076 77.9511 186.672 77.9511C182.857 77.9511 180.949 76.1905 180.949 72.6691V67.7207Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

BIN
public/images/video.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 556 KiB

55
public/index.php Normal file
View File

@@ -0,0 +1,55 @@
<?php
use Illuminate\Contracts\Http\Kernel;
use Illuminate\Http\Request;
define('LARAVEL_START', microtime(true));
/*
|--------------------------------------------------------------------------
| Check If The Application Is Under Maintenance
|--------------------------------------------------------------------------
|
| If the application is in maintenance / demo mode via the "down" command
| we will load this file so that any pre-rendered content can be shown
| instead of starting the framework, which could cause an exception.
|
*/
if (file_exists($maintenance = __DIR__.'/../storage/framework/maintenance.php')) {
require $maintenance;
}
/*
|--------------------------------------------------------------------------
| Register The Auto Loader
|--------------------------------------------------------------------------
|
| Composer provides a convenient, automatically generated class loader for
| this application. We just need to utilize it! We'll simply require it
| into the script here so we don't need to manually load our classes.
|
*/
require __DIR__.'/../vendor/autoload.php';
/*
|--------------------------------------------------------------------------
| Run The Application
|--------------------------------------------------------------------------
|
| Once we have the application, we can handle the incoming request using
| the application's HTTP kernel. Then, we will send the response back
| to this client's browser, allowing them to enjoy our application.
|
*/
$app = require_once __DIR__.'/../bootstrap/app.php';
$kernel = $app->make(Kernel::class);
$response = $kernel->handle(
$request = Request::capture()
)->send();
$kernel->terminate($request, $response);

19658
public/js/app.js Normal file

File diff suppressed because it is too large Load Diff

3
public/mix-manifest.json Normal file
View File

@@ -0,0 +1,3 @@
{
"/css/app.css": "/css/app.css"
}

2
public/robots.txt Normal file
View File

@@ -0,0 +1,2 @@
User-agent: *
Disallow: