This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/app/assets/javascripts/discourse/lib
Martin Brennan 6261339da9
Improving bookmarks part 1 (#8466)
Note: All of this functionality is hidden behind a hidden, default false, site setting called `enable_bookmarks_with_reminders`. Also, any feedback on Ember code would be greatly appreciated!

This is part 1 of the bookmark improvements. The next PR will address the backend logic to send reminder notifications for bookmarked posts to users. This PR adds the following functionality:

* We are adding a new `bookmarks` table and `Bookmark` model to make the bookmarks a first-class citizen and to allow attaching reminders to them.
* Posts now have a new button in their actions menu that has the icon of an actual book
* Clicking the button opens the new bookmark modal.
* Both name and the reminder type are optional.
* If you close the modal without doing anything, the bookmark is saved with no reminder.
* If you click the Cancel button, no bookmark is saved at all.
* All of the reminder type tiles are dynamic and the times they show will be based on your user timezone set in your profile (this should already be set for you).
* If for some reason a user does not have their timezone set they will not be able to set a reminder, but they will still be able to create a bookmark.
* A bookmark can be deleted by clicking on the book icon again which will be red if the post is bookmarked.

This PR does NOT do anything to migrate or change existing bookmarks in the form of `PostActions`, the two features live side-by-side here. Also this does nothing to the topic bookmarking.
2019-12-11 14:04:02 +10:00
..
concerns FIX: Post blurb incorrect when search contains a phrase match. 2019-03-26 17:01:52 +08:00
after-transition.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
ajax-error.js.es6 FIX: Show error message if message exists 2019-05-09 22:12:51 +02:00
ajax.js.es6 DEV: Remove Discourse.Site in favor of import (#8344) 2019-11-13 12:13:47 -05:00
autocomplete.js.es6 DEV: Move some autocomplete input styling to SCSS (#8381) 2019-11-20 12:32:00 -05:00
autosize.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
cached-topic-list.js.es6 FEATURE: Add remembering topic list for group pms (#8235) 2019-10-24 09:27:03 -05:00
category-hashtags.js.es6 FIX: Do not autocomplete categories or emojis in code blocks (#8459) 2019-12-09 15:07:15 +02:00
category-tag-search.js.es6 REFACTOR: Remove debounce to discourseDebounce 2019-11-11 13:34:01 -05:00
clean-dom.js.es6 Revert "Revert Ember.run refactors" 2019-10-30 09:48:24 -04:00
click-track.js.es6 WIP - discourse/models/user not defined 2019-11-13 15:34:30 -05:00
computed.js.es6 DEV: Move computed to discourseComputed (#8312) 2019-11-07 15:38:28 -06:00
copy-text.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
d-popover.js.es6 make eslint happy 2019-05-23 12:51:40 +02:00
debounce.js.es6 Revert "Revert Ember.run refactors" 2019-10-30 09:48:24 -04:00
decimal-adjust.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
desktop-notifications.js.es6 DEV: Remove Discourse.User and import instead 2019-11-13 15:34:30 -05:00
dirty-keys.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
discourse-location.js.es6 DEV: Import EmberObject rather than global variable (#8256) 2019-10-29 14:23:50 -05:00
export-csv.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
export-result.js.es6 FEATURE: download user posts archive 2014-12-24 15:13:48 +05:30
eyeline.js.es6 DEV: Add test for load-more (#8369) 2019-11-25 14:42:34 +02:00
formatter.js.es6 DEV: Provide radix argument to parseInt (#8281) 2019-11-12 10:47:42 +01:00
hash.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
highlight-syntax.js.es6 FEATURE: allow custom HighlightJS languages 2019-01-02 19:07:36 -05:00
highlight-text.js.es6 FIX: Letters between words incorrectly highlighted within post. 2019-04-03 15:57:51 +08:00
intercept-click.js.es6 FIX: an <a> with a target of _blank wants a new window 2019-02-19 14:44:30 -08:00
is-element-in-viewport.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
key-value-store.js.es6 DEV: Provide radix argument to parseInt (#8281) 2019-11-12 10:47:42 +01:00
keyboard-shortcuts.js.es6 Revert "Revert Ember.run refactors" 2019-10-30 09:48:24 -04:00
lazy-load-images.js.es6 FIX: Correctly resize lazy loaded images in Oneboxes 2019-11-27 11:49:32 +02:00
lightbox.js.es6 DEV: Remove Discourse.User and import instead 2019-11-13 15:34:30 -05:00
link-category-hashtags.js.es6 Revert "Revert Ember.run refactors" 2019-10-30 09:48:24 -04:00
link-lookup.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
link-mentions.js.es6 Revert "Revert Ember.run refactors" 2019-10-30 09:48:24 -04:00
link-tag-hashtag.js.es6 Revert "Revert Ember.run refactors" 2019-10-30 09:48:24 -04:00
load-script.js.es6 DEV: Import Promise from rsvp (#8296) 2019-11-05 10:37:32 -06:00
lock-on.js.es6 FIX: prevents multiple jumps to happen with LockOn (#8460) 2019-12-04 16:45:23 +01:00
logout.js.es6 FIX: Do not start the login flow when logging out from SSO/Authenticator (#8423) 2019-11-27 11:41:07 +00:00
mobile.js.es6 DEV: Import ember ENV instead of Ember.testing (#8305) 2019-11-07 11:20:35 -06:00
notification-levels.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
offset-calculator.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
optional-service.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
page-tracker.js.es6 Revert "Revert Ember.run refactors" 2019-10-30 09:48:24 -04:00
page-visible.js.es6 DEV: unpin Prettier version, apply to YAML files 2019-01-17 13:05:39 -05:00
plugin-api.js.es6 DEV: Extend plugin API for uploads (#8440) 2019-12-09 16:20:03 +02:00
plugin-connectors.js.es6 DEV: Make it possible to deprecate plugin outlet properties 2019-11-20 13:56:26 +00:00
posts-with-placeholders.js.es6 DEV: Move computed to discourseComputed (#8312) 2019-11-07 15:38:28 -06:00
push-notifications.js.es6 Fix Prettier again 2019-11-15 10:52:06 -05:00
pwa-utils.js.es6 DEV: Import Promise from rsvp (#8296) 2019-11-05 10:37:32 -06:00
quote-state.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
quote.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
raw-templates.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
register-topic-footer-button.js.es6 FIX: computed is part of @ember/object not @ember/object/computed 2019-11-13 11:58:09 -05:00
render-tag.js.es6 FEATURE: Tag synonyms 2019-12-04 13:33:51 -05:00
render-tags.js.es6 FEATURE: displays tags in search menu results when enabled (#7819) 2019-06-27 19:26:14 +02:00
render-topic-featured-link.js.es6 WIP - discourse/models/user not defined 2019-11-13 15:34:30 -05:00
reports-loader.js.es6 FIX: prevents race condition where the same report is loaded multiple times (#6953) 2019-01-25 19:29:45 +01:00
round.js.es6 FEATURE: 2 new reports: time to first response, topics with no response 2015-06-22 19:46:51 +02:00
safari-hacks.js.es6 FIX: Avoid unpinning composer on iOS when invoking emojis 2019-12-06 14:08:59 -05:00
screen-track.js.es6 DEV: Provide radix argument to parseInt (#8281) 2019-11-12 10:47:42 +01:00
search.js.es6 FEATURE: Allow scoping search to tag (#8345) 2019-11-14 10:40:26 +10:00
settings.js.es6 FIX: Show same username or name for post notices. (#7862) 2019-07-19 11:05:48 +03:00
sharing.js.es6 FEATURE: Make share button support custom javascript (#8090) 2019-09-12 11:19:43 -04:00
show-modal.js.es6 DEV: Import set, setProperties, helper, and string functions (#8297) 2019-11-05 12:43:49 -06:00
static-route-builder.js.es6 DEV: Import DiscourseRoute rather than Discourse.Route (#8225) 2019-10-22 09:46:10 -04:00
svg-sprite-loader.js.es6 Upgrade to FontAwesome 5 (take two) (#6673) 2018-11-26 16:49:57 -05:00
tag-hashtags.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
text-direction.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
text.js.es6 FIX: Respect enable_inline_emoji_translation setting in titles 2019-12-03 20:39:11 +01:00
theme-selector.js.es6 FIX: Ensure live-reloading of theme CSS works first time (#8052) 2019-08-29 15:47:08 +01:00
to-markdown.js.es6 FIX: keep ruby & rt tags in html to markdown conversion. 2019-12-05 21:18:00 +05:30
tooltip.js.es6 FEATURE: unified popover implementation (#7244) 2019-03-26 15:43:27 +01:00
transform-post.js.es6 Improving bookmarks part 1 (#8466) 2019-12-11 14:04:02 +10:00
uploads.js.es6 DEV: Export imageNameFromFileName 2019-12-09 18:19:55 +02:00
url.js.es6 DEV: Remove Discourse.User and import instead 2019-11-13 15:34:30 -05:00
user-activation.js.es6 DEV: introduces prettier for es6 files 2018-06-15 17:03:24 +02:00
user-search.js.es6 REFACTOR: Remove debounce to discourseDebounce 2019-11-11 13:34:01 -05:00
utilities.js.es6 FIX: Do not autocomplete categories or emojis in code blocks (#8459) 2019-12-09 15:07:15 +02:00
webauthn.js.es6 Check webauthn support when registering security keys (#8146) 2019-10-03 08:26:26 +10:00