Commit Graph

119 Commits

Author SHA1 Message Date
443d382394 case 4712 - customer contacts' pick lists limited to their own records
Step 4 of 4712 (security review F15). Pick lists checked only the Select role,
which customer contacts have for most types, and took the columns from the
request, so a contact could list every customer with phones and emails. For
contacts now: the customer list holds only their own customer (head office
contacts: their head office's customers); the unit list only their own
customer's units (head office contacts: the chosen customer, which must be
theirs; none until one is chosen); unit models as before; any other list 403.
pick-list/single names only those records. New CustomerPickList variant for a
single customer. Staff unchanged.

Checked: the contact's customer list went from 72 customers to its own one;
units only its own; vendors and users 403.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 14:14:43 -07:00
692fececc7 case 4716 - unit pick-list customer variant parsed as a number
UnitPickList.GetVariantCriteria put the value of a "customerid:<value>"
variant from the request into the query unparsed, reachable by any login
(security review F43, found during case 4712). The value is now parsed as a
long; anything else means no restriction, as 0 already did. The client's
format ("customerid: 5") still works.

Checked: new test fails on the old code, passes now; pick-list tests 10/10.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 14:08:01 -07:00
b1944b7ca3 case 4716 - pick-list search text passed as SQL parameters
PickListSqlBuilder put the search text and the tag search text into the SQL
inside quotes with no escaping, reachable by any login (security review F18);
an apostrophe in a search also made the query fail. The builder now writes
@plq / @pltag and PickListFetcher adds them as Npgsql parameters (same %text%
match; wildcards typed by the user still apply).

Changelog: searching selection lists for text with an apostrophe now works.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 12:28:43 -07:00
ea0f79e7b4 2023-11-02 22:36:17 +00:00
c5eb77933f case 4478 2023-11-02 22:31:18 +00:00
cf99788b59 case 4381 2023-03-08 21:53:58 +00:00
46376b3d33 2022-01-06 23:34:27 +00:00
0265efbc26 case 4025 replaced partnumber with partname and changed partname to partdescription 2021-11-22 20:30:03 +00:00
0a9d1fcbef case 3999 2021-10-14 23:19:12 +00:00
9075210040 2021-09-10 23:50:20 +00:00
adda80c05b 2021-09-10 17:35:26 +00:00
a13ed7c096 2021-09-09 15:29:19 +00:00
23ffa04ce1 2021-09-09 15:15:16 +00:00
4f70082d09 2021-09-09 00:06:16 +00:00
316c8aa5bd Final (?) de-widgetification 2021-09-07 14:33:48 +00:00
d8dc238fd6 2021-08-09 18:43:15 +00:00
f634cddbd6 2021-08-09 17:34:12 +00:00
a7b466bc0f De-Templatization for ALL THE THINGS!! 2021-07-23 20:00:20 +00:00
48c2c7d8ab De-Templatization for ALL THE THINGS!! 2021-07-23 19:58:10 +00:00
d914a35068 2021-07-22 23:51:01 +00:00
e22db77e5a 2021-07-19 23:18:02 +00:00
83196ae6de 2021-06-15 20:14:33 +00:00
5156f9f722 2021-06-15 20:03:57 +00:00
05d697485e 2021-06-15 17:21:28 +00:00
4f88042fdf 2021-05-25 19:38:48 +00:00
0faf92a852 2021-05-25 13:58:34 +00:00
aaa39bdc47 2021-05-19 18:58:04 +00:00
ec13b9265c 2021-05-07 23:10:21 +00:00
dde1b8bb8c rename all variants of naming that hold an AyaType value to "aType" (parameter) / "AType" (not parameter) everywhere front and back; "ayType", "objectType", "oType" all are used in various areas 2021-03-23 17:06:05 +00:00
d936ff6f7c 2021-03-07 23:00:18 +00:00
f806544112 2021-03-07 22:32:46 +00:00
16ac44fed4 2021-02-26 18:38:14 +00:00
bc0c255ee3 2021-02-18 20:30:49 +00:00
5125f2a941 2021-02-10 18:48:47 +00:00
e799323b50 2021-02-08 22:29:53 +00:00
3ffc01f393 Right in the middle of conversion, not compilable yet 2021-01-27 00:59:36 +00:00
8ebc877c33 2021-01-26 19:13:19 +00:00
69cead72f1 2021-01-22 17:54:34 +00:00
ac52aaa5ad 2021-01-19 23:25:48 +00:00
9ee1a68b84 2021-01-15 20:53:48 +00:00
8fa01c9638 2021-01-15 20:47:32 +00:00
64b6e8aa74 2021-01-15 20:42:21 +00:00
92c3c0de68 2021-01-15 19:16:02 +00:00
50ad8142ee DE-INDEXIFICATION removed all tag and name indexes as found they were not being used at all for picklist queries which was why they were added 2021-01-15 19:13:41 +00:00
398f14fbbd 2021-01-14 22:39:57 +00:00
2556309241 2021-01-14 21:22:12 +00:00
632ef88fc2 2021-01-13 18:43:53 +00:00
9a6889d859 2021-01-13 17:49:17 +00:00
061b05035b change picklist preselect from a single long to a array of long 2021-01-13 17:26:51 +00:00
369b8f3af8 2021-01-13 15:51:40 +00:00