templates/base.html.twig line 1

Open in your IDE?
  1. <!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="UTF-8">
            <title>
                {% block title %}NOVA-LINK
                {% endblock %}
            </title>
            <meta name="viewport" content="width=device-width, initial-scale=1">
    
            {% block stylesheets %}
                <style>
                    /* Bootstrap CSS */
                    link {
                        href: "https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css";
                        rel: "stylesheet";
                    }
    
                    /* Bootstrap Icons */
                    link {
                        href: "https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.0/font/bootstrap-icons.css";
                        rel: "stylesheet";
                    }
    
                    /* Favicon */
                    link {
                        rel: "icon";
                        href: "{{ asset('favicon.ico') }}";
                    }
    
                    :root {
                        --primary: rgb(255, 255, 255);
                        --secondary: #3498db;
                        --light: #ecf0f1;
                        --white: #ffffff;
                        --gray: #6c757d;
                        --primary_color: #4e73df;
                        --primary_dark_color: #2e59d9;
                        --site-name: "Nova-Link";
                    }
    
                    html,
                    body {
                        font-family: 'Helvetica', sans-serif;
                        height: 100%;
                    }
    
                    main {
                        flex: 1 0 auto; /* This makes the main container stretch */
                    }
    
                    body {
                        font-family: 'Arial', sans-serif;
                        margin: 0;
                        padding: 0;
                        color: #333;
                        background-color: var(--white);
                        display: flex;
                        flex-direction: column;
                        min-height: 100vh;
                    }
    
                    .navbar {
                        background-color: var(--primary);
                        padding: 1rem 0;
                        position: sticky;
                        top: 0;
                        z-index: 1000;
                        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
                        border-bottom: 1px solid black;
                    }
    
                    .nav-container {
                        width: 100%;
                        max-width: 1200px;
                        margin: 0 auto;
                        padding: 0 20px;
                        display: flex;
                        align-items: center;
                    }
    
                    .navbar-brand {
                        color: white;
                        font-size: 1.8rem;
                        font-weight: 700;
                        text-decoration: none;
                        letter-spacing: 1px;
                    }
    
                    .auth-controls {
                        display: flex;
                        align-items: center;
                        gap: 20px;
                        margin-left: auto;
                    }
    
                    .language-switcher {
                        display: flex;
                        border-radius: 4px;
                        overflow: hidden;
                        border: 1px solid rgba(255, 255, 255, 0.3);
                    }
    
                    .language-btn {
                        padding: 5px 15px;
                        background: transparent;
                        color: var(--white);
                        border: none;
                        font-size: 0.9rem;
                        cursor: pointer;
                        transition: all 0.3s;
                    }
    
                    .language-btn.active {
                        background: rgba(255, 255, 255, 0.1);
                    }
    
                    .login-btn {
                        padding: 8px 20px;
                        background: transparent;
                        color: black;
                        border: 1px solid rgb(0, 0, 0);
                        border-radius: 4px;
                        font-size: 0.9rem;
                        text-decoration: none;
                        transition: all 0.3s;
                    }
    
                    .login-btn:hover {
                        background: rgba(0, 0, 0, 0.1);
                    }
    
                    .username-display {
                        color: red;
                        font-size: 0.9rem;
                        margin-right: 10px;
                    }
    
                    /* Hero Section */
                    .hero-section {
                        background: rgb(255, 255, 255);
                        color: black;
                        text-align: center;
                        padding: 100px 0;
                        position: relative;
                    }
    
                    .hero-content {
                        max-width: 800px;
                        margin: 0 auto;
                        padding: 0 20px;
                    }
    
                    .hero-title {
                        font-size: 2.8rem;
                        /* font-weight: 700; */
                        margin-bottom: 20px;
                        line-height: 1.2;
                    }
    
                    .hero-subtitle {
                        font-size: 1.3rem;
                        opacity: 0.9;
                        margin-bottom: 40px;
                    }
    
                    .hero-buttons {
                        display: flex;
                        justify-content: center;
                        /* gap: 20px; */
                    }
    
                    .hero-btn {
                        display: inline-block;
                        padding: 12px 30px;
                        border-radius: 5px;
                        font-weight: 600;
                        text-decoration: none;
                        transition: all 0.3s;
                        font-size: 1rem;
                        margin-right: 10px;
                    }
    
                    .btn-primary,
                    .btn-submit {
                        background: #6C657D;
                        color: white;
                    }
    
                    .btn-primary:hover {
                        transform: translateY(-3px);
                        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
                    }
    
                    .btn-outline {
                        color: black;
                        background: rgba(0, 0, 0, 0.06);
                    }
    
                    .btn-outline:hover {
                        transform: translateY(-3px);
                        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
                    }
    
                    /* Containers */
                    .registration-container,
                    .login-container,
                    .stub-container,
                    .contact-container {
                        background: #F8F9FA;
                        border-radius: 10px;
                        box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
                        padding: 2rem;
                        margin: 2rem auto;
                        max-width: 500px;
                    }
    
                    .stub-container {
                        max-width: 800px;
                        margin: 3rem auto;
                        padding: 2rem;
                    }
    
                    .form-check-input[type=radio] {
                        margin-right: 0.5rem;
                    }
    
                    .form-check-inline {
                        display: inline-block;
                        margin-right: 1rem;
                    }
    
                    /* Footer */
                    .footer {
                        border-top: 1px solid black;
                        background-color: var(--primary);
                        color: black;
                        padding: 60px 0 30px;
                        flex-shrink: 0;
                    }
    
                    .footer-container {
                        width: 100%;
                        max-width: 1200px;
                        margin: 0 auto;
                        padding: 0 20px;
                    }
    
                    .footer-grid {
                        display: grid;
                        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
                        gap: 40px;
                        margin-bottom: 50px;
                    }
    
                    .footer-column h4 {
                        font-size: 1.1rem;
                        margin-bottom: 20px;
                        font-weight: 600;
                    }
    
                    .footer-links {
                        list-style: none;
                        padding: 0;
                        margin: 0;
                    }
    
                    .footer-links li {
                        margin-bottom: 12px;
                    }
    
                    .footer-links a {
                        color: rgb(0, 0, 0);
                        text-decoration: none;
                        transition: color 0.3s;
                        font-size: 0.9rem;
                    }
    
                    .footer-links a:hover {
                        color: rgb(0, 92, 20);
                    }
    
                    .footer-bottom {
                        text-align: center;
                        padding-top: 30px;
                        border-top: 1px solid rgb(0, 0, 0);
                        color: rgba(0, 0, 0, 0.5);
                        font-size: 0.85rem;
                    }
    
                    /* Form styles */
                    .form-control:focus {
                        box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25);
                        border-color: var(--primary);
                    }
    
                    .alert {
                        margin-top: 1rem;
                    }
    
                    .btn-link {
                        color: var(--primary);
                        font-weight: 500;
                    }
    
                    .btn-link:hover {
                        color: #1a252f;
                        text-decoration: underline;
                    }
    
                    .content-section {
                        text-align: justify;
                        text-indent: 20px;
                    }
    
                    #registration_form_userType_1 {
                        margin-left: 10px;
                    }
    
                    .forgot-password-link {
                        color: #6c757d;
                        text-decoration: none;
                        font-size: 0.9rem;
                        transition: color 0.3s;
                    }
    
                    .forgot-password-link:hover {
                        color: #0056b3;
                        text-decoration: underline;
                    }
                </style>
            {% endblock %}
        </head>
        <body>
    
            {# Navigation bar #}
            <nav class="navbar navbar-expand-lg navbar-dark">
                <div class="nav-container">
                    <a class="navbar-brand" href="{{ path('app_home') }}">
                        <img height="60px" src="{{ asset('/images/photo_2025-06-11_01-39-06.jpg') }}" alt="Logo">
                    </a>
    
                    <div class="auth-controls">
                        {# Language Switcher (commented out) #}
                        {#
                                                                                                                                                                                                    <div class="language-switcher">
                                                                                                                                                                                                        <button class="language-btn active" aria-label="Switch to English">EN</button>
                                                                                                                                                                                                        <a href="https://nova-link-china.cn"  class="language-btn" aria-label="Switch to Chinese version">中文</a>
                                                                                                                                                                                                    </div>
                                                                                                                                                                                                    #}
    
                            {% if app.user %}
                                <div class="d-flex align-items-center gap-3"> {% if is_granted('ROLE_ADMIN') %}
                                    <a
                                        href="{{ path('admin_dashboard') }}" class="text-white text-decoration-none" title="Admin Panel">
                                        {# Изменено на admin_dashboard #}
                                        <i class="bi bi-gear-fill" style="font-size: 1.25rem;"></i>
                                    </a>
                                {% endif %}
                                {# Изменение: Проверка роли для ссылки имени пользователя #}
                                {% if is_granted('ROLE_ADMIN') %}
                                    <a
                                        href="{{ path('admin_dashboard') }}" class="username-display text-white text-decoration-none">
                                        {# Ведёт на админку #}
                                        <i class="bi bi-person-circle me-1"></i>
                                        {{ app.user.username }}
                                    </a>
                                {% else %}
                                    <a
                                        href="{{ path('account_dashboard') }}" class="username-display text-white text-decoration-none">
                                        {# Ведёт на обычный дашборд #}
                                        <i class="bi bi-person-circle me-1"></i>
                                        {{ app.user.username }}
                                    </a>
                                {% endif %}
                                <a href="{{ path('app_logout') }}" class="login-btn">
                                    <i class="bi bi-box-arrow-right"></i>
                                    Logout
                                </a>
                            </div>
                        {% else %}
                            <a href="{{ path('app_login') }}" class="login-btn">Login</a>
                            <a href="{{ path('app_register') }}" class="login-btn">Register</a>
                        {% endif %}
                    </div>
                </div>
            </nav>
    
            {# Main content #}
            <main class="flex-grow-1"> {% block body %}{% endblock %}
                </main>
    
                {# Footer #}
                <footer class="footer mt-auto py-4">
                    <div class="footer-container">
                        <div class="footer-grid">
                            <div class="footer-column">
                                <h4>Services</h4>
                                <ul class="footer-links">
                                    <li>
                                        <a href="{{ path('app_vulnerability_sales') }}">Vulnerability Sales Market</a>
                                    </li>
                                    <li>
                                        <a href="{{ path('app_achievements') }}">Worldwide Achievements</a>
                                    </li>
                                    <li>
                                        <a href="{{ path('app_our_data') }}">Our Data</a>
                                    </li>
                                    <li>
                                        <a href="{{ path('app_how_to_work') }}">How to Work With Us</a>
                                    </li>
                                </ul>
                            </div>
                            <div class="footer-column">
                                <h4>Hardware</h4>
                                <ul class="footer-links">
                                    <li>
                                        <a href="{{ path('app_supported_hardware') }}">Supported ASIC Hardware</a>
                                    </li>
                                    <li>
                                        <a href="{{ path('app_download_agreement') }}">Download Agreement</a>
                                    </li>
                                </ul>
                            </div>
                            <div class="footer-column">
                                <h4>Legal</h4>
                                <ul class="footer-links">
                                    <li>
                                        <a href="{{ path('app_terms_of_use') }}">Terms of Use</a>
                                    </li>
                                    <li>
                                        <a href="{{ path('app_privacy') }}">Privacy Statement</a>
                                    </li>
                                    <li>
                                        <a href="{{ path('app_public_offer') }}">Public Offer</a>
                                    </li>
                                    <li>
                                        <a href="{{ path('app_kyc_procedure') }}">KYC Policy</a>
                                    </li>
                                </ul>
                            </div>
                            <div class="footer-column">
                                <h4>Account</h4>
                                <ul class="footer-links">
                                    <li>
                                        <a href="{{ path('app_register') }}">Registration</a>
                                    </li>
                                    <li>
                                        <a href="{{ path('app_login') }}">Log In</a>
                                    </li>
                                    <li>
                                        <a href="{{ path('app_contact') }}">Contact Us</a>
                                    </li>
                                </ul>
                            </div>
                        </div>
                        <p class="footer-bottom">&copy; 2024 NOVA-LINK. All rights reserved.</p>
                    </div>
                </footer>
    
                {# Bootstrap JS + Popper #}
                 <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
                <!-- Chart.js -->
                 <script src="https://cdn.jsdelivr.net/npm/chart.js@4.4.0"></script>
                <!-- Moment.js -->
                 <script src="https://cdn.jsdelivr.net/npm/moment@2.29.4/moment.min.js"></script>
                <!-- Chart.js adapter for Moment.js -->
                 <script src="https://cdn.jsdelivr.net/npm/chartjs-adapter-moment@1.0.1/dist/chartjs-adapter-moment.min.js"></script>
                <!-- Ваш скрипт worker-stats.js -->
                 <script src="{{ asset('js/worker-stats.js') }}"></script>
                {# Additional JS from child templates #}{% block javascripts %}
            {% endblock %}
    
        </body>
    </html>