Allow more detailed configuration of upload mime types
Fixes #637 Signed-off-by: Sheogorath <sheogorath@shivering-isles.com>
This commit is contained in:
parent
40d1d75704
commit
a7935a595a
4 changed files with 29 additions and 11 deletions
3
app.js
3
app.js
|
@ -34,7 +34,8 @@ var data = {
|
||||||
version: config.version,
|
version: config.version,
|
||||||
GOOGLE_API_KEY: config.google.clientSecret,
|
GOOGLE_API_KEY: config.google.clientSecret,
|
||||||
GOOGLE_CLIENT_ID: config.google.clientID,
|
GOOGLE_CLIENT_ID: config.google.clientID,
|
||||||
DROPBOX_APP_KEY: config.dropbox.appKey
|
DROPBOX_APP_KEY: config.dropbox.appKey,
|
||||||
|
allowedUploadMimeTypes: config.allowedUploadMimeTypes
|
||||||
}
|
}
|
||||||
|
|
||||||
ejs.renderFile(constpath, data, {}, function (err, str) {
|
ejs.renderFile(constpath, data, {}, function (err, str) {
|
||||||
|
|
|
@ -97,6 +97,26 @@ config.isLDAPEnable = config.ldap.url
|
||||||
config.isSAMLEnable = config.saml.idpSsoUrl
|
config.isSAMLEnable = config.saml.idpSsoUrl
|
||||||
config.isPDFExportEnable = config.allowpdfexport
|
config.isPDFExportEnable = config.allowpdfexport
|
||||||
|
|
||||||
|
// figure out mime types for image uploads
|
||||||
|
switch (config.imageUploadType) {
|
||||||
|
case 'imgur':
|
||||||
|
config.allowedUploadMimeTypes = [
|
||||||
|
'image/jpeg',
|
||||||
|
'image/png',
|
||||||
|
'image/jpg',
|
||||||
|
'image/gif'
|
||||||
|
]
|
||||||
|
break
|
||||||
|
default:
|
||||||
|
config.allowedUploadMimeTypes = [
|
||||||
|
'image/jpeg',
|
||||||
|
'image/png',
|
||||||
|
'image/jpg',
|
||||||
|
'image/gif',
|
||||||
|
'image/svg+xml'
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
// generate correct path
|
// generate correct path
|
||||||
config.sslcapath.forEach(function (capath, i, array) {
|
config.sslcapath.forEach(function (capath, i, array) {
|
||||||
array[i] = path.resolve(appRootPath, capath)
|
array[i] = path.resolve(appRootPath, capath)
|
||||||
|
|
|
@ -3,6 +3,8 @@ window.urlpath = '<%- urlpath %>'
|
||||||
window.debug = <%- debug %>
|
window.debug = <%- debug %>
|
||||||
window.version = '<%- version %>'
|
window.version = '<%- version %>'
|
||||||
|
|
||||||
|
window.allowedUploadMimeTypes = <%- JSON.stringify(allowedUploadMimeTypes) %>
|
||||||
|
|
||||||
window.GOOGLE_API_KEY = '<%- GOOGLE_API_KEY %>'
|
window.GOOGLE_API_KEY = '<%- GOOGLE_API_KEY %>'
|
||||||
window.GOOGLE_CLIENT_ID = '<%- GOOGLE_CLIENT_ID %>'
|
window.GOOGLE_CLIENT_ID = '<%- GOOGLE_CLIENT_ID %>'
|
||||||
window.DROPBOX_APP_KEY = '<%- DROPBOX_APP_KEY %>'
|
window.DROPBOX_APP_KEY = '<%- DROPBOX_APP_KEY %>'
|
||||||
|
|
|
@ -141,12 +141,7 @@
|
||||||
/**
|
/**
|
||||||
* Allowed MIME types
|
* Allowed MIME types
|
||||||
*/
|
*/
|
||||||
allowedTypes: [
|
allowedTypes: window.allowedUploadMimeTypes,
|
||||||
'image/jpeg',
|
|
||||||
'image/png',
|
|
||||||
'image/jpg',
|
|
||||||
'image/gif'
|
|
||||||
],
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Text which will be inserted when dropping or pasting a file.
|
* Text which will be inserted when dropping or pasting a file.
|
||||||
|
@ -304,7 +299,7 @@
|
||||||
if (this.settings.onFileUploadResponse.call(this, xhr) !== false) {
|
if (this.settings.onFileUploadResponse.call(this, xhr) !== false) {
|
||||||
var result = JSON.parse(xhr.responseText),
|
var result = JSON.parse(xhr.responseText),
|
||||||
filename = result[this.settings.jsonFieldName];
|
filename = result[this.settings.jsonFieldName];
|
||||||
|
|
||||||
if (result && filename) {
|
if (result && filename) {
|
||||||
var replacements = [];
|
var replacements = [];
|
||||||
var string = this.settings.progressText.replace(this.filenameTag, id);
|
var string = this.settings.progressText.replace(this.filenameTag, id);
|
||||||
|
@ -415,7 +410,7 @@
|
||||||
// <http://wiki.ecmascript.org/doku.php?id=strawman:names>.
|
// <http://wiki.ecmascript.org/doku.php?id=strawman:names>.
|
||||||
//
|
//
|
||||||
// The goals of this function are twofold:
|
// The goals of this function are twofold:
|
||||||
//
|
//
|
||||||
// * Provide a way to generate a string guaranteed to be unique when compared
|
// * Provide a way to generate a string guaranteed to be unique when compared
|
||||||
// to other strings generated by this function.
|
// to other strings generated by this function.
|
||||||
// * Make the string complex enough that it is highly unlikely to be
|
// * Make the string complex enough that it is highly unlikely to be
|
||||||
|
@ -432,4 +427,4 @@ var ID = function () {
|
||||||
// Convert it to base 36 (numbers + letters), and grab the first 9 characters
|
// Convert it to base 36 (numbers + letters), and grab the first 9 characters
|
||||||
// after the decimal.
|
// after the decimal.
|
||||||
return '_' + Math.random().toString(36).substr(2, 9);
|
return '_' + Math.random().toString(36).substr(2, 9);
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue