@saltcorn/data 1.1.2-beta.7 → 1.1.2-beta.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/base-plugin/index.d.ts +8 -10
- package/dist/base-plugin/index.d.ts.map +1 -1
- package/dist/base-plugin/types.d.ts +4 -5
- package/dist/base-plugin/types.d.ts.map +1 -1
- package/dist/base-plugin/types.js +1 -1
- package/dist/base-plugin/viewtemplates/edit.js +1 -1
- package/dist/base-plugin/viewtemplates/show.d.ts.map +1 -1
- package/dist/base-plugin/viewtemplates/show.js +4 -0
- package/dist/base-plugin/viewtemplates/show.js.map +1 -1
- package/dist/base-plugin/viewtemplates/viewable_fields.d.ts +2 -2
- package/dist/base-plugin/viewtemplates/viewable_fields.d.ts.map +1 -1
- package/dist/base-plugin/viewtemplates/viewable_fields.js +22 -11
- package/dist/base-plugin/viewtemplates/viewable_fields.js.map +1 -1
- package/dist/mobile-mocks/models/internal/async_json_stream.d.ts +1 -0
- package/dist/mobile-mocks/models/internal/async_json_stream.d.ts.map +1 -0
- package/dist/mobile-mocks/models/internal/async_json_stream.js +2 -0
- package/dist/mobile-mocks/models/internal/async_json_stream.js.map +1 -0
- package/dist/models/config.d.ts.map +1 -1
- package/dist/models/config.js +10 -2
- package/dist/models/config.js.map +1 -1
- package/dist/models/email.js +1 -1
- package/dist/models/email.js.map +1 -1
- package/dist/models/expression.d.ts.map +1 -1
- package/dist/models/expression.js +5 -2
- package/dist/models/expression.js.map +1 -1
- package/dist/models/index.d.ts.map +1 -1
- package/dist/models/internal/async_json_stream.d.ts +4 -0
- package/dist/models/internal/async_json_stream.d.ts.map +1 -0
- package/dist/models/internal/async_json_stream.js +36 -0
- package/dist/models/internal/async_json_stream.js.map +1 -0
- package/dist/models/table.d.ts +2 -0
- package/dist/models/table.d.ts.map +1 -1
- package/dist/models/table.js +67 -9
- package/dist/models/table.js.map +1 -1
- package/dist/models/workflow_step.d.ts.map +1 -1
- package/dist/models/workflow_step.js +7 -0
- package/dist/models/workflow_step.js.map +1 -1
- package/dist/plugin-helper.d.ts +1 -1
- package/dist/plugin-helper.d.ts.map +1 -1
- package/dist/plugin-helper.js +4 -3
- package/dist/plugin-helper.js.map +1 -1
- package/dist/tests/auth.test.js +150 -1
- package/dist/tests/auth.test.js.map +1 -1
- package/dist/tests/auxtest.test.js +18 -0
- package/dist/tests/auxtest.test.js.map +1 -1
- package/dist/tests/email.test.js +15 -30
- package/dist/tests/email.test.js.map +1 -1
- package/package.json +18 -14
- package/webpack.config.js +6 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../models/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,eAAe,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC,OAAO,EACL,KAAK,EACL,QAAQ,EACR,KAAK,EACL,WAAW,EACX,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,SAAS,EACT,MAAM,EACN,IAAI,EACJ,eAAe,EACf,KAAK,EACL,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,QAAQ,GACT,CAAC;AAEF,OAAO,YAAY,MAAM,UAAU,CAAC;AACpC,yBAAiB,MAAM,CAAC;IACf,MACL,SAAS,4CACT,YAAY,kDACZ,SAAS,8CACT,YAAY,kCACZ,WAAW,4BACX,gBAAgB;;;yBAChB,mBAAmB;;;;;;;;;;;;;;;;;OACnB,sBAAsB,yDACtB,YAAY,yBACZ,eAAe,wCACf,gBAAgB,4BACF,CAAC;CAClB;AAGD,yBAAiB,SAAS,CAAC;IAClB,MACL,mBAAmB,+EACnB,eAAe;;QACf,mBAAmB;;yBACnB,kBAAkB,+EAClB,QAAQ,2BACS,CAAC;CACrB;AAGD,yBAAiB,KAAK,CAAC;IACd,MAAQ,gBAAgB,0CAAE,eAAe,+CAAE,uBAAuB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../models/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,eAAe,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC,OAAO,EACL,KAAK,EACL,QAAQ,EACR,KAAK,EACL,WAAW,EACX,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,SAAS,EACT,MAAM,EACN,IAAI,EACJ,eAAe,EACf,KAAK,EACL,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,QAAQ,GACT,CAAC;AAEF,OAAO,YAAY,MAAM,UAAU,CAAC;AACpC,yBAAiB,MAAM,CAAC;IACf,MACL,SAAS,4CACT,YAAY,kDACZ,SAAS,8CACT,YAAY,kCACZ,WAAW,4BACX,gBAAgB;;;yBAChB,mBAAmB;;;;;;;;;;;;;;;;;OACnB,sBAAsB,yDACtB,YAAY,yBACZ,eAAe,wCACf,gBAAgB,4BACF,CAAC;CAClB;AAGD,yBAAiB,SAAS,CAAC;IAClB,MACL,mBAAmB,+EACnB,eAAe;;QACf,mBAAmB;;yBACnB,kBAAkB,+EAClB,QAAQ,2BACS,CAAC;CACrB;AAGD,yBAAiB,KAAK,CAAC;IACd,MAAQ,gBAAgB,0CAAE,eAAe,+CAAE,uBAAuB;8BAyCmP,CAAC;gCAxChT,CAAC;CACf;AAGD,yBAAiB,UAAU,CAAC;IACnB,MACL,mBAAmB,gCACnB,uBAAuB,iKACvB,6BAA6B,wEAC7B,uBAAuB,0DACvB,eAAe,6EACf,sBAAsB,yFACtB,mBAAmB;;;OACnB,8BAA8B,gJAC9B,aAAa,wGACK,CAAC;CACtB;AAGD,yBAAiB,MAAM,CAAC;IACf,MACL,QAAQ,kFACR,QAAQ,2EACR,QAAQ;;yBACR,YAAY;;2BACZ,iBAAiB,qEACjB,eAAe,+EACD,CAAC;CAClB;AAGD,yBAAiB,MAAM,CAAC;IACf,MAAQ,YAAY,4EAAE,cAAc,mCAAE,YAAY,yDAAE,SAAS;;;;MACtD,CAAC;CAChB;AAGD,yBAAiB,SAAS,CAAC;IAClB,MAAM,YAAY;;qBAEg4F,CAAC;uBAAkC,CAAC;uBAA2B,CAAC;gBAAqB,CAAC;4BAAgC,CAAC;;;;;KAFr+F,CAAC;CAC7C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"async_json_stream.d.ts","sourceRoot":"","sources":["../../../models/internal/async_json_stream.ts"],"names":[],"mappings":"AASA,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAExD,wBAA8B,iBAAiB,CAAC,CAAC,EAC/C,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,GACvB,OAAO,CAAC,IAAI,CAAC,CA0Bf"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// https://stackoverflow.com/a/37041949/19839414
|
|
3
|
+
// https://github.com/uhop/stream-json/issues/82#issuecomment-685289413
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.default = async_json_stream;
|
|
6
|
+
const { Writable } = require("stream");
|
|
7
|
+
const { chain } = require("stream-chain");
|
|
8
|
+
const { parser } = require("stream-json");
|
|
9
|
+
const fs = require("fs");
|
|
10
|
+
const { streamArray } = require("stream-json/streamers/StreamArray");
|
|
11
|
+
async function async_json_stream(filename, asyncF) {
|
|
12
|
+
class WriteToDB extends Writable {
|
|
13
|
+
constructor(options) {
|
|
14
|
+
super({ ...options, objectMode: true });
|
|
15
|
+
}
|
|
16
|
+
_write(chunk, encoding, callback) {
|
|
17
|
+
// this is the stuff you need:
|
|
18
|
+
asyncF(chunk.value)
|
|
19
|
+
.then(() => callback(null))
|
|
20
|
+
.catch((error) => callback(error));
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
const writerToDB = new WriteToDB({});
|
|
24
|
+
const pipeline = chain([
|
|
25
|
+
fs.createReadStream(filename),
|
|
26
|
+
parser(),
|
|
27
|
+
streamArray(),
|
|
28
|
+
writerToDB,
|
|
29
|
+
]);
|
|
30
|
+
return await new Promise((resolve, reject) => {
|
|
31
|
+
pipeline.on("end", () => {
|
|
32
|
+
resolve();
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=async_json_stream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"async_json_stream.js","sourceRoot":"","sources":["../../../models/internal/async_json_stream.ts"],"names":[],"mappings":";AAAA,gDAAgD;AAChD,uEAAuE;;AAUvE,oCA6BC;AArCD,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AACvC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAC1C,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAC1C,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AACzB,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,mCAAmC,CAAC,CAAC;AAItD,KAAK,UAAU,iBAAiB,CAC7C,QAAgB,EAChB,MAAwB;IAExB,MAAM,SAAU,SAAQ,QAAQ;QAC9B,YAAY,OAAY;YACtB,KAAK,CAAC,EAAE,GAAG,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,CAAC,KAAU,EAAE,QAAa,EAAE,QAAa;YAC7C,8BAA8B;YAC9B,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;iBAChB,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;iBAC1B,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QACvC,CAAC;KACF;IACD,MAAM,UAAU,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;IAErC,MAAM,QAAQ,GAAG,KAAK,CAAC;QACrB,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC;QAC7B,MAAM,EAAE;QACR,WAAW,EAAE;QACb,UAAU;KACX,CAAC,CAAC;IACH,OAAO,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACtB,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/models/table.d.ts
CHANGED
|
@@ -566,6 +566,7 @@ declare class Table implements AbstractTable {
|
|
|
566
566
|
}): Promise<ResultMessage>;
|
|
567
567
|
stringify_json_fields(v1: Row): void;
|
|
568
568
|
parse_json_fields(v1: Row): Row;
|
|
569
|
+
import_json_history_file(filePath: string): Promise<void>;
|
|
569
570
|
/**
|
|
570
571
|
* Import JSON table description
|
|
571
572
|
* @param filePath
|
|
@@ -616,6 +617,7 @@ declare class Table implements AbstractTable {
|
|
|
616
617
|
where?: any;
|
|
617
618
|
groupBy?: string[] | string;
|
|
618
619
|
}): Promise<any>;
|
|
620
|
+
ownership_formula_where(user: Row): Where;
|
|
619
621
|
/**
|
|
620
622
|
*
|
|
621
623
|
* @param opts
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../models/table.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,KAAK,EACL,aAAa,EACb,GAAG,EAEH,WAAW,EAEZ,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,SAAS,EACV,MAAM,gDAAgD,CAAC;AAExD,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,+CAA+C,CAAC;AAEvD,OAAO,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../models/table.ts"],"names":[],"mappings":"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"}
|
package/dist/models/table.js
CHANGED
|
@@ -47,7 +47,7 @@ const field_1 = __importDefault(require("./field"));
|
|
|
47
47
|
const common_types_1 = require("@saltcorn/types/common_types");
|
|
48
48
|
const trigger_1 = __importDefault(require("./trigger"));
|
|
49
49
|
const expression_1 = __importDefault(require("./expression"));
|
|
50
|
-
const { apply_calculated_fields, apply_calculated_fields_stored, recalculate_for_stored, get_expression_function, eval_expression, freeVariables, add_free_variables_to_joinfields, removeComments, } = expression_1.default;
|
|
50
|
+
const { apply_calculated_fields, apply_calculated_fields_stored, recalculate_for_stored, get_expression_function, eval_expression, freeVariables, add_free_variables_to_joinfields, removeComments, jsexprToWhere, } = expression_1.default;
|
|
51
51
|
const csvtojson_1 = __importDefault(require("csvtojson"));
|
|
52
52
|
const moment_1 = __importDefault(require("moment"));
|
|
53
53
|
const fs_1 = require("fs");
|
|
@@ -60,6 +60,7 @@ const tags_1 = __importDefault(require("@saltcorn/markup/tags"));
|
|
|
60
60
|
const { text } = tags_1.default;
|
|
61
61
|
const table_helper_1 = require("./internal/table_helper");
|
|
62
62
|
const query_1 = require("./internal/query");
|
|
63
|
+
const async_json_stream_1 = __importDefault(require("./internal/async_json_stream"));
|
|
63
64
|
/**
|
|
64
65
|
* Transponce Objects
|
|
65
66
|
* TODO more detailed explanation
|
|
@@ -730,6 +731,18 @@ class Table {
|
|
|
730
731
|
[owner_field.name]: user.id,
|
|
731
732
|
});
|
|
732
733
|
}
|
|
734
|
+
else if (user &&
|
|
735
|
+
role < 100 &&
|
|
736
|
+
role > min_role &&
|
|
737
|
+
this.ownership_formula) {
|
|
738
|
+
try {
|
|
739
|
+
mergeIntoWhere(where, this.ownership_formula_where(user));
|
|
740
|
+
}
|
|
741
|
+
catch (e) {
|
|
742
|
+
//ignore, ownership formula is too difficult to merge with where
|
|
743
|
+
// TODO user groups
|
|
744
|
+
}
|
|
745
|
+
}
|
|
733
746
|
}
|
|
734
747
|
async addDeleteSyncInfo(ids, timestamp) {
|
|
735
748
|
if (ids.length > 0) {
|
|
@@ -2412,6 +2425,11 @@ ${rejectDetails}`,
|
|
|
2412
2425
|
});
|
|
2413
2426
|
return v1;
|
|
2414
2427
|
}
|
|
2428
|
+
async import_json_history_file(filePath) {
|
|
2429
|
+
return await (0, async_json_stream_1.default)(filePath, async (row) => {
|
|
2430
|
+
await this.insert_history_row(row);
|
|
2431
|
+
});
|
|
2432
|
+
}
|
|
2415
2433
|
/**
|
|
2416
2434
|
* Import JSON table description
|
|
2417
2435
|
* @param filePath
|
|
@@ -2419,20 +2437,20 @@ ${rejectDetails}`,
|
|
|
2419
2437
|
* @returns {Promise<{error: string}|{success: string}>}
|
|
2420
2438
|
*/
|
|
2421
2439
|
async import_json_file(filePath, skip_first_data_row) {
|
|
2422
|
-
const contents = (await (0, promises_1.readFile)(filePath)).toString();
|
|
2423
|
-
// todo argument type buffer is not assignable for type String...
|
|
2424
|
-
const file_rows = contents === "\\N\n" ? [] : JSON.parse(contents);
|
|
2425
2440
|
const fields = this.fields;
|
|
2426
2441
|
const pk_name = this.pk_name;
|
|
2427
2442
|
const { readState } = require("../plugin-helper");
|
|
2428
2443
|
const jsonFields = fields.filter((f) => typeof f.type !== "string" && f?.type?.name === "JSON");
|
|
2429
2444
|
let i = 1;
|
|
2445
|
+
let importError;
|
|
2430
2446
|
const client = db_1.default.isSQLite ? db_1.default : await db_1.default.getClient();
|
|
2431
2447
|
await client.query("BEGIN");
|
|
2432
|
-
|
|
2448
|
+
const consume = async (rec) => {
|
|
2433
2449
|
i += 1;
|
|
2434
2450
|
if (skip_first_data_row && i === 2)
|
|
2435
|
-
|
|
2451
|
+
return;
|
|
2452
|
+
if (importError)
|
|
2453
|
+
return;
|
|
2436
2454
|
fields
|
|
2437
2455
|
.filter((f) => f.calculated && !f.stored)
|
|
2438
2456
|
.forEach((f) => {
|
|
@@ -2454,15 +2472,20 @@ ${rejectDetails}`,
|
|
|
2454
2472
|
await client.query("ROLLBACK");
|
|
2455
2473
|
if (!db_1.default.isSQLite)
|
|
2456
2474
|
await client.release(true);
|
|
2457
|
-
|
|
2475
|
+
importError = `${e.message} in row ${i}`;
|
|
2458
2476
|
}
|
|
2459
|
-
}
|
|
2477
|
+
};
|
|
2478
|
+
await (0, async_json_stream_1.default)(filePath, async (row) => {
|
|
2479
|
+
await consume(row);
|
|
2480
|
+
});
|
|
2481
|
+
if (importError)
|
|
2482
|
+
return { error: importError };
|
|
2460
2483
|
await client.query("COMMIT");
|
|
2461
2484
|
if (!db_1.default.isSQLite)
|
|
2462
2485
|
await client.release(true);
|
|
2463
2486
|
await this.resetSequence();
|
|
2464
2487
|
return {
|
|
2465
|
-
success: `Imported ${
|
|
2488
|
+
success: `Imported ${i - 1} rows into table ${this.name}`,
|
|
2466
2489
|
};
|
|
2467
2490
|
}
|
|
2468
2491
|
/**
|
|
@@ -2732,6 +2755,28 @@ ${rejectDetails}`,
|
|
|
2732
2755
|
return res.rows;
|
|
2733
2756
|
return res.rows[0];
|
|
2734
2757
|
}
|
|
2758
|
+
ownership_formula_where(user) {
|
|
2759
|
+
if (!this.ownership_formula)
|
|
2760
|
+
return {};
|
|
2761
|
+
const wh = jsexprToWhere(this.ownership_formula, { user }, this.fields);
|
|
2762
|
+
if (wh.eq && Array.isArray(wh.eq)) {
|
|
2763
|
+
let arr = wh.eq;
|
|
2764
|
+
for (let index = 0; index < arr.length; index++) {
|
|
2765
|
+
const element = arr[index];
|
|
2766
|
+
if (typeof element === "symbol") {
|
|
2767
|
+
const field = this.getField(element.description);
|
|
2768
|
+
if (field) {
|
|
2769
|
+
wh[field.name] = arr[arr.length - index - 1];
|
|
2770
|
+
delete wh.eq;
|
|
2771
|
+
}
|
|
2772
|
+
}
|
|
2773
|
+
}
|
|
2774
|
+
}
|
|
2775
|
+
//TODO user groups
|
|
2776
|
+
if (wh.eq)
|
|
2777
|
+
return {};
|
|
2778
|
+
return wh;
|
|
2779
|
+
}
|
|
2735
2780
|
/**
|
|
2736
2781
|
*
|
|
2737
2782
|
* @param opts
|
|
@@ -2763,6 +2808,19 @@ ${rejectDetails}`,
|
|
|
2763
2808
|
[owner_field.name]: forUser.id,
|
|
2764
2809
|
});
|
|
2765
2810
|
}
|
|
2811
|
+
else if (role && role > this.min_role_read && this.ownership_formula) {
|
|
2812
|
+
if (!opts.where)
|
|
2813
|
+
opts.where = {};
|
|
2814
|
+
if (forPublic || role === 100)
|
|
2815
|
+
return { notAuthorized: true }; //TODO may not be true
|
|
2816
|
+
try {
|
|
2817
|
+
mergeIntoWhere(opts.where, this.ownership_formula_where(forUser));
|
|
2818
|
+
}
|
|
2819
|
+
catch (e) {
|
|
2820
|
+
//ignore, ownership formula is too difficult to merge with where
|
|
2821
|
+
// TODO user groups
|
|
2822
|
+
}
|
|
2823
|
+
}
|
|
2766
2824
|
for (const [fldnm, { ref, target, through, ontable }] of Object.entries(joinFields)) {
|
|
2767
2825
|
let reffield;
|
|
2768
2826
|
if (ontable) {
|