Commit Graph

335 Commits

Author SHA1 Message Date
El RIDO
b44e729a1a
fixing display of version 1 pastes without attachments 2019-05-19 13:31:17 +02:00
El RIDO
353d08daf6
handle regression due to base58 stripping NULL bytes, discovered via JSVerify RNG state 0dec6b2a5f04d19873 2019-05-19 09:54:40 +02:00
El RIDO
3b0ab7e99f
fixing regression handling v1 key format (un-decoded base64) 2019-05-19 08:36:18 +02:00
El RIDO
6f480bf014
Merge branch 'master' into webcrypto, implementing base58, fixes #377 2019-05-15 21:20:54 +02:00
El RIDO
09162a3c57
fix display of v2 pastes in JS, fixing parsing of comments in PHP, avoid exposing expiration date (we provide time_to_live, would allow calculation of creation date of paste) 2019-05-15 07:44:03 +02:00
El RIDO
cc1c55129f
switching to full JSON API without POST array use, ensure all JSON operations are done with error detection 2019-05-13 22:31:52 +02:00
El RIDO
50af37507f
fixing v2 TTL 2019-05-11 10:46:30 +02:00
El RIDO
788ea67b49
fixing server interaction in JS, simple pastes now work 2019-05-11 10:39:42 +02:00
El RIDO
0f42bd818f
quiescing JS unit tests 2019-05-10 21:01:34 +02:00
Harald Leithner
4aab3c0061 Encode key as base58 2019-05-08 15:25:42 +02:00
El RIDO
5652a43d1d
adding js test to generate v2 example pastes to be used in the development of the server side logic, adding one of these into the helper class of the php tests 2019-04-16 07:45:04 +02:00
rugk
ba3efefc7b Add warning for insecure HTTP 2019-02-13 11:59:07 +01:00
El RIDO
e418b083e8
Merge branch 'master' into webcrypto 2019-01-22 20:11:42 +01:00
rugk
c2a46b7af7
Make JS function more robust 2019-01-22 00:07:28 +01:00
El RIDO
79a858f176
extracting only the 16 hex characters of the query string as paste ID, addressing #396 2019-01-20 12:20:37 +01:00
El RIDO
0ee86f33da
key in version 2 is raw value instead of base64 (which reduces its complexity), made PasteDecryptor support both versions of the format, refactoring method names, replacing var by let / const, reducing zlib compression level from 9 to 7 to half the time spent on compression 2018-12-29 18:40:59 +01:00
El RIDO
be69e4a50f
simplify password catenation in version 2, to avoid potential key derivation weakening 2018-12-28 05:49:34 +01:00
El RIDO
0ad5b3e900
implement zlib via web assembly, replacing rawdeflate library 2018-12-27 21:32:13 +01:00
El RIDO
5ce3aa2817
increase PBKDF2 iterations further, as suggested in #350 2018-12-25 20:19:57 +01:00
El RIDO
0ab06e34ec
initial refactoring for support of version 2 paste format, some cleanup on the side 2018-12-25 17:34:39 +01:00
El RIDO
5b00f4ead7
further code deduplication 2018-10-20 23:08:13 +02:00
El RIDO
4c3fb3fe63
reduce code duplication 2018-10-20 22:34:36 +02:00
El RIDO
717e5b0e57
addressing issues found by codacy 2018-10-20 22:05:35 +02:00
El RIDO
0f76b9066d
remove SJCL library 2018-10-20 19:53:21 +02:00
El RIDO
2d7996570e
typos, documentation 2018-10-20 17:57:21 +02:00
El RIDO
2929d5c17a
fixing async comment nicknames 2018-10-20 13:54:17 +02:00
El RIDO
a08fed1add
ensure promises can be collected 2018-10-20 12:40:08 +02:00
El RIDO
35045bb69a
improving error handling 2018-10-20 11:40:37 +02:00
El RIDO
100d955e1a
address decryptComments() async compatibility 2018-10-20 10:20:32 +02:00
El RIDO
ff8ec5a1a0
address decryptOrPromptPassword(), decryptPaste() and decryptAttachment() async compatibility 2018-10-20 09:56:05 +02:00
rugk
17131f3172
Add verys important return to ensure Promise chain works 2018-10-08 21:04:13 +02:00
rugk
746debf586
Adjust functions using Uploader.setData to handle promises 2018-10-08 21:03:10 +02:00
rugk
94a352e7f5
Fix eslint config and issues
Note EcmaScript 2017 looks recent amd also is, e.g. we loose suport for IE and we loose support for some Android browsers, also Android <5 built-in browser.
2018-10-08 20:36:50 +02:00
El RIDO
b191e2c437
Merge remote-tracking branch 'origin/master' into webcrypto 2018-09-02 10:07:57 +02:00
El RIDO
8b71cb0b2f
properly escaping HTML in raw text mode, fixes #358 2018-09-02 09:14:36 +02:00
El RIDO
b97ac08003
improving tests, correcting cipher 2018-09-01 22:22:10 +02:00
El RIDO
0dbbb61d11
implementing web crypto API for encryption 2018-09-01 19:42:22 +02:00
El RIDO
bd6888687f
Merge branch 'master' into webcrypto 2018-08-14 06:59:47 +02:00
El RIDO
b5ebc4a3d7
incrementing version 2018-08-11 19:29:58 +02:00
El RIDO
10201dc463
expanded unit tests to cover mega links, reverted regex to old one, but fixed to cover mega links, just to prove it works 2018-08-11 07:33:33 +02:00
El RIDO
c468b74b9b
Merge branch 'master' into linkregex 2018-08-11 06:56:02 +02:00
El RIDO
c4fc7edc43
replacing Base64.js with browser built in's, except for legacy paste support 2018-08-05 08:56:03 +02:00
El RIDO
6f25d651b7
switching to client side libraries for key generation, remove legacy browser support 2018-08-04 22:30:01 +02:00
El RIDO
c9a3bb08ee
remove dead code 2018-08-04 17:49:08 +02:00
El RIDO
4f332b7719
revert legacy browser support, dropped in favour of webcrypto API 2018-08-04 17:25:59 +02:00
El RIDO
0319a16b15
support older browsers correctly and ensure the paranoia setting for the sjcl.random.isReady call matches paranoia level 10 instead of the default 6 2018-08-04 13:25:31 +02:00
El RIDO
1be1047a94
while we do start the collection of randomness even before initializing our logic, raising the 'paranoia' parameter to 10 ensures that in legacy browsers not yet supporting the webcrypto API we would get an exception, instead of a weak key 2018-08-01 21:56:23 +02:00
El RIDO
e2c04e13e8
fixing doc block for jsdoc 2018-07-22 10:24:39 +02:00
El RIDO
3fecd0f2ce correct page template & password prompt/modal, fixes #341, remove JS map reference leading to unnecessary load error 2018-07-21 06:44:04 +00:00
rugk
c1ab1dd8c5
Enable auto-linking in Markdown
This get's feature-completition to plain-text auto-linking.
Fixes https://github.com/PrivateBin/PrivateBin/issues/336
2018-07-01 20:22:42 +02:00
rugk
c3c1473dc9
Allow one-letter TLDs/host names 2018-07-01 19:49:21 +02:00
rugk
676a02619d
Fix magnet links 2018-07-01 16:31:40 +02:00
rugk
119c3931cc
Try new RegEx for creating links 2018-07-01 15:13:24 +02:00
El RIDO
2a3017a3bd making comments on pretty printed pastes work again 2018-07-01 12:49:35 +00:00
El RIDO
cfe60db8fd
increment version number 2018-07-01 13:11:32 +02:00
El RIDO
c22537c979 fix sending anonymous comments 2018-07-01 07:18:21 +00:00
El RIDO
5eebd27e82
fixing rngState 858b17ef69dc30a542, upgrade to jQuery 3.3.1 made event queue load callback too late, hence highlight right away and only handle highlight disable in the callback, after scrolling to comment 2018-07-01 08:59:55 +02:00
El RIDO
a7029cc564
fixes #282 2018-06-30 15:59:54 +02:00
El RIDO
6225a8ef16
updating translators in credits 2018-06-11 20:29:47 +02:00
Peter Tabajdi
3eb4acfd32 New Hungarian translation file and languange selector added to js. 2018-05-31 17:07:42 +02:00
El RIDO
2d09a6d73c
Merge branch 'master' into burnafterreading-fix 2018-05-27 14:00:38 +02:00
El RIDO
57754fa440
Merge branch 'master' of github.com:PrivateBin/PrivateBin 2018-05-27 13:49:11 +02:00
rugk
1985dff67c
Clear file input on pste event, too
Fixes https://github.com/PrivateBin/PrivateBin/issues/318
2018-05-22 13:09:15 +02:00
rugk
567fa8b61f
Add semicolon required by codacy 2018-05-22 11:43:44 +02:00
rugk
1bf910480b
Do not show error, when paste is deleted manually
Prior to this commit, if the paste has been deleted manually (clicking
on "delete paste" after creation) it tried to fetch the now deleted
paste and display an error. This makes, of course, no sense.
2018-05-22 11:41:35 +02:00
rugk
626b4450e3
Merge branch 'master' into burnafterreading-fix 2018-05-22 10:57:30 +02:00
rugk
733cc70967
Improve code style of function names
Thx
429d43dc78 (r29068381)
2018-05-22 10:19:53 +02:00
rugk
429d43dc78
Make some functions of AttachmentHandler private
They are only used/referenced in the same module, so there is no need to
make them public.
2018-05-22 00:43:24 +02:00
rugk
14a7fd7091
Fix https://github.com/PrivateBin/PrivateBin/issues/315
Fixes some display issues related to file display.
2018-05-22 00:41:02 +02:00
rugk
da45d347e2
Fix attachment issues
Fixes https://github.com/PrivateBin/PrivateBin/issues/315
The attachment viewer is also used for storing to be uploaded
attachments, which caused some confusion in handling them.
I also tried to add some comments clarifying it as it seems to work.

