Commit Graph

5069 Commits (17f843f99173eaac10c0c77dbd131c1a6b1bfde2)

Author SHA1 Message Date
Peter Jaszkowiak f4355efb30 Optimize translator
- Use `slice` less
- Skip iterations with `indexOf`
Julian Lam 684a66a760 fixes
Peter Jaszkowiak 189008af75 Optimize translator
- Use `slice` less
- Skip iterations with `indexOf`
Peter Jaszkowiak 60a42aa651 Merge branch 'translator-optimization' into develop
Peter Jaszkowiak 190eea5691 Remove this useless check
Peter Jaszkowiak 46fafb20b9 Remove string.js dependency
Julian Lam 0efa403a68 invoking the proper ACE Editor mode
Julian Lam ae261e073b updating markdown and moving app.load back into ajaxify.end
Julian Lam cfacc4f133 potential fix for
Julian Lam 9cbf1597cd Merge remote-tracking branch 'origin/master' into develop
Julian Lam cd6dcff38b Split up customJS into customHTML and customJS for better organisation ()
* WIP

* fixed customJS not actually working in footer

* Moving scripts to footer, 

* Added upgrade scripts for 
Peter Jaszkowiak 1c35213934 Fix and forking while debugging ()
* Fix forking while debugging

Debugger address in use no longer happens

* Fix cropper error
Julian Lam 6852c92ed6 Merge remote-tracking branch 'origin/develop'
RoiEX e1f180ea3f Remove uneccessary undefined declaration
RoiEX ce9a3f20c5 Optimize transition
RoiEX 5e4e523198 Make progress bar finer
RoiEX 1fd160a4e6 Add Support for Firefox OSD
Peter Jaszkowiak da9da8190f Bump dependencies
Bumping eslint & configs meant making some linting fixes

For future reference, the `xmlhttprequest-ssl` library must be of equal versioning to the one in `engine.io-client`, otherwise it won't be deduped which causes the socket.io tests to fail
Chế Tiệp Chân Khoa 1f5d14dda4 place some code under the right loop ()
Peter Jaszkowiak dc87d7fc0f Use .js instead of .jst
Fix 
Baris Usakli 8276e20254 closes
Baris Usakli a2508161c6 fix hover bg color
Julian Lam b8ce4023c3 finish redirect if success returned 5x, via installer
Julian Lam e64c1d28e6 closes
Julian Lam 514317ab20 using translator.unescape instead of replaces
Julian Lam 211482bbc0 fixes
Baris Usakli bf79857b7d closes
Julian Lam 1034626896 Merge remote-tracking branch 'origin/develop'
Peter Jaszkowiak 23e7222dfa Update Nodemailer to v4
also filter out .jst files from email template dropdowns
Peter Jaszkowiak cfba8970e1 Fix posts block usage in categories page
Peter Jaszkowiak c91dfb46f6 Switch module t.js usage to Benchpress
Peter Jaszkowiak 71aab79a9a Switch client t.js usage to Benchpress
Peter Jaszkowiak dc3f89a505 ajaxify t.js usage to Benchpress
Peter Jaszkowiak 5885e37127 Switch admin t.js usage to Benchpress
Julian Lam cd60d79a13 closes
Andrew Rodrigues 60e0f4ced9 minor typo
Barış Soner Uşaklı 5cc39e8546 Merge remote-tracking branch 'refs/remotes/origin/master' into develop
# Conflicts:
#	package.json
#	src/views/admin/manage/ip-blacklist.tpl
Peter Jaszkowiak abffc29128 Use Benchpress ()
* Use Benchpress

* Use Benchpress.compileParse

* Error for template load failure

* Use benchpressjs package

* Compile templates on demand

* Fix user settings page

* Fix admin search to exclude `.jst` files

* Fix 500-embed

So ajaxify can still show an error if the server goes down
Julian Lam 53ca6d1199 closes
Julian Lam 73d4517d27 Revert "fixes #5894"
This reverts commit e2b40ddf34.
Julian Lam 9d2bf4746c Revert "fix reload loop for guests"
This reverts commit a67a0b0a08.
Julian Lam a67a0b0a08 fix reload loop for guests
psychobunny a13a5c02e9 closes
Julian Lam e2b40ddf34 fixes
psychobunny d5db97930d prevent "plugins" menu from being highlighted when going to Extend -> Plugins
psychobunny e8c40c8dc6 scroll to the actual subsection in the ACP when clicking on links pointing to that hash
Barış Soner Uşaklı ff88be91fa Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Barış Soner Uşaklı 5dfb2fb83a up themes, fix notif test
Julian Lam c1d7b06ded Fixes
- Notifications.getMultiple now takes an optional uid parameter
- If a notification link in dropdown points to a topic and you're
  in said topic, you will be scrolled to the post instead of
  ajaxified to it.
Baris Usakli bc0645dc26 Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Baris Usakli 5a968730d5 closes
Baris Usakli 575c9a41cd Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Barış Soner Uşaklı f161bbf956 Post queue ()
* 

* add user to post queue table

* add time of post into queue

add posting restrictions to queue

* fix shouldQueueLogic for guests

