Compare commits

..

No commits in common. "master" and "friday-page" have entirely different histories.

32 changed files with 200 additions and 449 deletions

View File

@ -0,0 +1,47 @@
name: Gitea Actions
run-name: ${{ gitea.actor }} is testing out Gitea Actions ??
on: [push]
jobs:
Explore-Gitea-Actions:
runs-on: ubuntu-latest
env:
COMPOSER_AUTH: '{"github-oauth": {"github.com": "${{ secrets.COMPOSER_AUTH }}"}}'
name: Build and deploy
steps:
- name: Migrate env file
run: |
echo "${{ secrets.ENVIRONMENT }}" > ./.env
cat ./.env
- name: Install Node
uses: actions/setup-node@v4
with:
node-version: 18
- name: Checkout code
uses: actions/checkout@v3
- name: Install PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
extensions: curl, exif, fileinfo, mbstring, mysqli, mysqlnd, openssl, PDO, pdo_mysql
- name: Update npm dependencies
run: |
node -v
npm i --progress=false
- name: Update composer dependencies
uses: "ramsey/composer-install@v3"
with:
dependency-versions: "locked"
- name: Build frontend
run: npm run build
- name: Deploy to Server
uses: https://gitea.com/aquelle1/ssh-deploy@main
env:
SSH_PRIVATE_KEY: ${{ secrets.SSH_KEY }}
ARGS: "-rlgoDzvc -i --delete"
SOURCE: "./"
REMOTE_HOST: ${{ secrets.SSH_HOST }}
REMOTE_USER: ${{ secrets.SSH_USER }}
TARGET: ${{ secrets.SSH_DIR }}
SCRIPT_BEFORE: systemctl stop resume
SCRIPT_AFTER: systemctl start resume

View File