Additionally I fixed the issue that you could submit an empty paste and
it was not rejected.
2018-05-21 19:32:01 +02:00
Michael van Schaik
652ba607a5
Adding 'nl' (Dutch) language to privatebin.js
(Security hash needs to be regenerated)
2018-05-18 06:36:35 +02:00
El RIDO
caf87cc6f1
Merge branch 'master' into burnafterreading-fix, regression in expired paste error 2018-04-30 20:01:38 +02:00
El RIDO
2c82279292
Merge branch 'attachment-handling' of https://github.com/thororm/PrivateBin into thororm-attachment-handling
apart from resolving conflicts:
- added missing docs
- inlined functions that were used in only one location
- updated unit test to support all previews
- fixed a regression that displayed the preview even when there was no preview and too early
2018-04-29 11:57:03 +02:00
El RIDO
de4b96c5ed
Merge branch 'blob' of https://github.com/otaku/PrivateBin into otaku-blob 2018-04-29 10:28:40 +02:00
El RIDO
e4bf41202e
Merge branch 'master' into js-unit-testing 2018-04-29 08:53:59 +02:00
Alexander Do
2fce7bb96a Merge branch 'master' of github.com:PrivateBin/PrivateBin into blob 2018-04-09 16:36:23 +00:00
Alexander Do
3f28f01b0e Switch from bind / unbind to on / off 2018-04-09 15:57:58 +00:00
Alexander Do
60cedd7fb5 Only create Blob for Download for IE upon click event 2018-04-09 04:44:37 +00:00
Alexander Do
2925fa8bfc Requested Changes, IE Download fix only 2018-04-08 22:36:55 +00:00
Alexander Do
d3b8ef44ed Download Attachment changes. Support for Edge and change to Blob 2018-04-07 06:59:26 +00:00
Alexander Do
c6950b9b56 Default to en if browser does not provide a language 2018-04-07 02:53:00 +00:00
El RIDO
78c186d6bc
avoid StyleCI complaint 2018-03-04 13:19:49 +01:00
El RIDO
0938b59b90
attributes contain strings, not booleans 2018-03-04 11:47:58 +01:00
El RIDO
76debde85b
found and fixed a bug in TopNav.collapseBar() while writing test for it 2018-03-03 07:55:27 +01:00
El RIDO
ce6764e97d
introduce built in asserts, working on TopNav, correcting some docs 2018-03-01 06:43:30 +01:00
El RIDO
266b71bfd0
Merge branch 'master' into js-unit-testing 2018-02-25 09:51:49 +01:00
El RIDO
a3e0418b33
working on TopNav tests 2018-02-25 09:45:51 +01:00
rugk
0687448d0a
Fix some issues from ESLint 2018-02-21 22:51:31 +01:00
El RIDO
ffae6111b0
handling further JSHint warnings and TODOs 2018-01-06 13:32:07 +01:00
El RIDO
98d07e0789
improving code quality issues reported by Codacy 2018-01-06 10:57:54 +01:00
El RIDO
d92755f030
undoing code style regression 2018-01-06 09:58:19 +01:00
El RIDO
72acc95326
improving code quality issues suggested by JSHint 2018-01-06 09:26:10 +01:00
El RIDO
5e070db6a1
reverting escaping just for Markdown formatting, as discussed in #269 2018-01-03 21:18:33 +01:00
El RIDO
a95701bba8
completing DiscussionViewer testing 2018-01-02 15:38:37 +01:00
El RIDO
28f1f41c17
removing duplicate code and unused option 2018-01-02 11:42:03 +01:00
El RIDO
85401a1513
Merge branch 'master' into js-unit-testing 2018-01-02 09:37:46 +01:00
El RIDO
094a0c80db
Merge branch 'master' into qrcode 2018-01-02 07:56:16 +01:00
El RIDO
bb54d46c7e
updating DOMPurify library, simplifying its use, ensuring HTML entities get escaped before formatting paste - regression introduced in #258, reported in #269 2018-01-01 10:25:07 +01:00
rugk
414ab0eb71
Add config and basic page template support
* load JS file asyncronously (just HTML5 async attribut)
* add basic support for page template, where it generates the code inside
  of a simple div at the top