* add test for post-queue route
Baris Usakli 27a6b8a713 lint fixes
Baris Usakli bc6b1a8f56 Merge remote-tracking branch 'refs/remotes/origin/master' into develop
# Conflicts:
#	public/src/admin/extend/plugins.js
Julian Lam d9ad26c7c5 the meat of , making chat loading not require an ajaxification
Julian Lam 902b823f4d adding mobile handling of chats' recent list links
Julian Lam bc9a125034 re: , setting chat list height even if no message list is present
Julian Lam 128b922873 fixes
Julian Lam 7844408301 linting
Baris Usakli 8928db539b add missing radix
Julian Lam 4f9cbabec3 fixes
Baris Usakli 51facb3cb0 closes
Barış Soner Uşaklı 3e4a4d7d55 remove header selector
Barış Soner Uşaklı d32f5459b7 fix unread icon
Baris Usakli 44353a2b39 closes
Baris Usakli de55c8e431 closes
Julian Lam 0ecd2300b3 Closes
Baris Usakli 875672522e Merge remote-tracking branch 'refs/remotes/origin/master' into develop
# Conflicts:
#	src/search.js
Barış Soner Uşaklı 7a405da60f group member search change
Julian Lam 84c1a182e5 Merge remote-tracking branch 'origin/master' into develop
Barış Soner Uşaklı efe13e4038 closes
Peter Jaszkowiak 904f22522e Merge pull request from NodeBB/scoped-plugins
Support scoped plugin npm packages
Also fix logging in VS Code with the inspector debugger
Julian Lam 184dacf1d7 Merge branch 'master' into develop
Julian Lam c4fbed24f8 Squashed commit of the following:
commit 9c86d9b2904e14927cd7e9679b92aec0951d1063
Merge: ebfa63a 5a7f811
Author: Julian Lam <julian@nodebb.org>
Date:   Thu Jul 20 08:41:39 2017 -0400

    Merge branch 'noscript-login' of https://github.com/An-dz/NodeBB into noscript

commit 5a7f81185e8f9bd7d2d011c3d495988be7e437a3
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Mon Jul 17 23:07:14 2017 -0300

    Rename clashing variable 'next'

commit ebfa63a984073a58c17aa408c363cdb03ef89985
Merge: c1801cd f159d0d
Author: Julian Lam <julian@nodebb.org>
Date:   Mon Jul 17 16:30:40 2017 -0400

    Merge branch 'noscript-logout' of https://github.com/An-dz/NodeBB into noscript

commit c1801cda14e6363491e30b659902e2ae71f7e1f7
Merge: 7a5f9f3 9fd542d
Author: Julian Lam <julian@nodebb.org>
Date:   Mon Jul 17 16:30:31 2017 -0400

    Merge branch 'noscript-register' of https://github.com/An-dz/NodeBB into noscript

commit 7a5f9f35abc834bb72ddddc9ca07d34f2fde8353
Merge: 44851f9 d37b95c
Author: Julian Lam <julian@nodebb.org>
Date:   Mon Jul 17 16:30:10 2017 -0400

    Merge branch 'noscript-compose' of https://github.com/An-dz/NodeBB into noscript

commit f159d0d9ef1b7f600e830a96fdb4b9c87c79bb4a
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Thu Jul 6 12:16:38 2017 -0300

    Prevent form submit

    Required for theme change

commit d37b95cb71d32d4483190609798e244c331db165
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Thu Jul 6 01:49:52 2017 -0300

    Prevent link action with scripts

    Required for the theme change that changes the buttons to `a` tags.

commit 9fd542d8970b7d1a4126f4edc4b44eab7d708fb0
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Wed Jul 5 19:57:56 2017 -0300

    Fix tests

commit cdad5bf8c2891ad76f7441fd4d8a74b058a14e6d
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Wed Jul 5 19:09:17 2017 -0300

    Update error handling

commit 4ff11cd136a4fb98483f837e2cebc741380dfe76
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Wed Jul 5 17:29:08 2017 -0300

    Remove async waterfall

commit df01d44e821a70c984b89e9585a325c3e02c6e37
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Wed Jul 5 16:59:43 2017 -0300

    Set noscript compose as noscript at start

commit 4bcc380da72239b8315cc849a77a3036e06e4a12
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Wed Jul 5 16:59:12 2017 -0300

    Remove last useless next

commit b5eac6fea11e209934c0648a7e75ad07a2167123
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Sun Jul 2 18:35:08 2017 -0300

    Last function requires no next

commit 20a5cce6e6e32a454c304c448383707ec44c75a8
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Sun Jul 2 18:06:58 2017 -0300

    Remove more useless next calls

commit 85ee22a79bcbbb1995106f43d4c74d6ba9206cab
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Sun Jul 2 17:46:07 2017 -0300

    Remove useless next calls

commit 7d984c47ad24faac1fe537dee4a5a7d697e8634c
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Sun Jul 2 15:45:31 2017 -0300

    Support old themes

commit 4a09dfbd08253115c342a9e829c4e6940cecb8cc
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Sun Jul 2 15:37:23 2017 -0300

    Moved all error handling into helpers function

commit 391aa6e67ef9ab67304005e14ac0633cdb630713
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Thu Jun 8 15:37:37 2017 -0300

    ESLint - Fix mixed conditionals

commit 80ccc6fd581d791f31e7ab62de8de611837bfc3c
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Sat Jun 3 18:08:15 2017 -0300

    Compose without scripts

commit 2aca811256721238ca0cede4954213d369009885
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Sat Jun 3 18:00:44 2017 -0300

    Register without scripts

commit 097bb51577fb26f8e22f86dc274cb670ab606a8a
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Sat Jun 3 16:42:15 2017 -0300

    Logout without scripts

commit d497e08109891079656fee1c145043a9c0e55f2e
Author: André Zanghelini <an_dz@simutrans-forum>
Date:   Sat Jun 3 16:27:10 2017 -0300

    Login without script
Stjepan Osojnički 9b491e4c2e Add post images hook ()
* Add post images hook

This hook would allow plugins to manipulate images inside posts  after images are manipulated by nodebb (for example, delay loading). Without this hook we can manipulate images by searching post data for them and manipulate that data, but any change on that level is either erased by nodebb once image loading starts (if delay is turned on) or it disables native image behaviour by changing image code so native behaviour is not triggered.
Hook at this place works for both delayed loading turned on and off.
Usage for this kind of hook was talked about here: https://community.nodebb.org/topic/10960/opening-uploaded-images-in-modal-windows

* trying to fix Travis error

* Update images.js

