1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2026-06-18 05:04:13 +02:00

Apply LF line endings

This commit is contained in:
Anton Titovets
2025-07-06 01:01:25 +03:00
parent 64d75094ba
commit 01751c0a79
1447 changed files with 742953 additions and 742950 deletions
+3
View File
@@ -11,6 +11,9 @@ src/ru/cli/data/Classes/internal/Classes/** linguist-vendored
src/en/cli/data/Classes/internal/Classes/** linguist-vendored
*.iss linguist-vendored
*.bat linguist-vendored
* text=auto
*.<> text eol=lf
*.sh text eol=lf
media/** filter=lfs diff=lfs merge=lfs -text
Media/** filter=lfs diff=lfs merge=lfs -text
media/** !text !filter !merge !diff
+21 -21
View File
@@ -1,21 +1,21 @@
name: TEST CLI
# Controls when the workflow will run
on:
workflow_dispatch:
jobs:
Testing:
runs-on: ubuntu-latest
steps:
- name: Установить OInt
run: |
TEMP_DEB="$(mktemp)" &&
wget -O "$TEMP_DEB" 'https://api.athenaeum.digital/tc/job/Release/lastSuccessfulBuild/artifact/1.26.0/oint_1.26.0_all_ru.deb' &&
sudo dpkg -i "$TEMP_DEB"
rm -f "$TEMP_DEB"
- name: Тест
run: sudo oint
name: TEST CLI
# Controls when the workflow will run
on:
workflow_dispatch:
jobs:
Testing:
runs-on: ubuntu-latest
steps:
- name: Установить OInt
run: |
TEMP_DEB="$(mktemp)" &&
wget -O "$TEMP_DEB" 'https://api.athenaeum.digital/tc/job/Release/lastSuccessfulBuild/artifact/1.26.0/oint_1.26.0_all_ru.deb' &&
sudo dpkg -i "$TEMP_DEB"
rm -f "$TEMP_DEB"
- name: Тест
run: sudo oint
+33 -33
View File
@@ -1,34 +1,34 @@
pipeline {
agent {
label 'windows'
}
stages {
stage('OpiMain') {
steps {
echo 'Main (OpenIntegrations)'
build job: 'OpiMain', wait: true
}
}
stage('MelezhRelease') {
steps {
echo 'Main + Release (Melezh)'
build job: 'MelezhRelease', wait: true
}
}
stage('OpiRelease') {
steps {
echo 'Release (OpenIntegrations)'
build job: 'OpiRelease', wait: true
}
}
stage('OpiCliTestRu') {
steps {
echo 'CLI Test (OpenIntegrations)'
build job: 'OpiCliTestRu', wait: true
}
}
}
pipeline {
agent {
label 'windows'
}
stages {
stage('OpiMain') {
steps {
echo 'Main (OpenIntegrations)'
build job: 'OpiMain', wait: true
}
}
stage('MelezhRelease') {
steps {
echo 'Main + Release (Melezh)'
build job: 'MelezhRelease', wait: true
}
}
stage('OpiRelease') {
steps {
echo 'Release (OpenIntegrations)'
build job: 'OpiRelease', wait: true
}
}
stage('OpiCliTestRu') {
steps {
echo 'CLI Test (OpenIntegrations)'
build job: 'OpiCliTestRu', wait: true
}
}
}
}
Vendored
+23 -23
View File
@@ -1,24 +1,24 @@
pipeline {
agent {
label 'windows'
}
stages {
stage('Deploy') {
steps {
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
bat encoding: 'UTF-8', script:'chcp 65001 & oscript ./ci/os/docs_pagetranslate.os'
bat encoding: 'UTF-8', script:'chcp 65001 & xcopy "docs/en/md" "docs/docusaurus/docs" /s /e /i /y'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & npm install'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & yarn build'
withCredentials([string(credentialsId: 'neocities-en', variable: 'TOKEN')]) {
powershell encoding: 'UTF-8', script:'oint neocities СинхронизироватьКаталоги --token $ENV:TOKEN --local "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsEn/docs/docusaurus/build"'
}
}
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsEn/docs/docusaurus/build"'
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsEn/docs/docusaurus/node_modules"'
}
}
}
pipeline {
agent {
label 'windows'
}
stages {
stage('Deploy') {
steps {
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
bat encoding: 'UTF-8', script:'chcp 65001 & oscript ./ci/os/docs_pagetranslate.os'
bat encoding: 'UTF-8', script:'chcp 65001 & xcopy "docs/en/md" "docs/docusaurus/docs" /s /e /i /y'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & npm install'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & yarn build'
withCredentials([string(credentialsId: 'neocities-en', variable: 'TOKEN')]) {
powershell encoding: 'UTF-8', script:'oint neocities СинхронизироватьКаталоги --token $ENV:TOKEN --local "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsEn/docs/docusaurus/build"'
}
}
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsEn/docs/docusaurus/build"'
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsEn/docs/docusaurus/node_modules"'
}
}
}
}
Vendored
+22 -22
View File
@@ -1,23 +1,23 @@
pipeline {
agent {
label 'windows'
}
stages {
stage('Deploy') {
steps {
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
bat encoding: 'UTF-8', script:'chcp 65001 & xcopy "docs/ru/md" "docs/docusaurus/docs" /s /e /i /y'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & npm install'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & yarn build'
withCredentials([string(credentialsId: 'neocities-ru', variable: 'TOKEN')]) {
powershell encoding: 'UTF-8', script:'oint neocities СинхронизироватьКаталоги --token $ENV:TOKEN --local "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsRu/docs/docusaurus/build"'
}
}
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsRu/docs/docusaurus/build"'
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsRu/docs/docusaurus/node_modules"'
}
}
}
pipeline {
agent {
label 'windows'
}
stages {
stage('Deploy') {
steps {
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
bat encoding: 'UTF-8', script:'chcp 65001 & xcopy "docs/ru/md" "docs/docusaurus/docs" /s /e /i /y'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & npm install'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & yarn build'
withCredentials([string(credentialsId: 'neocities-ru', variable: 'TOKEN')]) {
powershell encoding: 'UTF-8', script:'oint neocities СинхронизироватьКаталоги --token $ENV:TOKEN --local "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsRu/docs/docusaurus/build"'
}
}
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsRu/docs/docusaurus/build"'
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsRu/docs/docusaurus/node_modules"'
}
}
}
}
+23 -23
View File
@@ -1,24 +1,24 @@
pipeline {
agent {
label 'windows'
}
stages {
stage('Deploy') {
steps {
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
bat encoding: 'UTF-8', script:'chcp 65001 & oscript ./ci/os/docs_pagetranslate.os'
bat encoding: 'UTF-8', script:'chcp 65001 & xcopy "docs/en/md" "docs/docusaurus/docs" /s /e /i /y'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & npm install'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & yarn build'
withCredentials([string(credentialsId: 'neocities-test', variable: 'TOKEN')]) {
powershell encoding: 'UTF-8', script:'oint neocities СинхронизироватьКаталоги --token $ENV:TOKEN --local "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestEn/docs/docusaurus/build"'
}
}
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestEn/docs/docusaurus/build"'
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestEn/docs/docusaurus/node_modules"'
}
}
}
pipeline {
agent {
label 'windows'
}
stages {
stage('Deploy') {
steps {
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
bat encoding: 'UTF-8', script:'chcp 65001 & oscript ./ci/os/docs_pagetranslate.os'
bat encoding: 'UTF-8', script:'chcp 65001 & xcopy "docs/en/md" "docs/docusaurus/docs" /s /e /i /y'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & npm install'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & yarn build'
withCredentials([string(credentialsId: 'neocities-test', variable: 'TOKEN')]) {
powershell encoding: 'UTF-8', script:'oint neocities СинхронизироватьКаталоги --token $ENV:TOKEN --local "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestEn/docs/docusaurus/build"'
}
}
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestEn/docs/docusaurus/build"'
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestEn/docs/docusaurus/node_modules"'
}
}
}
}
+22 -22
View File
@@ -1,23 +1,23 @@
pipeline {
agent {
label 'windows'
}
stages {
stage('Deploy') {
steps {
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
bat encoding: 'UTF-8', script:'chcp 65001 & xcopy "docs/ru/md" "docs/docusaurus/docs" /s /e /i /y'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & npm install'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & yarn build'
withCredentials([string(credentialsId: 'neocities-test', variable: 'TOKEN')]) {
powershell encoding: 'UTF-8', script:'oint neocities СинхронизироватьКаталоги --token $ENV:TOKEN --local "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestRu/docs/docusaurus/build"'
}
}
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestRu/docs/docusaurus/build"'
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestRu/docs/docusaurus/node_modules"'
}
}
}
pipeline {
agent {
label 'windows'
}
stages {
stage('Deploy') {
steps {
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
bat encoding: 'UTF-8', script:'chcp 65001 & xcopy "docs/ru/md" "docs/docusaurus/docs" /s /e /i /y'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & npm install'
bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & yarn build'
withCredentials([string(credentialsId: 'neocities-test', variable: 'TOKEN')]) {
powershell encoding: 'UTF-8', script:'oint neocities СинхронизироватьКаталоги --token $ENV:TOKEN --local "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestRu/docs/docusaurus/build"'
}
}
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestRu/docs/docusaurus/build"'
bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/OpiDocsTestRu/docs/docusaurus/node_modules"'
}
}
}
}
Vendored
+52 -52
View File
@@ -1,53 +1,53 @@
pipeline {
agent {
label 'windows'
}
stages {
stage('Prepare') {
steps {
bat "git branch"
bat encoding: 'UTF-8', script:'chcp 65001 & opm install osparser'
bat encoding: 'UTF-8', script:'chcp 65001 & opm install cmdline'
bat encoding: 'UTF-8', script:'chcp 65001 & opm install asserts'
bat encoding: 'UTF-8', script:'chcp 65001 & opm install osparser'
bat encoding: 'UTF-8', script:'chcp 65001 & opm install coloratos'
bat encoding: 'UTF-8', script:'if exist Melezh rd /s /q Melezh'
bat encoding: 'UTF-8', script:'chcp 65001 & git clone https://github.com/bayselonarrend/Melezh'
}
}
stage('Build') {
steps {
bat encoding: 'UTF-8', script:'chcp 65001 & oscript ./ci/os/main.os'
bat encoding: 'UTF-8', script:'chcp 65001 & oscript ./ci/os/docs_main.os'
}
}
stage('Local update'){
steps {
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.26.0.ospx; del oint-1.26.0.ospx'
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install -f oint-cli-1.26.0.ospx; del oint-cli-1.26.0.ospx'
}
}
stage('Update GIT') {
steps {
script {
withCredentials([gitUsernamePassword(credentialsId: 'gitmain', gitToolName: 'Default')]) {
bat "git config user.email vitaly.the.alpaca@gmail.com"
bat 'git config user.name "Vitaly the Alpaca (bot)"'
bat "git config --global core.ignorecase true"
bat "git add ."
bat 'git commit -m "Main build (Jenkins)"'
bat "git push origin HEAD:main"
}
}
}
}
}
pipeline {
agent {
label 'windows'
}
stages {
stage('Prepare') {
steps {
bat "git branch"
bat encoding: 'UTF-8', script:'chcp 65001 & opm install osparser'
bat encoding: 'UTF-8', script:'chcp 65001 & opm install cmdline'
bat encoding: 'UTF-8', script:'chcp 65001 & opm install asserts'
bat encoding: 'UTF-8', script:'chcp 65001 & opm install osparser'
bat encoding: 'UTF-8', script:'chcp 65001 & opm install coloratos'
bat encoding: 'UTF-8', script:'if exist Melezh rd /s /q Melezh'
bat encoding: 'UTF-8', script:'chcp 65001 & git clone https://github.com/bayselonarrend/Melezh'
}
}
stage('Build') {
steps {
bat encoding: 'UTF-8', script:'chcp 65001 & oscript ./ci/os/main.os'
bat encoding: 'UTF-8', script:'chcp 65001 & oscript ./ci/os/docs_main.os'
}
}
stage('Local update'){
steps {
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.26.0.ospx; del oint-1.26.0.ospx'
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install -f oint-cli-1.26.0.ospx; del oint-cli-1.26.0.ospx'
}
}
stage('Update GIT') {
steps {
script {
withCredentials([gitUsernamePassword(credentialsId: 'gitmain', gitToolName: 'Default')]) {
bat "git config user.email vitaly.the.alpaca@gmail.com"
bat 'git config user.name "Vitaly the Alpaca (bot)"'
bat "git config --global core.ignorecase true"
bat "git add ."
bat 'git commit -m "Main build (Jenkins)"'
bat "git push origin HEAD:main"
}
}
}
}
}
}
Vendored
+19 -19
View File
@@ -1,19 +1,19 @@
pipeline {
agent {
label 'windows'
}
stages {
stage('Deploy') {
steps {
withCredentials([string(credentialsId: 'opm-token', variable: 'TOKEN')]) {
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.26.0.ospx'
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm push --token $ENV:TOKEN --channel stable --file oint-1.26.0.ospx; del oint-1.26.0.ospx'
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build;'
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm push --token $ENV:TOKEN --channel stable --file oint-cli-1.26.0.ospx; del oint-cli-1.26.0.ospx'
}
}
}
}
}
pipeline {
agent {
label 'windows'
}
stages {
stage('Deploy') {
steps {
withCredentials([string(credentialsId: 'opm-token', variable: 'TOKEN')]) {
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.26.0.ospx'
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm push --token $ENV:TOKEN --channel stable --file oint-1.26.0.ospx; del oint-1.26.0.ospx'
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build;'
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm push --token $ENV:TOKEN --channel stable --file oint-cli-1.26.0.ospx; del oint-cli-1.26.0.ospx'
}
}
}
}
}
+17 -17
View File
@@ -1,17 +1,17 @@
pipeline {
agent {
label 'windows'
}
stages {
stage('Update') {
steps {
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.26.0.ospx; del oint-1.26.0.ospx'
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install -f oint-cli-1.26.0.ospx; del oint-cli-1.26.0.ospx'
}
}
}
}
pipeline {
agent {
label 'windows'
}
stages {
stage('Update') {
steps {
powershell encoding: 'UTF-8', script:'cd ./src/ru/OInt; opm build; opm install -f oint-1.26.0.ospx; del oint-1.26.0.ospx'
powershell encoding: 'UTF-8', script:'cd ./src/ru/cli; opm build; opm install -f oint-cli-1.26.0.ospx; del oint-cli-1.26.0.ospx'
}
}
}
}
+902 -902
View File
File diff suppressed because it is too large Load Diff
+54 -54
View File
@@ -1,55 +1,55 @@
ПутьКСловарю = "./service/dictionaries/en.json";
ЧтениеJSON = Новый ЧтениеJSON();
ЧтениеJSON.ОткрытьФайл(ПутьКСловарю);
Словарь = ПрочитатьJSON(ЧтениеJSON, Истина);
ЧтениеJSON.Закрыть();
ТаблицаСловаря = Новый ТаблицаЗначений();
ТаблицаСловаря.Колонки.Добавить("Ключ");
ТаблицаСловаря.Колонки.Добавить("Значение");
ТаблицаСловаря.Колонки.Добавить("Длина");
Для Каждого КлючевоеСлово Из Словарь Цикл
НоваяСтрокаСловаря = ТаблицаСловаря.Добавить();
НоваяСтрокаСловаря.Ключ = КлючевоеСлово.Ключ;
НоваяСтрокаСловаря.Значение = КлючевоеСлово.Значение;
НоваяСтрокаСловаря.Длина = СтрДлина(КлючевоеСлово.Ключ);
КонецЦикла;
ТаблицаСловаря.Сортировать("Длина УБЫВ");
ПутьДокозавра = "./docs/docusaurus/";
МассивФайлов = Новый Массив;
МассивФайлов.Добавить(Новый Файл(ПутьДокозавра + "src/components/HomepageFeatures/index.js"));
МассивФайлов.Добавить(Новый Файл(ПутьДокозавра + "src/components/AlternatingFeatures/index.js"));
МассивФайлов.Добавить(Новый Файл(ПутьДокозавра + "src/pages/index.js"));
МассивФайлов.Добавить(Новый Файл(ПутьДокозавра + "docusaurus.config.js"));
Для Каждого Файл Из МассивФайлов Цикл
ТекущийПуть = Файл.ПолноеИмя;
ТекущийДокумент = Новый ТекстовыйДокумент();
ТекущийДокумент.Прочитать(ТекущийПуть, "UTF-8");
ТекущийТекст = ТекущийДокумент.ПолучитьТекст();
Для Каждого Слово Из ТаблицаСловаря Цикл
ТекущийТекст = СтрЗаменить(ТекущийТекст, Слово.Ключ, Слово.Значение);
КонецЦикла;
ТекущийТекст = СтрЗаменить(ТекущийТекст, "English version", "Документация на русском языке");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "href: 'https://en.openintegrations.dev'", "href: 'https://openintegrations.dev'");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "defaultLocale: 'ru',", "defaultLocale: 'en',");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "locales: ['ru'],", "locales: ['en'],");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "url: 'https://openintegrations.dev',", "url: 'https://en.openintegrations.dev',");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "English", "Русский");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "Аддоны", "Addons");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "Поддержать проект", "Support us");
ТекущийДокумент.УстановитьТекст(ТекущийТекст);
ТекущийДокумент.Записать(Файл.ПолноеИмя);
ПутьКСловарю = "./service/dictionaries/en.json";
ЧтениеJSON = Новый ЧтениеJSON();
ЧтениеJSON.ОткрытьФайл(ПутьКСловарю);
Словарь = ПрочитатьJSON(ЧтениеJSON, Истина);
ЧтениеJSON.Закрыть();
ТаблицаСловаря = Новый ТаблицаЗначений();
ТаблицаСловаря.Колонки.Добавить("Ключ");
ТаблицаСловаря.Колонки.Добавить("Значение");
ТаблицаСловаря.Колонки.Добавить("Длина");
Для Каждого КлючевоеСлово Из Словарь Цикл
НоваяСтрокаСловаря = ТаблицаСловаря.Добавить();
НоваяСтрокаСловаря.Ключ = КлючевоеСлово.Ключ;
НоваяСтрокаСловаря.Значение = КлючевоеСлово.Значение;
НоваяСтрокаСловаря.Длина = СтрДлина(КлючевоеСлово.Ключ);
КонецЦикла;
ТаблицаСловаря.Сортировать("Длина УБЫВ");
ПутьДокозавра = "./docs/docusaurus/";
МассивФайлов = Новый Массив;
МассивФайлов.Добавить(Новый Файл(ПутьДокозавра + "src/components/HomepageFeatures/index.js"));
МассивФайлов.Добавить(Новый Файл(ПутьДокозавра + "src/components/AlternatingFeatures/index.js"));
МассивФайлов.Добавить(Новый Файл(ПутьДокозавра + "src/pages/index.js"));
МассивФайлов.Добавить(Новый Файл(ПутьДокозавра + "docusaurus.config.js"));
Для Каждого Файл Из МассивФайлов Цикл
ТекущийПуть = Файл.ПолноеИмя;
ТекущийДокумент = Новый ТекстовыйДокумент();
ТекущийДокумент.Прочитать(ТекущийПуть, "UTF-8");
ТекущийТекст = ТекущийДокумент.ПолучитьТекст();
Для Каждого Слово Из ТаблицаСловаря Цикл
ТекущийТекст = СтрЗаменить(ТекущийТекст, Слово.Ключ, Слово.Значение);
КонецЦикла;
ТекущийТекст = СтрЗаменить(ТекущийТекст, "English version", "Документация на русском языке");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "href: 'https://en.openintegrations.dev'", "href: 'https://openintegrations.dev'");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "defaultLocale: 'ru',", "defaultLocale: 'en',");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "locales: ['ru'],", "locales: ['en'],");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "url: 'https://openintegrations.dev',", "url: 'https://en.openintegrations.dev',");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "English", "Русский");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "Аддоны", "Addons");
ТекущийТекст = СтрЗаменить(ТекущийТекст, "Поддержать проект", "Support us");
ТекущийДокумент.УстановитьТекст(ТекущийТекст);
ТекущийДокумент.Записать(Файл.ПолноеИмя);
КонецЦикла;
+1001 -1001
View File
File diff suppressed because it is too large Load Diff
@@ -1,209 +1,209 @@
#Использовать osparser
Процедура ДобавитьДублеры(Языки, ПутьПакета, СоответствиеНесовпадающихИмен) Экспорт
ФайлыOint = НайтиФайлы(ПутьПакета, "*.os", Истина);
ФайлыOint.Добавить(Новый Файл("./src/ru/cli/data/Classes/LibraryComposition.os"));
ФайлыOint.Добавить(Новый Файл("./src/ru/cli/env/Classes/CommandLineArgumentParser.os"));
ФайлыOint.Добавить(Новый Файл("./src/ru/cli/env/Modules/ColorOutput.os"));
СоответствиеФайловДублеров = Новый Соответствие();
Для Каждого Файл Из ФайлыOint Цикл
Если Файл.ЭтоКаталог() Тогда
Продолжить;
КонецЕсли;
ТекущийПуть = СтрЗаменить(Файл.ПолноеИмя, "\", "/");
ТекущийМассив = Новый Массив;
Для Каждого Язык Из Языки Цикл
Если Язык = "ru" Тогда
Продолжить;
КонецЕсли;
ТекущийПутьЯзыка = ТекущийПуть;
ТекущийПутьЯзыка = СтрЗаменить(ТекущийПутьЯзыка, "/ru/", СтрШаблон("/%1/", Язык));
Для Каждого Замена Из СоответствиеНесовпадающихИмен Цикл
ТекущийПутьЯзыка = СтрЗаменить(ТекущийПутьЯзыка, Замена.Ключ, Замена.Значение);
КонецЦикла;
ФайлЯзыка = Новый Файл(ТекущийПутьЯзыка);
Если ФайлЯзыка.Существует() Тогда
ТекущийМассив.Добавить(ТекущийПутьЯзыка);
КонецЕсли;
КонецЦикла;
Если Не ТекущийМассив.Количество() = 0 Тогда
СоответствиеФайловДублеров.Вставить(ТекущийПуть, ТекущийМассив);
КонецЕсли
КонецЦикла;
Для Каждого ФайлыДублеров Из СоответствиеФайловДублеров Цикл
МассивФайловДублеров = ФайлыДублеров.Значение;
МассивФайловДублеров.Добавить(ФайлыДублеров.Ключ);
СоздатьДублеры(МассивФайловДублеров);
КонецЦикла;
КонецПроцедуры
Процедура СоздатьДублеры(ФайлыДублеров)
СоответствиеФайловМетодов = Новый Соответствие();
СоответствиеИменМетодов = Новый Соответствие();
СоответствиеМетодовОригиналов = Новый Соответствие();
Для Каждого ФайлДублера Из ФайлыДублеров Цикл
Парсер = Новый ПарсерВстроенногоЯзыка;
ДанныеМодуля = Новый ДвоичныеДанные(ФайлДублера);
ТекстМодуля = ПолучитьСтрокуИзДвоичныхДанных(ДанныеМодуля);
Существующие = СтрНайти(ТекстМодуля, "#Region Alternate");
Если Существующие <> 0 Тогда
ТекстМодуля = СокрЛП(Лев(ТекстМодуля, Существующие - 1));
КонецЕсли;
СтруктураМодуля = Парсер.Разобрать(ТекстМодуля);
МассивМетодов = Новый Массив;
МассивИмен = Новый Массив;
МассивОригиналов = Новый Массив;
Для Каждого Объявление Из СтруктураМодуля.Объявления Цикл
Если Строка(Объявление.Тип) = "ОбъявлениеМетода" Тогда
Если Не Объявление.Сигнатура.Экспорт Тогда
Продолжить;
КонецЕсли;
ТипМетода = ?(Строка(Объявление.Сигнатура.Тип) = "ОбъявлениеСигнатурыФункции", "Function", "Procedure");
ТекстВозврат = ?(Строка(Объявление.Сигнатура.Тип) = "ОбъявлениеСигнатурыФункции", "Return ", "");
ИмяМетода = Объявление.Сигнатура.Имя;
МассивПараметров = Новый Массив;
МассивПараметровВызова = Новый Массив;
ШаблонаПараметров = "%1%2%3";
Для Каждого Параметр Из Объявление.Сигнатура.Параметры Цикл
ПоЗначению = ?(Параметр.ПоЗначению, "Val ", "");
Имя = Параметр.Имя;
МассивПараметровВызова.Добавить(Имя);
Если Не Параметр.Значение = Неопределено Тогда
Если Строка(Параметр.Значение.Тип) = "ВыражениеСтроковое" Тогда
ЗначениеПоУмолчанию = Строка(Параметр.Значение.Элементы[0].Значение);
ВидЗначения = Строка(Параметр.Значение.Элементы[0].Вид);
Иначе
ЗначениеПоУмолчанию = Строка(Параметр.Значение.Значение);
ВидЗначения = Строка(Параметр.Значение.Вид);
КонецЕсли;
Если ВидЗначения = "Строка" Тогда
ЗначениеПоУмолчанию = СтрШаблон("""%1""", ЗначениеПоУмолчанию);
ИначеЕсли ВидЗначения = "Ложь" Тогда
ЗначениеПоУмолчанию = "False";
ИначеЕсли ВидЗначения = "Истина" Тогда
ЗначениеПоУмолчанию = "True"
ИначеЕсли Не ВидЗначения = "Число" Тогда
ЗначениеПоУмолчанию = ?(ЗначениеЗаполнено(ЗначениеПоУмолчанию), ЗначениеПоУмолчанию, "Undefined");
КонецЕсли;
ЗначениеПоУмолчанию = СтрШаблон(" = %1", ЗначениеПоУмолчанию);
Иначе
ЗначениеПоУмолчанию = "";
КонецЕсли;
МассивПараметров.Добавить(СтрШаблон(ШаблонаПараметров, ПоЗначению, Имя, ЗначениеПоУмолчанию));
КонецЦикла;
СтрокаПараметров = СтрСоединить(МассивПараметров, ", ");
СтрокаПараметровВызова = СтрСоединить(МассивПараметровВызова, ", ");
ШаблонМетода = "%1 %2(%3) Export
| %5%%1(%4);
|End%1";
МассивОригиналов.Добавить(ИмяМетода);
МассивМетодов.Добавить(СтрШаблон(ШаблонМетода, ТипМетода, ИмяМетода, СтрокаПараметров, СтрокаПараметровВызова, ТекстВозврат));
МассивИмен.Добавить(ИмяМетода);
КонецЕсли;
КонецЦикла;
СоответствиеИменМетодов.Вставить(ФайлДублера, МассивИмен);
СоответствиеФайловМетодов.Вставить(ФайлДублера, МассивМетодов);
СоответствиеМетодовОригиналов.Вставить(ФайлДублера, МассивОригиналов);
КонецЦикла;
Для Каждого Оригиналы Из СоответствиеМетодовОригиналов Цикл
МассивДополнения = Новый Массив;
ТекущйиМодуль = Оригиналы.Ключ;
ОригинальныеМетоды = Оригиналы.Значение;
Для Каждого ДругойМодуль Из СоответствиеФайловМетодов Цикл
Если ДругойМодуль.Ключ = ТекущйиМодуль Тогда
Продолжить;
КонецЕсли;
ИменаДублеров = СоответствиеИменМетодов.Получить(ДругойМодуль.Ключ);
МетодыДублеры = ДругойМодуль.Значение;
Для Н = 0 По ОригинальныеМетоды.Количество() - 1 Цикл
ОригинальныйМетод = ОригинальныеМетоды[Н];
Дублер = МетодыДублеры[Н];
ИмяДублера = ИменаДублеров[Н];
Если ОригинальныйМетод = ИмяДублера Тогда
Продолжить;
КонецЕсли;
МассивДополнения.Добавить(СтрШаблон(Дублер, ОригинальныйМетод));
КонецЦикла;
КонецЦикла;
ШаблонДополнения = "
|#Region Alternate
|
|%1
|
|#EndRegion";
Дополнение = СтрШаблон(ШаблонДополнения, СтрСоединить(МассивДополнения, Символы.ПС + Символы.ПС));
ТекстОригинала = Новый ДвоичныеДанные(ТекущйиМодуль);
ТекстОригинала = ПолучитьСтрокуИзДвоичныхДанных(ТекстОригинала);
Существующие = СтрНайти(ТекстОригинала, "#Region Alternate");
Если Существующие <> 0 Тогда
ТекстОригинала = СокрЛП(Лев(ТекстОригинала, Существующие - 1));
КонецЕсли;
ТекстОригинала = ТекстОригинала + Дополнение;
ПолучитьДвоичныеДанныеИзСтроки(ТекстОригинала).Записать(ТекущйиМодуль);
КонецЦикла;
#Использовать osparser
Процедура ДобавитьДублеры(Языки, ПутьПакета, СоответствиеНесовпадающихИмен) Экспорт
ФайлыOint = НайтиФайлы(ПутьПакета, "*.os", Истина);
ФайлыOint.Добавить(Новый Файл("./src/ru/cli/data/Classes/LibraryComposition.os"));
ФайлыOint.Добавить(Новый Файл("./src/ru/cli/env/Classes/CommandLineArgumentParser.os"));
ФайлыOint.Добавить(Новый Файл("./src/ru/cli/env/Modules/ColorOutput.os"));
СоответствиеФайловДублеров = Новый Соответствие();
Для Каждого Файл Из ФайлыOint Цикл
Если Файл.ЭтоКаталог() Тогда
Продолжить;
КонецЕсли;
ТекущийПуть = СтрЗаменить(Файл.ПолноеИмя, "\", "/");
ТекущийМассив = Новый Массив;
Для Каждого Язык Из Языки Цикл
Если Язык = "ru" Тогда
Продолжить;
КонецЕсли;
ТекущийПутьЯзыка = ТекущийПуть;
ТекущийПутьЯзыка = СтрЗаменить(ТекущийПутьЯзыка, "/ru/", СтрШаблон("/%1/", Язык));
Для Каждого Замена Из СоответствиеНесовпадающихИмен Цикл
ТекущийПутьЯзыка = СтрЗаменить(ТекущийПутьЯзыка, Замена.Ключ, Замена.Значение);
КонецЦикла;
ФайлЯзыка = Новый Файл(ТекущийПутьЯзыка);
Если ФайлЯзыка.Существует() Тогда
ТекущийМассив.Добавить(ТекущийПутьЯзыка);
КонецЕсли;
КонецЦикла;
Если Не ТекущийМассив.Количество() = 0 Тогда
СоответствиеФайловДублеров.Вставить(ТекущийПуть, ТекущийМассив);
КонецЕсли
КонецЦикла;
Для Каждого ФайлыДублеров Из СоответствиеФайловДублеров Цикл
МассивФайловДублеров = ФайлыДублеров.Значение;
МассивФайловДублеров.Добавить(ФайлыДублеров.Ключ);
СоздатьДублеры(МассивФайловДублеров);
КонецЦикла;
КонецПроцедуры
Процедура СоздатьДублеры(ФайлыДублеров)
СоответствиеФайловМетодов = Новый Соответствие();
СоответствиеИменМетодов = Новый Соответствие();
СоответствиеМетодовОригиналов = Новый Соответствие();
Для Каждого ФайлДублера Из ФайлыДублеров Цикл
Парсер = Новый ПарсерВстроенногоЯзыка;
ДанныеМодуля = Новый ДвоичныеДанные(ФайлДублера);
ТекстМодуля = ПолучитьСтрокуИзДвоичныхДанных(ДанныеМодуля);
Существующие = СтрНайти(ТекстМодуля, "#Region Alternate");
Если Существующие <> 0 Тогда
ТекстМодуля = СокрЛП(Лев(ТекстМодуля, Существующие - 1));
КонецЕсли;
СтруктураМодуля = Парсер.Разобрать(ТекстМодуля);
МассивМетодов = Новый Массив;
МассивИмен = Новый Массив;
МассивОригиналов = Новый Массив;
Для Каждого Объявление Из СтруктураМодуля.Объявления Цикл
Если Строка(Объявление.Тип) = "ОбъявлениеМетода" Тогда
Если Не Объявление.Сигнатура.Экспорт Тогда
Продолжить;
КонецЕсли;
ТипМетода = ?(Строка(Объявление.Сигнатура.Тип) = "ОбъявлениеСигнатурыФункции", "Function", "Procedure");
ТекстВозврат = ?(Строка(Объявление.Сигнатура.Тип) = "ОбъявлениеСигнатурыФункции", "Return ", "");
ИмяМетода = Объявление.Сигнатура.Имя;
МассивПараметров = Новый Массив;
МассивПараметровВызова = Новый Массив;
ШаблонаПараметров = "%1%2%3";
Для Каждого Параметр Из Объявление.Сигнатура.Параметры Цикл
ПоЗначению = ?(Параметр.ПоЗначению, "Val ", "");
Имя = Параметр.Имя;
МассивПараметровВызова.Добавить(Имя);
Если Не Параметр.Значение = Неопределено Тогда
Если Строка(Параметр.Значение.Тип) = "ВыражениеСтроковое" Тогда
ЗначениеПоУмолчанию = Строка(Параметр.Значение.Элементы[0].Значение);
ВидЗначения = Строка(Параметр.Значение.Элементы[0].Вид);
Иначе
ЗначениеПоУмолчанию = Строка(Параметр.Значение.Значение);
ВидЗначения = Строка(Параметр.Значение.Вид);
КонецЕсли;
Если ВидЗначения = "Строка" Тогда
ЗначениеПоУмолчанию = СтрШаблон("""%1""", ЗначениеПоУмолчанию);
ИначеЕсли ВидЗначения = "Ложь" Тогда
ЗначениеПоУмолчанию = "False";
ИначеЕсли ВидЗначения = "Истина" Тогда
ЗначениеПоУмолчанию = "True"
ИначеЕсли Не ВидЗначения = "Число" Тогда
ЗначениеПоУмолчанию = ?(ЗначениеЗаполнено(ЗначениеПоУмолчанию), ЗначениеПоУмолчанию, "Undefined");
КонецЕсли;
ЗначениеПоУмолчанию = СтрШаблон(" = %1", ЗначениеПоУмолчанию);
Иначе
ЗначениеПоУмолчанию = "";
КонецЕсли;
МассивПараметров.Добавить(СтрШаблон(ШаблонаПараметров, ПоЗначению, Имя, ЗначениеПоУмолчанию));
КонецЦикла;
СтрокаПараметров = СтрСоединить(МассивПараметров, ", ");
СтрокаПараметровВызова = СтрСоединить(МассивПараметровВызова, ", ");
ШаблонМетода = "%1 %2(%3) Export
| %5%%1(%4);
|End%1";
МассивОригиналов.Добавить(ИмяМетода);
МассивМетодов.Добавить(СтрШаблон(ШаблонМетода, ТипМетода, ИмяМетода, СтрокаПараметров, СтрокаПараметровВызова, ТекстВозврат));
МассивИмен.Добавить(ИмяМетода);
КонецЕсли;
КонецЦикла;
СоответствиеИменМетодов.Вставить(ФайлДублера, МассивИмен);
СоответствиеФайловМетодов.Вставить(ФайлДублера, МассивМетодов);
СоответствиеМетодовОригиналов.Вставить(ФайлДублера, МассивОригиналов);
КонецЦикла;
Для Каждого Оригиналы Из СоответствиеМетодовОригиналов Цикл
МассивДополнения = Новый Массив;
ТекущйиМодуль = Оригиналы.Ключ;
ОригинальныеМетоды = Оригиналы.Значение;
Для Каждого ДругойМодуль Из СоответствиеФайловМетодов Цикл
Если ДругойМодуль.Ключ = ТекущйиМодуль Тогда
Продолжить;
КонецЕсли;
ИменаДублеров = СоответствиеИменМетодов.Получить(ДругойМодуль.Ключ);
МетодыДублеры = ДругойМодуль.Значение;
Для Н = 0 По ОригинальныеМетоды.Количество() - 1 Цикл
ОригинальныйМетод = ОригинальныеМетоды[Н];
Дублер = МетодыДублеры[Н];
ИмяДублера = ИменаДублеров[Н];
Если ОригинальныйМетод = ИмяДублера Тогда
Продолжить;
КонецЕсли;
МассивДополнения.Добавить(СтрШаблон(Дублер, ОригинальныйМетод));
КонецЦикла;
КонецЦикла;
ШаблонДополнения = "
|#Region Alternate
|
|%1
|
|#EndRegion";
Дополнение = СтрШаблон(ШаблонДополнения, СтрСоединить(МассивДополнения, Символы.ПС + Символы.ПС));
ТекстОригинала = Новый ДвоичныеДанные(ТекущйиМодуль);
ТекстОригинала = ПолучитьСтрокуИзДвоичныхДанных(ТекстОригинала);
Существующие = СтрНайти(ТекстОригинала, "#Region Alternate");
Если Существующие <> 0 Тогда
ТекстОригинала = СокрЛП(Лев(ТекстОригинала, Существующие - 1));
КонецЕсли;
ТекстОригинала = ТекстОригинала + Дополнение;
ПолучитьДвоичныеДанныеИзСтроки(ТекстОригинала).Записать(ТекущйиМодуль);
КонецЦикла;
КонецПроцедуры
@@ -1,130 +1,130 @@
#Использовать "./../../../../src/en/OInt/tools/"
#Использовать "./../../../../src/ru/OInt/tools/"
#Использовать "./internal"
Перем СписокРабот;
Перем ШаблонCliWindows;
Перем ШаблонOsWindows;
Перем ШаблонOsLinux;
Перем ШаблонCliRpm;
Перем ШаблонCliDeb;
Перем ШаблонШага;
Перем ШаблонВыполнения;
Процедура СоздатьНаборWorkflow(Знач Языки, Знач КаталогПараметров, Знач КаталогWorkflow) Экспорт
КаталогШаблонов = "./service/templates/jenkins/";
ПутьШаблонаCliWindows = КаталогШаблонов + "cli_test_windows.txt";
ПутьШаблонаOsWindows = КаталогШаблонов + "os_test_windows.txt";
ПутьШаблонаOsLinux = КаталогШаблонов + "os_test_linux.txt";
ПутьШаблонаCliRpm = КаталогШаблонов + "cli_test_rpm.txt";
ПутьШаблонаCliDeb = КаталогШаблонов + "cli_test_deb.txt";
ПутьШаблонаШага = КаталогШаблонов + "test_stage.txt";
ПутьШаблонаВыполнения = КаталогШаблонов + "test_exec.txt";
ШаблонCliWindows = Новый ДвоичныеДанные(ПутьШаблонаCliWindows);
ШаблонCliWindows = ПолучитьСтрокуИзДвоичныхДанных(ШаблонCliWindows);
ШаблонOsWindows = Новый ДвоичныеДанные(ПутьШаблонаOsWindows);
ШаблонOsWindows = ПолучитьСтрокуИзДвоичныхДанных(ШаблонOsWindows);
ШаблонOsLinux = Новый ДвоичныеДанные(ПутьШаблонаOsLinux);
ШаблонOsLinux = ПолучитьСтрокуИзДвоичныхДанных(ШаблонOsLinux);
ШаблонCliRpm = Новый ДвоичныеДанные(ПутьШаблонаCliRpm);
ШаблонCliRpm = ПолучитьСтрокуИзДвоичныхДанных(ШаблонCliRpm);
ШаблонCliDeb = Новый ДвоичныеДанные(ПутьШаблонаCliDeb);
ШаблонCliDeb = ПолучитьСтрокуИзДвоичныхДанных(ШаблонCliDeb);
ШаблонШага = Новый ДвоичныеДанные(ПутьШаблонаШага);
ШаблонШага = ПолучитьСтрокуИзДвоичныхДанных(ШаблонШага);
ШаблонВыполнения = Новый ДвоичныеДанные(ПутьШаблонаВыполнения);
ШаблонВыполнения = ПолучитьСтрокуИзДвоичныхДанных(ШаблонВыполнения);
Для Каждого Язык Из Языки Цикл
ФайлПараметров = КаталогПараметров + Язык + ".json";
ЛокальныеПараметры = Инструменты.ПрочитатьФайлJSON(ФайлПараметров);
СформироватьWorflow(ЛокальныеПараметры, КаталогWorkflow, Язык);
КонецЦикла;
КонецПроцедуры
Процедура СформироватьWorflow(Знач Параметры, Знач КаталогWorkflow, Знач Язык)
СписокРабот = "";
СписокБиблиотек = Неопределено;
ТаблицаТестов = Неопределено;
МассивВлияющих = Новый Массив;
МодульТестов = Параметры["testsModulePath"];
МодульТестовCLI = Параметры["testsCliModulePath"];
Выполнить("ТаблицаТестов = " + Параметры["testsTableMethod"]);
Выполнить("СписокБиблиотек = " + Параметры["testsSectionsMethod"]);
ФайлJenkinsOS = КаталогWorkflow + "os_test_" + Язык;
ФайлJenkinsOSRPM = КаталогWorkflow + "os_rpm_test_" + Язык;
ФайлJenkinsOSDEB = КаталогWorkflow + "os_deb_test_" + Язык;
ФайлWindowsCLI = КаталогWorkflow + "cli_test_" + Язык;
ФайлRpmCLI = КаталогWorkflow + "cli_rpm_test_" + Язык;
ФайлDebCLI = КаталогWorkflow + "cli_deb_test_" + Язык;
ТекстВыполненияOS = ПолучитьТекстВыполнения(ТаблицаТестов, СписокБиблиотек, Параметры, МодульТестов);
ТекстВыполненияCLI = ПолучитьТекстВыполнения(ТаблицаТестов, СписокБиблиотек, Параметры, МодульТестовCLI, "CLI_");
ТекстJFCLI = СтрШаблон(ШаблонCliWindows, Язык, ТекстВыполненияCLI);
ТекстJFOS = СтрШаблон(ШаблонOsWindows, Язык, ТекстВыполненияOS);
ТекстJFOSRPM = СтрШаблон(ШаблонOsLinux, Язык, ТекстВыполненияOS, "Rpm-Agent");
ТекстJFOSDEB = СтрШаблон(ШаблонOsLinux, Язык, ТекстВыполненияOS, "Deb-Agent");
ТекстJFCLIRPM = СтрШаблон(ШаблонCliRpm, Язык, ТекстВыполненияCLI, "Rpm-Agent");
ТекстJFCLIDEB = СтрШаблон(ШаблонCliDeb, Язык, ТекстВыполненияCLI, "Deb-Agent");
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFOS).Записать(ФайлJenkinsOS);
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFOSRPM).Записать(ФайлJenkinsOSRPM);
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFOSDEB).Записать(ФайлJenkinsOSDEB);
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFCLI).Записать(ФайлWindowsCLI);
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFCLIRPM).Записать(ФайлRpmCLI);
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFCLIDEB).Записать(ФайлDebCLI);
КонецПроцедуры
Функция ПолучитьТекстВыполнения(Знач ТаблицаТестов, Знач СписокБиблиотек, Знач Параметры, Знач МодульТестов, Знач Префикс = "")
СтрокаРаздел = Параметры["sectionsString"];
СтрокаМетод = Параметры["methodString"];
СтрокаСиноним = Параметры["synonymString"];
МассивШагов = Новый Массив;
Для Каждого Библиотека Из СписокБиблиотек Цикл
Раздел = Библиотека.Ключ;
Отбор = Новый Структура(СтрокаРаздел, Раздел);
ТестыТекущегоРаздела = ТаблицаТестов.НайтиСтроки(Отбор);
МассивВыполнений = Новый Массив;
Для Каждого Тест Из ТестыТекущегоРаздела Цикл
Метод = Префикс + Тест[СтрокаМетод];
МассивВыполнений.Добавить(СтрШаблон(ШаблонВыполнения, МодульТестов, Метод))
КонецЦикла;
МассивШагов.Добавить(СтрШаблон(ШаблонШага, Раздел, СтрСоединить(МассивВыполнений, Символы.ПС)));
КонецЦикла;
Возврат СтрСоединить(МассивШагов, Символы.ПС);
КонецФункции
#Использовать "./../../../../src/en/OInt/tools/"
#Использовать "./../../../../src/ru/OInt/tools/"
#Использовать "./internal"
Перем СписокРабот;
Перем ШаблонCliWindows;
Перем ШаблонOsWindows;
Перем ШаблонOsLinux;
Перем ШаблонCliRpm;
Перем ШаблонCliDeb;
Перем ШаблонШага;
Перем ШаблонВыполнения;
Процедура СоздатьНаборWorkflow(Знач Языки, Знач КаталогПараметров, Знач КаталогWorkflow) Экспорт
КаталогШаблонов = "./service/templates/jenkins/";
ПутьШаблонаCliWindows = КаталогШаблонов + "cli_test_windows.txt";
ПутьШаблонаOsWindows = КаталогШаблонов + "os_test_windows.txt";
ПутьШаблонаOsLinux = КаталогШаблонов + "os_test_linux.txt";
ПутьШаблонаCliRpm = КаталогШаблонов + "cli_test_rpm.txt";
ПутьШаблонаCliDeb = КаталогШаблонов + "cli_test_deb.txt";
ПутьШаблонаШага = КаталогШаблонов + "test_stage.txt";
ПутьШаблонаВыполнения = КаталогШаблонов + "test_exec.txt";
ШаблонCliWindows = Новый ДвоичныеДанные(ПутьШаблонаCliWindows);
ШаблонCliWindows = ПолучитьСтрокуИзДвоичныхДанных(ШаблонCliWindows);
ШаблонOsWindows = Новый ДвоичныеДанные(ПутьШаблонаOsWindows);
ШаблонOsWindows = ПолучитьСтрокуИзДвоичныхДанных(ШаблонOsWindows);
ШаблонOsLinux = Новый ДвоичныеДанные(ПутьШаблонаOsLinux);
ШаблонOsLinux = ПолучитьСтрокуИзДвоичныхДанных(ШаблонOsLinux);
ШаблонCliRpm = Новый ДвоичныеДанные(ПутьШаблонаCliRpm);
ШаблонCliRpm = ПолучитьСтрокуИзДвоичныхДанных(ШаблонCliRpm);
ШаблонCliDeb = Новый ДвоичныеДанные(ПутьШаблонаCliDeb);
ШаблонCliDeb = ПолучитьСтрокуИзДвоичныхДанных(ШаблонCliDeb);
ШаблонШага = Новый ДвоичныеДанные(ПутьШаблонаШага);
ШаблонШага = ПолучитьСтрокуИзДвоичныхДанных(ШаблонШага);
ШаблонВыполнения = Новый ДвоичныеДанные(ПутьШаблонаВыполнения);
ШаблонВыполнения = ПолучитьСтрокуИзДвоичныхДанных(ШаблонВыполнения);
Для Каждого Язык Из Языки Цикл
ФайлПараметров = КаталогПараметров + Язык + ".json";
ЛокальныеПараметры = Инструменты.ПрочитатьФайлJSON(ФайлПараметров);
СформироватьWorflow(ЛокальныеПараметры, КаталогWorkflow, Язык);
КонецЦикла;
КонецПроцедуры
Процедура СформироватьWorflow(Знач Параметры, Знач КаталогWorkflow, Знач Язык)
СписокРабот = "";
СписокБиблиотек = Неопределено;
ТаблицаТестов = Неопределено;
МассивВлияющих = Новый Массив;
МодульТестов = Параметры["testsModulePath"];
МодульТестовCLI = Параметры["testsCliModulePath"];
Выполнить("ТаблицаТестов = " + Параметры["testsTableMethod"]);
Выполнить("СписокБиблиотек = " + Параметры["testsSectionsMethod"]);
ФайлJenkinsOS = КаталогWorkflow + "os_test_" + Язык;
ФайлJenkinsOSRPM = КаталогWorkflow + "os_rpm_test_" + Язык;
ФайлJenkinsOSDEB = КаталогWorkflow + "os_deb_test_" + Язык;
ФайлWindowsCLI = КаталогWorkflow + "cli_test_" + Язык;
ФайлRpmCLI = КаталогWorkflow + "cli_rpm_test_" + Язык;
ФайлDebCLI = КаталогWorkflow + "cli_deb_test_" + Язык;
ТекстВыполненияOS = ПолучитьТекстВыполнения(ТаблицаТестов, СписокБиблиотек, Параметры, МодульТестов);
ТекстВыполненияCLI = ПолучитьТекстВыполнения(ТаблицаТестов, СписокБиблиотек, Параметры, МодульТестовCLI, "CLI_");
ТекстJFCLI = СтрШаблон(ШаблонCliWindows, Язык, ТекстВыполненияCLI);
ТекстJFOS = СтрШаблон(ШаблонOsWindows, Язык, ТекстВыполненияOS);
ТекстJFOSRPM = СтрШаблон(ШаблонOsLinux, Язык, ТекстВыполненияOS, "Rpm-Agent");
ТекстJFOSDEB = СтрШаблон(ШаблонOsLinux, Язык, ТекстВыполненияOS, "Deb-Agent");
ТекстJFCLIRPM = СтрШаблон(ШаблонCliRpm, Язык, ТекстВыполненияCLI, "Rpm-Agent");
ТекстJFCLIDEB = СтрШаблон(ШаблонCliDeb, Язык, ТекстВыполненияCLI, "Deb-Agent");
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFOS).Записать(ФайлJenkinsOS);
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFOSRPM).Записать(ФайлJenkinsOSRPM);
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFOSDEB).Записать(ФайлJenkinsOSDEB);
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFCLI).Записать(ФайлWindowsCLI);
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFCLIRPM).Записать(ФайлRpmCLI);
ПолучитьДвоичныеДанныеИзСтроки(ТекстJFCLIDEB).Записать(ФайлDebCLI);
КонецПроцедуры
Функция ПолучитьТекстВыполнения(Знач ТаблицаТестов, Знач СписокБиблиотек, Знач Параметры, Знач МодульТестов, Знач Префикс = "")
СтрокаРаздел = Параметры["sectionsString"];
СтрокаМетод = Параметры["methodString"];
СтрокаСиноним = Параметры["synonymString"];
МассивШагов = Новый Массив;
Для Каждого Библиотека Из СписокБиблиотек Цикл
Раздел = Библиотека.Ключ;
Отбор = Новый Структура(СтрокаРаздел, Раздел);
ТестыТекущегоРаздела = ТаблицаТестов.НайтиСтроки(Отбор);
МассивВыполнений = Новый Массив;
Для Каждого Тест Из ТестыТекущегоРаздела Цикл
Метод = Префикс + Тест[СтрокаМетод];
МассивВыполнений.Добавить(СтрШаблон(ШаблонВыполнения, МодульТестов, Метод))
КонецЦикла;
МассивШагов.Добавить(СтрШаблон(ШаблонШага, Раздел, СтрСоединить(МассивВыполнений, Символы.ПС)));
КонецЦикла;
Возврат СтрСоединить(МассивШагов, Символы.ПС);
КонецФункции
+221 -221
View File
@@ -1,221 +1,221 @@
#Использовать "./internal"
#Использовать "./internal/Modules/internal"
Перем ПутьPackagedef;
Перем ОсновнойПутьИсходников;
Перем СоответствиеЗамен;
Перем ПутьПакета;
Перем Версия;
Перем Языки;
Перем КаталогСловарей;
Перем ФайлыПеревода;
Перем ФайлыРазбораСловаря;
Перем ФайлыФорматирования;
Перем Корень;
Перем ОсновнойЯзык;
Перем КаталогWorkflow;
Перем КаталогJenkins;
Перем КаталогПараметровЛок;
Перем КаталогДополнений;
Перем ФайлПроверкиНабораТестов;
Перем СоответствиеНесовпадающихИмен;
Процедура ПриСозданииОбъекта()
ДанныеПроекта = ОбщиеМетоды.ПолучитьДанныеПроекта();
// Основные
Корень = ДанныеПроекта["root"];
КаталогПакета = ДанныеПроекта["packageSrc"];
ОсновнойЯзык = ДанныеПроекта["mainLang"];
Версия = ДанныеПроекта["version"];
Языки = ДанныеПроекта["additionalLangs"];
КаталогСловарей = ДанныеПроекта["dictionariesSrc"];
КаталогWorkflow = ДанныеПроекта["workflowsSrc"];
КаталогJenkins = ДанныеПроекта["jenkinsSrc"];
КаталогПараметровЛок = ДанныеПроекта["locVarsSrc"];
КаталогДополнений = ДанныеПроекта["paramsExamplesSrc"];
ОсновнойПутьИсходников = Корень + ОсновнойЯзык + "/";
ПутьПакета = ОсновнойПутьИсходников + КаталогПакета;
ПутьPackagedef = ПутьПакета + "packagedef";
// Замены для OneScript
СоответствиеЗамен = Новый Соответствие();
СоответствиеЗамен.Вставить("// #Использовать" , "#Использовать");
СоответствиеЗамен.Вставить("//#Использовать" , "#Использовать");
СоответствиеЗамен.Вставить("УстановитьБезопасныйРежим(Истина);" , "");
СоответствиеЗамен.Вставить("УстановитьБезопасныйРежим(Ложь);" , "");
СоответствиеЗамен.Вставить("// !OInt " , "");
СоответствиеЗамен.Вставить("#КонецЕсли" , "// #КонецЕсли");
СоответствиеЗамен.Вставить("#Если" , "// #Если");
// Файлы перевода
ФайлыРазбораСловаря = ОпределитьНаборФайловДляСловаря();
ФайлыПеревода = ОпределитьНаборФайловПеревода();
// Переводы имен файлов
СоответствиеНесовпадающихИмен = Новый Соответствие();
СоответствиеНесовпадающихИмен.Вставить("OPI_Инструменты" , "OPI_Tools");
СоответствиеНесовпадающихИмен.Вставить("OPI_Криптография" , "OPI_Cryptography");
СоответствиеНесовпадающихИмен.Вставить("OPI_HTTPКлиент" , "OPI_HTTPClient");
СоответствиеНесовпадающихИмен.Вставить("OPI_Компоненты" , "OPI_AddIns");
СоответствиеНесовпадающихИмен.Вставить("OPI_ЗапросыHTTP" , "OPI_HTTPRequests");
СоответствиеНесовпадающихИмен.Вставить("OPI_ЗапросыSQL" , "OPI_SQLQueries");
СоответствиеНесовпадающихИмен.Вставить("OPI_ПолучениеДанныхТестов", "OPI_TestDataRetrieval");
СоответствиеНесовпадающихИмен.Вставить("OPI_ПреобразованиеТипов" , "OPI_TypeConversion");
КонецПроцедуры
Процедура ОсновнаяОбработка() Экспорт
СоответствиеМодулей = МетодыКонвертации.ПолучитьСопоставлениеФайлов(ОсновнойПутьИсходников);
Сообщить("Обновление номеров версий");
МетодыВерсионирования.ОбновитьНомераВерсий(ПутьPackagedef, Версия);
Сообщить("Обновление libconfig");
МетодыВерсионирования.ОбновитьLibConfig(СоответствиеМодулей, ПутьПакета, СоответствиеНесовпадающихИмен);
Сообщить("Конвертация 1С в OS");
МетодыКонвертации.ПортироватьНабор(СоответствиеМодулей, СоответствиеЗамен);
ЛокальныеПараметры = НайтиФайлы(КаталогПараметровЛок, "*.json");
Сообщить("Актуализация словарей");
ЕстьНовыеСлова = МетодыСловарей.СоздатьНаборСловарей(ФайлыРазбораСловаря, Языки, КаталогСловарей);
Если Не ЕстьНовыеСлова Тогда
Сообщить("Перевод кодовой базы");
МетодыПеревода.ПеревестиПроект(КаталогСловарей, Корень, ОсновнойЯзык, Языки, ФайлыПеревода);
Сообщить("Форматирование кода");
ФайлыФорматирования = ОпределитьНаборФайловФорматирования();
МетодыФорматирования.ОтформатироватьНабор(ФайлыФорматирования);
Сообщить("Создание примеров кода для документации");
Для Каждого ФайлПараметров Из ЛокальныеПараметры Цикл
ТекущиеПараметры = Инструменты.ПрочитатьФайлJSON(ФайлПараметров.ПолноеИмя);
МодульТестов = ТекущиеПараметры["testsModulePath"];
КаталогПримеров = ТекущиеПараметры["codeExamplesSrc"];
КаталогЗначенийТестов = ТекущиеПараметры["testValuesSrc"];
ИмяОбласти = ТекущиеПараметры["testsRegionName"];
МетодыПримеровКода.ПолучитьПримерыКодаДокументации(МодульТестов
, КаталогПримеров
, КаталогЗначенийТестов
, ИмяОбласти);
КонецЦикла;
Языки.Добавить(ОсновнойЯзык);
Сообщить("Формирование CLI версии");
МетодыCLI.СформироватьCLI(Корень, Языки, КаталогДополнений);
Сообщить("Формирование jenkinsfile тестирования");
МетодыФормированияТестовJenkins.СоздатьНаборWorkflow(Языки, КаталогПараметровЛок, КаталогJenkins);
Сообщить("Создание дублеров в модулях");
МетодыДобавленияДублеров.ДобавитьДублеры(Языки, ПутьПакета, СоответствиеНесовпадающихИмен);
Сообщить("Создание списка библиотек");
МетодыКаталогаAPI.СформироватьКаталог(ФайлыФорматирования);
Иначе
Сообщить("В словарях есть новые слова без перевода. Перевод и создание CLI не выполнено!");
ЗавершитьРаботу(111);
КонецЕсли;
Сообщить("Обработка завершена!");
КонецПроцедуры
Функция ОпределитьНаборФайловДляСловаря()
ВсеФайлы = НайтиФайлы(ОсновнойПутьИсходников, "*", Истина);
МассивФайлов = Новый Массив;
МассивИсключаемыхРасширений = Новый Массив;
МассивИсключаемыхРасширений.Добавить(".bin");
МассивИсключаемыхРасширений.Добавить(".addin");
МассивИсключаемыхРасширений.Добавить(".dll");
МассивИсключаемыхРасширений.Добавить(".so");
МассивИсключаемыхРасширений.Добавить(".exe");
МассивИсключаемыхРасширений.Добавить(".zip");
Для Каждого ФайлПроекта Из ВсеФайлы Цикл
Признак =
СтрНайти(ФайлПроекта.ПолноеИмя, "cli\data\Classes\internal\Classes") = 0
И СтрНайти(ФайлПроекта.ПолноеИмя, "cli/data/Classes/internal/Classes") = 0
И Не ФайлПроекта.ЭтоКаталог();
Для Каждого Расширение Из МассивИсключаемыхРасширений Цикл
Если ФайлПроекта.Расширение = Расширение Тогда
Признак = Ложь;
Прервать;
КонецЕсли;
КонецЦикла;
Если Признак Тогда
МассивФайлов.Добавить(ФайлПроекта);
КонецЕсли;
КонецЦикла;
Возврат МассивФайлов;
КонецФункции
Функция ОпределитьНаборФайловФорматирования()
// Наборы файлов
ВсеФайлы = НайтиФайлы(Корень, "*", Истина);
МассивФайлов = Новый Массив;
Для Каждого ФайлПроекта Из ВсеФайлы Цикл
Признак =
(ФайлПроекта.Расширение = ".os"
Или ФайлПроекта.Расширение = ".bsl")
И СтрНайти(ФайлПроекта.ПолноеИмя, "cli/") = 0
И СтрНайти(ФайлПроекта.ПолноеИмя, "cli\") = 0;
Если Признак Тогда
МассивФайлов.Добавить(ФайлПроекта);
КонецЕсли;
КонецЦикла;
Возврат МассивФайлов;
КонецФункции
Функция ОпределитьНаборФайловПеревода()
// Наборы файлов
ВсеФайлы = НайтиФайлы(ОсновнойПутьИсходников, "*", Истина);
МассивФайлов = Новый Массив;
Для Каждого ФайлПроекта Из ВсеФайлы Цикл
Признак = СтрНайти(ФайлПроекта.ПолноеИмя, "cli") = 0;
Если Признак Тогда
МассивФайлов.Добавить(ФайлПроекта);
КонецЕсли;
КонецЦикла;
Возврат МассивФайлов;
КонецФункции
ПриСозданииОбъекта();
ОсновнаяОбработка();
#Использовать "./internal"
#Использовать "./internal/Modules/internal"
Перем ПутьPackagedef;
Перем ОсновнойПутьИсходников;
Перем СоответствиеЗамен;
Перем ПутьПакета;
Перем Версия;
Перем Языки;
Перем КаталогСловарей;
Перем ФайлыПеревода;
Перем ФайлыРазбораСловаря;
Перем ФайлыФорматирования;
Перем Корень;
Перем ОсновнойЯзык;
Перем КаталогWorkflow;
Перем КаталогJenkins;
Перем КаталогПараметровЛок;
Перем КаталогДополнений;
Перем ФайлПроверкиНабораТестов;
Перем СоответствиеНесовпадающихИмен;
Процедура ПриСозданииОбъекта()
ДанныеПроекта = ОбщиеМетоды.ПолучитьДанныеПроекта();
// Основные
Корень = ДанныеПроекта["root"];
КаталогПакета = ДанныеПроекта["packageSrc"];
ОсновнойЯзык = ДанныеПроекта["mainLang"];
Версия = ДанныеПроекта["version"];
Языки = ДанныеПроекта["additionalLangs"];
КаталогСловарей = ДанныеПроекта["dictionariesSrc"];
КаталогWorkflow = ДанныеПроекта["workflowsSrc"];
КаталогJenkins = ДанныеПроекта["jenkinsSrc"];
КаталогПараметровЛок = ДанныеПроекта["locVarsSrc"];
КаталогДополнений = ДанныеПроекта["paramsExamplesSrc"];
ОсновнойПутьИсходников = Корень + ОсновнойЯзык + "/";
ПутьПакета = ОсновнойПутьИсходников + КаталогПакета;
ПутьPackagedef = ПутьПакета + "packagedef";
// Замены для OneScript
СоответствиеЗамен = Новый Соответствие();
СоответствиеЗамен.Вставить("// #Использовать" , "#Использовать");
СоответствиеЗамен.Вставить("//#Использовать" , "#Использовать");
СоответствиеЗамен.Вставить("УстановитьБезопасныйРежим(Истина);" , "");
СоответствиеЗамен.Вставить("УстановитьБезопасныйРежим(Ложь);" , "");
СоответствиеЗамен.Вставить("// !OInt " , "");
СоответствиеЗамен.Вставить("#КонецЕсли" , "// #КонецЕсли");
СоответствиеЗамен.Вставить("#Если" , "// #Если");
// Файлы перевода
ФайлыРазбораСловаря = ОпределитьНаборФайловДляСловаря();
ФайлыПеревода = ОпределитьНаборФайловПеревода();
// Переводы имен файлов
СоответствиеНесовпадающихИмен = Новый Соответствие();
СоответствиеНесовпадающихИмен.Вставить("OPI_Инструменты" , "OPI_Tools");
СоответствиеНесовпадающихИмен.Вставить("OPI_Криптография" , "OPI_Cryptography");
СоответствиеНесовпадающихИмен.Вставить("OPI_HTTPКлиент" , "OPI_HTTPClient");
СоответствиеНесовпадающихИмен.Вставить("OPI_Компоненты" , "OPI_AddIns");
СоответствиеНесовпадающихИмен.Вставить("OPI_ЗапросыHTTP" , "OPI_HTTPRequests");
СоответствиеНесовпадающихИмен.Вставить("OPI_ЗапросыSQL" , "OPI_SQLQueries");
СоответствиеНесовпадающихИмен.Вставить("OPI_ПолучениеДанныхТестов", "OPI_TestDataRetrieval");
СоответствиеНесовпадающихИмен.Вставить("OPI_ПреобразованиеТипов" , "OPI_TypeConversion");
КонецПроцедуры
Процедура ОсновнаяОбработка() Экспорт
СоответствиеМодулей = МетодыКонвертации.ПолучитьСопоставлениеФайлов(ОсновнойПутьИсходников);
Сообщить("Обновление номеров версий");
МетодыВерсионирования.ОбновитьНомераВерсий(ПутьPackagedef, Версия);
Сообщить("Обновление libconfig");
МетодыВерсионирования.ОбновитьLibConfig(СоответствиеМодулей, ПутьПакета, СоответствиеНесовпадающихИмен);
Сообщить("Конвертация 1С в OS");
МетодыКонвертации.ПортироватьНабор(СоответствиеМодулей, СоответствиеЗамен);
ЛокальныеПараметры = НайтиФайлы(КаталогПараметровЛок, "*.json");
Сообщить("Актуализация словарей");
ЕстьНовыеСлова = МетодыСловарей.СоздатьНаборСловарей(ФайлыРазбораСловаря, Языки, КаталогСловарей);
Если Не ЕстьНовыеСлова Тогда
Сообщить("Перевод кодовой базы");
МетодыПеревода.ПеревестиПроект(КаталогСловарей, Корень, ОсновнойЯзык, Языки, ФайлыПеревода);
Сообщить("Форматирование кода");
ФайлыФорматирования = ОпределитьНаборФайловФорматирования();
МетодыФорматирования.ОтформатироватьНабор(ФайлыФорматирования);
Сообщить("Создание примеров кода для документации");
Для Каждого ФайлПараметров Из ЛокальныеПараметры Цикл
ТекущиеПараметры = Инструменты.ПрочитатьФайлJSON(ФайлПараметров.ПолноеИмя);
МодульТестов = ТекущиеПараметры["testsModulePath"];
КаталогПримеров = ТекущиеПараметры["codeExamplesSrc"];
КаталогЗначенийТестов = ТекущиеПараметры["testValuesSrc"];
ИмяОбласти = ТекущиеПараметры["testsRegionName"];
МетодыПримеровКода.ПолучитьПримерыКодаДокументации(МодульТестов
, КаталогПримеров
, КаталогЗначенийТестов
, ИмяОбласти);
КонецЦикла;
Языки.Добавить(ОсновнойЯзык);
Сообщить("Формирование CLI версии");
МетодыCLI.СформироватьCLI(Корень, Языки, КаталогДополнений);
Сообщить("Формирование jenkinsfile тестирования");
МетодыФормированияТестовJenkins.СоздатьНаборWorkflow(Языки, КаталогПараметровЛок, КаталогJenkins);
Сообщить("Создание дублеров в модулях");
МетодыДобавленияДублеров.ДобавитьДублеры(Языки, ПутьПакета, СоответствиеНесовпадающихИмен);
Сообщить("Создание списка библиотек");
МетодыКаталогаAPI.СформироватьКаталог(ФайлыФорматирования);
Иначе
Сообщить("В словарях есть новые слова без перевода. Перевод и создание CLI не выполнено!");
ЗавершитьРаботу(111);
КонецЕсли;
Сообщить("Обработка завершена!");
КонецПроцедуры
Функция ОпределитьНаборФайловДляСловаря()
ВсеФайлы = НайтиФайлы(ОсновнойПутьИсходников, "*", Истина);
МассивФайлов = Новый Массив;
МассивИсключаемыхРасширений = Новый Массив;
МассивИсключаемыхРасширений.Добавить(".bin");
МассивИсключаемыхРасширений.Добавить(".addin");
МассивИсключаемыхРасширений.Добавить(".dll");
МассивИсключаемыхРасширений.Добавить(".so");
МассивИсключаемыхРасширений.Добавить(".exe");
МассивИсключаемыхРасширений.Добавить(".zip");
Для Каждого ФайлПроекта Из ВсеФайлы Цикл
Признак =
СтрНайти(ФайлПроекта.ПолноеИмя, "cli\data\Classes\internal\Classes") = 0
И СтрНайти(ФайлПроекта.ПолноеИмя, "cli/data/Classes/internal/Classes") = 0
И Не ФайлПроекта.ЭтоКаталог();
Для Каждого Расширение Из МассивИсключаемыхРасширений Цикл
Если ФайлПроекта.Расширение = Расширение Тогда
Признак = Ложь;
Прервать;
КонецЕсли;
КонецЦикла;
Если Признак Тогда
МассивФайлов.Добавить(ФайлПроекта);
КонецЕсли;
КонецЦикла;
Возврат МассивФайлов;
КонецФункции
Функция ОпределитьНаборФайловФорматирования()
// Наборы файлов
ВсеФайлы = НайтиФайлы(Корень, "*", Истина);
МассивФайлов = Новый Массив;
Для Каждого ФайлПроекта Из ВсеФайлы Цикл
Признак =
(ФайлПроекта.Расширение = ".os"
Или ФайлПроекта.Расширение = ".bsl")
И СтрНайти(ФайлПроекта.ПолноеИмя, "cli/") = 0
И СтрНайти(ФайлПроекта.ПолноеИмя, "cli\") = 0;
Если Признак Тогда
МассивФайлов.Добавить(ФайлПроекта);
КонецЕсли;
КонецЦикла;
Возврат МассивФайлов;
КонецФункции
Функция ОпределитьНаборФайловПеревода()
// Наборы файлов
ВсеФайлы = НайтиФайлы(ОсновнойПутьИсходников, "*", Истина);
МассивФайлов = Новый Массив;
Для Каждого ФайлПроекта Из ВсеФайлы Цикл
Признак = СтрНайти(ФайлПроекта.ПолноеИмя, "cli") = 0;
Если Признак Тогда
МассивФайлов.Добавить(ФайлПроекта);
КонецЕсли;
КонецЦикла;
Возврат МассивФайлов;
КонецФункции
ПриСозданииОбъекта();
ОсновнаяОбработка();
Vendored
+14 -14
View File
@@ -1,15 +1,15 @@
pipeline {
agent {
label 'windows'
}
stages {
stage('Release') {
steps {
powershell encoding: 'UTF-8', script:'Remove-Item -Path "./Melezh" -Recurse -Force'
bat 'oscript ./ci/os/releasemaker.os'
archiveArtifacts artifacts: '1.26.0/*'
}
}
}
pipeline {
agent {
label 'windows'
}
stages {
stage('Release') {
steps {
powershell encoding: 'UTF-8', script:'Remove-Item -Path "./Melezh" -Recurse -Force'
bat 'oscript ./ci/os/releasemaker.os'
archiveArtifacts artifacts: '1.26.0/*'
}
}
}
}
+3 -3
View File
@@ -1,3 +1,3 @@
module.exports = {
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
};
module.exports = {
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
};
+193 -193
View File
@@ -1,193 +1,193 @@
// @ts-check
// `@type` JSDoc annotations allow editor autocompletion and type checking
// (when paired with `@ts-check`).
// There are various equivalent ways to declare your Docusaurus config.
// See: https://docusaurus.io/docs/api/docusaurus-config
import { themes as prismThemes } from 'prism-react-renderer';
/** @type {import('@docusaurus/types').Config} */
const config = {
title: 'Открытый Пакет Интеграций',
tagline: 'Набор инструментов для интеграции с популярными API посредством CLI, 1C:Enterprise и OneScript',
favicon: 'img/favicon.ico',
// Set the production url of your site here
url: 'https://openintegrations.dev',
// Set the /<baseUrl>/ pathname under which your site is served
// For GitHub pages deployment, it is often '/<projectName>/'
baseUrl: '/',
// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't need these.
organizationName: 'Bayselonarrend', // Usually your GitHub org/user name.
projectName: 'OpenIntegrations', // Usually your repo name.
onBrokenLinks: 'throw',
onBrokenMarkdownLinks: 'warn',
// Even if you don't use internationalization, you can use this field to set
// useful metadata like html lang. For example, if your site is Chinese, you
// may want to replace "en" with "zh-Hans".
i18n: {
defaultLocale: 'ru',
locales: ['ru'],
},
presets: [
[
'classic',
/** @type {import('@docusaurus/preset-classic').Options} */
({
theme: {
customCss: './src/css/custom.css',
},
docs: {
sidebarPath: './docs/sidebars.js',
},
}),
],
],
plugins: [
['docusaurus-plugin-yandex-metrica', {
counterID: '97292922',
}],
[require.resolve('docusaurus-lunr-search'), {
languages: ['en', 'ru'] // language codes
}]],
themeConfig:
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
({
// Replace with your project's social card
docs: {
sidebar: {
autoCollapseCategories: true
}
},
metadata: [
{ name: 'description', content: 'Открытый пакет интеграций - набор инструментов для интеграции с некоторыми популярными API посредством CLI, 1C:Enterprise или OneScript' },
{ name: 'keywords', content: '1С, OneScript, библиотеки, расширение, CLI, 1С:Предприятие, обмен, http, сервисы, интеграция, Telegram, Bitrix24, CDEK, VK, VK Teams, Viber, Ozon, S3, Twitter, Notion, Яндекс Диск, Google Drive, Календарь Google, Google Таблицы, Slack, Airtable, Dropbox, Neocities, MySQL, SQLite, PostgreSQL, Ollama, TCP, RCON' },
{ name: 'og:title', content: 'Открытый Пакет Интеграций - библиотека интеграции для 1С и OneScript' },
{ name: 'og:description', content: 'Открытый пакет интеграций - набор инструментов для интеграции с некоторыми популярными API посредством CLI, 1C:Enterprise или OneScript' },
{ name: 'og:image', content: 'https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/refs/heads/main/media/preview.png' }, // Замените на ваше изображение
{ name: 'og:url', content: 'https://openintegrations.dev/' },
],
sitemap: {
changefreq: 'daily',
priority: 0.5,
},
customFields: {
yandexAdsBlock: `
<div id="yandex_rtb_R-A-12294791-1"></div>
<script>
window.yaContextCb.push(() => {
Ya.Context.AdvManager.render({
"blockId": "R-A-12294791-1",
"renderTo": "yandex_rtb_R-A-12294791-1",
"type": "feed"
})
})
</script>
`,
},
colorMode: {
defaultMode: 'light',
disableSwitch: true,
respectPrefersColorScheme: false,
},
navbar: {
title: 'Открытый пакет интеграций',
logo: {
alt: 'OPI',
src: 'img/logo.png',
},
items: [
{
type: 'docSidebar',
sidebarId: 'docs',
position: 'left',
label: 'Описания методов',
},
{
type: 'docSidebar',
sidebarId: 'addonsSidebar',
position: 'left',
label: 'Аддоны',
},
{
to: 'https://boosty.to/bayselonarrend',
label: 'Поддержать проект',
position: 'right',
className: 'navbar-boosty-link', // Класс для кастомизации
'aria-label': 'Boosty',
},
{
to: 'https://github.com/Bayselonarrend/OpenIntegrations',
label: 'GitHub',
position: 'right',
className: 'navbar-github-link', // Класс для кастомизации
'aria-label': 'GitHub repository',
},
{
type: 'dropdown',
label: 'Translation',
position: 'right',
items: [
{
label: 'English',
to: 'https://en.openintegrations.dev',
}
// ... more items
],
},
],
},
footer: {
style: 'light',
links: [
{
title: 'Документация',
items: [
{
label: 'Описания методов',
to: '/docs/Instructions/Start',
},
],
},
{
title: 'Ресурсы',
items: [
{
label: 'GitHub',
href: 'https://github.com/Bayselonarrend/OpenIntegrations',
},
],
},
],
copyright: `${new Date().getFullYear()} OpenItegrations by Bayselonarrend`,
},
prism: {
theme: prismThemes.github,
darkTheme: prismThemes.github,
additionalLanguages: ['powershell', 'json', 'bsl', 'batch', 'bash']
},
}),
};
export default config
// @ts-check
// `@type` JSDoc annotations allow editor autocompletion and type checking
// (when paired with `@ts-check`).
// There are various equivalent ways to declare your Docusaurus config.
// See: https://docusaurus.io/docs/api/docusaurus-config
import { themes as prismThemes } from 'prism-react-renderer';
/** @type {import('@docusaurus/types').Config} */
const config = {
title: 'Открытый Пакет Интеграций',
tagline: 'Набор инструментов для интеграции с популярными API посредством CLI, 1C:Enterprise и OneScript',
favicon: 'img/favicon.ico',
// Set the production url of your site here
url: 'https://openintegrations.dev',
// Set the /<baseUrl>/ pathname under which your site is served
// For GitHub pages deployment, it is often '/<projectName>/'
baseUrl: '/',
// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't need these.
organizationName: 'Bayselonarrend', // Usually your GitHub org/user name.
projectName: 'OpenIntegrations', // Usually your repo name.
onBrokenLinks: 'throw',
onBrokenMarkdownLinks: 'warn',
// Even if you don't use internationalization, you can use this field to set
// useful metadata like html lang. For example, if your site is Chinese, you
// may want to replace "en" with "zh-Hans".
i18n: {
defaultLocale: 'ru',
locales: ['ru'],
},
presets: [
[
'classic',
/** @type {import('@docusaurus/preset-classic').Options} */
({
theme: {
customCss: './src/css/custom.css',
},
docs: {
sidebarPath: './docs/sidebars.js',
},
}),
],
],
plugins: [
['docusaurus-plugin-yandex-metrica', {
counterID: '97292922',
}],
[require.resolve('docusaurus-lunr-search'), {
languages: ['en', 'ru'] // language codes
}]],
themeConfig:
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
({
// Replace with your project's social card
docs: {
sidebar: {
autoCollapseCategories: true
}
},
metadata: [
{ name: 'description', content: 'Открытый пакет интеграций - набор инструментов для интеграции с некоторыми популярными API посредством CLI, 1C:Enterprise или OneScript' },
{ name: 'keywords', content: '1С, OneScript, библиотеки, расширение, CLI, 1С:Предприятие, обмен, http, сервисы, интеграция, Telegram, Bitrix24, CDEK, VK, VK Teams, Viber, Ozon, S3, Twitter, Notion, Яндекс Диск, Google Drive, Календарь Google, Google Таблицы, Slack, Airtable, Dropbox, Neocities, MySQL, SQLite, PostgreSQL, Ollama, TCP, RCON' },
{ name: 'og:title', content: 'Открытый Пакет Интеграций - библиотека интеграции для 1С и OneScript' },
{ name: 'og:description', content: 'Открытый пакет интеграций - набор инструментов для интеграции с некоторыми популярными API посредством CLI, 1C:Enterprise или OneScript' },
{ name: 'og:image', content: 'https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/refs/heads/main/media/preview.png' }, // Замените на ваше изображение
{ name: 'og:url', content: 'https://openintegrations.dev/' },
],
sitemap: {
changefreq: 'daily',
priority: 0.5,
},
customFields: {
yandexAdsBlock: `
<div id="yandex_rtb_R-A-12294791-1"></div>
<script>
window.yaContextCb.push(() => {
Ya.Context.AdvManager.render({
"blockId": "R-A-12294791-1",
"renderTo": "yandex_rtb_R-A-12294791-1",
"type": "feed"
})
})
</script>
`,
},
colorMode: {
defaultMode: 'light',
disableSwitch: true,
respectPrefersColorScheme: false,
},
navbar: {
title: 'Открытый пакет интеграций',
logo: {
alt: 'OPI',
src: 'img/logo.png',
},
items: [
{
type: 'docSidebar',
sidebarId: 'docs',
position: 'left',
label: 'Описания методов',
},
{
type: 'docSidebar',
sidebarId: 'addonsSidebar',
position: 'left',
label: 'Аддоны',
},
{
to: 'https://boosty.to/bayselonarrend',
label: 'Поддержать проект',
position: 'right',
className: 'navbar-boosty-link', // Класс для кастомизации
'aria-label': 'Boosty',
},
{
to: 'https://github.com/Bayselonarrend/OpenIntegrations',
label: 'GitHub',
position: 'right',
className: 'navbar-github-link', // Класс для кастомизации
'aria-label': 'GitHub repository',
},
{
type: 'dropdown',
label: 'Translation',
position: 'right',
items: [
{
label: 'English',
to: 'https://en.openintegrations.dev',
}
// ... more items
],
},
],
},
footer: {
style: 'light',
links: [
{
title: 'Документация',
items: [
{
label: 'Описания методов',
to: '/docs/Instructions/Start',
},
],
},
{
title: 'Ресурсы',
items: [
{
label: 'GitHub',
href: 'https://github.com/Bayselonarrend/OpenIntegrations',
},
],
},
],
copyright: `${new Date().getFullYear()} OpenItegrations by Bayselonarrend`,
},
prism: {
theme: prismThemes.github,
darkTheme: prismThemes.github,
additionalLanguages: ['powershell', 'json', 'bsl', 'batch', 'bash']
},
}),
};
export default config
+17418 -17418
View File
File diff suppressed because it is too large Load Diff
+49 -49
View File
@@ -1,49 +1,49 @@
{
"name": "OpenIntegrations",
"version": "0.0.0",
"private": true,
"scripts": {
"docusaurus": "docusaurus",
"start": "docusaurus start",
"build": "docusaurus build",
"swizzle": "docusaurus swizzle",
"deploy": "docusaurus deploy",
"clear": "docusaurus clear",
"serve": "docusaurus serve",
"write-translations": "docusaurus write-translations",
"write-heading-ids": "docusaurus write-heading-ids"
},
"dependencies": {
"@docusaurus/core": "^3.0.1",
"@docusaurus/preset-classic": "3.0.1",
"@mdx-js/react": "^3.0.0",
"clsx": "^2.0.0",
"docusaurus-lunr-search": "^3.3.2",
"docusaurus-plugin-yandex-metrica": "^1.2.1",
"prism-react-renderer": "^2.3.0",
"react": "^18.0.0",
"react-dom": "^18.0.0",
"react-tsparticles": "^2.12.2",
"three": "^0.177.0",
"tsparticles-slim": "^2.12.0"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.0.1",
"@docusaurus/types": "3.0.1"
},
"browserslist": {
"production": [
">0.5%",
"not dead",
"not op_mini all"
],
"development": [
"last 3 chrome version",
"last 3 firefox version",
"last 5 safari version"
]
},
"engines": {
"node": ">=18.0"
}
}
{
"name": "OpenIntegrations",
"version": "0.0.0",
"private": true,
"scripts": {
"docusaurus": "docusaurus",
"start": "docusaurus start",
"build": "docusaurus build",
"swizzle": "docusaurus swizzle",
"deploy": "docusaurus deploy",
"clear": "docusaurus clear",
"serve": "docusaurus serve",
"write-translations": "docusaurus write-translations",
"write-heading-ids": "docusaurus write-heading-ids"
},
"dependencies": {
"@docusaurus/core": "^3.0.1",
"@docusaurus/preset-classic": "3.0.1",
"@mdx-js/react": "^3.0.0",
"clsx": "^2.0.0",
"docusaurus-lunr-search": "^3.3.2",
"docusaurus-plugin-yandex-metrica": "^1.2.1",
"prism-react-renderer": "^2.3.0",
"react": "^18.0.0",
"react-dom": "^18.0.0",
"react-tsparticles": "^2.12.2",
"three": "^0.177.0",
"tsparticles-slim": "^2.12.0"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.0.1",
"@docusaurus/types": "3.0.1"
},
"browserslist": {
"production": [
">0.5%",
"not dead",
"not op_mini all"
],
"development": [
"last 3 chrome version",
"last 3 firefox version",
"last 5 safari version"
]
},
"engines": {
"node": ">=18.0"
}
}
+67 -67
View File
@@ -1,68 +1,68 @@
import React from 'react';
import clsx from 'clsx';
import styles from './styles.module.css';
import Link from '@docusaurus/Link'; // Импортируем компонент Link из Docusaurus
const FeatureItem = ({ imageUrl, title, description }) => {
return (
<div className={clsx(styles.featureItem,)}>
<div className={styles.featureImageWrapper}>
<img src={imageUrl} alt={title} className={styles.featureImg} />
</div>
<div className={styles.featureContent}>
<h3 className={styles.featureTitle}>{title}</h3>
<div className={styles.featureDesc}>
{typeof description === 'string' ? <p>{description}</p> : description}
</div>
</div>
</div>
);
};
const AlternatingFeatures = () => {
const features = [
{
title: "Сотни методов для десятков сервисов",
description: (
<p>
ОПИ состоит из большого набора разнообразных методов для множества известных API и технологий, будь то облачные Telegram, Bitrix24 и Google Drive, или же локальные S3, MySQL и PostgreSQL. Ознакомится с полным списком доступных сервисов можно на
<Link to="/docs/Instructions/Start" > вводной странице документации</Link>
</p>
),
imageUrl: "/img/f1.png"
},
{
title: "Три платформы - одно решение",
description:(
<p>
Открытый пакет интеграций предоставляет единый набор функций сразу в трех вариантах: как расширение для 1С:Предприятие 8, как пакет для OneScript и как полноценное приложение для командной строки. Это позволяет удобно использовать его методы для решения широкого спектра задач, выбирая форму поставки в зависимости от конкретного сценария работы. Заранее собранные файлы для каждого из этих вариантов всегда можно найти в
<Link to="https://github.com/Bayselonarrend/OpenIntegrations/releases"> релизах ОПИ на GitHub </Link>
- остается только скачать и запустить!
</p>
),
imageUrl: "/img/f2.png"
},
{
title: "Свобода открытого кода",
description: "Проект имеет открытый исходный код и распространяется под лицензией MIT. Это означает, что вы можете использовать его в любых своих проектах, даже если они коммерческие и имеют закрытые исходники. Вся кодовая база проекта доступна публично в репозитории на GitHub и доступна для использования, а также полного или частичного изменения. Единственное условие - сохранение текста лицензии, который находится в каждом из файлов с кодом",
imageUrl: "/img/f3.png"
},
];
return (
<section className={styles.features}>
<div className="container">
{features.map((feature, idx) => (
<FeatureItem
key={idx}
{...feature}
isReversed={idx % 2 !== 0} // Чередуем порядок
/>
))}
</div>
</section>
);
};
import React from 'react';
import clsx from 'clsx';
import styles from './styles.module.css';
import Link from '@docusaurus/Link'; // Импортируем компонент Link из Docusaurus
const FeatureItem = ({ imageUrl, title, description }) => {
return (
<div className={clsx(styles.featureItem,)}>
<div className={styles.featureImageWrapper}>
<img src={imageUrl} alt={title} className={styles.featureImg} />
</div>
<div className={styles.featureContent}>
<h3 className={styles.featureTitle}>{title}</h3>
<div className={styles.featureDesc}>
{typeof description === 'string' ? <p>{description}</p> : description}
</div>
</div>
</div>
);
};
const AlternatingFeatures = () => {
const features = [
{
title: "Сотни методов для десятков сервисов",
description: (
<p>
ОПИ состоит из большого набора разнообразных методов для множества известных API и технологий, будь то облачные Telegram, Bitrix24 и Google Drive, или же локальные S3, MySQL и PostgreSQL. Ознакомится с полным списком доступных сервисов можно на
<Link to="/docs/Instructions/Start" > вводной странице документации</Link>
</p>
),
imageUrl: "/img/f1.png"
},
{
title: "Три платформы - одно решение",
description:(
<p>
Открытый пакет интеграций предоставляет единый набор функций сразу в трех вариантах: как расширение для 1С:Предприятие 8, как пакет для OneScript и как полноценное приложение для командной строки. Это позволяет удобно использовать его методы для решения широкого спектра задач, выбирая форму поставки в зависимости от конкретного сценария работы. Заранее собранные файлы для каждого из этих вариантов всегда можно найти в
<Link to="https://github.com/Bayselonarrend/OpenIntegrations/releases"> релизах ОПИ на GitHub </Link>
- остается только скачать и запустить!
</p>
),
imageUrl: "/img/f2.png"
},
{
title: "Свобода открытого кода",
description: "Проект имеет открытый исходный код и распространяется под лицензией MIT. Это означает, что вы можете использовать его в любых своих проектах, даже если они коммерческие и имеют закрытые исходники. Вся кодовая база проекта доступна публично в репозитории на GitHub и доступна для использования, а также полного или частичного изменения. Единственное условие - сохранение текста лицензии, который находится в каждом из файлов с кодом",
imageUrl: "/img/f3.png"
},
];
return (
<section className={styles.features}>
<div className="container">
{features.map((feature, idx) => (
<FeatureItem
key={idx}
{...feature}
isReversed={idx % 2 !== 0} // Чередуем порядок
/>
))}
</div>
</section>
);
};
export default AlternatingFeatures;
@@ -1,72 +1,72 @@
.features {
padding: 4rem 0;
}
.featureItem {
display: flex;
align-items: center;
margin-bottom: 4rem;
gap: 2rem;
}
.featureImage {
padding: 1rem;
}
.featureImageWrapper {
flex: 1;
min-width: 200px;
min-height: 200px;
display: flex;
align-items: center; /* Выравнивание по вертикали */
justify-content: center; /* Выравнивание по горизонтали */
overflow: hidden;
}
.featureImg {
width: 100%;
height: 100%;
object-fit: cover; /* Сохраняет пропорции, обрезая если нужно */
transition: transform 0.3s ease;
}
.featureImg:hover {
transform: scale(1.02);
}
.featureContent {
padding: 1rem;
}
.featureTitle {
font-size: 1.8rem;
margin-bottom: 1.5rem;
}
.featureDesc {
font-size: 1.1rem;
line-height: 1.6;
}
/* Обратный порядок для четных элементов */
.reversed {
flex-direction: row-reverse;
}
@media (max-width: 996px) {
.featureItem,
.reversed {
flex-direction: column;
}
.featureImage,
.featureContent {
width: 100%;
max-width: 600px;
margin: 0 auto;
}
.featureTitle {
margin-top: 1.5rem;
}
.features {
padding: 4rem 0;
}
.featureItem {
display: flex;
align-items: center;
margin-bottom: 4rem;
gap: 2rem;
}
.featureImage {
padding: 1rem;
}
.featureImageWrapper {
flex: 1;
min-width: 200px;
min-height: 200px;
display: flex;
align-items: center; /* Выравнивание по вертикали */
justify-content: center; /* Выравнивание по горизонтали */
overflow: hidden;
}
.featureImg {
width: 100%;
height: 100%;
object-fit: cover; /* Сохраняет пропорции, обрезая если нужно */
transition: transform 0.3s ease;
}
.featureImg:hover {
transform: scale(1.02);
}
.featureContent {
padding: 1rem;
}
.featureTitle {
font-size: 1.8rem;
margin-bottom: 1.5rem;
}
.featureDesc {
font-size: 1.1rem;
line-height: 1.6;
}
/* Обратный порядок для четных элементов */
.reversed {
flex-direction: row-reverse;
}
@media (max-width: 996px) {
.featureItem,
.reversed {
flex-direction: column;
}
.featureImage,
.featureContent {
width: 100%;
max-width: 600px;
margin: 0 auto;
}
.featureTitle {
margin-top: 1.5rem;
}
}
+61 -61
View File
@@ -1,61 +1,61 @@
import clsx from 'clsx';
import Heading from '@theme/Heading';
import styles from './styles.module.css';
const FeatureList = [
{
title: 'Простота и гибкость',
Svg: require('@site/static/img/tools.svg').default,
description: (
<>
Пакет содержит множество методов для работы с различными API. Эти методы не треубют глубокого погружения в тонкости работы, но и не ограничивают вас в возможности их модификации
</>
),
},
{
title: 'Лёгкость внедрения',
Svg: require('@site/static/img/delivery.svg').default,
description: (
<>
ОПИ легко интегрировать в любой проект: в виде проекта EDT, 1C-расширения или пакета OneScript. Для интеграции, независимой от конретных технологий, есть CLI версия под Windows и Linux
</>
),
},
{
title: 'Подробная документация',
Svg: require('@site/static/img/books.svg').default,
description: (
<>
У ОПИ есть подробная документация, а код структурирован и дополнен комментариями. Если же у вас все таки возникнут дополнительные вопросы, то вы всегда можете задать их в Issues на Github
</>
),
},
];
function Feature({ Svg, title, description }) {
return (
<div className={clsx('col col--4')}>
<div className="text--center">
<Svg className={styles.featureSvg} role="img" />
</div>
<div className="text--center padding-horiz--md">
<Heading as="h3">{title}</Heading>
<p>{description}</p>
</div>
</div>
);
}
export default function HomepageFeatures() {
return (
<section className={styles.features}>
<div className="container">
<div className="row">
{FeatureList.map((props, idx) => (
<Feature key={idx} {...props} />
))}
</div>
</div>
</section>
);
}
import clsx from 'clsx';
import Heading from '@theme/Heading';
import styles from './styles.module.css';
const FeatureList = [
{
title: 'Простота и гибкость',
Svg: require('@site/static/img/tools.svg').default,
description: (
<>
Пакет содержит множество методов для работы с различными API. Эти методы не треубют глубокого погружения в тонкости работы, но и не ограничивают вас в возможности их модификации
</>
),
},
{
title: 'Лёгкость внедрения',
Svg: require('@site/static/img/delivery.svg').default,
description: (
<>
ОПИ легко интегрировать в любой проект: в виде проекта EDT, 1C-расширения или пакета OneScript. Для интеграции, независимой от конретных технологий, есть CLI версия под Windows и Linux
</>
),
},
{
title: 'Подробная документация',
Svg: require('@site/static/img/books.svg').default,
description: (
<>
У ОПИ есть подробная документация, а код структурирован и дополнен комментариями. Если же у вас все таки возникнут дополнительные вопросы, то вы всегда можете задать их в Issues на Github
</>
),
},
];
function Feature({ Svg, title, description }) {
return (
<div className={clsx('col col--4')}>
<div className="text--center">
<Svg className={styles.featureSvg} role="img" />
</div>
<div className="text--center padding-horiz--md">
<Heading as="h3">{title}</Heading>
<p>{description}</p>
</div>
</div>
);
}
export default function HomepageFeatures() {
return (
<section className={styles.features}>
<div className="container">
<div className="row">
{FeatureList.map((props, idx) => (
<Feature key={idx} {...props} />
))}
</div>
</div>
</section>
);
}
@@ -1,59 +1,59 @@
marquee{
padding: auto;
}
.api{
margin-right: 300px;
}
.features {
display: flex;
align-items: center;
padding: 2rem 0;
width: 100%;
color: black;
margin-top: 23px;
}
.featureSvg {
height: 80px;
width: 80px;
}
.ico{
padding: 176px;
}
.hero__title{
font-size: 10px;
}
.container {
display: flex;
white-space: nowrap;
width: 100%;
height: clamp(3em, 10vw, 6em);
overflow: hidden;
font-family: sans-serif;
margin-top: 200px;
}
.looptext {
animation: loopText 27s infinite linear;
}
@keyframes loopText {
from {
transform: translateX(0);
}
to {
transform: translateX(-100%);
}
}
marquee{
padding: auto;
}
.api{
margin-right: 300px;
}
.features {
display: flex;
align-items: center;
padding: 2rem 0;
width: 100%;
color: black;
margin-top: 23px;
}
.featureSvg {
height: 80px;
width: 80px;
}
.ico{
padding: 176px;
}
.hero__title{
font-size: 10px;
}
.container {
display: flex;
white-space: nowrap;
width: 100%;
height: clamp(3em, 10vw, 6em);
overflow: hidden;
font-family: sans-serif;
margin-top: 200px;
}
.looptext {
animation: loopText 27s infinite linear;
}
@keyframes loopText {
from {
transform: translateX(0);
}
to {
transform: translateX(-100%);
}
}
+446 -446
View File
@@ -1,447 +1,447 @@
/**
* Any CSS included here will be global. The classic template
* bundles Infima by default. Infima is a CSS framework designed to
* work well for content-centric websites.
*/
/* You can override the default Infima variables here. */
:root {
--ifm-color-primary: #ffffff;
--ifm-color-primary-dark: #ffffff;
--ifm-color-primary-darker: #ffffff;
--ifm-color-primary-darkest: #ffffff;
--ifm-color-primary-light: #ffffff;
--ifm-color-primary-lighter: #ffffff;
--ifm-color-primary-lightest:#ffffff;
--ifm-code-font-size: 95%;
--docusaurus-highlighted-code-line-bg: #004943;
--ifm-tabs-color-active: #004943;
--ifm-pagination-nav-color-hover: black;
}
p{
font-weight: lighter;
}
h3,h2,h1{
font-weight: 400;
}
strong{
font-weight: 500;
}
@media (min-width: 996px) {
.main-wrapper,.navbar{
border: 1px solid #ddd;
border-radius: 12px; /* Более округлые формы */
font-size: 1rem;
color: #333;
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8); /* Легкий текстовый отблеск */
box-shadow:
inset 0 1px 3px rgba(255, 255, 255, 0.7), /* Мягкий внутренний свет */
0 4px 8px rgba(0, 0, 0, 0.1); /* Легкая внешняя тень */
transition: all 0.3s ease;
margin: 20px;
}
.main-wrapper{
margin-top: 0px;
padding: 20px;
padding-top: 5px;
}
}
.navbar-github-link, .navbar-boosty-link {
display: flex;
align-items: center; /* Вертикальное выравнивание */
text-decoration: none; /* Убираем подчеркивание */
color: inherit; /* Унаследовать цвет текста */
}
.navbar-github-link::before, .navbar-boosty-link::before {
content: '';
/* Замените на путь к вашему логотипу */
background-size: contain;
background-repeat: no-repeat;
width: 20px; /* Ширина логотипа */
height: 20px; /* Высота логотипа */
margin-right: 5px; /* Отступ между изображением и текстом */
}
/* Если хотите добавить эффект при наведении */
.navbar-github-link:hover, .navbar-boosty-link:hover {
opacity: 0.8; /* Легкая прозрачность при наведении */
}
.navbar-github-link::before{
background-image: url('./../../static/img/github-logo.svg');
}
.navbar-boosty-link::before{
background-image: url('./../../static/img/boosty-logo.svg');
}
.tipimage{
width: 64px;
height: 64px;
margin-right: 16px;
padding-top: 0px;
margin-top: 0px;
float: left;
vertical-align: top;
}
.addin{
padding-top: 3px;
padding-bottom: 3px;
}
.alert{
margin-top: 10px;
}
.hearthnstar{
margin-right: 12px;
margin-top: 5px;
}
.orangelink{
color: #E6A700;
}
.orangelink:hover{
color: #E6A700;
}
.footer{
background-color: white;
}
.hero{
background-color: transparent;
}
.heroBanner{
margin-top: 10px;
}
.menu__link{
font-weight: 350;
}
.menu__link--active, .menu__link--active:hover, .navbar__link--active {
color: black;
}
.table-of-contents__link{
color: grey;
font-weight: 400;
}
.table-of-contents__link:hover, .table-of-contents__link--active, .table-of-contents__link--active:hover{
color: black;
font-weight: 450;
}
.navbar__item:hover, .navbar__link:hover, .navbar__brand:hover, .navbar__title:hover{
color: #004943;
}
.navbar__item, .navbar__link, .navbar__brand, .navbar__title{
font-weight: 350;
}
a{
color: #004943e8;
font-weight: 500;
}
a:hover, .navbar__title:hover{
color: #004943;
}
.breadcrumbs__item--active .breadcrumbs__link {
background: #004943;
}
.navbar__title{
font-weight: 490;
}
li > a.menu__link {
justify-content: flex-start;
}
.Airtable a::before , .Telegram a::before, .VK a::before, .Viber a::before, .Twitter a::before,
.Notion a::before, .GoogleCalendar a::before, .GoogleDrive a::before, .GoogleSheets a::before,
.Slack a::before, .YandexDisk a::before, .Dropbox a::before, .Bitrix24 a::before, .Messenger a::before,
.Social a::before, .Database a::before, .Folder a::before, .Calendar a::before, .CRM a::before, .Commerce a::before,
.VKTeams a::before, .S3 a::before, .TCP a::before, .Ozon a::before, .Neocities a::before, .CDEK a::before, .Start a::before,
.Other a::before, .SQLite a::before, .PostgreSQL a::before, .GreenAPI a::before, .RCON a::before, .MySQL a::before, .MSSQL a::before, .AI a:before,
.Ollama a::before, .Exchange a::before, .HTTP a::before, .OpenAI a::before, .Addons a::before, .Melezh a::before, .CL a::before, .WebUI a::before,
.Info a::before {
padding-right: 0.7rem;
padding-top: 0.4rem;
}
.Airtable > div > a::before{
content: url(../../static/img/APIs/small/Airtable.png);
}
.Telegram > div > a::before{
content: url(../../static/img/APIs/small/Telegram.png);
}
.HTTP > div > a::before{
content: url(../../static/img/APIs/small/HTTP.png);
}
.VK > div > a::before{
content: url(../../static/img/APIs/small/VK.png);
}
.Viber > div > a::before{
content: url(../../static/img/APIs/small/Viber.png);
}
.Twitter > div > a::before{
content: url(../../static/img/APIs/small/Twitter.png);
}
.Notion > div > a::before{
content: url(../../static/img/APIs/small/Notion.png);
}
.GoogleCalendar > div > a::before{
content: url(../../static/img/APIs/small/GoogleCalendar.png);
}
.GoogleDrive > div > a::before{
content: url(../../static/img/APIs/small/GoogleDrive.png);
}
.GoogleSheets > div > a::before{
content: url(../../static/img/APIs/small/GoogleSheets.png);
}
.Slack > div > a::before{
content: url(../../static/img/APIs/small/Slack.png);
}
.YandexDisk > div > a::before{
content: url(../../static/img/APIs/small/YandexDisk.png);
}
.Dropbox > div > a::before{
content: url(../../static/img/APIs/small/Dropbox.png);
}
.Bitrix24 > div > a::before{
content: url(../../static/img/APIs/small/Bitrix24.png);
}
.VKTeams > div > a::before{
content: url(../../static/img/APIs/small/VKTeams.png);
}
.Ozon > div > a::before{
content: url(../../static/img/APIs/small/Ozon.png);
}
.Neocities > div > a::before{
content: url(../../static/img/APIs/small/Neocities.png);
}
.CDEK > div > a::before{
content: url(../../static/img/APIs/small/CDEK.png);
}
.S3 > div > a::before{
content: url(../../static/img/APIs/small/S3.png);
}
.TCP > div > a::before{
content: url(../../static/img/APIs/small/TCP.png);
}
.RCON > div > a::before{
content: url(../../static/img/APIs/small/RCON.png);
}
.MySQL > div > a::before{
content: url(../../static/img/APIs/small/MySQL.png);
}
.MSSQL > div > a::before{
content: url(../../static/img/APIs/small/MSSQL.png);
}
.SQLite > div > a::before{
content: url(../../static/img/APIs/small/SQLite.png);
}
.PostgreSQL > div > a::before{
content: url(../../static/img/APIs/small/PostgreSQL.png);
}
.GreenAPI > div > a::before{
content: url(../../static/img/APIs/small/GreenAPI.png);
}
.Ollama > div > a::before{
content: url(../../static/img/APIs/small/Ollama.png);
}
.OpenAI > div > a::before{
content: url(../../static/img/APIs/small/OpenAI.png);
}
.Messenger > div > a::before{
content: url(../../static/img/Categories/chat.png);
}
.Social > div > a::before{
content: url(../../static/img/Categories/social-media.png);
}
.Database > div > a::before{
content: url(../../static/img/Categories/database.png);
}
.Calendar > div > a::before{
content: url(../../static/img/Categories/calendar.png);
}
.CRM > div > a::before{
content: url(../../static/img/Categories/crm.png);
}
.Exchange > div > a::before{
content: url(../../static/img/Categories/network.png);
}
.Folder > div > a::before{
content: url(../../static/img/Categories/folder.png);
}
.Commerce > div > a::before{
content: url(../../static/img/Categories/e-commerce.png);
}
.Start > div > a::before{
content: url(../../static/img/Categories/welcome.png);
}
.Other > div > a::before{
content: url(../../static/img/Categories/other.png);
}
.AI > div > a::before{
content: url(../../static/img/Categories/ai.png);
}
.WebUI > div > a::before{
content: url(../../static/img/Categories/webui.png);
}
.CL > div > a::before{
content: url(../../static/img/Categories/cl.png);
}
.Info > div > a::before{
content: url(../../static/img/Categories/info.png);
}
.Addons > a::before{
content: url(../../static/img/Categories/addons.png);
}
.Melezh > a::before{
content: url(../../static/img/Categories/melezh.png);
}
.theme-code-block,.tabs-container{
border: 1px solid rgba(27, 31, 35, 0.15);
border-radius: 16px;
box-shadow: rgba(27, 31, 35, 0.04) 0 1px 0, rgba(255, 255, 255, 0.25) 0 1px 0 inset;
}
/* CSS */
.button {
appearance: none;
background-color: white;
border: 1px solid rgba(27, 31, 35, 0.15);
border-radius: 16px;
box-shadow: rgba(27, 31, 35, 0.04) 0 1px 0, rgba(255, 255, 255, 0.25) 0 1px 0 inset;
box-sizing: border-box;
color: #24292E;
cursor: pointer;
display: inline-block;
font-family: -apple-system, system-ui, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
font-size: 14px;
font-weight: 500;
line-height: 20px;
list-style: none;
padding: 6px 16px;
position: relative;
transition: background-color 0.2s cubic-bezier(0.3, 0, 0.5, 1);
user-select: none;
-webkit-user-select: none;
touch-action: manipulation;
vertical-align: middle;
white-space: nowrap;
word-wrap: break-word;
}
.button:hover {
background-color: #F3F4F6;
text-decoration: none;
transition-duration: 0.1s;
}
.button:disabled {
background-color: #FAFBFC;
border-color: rgba(27, 31, 35, 0.15);
color: #959DA5;
cursor: default;
}
.button:active {
background-color: #EDEFF2;
box-shadow: rgba(225, 228, 232, 0.2) 0 1px 0 inset;
transition: none 0s;
}
.button:focus {
outline: 1px transparent;
}
.button:before {
display: none;
}
.button:-webkit-details-marker {
display: none;
}
.wp_logo{
margin-right: 5px;
}
[class*='iconExternalLink_'] {
display: none;
/**
* Any CSS included here will be global. The classic template
* bundles Infima by default. Infima is a CSS framework designed to
* work well for content-centric websites.
*/
/* You can override the default Infima variables here. */
:root {
--ifm-color-primary: #ffffff;
--ifm-color-primary-dark: #ffffff;
--ifm-color-primary-darker: #ffffff;
--ifm-color-primary-darkest: #ffffff;
--ifm-color-primary-light: #ffffff;
--ifm-color-primary-lighter: #ffffff;
--ifm-color-primary-lightest:#ffffff;
--ifm-code-font-size: 95%;
--docusaurus-highlighted-code-line-bg: #004943;
--ifm-tabs-color-active: #004943;
--ifm-pagination-nav-color-hover: black;
}
p{
font-weight: lighter;
}
h3,h2,h1{
font-weight: 400;
}
strong{
font-weight: 500;
}
@media (min-width: 996px) {
.main-wrapper,.navbar{
border: 1px solid #ddd;
border-radius: 12px; /* Более округлые формы */
font-size: 1rem;
color: #333;
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8); /* Легкий текстовый отблеск */
box-shadow:
inset 0 1px 3px rgba(255, 255, 255, 0.7), /* Мягкий внутренний свет */
0 4px 8px rgba(0, 0, 0, 0.1); /* Легкая внешняя тень */
transition: all 0.3s ease;
margin: 20px;
}
.main-wrapper{
margin-top: 0px;
padding: 20px;
padding-top: 5px;
}
}
.navbar-github-link, .navbar-boosty-link {
display: flex;
align-items: center; /* Вертикальное выравнивание */
text-decoration: none; /* Убираем подчеркивание */
color: inherit; /* Унаследовать цвет текста */
}
.navbar-github-link::before, .navbar-boosty-link::before {
content: '';
/* Замените на путь к вашему логотипу */
background-size: contain;
background-repeat: no-repeat;
width: 20px; /* Ширина логотипа */
height: 20px; /* Высота логотипа */
margin-right: 5px; /* Отступ между изображением и текстом */
}
/* Если хотите добавить эффект при наведении */
.navbar-github-link:hover, .navbar-boosty-link:hover {
opacity: 0.8; /* Легкая прозрачность при наведении */
}
.navbar-github-link::before{
background-image: url('./../../static/img/github-logo.svg');
}
.navbar-boosty-link::before{
background-image: url('./../../static/img/boosty-logo.svg');
}
.tipimage{
width: 64px;
height: 64px;
margin-right: 16px;
padding-top: 0px;
margin-top: 0px;
float: left;
vertical-align: top;
}
.addin{
padding-top: 3px;
padding-bottom: 3px;
}
.alert{
margin-top: 10px;
}
.hearthnstar{
margin-right: 12px;
margin-top: 5px;
}
.orangelink{
color: #E6A700;
}
.orangelink:hover{
color: #E6A700;
}
.footer{
background-color: white;
}
.hero{
background-color: transparent;
}
.heroBanner{
margin-top: 10px;
}
.menu__link{
font-weight: 350;
}
.menu__link--active, .menu__link--active:hover, .navbar__link--active {
color: black;
}
.table-of-contents__link{
color: grey;
font-weight: 400;
}
.table-of-contents__link:hover, .table-of-contents__link--active, .table-of-contents__link--active:hover{
color: black;
font-weight: 450;
}
.navbar__item:hover, .navbar__link:hover, .navbar__brand:hover, .navbar__title:hover{
color: #004943;
}
.navbar__item, .navbar__link, .navbar__brand, .navbar__title{
font-weight: 350;
}
a{
color: #004943e8;
font-weight: 500;
}
a:hover, .navbar__title:hover{
color: #004943;
}
.breadcrumbs__item--active .breadcrumbs__link {
background: #004943;
}
.navbar__title{
font-weight: 490;
}
li > a.menu__link {
justify-content: flex-start;
}
.Airtable a::before , .Telegram a::before, .VK a::before, .Viber a::before, .Twitter a::before,
.Notion a::before, .GoogleCalendar a::before, .GoogleDrive a::before, .GoogleSheets a::before,
.Slack a::before, .YandexDisk a::before, .Dropbox a::before, .Bitrix24 a::before, .Messenger a::before,
.Social a::before, .Database a::before, .Folder a::before, .Calendar a::before, .CRM a::before, .Commerce a::before,
.VKTeams a::before, .S3 a::before, .TCP a::before, .Ozon a::before, .Neocities a::before, .CDEK a::before, .Start a::before,
.Other a::before, .SQLite a::before, .PostgreSQL a::before, .GreenAPI a::before, .RCON a::before, .MySQL a::before, .MSSQL a::before, .AI a:before,
.Ollama a::before, .Exchange a::before, .HTTP a::before, .OpenAI a::before, .Addons a::before, .Melezh a::before, .CL a::before, .WebUI a::before,
.Info a::before {
padding-right: 0.7rem;
padding-top: 0.4rem;
}
.Airtable > div > a::before{
content: url(../../static/img/APIs/small/Airtable.png);
}
.Telegram > div > a::before{
content: url(../../static/img/APIs/small/Telegram.png);
}
.HTTP > div > a::before{
content: url(../../static/img/APIs/small/HTTP.png);
}
.VK > div > a::before{
content: url(../../static/img/APIs/small/VK.png);
}
.Viber > div > a::before{
content: url(../../static/img/APIs/small/Viber.png);
}
.Twitter > div > a::before{
content: url(../../static/img/APIs/small/Twitter.png);
}
.Notion > div > a::before{
content: url(../../static/img/APIs/small/Notion.png);
}
.GoogleCalendar > div > a::before{
content: url(../../static/img/APIs/small/GoogleCalendar.png);
}
.GoogleDrive > div > a::before{
content: url(../../static/img/APIs/small/GoogleDrive.png);
}
.GoogleSheets > div > a::before{
content: url(../../static/img/APIs/small/GoogleSheets.png);
}
.Slack > div > a::before{
content: url(../../static/img/APIs/small/Slack.png);
}
.YandexDisk > div > a::before{
content: url(../../static/img/APIs/small/YandexDisk.png);
}
.Dropbox > div > a::before{
content: url(../../static/img/APIs/small/Dropbox.png);
}
.Bitrix24 > div > a::before{
content: url(../../static/img/APIs/small/Bitrix24.png);
}
.VKTeams > div > a::before{
content: url(../../static/img/APIs/small/VKTeams.png);
}
.Ozon > div > a::before{
content: url(../../static/img/APIs/small/Ozon.png);
}
.Neocities > div > a::before{
content: url(../../static/img/APIs/small/Neocities.png);
}
.CDEK > div > a::before{
content: url(../../static/img/APIs/small/CDEK.png);
}
.S3 > div > a::before{
content: url(../../static/img/APIs/small/S3.png);
}
.TCP > div > a::before{
content: url(../../static/img/APIs/small/TCP.png);
}
.RCON > div > a::before{
content: url(../../static/img/APIs/small/RCON.png);
}
.MySQL > div > a::before{
content: url(../../static/img/APIs/small/MySQL.png);
}
.MSSQL > div > a::before{
content: url(../../static/img/APIs/small/MSSQL.png);
}
.SQLite > div > a::before{
content: url(../../static/img/APIs/small/SQLite.png);
}
.PostgreSQL > div > a::before{
content: url(../../static/img/APIs/small/PostgreSQL.png);
}
.GreenAPI > div > a::before{
content: url(../../static/img/APIs/small/GreenAPI.png);
}
.Ollama > div > a::before{
content: url(../../static/img/APIs/small/Ollama.png);
}
.OpenAI > div > a::before{
content: url(../../static/img/APIs/small/OpenAI.png);
}
.Messenger > div > a::before{
content: url(../../static/img/Categories/chat.png);
}
.Social > div > a::before{
content: url(../../static/img/Categories/social-media.png);
}
.Database > div > a::before{
content: url(../../static/img/Categories/database.png);
}
.Calendar > div > a::before{
content: url(../../static/img/Categories/calendar.png);
}
.CRM > div > a::before{
content: url(../../static/img/Categories/crm.png);
}
.Exchange > div > a::before{
content: url(../../static/img/Categories/network.png);
}
.Folder > div > a::before{
content: url(../../static/img/Categories/folder.png);
}
.Commerce > div > a::before{
content: url(../../static/img/Categories/e-commerce.png);
}
.Start > div > a::before{
content: url(../../static/img/Categories/welcome.png);
}
.Other > div > a::before{
content: url(../../static/img/Categories/other.png);
}
.AI > div > a::before{
content: url(../../static/img/Categories/ai.png);
}
.WebUI > div > a::before{
content: url(../../static/img/Categories/webui.png);
}
.CL > div > a::before{
content: url(../../static/img/Categories/cl.png);
}
.Info > div > a::before{
content: url(../../static/img/Categories/info.png);
}
.Addons > a::before{
content: url(../../static/img/Categories/addons.png);
}
.Melezh > a::before{
content: url(../../static/img/Categories/melezh.png);
}
.theme-code-block,.tabs-container{
border: 1px solid rgba(27, 31, 35, 0.15);
border-radius: 16px;
box-shadow: rgba(27, 31, 35, 0.04) 0 1px 0, rgba(255, 255, 255, 0.25) 0 1px 0 inset;
}
/* CSS */
.button {
appearance: none;
background-color: white;
border: 1px solid rgba(27, 31, 35, 0.15);
border-radius: 16px;
box-shadow: rgba(27, 31, 35, 0.04) 0 1px 0, rgba(255, 255, 255, 0.25) 0 1px 0 inset;
box-sizing: border-box;
color: #24292E;
cursor: pointer;
display: inline-block;
font-family: -apple-system, system-ui, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
font-size: 14px;
font-weight: 500;
line-height: 20px;
list-style: none;
padding: 6px 16px;
position: relative;
transition: background-color 0.2s cubic-bezier(0.3, 0, 0.5, 1);
user-select: none;
-webkit-user-select: none;
touch-action: manipulation;
vertical-align: middle;
white-space: nowrap;
word-wrap: break-word;
}
.button:hover {
background-color: #F3F4F6;
text-decoration: none;
transition-duration: 0.1s;
}
.button:disabled {
background-color: #FAFBFC;
border-color: rgba(27, 31, 35, 0.15);
color: #959DA5;
cursor: default;
}
.button:active {
background-color: #EDEFF2;
box-shadow: rgba(225, 228, 232, 0.2) 0 1px 0 inset;
transition: none 0s;
}
.button:focus {
outline: 1px transparent;
}
.button:before {
display: none;
}
.button:-webkit-details-marker {
display: none;
}
.wp_logo{
margin-right: 5px;
}
[class*='iconExternalLink_'] {
display: none;
}
+84 -84
View File
@@ -1,85 +1,85 @@
import React, { useEffect } from 'react';
import clsx from 'clsx';
import Link from '@docusaurus/Link';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import Layout from '@theme/Layout';
import AlternatingFeatures from '@site/src/components/AlternatingFeatures';
import Heading from '@theme/Heading';
import styles from './index.module.css';
function HomepageHeader() {
const {siteConfig} = useDocusaurusContext();
useEffect(() => {
// Создаем частицы только для header
const header = document.querySelector(`.${styles.heroBanner}`);
if (!header) return;
const particleCount = 30;
const particles = [];
for (let i = 0; i < particleCount; i++) {
const particle = document.createElement('div');
particle.className = styles.particle;
// Позиционирование внутри header
particle.style.left = `${Math.random() * 100}%`;
particle.style.top = `${Math.random() * 100}%`;
particle.style.width = `${Math.random() * 3 + 1}px`;
particle.style.height = particle.style.width;
particle.style.animationDuration = `${Math.random() * 10 + 5}s`;
particle.style.animationDelay = `${Math.random() * 2}s`;
header.appendChild(particle);
particles.push(particle);
}
return () => {
particles.forEach(p => p.remove());
};
}, []);
return (
<header className={clsx('hero hero--primary', styles.heroBanner)}>
<div className="container">
<img src="/img/logo.svg" className={styles.biglogo}/>
<Heading as="p" className="hero__title">
{siteConfig.title}
</Heading>
<p className="hero__subtitle">{siteConfig.tagline}</p>
<div className={styles.buttons}>
<div className={styles.button}>
<Link className="button button--secondary button--bg" to="/docs/Instructions/Start">
🧭 Документация
</Link>
</div>
<div className={styles.button}>
<Link className="button button--secondary button--bg" to="https://github.com/Bayselonarrend/OpenIntegrations/releases/latest">
Скачать
</Link>
</div>
<div className={styles.button}>
<Link className="button button--secondary button--bg" to="https://en.openintegrations.dev">
🌐 English version
</Link>
</div>
</div>
</div>
</header>
);
}
export default function Home() {
const {siteConfig} = useDocusaurusContext();
return (
<Layout
title={`Открытый пакет интеграций`}
description="ОПИ - пакет интеграций с популярными API для 1С:Enterprise и OneScript">
<HomepageHeader />
<main>
<br/><hr/>
<AlternatingFeatures />
</main>
</Layout>
);
import React, { useEffect } from 'react';
import clsx from 'clsx';
import Link from '@docusaurus/Link';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import Layout from '@theme/Layout';
import AlternatingFeatures from '@site/src/components/AlternatingFeatures';
import Heading from '@theme/Heading';
import styles from './index.module.css';
function HomepageHeader() {
const {siteConfig} = useDocusaurusContext();
useEffect(() => {
// Создаем частицы только для header
const header = document.querySelector(`.${styles.heroBanner}`);
if (!header) return;
const particleCount = 30;
const particles = [];
for (let i = 0; i < particleCount; i++) {
const particle = document.createElement('div');
particle.className = styles.particle;
// Позиционирование внутри header
particle.style.left = `${Math.random() * 100}%`;
particle.style.top = `${Math.random() * 100}%`;
particle.style.width = `${Math.random() * 3 + 1}px`;
particle.style.height = particle.style.width;
particle.style.animationDuration = `${Math.random() * 10 + 5}s`;
particle.style.animationDelay = `${Math.random() * 2}s`;
header.appendChild(particle);
particles.push(particle);
}
return () => {
particles.forEach(p => p.remove());
};
}, []);
return (
<header className={clsx('hero hero--primary', styles.heroBanner)}>
<div className="container">
<img src="/img/logo.svg" className={styles.biglogo}/>
<Heading as="p" className="hero__title">
{siteConfig.title}
</Heading>
<p className="hero__subtitle">{siteConfig.tagline}</p>
<div className={styles.buttons}>
<div className={styles.button}>
<Link className="button button--secondary button--bg" to="/docs/Instructions/Start">
🧭 Документация
</Link>
</div>
<div className={styles.button}>
<Link className="button button--secondary button--bg" to="https://github.com/Bayselonarrend/OpenIntegrations/releases/latest">
Скачать
</Link>
</div>
<div className={styles.button}>
<Link className="button button--secondary button--bg" to="https://en.openintegrations.dev">
🌐 English version
</Link>
</div>
</div>
</div>
</header>
);
}
export default function Home() {
const {siteConfig} = useDocusaurusContext();
return (
<Layout
title={`Открытый пакет интеграций`}
description="ОПИ - пакет интеграций с популярными API для 1С:Enterprise и OneScript">
<HomepageHeader />
<main>
<br/><hr/>
<AlternatingFeatures />
</main>
</Layout>
);
}
+72 -72
View File
@@ -1,72 +1,72 @@
/**
* CSS files with the .module.css suffix will be treated as CSS modules
* and scoped locally.
*/
.heroBanner {
padding: 2rem 2rem 0 7rem;
text-align: left;
position: relative;
overflow: hidden;
color: black;
margin-top: 20px;
}
.particle {
position: absolute;
background-color: rgba(0, 63, 19, 0.452);
border-radius: 50%;
pointer-events: none;
animation: float linear infinite;
}
@keyframes float {
0% {
transform: translateY(0) translateX(0);
opacity: 1;
}
50% {
transform: translateY(-50px) translateX(20px);
opacity: 0.7;
}
100% {
transform: translateY(0) translateX(0);
opacity: 1;
}
}
@media screen and (max-width: 996px) {
.heroBanner {
padding: 2rem;
}
.biglogo{
margin-top: 35px;
}
}
.buttons {
display: flex;
align-items: left;
justify-content: ltft;
margin-left: -10px;
flex-wrap: wrap;
}
.button{
margin: 10px;
}
.biglogo{
width: 128px;
height: 128px;
margin-bottom: -15px;
margin-left: -15px;
}
.heroBanner_src-pages-index-module {
padding-bottom: 30px;
}
/**
* CSS files with the .module.css suffix will be treated as CSS modules
* and scoped locally.
*/
.heroBanner {
padding: 2rem 2rem 0 7rem;
text-align: left;
position: relative;
overflow: hidden;
color: black;
margin-top: 20px;
}
.particle {
position: absolute;
background-color: rgba(0, 63, 19, 0.452);
border-radius: 50%;
pointer-events: none;
animation: float linear infinite;
}
@keyframes float {
0% {
transform: translateY(0) translateX(0);
opacity: 1;
}
50% {
transform: translateY(-50px) translateX(20px);
opacity: 0.7;
}
100% {
transform: translateY(0) translateX(0);
opacity: 1;
}
}
@media screen and (max-width: 996px) {
.heroBanner {
padding: 2rem;
}
.biglogo{
margin-top: 35px;
}
}
.buttons {
display: flex;
align-items: left;
justify-content: ltft;
margin-left: -10px;
flex-wrap: wrap;
}
.button{
margin: 10px;
}
.biglogo{
width: 128px;
height: 128px;
margin-bottom: -15px;
margin-left: -15px;
}
.heroBanner_src-pages-index-module {
padding-bottom: 30px;
}
+75 -75
View File
@@ -1,75 +1,75 @@
import React, { useEffect } from 'react';
import Layout from '@theme-original/Layout';
import Head from '@docusaurus/Head';
import { useLocation } from '@docusaurus/router';
export default function CustomLayout(props) {
const location = useLocation();
useEffect(() => {
// Проверяем, находимся ли мы на странице документации
if (!location.pathname.startsWith('/docs/')) {
return; // Если нет, не добавляем блок
}
// Удаляем предыдущий блок и скрипт, если они существуют
const existingAdContainer = document.getElementById('yandex_rtb_R-A-12294791-5');
if (existingAdContainer) {
existingAdContainer.innerHTML = ''; // Очищаем контейнер перед перерендерингом
}
// Создаем контейнер для второго рекламного блока, если он не существует
let adContainer = existingAdContainer;
if (!adContainer) {
adContainer = document.createElement('div');
adContainer.id = 'yandex_rtb_R-A-12294791-5';
adContainer.style.marginTop = '20px'; // Добавим отступ для красоты
// Находим элемент кнопок "Previous" и "Next" и вставляем перед ним
const paginationElement = document.querySelector('.pagination-nav');
if (paginationElement) {
paginationElement.parentNode.insertBefore(adContainer, paginationElement);
} else {
// Если кнопок нет, добавляем контейнер в конец body
document.body.appendChild(adContainer);
}
}
// Создаем скрипт для рендеринга рекламы
const script = document.createElement('script');
script.innerHTML = `
window.yaContextCb.push(() => {
Ya.Context.AdvManager.destroy('yandex_rtb_R-A-12294791-5'); // Удаляем предыдущий экземпляр блока
Ya.Context.AdvManager.render({
"blockId": "R-A-12294791-3",
"type": "floorAd",
"platform": "touch"
});
Ya.Context.AdvManager.render({
"blockId": "R-A-12294791-5",
"renderTo": "yandex_rtb_R-A-12294791-5"
});
});
`;
document.body.appendChild(script);
// Удаляем элементы при размонтировании компонента
return () => {
script.remove();
adContainer.innerHTML = ''; // Очищаем контейнер при размонтировании
};
}, [location.pathname]); // Перезапуск эффекта при изменении пути
return (
<>
<Head>
<script>
window.yaContextCb = window.yaContextCb || [];
</script>
<script src="https://yandex.ru/ads/system/context.js" async></script>
</Head>
<Layout {...props} />
</>
);
}
import React, { useEffect } from 'react';
import Layout from '@theme-original/Layout';
import Head from '@docusaurus/Head';
import { useLocation } from '@docusaurus/router';
export default function CustomLayout(props) {
const location = useLocation();
useEffect(() => {
// Проверяем, находимся ли мы на странице документации
if (!location.pathname.startsWith('/docs/')) {
return; // Если нет, не добавляем блок
}
// Удаляем предыдущий блок и скрипт, если они существуют
const existingAdContainer = document.getElementById('yandex_rtb_R-A-12294791-5');
if (existingAdContainer) {
existingAdContainer.innerHTML = ''; // Очищаем контейнер перед перерендерингом
}
// Создаем контейнер для второго рекламного блока, если он не существует
let adContainer = existingAdContainer;
if (!adContainer) {
adContainer = document.createElement('div');
adContainer.id = 'yandex_rtb_R-A-12294791-5';
adContainer.style.marginTop = '20px'; // Добавим отступ для красоты
// Находим элемент кнопок "Previous" и "Next" и вставляем перед ним
const paginationElement = document.querySelector('.pagination-nav');
if (paginationElement) {
paginationElement.parentNode.insertBefore(adContainer, paginationElement);
} else {
// Если кнопок нет, добавляем контейнер в конец body
document.body.appendChild(adContainer);
}
}
// Создаем скрипт для рендеринга рекламы
const script = document.createElement('script');
script.innerHTML = `
window.yaContextCb.push(() => {
Ya.Context.AdvManager.destroy('yandex_rtb_R-A-12294791-5'); // Удаляем предыдущий экземпляр блока
Ya.Context.AdvManager.render({
"blockId": "R-A-12294791-3",
"type": "floorAd",
"platform": "touch"
});
Ya.Context.AdvManager.render({
"blockId": "R-A-12294791-5",
"renderTo": "yandex_rtb_R-A-12294791-5"
});
});
`;
document.body.appendChild(script);
// Удаляем элементы при размонтировании компонента
return () => {
script.remove();
adContainer.innerHTML = ''; // Очищаем контейнер при размонтировании
};
}, [location.pathname]); // Перезапуск эффекта при изменении пути
return (
<>
<Head>
<script>
window.yaContextCb = window.yaContextCb || [];
</script>
<script src="https://yandex.ru/ads/system/context.js" async></script>
</Head>
<Layout {...props} />
</>
);
}
+2 -2
View File
@@ -1,3 +1,3 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<?xml version="1.0" encoding="utf-8"?>
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="400px" height="400px" viewBox="0 0 1024 1024" class="icon" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M202.4 32c-34.4 0-61.6 28-61.6 61.6v812.8c0 34.4 28 61.6 61.6 61.6h681.6V32H202.4z" fill="#72B6D3" /><path d="M264 32h-61.6c-34.4 0-61.6 28-61.6 61.6v812.8c0 34.4 28 61.6 61.6 61.6H264V32z" fill="#090C10" /><path d="M195.2 848h686.4v116.8H195.2c-28.8 0-52.8-26.4-52.8-58.4s23.2-58.4 52.8-58.4z" fill="#FFFFFF" /><path d="M884 976.8H202.4c-38.4 0-69.6-31.2-69.6-69.6V93.6c0-38.4 31.2-69.6 69.6-69.6h681.6c4.8 0 8 3.2 8 8v936.8c0 4-4 8-8 8zM202.4 40c-29.6 0-53.6 24-53.6 53.6v812.8c0 29.6 24 53.6 53.6 53.6h673.6V40H202.4z" fill="#6A576D" /><path d="M140 914.4c-4.8 0-8-3.2-8-8V93.6c0-38.4 31.2-69.6 69.6-69.6H264c4.8 0 8 3.2 8 8v812.8c0 4.8-3.2 8-8 8h-61.6c-29.6 0-53.6 24-53.6 53.6-0.8 4.8-4 8-8.8 8zM202.4 40c-29.6 0-53.6 24-53.6 53.6v768c12.8-15.2 32-25.6 53.6-25.6H256V40h-53.6z" fill="#6A576D" /><path d="M260.8 898.4h47.2V992h-47.2z" fill="#F1ED7B" /><path d="M308 1000h-47.2c-4.8 0-8-3.2-8-8v-93.6c0-4.8 3.2-8 8-8h47.2c4.8 0 8 3.2 8 8V992c0 4.8-4 8-8 8z m-39.2-16h31.2v-77.6h-31.2v77.6z" fill="#6A576D" /><path d="M692 453.6H449.6c-34.4 0-62.4-28-62.4-62.4V281.6c0-34.4 28-62.4 62.4-62.4h242.4c34.4 0 62.4 28 62.4 62.4v109.6c0 34.4-28 62.4-62.4 62.4z" fill="#FFFFFF" /><path d="M692 461.6H449.6c-38.4 0-70.4-31.2-70.4-70.4V281.6c0-38.4 31.2-70.4 70.4-70.4h242.4c38.4 0 70.4 31.2 70.4 70.4v109.6c0 38.4-32 70.4-70.4 70.4zM449.6 227.2c-29.6 0-54.4 24-54.4 54.4v109.6c0 29.6 24 54.4 54.4 54.4h242.4c29.6 0 54.4-24 54.4-54.4V281.6c0-29.6-24-54.4-54.4-54.4H449.6zM884 852.8H264c-4.8 0-8-3.2-8-8s3.2-8 8-8h620c4.8 0 8 3.2 8 8s-4 8-8 8z" fill="#6A576D" /></svg>

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

+2 -2
View File
@@ -1,3 +1,3 @@
<svg width="98" height="96" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M44.3,164.5L76.9,51.6H127l-10.1,35c-0.1,0.2-0.2,0.4-0.3,0.6L90,179.6h24.8c-10.4,25.9-18.5,46.2-24.3,60.9
c-45.8-0.5-58.6-33.3-47.4-72.1 M90.7,240.6l60.4-86.9h-25.6l22.3-55.7c38.2,4,56.2,34.1,45.6,70.5
<svg width="98" height="96" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M44.3,164.5L76.9,51.6H127l-10.1,35c-0.1,0.2-0.2,0.4-0.3,0.6L90,179.6h24.8c-10.4,25.9-18.5,46.2-24.3,60.9
c-45.8-0.5-58.6-33.3-47.4-72.1 M90.7,240.6l60.4-86.9h-25.6l22.3-55.7c38.2,4,56.2,34.1,45.6,70.5
c-11.3,39.1-57.1,72.1-101.7,72.1C91.3,240.6,91,240.6,90.7,240.6z" fill="#24292f" transform="translate(-5, -20) scale(0.47)"/></svg>

Before

Width:  |  Height:  |  Size: 450 B

After

Width:  |  Height:  |  Size: 448 B

+2 -2
View File
@@ -1,3 +1,3 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<?xml version="1.0" encoding="utf-8"?>
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="400px" height="400px" viewBox="0 0 1024 1024" class="icon" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M510.4 559.2L180.8 734.4V380L510.4 184l324.8 196v354.4z" fill="#EEC82D" /><path d="M510.4 184l324.8 196v354.4L510.4 559.2z" fill="#121519" /><path d="M510.4 184L180.8 380v354.4l329.6-175.2z" fill="#121519" /><path d="M510.4 555.2l-329.6-176v355.2l329.6 196 324.8-196V379.2z" fill="#F5CC24" /><path d="M510.4 555.2l-329.6-176v355.2l329.6 196 324.8-196V379.2z" fill="#D6AB7F" /><path d="M510.4 938.4c-1.6 0-3.2 0-4-0.8L176.8 741.6c-2.4-1.6-4-4-4-7.2V379.2c0-3.2 1.6-5.6 4-7.2 2.4-1.6 5.6-1.6 8 0l325.6 173.6 320.8-173.6c2.4-1.6 5.6-1.6 8 0 2.4 1.6 4 4 4 7.2v355.2c0 3.2-1.6 5.6-4 7.2l-324.8 196c-0.8 0-2.4 0.8-4 0.8z m-321.6-208l321.6 191.2 316.8-191.2V392.8L514.4 562.4c-2.4 1.6-5.6 1.6-7.2 0L188.8 392.8v337.6z" fill="#6A576D" /><path d="M510.4 930.4l324.8-196V379.2l-324.8 176z" fill="#121519" /><path d="M510.4 938.4c-1.6 0-2.4 0-4-0.8-2.4-1.6-4-4-4-7.2V555.2c0-3.2 1.6-5.6 4-7.2l324.8-176c2.4-1.6 5.6-1.6 8 0 2.4 1.6 4 4 4 7.2v355.2c0 3.2-1.6 5.6-4 7.2l-324.8 196c-0.8 0-2.4 0.8-4 0.8z m8-378.4v356l308.8-185.6V392.8L518.4 560z" fill="#6A576D" /><path d="M252.8 608.8l257.6 145.6V555.2l-329.6-176z" fill="#121519" /><path d="M32 464.8l148.8-85.6 329.6 176L352 645.6z" fill="#FFFFFF" /><path d="M32 294.4l148.8 85.6L510.4 184 352.8 93.6z" fill="#FFFFFF" /><path d="M180.8 388c-1.6 0-2.4 0-4-0.8L28 300.8c-2.4-0.8-4-4-4-6.4 0-3.2 1.6-5.6 4-7.2l320.8-200.8c2.4-1.6 5.6-1.6 8 0l158.4 90.4c2.4 1.6 4 4 4 7.2s-1.6 5.6-4 7.2L184.8 386.4c-0.8 0.8-2.4 1.6-4 1.6zM47.2 293.6l133.6 76.8L495.2 184 352.8 103.2 47.2 293.6z" fill="#6A576D" /><path d="M659.2 698.4l176-90.4V380L512.8 553.6l-2.4 1.6z" fill="#121519" /><path d="M510.4 555.2l148.8 85.6L992 469.6l-156.8-89.6z" fill="#FFFFFF" /><path d="M352 653.6c-1.6 0-2.4 0-4-0.8L28 472c-2.4-1.6-4-4-4-7.2s1.6-5.6 4-7.2l148.8-85.6c2.4-1.6 5.6-1.6 8 0l329.6 176c2.4 1.6 4 4 4 7.2s-1.6 5.6-4 7.2L356 652.8c-0.8 0.8-2.4 0.8-4 0.8zM48 464.8l304 171.2 141.6-80.8-312.8-166.4L48 464.8z" fill="#6A576D" /><path d="M659.2 648.8c-1.6 0-2.4 0-4-0.8L506.4 562.4c-2.4-1.6-4-4-4-7.2s1.6-5.6 4-7.2l324.8-176c2.4-1.6 5.6-1.6 8 0l156.8 90.4c2.4 1.6 4 4 4 7.2s-1.6 5.6-4 7.2L663.2 648c-1.6 0.8-2.4 0.8-4 0.8zM527.2 555.2L660 632 976 469.6l-140.8-80.8-308 166.4z" fill="#6A576D" /><path d="M510.4 184l149.6-85.6L992 289.6l-156.8 90.4z" fill="#FFFFFF" /><path d="M835.2 388c-1.6 0-3.2 0-4-0.8L506.4 191.2c-2.4-1.6-4-4-4-7.2s1.6-5.6 4-7.2L656 92c2.4-1.6 5.6-1.6 8 0l332 191.2c2.4 1.6 4 4 4 7.2s-1.6 5.6-4 7.2l-156.8 90.4c-1.6-0.8-3.2 0-4 0zM526.4 184l308.8 186.4L976 289.6 660 108 526.4 184z" fill="#6A576D" /><path d="M510.4 120L180.8 296v84l329.6 175.2 324.8-175.2V295.2z" fill="#9DD2A0" /><path d="M510.4 563.2c-1.6 0-2.4 0-4-0.8L177.6 387.2c-2.4-1.6-4-4-4-7.2V296c0-3.2 1.6-5.6 4-7.2l329.6-176c2.4-1.6 5.6-1.6 7.2 0L838.4 288c2.4 1.6 4 4 4 7.2v84.8c0 3.2-1.6 5.6-4 7.2l-324.8 176h-3.2zM188.8 375.2l321.6 170.4 316.8-171.2v-75.2L510.4 129.6 188.8 300.8v74.4z" fill="#6A576D" /><path d="M510.4 471.2L180.8 296v84l329.6 175.2z" fill="#121519" /><path d="M510.4 471.2l324.8-176v84.8L510.4 555.2z" fill="#121519" /></svg>

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 294 KiB

After

Width:  |  Height:  |  Size: 294 KiB

+2 -2
View File
@@ -1,3 +1,3 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<?xml version="1.0" encoding="utf-8"?>
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="400px" height="400px" viewBox="0 0 1024 1024" class="icon" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M407.2 992c-57.6 0-104.8-47.2-104.8-104.8V299.2H512v588c0 57.6-47.2 104.8-104.8 104.8z" fill="#FFFFFF" /><path d="M407.2 1000c-62.4 0-112.8-50.4-112.8-112.8V299.2c0-4.8 3.2-8 8-8H512c4.8 0 8 3.2 8 8v588c0 62.4-50.4 112.8-112.8 112.8zM309.6 307.2v580c0 53.6 43.2 96.8 96.8 96.8S504 940.8 504 887.2V307.2H309.6z" fill="#6A576D" /><path d="M401.6 939.2c-27.2-2.4-47.2-27.2-47.2-54.4V530.4c0-28.8 23.2-52.8 52.8-52.8 28.8 0 52.8 23.2 52.8 52.8v356.8c-0.8 30.4-27.2 55.2-58.4 52zM301.6 427.2c31.2 16 67.2 25.6 104.8 25.6s73.6-8.8 104.8-25.6v-128H301.6v128z" fill="#0D1014" /><path d="M496 32v152.8c0 49.6-40 89.6-89.6 89.6s-89.6-40-89.6-89.6V32c-71.2 33.6-120.8 105.6-120.8 189.6C196.8 337.6 291.2 432 407.2 432s210.4-94.4 210.4-210.4C616.8 137.6 567.2 65.6 496 32z" fill="#FFFFFF" /><path d="M748 508.8H696V182.4c0-15.2-6.4-30.4-16.8-40.8-2.4-2.4-3.2-6.4-3.2-9.6L696 32h52.8L768 131.2c0.8 3.2 0 7.2-3.2 9.6-11.2 11.2-16.8 25.6-16.8 40.8v327.2z" fill="#E8E8E6" /><path d="M696 488h52.8v20.8H696z" fill="#0D1014" /><path d="M827.2 582.4v-73.6H616.8v73.6c17.6 0 31.2 14.4 31.2 31.2s-14.4 31.2-31.2 31.2v241.6c0 57.6 47.2 104.8 104.8 104.8 57.6 0 104.8-47.2 104.8-104.8V645.6c-17.6 0-31.2-14.4-31.2-31.2s14.4-32 32-32z" fill="#EC7BB0" /><path d="M648.8 613.6c0 17.6-13.6 31.2-31.2 31.2h209.6c-17.6 0-31.2-14.4-31.2-31.2s13.6-31.2 31.2-31.2H616.8c17.6 0 32 14.4 32 31.2z" fill="#EC7BB0" /><path d="M648.8 613.6c0 17.6-13.6 31.2-31.2 31.2h209.6c-17.6 0-31.2-14.4-31.2-31.2s13.6-31.2 31.2-31.2H616.8c17.6 0 32 14.4 32 31.2zM764.8 116L748 32H696l-16.8 84zM643.2 861.6c0 14.4 12 26.4 26.4 26.4 14.4 0 26.4-12 26.4-26.4v-216h-52.8v216zM643.2 508.8H696v73.6h-52.8zM748 861.6c0 14.4 12 26.4 26.4 26.4s26.4-12 26.4-26.4v-216h-52.8v216zM748 508.8h52.8v73.6h-52.8z" fill="#0D1014" /><path d="M407.2 947.2h-6.4c-30.4-3.2-54.4-30.4-54.4-62.4V529.6c0-33.6 27.2-60.8 60.8-60.8s60.8 27.2 60.8 60.8v356.8c-0.8 33.6-28 60.8-60.8 60.8z m0-461.6c-24.8 0-44.8 20-44.8 44.8v354.4c0 24 17.6 44.8 40 46.4 26.4 2.4 48.8-18.4 48.8-44V529.6c0-24-20-44-44-44zM407.2 440c-120 0-218.4-97.6-218.4-218.4 0-84 49.6-161.6 125.6-196.8 2.4-0.8 5.6-0.8 8 0.8 2.4 1.6 4 4 4 6.4v152.8c0 44.8 36.8 81.6 81.6 81.6s81.6-36.8 81.6-81.6V32c0-2.4 1.6-5.6 4-6.4 2.4-1.6 5.6-1.6 8-0.8C576 60.8 624.8 138.4 624.8 221.6 624.8 342.4 527.2 440 407.2 440zM309.6 44.8c-64 35.2-104.8 103.2-104.8 176.8 0 112 90.4 202.4 202.4 202.4s202.4-90.4 202.4-202.4C608.8 148.8 568 80 504 44.8v140c0 53.6-44 97.6-97.6 97.6-53.6 0-97.6-44-97.6-97.6V44.8zM722.4 1000c-62.4 0-112.8-50.4-112.8-112.8V645.6c0-4.8 3.2-8 8-8 12.8 0 23.2-10.4 23.2-23.2s-10.4-23.2-23.2-23.2c-4.8 0-8-3.2-8-8v-73.6c0-4.8 3.2-8 8-8h210.4c4.8 0 8 3.2 8 8v73.6c0 4-3.2 8-8 8-12.8 0-23.2 10.4-23.2 23.2 0 12.8 10.4 23.2 23.2 23.2 4 0 8 4 8 8v241.6c-0.8 62.4-52 112.8-113.6 112.8zM624.8 652.8v234.4c0 53.6 43.2 96.8 96.8 96.8s96.8-43.2 96.8-96.8V652.8c-17.6-4-31.2-20-31.2-38.4 0-19.2 13.6-34.4 31.2-38.4v-58.4H624.8V576c17.6 4 31.2 20 31.2 38.4 0.8 18.4-12.8 34.4-31.2 38.4z" fill="#6A576D" /><path d="M748 516.8H696c-4.8 0-8-3.2-8-8V182.4c0-13.6-5.6-25.6-14.4-35.2-4-4-6.4-10.4-4.8-16.8L688 30.4c0.8-4 4-6.4 8-6.4h52.8c4 0 7.2 2.4 8 6.4L776 129.6c1.6 6.4-0.8 12-4.8 16.8-9.6 9.6-14.4 22.4-14.4 35.2v327.2c-0.8 4.8-4 8-8.8 8z m-44-16h36.8V182.4c0-17.6 7.2-34.4 19.2-46.4 0.8-0.8 0.8-1.6 0.8-2.4L741.6 40h-39.2l-18.4 92.8c0 0.8 0 1.6 0.8 2.4 12.8 12.8 19.2 28.8 19.2 46.4v319.2zM827.2 653.6H617.6c-4.8 0-8-3.2-8-8s3.2-8 8-8c12.8 0 23.2-10.4 23.2-23.2 0-12.8-10.4-23.2-23.2-23.2-4.8 0-8-3.2-8-8s3.2-8 8-8h210.4c4.8 0 8 3.2 8 8 0 4-3.2 8-8 8-12.8 0-23.2 10.4-23.2 23.2 0 12.8 10.4 23.2 23.2 23.2 4.8 0 8 4 8 8-0.8 4-4.8 8-8.8 8z m-178.4-16h147.2c-4.8-6.4-8-14.4-8-23.2 0-8.8 3.2-16.8 8-23.2H648.8c4.8 6.4 8 14.4 8 23.2 0 8-3.2 16.8-8 23.2z" fill="#6A576D" /><path d="M764.8 124H679.2c-2.4 0-4.8-0.8-6.4-3.2-1.6-1.6-2.4-4-1.6-6.4L688 30.4c0.8-4 4-6.4 8-6.4h52.8c4 0 7.2 2.4 8 6.4l16.8 84c0.8 2.4 0 4.8-1.6 6.4-2.4 2.4-4.8 3.2-7.2 3.2z m-76-16h66.4L741.6 40h-39.2l-13.6 68z" fill="#6A576D" /></svg>

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

File diff suppressed because one or more lines are too long
+8 -8
View File
@@ -1,9 +1,9 @@
window.yaContextCb=window.yaContextCb||[]
window.yaContextCb.push(() => {
Ya.Context.AdvManager.render({
"blockId": "R-A-12294791-1",
"renderTo": "yandex_rtb_R-A-12294791-1",
"type": "feed"
})
window.yaContextCb=window.yaContextCb||[]
window.yaContextCb.push(() => {
Ya.Context.AdvManager.render({
"blockId": "R-A-12294791-1",
"renderTo": "yandex_rtb_R-A-12294791-1",
"type": "feed"
})
})
+17 -17
View File
@@ -1,17 +1,17 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Type = "date";
Name = "BIRTHDAY_FIELD";
Result = OPI_Bitrix24.AddCustomTaskField(URL, Type, Name);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Type = "string";
Name = "TEXT_FIELD";
ExternalID = "BITRIX_TEXT_FIELD";
Title = "Text field";
Signature = New Structure("en,ru", "Some field", "Nekotoroe pole");
Result = OPI_Bitrix24.AddCustomTaskField(URL, Type, Name, ExternalID, Title, Signature, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Type = "date";
Name = "BIRTHDAY_FIELD";
Result = OPI_Bitrix24.AddCustomTaskField(URL, Type, Name);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Type = "string";
Name = "TEXT_FIELD";
ExternalID = "BITRIX_TEXT_FIELD";
Title = "Text field";
Signature = New Structure("en,ru", "Some field", "Nekotoroe pole");
Result = OPI_Bitrix24.AddCustomTaskField(URL, Type, Name, ExternalID, Title, Signature, Token);
+16 -16
View File
@@ -1,16 +1,16 @@
Name = "New stage";
Color = "0026FF";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.AddKanbanStage(URL, Name, Color, 6);
PrevStageID = Result["result"];
Name = "New stage 2";
Color = "0026FF";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.AddKanbanStage(URL, Name, Color, PrevStageID, , True, Token);
Name = "New stage";
Color = "0026FF";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.AddKanbanStage(URL, Name, Color, 6);
PrevStageID = Result["result"];
Name = "New stage 2";
Color = "0026FF";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.AddKanbanStage(URL, Name, Color, PrevStageID, , True, Token);
+11 -11
View File
@@ -1,11 +1,11 @@
Text = "Comment for post";
PostID = "2508";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.AddPostComment(URL, PostID, Text);
Text = "Another comment";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.AddPostComment(URL, PostID, Text, Token);
Text = "Comment for post";
PostID = "2508";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.AddPostComment(URL, PostID, Text);
Text = "Another comment";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.AddPostComment(URL, PostID, Text, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
Visibility = "UA";
PostID = "2508";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.AddPostRecipients(URL, PostID, Visibility);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.AddPostRecipients(URL, PostID, Visibility, Token);
Visibility = "UA";
PostID = "2508";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.AddPostRecipients(URL, PostID, Visibility);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.AddPostRecipients(URL, PostID, Visibility, Token);
+13 -13
View File
@@ -1,13 +1,13 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6420";
Text = "Task impossible, let's split up";
Result = OPI_Bitrix24.AddTaskComment(URL, TaskID, Text);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Text = "Task uninpossible, don't split up";
Result = OPI_Bitrix24.AddTaskComment(URL, TaskID, Text, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6420";
Text = "Task impossible, let's split up";
Result = OPI_Bitrix24.AddTaskComment(URL, TaskID, Text);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Text = "Task uninpossible, don't split up";
Result = OPI_Bitrix24.AddTaskComment(URL, TaskID, Text, Token);
+17 -17
View File
@@ -1,17 +1,17 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6424";
Time = 3600;
Result = OPI_Bitrix24.AddTaskTimeAccounting(URL, TaskID, Time);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Text = "Time spent on work";
UserID = 10;
Time = 7200;
SetupDate = AddMonth(OPI_Tools.GetCurrentDate(), -1);
Result = OPI_Bitrix24.AddTaskTimeAccounting(URL, TaskID, Time, UserID, Text, SetupDate,
Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6424";
Time = 3600;
Result = OPI_Bitrix24.AddTaskTimeAccounting(URL, TaskID, Time);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Text = "Time spent on work";
UserID = 10;
Time = 7200;
SetupDate = AddMonth(OPI_Tools.GetCurrentDate(), -1);
Result = OPI_Bitrix24.AddTaskTimeAccounting(URL, TaskID, Time, UserID, Text, SetupDate,
Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.AddTaskToFavorites(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.AddTaskToFavorites(URL, TaskID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.AddTaskToFavorites(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.AddTaskToFavorites(URL, TaskID, Token);
+12 -12
View File
@@ -1,12 +1,12 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Text = "Checklist element";
Result = OPI_Bitrix24.AddTasksChecklistElement(URL, TaskID, Text, True);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.AddTasksChecklistElement(URL, TaskID, Text, , Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Text = "Checklist element";
Result = OPI_Bitrix24.AddTasksChecklistElement(URL, TaskID, Text, True);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.AddTasksChecklistElement(URL, TaskID, Text, , Token);
+15 -15
View File
@@ -1,15 +1,15 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
UserIDs = New Array;
UserIDs.Add(10);
UserIDs.Add(12);
Result = OPI_Bitrix24.AddUsersToChat(URL, ChatID, UserIDs);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
UserID = 10;
Result = OPI_Bitrix24.AddUsersToChat(URL, ChatID, UserID, True, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
UserIDs = New Array;
UserIDs.Add(10);
UserIDs.Add(12);
Result = OPI_Bitrix24.AddUsersToChat(URL, ChatID, UserIDs);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
UserID = 10;
Result = OPI_Bitrix24.AddUsersToChat(URL, ChatID, UserID, True, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.ApproveTask(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.ApproveTask(URL, TaskID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.ApproveTask(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.ApproveTask(URL, TaskID, Token);
+11 -11
View File
@@ -1,11 +1,11 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
FileID = "35610";
Result = OPI_Bitrix24.AttachFileToTopic(URL, TaskID, FileID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.AttachFileToTopic(URL, TaskID, FileID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
FileID = "35610";
Result = OPI_Bitrix24.AttachFileToTopic(URL, TaskID, FileID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.AttachFileToTopic(URL, TaskID, FileID, Token);
+13 -13
View File
@@ -1,13 +1,13 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Color = "AZURE";
Result = OPI_Bitrix24.ChangeChatColor(URL, ChatID, Color);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Color = "PURPLE";
Result = OPI_Bitrix24.ChangeChatColor(URL, ChatID, Color, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Color = "AZURE";
Result = OPI_Bitrix24.ChangeChatColor(URL, ChatID, Color);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Color = "PURPLE";
Result = OPI_Bitrix24.ChangeChatColor(URL, ChatID, Color, Token);
+12 -12
View File
@@ -1,12 +1,12 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
UserID = 10;
Result = OPI_Bitrix24.ChangeChatOwner(URL, ChatID, UserID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.ChangeChatOwner(URL, ChatID, UserID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
UserID = 10;
Result = OPI_Bitrix24.ChangeChatOwner(URL, ChatID, UserID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.ChangeChatOwner(URL, ChatID, UserID, Token);
+12 -12
View File
@@ -1,12 +1,12 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Image = "https://hut.openintegrations.dev/test_data/picture2.jpg";
Result = OPI_Bitrix24.ChangeChatPicture(URL, ChatID, Image);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.ChangeChatPicture(URL, ChatID, Image, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Image = "https://hut.openintegrations.dev/test_data/picture2.jpg";
Result = OPI_Bitrix24.ChangeChatPicture(URL, ChatID, Image);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.ChangeChatPicture(URL, ChatID, Image, Token);
+14 -14
View File
@@ -1,14 +1,14 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Title = "New chat title";
Result = OPI_Bitrix24.ChangeChatTitle(URL, ChatID, Title);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Title = "Another title";
Result = OPI_Bitrix24.ChangeChatTitle(URL, ChatID, Title, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Title = "New chat title";
Result = OPI_Bitrix24.ChangeChatTitle(URL, ChatID, Title);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Title = "Another title";
Result = OPI_Bitrix24.ChangeChatTitle(URL, ChatID, Title, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
UserID = "2164";
Result = OPI_Bitrix24.ChangeUserStatus(URL, UserID, True);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
UserID = "2166";
Result = OPI_Bitrix24.ChangeUserStatus(URL, UserID, True, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
UserID = "2164";
Result = OPI_Bitrix24.ChangeUserStatus(URL, UserID, True);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
UserID = "2166";
Result = OPI_Bitrix24.ChangeUserStatus(URL, UserID, True, Token);
+14 -14
View File
@@ -1,14 +1,14 @@
ArrayOfUsers = New Array;
ArrayOfUsers.Add("1");
ArrayOfUsers.Add("10");
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.CheckTaskAccesses(URL, TaskID, ArrayOfUsers);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.CheckTaskAccesses(URL, TaskID, ArrayOfUsers, Token);
ArrayOfUsers = New Array;
ArrayOfUsers.Add("1");
ArrayOfUsers.Add("10");
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.CheckTaskAccesses(URL, TaskID, ArrayOfUsers);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.CheckTaskAccesses(URL, TaskID, ArrayOfUsers, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.CompleteTask(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.CompleteTask(URL, TaskID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.CompleteTask(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.CompleteTask(URL, TaskID, Token);
+13 -13
View File
@@ -1,13 +1,13 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
ElementID = "4558";
Result = OPI_Bitrix24.CompleteTasksChecklistElement(URL, TaskID, ElementID);
TaskID = "6418";
ElementID = "4562";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CompleteTasksChecklistElement(URL, TaskID, ElementID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
ElementID = "4558";
Result = OPI_Bitrix24.CompleteTasksChecklistElement(URL, TaskID, ElementID);
TaskID = "6418";
ElementID = "4562";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CompleteTasksChecklistElement(URL, TaskID, ElementID, Token);
+32 -32
View File
@@ -1,32 +1,32 @@
Image = "https://hut.openintegrations.dev/test_data/picture.jpg";
OPI_TypeConversion.GetBinaryData(Image);
B64Image = GetBase64StringFromBinaryData(Image);
MembersArray = New Array;
MembersArray.Add(10);
MembersArray.Add(1);
ChatStructure = New Structure;
ChatStructure.Insert("TYPE" , "OPEN");
ChatStructure.Insert("TITLE" , "New chat");
ChatStructure.Insert("DESCRIPTION", "This is a new chat");
ChatStructure.Insert("COLOR" , "GREEN");
ChatStructure.Insert("MESSAGE" , "Welcome to new chat");
ChatStructure.Insert("USERS" , MembersArray);
ChatStructure.Insert("AVATAR" , B64Image);
ChatStructure.Insert("OWNER_ID" , 1);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreateChat(URL, ChatStructure);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatStructure = New Structure;
ChatStructure.Insert("TYPE" , "CHAT");
ChatStructure.Insert("TITLE", "Private chat");
ChatStructure.Insert("USERS", MembersArray);
Result = OPI_Bitrix24.CreateChat(URL, ChatStructure, Token);
Image = "https://hut.openintegrations.dev/test_data/picture.jpg";
OPI_TypeConversion.GetBinaryData(Image);
B64Image = GetBase64StringFromBinaryData(Image);
MembersArray = New Array;
MembersArray.Add(10);
MembersArray.Add(1);
ChatStructure = New Structure;
ChatStructure.Insert("TYPE" , "OPEN");
ChatStructure.Insert("TITLE" , "New chat");
ChatStructure.Insert("DESCRIPTION", "This is a new chat");
ChatStructure.Insert("COLOR" , "GREEN");
ChatStructure.Insert("MESSAGE" , "Welcome to new chat");
ChatStructure.Insert("USERS" , MembersArray);
ChatStructure.Insert("AVATAR" , B64Image);
ChatStructure.Insert("OWNER_ID" , 1);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreateChat(URL, ChatStructure);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatStructure = New Structure;
ChatStructure.Insert("TYPE" , "CHAT");
ChatStructure.Insert("TITLE", "Private chat");
ChatStructure.Insert("USERS", MembersArray);
Result = OPI_Bitrix24.CreateChat(URL, ChatStructure, Token);
+15 -15
View File
@@ -1,15 +1,15 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Name = "Main department";
ParentID = 1;
Result = OPI_Bitrix24.CreateDepartment(URL, Name, ParentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Name = "Subordinate department";
ParentID = "2158";
HeadID = 1;
Result = OPI_Bitrix24.CreateDepartment(URL, Name, ParentID, HeadID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Name = "Main department";
ParentID = 1;
Result = OPI_Bitrix24.CreateDepartment(URL, Name, ParentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Name = "Subordinate department";
ParentID = "2158";
HeadID = 1;
Result = OPI_Bitrix24.CreateDepartment(URL, Name, ParentID, HeadID, Token);
+19 -19
View File
@@ -1,19 +1,19 @@
UserID = 1;
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Text = "Message text";
Image = "https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/main/service/test_data/picture.jpg";
File = "https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/document.docx";
Attachments = New Array;
Attachments.Add(OPI_Bitrix24.GetPictureBlock("Image1" , Image));
Attachments.Add(OPI_Bitrix24.GetFileBlock("File1.docx" , File));
Result = OPI_Bitrix24.CreatePersonalNotification(URL, UserID, Text, , Attachments);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Tag = "New";
UserID = 10;
Result = OPI_Bitrix24.CreatePersonalNotification(URL, UserID, Text, Tag, , Token);
UserID = 1;
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Text = "Message text";
Image = "https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/main/service/test_data/picture.jpg";
File = "https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/document.docx";
Attachments = New Array;
Attachments.Add(OPI_Bitrix24.GetPictureBlock("Image1" , Image));
Attachments.Add(OPI_Bitrix24.GetFileBlock("File1.docx" , File));
Result = OPI_Bitrix24.CreatePersonalNotification(URL, UserID, Text, , Attachments);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Tag = "New";
UserID = 10;
Result = OPI_Bitrix24.CreatePersonalNotification(URL, UserID, Text, Tag, , Token);
+17 -17
View File
@@ -1,17 +1,17 @@
Text = "Text of post";
Title = "Post title";
Image1 = "https://hut.openintegrations.dev/test_data/picture.jpg"; // URL, Path or Binary Data
Image2 = "https://hut.openintegrations.dev/test_data/picture2.jpg"; // URL, Path or Binary Data
Files = New Map;
Files.Insert("1.png", Image1);
Files.Insert("2.png", Image2);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreatePost(URL, Text, , Files, Title, True);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CreatePost(URL, Text, , Files, Title, , Token);
Text = "Text of post";
Title = "Post title";
Image1 = "https://hut.openintegrations.dev/test_data/picture.jpg"; // URL, Path or Binary Data
Image2 = "https://hut.openintegrations.dev/test_data/picture2.jpg"; // URL, Path or Binary Data
Files = New Map;
Files.Insert("1.png", Image1);
Files.Insert("2.png", Image2);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreatePost(URL, Text, , Files, Title, True);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CreatePost(URL, Text, , Files, Title, , Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
CommentID = "14896";
Result = OPI_Bitrix24.CreateResultFromComment(URL, CommentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
CommentID = "14898";
Result = OPI_Bitrix24.CreateResultFromComment(URL, CommentID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
CommentID = "14896";
Result = OPI_Bitrix24.CreateResultFromComment(URL, CommentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
CommentID = "14898";
Result = OPI_Bitrix24.CreateResultFromComment(URL, CommentID, Token);
+12 -12
View File
@@ -1,12 +1,12 @@
StorageID = 3;
Name = "New catalog";
Filename2 = "New folder 2";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreateStorageFolder(URL, StorageID, Filename2);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CreateStorageFolder(URL, StorageID, Name, Token);
StorageID = 3;
Name = "New catalog";
Filename2 = "New folder 2";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreateStorageFolder(URL, StorageID, Filename2);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CreateStorageFolder(URL, StorageID, Name, Token);
+12 -12
View File
@@ -1,12 +1,12 @@
FolderID = "35620";
Name = "New subfolder";
Filename2 = "New subfolder 2";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreateSubfolder(URL, FolderID, Filename2);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CreateSubfolder(URL, FolderID, Name, Token);
FolderID = "35620";
Name = "New subfolder";
Filename2 = "New subfolder 2";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreateSubfolder(URL, FolderID, Filename2);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CreateSubfolder(URL, FolderID, Name, Token);
+19 -19
View File
@@ -1,19 +1,19 @@
UserID = 1;
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Text = "Message text";
Image = "https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/main/service/test_data/picture.jpg";
File = "https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/document.docx";
Attachments = New Array;
Attachments.Add(OPI_Bitrix24.GetPictureBlock("Image1" , Image));
Attachments.Add(OPI_Bitrix24.GetFileBlock("File1.docx" , File));
Result = OPI_Bitrix24.CreateSystemNotification(URL, UserID, Text, , Attachments);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Tag = "New";
UserID = 10;
Result = OPI_Bitrix24.CreateSystemNotification(URL, UserID, Text, Tag, , Token);
UserID = 1;
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Text = "Message text";
Image = "https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/main/service/test_data/picture.jpg";
File = "https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/document.docx";
Attachments = New Array;
Attachments.Add(OPI_Bitrix24.GetPictureBlock("Image1" , Image));
Attachments.Add(OPI_Bitrix24.GetFileBlock("File1.docx" , File));
Result = OPI_Bitrix24.CreateSystemNotification(URL, UserID, Text, , Attachments);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Tag = "New";
UserID = 10;
Result = OPI_Bitrix24.CreateSystemNotification(URL, UserID, Text, Tag, , Token);
+22 -22
View File
@@ -1,22 +1,22 @@
// The complete structure of the fields can be obtained by the GetTaskFieldsStructure() function()
CurrentDate = OPI_Tools.GetCurrentDate();
Hour = 3600;
Day = 24;
Responsible = 1;
TaskData = New Structure;
TaskData.Insert("TITLE" , "New task");
TaskData.Insert("DESCRIPTION" , "New task description");
TaskData.Insert("PRIORITY" , "2");
TaskData.Insert("DEADLINE" , CurrentDate + Hour * Day);
TaskData.Insert("RESPONSIBLE_ID", Responsible);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreateTask(URL, TaskData);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CreateTask(URL, TaskData, Token);
// The complete structure of the fields can be obtained by the GetTaskFieldsStructure() function()
CurrentDate = OPI_Tools.GetCurrentDate();
Hour = 3600;
Day = 24;
Responsible = 1;
TaskData = New Structure;
TaskData.Insert("TITLE" , "New task");
TaskData.Insert("DESCRIPTION" , "New task description");
TaskData.Insert("PRIORITY" , "2");
TaskData.Insert("DEADLINE" , CurrentDate + Hour * Day);
TaskData.Insert("RESPONSIBLE_ID", Responsible);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreateTask(URL, TaskData);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CreateTask(URL, TaskData, Token);
+16 -16
View File
@@ -1,16 +1,16 @@
FromID = "6416";
DestinationID = "6418";
LinkType = 0;
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreateTasksDependencies(URL, FromID, DestinationID, LinkType);
FromID = "6418";
DestinationID = "6416";
LinkType = 2;
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CreateTasksDependencies(URL, FromID, DestinationID, LinkType, Token);
FromID = "6416";
DestinationID = "6418";
LinkType = 0;
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.CreateTasksDependencies(URL, FromID, DestinationID, LinkType);
FromID = "6418";
DestinationID = "6416";
LinkType = 2;
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.CreateTasksDependencies(URL, FromID, DestinationID, LinkType, Token);
+22 -22
View File
@@ -1,22 +1,22 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Email = String(New UUID) + "@exepmple.org";
// The full structure can be obtained with the function GetUserFieldsStructure
UserStructure = New Structure;
UserStructure.Insert("EMAIL" , Email);
UserStructure.Insert("UF_DEPARTMENT", 7);
Result = OPI_Bitrix24.CreateUser(URL, UserStructure);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Email = String(New UUID) + "@exepmple.org";
UserStructure = New Structure;
UserStructure.Insert("EMAIL" , Email);
UserStructure.Insert("NAME" , "Vitaly");
UserStructure.Insert("LAST_NAME" , "Alpaca");
UserStructure.Insert("PERSONAL_MOBILE", "88003553535");
UserStructure.Insert("UF_DEPARTMENT" , 1);
Result = OPI_Bitrix24.CreateUser(URL, UserStructure, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Email = String(New UUID) + "@exepmple.org";
// The full structure can be obtained with the function GetUserFieldsStructure
UserStructure = New Structure;
UserStructure.Insert("EMAIL" , Email);
UserStructure.Insert("UF_DEPARTMENT", 7);
Result = OPI_Bitrix24.CreateUser(URL, UserStructure);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Email = String(New UUID) + "@exepmple.org";
UserStructure = New Structure;
UserStructure.Insert("EMAIL" , Email);
UserStructure.Insert("NAME" , "Vitaly");
UserStructure.Insert("LAST_NAME" , "Alpaca");
UserStructure.Insert("PERSONAL_MOBILE", "88003553535");
UserStructure.Insert("UF_DEPARTMENT" , 1);
Result = OPI_Bitrix24.CreateUser(URL, UserStructure, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.DeferTask(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.DeferTask(URL, TaskID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.DeferTask(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.DeferTask(URL, TaskID, Token);
+11 -11
View File
@@ -1,11 +1,11 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
UserID = "2166";
Result = OPI_Bitrix24.DelegateTask(URL, TaskID, UserID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.DelegateTask(URL, TaskID, UserID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
UserID = "2166";
Result = OPI_Bitrix24.DelegateTask(URL, TaskID, UserID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.DelegateTask(URL, TaskID, UserID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FieldID = "255";
Result = OPI_Bitrix24.DeleteCustomTaskField(URL, FieldID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
FieldID = "257";
Result = OPI_Bitrix24.DeleteCustomTaskField(URL, FieldID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FieldID = "255";
Result = OPI_Bitrix24.DeleteCustomTaskField(URL, FieldID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
FieldID = "257";
Result = OPI_Bitrix24.DeleteCustomTaskField(URL, FieldID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
DepartmentID = "2160";
Result = OPI_Bitrix24.DeleteDepartment(URL, DepartmentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
DepartmentID = "2158";
Result = OPI_Bitrix24.DeleteDepartment(URL, DepartmentID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
DepartmentID = "2160";
Result = OPI_Bitrix24.DeleteDepartment(URL, DepartmentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
DepartmentID = "2158";
Result = OPI_Bitrix24.DeleteDepartment(URL, DepartmentID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FileID = "35612";
Result = OPI_Bitrix24.DeleteFile(URL, FileID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
FileID = "35614";
Result = OPI_Bitrix24.DeleteFile(URL, FileID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FileID = "35612";
Result = OPI_Bitrix24.DeleteFile(URL, FileID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
FileID = "35614";
Result = OPI_Bitrix24.DeleteFile(URL, FileID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FolderID = "35618";
Result = OPI_Bitrix24.DeleteFolder(URL, FolderID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
FolderID = "35620";
Result = OPI_Bitrix24.DeleteFolder(URL, FolderID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FolderID = "35618";
Result = OPI_Bitrix24.DeleteFolder(URL, FolderID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
FolderID = "35620";
Result = OPI_Bitrix24.DeleteFolder(URL, FolderID, Token);
+12 -12
View File
@@ -1,12 +1,12 @@
StageID = "2408";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.DeleteKanbanStage(URL, StageID, True);
StageID = "2410";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.DeleteKanbanStage(URL, StageID, , Token);
StageID = "2408";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.DeleteKanbanStage(URL, StageID, True);
StageID = "2410";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.DeleteKanbanStage(URL, StageID, , Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
MessageID = "3850";
Result = OPI_Bitrix24.DeleteMessage(URL, MessageID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
MessageID = "4286";
Result = OPI_Bitrix24.DeleteMessage(URL, MessageID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
MessageID = "3850";
Result = OPI_Bitrix24.DeleteMessage(URL, MessageID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
MessageID = "4286";
Result = OPI_Bitrix24.DeleteMessage(URL, MessageID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
NotificationID = "49382";
Result = OPI_Bitrix24.DeleteNotification(URL, NotificationID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
NotificationID = "49384";
Result = OPI_Bitrix24.DeleteNotification(URL, NotificationID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
NotificationID = "49382";
Result = OPI_Bitrix24.DeleteNotification(URL, NotificationID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
NotificationID = "49384";
Result = OPI_Bitrix24.DeleteNotification(URL, NotificationID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
PostID = "2506";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.DeletePost(URL, PostID);
PostID = "2508";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.DeletePost(URL, PostID, Token);
PostID = "2506";
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.DeletePost(URL, PostID);
PostID = "2508";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.DeletePost(URL, PostID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
CommentID = "14896";
Result = OPI_Bitrix24.DeleteResultFromComment(URL, CommentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
CommentID = "14898";
Result = OPI_Bitrix24.DeleteResultFromComment(URL, CommentID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
CommentID = "14896";
Result = OPI_Bitrix24.DeleteResultFromComment(URL, CommentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
CommentID = "14898";
Result = OPI_Bitrix24.DeleteResultFromComment(URL, CommentID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.DeleteTask(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.DeleteTask(URL, TaskID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.DeleteTask(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.DeleteTask(URL, TaskID, Token);
+11 -11
View File
@@ -1,11 +1,11 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6420";
CommentID = "14896";
Result = OPI_Bitrix24.DeleteTaskComment(URL, TaskID, CommentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
CommentID = "14898";
Result = OPI_Bitrix24.DeleteTaskComment(URL, TaskID, CommentID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6420";
CommentID = "14896";
Result = OPI_Bitrix24.DeleteTaskComment(URL, TaskID, CommentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
CommentID = "14898";
Result = OPI_Bitrix24.DeleteTaskComment(URL, TaskID, CommentID, Token);
+11 -11
View File
@@ -1,11 +1,11 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6424";
RecordID = "2394";
Result = OPI_Bitrix24.DeleteTaskTimeAccounting(URL, TaskID, RecordID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
RecordID = "2396";
Result = OPI_Bitrix24.DeleteTaskTimeAccounting(URL, TaskID, RecordID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6424";
RecordID = "2394";
Result = OPI_Bitrix24.DeleteTaskTimeAccounting(URL, TaskID, RecordID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
RecordID = "2396";
Result = OPI_Bitrix24.DeleteTaskTimeAccounting(URL, TaskID, RecordID, Token);
+13 -13
View File
@@ -1,13 +1,13 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
ElementID = "4558";
Result = OPI_Bitrix24.DeleteTasksChecklistElement(URL, TaskID, ElementID);
TaskID = "6418";
ElementID = "4562";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.DeleteTasksChecklistElement(URL, TaskID, ElementID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
ElementID = "4558";
Result = OPI_Bitrix24.DeleteTasksChecklistElement(URL, TaskID, ElementID);
TaskID = "6418";
ElementID = "4562";
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.DeleteTasksChecklistElement(URL, TaskID, ElementID, Token);
+12 -12
View File
@@ -1,12 +1,12 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
UserID = 10;
Result = OPI_Bitrix24.DeleteUserFromChat(URL, ChatID, UserID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.DeleteUserFromChat(URL, ChatID, UserID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
UserID = 10;
Result = OPI_Bitrix24.DeleteUserFromChat(URL, ChatID, UserID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.DeleteUserFromChat(URL, ChatID, UserID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Result = OPI_Bitrix24.DisableChatNotifications(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.DisableChatNotifications(URL, ChatID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Result = OPI_Bitrix24.DisableChatNotifications(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.DisableChatNotifications(URL, ChatID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.DisapproveTask(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.DisapproveTask(URL, TaskID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
TaskID = "6416";
Result = OPI_Bitrix24.DisapproveTask(URL, TaskID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
TaskID = "6418";
Result = OPI_Bitrix24.DisapproveTask(URL, TaskID, Token);
+19 -19
View File
@@ -1,19 +1,19 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
MessageID = "3850";
Text = "New message text";
Result = OPI_Bitrix24.EditMessage(URL, MessageID, Text);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
MessageID = "4286";
Image = "https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/main/service/test_data/picture.jpg";
File = "https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/document.docx";
Attachments = New Array;
Attachments.Add(OPI_Bitrix24.GetPictureBlock("Image1" , Image));
Attachments.Add(OPI_Bitrix24.GetFileBlock("File1.docx" , File));
Result = OPI_Bitrix24.EditMessage(URL, MessageID, Text, Attachments, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
MessageID = "3850";
Text = "New message text";
Result = OPI_Bitrix24.EditMessage(URL, MessageID, Text);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
MessageID = "4286";
Image = "https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/main/service/test_data/picture.jpg";
File = "https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/document.docx";
Attachments = New Array;
Attachments.Add(OPI_Bitrix24.GetPictureBlock("Image1" , Image));
Attachments.Add(OPI_Bitrix24.GetFileBlock("File1.docx" , File));
Result = OPI_Bitrix24.EditMessage(URL, MessageID, Text, Attachments, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Result = OPI_Bitrix24.EnableChatNotifications(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.EnableChatNotifications(URL, ChatID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Result = OPI_Bitrix24.EnableChatNotifications(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.EnableChatNotifications(URL, ChatID, Token);
+18 -18
View File
@@ -1,18 +1,18 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FilterStructure = New Structure;
FilterStructure.Insert("NAME" , "Vitaly");
FilterStructure.Insert("LAST_NAME" , "Alpaca");
FilterStructure.Insert("WORK_POSITION" , "DevOps engineer");
FilterStructure.Insert("UF_DEPARTMENT_NAME", "Marketing department");
FilterStructure.Insert("USER_TYPE" , "employee");
Result = OPI_Bitrix24.FindUsers(URL, FilterStructure);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
FilterStructure = New Structure;
FilterStructure.Insert("UF_DEPARTMENT_NAME", "Bitrix");
Result = OPI_Bitrix24.FindUsers(URL, FilterStructure, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FilterStructure = New Structure;
FilterStructure.Insert("NAME" , "Vitaly");
FilterStructure.Insert("LAST_NAME" , "Alpaca");
FilterStructure.Insert("WORK_POSITION" , "DevOps engineer");
FilterStructure.Insert("UF_DEPARTMENT_NAME", "Marketing department");
FilterStructure.Insert("USER_TYPE" , "employee");
Result = OPI_Bitrix24.FindUsers(URL, FilterStructure);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
FilterStructure = New Structure;
FilterStructure.Insert("UF_DEPARTMENT_NAME", "Bitrix");
Result = OPI_Bitrix24.FindUsers(URL, FilterStructure, Token);
+4 -4
View File
@@ -1,4 +1,4 @@
Domain = "b24-ar17wx.bitrix24.by";
ClientID = "local.6667fc928a50a9.70414732";
Result = OPI_Bitrix24.GetAppAuthLink(Domain, ClientID);
Domain = "b24-ar17wx.bitrix24.by";
ClientID = "local.6667fc928a50a9.70414732";
Result = OPI_Bitrix24.GetAppAuthLink(Domain, ClientID);
+4 -4
View File
@@ -1,4 +1,4 @@
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.GetAppSotrage(URL, Token);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.GetAppSotrage(URL, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Result = OPI_Bitrix24.GetChatFilesFolder(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.GetChatFilesFolder(URL, ChatID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Result = OPI_Bitrix24.GetChatFilesFolder(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.GetChatFilesFolder(URL, ChatID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "chat" + "2566";
Result = OPI_Bitrix24.GetChatMembersList(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
UserID = 10;
Result = OPI_Bitrix24.GetChatMembersList(URL, UserID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "chat" + "2566";
Result = OPI_Bitrix24.GetChatMembersList(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
UserID = 10;
Result = OPI_Bitrix24.GetChatMembersList(URL, UserID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "chat4";
Result = OPI_Bitrix24.GetChatMessagesList(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
UserID = 10;
Result = OPI_Bitrix24.GetChatMessagesList(URL, UserID, , 0, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "chat4";
Result = OPI_Bitrix24.GetChatMessagesList(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
UserID = 10;
Result = OPI_Bitrix24.GetChatMessagesList(URL, UserID, , 0, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Result = OPI_Bitrix24.GetChatUsers(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.GetChatUsers(URL, ChatID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "2566";
Result = OPI_Bitrix24.GetChatUsers(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
ChatID = "2568";
Result = OPI_Bitrix24.GetChatUsers(URL, ChatID, Token);
+8 -8
View File
@@ -1,8 +1,8 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.GetCurrentUser(URL);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.GetCurrentUser(URL, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.GetCurrentUser(URL);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.GetCurrentUser(URL, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FieldID = "255";
Result = OPI_Bitrix24.GetCustomTaskField(URL, FieldID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
FieldID = "257";
Result = OPI_Bitrix24.GetCustomTaskField(URL, FieldID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FieldID = "255";
Result = OPI_Bitrix24.GetCustomTaskField(URL, FieldID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
FieldID = "257";
Result = OPI_Bitrix24.GetCustomTaskField(URL, FieldID, Token);
+8 -8
View File
@@ -1,8 +1,8 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.GetCustomTaskFieldsList(URL);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.GetCustomTaskFieldsList(URL, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.GetCustomTaskFieldsList(URL);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.GetCustomTaskFieldsList(URL, Token);
+8 -8
View File
@@ -1,8 +1,8 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.GetDailyPlan(URL);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.GetDailyPlan(URL, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
Result = OPI_Bitrix24.GetDailyPlan(URL);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.GetDailyPlan(URL, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
DepartmentID = "2160";
Result = OPI_Bitrix24.GetDepartments(URL, DepartmentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
HeadID = 1;
Result = OPI_Bitrix24.GetDepartments(URL, , , , HeadID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
DepartmentID = "2160";
Result = OPI_Bitrix24.GetDepartments(URL, DepartmentID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
HeadID = 1;
Result = OPI_Bitrix24.GetDepartments(URL, , , , HeadID, Token);
+10 -10
View File
@@ -1,10 +1,10 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "chat" + "2566";
Result = OPI_Bitrix24.GetDialog(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
UserID = 10;
Result = OPI_Bitrix24.GetDialog(URL, UserID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
ChatID = "chat" + "2566";
Result = OPI_Bitrix24.GetDialog(URL, ChatID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
UserID = 10;
Result = OPI_Bitrix24.GetDialog(URL, UserID, Token);
+9 -9
View File
@@ -1,9 +1,9 @@
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FileID = "35614";
Result = OPI_Bitrix24.GetFileExternalLink(URL, FileID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.GetFileExternalLink(URL, FileID, Token);
URL = "https://b24-ar17wx.bitrix24.by/rest/1/h0m...";
FileID = "35614";
Result = OPI_Bitrix24.GetFileExternalLink(URL, FileID);
URL = "b24-ar17wx.bitrix24.by";
Token = "11ae5d68006e9f06006b12e400000001000...";
Result = OPI_Bitrix24.GetFileExternalLink(URL, FileID, Token);

Some files were not shown because too many files have changed in this diff Show More