* added option to turn off QR code support
2017-12-25 14:59:15 +01:00
El RIDO
d80c2f83fa
making DiscussionViewer testable, removing some inconsistency 2017-12-18 14:47:17 +01:00
El RIDO
39860dfdc4
making AttachmentViewer testable and implementing tests 2017-12-03 14:29:07 +01:00
El RIDO
dac86eb363
making AttachmentViewer testable 2017-11-28 06:38:10 +01:00
rugk
7bf5af761b
Add QR code generation when paste is created 2017-11-26 15:59:12 +01:00
El RIDO
a0740ff79f
getting rid of htmlEntities (except for tests) and setElementText (dropping IE9 support), changing urls2links interface, all to avoid double encoding sanitized HTML 2017-11-22 22:27:38 +01:00
rugk
56f4ee5c20
Revert "Try to move sanitisation & links into setElementText"
This reverts commit 8d2e19f791.
2017-11-22 16:48:54 +01:00
rugk
8d2e19f791
Try to move sanitisation & links into setElementText 2017-11-22 16:48:00 +01:00
El RIDO
9fa2ea3373
ensuring text is sanitized in all cases, before being injected into the DOM 2017-11-22 08:05:06 +01:00
El RIDO
2d00202b42
correcting the XSS test, commenting two failing patterns, to be reviewed by @rugk 2017-11-22 07:03:29 +01:00
El RIDO
233bd65b00
Merge branch 'master' into sanitizeMarkdown, changing test to use new library 2017-11-22 06:30:38 +01:00
rugk
bbec693cab
Allow DOMPurify as a global 2017-11-21 22:26:02 +01:00
rugk
b6d7d56774
Sanitize HTML code
using DOMPurify v1.0.2
Fixes https://github.com/PrivateBin/PrivateBin/issues/183
2017-11-21 21:22:51 +01:00
El RIDO
c6ddee317d
adding tests for PasteViewer class 2017-11-21 10:53:33 +01:00
El RIDO
360a0921e2
adding tests for Prompt class, typos 2017-11-20 08:49:25 +01:00
El RIDO
9d1a9a0da7
fixing paste success message handling in page template 2017-11-16 08:57:08 +01:00
El RIDO
73bc685178
fixing error message display revealed by testing remaining time display function 2017-11-14 06:52:12 +01:00
El RIDO
6c8f57f91f
making PasteStatus testable, adding test for paste creation notification 2017-11-13 21:57:49 +01:00
El RIDO
29419d03cd
avoid logs polluting the unit test output 2017-10-30 07:04:59 +01:00
El RIDO
9c6aec86c4
making Alert class resetable and adding first tests for it 2017-10-23 21:33:07 +02:00
El RIDO
4410ddcd84
adding tests for UiHelper.reloadHome, making UiHelper unit testable and handling JSVerify RNG states 846932d5afb10ce748 & 012c1f9483adb6e750 2017-10-22 13:39:23 +02:00
El RIDO
414693fa90
testing both cases of the logic required for #167 2017-10-22 10:39:18 +02:00
El RIDO
6dbb098d7a
had to introduce a mock function to test the historyChange state 2017-10-22 09:56:44 +02:00
El RIDO
6fa2bfe30e
updated documentation, incremented version 2017-10-08 16:40:51 +02:00
thororm
28b8f878dc Fixed decryption of pastes without attachment, that have a password 2017-08-12 13:26:43 +02:00
thororm
b5c259dd72 Code review 2017-05-20 16:11:32 +02:00
thororm
39717707b3 Code review 2017-05-20 16:04:10 +02:00
thororm
2c17c35b85 Code review results and further improvements
Added english default for new translations
2017-05-15 22:05:52 +02:00
thororm
24aea957b3 Added possibility to paste an image from the clipboard 2017-05-13 21:43:32 +02:00
thororm
838ca3d38e Call removeAttachment on a new paste
Improved disabled attachments handling
2017-05-13 21:27:41 +02:00
thororm
23f5dfbff8 Merge remote-tracking branch 'remotes/thororm/master' into attachment-handling
# Conflicts:
#	tpl/bootstrap.php
#	tpl/page.php
2017-05-13 19:48:25 +02:00
thororm
b9075d7708 Removed attachmentHelpers and moved functionality to AttachmentViewer 2017-05-13 19:46:22 +02:00
rugk
9b6748c54d
Adjust requested changes 2017-04-13 10:46:09 +02:00
rugk
073b52ce96
Pass on event
Thus the receiving function also had to be adjusted, so the right data is passed on.
2017-04-11 22:36:25 +02:00
rugk
d53207e404
Add password retry feature 2017-04-11 22:21:30 +02:00
rugk
183ebe518b
Force JSON request for getting paste data 2017-04-11 16:34:13 +02:00
thororm
1a1369ff53 scrutinizer issues 2017-04-02 19:11:49 +02:00
thororm
ec9fb750b4 Adapted attachment handling to refactoring 2017-04-02 18:58:11 +02:00
El RIDO
37f5d99bc4
finalizing tests for I18n class, AJAX loading of translations needs to be tested in browser, mocked for now 2017-03-26 09:24:42 +02:00
El RIDO
6fb3fe51b2
Merge branch 'master' into js-unit-testing 2017-03-26 06:46:42 +02:00
El RIDO
cd40717301
fixing #209, refactoring regression when file upload is disabled 2017-03-25 18:44:20 +01:00
El RIDO
2a19b42b15
making I18n class testable, adding minimal test 2017-03-25 09:41:24 +01:00
El RIDO
9d2e282772
removing unused function 2017-03-25 09:17:04 +01:00
El RIDO
57ebc7338d
Merge branch 'master' into js-unit-testing 2017-03-25 09:06:04 +01:00
El RIDO
bbcc3e167b
implementing recommendations of scrutinizer 2017-03-25 00:58:59 +01:00
El RIDO
0fb650c3a6
comply with codacys suggestion 2017-03-13 21:15:52 +01:00
El RIDO
b5cdfff3e3
fix missing comment status messages - ♫ lovely span, oh wonderful span ♪ (chorus) span, span, span, span, … 2017-03-13 21:11:26 +01:00
El RIDO
5bf25f227e
update JSDoc and re-published to https://privatebin.info/jsdoc/ 2017-03-13 20:24:18 +01:00
El RIDO
ee43557a4f
ensure burn after reading and status messages are only changed after a successfull decryption 2017-03-13 19:30:44 +01:00
El RIDO
9deaed9406
working on asynch translation handling 2017-03-12 17:08:12 +01:00
El RIDO
1649ff34f5
restoring password protection 2017-03-12 16:06:17 +01:00
El RIDO
81b00dd422
fixing page template, removing error messages when markdown or source are disabled in configuration, re-removing unnecessary spans 2017-03-12 14:16:08 +01:00