Hook moved out of wrapImagesInLinks function to places where images are actually loaded. One of the places is inside unloadImage function but in place where loading is happening because of failed if check (delayImageLoading not se in users configuration).
Baris Usakli 0a4b76357a
Baris Usakli 9dee81b37f closes
Baris Usakli f1f8a587d4 Merge remote-tracking branch 'refs/remotes/origin/master' into develop
# Conflicts:
#	package.json
Peter Jaszkowiak ee5895f534 Fix Support scoped plugin npm packages
Barış Soner Uşaklı bca79da8c6 closes
add in-topic search support to dbsearch
prevent multiple click handlers on in-topic search widget(each click was
causing multiple scrolls)
fix index
Julian Lam c2f1d254cc Merge branch 'master' into develop
Julian Lam 45d940ad2b added one more client-side hook for search @barisusakli
Baris Usakli 4e7447c9d6 remove ajaxify.widgets.reposition
Barış Soner Uşaklı 923bd86662 Widgets refactor ()
* widgets refactor

render widgets server side
widgets can use all the data the template can use

* fix tests
Barış Soner Uşaklı e9360347ea less padding, closes
Barış Soner Uşaklı 34d9b57b26 fix wrong function name, change dom to data @julianlam
Julian Lam 3ddf332e0c added two new client-side hooks for search to allow plugins to add fields
Julian Lam 77ec169591 added two new client-side hooks for search to allow plugins to add fields
Baris Usakli e0de922ede Revert "widgets refactor"
This reverts commit 9e94edb5aa.
Baris Usakli 9e94edb5aa widgets refactor
render widgets server side
widgets can use all the data the template can use
Baris Usakli 7538210b07
load correct timeago settings on cold load instead of after page load
Julian Lam 3f2c183cbd Merge branch 'master' into develop
Peter Jaszkowiak f1c955e6fc Fix scrollStop not working sometimes
Peter Jaszkowiak 6cb8440715 Fix
Use a custom header instead
Baris Usakli 5167c1aa4f Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Baris Usakli 9979987342 perserve hash when switching categories
Baris Usakli 4890731444 don't error if topicsContainer is not set
Baris Usakli e8bff210c9 clear selectedCategory on init
Barış Soner Uşaklı b64ba40c67 closes
Barış Soner Uşaklı e6cbaf6d85 Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Barış Soner Uşaklı fd43f38e42 closes
Baris Usakli 1f5b3ba636 closes
Baris Usakli 1b0c6741f8 Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Julian Lam 9a06604968 changing local getUserName to getUserSlug, closes
Julian Lam e604d6e23e closes
Barış Soner Uşaklı 53a2a7244d closes
Barış Soner Uşaklı 7fe9366103 Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Barış Soner Uşaklı 8f5f5eb56a closes
Baris Usakli 0ea4ee7dda Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Julian Lam dbcc1517eb fix chat links not working in flag details page
Barış Soner Uşaklı d9e84b1db8 Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Barış Soner Uşaklı b13ed26587 closes
Baris Usakli 8ea5c060f5 closes
Barış Soner Uşaklı a16aa33c8d Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Barış Soner Uşaklı 1628c352fd closes
Barış Soner Uşaklı 38806fe07f closes
Baris Usakli 037a0e5239 closes
also fix reverse infinite scroll when sorting is changed
Peter Jaszkowiak aefdc4b24b Refactor helpers import/export
Baris Usakli da8b1b605c
Baris Usakli d13eb52f39 closes
psychobunny 9cb5f71e08 also don't show category section in subcategory listing
psychobunny 88d5f97280 closes
psychobunny 22891215cd Merge branch 'master' of https://github.com/NodeBB/NodeBB
psychobunny 179b11b7d2 ACP allow ctrl-click to open new in new tab when settings are unsaved
Baris Usakli 883b35243f fix lint
Baris Usakli 1fa52267d4 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	public/src/admin/manage/category.js
Baris Usakli de5fe25e57 closes
psychobunny dcbe4864a9 fix bad merge / dupe code
Barış Soner Uşaklı 08aaabd33c closes
Baris Usakli 5af1161e09 fix eslint
psychobunny 82cab53508 fix digest scheduling information on cold load
psychobunny 1b98449686 closes
Julian Lam 3e6d51fc5a fixes :rage2:
Julian Lam 74965654de adjusted cropbox max-height calculation to be dynamic
Julian Lam 3e218a75b8 allowed zooming again @pichalite
Julian Lam 30bec51a21 removed cropper zoom and using image scaling to show entire image. Click on modal backdrop during crop will no longer close modal
Barış Soner Uşaklı a513d98e1d prevent timeago in future for new posts
Peter Jaszkowiak 542ae5e71f Extract in-place translation from bootbox wrapper for use anywhere
Barış Soner Uşaklı 29ca1dbf08 replies/reply fix
Barış Soner Uşaklı 70adcd64bc
Julian Lam 816809ce3c fixes
Baris Usakli 51a85031f7 utils tests
Julian Lam 064a8aa6d7 Allowing custom date range to be supplied in pageviews graph, closes
Barış Soner Uşaklı 29c0b8337e closes
Barış Soner Uşaklı 17b57be835 Merge pull request from NodeBB/utils-rtrim
Deprecate non-standard `String.prototype.rtrim`
Peter Jaszkowiak 2b2544a4b1 Deprecate non-standard `String.prototype.rtrim`
Julian Lam 87fbb44ca8 fixes properly
Julian Lam 6d392089e4 fixes - https://ecma-international.org/ecma-262/5.1/#sec-15.9.1.1
Barış Soner Uşaklı f3deef4931 closes
Barış Soner Uşaklı 3a1eba2537 merge
psychobunny b3bd70235a refactor ban messaging; add ban duration to message; use bootbox instead of alert
psychobunny 76a2b4800b add back timeago.allowFuture so we can notify when a ban will expire
Barış Soner Uşaklı 5673769c8c add back removed rtrim method
Barış Soner Uşaklı 670a5d9ca0 fix timestamp not showing for replies, remove allowFuture @julianlam
Barış Soner Uşaklı 986e52897d fix crash if locale is undefined
psychobunny 6f8e7343e6 fix for "invalid date" re:threading when replying to yourself
Barış Soner Uşaklı 6fb90a17e0 closes
Barış Soner Uşaklı 2f3aceb7d3 dont do anything if config is off
Barış Soner Uşaklı 82863a28f0 add the loaded topics after the last topic on the list
Peter Jaszkowiak 65e31493a9 Escape ACP search values
Peter Jaszkowiak 81e23a8a9a Fix
Barış Soner Uşaklı 081578c7f4 Merge pull request from NodeBB/auto-lang
Automatically detect user language based on browser accepts header
Peter Jaszkowiak 64bf542d17 Fix HTML `lang` attribute using the `defaultLang`
Themes need `lang="{function.localeToHTML, userLang, defaultLang}"` in
their header.tpl file
Barış Soner Uşaklı c43a4e4b82 Merge pull request from NodeBB/fix-5536
Fix 
barisusakli 08dd412896 Merge remote-tracking branch 'refs/remotes/origin/master' into develop
# Conflicts:
#	src/upgrade.js
barisusakli 75e5f2da74 closes
barisusakli 73700ed747 closes
Peter Jaszkowiak cc76a8663d Add flag for detecting if the mock is being used
Peter Jaszkowiak 30b47d39f3 Fix
barisusakli b45111d44b show max message length in error message
Peter Jaszkowiak 9d8ff4ea3e Fix images not displaying in signatures
barisusakli 236758b712 Merge remote-tracking branch 'refs/remotes/origin/master' into develop
barisusakli fb3020f892 closes
Peter Jaszkowiak 2827db3309 Fix sounds playing through multiple tabs
barisusakli 20eac0de94 closes
barisusakli e3205bcfad merge
Peter Jaszkowiak baa2a59f4c Fix ace editor not working
Peter Jaszkowiak 0fe10f5e86 Escape topic titles at the source, deduplicate
barisusakli 36df4cdf97 fix cyclic dependency issue
barisusakli b8c606cbbd closes
Julian Lam a141835cf8 Merge branch 'master' into develop
Peter Jaszkowiak 1fb48ef7a7 Fix ()
* Fix 
Escape translation tokens in topic titles, descriptions, profile about, and post contents

