Skip to content
Snippets Groups Projects
Commit 85d85ef8 authored by Jared Hancock's avatar Jared Hancock
Browse files

forms: Add localized error messages to the file upload

parent 2037cd84
No related branches found
No related tags found
No related merge requests found
...@@ -35,8 +35,8 @@ if (($lang = Internationalization::getCurrentLanguage()) ...@@ -35,8 +35,8 @@ if (($lang = Internationalization::getCurrentLanguage())
<link type="text/css" rel="stylesheet" href="<?php echo ROOT_PATH; ?>css/rtl.css"/> <link type="text/css" rel="stylesheet" href="<?php echo ROOT_PATH; ?>css/rtl.css"/>
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/jquery-1.8.3.min.js"></script> <script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/jquery-ui-1.10.3.custom.min.js"></script> <script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/jquery-ui-1.10.3.custom.min.js"></script>
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/filedrop.field.js"></script>
<script src="<?php echo ROOT_PATH; ?>js/osticket.js"></script> <script src="<?php echo ROOT_PATH; ?>js/osticket.js"></script>
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/filedrop.field.js"></script>
<script src="<?php echo ROOT_PATH; ?>scp/js/bootstrap-typeahead.js"></script> <script src="<?php echo ROOT_PATH; ?>scp/js/bootstrap-typeahead.js"></script>
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/redactor.min.js"></script> <script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/redactor.min.js"></script>
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/redactor-osticket.js"></script> <script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/redactor-osticket.js"></script>
......
...@@ -20,6 +20,7 @@ if (($lang = Internationalization::getCurrentLanguage()) ...@@ -20,6 +20,7 @@ if (($lang = Internationalization::getCurrentLanguage())
<![endif]--> <![endif]-->
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/jquery-1.8.3.min.js"></script> <script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/jquery-ui-1.10.3.custom.min.js"></script> <script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/jquery-ui-1.10.3.custom.min.js"></script>
<script type="text/javascript" src="./js/scp.js"></script>
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/jquery.pjax.js"></script> <script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/jquery.pjax.js"></script>
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/filedrop.field.js"></script> <script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/filedrop.field.js"></script>
<script type="text/javascript" src="./js/tips.js"></script> <script type="text/javascript" src="./js/tips.js"></script>
...@@ -27,7 +28,6 @@ if (($lang = Internationalization::getCurrentLanguage()) ...@@ -27,7 +28,6 @@ if (($lang = Internationalization::getCurrentLanguage())
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/redactor-osticket.js"></script> <script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/redactor-osticket.js"></script>
<script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/redactor-fonts.js"></script> <script type="text/javascript" src="<?php echo ROOT_PATH; ?>js/redactor-fonts.js"></script>
<script type="text/javascript" src="./js/bootstrap-typeahead.js"></script> <script type="text/javascript" src="./js/bootstrap-typeahead.js"></script>
<script type="text/javascript" src="./js/scp.js"></script>
<link rel="stylesheet" href="<?php echo ROOT_PATH ?>css/thread.css" media="all"> <link rel="stylesheet" href="<?php echo ROOT_PATH ?>css/thread.css" media="all">
<link rel="stylesheet" href="./css/scp.css" media="all"> <link rel="stylesheet" href="./css/scp.css" media="all">
<link rel="stylesheet" href="<?php echo ROOT_PATH; ?>css/redactor.css" media="screen"> <link rel="stylesheet" href="<?php echo ROOT_PATH; ?>css/redactor.css" media="screen">
......
...@@ -178,6 +178,13 @@ ...@@ -178,6 +178,13 @@
node.data('xhr').abort(); node.data('xhr').abort();
return this.deleteNode(node, false); return this.deleteNode(node, false);
} }
},
handleError: function(err, i, file, status) {
var message = $.fn.filedropbox.messages[err];
if (file instanceof File) {
message = '<b>' + file.name + '</b><br/>' + message;
}
$.sysAlert(__('File Upload Error'), message);
} }
}; };
...@@ -197,6 +204,17 @@ ...@@ -197,6 +204,17 @@
shim: !window.FileReader shim: !window.FileReader
}; };
$.fn.filedropbox.messages = {
'BrowserNotSupported': __('Your browser is not supported'),
'TooManyFiles': __('You are trying to upload too many files'),
'FileTooLarge': __('File is too large'),
'FileTypeNotAllowed': __('This type of file is not allowed'),
'FileExtensionNotAllowed': __('This type of file is not allowed'),
'NotFound': __('Could not find or read this file'),
'NotReadable': __('Could not find or read this file'),
'AbortError': __('Could not find or read this file')
};
$.fn.filedropbox.Constructor = FileDropbox; $.fn.filedropbox.Constructor = FileDropbox;
}(jQuery); }(jQuery);
...@@ -416,7 +434,7 @@ ...@@ -416,7 +434,7 @@
if (opts.allowedfiletypes.push && opts.allowedfiletypes.length) { if (opts.allowedfiletypes.push && opts.allowedfiletypes.length) {
for(var fileIndex = files.length;fileIndex--;) { for(var fileIndex = files.length;fileIndex--;) {
if(!files[fileIndex].type || $.inArray(files[fileIndex].type, opts.allowedfiletypes) < 0) { if(!files[fileIndex].type || $.inArray(files[fileIndex].type, opts.allowedfiletypes) < 0) {
opts.error(errors[3], files[fileIndex]); opts.error(errors[3], files[fileIndex], fileIndex);
return false; return false;
} }
} }
...@@ -433,7 +451,7 @@ ...@@ -433,7 +451,7 @@
} }
} }
if (!allowedextension){ if (!allowedextension){
opts.error(errors[8], files[fileIndex]); opts.error(errors[8], files[fileIndex], fileIndex);
return false; return false;
} }
} }
...@@ -509,16 +527,16 @@ ...@@ -509,16 +527,16 @@
reader.onerror = function(e) { reader.onerror = function(e) {
switch(e.target.error.code) { switch(e.target.error.code) {
case e.target.error.NOT_FOUND_ERR: case e.target.error.NOT_FOUND_ERR:
opts.error(errors[4]); opts.error(errors[4], files[fileIndex], fileIndex);
return false; return false;
case e.target.error.NOT_READABLE_ERR: case e.target.error.NOT_READABLE_ERR:
opts.error(errors[5]); opts.error(errors[5], files[fileIndex], fileIndex);
return false; return false;
case e.target.error.ABORT_ERR: case e.target.error.ABORT_ERR:
opts.error(errors[6]); opts.error(errors[6], files[fileIndex], fileIndex);
return false; return false;
default: default:
opts.error(errors[7]); opts.error(errors[7], files[fileIndex], fileIndex);
return false; return false;
}; };
}; };
...@@ -541,7 +559,7 @@ ...@@ -541,7 +559,7 @@
processingQueue.splice(key, 1); processingQueue.splice(key, 1);
} }
}); });
opts.error(errors[0]); opts.error(errors[0], files[fileIndex], fileIndex, err);
return false; return false;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment