Commit b57e9c9e authored by Samir Sadyhov's avatar Samir Sadyhov 🤔

Merge remote-tracking branch 'origin/master'

parents bb67ed65 ff5fcfdb
......@@ -5,9 +5,9 @@
* Docs: `http://gitlab.lan.arta.kz/community/synergy-components/blob/master/interpreter/jSynergyDocs.md`
*
* Belongs to `TOO Arta Software`
* Last modified: 08.03.2022
* Last modified: 12.07.2024
* Contributes users: none
* Version: 1.0.9
* Version: 1.0.11
*
* By yandexphp
*/
......@@ -623,7 +623,7 @@ function __classSynergy() {
if (
isCompToTable && !__CLIENT__.isExistsComp(args.c, args.ot, args.b) ||
!__CLIENT__.isExistsComp(args.c)
!isCompToTable && !__CLIENT__.isExistsComp(args.c)
) {
return null;
}
......@@ -711,7 +711,7 @@ function __classSynergy() {
if (
isCompToTable && !__CLIENT__.isExistsComp(args.c, args.vt, args.ob) ||
!__CLIENT__.isExistsComp(args.c)
!isCompToTable && !__CLIENT__.isExistsComp(args.c)
) {
return __CLIENT__;
}
......@@ -926,10 +926,12 @@ function __classSynergy() {
*/
getPropsByComp: function (componentId, tableId) {
if (
tableId && componentId && __CLIENT__.isExistsComp(tableId) ||
componentId && __CLIENT__.isExistsComp(componentId)
!__FORM_EXT__ ||
(!tableId && !componentId) ||
(componentId && !tableId && !__CLIENT__.isExistsComp(componentId)) ||
(componentId && tableId && !__CLIENT__.isExistsComp(tableId))
) {
return __CLIENT__;
return null;
}
let data = (__FORM_EXT__.properties || []);
......@@ -1090,13 +1092,29 @@ function __classSynergy() {
* @param {String} tableID Идентификатор (id) таблицы
*/
clearTable: function (tableID) {
if (tableID) {
if (tableID && __CLIENT__.isExistsComp(tableID)) {
let isCleared = false;
__DATA__.forEach(function (item) {
if (item.id === tableID) {
isCleared = true;
item.data = [];
return;
}
});
if(!isCleared) {
let table = __CLIENT__.getPropsByComp(tableID)
if(table && table.config && table.config.appendRows) {
isCleared = true;
__CLIENT__.addAsfData({
id: table.id,
type: 'appendable_table',
data: []
});
}
}
}
return __CLIENT__;
......@@ -1500,9 +1518,9 @@ function __classSynergy() {
this.about = {
name: 'jSynergy',
type: 'Library',
version: '1.0.9 Release',
version: '1.0.11 Release',
created: '17.10.2018',
update: '08.03.2022',
update: '12.07.2024',
company: 'Arta Software',
platform_versions: {
'3.12': '[Not support]',
......@@ -1510,6 +1528,7 @@ function __classSynergy() {
'3.15': '[Not support] - not verified',
'4.0': true,
'4.1': true,
'5.0': true
},
git: 'https://gitlab.lan.arta.kz/community/synergy-components/-/blob/master/interpreter/jSynergyDocs.md',
contributes: {},
......@@ -1656,6 +1675,52 @@ function __classSynergy() {
});
}
if (!Array.prototype.findIndex) {
Array.prototype.findIndex = function(callback, thisArg) {
if (this == null) {
throw new TypeError('Array.prototype.findIndex called on null or undefined')
}
if (typeof callback !== 'function') {
throw new TypeError('callback must be a function')
}
const array = Object(this)
const length = array.length >>> 0
for (let i = 0; i < length; i++) {
if (callback.call(thisArg, array[i], i, array)) {
return i
}
}
return -1
}
}
if (!Array.prototype.findLastIndex) {
Array.prototype.findLastIndex = function(callback, thisArg) {
if (this == null) {
throw new TypeError('Array.prototype.findLastIndex called on null or undefined')
}
if (typeof callback !== 'function') {
throw new TypeError('callback must be a function')
}
const array = Object(this)
const length = array.length >>> 0
for (let i = length - 1; i >= 0; i--) {
if (callback.call(thisArg, array[i], i, array)) {
return i
}
}
return -1
}
}
if (!Date.prototype.getListWeekDays) {
Object.defineProperty(Date.prototype, 'getListWeekDays', {
value: function () {
......
......@@ -11,9 +11,12 @@
Пишите свой код внутри браузера прямо в консоли для более гибкой и удобной отладки.<br/>Если код работает то смело переносите его в интерпретатор.<br/>
Ну или же пишите на хардкоре прямо в БП :sweat_smile:
> PSS: Пишите код на странице с открытой *Synergy* или *SynergyAdmin* или *Configurator* для предотвращения CORS
### ⚠ Внимание!
> PSS:
> - Пишите код на странице с открытой *Synergy* или *SynergyAdmin* или *Configurator* для предотвращения CORS
> - После синхронизации кода на сервере в БП не указывайте defaultSystemUser login & password на кириллице! (BASE64 - НЕ ПОДДЕРЖИВАЕТСЯ НА СТОРОНЕ СЕРВЕРА)
## :coffee: Disclaimer:
### :coffee: Disclaimer:
> Автор не несет ответственности за неправильное функционирование, нанесенный ущерб, неработоспособность и т.д. Который можно получить при использовании данного `класса`. А также не обязуется за доработку его возможностей по вашим прихотям.<br>
......@@ -199,14 +202,14 @@
jSynergy.client.getAsfData();
// Для добавления нового объекта в `asfData` P.S: если такой есть в конфигурации формы, но нет в данных по форме. (метод сразу сохраняет внесенный объект)
jSynergy.client.addAsdData({
jSynergy.client.addAsfData({
id: 'new-obj',
type: 'textbox',
value: 'Hello World!'
});
// Для добавления нескольких новых объектов в `asfData` P.S: если такие есть в конфигурации формы, но нет в данных по форме. (метод сразу сохраняет внесенные объекты)
jSynergy.client.addAsdData([{
jSynergy.client.addAsfData([{
id: 'new-obj1',
type: 'textbox',
value: 'Hello World! #1'
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment