Commit graph

277 commits

Author SHA1 Message Date
rugk
31e66131b7
make it work(3): allow paste submission 2017-02-13 21:12:00 +01:00
rugk
f33d702f3d
make it work(2): buttons & preview working 2017-02-13 11:35:04 +01:00
rugk
8a07a0b157
make it work(1): paste input can be shown 2017-02-12 21:13:04 +01:00
rugk
dd6e426da7
first round of refactoring
split into modules, moved code around
need to make it work
2017-02-12 18:08:08 +01:00
El RIDO
eedb05111a
added test for getCookie function, documenting its limitation of not finding cookies with empty identifier 2017-02-12 17:11:21 +01:00
El RIDO
b1396a249d
ensuring that in the JS sprintf tests no replacable patterns occur in the pre- & postfix of the test string 2017-02-12 15:30:11 +01:00
El RIDO
b9c05b06d0
added test for sprintf function, removing dead code and optimizing test cases 2017-02-11 19:34:51 +01:00
El RIDO
b00bcd1352
added test for urls2links function, fixing bug - asterisk is allowed in URLs query string 2017-02-11 16:02:24 +01:00
El RIDO
b992bcc732
added test for setMessage function, fixing bug for elements with only one child 2017-02-11 10:43:00 +01:00
El RIDO
61a59911b8
added test for setElementText function 2017-02-11 09:56:56 +01:00
El RIDO
3ab489e92d
added test for selectText function, but discovered that this can't be tested at the moment without a browser, due to jsdom lacking getSelect support 2017-02-11 09:09:47 +01:00
rugk
52f1fb143e
Revert "JS: tried namespaces"
This reverts commit e84cfc58a1.
2017-02-08 20:12:22 +01:00
rugk
e84cfc58a1
JS: tried namespaces 2017-02-08 20:11:04 +01:00
rugk
b01a28d580
remove some more this, slightly change comments 2017-02-08 14:15:58 +01:00
rugk
4e86da8f72
Remove proxy
Also I kept care to (fix?) the focus of the password input. It only works in an
anonymous function for some reason.
2017-02-08 13:54:37 +01:00
rugk
2ebcf60516
Use revealing module pattern
ala http://www.adequatelygood.com/JavaScript-Module-Pattern-In-Depth.html

Also made the loadTranslations a bit more robust with more error messaged being logged.
2017-02-08 13:20:51 +01:00
rugk
5130d9e2f3
New state for "only new button"
Used when the message cannot be decrypted.
Fixes https://github.com/PrivateBin/PrivateBin/issues/126
2017-02-06 22:39:45 +01:00
rugk
5ad02a3d1c
Use original reload function for manual paste open link
This fixes the issue where clicking on the link took you to the home page.
I seriously missed that this.reloadPage does not do the thing I thought it does,
so I updated the doc to make it clear and switched back to the correct function.

Basically reverts 86cd5e1c15
2017-02-06 20:39:52 +01:00
rugk
e483d60eed
Merge branch 'historyupdate'
Conflicts:
	tpl/bootstrap.php
	tpl/page.php

And update SRI.

