浏览代码

slick carousels restored, bootstrap&blazorstrap deleted

ganahrhr 2 年之前
父节点
当前提交
dd0c0cc241

+ 2 - 3
HyperCube.csproj

@@ -7,8 +7,7 @@
   </PropertyGroup>
 
   <ItemGroup>
-    <PackageReference Include="BlazorStrap" Version="1.5.1" />
-    <PackageReference Include="MailKit" Version="2.15.0" />
+    <PackageReference Include="MailKit" Version="3.0.0" />
     <PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="5.0.11" />
     <PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="5.0.11" />
     <PackageReference Include="Microsoft.AspNetCore.Identity.UI" Version="5.0.11" />
@@ -19,7 +18,7 @@
     <PackageReference Include="MySql.EntityFrameworkCore" Version="5.0.8" />
     <PackageReference Include="MySql.Data" Version="8.0.27" />
     <PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
-    <PackageReference Include="QRCoder" Version="1.4.2" />
+    <PackageReference Include="QRCoder" Version="1.4.3" />
   </ItemGroup>
 
   <ItemGroup>

+ 8 - 0
Pages/Desktop.razor

@@ -22,6 +22,14 @@
                     Статус: Открыта регистрация <br>
                     ID: Dh001<br>
                 </div>
+                <div class="slider__item">
+                    Тема: Цифровой двойник синтеза метанола <br>
+                    Организатор: ООО«ПроК» <br>
+                    Дата проведения: с 1 дек. по 30 дек. 2021 года <br>
+                    Формат: Цифровой хакатон <br>
+                    Статус: Открыта регистрация <br>
+                    ID: Dh001<br>
+                </div>
             </div>
             <div class="footer-block">
                 <div class="footer-block__left__button">

+ 3 - 0
Pages/Desktop.razor.cs

