Commit graph

113 commits

Author SHA1 Message Date
Robin Ward
7c0fb41ec0
Deprecation: Use Ember.Helper for later versions of Ember 2016-05-11 14:26:09 -04:00
Robin Ward
514c3976f0
PERF: Migrate header to discourse widgets 2016-04-25 10:48:04 -04:00
Sam
1dc168a7e6 Merge branch 'master' into vdom 2016-02-15 19:29:59 +11:00
Sam
dd6ebde824 FIX: Always ensure notifications are treated as read once clicked
UX: improve messaging so notifications list is far more stable
PERF: improve performance of notifcation lookup queries

- Add feature "SetTransientHeader" that allows shipping info to server
   in the next Ajax request
- remove local storage hack used for notifications
- amend lookupStale to return hydrated objects, move logic into store
- stop magically clearing various notifications (likes, invitee accepted, group_summary, granted badge)
2016-02-15 19:29:47 +11:00
Robin Ward
d1e85bdd8b FEATURE: Use virtual dom framework for faster post rendering 2016-02-11 11:00:40 -05:00
Sam
03ea0bfe22 FEATURE: allow users to archive messages
Messages are now in 3 buckets

- Inbox for all new messages
- Sent for all sent messages
- Archive for all messages you are done with

You can select messages from your Inbox or Sent and move them to your Archive,
you can move messages out of your Archive similarly

Similar concept applied to group messages, except that archiving and unarchiving
will apply to all group members
2015-12-23 11:09:30 +11:00
Robin Ward
8f1937e88f Clean up PostsWithPlaceholders 2015-12-07 14:21:07 -05:00
Sam
fbffe28772 es6 migration and fixes 2015-12-02 11:15:22 +11:00
Robin Ward
434deb1bd3 SECURITY: Backported XSS fixes from Handlebars 2015-11-24 16:08:08 -05:00
Arpit Jalan
99c1aa2e85 optimize OpenComposer Mixin 2015-11-24 23:39:19 +05:30
Robin Ward
47495a5713 FEATURE: Replace composer editor with ember version 2015-11-06 09:49:16 -05:00
Robin Ward
94b60e62a2 FEATURE: New markdown editor re-written in Ember
Note this commit leaves out the biggest occurrence of the editor
which is the post/topic composer.

To avoid major breakage, this replaces it everywhere else it was
used:

* User preferences (About Me)
* Admin Customizations > Text Content
* Category Templates
* Editing Queued Posts

A future commit will replace the main composer with this editor
and will remove the unused pagedown code.
2015-10-19 11:01:20 -04:00
Robin Ward
4986314122 Add "more..." to emoji popup in composer. 2015-09-29 16:16:52 -04:00
Sam
6437cd0341 FEATURE: add support for generic external avatar services
This changes it so we only ship an avatar template down to the client
it has no magic, all it knows is how to plug in size
2015-09-11 15:10:56 +02:00
Sam
e13ed24122 FEATURE: on mobile take users to full page search
UX: improve styling on full page search page
FEATURE: allow search context in full page search
FEATURE: visited color link for full page search
FIX: broken search help on fulls page search page
FEATURE: allow preload store to return a null
FEATURE: "mobileAction" for the header buttons
2015-09-08 11:04:03 +10:00
Kane York
342eba4374 FEATURE: Category reordering dialog 2015-09-06 16:53:52 -07:00
Robin Ward
8e776d0fd7 Move TopicTrackingState to injected object 2015-09-04 13:00:24 -04:00
Robin Ward
b3a930f2ed DRY up header height calculation 2015-09-02 14:30:18 -04:00
Robin Ward
bf2c18fddb Migrate KeyValueStore to ES6 modules 2015-09-01 14:45:24 -04:00
Robin Ward
ddf0db0338 Refactor notifications localStorage cache into adapter pattern.
Sometimes you want stale data right away, then refresh it async.
This adds `findStale` to the store for that case. If it returns
an object with `hasResults` you can get the `results` and display
them.

It also returns a `refresh()` method to freshen up the stale data.

