├── .gitattributes ├── .github └── workflows │ ├── deploy.yml │ └── deploy_test.yml ├── .gitignore ├── LICENSE ├── OpenYellow ├── .project ├── .settings │ └── org.eclipse.core.resources.prefs ├── DT-INF │ └── PROJECT.PMF └── src │ ├── Catalogs │ ├── Авторы │ │ └── Авторы.mdo │ ├── ВерсииYPM │ │ └── ВерсииYPM.mdo │ ├── Запросы │ │ ├── Forms │ │ │ └── ФормаЭлемента │ │ │ │ ├── Form.form │ │ │ │ └── Module.bsl │ │ └── Запросы.mdo │ ├── НаборыНастроек │ │ └── НаборыНастроек.mdo │ ├── Подборки │ │ └── Подборки.mdo │ ├── Посты │ │ └── Посты.mdo │ ├── Репозитории │ │ ├── Forms │ │ │ ├── ФормаСписка │ │ │ │ ├── Attributes │ │ │ │ │ └── Список │ │ │ │ │ │ └── ExtInfo │ │ │ │ │ │ └── ListSettings.dcss │ │ │ │ ├── Form.form │ │ │ │ └── Module.bsl │ │ │ └── ФормаЭлемента │ │ │ │ └── Form.form │ │ └── Репозитории.mdo │ └── Файлы │ │ ├── Forms │ │ └── ФормаЭлемента │ │ │ ├── Form.form │ │ │ └── Module.bsl │ │ └── Файлы.mdo │ ├── CommonModules │ ├── Инструментарий │ │ ├── Module.bsl │ │ └── Инструментарий.mdo │ ├── ИнструментарийКлиент │ │ ├── Module.bsl │ │ └── ИнструментарийКлиент.mdo │ ├── МетодыGitHub │ │ ├── Module.bsl │ │ └── МетодыGitHub.mdo │ ├── МетодыСайта │ │ ├── Module.bsl │ │ └── МетодыСайта.mdo │ ├── МетодыТелеграм │ │ ├── Module.bsl │ │ └── МетодыТелеграм.mdo │ └── ОбработкаСобытий │ │ ├── Module.bsl │ │ └── ОбработкаСобытий.mdo │ ├── CommonPictures │ └── Лого │ │ ├── Picture.png │ │ └── Лого.mdo │ ├── Configuration │ ├── ClientApplicationInterface.cai │ ├── Configuration.mdo │ └── HomePageWorkArea.hpwa │ ├── Constants │ ├── ВерсияYPM │ │ └── ВерсияYPM.mdo │ ├── Лого │ │ └── Лого.mdo │ └── НаборНастроек │ │ └── НаборНастроек.mdo │ ├── DataProcessors │ └── КонсольЗаданий_УФ │ │ ├── Forms │ │ ├── ДиалогНастроекСписка │ │ │ ├── Form.form │ │ │ └── Module.bsl │ │ ├── ДиалогОтбораРегламентногоЗадания │ │ │ ├── Form.form │ │ │ └── Module.bsl │ │ ├── ДиалогОтбораФоновогоЗадания │ │ │ ├── Form.form │ │ │ └── Module.bsl │ │ ├── ДиалогРегламентногоЗадания │ │ │ ├── Form.form │ │ │ └── Module.bsl │ │ ├── ДиалогФоновогоЗадания │ │ │ ├── Form.form │ │ │ └── Module.bsl │ │ └── Форма │ │ │ ├── ConditionalAppearance.dcssca │ │ │ ├── Form.form │ │ │ ├── Items │ │ │ ├── СписокРегламентныхЗаданийВыполнитьЗадание │ │ │ │ └── Picture.png │ │ │ └── СписокРегламентныхЗаданийКонтекстноеМенюЗапуститьЗадание │ │ │ │ └── Picture.png │ │ │ └── Module.bsl │ │ ├── ObjectModule.bsl │ │ └── КонсольЗаданий_УФ.mdo │ ├── Enums │ └── СогласованиеПостов │ │ └── СогласованиеПостов.mdo │ ├── HTTPServices │ ├── data │ │ ├── Module.bsl │ │ └── data.mdo │ └── tg │ │ ├── Module.bsl │ │ └── tg.mdo │ ├── InformationRegisters │ ├── Исключения │ │ ├── Forms │ │ │ └── ФормаСписка │ │ │ │ ├── Attributes │ │ │ │ └── Список │ │ │ │ │ └── ExtInfo │ │ │ │ │ └── ListSettings.dcss │ │ │ │ └── Form.form │ │ └── Исключения.mdo │ ├── Пакеты │ │ ├── Forms │ │ │ └── ФормаСписка │ │ │ │ ├── Attributes │ │ │ │ └── Список │ │ │ │ │ └── ExtInfo │ │ │ │ │ └── ListSettings.dcss │ │ │ │ ├── Form.form │ │ │ │ └── Module.bsl │ │ └── Пакеты.mdo │ ├── ПубликацииПодборок │ │ └── ПубликацииПодборок.mdo │ ├── Релизы │ │ └── Релизы.mdo │ ├── СтатистикаРепозиториев │ │ ├── Forms │ │ │ └── ФормаСписка │ │ │ │ ├── Attributes │ │ │ │ └── Список │ │ │ │ │ └── ExtInfo │ │ │ │ │ └── ListSettings.dcss │ │ │ │ ├── Form.form │ │ │ │ └── Module.bsl │ │ └── СтатистикаРепозиториев.mdo │ └── Тренды │ │ └── Тренды.mdo │ ├── Reports │ ├── НаполнениеПодборок │ │ ├── Templates │ │ │ └── ОсновнаяСхемаКомпоновкиДанных │ │ │ │ └── Template.dcs │ │ └── НаполнениеПодборок.mdo │ ├── ОтчетПоЗвездам │ │ ├── Templates │ │ │ └── ОсновнаяСхемаКомпоновкиДанных │ │ │ │ └── Template.dcs │ │ └── ОтчетПоЗвездам.mdo │ └── СписокРепозиториев │ │ ├── Templates │ │ └── ОсновнаяСхемаКомпоновкиДанных │ │ │ └── Template.dcs │ │ └── СписокРепозиториев.mdo │ ├── ScheduledJobs │ ├── ВыгрузитьДанные │ │ ├── Schedule.schedule │ │ └── ВыгрузитьДанные.mdo │ ├── ОбновитьДанныеОРелизах │ │ ├── Schedule.schedule │ │ └── ОбновитьДанныеОРелизах.mdo │ ├── ОбновитьДанныеОРепозиториях │ │ └── ОбновитьДанныеОРепозиториях.mdo │ ├── ОбработатьСоыбтия │ │ ├── Schedule.schedule │ │ └── ОбработатьСоыбтия.mdo │ ├── ОпубликоватьБрошюру │ │ ├── Schedule.schedule │ │ └── ОпубликоватьБрошюру.mdo │ ├── ОпубликоватьПодборку10 │ │ ├── Schedule.schedule │ │ └── ОпубликоватьПодборку10.mdo │ ├── ОпубликоватьПодборку25 │ │ ├── Schedule.schedule │ │ └── ОпубликоватьПодборку25.mdo │ ├── ОпубликоватьТрендыНедели │ │ ├── Schedule.schedule │ │ └── ОпубликоватьТрендыНедели.mdo │ └── ПубликацияОчередногоПоста │ │ ├── Schedule.schedule │ │ └── ПубликацияОчередногоПоста.mdo │ ├── Styles │ └── Главный │ │ ├── Style.style │ │ └── Главный.mdo │ └── Subsystems │ └── OpenYellow │ ├── OpenYellow.mdo │ └── Subsystems │ ├── Настройки │ └── Настройки.mdo │ ├── Регистры │ └── Регистры.mdo │ └── Справочники │ └── Справочники.mdo ├── README.md ├── media ├── cover.png ├── cover_zoom.png ├── logo.png └── logo_flat.png └── web ├── authors.html ├── badges.html ├── blocks └── sidebar.html ├── copy.xml ├── css ├── 404.css ├── ag-grid-theme-builder.css ├── bootstrap.min.css ├── font-awesome.min.css ├── open-iconic-bootstrap.min.css ├── popup.css └── style.css ├── favicon.ico ├── fonts ├── bookantiqua.ttf ├── fontawesome-webfont.eot ├── fontawesome-webfont.ttf ├── fontawesome-webfont.woff2 ├── open-iconic.eot ├── open-iconic.ttf └── open-iconic.woff ├── grid.html ├── index.html ├── js ├── ag-grid-community.min.noStyle.js ├── app.js ├── authors.js ├── effects.js ├── grid.js ├── index.js ├── socials.js ├── telegram-web-app.js ├── xhttp.js └── ya_metrica.js ├── neocities.png ├── not_found.html ├── pwa ├── favicon.ico ├── icons │ ├── 120x120.png │ ├── 128x128.png │ ├── 144x144.png │ ├── 152x152.png │ ├── 16x16.png │ ├── 180x180.png │ ├── 192x192.png │ ├── 32x32.png │ ├── 384x384.png │ ├── 512x512.png │ ├── 72x72.png │ └── 96x96.png └── manifest.json ├── robots.txt ├── static ├── 1.png ├── 2.png ├── Clock.svg ├── Fire.svg ├── Gaspar.svg ├── Star.svg ├── badges.png ├── cover.png ├── down.png ├── logo.png ├── logo_side.png ├── openbsl.png ├── readmebadge.png ├── same.png ├── tg.png ├── topbadges.png ├── up.png └── ypm_small.png ├── sw.js ├── wip.html └── yellowpm.html /.gitattributes: -------------------------------------------------------------------------------- 1 | web/css/ag-grid-theme-builder.css linguist-detectable=false 2 | -------------------------------------------------------------------------------- /.github/workflows/deploy.yml: -------------------------------------------------------------------------------- 1 | name: Развернуть на Neocities 2 | 3 | on: 4 | workflow_dispatch: 5 | 6 | concurrency: 7 | group: deploy-to-neocities 8 | cancel-in-progress: true 9 | 10 | jobs: 11 | Deploy: 12 | runs-on: ubuntu-latest 13 | 14 | steps: 15 | 16 | - uses: actions/checkout@v4 17 | with: 18 | fetch-depth: 0 19 | 20 | - name: Развертывание на neocities 21 | uses: bcomnes/deploy-to-neocities@v2 22 | with: 23 | api_token: ${{ secrets.NEOCITIES_API_TOKEN }} 24 | cleanup: false 25 | dist_dir: ./web 26 | -------------------------------------------------------------------------------- /.github/workflows/deploy_test.yml: -------------------------------------------------------------------------------- 1 | name: Развернуть на Neocities (Тест) 2 | 3 | on: 4 | push: 5 | branches: ["main"] 6 | workflow_dispatch: 7 | 8 | concurrency: 9 | group: deploy-to-neocities 10 | cancel-in-progress: true 11 | 12 | jobs: 13 | Deploy: 14 | runs-on: ubuntu-latest 15 | 16 | steps: 17 | 18 | - uses: actions/checkout@v4 19 | with: 20 | fetch-depth: 0 21 | 22 | - name: Развертывание на neocities 23 | uses: bcomnes/deploy-to-neocities@v2 24 | with: 25 | api_token: ${{ secrets.NEOCITIES_TEST_API_TOKEN }} 26 | cleanup: false 27 | dist_dir: ./web 28 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | /web/data 3 | -------------------------------------------------------------------------------- /OpenYellow/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | OpenYellow 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.xtext.ui.shared.xtextBuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.xtext.ui.shared.xtextNature 16 | com._1c.g5.v8.dt.core.V8ConfigurationNature 17 | 18 | 19 | -------------------------------------------------------------------------------- /OpenYellow/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding/=UTF-8 3 | -------------------------------------------------------------------------------- /OpenYellow/DT-INF/PROJECT.PMF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Runtime-Version: 8.3.15 3 | -------------------------------------------------------------------------------- /OpenYellow/src/Catalogs/Авторы/Авторы.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Авторы 11 | 12 | ru 13 | Авторы 14 | 15 | true 16 | Catalog.Авторы.StandardAttribute.Description 17 | Catalog.Авторы.StandardAttribute.Code 18 | DontUse 19 | 20 | Use 21 | PredefinedDataName 22 | 23 | Use 24 | 25 | 26 | 27 | 28 | Use 29 | Predefined 30 | 31 | Use 32 | 33 | 34 | 35 | 36 | Use 37 | Ref 38 | 39 | Use 40 | 41 | 42 | 43 | 44 | Use 45 | DeletionMark 46 | 47 | Use 48 | 49 | 50 | 51 | 52 | Use 53 | IsFolder 54 | 55 | Use 56 | 57 | 58 | 59 | 60 | Use 61 | Owner 62 | true 63 | 64 | ShowError 65 | Use 66 | 67 | 68 | 69 | 70 | Use 71 | Parent 72 | true 73 | 74 | Use 75 | 76 | 77 | 78 | 79 | Use 80 | Description 81 | 82 | ShowError 83 | Use 84 | 85 | 86 | 87 | 88 | Use 89 | Code 90 | 91 | Use 92 | 93 | 94 | 95 | Use 96 | Managed 97 | Use 98 | 2 99 | true 100 | 12 101 | 125 102 | Variable 103 | true 104 | true 105 | AsDescription 106 | InDialog 107 | BothWays 108 | 109 | URL 110 | 111 | ru 112 | URL 113 | 114 | 115 | String 116 | 117 | 150 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | Use 126 | Use 127 | 128 | 129 | Аватар 130 | 131 | ru 132 | Аватар 133 | 134 | 135 | String 136 | 137 | 150 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | Use 146 | Use 147 | 148 | 149 | -------------------------------------------------------------------------------- /OpenYellow/src/Catalogs/ВерсииYPM/ВерсииYPM.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | ВерсииYPM 11 | 12 | ru 13 | Версии YPM 14 | 15 | true 16 | Catalog.ВерсииYPM.StandardAttribute.Description 17 | Catalog.ВерсииYPM.StandardAttribute.Code 18 | DontUse 19 | Use 20 | Managed 21 | Use 22 | 2 23 | true 24 | 9 25 | 25 26 | String 27 | Variable 28 | true 29 | true 30 | AsDescription 31 | InDialog 32 | BothWays 33 | 34 | Описание 35 | 36 | ru 37 | Описание 38 | 39 | 40 | String 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | Use 49 | Use 50 | 51 | 52 | URLФайла 53 | 54 | ru 55 | URL файла 56 | 57 | 58 | String 59 | 60 | 300 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | Use 69 | Use 70 | 71 | 72 | -------------------------------------------------------------------------------- /OpenYellow/src/Catalogs/Запросы/Forms/ФормаЭлемента/Module.bsl: -------------------------------------------------------------------------------- 1 | 2 | &НаСервере 3 | Процедура ВыполнитьЗапросНаСервере() 4 | МетодыGitHub.ОбновитьДанныеОРепозиториях(, Объект.Ссылка); 5 | КонецПроцедуры 6 | 7 | &НаКлиенте 8 | Процедура ВыполнитьЗапрос(Команда) 9 | ВыполнитьЗапросНаСервере(); 10 | КонецПроцедуры 11 | -------------------------------------------------------------------------------- /OpenYellow/src/Catalogs/Запросы/Запросы.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Запросы 11 | 12 | ru 13 | Запросы 14 | 15 | true 16 | Catalog.Запросы.StandardAttribute.Description 17 | Catalog.Запросы.StandardAttribute.Code 18 | DontUse 19 | Use 20 | Managed 21 | Use 22 | 2 23 | true 24 | 9 25 | 125 26 | String 27 | Variable 28 | true 29 | true 30 | AsDescription 31 | InDialog 32 | BothWays 33 | Catalog.Запросы.Form.ФормаЭлемента 34 | 35 | Запрос 36 | 37 | ru 38 | Запрос 39 | 40 | 41 | String 42 | 43 | 800 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | Use 52 | Use 53 | 54 | 55 | Использован 56 | 57 | ru 58 | Использован 59 | 60 | 61 | Boolean 62 | 63 | 64 | 65 | 66 | Use 67 | Use 68 | 69 | 70 | Количество 71 | 72 | ru 73 | Количество 74 | 75 | 76 | Number 77 | 78 | 10 79 | 80 | 81 | 82 | 83 | 84 | Use 85 | Use 86 | 87 | 88 | ФормаЭлемента 89 | 90 | ru 91 | Форма элемента 92 | 93 | PersonalComputer 94 | MobileDevice 95 | 96 | 97 | -------------------------------------------------------------------------------- /OpenYellow/src/Catalogs/Подборки/Подборки.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Подборки 11 | 12 | ru 13 | Подборки 14 | 15 | true 16 | Catalog.Подборки.StandardAttribute.Description 17 | Catalog.Подборки.StandardAttribute.Code 18 | DontUse 19 | Use 20 | Managed 21 | Use 22 | 2 23 | true 24 | 9 25 | 75 26 | String 27 | Variable 28 | true 29 | true 30 | AsDescription 31 | InDialog 32 | BothWays 33 | 34 | Описание 35 | 36 | ru 37 | Описание 38 | 39 | 40 | String 41 | 42 | 400 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | Use 51 | Use 52 | 53 | 54 | -------------------------------------------------------------------------------- /OpenYellow/src/Catalogs/Посты/Посты.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Посты 11 | 12 | ru 13 | Посты 14 | 15 | true 16 | Catalog.Посты.StandardAttribute.Code 17 | DontUse 18 | Use 19 | Managed 20 | Use 21 | 2 22 | true 23 | 12 24 | String 25 | Variable 26 | true 27 | true 28 | InDialog 29 | BothWays 30 | 31 | Текст 32 | 33 | ru 34 | Текст 35 | 36 | 37 | String 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | Use 46 | Use 47 | 48 | 49 | Статус 50 | 51 | ru 52 | Статус 53 | 54 | 55 | EnumRef.СогласованиеПостов 56 | 57 | 58 | 59 | 60 | Use 61 | Use 62 | 63 | 64 | Клавиатура 65 | 66 | ru 67 | Клавиатура 68 | 69 | 70 | String 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | Use 79 | Use 80 | 81 | 82 | Ошибка 83 | 84 | ru 85 | Ошибка 86 | 87 | 88 | String 89 | 90 | 500 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | Use 99 | Use 100 | 101 | 102 | Репозиторий 103 | 104 | ru 105 | Репозиторий 106 | 107 | 108 | CatalogRef.Репозитории 109 | 110 | 111 | 112 | 113 | Use 114 | Use 115 | 116 | 117 | -------------------------------------------------------------------------------- /OpenYellow/src/Catalogs/Репозитории/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Normal 5 | dfcece9d-5077-440b-b6b3-45a5cb4538eb 6 | 7 | 8 | Normal 9 | 88619765-ccb3-46c6-ac52-38e9c992ebd4 10 | 11 | 12 | Normal 13 | b75fecce-942b-4aed-abc9-e6a02e460fb3 14 | 15 | Normal 16 | 911b6018-f537-43e8-a417-da56b22f9aec 17 | 18 | -------------------------------------------------------------------------------- /OpenYellow/src/Catalogs/Репозитории/Forms/ФормаСписка/Module.bsl: -------------------------------------------------------------------------------- 1 | &НаСервереБезКонтекста 2 | Процедура СбросДинамикиНаСервере() 3 | МетодыСайта.ПрописатьМеста(); 4 | КонецПроцедуры 5 | 6 | &НаКлиенте 7 | Процедура СбросДинамики(Команда) 8 | СбросДинамикиНаСервере(); 9 | КонецПроцедуры 10 | 11 | &НаСервереБезКонтекста 12 | Процедура ВыгрузитьПоследниеНаСервере() 13 | МетодыGitHub.ЗагрузитьПоследние(); 14 | КонецПроцедуры 15 | 16 | &НаКлиенте 17 | Процедура ВыгрузитьПоследние(Команда) 18 | ВыгрузитьПоследниеНаСервере(); 19 | КонецПроцедуры 20 | 21 | &НаСервереБезКонтекста 22 | Процедура ВыгрузитьОбновленныеНаСервере() 23 | МетодыGitHub.ЗагрузитьОбновленные(); 24 | КонецПроцедуры 25 | 26 | &НаКлиенте 27 | Процедура ВыгрузитьОбновленные(Команда) 28 | ВыгрузитьОбновленныеНаСервере(); 29 | КонецПроцедуры 30 | 31 | &НаСервереБезКонтекста 32 | Процедура ВыгрузитьТопСайтНаСервере() 33 | МетодыСайта.ОбновитьДанныеСайта(); 34 | КонецПроцедуры 35 | 36 | &НаКлиенте 37 | Процедура ВыгрузитьТопСайт(Команда) 38 | ВыгрузитьТопСайтНаСервере(); 39 | КонецПроцедуры 40 | -------------------------------------------------------------------------------- /OpenYellow/src/Catalogs/Файлы/Forms/ФормаЭлемента/Form.form: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Код 5 | 1 6 | true 7 | true 8 | 9 | true 10 | 11 | 12 | Объект.Code 13 | 14 | 15 | КодРасширеннаяПодсказка 16 | 3 17 | true 18 | true 19 | 20 | true 21 | 22 | Label 23 | true 24 | true 25 | 26 | Left 27 | 28 | 29 | 30 | КодКонтекстноеМеню 31 | 2 32 | true 33 | true 34 | 35 | true 36 | 37 | true 38 | 39 | InputField 40 | EnterOnInput 41 | true 42 | Left 43 | true 44 | 45 | true 46 | true 47 | true 48 | true 49 | true 50 | true 51 | 52 | 53 | 54 | Наименование 55 | 4 56 | true 57 | true 58 | 59 | true 60 | 61 | 62 | Объект.Description 63 | 64 | 65 | НаименованиеРасширеннаяПодсказка 66 | 6 67 | true 68 | true 69 | 70 | true 71 | 72 | Label 73 | true 74 | true 75 | 76 | Left 77 | 78 | 79 | 80 | НаименованиеКонтекстноеМеню 81 | 5 82 | true 83 | true 84 | 85 | true 86 | 87 | true 88 | 89 | InputField 90 | EnterOnInput 91 | true 92 | Left 93 | true 94 | 95 | true 96 | true 97 | true 98 | true 99 | true 100 | true 101 | 102 | 103 | 104 | Путь 105 | 7 106 | true 107 | true 108 | 109 | true 110 | 111 | 112 | Объект.Путь 113 | 114 | 115 | ПутьРасширеннаяПодсказка 116 | 9 117 | true 118 | true 119 | 120 | true 121 | 122 | Label 123 | true 124 | true 125 | 126 | Left 127 | 128 | 129 | 130 | ПутьКонтекстноеМеню 131 | 8 132 | true 133 | true 134 | 135 | true 136 | 137 | true 138 | 139 | InputField 140 | EnterOnInput 141 | true 142 | Left 143 | true 144 | 145 | 146 | Opening 147 | ПутьОткрытие 148 | 149 | true 150 | true 151 | true 152 | true 153 | true 154 | true 155 | true 156 | 157 | 158 | 159 | ФормаКоманднаяПанель 160 | -1 161 | true 162 | true 163 | 164 | true 165 | 166 | Left 167 | true 168 | 169 | LockOwnerWindow 170 | true 171 | true 172 | Vertical 173 | true 174 | true 175 | true 176 | true 177 | true 178 | 179 | Объект 180 | 1 181 | 182 | CatalogObject.Файлы 183 | 184 | 185 | true 186 | 187 | 188 | true 189 | 190 |
true
191 | true 192 |
193 | 194 | 195 | 196 | 197 | 198 |
199 | -------------------------------------------------------------------------------- /OpenYellow/src/Catalogs/Файлы/Forms/ФормаЭлемента/Module.bsl: -------------------------------------------------------------------------------- 1 | #Область ОбработчикиСобытийЭлементовШапкиФормы 2 | 3 | &НаКлиенте 4 | Процедура ПутьОткрытие(Элемент, СтандартнаяОбработка) 5 | 6 | СтандартнаяОбработка = Ложь; 7 | ИнструментарийКлиент.ЗаписатьФайлВРеквизит(Объект.Ссылка, ЭтотОбъект, "Файл", "Путь"); 8 | 9 | КонецПроцедуры 10 | 11 | #КонецОбласти -------------------------------------------------------------------------------- /OpenYellow/src/CommonModules/Инструментарий/Module.bsl: -------------------------------------------------------------------------------- 1 | #Область СлужебныйПрограммныйИнтерфейс 2 | 3 | Функция ПолучитьСписокРепозиториев(Знач Страница = 1, Знач Запрос) Экспорт 4 | 5 | URL = Запрос.Запрос + "+fork:true&page=" + Строка(Страница) + "&visibility=public"; 6 | Авторизация = "token " + ПолучитьНастройку("GitHubToken"); 7 | Заголовки = Новый Соответствие; 8 | Заголовки.Вставить("Authorization", Авторизация); 9 | Заголовки.Вставить("Content-Type", "text/html; charset=utf-8"); 10 | 11 | Ответ = OPI_Инструменты.Get(URL, , Заголовки); 12 | 13 | Возврат Ответ; 14 | 15 | КонецФункции 16 | 17 | Функция ПолучитьПоследнийРелиз(Знач Репозиторий) Экспорт 18 | 19 | URL = "https://api.github.com/repos/" 20 | + Репозиторий.Автор.Наименование 21 | + "/" 22 | + Репозиторий.Наименование + "/releases/latest"; 23 | 24 | Авторизация = "token " + ПолучитьНастройку("GithubTokenДополнительный"); 25 | Заголовки = Новый Соответствие; 26 | Заголовки.Вставить("Authorization", Авторизация); 27 | Заголовки.Вставить("Content-Type", "text/html; charset=utf-8"); 28 | 29 | Ответ = OPI_Инструменты.Get(URL, , Заголовки); 30 | 31 | Возврат Ответ; 32 | 33 | КонецФункции 34 | 35 | Функция ФорматДата(Знач ДатаСтрока) Экспорт 36 | 37 | Возврат Дата(СтрЗаменить(Лев(ДатаСтрока, СтрНайти(ДатаСтрока, "T") - 1), "-", "")); 38 | 39 | КонецФункции 40 | 41 | Процедура ЗаписатьИсключение(Знач ОписаниеОшибки) Экспорт 42 | 43 | МЗ = РегистрыСведений.Исключения.СоздатьМенеджерЗаписи(); 44 | МЗ.Период = ТекущаяДатаСеанса(); 45 | МЗ.UID = Строка(Новый УникальныйИдентификатор); 46 | МЗ.ОписаниеОшибки = ОписаниеОшибки; 47 | МЗ.Записать(Истина); 48 | 49 | КонецПроцедуры 50 | 51 | Процедура ЗаписатьФайлВРеквизиты(Знач Путь, Знач СтруктураЗаписи) Экспорт 52 | 53 | ФайлДвоичные = Новый ДвоичныеДанные(Путь); 54 | РеквизитЗаписи = СтруктураЗаписи["Реквизит"]; 55 | РеквизитПути = СтруктураЗаписи["Путь"]; 56 | 57 | ОбъектЗаписи = СтруктураЗаписи["Ссылка"].ПолучитьОбъект(); 58 | ОбъектЗаписи[РеквизитЗаписи] = Новый ХранилищеЗначения(ФайлДвоичные); 59 | 60 | Если ЗначениеЗаполнено(РеквизитПути) Тогда 61 | ОбъектЗаписи[РеквизитПути] = Путь; 62 | КонецЕсли; 63 | 64 | ОбъектЗаписи.Записать(); 65 | 66 | КонецПроцедуры 67 | 68 | Процедура ЗаписатьJSONВФайл(Знач Данные, Знач Путь) Экспорт 69 | 70 | JSON = Новый ЗаписьJSON(); 71 | 72 | НС = Новый НастройкиСериализацииJSON(); 73 | НС.ФорматСериализацииДаты = ФорматДатыJSON.ISO; 74 | 75 | ПараметрыЗаписиJSON = Новый ПараметрыЗаписиJSON( , Символы.Таб); 76 | 77 | JSON.ОткрытьФайл(Путь, "UTF-8", , ПараметрыЗаписиJSON); 78 | 79 | ЗаписатьJSON(JSON, Данные, НС); 80 | JSON.Закрыть(); 81 | 82 | КонецПроцедуры 83 | 84 | Функция ТаблицаЗначенийВМассив(ТаблицаЗначений) Экспорт 85 | 86 | Массив = Новый Массив(); 87 | СтруктураСтрокой = ""; 88 | НужнаЗапятая = Ложь; 89 | Для Каждого Колонка Из ТаблицаЗначений.Колонки Цикл 90 | Если НужнаЗапятая Тогда 91 | СтруктураСтрокой = СтруктураСтрокой + ","; 92 | КонецЕсли; 93 | СтруктураСтрокой = СтруктураСтрокой + Колонка.Имя; 94 | НужнаЗапятая = Истина; 95 | КонецЦикла; 96 | Для Каждого Строка Из ТаблицаЗначений Цикл 97 | НоваяСтрока = Новый Структура(СтруктураСтрокой); 98 | ЗаполнитьЗначенияСвойств(НоваяСтрока, Строка); 99 | Массив.Добавить(НоваяСтрока); 100 | КонецЦикла; 101 | Возврат Массив; 102 | 103 | КонецФункции 104 | 105 | Функция ПолучитьНастройку(Имя) Экспорт 106 | 107 | СтрокаПодключения = СтрокаСоединенияИнформационнойБазы(); 108 | 109 | Набор = Справочники.НаборыНастроек.НайтиПоРеквизиту("СтрокаПодключения", СтрокаПодключения); 110 | Возврат Набор[Имя]; 111 | 112 | КонецФункции 113 | 114 | Процедура УстановитьНастройку(Имя, Значение) Экспорт 115 | 116 | СтрокаПодключения = СтрокаСоединенияИнформационнойБазы(); 117 | 118 | Набор = Справочники.НаборыНастроек.НайтиПоРеквизиту("СтрокаПодключения", СтрокаПодключения); 119 | 120 | НаборОбъект = Набор.ПолучитьОбъект(); 121 | НаборОбъект[Имя] = Значение; 122 | 123 | НаборОбъект.Записать(); 124 | 125 | КонецПроцедуры 126 | 127 | Функция ПолучитьИмяБазы() Экспорт 128 | 129 | КонецФункции 130 | 131 | #КонецОбласти 132 | -------------------------------------------------------------------------------- /OpenYellow/src/CommonModules/Инструментарий/Инструментарий.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | Инструментарий 4 | 5 | ru 6 | Инструментарий 7 | 8 | true 9 | true 10 | true 11 | 12 | -------------------------------------------------------------------------------- /OpenYellow/src/CommonModules/ИнструментарийКлиент/Module.bsl: -------------------------------------------------------------------------------- 1 | #Область СлужебныйПрограммныйИнтерфейс 2 | 3 | Процедура ЗаписатьФайлВРеквизит(Знач Ссылка, Форма, Знач РеквизитДД, Знач РеквизитПути = "") Экспорт 4 | 5 | Если Форма.Модифицированность Тогда 6 | Форма.Записать(); 7 | КонецЕсли; 8 | 9 | ДополнительныеПараметры = Новый Структура; 10 | ДополнительныеПараметры.Вставить("Ссылка" , Ссылка); 11 | ДополнительныеПараметры.Вставить("Реквизит", РеквизитДД); 12 | ДополнительныеПараметры.Вставить("Путь" , РеквизитПути); 13 | ДополнительныеПараметры.Вставить("Форма" , Форма); 14 | 15 | Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); 16 | Диалог.Заголовок = "Выберите файл"; 17 | ОповещениеЗавершения = Новый ОписаниеОповещения("ВыборФайлаЗавершение" 18 | , ЭтотОбъект 19 | , ДополнительныеПараметры); 20 | 21 | Диалог.Показать(ОповещениеЗавершения); 22 | 23 | КонецПроцедуры 24 | 25 | Процедура ВыборФайлаЗавершение(ВыбранныеФайлы, ДополнительныеПараметры) Экспорт 26 | 27 | Если ВыбранныеФайлы <> Неопределено Тогда 28 | 29 | Форма = ДополнительныеПараметры["Форма"]; 30 | ДополнительныеПараметры.Удалить("Форма"); 31 | 32 | Инструментарий.ЗаписатьФайлВРеквизиты(ВыбранныеФайлы[0], ДополнительныеПараметры); 33 | 34 | Форма.Закрыть(); 35 | ПерейтиПоНавигационнойСсылке(ПолучитьНавигационнуюСсылку(Форма)); 36 | 37 | КонецЕсли; 38 | 39 | КонецПроцедуры 40 | 41 | #КонецОбласти -------------------------------------------------------------------------------- /OpenYellow/src/CommonModules/ИнструментарийКлиент/ИнструментарийКлиент.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | ИнструментарийКлиент 4 | 5 | ru 6 | Инструментарий клиент 7 | 8 | true 9 | true 10 | 11 | -------------------------------------------------------------------------------- /OpenYellow/src/CommonModules/МетодыGitHub/МетодыGitHub.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | МетодыGitHub 4 | 5 | ru 6 | Методы GitHub 7 | 8 | true 9 | true 10 | true 11 | true 12 | 13 | -------------------------------------------------------------------------------- /OpenYellow/src/CommonModules/МетодыСайта/МетодыСайта.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | МетодыСайта 4 | 5 | ru 6 | Методы сайта 7 | 8 | true 9 | true 10 | true 11 | 12 | -------------------------------------------------------------------------------- /OpenYellow/src/CommonModules/МетодыТелеграм/МетодыТелеграм.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | МетодыТелеграм 4 | 5 | ru 6 | Методы телеграм 7 | 8 | true 9 | true 10 | true 11 | 12 | -------------------------------------------------------------------------------- /OpenYellow/src/CommonModules/ОбработкаСобытий/ОбработкаСобытий.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | ОбработкаСобытий 4 | 5 | ru 6 | Обработка событий 7 | 8 | true 9 | true 10 | 11 | -------------------------------------------------------------------------------- /OpenYellow/src/CommonPictures/Лого/Picture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/OpenYellow/src/CommonPictures/Лого/Picture.png -------------------------------------------------------------------------------- /OpenYellow/src/CommonPictures/Лого/Лого.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | Лого 4 | 5 | ru 6 | Лого 7 | 8 | 9 | -------------------------------------------------------------------------------- /OpenYellow/src/Configuration/ClientApplicationInterface.cai: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /OpenYellow/src/Configuration/Configuration.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | Конфигурация 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 8.3.18 12 | ManagedApplication 13 | PersonalComputer 14 | Russian 15 | 16 | 17 | true 18 | 19 | 20 | OSBackup 21 | true 22 | 23 | 24 | Style.Главный 25 | Language.Русский 26 | Managed 27 | NotAutoFree 28 | DontUse 29 | DontUse 30 | 8.3.15 31 | 32 | Русский 33 | 34 | ru 35 | Русский 36 | 37 | ru 38 | 39 | Subsystem.OpenYellow 40 | Style.Главный 41 | CommonPicture.Лого 42 | CommonModule.Инструментарий 43 | CommonModule.МетодыGitHub 44 | CommonModule.МетодыСайта 45 | CommonModule.МетодыТелеграм 46 | CommonModule.ИнструментарийКлиент 47 | CommonModule.ОбработкаСобытий 48 | HTTPService.data 49 | HTTPService.tg 50 | ScheduledJob.ОбновитьДанныеОРепозиториях 51 | ScheduledJob.ОбновитьДанныеОРелизах 52 | ScheduledJob.ОпубликоватьТрендыНедели 53 | ScheduledJob.ВыгрузитьДанные 54 | ScheduledJob.ОпубликоватьПодборку10 55 | ScheduledJob.ОпубликоватьПодборку25 56 | ScheduledJob.ОбработатьСоыбтия 57 | ScheduledJob.ОпубликоватьБрошюру 58 | ScheduledJob.ПубликацияОчередногоПоста 59 | Constant.Лого 60 | Constant.ВерсияYPM 61 | Constant.НаборНастроек 62 | Catalog.Авторы 63 | Catalog.Репозитории 64 | Catalog.Запросы 65 | Catalog.Файлы 66 | Catalog.ВерсииYPM 67 | Catalog.Подборки 68 | Catalog.НаборыНастроек 69 | Catalog.Посты 70 | Enum.СогласованиеПостов 71 | Report.ОтчетПоЗвездам 72 | Report.СписокРепозиториев 73 | Report.НаполнениеПодборок 74 | DataProcessor.КонсольЗаданий_УФ 75 | InformationRegister.СтатистикаРепозиториев 76 | InformationRegister.Исключения 77 | InformationRegister.Тренды 78 | InformationRegister.Релизы 79 | InformationRegister.Пакеты 80 | InformationRegister.ПубликацииПодборок 81 | 82 | -------------------------------------------------------------------------------- /OpenYellow/src/Configuration/HomePageWorkArea.hpwa: -------------------------------------------------------------------------------- 1 | 2 | 3 | TwoColumnsVariableWidth 4 | 5 | 6 |
DataProcessor.КонсольЗаданий_УФ.Form.Форма
7 | 10 8 | 9 | true 10 | 11 |
12 |
13 | 14 | 15 |
InformationRegister.Исключения.Form.ФормаСписка
16 | 10 17 | 18 | true 19 | 20 |
21 |
22 |
23 | -------------------------------------------------------------------------------- /OpenYellow/src/Constants/ВерсияYPM/ВерсияYPM.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | ВерсияYPM 9 | 10 | ru 11 | Версия YPM 12 | 13 | 14 | CatalogRef.ВерсииYPM 15 | 16 | true 17 | 18 | 19 | Managed 20 | 21 | -------------------------------------------------------------------------------- /OpenYellow/src/Constants/Лого/Лого.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Лого 9 | 10 | ru 11 | Лого 12 | 13 | 14 | String 15 | 16 | 17 | true 18 | 19 | 20 | Managed 21 | 22 | -------------------------------------------------------------------------------- /OpenYellow/src/Constants/НаборНастроек/НаборНастроек.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | НаборНастроек 9 | 10 | ru 11 | Набор настроек 12 | 13 | 14 | CatalogRef.НаборыНастроек 15 | 16 | true 17 | 18 | 19 | Managed 20 | 21 | -------------------------------------------------------------------------------- /OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/Forms/ДиалогНастроекСписка/Module.bsl: -------------------------------------------------------------------------------- 1 | #Область ОбработчикиСобытийФормы 2 | 3 | &НаСервере 4 | Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) 5 | //@skip-check unknown-form-parameter-access 6 | //@skip-check unknown-form-parameter-access 7 | Автообновление = Параметры.Автообновление; 8 | //@skip-check unknown-form-parameter-access 9 | //@skip-check unknown-form-parameter-access 10 | ПериодАвтообновления = Параметры.ПериодАвтообновления; 11 | Если ПериодАвтообновления < 5 Тогда 12 | ПериодАвтообновления = 5; 13 | КонецЕсли; 14 | КонецПроцедуры 15 | 16 | #КонецОбласти 17 | 18 | #Область ОбработчикиКомандФормы 19 | 20 | &НаКлиенте 21 | Процедура ОК(Команда) 22 | Если ПериодАвтообновления < 5 Тогда 23 | ПериодАвтообновления = 5; 24 | КонецЕсли; 25 | Результат = Новый Структура("Автообновление, ПериодАвтообновления", Автообновление, ПериодАвтообновления); 26 | Закрыть(Результат); 27 | КонецПроцедуры 28 | 29 | #КонецОбласти 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/Forms/ДиалогОтбораРегламентногоЗадания/Module.bsl: -------------------------------------------------------------------------------- 1 | #Область ОбработчикиСобытийФормы 2 | 3 | &НаСервере 4 | Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) 5 | Предопределенное = Ложь; 6 | Использование = Ложь; 7 | 8 | Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл 9 | Элементы.МетаданныеВыбор.СписокВыбора.Добавить(Метаданное.Имя, Метаданное.Представление()); 10 | КонецЦикла; 11 | 12 | //@skip-check unknown-form-parameter-access 13 | //@skip-check unknown-form-parameter-access 14 | Если Параметры.Отбор <> Неопределено Тогда 15 | //@skip-check unknown-form-parameter-access 16 | //@skip-check unknown-form-parameter-access 17 | Для Каждого Свойство из Параметры.Отбор Цикл 18 | Если Свойство.Ключ = "Ключ" Тогда 19 | Ключ = Свойство.Значение; 20 | ИначеЕсли Свойство.Ключ = "Наименование" Тогда 21 | Наименование = Свойство.Значение; 22 | ИначеЕсли Свойство.Ключ = "Использование" Тогда 23 | Использование = Свойство.Значение; 24 | ИначеЕсли Свойство.Ключ = "Предопределенное" Тогда 25 | Предопределенное = Свойство.Значение; 26 | ИначеЕсли Свойство.Ключ = "Метаданные" Тогда 27 | МетаданныеВыбор = Свойство.Значение; 28 | КонецЕсли; 29 | КонецЦикла; 30 | КонецЕсли; 31 | КонецПроцедуры 32 | 33 | #КонецОбласти 34 | 35 | #Область ОбработчикиКомандФормы 36 | 37 | &НаКлиенте 38 | Процедура ОК(Команда) 39 | Отбор = Новый Структура; 40 | 41 | Если Не ПустаяСтрока(Ключ) Тогда 42 | Отбор.Вставить("Ключ", Ключ); 43 | КонецЕсли; 44 | 45 | Если Не ПустаяСтрока(Наименование) Тогда 46 | Отбор.Вставить("Наименование", Наименование); 47 | КонецЕсли; 48 | 49 | Если МетаданныеВыбор <> "" Тогда 50 | Отбор.Вставить("Метаданные", МетаданныеВыбор); 51 | КонецЕсли; 52 | 53 | Если Предопределенное Тогда 54 | Отбор.Вставить("Предопределенное", Предопределенное); 55 | КонецЕсли; 56 | 57 | Если Использование Тогда 58 | Отбор.Вставить("Использование", Использование); 59 | КонецЕсли; 60 | 61 | Закрыть(Отбор); 62 | КонецПроцедуры 63 | 64 | #КонецОбласти 65 | 66 | -------------------------------------------------------------------------------- /OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/Forms/ДиалогОтбораФоновогоЗадания/Module.bsl: -------------------------------------------------------------------------------- 1 | #Область ОбработчикиСобытийФормы 2 | 3 | &НаСервере 4 | Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) 5 | Регламентные = РегламентныеЗадания.ПолучитьРегламентныеЗадания(); 6 | СписокВыбора = Элементы.Регламентное.СписокВыбора; 7 | Для Каждого РегламентноеЗадание из Регламентные Цикл 8 | Если СписокВыбора.НайтиПоЗначению(РегламентноеЗадание.Метаданные.Имя) = Неопределено Тогда 9 | СписокВыбора.Добавить(РегламентноеЗадание.Метаданные.Имя, РегламентноеЗадание.Метаданные.Представление()); 10 | КонецЕсли; 11 | КонецЦикла; 12 | 13 | Активно = Ложь; 14 | Завершено = Ложь; 15 | ЗавершеноАварийно = Ложь; 16 | Отменено = Ложь; 17 | 18 | //@skip-check unknown-form-parameter-access 19 | //@skip-check unknown-form-parameter-access 20 | Если Параметры.Отбор <> Неопределено Тогда 21 | //@skip-check unknown-form-parameter-access 22 | //@skip-check unknown-form-parameter-access 23 | Отбор = Параметры.Отбор.Получить(); 24 | Для Каждого Свойство из Отбор Цикл 25 | Если Свойство.Ключ = "Начало" Тогда 26 | Начало = Свойство.Значение; 27 | ИначеЕсли Свойство.Ключ = "Конец" Тогда 28 | Конец = Свойство.Значение; 29 | ИначеЕсли Свойство.Ключ = "Ключ" Тогда 30 | Ключ = Свойство.Значение; 31 | ИначеЕсли Свойство.Ключ = "Наименование" Тогда 32 | Наименование = Свойство.Значение; 33 | ИначеЕсли Свойство.Ключ = "ИмяМетода" Тогда 34 | Метод = Свойство.Значение; 35 | ИначеЕсли Свойство.Ключ = "Ключ" Тогда 36 | Ключ = Свойство.Значение; 37 | ИначеЕсли Свойство.Ключ = "РегламентноеЗадание" Тогда 38 | Регламентное = Свойство.Значение.Метаданные.Имя; 39 | 40 | ИначеЕсли Свойство.Ключ = "Состояние" Тогда 41 | Для Каждого СостояниеЗадания из Свойство.Значение Цикл 42 | Если СостояниеЗадания = СостояниеФоновогоЗадания.Активно Тогда 43 | Активно = Истина; 44 | ИначеЕсли СостояниеЗадания = СостояниеФоновогоЗадания.Завершено Тогда 45 | Завершено = Истина; 46 | ИначеЕсли СостояниеЗадания = СостояниеФоновогоЗадания.ЗавершеноАварийно Тогда 47 | ЗавершеноАварийно = Истина; 48 | ИначеЕсли СостояниеЗадания = СостояниеФоновогоЗадания.Отменено Тогда 49 | Отменено = Истина; 50 | КонецЕсли; 51 | КонецЦикла; 52 | КонецЕсли; 53 | КонецЦикла; 54 | КонецЕсли; 55 | КонецПроцедуры 56 | 57 | #КонецОбласти 58 | 59 | #Область ОбработчикиКомандФормы 60 | 61 | &НаКлиенте 62 | Процедура ОК(Команда) 63 | Отбор = ПолучитьОтбор(); 64 | 65 | Закрыть(Отбор); 66 | КонецПроцедуры 67 | 68 | #КонецОбласти 69 | 70 | #Область СлужебныеПроцедурыИФункции 71 | 72 | &НаСервере 73 | Функция ПолучитьОтбор() 74 | Отбор = Новый Структура; 75 | 76 | Если Не ПустаяДата(Начало) Тогда 77 | Отбор.Вставить("Начало", Начало); 78 | КонецЕсли; 79 | 80 | Если Не ПустаяДата(Конец) Тогда 81 | Отбор.Вставить("Конец", Конец); 82 | КонецЕсли; 83 | 84 | Если Не ПустаяСтрока(Ключ) Тогда 85 | Отбор.Вставить("Ключ", Ключ); 86 | КонецЕсли; 87 | 88 | Если Не ПустаяСтрока(Наименование) Тогда 89 | Отбор.Вставить("Наименование", Наименование); 90 | КонецЕсли; 91 | 92 | Если Не ПустаяСтрока(Метод) Тогда 93 | Отбор.Вставить("ИмяМетода", Метод); 94 | КонецЕсли; 95 | 96 | Если Регламентное <> "" Тогда 97 | МассивРегламентных = РегламентныеЗадания.ПолучитьРегламентныеЗадания(Новый Структура("Метаданные", Регламентное)); 98 | Если МассивРегламентных.Количество() > 0 Тогда 99 | Отбор.Вставить("РегламентноеЗадание", МассивРегламентных[0]); 100 | КонецЕсли; 101 | КонецЕсли; 102 | 103 | Массив = Новый Массив; 104 | 105 | Если Активно Тогда 106 | Массив.Добавить(СостояниеФоновогоЗадания.Активно); 107 | КонецЕсли; 108 | 109 | Если Завершено Тогда 110 | Массив.Добавить(СостояниеФоновогоЗадания.Завершено); 111 | КонецЕсли; 112 | 113 | Если ЗавершеноАварийно Тогда 114 | Массив.Добавить(СостояниеФоновогоЗадания.ЗавершеноАварийно); 115 | КонецЕсли; 116 | 117 | Если Отменено Тогда 118 | Массив.Добавить(СостояниеФоновогоЗадания.Отменено); 119 | КонецЕсли; 120 | 121 | Если Массив.Количество() > 0 ТОгда 122 | Отбор.Вставить("Состояние", Массив); 123 | КонецЕсли; 124 | 125 | Возврат Новый ХранилищеЗначения(Отбор); 126 | КонецФункции 127 | 128 | &НаСервере 129 | Функция ПустаяДата(Дата) 130 | Если Дата = '00010101' Тогда 131 | Возврат Истина; 132 | Иначе 133 | Возврат Ложь; 134 | КонецЕсли; 135 | КонецФункции 136 | 137 | #КонецОбласти 138 | 139 | 140 | -------------------------------------------------------------------------------- /OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/Forms/ДиалогРегламентногоЗадания/Module.bsl: -------------------------------------------------------------------------------- 1 | #Область ОписаниеПеременных 2 | 3 | &НаКлиенте 4 | Перем Расписание; 5 | 6 | #КонецОбласти 7 | 8 | #Область ОбработчикиСобытийФормы 9 | 10 | &НаСервере 11 | Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) 12 | Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл 13 | Элементы.МетаданныеВыбор.СписокВыбора.Добавить(Метаданное.Имя, Метаданное.Представление()); 14 | КонецЦикла; 15 | 16 | Попытка 17 | ПользователиИБ = ПользователиИнформационнойБазы.ПолучитьПользователей(); 18 | Исключение 19 | //@skip-check use-non-recommended-method 20 | Сообщить("Ошибка при получении списка пользователей информационной базы: " + ОписаниеОшибки()); 21 | ПользователиИБ = Неопределено; 22 | КонецПопытки; 23 | 24 | Если ПользователиИБ <> Неопределено Тогда 25 | 26 | Для Каждого Пользователь из ПользователиИБ Цикл 27 | Элементы.ПользователиВыбор.СписокВыбора.Добавить(Пользователь.Имя, Пользователь.ПолноеИмя); 28 | КонецЦикла; 29 | 30 | КонецЕсли; 31 | 32 | мВозможностьИзменятьМетаданные = Истина; 33 | 34 | //@skip-check unknown-form-parameter-access 35 | //@skip-check unknown-form-parameter-access 36 | РегламентноеЗаданиеИД = Параметры.ИдентификаторЗадания; 37 | РегламентноеЗадание = РеквизитФормыВЗначение("ОбработкаОбъект").ПолучитьОбъектРегламентногоЗадания(РегламентноеЗаданиеИД); 38 | Если РегламентноеЗадание <> Неопределено Тогда 39 | 40 | МетаданныеВыбор = РегламентноеЗадание.Метаданные.Имя; 41 | 42 | мВозможностьИзменятьМетаданные = Ложь; 43 | Наименование = РегламентноеЗадание.Наименование; 44 | Ключ = РегламентноеЗадание.Ключ; 45 | Использование = РегламентноеЗадание.Использование; 46 | ПользователиВыбор = РегламентноеЗадание.ИмяПользователя; 47 | КоличествоПовторовПриАварийномЗавершении = РегламентноеЗадание.КоличествоПовторовПриАварийномЗавершении; 48 | ИнтервалПовтораПриАварийномЗавершении = РегламентноеЗадание.ИнтервалПовтораПриАварийномЗавершении; 49 | 50 | Расписание = РегламентноеЗадание.Расписание; 51 | 52 | // Добавлены параметры 53 | Для Каждого Параметр Из РегламентноеЗадание.Параметры Цикл 54 | НоваяСтрока = ПараметрыЗадания.Добавить(); 55 | НоваяСтрока.НомерСтроки = ПараметрыЗадания.Индекс(НоваяСтрока)+1; 56 | НоваяСтрока.Значение = Параметр; 57 | МассивТипов = Новый Массив; 58 | МассивТипов.Добавить(ТипЗнч(Параметр)); 59 | НоваяСтрока.Тип = Новый ОписаниеТипов(МассивТипов); 60 | КонецЦикла; 61 | 62 | Иначе 63 | Расписание = Новый РасписаниеРегламентногоЗадания; 64 | КонецЕсли; 65 | 66 | Элементы.МетаданныеВыбор.Доступность = мВозможностьИзменятьМетаданные; 67 | Элементы.НадписьРасписание.Заголовок = "Выполнять: " + Строка(Расписание); 68 | 69 | КонецПроцедуры 70 | 71 | &НаКлиенте 72 | Процедура ПриОткрытии(Отказ) 73 | Расписание = ПолучитьРасписаниеРегламентногоЗадания(РегламентноеЗаданиеИД); 74 | КонецПроцедуры 75 | 76 | #КонецОбласти 77 | 78 | #Область ОбработчикиСобытийЭлементовШапкиФормы 79 | 80 | &НаКлиенте 81 | Процедура ИзменитьРасписаниеНажатие(Элемент) 82 | Диалог = Новый ДиалогРасписанияРегламентногоЗадания(Расписание); 83 | 84 | ОписаниеОповещенияОЗакрытии = Новый ОписаниеОповещения("ДиалогРасписанияРегламентногоЗаданияОткрытьЗавершение", ЭтотОбъект); 85 | 86 | Диалог.Показать(ОписаниеОповещенияОЗакрытии); 87 | КонецПроцедуры 88 | 89 | &НаКлиенте 90 | Процедура МетаданныеВыборОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) 91 | Наименование = Элемент.СписокВыбора.НайтиПоЗначению(ВыбранноеЗначение).Представление; 92 | КонецПроцедуры 93 | 94 | #КонецОбласти 95 | 96 | #Область ОбработчикиКомандФормы 97 | 98 | &НаКлиенте 99 | Процедура ОК(Команда) 100 | Если ЗаписатьРегламентноеЗадание(Расписание) Тогда 101 | Закрыть(РегламентноеЗаданиеИД); 102 | КонецЕсли; 103 | КонецПроцедуры 104 | 105 | #Если Не ВебКлиент Тогда 106 | &НаКлиенте 107 | Процедура УстановитьУникальныйКлюч(Команда) 108 | 109 | Если ЗначениеЗаполнено(Ключ) Тогда 110 | Ответ = Вопрос("Ключ рег. задания заполнен!Перезаполнить уникальным значением?",РежимДиалогаВопрос.ДаНет,10,,"Предупреждение!"); 111 | Если Ответ = КодВозвратаДиалога.Нет Тогда 112 | Возврат; 113 | КонецЕсли; 114 | КонецЕсли; 115 | 116 | 117 | Если Не ЗначениеЗаполнено(Ключ) Тогда 118 | СформироватьУникальныйКлючРекурсивно(Строка(Новый УникальныйИдентификатор),РегламентноеЗаданиеИД); 119 | Иначе 120 | СформироватьУникальныйКлючРекурсивно(Ключ,РегламентноеЗаданиеИД); 121 | КонецЕсли; 122 | 123 | КонецПроцедуры 124 | #КонецЕсли 125 | 126 | #КонецОбласти 127 | 128 | 129 | #Область СлужебныеПроцедурыИФункции 130 | 131 | &НаКлиенте 132 | Процедура ДиалогРасписанияРегламентногоЗаданияОткрытьЗавершение(РасписаниеРезультат, ДополнительныеПараметры) Экспорт 133 | Если РасписаниеРезультат <> Неопределено Тогда 134 | Расписание = РасписаниеРезультат; 135 | Элементы.НадписьРасписание.Заголовок = "Выполнять: " + Строка(Расписание); 136 | КонецЕсли; 137 | КонецПроцедуры 138 | 139 | &НаСервере 140 | Функция ЗаписатьРегламентноеЗадание(Расписание) 141 | Попытка 142 | 143 | Если МетаданныеВыбор = Неопределено ИЛИ МетаданныеВыбор = "" Тогда 144 | ВызватьИсключение("Не выбраны метаданные регламентного задания."); 145 | КонецЕсли; 146 | 147 | РегламентноеЗадание = РеквизитФормыВЗначение("ОбработкаОбъект").ПолучитьОбъектРегламентногоЗадания(РегламентноеЗаданиеИД); 148 | 149 | Если РегламентноеЗадание = Неопределено Тогда 150 | РегламентноеЗадание = РегламентныеЗадания.СоздатьРегламентноеЗадание(МетаданныеВыбор); 151 | РегламентноеЗаданиеИД = РегламентноеЗадание.УникальныйИдентификатор; 152 | КонецЕсли; 153 | 154 | РегламентноеЗадание.Наименование = Наименование; 155 | РегламентноеЗадание.Ключ = Ключ; 156 | РегламентноеЗадание.Использование = Использование; 157 | РегламентноеЗадание.ИмяПользователя = ПользователиВыбор; 158 | РегламентноеЗадание.КоличествоПовторовПриАварийномЗавершении = КоличествоПовторовПриАварийномЗавершении; 159 | РегламентноеЗадание.ИнтервалПовтораПриАварийномЗавершении = ИнтервалПовтораПриАварийномЗавершении; 160 | РегламентноеЗадание.Расписание = Расписание; 161 | 162 | // Добавлены параметры регламентного задания 163 | Если ПараметрыЗадания.Количество() Тогда 164 | РегламентноеЗадание.Параметры = ПараметрыЗадания.Выгрузить().ВыгрузитьКолонку("Значение"); 165 | Иначе 166 | РегламентноеЗадание.Параметры = Новый Массив; 167 | КонецЕсли; 168 | 169 | РегламентноеЗадание.Записать(); 170 | Исключение 171 | 172 | //@skip-check use-non-recommended-method 173 | Сообщить("Ошибка: " + ОписаниеОшибки(), СтатусСообщения.Внимание); 174 | Возврат Ложь; 175 | КонецПопытки; 176 | 177 | Возврат Истина; 178 | КонецФункции 179 | 180 | &НаСервере 181 | Функция ПолучитьРасписаниеРегламентногоЗадания(УникальныйНомерЗадания) 182 | ОбъектЗадания = РеквизитФормыВЗначение("ОбработкаОбъект").ПолучитьОбъектРегламентногоЗадания(УникальныйНомерЗадания); 183 | Если ОбъектЗадания = Неопределено Тогда 184 | Возврат Новый РасписаниеРегламентногоЗадания; 185 | КонецЕсли; 186 | 187 | Возврат ОбъектЗадания.Расписание; 188 | КонецФункции 189 | 190 | &НаКлиенте 191 | Процедура СформироватьУникальныйКлючРекурсивно(ПараметрКлюч,ИдРегламентногоЗалания) 192 | 193 | Если Не КлючРегламентногоЗаданияУникальный(ПараметрКлюч,ИдРегламентногоЗалания) Тогда 194 | СформироватьУникальныйКлючРекурсивно(Строка(Новый УникальныйИдентификатор),ИдРегламентногоЗалания); 195 | Иначе 196 | Ключ = ПараметрКлюч; 197 | КонецЕсли; 198 | 199 | КонецПроцедуры 200 | 201 | &НаСервереБезКонтекста 202 | Функция КлючРегламентногоЗаданияУникальный(Ключ,ИдРегламентногоЗалания) 203 | 204 | СтруктураОтбора = Новый Структура; 205 | СтруктураОтбора.Вставить("Ключ", Ключ ); 206 | МассивРеглЗаданий = РегламентныеЗадания.ПолучитьРегламентныеЗадания(СтруктураОтбора); 207 | Если МассивРеглЗаданий.Количество() = 0 Тогда 208 | Возврат Истина; 209 | КонецЕсли; 210 | 211 | Возврат Ложь; 212 | 213 | КонецФункции 214 | 215 | #КонецОбласти 216 | 217 | 218 | 219 | -------------------------------------------------------------------------------- /OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/Forms/ДиалогФоновогоЗадания/Module.bsl: -------------------------------------------------------------------------------- 1 | #Область ОбработчикиСобытийФормы 2 | 3 | &НаСервере 4 | Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) 5 | //@skip-check unknown-form-parameter-access 6 | //@skip-check unknown-form-parameter-access 7 | ЗаданиеИД = Параметры.ИдентификаторЗадания; 8 | ФоновоеЗадание = РеквизитФормыВЗначение("Объект").ПолучитьОбъектФоновогоЗадания(ЗаданиеИД); 9 | Если ФоновоеЗадание <> Неопределено Тогда 10 | ИмяМетода = ФоновоеЗадание.ИмяМетода; 11 | Наименование = ФоновоеЗадание.Наименование; 12 | Ключ = ФоновоеЗадание.Ключ; 13 | КонецЕсли; 14 | КонецПроцедуры 15 | 16 | #КонецОбласти 17 | 18 | #Область ОбработчикиКомандФормы 19 | 20 | &НаКлиенте 21 | Процедура ОК(Команда) 22 | ИдентификаторЗадания = Неопределено; 23 | ВыполнитьФоновоеЗадание(ИдентификаторЗадания); 24 | Закрыть(ИдентификаторЗадания); 25 | КонецПроцедуры 26 | 27 | #КонецОбласти 28 | 29 | #Область СлужебныеПроцедурыИФункции 30 | 31 | &НаСервере 32 | Процедура ВыполнитьФоновоеЗадание(ИдентификаторЗадания) 33 | Попытка 34 | ФоновоеЗадание = ФоновыеЗадания.Выполнить(ИмяМетода,, Ключ, Наименование); 35 | ИдентификаторЗадания = ФоновоеЗадание.УникальныйИдентификатор; 36 | Исключение 37 | //@skip-check use-non-recommended-method 38 | Сообщить(ОписаниеОшибки(), СтатусСообщения.Внимание); 39 | КонецПопытки; 40 | КонецПроцедуры 41 | 42 | #КонецОбласти 43 | 44 | 45 | -------------------------------------------------------------------------------- /OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/Forms/Форма/ConditionalAppearance.dcssca: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | СписокРегламентныхЗаданий 7 | 8 | 9 | 10 | 11 | СписокРегламентныхЗаданий.Использование 12 | Equal 13 | Нет 14 | 15 | 16 | 17 | 18 | ЦветТекста 19 | #A0A0A3 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/Forms/Форма/Items/СписокРегламентныхЗаданийВыполнитьЗадание/Picture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/Forms/Форма/Items/СписокРегламентныхЗаданийВыполнитьЗадание/Picture.png -------------------------------------------------------------------------------- /OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/Forms/Форма/Items/СписокРегламентныхЗаданийКонтекстноеМенюЗапуститьЗадание/Picture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/Forms/Форма/Items/СписокРегламентныхЗаданийКонтекстноеМенюЗапуститьЗадание/Picture.png -------------------------------------------------------------------------------- /OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/ObjectModule.bsl: -------------------------------------------------------------------------------- 1 | #Область СлужебныйПрограммныйИнтерфейс 2 | #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда 3 | 4 | Функция СведенияОВнешнейОбработке() Экспорт 5 | Возврат Неопределено; 6 | КонецФункции 7 | 8 | Функция ПолучитьОбъектРегламентногоЗадания(УникальныйНомерЗадания) Экспорт 9 | 10 | Попытка 11 | 12 | Если НЕ ПустаяСтрока(УникальныйНомерЗадания) Тогда 13 | УникальныйИдентификаторЗадания = Новый УникальныйИдентификатор(УникальныйНомерЗадания); 14 | ТекущееРегламентноеЗадание = РегламентныеЗадания.НайтиПоУникальномуИдентификатору(УникальныйИдентификаторЗадания); 15 | Иначе 16 | ТекущееРегламентноеЗадание = Неопределено; 17 | КонецЕсли; 18 | 19 | Исключение 20 | ТекущееРегламентноеЗадание = Неопределено; 21 | КонецПопытки; 22 | 23 | Возврат ТекущееРегламентноеЗадание; 24 | 25 | КонецФункции 26 | 27 | Функция ПолучитьОбъектФоновогоЗадания(УникальныйНомерЗадания) Экспорт 28 | 29 | Попытка 30 | 31 | Если НЕ ПустаяСтрока(УникальныйНомерЗадания) Тогда 32 | УникальныйИдентификаторЗадания = Новый УникальныйИдентификатор(УникальныйНомерЗадания); 33 | ТекущееФоновоеЗадание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(УникальныйИдентификаторЗадания); 34 | Иначе 35 | ТекущееФоновоеЗадание = Неопределено; 36 | КонецЕсли; 37 | 38 | Исключение 39 | ТекущееФоновоеЗадание = Неопределено; 40 | КонецПопытки; 41 | 42 | Возврат ТекущееФоновоеЗадание; 43 | 44 | КонецФункции 45 | 46 | #КонецЕсли 47 | #КонецОбласти 48 | 49 | -------------------------------------------------------------------------------- /OpenYellow/src/DataProcessors/КонсольЗаданий_УФ/КонсольЗаданий_УФ.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | КонсольЗаданий_УФ 8 | 9 | ru 10 | Консоль заданий (УФ ускоренная) 11 | 12 | https://github.com/kuzyara/JobsConsole2019.epf (c)Душелов'2009 13 | true 14 | DataProcessor.КонсольЗаданий_УФ.Form.Форма 15 | 16 | Форма 17 | 18 | ru 19 | Форма 20 | 21 | PersonalComputer 22 | MobileDevice 23 | 24 | 25 | ДиалогРегламентногоЗадания 26 | 27 | ru 28 | Диалог регламентного задания 29 | 30 | PersonalComputer 31 | MobileDevice 32 | 33 | 34 | ДиалогФоновогоЗадания 35 | 36 | ru 37 | Диалог фонового задания 38 | 39 | PersonalComputer 40 | MobileDevice 41 | 42 | 43 | ДиалогНастроекСписка 44 | 45 | ru 46 | Диалог настроек списка 47 | 48 | PersonalComputer 49 | MobileDevice 50 | 51 | 52 | ДиалогОтбораРегламентногоЗадания 53 | 54 | ru 55 | Диалог отбора регламентного задания 56 | 57 | PersonalComputer 58 | MobileDevice 59 | 60 | 61 | ДиалогОтбораФоновогоЗадания 62 | 63 | ru 64 | Диалог отбора фонового задания 65 | 66 | PersonalComputer 67 | MobileDevice 68 | 69 | 70 | -------------------------------------------------------------------------------- /OpenYellow/src/Enums/СогласованиеПостов/СогласованиеПостов.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | СогласованиеПостов 9 | 10 | ru 11 | Согласование постов 12 | 13 | true 14 | BothWays 15 | 16 | Новый 17 | 18 | ru 19 | Новый 20 | 21 | 22 | 23 | Согласован 24 | 25 | ru 26 | Согласован 27 | 28 | 29 | 30 | Опубликован 31 | 32 | ru 33 | Опубликован 34 | 35 | 36 | 37 | Отклонен 38 | 39 | ru 40 | Отклонен 41 | 42 | 43 | 44 | Ошибка 45 | 46 | ru 47 | Ошибка 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /OpenYellow/src/HTTPServices/data/Module.bsl: -------------------------------------------------------------------------------- 1 | 2 | Функция getDataGET(Запрос) 3 | 4 | Запрос = Новый Запрос("ВЫБРАТЬ ПЕРВЫЕ 500 5 | | Репозитории.Наименование КАК name, 6 | | Репозитории.URL КАК url, 7 | | Репозитории.Автор.URL КАК author, 8 | | Репозитории.Описание КАК description, 9 | | Репозитории.ДатаСоздания КАК createddate, 10 | | Репозитории.Лицензия КАК license, 11 | | СтатистикаРепозиториевСрезПоследних.Звезды КАК stars, 12 | | СтатистикаРепозиториевСрезПоследних.Форки КАК forks, 13 | | Репозитории.Автор.Аватар КАК pic, 14 | | Репозитории.Язык КАК lang, 15 | | Репозитории.Размер КАК size, 16 | | Репозитории.ПоследнееОбновление КАК updateddate, 17 | | СтатистикаРепозиториевСрезПоследних.ПрошлоеМесто КАК prevPlace 18 | |ИЗ 19 | | Справочник.Репозитории КАК Репозитории 20 | | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатистикаРепозиториев КАК СтатистикаРепозиториевСрезПоследних 21 | | ПО (СтатистикаРепозиториевСрезПоследних.Репозиторий = Репозитории.Ссылка) 22 | |ГДЕ 23 | | НЕ Репозитории.ПометкаУдаления 24 | | 25 | |УПОРЯДОЧИТЬ ПО 26 | | СтатистикаРепозиториевСрезПоследних.Звезды УБЫВ, 27 | | СтатистикаРепозиториевСрезПоследних.Форки УБЫВ, 28 | | Репозитории.ДатаСоздания"); 29 | 30 | Результат = Запрос.Выполнить().Выгрузить(); 31 | Данные = Инструментарий.ТаблицаЗначенийВМассив(Результат); 32 | Счетчик = 1; 33 | 34 | Для Каждого Позиция Из Данные Цикл 35 | 36 | Изменение = ?(Позиция.prevPlace = 0, Счетчик, Позиция.prevPlace - Счетчик); 37 | 38 | Динамика = ?(Изменение < 0, "down","up"); 39 | Динамика = ?(Изменение = 0, "same", Динамика); 40 | 41 | Позиция.Вставить("dynamic" , Динамика); 42 | Позиция.Вставить("сhanging", Изменение); 43 | Позиция.Вставить("place" , Счетчик); 44 | 45 | Счетчик = Счетчик + 1; 46 | 47 | КонецЦикла; 48 | 49 | Ответ = Новый HTTPСервисОтвет(200); 50 | 51 | ПотокОтвета = Ответ.ПолучитьТелоКакПоток(); 52 | ОтветJSON = Новый ЗаписьJSON; 53 | ОтветJSON.ОткрытьПоток(ПотокОтвета, "UTF-8"); 54 | 55 | НастройкиСериализации = Новый НастройкиСериализацииJSON; 56 | НастройкиСериализации.ВариантЗаписиДаты = ВариантЗаписиДатыJSON.УниверсальнаяДата; 57 | НастройкиСериализации.ФорматСериализацииДаты = ФорматДатыJSON.ISO; 58 | 59 | Попытка 60 | ЗаписатьJSON(ОтветJSON, Данные, НастройкиСериализации); 61 | Исключение 62 | ОО = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); 63 | КонецПопытки; 64 | 65 | ОтветJSON.Закрыть(); 66 | ПотокОтвета.Закрыть(); 67 | 68 | Возврат Ответ; 69 | 70 | КонецФункции 71 | 72 | Функция getDataCors(Запрос) 73 | Ответ = Новый HTTPСервисОтвет(200); 74 | 75 | Ответ.Заголовки.Вставить("Access-Control-Allow-Credentials", "true"); 76 | Ответ.Заголовки.Вставить("Access-Control-Allow-Methods", "*"); 77 | Ответ.Заголовки.Вставить("Access-Control-Allow-Headers", "cache-control,expires,pragma,Access-Control-Allow-Headers, Origin,Accept, X-Requested-With, Content-Type, Access-Control-Request-Method, Access-Control-Request-Headers"); 78 | 79 | Возврат Ответ; 80 | КонецФункции 81 | -------------------------------------------------------------------------------- /OpenYellow/src/HTTPServices/data/data.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | data 4 | 5 | ru 6 | Data 7 | 8 | data 9 | AutoUse 10 | 20 11 | 12 | getData 13 | 14 | ru 15 | Get data 16 | 17 | 18 | 19 | GET 20 | 21 | ru 22 | GET 23 | 24 | getDataGET 25 | 26 | 27 | Cors 28 | 29 | ru 30 | Cors 31 | 32 | OPTIONS 33 | getDataCors 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /OpenYellow/src/HTTPServices/tg/Module.bsl: -------------------------------------------------------------------------------- 1 | 2 | Функция WebhookGET(Запрос) 3 | Ответ = Новый HTTPСервисОтвет(200); 4 | Возврат Ответ; 5 | КонецФункции 6 | 7 | Функция WebhookPOST(Запрос) 8 | Ответ = Новый HTTPСервисОтвет(200); 9 | Возврат Ответ; 10 | КонецФункции 11 | -------------------------------------------------------------------------------- /OpenYellow/src/HTTPServices/tg/tg.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | tg 4 | 5 | ru 6 | Tg 7 | 8 | tg 9 | AutoUse 10 | 20 11 | 12 | Webhook 13 | 14 | ru 15 | Webhook 16 | 17 | 18 | 19 | GET 20 | 21 | ru 22 | GET 23 | 24 | WebhookGET 25 | 26 | 27 | POST 28 | 29 | ru 30 | POST 31 | 32 | POST 33 | WebhookPOST 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /OpenYellow/src/InformationRegisters/Исключения/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Normal 5 | dfcece9d-5077-440b-b6b3-45a5cb4538eb 6 | 7 | 8 | Normal 9 | 88619765-ccb3-46c6-ac52-38e9c992ebd4 10 | 11 | 12 | Normal 13 | b75fecce-942b-4aed-abc9-e6a02e460fb3 14 | 15 | Normal 16 | 911b6018-f537-43e8-a417-da56b22f9aec 17 | 18 | -------------------------------------------------------------------------------- /OpenYellow/src/InformationRegisters/Исключения/Исключения.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | Исключения 13 | 14 | ru 15 | Исключения 16 | 17 | true 18 | InDialog 19 | InformationRegister.Исключения.Form.ФормаСписка 20 | Second 21 | true 22 | Managed 23 | 24 | ОписаниеОшибки 25 | 26 | ru 27 | Описание ошибки 28 | 29 | 30 | String 31 | 32 | 33 | 34 | 35 | Use 36 | Use 37 | 38 | 39 | 40 | 41 | 42 | UID 43 | 44 | ru 45 | UID 46 | 47 | 48 | String 49 | 50 | 40 51 | 52 | 53 | 54 | 55 | Use 56 | Use 57 | 58 | 59 | 60 | true 61 | 62 | 63 | ФормаСписка 64 | 65 | ru 66 | Форма списка 67 | 68 | PersonalComputer 69 | MobileDevice 70 | 71 | 72 | -------------------------------------------------------------------------------- /OpenYellow/src/InformationRegisters/Пакеты/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Normal 5 | dfcece9d-5077-440b-b6b3-45a5cb4538eb 6 | 7 | 8 | Normal 9 | 88619765-ccb3-46c6-ac52-38e9c992ebd4 10 | 11 | 12 | Normal 13 | b75fecce-942b-4aed-abc9-e6a02e460fb3 14 | 15 | Normal 16 | 911b6018-f537-43e8-a417-da56b22f9aec 17 | 18 | -------------------------------------------------------------------------------- /OpenYellow/src/InformationRegisters/Пакеты/Forms/ФормаСписка/Module.bsl: -------------------------------------------------------------------------------- 1 | 2 | &НаСервереБезКонтекста 3 | Процедура ВыгрузитьИндексыНаСервере() 4 | МетодыСайта.ВыгрузитьИндексы(); 5 | КонецПроцедуры 6 | 7 | &НаКлиенте 8 | Процедура ВыгрузитьИндексы(Команда) 9 | ВыгрузитьИндексыНаСервере(); 10 | КонецПроцедуры 11 | -------------------------------------------------------------------------------- /OpenYellow/src/InformationRegisters/Пакеты/Пакеты.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | Пакеты 13 | 14 | ru 15 | Пакеты 16 | 17 | true 18 | InDialog 19 | InformationRegister.Пакеты.Form.ФормаСписка 20 | Managed 21 | 22 | URL 23 | 24 | ru 25 | URL 26 | 27 | 28 | String 29 | 30 | 400 31 | 32 | 33 | 34 | 35 | Use 36 | Use 37 | 38 | 39 | 40 | 41 | 42 | Размер 43 | 44 | ru 45 | Размер 46 | 47 | 48 | Number 49 | 50 | 20 51 | 52 | 53 | 54 | 55 | Use 56 | Use 57 | 58 | 59 | 60 | Скачиваний 61 | 62 | ru 63 | Скачиваний 64 | 65 | 66 | Number 67 | 68 | 20 69 | 70 | 71 | 72 | 73 | Use 74 | Use 75 | 76 | 77 | 78 | Вид 79 | 80 | ru 81 | Вид 82 | 83 | 84 | Number 85 | 86 | 1 87 | true 88 | 89 | 90 | 91 | 92 | Use 93 | Use 94 | 95 | 96 | 97 | Репозиторий 98 | 99 | ru 100 | Репозиторий 101 | 102 | 103 | CatalogRef.Репозитории 104 | 105 | 106 | 107 | Use 108 | Use 109 | 110 | true 111 | 112 | 113 | Версия 114 | 115 | ru 116 | Версия 117 | 118 | 119 | String 120 | 121 | 100 122 | 123 | 124 | 125 | 126 | Use 127 | Use 128 | 129 | 130 | 131 | true 132 | 133 | 134 | Файл 135 | 136 | ru 137 | Файл 138 | 139 | 140 | String 141 | 142 | 400 143 | 144 | 145 | 146 | 147 | Use 148 | Use 149 | 150 | 151 | 152 | true 153 | 154 | 155 | ФормаСписка 156 | 157 | ru 158 | Форма списка 159 | 160 | PersonalComputer 161 | MobileDevice 162 | 163 | 164 | -------------------------------------------------------------------------------- /OpenYellow/src/InformationRegisters/ПубликацииПодборок/ПубликацииПодборок.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | ПубликацииПодборок 13 | 14 | ru 15 | Публикации подборок 16 | 17 | true 18 | InDialog 19 | Day 20 | true 21 | Managed 22 | 23 | Подборка 24 | 25 | ru 26 | Подборка 27 | 28 | 29 | CatalogRef.Подборки 30 | 31 | 32 | 33 | Use 34 | Use 35 | 36 | true 37 | 38 | 39 | -------------------------------------------------------------------------------- /OpenYellow/src/InformationRegisters/Релизы/Релизы.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | Релизы 13 | 14 | ru 15 | Релизы 16 | 17 | true 18 | InDialog 19 | 20 | Use 21 | Active 22 | 23 | Use 24 | 25 | 26 | 27 | 28 | Use 29 | LineNumber 30 | 31 | Use 32 | 33 | 34 | 35 | 36 | Use 37 | Recorder 38 | 39 | Use 40 | 41 | 42 | 43 | 44 | Use 45 | Period 46 | 47 | ShowError 48 | Use 49 | 50 | 51 | 52 | Second 53 | true 54 | Managed 55 | 56 | Версия 57 | 58 | ru 59 | Версия 60 | 61 | 62 | String 63 | 64 | 100 65 | 66 | 67 | 68 | 69 | Use 70 | Use 71 | 72 | 73 | 74 | 75 | 76 | ДатаРелиза 77 | 78 | ru 79 | Дата релиза 80 | 81 | 82 | Date 83 | 84 | 85 | 86 | 87 | Use 88 | Use 89 | 90 | 91 | 92 | Репозиторий 93 | 94 | ru 95 | Репозиторий 96 | 97 | 98 | CatalogRef.Репозитории 99 | 100 | 101 | 102 | Use 103 | Use 104 | 105 | true 106 | 107 | 108 | -------------------------------------------------------------------------------- /OpenYellow/src/InformationRegisters/СтатистикаРепозиториев/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Normal 5 | dfcece9d-5077-440b-b6b3-45a5cb4538eb 6 | 7 | 8 | Normal 9 | 88619765-ccb3-46c6-ac52-38e9c992ebd4 10 | 11 | 12 | Normal 13 | b75fecce-942b-4aed-abc9-e6a02e460fb3 14 | 15 | Normal 16 | 911b6018-f537-43e8-a417-da56b22f9aec 17 | 18 | -------------------------------------------------------------------------------- /OpenYellow/src/InformationRegisters/СтатистикаРепозиториев/Forms/ФормаСписка/Module.bsl: -------------------------------------------------------------------------------- 1 | 2 | &НаСервереБезКонтекста 3 | Процедура ОпубликоватьИзмененияНаСервере() 4 | МетодыТелеграм.ОпубликоватьИзменения(); 5 | КонецПроцедуры 6 | 7 | &НаКлиенте 8 | Процедура ОпубликоватьИзменения(Команда) 9 | ОпубликоватьИзмененияНаСервере(); 10 | КонецПроцедуры 11 | -------------------------------------------------------------------------------- /OpenYellow/src/InformationRegisters/СтатистикаРепозиториев/СтатистикаРепозиториев.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | СтатистикаРепозиториев 13 | 14 | ru 15 | Статистика репозиториев 16 | 17 | true 18 | InDialog 19 | InformationRegister.СтатистикаРепозиториев.Form.ФормаСписка 20 | Managed 21 | 22 | Звезды 23 | 24 | ru 25 | Звезды 26 | 27 | 28 | Number 29 | 30 | 10 31 | 32 | 33 | 34 | 35 | Use 36 | Use 37 | 38 | 39 | 40 | Подписчики 41 | 42 | ru 43 | Подписчики 44 | 45 | 46 | Number 47 | 48 | 10 49 | 50 | 51 | 52 | 53 | Use 54 | Use 55 | 56 | 57 | 58 | Форки 59 | 60 | ru 61 | Форки 62 | 63 | 64 | Number 65 | 66 | 10 67 | 68 | 69 | 70 | 71 | Use 72 | Use 73 | 74 | 75 | 76 | ПрошлоеМесто 77 | 78 | ru 79 | Прошлое место 80 | 81 | 82 | Number 83 | 84 | 10 85 | 86 | 87 | 88 | 89 | Use 90 | Use 91 | 92 | 93 | 94 | Репозиторий 95 | 96 | ru 97 | Репозиторий 98 | 99 | 100 | CatalogRef.Репозитории 101 | 102 | 103 | 104 | Use 105 | Use 106 | 107 | true 108 | 109 | 110 | ФормаСписка 111 | 112 | ru 113 | Форма списка 114 | 115 | PersonalComputer 116 | MobileDevice 117 | 118 | 119 | -------------------------------------------------------------------------------- /OpenYellow/src/InformationRegisters/Тренды/Тренды.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | Тренды 13 | 14 | ru 15 | Тренды 16 | 17 | true 18 | InDialog 19 | Second 20 | true 21 | Managed 22 | 23 | Изменение 24 | 25 | ru 26 | Изменение 27 | 28 | 29 | Number 30 | 31 | 10 32 | 33 | 34 | 35 | 36 | Use 37 | Use 38 | 39 | 40 | 41 | Репозиторий 42 | 43 | ru 44 | Репозиторий 45 | 46 | 47 | CatalogRef.Репозитории 48 | 49 | 50 | 51 | Use 52 | Use 53 | 54 | true 55 | 56 | 57 | -------------------------------------------------------------------------------- /OpenYellow/src/Reports/НаполнениеПодборок/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ИсточникДанных1 5 | Local 6 | 7 | 8 | НаборДанных1 9 | 10 | Подборка 11 | Подборка 12 | 13 | 14 | Количество 15 | Количество 16 | 17 | <v8:item> 18 | <v8:lang>ru</v8:lang> 19 | <v8:content>Количество</v8:content> 20 | </v8:item> 21 | 22 | 23 | ИсточникДанных1 24 | ВЫБРАТЬ 25 | РепозиторииПодборки.Подборка КАК Подборка, 26 | СУММА(1) КАК Количество 27 | ИЗ 28 | Справочник.Репозитории.Подборки КАК РепозиторииПодборки 29 | 30 | СГРУППИРОВАТЬ ПО 31 | РепозиторииПодборки.Подборка 32 | 33 | 34 | Количество 35 | Сумма(Количество) 36 | 37 | 38 | Основной 39 | Основной 40 | 41 | 42 | 43 | Подборка 44 | 45 | 46 | Количество 47 | 48 | 49 | 50 | 51 | Количество 52 | Desc 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /OpenYellow/src/Reports/НаполнениеПодборок/НаполнениеПодборок.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | НаполнениеПодборок 8 | 9 | ru 10 | Наполнение подборок 11 | 12 | true 13 | Report.НаполнениеПодборок.Template.ОсновнаяСхемаКомпоновкиДанных 14 | 15 | ОсновнаяСхемаКомпоновкиДанных 16 | 17 | ru 18 | Основная схема компоновки данных 19 | 20 | DataCompositionSchema 21 | 22 | 23 | -------------------------------------------------------------------------------- /OpenYellow/src/Reports/ОтчетПоЗвездам/ОтчетПоЗвездам.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | ОтчетПоЗвездам 8 | 9 | ru 10 | Отчет по звездам 11 | 12 | true 13 | Report.ОтчетПоЗвездам.Template.ОсновнаяСхемаКомпоновкиДанных 14 | 15 | ОсновнаяСхемаКомпоновкиДанных 16 | 17 | ru 18 | Основная схема компоновки данных 19 | 20 | DataCompositionSchema 21 | 22 | 23 | -------------------------------------------------------------------------------- /OpenYellow/src/Reports/СписокРепозиториев/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ИсточникДанных1 5 | Local 6 | 7 | 8 | НаборДанных1 9 | 10 | Подписчики 11 | Подписчики 12 | 13 | 14 | Автор 15 | Автор 16 | 17 | 18 | Ссылка 19 | Ссылка 20 | 21 | 22 | Описание 23 | Описание 24 | 25 | 26 | Форки 27 | Форки 28 | 29 | 30 | Звезды 31 | Звезды 32 | 33 | 34 | ДатаСоздания 35 | ДатаСоздания 36 | 37 | 38 | Язык 39 | Язык 40 | 41 | 42 | Версия 43 | Версия 44 | 45 | 46 | ДатаРелиза 47 | ДатаРелиза 48 | 49 | 50 | Репозиторий 51 | Репозиторий 52 | 53 | ИсточникДанных1 54 | ВЫБРАТЬ 55 | Репозитории.Ссылка КАК Ссылка, 56 | Репозитории.Автор КАК Автор, 57 | Репозитории.Описание КАК Описание, 58 | Репозитории.ДатаСоздания КАК ДатаСоздания, 59 | Репозитории.Язык КАК Язык, 60 | СтатистикаРепозиториев.Звезды КАК Звезды, 61 | СтатистикаРепозиториев.Подписчики КАК Подписчики, 62 | СтатистикаРепозиториев.Форки КАК Форки, 63 | РелизыСрезПоследних.Версия КАК Версия, 64 | РелизыСрезПоследних.ДатаРелиза КАК ДатаРелиза 65 | ИЗ 66 | Справочник.Репозитории КАК Репозитории 67 | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатистикаРепозиториев КАК СтатистикаРепозиториев 68 | ПО СтатистикаРепозиториев.Репозиторий = Репозитории.Ссылка 69 | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Релизы.СрезПоследних КАК РелизыСрезПоследних 70 | ПО РелизыСрезПоследних.Репозиторий = Репозитории.Ссылка 71 | 72 | 73 | Период 74 | 75 | <v8:item> 76 | <v8:lang>ru</v8:lang> 77 | <v8:content>Период</v8:content> 78 | </v8:item> 79 | 80 | 81 | xs:dateTime 82 | 83 | DateTime 84 | 85 | 86 | 0001-01-01T00:00:00 87 | false 88 | 89 | 90 | Основной 91 | Основной 92 | 93 | 94 | 95 | Ссылка 96 | 97 | 98 | Автор 99 | 100 | 101 | Описание 102 | 103 | 104 | Звезды 105 | 106 | 107 | Подписчики 108 | 109 | 110 | Форки 111 | 112 | 113 | Язык 114 | 115 | 116 | ДатаСоздания 117 | 118 | 119 | Версия 120 | 121 | 122 | ДатаРелиза 123 | 124 | 125 | 126 | 127 | Звезды 128 | Desc 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | -------------------------------------------------------------------------------- /OpenYellow/src/Reports/СписокРепозиториев/СписокРепозиториев.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | СписокРепозиториев 8 | 9 | ru 10 | Список репозиториев 11 | 12 | true 13 | Report.СписокРепозиториев.Template.ОсновнаяСхемаКомпоновкиДанных 14 | 15 | ОсновнаяСхемаКомпоновкиДанных 16 | 17 | ru 18 | Основная схема компоновки данных 19 | 20 | DataCompositionSchema 21 | 22 | 23 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ВыгрузитьДанные/Schedule.schedule: -------------------------------------------------------------------------------- 1 | 2 | 3 | Mon 4 | Tue 5 | Wed 6 | Thu 7 | Fri 8 | Sat 9 | Sun 10 | Jan 11 | Feb 12 | Mar 13 | Apr 14 | May 15 | Jun 16 | Jul 17 | Aug 18 | Sep 19 | Oct 20 | Nov 21 | Dec 22 | 23 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ВыгрузитьДанные/ВыгрузитьДанные.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | ВыгрузитьДанные 4 | 5 | ru 6 | Выгрузить данные 7 | 8 | CommonModule.МетодыСайта.ОбновитьДанныеСайта 9 | 3 10 | 10 11 | 12 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОбновитьДанныеОРелизах/Schedule.schedule: -------------------------------------------------------------------------------- 1 | 2 | 3 | Mon 4 | Tue 5 | Wed 6 | Thu 7 | Fri 8 | Sat 9 | Sun 10 | Jan 11 | Feb 12 | Mar 13 | Apr 14 | May 15 | Jun 16 | Jul 17 | Aug 18 | Sep 19 | Oct 20 | Nov 21 | Dec 22 | 23 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОбновитьДанныеОРелизах/ОбновитьДанныеОРелизах.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | ОбновитьДанныеОРелизах 4 | 5 | ru 6 | Обновить данные о релизах 7 | 8 | CommonModule.МетодыGitHub.ОбновитьДанныеРелизов 9 | true 10 | true 11 | 3 12 | 10 13 | 14 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОбновитьДанныеОРепозиториях/ОбновитьДанныеОРепозиториях.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | ОбновитьДанныеОРепозиториях 4 | 5 | ru 6 | Обновить данные о репозиториях 7 | 8 | CommonModule.МетодыGitHub.ОбновитьДанныеОРепозиториях 9 | true 10 | true 11 | 3 12 | 10 13 | 14 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОбработатьСоыбтия/Schedule.schedule: -------------------------------------------------------------------------------- 1 | 2 | 3 | Mon 4 | Tue 5 | Wed 6 | Thu 7 | Fri 8 | Sat 9 | Sun 10 | Jan 11 | Feb 12 | Mar 13 | Apr 14 | May 15 | Jun 16 | Jul 17 | Aug 18 | Sep 19 | Oct 20 | Nov 21 | Dec 22 | 23 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОбработатьСоыбтия/ОбработатьСоыбтия.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | ОбработатьСоыбтия 4 | 5 | ru 6 | Обработать соыбтия 7 | 8 | CommonModule.ОбработкаСобытий.ОбработатьСобытия 9 | true 10 | true 11 | 3 12 | 10 13 | 14 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОпубликоватьБрошюру/Schedule.schedule: -------------------------------------------------------------------------------- 1 | 2 | 3 | Mon 4 | Tue 5 | Wed 6 | Thu 7 | Fri 8 | Sat 9 | Sun 10 | Jan 11 | Feb 12 | Mar 13 | Apr 14 | May 15 | Jun 16 | Jul 17 | Aug 18 | Sep 19 | Oct 20 | Nov 21 | Dec 22 | 23 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОпубликоватьБрошюру/ОпубликоватьБрошюру.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | ОпубликоватьБрошюру 4 | 5 | ru 6 | Опубликовать брошюру 7 | 8 | CommonModule.МетодыТелеграм.ОпубликоватьБрошюру 9 | true 10 | true 11 | 3 12 | 10 13 | 14 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОпубликоватьПодборку10/Schedule.schedule: -------------------------------------------------------------------------------- 1 | 2 | 3 | Mon 4 | Tue 5 | Wed 6 | Thu 7 | Fri 8 | Sat 9 | Sun 10 | Jan 11 | Feb 12 | Mar 13 | Apr 14 | May 15 | Jun 16 | Jul 17 | Aug 18 | Sep 19 | Oct 20 | Nov 21 | Dec 22 | 23 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОпубликоватьПодборку10/ОпубликоватьПодборку10.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | ОпубликоватьПодборку10 4 | 5 | ru 6 | Опубликовать подборку (10) 7 | 8 | CommonModule.МетодыТелеграм.ОпубликоватьПодборку 9 | true 10 | true 11 | 3 12 | 10 13 | 14 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОпубликоватьПодборку25/Schedule.schedule: -------------------------------------------------------------------------------- 1 | 2 | 3 | Mon 4 | Tue 5 | Wed 6 | Thu 7 | Fri 8 | Sat 9 | Sun 10 | Jan 11 | Feb 12 | Mar 13 | Apr 14 | May 15 | Jun 16 | Jul 17 | Aug 18 | Sep 19 | Oct 20 | Nov 21 | Dec 22 | 23 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОпубликоватьПодборку25/ОпубликоватьПодборку25.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | ОпубликоватьПодборку25 4 | 5 | ru 6 | Опубликовать подборку (25) 7 | 8 | CommonModule.МетодыТелеграм.ОпубликоватьПодборку 9 | true 10 | true 11 | 3 12 | 10 13 | 14 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОпубликоватьТрендыНедели/Schedule.schedule: -------------------------------------------------------------------------------- 1 | 2 | 3 | Fri 4 | Jan 5 | Feb 6 | Mar 7 | Apr 8 | May 9 | Jun 10 | Jul 11 | Aug 12 | Sep 13 | Oct 14 | Nov 15 | Dec 16 | 17 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ОпубликоватьТрендыНедели/ОпубликоватьТрендыНедели.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | ОпубликоватьТрендыНедели 4 | 5 | ru 6 | Опубликовать тренды недели 7 | 8 | CommonModule.МетодыТелеграм.ОпубликоватьЕженедельныйТоп 9 | true 10 | true 11 | 3 12 | 10 13 | 14 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ПубликацияОчередногоПоста/Schedule.schedule: -------------------------------------------------------------------------------- 1 | 2 | 3 | Mon 4 | Tue 5 | Wed 6 | Thu 7 | Fri 8 | Sat 9 | Sun 10 | Jan 11 | Feb 12 | Mar 13 | Apr 14 | May 15 | Jun 16 | Jul 17 | Aug 18 | Sep 19 | Oct 20 | Nov 21 | Dec 22 | 23 | -------------------------------------------------------------------------------- /OpenYellow/src/ScheduledJobs/ПубликацияОчередногоПоста/ПубликацияОчередногоПоста.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | ПубликацияОчередногоПоста 4 | 5 | ru 6 | Публикация очередного поста 7 | 8 | CommonModule.МетодыТелеграм.ОпубликоватьОчереднойПост 9 | true 10 | true 11 | 3 12 | 10 13 | 14 | -------------------------------------------------------------------------------- /OpenYellow/src/Styles/Главный/Style.style: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ActivityColor 5 | 6 | Web.Moccasin 7 | 8 | 9 | 10 | AccentColor 11 | 12 | Web.DarkOrange 13 | 14 | 15 | 16 | NavigationColor 17 | 18 | 27 19 | 27 20 | 27 21 | 22 | 23 | 24 | AuxiliaryNavigationColor 25 | 26 | 58 27 | 58 28 | 58 29 | 30 | 31 | 32 | ImportantColor 33 | 34 | Web.Orange 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /OpenYellow/src/Styles/Главный/Главный.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | Главный 4 | 5 | ru 6 | Главный 7 | 8 | 9 | -------------------------------------------------------------------------------- /OpenYellow/src/Subsystems/OpenYellow/OpenYellow.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | OpenYellow 4 | 5 | ru 6 | Open Yellow 7 | 8 | true 9 | true 10 | 11 | CommonPicture.Лого 12 | 13 | Report.ОтчетПоЗвездам 14 | DataProcessor.КонсольЗаданий_УФ 15 | Report.СписокРепозиториев 16 | Report.НаполнениеПодборок 17 | Справочники 18 | Регистры 19 | Настройки 20 | 21 | -------------------------------------------------------------------------------- /OpenYellow/src/Subsystems/OpenYellow/Subsystems/Настройки/Настройки.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | Настройки 4 | 5 | ru 6 | Настройки 7 | 8 | true 9 | true 10 | e8325a4b-dc4b-4de3-a570-cb4f808fc5da 11 | 1cb4e4b7-a406-4be9-8b99-c6d5c74070b3 12 | 71aa1db1-76d9-48c3-bc18-ad7dc8ccf15f 13 | 9e3f203d-73c8-4d2d-bd1a-47859e4784ba 14 | 6740b3a9-af75-4959-8184-4f6975b42fe6 15 | 39de9266-13fd-467a-b059-8f2b4865c8da 16 | Constant.Лого 17 | 290f8d8a-be55-4582-9da8-17caef485a9e 18 | Constant.ВерсияYPM 19 | 0d1b7b66-dfd9-46d1-b902-638ef5475006 20 | Catalog.НаборыНастроек 21 | Constant.НаборНастроек 22 | Subsystem.OpenYellow 23 | 24 | -------------------------------------------------------------------------------- /OpenYellow/src/Subsystems/OpenYellow/Subsystems/Регистры/Регистры.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | Регистры 4 | 5 | ru 6 | Регистры 7 | 8 | true 9 | true 10 | InformationRegister.СтатистикаРепозиториев 11 | InformationRegister.Исключения 12 | InformationRegister.Тренды 13 | InformationRegister.Релизы 14 | InformationRegister.Пакеты 15 | InformationRegister.ПубликацииПодборок 16 | Subsystem.OpenYellow 17 | 18 | -------------------------------------------------------------------------------- /OpenYellow/src/Subsystems/OpenYellow/Subsystems/Справочники/Справочники.mdo: -------------------------------------------------------------------------------- 1 | 2 | 3 | Справочники 4 | 5 | ru 6 | Справочники 7 | 8 | true 9 | true 10 | Catalog.Авторы 11 | Catalog.Запросы 12 | Catalog.Репозитории 13 | Catalog.Файлы 14 | Catalog.ВерсииYPM 15 | Catalog.Подборки 16 | Catalog.Посты 17 | Subsystem.OpenYellow 18 | 19 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | ![image](https://github.com/user-attachments/assets/f4112d39-466d-4c9c-bbb3-565e4f71eabd) 3 | 4 | 5 | # Агрегатор OpenYellow 6 | 7 | > Сайт: [openyellow.org](https://openyellow.org)
8 | > Телеграм: [@openyellowproject](https://t.me/openyellowproject) 9 | 10 |
11 | 12 | 13 | 14 | **Проект OpenYellow** - это агрегатор, который ежедневно собирает статистику по открытым проектам GitHub, которые либо реализованы на языке 1С/OneScript, либо созданы с применением других технологий, но предназначены для работы с платформой 1С:Предприятие. Собранные данные публикуются в виде таблиц и топов [на нашем портале](https://openyellow.org) 15 | 16 |
17 | 18 | ![image](https://github.com/user-attachments/assets/206dcff1-c5bb-4b80-9374-2285948b5d3c) 19 | 20 | 21 |
22 |
23 | 24 | 25 | 26 | Также у нас есть свои значки, которые отображают позицию репозитория в общем рейтинге. Если ваш репозиторий находится в ТОП-500 и вы хотите помочь проекту OpenYellow, то данный значок можно добавить в Readme своего репозитория. Markdown разметку вы сможете найти в последней колонке строки вашего проекта в рейтинге 27 | 28 | --- 29 | 30 | >![Infostart](https://github.com/Bayselonarrend/TelegramEnterprise/raw/main/infostart.svg) 31 | > 32 | >Статьи на Инфостарте:
33 | >- [OpenYellow - рейтинг открытых GitHub репозиториев для платформы 1С:Предприятие](https://infostart.ru/1c/articles/2029643/)
34 | >- [OpenYellow: о нововведениях в агрегаторе Open-source проектов](https://infostart.ru/public/2146863/)
35 | -------------------------------------------------------------------------------- /media/cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/media/cover.png -------------------------------------------------------------------------------- /media/cover_zoom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/media/cover_zoom.png -------------------------------------------------------------------------------- /media/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/media/logo.png -------------------------------------------------------------------------------- /media/logo_flat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/media/logo_flat.png -------------------------------------------------------------------------------- /web/authors.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OpenYellow - агрегатор open-source проектов для 1С:Предприятие 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 61 | 64 | 65 | 66 | 67 | 68 |
69 | 70 |
71 | 72 |
73 | 74 |

Лучшие мейнтейнеры и организации

75 | 100 авторов репозиториев с наибольшим числом звезд

76 |
77 | 78 |
79 |
80 |
81 | 82 | 93 | 94 | 95 | 96 | 97 | -------------------------------------------------------------------------------- /web/badges.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OpenYellow - агрегатор open-source проектов для 1С:Предприятие 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 27 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 60 | 63 | 64 | 65 | 66 | 67 |
68 | 69 |
70 | 71 |

Значки проекта OpenYellow

72 |

Если вы - автор проекта, который находится в ТОП-500, то можете помочь порталу OpenYellow, использовав наш 73 | значок (badge) в своем репозитории. 74 | Он будет всегда показывать актуальную позицию вашего проекта в рейтинге, а при нажатии - перенаправлять на 75 | страницу ТОП-500 с фокусировкой на необходимой строке таблицы

76 |
77 | 78 |
79 |

Добавить такой значок к себе очень просто - достаточно найти необходимый репозиторий в рейтинговой таблице и скопировать 81 | текст Markdown разметки в самой последней колонке. 82 | Этот текст, будучи вставленным в Readme файл, станет отображаться в нем как svg значок (как на картинке 83 | выше)

84 |
85 | 86 |
87 |
88 |
89 | 90 |
91 | 92 |
93 | 94 |
95 |
96 |

О значках, оставшихся со времен Notion

97 |

Если вы используете значки, которые были получены еще из таблицы на странице Notion 98 | (openyellow.notion.site), то их необходимо заменить на новые. Это нужно для устранения устаревших ссылок на 99 | более уже несуществующие ресурсы

100 |
101 |
102 |
103 | 104 | 115 | 116 | 117 | 118 | -------------------------------------------------------------------------------- /web/blocks/sidebar.html: -------------------------------------------------------------------------------- 1 | 33 | 34 |
35 | 36 | -------------------------------------------------------------------------------- /web/copy.xml: -------------------------------------------------------------------------------- 1 | 3 | 7 | -------------------------------------------------------------------------------- /web/css/404.css: -------------------------------------------------------------------------------- 1 | #home { 2 | clip-path: url(#cache); 3 | } 4 | 5 | #red { 6 | fill: none; 7 | opacity: 0.15; 8 | stroke: whitesmoke; 9 | stroke-width: 12; 10 | stroke-miterlimit: 10; 11 | animation: show 4s; 12 | animation-fill-mode: forwards; 13 | animation-iteration-count: infinite; 14 | animation-timing-function: ease-in-out; 15 | } 16 | 17 | #blue { 18 | fill: none; 19 | opacity: 0.15; 20 | stroke: black; 21 | stroke-width: 12; 22 | stroke-miterlimit: 10; 23 | animation: show 4s; 24 | animation-fill-mode: forwards; 25 | animation-iteration-count: infinite; 26 | animation-timing-function: ease-in-out; 27 | } 28 | 29 | #light-blue { 30 | fill: none; 31 | opacity: 0.15; 32 | stroke: black; 33 | stroke-width: 6; 34 | stroke-miterlimit: 10; 35 | stroke-dasharray: 200; 36 | stroke-dashoffset: 800; 37 | animation: draw 4s; 38 | animation-fill-mode: forwards; 39 | animation-iteration-count: infinite; 40 | animation-timing-function: ease-in-out; 41 | } 42 | 43 | @keyframes draw { 44 | to { 45 | stroke-dashoffset: 0; 46 | } 47 | } 48 | 49 | @keyframes show { 50 | 0% { 51 | opacity: 0.15; 52 | } 53 | 54 | 50% { 55 | opacity: 0.2; 56 | } 57 | 58 | 100% { 59 | opacity: 0.15; 60 | } 61 | } 62 | 63 | .svg-back { 64 | 65 | position: fixed; 66 | top: 0; 67 | left: 0; 68 | z-index: 1; 69 | width: 100%; 70 | height: 100vh; 71 | } 72 | 73 | 74 | h1 { 75 | font-size: 96px; 76 | } 77 | 78 | .s404 { 79 | margin: auto; 80 | text-align: center; 81 | margin-top: 40vh; 82 | } -------------------------------------------------------------------------------- /web/css/font-awesome.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.7.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale} 5 | 6 | .fa-vk:before{content:"\f189"} 7 | .fa-telegram:before{content:"\f2c6"} -------------------------------------------------------------------------------- /web/css/open-iconic-bootstrap.min.css: -------------------------------------------------------------------------------- 1 | @font-face{font-family:Icons;src:url(https://athenaeum.digital/fonts/open-iconic.eot);src:url(https://athenaeum.digital/fonts/open-iconic.eot?#iconic-sm) format('embedded-opentype'),url(https://athenaeum.digital/fonts/open-iconic.woff) format('woff'),url(https://athenaeum.digital/fonts/open-iconic.ttf) format('truetype'),url(https://athenaeum.digital/fonts/open-iconic.otf) format('opentype'),url(https://athenaeum.digital/fonts/open-iconic.svg#iconic-sm) format('svg');font-weight:400;font-style:normal;font-display: swap;}.oi{position:relative;top:1px;display:inline-block;speak:none;font-family:Icons;font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.oi:empty:before{width:1em;text-align:center;box-sizing:content-box}.oi.oi-align-center:before{text-align:center}.oi.oi-align-left:before{text-align:left}.oi.oi-align-right:before{text-align:right}.oi-align-center:before{content:'\e004'}.oi-align-left:before{content:'\e005'}.oi-align-right:before{content:'\e006'}.oi-bar-chart:before{content:'\e018'}.oi-book:before{content:'\e021'}.oi-box:before{content:'\e023'}.oi-check:before{content:'\e033'}.oi-code:before{content:'\e040'}.oi-document:before{content:'\e052'}.oi-graph:before{content:'\e070'}.oi-home:before{content:'\e078'}.oi-image:before{content:'\e079'}.oi-info:before{content:'\e07c'}.oi-justify-center:before{content:'\e07e'}.oi-justify-left:before{content:'\e07f'}.oi-justify-right:before{content:'\e080'}.oi-list:before{content:'\e088'}.oi-loop-circular:before{content:'\e08c'}.oi-loop:before{content:'\e08e'}.oi-magnifying-glass:before{content:'\e08f'}.oi-person:before{content:'\e0a5'}.oi-plus:before{content:'\e0aa'}.oi-project:before{content:'\e0ad'}.oi-script:before{content:'\e0b9'}.oi-tag:before{content:'\e0c5'}.oi-text:before{content:'\e0ca'}.oi-timer:before{content:'\e0cd'}.oi-x:before{content:'\e0db'}.oi-link-broken:before{content:'\e085'}.oi-link-intact:before{content:'\e086'} -------------------------------------------------------------------------------- /web/css/popup.css: -------------------------------------------------------------------------------- 1 | @keyframes hei { 2 | 0% { 3 | height: 0; 4 | } 5 | 6 | 100% { 7 | height: 450px; 8 | } 9 | } 10 | 11 | .modalw { 12 | position: fixed; 13 | top: 0; 14 | right: 0; 15 | left: 0; 16 | bottom: 0; 17 | max-width: 256px; 18 | min-width: 100%; 19 | background: rgba(0, 0, 0, 0.5); 20 | z-index: 1050; 21 | -webkit-transition: height 400ms ease-in; 22 | -moz-transition: height 400ms ease-in; 23 | transition: opacity 400ms ease-in; 24 | pointer-events: none; 25 | opacity: 0; 26 | } 27 | 28 | .containerpop { 29 | background-color: White; 30 | text-align: center; 31 | padding: auto; 32 | height: 450px; 33 | overflow-x: hidden; 34 | z-index: 18; 35 | box-shadow: rgba(0, 0, 0, 0.18) 0px 2px 4px; 36 | opacity: 1; 37 | border-radius: 10px; 38 | position: fixed; 39 | bottom: -10px; 40 | right: 50%; 41 | left: 50%; 42 | transform: translate(-50%); 43 | width: 500px; 44 | max-width: 99%; 45 | max-height: 80%; 46 | 47 | 48 | } 49 | 50 | .starthei { 51 | animation: hei 0.5s forwards; 52 | } 53 | 54 | .modalw:target { 55 | 56 | display: block; 57 | pointer-events: auto; 58 | overflow-y: auto; 59 | opacity: 1; 60 | } 61 | 62 | /* свойства для кнопки "Закрыть" */ 63 | .close { 64 | float: right; 65 | font-family: sans-serif; 66 | font-size: 24px; 67 | font-weight: 700; 68 | line-height: 1; 69 | color: #000; 70 | text-shadow: 0 1px 0 #fff; 71 | opacity: .5; 72 | text-decoration: none; 73 | margin-right: 3px; 74 | margin-top: 2px; 75 | } 76 | 77 | /* свойства для кнопки "Закрыть" при нахождении её в фокусе или наведении */ 78 | .close:focus, 79 | .close:hover { 80 | color: #000; 81 | text-decoration: none; 82 | cursor: pointer; 83 | opacity: .75; 84 | } 85 | 86 | .ok { 87 | font-size: 40px; 88 | } -------------------------------------------------------------------------------- /web/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/favicon.ico -------------------------------------------------------------------------------- /web/fonts/bookantiqua.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/fonts/bookantiqua.ttf -------------------------------------------------------------------------------- /web/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /web/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /web/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /web/fonts/open-iconic.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/fonts/open-iconic.eot -------------------------------------------------------------------------------- /web/fonts/open-iconic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/fonts/open-iconic.ttf -------------------------------------------------------------------------------- /web/fonts/open-iconic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/fonts/open-iconic.woff -------------------------------------------------------------------------------- /web/grid.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OpenYellow - агрегатор open-source проектов для 1С:Предприятие 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 61 | 64 | 65 | 66 | 67 | 68 |
69 | 70 |
71 | 72 |
73 |
74 |

Топ-500 репозиториев

75 | По числу звезд

76 |
77 |
78 | 80 |
81 |
82 | 83 | 84 |
85 |
86 |
87 |
88 | 90 |
91 |
92 |

93 | by 94 |

95 | 96 | 97 |
98 |
99 |
100 | 101 |
102 |
103 |
104 |
105 | 106 |
107 | 108 | 119 | 120 | 121 | 122 | 123 | -------------------------------------------------------------------------------- /web/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OpenYellow - агрегатор open-source проектов для 1С:Предприятие 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 27 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 60 | 63 | 64 | 65 | 66 | 67 |
68 | 69 |
70 |
71 |
72 | 73 | 74 |

Добро пожаловать на OpenYellow

75 | Агрегатор open-source проектов для 1С:Предприятие. Здесь собрано множество инструментов с открытым 76 | исходным кодом, которые были созданы "желтым" сообществом. Информация о них собирается на основе данных 77 | публичных репозиториев GitHub 78 |
79 |
80 |
81 | 82 |
83 | 84 |
85 | 86 |
87 |
88 | 89 |

Лучшие репозитории

90 | Топ-500 лучших репозиториев GitHub за все время - самые известные и популярные открытые инструменты для 91 | 1С и OneScript

92 | Перейти 93 |
94 |
95 | 96 |

Последние созданные

97 | Самые свежие репозитории, найденные агрегатором. Они ждут своих первых 98 | пользователей!

99 | Перейти 100 |
101 |
102 | 103 |

Последние обновленные

104 | Последние репозитории, проявляющие активность на GitHub - "живые" проекты, поддерживаемые 105 | контрибьюторами

106 | Перейти 107 |
108 |
109 | 110 |
111 | 112 |
113 | Вклад 1С сообщества на GitHub: 114 |
115 |
116 |

1000

117 |

Всего репозиториев

118 |
119 |
120 |

5000

121 |

Заработано звезд

122 |
123 |
124 |

500

125 |

Авторов проектов

126 |
127 |
128 |
129 | 130 |
131 | 132 | 133 |

Следите за обновлениями в Телеграм!

134 | Не пропустите ни единого нового проекта и релиза open-source сообщества 1С! Информация об обновлениях 135 | репозиториев, ежедневные и еженедельные топы и новости проекта в нашем Телеграм-канале 136 |

137 | В Телеграм! 139 |
140 | 141 |
142 | 143 |
144 | OpenYellow Project by Bayselonarrend, 2024 145 |
146 | 147 |
148 |
149 | 160 | 161 | 162 | 163 | -------------------------------------------------------------------------------- /web/js/app.js: -------------------------------------------------------------------------------- 1 | import { getDataByUrl } from './xhttp.js?v4'; 2 | import { setPreloaderEvent } from './effects.js?v4'; 3 | 4 | const content = document.getElementById('content'); 5 | const sidebar = document.getElementById('sidebar'); 6 | 7 | window.addEventListener('pageshow', function (event) { 8 | 9 | if (event.currentTarget.origin !== "https://oyw.neocities.org") // Compliant 10 | return; 11 | 12 | if (event.persisted) { 13 | setOpacity(); 14 | } 15 | 16 | }); 17 | 18 | standartOnLoad(); 19 | 20 | function standartOnLoad() { 21 | 22 | if ('serviceWorker' in navigator && navigator.serviceWorker.controller != null && navigator.serviceWorker.controller.state != 'activated') { 23 | navigator.serviceWorker.register('/sw.js').then( 24 | function (registration) { 25 | console.log('ServiceWorker registration successful with scope: ', registration.scope); 26 | 27 | }, 28 | function (err) { 29 | console.log('ServiceWorker registration failed: ', err); 30 | }); 31 | 32 | } 33 | 34 | function setOpacity() { 35 | content.style.opacity = "1"; 36 | } 37 | 38 | 39 | getDataByUrl('/blocks/sidebar.html', false).then(function (response) { 40 | 41 | if (sidebar != undefined) { 42 | sidebar.innerHTML = response; 43 | sidebar.style.display = 'flex'; 44 | localStorage.setItem('navigation', sidebar.innerHTML); 45 | setMenuEvent(); 46 | } 47 | 48 | setPreloaderEvent(); 49 | setOpacity(); 50 | 51 | }); 52 | } 53 | 54 | 55 | function setMenuEvent(){ 56 | 57 | let menu = document.getElementById('menu'); 58 | let menubutton = document.getElementById('menubutton'); 59 | let menulogo = document.getElementById('menulogo'); 60 | 61 | if (menu != undefined && menubutton != undefined){ 62 | 63 | menu.style.display = "none"; 64 | menubutton.onclick = function (event) { 65 | 66 | if(menu.style.display == "none") 67 | { 68 | 69 | menulogo.classList.remove("fa-cubes-stacked"); 70 | menulogo.classList.add("fa-xmark"); 71 | 72 | menu.style.display = "flex"; 73 | setTimeout(function () {menu.style.opacity = "1"}, 10); 74 | 75 | 76 | } 77 | else 78 | { 79 | 80 | menulogo.classList.remove("fa-xmark"); 81 | menulogo.classList.add("fa-cubes-stacked"); 82 | 83 | menu.style.opacity = "0"; 84 | setTimeout(function () {menu.style.display = "none"}, 300); 85 | 86 | } 87 | 88 | 89 | }; 90 | 91 | } 92 | 93 | } 94 | -------------------------------------------------------------------------------- /web/js/authors.js: -------------------------------------------------------------------------------- 1 | import { getDataByUrl } from './xhttp.js?v4'; 2 | 3 | let list = document.getElementById('authors'); 4 | let counter = 1; 5 | let current; 6 | let grid; 7 | let place; 8 | let info; 9 | let title; 10 | let stars; 11 | let position; 12 | let pic; 13 | let repos; 14 | 15 | getDataByUrl("./data/authors.json", true).then(function (response) { 16 | 17 | if (list != undefined) { 18 | 19 | response.forEach(function (item) { 20 | 21 | current = document.createElement('a'); 22 | current.setAttribute('class', 'author'); 23 | current.setAttribute('href', item.url); 24 | 25 | grid = document.createElement('div'); 26 | grid.setAttribute('class', 'row'); 27 | 28 | place = document.createElement('div'); 29 | place.setAttribute('class', 'col-4'); 30 | place.setAttribute('style', 'border-right: 1px solid #333333; text-align: center; '); 31 | 32 | position = document.createElement('h2'); 33 | position.textContent = '#' + counter; 34 | position.setAttribute('style', 'margin-top: 7px'); 35 | 36 | pic = document.createElement('img'); 37 | pic.setAttribute('src', item.pic); 38 | pic.setAttribute('style', 'width: 32px; border-radius: 45px; '); 39 | 40 | info = document.createElement('div'); 41 | info.setAttribute('class', 'col'); 42 | info.setAttribute('style', 'margin-top: 7px'); 43 | 44 | title = document.createElement('p'); 45 | title.textContent = item.name; 46 | 47 | stars = document.createElement('small'); 48 | stars.textContent = '⭐' + item.stars; 49 | 50 | repos = document.createElement('small'); 51 | repos.textContent = '📒' + item.repos; 52 | repos.setAttribute('style', 'margin-left: 7px'); 53 | 54 | place.appendChild(position); 55 | place.appendChild(pic); 56 | info.appendChild(title); 57 | info.appendChild(stars); 58 | info.appendChild(repos); 59 | grid.appendChild(place); 60 | grid.appendChild(info); 61 | current.appendChild(grid); 62 | list.appendChild(current); 63 | 64 | counter++; 65 | 66 | }); 67 | 68 | } 69 | 70 | }); -------------------------------------------------------------------------------- /web/js/effects.js: -------------------------------------------------------------------------------- 1 | function setPreloaderEvent() { 2 | 3 | let links = document.getElementsByTagName("a"); 4 | 5 | 6 | for (var i = 0; i < links.length; i++) { 7 | 8 | if (links[i].href == document.URL) { 9 | links[i].classList.add('active'); 10 | } 11 | 12 | if (!links[i].onclick) { 13 | links[i].onclick = function (event) { 14 | try { 15 | event.preventDefault(); 16 | if (this != undefined 17 | && this.href != undefined 18 | && this.baseURI != this.href 19 | && this.href.search('#') == -1 20 | && this.target != "_blank") { 21 | 22 | 23 | let href = this.href; 24 | 25 | 26 | for (var i = 0; i < links.length; i++) { 27 | 28 | if (links[i] != this) { 29 | links[i].classList.remove('active'); 30 | } 31 | 32 | } 33 | 34 | event.stopPropagation(); 35 | showPreloader(); 36 | 37 | setTimeout(function () { 38 | 39 | window.location.href = href; 40 | 41 | }, 600); 42 | 43 | } 44 | else { 45 | window.location.href = this.href; 46 | } 47 | } 48 | 49 | catch { 50 | window.location.href = this.href; 51 | } 52 | 53 | }; 54 | } 55 | } 56 | 57 | } 58 | 59 | 60 | function showPreloader() { 61 | const content = document.getElementById('content'); 62 | 63 | content.style.opacity = "0"; 64 | 65 | const menu = document.getElementById('menu'); 66 | let menulogo = document.getElementById('menulogo'); 67 | 68 | if(menu != undefined){ 69 | 70 | menulogo.classList.remove("fa-xmark"); 71 | menulogo.classList.add("fa-cubes-stacked"); 72 | menu.style.opacity = "0"; 73 | } 74 | 75 | } 76 | 77 | function showMessage(text, style) { 78 | 79 | let content = document.getElementById('content'); 80 | let b = document.createElement('div'); 81 | b.innerHTML = text; 82 | b.classList.add('alert'); 83 | b.classList.add('alert-' + style); 84 | b.classList.add('message'); 85 | 86 | document.body.append(b); 87 | 88 | setTimeout(() => { 89 | b.style.display = 'none'; 90 | }, "6100"); 91 | 92 | 93 | } 94 | 95 | export { setPreloaderEvent } 96 | export { showMessage } -------------------------------------------------------------------------------- /web/js/index.js: -------------------------------------------------------------------------------- 1 | import { getDataByUrl } from './xhttp.js?v4'; 2 | 3 | let totalcounter = document.getElementById('totalcounter'); 4 | let starscounter = document.getElementById('starscounter'); 5 | let authorscounter = document.getElementById('authorscounter'); 6 | 7 | getDataByUrl("./data/counters.json", true).then(function (response) { 8 | 9 | if (totalcounter != undefined) { 10 | totalcounter.textContent = response["totalcounter"]; 11 | } 12 | 13 | if (starscounter != undefined) { 14 | starscounter.textContent = response["starscounter"]; 15 | } 16 | 17 | if (authorscounter != undefined) { 18 | authorscounter.textContent = response["authorscounter"]; 19 | } 20 | 21 | }); -------------------------------------------------------------------------------- /web/js/socials.js: -------------------------------------------------------------------------------- 1 | import { getDataByUrl } from './xhttp.js?v4'; 2 | import { getCookie } from './xhttp.js?v4'; 3 | import { uuidv4 } from './xhttp.js?v4'; 4 | import { ping } from './xhttp.js?v4'; 5 | 6 | var params = (new URL(document.location)).searchParams; 7 | var from = params.get("from"); 8 | 9 | function generateLinks(vk = true, tg = true, existing = ""){ 10 | returnSession(existing).then(function(success) 11 | { 12 | let session = success; 13 | 14 | if(from){ session += '_' + from;} 15 | 16 | if (tg){ telegramLogin(session);} 17 | if (vk){ vkLogin(session);} 18 | }); 19 | 20 | } 21 | 22 | function telegramLogin(session){ 23 | 24 | let element = document.getElementById('telegram-login'); 25 | 26 | if (!element) 27 | { 28 | setTimeout(telegramLogin, 100); 29 | return; 30 | } 31 | 32 | element.href = ('https://t.me/aioniotisbot?start=' + session); 33 | 34 | } 35 | 36 | 37 | function vkLogin(session){ 38 | 39 | let element = document.getElementById('vk-login'); 40 | 41 | if (!element) 42 | { 43 | setTimeout(telegramLogin, 100); 44 | return; 45 | } 46 | 47 | element.href = ('https://oauth.vk.com/authorize?client_id=51654824&display=page&redirect_uri=https://api.athenaeum.digital/node/bot/vk_login?uuid=' + session + '&response_type=code&v=5.131'); 48 | 49 | } 50 | 51 | 52 | function returnSession(existing = ""){ 53 | 54 | return new Promise(function(resolve, reject) { 55 | 56 | if (existing != ""){ 57 | resolve(existing); 58 | return; 59 | } 60 | 61 | let d = new Date(); 62 | let uuid = uuidv4(); 63 | let session; 64 | let expires; 65 | 66 | ping('https://api.athenaeum.digital/node/bot/site_session?cookie=' + uuid).then(function(success) 67 | { 68 | 69 | if(success) 70 | { 71 | 72 | d.setTime(d.getTime() + (30 * 24 * 60 * 60 * 1000)); // 30 дней 73 | 74 | expires = "expires=" + d.toUTCString(); 75 | document.cookie = "uuid=" + uuid + ";" + expires + ";max-age:31536000;path=/"; 76 | session = getCookie("uuid"); 77 | 78 | } 79 | 80 | else 81 | { 82 | session = returnSession(); 83 | } 84 | 85 | resolve(session); 86 | 87 | }); 88 | }); 89 | } 90 | 91 | export{generateLinks} -------------------------------------------------------------------------------- /web/js/xhttp.js: -------------------------------------------------------------------------------- 1 | function getDataByUrl(url, isJson) { 2 | 3 | return new Promise(function (resolve, reject) { 4 | 5 | var xhr = new XMLHttpRequest(); 6 | xhr.open('GET', url, true); 7 | xhr.setRequestHeader('Cache-Control', 'no-cache, no-store, max-age=0'); 8 | xhr.setRequestHeader('Expires', 'Thu, 1 Jan 1970 00:00:00 GMT'); 9 | xhr.setRequestHeader('Pragma', 'no-cache'); 10 | 11 | xhr.onload = function () { 12 | try { 13 | if (xhr.status === 200) { 14 | var response = (isJson) ? JSON.parse(xhr.responseText) : xhr.responseText; 15 | resolve(response); 16 | } 17 | 18 | else { 19 | resolve(xhr.status); 20 | } 21 | 22 | } 23 | 24 | catch { 25 | var response = (isJson) ? xhr.responseText : JSON.parse(xhr.responseText); 26 | resolve(response); 27 | }; 28 | }; 29 | 30 | xhr.onerror = function () { 31 | resolve(xhr.status); 32 | }; 33 | 34 | xhr.send(); 35 | 36 | }); 37 | } 38 | 39 | 40 | function ping(url) { 41 | 42 | return new Promise(function (resolve, reject) { 43 | 44 | var xhr = new XMLHttpRequest(); 45 | xhr.open('GET', url, true); 46 | xhr.setRequestHeader('Athenaeum-Source', document.location.pathname); 47 | 48 | xhr.onload = function () { 49 | 50 | if (xhr.status === 200) { 51 | resolve(true); 52 | } 53 | else { 54 | resolve(false); 55 | } 56 | }; 57 | 58 | xhr.onerror = function () { 59 | resolve(false); 60 | }; 61 | 62 | xhr.send(); 63 | }); 64 | } 65 | 66 | export { getDataByUrl }; 67 | export { ping }; 68 | -------------------------------------------------------------------------------- /web/js/ya_metrica.js: -------------------------------------------------------------------------------- 1 | (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; 2 | m[i].l=1*new Date(); 3 | for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }} 4 | k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)}) 5 | (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym"); 6 | 7 | ym(94124757, "init", { 8 | clickmap:true, 9 | trackLinks:true, 10 | accurateTrackBounce:true, 11 | webvisor:true 12 | }); -------------------------------------------------------------------------------- /web/neocities.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/neocities.png -------------------------------------------------------------------------------- /web/not_found.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Not Found 7 | 8 | 9 | 10 |

Page Not Found

11 |

The requested page was not found.

12 | 13 | 14 | -------------------------------------------------------------------------------- /web/pwa/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/favicon.ico -------------------------------------------------------------------------------- /web/pwa/icons/120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/120x120.png -------------------------------------------------------------------------------- /web/pwa/icons/128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/128x128.png -------------------------------------------------------------------------------- /web/pwa/icons/144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/144x144.png -------------------------------------------------------------------------------- /web/pwa/icons/152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/152x152.png -------------------------------------------------------------------------------- /web/pwa/icons/16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/16x16.png -------------------------------------------------------------------------------- /web/pwa/icons/180x180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/180x180.png -------------------------------------------------------------------------------- /web/pwa/icons/192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/192x192.png -------------------------------------------------------------------------------- /web/pwa/icons/32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/32x32.png -------------------------------------------------------------------------------- /web/pwa/icons/384x384.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/384x384.png -------------------------------------------------------------------------------- /web/pwa/icons/512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/512x512.png -------------------------------------------------------------------------------- /web/pwa/icons/72x72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/72x72.png -------------------------------------------------------------------------------- /web/pwa/icons/96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/pwa/icons/96x96.png -------------------------------------------------------------------------------- /web/pwa/manifest.json: -------------------------------------------------------------------------------- 1 | {"name":"OpenYellow","short_name":"OpenYellow","description":"Агрегатор open-source проектов для 1С:Предприятие","theme_color":"#212121","background_color":"#212121","display":"standalone","orientation":"portrait","scope":"/","start_url":"/","icons":[{"src":"icons/16x16.png","sizes":"16x16","type":"image/png"},{"src":"icons/32x32.png","sizes":"32x32","type":"image/png"},{"src":"icons/72x72.png","sizes":"72x72","type":"image/png"},{"src":"icons/96x96.png","sizes":"96x96","type":"image/png"},{"src":"icons/120x120.png","sizes":"120x120","type":"image/png"},{"src":"icons/128x128.png","sizes":"128x128","type":"image/png"},{"src":"icons/144x144.png","sizes":"144x144","type":"image/png"},{"src":"icons/152x152.png","sizes":"152x152","type":"image/png"},{"src":"icons/180x180.png","sizes":"180x180","type":"image/png"},{"src":"icons/192x192.png","sizes":"192x192","type":"image/png"},{"src":"icons/384x384.png","sizes":"384x384","type":"image/png"},{"src":"icons/512x512.png","sizes":"512x512","type":"image/png"},{"src":"icons/512x512.png","sizes":"512x512","type":"image/png","purpose":"maskable"}]} -------------------------------------------------------------------------------- /web/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: /offline 3 | Disallow: /404 -------------------------------------------------------------------------------- /web/static/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/1.png -------------------------------------------------------------------------------- /web/static/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/2.png -------------------------------------------------------------------------------- /web/static/badges.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/badges.png -------------------------------------------------------------------------------- /web/static/cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/cover.png -------------------------------------------------------------------------------- /web/static/down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/down.png -------------------------------------------------------------------------------- /web/static/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/logo.png -------------------------------------------------------------------------------- /web/static/logo_side.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/logo_side.png -------------------------------------------------------------------------------- /web/static/openbsl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/openbsl.png -------------------------------------------------------------------------------- /web/static/readmebadge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/readmebadge.png -------------------------------------------------------------------------------- /web/static/same.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/same.png -------------------------------------------------------------------------------- /web/static/tg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/tg.png -------------------------------------------------------------------------------- /web/static/topbadges.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/topbadges.png -------------------------------------------------------------------------------- /web/static/up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/up.png -------------------------------------------------------------------------------- /web/static/ypm_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenBSL/OpenYellow/4b86a728f9676faec65f00952e861825de380f0c/web/static/ypm_small.png -------------------------------------------------------------------------------- /web/sw.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const version = '20210519'; 4 | const staticCacheName = version + 'static'; 5 | const pagesCacheName = 'pages'; 6 | const imagesCacheName = 'images'; 7 | const maxPages = 50; // Maximum number of pages to cache 8 | const maxImages = 100; // Maximum number of images to cache 9 | const timeout = 5000; // Number of milliseconds before timing out 10 | 11 | const cacheList = [ 12 | staticCacheName, 13 | pagesCacheName, 14 | imagesCacheName 15 | ]; 16 | 17 | function updateStaticCache() { 18 | return caches.open(staticCacheName) 19 | .then(staticCache => { 20 | return staticCache.addAll([ 21 | '/blocks/sidebar.html', 22 | '/offline', 23 | '/css/style.css' 24 | ]); 25 | }); 26 | } 27 | 28 | // Cache the page(s) that initiate the service worker 29 | function cacheClients() { 30 | 31 | } 32 | 33 | // Remove caches whose name is no longer valid 34 | function clearOldCaches() { 35 | return caches.keys() 36 | .then(keys => { 37 | return Promise.all(keys 38 | .filter(key => !cacheList.includes(key)) 39 | .map(key => caches.delete(key)) 40 | ); 41 | }); 42 | } 43 | 44 | function trimCache(cacheName, maxItems) { 45 | caches.open(cacheName) 46 | .then(cache => { 47 | cache.keys() 48 | .then(keys => { 49 | if (keys.length > maxItems) { 50 | cache.delete(keys[0]) 51 | .then(() => { 52 | trimCache(cacheName, maxItems) 53 | }); 54 | } 55 | }); 56 | }); 57 | } 58 | 59 | addEventListener('install', event => { 60 | event.waitUntil( 61 | updateStaticCache() 62 | .then(() => { 63 | cacheClients(); 64 | }) 65 | .then(() => { 66 | return skipWaiting(); 67 | }) 68 | ); 69 | }); 70 | 71 | 72 | 73 | if (registration.navigationPreload) { 74 | addEventListener('activate', event => { 75 | event.waitUntil( 76 | registration.navigationPreload.enable() 77 | //clients.claim() 78 | ); 79 | }); 80 | } 81 | 82 | self.addEventListener('message', event => { 83 | 84 | if (event.origin !== "https://openyellow.org") // Compliant 85 | return; 86 | 87 | if (event.data.command == 'trimCaches') { 88 | trimCache(pagesCacheName, maxPages); 89 | trimCache(imagesCacheName, maxImages); 90 | } 91 | }); 92 | 93 | 94 | addEventListener('fetch', event => { 95 | CheckData(event); 96 | 97 | }); 98 | 99 | 100 | function CheckData(event) { 101 | const request = event.request; 102 | // Ignore non-GET requests 103 | if (request && request.method !== 'GET') { 104 | return; 105 | } 106 | 107 | const retrieveFromCache = false; 108 | 109 | // For HTML requests, try the network first, fall back to the cache, finally the offline page 110 | if (request.headers.get('Accept').includes('text/html')) { 111 | event.respondWith( 112 | new Promise(resolveWithResponse => { 113 | Promise.resolve(event.preloadResponse) 114 | .then(responseFromPreloadOrFetch => { 115 | resolveWithResponse(responseFromPreloadOrFetch); 116 | }) 117 | .catch(responseFromCache => { 118 | resolveWithResponse( 119 | caches.match('/offline') 120 | ); 121 | }); 122 | 123 | 124 | }) 125 | ) 126 | return; 127 | } 128 | } -------------------------------------------------------------------------------- /web/wip.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OpenYellow - агрегатор open-source проектов для 1С:Предприятие 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 59 | 62 | 63 | 64 | 65 | 66 |
67 | 68 |
69 | 70 |

Раздел в процессе разработки

71 |

Он появится здесь в ближайшее время

72 |
73 | 74 | 85 | 86 | 87 | 88 | 89 | 90 | -------------------------------------------------------------------------------- /web/yellowpm.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | OpenYellow - агрегатор open-source проектов для 1С:Предприятие 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 61 | 64 | 65 | 66 | 67 | 68 |
69 | 70 |
71 | 72 |
73 | 74 |
75 | 76 |

YellowPM

77 |

Пакетный менеджер для 1С:Предприятие 8

78 | 79 |

80 | 81 | Скачать v0.2.0 82 | GitHub 83 |
84 | 85 | 86 | 87 |
88 |
89 | 90 | 101 | 102 | 103 | 104 | 105 | --------------------------------------------------------------------------------