* Fix tests
Julian Lam d18cfced96 Merge remote-tracking branch 'origin/master' into develop
Peter Jaszkowiak a8add6477c Fix merge conflicts
Julian Lam a62a4e698f Merge pull request from NodeBB/utils-translator-require
Make utils and translator easier to require
Peter Jaszkowiak 484a800327 Merge branch master into develop
Peter Jaszkowiak 980e9026f3 Fix , translator ignores unclosed tokens
Peter Jaszkowiak 9368e666d8 Fix failing test
Peter Jaszkowiak 010473e5cc Merge branch 'master' into patch-pitaj
Peter Jaszkowiak dc4f2be156 Remove ace global for eslint
Julian Lam 126237e2c9 Merge pull request from pichalite/zxcvbn
Closes 
Peter Jaszkowiak 1892492505 Deprecate utils.walk, remove prototype modification
Peter Jaszkowiak 1ed571189c Make utils and translator easier to require
Move utils.walk to file.walk, backwards compatible
Peter Jaszkowiak 0ef30e91ba Use ace-builds npm package instead of vendor
ace can be referenced as an r.js module, reduces acp bundle size
pichalite 4c89497cc4 Closes
Anil Mandepudi da183e196a Fixes ()
* Fixes 

* Adding trailing commas but in protest
Peter Jaszkowiak 1deeaaeb39 Fix
Julian Lam 7afe8a32f6 Merge branch 'master' into develop
Julian Lam 1594a84e1c fixes
Julian Lam b649eb95f8 Merge remote-tracking branch 'origin/master' into develop
Julian Lam 6060b8e13b fix tests
Barış Soner Uşaklı fe27d40ff6 closes
Aziz Khoury 6682e048ea wrapImagesInLinks with <a download> attribute
if the `src` of the `img` does not have an extension, most browsers will trigger a download with whatever filename is set, also without an extension, so when it's opened in any OS, it wont have a default application to open it with.

So, In this case, if the `alt` attribute has an extension (meaning if it looks like filename) - we use that with the html5 [`download` attr](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-download)

