636 Commits (ae64b9f4958ef98af43a28d0cebe436be0758232)

Author SHA1 Message Date
Barış Soner Uşaklı fda2aedfd8
feat: #8734, jquery-ui, jquery-form, timeago (#8748)
* feat: #8734, jquery-ui, jquery-form, timeago

get rid of forum/footer.js move that code to app.js & wait for app to load before calling ajaxify.end
make sockets.js a requirejs module
move jquery-ui to node_modules and load via requirejs
move jquery-form to node_modules and load via requirejs
move timeago to node_modules and load via requirejs
only include the css for needed jquery-ui widgets

* feat: keep socket/io global for backwards compat

* refactor: move socket listener to chat
4 years ago
Julian Lam 3c7f79cb8a fix: use console.info instead of console.log for sw registration 4 years ago
Barış Soner Uşaklı c33dc90562 Merge branch 'master' of https://github.com/NodeBB/NodeBB 4 years ago
Barış Soner Uşaklı 54737d3076 feat: #8233, search sub categories 4 years ago
Julian Lam 8437130ec2 fix: early button/anchor clicks do nothing
This reverts commit a395324b52, and
fixes the issue where the ACP became unusable because of the earlier
variant of this code.

Thanks @psychobunny for spotting.
4 years ago
Barış Soner Uşaklı a395324b52 Revert "fix: early button/anchor clicks do nothing"
This reverts commit 966d3f7654.
4 years ago
Julian Lam 966d3f7654 fix: early button/anchor clicks do nothing
This solves a small UX issue where clicking on a button (or anchor
that is not meant to be ajaxified) before ajaxify.end is called
leads to nothing happening because the appropriate click handler
has not been added.

