Guest User

topbar html block sql

a guest
Jun 8th, 2023
313
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 12.31 KB | None | 0 0
  1. CREATE PROCEDURE [dbo].[block_topbar_get]
  2.     @code nvarchar(128),
  3.     @itemID nvarchar(256),
  4.     @parameters ExtendedDictionaryParameter readonly,  -- langID, username...
  5.     @res nvarchar(MAX) output
  6. AS
  7. BEGIN
  8.         -- извлекаем блок по умолчанию
  9.     DECLARE @s  nvarchar(MAX) = ''
  10.     SELECT @s = html FROM as_htmlBlocks WHERE code = @code
  11.  
  12.     DECLARE @username nvarchar(128) = (SELECT value2 FROM @parameters WHERE [KEY]='username')
  13.     DECLARE @url nvarchar(512) = (SELECT value2 FROM @parameters WHERE [KEY]='url')
  14.     DECLARE @subMenu nvarchar(MAX) = (SELECT value2 FROM @parameters WHERE [KEY]='subMenu')
  15.     DECLARE @isAuth bit = iif(len(@username)>0, 1, 0)
  16.     DECLARE @isEditor INT = 0, @isClient INT = 0, @isAdmin INT = 0
  17.     SELECT @isClient = 1 FROM sec_getUserRoles(@username) WHERE ROLE = 'client'
  18.     SELECT @isEditor = 1 FROM sec_getUserRoles(@username) WHERE ROLE = 'editor'
  19.     SELECT @isAdmin = 1 FROM sec_getUserRoles(@username) WHERE ROLE = 'admin'
  20.     DECLARE @divider nvarchar(MAX) = '<li class="border d-none d-sm-block"></li>'
  21.     DECLARE @phoneLink nvarchar(MAX) = '<li class="nav-item d-block d-sm-none d-md-node d-lg-none d-xl-block ">
  22.            <a class="nav-link" href="https://wa.me/+79209542217" title="Whatsapp, telegram, viber" target="_blank" rel="nofollow" ><i class="fab fa-whatsapp"></i> +7 (920) 954-22-17</a>
  23.          </li>'
  24.     DECLARE @solutionLink nvarchar(MAX) = ''
  25.     DECLARE @solutions nvarchar(MAX) =   STUFF((   
  26.                     SELECT  ' <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, dbo.list_getProductUrl(sol.id, isnull(sol.code, 'Без названия'), 'solutions', '---'))+'" href="'+ dbo.list_getProductUrl(sol.id, isnull(sol.code, 'Без названия'), 'solutions', '---')+'">'+name+'</a>'
  27.                     FROM as_falconSolutions sol                    
  28.                     WHERE code IN ('auction', 'marketplace', 'cargo', 'rent', 'client-service')
  29.                     ORDER BY ord                       
  30.                     FOR XML PATH(''), TYPE).VALUE('.','nvarchar(max)') ,1,0, '')
  31.     IF(len(@solutions)>0) SET @solutionLink = '<li class="nav-item dropdown">
  32.            <a class="nav-link dropdown-toggle '+dbo.menu_isActiveMenu(@url, '/list/solution')+'" href="#" id="navbarDropdown" role="button" data-toggle="dropdown">Решения</a>
  33.            <div class="dropdown-menu" aria-labelledby="navbarDropdown">'+@solutions+'</div>
  34.        </li>'
  35.    
  36.    DECLARE @aboutLink nvarchar(MAX) = '<li class="nav-item dropdown">
  37.            <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown">О Falcon Space</a>
  38.            <div class="dropdown-menu" aria-labelledby="navbarDropdown">
  39.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/falcon-map')+'" href="/falcon-map">Карта информации по Falcon</a>
  40.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/list/features')+'" href="/list/features">Возможности платформы</a>
  41.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/list/projects')+'" href="/list/projects">Проекты на Falcon</a>
  42.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/reviews')+'" href="/reviews">Отзывы</a>
  43.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/faq')+'" href="/faq">Вопросы/ответы</a>
  44.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/diff')+'" href="/diff">Сравнение с другими подходами</a>
  45.            </div>
  46.        </li>'
  47.    DECLARE @buyLink nvarchar(MAX) = '<li class="nav-item dropdown">
  48.            <a class="nav-link dropdown-toggle '+dbo.menu_isActiveMenu(@url, '/prices')+'" href="#" id="navbarDropdown" role="button" data-toggle="dropdown">Покупка</a>
  49.            <div class="dropdown-menu" aria-labelledby="navbarDropdown">
  50.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/prices')+'" href="/prices">Стоимость платформы</a>
  51.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/howtobuy')+'" href="/howtobuy">Как приобрести</a>
  52.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/warranty-service')+'" href="/warranty-service">Поддержка, сопровождение, гарантия</a>
  53.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/how-develop-project')+'" href="/how-develop-project">Порядок работы над проектом</a>
  54.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/project-concept')+'" href="/project-concept">Создание концепции проекта</a>
  55.            </div>
  56.        </li>'
  57.    DECLARE @fordevLink nvarchar(MAX) = '<li class="nav-item dropdown">
  58.            <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown">Для разработчиков</a>
  59.            <div class="dropdown-menu" aria-labelledby="navbarDropdown">
  60.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/docs')+'" href="/docs">Документация Falcon Space</a>
  61.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/updates')+'" href="/updates">Обновления платформы</a>
  62.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/list/module')+'" href="/list/module">Модули Falcon</a>
  63.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/list/forum')+'" href="/list/forum">Форум Falcon</a>
  64.           <hr>
  65.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/list/sqlserver')+'" href="/list/sqlserver">База знаний SQL Server</a>
  66.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/dev-partner')+'" href="/dev-partner">Для технических партнеров</a>
  67.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/list/startup')+'" href="/list/startup">Создание веб-студии</a>
  68.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/for-it')+'" href="/for-it">Описание для IT специалистов</a>
  69.            <hr>
  70.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/styleguide')+'" href="/styleguide">Гид по стилям Falcon Space</a>
  71.            <a class="dropdown-item '+dbo.menu_isActiveMenu(@url, '/landguide')+'" href="/landguide">Шаблоны секций лендингов</a>
  72.            
  73.            </div>
  74.        </li>'
  75.     DECLARE @blogLink nvarchar(MAX) = '<li class="nav-item '+dbo.menu_isActiveMenu(@url, '/blog')+'"><a class="nav-link" href="/blog" >Блог</a></li>'
  76.     DECLARE @contactLink nvarchar(MAX) = '<li class="nav-item '+dbo.menu_isActiveMenu(@url, '/contactus')+'"><a class="nav-link" href="/contactus" >Контакты</a></li>'
  77.    
  78.    
  79.     DECLARE @clientMenu nvarchar(MAX) = ''    
  80.     IF(@isClient = 1) BEGIN
  81.         SET @clientMenu =        
  82.         '<li class="nav-item dropdown no-arrow mx-1" title="Ваш личный кабинет">
  83.            <a class="nav-link '+dbo.menu_isActiveMenu(@url, '/clientstart')+'" href="/clientstart" role="button">Мой кабинет</a>
  84.        </li>            
  85.        '        
  86.     END
  87.    
  88.     DECLARE @msg nvarchar(MAX) = '<li class="nav-item dropdown no-arrow mx-1">
  89.            <a class="nav-link " href="/messages" id="msgCount" role="button">
  90.              <i class="fas fa-envelope fa-fw "></i>
  91.              <span class="badge badge-danger badge-counter as-msg-count hide">0</span>
  92.            </a>
  93.          </li>'
  94.     DECLARE @notif nvarchar(MAX) = '<li class="nav-item dropdown">
  95.            <a class="nav-link dropdown-toggle " href="#" id="alertsDropdown" role="button"
  96.               data-toggle="dropdown">
  97.              <i class="fas fa-bell fa-fw"></i>
  98.              <span class="badge badge-danger badge-counter as-notification-count hide">0</span>
  99.            </a>
  100.            <div class="dropdown-list dropdown-menu dropdown-menu-right shadow animated zoomInDown animated--grow-in" aria-labelledby="alertsDropdown">
  101.              <a href="/notifications" class="dropdown-header text-center text-decoration-none">
  102.                Все уведомления
  103.              </a>
  104.              <div class="as-notification-cont"></div>
  105.            </div>
  106.          </li>'
  107.     DECLARE @SEARCH nvarchar(MAX) =  '<li class="nav-item "><a href="#" class="nav-link as-table-modal  ml-1"
  108.             data-big="1" data-title="Поиск по сайту Falcon Space"
  109.             data-code="siteSearch" title="Поиск по сайту..."><i class="fa fa-search"></i> Поиск...</a></li>'
  110.     /*'<li class="nav-item ">
  111.             <div class="input-group" style="max-width: 250px; position:relative; top: 2px;">
  112.               <select class="form-control  bg-light border-0 small asSearch as-select-search d-none"
  113.                       data-url="/controls/search/search" data-itemID="0">
  114.                 <option value="0">Найти...</option>
  115.               </select>
  116.             </div>
  117.           </li>'*/
  118.    
  119.    
  120.     SET @s = '
  121.    <input type="hidden" class="as-scroll-shift" value="-80" />
  122.    <div style="height: 55px;">
  123.  <div class="navbar-container position-fixed w-100 " style="z-index:2; background-color: #fff; border-bottom: solid 1px #ccc; ">
  124.    <nav class="navbar navbar-expand-md navbar-light">
  125.      <!-- ЛОГО и НАЗВАНИЕ -->
  126.      <a class="navbar-img mr-2 text-white" href="/"><i class="fas fa-dove fa-2x text-primary"></i></a>
  127.      <a class="navbar-brand" href="/">Falcon Space</a>
  128.      <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
  129.        <span class="navbar-toggler-icon"></span>
  130.      </button>
  131.      <div class="collapse navbar-collapse" id="navbar">
  132.        <!-- МЕНЮ СЛЕВА -->
  133.        <ul class="navbar-nav mr-auto">
  134.          '+(CASE
  135.              WHEN @isAuth=0 OR 1=1 THEN
  136.                 @clientMenu +
  137.                 @aboutLink +
  138.                 isnull(@solutionLink, '')+
  139.                 @buyLink +
  140.                 @fordevLink +
  141.                 @blogLink +
  142.                 @contactLink            
  143.              ELSE ''
  144.             END
  145.           )+'
  146.                  
  147.           '+@SEARCH+'    
  148.        </ul>
  149.        
  150.        
  151.         <!-- МЕНЮ СПРАВА -->
  152.        <ul class="navbar-nav">          
  153.          '+
  154.           iif(@isAuth=0 OR 1=1, @phoneLink , '' ) +
  155.           + iif(@isAuth=1, @msg + @notif, '')+ '
  156.          <li class="nav-item dropdown no-arrow as-loginStatus">
  157.            <a class="nav-link dropdown-toggle" href="#"
  158.               id="userDropdown" role="button" data-toggle="dropdown" >
  159.              <i class="fa fa-user-tie"></i>
  160.              <span class="as-userPicLabel ">'+isnull(@username, '')+'</span>
  161.            </a>
  162.            <div class="dropdown-menu dropdown-menu-right" aria-labelledby="userDropdown">
  163.              <span class="userDropdownLabel dropdown-item disabled text-center font-weight-bold">
  164.                Пользователь
  165.              </span>
  166.              <div class="dropdown-divider"></div>
  167.              '+iif(@isAuth=1,
  168.                    '<a class="dropdown-item " href="/user"><i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i> Мой профиль</a>
  169.                     <a class="dropdown-item " href="/changepass"><i class="fas fa-key fa-sm fa-fw mr-2 text-gray-400"></i> Сменить пароль</a>
  170.                     <a class="dropdown-item " href="/account/logoff"><i class="fas fa-sign-out-alt fa-sm fa-fw mr-2 text-gray-400"></i>Выйти</a>
  171.                    ',
  172.                     '<a class="dropdown-item " href="/account/login"><i class="fas fa-user fa-sm fa-fw mr-2 text-gray-400"></i>Войти</a>
  173.                    <a class="dropdown-item " href="/create-cabinet"><i class="fas fa-user-tie fa-sm fa-fw mr-2 text-gray-400"></i>Создать личный кабинет</a>
  174.                    '                
  175.                    )+
  176.               '            
  177.            </div>
  178.          </li>
  179.        </ul>
  180.      </div>
  181.    </nav>
  182.    '+iif(len(@subMenu)>0, '<div class="as-mobScroll bg-light border-top">'+@subMenu+'</div>', '')+'
  183.  </div>
  184. </div>'
  185.     SET @res = @s
  186. END
  187.  
  188.  
  189. --ru 21.05.2023 10:03:37
  190. --ru 21.05.2023 10:10:08
  191. --ru 21.05.2023 10:40:15
  192. --ru 22.05.2023 12:12:47
  193. --ru 23.05.2023 11:27:32
Advertisement
Add Comment
Please, Sign In to add comment