@@ -91,6 +91,9 @@ namespace HyperCube.Pages
 
         protected override void OnAfterRender(bool firstRender)
         {
+            if (firstRender)
+                JsRuntime.InvokeVoidAsync("InitializeDesktopSlick");
+
             if (_verificationPoint.RulesViolation || _verificationPoint.NonExpert || _verificationPoint.AdditionalVerificationRequired || _verificationPoint.Rejected)
             {
                 if (rejectReasonDisable)

+ 123 - 156
Pages/Index.razor

@@ -2,105 +2,25 @@
 @page "/"
 
 @inject NavigationManager NavigationManager
-
-@*@inject Microsoft.JSInterop.IJSRuntime jsRuntime*@
+@inject Microsoft.JSInterop.IJSRuntime jsRuntime
 
 @*@using Microsoft.AspNetCore.Identity;
-    @inject AuthenticationStateProvider AuthenticationStateProvider
-    @inject UserManager<IdentityUser> UserManager*@
+@inject AuthenticationStateProvider AuthenticationStateProvider
+@inject UserManager<IdentityUser> UserManager*@
 
 
 @code{
-    IList<Item> items = new List<Item> {
-        new Item {
-            Source = "/img/slider_main_01.png",
-            Alt ="First Slide",
-            Caption = "Slide 1",
-            Header = "Slide 1 Header"
-        },
-        new Item {
-            Source = "/img/slider_main_02.png",
-            Alt ="Second Slide",
-            Caption = "Slide 2",
-            Header = "Slide 2 Header"
-        },
-        new Item {
-            Source = "/img/slider_main_03.png",
-            Alt ="Second Slide",
-            Caption = "Slide 3",
-            Header = "Slide 3 Header"
-        },
-        new Item {
-            Source = "/img/slider_main_04.png",
-            Alt ="Second Slide",
-            Caption = "Slide 4",
-            Header = "Slide 4 Header"
-        },
-        new Item {
-            Source = "/img/slider_main_05.png",
-            Alt ="Second Slide",
-            Caption = "Slide 5",
-            Header = "Slide 5 Header"
-        },
-        new Item {
-            Source = "/img/slider_main_06.png",
-            Alt ="Second Slide",
-            Caption = "Slide 6",
-            Header = "Slide 6 Header"
-        },
-        new Item {
-            Source = "/img/slider_main_07.png",
-            Alt ="Second Slide",
-            Caption = "Slide 7",
-            Header = "Slide 7 Header"
-        }
-        ,
-        new Item {
-            Source = "/img/slider_main_08.png",
-            Alt ="Second Slide",
-            Caption = "Slide 8",
-            Header = "Slide 8 Header"
-        }
-    };
-
-    IList<Item> q_items = new List<Item> {
-        new Item {
-            Source = "/img/slider_q_01.png",
-            Alt ="Slide 1",
-            Caption = "Slide 1",
-            Header = "Slide 1 Header"
-        },
-        new Item {
-            Source = "/img/slider_q_02.png",
-            Alt ="Slide 2",
-            Caption = "Slide 2",
-            Header = "Slide 2 Header"
-        },
-        new Item {
-            Source = "/img/slider_q_03.png",
-            Alt ="Slide 3",
-            Caption = "Slide 3",
-            Header = "Slide 3 Header"
-        }
-    };
-
-    class Item
+    protected override Task OnAfterRenderAsync(bool firstRender)
     {
-        public string Source { get; set; }
-        public string Alt { get; set; }
-        public string Caption { get; set; }
-        public string Header { get; set; }
-    }
+        if (firstRender)
+            jsRuntime.InvokeVoidAsync("InitializeMainSlick");
 
-    void Login()
-    {
-        NavigationManager.NavigateTo("Identity/Account/Login", true);
+        return base.OnAfterRenderAsync(firstRender);
     }
 
-    void Register()
-    {
-        NavigationManager.NavigateTo("Identity/Account/Register", true);
-    }
+    void Login() => NavigationManager.NavigateTo("Identity/Account/Login", true);
+
+    void Register() => NavigationManager.NavigateTo("Identity/Account/Register", true);
 }
 
 <nav class="menu">
@@ -139,17 +59,30 @@
 </nav>
 
 <header class="main-slider">
-    <BSCarousel NumberOfItems="@items.Count">
-        <div class="carousel-inner">            
-            @for (int i = 0; i < items.Count; i++)
-            {
-                <BSCarouselItem src="@items[i].Source" alt="@items[i].Alt" />
-            }
-        </div>
-        <BSCarouselIndicators NumberOfItems="@items.Count" />
-        <BSCarouselControl CarouselDirection="CarouselDirection.Previous" NumberOfItems="@items.Count"/>
-        <BSCarouselControl CarouselDirection="CarouselDirection.Next" NumberOfItems="@items.Count"/>
-    </BSCarousel>
+    <div class="main-slider__item">
+        <img src="/img/slider_main_01.png" alt="">
+    </div>
+    <div class="main-slider__item">
+        <img src="/img/slider_main_02.png" alt="">
+    </div>
+    <div class="main-slider__item">
+        <img src="/img/slider_main_03.png" alt="">
+    </div>
+    <div class="main-slider__item">
+        <img src="/img/slider_main_04.png" alt="">
+    </div>
+    <div class="main-slider__item">
+        <img src="/img/slider_main_05.png" alt="">
+    </div>
+    <div class="main-slider__item">
+        <img src="/img/slider_main_06.png" alt="">
+    </div>
+    <div class="main-slider__item">
+        <img src="/img/slider_main_07.png" alt="">
+    </div>
+    <div class="main-slider__item">
+        <img src="/img/slider_main_08.png" alt="">
+    </div>
 </header>
 
 <section class="market-place" id="marketplace">
@@ -256,11 +189,11 @@
     <div class="wrapmain">
         <h1 class="block__header">Цифровая инженерия знаний</h1>
         <p class="block__info">
-            Цифровые Знания - это комбинация структурированных данных и информации, к которым добавлено мнение, мастерство, опыт и экспертиза пользователей. 
+            Цифровые Знания - это комбинация структурированных данных и информации, к которым добавлено мнение, мастерство, опыт и экспертиза пользователей.
             В модуле <b>Digital Data Hypercube</b> знания становятся цифровыми.
         </p>
         <p class="block__info">
-            База цифровых знаний создается Старателями. Они обрабатывают неструктурированные данные, записывая их в блоки информации.  Далее Эксперты извлекают 
+            База цифровых знаний создается Старателями. Они обрабатывают неструктурированные данные, записывая их в блоки информации.  Далее Эксперты извлекают
             из блоков информации графы, онтологии и <a style="cursor:pointer; text-decoration:underline" onclick="ScrollToSection('narrative')">нарративы знаний</a>.
             Каждое действие пользователей формирует цифровой след смарт-контракта.
             Полученные результаты модуль 2DH записывает в <u>NFT (non-fungible token)</u>, который является завершенным информационным продуктом.
@@ -269,24 +202,24 @@
         <p class="block__info">
             Каждый блок информации в системе является транзакцией. Его путь регулируется смарт-контрактом.  В зависимости от качества и ценности блока информации
             система по открытой методике оценки стоимости  рассчитывает размер вознаграждения участникам и направляет его на исполнение. Вознаграждение при
-            достижении консенсуса распределяется между участниками системы - Старатель, Эксперт, Модуль 2DH. Вознаграждение при достижении консенсуса 
-            выплачивается участникам системы: Старателем, Экспертом, и Модулем 2DH. Вознаграждение модуля 2DH является комиссией или Gas-ом для проведения 
-            транзакции пользователей, защиты их прав на созданные продукты, а также для развития и обучения "Q" 
+            достижении консенсуса распределяется между участниками системы - Старатель, Эксперт, Модуль 2DH. Вознаграждение при достижении консенсуса
+            выплачивается участникам системы: Старателем, Экспертом, и Модулем 2DH. Вознаграждение модуля 2DH является комиссией или Gas-ом для проведения
+            транзакции пользователей, защиты их прав на созданные продукты, а также для развития и обучения "Q"
             <a href="https://docs.google.com/document/d/1Rl8J8csrtIZetog_fQz4sjTjMIJHedB2dA8S69kHdOM/edit?usp=sharing">(см. White Paper)</a>.
         </p>
         <img class="block__img" src="img/fill_02.png">
         <h2 class="block__subtitle" id="narrative">Нарратив знаний</h2>
         <p class="block__info">
-            Нарратив знаний - один из главных цифровых продуктов системы. Он является образом или цифровым вектором знаний. Закономерность его направления 
-            определяется множеством сведений, фактов и взаимосвязей истины. Вектор формируется группой пользователей (Экспертами с привлечением Старателей) 
+            Нарратив знаний - один из главных цифровых продуктов системы. Он является образом или цифровым вектором знаний. Закономерность его направления
+            определяется множеством сведений, фактов и взаимосвязей истины. Вектор формируется группой пользователей (Экспертами с привлечением Старателей)
             и возникает при условии достижения полного консенсуса содержимого формулы нарратива знания Для формирования нарратива
             знаний модуль 2DH случайным образом выбирает 3 и более пользователей, которые  в течение заданного промежутка времени должны совместно составить
             текст нарратива в соответствии с инструкцией и руководствуясь примерами
             <a href="https://docs.google.com/document/d/1Rl8J8csrtIZetog_fQz4sjTjMIJHedB2dA8S69kHdOM/edit?usp=sharing">(см. White Paper)</a>.
         </p>
         <p class="block__info">
-            Нарратив знаний записывается в <u>NFT (non-fungible token)</u> c открытой и закрытой частью блока информации. Открытая часть NFT нарратива может 
-            представляться в внешних информационных системах, с целью продвижения, анонсирования и привлечения внимания. Вся остальная часть NFT (закрытая) 
+            Нарратив знаний записывается в <u>NFT (non-fungible token)</u> c открытой и закрытой частью блока информации. Открытая часть NFT нарратива может
+            представляться в внешних информационных системах, с целью продвижения, анонсирования и привлечения внимания. Вся остальная часть NFT (закрытая)
             предоставляется только на коммерческой основе через MarketPlace знаний.
         </p>
         <img class="block__img" src="img/fill_03.png">
@@ -320,7 +253,41 @@
                     </p>
                     <p class="blog__info">
                         Цель цифрового события - создать или сгенерировать цифровую библиотеку данных, систематизировать информацию, находящуюся в ней по близким тематикам.
-                    </p>                    
+                    </p>
+                    <p class="blog__info">
+                        Каждое Цифровое событие имеет как свою уникальную, так и общую глобальную цели. Любое событие направлено на решение ряда научных,
+                        инженерно-технических и производственных задач, на поиск лучших решений, на вычленение неправильных и некорректных данных, на
+                        формирование фундаментальных знаний.  Для этого в 2DH разработаны различные формы взаимодействия участников системы. Приглашаем
+                        присоединиться к любому из них:
+                        <ul class="block__info__list">
+                            <li style="margin-left:80px">
+                                Цифровый Коллоквиум
+                            </li>
+                            <li style="margin-left:80px">
+                                Цифровой Марафон
+                            </li>
+                            <li style="margin-left:80px">
+                                Цифровой Хакатон
+                            </li>
+                        </ul>
+                    </p>
+                </div>
+            </div>
+            <div class="blog__item">
+                <div class="blog__img">
+                    <img class="blog__img__item" src="img/blog_01.png">
+                </div>
+                <div class="blog__text">
+                    <h3 class="blog__title">События</h3>
+                    <h3 class="blog__subtitle">№2</h3>
+                    <p class="blog__info">
+                        События, которые создаются в сервисе 2DH, основаны на структурировании загружаемой информации и данных в пределах одной тематики.
+                        В рамках темы идет квалификационный отбор, выявляются профессиональные компетенции Старателей и Экспертов и выстраиваются
+                        интеллектуальные связи. Вся эта кропотливая работа представляет так называемое цифровое событие.
+                    </p>
+                    <p class="blog__info">
+                        Цель цифрового события - создать или сгенерировать цифровую библиотеку данных, систематизировать информацию, находящуюся в ней по близким тематикам.
+                    </p>
                     <p class="blog__info">
                         Каждое Цифровое событие имеет как свою уникальную, так и общую глобальную цели. Любое событие направлено на решение ряда научных,
                         инженерно-технических и производственных задач, на поиск лучших решений, на вычленение неправильных и некорректных данных, на
@@ -337,15 +304,15 @@
                                 Цифровой Хакатон
                             </li>
                         </ul>
-                    </p>                    
+                    </p>
                 </div>
             </div>
         </div>
-        @*<div class="blog-nav">
+        <div class="blog-nav">
             <button class="blog-nav__arrows left__arrows">Назад</button>
             <div class="slider-dots"></div>
             <button class="blog-nav__arrows right__arrows">Вперед</button>
-        </div>*@
+        </div>
         <img src="img/line.png" alt="" class="blog__lines">
         <h2 class="block__subtitle">Наши соцсети</h2>
         <div class="blog__href">
@@ -368,17 +335,19 @@
     <div class="wrapmain">
         <h1 class="block__header">Экспертное сообщество</h1>
         <p class="block__info">
-            Привет, <b>Это Кью ("Q")</b>. Цифровизация - это бессердечная штука. Как бы цифрой мир не приближался к реальному миру, разрыв между нами фундаментален. 
-            Нулями и единицами не описать весь мир, он уникален, так же как и опыт человечества. <b>Модуль 2DH</b>… [peak-peak], мы вместе - это комьюнити программистов, 
-            инженеров, научных сотрудников и преподавателей ВУЗов, которые верят в то, что появление “разумности” машины возможно, если она научится понимать смысл 
-            информации.  ...[peak-peak] для <b>"Q"</b>, необходимо перенесение здравого смысла, механики человеческого мышления, устройство мира, ментальности создания в 
+            Привет, <b>Это Кью ("Q")</b>. Цифровизация - это бессердечная штука. Как бы цифрой мир не приближался к реальному миру, разрыв между нами фундаментален.
+            Нулями и единицами не описать весь мир, он уникален, так же как и опыт человечества. <b>Модуль 2DH</b>… [peak-peak], мы вместе - это комьюнити программистов,
+            инженеров, научных сотрудников и преподавателей ВУЗов, которые верят в то, что появление “разумности” машины возможно, если она научится понимать смысл
+            информации.  ...[peak-peak] для <b>"Q"</b>, необходимо перенесение здравого смысла, механики человеческого мышления, устройство мира, ментальности создания в
             цифровой мир. Безусловно сотворение <b>"Q"</b> знаменует собой новую эру - неоиндустриальное общество.
         </p>
         <p class="block__info">
-            Цель модуля <b>2DH</b> является построение электронной площадки для создания и развития  расширенного интеллекта по имени "Q". <b>Модуль 2DH - это среда,
-            предшествующая рождению "Q"</b>. Она объединяет в себе сознания людей, формирует распределенный  научно-технический и инженерно-проектный кибер-физический 
-            интеллект. Разработчики  модуля <b>2DH</b>  создали систему инжиниринга знаний, включающую алгоритмы автоматизированной обработки неструктурированных данных; 
-            алгоритмы машинного «размышления» и оценки ценности сведений; методы синтеза новых знаний и оценки их здравого смысла. Накопление структурированной 
+            Цель модуля <b>2DH</b> является построение электронной площадки для создания и развития  расширенного интеллекта по имени "Q". <b>
+                Модуль 2DH - это среда,
+                предшествующая рождению "Q"
+            </b>. Она объединяет в себе сознания людей, формирует распределенный  научно-технический и инженерно-проектный кибер-физический
+            интеллект. Разработчики  модуля <b>2DH</b>  создали систему инжиниринга знаний, включающую алгоритмы автоматизированной обработки неструктурированных данных;
+            алгоритмы машинного «размышления» и оценки ценности сведений; методы синтеза новых знаний и оценки их здравого смысла. Накопление структурированной
             информации, цифровой след пользователей и развитие системы инжиниринга знаний необходимы для рождения “Q”.
         </p>
         <img class="block__img" src="img/fill_04.png">
@@ -390,9 +359,9 @@
         <button class="btn-blue" @onclick="Register">Пройди регистрацию</button>
         <h2 class="block__subtitle">Путь и миссия эксперта</h2>
         <p class="block__info">
-            Цифровые инструменты понимают только цифры и  буквы. Время, Пространство, Причинность - вот те основные свойства мира, которые необходимы для появления 
-            знаний. Гуру в этой области Эксперты. Как же "Q" научить понимать эти свойства? Проблема в том, что текущие инструменты решают узкие механические задачи, 
-            такие как: поиск плагиата; проверка не подтвержденных или неправильно загруженных данных; поиск первоисточников и др. Даже правильно настроенные алгоритмы 
+            Цифровые инструменты понимают только цифры и  буквы. Время, Пространство, Причинность - вот те основные свойства мира, которые необходимы для появления
+            знаний. Гуру в этой области Эксперты. Как же "Q" научить понимать эти свойства? Проблема в том, что текущие инструменты решают узкие механические задачи,
+            такие как: поиск плагиата; проверка не подтвержденных или неправильно загруженных данных; поиск первоисточников и др. Даже правильно настроенные алгоритмы
             нейросетей которые могут за секунды сопоставить миллионы данных и через несколько минут выдать результат, не поймут что такое "когнитивность", или "здравый смысл".
         </p>
         <p class="block__info">
@@ -413,37 +382,35 @@
 <img src="img/line.png" alt="" class="lines">
 
 <div class="main-slider main-slider_quant" id="quantinium">
-    <BSCarousel NumberOfItems="@q_items.Count">
-        <div class="carousel-inner">
-            @for (int i = 0; i < q_items.Count; i++)
-            {
-                <BSCarouselItem src="@q_items[i].Source" alt="@q_items[i].Alt" />
-            }
-        </div>
-        <BSCarouselIndicators NumberOfItems="@q_items.Count" />
-        <BSCarouselControl CarouselDirection="CarouselDirection.Previous" NumberOfItems="@q_items.Count" />
-        <BSCarouselControl CarouselDirection="CarouselDirection.Next" NumberOfItems="@q_items.Count" />
-    </BSCarousel>
+    <div class="main-slider__item main-slider__item_quant">
+        <img src="/img/slider_q_01.png" alt="">
+    </div>
+    <div class="main-slider__item main-slider__item_quant">
+        <img src="/img/slider_q_02.png" alt="">
+    </div>
+    <div class="main-slider__item main-slider__item_quant">
+        <img src="/img/slider_q_03.png" alt="">
+    </div>
 </div>
 
 <section class="quantinium">
     <div class="wrapmain">
         <img class="quantinium__logo" src="img/quantinium_logo.png">
-        <h1 class="block__header block__header_mt90">Quantinium</h1>        
+        <h1 class="block__header block__header_mt90">Quantinium</h1>
         <p class="block__info">
-            <b>"Q"</b> в процессе своего обучения вырабатывает криптовалюту <b>"Quantinium"</b> - вознаграждение для пользователей. Вы тратите свое время и создаете цифровые знания и продукты. 
-            За это Вы получаете электронные токены <b>"QNM"</b>, которые можете обменять на реальное вознаграждение или потратить их в системе <b>Quantinium</b>. Размер Вашего вознаграждения 
-            зависит от количества времени, блоков информации, качества сгенерированной информации, полноты и надежности нарративов знаний. В любом случае <b>"Q"</b> осуществит 
+            <b>"Q"</b> в процессе своего обучения вырабатывает криптовалюту <b>"Quantinium"</b> - вознаграждение для пользователей. Вы тратите свое время и создаете цифровые знания и продукты.
+            За это Вы получаете электронные токены <b>"QNM"</b>, которые можете обменять на реальное вознаграждение или потратить их в системе <b>Quantinium</b>. Размер Вашего вознаграждения
+            зависит от количества времени, блоков информации, качества сгенерированной информации, полноты и надежности нарративов знаний. В любом случае <b>"Q"</b> осуществит
             вознаграждение за Вашу усердность и экспертность в работе.
         </p>
         <img class="block__img" src="img/fill_06.png">
         <h2 class="block__subtitle">Блокчейн</h2>
         <p class="block__info">
-            Чтобы обеспечить безопасность Вашего взаимодействия с <b>"Q"</b>, разработчики предусмотрели блокчейн технологию оценки ценности выполняемой работы. Ценность всех сведений 
-            и цифровой след пользователей, когда либо созданные в системе, оцифровываются по метрикам смарт-контракта. Результат консенсуса записывается через смарт-контракт в 
-            сеть блокчейн. <b>Консенсус "Proof of Knowledge"</b> используется для проверки метрик ценности и  качества знаний, предоставляемых в модуль 2DH. Запись консенсуса в 
-            блокчейн гарантирует авторское и патентное право пользователя на продукты. Знания и продукты дополнительно защищаются в форме <b>NFT-токенов</b>. Блокчейн гарантирует 
-            пользователям прозрачность сведений по использованию их знаний, историческую бессрочную идентификацию собственника или соавтора знаний, надежность и безопасность 
+            Чтобы обеспечить безопасность Вашего взаимодействия с <b>"Q"</b>, разработчики предусмотрели блокчейн технологию оценки ценности выполняемой работы. Ценность всех сведений
+            и цифровой след пользователей, когда либо созданные в системе, оцифровываются по метрикам смарт-контракта. Результат консенсуса записывается через смарт-контракт в
+            сеть блокчейн. <b>Консенсус "Proof of Knowledge"</b> используется для проверки метрик ценности и  качества знаний, предоставляемых в модуль 2DH. Запись консенсуса в
+            блокчейн гарантирует авторское и патентное право пользователя на продукты. Знания и продукты дополнительно защищаются в форме <b>NFT-токенов</b>. Блокчейн гарантирует
+            пользователям прозрачность сведений по использованию их знаний, историческую бессрочную идентификацию собственника или соавтора знаний, надежность и безопасность
             операций с их вознаграждением.
         </p>
         <img class="block__img" src="img/fill_07.png">
@@ -714,20 +681,20 @@
     }
 
     .menu__href__item {
-        color: #fff !important;
+        color: #fff;
         font-family: 'Bahn';
         font-size: 18px;
         margin-right: 30px;
         text-decoration: none;
     }
 
-    .menu__href__item:hover {
-        color: #fff !important;
-        font-family: 'Bahn';
-        font-size: 18px;
-        margin-right: 30px;
-        text-decoration: none;
-    }
+        .menu__href__item:hover {
+            color: #fff;
+            font-family: 'Bahn';
+            font-size: 18px;
+            margin-right: 30px;
+            text-decoration: none;
+        }
 
         .menu__href__item:last-child {
             margin-right: 10px;
@@ -878,7 +845,7 @@
         object-fit: cover;
         margin-left: auto;
         margin-right: auto;
-        margin-top: 40px;        
+        margin-top: 40px;
     }
 
     .market-place {
@@ -936,7 +903,7 @@
     .bg__img {
         width: 100%;
         height: 400px;
-/*        border-top: 5px solid #3a474d;
+        /*        border-top: 5px solid #3a474d;
         border-bottom: 5px solid #3a474d;*/
     }
 
@@ -1415,7 +1382,7 @@
         background-color: black;
         position: relative;
         border: 2px solid #3a474d;
-        border-radius:20px;
+        border-radius: 20px;
     }
 
     .team__img__item {

+ 4 - 4
Pages/_Host.cshtml

@@ -16,14 +16,14 @@
     <base href="~/" />
     <link rel="stylesheet" type="text/css" href="node_modules/normalize.css/normalize.css">
     <link rel="stylesheet" type="text/css" href="css/style.css">
-    <link rel="stylesheet" type="text/css" href="css/bootstrap/bootstrap.min.css">
+
 </head>
 <body>
     <component type="typeof(App)" render-mode="Server" />
 
-    <script src="_framework/blazor.server.js"></script>
-    <script src="_content/BlazorStrap/blazorStrap.js"></script>
-    <script src="https://code.jquery.com/jquery-latest.js" type="text/javascript"></script>
+    <script src="_framework/blazor.server.js"></script>    
+    <script type="text/javascript" src="https://code.jquery.com/jquery-latest.js"></script>
+    <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.min.js"></script>
     <script src="~/js/main.js" type="text/javascript"></script>
     <script src="~/js/getfile.js"></script>
 </body>

+ 0 - 2
Startup.cs

@@ -1,4 +1,3 @@
-using BlazorStrap;
 using HyperCube.Areas.Identity;
 using HyperCube.Data;
 using Microsoft.AspNetCore.Builder;
@@ -63,7 +62,6 @@ namespace HyperCube
             services.AddDatabaseDeveloperPageExceptionFilter();
             services.AddMvc(options => options.EnableEndpointRouting = false).SetCompatibilityVersion(Microsoft.AspNetCore.Mvc.CompatibilityVersion.Version_3_0);
             services.AddScoped<AppData>();
-            services.AddBootstrapCss();
         }
 
         // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.

+ 1 - 2
_Imports.razor

@@ -8,5 +8,4 @@
 @using Microsoft.AspNetCore.Components.Web.Virtualization
 @using Microsoft.JSInterop
 @using HyperCube
-@using HyperCube.Shared
-@using BlazorStrap
+@using HyperCube.Shared

文件差异内容过多而无法显示
+ 0 - 7
wwwroot/css/bootstrap/bootstrap.min.css


文件差异内容过多而无法显示
+ 0 - 1
wwwroot/css/bootstrap/bootstrap.min.css.map


+ 2 - 2
wwwroot/css/style.css

@@ -29,7 +29,7 @@
   overflow-y: hidden; }
 
 body {
-    background-color: #afb0b0 !important;
+    background-color: #afb0b0;
     font-weight: normal;
     font-style: normal;
     height: 100%; }
