<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>NeurOX on FeLexDev</title>
    <link>https://felexdev.ru/tags/neurox/</link>
    <description>Recent content in NeurOX on FeLexDev</description>
    <generator>Hugo</generator>
    <language>ru</language>
    <lastBuildDate>Fri, 29 May 2026 21:32:19 +0500</lastBuildDate>
    <atom:link href="https://felexdev.ru/tags/neurox/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Работа над наполнением сайта проекта Neurox</title>
      <link>https://felexdev.ru/posts/2026-05-18_autodeploy/</link>
      <pubDate>Mon, 18 May 2026 23:53:26 +0500</pubDate>
      <guid>https://felexdev.ru/posts/2026-05-18_autodeploy/</guid>
      <description>&lt;p&gt;Всем доброго времени суток, извиняюсь за долгое отсутсвие, занят оптимизацией выходных файлов Doxygen.&lt;/p&gt;&#xA;&lt;h1 id=&#34;цель&#34;&gt;&#xA;  Цель&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%d1%86%d0%b5%d0%bb%d1%8c&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Ссылка на заголовок&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Ссылка на заголовок&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h1&gt;&#xA;&lt;p&gt;Оптимизировать сгенерированные &lt;strong&gt;Doxygen&lt;/strong&gt; файлы для работы с мобильными устройствами.&lt;/p&gt;&#xA;&lt;h1 id=&#34;средства-и-интсрументы&#34;&gt;&#xA;  Средства и интсрументы&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%d1%81%d1%80%d0%b5%d0%b4%d1%81%d1%82%d0%b2%d0%b0-%d0%b8-%d0%b8%d0%bd%d1%82%d1%81%d1%80%d1%83%d0%bc%d0%b5%d0%bd%d1%82%d1%8b&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Ссылка на заголовок&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Ссылка на заголовок&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h1&gt;&#xA;&lt;p&gt;Поскольку автодеплой идёт по &lt;strong&gt;Web-hook&lt;/strong&gt;-у &lt;strong&gt;Gitea&lt;/strong&gt;, то логично использование &lt;strong&gt;PHP&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;алгоритм&#34;&gt;&#xA;  Алгоритм&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%d0%b0%d0%bb%d0%b3%d0%be%d1%80%d0%b8%d1%82%d0%bc&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Ссылка на заголовок&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Ссылка на заголовок&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;Gitea:&lt;/strong&gt; получает обновление репозитория и запускает web-hook на локальный адрес.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;PHP:&lt;/strong&gt; сравнивает секретный код hook-а, запускает соответствующий скрипт.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;PHP:&lt;/strong&gt; вытягивает во временную папку изменения из репозитория.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;PHP:&lt;/strong&gt; запускает &lt;strong&gt;Doxygen&lt;/strong&gt;.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;PHP:&lt;/strong&gt; ищет все сгенерированные &lt;strong&gt;.html&lt;/strong&gt; файлы и вставляет в блок &lt;code&gt;&amp;lt;head&amp;gt;&amp;lt;/head&amp;gt;&lt;/code&gt; ссылку на скрипт.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;PHP:&lt;/strong&gt; в найденных файлах изменяет открывающий тег &lt;code&gt;&amp;lt;body&amp;gt;&lt;/code&gt; - добавляет к нему свойство &lt;code&gt;onload&lt;/code&gt; с вызовом функции инициализации вставленного&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;PHP:&lt;/strong&gt; непосредственно после открывающего тега &lt;code&gt;&amp;lt;body&amp;gt;&lt;/code&gt; вставляет нужный &lt;code&gt;&amp;lt;div style=&amp;quot;display:none;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;/code&gt; блок содержащий в себе необходимые для работы скрипта DOM-объекты(svg, img и прочие).&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;PHP:&lt;/strong&gt; завершает выполнение, делает отметку в логе и уведомляет &lt;strong&gt;Gitea&lt;/strong&gt; о результате.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h1 id=&#34;суть-оптимизации&#34;&gt;&#xA;  Суть оптимизации&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%d1%81%d1%83%d1%82%d1%8c-%d0%be%d0%bf%d1%82%d0%b8%d0%bc%d0%b8%d0%b7%d0%b0%d1%86%d0%b8%d0%b8&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Ссылка на заголовок&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Ссылка на заголовок&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h1&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Во все блоки кода сгенерированных файлов вставляется иконка для копирования содержания.&lt;/li&gt;&#xA;&lt;li&gt;Боковое меню на мобильных устройствах должно иметь 2 положения:&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;скрыто:&lt;/strong&gt; полностью свёрнуто.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;открыто:&lt;/strong&gt; развёрнуто на весь экран.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h1 id=&#34;почему-именно-так&#34;&gt;&#xA;  Почему именно так&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%d0%bf%d0%be%d1%87%d0%b5%d0%bc%d1%83-%d0%b8%d0%bc%d0%b5%d0%bd%d0%bd%d0%be-%d1%82%d0%b0%d0%ba&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Ссылка на заголовок&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Ссылка на заголовок&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h1&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Как перфекционист - не хочу засорять код вставляя скрипты в тело документа.&lt;/li&gt;&#xA;&lt;li&gt;Лишний раз прокачаю навыки JS/CSS/PHP.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h1 id=&#34;нюансы&#34;&gt;&#xA;  Нюансы&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#%d0%bd%d1%8e%d0%b0%d0%bd%d1%81%d1%8b&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Ссылка на заголовок&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Ссылка на заголовок&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h1&gt;&#xA;&lt;p&gt;Придётся рефакторить весь &lt;strong&gt;JavaScript&lt;/strong&gt; код связанный с работой бокового меню.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
