Commit Graph

313 Commits

Author SHA1 Message Date
Sam
122fb8025d FIX: last seen date erroneously updated when browser in background
In some cases user may be "last seen" even though browser tab is in
the background or computer is locked
2017-02-28 12:35:10 -05:00
Régis Hanol
a2c04be718 FIX: eradicate I18n fallback issues 💣
FIX: client's translation overrides were not working when the current locale was missing a key
FIX: ExtraLocalesController.show was not properly handling multiple translations
FIX: JsLocaleHelper#output_locale was not properly handling multiple translations

FIX: ExtraLocalesController.show's spec which was randomly failing
FIX: JsLocaleHelper#output_locale was muting cached translations hashes

REFACTOR: move 'enableVerboseLocalization' to the 'localization' initializer
REFACTOR: remove unused I18n.js methods (getFallbacks, localize, parseDate, toTime, strftime, toCurrency, toPercentage)
REFACTOR: remove all I18n.pluralizationRules and instead use MessageFormat's pluralization rules

TEST: add tests for localization initializer
TEST: add tests for I18n.js
2017-02-24 11:31:21 +01:00
Sam
06638c78e7 Merge pull request #4617 from claygriffiths/trailingslash-message-bus
Fix: Forced trailing slash on messageBus.baseUrl
2017-01-26 12:03:06 -05:00
Robin Ward
98eac4924c FIX: If an audio file is playing, don't cloak it 2016-12-27 11:38:14 -05:00
Clay Griffiths
d15bfc9880 Forced trailing slash on messageBus.baseUrl 2016-12-19 14:34:19 -07:00
Robin Ward
a9ed15e11a FIX: Remove more of those pesky View classes 2016-11-11 17:03:15 -05:00
Guo Xiang Tan
a8b7599d4a FEATURE: Add a radial ping when user's first notification has not been read. 2016-11-08 16:23:12 +08:00
Robin Ward
e18ae34493 Don't try injecting into the Resolver. Use options instead. 2016-11-04 10:23:24 -04:00
Robin Ward
3bb4e22692 FIX: cleanDOM couldn't be called from url 2016-10-26 13:27:47 -04:00
Robin Ward
bd352385a5 Framework for supporting Ember 1.12/1.13 helpers simulataneously 2016-10-24 15:13:32 -04:00
Sam
fd9056973a FEATURE: increase interval to 24 hours for "please refresh site"
Used to be 2 hours, which is a bit tight, especially for people who leave
computer running overnight.