The PR does not affect any src if they have an extension.
Julian Lam 7f8f197e60 Merge branch 'master' into develop
Julian Lam 23d4497c73 Merge pull request from NodeBB/patch_5491
Fix 
Peter Jaszkowiak 8c45411ccc Fix
Julian Lam 250bb4b011 fixed leftover merge conflict artifact
Julian Lam 1ebbbdd3f9 Merge remote-tracking branch 'origin/master' into develop
barisusakli 6a4b082080 closes
barisusakli 5a2ff8ed0a closes
Julian Lam 6d444ccacf Merge pull request from NodeBB/patch_5346
Fix 
Peter Jaszkowiak c199075d98 Fix
Barış Soner Uşaklı 0396e9300b Merge pull request from RoiEXLab/fix-admin-search
Fix admin Search
Julian Lam 860999fa6c Merge remote-tracking branch 'origin/master' into develop
psychobunny 286d0ab203 prevent tagsinput initialization from flagging as unsaved
psychobunny 62f445ad7f ACP: added tagsinput to other fields that are "comma separated"
barisusakli bb146e049c fix lint
psychobunny 447b7b02ca use tagsinput for instead
psychobunny f2eb4b8083 closes
psychobunny a67d48e719 ()
closes 
psychobunny fd8e647ef5 closes
barisusakli f092b7754e only create 1 alert for chat spam error
barisusakli 6f49509645 fix newSet on redis
Julian Lam 04b66787ea removed hardcoded stepsize of 1 for chart, so it can space the ticks out properly
Julian Lam 793555a344 Merge branch 'master' into develop
barisusakli 1301fb1f34 on chat leave close the modal
barisusakli 8a123f7c1c closes
barisusakli 69c6ee5834 closes
barisusakli 992e3128bd closes
Julian Lam af2d9fb85b Merge branch 'master' into develop
Accalia de Elementia 743a7e00b4 fix: auto cropper on image upload selects maximum image area by default
barisusakli 531df7bd09 closes
RoiEX c517733e34 Fix admin Search
barisusakli e85e35cf0c closes
barisusakli 202bafa3e3 add images to bundle
barisusakli 5ca8456340 move image code to client/topic/images
barisusakli 284485c885 check data.config
Julian Lam 58cbf44143 Merge branch 'master' into develop
Peter Jaszkowiak 007051c14c Fix
Julian Lam b1ceec7571 Merge remote-tracking branch 'origin/master' into develop
barisusakli 347761173a helpers tests
Julian Lam 6e7b505ea7 more linting
Julian Lam ddea9f534e running eslint again
Julian Lam 72e77772db Merge branch 'master' into develop
Julian Lam 995f8296a4 linting
Julian Lam e71bd7a27f Merge branch 'master' into styleguide
barisusakli 048eb8a320 some helper tests
Peter Jaszkowiak dd2b930824 Resolve merge conflicts, minify only `.js` files
Peter Jaszkowiak ee9d7584e4 Fix test, misc
pichalite 1d5b3cc73f ACP manage tags page UI changes
Julian Lam a9f144230e Merge branch 'master' into develop
psychobunny 7b7565ee8e Merge pull request from pichalite/acp-groups
ACP manage groups UI updates
Julian Lam 672d7352bb Merge branch 'master' into develop
pichalite dcb0f18422 ACP manage groups UI updates
Julian Lam e887dda37a Merge pull request from pichalite/image-dimension
Use ACP profile image dimension setting in cropper
Julian Lam e427f1663e Merge pull request from NodeBB/sounds-refactor
Sound system improvements
Julian Lam 62e0f5f883 Merge remote-tracking branch 'origin/master' into develop
pichalite fd0f0beaf2 lint
pichalite a99572fc48 Use ACP profile image dimension setting in cropper
Peter Jaszkowiak 23540afaeb Resolve merge conflicts
Peter Jaszkowiak b227297ef3 ESlint no-use-before-define
Peter Jaszkowiak 93f38d4f30 ESlint no-multi-assign
and max-nested-callbacks, no-mixed-requires, max-statements-per-line
Peter Jaszkowiak 4bb49a7171 ESlint no-unused-vars
Peter Jaszkowiak c18808fdeb ESlint no-useless-concat, no-mixed-spaces-and-tabs
Peter Jaszkowiak fdf4f873bf ESlint eqeqeq
and require-jsdoc, no-negated-condition
Peter Jaszkowiak 144fa8698c Eslint no-lonely-if
Peter Jaszkowiak 57f89663aa ESlint radix
Peter Jaszkowiak 09e868ce5f ESlint no-useless-escape, no-else-return
Peter Jaszkowiak 11cb3a9554 ESlint operator-assignment, block-scoped-var
Peter Jaszkowiak a0a50677da ESlint n-loop-func, yoda
Peter Jaszkowiak 04bb6513b0 ESlint no-cond-assign, no-void, valid-jsdoc
Peter Jaszkowiak 32dc7c23ea ESlint guard-for-in, no-nested-ternary
and operator-linebreak
Peter Jaszkowiak c4bdb72941 ESlint no-unneeded-ternary
and no-extend-native, no-sequences
Peter Jaszkowiak 64a6322002 ESlint no-extra-boolean-cast
and no-shadow-restricted-names
Peter Jaszkowiak daa169c094 ESlint no-unused-expressions
Peter Jaszkowiak ac2f69f7af ESlint no-return-assign
and no-restricted-modules
Peter Jaszkowiak 896c8c7343 ESlint object-curly-spacing
Peter Jaszkowiak 1493afee2a ESlint indent
Peter Jaszkowiak 3b0dd2d1ef ESlint padded-blocks
Peter Jaszkowiak feb8405f95 ESlint eol-last
Peter Jaszkowiak 41896e1fc7 ESlint lines-around-directive
Peter Jaszkowiak f3a8256f35 ESlint strict
Peter Jaszkowiak a038c66549 ESlint quotes
Peter Jaszkowiak 604358ecc4 ESlint keyword-spacing, no-multi-spaces
Peter Jaszkowiak a5a3f3089a ESlint no-mixed-operators
Peter Jaszkowiak 2e031f3759 ESlint comma-spacing
Peter Jaszkowiak 277a7fb8b4 ESlint key-spacing, no-trailing-spaces
Peter Jaszkowiak 34e233fe1d ESlint spaced-comment
Peter Jaszkowiak 532951c24f ESlint space-in-parens, block-spacing
Peter Jaszkowiak b1b486f729 ESlint quote-props
Peter Jaszkowiak 3361a72725 ESlint no-plusplus
and no-empty, space-unary-ops
Peter Jaszkowiak d1101a7fb4 ESlint dot-notation
and func-call-spacing
Peter Jaszkowiak d7526b5e44 ESlint array-bracket-spacing
and object-property-newline
Peter Jaszkowiak 554075b312 ESlint no-continue
Peter Jaszkowiak d9c1f6f088 ESlint no-extra-semi
Peter Jaszkowiak 3d6bfa47c5 ESlint no-useless-return
Peter Jaszkowiak 879470f417 ESlint brace-style
Peter Jaszkowiak 52f2028206 ESlint no-multiple-empty-lines
Peter Jaszkowiak b09b3aef7f ESlint no-undef, remove global comments
Peter Jaszkowiak 2ba46808a1 ESlint one-var, fix comma-dangle
Peter Jaszkowiak bc1d70c126 ESlint comma-dangle
pichalite 8dab8864f6 Add extensions for cropped images
barisusakli d6cdc6d34d Merge remote-tracking branch 'refs/remotes/origin/master' into develop
Peter Jaszkowiak 9f15008247 Address review issues
Julian Lam a379b03e71 lint
Julian Lam f7f5b2c8d9 Merge remote-tracking branch 'origin/master' into develop
Julian Lam 802878c371 Merge pull request from pichalite/cropper
Make cropper in to a module
barisusakli e009ce5609 closes
barisusakli 4d05e492cc closes
Peter Jaszkowiak c75391f9f5 Sound system improvements
- Fix sound ACP uploads
- Display soundpack names with sound files
- Soundpacks can have sounds with identical names
- Link sounds during build step
- Generate map of sound name to file name during build step
- Change how soundpacks work. It's now done via a field in plugin.json
pichalite 2ca8f60e77 Finalize cropper module
pichalite d784a8dce8 Restore uploader.js
pichalite 43f4d9819e Linting
pichalite 484891472e Make cropper in to a module
barisusakli dad5b135c3 lint
barisusakli c285eb7fcd closes
Julian Lam 8bf719b258 Merge pull request from NodeBB/ajaxify-cache-buster
Ajaxify improvements, `/assets/uploads/` fixes, cache buster improvements
Julian Lam fcaefbadca Merge remote-tracking branch 'origin/master' into develop
Anil Mandepudi c25836b5fc Option to upload without cropping ()
* Option to upload without cropping

