Apply LF line endings
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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"'
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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"'
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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"'
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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"'
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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"
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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'
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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'
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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");
|
||||
|
||||
|
||||
ТекущийДокумент.УстановитьТекст(ТекущийТекст);
|
||||
ТекущийДокумент.Записать(Файл.ПолноеИмя);
|
||||
|
||||
КонецЦикла;
|
||||
@@ -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"];
|
||||
|
||||
МассивШагов = Новый Массив;
|
||||
Для Каждого Библиотека Из СписокБиблиотек Цикл
|
||||
|
||||
Раздел = Библиотека.Ключ;
|
||||
|
||||
Отбор = Новый Структура(СтрокаРаздел, Раздел);
|
||||
ТестыТекущегоРаздела = ТаблицаТестов.НайтиСтроки(Отбор);
|
||||
|
||||
МассивВыполнений = Новый Массив;
|
||||
Для Каждого Тест Из ТестыТекущегоРаздела Цикл
|
||||
|
||||
Метод = Префикс + Тест[СтрокаМетод];
|
||||
|
||||
МассивВыполнений.Добавить(СтрШаблон(ШаблонВыполнения, МодульТестов, Метод))
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
МассивШагов.Добавить(СтрШаблон(ШаблонШага, Раздел, СтрСоединить(МассивВыполнений, Символы.ПС)));
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
Возврат СтрСоединить(МассивШагов, Символы.ПС);
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
Если Признак Тогда
|
||||
МассивФайлов.Добавить(ФайлПроекта);
|
||||
КонецЕсли;
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
Возврат МассивФайлов;
|
||||
|
||||
КонецФункции
|
||||
|
||||
ПриСозданииОбъекта();
|
||||
ОсновнаяОбработка();
|
||||
|
||||
|
||||
@@ -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/*'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,3 +1,3 @@
|
||||
module.exports = {
|
||||
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
|
||||
};
|
||||
module.exports = {
|
||||
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
|
||||
};
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
@@ -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%);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
@@ -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>
|
||||
);
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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} />
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -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 |
@@ -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 |
@@ -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 |
|
Before Width: | Height: | Size: 294 KiB After Width: | Height: | Size: 294 KiB |
@@ -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 |
@@ -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"
|
||||
})
|
||||
})
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||