238 Commits

Author SHA1 Message Date
rugk
1cc811644f docs: improve JSDoc 2026-02-23 16:00:31 +00:00
rugk
30f80d055b wipfix: fix JS syntax errors 2026-02-23 15:54:56 +00:00
rugk
5dab2392b9 Merge branch 'master' into xss/jsImprove 2026-02-23 16:48:21 +01:00
Stephan Kristyn
5d22847ef1 ES6 Compat code broke everything. Reverting. E2E testing wth multiple files works 2026-02-12 13:48:49 +01:00
Stephan Kristyn
cfea0fb20e Now leaving styling to customer if he wants the filename and filesize as a hyperlink or outside the hyperlink 2026-02-11 19:03:34 +01:00
Stephan Kristyn
9ab16674aa Adding Bootstrap Classname to dynamically created child element 2026-02-10 18:22:17 +01:00
Stephan Kristyn
e2b4b8a7f8 Adding new DOM element, CSS and JS code 2026-02-10 14:36:03 +01:00
El RIDO
ec656a5456 credit Persian translation & enable use of Persian plurals 2026-02-06 19:15:02 +01:00
El RIDO
a1c8966a36 Merge branch 'master' into linter-semicolon-insertion 2026-01-28 07:33:58 +01:00
El RIDO
f6c01a6489 update SRI hash 2026-01-28 07:21:32 +01:00
El RIDO
a4eaa77b82 address semicolon insertion lint
> Code that uses automatic semicolon insertion inconsistently is hard to read and maintain.

See: https://github.com/PrivateBin/PrivateBin/security/quality/rules/js%2Fautomatic-semicolon-insertion
2026-01-25 09:41:52 +01:00
El RIDO
0ed48c455f address unneeded defensive code lint
IMHO this check is actually necessary, as we do call the function with an empty argument. So we need a guard there, but we could simplify it a bit, by making the argument an empty array by default. I still kept the check for undefined (line 3249, first check) in case the caller passes us an undefined variable.