* Fix styling

* Fix styling

* Add missing semi-colon

* I fail at styling :fail:
psychobunny 0667870286 set an active state for pageview options
psychobunny ccfec622d4 Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop
psychobunny 9e354a09d1 prettier stats on dashboard
Julian Lam 7f124a3ccf Merge branch 'master' into develop
Peter Jaszkowiak 8f27d7810b Ajaxify improvement, `/assets/uploads`
Julian Lam 7ba111acdd Merge pull request from NodeBB/assets-route
/assets/uploads
Julian Lam a8fd1440d4 fixed incorrect language key in ip blacklist page
psychobunny 570efb9e4b Merge branch 'develop' into threads-enhancement
psychobunny 83cd960ffa improved threaded view design
Peter Jaszkowiak aaacdb8413 Fix , uploads path config setting
- Finish moving uploads route to `/assets/uploads`
- Remove `upload_url` config setting, it was broken
barisusakli 387110fecc closes
Julian Lam 8a0a74d95e Merge remote-tracking branch 'origin/master' into develop
Julian Lam b5daedb7a3 Merge remote-tracking branch 'origin/master' into develop
Peter Jaszkowiak bb1bfb0449 Merge branch 'master' into assets-route
pichalite 2c5f8ed8e6 Add image options to cropper modal
psychobunny dbc3113940 Merge pull request from pichalite/cropperjs
Ability to crop profile images before uploading
pichalite b757f563df Move tpl and less to core
pichalite a3df9132f7 Fix styling
pichalite a41acead44 Fix tabs
pichalite 6a073277ac Fix ACP layout on tablets
pichalite a808d1b4d9 Set aspect ratio to square and confine crop box to image
Julian Lam bfd16d188e Merge branch 'master' into develop
barisusakli 76254942b2 closes
Peter Jaszkowiak 360a35d0a6 Resolve merge conflicts
pichalite 700e2cf800 linting
pichalite de28ff5d43 Ability to crop profile images before uploading
Peter Jaszkowiak bb7a35b85c Fix translator catching JS errors in callbacks
Peter Jaszkowiak c14a31644b Merge branch 'master' into 'develop'
Peter Jaszkowiak bc9fa0a990 Remove requests to nonexistent language files
barisusakli f1f00b63fb closes
Julian Lam 7414482753 Merge branch 'master' into develop
Julian Lam 05c724de30 added new hook for messaging teaser retrieval, and casting input as String before execuring stripTags templates helper
barisusakli 33e452cc8e fix lint
barisusakli 0b95eab71e use roomName if availabe in taskbar
if room is renamed update title on taskbar
Julian Lam 73879b824c Merge branch 'master' into develop
Julian Lam 694f2382bf fix issue where navigating back to a topic listing (category.tpl) would not scroll down to the topic you had clicked on, and in some cases would exclude topics that were beyond that particular 'page'
Julian Lam 339845ff6b Merge pull request from pitaj/build-translations
Compile translations in the build step
Julian Lam 76376f52c3 Merge remote-tracking branch 'origin/master' into develop
psychobunny 19c3f54a30 Merge pull request from pichalite/issue-5344
Fixes 
pichalite 7b234c666f Fixes
Julian Lam 08af924873 closes
Julian Lam 82e9e1a05d closes
Peter Jaszkowiak 05b68391dd Use `/assets` for client assets
- Route `/assets` -> `build/public`, falling back on `public`
- Moved destinations for `nodebb.min.js`, `acp.min.js`, `admin.css`, `stylesheet.css`, `templates`, and `sounds` to `build/public`
- r.js modules previously routed through express are now symlinked into `public/build/src/modules`
- minfiles no longer served from a memory cache
- use config `views_dir` setting everywhere template directory is used
- fix cache buster `v=v=`
Peter Jaszkowiak e1a29f4aa8 Switch to `assets` route
Peter Jaszkowiak b4b3be3d97 Cache bust translations, query param name
Peter Jaszkowiak 2f07c18c5a All hail the glorious translation prebuilding
Julian Lam 9dcbe875a0 Merge branch 'master' into develop
Julian Lam c99321a518 always setting app.previousUrl now, and passing cid into filter:category.topics.get hook
psychobunny 65cf2dbe55 move updateRoomUsage to after graph setup
psychobunny 7f9381b087 closes
psychobunny 9797f69324 action:chat.sent
Julian Lam 20d035bdac hotfix to utils.isRelativeUrl to handle null or undefined first argument
Julian Lam 9987d52855 Merge remote-tracking branch 'origin/master' into develop
Julian Lam 2ab2486d3b if require call on page script fails, remove from scripts array
Julian Lam 6a591069c5 fixes issue with ajaxify.end not firing
Julian Lam 43056a4bfa Merge branch 'master' into develop
Julian Lam 64e4ef042b allowing plugins to subscribe to action:script.load and pass in function references
Peter Jaszkowiak ffa2bd14f8 Fix reverse proxies breaking admin translations
Julian Lam 2c6beb9ffb Merge branch 'master' into develop
Barış Soner Uşaklı aa32e7b359 fix indents
loopback0 a86134cc5b Fix selection
Tweak to allow the shift + click behaviour for the checkboxes while still letting the browser behaviour work
Julian Lam 3861b2dd80 Merge remote-tracking branch 'origin/master' into develop
Peter Jaszkowiak cb82824c13 Fix ACP title bug with hashes ()
Anil Mandepudi 8ddf7eb922 Use scrollStop in chat ()
pichalite 5b646495af Confirm before removing user and group cover picture
Julian Lam db20df0110 Merge branch 'master' into develop
Julian Lam a8521d0349 remove double-click to mark all notifications read
barisusakli 190b3759a0 fix tests
barisusakli 827e4b4ffd refactor post tools
pichalite cae5a9ac58 Update ACE editor to latest
Julian Lam 29c7ae7645 Merge remote-tracking branch 'origin/master' into develop
psychobunny f742c847e1 Merge pull request from pitaj/master
Fix ACP title issues
Peter Jaszkowiak 6d00d5f6a5 Fix ACP title issues
Barış Soner Uşaklı c4d4d2385b closes closes
Julian Lam c640bdf2b9 Merge branch 'master' into develop
Julian Lam d77f417cf3 allowing timeago timestamps to be in the future
Peter Jaszkowiak 460b830a96 Fix ajaxify loading default language translations
Peter Jaszkowiak 038c45f4b6 `admin/manage` translations, misc
- Translate Manage templates and JS
- Change `translator.translate -> .html` into `.translateHtml` where fitting
- Translate `admin/partials/download_plugin_item`
Peter Jaszkowiak 94eb74646c `admin/manage/categories` translations
- Fix privilege table headers so bottom borders align
- Fix `/admin` route to show Dashboard title correctly
- Translate ACP category management and privileges templates
- Translate ACP category management JS
- Remove unnecessary translates in JS
- Fix bootbox wrapper to work with translations containing html
Peter Jaszkowiak 862908d0eb ACP search and title improvements
- Search uses translated titles if available
- Use `advanced` for `development` route titles
- Remove route title from showing up in results
- Highlight matching part of result title
- Don't show empty result contents when only title is matched
Peter Jaszkowiak 3008794797 `admin/general` JS translations and misc
Peter Jaszkowiak 95bef8f3f6 `admin/extend` JS translations and misc
Peter Jaszkowiak 38eba81933 ACP menu and title translations
Peter Jaszkowiak bae1daf5dc Bootbox wrapper improvements
Peter Jaszkowiak 606de990e9 `admin/advanced` JS translations
Peter Jaszkowiak 0b4c39338e Translation bootbox wrapper
- Replaced minfied bootbox file with unminified one since it's minified at build anyways
- Removed existing override
- Made translator more verbose in dev mode; it now warns about missing translations
Peter Jaszkowiak 4eca23174a Translate dynamically added admin content
barisusakli 1fed01fe43 ability to filter search by tags
Julian Lam 76bcc1c327 Merge branch 'flagging-refactor' into develop
Barış Soner Uşaklı 4ff3d06f90 escape labelColor, icon, cover:position, validate toPid
barisusakli 55b68197aa closes
barisusakli 9d75c48236 closes closes closes
Julian Lam e6768ab572 some more fixes to flags, simplifying qs manipulation in flags search
re: 
Julian Lam 451c2838d0 Merge remote-tracking branch 'origin/master' into flagging-refactor
barisusakli c32e6aaabb use build module instead of forking
barisusakli e86708cb0c add cid to widgets.render
init date pickers in widgets ACP
Julian Lam b79073cf32 Merge branch 'translator-escapes' of https://github.com/pitaj/NodeBB into pitaj-translator-escapes
Julian Lam e227f5842a Merge remote-tracking branch 'origin/master' into flagging-refactor
Mathias Schreck b1a48981ef Check if href exists before accessing it ()
I got a lot of errors in Firefox 50 `TypeError: $(...).attr(...) is undefined  nodebb.min.js:25167:24` which points exactly to that line I’ve changed.
Since HTML5 `href` is not a required attribute of an `a` tag. We have a couple of links without `href` and every time you click it you will get this error.
Peter Jaszkowiak bb5fe0cc83 Escape arguments in `Translator.compile`
Peter Jaszkowiak a81aad61ab Add tests for translator static methods
Peter Jaszkowiak 7c697759e9 Escape and ignore `%` and `\,` in translator args
Julian Lam aaec71bc0c added stepSize to flags chart,
Julian Lam dc508fa0cb Merge remote-tracking branch 'origin/master' into flagging-refactor
Julian Lam ebc9abd773 upgrade script and graphs for
barisusakli 0b9829850c closes
Julian Lam 5d63c0aa3b Merge remote-tracking branch 'origin/master' into flagging-refactor
Julian Lam 5dd892bd01 a bunch of changes here... allowing user profiles to be flagged,
psychobunny 6b7b51eaf0 Merge pull request from pitaj/master
ACP search updated to support translations
Peter Jaszkowiak e2ea3cb21e Fix linting error
Julian Lam a2fecf5ae4 Merge remote-tracking branch 'origin/master' into flagging-refactor
Julian Lam 9f9051026b more work on
Stuart Williams 647d0e0a75 Avoid encoding HTML in Twitter social share text
Stuart Williams cafc5cd891 closes
Peter Jaszkowiak 8ca98625b9 Key through search results
Peter Jaszkowiak f1cfed50a1 Translate skins and themes fully
Peter Jaszkowiak 5843e8dd77 Fix Translator to work with namespace paths
Julian Lam cd3002e812 removed user flag reset method and associated socket call from ACP
Julian Lam 88958049eb added some more filters, and appending event to history on flag creation
issue 
Julian Lam 8e1d441e20 Added some quick filters,
Julian Lam 753d4b0275 wrapped up basic functionality of list and detail for flags, filter support.
Julian Lam f1d144f15e history appending, finished up notes,
Peter Jaszkowiak 5223bb5191 Merge branch 'master' of github.com:nodebb/nodebb
Julian Lam d9d60c20bd flag updating and note appending,
barisusakli 4cb48c46ab closes
barisusakli 2291899f4f show chat room title in taskbar
Peter Jaszkowiak 240e958fb1 Use config.relative_path instead of allcaps
Peter Jaszkowiak de6ced4e07 Tests for admin search, simplifications
Peter Jaszkowiak e3dd68e19c Explanations and simplifications
Peter Jaszkowiak a431dc0305 ACP search updated to support translations
barisusakli 2e28a8f7c7 closes
barisusakli a4b46fd5ce closes
Peter Jaszkowiak c5237443cd Standard language codes ()
* Use standard language codes. Fallback for plugins.