This code will intercept premature clicks, wait until ajaxify.end
is called, and then re-send the click.
4 years ago
psychobunny aa268d5eeb feat: register service worker, #8126 4 years ago
Barış Soner Uşaklı f2f3ba49b6 feat: hightlight matches in quick search
fix title hightlights
4 years ago
Barış Soner Uşaklı d38c872259 feat: add loading indicator 4 years ago
psychobunny 82ab6cd3b1 fix: tooltip placement on navbar search 4 years ago
psychobunny 683c01b0d3 fix: rogue tooltip on navbar profile icon 4 years ago
Barış Soner Uşaklı 02a48e1c64 fix: change user tooltip container to content 4 years ago
Barış Soner Uşaklı 047c414841 fix: add user tooltips to body
so they don't get cutoff  in containers with overflow:hidden
4 years ago
Barış Soner Uşaklı 42298fe659 fix: clear old value on focus
hide results if input lost focus during search
4 years ago
Barış Soner Uşaklı 5002e0f62c feat: refactor app.js 4 years ago
Barış Soner Uşaklı 630bac2aa5 feat: remove global window.templates 4 years ago
Barış Soner Uşaklı 94da9fe55e feat: add partials/footer/js.tpl
add ajaxify.coldLoad which gets called from partials/footer/js.tpl
5 years ago
Julian Lam 589216e720 fix: multiple alerts in the same millisecond overwrite each other 5 years ago
Barış Soner Uşaklı 3f01f4a2b8 Revert "feat: load timeago strings client-side"
This reverts commit 558a2d739c.
5 years ago
Julian Lam 558a2d739c feat: load timeago strings client-side
9adaccd036 introduced the ability to
configure an assetBaseUrl, but the timeago strings were still
calling a hardcoded value as it was handled server-side. There's
no need for the strings to be loaded until timeago is initialised.
5 years ago
Barış Soner Uşaklı ec05783507 feat: remove js-enabled.css 5 years ago
Julian Lam 2286ee2a61 fix: invalid session error modal during logout
A brief flash can be seen, but this is exacerbated by slow
connections and/or slow server response.
5 years ago
Barış Soner Uşaklı b459592a4e Merge branch 'master' of https://github.com/NodeBB/NodeBB 5 years ago
Barış Soner Uşaklı f70d1648c6 feat: show more relevant snippets 5 years ago
Julian Lam 5a367ecbb4 fix: remove use of 'hidden' class in navbar toggling 5 years ago
Barış Soner Uşaklı 6349fa03e1 feat: more search changes 5 years ago
Barış Soner Uşaklı 4b38533b15 feat: more merge/search fixes 5 years ago
Barış Soner Uşaklı 5fd05dc942 feat: more search & merge fixes 5 years ago
Barış Soner Uşaklı d92032dad1 fix: prevent logout form from submitting 5 years ago
Julian Lam 922d49be0b fix(style): switch..case 5 years ago
Barış Soner Uşaklı f12d448ef5 feat: quick search changes 5 years ago
Barış Soner Uşaklı bb1a56f0fe feat: move quick search into search module
so it can be used directly
5 years ago
Barış Soner Uşaklı 47d73a2ab4 fix: move checks into timeout 5 years ago
Barış Soner Uşaklı 84c20f919b fix: don't explode if server sends `checkSession` 5 years ago
Barış Soner Uşaklı 5781a2dc65
feat: fix session mismatch errors by clearing cookie on logout (#8338)
* feat: fix session mismatch errors by clearing cookie on logout

* feat: remove app.upateHeader

ported from 2.0

* feat: handle if user doesn't click button and just refreshes page
5 years ago
Barış Soner Uşaklı d6c2764fe7 fix: don't trigger quick search if val doesn't change 5 years ago
Barış Soner Uşaklı 6f78113ee3 fix: prevent duplicate search triggers
if app.handleSearch is called from a plugin in action:ajaxify.end events are fired multiple time
5 years ago
Barış Soner Uşaklı ada45a34d5 fix: search post snipets incase content is plain text 5 years ago
Barış Soner Uşaklı 40b5cbab2c refactor: remove console.log 5 years ago
Barış Soner Uşaklı 765b8156d5 feat: parse quick search tpl even if no results
allows showing "no results found" in theme
5 years ago
psychobunny 275e837bcf fix: jquery xhtml violations 5 years ago
Barış Soner Uşaklı c8fb7f9246 fix: escape register query param 5 years ago
Barış Soner Uşaklı 4b8897d9bc fix: lint 5 years ago
Aziz Khoury beea56b3c6 ie11 doesnt support Object.values (#7993) 5 years ago
Barış Soner Uşaklı f31d30cd02 feat: add client side hook for quick search&normal search 6 years ago
Julian Lam 289dada5f7 fix(deps): update to eslint@6 6 years ago
Barış Soner Uşaklı 25ea634787 fix: #7659 add option to change cookie link url 6 years ago
Barış Soner Uşaklı e65ddc98b5 fix: https://github.com/barisusakli/nodebb-plugin-dbsearch/issues/53 6 years ago
Julian Lam a41769e61c
feat: update meta tags on ajaxify (#7580), fixes #7544
* feat: wip -- refresh meta tags on ajaxify

* feat: wrapped up meta tags update on ajaxify feature

* fix: removed commented-out line

* fix: removed another commented-out line
6 years ago
Barış Soner Uşaklı 09681e6ccf fix: #7562 6 years ago
Barış Soner Uşaklı e906bea470 fix: escape search snippet closes #7506 6 years ago
Andrew Rodrigues 78e0b9834c fix: #7485 6 years ago
Andrew Rodrigues c37b2f2ed3 fix: #7378 6 years ago
Barış Soner Uşaklı 03305db845 fix: #7395 6 years ago
Barış Soner Uşaklı fc830c0f41 feat: lower search timeout 6 years ago
Barış Soner Uşaklı 8a0e1280d6 feat: quick search 6 years ago
Baris Usakli d2b8396764 feat: make topic search a function 6 years ago
Barış Soner Uşaklı c01d43e01d feat: quick search 6 years ago
Barış Soner Uşaklı f6cfbbb520 fix: don't crash if body doesn't have `skin-` 6 years ago
Julian Lam 63061ffd37 feat: new hook filter:user.logout
- used for setting "next" for post logout redirection
6 years ago
Julian Lam 5ee173c2f6 fix: #7276 improper request for client-noskin.css 6 years ago
Julian Lam 3859d417ce fix: #7236, header search stops working after header update 6 years ago
Julian Lam 954af0f0d2 fix: #7176, FUOC on app.reskin() 6 years ago
Julian Lam 8e9de540b4 fix: #7136 socket.disconnect() now called on invalid session 6 years ago
Julian Lam d81e0a5f5b fix: #7146 Better RTL handling on (de-)authentication
- RTL is applied (or unapplied) on login and logout depending on
  user language/guest-detected language.
- config is automatically saved into res.locals.config whenever
  loadConfig is called
- On login/logout, buildHeader is called instead of getting config
- On logout, req.uid is deleted instead of set to 0
6 years ago
Julian Lam 900f0a0b78 fix: #7118, invoking autoLocale middleware on logout
Also:
- firing client-side hook on header update
- updating bootbox locale on header update
6 years ago
Andrew Rodrigues 7fb29f4272 fix: closes #6784 (#7137)
* fix: closes #6784

* #6784 also fix homepage + subfolder installs

* #6784 fixes suburls as well (ex. /tags/x and /groups/y)

* #6784 more elegant solution @pitaj

and the last time I touch this function, lol

* #6784 regis, final answer

I lied in that last commit
6 years ago
Barış Soner Uşaklı f103390aa5 fix: #7103
update counter when user navigates to /unread
fix new topic alert on /unread
moved unread code from footer to unread
6 years ago
Barış Soner Uşaklı 74d0e88df3 fix: don't explode if there is no css el 6 years ago
Julian Lam 5f3d1c76c8
fix: #7038, autoLocale logic not playing nicely with no-refresh auths (#7059)
* fix: #7038, autoLocale logic not playing nicely with no-refresh auths

- on login, req.query.lang is deleted (since it seems to be left over)
- on logout, the middleware.autoLocale is executed, which resets
  req.query.lang
- middleware.autoLocale is new, just refactored existing logic in
  webserver.js into new middleware method.

* style: tests, use lodash

* fix: timeago strings not switching languages on login or out
6 years ago
Julian Lam 6df5668e64 fix: #7063, logout code should do hard page nav to / or data.next 6 years ago
Julian Lam 28a1fa780a fix: skin not changing after login or logout, #7038 6 years ago
Julian Lam f6b92c1d3e fix: #7013, add cache buster to js-enabled.css 6 years ago
Barış Soner Uşaklı c0a75d735b fix requires 6 years ago
Baris Usakli c343b93a37 optimize ajaxify
- do not call $.timeago twice on topic load and for widgets
- do not use toLocaleString for each timeago string, use a single
Intl.DateTimeFormat instance instead
- do not call format for empty timeago strings, ie a post that isnt
edited doesnt have a timeago string
- do not call isTouchDevice for every element
- remove app.replaceSelfLinks, this is superceded with /me route
- store references to jquery objects in navigator instead of creating
them on every scroll
6 years ago
Julian Lam f7bd398eb1 style(eslint): newlines in public/src as well 6 years ago
Julian Lam 84433f29ab
Do not require a full refresh on login/logout (#6841)
* no-refresh login as well, plus lots of fixes for missing config on login

* replace config with new set on logout as well

* passing new payload data into new action:app.loggedIn hook, and old action:app.loggedOut hook

* fixed issues with socket.io not properly representing uid on server

* some light refactoring and cleanup

* minor cleanup, fixed spa logout not working after login

* have reconnection handler for socket.io wait 2s to confirm disconnection before reporting -- stops flicker if reconnecting immediately

* Dynamically replace chat and slideout menu on updateHeader()

... instead of just the menu items.

* more efficient calls to Benchpress and translator /cc @pitaj

* fix: chats and notification handlers not working after login

* fix: accidentally calling cb multiple times
6 years ago
Andrew Rodrigues e2ecbae06c add body class when cookie consent warning is open 6 years ago
Barış Soner Uşaklı 702be3f6de https://github.com/NodeBB/nodebb-theme-persona/issues/363 6 years ago
Barış Soner Uşaklı df4f5f6f27
closes #6784 6 years ago
Julian Lam 32edfb6c5a updating chat logic to save uuid in data-uuid attr instead of uuid attr 7 years ago
Barış Soner Uşaklı a7267df404 closes #6464 7 years ago
Julian Lam a4a961639d only triggering forum updated messaging if hostname matches, fixes #6333 7 years ago
Barış Soner Uşaklı c70cb0d7ad please eslint 7 years ago
Barış Soner Uşaklı bac2da0ace dont crash if app.logout is called from code 7 years ago
Julian Lam 94e8b2b38d Added ajaxify.isCold()
And used it in app.js, so window.scrollTo(0, 0); is not called
on cold load (since you're already at the top). Useful in low-
bandwidth modes since you might accidentally get kicked to the
top of the page due to a slow connection and delayed .init().

Slightly related to testing in #6150
7 years ago
Barış Soner Uşaklı fd78eb6d57 closes #5533 7 years ago
Julian Lam 514317ab20 using translator.unescape instead of replaces 8 years ago
Julian Lam 211482bbc0 fixes #5927 8 years ago
Peter Jaszkowiak dc3f89a505 ajaxify t.js usage to Benchpress 8 years ago
Andrew Rodrigues 60e0f4ced9 minor typo 8 years ago
Peter Jaszkowiak abffc29128 Use Benchpress (#5901)
* 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
8 years ago
Julian Lam c4fbed24f8 Squashed commit of the following:
commit 9c86d9b2904e14927cd7e9679b92aec0951d1063
Merge: ebfa63a 5a7f811
Author: Julian Lam <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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
8 years ago
Baris Usakli 5af1161e09 fix eslint 8 years ago
psychobunny 1b98449686 closes #5704 8 years ago
Barış Soner Uşaklı 3a1eba2537 merge 8 years ago
psychobunny b3bd70235a refactor ban messaging; add ban duration to message; use bootbox instead of alert 8 years ago
Barış Soner Uşaklı 6fb90a17e0 closes #5613 8 years ago
Peter Jaszkowiak 30b47d39f3 Fix #5536 8 years ago