@elrido also did not properly merge this branch. Doing it now…
2017-02-06 20:25:35 +01:00
El RIDO
4cb0374e11
readding accidentally removed line of #173 2017-02-06 20:16:03 +01:00
El RIDO
2ca2309fc4
Merge branch 'patch-1' of https://github.com/r4sas/PrivateBin into r4sas-patch-1 2017-02-06 19:55:07 +01:00
rugk
86cd5e1c15
Use existing reload function 2017-02-05 22:35:44 +01:00
rugk
edb546de54
Add loading indicator
Fixes https://github.com/PrivateBin/PrivateBin/issues/172
2017-02-05 22:09:46 +01:00
rugk
5c603d0978
Improve comment 2017-02-05 21:35:28 +01:00
rugk
c96dd0836b
Make link clickable again
We need to emulate the click and manually trigger a reload if the hash is
already shown in the URL.
2017-02-05 21:22:09 +01:00
El RIDO
366b61c32d
adding document title in new history state 2017-02-05 18:53:57 +01:00
El RIDO
f699ca6cd4
writing tests for htmlEntities function 2017-02-05 18:46:24 +01:00
El RIDO
67f71f4dd6
writing tests for pageKey function, fixing always added padding bug 2017-02-05 18:03:42 +01:00
El RIDO
a97b94640e
writing test for pasteId function 2017-02-05 16:58:58 +01:00
El RIDO
80f7baa604
writing test for scriptLocation function, fixing non-removed query separator bug 2017-02-05 16:45:11 +01:00
El RIDO
5442af6e20
slight JS refactoring 2017-02-05 14:47:03 +01:00
rugk
ca51a80803
Update the history when a paste is created
Fixes https://github.com/PrivateBin/PrivateBin/issues/167
2017-02-01 19:24:56 +01:00
El RIDO
4bbfd5045e
ensure that JS is *really* only initialized after the DOM is fully loaded, resolves #166 2017-01-30 20:29:04 +01:00
El RIDO
368aa2305b
removing unused pieces of code (legacy?), resolves #165 2017-01-29 16:19:12 +01:00
El RIDO
b76a73aa06
upgrading showdown 2017-01-29 16:17:56 +01:00
El RIDO
f1df27f46c
allowing for parameter strings starting with & 2017-01-29 15:09:57 +01:00
El RIDO
177c9d7114
Merge branch 'js-unit-testing' 2017-01-29 14:50:31 +01:00
El RIDO
cae5a71151
fix missing class renaming 2017-01-29 14:48:56 +01:00
El RIDO
efcfb80129
Merge branch 'master' of github.com:PrivateBin/PrivateBin 2017-01-29 14:39:34 +01:00
El RIDO
d678f5dada
fixing inconsistency found in unit test 2017-01-29 14:32:55 +01:00
El RIDO
fdef8bc5be
starting to work on JSVerify & Mocha based unit tests for our JS code base 2017-01-29 14:31:44 +01:00
Nathaniel Olsen
a005b1128b Updated showdown 2017-01-23 22:49:03 -06:00
Nathaniel Olsen
47e4478e17 Updated sjcl, bootstrap, and the hashes 2017-01-23 22:42:05 -06:00
Nathaniel Olsen
c5f7c1a3c9 Progress on updating bootstrap 2017-01-23 22:24:24 -06:00
El RIDO
8029c2819f
implementing JS module pattern to expose functions for unit testing 2017-01-22 10:42:11 +01:00
El RIDO
5f09264625
fixing documentation inconsitencies found by Scrutinizer CI 2017-01-14 16:13:22 +01:00
El RIDO
db2778c64f
introduced JSDoc: changes for JSDoc compatibility and resolving inconsistencies in documentation, both semantic and in the logic 2017-01-14 15:29:12 +01:00
El RIDO
a7de0e095b
added supported language, updated credits and changelog 2017-01-10 20:37:14 +01:00
El RIDO
f79c00378b
Choosing correct Occitan plural formula, added unit tests for Occitan and Chinese, corrected casing of languages in unit test 2017-01-08 07:56:56 +01:00
rugk
20fea819cb
Update SRI hashes 2017-01-07 20:35:47 +01:00
Quent-in
427facc456 oc added to supported languages
in order to show occitan translations
2017-01-07 15:48:42 +01:00
El RIDO
4a036aea80
updated SRI hashes, added missing formula for slowene plurals and unit test for it, updated credits and changelog 2017-01-01 14:35:39 +01:00
Alfredo Fabián Altamirano Tena
910c3b3f9d Add Spanish to supported languages 2016-12-30 20:40:23 -06:00
El RIDO
1426d4e371
tagging 1.1 release and updating documentation 2016-12-26 12:13:50 +01:00
El RIDO
1badd5e542
applying HTML entity cleanup to raw paste, too, fixing #137 2016-12-25 13:04:06 +01:00
El RIDO
ecd8a51137
writing a unit test for #145 lead to the discovery of two errors in the polish translations: error in formula and missing number placeholders in the translation strings 2016-12-25 11:37:45 +01:00
r4sas
aacfe8e5fa added a forgotten option 'ru' in supportedLanguages section 2016-12-19 17:26:04 +03:00
atnaguzin
2847bbc45d added ru plural formula, updated template for edited privatebin.js 2016-12-16 12:21:15 +03:00
rugk
58bd603c7c
Use nice condensed table with border
and alos clean the prettyMessage even without showdown
2016-12-13 23:30:28 +01:00
rugk
f755a99ab8
Add table class to parsed Markdown
Fixes https://github.com/PrivateBin/PrivateBin/issues/140
2016-12-12 17:37:51 +01:00
El RIDO
3f2de319f3
should use typesafe comparison in JS and adding forgotten modal dialog in bootstrap-dark-page 2016-11-13 18:22:37 +01:00
El RIDO
3f8d6a592b
refactored modal dialog logic, added the new message IDs to all translation files and added the modal dialog to all bootstrap based templates (page gets the old JS input as a fallback) 2016-11-13 18:12:10 +01:00
Alexander Demenshin
2c8a780c74 Removed unreachable code 2016-11-12 18:30:42 +01:00
Alexander Demenshin
c916f33a83 More js for modal password request 2016-11-11 18:46:44 +01:00
Alexander Demenshin
09fa46a651 Added relevant js to modal password form 2016-11-11 18:39:38 +01:00
El RIDO
375dac759f
renamed jQuery file to match projects JS file naming convention 2016-10-29 12:18:03 +02:00
El RIDO
f093b05330
update jQuery from 1.11.3 to 3.1.1 2016-10-29 12:12:22 +02:00
stefanomarty
af824bbcd6 Update privatebin.js
Added 'it' supported language.
2016-10-23 11:28:04 +02:00
Nathaniel Olsen
3eea03954a Forgot to delete this 2016-10-22 09:47:40 -05:00
Nathaniel Olsen
176d683d1c Forgot to add the file using git 2016-10-21 17:07:55 -05:00
Nathaniel Olsen
0a48c464b4 Update jquery 1.11.3 ==> 3.1.1 2016-10-21 10:31:56 -05:00
Nathaniel Olsen
5639042d12 Update jquery 1.11.3 ==> 3.1.1 2016-10-21 10:31:09 -05:00
El RIDO
e925833090 bumping version number to 1.0 2016-08-25 09:53:31 +02:00
El RIDO
47646e056b fixing urlshortening regression caused by CSP introduction, resolves #10 2016-08-18 15:09:58 +02:00
El RIDO
f957a1868f push state to history when displaying raw text to allow use of back button, fixes #7 2016-08-16 09:51:36 +02:00
El RIDO
87926ce157 reactivated second error message for comments between textarea and button, fixes #62 2016-08-15 15:38:21 +02:00
El RIDO
a0c6222fec Ensuring markdown docs use the unformatted text for raw text and clone, fixes #63 2016-08-15 15:04:12 +02:00
El RIDO
4fa2f7cd22 Initialize state of checkboxes on page load, resolves #79 2016-08-15 14:25:52 +02:00
El RIDO
6144e73405 update preview if format is changed, resolves #60 2016-08-11 11:40:37 +02:00
El RIDO
5ec20c1bc2 making burn-after-reading and discussion mutually exclusive options to improve UI, resolves #11 2016-08-11 11:31:34 +02:00
El RIDO
addb666a23 introducing CSP header to mitigate XSS attacks, closes #10 2016-08-09 14:46:32 +02:00
El RIDO
a28aebae7d make key size and authentication tag size explicit instead of trusting on defaults 2016-08-09 13:16:15 +02:00
El RIDO
97ed1a5cf4 found a better JS html entity escape function and use it to fix regression introduced by the preview feature, resolves #43 2016-07-19 16:12:11 +02:00
El RIDO
002046cc62 some minor cleanups 2016-07-19 14:44:17 +02:00
rugk
bbad92a161 Minor JS code improvments 2016-07-19 14:13:52 +02:00
rugk
38ab755733 Replace HTTP links with HTTPS
Using this regexp: https://regex101.com/r/rZ2dE2/1
2016-07-19 13:56:52 +02:00
El RIDO
6b20836461 upgrading SJCL library to 1.0.4: https://github.com/bitwiseshiftleft/sjcl/releases/tag/1.0.4 2016-07-18 16:54:33 +02:00
El RIDO
615777ffd9 clarifying some code 2016-07-11 16:09:38 +02:00
El RIDO
df5150c7f2 found another 2016-07-11 15:55:23 +02:00
El RIDO
90a26d8fcb removing some code smells, found in the various code checker tools 2016-07-11 15:47:42 +02:00
El RIDO
3b3b5277eb refactoring to improve code quality 2016-07-11 14:15:20 +02:00
El RIDO
79509ad48a renaming the fork to PrivateBin 2016-07-11 11:58:15 +02:00
El RIDO
6a663ba07f adding preview feature, resolves #4 2016-07-11 11:09:41 +02:00
El RIDO
ad9fdf8892 switching from CCM to GCM, resolves #27 2016-07-09 21:11:39 +02:00
El RIDO
8e11f0873c small code style improvements, trying to get phpunit with hhvm to work in travis 2016-07-05 17:23:25 +02:00
El RIDO
1625aac798 updating showdown library, adding support for tables and strikethrough,
fixing issue with double escaping HTML entities that was causing
blockquotes to be ignored, fixes #75
2016-05-22 16:18:57 +02:00
El RIDO
3ec7002f63 Don't strip space characters of beginning or end of password, while
still ignoring passwords consisting of just spaces, resolves #69
2016-04-26 20:41:15 +02:00
El RIDO
4918bef4dc Although there usually are no plurals in chinese, there's an exception
for words related to persons, when not preceeded by a numeric word.

