1314 Commits (113d3324fbf01c751730f106dfb475233fee4957)

Author SHA1 Message Date
Barış Soner Uşaklı 320008cd49 feat: #8509, don't scroll chat to bottom if user scrolled up 5 years ago
Julian Lam 3379d65f36 feat: fire action:flag.showModal on flag modal appearance 5 years ago
Barış Soner Uşaklı 46a6686300 fix: category search in selector 5 years ago
Barış Soner Uşaklı 658dd03b03
feat: add tools to recent/unread (#8477)
* feat: add tools to recent/unread

* fix: open api spec

* fix: more api spec
5 years ago
Julian Lam da29b947bf feat: add js-enabled.css to list of preloaded css files 5 years ago
Barış Soner Uşaklı 4f6b6c5631 feat: hide elements if search element is a direct child of dropdown
this fixes themes if they put the search input inside the dropdown
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
Julian Lam 4d60eac60f feat: #8384 options to delete account, content, or both 5 years ago
Julian Lam a82e9bd7f6
feat: privileges for Admin Control Panel (#8355)
* feat: acp privileges (WIP)

* fix: restore global privilege hooks

* refactor: using cid 0 in admin privs

* fix: no need for zebrastripe-reset

* feat: manage:categories privilege WIP

* feat: renamed prefix to admin:, settigns and dashboard privs

* fix: nofocus on acp privs group find modal

* refactor: privileges.x.get() to not used hardcoded privs

* fix: crash if unable to get latest version

* feat: setting acp priv

* Revert "fix: crash if unable to get latest version"

This reverts commit afdb235f48eb0072d88de45f3a1e0151281095b3.

* feat: user/privilege acp privs

* fix: category selector in manage/privileges

* fix: guests potentially becoming admins

* fix: bug in setting admin privs

* fix: some last minute things + api docs

* fix: some more last minute fixes
5 years ago
Barış Soner Uşaklı 7786187e84 fix: change event name so it doesnt trigger complete event
add data to complete event
5 years ago
Julian Lam 922d49be0b fix(style): switch..case 5 years ago
Barış Soner Uşaklı 9ffcb6f7ba feat: add results into results container 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ı cb662e15ce feat: improve grunt restart/rebuild speed 5 years ago
Barış Soner Uşaklı 1f992cf371 fix: if category in selector has url use it 5 years ago
psychobunny 275e837bcf fix: jquery xhtml violations 5 years ago
Opliko 47e7e9572c Add loading=lazy tag to avatars
There is no reason why avatars should be a blocking reasorce, and browsers are now adding support for lazy loading of images (and iframes). According to [caniuse.com](https://caniuse.com/#feat=loading-lazy-attr) 62% of users use a browser that supports this attribute.

So there doesn't seem to be any downside to just adding this attribute here. It won't affect browsers that don't support it and might speed up page loads on browsers that do.
5 years ago
Andrew Rodrigues 3c9689a5ac
feat: settings sorted list (#8170)
* feat: settings sorted list

see https://github.com/NodeBB/nodebb-plugin-quickstart/pull/9/files for sample
5 years ago
Barış Soner Uşaklı 067034082f fix: #6422, update deleted/restored messages 5 years ago
Baris Usakli 2e79480179 fix: #8151, don't crash if taskbar doesn't have element 5 years ago
Barış Soner Uşaklı 3077eb9428 fix: remove unused conditional, dont add dupe messages 5 years ago
Julian Lam 594cd7e176 fix: #8127 user join system message duplicated
- Now showing user-join message for chat owner in addition to the newly
  added user
- If a modal already exists for a room when createModal is called, don't
  return null, return the modal
5 years ago
Julian Lam 106c141ff5 fix: background-size in taskbar images 5 years ago
Barış Soner Uşaklı c8fb7f9246 fix: escape register query param 5 years ago
Barış Soner Uşaklı 05c9fe2735 feat: #5272, allow changing user groups from manage users page 5 years ago
Barış Soner Uşaklı ca3be1f336
fix: #7974 (#7976) 5 years ago
Barış Soner Uşaklı 9a7560049a feat: bypass cropper for gifs 5 years ago
Barış Soner Uşaklı e0fec86628 fix: dont crash if callback is undefined 5 years ago
Barış Soner Uşaklı 35a4ca2fe9 feat: add sm2x avatar class #7813 5 years ago
Julian Lam 9b09ee0e93 feat: client-side taskbar.update method, deprecates .updateTitle() 6 years ago
Julian Lam 1796b65d34 feat: option to restrict group leaving, closes #7770 6 years ago
Barış Soner Uşaklı ad96b0e0db feat: preserver querystring when changing category sort 6 years ago
Julian Lam 0921230976 fix(style): updated code to follow new eslint recommendations
Squashed commit of the following:

commit f9ce878b269b3568f0d649309aae1af4dcfdfeef
Author: Julian Lam <julian@nodebb.org>
Date:   Tue Aug 13 14:30:46 2019 -0400

    fix(style): updated code to follow new eslint recommendations

commit 80dd370e413f22badb96ff2138e7991dfff6d836
Author: Julian Lam <julian@nodebb.org>
Date:   Tue Aug 13 14:14:58 2019 -0400

    fix(deps): update dependency sitemap to v4

    Squashed commit of the following:

    commit f4dd9cabb21e26fdc21f8413be822ea7c64251f8
    Author: Julian Lam <julian@nodebb.org>
    Date:   Tue Aug 13 11:33:05 2019 -0400

        fix: resolved breaking changes from sitemap v4 upgrade

    commit 9043415ee16dcc27a8dcc2e4479d1bc5e2d1b60e
    Merge: e3352b272 72590b346
    Author: Julian Lam <julian@nodebb.org>
    Date:   Tue Aug 13 11:09:55 2019 -0400

        Merge branch 'master' into renovate/sitemap-4.x

    commit e3352b272eb9400bdb00774973181397803765e4
    Author: Renovate Bot <bot@renovateapp.com>
    Date:   Mon Aug 12 07:59:05 2019 +0000

        fix(deps): update dependency sitemap to v4

commit 8e3c0cdcae22acc32d352be8bb72d60e7502dbc5
Author: Renovate Bot <bot@renovateapp.com>
Date:   Fri Aug 9 00:49:51 2019 +0000

    fix(deps): update dependency commander to v3

commit 2104449d38818f2fa4d44b3a58a0a168781acbfb
Author: Renovate Bot <bot@renovateapp.com>
Date:   Tue Aug 13 15:00:27 2019 +0000

    fix(deps): update dependency mongodb to v3.3.0

commit d2937f446a21131c070ae5d0ff33d67cfe465b8c
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Tue Aug 13 10:36:48 2019 -0400

    feat: async/await admin/controllers

commit 1b97e8b199f960dc24e5722702f27499ae049914
Author: Misty (Bot) <deploy@nodebb.org>
Date:   Tue Aug 13 09:28:39 2019 +0000

    Latest translations and fallbacks

commit 69a48957a2f0d23c4d194b664bda3a0431179c01
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Mon Aug 12 21:56:09 2019 -0400

    feat: async/await

commit b9b2a7e593a452de4bef6d0ab6abe368a3bdb8dd
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Mon Aug 12 20:58:29 2019 -0400

    feat: async/await refactor

    controllers/accounts

commit a8d43a175974a0c8ae3dc132bf51a7ed9a4c6305
Author: Baris Usakli <barisusakli@gmail.com>
Date:   Mon Aug 12 14:49:40 2019 -0400

    feat: async/await controllers/accounts

commit 2f25aae57bf9dbe98d655276770e56bed9ec023b
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Sun Aug 11 23:09:50 2019 -0400

    fix: #7831, fix pagination

    convert to async/await

commit c9e83f2374572264855a04156278eef256b0a20c
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Sun Aug 11 00:14:35 2019 -0400

    fix: remove empty line

commit 30be91b26c4dd7583412c4e8d56e9c1688e48a44
Author: Barış Soner Uşaklı <barisusakli@gmail.com>
Date:   Sun Aug 11 00:13:41 2019 -0400

    fix: remove useless catchs and empty line

commit 2e4a71c0b6104738f15ffbfe3246105b922fdfb3
Author: Renovate Bot <bot@renovateapp.com>
Date:   Sat Aug 10 06:51:50 2019 +0000

    chore(deps): update dependency eslint-config-airbnb-base to v14
6 years ago
Julian Lam 3d3fa8655d feat: new client-side hooks for chat minimize and close
closes #7805
6 years ago
Barış Soner Uşaklı 666e0eaff9 fix: #7798, fix nested post selection 6 years ago
Barış Soner Uşaklı 53e1b349ae
Change post owner (#7752)
* feat: #7749, allow array of keys for setObject

* feat: sortedSetRemoveBulk

* feat: test for bulk remove

* feat: #7083, ability to change post ownership

* feat: #7083, fix tid:<tid>:posters

* feat: #7083, front end

* fix: #7752, psql methods

* fix: add missing await

* fix: maybe psql
6 years ago
Barış Soner Uşaklı bd640a1107
Topic await errors (#7727)
* feat: derp await

* feat: restore user.getSettings

* feat: cleanup

* feat: make tid const

* feat: cleanup

* fix: tests

* feat: deprecate filter:controllers.topic.get

* feat: rewrite post-index logic

* feat: change calculation to match others

* fix: use .async

* feat: remove try/catch wrapper
6 years ago
Julian Lam 69fae1a7e4 fix: output span in buildAvatar helper instead of div
In not-so-rare circumstances, the avatar generated is wrapped in
an anchor so that when clicked, it goes to the user profile.

Unfortunately, html 4 spec doesn't like block level elements
inside anchors (since an anchor is an inline element), and even
though we define html5 doctype, browsers still reorder the div
and anchor, beats me as to why.

So I can trick the browser by using a span. The css already styles
it as inline-block so no further fixes are required.
6 years ago
Aziz Khoury 13efbc9967 feat: change widget-* to data-widget-* (#7703)
* change widget-* to data-widget-*, original pr#5444 but backward compatible

* lint
6 years ago
Julian Lam 2523889990
refactor: replace avatar conditional code with buildAvatar helper (#7681)
* feat: helper for building avatars

* feat: benchpress truefalse globals, componentPrefix in buildAvatar

* refactor: remove componentPrefix

* feat: changes to buildAvatar helper

- removed extra .avatar-xl class in generics.less
- added support for component override
- "size" can be a number now

* fix: prevent overflow of alt text in avatars

* fix: update doc on buildAvatar helper
6 years ago
Barış Soner Uşaklı 8aef689f05 fix: no need for moderate bit for global mods and admins 6 years ago
Barış Soner Uşaklı ebb32e7891 fix: attribute name so it works for both templates 6 years ago
Barış Soner Uşaklı 0721bee146 feat: on category search reveal children and parents 6 years ago
Barış Soner Uşaklı 6cebc7f069 feat: #7627, close chat on ajaxify on mobile 6 years ago
yossizahn 1703233f48 fix: #7586, switchTimeagoLanguage shouldn't discriminate against languages w/o shorthands 6 years ago
Barış Soner Uşaklı bf6fc502c4 fix: #7564 6 years ago
Barış Soner Uşaklı c940a73359 fix: #7539 6 years ago
Barış Soner Uşaklı 32cf07d732 fix: #7464 6 years ago
Barış Soner Uşaklı f86d74d8b9 fix: #7424 6 years ago
Barış Soner Uşaklı 09681e6ccf fix: #7562 6 years ago
Julian Lam 3871a02ccc fix: resolve CORS error on uploading via URL
On uploading a new profile picture via URL, a CORS error presents
itself during the .toDataUrl() call due to misconfigured CORS
handling in the library. The change here allows cropper.js to
check crossorigin attribute in image and handle appropriately.

Also, the error handling is improved so the error is caught on
Firefox, as it sends a different error message than on Chrome.
6 years ago
Julian Lam d3a10628e7 fix: broken 50% border radius on emails, failing tests 6 years ago
Julian Lam 3a7f1c192b fix: failing tests from revamped-emails branch 6 years ago
Julian Lam f32a992237
feat: revamp email templates to be more style agnostic (#7375)
* feat: re-designed digest

Updated design, logic no longer shows "no topics", just doesn't
show the list at all, teaser re-retrieved for digest so that it
always grabs a teaser even if there is no reply, changed default
email background to a light grey.

* fix: minor padding issues in digest

* fix: banned template

* fix: invitation.tpl

* fix: removed unused notif_chat and notif_post email templates

* fix: notification template

* fix: registration_accepted template

* fix: reset tpl

* fix: test tpl

* fix: email verify tpl

* fix: reset notify tpl

* fix: welcome tpl

* fix: additional minor font fixes

* fix: removed unused email header image assets

* fix: internationalised 'your daily digest' string

* fix: broken url in digest 🤦

* feat: added RTL support for emailer

/cc @PostMidnight
6 years ago
Julian Lam 158f68eb47 fix: search.api not working on subfolder 6 years ago
Barış Soner Uşaklı c01d43e01d feat: quick search 6 years ago
Julian Lam 96b6ce1f3c fix: eslint failure from daadcc4889 6 years ago
Andrew Rodrigues d864da1a2e
fix: move `action:alert.update` to after translator 6 years ago
Andrew Rodrigues daadcc4889
feat: add `action:alert.new`, `action:alert.update` hooks 6 years ago
Barış Soner Uşaklı 12c5899099 fix: #7339 6 years ago
Barış Soner Uşaklı c72da5595a fix: #6806
3 new global privileges
view:users
view:tags
view:groups
6 years ago
Barış Soner Uşaklı ae779ea4f9 fix: #7334 6 years ago
Barış Soner Uşaklı 9d1fcf4e36 fix: closes #7217 6 years ago
Barış Soner Uşaklı 0366cfd8ec fix: allow regular groups to local login 6 years ago
Julian Lam 7fb3c16882 fix: #7296, local login privilege available to registered-users only 6 years ago
Julian Lam cee47f78b2 fix: #7289 timeago shorthand toggle fails on non-existant language
- Exposing timeagoCodes to frontend
- Timeago language and shorthand toggling will fall back to 'en'
  if the requested language does not exist
6 years ago
Julian Lam af4fd5979f Revert "fix: #7216, hide taskbar on chat modal invocation on mobile"
This reverts commit a70db885cf.
6 years ago
Julian Lam a70db885cf fix: #7216, hide taskbar on chat modal invocation on mobile 6 years ago
Julian Lam 629b35546c fix: #7167, composer and chat not closing on logout 6 years ago
Barış Soner Uşaklı 29a85aecc7 fix: #7138 6 years ago
Barış Soner Uşaklı 4650a76036 fix: #7124 6 years ago
Barış Soner Uşaklı 9f5062682d fix: unread badge
- only increase unread badge if topic or category is watched
- fix logic for "there are new posts/topics" on /unread and /recent
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
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
Barış Soner Uşaklı 2604cf6356 fix: #7074 6 years ago
Barış Soner Uşaklı f581c052ee feat: #7023
- add category selector to privileges and category create modals
- allow category selector to work for multiple selectors on same page
6 years ago
Baris Usakli cd02e03f7b don't crash if meta.config is undefined 6 years ago
Peter Jaszkowiak ba619c7ec8 style(eslint): match operator-linebreak preferences 6 years ago
Barış Soner Uşaklı e78aea1e86 close #7024
show error instead showing crop modal
6 years ago
Barış Soner Uşaklı 27c016d68d fix alert 6 years ago
Barış Soner Uşaklı 625516e046 if there is no search el return
aka if theme doesnt support it
6 years ago
Barış Soner Uşaklı 63c0a9a3b7 closes #6928 6 years ago
Barış Soner Uşaklı 169a6680d5 #6928 6 years ago
Baris Usakli 1454fdceff closes #6874 6 years ago
Barış Soner Uşaklı c02d584b53 reduce initial js payload/requests 6 years ago
Baris Usakli 0fd5210d37 really fix pagination on mobile 6 years ago
Baris Usakli 2624e302ab fix navigator on mobile 6 years ago
Baris Usakli c1ab753bc3 use paginationBlock 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
Barış Soner Uşaklı ac549f8bc7 closes #6957 6 years ago
Barış Soner Uşaklı f0dead7aba more tooltip work 6 years ago
Barış Soner Uşaklı 4b6b3d5436 set duration to 0 6 years ago
Barış Soner Uşaklı 85c832fcc6 add tooltip 6 years ago
Barış Soner Uşaklı fe8832ad5c dont update if index didnt change 6 years ago
Barış Soner Uşaklı 7b5c4f343a drag nav 6 years ago
Barış Soner Uşaklı b6771836cf closes #6937 6 years ago
Julian Lam f7bd398eb1 style(eslint): newlines in public/src as well 6 years ago
renovate[bot] 64b9dabff8 chore(deps): update dependency eslint-config-airbnb-base to v13 (#6599)
* chore(deps): update dependency eslint-config-airbnb-base to v13

* chore: #6599, linting 😬
6 years ago