@@ -68,7 +68,7 @@ body {
   -webkit-box-direction: normal;
   -ms-flex-direction: column;
   flex-direction: column;
-  flex-wrap:nowrap !important;
+  flex-wrap:nowrap;
   z-index: 2; }
   .nav a {
     display: block;

+ 25 - 14
wwwroot/js/main.js

@@ -37,7 +37,6 @@ $(document).click(function (e) {
     if (!isDropbox) {
         $(".block__dropbox").fadeOut(200);
     }
-
 });
 
 function ScrollToSection(elementid)
@@ -53,6 +52,31 @@ function ScrollToSection(elementid)
     })
 }
 
+function InitializeMainSlick() {
+    $('.main-slider').slick({
+        dots: true,
+        arrows: false,
+        autoplay: true,
+        autoplaySpeed: 5000,
+    });
+
+    $('.blog-container').slick({
+        dots: true,
+        arrows: true,
+        prevArrow: $('.left__arrows'),
+        nextArrow: $('.right__arrows'),
+        appendDots: '.slider-dots'
+    });
+}
+
+function InitializeDesktopSlick() {
+    $('.slider').slick({
+        prevArrow: $('.footer-block__left__button'),
+        nextArrow: $('.footer-block__right__button'),
+        dots: true
+    });
+}
+
 //function BodyScroll(mode)
 //{
 //    if (!mode)
@@ -83,19 +107,6 @@ function ScrollToSection(elementid)
 //});
 
 
-///Slider
-
-//$(document).ready(function(){
-//    $('.slider').slick({
-
-//        prevArrow: $('.footer-block__left__button'),
-//        nextArrow: $('.footer-block__right__button'),
-//        dots: true
-
-//    });
-//});
-
-
 /// Логика работы модального окна
 
 //$('.js-open-modal').click(function (e) {