Keep in mind we always refresh on route change, so clicking on a topic will
trigger a refresh
2016-09-19 10:12:27 +10:00
Neil Lalonde
1078d929cd Revert "see if gtm automatically pushes pageview events without our own page-tracking code" 2016-09-01 13:28:04 -04:00
Neil Lalonde
572713b801 see if gtm automatically pushes pageview events without our own page-tracking code 2016-09-01 12:16:54 -04:00
Régis Hanol
ecaa751455 FIX: Use Ember.set to update the site settings via the Message Bus 2016-08-22 12:18:45 +02:00
Robin Ward
b2134aa173 Refactor full page search for style, remove lookups 2016-08-09 14:49:46 -04:00
Robin Ward
857d54162b Redirect to Summary when viewing yourself 2016-08-02 13:21:24 -04:00
Neil Lalonde
ba637e40b6 FEATURE: Google Tag Manager Universal Analytics support 2016-07-14 16:35:20 -04:00
Robin Ward
bba0fd0654 REFACTOR: PreloadStore to ES6 2016-07-11 12:57:05 -04:00
Robin Ward
b8125b3512 REFACTOR: Remove Discourse.Ajax 2016-07-11 12:57:05 -04:00
Robin Ward
a546395397 REFACTOR: Migrate markdown functionality in ES6 2016-07-11 12:57:05 -04:00
Robin Ward
2cfb0d60a8 FIX: Remove the last auth result after authenticating 2016-07-08 15:53:27 -04:00
Guo Xiang Tan
904d9735ab
Refactor desktop notifications to be more modular. 2016-07-01 00:11:32 +08:00
Robin Ward
28e3becf44 FIX: Allow authentication complete window to pop up 2016-06-10 12:24:34 -04:00
Robin Ward
33a418d537 Log errors authenticating with facebook 2016-06-10 12:05:14 -04:00
Robin Ward
eff2865278 FIX: Support create account on facebook browser 2016-06-10 11:12:46 -04:00
Robin Ward
4963d4d624
UX: Don't animate timeline when first entering a topic 2016-05-31 10:51:45 -04:00
Robin Ward
0fcfc6bed9
Add acceptance tests for all mobile templates 2016-05-05 12:49:12 -04:00
Robin Ward
400c061046
Ember.keys is deprected in favor of Object.keys 2016-04-28 16:37:20 -04:00
Robin Ward
514c3976f0
PERF: Migrate header to discourse widgets 2016-04-25 10:48:04 -04:00
Rafael dos Santos Silva
bbe642070e App Banner Support for Android Chrome (#4103)
* App Banner Support for Android Chrome

* Oops, forgot semicolon;
2016-04-20 10:54:01 -04:00
Robin Ward
cc25716e47 FIX: Allow message format translations to be overridden 2016-04-08 14:49:50 -04:00
Robin Ward
fbf45426e4 Autoload widgets since they are named when created, not by file 2016-03-18 16:31:59 -04:00
Sam Saffron
6c1d5b8cd3 FIX: spinning favicon in Firefox
Delay starting up ajax calls in MessageBus
2016-03-08 23:28:38 +11:00
Guo Xiang Tan
db781d3349 FIX: LogsNotice does not have currentUser attribute. 2016-03-08 16:19:42 +08:00
Guo Xiang Tan
f32f0d6337 Merge pull request #4017 from tgxworld/add_admin_banner_for_logster
FEATURE: Admin Banner when Logster logs is getting flooded.
2016-03-02 23:44:56 +08:00
Guo Xiang Tan
fdd6920ae7 FEATURE: Admin Banner when Logster logs is getting flooded. 2016-03-02 22:03:16 +08:00
Robin Ward
c9cb5a5b79 FIX: GA Universal tracking had a bug 2016-02-26 14:48:36 -05:00
Robin Ward
e848ea5a99 Depcreate PageTracker in favor of PluginAPI 2016-02-19 16:30:59 -05:00
Robin Ward
f6aa1ac37a Migrate onToolbarCreate to the DiscourseAPI 2016-02-18 15:23:43 -05:00
Robin Ward
849c99f83d Remove Discourse.Mobile constants 2016-02-18 12:19:00 -05:00
Sam
b11e6ec38e Merge branch 'master' into vdom 2016-02-18 13:20:55 +11:00
Sam
f9c5cded6f Correct live refresh routine for notifications 2016-02-18 13:20:22 +11:00
Robin Ward
3a78321c63 withPluginApi means you don't have to check for null. 2016-02-16 12:17:22 -05: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
9b8871d7dd PluginAPI for more stable backwards compatibility going forward 2016-02-12 15:46:36 -05:00
Robin Ward
5f65bf420c FIX: Support the plugin-api for decorators 2016-02-11 11:00:42 -05:00
Robin Ward
d1e85bdd8b FEATURE: Use virtual dom framework for faster post rendering 2016-02-11 11:00:40 -05:00
Jeff Atwood
c3af4abfb5 reduce signup cta thresh, 2 topics, 2 min read time 2016-02-01 00:25:36 -08:00
Jeff Atwood
b425f74ef4 missed an IE9 removal 2016-01-02 23:51:03 -08:00
Jeff Atwood
e1f90d12f1 formally remove IE9 support 2016-01-02 23:49:52 -08:00
Robin Ward
5e93140f85 FEATURE: Can override any translation via an admin interface 2015-11-27 11:35:19 -05:00
Sam
43d63367fd PERF: stop loading handlebars and ember compilers in prod
(this removes a nice 50K from our initial payload and saves memory)

Also fixes invalid HTML automatically if added to HEAD or /BODY
2015-11-27 11:59:01 +11:00
Robin Ward
d8734fc542 Fix eslint 2015-11-20 17:16:44 -05:00
Robin Ward
1506eba28d Support for overriding client side translation keys 2015-11-20 17:14:01 -05:00
Robin Ward
ff85fa2a98 FIX: Remove emoji shortcut. Was conflicting with Euro symbol. 2015-11-11 15:33:21 -05:00
Robin Ward
f85d848649 Remove a bunch of old deprecated code 2015-11-10 13:09:05 -05:00
Robin Ward
47495a5713 FEATURE: Replace composer editor with ember version 2015-11-06 09:49:16 -05:00
Régis Hanol
86f76e5b4d FIX: better plugin emojis API 2015-11-06 15:02:40 +01:00
Robin Ward
bb21902954 Add keyboard shortcuts back to d-editor 2015-11-03 14:01:26 -05:00
Robin Ward
4aa601414d Support for titles on d-editor buttons 2015-11-03 14:01:26 -05:00
Robin Ward
5cd6308850 API for adding buttons to the new composer 2015-11-02 16:18:09 -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
Guo Xiang Tan
a253bf8698 FIX: Don't subscribe to Desktop Notifications on mobile. 2015-09-23 16:08:38 +08:00
Kane York
e16eebb48c FIX: Don't even bother checking visit count 2015-09-16 15:35:50 -07:00
Kane York
102b6f6fca FIX: Reduce requirements for signup call-to-action
1 visit, 5 minutes, 3 topics
2015-09-16 15:34:39 -07:00
Kane York
6be78861ca Merge branch 'master' into signup-cta
Conflicts:
	app/assets/javascripts/discourse/lib/key-value-store.js.es6
2015-09-15 12:26:25 -07:00
Kane York
62444b9a13 Fix the visit tracking logic 2015-09-15 12:25:12 -07:00
Robin Ward
62cc029886 FIX: Support using enter to change the hash, clicks should update hash 2015-09-11 12:47:44 -04:00
Sam
5eb1fb3bfd FEATURE: cache search results for 5 route transitions
DEV: transientCache that can be used to hold data for N route transitions
FEATURE: remember scroll position when hitting back from full page search
2015-09-09 11:52:11 +10:00
Sam
a54e8f3c5e FEATURE: live refresh notifications as they happen 2015-09-04 13:20:33 +10:00
Robin Ward
12e0225c51 FIX: Better metaKey support for menu panels 2015-09-03 11:47:18 -04:00
Kane York
8b37dadec7 remove TODO 2015-09-01 16:52:29 -07:00
Kane York
f595e562ea Signup CTA first attempt 2015-09-01 16:16:19 -07:00
Robin Ward
bf2c18fddb Migrate KeyValueStore to ES6 modules 2015-09-01 14:45:24 -04:00
Robin Ward
11b73e1fb7 Avoid calling Discourse.logout and use an action instead 2015-09-01 14:41:31 -04:00
Kane York
d4c68f2096 FEATURE: Live-update site settings 2015-08-31 10:40:50 -07:00
Robin Ward
d4b987ff32 Migrate search drop down to menu-panel component. 2015-08-28 15:44:24 -04:00
Robin Ward
b0541500b4 FIX: eslint deprecations 2015-08-13 15:14:08 -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
b587bc580f Add deprecation for Discourse.PageTracker 2015-08-11 14:07:08 -04:00
Robin Ward
b7e6eaa961 ES6ify some of the remaining files 2015-08-10 10:21:05 -04:00
Sam
2d53436d0a correct intialization order 2015-08-10 18:15:35 +10:00
Sam
2052ceca95 FIX: stop screen from jittering when mobile has images
This fix makes sure we apply reasonable settings to all images while
they are loading, it stops mobile from dancing around on topics that
have images

We no longer use height: auto on mobile!
2015-08-10 13:19:01 +10:00
Sam
f456a4b1b4 FIX: missing posts queue link on first notification of queued post 2015-08-04 15:22:17 +10:00
Régis Hanol
fb65970530 FIX: footer should also be hidden when using back/forward buttons 2015-07-31 16:53:18 +02:00
Robin Ward
b81871b963 FIX: Don't re-write admin urls for users 2015-07-29 17:57:58 -04:00
Robin Ward
92918e3b2b FIX: Different routing for clicking ember links versus not 2015-07-29 13:03:44 -04:00
Robin Ward
46b61627cd FIX: Missing emoji button 2015-07-14 10:53:54 -04:00
Sam
f533276507 FIX: do not publish all categories when a category changes.
minor fixes to UI, still needs more work for live refresh of category listing
2015-07-10 12:09:43 +10:00
Robin Ward
db75774440 UX: Move likes into drop down instead of its own status line 2015-07-03 17:15:20 -04:00
Sam
374f951c65 fix live css changes on mobile 2015-06-22 14:35:11 +10:00
Régis Hanol
50e705a078 fix the build 2015-06-15 16:02:30 +02:00
Robin Ward
42f2cd83db Run cleanDOM even when swapping out models 2015-06-02 21:13:11 -04:00
Régis Hanol
8d967d9065 FEATURE: move all uploads to a single endpoint + defer upload creation in a background thread 2015-05-20 16:45:48 +02:00
Robin Ward
5754bb3654 FIX: Load order of applyFlaggedProperties 2015-05-12 11:15:45 -04:00
Robin Ward
3830bb7d78 FIX: Flags weren't showing on the header 2015-05-11 11:20:46 -04:00
Robin Ward
0b65c88003 Upgrade Notifications to fix deprecations and use store 2015-05-11 11:20:45 -04:00
Robin Ward
c6d99bd141 Fixes routing in tests 2015-05-11 11:18:38 -04:00
Robin Ward
ed398e65e0 Fixes issues with composer 2015-05-11 11:18:38 -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
Sam
4191d97d48 FIX: missing titles and aria-labels on sharing links 2015-05-07 12:14:12 +10:00
Sam
4dfc1907ac Simplify desktop notifications, only include if mention/reply/pm/link
Include post excerpt in the notification
2015-05-04 13:49:32 +10:00
Robin Ward
3252bf1252 FIX: Desktop Notifications break Qunit tests
We should figure out why they can't run without the conditional in a
browser.
2015-04-28 19:24:32 -04:00
Robin Ward
15ea0c4789 Merge pull request #3304 from riking/desktop-notifications
Desktop notifications!
2015-04-28 16:24:02 -04:00
riking
21b915f209 Suggested changes 2015-04-23 18:39:48 -07:00
Régis Hanol
a737090442 - FEATURE: revamped poll plugin
- add User.staff scope
- inject MessageBus into Ember views (so it can be used by the poll plugin)
- REFACTOR: use more accurate is_first_post? method instead of post_number == 1
- FEATURE: add support for JSON-typed custom fields
- FEATURE: allow plugins to add validation
- FEATURE: add post_custom_fields to PostSerializer
- FEATURE: allow plugins to whitelist post_custom_fields
- FIX: don't bump when post did not save successfully
- FEATURE: polls are supported in any post
- FEATURE: allow for multiple polls in the same post
- FEATURE: multiple choice polls
- FEATURE: rating polls
- FEATURE: new dialect allowing users to preview polls in the composer
2015-04-23 19:33:29 +02:00
riking
a616d9ed1c Fix jshint 2 2015-04-21 21:23:05 -07:00
riking
da9913359c Convert to file in lib/, rough active tracking 2015-04-21 20:23:29 -07:00
riking
f5e27fe2c8 FEATURE: Desktop notifications 2015-04-21 20:21:52 -07:00
Robin Ward
a61c202ac4 Rewrite /private-messages to /messages 2015-04-17 12:01:50 -04:00
Robin Ward
f1ede42569 Add the posts that need to be reviewed to the hamburger 2015-04-15 14:54:37 -04:00
Erick Guan
ae62c1361e extends share links
- change `iconClass` to `faIcon`
- add `htmlIcon` to allow custom HTML
- add reddit, linkedin, tumblr
2015-03-16 16:44:50 +08:00
Robin Ward
69851bc6cf Deprecates global use of Discourse.MessageBus
We can use DI for this, which makes it easier for plugins to subscribe
to the message bus.
2015-03-12 12:27:30 -04:00
Robin Ward
5f3176dfd4 Adds a deprecation for $LAB usage in case plugins use it
Previously it was just removed which broke MathJax.
2015-03-11 10:59:34 -04:00
Robin Ward
de4e4f2b98 Replace $LAB with path aware loadScript that uses jQuery 2015-03-09 14:39:39 -04:00
Robin Ward
fb726cfa0c Replace Discourse.script global with a module 2015-03-09 14:39:39 -04:00
Sam
f5af4768eb FEATURE: add clean support for running Discourse in a subfolder
To setup set DISCOURSE_RELATIVE_URL_ROOT to the folder you wish
2015-03-09 13:14:29 +11:00
Robin Ward
1ca43d3bb9 Store and Adapter support for finding by id, updating a simple record 2015-02-27 10:33:39 -05:00
Robin Ward
be9feeb918 Replace CurrentUserMixin with an injected currentUser
This is a lot simpler and removes the need for stubbing singletons
in unit tests.
2015-02-27 10:33:39 -05:00
Robin Ward
a519fd5bcf FIX: Highlighting was not being applied after some rendering.
Also includes a bunch of ES6 stuff.
2015-02-12 15:37:02 -05:00
Robin Ward
cf3582bedb FIX: JSHint wasn't validating ES6 files, this fixes a bunch of errors. 2015-02-10 17:21:16 -05:00
Robin Ward
d8c616a68a Add a store so we can start using ES6 modules for models, finally. 2015-02-10 12:35:53 -05:00
riking
8812f95839 FIX: Ember regression in read-only banner 2015-02-08 12:42:19 -08:00
Robin Ward
3d7b534564 FEATURE: New "Plugins" admin section with extensibility support 2015-02-06 17:33:24 -05:00
Robin Ward
a852f6c56f Add Discourse-Track-View header to XHR when transitioning 2015-02-05 16:07:51 -05:00
Robin Ward
df8880a71a FIX: (for IE9) if console.log doesn't exist, make it an noop. 2015-01-21 11:53:41 -05:00
Robin Ward
28f702a5b6 Refactor app events to more efficiently handle post highlighting 2015-01-14 15:50:19 -05:00
Robin Ward
8b87d8ac2d Refactor sharing dialog for extensibility 2015-01-13 17:26:05 -05:00
Sam
7ff96241a2 automatically register dom templates 2014-12-31 13:29:14 +11:00
Régis Hanol
a115b4b7f0 FIX: hide emoji toolbar button when emoji are disabled 2014-12-29 17:29:04 +01:00
Sam
f6f50ffc72 correct live reload code 2014-12-23 13:03:48 +11:00
Robin Ward
a8acbc37a2 Refactor selector components for extensibility 2014-12-18 10:36:58 -05:00
Robin Ward
f42a5c1ba3 Convert a lot of Globals to ES6 modules 2014-12-17 09:31:42 -05:00
Robin Ward
f3babdb319 Fixes many Ember 1.9.0 deprecations 2014-12-17 09:31:42 -05:00
Robin Ward
3e8d8bf90d Revert i18n initializer, it breaks tests. 2014-12-17 09:31:42 -05:00
Robin Ward
7aaf2fcb65 Fix broken qunit tests in 1.9.0 2014-12-17 09:31:41 -05:00
Sam
d53b4ab5bc Merge pull request #2979 from techAPJ/patch-1
FEATURE: log out user everywhere and refresh/redirect
2014-11-21 16:59:44 +11:00
Régis Hanol
0947191060 UX: improved our footer handling
- new "show-footer" mixins
- converted most of the routes to ES6
- FIX: handling of "indexStream" in user pages

There will now be a footer on all the following pages
- /exception
- /about
- /latest
- /new
- /unread
- /starred
- /top
- /categories
- /c/:category
- /c/:category/l/latest
- /c/:category/l/new
- /c/:category/l/unread
- /c/:category/l/top
- /t/:topic/:id
- /groups/:name/members
- /user/activity
- /user/activity/topics
- /user/activity/posts
- /user/activity/replies
- /user/activity/likes-given
- /user/activity/likes-received
- /user/activity/bookmarks
- /user/activity/starred
- /user/badges
- /user/notifications
- /user/flagged-posts
- /user/deleted-posts
- /user/private-messages
- /user/private-messages/mine
- /user/private-messages/unread
- /user/invited
- /user/:username/preferences
- /faq (static pages)
- /badges
- /badges/:id/:badge
2014-11-19 20:37:43 +01:00
Arpit Jalan
eb9eada894 FEATURE: log out user everywhere and refresh/redirect 2014-11-19 12:34:34 +05:30
Sam
aa9b3bb35a FEATURE: allow long polling to go to a different url
Added the site setting long_polling_base_url , this allows you
to farm long polling to a different server.

This setting is very important if a CDN is serving dynamic content.
2014-10-24 13:38:38 +11:00
Sam
73486b8ddd FIX: respect anon_polling_interval
FIX: only poll background message bus pages once a minute
FEATURE: background_polling_interval
FEATURE: long polling pushed back to 25 seconds
FEATURE: force a poll when a bg page returns to foreground

also improve copy of message bus settings a bit
2014-10-22 12:49:10 +11:00
Robin Ward
1cf4a0d604 Rename "User Expansion" to the much clearer "User Card" 2014-10-20 12:11:59 -04:00
Robin Ward
d2ac5a9ac6 Rename /category/xyz paths to /c/xyz -- @SamSaffron did most of the
work even though I'm merging the patch!
2014-10-16 12:15:31 -04:00
Robin Ward
5fc150e057 A mucher saner API for updating the title of routes, even when nested.
Properly sends the title of the page to google analytics
2014-10-09 14:55:29 -04:00
Sam
dde8ae7e96 FIX: analytics universal not sending correct location 2014-10-07 12:23:04 +11:00
Robin Ward
d0fb8bbcfc Instead of .js.handlebars use .hbs for handlebars templates 2014-09-26 15:23:15 -04:00