Sources:
- http://localization-guide.readthedocs.org/en/latest/l10n/pluralforms.html#f3
- https://answers.yahoo.com/question/index?qid=20110606153553AAAW5zX
2016-04-26 20:21:30 +02:00
Jiawei Zhou
4565b72a7d Adding Chinese Translation (#73) 2016-04-26 20:08:35 +02:00
El RIDO
a4ebdbc606 re-introducing (optional) URL shortener support, resolves #58 2016-01-31 09:56:06 +01:00
El RIDO
a459c6d836 translated to slowene
Conflicts:
	js/zerobin.js
2015-12-26 22:14:10 +01:00
El RIDO
ce107c928e supporting disabled password option in the JS part, fixes #55 2015-11-16 19:58:45 +01:00
El RIDO
24a4328c55 incrementing version, updating changelog, added missing phpdoc comments 2015-11-09 21:39:42 +01:00
El RIDO
740d62005e small CSS improvement, partially resolves #48 2015-10-19 19:39:45 +02:00
El RIDO
40019624fd wrap long lines in plaintext format but force horizontal scroll on
syntaxhighlighting, resolves #45
2015-10-18 22:16:15 +02:00
El RIDO
14d08ec56d working on JSON-LD validity, added CORS headers preparing external API
call support
2015-10-18 14:37:58 +02:00
El RIDO
22d0b1ec22 updating comment format to match defined JSON-LD API context 2015-10-18 11:38:48 +02:00
El RIDO
f21567133c changing paste read output for API refactoring 2015-10-18 11:08:28 +02:00
El RIDO
87b41a0c3d implemented tab input support from #40, thank you azlux! 2015-10-15 22:06:01 +02:00
El RIDO
2e3bacb699 fixing deletion issue in request refactoring, starting work on API read
refactoring
2015-10-15 22:04:57 +02:00
El RIDO
1d6cfb7f3b refactoring delete API, added external JSON-LD context 2015-10-11 21:22:00 +02:00
El RIDO
7ec94e0db5 implementing request refactoring, beginning JS changes for JSON API, but
discovered that DELETE and PUT are not available on all webservers by
default
2015-09-27 20:34:39 +02:00
El RIDO
9f68658106 incrementing version number, updating changelog 2015-09-21 22:43:00 +02:00
El RIDO
0686087cfd fixing mobile navbar triggered issue and slight adjustement to bootstrap
template for using full width of browser for navbar
2015-09-20 20:05:48 +02:00
El RIDO
608605cd54 incrementing version number, updating docs 2015-09-19 17:23:10 +02:00
El RIDO
844c4d15e9 fixes #30 2015-09-19 14:19:42 +02:00
El RIDO
a111357fae add optional (since it uses a session cookie) language selection 2015-09-19 11:21:13 +02:00
El RIDO
39e865ca64 if the uploaded file is an image mime type, display it 2015-09-18 21:41:50 +02:00
El RIDO
50075ea948 fixing issue with attachment, empty paste & empty password 2015-09-18 20:25:53 +02:00
El RIDO
ed9c4f45f4 adding file name support for #20, solving issue with unencryptable file 2015-09-18 12:33:10 +02:00
El RIDO
e144739dec implement file upload UI on bootstrap templates 2015-09-18 10:49:39 +02:00
El RIDO
106141efa4 merging @vikstrous file upload feature for #20 from
8a6d268278
2015-09-16 22:51:48 +02:00
El RIDO
61903665df logic cleanup 2015-09-16 20:49:28 +02:00
El RIDO
0e53d1ee86 added markdown support and a dropdown for the format selection. The
options other then markdown are plain text and source code (syntax
highlighting). Resolves #25
2015-09-12 17:33:16 +02:00
El RIDO
9dde7f034a moving remaining time / for your eyes only message from nav bar into
status alert in bootstrap theme, to ensure it is seen even with a
collapsed nav bar as in the mobile view
2015-09-12 10:38:04 +02:00
El RIDO
428a9d9c41 toggling mobile nav bar after tap on buttons "New", "Clone" and "Send"
to ensure any messages are visible for #21.
2015-09-12 10:23:12 +02:00
El RIDO
b26fb08732 Fixing issues with en translation, thanks @wware for spotting it 2015-09-08 20:48:18 +02:00
El RIDO
b060d57524 - implemented php side of plural translation
- using it to generate labels dynamically for the expire options
(deprecating the [expire_labels] configuration).
- added translation of the human readable data sizes to support the
french octet
- fixed IEC label for kibibytes
2015-09-06 19:21:17 +02:00
El RIDO
c83ba8256f implementing a plural translation solution, currently only the JS part 2015-09-06 15:54:43 +02:00
El RIDO
eee7b0144a covering JS side of translations (#7), added the messages to the
translation files and translated the german ones
2015-09-06 13:07:46 +02:00
El RIDO
b883d5eb4c Merge branch 'master' of git@github.com:elrido/ZeroBin.git
Conflicts:
	js/zerobin.js
2015-09-05 17:21:05 +02:00
El RIDO
3099e10dfa refactored JS:
- moved from global namespace into anonymous function
- as onclick has no direct access to the zerobin methods, the events are
now bound in the init() method via bindEvents()
- to simplify maintenance, the functions were wrapped into 3 objects:
zerobin (display logic, event handling), filter (compression,
encryption) and helper (stateless utilities)
- some CSS and template adjustements were also done
2015-09-05 17:12:11 +02:00
Hexalyse
d74172064b Hide error message when paste is posted correctly 2015-09-05 14:45:50 +02:00
Hexalyse
9687144c92 Error messages are now replaced and not appended
Error messages are now replaced and not appended in the #errormessage div, without removing the glyphicon (which a .text() would have done).
This way, we don't have HTML code in the JS (which would be ugly). But it's still not a really elegant solution.
2015-09-05 14:38:53 +02:00
El RIDO
2d79ba8243 updating docs, bumping version to 0.20 2015-09-03 22:22:59 +02:00
El RIDO
b25022e403 refactored JSON API, its now possible to retrieve pastes as JSON, which
is now used when posting comments, eliminating the need to store the
password in sessionStorage
2015-09-01 22:33:07 +02:00
El RIDO
802a0b26b9 burn after reading messages are only deleted after callback by JS when
successfully decrypted, resolves #11
2015-08-31 22:10:41 +02:00
El RIDO
9fdbba76ce working on password function for #15:
- asking again if password is wrong
- display error if user cancels dialog
- use password to encrypt comments, too (password is "stored" in the
password field)
- store password in sessionStorage when posting a comment so, that it
doesn't have to typed in again, but clear sessionStorage as soon as
password is retrieved
2015-08-31 21:14:12 +02:00
El RIDO
d3c4600806 slight configuration changes, template modifications to make discussions
and password configurable, removed generated configuration test as it
grows quite big and a new one can be generated easily if needed
2015-08-31 00:01:35 +02:00
Hexalyse
0198371049 Password input id change in zerobin.js 2015-08-30 15:06:32 +02:00
Hexalyse
eadcd60e14 Password input id change in zerobin.js 2015-08-30 15:05:50 +02:00
Hexalyse
95f1db925b Merge branch 'master' of https://github.com/elrido/ZeroBin
Conflicts:
	cfg/conf.ini
	js/zerobin.js
2015-08-30 14:33:09 +02:00
El RIDO
be91afa042 - fixing JS errors when syntax highlighting is disabled (point 1. #15)
- fixing missing url conversion in highlighted text (point 2. # 15)
2015-08-27 23:58:28 +02:00
Simon Rupf
a34cc562e1 optimized bootstrap comment layout 2015-08-23 15:52:25 +02:00
Hexalyse
3b537eda40 Added an optional password protection 2015-08-22 17:23:41 +02:00
El RIDO
b299a6e03e added a bootstrap theme, still needs some work in the comments layout 2015-08-17 23:19:15 +02:00
El RIDO
0c1d5c62d5 updated de/inflate to versions 0.5/0.3, using versions found at
a3725d3bee
kudos Dan Kogai
2015-08-16 13:02:27 +02:00
El RIDO
a0107d7eae updated prettify to minified versions found at
6aa04af68e/loader/prettify.js
6aa04af68e/loader/prettify.css
kudos Mike Samuel
2015-08-16 12:46:01 +02:00
El RIDO
49c6e3c1b6 updated base64.js to version 2.1.9, using minified version found at
9192c510f5/base64.min.js
kudos Dan Kogai

small improvements to input checking
implementing default values for most configuration options
switching to versioned JS files to avoid version hack used in template
2015-08-16 12:27:06 +02:00
El RIDO
7bc8c14df6 updated sjcl to version 1.0.2, using minified version found at
11a673d1d3/sjcl.js
kudos Nils Kenneweg
2015-08-16 11:29:01 +02:00