Добавил один общий стиль для темной и светной темы
This commit is contained in:
parent
95ed1cf600
commit
4f096dbe3e
File diff suppressed because it is too large
Load Diff
@ -2,7 +2,6 @@
|
|||||||
document.addEventListener('DOMContentLoaded', function() {
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
const themeToggle = document.getElementById('theme-toggle');
|
const themeToggle = document.getElementById('theme-toggle');
|
||||||
const mobileThemeToggle = document.getElementById('mobile-theme-toggle');
|
const mobileThemeToggle = document.getElementById('mobile-theme-toggle');
|
||||||
const themeCSS = document.getElementById('theme-css');
|
|
||||||
const themeCSS1C = document.getElementById('theme-css-1c');
|
const themeCSS1C = document.getElementById('theme-css-1c');
|
||||||
|
|
||||||
// Проверяем сохраненную тему в localStorage
|
// Проверяем сохраненную тему в localStorage
|
||||||
@ -42,16 +41,20 @@ document.addEventListener('DOMContentLoaded', function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function switchToLightTheme() {
|
function switchToLightTheme() {
|
||||||
themeCSS.href = themeCSS.href.replace('styles_dark.css', 'styles_w.css');
|
document.body.classList.remove('theme-dark');
|
||||||
|
if (themeCSS1C) {
|
||||||
themeCSS1C.href = themeCSS1C.href.replace('1c-dark.min.css', '1c-light.min.css');
|
themeCSS1C.href = themeCSS1C.href.replace('1c-dark.min.css', '1c-light.min.css');
|
||||||
|
}
|
||||||
if (themeToggle) themeToggle.checked = true;
|
if (themeToggle) themeToggle.checked = true;
|
||||||
if (mobileThemeToggle) mobileThemeToggle.checked = true;
|
if (mobileThemeToggle) mobileThemeToggle.checked = true;
|
||||||
localStorage.setItem('theme', 'light');
|
localStorage.setItem('theme', 'light');
|
||||||
}
|
}
|
||||||
|
|
||||||
function switchToDarkTheme() {
|
function switchToDarkTheme() {
|
||||||
themeCSS.href = themeCSS.href.replace('styles_w.css', 'styles_dark.css');
|
document.body.classList.add('theme-dark');
|
||||||
|
if (themeCSS1C) {
|
||||||
themeCSS1C.href = themeCSS1C.href.replace('1c-light.min.css', '1c-dark.min.css');
|
themeCSS1C.href = themeCSS1C.href.replace('1c-light.min.css', '1c-dark.min.css');
|
||||||
|
}
|
||||||
if (themeToggle) themeToggle.checked = false;
|
if (themeToggle) themeToggle.checked = false;
|
||||||
if (mobileThemeToggle) mobileThemeToggle.checked = false;
|
if (mobileThemeToggle) mobileThemeToggle.checked = false;
|
||||||
localStorage.setItem('theme', 'dark');
|
localStorage.setItem('theme', 'dark');
|
||||||
@ -66,7 +69,6 @@ document.addEventListener('DOMContentLoaded', function() {
|
|||||||
themeCSS.onerror = function() {
|
themeCSS.onerror = function() {
|
||||||
console.error('Ошибка загрузки CSS файла темы');
|
console.error('Ошибка загрузки CSS файла темы');
|
||||||
// Восстанавливаем светлую тему по умолчанию при ошибке
|
// Восстанавливаем светлую тему по умолчанию при ошибке
|
||||||
themeCSS.href = themeCSS.href.replace('styles_dark.css', 'styles_w.css');
|
|
||||||
themeCSS1C.href = themeCSS1C.href.replace('1c-light.min.css', '1c-dark.min.css');
|
themeCSS1C.href = themeCSS1C.href.replace('1c-light.min.css', '1c-dark.min.css');
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
@ -30,7 +30,7 @@
|
|||||||
{% bootstrap_css %}
|
{% bootstrap_css %}
|
||||||
|
|
||||||
<!-- Основной CSS файл (темная тема по умолчанию) -->
|
<!-- Основной CSS файл (темная тема по умолчанию) -->
|
||||||
<link type="text/css" href="{% static 'programmer/css/styles_w.css' %}" rel="stylesheet" id="theme-css" />
|
<link type="text/css" href="{% static 'programmer/css/styles.css' %}" rel="stylesheet" />
|
||||||
|
|
||||||
<!-- Тема Highlight.js -->
|
<!-- Тема Highlight.js -->
|
||||||
<!-- <link rel="stylesheet" href="{% static 'programmer/css/highlight-default.min.css' %}">-->
|
<!-- <link rel="stylesheet" href="{% static 'programmer/css/highlight-default.min.css' %}">-->
|
||||||
@ -677,7 +677,7 @@
|
|||||||
<p>📱 {{ CONTACT_PHONE }}</p>
|
<p>📱 {{ CONTACT_PHONE }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="footer-copyright">
|
<div class="footer-copyright">
|
||||||
<p>© 2025 ИП Сердюк Николай Александрович. Все права защищены.</p>
|
<p>© 2026 ИП Сердюк Николай Александрович. Все права защищены.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -705,29 +705,6 @@
|
|||||||
<!-- <script src="{% static 'programmer/js/1c-enterprise.min.js' %}"></script>-->
|
<!-- <script src="{% static 'programmer/js/1c-enterprise.min.js' %}"></script>-->
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
<!-- В recall.html после основного контента -->
|
|
||||||
<script type="application/ld+json">
|
|
||||||
{
|
|
||||||
"@context": "https://schema.org",
|
|
||||||
"@type": "Review",
|
|
||||||
"itemReviewed": {
|
|
||||||
"@type": "Service",
|
|
||||||
"name": "Услуги программиста 1С"
|
|
||||||
},
|
|
||||||
"author": {
|
|
||||||
"@type": "Organization",
|
|
||||||
"name": "ООО «РОВЕН-Регионы»"
|
|
||||||
},
|
|
||||||
"reviewRating": {
|
|
||||||
"@type": "Rating",
|
|
||||||
"ratingValue": "5",
|
|
||||||
"bestRating": "5"
|
|
||||||
},
|
|
||||||
"datePublished": "2025-11-13",
|
|
||||||
"description": "Выражаю благодарность программисту 1С Николаю Сердюк за профессиональную работу и качественное решение поставленных задач..."
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
const bottomConsent = document.getElementById('cookie-consent-bottom');
|
const bottomConsent = document.getElementById('cookie-consent-bottom');
|
||||||
|
|||||||
@ -264,9 +264,12 @@ class ProfileEditView(LoginRequiredMixin, PageViewTrackingMixin, MenuContextMixi
|
|||||||
return self.render_to_response(context)
|
return self.render_to_response(context)
|
||||||
|
|
||||||
|
|
||||||
class PrivacyPolicyView(TemplateView):
|
class PrivacyPolicyView(TemplateView, MenuContextMixin, BreadcrumbMixin):
|
||||||
template_name = 'programmer/privacy.html'
|
template_name = 'programmer/privacy.html'
|
||||||
|
|
||||||
|
def get_breadcrumbs(self):
|
||||||
|
return [{'title': 'Политика конфиденциальности', 'url_name': None}]
|
||||||
|
|
||||||
|
|
||||||
@require_POST
|
@require_POST
|
||||||
def callback_request(request: HttpRequest) -> HttpResponse:
|
def callback_request(request: HttpRequest) -> HttpResponse:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user