Commit Graph

261 Commits

Author SHA1 Message Date
David Taylor 7500eed4c0
FEATURE: Multi-file javascript support for themes (#7526)
You can now add javascript files under `/javascripts/*` in a theme, and they will be loaded as if they were included in core, or a plugin. If you give something the same name as a core/plugin file, it will be overridden. Support file extensions are `.js.es6`, `.hbs` and `.raw.hbs`.
2019-06-03 10:41:00 +01:00
Penar Musaraj 446ec1b44a
Set input and textarea font size to 16px on iOS (#7480) 2019-05-07 10:44:43 -04:00
Guo Xiang Tan abbc639e0d FIX: Only unregister service workers that belongs to Discourse. 2019-05-07 13:08:06 +08:00
David Taylor 0e303c7f5d
FEATURE: Automatically generate optimized site metadata icons (#7372)
This change automatically resizes icons for various purposes. Admins can now upload `logo` and `logo_small`, and everything else will be auto-generated. Specific icons can still be uploaded separately if required.

## Core

- Adds an SiteIconManager module which manages automatic resizing and fallback

- Icons are looked up in the OptimizedImage table at runtime, and then cached in Redis. If the resized version is missing for some reason, then most icons will fall back to the original files. Some icons (e.g. PWA Manifest) will return `nil` (because an incorrectly sized icon is worse than a missing icon). 

- `SiteSetting.site_large_icon_url` will return the optimized version, including any fallback. `SiteSetting.large_icon` continues to return the upload object. This means that (almost) no changes are required in core/plugins to support this new system.

- Icons are resized whenever a relevant site setting is changed, and during post-deploy migrations

## Wizard

- Allows `requiresRefresh` wizard steps to reload data via AJAX instead of a full page reload

- Add placeholders to the **icons** step of the wizard, which automatically update from the "Square Logo"

- Various copy updates to support the changes

- Remove the "upload-time" resizing for `large_icon`. This is no longer required.

## Site Settings UX

- Move logo/icon settings under a new "Branding" tab

- Various copy changes to support the changes

- Adds placeholder support to the `image-uploader` component

- Automatically reloads site settings after saving. This allows setting placeholders to change based on changes to other settings

- Upload site settings will be assigned a placeholder if SiteIconManager `responds_to?` an icon of the same name

## Dashboard Warnings

- Remove PWA icon and PWA title warnings. Both are now handled automatically.

## Bonus

- Updated the sketch logos to use @awesomerobot's new high-res designs
2019-05-01 14:44:45 +01:00
Penar Musaraj 6df8c4b8f0 FIX: Fall back to large logo on mobile no_ember pages 2019-04-24 11:39:11 -04:00
Penar Musaraj 7cd621778d FEATURE: Native app banner improvements
This commit adds some improvements to native app banners for iOS and Android

- iOS and Android now have separate settings for native app banners

- app banners will now only show for users on TL1 and up

- app ids are now in a hidden site setting to allow sites to switch to their own app, if desired

- iOS only: the site URL is passed to the app arguments
2019-04-17 12:25:13 -04:00
Sam Saffron baa7a9836c FEATURE: remove "COMPRESS_BROTLI" optional behavior
The compress brotli functionality is no longer optional, this has worked
well for years. The name of the ENV var is also confusing cause it does
not have a `DISCOURSE_` prefix which caused issues with the web upgrader

Brotli support is now unconditionally on
2019-04-11 12:36:18 +10:00
Sam Saffron 5a8451bf89 PERF: no need to select entire group just to find name
Note, this is a very good candidate for some cache longer term to cut
the query out
2019-03-26 17:59:05 +11:00
Sam Saffron 3cfedc6c71 PERF: no need to select the full theme just to get color scheme 2019-03-26 17:53:18 +11:00
Guo Xiang Tan b0c8fdd7da FIX: Properly support defaults for upload site settings. 2019-03-13 16:36:57 +08:00
David Taylor f3cfce4a93
FEATURE: Calculate sprite-sheet based on currently active themes (#6973)
Previously there was only one sprite sheet, which always included icons from all themes even if they were disabled
2019-02-06 15:51:23 +00:00
Gerhard Schlager ec7f418a22 REFACTOR: Simplify finding the opengraph image
* removes deprecation warnings for "logo url"
* adds the "large icon" as fallback before the "apple touch icon"
2019-01-31 20:46:15 +01:00
Arpit Jalan f83533e1cb FIX: use absolute url for `/images/example.png` links
FEATURE: fallback to logo_url as last resort for opengraph image url
2019-01-31 10:20:15 +05:30
David Taylor aca0b32fda
FEATURE: Allow overriding text size from a different device (#6955)
This brings the feature in line with the theme selection system
2019-01-28 11:19:50 +00:00
David Taylor d338e54f59
FEATURE: Allow setting font size per-device using a cookie (#6947) 2019-01-25 15:06:06 +00:00
Vinoth Kannan 70b56c8332 FIX: 'anon' css class is missing for anonymous users 2019-01-23 10:13:36 +05:30
Guo Xiang Tan f89a32e759 FIX: Text logo does not show up on non ember pages. 2019-01-18 15:11:42 +08:00
David Taylor 880311dd4d
FEATURE: Support for localized themes (#6848)
- Themes can supply translation files in a format like `/locales/{locale}.yml`. These files should be valid YAML, with a single top level key equal to the locale being defined. For now these can only be defined using the `discourse_theme` CLI, importing a `.tar.gz`, or from a GIT repository.

- Fallback is handled on a global level (if the locale is not defined in the theme), as well as on individual keys (if some keys are missing from the selected interface language).

- Administrators can override individual keys on a per-theme basis in the /admin/customize/themes user interface.

- Theme developers should access defined translations using the new theme prefix variables:
  JavaScript: `I18n.t(themePrefix("my_translation_key"))`
  Handlebars: `{{theme-i18n "my_translation_key"}}` or `{{i18n (theme-prefix "my_translation_key")}}`

- To design for backwards compatibility, theme developers can check for the presence of the `themePrefix` variable in JavaScript

- As part of this, the old `{{themeSetting.setting_name}}` syntax is deprecated in favour of `{{theme-setting "setting_name"}}`
2019-01-17 11:46:11 +00:00
David Taylor 1ebd3dbbd0
FEATURE: Allow the base font size to be changed on a per-user basis (#6859) 2019-01-14 13:21:46 +00:00
Arpit Jalan 9919f16041 FIX: use absolute URL for twitter:image tag 2019-01-08 11:19:04 +05:30
Penar Musaraj 03deda2147
Upgrade to FontAwesome 5 (take two) (#6673)
* Add missing icons to set

* Revert FA5 revert

 This reverts commit 42572ff

* use new SVG syntax in locales

* Noscript page changes (remove login button, center "powered by" footer text)

* Cast wider net for SVG icons in settings

- include any _icon setting for SVG registry (offers better support for plugin settings)

- let themes store multiple pipe-delimited icons in a setting

- also replaces broken onebox image icon with SVG reference in cooked post processor

* interpolate icons in locales

* Fix composer whisper icon alignment

* Add support for stacked icons

* SECURITY: enforce hostname to match discourse hostname

This ensures that the hostname rails uses for various helpers always matches
the Discourse hostname

* load SVG sprite with pre-initializers

* FIX: enable caching on SVG sprites

* PERF: use JSONP for SVG sprites so they are served from CDN

This avoids needing to deal with CORS for loading of the SVG

Note, added the svg- prefix to the filename so we can quickly tell in
dev tools what the file is

* Add missing SVG sprite JSONP script to CSP

* Upgrade to FA 5.5.0

* Add support for all FA4.7 icons

- adds complete frontend and backend for renamed FA4.7 icons

- improves performance of SvgSprite.bundle and SvgSprite.all_icons

* Fix group avatar flair preview

- adds an endpoint at /svg-sprites/search/:keyword

- adds frontend ajax call that pulls icon in avatar flair preview even when it is not in subset

* Remove FA 4.7 font files
2018-11-26 16:49:57 -05:00
Kyle Zhao 7cb6082f91 FIX: S3 CDN for markdown it bundle 2018-11-15 16:55:20 -05:00
Guo Xiang Tan 44391ee8ab
FEATURE: Upload Site Settings. (#6573) 2018-11-14 15:03:02 +08:00
Sam 42572ff138 Revert font awesome 5 changes
We are still pushing ahead on this 100% just need a bit longer to prepare
all plugins
2018-11-08 16:12:18 +11:00
Penar Musaraj 005e1ecb9b
FEATURE: Update Font Awesome to v5.4.1 and SVGs (#6557)
* First take on subsetting svg icons

* FontAwesome 5 svg subset WIP

* Include icons from plugins/badges into svg sprite subset

* add svg icon support to themes

* Add spec for SvgSprite

* Misc. SVG icon fixes

* Use FA5 svgs in local-dates plugin

* CSS adjustments, fix SVG icons in group flair

* Use SVG icons in poll plugin

* Add SVG icons to /wizard
2018-11-07 13:05:43 -05:00
Kyle Zhao ab448ca8f3 extract client side `Discourse` setup inline JS (#6409) 2018-10-01 21:29:04 -07:00
Kyle Zhao 7a0232249a
extract inline JS that's used to store preloaded data (#6370) 2018-09-17 16:31:46 +08:00
Kyle Zhao f666d72606 extract inline JS for google tag manager 2018-09-17 09:56:00 +10:00
Osama Sayegh 16bd3f2cf2 FIX: use current user color scheme when filling `theme-color` attribute (#6384)
* FIX: use current user color scheme when filling `meta` attribute `theme-color`

* update manifest.webmanifest colors
2018-09-12 11:04:58 +10:00
Sam 5d96809abd FIX: improve support for subfolder S3 CDN 2018-08-22 12:31:13 +10:00
Gerhard Schlager cc851af750 FIX: HTML lang attribute expects hyphen instead of underscore 2018-08-20 13:55:58 +02:00
Osama Sayegh 0b7ed8ffaf FEATURE: backend support for user-selectable components
* FEATURE: backend support for user-selectable components

* fix problems with previewing default theme

* rename preview_key => preview_theme_id

* omit default theme from child themes dropdown and try a different fix

* cache & freeze stylesheets arrays
2018-08-08 14:46:34 +10:00
Arpit Jalan dfcb2a0d42 FEATURE: include published_time in metadata 2018-07-30 17:09:56 +05:30
OsamaSayegh decf1f27cf FEATURE: Groundwork for user-selectable theme components
* Phase 0 for user-selectable theme components

- Drops `key` column from the `themes` table
- Drops `theme_key` column from the `user_options` table
- Adds `theme_ids` (array of ints default []) column to the `user_options` table and migrates data from `theme_key` to the new column.
- Removes the `default_theme_key` site setting and adds `default_theme_id` instead.
- Replaces `theme_key` cookie with a new one called `theme_ids`
- no longer need Theme.settings_for_client
2018-07-12 14:18:21 +10:00
OsamaSayegh f4369fa99e FIX: use `logo_url` settign when present for mobile layout instead of site name 2018-06-29 15:07:10 +10:00
Angus McLeod f10b663eb4 BUGFIX: string in server_plugin_outlet needs to be mutable 2018-06-07 18:27:34 +02:00
Sam 89ad2b5900 DEV: Rails 5.2 upgrade and global gem upgrade
This updates tests to use latest rails 5 practice
and updates ALL dependencies that could be updated

Performance testing shows that performance has not regressed
if anything it is marginally faster now.
2018-06-07 14:21:33 +10:00
Sam aa6b779147 DEV: add cache breaker for development
Previously iOS could cache scripts (wrongly)
which made debugging very hard
2018-05-07 11:25:05 +10:00
Sam cff9b8846d FIX: rendering %lt;/div noscript in header 2017-12-08 10:30:00 +11:00
Gerhard Schlager 44ee388070 FEATURE: omit images from og and twitter description tags 2017-11-28 21:34:02 +01:00
Robin Ward d07ebf9d4c UX: Support for custom error pages and headers in plugins 2017-11-14 16:31:44 -05:00
Michael Howell 38b8d68c68 FEATURE: Allow the user to select a custom home page (#5268)
* Add user_home configuration option

* Use the new user_home preference to actually show the right home page

* Fix trailing whitespace

* Update user_option_serializer.rb

* Fix JavaScript default homepage tests

* Use an object instead of a giant switch

* Remove trailing whitespace

* Make the default `user_home` set to `null` instead of `0`

* Rename user_home to homepage_id
2017-11-10 06:45:19 +11:00
Sam 70bb2aa426 FEATURE: allow specifying s3 config via globals
This refactors handling of s3 so it can be specified via GlobalSetting

This means that in a multisite environment you can configure s3 uploads
without actual sites knowing credentials in s3

It is a critical setting for situations where assets are mirrored to s3.
2017-10-06 16:20:01 +11:00
Guo Xiang Tan 81c0092326 Revert "FIX: not serving non brotli cdns from cdn_url"
This reverts commit eaa896d8ee.
2017-10-03 10:52:28 +08:00
Sam eaa896d8ee FIX: not serving non brotli cdns from cdn_url
(this means that access control allow origin could break)
2017-10-03 11:20:08 +11:00
Robin Ward 2c2fe7eee4 FIX: Remove unused mixin 2017-09-29 11:09:25 -04:00
Robin Ward 00b190af75 Revert "A safe way to create class variables in a multisite environment."
The approach taken by this interface was flawed. We need a better
solution.
2017-09-29 11:06:12 -04:00
Robin Ward 34f98f362f Add a plugin hook to specify a class on the body of the document 2017-09-28 13:17:09 -04:00
Guo Xiang Tan 23b787e0a6 Require dependency otherwise it causes Sidekiq to lock up in development. 2017-09-25 13:48:59 +08:00
Guo Xiang Tan 5d4221fbe1 PERF: Avoid calling expensive `PostGuardian#can_see_post?` multiple times.
Before

```
Your Results: (note for timings- percentile is first, duration is second
in millisecs)
---
topic_admin:
  50: 19
  75: 19
  90: 21
  99: 27
topic:
  50: 56
  75: 62
  90: 64
  99: 99
timings:
  load_rails: 1262
ruby-version: 2.4.1-p111
rss_kb: 198432
pss_kb: 136612
virtual: physical
architecture: amd64
operatingsystem: Ubuntu
memorysize: 15.59 GB
kernelversion: 4.10.0
physicalprocessorcount: 1
processor0: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz
rss_kb_9877: 327892
pss_kb_9877: 263671
rss_kb_9946: 325468
pss_kb_9946: 261671
rss_kb_10153: 326456
pss_kb_10153: 262657
```

After

```
Your Results: (note for timings- percentile is first, duration is second
in millisecs)
---
topic_admin:
  50: 18
  75: 18
  90: 20
  99: 28
topic:
  50: 41
  75: 42
  90: 46
  99: 49
timings:
  load_rails: 1201
ruby-version: 2.4.1-p111
rss_kb: 187936
pss_kb: 123596
virtual: physical
architecture: amd64
operatingsystem: Ubuntu
memorysize: 15.59 GB
kernelversion: 4.10.0
physicalprocessorcount: 1
processor0: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz
rss_kb_26478: 342360
pss_kb_26478: 276696
rss_kb_26547: 340368
pss_kb_26547: 275930
rss_kb_26747: 338964
pss_kb_26747: 274466
```
2017-09-08 14:07:24 +08:00
Arpit Jalan b354099252 FEATURE: add custom open graph tag for ignoring canonical url 2017-08-15 19:24:20 +05:30
Guo Xiang Tan 5012d46cbd Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
Robin Ward 574681dc47 FIX: Show emoji in inline oneboxes 2017-07-21 14:24:48 -04:00
Neil Lalonde 3ebd8838af FEATURE: cross-domain tracking for Google universal analytics 2017-07-13 15:21:44 -04:00
Robin Ward 6ab4692431 FEATURE: Add a user's primary group class name to the body tag 2017-06-15 14:25:39 -04:00
Joffrey JAFFEUX 299339a373 Fixes emoji name to code missing tones 2017-06-13 14:10:26 -04:00
Robin Ward 8b8ee2ad61 Pass a context in when using a HTML builder 2017-04-18 12:35:35 -04:00
Robin Ward 1363988cd7 Support for an HTML builder that can create dynamic HTML 2017-04-17 17:32:55 -04:00
Sam 5dd752877e FEATURE: try adding some preload hints for chrome 2017-04-17 11:52:43 -04:00
Sam def7348777 FIX: display custom sections with default theme
also cleans up mechanism for previewing themes, cleans up naming,
gets rid of old janky "preview_style", secures local theme key
2017-04-14 13:35:12 -04:00
Sam a3e8c3cd7b FEATURE: Native theme support
This feature introduces the concept of themes. Themes are an evolution
of site customizations.

Themes introduce two very big conceptual changes:

- A theme may include other "child themes", children can include grand
children and so on.

- A theme may specify a color scheme

The change does away with the idea of "enabled" color schemes.

It also adds a bunch of big niceties like

- You can source a theme from a git repo

- History for themes is much improved

- You can only have a single enabled theme. Themes can be selected by
    users, if you opt for it.

On a technical level this change comes with a whole bunch of goodies

- All CSS is now compiled using a custom pipeline that uses libsass
    see /lib/stylesheet

- There is a single pipeline for css compilation (in the past we used
    one for customizations and another one for the rest of the app

- The stylesheet pipeline is now divorced of sprockets, there is no
   reliance on sprockets for CSS bundling

- CSS is generated with source maps everywhere (including themes) this
    makes debugging much easier

- Our "live reloader" is smarter and avoid a flash of unstyled content
   we run a file watcher in "puma" in dev so you no longer need to run
   rake autospec to watch for CSS changes
2017-04-12 10:53:49 -04:00
Neil Lalonde 0551b3f5ee FEATURE: replace emoji with unicode in title and description meta tags 2017-02-22 16:24:13 -05:00
Robin Ward 962c32edf5 Merge pull request #4597 from ibnesayeed/urdu-support
RTL direction assigned to Urdu language
2016-12-22 11:39:44 -05:00
Sam 30e0154e5d SECURITY: fix reflected XSS with safe_mode param
(only applies to beta and master)
2016-12-19 10:11:51 +11:00
Sawood Alam 77ef730f20
RTL direction assigned to Urdu language 2016-12-10 18:57:48 -05:00
Erick Guan 52763f5115
FEATURE: Allow posting a link with topics 2016-12-05 17:20:54 +01:00
Sam 8a98d617df correct headers and add better caching 2016-12-05 15:11:07 +11:00
Sam 39a524aac8 FEATURE: brotli cdn bypass for assets
Allow CDNS that strip out brotli encoding to use brotli regardless
2016-12-05 13:57:09 +11:00
Neil Lalonde db4b3a7aa4 FIX: show emoji in digest emails 2016-11-22 12:37:22 -05:00
Sam e2c87da42a FEATURE: Add basic support for Safe Mode
In Safe Mode all JS extensions and site customizations are disabled.

To access Safe Mode visit `sitename.org/safe-mode`
2016-11-21 16:46:14 +11:00
Neil Lalonde 45f368126f FEATURE: New summary/digest email design 2016-11-18 14:03:42 -05:00
Neil Lalonde f3eb58092d FIX: twitter card meta tags use wrong urls on subfolder installs 2016-10-05 15:14:51 -04:00
Arpit Jalan 332cc2bb95 FEATURE: new twitter_summary_large_image_url setting 2016-09-19 18:43:33 +05:30
Arpit Jalan f6bd114b5e FEATURE: fall back to apple_touch_icon_url if default_opengraph_image_url is not present 2016-08-22 15:30:05 +05:30
Arpit Jalan a39929d12e FEATURE: add opengraph and twitter meta tags on every page 2016-08-21 22:08:49 +05:30
Neil Lalonde 37162e476b FIX: remove gtm_ua_domain_name setting because it's preferable to configure it in Google Tag Manager settings 2016-08-02 14:54:35 -04:00
Neil Lalonde ba637e40b6 FEATURE: Google Tag Manager Universal Analytics support 2016-07-14 16:35:20 -04:00
Robin Ward 72560b5260 UX: Apply the category class on initial page load 2016-07-04 12:11:12 -04:00
James Cook c0e25b5a9a Replace certain uses of 'gsub' with 'tr' or 'chomp' for a speed
improvement
2016-06-10 22:08:37 -05:00
Guo Xiang Tan 4419d50780
Fix build. 2016-04-14 17:22:26 +08:00
Régis Hanol 379bfac36d Merge pull request #4010 from riking/patch-sitelinks
FEATURE: Add /search discovery
2016-04-14 10:35:13 +02:00
Guo Xiang Tan 4e7e4cee7d PERF: Rendering crawler's template is expensive. 2016-04-07 16:28:31 +02:00
Kane York f2ddd44712 FEATURE: Add /search discovery
The opensearch.xml results in a "site search engine" being added to
Chrome, while the sitelinks search tag results in "Search this website"
being added to Google Search.
2016-03-28 15:07:59 -07:00
Robin Ward 233aa2ab2f FIX: If we're using the crawler layout, don't skip on mobile 2016-03-16 14:35:58 -04:00
Arpit Jalan dde91a54dc SECURITY: strip HTML tags in topic title in email digest 2016-03-08 20:24:24 +05:30
scossar 0a396583ed set locale for anonymous from header
set locale on signup

update spec

add locale option
2016-02-26 13:45:00 -08:00
Arpit Jalan 850838147a add Twitter labels only if both properties are present 2016-01-07 16:48:05 +05:30
Arpit Jalan 2a819546ae add Twitter label meta tags only if value is present 2016-01-07 14:30:13 +05:30
David McClure 7654c855b4 UX: replace 💚 with ❤️ in slack unfurling 2015-12-28 17:46:00 -05:00
Arpit Jalan 6ef1537ee0 FEATURE: better unfurling of Discourse topics on Slack 2015-12-28 19:10:19 +05:30
Robin Ward 5e93140f85 FEATURE: Can override any translation via an admin interface 2015-11-27 11:35:19 -05:00
Arpit Jalan 290708ca53 FIX: use absolute URL for open graph image tags 2015-11-03 01:26:39 +05:30
Régis Hanol 37c5909a31 FIX: use the first image in the first post in the topic as opengraph image
FEATURE: new 'default_opengraph_image_url' setting
2015-10-15 11:00:47 +02:00
Régis Hanol 73e345fe8f FIX: unescape emojis in digests 2015-10-15 09:59:29 +02:00
Neil Lalonde dd0a7107a8 FIX: canonical urls for category and topic pages was wrong when deployed to subfolder 2015-10-01 12:24:07 -04:00
Sam df8d47bdb6 FEATURE: fix a:visited for anon in topic list 2015-07-23 17:16:29 +10:00
Robin Ward 92cddfa598 Basic support for server side plugin outlets 2015-06-02 14:28:12 -04:00
Sam 45bdd23689 FEATURE: support user local switching to RTL correctly
FEATURE: support RTL in multisite
2015-05-20 15:56:54 +10:00
Robin Ward 65bfa574ce Add `userId` to GA tracking 2015-04-07 13:10:33 -04:00
Robin Ward 8513045381 Include user title in email notifications 2015-03-23 14:12:11 -04:00
Robin Ward 3ad12d44f3 Use a mixin for the `path` function to DRY it up 2015-03-09 15:24:16 -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
Régis Hanol 1b2381d5a0 FIX: only remove custom CSS in admin on first load 2015-03-02 23:31:04 +01:00
Robin Ward bcb0346595 FIX: Support text only logos when activating account. 2015-02-25 11:36:06 -05:00
Régis Hanol cd423f4a43 use the view instead 2015-02-20 18:21:19 +01:00
Robin Ward d6fa248093 UX: Update 404 page category badge to use centralized helper and style 2015-01-28 14:56:38 -05:00
Jeff Atwood cd3703e441 remove image opengraph tags 2014-12-24 00:30:55 -08:00
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
Robin Ward bc53d48bd7 Renaming site contents to site text 2014-09-24 16:08:14 -04:00
Eyal Levin e0c2f3df3a Enable RTL direction in emails. 2014-08-27 14:38:03 +03:00
Robin Ward ee40a95e58 FIX: Don't return protocol relative URLs for open graph images - we
can't be sure our site supports what protocol a remote site is
requesting.
2014-08-07 12:59:19 -04:00
Robin Ward 6783565d8f Revert "Enable RTL direction in emails." 2014-08-06 15:30:07 -04:00
Eyal Levin f8c99a35d0 Enable RTL direction in emails. 2014-08-06 15:27:15 +03:00
Eyal Levin d7139555e5 Add RTL support. 2014-07-10 19:36:19 +03:00
Sam 5032c96486 FIX: disable x accl redirect for CDN assets
We need to keep headers in tact
2014-07-10 16:32:46 +10:00
Sam 832a730e36 BUGFIX: re-enable CDN js debugging in a robust way
May be disabled if needed via site setting
2014-05-19 08:46:28 +10:00
Régis Hanol 3a0b23191c TEMP: disable CORS when using CDN 2014-05-16 15:11:12 +02:00
Sam f34862d195 FEATURE: get window.onerror working for CDNs 2014-05-15 12:59:26 +10:00
Robin Ward d95887c57d CHANGE: We now include the `_escaped_fragment_` support by default, but
only if the crawler check fails. It is a fallback for non-google search
engines that support the Ajax crawling API.
2014-02-20 17:02:26 -05:00
Sam 177983afe6 BUGFIX: mobile ui was being cached for anon views 2014-01-09 14:08:42 +11:00
Sam 9738c4ff48 FEATURE: backport a minimal String#scrub
BUGFIX: invalid byte sequence in email would explode all processing
2013-12-30 14:05:25 +11:00
Neil Lalonde 1f0a59584b Revert "Re-apply with fixes: Stop using user agent to detect mobile devices. Use a media query and yepnope to load the appropriate css and customizations." 2013-12-18 14:47:22 -05:00
Neil Lalonde 58e5d532c5 Revert "Got rid of buggy yepnope spaghetti, however mobile detection really should be driven from the server." 2013-12-18 14:47:12 -05:00
Sam 8ccab6d140 Got rid of buggy yepnope spaghetti, however mobile detection really should be driven from the server. 2013-12-13 15:17:05 +11:00
Neil Lalonde 5171a23a9c Re-apply with fixes: Stop using user agent to detect mobile devices. Use a media query and yepnope to load the appropriate css and customizations. 2013-12-11 11:19:22 -05:00
Neil Lalonde 2596f7dec2 Revert "Stop using user agent to detect mobile devices. Use a media query and yepnope to load the appropriate css and customizations." 2013-12-09 16:28:11 -05:00
Neil Lalonde ca5d4d5e54 Stop using user agent to detect mobile devices. Use a media query and yepnope to load the appropriate css and customizations. 2013-12-09 13:28:42 -05:00
Régis Hanol 07cbf8f4e3 do not customize the admin section 2013-11-14 16:41:16 +01:00
Sam 415d4df648 work around bust encodings passed in to method 2013-11-05 13:40:39 +11:00
Neil Lalonde 07d08b81c7 Show mobile view as default for nexus 7 tablet 2013-09-23 17:13:29 -07:00
Neil Lalonde 0fafe124db Add enable_mobile_theme site setting. Uncheck it to disable the mobile theme. 2013-09-17 11:25:37 -04:00
Neil Lalonde 8de91e3789 Also put a class on html element for desktop view 2013-09-13 14:54:57 -04:00
Neil Lalonde cc2acafc9a Enable mobile view. Use local storage to remember whether you chose mobile or desktop view. Mobile device detection needs to be replaced with a better solution. 2013-09-10 16:44:17 -04:00
Sam bcf0203497 fix encoding bug 2013-09-10 16:01:36 +10:00
Neil Lalonde a3f3b086f3 Don't show mobile view unless mobile_view=1 param is used. Still more work to do. 2013-09-05 16:28:57 -04:00
Neil Lalonde 82bc6b677f Add link in hamburger menu to switch between mobile and desktop views 2013-08-29 15:19:28 -04:00
Neil Lalonde 9efa29e688 Detect whether to use mobile view. Session var mobile_view can override automatic detection. 2013-08-27 14:57:42 -04:00
Anton Batenev 694a6f4970 Fix recommendations from #1145 2013-07-05 15:59:39 +04:00
Anton Batenev af36d32f7f Workaround solution to help Yandex crawler index discource.
Yandex search engine doesn't index noscript tag content. See also
http://meta.discourse.org/t/noscript-tag-and-some-search-engines/8078
2013-07-04 22:08:23 +04:00
Neil Lalonde 80928de21e Don't double render faq and privacy policy 2013-07-03 11:57:27 -04:00
Robin Ward ce0a7739cf FIX: Invalid Unicode in preload store JSON 2013-07-02 20:43:52 -04:00
Neil Lalonde 94b8286819 Configurable FAQ url 2013-06-27 12:10:43 -04:00
Robin Ward 89f182899f Support for custom Privacy Policies 2013-06-26 10:59:36 -04:00
Robin Ward 4d1e8356b8 FIX: Again, try to get a flexible absolute logo_url 2013-06-05 18:23:43 -04:00
Sam 42494b5bb1 we can't trust CSRF for anon the way it is designed.
The page they have loaded may be cached we need a different way of delivering the CSRF potentially
2013-05-03 16:43:11 +10:00
Sam 5ec52bd2e9 :s/moderator?/staff/g ... our naming was kind of crazy, renamed moderator? to staff 2013-05-02 17:22:27 +10:00
Sam 65cd00cf25 moderators now have teeth, more at http://meta.discourse.org/t/moderator-permission-set/6307/5
allow pms to be targetted at groups
2013-05-02 15:15:53 +10:00
Neil Lalonde 5f4dbd6ddc Use tos_url site setting in flag modal if it's set 2013-05-01 11:49:18 -04:00
Sam e4a76812a6 this is a slightly round about way of making our self oneboxes sane
shrunk avatar to 60px, added global whitelisting
2013-05-01 16:38:13 +10:00
Neil Lalonde bbf982984d Add TOS and Privacy Policy site settings that can link to external sites. 2013-04-26 18:46:36 -04:00