To enable `localStorage` support for stale data, just include the
mixin `StaleLocalStorage` into an adapter for that model. This
commit includes a sample of doing that for `Notifications`.
2015-08-31 14:12:27 -04:00
Robin Ward
d4b987ff32 Migrate search drop down to menu-panel component. 2015-08-28 15:44:24 -04:00
Robin Ward
abd9b26642 Convert Badges / User Badges to ES6. 2015-08-19 12:09:10 -04:00
Robin Ward
22844b9e46 Ember 1.12 support 2015-08-13 11:14:16 -04:00
Robin Ward
02a968bd27 Remove ObjectController, Discouse Controllers + Presence 2015-08-13 10:49:08 -04:00
Robin Ward
e2e3e7c0e0 Add ES6 support to more files 2015-08-13 10:49:08 -04:00
Robin Ward
b7e6eaa961 ES6ify some of the remaining files 2015-08-10 10:21:05 -04:00
Robin Ward
76aa0795b3 Use small actions for moving posts 2015-07-31 16:30:18 -04:00
Robin Ward
29439e5534 SECURITY: Make sure export CSV is generated via a POST 2015-07-24 12:33:53 -04:00
Robin Ward
284b86cf5d Refactor PostActionSummary a bit.
- Remove `Discourse` constant.
- Use `LikeCount` instead of `Likecount`
2015-07-10 15:56:49 -04:00
Robin Ward
db75774440 UX: Move likes into drop down instead of its own status line 2015-07-03 17:15:20 -04:00
Robin Ward
84a1acb2ec Refactor category edit to use components 2015-07-03 10:01:46 -04:00
Robin Ward
7ed309666b Refactor search results to be components instead of views for reuse 2015-06-22 15:08:51 -04:00
Sam Saffron
c58b495e15 SECURITY: Query @usernames in bulk
Otherwise you could add many requests at once while composing.
2015-06-11 13:03:49 -04:00
Robin Ward
14fa033288 Update cloaking code for HTMLBars 2015-05-11 11:18:37 -04:00
Robin Ward
8294205f7c Ember 1.11 broken WIP 2015-05-11 11:18:37 -04:00
Robin Ward
b3b4fd21ed Broken WIP 2015-05-11 11:18:37 -04:00
riking
da9913359c Convert to file in lib/, rough active tracking 2015-04-21 20:23:29 -07:00
Robin Ward
76f7786d0d Support saving posts via Store 2015-04-15 14:54:36 -04:00
Robin Ward
d4a05825da Convert Composer to use Store
- Uses store for `PostStream`, `TopicList` too
2015-04-15 14:54:36 -04:00
Robin Ward
a83a19f6ce ES6 module migrations 2015-04-15 14:54:36 -04:00
Robin Ward
22ffcba8e6 Convert Discourse.Post to ES6 and use Store model
- Includes acceptance tests for composer (post, edit)
- Supports acceptance testing of bootbox
2015-04-15 14:54:36 -04:00
Sam
1bdce815e2 FIX: workaround for Safari on iOS causing crazy composer positioning
see: http://stackoverflow.com/questions/29001977/safari-in-ios8-is-scrolling-screen-when-fixed-elements-get-focus
2015-03-24 17:43:05 +11:00
Robin Ward
3d2d224312 FEATURE: User Directory, with sorting and time period filter 2015-03-18 15:20:34 -04:00
Régis Hanol
424a3b042a FEATURE: unified UI for pinning/banner topics
REFACTOR: ES6ified all the modals
2015-03-14 01:18:05 +01:00
Sam
a82530012a FEATURE: Allow selection of highlight js languages
PERF: stop loading highlight js on load

To get latest highlight js run bin/rake highlightjs:update
2015-03-13 16:18:59 +11:00
Robin Ward
f50280a889 Split out bulk operations modal and Discourse.Route.showModal
This makes it easier to share bulk topic operations, for example
from a plugin's custom topic list.
2015-03-10 15:40:56 -04:00
Robin Ward
de4e4f2b98 Replace $LAB with path aware loadScript that uses jQuery 2015-03-09 14:39:39 -04:00
Robin Ward
9974a26c47 FEATURE: Can specify a list of default_avatars urls.
These new avatars will be used by new users until they upload their own
avatars. If left blank, letter avatars are used.
2015-03-03 16:19:29 -05:00
Robin Ward
3d3b70f4bb Remove duplicated NotificationType globals 2015-02-27 10:33:39 -05:00
Robin Ward
1f716f5514 Convert Notification button to a component 2015-02-27 10:33:39 -05:00