* Fix transifex config

* Tab vs space here for some reason

* Remove redundancies

* config.relative_path instead of allcaps

* added upgrade script for existing users' accounts
Julian Lam c987b8474e fixing new post parsing to not add img-responsive to avatars
Julian Lam 6f1e5a83ab resolve regression caused by part of d28f7de
Julian Lam d28f7de19e fixes
barisusakli db14c29e41 socket.io/categories tests
barisusakli 0756fcce7e eslint
barisusakli 2c77a88ba4 closes
Julian Lam 0e8bf17ff0 re: , bringing back the RELOAD BUTTON :rage2:
Barış Soner Uşaklı 0c9f61c629 Merge pull request from yariplus/patch-15
Allow sending Error objects to alertError instead of just plain strings.
Timothy Fike f1e3e155c4 Update app.js
Timothy Fike 2d84c98565 Allow sending Error objects to alertError instead of just plain strings.
pichalite d4040ed52e Fixes
Julian Lam ede7a71db7 Fixes
On socket.io connection, all clients join a room pertaining to
their express session id. We use this room to keep track of any
sessions in different browser windows (but the same cookie jar),
so if a login/logout occurs, we can throw a session mismatch
modal.

This room can also be used to emit messages across windows/tabs...
Julian Lam 0f93206122 lint
Julian Lam 7d523fae0f closes
Julian Lam 885316d78f also show minutes and hours in cut off timestamp
Julian Lam 75ff60e4d5 partial revert of a9984bb, adding in a layer to translate ISO
timestamp to datetime attribute and save localised string into
title attribute.

