yesod-core 1.6.3 → 1.6.4
raw patch · 3 files changed
+26/−1 lines, 3 files
Files
- ChangeLog.md +4/−0
- Yesod/Core/Handler.hs +21/−0
- yesod-core.cabal +1/−1
ChangeLog.md view
@@ -1,3 +1,7 @@+## 1.6.4++* Add `addContentDispositionFileName` [#1504](https://github.com/yesodweb/yesod/pull/1504)+ ## 1.6.3 * Add missing export for `SubHandlerFor`
Yesod/Core/Handler.hs view
@@ -118,6 +118,7 @@ , setHeader , replaceOrAddHeader , setLanguage+ , addContentDispositionFileName -- ** Content caching and expiration , cacheSeconds , neverExpires@@ -779,6 +780,26 @@ -- next request. setLanguage :: MonadHandler m => Text -> m () setLanguage = setSession langKey++-- | Set attachment file name.+--+-- Allows Unicode characters by encoding to UTF-8.+-- Some modurn browser parse UTF-8 characters with out encoding setting.+-- But, for example IE9 can't parse UTF-8 characters.+-- This function use+-- <https://tools.ietf.org/html/rfc6266 RFC 6266>(<https://tools.ietf.org/html/rfc5987 RFC 5987>)+--+-- @since 1.6.4+addContentDispositionFileName :: MonadHandler m => T.Text -> m ()+addContentDispositionFileName fileName+ = addHeader "Content-Disposition" $ rfc6266Utf8FileName fileName++-- | <https://tools.ietf.org/html/rfc6266 RFC 6266> Unicode attachment filename.+--+-- > rfc6266Utf8FileName (Data.Text.pack "€")+-- "attachment; filename*=UTF-8''%E2%82%AC"+rfc6266Utf8FileName :: T.Text -> T.Text+rfc6266Utf8FileName fileName = "attachment; filename*=UTF-8''" `mappend` decodeUtf8 (H.urlEncode True (encodeUtf8 fileName)) -- | Set an arbitrary response header. --
yesod-core.cabal view
@@ -1,5 +1,5 @@ name: yesod-core-version: 1.6.3+version: 1.6.4 license: MIT license-file: LICENSE author: Michael Snoyman <michael@snoyman.com>