добавлен футер со счетчиками

This commit is contained in:
erjemin
2021-08-18 22:00:37 +03:00
parent 9f1639203c
commit 37ddfbf6f2
5 changed files with 157 additions and 4 deletions

View File

@@ -34,7 +34,7 @@
</head> </head>
<body>{% block BODY %} <body>{% block BODY %}
{% block Top_CSS1 %}{% endblock %}{% block Top_CSS2 %}{% endblock %}{% block Top_CSS3 %}{% endblock %}{% include "blocks/header_nav.jinja2" %}{% block CONTENT %}{% endblock %} {% block Top_CSS1 %}{% endblock %}{% block Top_CSS2 %}{% endblock %}{% block Top_CSS3 %}{% endblock %}{% include "blocks/header_nav.jinja2" %}{% block CONTENT %}{% endblock %}
{# {% include "blocks/footer.jinja2" %}#}{% if COOKIES %} {% include "blocks/footer.jinja2" %}{% if COOKIES %}
{% include "blocks/accept-cookies.jinja2" %}{% endif %} {% include "blocks/accept-cookies.jinja2" %}{% endif %}
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.9.2/dist/umd/popper.min.js" integrity="sha384-IQsoLXl5PILFhosVNubq5LC7Qb9DXgDA9i+tQ8Zj3iwWAwPtgFTxbJ8NT4GN1R8p" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.9.2/dist/umd/popper.min.js" integrity="sha384-IQsoLXl5PILFhosVNubq5LC7Qb9DXgDA9i+tQ8Zj3iwWAwPtgFTxbJ8NT4GN1R8p" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.min.js" integrity="sha384-cVKIPhGWiC2Al4u+LWgxfKTRIcfu0JTxR+EQDz/bgldoEyl4H0zUF0QKbrJ0EcQF" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.min.js" integrity="sha384-cVKIPhGWiC2Al4u+LWgxfKTRIcfu0JTxR+EQDz/bgldoEyl4H0zUF0QKbrJ0EcQF" crossorigin="anonymous"></script>

View File

@@ -0,0 +1,35 @@
{# <!-- ХЛЕБНЫЕ КРОШКИ: НАЧАЛО -->#}
<footer class="container">
<nav class="row">
<div class="col-12 x d-flex align-items-center">
&copy; 2009 &mdash; {% now 'Y' %}, Sergei Erjemin
<div class="b88x31 ms-auto"><!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-9116991-1"></script>
<script>
window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments);}gtag('js',new Date());gtag('config','UA-9116991-1');
</script>
Google Analytics
</div>
<div class="b88x31"><!-- Yandex.Metrika informer -->
<a href="https://metrika.yandex.ru/stat/?id=198477&amp;from=informer" target="_blank" rel="nofollow"><img src="https://informer.yandex.ru/informer/198477/3_0_ECECECFF_CCCCCCFF_0_pageviews" style="width:88px;height:31px;border:0;" alt="Яндекс.Метрика" title="Яндекс.Метрика: данные за сегодня (просмотры, визиты и уникальные посетители)"/></a><!-- /Yandex.Metrika informer -->
<!-- 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();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(198477,"init",{clickmap:true,trackLinks:true,accurateTrackBounce:true});
</script><noscript>
<div><img src="https://mc.yandex.ru/watch/198477" style="position:absolute; left:-9999px;" alt=""/></div>
</noscript><!-- /Yandex.Metrika counter -->
</div>
<div class="b88x31"><!-- Rating Mail.ru counter -->
<script type="text/javascript">var _tmr=window._tmr || (window._tmr = []);_tmr.push({id:"1612438",type:"pageView",start:(new Date()).getTime()}); (function(d,w,id) {if (d.getElementById(id)) return; var ts=d.createElement("script");ts.type="text/javascript";ts.async=true;ts.id = id;ts.src="https://top-fwz1.mail.ru/js/code.js";var f=function() {var s=d.getElementsByTagName("script")[0];s.parentNode.insertBefore(ts s);};
if(w.opera=="[object Opera]"){d.addEventListener("DOMContentLoaded",f,false); }else{f();}})(document,window,"topmailru-code");
</script><noscript>
<img src="https://top-fwz1.mail.ru/counter?id=1612438;js=na" style="border:0;;position:absolute;left:-9999px;" alt="Top.Mail.Ru" />
</noscript><!-- //Rating Mail.ru counter -->
<!-- Rating Mail.ru logo --><a href="https://top.mail.ru/jump?from=1612438;t=464;l=1"><img src="https://top-fwz1.mail.ru/counter?id=1612438;t=466;l=1" alt="Top.Mail.Ru" /></a><!-- //Rating Mail.ru logo -->
</div>
<div class="b88x31"><!-- begin of Top100 logo -->
<a href="http://top100.rambler.ru/home?id=1739474"><img src="https://scounter.rambler.ru/img/top100/b5.gif" alt="Rambler's Top100" /></a><!-- end of Top100 logo -->
</div>
</div>
</nav>
</footer>{#<!-- ХЛЕБНЫЕ КРОШКИ: КОНЕЦ -->#}

View File

@@ -56,7 +56,7 @@
<div class="col-12 col-md-9"> <div class="col-12 col-md-9">
{% for i in LENTA %}<div class="row default-list"> {% for i in LENTA %}<div class="row default-list">
<div class="col-md-4 d-none d-md-block{% if forloop.counter|divisibleby:2 %} order-last{% endif %}"> <div class="col-md-4 d-none d-md-block{% if forloop.counter|divisibleby:2 %} order-last{% endif %}">
<a href="/news/1-latest-news/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">{% if i.imgContentPreview is None %} <a href="/item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">{% if i.imgContentPreview is None %}
<img src="{% static 'img/og-cadpoint-default.png' %}" <img src="{% static 'img/og-cadpoint-default.png' %}"
alt="{{ i.szContentHead|safe_html_ss }}" alt="{{ i.szContentHead|safe_html_ss }}"
title="{{ i.szContentHead|safe_html_ss }}" />{% else %} title="{{ i.szContentHead|safe_html_ss }}" />{% else %}
@@ -68,10 +68,10 @@
</div> </div>
<div class="col-12 col-md-8"> <div class="col-12 col-md-8">
<time datetime="{{ i.tdContentPublishUp|date:'Y-m-d' }}">{{ i.tdContentPublishUp|date:'d E Y' }} <small>({{ i.tdContentPublishUp|date:'l'|lower }})</small></time> <time datetime="{{ i.tdContentPublishUp|date:'Y-m-d' }}">{{ i.tdContentPublishUp|date:'d E Y' }} <small>({{ i.tdContentPublishUp|date:'l'|lower }})</small></time>
<h3><a href="/news/1-latest-news/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:"50" }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">{{ i.szContentHead|safe }}</a></h3> <h3><a href="/item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:"50" }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">{{ i.szContentHead|safe }}</a></h3>
<nav class="sm-tags">{% for t in i.tags.all%}<a href="/tag_{{ t.slug|lower }}"><i class="bi bi-tag"></i> {{ t.name }}</a> &nbsp; &#8198; {% endfor %}</nav> <nav class="sm-tags">{% for t in i.tags.all%}<a href="/tag_{{ t.slug|lower }}"><i class="bi bi-tag"></i> {{ t.name }}</a> &nbsp; &#8198; {% endfor %}</nav>
{{ i.szContentIntro|safe }} {{ i.szContentIntro|safe }}
<p class="next"><a href="item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">Читать дальше &rarr;</a></p> <p class="next"><a href="/item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ PAGE_OF_LIST }}&n={{ forloop.counter }}">Читать дальше &rarr;</a></p>
</div> </div>
</div>{% endfor %} </div>{% endfor %}

View File

@@ -0,0 +1,91 @@
{% extends "base.jinja2" %}{% load static %}{% load thumbnail %}{% load slug_ru %}
{% block META_OG %}{% comment %} РАЗМЕТКА Open Graph ДЛЯ СОЦ-СЕТЕЙ
подробности: https://habr.com/ru/company/macloud/blog/555082/{% endcomment %}
<meta property="og:title" content="Главная страница - RSVO.RU">{% comment %} Уникальное название страницы.
Используется парсерами URL-адресов в социальных сетях, таких как Twitter или Facebook{% endcomment %}
<meta property="og:description" content="RSVO.RU: Строительство и эксплуатация разноуровневых систем оповещения" />{% comment %} Уникальное описание страницы.
Используется парсерами URL-адресов в социальных сетях, таких как Twitter или Facebook.{% endcomment %}
<meta property="og:image" content="{% static 'img/og-cadpoint-default.png' %}" />{% comment %} Изображение, отображаемое, когда вы
делитесь ссылкой на страницу в социальных сетях, приложениях чата или других сайтах,
которые очищают URL-адреса.
В идеале это должно быть квадратное изображение с важным содержанием, размещенным
в центре квадрата в прямоугольнике с соотношением сторон 2:1. Это гарантирует,
что изображение будет хорошо смотреться на карточках с изображениями прямоугольной
и квадратной формы.{% endcomment %}
<meta property="og:image:alt" content="cadpint.ru: новости 3D-печати и Систем Автоматичекого Проектирования" />{% comment %}
Описание изображения.
Не используйте этот метатег, если изображение носит чисто декоративный характер
и не содержит значимой информации. Программы чтения с экрана игнорируют
изображение, если мы предоставлен замещающий текст.{% endcomment %}
<meta property="og:locale" content="ru_RU" />{% comment %} Естественный язык страницы.{% endcomment %}
<meta property="og:type" content="website" />{% comment %} Тип контента, которым вы делитесь,
например website, article, или video.movie{% endcomment %}
<meta property="og:url" content="https://cadpoiny.ru" />{% comment %} Канонический URL страницы.
Обязательное свойство для допустимых страниц Open Graph.{% endcomment %}
<meta name="twitter:card" content="summary_large_image" />{% comment %} определяет, как будут выглядеть
карточки при публикации в Twitter. Есть два варианта для веб-сайтов: summary
и summary_large_image{% endcomment %}{% endblock %}
<!--- ТИТУЛ --->
{% block Title %}Главная страница{% endblock %}
{% block canonical %}https://rsvo.ru/{{ ITEM.iPointType }}/{{ ITEM.szPointSlug }}{% if LIST and PAGE_OF_LIST != 0 %}/p{{ PAGE_OF_LIST }}{% endif %}{% endblock %}
{% block Description %}ФГУП Российские сети вещания и оповещения: Строительство и эксплуатация разноуровневых систем оповещения{% endblock %}
{% block Keywords %}ФГУП РСВО, российские сети вещания и оповещения, системы оповещения{% endblock %}
{% block Date4Meta %}{{ NEWS.0.tdContentPublishUp|date:'Y-m-d 08:30:00' }}{% endblock %}"
{% block Last4Meta %}{{ NEWS.0.dtContentTimeStamp|date:'Y-m-d H:i:s' }}{% endblock %}"
{% block Expires4Meta %}{% now 'Y-m-d H:i:s' %}{% endblock %}"
{% block CONTENT %}{# <!-- ХЛЕБНЫЕ КРОШКИ: НАЧАЛО -->#}
<div class="container bread-crumb">
<div class="row">
<nav class="col-12 х" aria-label="breadcrumb">
<ol class="breadcrumb">
<li class="breadcrumb-item nw s"><a href="/"><i class="bi bi-house-door" title="Главная"></i>&#8199;Главная</a></li>
<li class="breadcrumb-item nw s"><a href="/p{{ PAGE }}">Стр. {{ PAGE|add:"1" }}</a></li>
<li class="breadcrumb-item active s" aria-current="page">{{ ITEM.szContentHead|safe }}</li>
</ol>
</nav>
</div>
</div>{#<!-- ХЛЕБНЫЕ КРОШКИ: КОНЕЦ -->#}
{#<!-- POINT-СРАНИЦА: НАЧАЛО -->#}<div class="container news">
<div class="row">
<div class="col-12 col-md-9">
<time datetime="{{ ITEM.tdContentPublishUp|date:'Y-m-d' }}">{{ ITEM.tdContentPublishUp|date:'d E Y' }} <small>({{ ITEM.tdContentPublishUp|date:'l'|lower }})</small></time>
<h1>{{ ITEM.szContentHead|safe }}</h1>
{{ ITEM.szContentIntro|safe }}
{{ ITEM.szContentBody|safe }}
{{ ITEM.szPointDes|safe }}{# Текст страницы или приамбула перед списком #}
<hr />
<nav class="sm-tags">{% for t in ITEM.tags.all%}<a href="/tag_{{ t.slug|lower }}"><i class="bi bi-tag"></i> {{ t.name }}</a> &nbsp; &#8198; {% endfor %}</nav>
</div>
{#<!-- БОКОВАЯ НАВИГАЦИЯ: НАЧАЛО-->#}<nav class="col order-last order-md-first">
<div></div>{% for i in ITEMS_BEFORE reversed %}{% if i.id != ITEM.id %}<div>
<time datetime="{{ i.tdContentPublishUp|date:'Y-m-d' }}">{{ i.tdContentPublishUp|date:'d E Y' }}</time>
<p><i class="bi bi-newspaper"></i> <a href="/item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}{% if PER_PAGE %}?p={{ i.pp }}&n={{ i.nn }}{% endif %}">{{ i.szContentHead|safe }}</a></p>
</div>{% endif %}{% endfor %}{% for i in ITEMS_AFTER %}{% if i.id != ITEM.id %}<div>
<time datetime="{{ i.tdContentPublishUp|date:'Y-m-d' }}">{{ i.tdContentPublishUp|date:'d E Y' }}</time>
<p><i class="bi bi-newspaper"></i> <a href="/item/{{ i.id }}-{{ i.szContentHead|safe_html_ss|slug_ru:'50' }}{% if PER_PAGE %}?p={{ i.pp }}&n={{ i.nn }}{% endif %}">{{ i.szContentHead|safe }}</a></p>
</div>{% else %}<div class="active">
<time datetime="{{ ITEM.tdContentPublishUp|date:'Y-m-d' }}">{{ ITEM.tdContentPublishUp|date:'d E Y' }}</time>
<p><i class="bi bi-newspaper"></i> {{ ITEM.szContentHead|safe }}</p>
</div>{% endif %}{% endfor %}
</nav>{#<!-- боковая навигация: конец-->#}
</div>
{# <!-- НИЖНЯЯ НАВИГАЦИЯ-ПАДЖИНАТОР ПО НОВОСТЯМ: НАЧАЛО--> #}{% if PER_PAGE %}
<nav class="row" aria-label="Навигация по контенту">
<ul class="col offset-md-3 pagination pl-3">{% if ITEMS_BEFORE.0.id %}
<li class="page-item"><a class="page-link" href="/item/{{ ITEMS_BEFORE.0.id }}-{{ ITEMS_BEFORE.0.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ ITEMS_BEFORE.0.pp }}&n={{ ITEMS_BEFORE.0.nn }}"><i class="bi bi-arrow-left pr-4" title="Предыдущая"></i></a></li>{% else %}<li class="page-item disabled"><a class="page-link" href="#"><i class="bi bi-arrow-left pr-4" title="Предыдущая"></i></a></li>{% endif %}
</ul>
<ul class="col pagination justify-content-end">{% if ITEMS_AFTER|length <= 1 %}
<li class="page-item disabled"><a class="page-link" href="#"><i class="bi bi-arrow-right pl-4" title="Следующая"></i></a></li>{% else %}<li class="page-item"><a class="page-link" href="/item/{{ ITEMS_AFTER.1.id }}-{{ ITEMS_AFTER.1.szContentHead|safe_html_ss|slug_ru:'50' }}?p={{ ITEMS_AFTER.1.pp }}&n={{ ITEMS_AFTER.1.nn }}"><i class="bi bi-arrow-right pl-4" title="Следующая"></i></a></li>{% endif %}
</ul>
</nav>{# <!-- НИЖНЯЯ НАВИГАЦИЯ-ПАДЖИНАТОР ПО НОВОСТЯМ: КОНЕЦ--> #}{% endif %}
</div>{#<!-- POINT-СРАНИЦА: КОНЕЦ -->#}
{% endblock %}
{% block Top_JS1 %}<script type="text/javascript">
</script>{% endblock %}

View File

@@ -333,4 +333,31 @@ div.news > nav.row { margin: 0; }
.test { .test {
position: absolute;top:200px; position: absolute;top:200px;
}
/****************************
** ФУТЕР *********
****************************/
footer {
margin-top: 4em;
padding: 1em 0;
border-top: whitesmoke dotted 1px;
background: linear-gradient(to bottom right, rgba(147,147,147,0.2) 15%, rgba(255,255,255,1) 50%);}
.b88x31 {
margin-left: 1ex;
background-color: #cccccc;
width: 88px;
height: 31px;
border: none;
text-align: center;
vertical-align: center;
}
.b88x31 > a {
text-decoration: none;
border: none;
}
.b88x31 > a > img {
width: 88px;
height: 31px;
border: none;
} }