Fixes 
barisusakli a9984bb926 closes
barisusakli 1a9dd2311c closes
Ben Lubar e151916f1a
Fix followed topic notifications going to the last unread post
Regression introduced in 1b34ebe230.

Bug originally reported in .
Julian Lam e6c9c89342 closes
barisusakli 8294fc90e3 closes
barisusakli 5703bf6eac fix test
barisusakli ce9be7e694 closes
Barış Soner Uşaklı b38a10f96a add pagination to user profile
barisusakli 5cfe379841 fix recent for inf scroll
barisusakli fb47bf3889 unread/recent changes closes
barisusakli 90c2ca38f9 more nested reply fixes
barisusakli c90f082c77 fix edit/vote/bookmark icons for nested replies
Ben Lubar 2185d8eb99 Ban UI fixes ()
- Permanent bans assigned by global moderators no longer expire immediately
  (does not apply retroactively)
- Bans with no reason given no longer have "undefined" as their reason
  (applies retroactively)
- 0 is now a selectable value for "ban duration, select 0 for permanent"
barisusakli eca850c4b1 nested reply improvements
on new post increase count and add nested reply if replies are expanded
on post purge reduce count and remove nested reply
Julian Lam 66aea0eed1 closes
barisusakli 8f76ebf972 don't start loading again if already loading
barisusakli 3d1d9b8bd5 fix test, process rendered replies
barisusakli ff08cbf677 replies to posts
Barış Soner Uşaklı 0c08e44a34 Merge pull request from BenLubar/replies-to-post
Add a sorted set for replies-to-this-post
Ben Lubar d74e2d0650
Don't hardcode fa-plus <https://github.com/NodeBB/NodeBB/pull/5050#issuecomment-256862345>
Julian Lam 2da32512af not displaying banned modal if you're not actually banned, heh
Ben Lubar 81211887fc
make eslint happy
Ben Lubar ea10f51f2e
UI for replies-to-post (needs theme update)
Julian Lam f97f45a138 logic to show a modal to banned users when they try to log in via SSO
Peter Jaszkowiak 2824ce5587 Translator modules ()
* Translator modules

* Fix language not being passed on creation

* fix test failures
Julian Lam 0590a4f2cf closes
Sergii Paryzhskyi e515b791da Fix eslint rules ()
* Fix semi linter rule

* Fix semi-spacing linter rule

* Fix no-undef-init linter rule

* Fix space-before-blocks linter rule
Julian Lam d002c3eb76 fixing session revocation on account info page
barisusakli b16671caa5 dont do IS if there is a search term
Julian Lam 9a0d81ef6b closes
Julian Lam 05700c951c add slash before route in ajaxify debug string