Merge branch 'DevelopMadara'

This commit is contained in:
Hepatica
2024-02-22 19:35:13 +01:00
16 changed files with 411 additions and 41 deletions

View File

@@ -0,0 +1,73 @@
*{
font-family: Montserrat Alternates;
text-decoration: none;
}
.Heading_p1 {
font-size: 18px ;
font-family: Montserrat Alternates;
}
.heding2_text {
width: 949px;
height: 132px;
}
.Heading_p1 a {
color: #5865F2 ;
font-family: Montserrat Alternates;
}
.questions {
font-size: 18px ;
font-family: Montserrat Alternates;
}
.questions1 {
font-size: 18px ;
font-family: Montserrat Alternates;
background-color:#3f3f3f;
width: 426px;
height: 30px;
border-radius: 8px ;
justify-content: center;
align-content: center;
display: flex;
}
.questions1 b {
margin-top: 4.3px;
}
.questions1 img {
margin-left: 30px;
width: 16px;
margin-top: 6px;
}
.text_questions {
width: 840px;
height: 132px;
font-size: 18px ;
font-family: Montserrat Alternates;
}
.text_questions p {
font-size: 18px ;
font-family: Montserrat Alternates;
}
.questions2 {
font-size: 18px ;
font-family: Montserrat Alternates;
width: 544px;
height: 27px;
justify-content: center;
align-items: flex-start;
display: flex;
}
.questions2 img {
margin-left: 10px;
width: 16px;
margin-top: 3.5px;
}
.Social1where {
flex-direction: row;
width: 400px;
display: flex;
justify-content: space-around;
align-content: center;
}

View File

