very first commit

This commit is contained in:
sdarbinyan
2026-01-18 18:57:06 +04:00
commit bd80896886
152 changed files with 28211 additions and 0 deletions

View File

@@ -0,0 +1,97 @@
<!-- novo VERSION - Modern Clean Footer -->
@if (isnovo) {
<footer class="novo-footer">
<div class="novo-footer-container">
<div class="novo-footer-top">
<div class="novo-footer-col">
<h4>{{ brandName }}</h4>
<p class="novo-footer-desc">Современный маркетплейс для комфортных покупок</p>
</div>
<div class="novo-footer-col">
<h4>Компания</h4>
<ul class="novo-footer-links">
<li><a routerLink="/about">О нас</a></li>
<li><a routerLink="/contacts">Контакты</a></li>
<li><a routerLink="/company-details">Реквизиты</a></li>
</ul>
</div>
<div class="novo-footer-col">
<h4>Поддержка</h4>
<ul class="novo-footer-links">
<li><a routerLink="/faq">FAQ</a></li>
<li><a routerLink="/delivery">Доставка</a></li>
<li><a routerLink="/guarantee">Гарантия</a></li>
</ul>
</div>
<div class="novo-footer-col">
<h4>Правовая информация</h4>
<ul class="novo-footer-links">
<li><a routerLink="/public-offer">Оферта</a></li>
<li><a routerLink="/privacy-policy">Конфиденциальность</a></li>
<li><a routerLink="/return-policy">Возврат</a></li>
</ul>
</div>
</div>
<div class="novo-footer-bottom">
<div class="novo-copyright">
<p>© {{ currentYear }} {{ brandName }}</p>
</div>
<div class="novo-payment-icons">
<img src="/assets/images/mir-logo.svg" alt="МИР" loading="lazy" width="40" height="28" />
<img src="/assets/images/visa-logo.svg" alt="Visa" loading="lazy" width="40" height="28" />
<img src="/assets/images/mastercard-logo.svg" alt="Mastercard" loading="lazy" width="40" height="28" />
</div>
</div>
</div>
</footer>
} @else {
<!-- DEXAR VERSION - Original -->
<footer class="footer">
<div class="footer-container">
<div class="footer-section">
<h3>Информация</h3>
<ul>
<li><a routerLink="/about">О компании</a></li>
<li><a routerLink="/contacts">Контакты</a></li>
<li><a routerLink="/company-details">Реквизиты организации</a></li>
</ul>
</div>
<div class="footer-section">
<h3>Документы</h3>
<ul>
<li><a routerLink="/payment-terms">Правила оплаты</a></li>
<li><a routerLink="/return-policy">Политика возврата</a></li>
<li><a routerLink="/public-offer">Публичная оферта</a></li>
<li><a routerLink="/privacy-policy">Политика конфиденциальности</a></li>
</ul>
</div>
<div class="footer-section">
<h3>Помощь</h3>
<ul>
<li><a routerLink="/faq">Часто задаваемые вопросы</a></li>
<li><a routerLink="/delivery">Доставка</a></li>
<li><a routerLink="/guarantee">Гарантия</a></li>
</ul>
</div>
<div class="footer-section payment-systems">
<h3>Способы оплаты</h3>
<div class="payment-logos">
<img src="/assets/images/mir-logo.svg" alt="МИР" class="payment-logo" loading="lazy" decoding="async" width="60" height="40" />
<img src="/assets/images/visa-logo.svg" alt="Visa" class="payment-logo" loading="lazy" decoding="async" width="60" height="40" />
<img src="/assets/images/mastercard-logo.svg" alt="Mastercard" class="payment-logo" loading="lazy" decoding="async" width="60" height="40" />
</div>
</div>
</div>
<div class="footer-bottom">
<p>&copy; {{ currentYear }} {{ brandName }}. Все права защищены.</p>
</div>
</footer>
}

View File