@ -1,44 +1,66 @@
# Установка
<p align="center"><a href="https://laravel.com" target="_blank"><img src="https://raw.githubusercontent.com/laravel/art/master/logo-lockup/5%20SVG/2%20CMYK/1%20Full%20Color/laravel-logolockup-cmyk-red.svg" width="400" alt="Laravel Logo"></a></p>
## 1. Клонируем проект с гита
<p align="center">
<a href="https://github.com/laravel/framework/actions"><img src="https://github.com/laravel/framework/workflows/tests/badge.svg" alt="Build Status"></a>
<a href="https://packagist.org/packages/laravel/framework"><img src="https://img.shields.io/packagist/dt/laravel/framework" alt="Total Downloads"></a>
<a href="https://packagist.org/packages/laravel/framework"><img src="https://img.shields.io/packagist/v/laravel/framework" alt="Latest Stable Version"></a>
<a href="https://packagist.org/packages/laravel/framework"><img src="https://img.shields.io/packagist/l/laravel/framework" alt="License"></a>
</p>
```
git clone http://gitea.dhaverd.ru:3000/Dhaverd/New-site.git
```
## About Laravel
## 2. Устанавливаем зависимости
```
npm i
composer install
```
Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experience to be truly fulfilling. Laravel takes the pain out of development by easing common tasks used in many web projects, such as:
## 3. Мигрируем бд
```
php artisan migrate
```
- [Simple, fast routing engine](https://laravel.com/docs/routing).
- [Powerful dependency injection container](https://laravel.com/docs/container).
- Multiple back-ends for [session](https://laravel.com/docs/session) and [cache](https://laravel.com/docs/cache) storage.
- Expressive, intuitive [database ORM](https://laravel.com/docs/eloquent).
- Database agnostic [schema migrations](https://laravel.com/docs/migrations).
- [Robust background job processing](https://laravel.com/docs/queues).
- [Real-time event broadcasting](https://laravel.com/docs/broadcasting).
## 4. Устанавливаем Voyager
```
php artisan voyager:install
php artisan voyager:admin your@email.com --create
php artisan vendor:publish --provider="TCG\Voyager\VoyagerServiceProvider"
php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravelRecent"
php artisan migrate
```
Laravel is accessible, powerful, and provides tools required for large, robust applications.
## 5. Пишем .env по примеру
## Learning Laravel
Главное это настроить подключение к БД:
```
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
```
Laravel has the most extensive and thorough [documentation](https://laravel.com/docs) and video tutorial library of all modern web application frameworks, making it a breeze to get started with the framework.
## 6. Билдим фронт
```
npm run build
```
You may also try the [Laravel Bootcamp](https://bootcamp.laravel.com), where you will be guided through building a modern Laravel application from scratch.
If you don't feel like reading, [Laracasts](https://laracasts.com) can help. Laracasts contains over 2000 video tutorials on a range of topics including Laravel, modern PHP, unit testing, and JavaScript. Boost your skills by digging into our comprehensive video library.
## Laravel Sponsors
We would like to extend our thanks to the following sponsors for funding Laravel development. If you are interested in becoming a sponsor, please visit the [Laravel Partners program](https://partners.laravel.com).
### Premium Partners
- **[Vehikl](https://vehikl.com/)**
- **[Tighten Co.](https://tighten.co)**
- **[WebReinvent](https://webreinvent.com/)**
- **[Kirschbaum Development Group](https://kirschbaumdevelopment.com)**
- **[64 Robots](https://64robots.com)**
- **[Curotec](https://www.curotec.com/services/technologies/laravel/)**
- **[Cyber-Duck](https://cyber-duck.co.uk)**
- **[DevSquad](https://devsquad.com/hire-laravel-developers)**
- **[Jump24](https://jump24.co.uk)**
- **[Redberry](https://redberry.international/laravel/)**
- **[Active Logic](https://activelogic.com)**
- **[byte5](https://byte5.de)**
- **[OP.GG](https://op.gg)**
## Contributing
Thank you for considering contributing to the Laravel framework! The contribution guide can be found in the [Laravel documentation](https://laravel.com/docs/contributions).
## Code of Conduct
In order to ensure that the Laravel community is welcoming to all, please review and abide by the [Code of Conduct](https://laravel.com/docs/contributions#code-of-conduct).
## Security Vulnerabilities
If you discover a security vulnerability within Laravel, please send an e-mail to Taylor Otwell via [taylor@laravel.com](mailto:taylor@laravel.com). All security vulnerabilities will be promptly addressed.
## License
The Laravel framework is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).

View File

@ -1,19 +0,0 @@
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use App\Models\Rating;
class RatingController extends Controller
{
public function index(Request $request)
{
$rating = new Rating;
$rating->rate = $request->rate;
$rating->comment = $request->comment;
$rating->save();
return ['code' => $rating->save() ? 200 : 500];
}
}

View File

@ -1,19 +0,0 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\Request;
class Rating extends Model
{
use HasFactory;
/**
* The table associated with the model.
*
* @var string
*/
protected $table = 'rating';
}

View File

@ -16,7 +16,6 @@ return new class extends Migration
$table->text("link_name");
$table->text("link");
$table->text("image");
$table->timestamps();
});
}

View File

@ -15,7 +15,6 @@ return new class extends Migration
$table->id("id");
$table->text("weekday_name");
$table->date("current_date");
$table->timestamps();
});
}

View File

@ -14,7 +14,6 @@ return new class extends Migration
Schema::create('games', function (Blueprint $table) {
$table->id("id");
$table->text("name");
$table->timestamps();
});
}

View File

@ -20,7 +20,6 @@ return new class extends Migration
table: "games", column: "id", indexName: "constraint_game_id"
);
$table->text("stream_time");
$table->timestamps();
});
}

View File

@ -1,28 +0,0 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('basya_phrases', function (Blueprint $table) {
$table->id();
$table->string('phrase', 255);
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('basya_phrases');
}
};

View File

@ -1,29 +0,0 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('rating', function (Blueprint $table) {
$table->id();
$table->integer('rate')->nullable();
$table->text('comment')->nullable();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('rating');
}
};

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

View File

Before

Width:  |  Height:  |  Size: 1023 KiB

After

Width:  |  Height:  |  Size: 1023 KiB

View File

@ -1,6 +1,5 @@
import './js/bootstrap';
import {createApp} from 'vue'
import { createPinia } from 'pinia'
import App from './views/basya/Basya.vue'
import { createVuetify } from 'vuetify'
import { mdi } from "vuetify/iconsets/mdi";
@ -9,11 +8,9 @@ import * as components from 'vuetify/components'
import * as directives from 'vuetify/directives'
import '@mdi/font/css/materialdesignicons.css'
const pinia = createPinia();
const vuetify = createVuetify({
components,
directives
})
createApp(App).use(vuetify).use(pinia).mount("#app")
createApp(App).use(vuetify).mount("#app")

View File

@ -1,39 +0,0 @@
.box-gradient {
border: 10px solid transparent;
background: linear-gradient(
#ffffff,
#ffffff) padding-box,
linear-gradient(45deg,
#FF52E5,
#F6D242) border-box;
border-radius: 14px;
}
.neon-text {
color: #fff!important;
text-shadow:
0 0 3px #fff,
0 0 5px #fff,
0 0 11px #fff,
0 0 16px #bc13fe,
0 0 20px #bc13fe,
0 0 26px #bc13fe,
0 0 30px #bc13fe,
0 0 34px #bc13fe !important;
}
.neon-border {
border: 0.2rem solid #fff !important;
border-radius: 2rem !important;
box-shadow: 0 0 .2rem #fff,
0 0 .2rem #fff,
0 0 2rem #bc13fe,
0 0 0.8rem #bc13fe,
0 0 2.8rem #bc13fe,
inset 0 0 1.3rem #bc13fe !important;
animation: pulsate 1.5s infinite alternate !important;
}
.white-text {
color: white!important;
}

View File

@ -0,0 +1,15 @@
import {defineStore} from "pinia";
export const useScheduleStore = defineStore('Schedule', {
state: () => ({
fetchingDates: true,
fetchingTable: true,
fetchingLinks: true
}),
getters: {
},
actions: {
},
})

View File

@ -1,20 +0,0 @@
import {defineStore} from "pinia";
import axios from "axios";
export const useBasyaStore = defineStore('basya', {
state: () => ({
phrases: Object
}),
getters: {
},
actions: {
async getPhrases(){
await axios
.get('/api/v1/phrases')
.then((response) => {
this.phrases = response.data;
});
}
},
})

View File

@ -1,37 +0,0 @@
import {defineStore} from "pinia";
import axios from "axios";
export const useScheduleStore = defineStore('schedule', {
state: () => ({
dates: Object,
links: Object,
schedules: Object
}),
getters: {
},
actions: {
async getDates(){
await axios
.get('/api/v1/dates')
.then((response) => {
this.dates = response.data;
});
},
async getLinks(){
await axios
.get('/api/v1/links')
.then((response)=>{
this.links = response.data;
})
},
async getSchedules(){
await axios
.get('/api/v1/schedules')
.then((response)=>{
this.schedules = response.data;
})
}
},
})

View File

@ -1,54 +1,42 @@
<template>
<v-sheet class="bg-grey-darken-3 mt-5 mb-5 rounded-lg w-75 pl-3">
<p class="neon-text text-xl-h3 text-lg-h3 text-md-h4 text-sm-h4 text-h5 ma-5">Расписание стримов</p>
<v-skeleton-loader v-if="fetching" type="text" class="bg-grey-darken-3"/>
<p v-else class="neon-text ma-5 text-xl-h3 text-lg-h3 text-md-h4 text-sm-h4 text-h5"> {{ parseDate(dates[0].current_date) }} - {{ parseDate(dates[1].current_date) }}</p>
<ScheduleTable :is-wide="isWide"/>
<p class="neon-text text-xl-h3 text-lg-h3 text-md-h4 text-sm-h4 text-h5 ma-5">Ссылочки</p>
<Links :is-wide="isWide"/>
<AdditionalButtons :is-wide="isWide"/>
<v-sheet class="mt-5 mb-5 rounded-lg w-75">
<p class="text-xl-h3 text-lg-h3 text-md-h4 text-sm-h4 text-h5 ma-5">Расписание стримов</p>
<v-skeleton-loader v-if="fetching" type="text" />
<p v-else class="ma-5 text-xl-h3 text-lg-h3 text-md-h4 text-sm-h4 text-h5"> {{ parseDate(dates[0].current_date) }} - {{ parseDate(dates[1].current_date) }}</p>
<ScheduleTable/>
<p class="text-xl-h3 text-lg-h3 text-md-h4 text-sm-h4 text-h5 ma-5">Ссылочки</p>
<Links/>
</v-sheet>
</template>
<script>
import axios from "axios";
import ScheduleTable from "./Schedule/ScheduleTable.vue";
import Links from "./Schedule/Links.vue";
import AdditionalButtons from "./Schedule/AdditionalButtons.vue";
import {ref} from "vue";
import {useScheduleStore} from '../stores/schedule.js';
export default {
name: "Schedule",
components: {AdditionalButtons, Links, ScheduleTable},
components: {Links, ScheduleTable},
data: () => ({
dates: ref(),
scheduleStore: useScheduleStore(),
fetching: true,
windowHeight: document.documentElement.clientHeight,
windowWidth: document.documentElement.clientWidth,
isWide: window.innerWidth >= 460
dates: [],
fetching: true
}),
methods: {
parseDate(date){
let dateArr = date.split("-");
return dateArr[2] + "." + dateArr[1];
},
myEventHandler(e) {
this.windowHeight = document.documentElement.clientHeight;
this.windowWidth = document.documentElement.clientWidth;
this.isWide = this.windowWidth >= 460;
async getDates(){
await axios
.get('/api/v1/dates')
.then(response => {
this.dates = response.data;
this.fetching = false;
});
}
},
created() {
window.addEventListener("resize", this.myEventHandler);
},
mounted() {
this.scheduleStore.getDates().then(()=>{
this.dates = this.scheduleStore.dates;
this.fetching = false;
});
this.myEventHandler();
window.addEventListener("resize", this.myEventHandler, { passive: true });
this.getDates();
}
}
</script>

View File

@ -1,101 +0,0 @@
<script>
import Links from "./Links.vue";
import ScheduleTable from "./ScheduleTable.vue";
import {ref} from "vue";
import {useScheduleStore} from "../../stores/schedule.js";
export default {
name: "AdditionalButtons",
data: () => ({
showModal: ref(false),
afterModal: ref(false),
afterModalText: '',
rating: 0,
comment: ''
}),
props: {
isWide: Boolean
},
methods:{
onShowModal(){
this.showModal = !this.showModal;
if (!this.showModal){
this.rating = 0;
this.comment = '';
}
},
onShowAfterModal(){
this.afterModal = !this.afterModal;
},
sendRating(){
axios.post(
'/api/v1/rating',
{
rate: this.rating,
comment: this.comment
}
).then((responce)=>{
this.onShowModal();
console.log(responce.data['code']);
if (responce.data['code'] === 200){
this.afterModalText = 'Спасибо за отзыв!';
} else {
this.afterModalText = 'Ошибка: Отзыв не отправился :(';
}
this.onShowAfterModal();
});
}
}
}
</script>
<template>
<div class="w-100 d-flex justify-space-evenly" :class="isWide ? '' : 'flex-column'">
<v-btn
class="bg-grey-darken-3 neon-border pt-3 pb-3 pl-3 pr-3 mt-7 mb-7 mr-5 ml-5 h-auto"
text="Кинуть копеечку"
href="https://www.donationalerts.com/r/dhaverd"
target="_blank"
/>
<v-btn
class="bg-grey-darken-3 neon-border pt-3 pb-3 pl-3 pr-3 mt-7 mb-7 mr-5 ml-5 h-auto"
text="Оставить отзыв"
@click="onShowModal"
/>
</div>
<v-dialog v-model="showModal" class="align-center" :class="isWide ? 'w-50' : 'w-100 h-100'">
<v-sheet class="mt-5 mb-5 pa-5 h-auto rounded-lg bg-grey-darken-3 neon-border d-flex flex-column">
<div class="w-100 d-flex justify-end bg-grey-darken-3">
<v-btn class="bg-grey-darken-3" icon="mdi-window-close" elevation="0" @click="onShowModal"/>
</div>
<v-label class="text-xl-h6 white-text ">Оцените канал:</v-label>
<v-rating v-model="rating" active-color="purple-darken-1">
sss
</v-rating>
<v-label class="text-xl-h6 mb-2 white-text ">Оставьте отзыв:</v-label>
<v-textarea v-model="comment" clearable variant="outlined" label="Что можно улучшить?"/>
<div class="d-flex justify-center">
<v-btn class="bg-grey-darken-3 neon-border pt-3 pb-3 pl-3 pr-3 w-auto h-auto" @click="sendRating">Отправить</v-btn>
</div>
</v-sheet>
</v-dialog>
<v-dialog v-model="afterModal" class="align-center" :class="isWide ? 'w-50' : 'w-100 h-100'">
<v-sheet class="mt-5 mb-5 pa-5 h-auto rounded-lg bg-grey-darken-3 neon-border d-flex flex-column">
<div class="w-100 d-flex justify-end bg-grey-darken-3">
<v-btn class="bg-grey-darken-3" icon="mdi-window-close" elevation="0" @click="onShowAfterModal"/>
</div>
<v-label class="text-xl-h6 white-text justify-center">{{afterModalText}}</v-label>
</v-sheet>
</v-dialog>
</template>
<style scoped>
.v-dialog {
align-items: center;
justify-content: center;
margin: auto;
}
.v-label {
color: #000000;
}
</style>

View File

@ -1,33 +1,45 @@
<script>
import {ref} from "vue";
import {useScheduleStore} from '../../stores/schedule.js';
import axios from "axios";
export default {
name: "Links",
data: () => ({
links: ref(),
links: [],
fetching: true,
scheduleStore: useScheduleStore()
windowHeight: document.documentElement.clientHeight,
windowWidth: document.documentElement.clientWidth,
isWide: window.innerWidth >= 460
}),
props: {
isWide: Boolean
},
mounted() {
this.scheduleStore.getLinks().then(()=>{
this.links = this.scheduleStore.links;
this.fetching = false;
});
axios
.get('/api/v1/links')
.then(response => {
this.links = response.data;
this.fetching = false;
});
this.myEventHandler();
window.addEventListener("resize", this.myEventHandler, { passive: true });
},
created() {
window.addEventListener("resize", this.myEventHandler);
},
methods: {
myEventHandler(e) {
this.windowHeight = document.documentElement.clientHeight;
this.windowWidth = document.documentElement.clientWidth;
this.isWide = this.windowWidth >= 460;
}
}
}
</script>
<template>
<div class="w-100 d-flex justify-center">
<v-list class="bg-grey-darken-3" :class="isWide ? 'w-66' : 'w-100'">
<v-skeleton-loader v-if="fetching" type="list-item" class="bg-grey-darken-3 ml-1 mr-3"/>
<v-list-item v-else class="bg-grey-darken-3 neon-border mt-6 mb-7 ml-7 mr-7" elevation="0" v-for="link in links" :href="link.link"> <!-- style="background-color: #E57373; color: #FFFFFF" -->
<v-list :class="isWide ? 'w-66' : 'w-100'">
<v-skeleton-loader v-if="fetching" type="list-item"/>
<v-list-item v-else class="ma-5 bg-gradient-noh" elevation="6" v-for="link in links" :href="link.link"> <!-- style="background-color: #E57373; color: #FFFFFF" -->
<template v-slot:prepend>
<v-avatar class="mt-1 mb-1 ml-5" :image="link.image" rounded="0"></v-avatar>
<v-avatar :image="link.image" rounded="0"></v-avatar>
</template>
<v-list-item-title>{{ link.link_name }}</v-list-item-title>
</v-list-item>
@ -36,5 +48,9 @@
</template>
<style scoped>
.bg-gradient-noh {
background: linear-gradient(-45deg, #f103b0, #f0a068, #4fdbfeff);
background-size: 200% 200%;
animation: gradient 15s ease infinite;
}
</style>

View File

@ -1,17 +1,12 @@
<script>
import {useScheduleStore} from '../../stores/schedule.js';
import {ref} from "vue";
import axios from "axios";
export default {
name: "ScheduleTable",
data: () => ({
schedules: ref(),
scheduleStore: useScheduleStore(),
schedules: [],
fetching: true
}),
props: {
isWide: Boolean
},
methods: {
parseDate(date){
let dateArr = date.split("-");
@ -19,18 +14,20 @@
}
},
mounted() {
this.scheduleStore.getSchedules().then(()=>{
this.schedules = this.scheduleStore.schedules;
this.fetching = false;
});
axios
.get('/api/v1/schedules')
.then(response => {
this.schedules = response.data;
this.fetching = false;
});
}
}
</script>
<template>
<div class="w-100 d-flex justify-center mt-6 mb-6">
<v-skeleton-loader v-if="fetching" type="table" class="bg-grey-darken-3 mr-3 ml-1"/>
<v-table v-else class="bg-grey-darken-3 neon-border pa-3 ml-1 mr-3 text-xl-h5 text-lg-h5 text-md-h5 text-sm-h5 text-body-2" :class="isWide ? 'w-66' : 'w-100'">
<div class="w-100 d-flex justify-center">
<v-skeleton-loader v-if="fetching" type="table"/>
<v-table v-else class="text-xl-h5 text-lg-h5 text-md-h5 text-sm-h5 text-body-2 w-66">
<tbody>
<tr v-for="schedule in schedules">
<td>{{ parseDate(schedule.current_date) }} {{ schedule.weekday_name }} {{ schedule.stream_time }}</td>

View File

@ -34,8 +34,7 @@
<script>
import {ref} from 'vue';
import {useBasyaStore} from "../../stores/basya.js";
import axios from "axios";
export default {
name: "Basya",
data: () => ({
@ -45,8 +44,7 @@ export default {
currentPhrase: ref(),
winWidth: ref(document.documentElement.clientWidth),
// size: ref(),
isLess: false,
basyaStore: useBasyaStore()
isLess: false
}),
methods: {
reloadPhrase(){
@ -63,11 +61,13 @@ export default {
}
},
mounted() {
this.basyaStore.getPhrases().then(()=>{
this.phrases = this.basyaStore.phrases;
this.reloadPhrase();
this.fetching = false;
})
axios
.get('/api/v1/phrases')
.then(response => {
this.phrases = response.data;
this.reloadPhrase();
this.fetching = false;
});
this.isLess = ref(this.winWidth.value <= 600 ? 'flex-column' : '');
/*
this.size = this.winWidth <= 600 ? 'x-small' :

View File

@ -55,12 +55,13 @@ export default {
methods: {
getCurrentDay(){
let date = new Date();
console.log(date);
return date.getDay();
},
checkFriday(){
this.isFirst = false;
let day = this.getCurrentDay();
this.notFriday = day !== 5;
this.notFriday = day !== 4;
this.day = this.dayList[day];
if (this.notFriday){
let prevPhrase = this.phrase;
@ -134,14 +135,11 @@ export default {
0% {
background-color: red;
}
25% {
50% {
background-color: #00ff00;
}
75% {
background-color: blue;
}
100% {
background-color: red;
background-color: blue;
}
}

View File

@ -3,7 +3,7 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Сегодня пятница?</title>
<title>Информация о трансляциях</title>
@vite('resources/friday.js')
@vite('resources/css/app.css')
</head>

View File

@ -1,6 +1,6 @@
<template>
<div class="d-flex justify-end align-center">
<v-table class="main-sheet-bg text-xxl-h6 text-xl-body-1 text-lg-body-1 text-md-body-1 text-sm-body-1 text-caption pl-5" :class="[this.isMore700 ? this.isWide ? 'w-25' : 'w-66' : 'w-100']" style="text-align: left">
<v-table class="main-sheet-bg text-xl-h6 text-lg-body-1 text-md-body-1 text-sm-body-1 text-caption pl-5" :class="[this.isMore700 ? this.isWide ? 'w-25' : 'w-66' : 'w-100']" style="text-align: left">
<tbody>
<tr>
<td><v-icon :icon="`mdi-account`"></v-icon>Возраст</td>
@ -21,7 +21,7 @@
</tbody>
</v-table>
<div v-if="this.isMore700" class="w-33">
<v-img class="image-gradient" src="./images/resume.png"></v-img>
<v-img class="image-gradient" src="./resume.png"></v-img>
</div>
</div>
</template>
@ -38,7 +38,7 @@ export default {
},
windowHeight: document.documentElement.clientHeight,
windowWidth: document.documentElement.clientWidth,
isWide: window.innerWidth > 1920,
isWide: window.innerWidth > 1750,
isMore700: window.innerWidth > 700,
tableClass: 'w-25'
}),

View File

@ -6,22 +6,6 @@
<title>Резюме</title>
@vite('resources/app.js')
@vite('resources/css/app.css')
<!-- Yandex.Metrika counter -->
<script type="text/javascript" >
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
m[i].l=1*new Date();
for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }}
k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
ym(97497664, "init", {
clickmap:true,
trackLinks:true,
accurateTrackBounce:true
});
</script>
<noscript><div><img src="https://mc.yandex.ru/watch/97497664" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->
</head>
<body class="antialiased">
<div id="app"></div>

View File

@ -6,22 +6,6 @@
<title>Информация о трансляциях</title>
@vite('resources/welcome.js')
@vite('resources/css/app.css')
<!-- Yandex.Metrika counter -->
<script type="text/javascript" >
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
m[i].l=1*new Date();
for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }}
k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
(window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
ym(97497583, "init", {
clickmap:true,
trackLinks:true,
accurateTrackBounce:true
});
</script>
<noscript><div><img src="https://mc.yandex.ru/watch/97497583" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->
</head>
<body class="antialiased">
<div id="app"></div>

View File

@ -19,4 +19,3 @@ Route::get('/links', 'App\Http\Controllers\LinksController@index')->name('links'
Route::get('/schedules', 'App\Http\Controllers\SchedulesController@index')->name('schedules');
Route::get('/dates', 'App\Http\Controllers\SchedulesController@mmDate')->name('dates');
Route::get('/phrases', 'App\Http\Controllers\BasyaPhrasesController@index')->name('phrases');
Route::post('/rating', 'App\Http\Controllers\RatingController@index')->name('rating');