See: https://github.com/PrivateBin/PrivateBin/security/quality/rules/js%2Funneeded-defensive-code - Copilot suggested to simply remove the if-condition and its else block, which I think is wrong.
2026-01-25 09:26:14 +01:00
woutresseler
33c93f4d40 Update hash for privatebin.js 2026-01-20 13:18:57 +01:00
Ribas160
ed9b3d1aa0 fix: The content format is not reset on create a new or clone document 2025-12-14 09:08:48 +02:00
Ribas160
54d002d26f fix: Attachment disappears after a "paste" in the message area 2025-12-09 15:43:59 +02:00
El RIDO
aa931c7a5c enable Swedish translations 2025-12-02 06:40:07 +01:00
rugk
ce06857d2c chore update SRI hash of main JS file 2025-11-27 21:05:59 +00:00
El RIDO
b4db5f8e57 apply null coalescing operator, strict equality, avoid aliases, prefer empty 2025-11-20 08:19:14 +01:00
El RIDO
c8643f187e apply null coalescing operator
Co-authored-by: Mikhail Romanov <42250412+Ribas160@users.noreply.github.com>
2025-11-19 18:45:35 +01:00
El RIDO
3a23117ebf Refactored translation of exception messages 2025-11-19 09:36:40 +01:00
El RIDO
3e6f1733f9 refactored exceptions in controller
- added missing exception doc blocks
- introduced exception type that translates message during construction
- catch explicit exception types where possible
2025-11-19 09:36:39 +01:00
El RIDO
e427458cd0 Merge branch 'master' into advisory-fix-1 2025-11-11 22:00:09 +01:00
Ribas160
08b3244314 privatebin.js SRI and CHANGELOG.md updated 2025-11-11 20:13:10 +02:00
Ribas160
9c71fbcc70 Use pure JavaScript to create a div element 2025-11-11 17:45:27 +02:00
Ribas160
14b68af528 Insert drag and drop file names as a text, not html 2025-11-10 17:59:18 +02:00
Ribas160
a7b253a43a fix: error fetching attachments from blob 2025-11-05 17:33:08 +02:00
El RIDO
a91d0afebd ensure there is still a space between commenter icon and name 2025-10-28 16:35:58 +01:00
El RIDO
43cf8b53ac Merge branch 'master' into purify-3.3.0 2025-10-28 11:27:17 +01:00
El RIDO
c4f8482b30 Refactored jQuery DOM element creation
using plain JavaScript, to ensure text nodes are sanitized
2025-10-25 12:56:55 +02:00
El RIDO
fd2c2ae0c5 update DOMpurify library from 3.2.7 to 3.3.0 2025-10-25 10:52:40 +02:00
El RIDO
06496a1b0e update bootstrap CSS library from 5.3.7 to 5.3.8 2025-10-09 09:24:08 +02:00
El RIDO
ed9bdc4272 update DOMpurify library from 3.2.6 to 3.2.7 2025-10-09 08:57:20 +02:00
El RIDO
e7c2aa4d60 address eslint errors 2025-10-07 00:11:49 +02:00
El RIDO
85962a537a fix php unit tests & SRI hash 2025-10-06 23:53:13 +02:00
El RIDO
7f93242279 upgrade eslint config and remove workaround for implicit globals
we seem to have used eslint through codeclimate in the past, but that service seems no longer integrated, possibly due to no longer being free
2025-10-06 18:30:19 +02:00
El RIDO
7ca49d1363 chore: update SRI hashes 2025-09-30 20:45:24 +02:00
El RIDO
f03f2bf28d simplify cache breaker extraction 2025-09-25 22:06:38 +02:00
El RIDO
0befe7e3cc update SRI hash 2025-09-24 12:38:50 +02:00
TW - Vincent
fd664dd577 Update Configuration.php 2025-09-21 19:02:49 +02:00
TW - Vincent
ba42cdbe62 Update Configuration.php 2025-09-21 18:34:06 +02:00
Karthik Kasturi
0808052acf Added shlink integration 2025-08-15 00:07:51 +01:00
Karthik Kasturi
94e0d718cf update SRI 2025-08-14 00:39:59 +01:00
Karthik Kasturi
059e64adb1 Auto Shortening URLs 2025-08-14 00:29:28 +01:00
Karthik Kasturi
065d9eaa23 Updated SRI and Changelog 2025-08-06 23:36:36 +05:30
El RIDO
f739b5b6a9 Merge pull request #1621 from jacquesbh/configuration-isnt-private
Use protected instead of private $_configuration
2025-08-01 07:09:30 +02:00
Jacques Bodin-Hullin
51d8e92e6a feat(configuration): Use protected instead of private
This way we can override the $_configuration property using
a new Configuration extending the PrivateBin one.
2025-07-31 23:59:58 +02:00
Nicolas Lepage
79dc03660b chore: updates SRI hash for privatebin.js 2025-07-31 16:19:42 +02:00
El RIDO
ddd2d72064 replaced the term "paste" with the more generic "document"
Some of the references to "paste" in code or comments got changed as well, but to clarify the intended usage of the terms:

- A PrivateBin document can consist of a paste text (key "paste" in the encrypted payload) and one or several attachments and discussion entries.
- Internally the root document is called a "Paste" and each discussion entry is called a "Discussion".
- When referring to a whole document with one paste and optional discussion(s), we call it just "document".
- When talking about a particular JSON payload type in the internal logic, i.e. during storage or transmission, we call them a paste or discussion to distinguish which type we refer to.

closes #397
2025-07-24 10:46:31 +02:00
Ribas160
5d119768c3 JavaScript unit tests for new SI units added, privatebin.js SRI updated 2025-07-24 00:33:38 +03:00
Ribas160
863cb89ad9 Switch from binary bytes to SI-units 2025-07-23 21:06:20 +03:00