]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - lib/themeuploader.php
Ticket #2638: allow themes to specify a base theme to load with 'include' setting...
[quix0rs-gnu-social.git] / lib / themeuploader.php
index abf0658d3131781c812c354faaa17769a55f208a..b5ef92e7b83a516b15cd4062ec7572e937e5c4cb 100644 (file)
@@ -198,7 +198,7 @@ class ThemeUploader
     protected function validateFile($filename, $ext)
     {
         $this->validateFileOrFolder($filename);
-        $this->validateExtension($ext);
+        $this->validateExtension($filename, $ext);
         // @fixme validate content
     }
 
@@ -216,13 +216,17 @@ class ThemeUploader
         return true;
     }
 
-    protected function validateExtension($ext)
+    protected function validateExtension($base, $ext)
     {
         $allowed = array('css', // CSS may need validation
                          'png', 'gif', 'jpg', 'jpeg',
                          'svg', // SVG images/fonts may need validation
                          'ttf', 'eot', 'woff');
         if (!in_array(strtolower($ext), $allowed)) {
+            if ($ext == 'ini' && $base == 'theme') {
+                // theme.ini exception
+                return true;
+            }
             $msg = sprintf(_("Theme contains file of type '.%s', " .
                              "which is not allowed."),
                            $ext);