@@ -0,0 +1,219 @@
.footer {
background-color: #1a1a1a;
color: #ffffff;
margin-top: auto;
padding: 3rem 0 1rem;
border-top: 1px solid #333;
.footer-container {
max-width: 1200px;
margin: 0 auto;
padding: 0 2rem;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 2rem;
}
.footer-section {
h3 {
font-size: 1.1rem;
font-weight: 600;
margin-bottom: 1rem;
color: #ffffff;
}
ul {
list-style: none;
padding: 0;
margin: 0;
li {
margin-bottom: 0.5rem;
a {
color: #b0b0b0;
text-decoration: none;
transition: color 0.2s ease;
font-size: 0.95rem;
&:hover {
color: #ffffff;
}
}
}
}
&.payment-systems {
.payment-logos {
display: flex;
gap: 1rem;
align-items: center;
flex-wrap: wrap;
.payment-logo {
height: 40px;
width: auto;
background: white;
padding: 0.5rem;
border-radius: 4px;
}
}
}
}
.footer-bottom {
max-width: 1200px;
margin: 0 auto;
padding: 2rem 2rem 0;
margin-top: 2rem;
border-top: 1px solid #333;
text-align: center;
p {
color: #808080;
font-size: 0.9rem;
margin: 0;
}
}
@media (max-width: 768px) {
padding: 2rem 0 1rem;
.footer-container {
grid-template-columns: 1fr;
gap: 1.5rem;
padding: 0 1rem;
}
.footer-section {
h3 {
font-size: 1rem;
}
}
}
}
// ========== novo FOOTER STYLES ==========
.novo-footer {
background: var(--text-primary);
color: white;
margin-top: auto;
padding: 3rem 0 0;
}
.novo-footer-container {
max-width: 1400px;
margin: 0 auto;
padding: 0 2rem;
}
.novo-footer-top {
display: grid;
grid-template-columns: 2fr 1fr 1fr 1fr;
gap: 3rem;
padding-bottom: 3rem;
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.novo-footer-col {
h4 {
font-size: 1.1rem;
font-weight: 600;
margin-bottom: 1.25rem;
color: white;
}
.novo-footer-desc {
color: rgba(255, 255, 255, 0.7);
line-height: 1.6;
font-size: 0.95rem;
}
}
.novo-footer-links {
list-style: none;
padding: 0;
margin: 0;
li {
margin-bottom: 0.75rem;
a {
color: rgba(255, 255, 255, 0.7);
text-decoration: none;
font-size: 0.95rem;
transition: all 0.3s;
display: inline-block;
&:hover {
color: white;
transform: translateX(4px);
}
}
}
}
.novo-footer-bottom {
display: flex;
justify-content: space-between;
align-items: center;
padding: 1.5rem 0;
}
.novo-copyright {
p {
color: rgba(255, 255, 255, 0.6);
font-size: 0.9rem;
margin: 0;
}
}
.novo-payment-icons {
display: flex;
gap: 0.75rem;
align-items: center;
img {
height: 28px;
width: auto;
background: white;
padding: 0.25rem 0.5rem;
border-radius: 6px;
opacity: 0.9;
transition: opacity 0.3s;
&:hover {
opacity: 1;
}
}
}
@media (max-width: 968px) {
.novo-footer-top {
grid-template-columns: 1fr 1fr;
gap: 2rem;
}
}
@media (max-width: 600px) {
.novo-footer {
padding: 2rem 0 0;
}
.novo-footer-container {
padding: 0 1rem;
}
.novo-footer-top {
grid-template-columns: 1fr;
gap: 2rem;
padding-bottom: 2rem;
}
.novo-footer-bottom {
flex-direction: column;
gap: 1rem;
padding: 1rem 0;
text-align: center;
}
}

View File

@@ -0,0 +1,18 @@
import { Component } from '@angular/core';
import { CommonModule } from '@angular/common';
import { RouterLink } from '@angular/router';
import { environment } from '../../../environments/environment';
@Component({
selector: 'app-footer',
standalone: true,
imports: [CommonModule, RouterLink],
templateUrl: './footer.component.html',
styleUrls: ['./footer.component.scss']
})
export class FooterComponent {
currentYear = new Date().getFullYear();
brandName = environment.brandName;
contactEmail = environment.contactEmail;
isnovo = environment.theme === 'novo';
}