@@ -67,7 +67,41 @@
font-size: 12px;
padding-left: 40px;
}
.promo-input {
width: 284px;
height: 44px;
border-radius: 15px;
border: 2px solid #2B3458;
background: #22252F;
color: rgba(148, 148, 148, 0.95);
font-weight: 700;
font-family: Montserrat Alternates;
font-size: 12px;
padding-left: 40px;
flex: 3.5;
font-weight: 700px;
}
.vvod_promocoda {
flex: 1;
width: 52px;
height: 44px;
background-color: #EF4444;
margin-left: 10px;
margin-right: 16px;
justify-content: center;
align-items: center;
display: flex;
border-radius: 10px;
font-family: Montserrat Alternates;
font-weight: 600;
font-size: 19px;
color: #fff;
border: none;
}
.promokods {
display: flex;
flex-wrap: nowrap;
}
.display-btns {
display: flex;
margin-top: 10px;
@@ -85,6 +119,7 @@
border: none;
margin-right: 6px;
padding: 4px 19px;
}
.deposit-promocode {
@@ -160,7 +195,7 @@ input[type="checkbox"]:checked::before {
.btn-style-payments button {
border-radius: 10px;
background: #EF4444;
ont-family: Montserrat Alternates;
Font-family: Montserrat Alternates;
font-size: 16px;
color: #fff;
font-weight: 700;

View File

@@ -256,6 +256,33 @@ button {
grid-gap: 0.625rem;
}
.content-grid--help {
display: grid;
grid-auto-columns: 1fr;
grid-template-columns: 0.35fr repeat(5, 1fr) 1fr;
grid-template-rows: auto 0fr repeat(4, 1fr);
grid-template-areas:
"menu header header header header header header"
"menu help help help help help chat"
"menu help help help help help chat"
"menu help help help help help chat"
"menu help help help help help chat"
"menu help help help help help chat"
"menu help help help help help chat";
grid-gap: 0.625rem;
}
.help {
grid-area: help;
display: flex;
height: 95%;
border-radius: 3.125rem;
background: #17181C;
box-shadow: 0.25rem 0.25rem 0.25rem 0px rgba(0, 0, 0, 0.25);
margin: 0.625rem 2.438rem 1.125rem 1.125rem;
/*height: 96.2%;*/
}
.bg-gradient-left {
background: #293561;

Binary file not shown.

After

Width:  |  Height:  |  Size: 790 B

View File

@@ -74,4 +74,31 @@ export async function GetChatHistory() {
}
}
export async function ApplyPromoCode(authToken, searchToken, promoCode) {
const data = {
userCredentials: {
searchToken: searchToken,
authtoken: authToken
},
promoCode: promoCode
};
try {
const response = await fetch(`${BackendApiUrl}/PromoCode/ApplyPromo`, {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify(data),
redirect: "follow"
});
if (!response.ok) {
console.log("Fetch error:", response.status);
}
return await response.json();
} catch (error) {
console.log("Fetch error:", error);
}
}

View File

@@ -159,7 +159,7 @@
<p>Designer</p>
</div>
<div class="CLARFFY_icons">
<a href="https://t.me/poko084" target="_blank" ><img src="@/assets/icons-developcard/telegram.png" alt=""></a>
<a href="https://t.me/LDpoko" target="_blank" ><img src="@/assets/icons-developcard/telegram.png" alt=""></a>
<a href="https://discordapp.com/users/784873585852284938" target="_blank" ><img src="@/assets/icons-developcard/discord.png" alt=""></a>
</div>
</div>

View File

@@ -126,7 +126,7 @@ export default {
<nav>
<a href="#" @click="$router.push({ name: 'home' })" :class="{ 'header__nav--now' : $route.name === 'home' }">Главная</a>
<a v-if="authtoken !== ''" href="#" @click="$router.push({ name: 'profile' })" :class="{ 'header__nav--now' : $route.name === 'profile' }">Профиль</a>
<a href="#">Помощь</a>
<a href="#" @click="$router.push({ name: 'help' })" :class="{ 'header__nav--now' : $route.name === 'help' }">Помощь</a>
<a href="#" @click="$router.push({ name: 'about' })" :class="{ 'header__nav--now' : $route.name === 'about' }">О нас</a>
</nav>
</div>

View File

@@ -0,0 +1,12 @@
<template>
<p>dffsf</p>
</template>
<script>
import '@/assets/css/ComponentsStyles/Help.css'
export default {
}
</script>

View File

@@ -33,12 +33,15 @@
</ul>
</div>
<div v-if="showPromocodeStatus" class="error-promocode">
<h2 v-if="errorPromocode" class="error-text__promocode">Промокод не найден</h2>
<h2 v-if="errorPromocode" class="error-text__promocode">{{ promoResponse }}</h2>
<h2 v-else class="correct-text__promocode">Промокод успешно применён</h2>
</div>
<div class="deposit-promocode deposit-promocode__padding--input">
<h3>Промокод</h3>
<div class="promokods">
<input @focusout="checkValidationPromocode" v-model="promocode" class="promo-input" type="text" />
<button class="vvod_promocoda" @click="handleApplyPromoCode">Ввод</button>
</div>
</div>
<div class="error-checkbox" v-if="errorAgree">
<h2>Подтвердите согласие!</h2>
@@ -117,12 +120,14 @@ import PaymentsModalNumbers from "@/mocks/PaymentsModalNumbers";
import { GettingMoneyOperation, WithdrawMoneyOperation } from "@/assets/js/moneyoperation/Claimmoney";
import CaptchaComponent from "@/components/CaptchaComponent.vue";
import {eventBus} from "@/main";
import { useVuelidate } from '@vuelidate/core'
import {maxValue, minValue, required, numeric, integer, minLength, maxLength} from "@vuelidate/validators";
import {GetCurrentMoney} from "@/assets/js/rest/RestMethods";
import {GetCookie} from "@/assets/js/storage/CookieStorage";
import { ApplyPromoCode } from "@/assets/js/rest/RestMethods.js"; // Замените на правильный путь к файлу с функцией ApplyPromoCode
export default {
components: { CaptchaComponent },
@@ -212,10 +217,10 @@ export default {
closeModal() {
return this.$emit("closemodal");
},
checkValidationPromocode() {
this.errorPromocode = !this.promocodeBase.includes(this.promocode);
this.showPromocodeStatus = true
},
// checkValidationPromocode() {
// this.errorPromocode = !this.promocodeBase.includes(this.promocode);
// this.showPromocodeStatus = true
// },
completeValidationCheck() {
this.offBtn = true
@@ -232,6 +237,46 @@ export default {
this.captchaToken = Token
this.completeValidtaion.captchatokensaving = true
},
async handleApplyPromoCode() {
const authToken = GetCookie("AUTHTOKEN");
const searchToken = GetCookie("SearchToken");
try {
const response = await ApplyPromoCode(authToken, searchToken, this.promocode);
console.log(response);
if (response === 'Promo dont exist.')
{
this.showPromocodeStatus = true;
this.errorPromocode = true;
this.promoResponse = 'Промокод не найден';
}
else if(response === 'promotional code has expired')
{
this.showPromocodeStatus = true;
this.errorPromocode = true;
this.promoResponse = 'Не действителен';
}
else if(response === 'User is alredy use the promo')
{
this.showPromocodeStatus = true;
this.errorPromocode = true;
this.promoResponse = 'Уже использован';
}
else
{
this.showPromocodeStatus = true;
this.errorPromocode = false;
this.promoResponse = response;
}
}
catch (error)
{
console.error("Ошибка при применении промокода:", error);
}
},
async RedirectedMethodDep() {
this.v$.$touch()

View File

@@ -27,6 +27,7 @@ export default {
},
};
},
name: "HelpPage",
components: {
HeaderComponent,
AsideBarComponent,

View File

@@ -0,0 +1,110 @@
<template>
<div class="content-grid--help">
<aside-bar-component></aside-bar-component>
<develop-component></develop-component>
<header-component></header-component>
<chat-component></chat-component>
<section class="help">
<div class="box_help">
<div class="Heading_p1">
<div class="heding2"><h3>Заголовок</h3></div>
<div class="heding2_text">
<p><b>Какойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текст(Нашли баг? Eсть свежие идеи? -
Вам в наш <a href="" >дискорд)</a></b></p>
</div>
</div>
<div class="Heading_p1">
<div class="heding2"><h3>Заголовок</h3></div>
<div class="heding2_text">
<p><b>Какойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто
текст(Нашли баг? Eсть свежие идеи? -
Вам в наш <a href="" >дискорд)</a></b></p>
</div>
</div>
<div class="questions">
<div class="questions_box">
<h3>Частые вопросы:</h3>
</div>
<div class="questions1">
<b>Вилкой в глаз, или маму твою ебал?</b>
<img src="@\assets\icons-test\lest.png" alt="">
</div>
<div class="text_questions">
<p><b>Какойто текст Какойто текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текстКакойто текстКакойто текстКакойто
текстКакойто текстКакойто текст</b></p>
</div>
<div class="questions2">
<b>Вилкой в глаз, или маму твою ебал?</b>
<img src="@\assets\icons-test\lest.png" alt="">
</div>
<div class="Social1where">
<div class="Social1text">
Наши соц-сети:
</div>
<div class="Social1icons">
<a href="https://t.me/Ykropmaha" target="_blank" ><img src="@/assets/icons-developcard/telegram.png" alt=""></a>
<a href="https://discordapp.com/users/1126752682183503942" target="_blank" ><img src="@/assets/icons-developcard/discord.png" alt=""></a>
</div>
</div>
</div>
</div>
</section>
</div>
</template>
<script>
// import HelpComponent from "@/components/HelpComponent.vue";
import AsideBarComponent from "@/components/AsidebarComponent.vue";
import HeaderComponent from "@/components/HeaderComponent.vue";
import ChatComponent from "@/components/ChatComponent.vue";
import '@/assets/css/ComponentsStyles/Help.css'
export default {
data() {
return {
Object: {
bg: "value",
nickname: "value",
icons: {},
textTacholgy: { text1: "text2" },
},
name: 'HelpPage',
components: {
// HelpComponent
}
};
},
components: {
HeaderComponent,
AsideBarComponent,
// HelpComponent,
ChatComponent,
},
};
</script>

View File

@@ -118,34 +118,34 @@ export default {
},
NotificationMethod() {
this.notification = false
},
formatNumber(number) {
return number < 10 ? `0${number}` : number;
},
getCurrentFormattedDate() {
const currentDate = new Date();
return `${this.formatNumber(currentDate.getDate())}.${this.formatNumber(currentDate.getMonth() + 1)}.${currentDate.getFullYear()}, ${this.formatNumber(currentDate.getHours())}:${this.formatNumber(currentDate.getMinutes())}`;
},
claimDataDeposit(amount) {
const historyPayments = {
name: 'TEST USER',
comment: 'test',
data: this.getCurrentFormattedDate(),
amount: amount
}
this.arrayHistory.unshift(historyPayments)
},
claimDataWithdraw(amount) {
const historyPayments = {
name: 'TEST USER',
comment: 'test',
data: this.getCurrentFormattedDate(),
amount: -amount
}
this.arrayHistory.unshift(historyPayments)
}
// formatNumber(number) {
// return number < 10 ? `0${number}` : number;
// },
// getCurrentFormattedDate() {
// const currentDate = new Date();
// return `${this.formatNumber(currentDate.getDate())}.${this.formatNumber(currentDate.getMonth() + 1)}.${currentDate.getFullYear()}, ${this.formatNumber(currentDate.getHours())}:${this.formatNumber(currentDate.getMinutes())}`;
// },
// claimDataDeposit(amount) {
// const historyPayments = {
// name: 'TEST USER',
// comment: 'test',
// data: this.getCurrentFormattedDate(),
// amount: amount
// }
//
// this.arrayHistory.unshift(historyPayments)
// },
// claimDataWithdraw(amount) {
// const historyPayments = {
// name: 'TEST USER',
// comment: 'test',
// data: this.getCurrentFormattedDate(),
// amount: -amount
// }
//
// this.arrayHistory.unshift(historyPayments)
// }
}
}
</script>

View File

@@ -0,0 +1,22 @@
export default (await import('vue')).defineComponent({
data() {
return {
Object: {
bg: "value",
nickname: "value",
icons: {},
textTacholgy: { text1: "text2" },
},
name: 'HelpPage',
components: {
HelpComponent
}
};
},
components: {
HeaderComponent,
AsideBarComponent,
HelpComponent,
},
});

View File

@@ -0,0 +1,16 @@
export default (await import('vue')).defineComponent({
data() {
return {
Object: {
bg: "value",
nickname: "value",
icons: {},
textTacholgy: { text1: "text2" },
},
};
},
name: "HelpPage",
components: {
HeaderComponent
},
});

View File

@@ -6,7 +6,8 @@ import SapergamePage from "@/pages/games-pages/SapergamePage.vue";
import SettingsPage from "@/pages/SettingsPage.vue";
import CrashGamePage from "@/pages/games-pages/CrashgamePage.vue";
import JackpotPage from "@/pages/games-pages/JackpotPage.vue";
import AboutPage from "@/pages/AboutPage.vue"
import AboutPage from "@/pages/AboutPage.vue";
import HelpPage from "@/pages/HelpPage.vue" ;
export default createRouter({
history: createWebHistory(),
@@ -18,5 +19,6 @@ export default createRouter({
{ path: '/game/jackpot', component: JackpotPage, name: 'jackpot' },
{ path: '/settings', component: SettingsPage, name: 'settings' },
{ path: '/about', component: AboutPage, name: 'about' },
{ path: '/help', component: HelpPage, name: 'help' },
]
})