From bebeeffc3070839033e67a654e0abf1a2fb8b5e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9gis=20Hanol?= Date: Thu, 31 Dec 2015 11:40:23 +0100 Subject: [PATCH] FIX: ico are images too --- app/assets/javascripts/discourse/lib/utilities.js | 6 +++--- app/models/username_validator.rb | 2 +- lib/file_helper.rb | 2 +- test/javascripts/lib/utilities-test.js.es6 | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/app/assets/javascripts/discourse/lib/utilities.js b/app/assets/javascripts/discourse/lib/utilities.js index 5865cba2d22..72cd08816b5 100644 --- a/app/assets/javascripts/discourse/lib/utilities.js +++ b/app/assets/javascripts/discourse/lib/utilities.js @@ -256,17 +256,17 @@ Discourse.Utilities = { }, isAnImage: function(path) { - return (/\.(png|jpe?g|gif|bmp|tiff?|svg|webp)$/i).test(path); + return (/\.(png|jpe?g|gif|bmp|tiff?|svg|webp|ico)$/i).test(path); }, allowsImages: function() { return Discourse.Utilities.authorizesAllExtensions() || - (/(png|jpe?g|gif|bmp|tiff?|svg|webp)/i).test(Discourse.Utilities.authorizedExtensions()); + (/(png|jpe?g|gif|bmp|tiff?|svg|webp|ico)/i).test(Discourse.Utilities.authorizedExtensions()); }, allowsAttachments: function() { return Discourse.Utilities.authorizesAllExtensions() || - !(/((png|jpe?g|gif|bmp|tiff?|svg|webp)(,\s)?)+$/i).test(Discourse.Utilities.authorizedExtensions()); + !(/((png|jpe?g|gif|bmp|tiff?|svg|web|ico)(,\s)?)+$/i).test(Discourse.Utilities.authorizedExtensions()); }, displayErrorForUpload: function(data) { diff --git a/app/models/username_validator.rb b/app/models/username_validator.rb index ac9adcc95e9..891958b169b 100644 --- a/app/models/username_validator.rb +++ b/app/models/username_validator.rb @@ -89,7 +89,7 @@ class UsernameValidator def username_does_not_end_with_confusing_suffix? return unless errors.empty? - if username =~ /\.(json|gif|jpeg|png|htm|js|json|xml|woff|tif|html)/i + if username =~ /\.(json|gif|jpeg|png|htm|js|json|xml|woff|tif|html|ico)/i self.errors << I18n.t(:'user.username.must_not_contain_confusing_suffix') end end diff --git a/lib/file_helper.rb b/lib/file_helper.rb index 30f9895a71c..015833bba88 100644 --- a/lib/file_helper.rb +++ b/lib/file_helper.rb @@ -28,7 +28,7 @@ class FileHelper private def self.images - @@images ||= Set.new ["jpg", "jpeg", "png", "gif", "tif", "tiff", "bmp", "svg", "webp"] + @@images ||= Set.new ["jpg", "jpeg", "png", "gif", "tif", "tiff", "bmp", "svg", "webp", "ico"] end def self.images_regexp diff --git a/test/javascripts/lib/utilities-test.js.es6 b/test/javascripts/lib/utilities-test.js.es6 index 8d0fd1c1d99..0a8ebd63640 100644 --- a/test/javascripts/lib/utilities-test.js.es6 +++ b/test/javascripts/lib/utilities-test.js.es6 @@ -95,7 +95,7 @@ test("getUploadMarkdown", function() { }); test("isAnImage", function() { - _.each(["png", "jpg", "jpeg", "bmp", "gif", "tif", "tiff"], function(extension) { + _.each(["png", "jpg", "jpeg", "bmp", "gif", "tif", "tiff", "ico"], function(extension) { var image = "image." + extension; ok(utils.isAnImage(image), image + " is recognized as an image"); ok(utils.isAnImage("http://foo.bar/path/to/" + image), image + " is recognized as an image");