b)a.width=parseInt(a.width*b,10),a.height=parseInt(a.height*b,10);if(!c.canvas||!d.getContext)return a;d.width=a.width;d.height=a.height;d.getContext("2d").drawImage(a,0,0,a.width,a.height);return d};e.createObjectURL=function(a){return f?f.createObjectURL(a):!1};e.revokeObjectURL=function(a){return f?f.revokeObjectURL(a):!1};e.readFile=function(a,c){if(window.FileReader&&
-FileReader.prototype.readAsDataURL){var d=new FileReader;d.onload=function(a){c(a.target.result)};d.readAsDataURL(a);return d}return!1};"undefined"!==typeof define&&define.amd?define("loadImage",function(){return e}):h.loadImage=e})(this);
\ No newline at end of file
diff --git a/thirdparty/javascript-loadimage/package.json b/thirdparty/javascript-loadimage/package.json
deleted file mode 100644
index 30e0ff839..000000000
--- a/thirdparty/javascript-loadimage/package.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "name": "blueimp-load-image",
- "version": "1.1.3",
- "title": "JavaScript Load Image",
- "description": "JavaScript Load Image is a function to load images provided as File or Blob objects or via URL. It returns an optionally scaled HTML img or canvas element.",
- "keywords": [
- "javascript",
- "load",
- "loading",
- "image",
- "file",
- "blob",
- "url",
- "scale",
- "scaling",
- "img",
- "canvas"
- ],
- "homepage": "https://github.com/blueimp/JavaScript-Load-Image",
- "author": {
- "name": "Sebastian Tschan",
- "url": "https://blueimp.net"
- },
- "maintainers": [
- {
- "name": "Sebastian Tschan",
- "url": "https://blueimp.net"
- }
- ],
- "repository": {
- "type": "git",
- "url": "git://github.com/blueimp/JavaScript-Load-Image.git"
- },
- "bugs": "https://github.com/blueimp/JavaScript-Load-Image/issues",
- "licenses": [
- {
- "type": "MIT",
- "url": "http://www.opensource.org/licenses/MIT"
- }
- ],
- "files": [
- "load-image.js"
- ],
- "main": "load-image.js"
-}
diff --git a/thirdparty/javascript-templates/README.md b/thirdparty/javascript-templates/README.md
deleted file mode 100644
index d92357fc3..000000000
--- a/thirdparty/javascript-templates/README.md
+++ /dev/null
@@ -1,309 +0,0 @@
-# JavaScript Templates
-
-## Demo
-[JavaScript Templates Demo](http://blueimp.github.com/JavaScript-Templates/)
-
-## Usage
-
-### Client-side
-Include the (minified) JavaScript Templates script in your HTML markup:
-
-```html
-
-```
-
-Add a script section with type **"text/html"** and your template definition as content:
-
-```html
-
-```
-
-**"o"** (the lowercase letter) is a reference to the data parameter of the template function (see the API section on how to modify this identifier).
-
-In your application code, create a JavaScript object to use as data for the template:
-
-```js
-var data = {
- "title": "JavaScript Templates",
- "license": {
- "name": "MIT license",
- "url": "http://www.opensource.org/licenses/MIT"
- },
- "features": [
- "lightweight & fast",
- "powerful",
- "zero dependencies"
- ]
-};
-```
-
-In a real application, this data could be the result of retrieving a [JSON](http://json.org/) resource.
-
-Render the result by calling the **tmpl()** method with the id of the template and the data object as arguments:
-
-```js
-document.getElementById("result").innerHTML = tmpl("tmpl-demo", data);
-```
-
-### Server-side
-
-The following is an example how to use the JavaScript Templates engine on the server-side with [node.js](http://nodejs.org/).
-
-Create a new directory and add the **tmpl.js** file. Or alternatively, install the **blueimp-tmpl** package with [npm](http://npmjs.org/):
-
-```sh
-npm install blueimp-tmpl
-```
-
-Add a file **template.html** with the following content:
-
-```html
-
-{%=o.title%}
-
-Features
-
-{% for (var i=0; i{%=o.features[i]%}
-{% } %}
-
-```
-
-Add a file **server.js** with the following content:
-
-```js
-require("http").createServer(function (req, res) {
- var fs = require("fs"),
- // The tmpl module exports the tmpl() function:
- tmpl = require("./tmpl").tmpl,
- // Use the following version if you installed the package with npm:
- // tmpl = require("blueimp-tmpl").tmpl,
- // Sample data:
- data = {
- "title": "JavaScript Templates",
- "url": "https://github.com/blueimp/JavaScript-Templates",
- "features": [
- "lightweight & fast",
- "powerful",
- "zero dependencies"
- ]
- };
- // Override the template loading method:
- tmpl.load = function (id) {
- var filename = id + ".html";
- console.log("Loading " + filename);
- return fs.readFileSync(filename, "utf8");
- };
- res.writeHead(200, {"Content-Type": "text/html"});
- // Render the content:
- res.end(tmpl("template", data));
-}).listen(8080, "localhost");
-console.log("Server running at http://localhost:8080/");
-```
-
-Run the application with the following command:
-
-```sh
-node server.js
-```
-
-## Requirements
-The JavaScript Templates script has zero dependencies.
-
-## API
-
-### tmpl() function
-The **tmpl()** function is added to the global **window** object and can be called as global function:
-
-```js
-var result = tmpl("tmpl-demo", data);
-```
-
-The **tmpl()** function can be called with the id of a template, or with a template string:
-
-```js
-var result = tmpl("{%=o.title%}
", data);
-```
-
-If called without second argument, **tmpl()** returns a reusable template function:
-
-```js
-var func = tmpl("{%=o.title%}
");
-document.getElementById("result").innerHTML = func(data);
-```
-
-### Templates cache
-Templates loaded by id are cached in the map **tmpl.cache**, which can be modified:
-
-```js
-var func = tmpl("tmpl-demo");
-var cached = typeof tmpl.cache["tmpl-demo"] === "function"; // true
-
-tmpl.cache["tmpl-demo"] = tmpl("{%=o.title%}
");
-var result = tmpl("tmpl-demo", {title: "JS"}); // Renders "JS
"
-```
-
-### Output encoding
-The method **tmpl.encode** is used to escape HTML special characters in template output:
-
-```js
-var output = tmpl.encode("<>&\"\x00"); // Renders "<>&""
-```
-
-**tmpl.encode** makes use of the regular expression **tmpl.encReg** and the encoding map **tmpl.encMap** to match and replace special characters, which can be modified to change the behavior of the output encoding:
-
-```js
-// Add single quotes to the encoding rules:
-tmpl.encReg = /[<>&"'\x00]/g;
-tmpl.encMap["'"] = "'";
-
-var output = tmpl.encode("<>&\"'\x00"); // Renders "<>&"'"
-```
-
-### Local helper variables
-The local variables available inside the templates are the following:
-
-* **o**: The data object given as parameter to the template function (see the next section on how to modify the parameter name).
-* **_s**: The string for the rendered result content.
-* **_t**: A reference to the **tmpl** function object.
-* **_e**: A reference to the **tmpl.encode** method.
-* **print**: Function to add content to the rendered result string.
-* **include**: Function to include the return value of a different template in the result.
-
-To introduce additional local helper variables, the string **tmpl.helper** can be extended. The following adds a convenience function for *console.log* and a streaming function, that streams the template rendering result back to the callback argument (note the comma at the beginning of each variable declaration):
-
-```js
-tmpl.helper += ",log=function(){console.log.apply(console, arguments)}" +
- ",st='',stream=function(cb){var l=st.length;st=_s;cb( _s.slice(l));}";
-```
-
-Those new helper functions could be used to stream the template contents to the console output:
-
-```html
-
-```
-
-### Template function argument
-The generated template functions accept one argument, which is the data object given to the **tmpl(id, data)** function. This argument is available inside the template definitions as parameter **o** (the lowercase letter).
-
-The argument name can be modified by overriding **tmpl.arg**:
-
-```js
-tmpl.arg = "p";
-
-// Renders "JavaScript Templates
":
-var result = tmpl("{%=p.title%}
", {title: "JavaScript Templates"});
-```
-
-### Template parsing
-The template contents are matched and replaced using the regular expression **tmpl.regexp** and the replacement function **tmpl.func**. The replacement function operates based on the [parenthesized submatch strings](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/replace#Specifying_a_function_as_a_parameter).
-
-To use different tags for the template syntax, override **tmpl.regexp** with a modified regular expression, by exchanging all occurrences of "**\\{%**" and "**%\\}**", e.g. with "**\\[%**" and "**%\\]**":
-
-```js
-tmpl.regexp = /(\s+)|('|\\)(?![^%]*%\])|(?:\[%(=|#)(.+?)%\])|(\[%)|(%\])/g;
-```
-
-## Templates syntax
-
-### Interpolation
-Print variable with HTML special characters escaped:
-
-```html
-{%=o.title%}
-```
-
-Print variable without escaping:
-
-```html
-{%#o.user_id%}
-```
-
-Print output of function calls:
-
-```html
-Website
-```
-
-Use dot notation to print nested properties:
-
-```html
-{%=o.author.name%}
-```
-
-Note that the JavaScript Templates engine prints **falsy** values as empty strings.
-That is, **undefined**, **null**, **false**, **0** and **NaN** will all be converted to **''**.
-To be able to print e.g. the number 0, convert it to a String before using it as an output variable:
-
-```html
-{%=0+''%}
-```
-
-### Evaluation
-Use **print(str)** to add escaped content to the output:
-
-```html
-Year: {% var d=new Date(); print(d.getFullYear()); %}
-```
-
-Use **print(str, true)** to add unescaped content to the output:
-
-```html
-{% print("Fast & powerful", true); %}
-```
-
-Use **include(str, obj)** to include content from a different template:
-
-```html
-
-{% include('tmpl-link', {name: "Website", url: "http://example.org"}); %}
-
-```
-
-If else condition:
-
-```html
-{% if (o.author.url) { %}
- {%=o.author.name%}
-{% } else { %}
- No author url.
-{% } %}
-```
-
-For loop:
-
-```html
-
-{% for (var i=0; i{%=o.features[i]%}
-{% } %}
-
-```
-
-## License
-The JavaScript Templates script is released under the [MIT license](http://www.opensource.org/licenses/MIT).
diff --git a/thirdparty/javascript-templates/package.json b/thirdparty/javascript-templates/package.json
deleted file mode 100644
index 3f6721bc9..000000000
--- a/thirdparty/javascript-templates/package.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "name": "blueimp-tmpl",
- "version": "1.0.2",
- "title": "JavaScript Templates",
- "description": "< 1KB lightweight, fast & powerful JavaScript templating engine with zero dependencies. Compatible with server-side environments like node.js, module loaders like RequireJS and all web browsers.",
- "keywords": [
- "javascript",
- "templates",
- "templating"
- ],
- "homepage": "https://github.com/blueimp/JavaScript-Templates",
- "author": {
- "name": "Sebastian Tschan",
- "url": "https://blueimp.net"
- },
- "maintainers": [
- {
- "name": "Sebastian Tschan",
- "url": "https://blueimp.net"
- }
- ],
- "repository": {
- "type": "git",
- "url": "git://github.com/blueimp/JavaScript-Templates.git"
- },
- "bugs": "https://github.com/blueimp/JavaScript-Templates/issues",
- "licenses": [
- {
- "type": "MIT",
- "url": "http://www.opensource.org/licenses/MIT"
- }
- ],
- "scripts": {
- "test": "node ./test/test.js"
- },
- "files": [
- "tmpl.js"
- ],
- "main": "tmpl.js"
-}
diff --git a/thirdparty/javascript-templates/tmpl.js b/thirdparty/javascript-templates/tmpl.js
index 1783074be..df16979ae 100644
--- a/thirdparty/javascript-templates/tmpl.js
+++ b/thirdparty/javascript-templates/tmpl.js
@@ -75,8 +75,7 @@
",print=function(s,e){_s+=e&&(s||'')||_e(s);}" +
",include=function(s,d){_s+=_t(s,d);}";
if (typeof define === "function" && define.amd) {
- // Register as an AMD module:
- define("tmpl", function () {
+ define(function () {
return tmpl;
});
} else {
diff --git a/thirdparty/javascript-templates/tmpl.min.js b/thirdparty/javascript-templates/tmpl.min.js
deleted file mode 100644
index 53146973b..000000000
--- a/thirdparty/javascript-templates/tmpl.min.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(function(e){var a=function(b,d){var c=!/[^\-\w]/.test(b)?a.cache[b]=a.cache[b]||a(a.load(b)):new Function(a.arg,("var _s=''"+a.helper+";_s+='"+b.replace(a.regexp,a.func)+"';return _s;").split("_s+='';").join(""));c.tmpl=c.tmpl||a;return d?c(d):c};a.cache={};a.load=function(a){return document.getElementById(a).innerHTML};a.regexp=/(\s+)|('|\\)(?![^%]*%\})|(?:\{%(=|#)(.+?)%\})|(\{%)|(%\})/g;a.func=function(a,d,c,f,g,e,i,h,j){if(d)return h&&h+a.length!==j.length?" ":"";if(c)return"\\"+a;if(f)return"="===
-f?"'+_e("+g+")+'":"'+("+g+"||'')+'";if(e)return"';";if(i)return"_s+='"};a.encReg=/[<>&"\x00]/g;a.encMap={"<":"<",">":">","&":"&",'"':""","\x00":""};a.encode=function(b){return(""+(b||"")).replace(a.encReg,function(b){return a.encMap[b]})};a.arg="o";a.helper=",_t=arguments.callee.tmpl,_e=_t.encode,print=function(s,e){_s+=e&&(s||'')||_e(s);},include=function(s,d){_s+=_t(s,d);}";"function"===typeof define&&define.amd?define("tmpl",function(){return a}):e.tmpl=a})(this);
\ No newline at end of file
diff --git a/thirdparty/jquery-fileupload/README.md b/thirdparty/jquery-fileupload/README.md
deleted file mode 100644
index bb7151a18..000000000
--- a/thirdparty/jquery-fileupload/README.md
+++ /dev/null
@@ -1,68 +0,0 @@
-# jQuery File Upload Plugin
-
-## Demo
-[Demo File Upload](http://blueimp.github.com/jQuery-File-Upload/)
-
-## Setup instructions
-* [How to setup the plugin on your website](https://github.com/blueimp/jQuery-File-Upload/wiki/Setup)
-* [How to use only the basic plugin (minimal setup guide).](https://github.com/blueimp/jQuery-File-Upload/wiki/Basic-plugin)
-
-## Features
-* **Multiple file upload:**
- Allows to select multiple files at once and upload them simultaneously.
-* **Drag & Drop support:**
- Allows to upload files by dragging them from your desktop or filemanager and dropping them on your browser window.
-* **Upload progress bar:**
- Shows a progress bar indicating the upload progress for individual files and for all uploads combined.
-* **Cancelable uploads:**
- Individual file uploads can be canceled to stop the upload progress.
-* **Resumable uploads:**
- Aborted uploads can be resumed with browsers supporting the Blob API.
-* **Chunked uploads:**
- Large files can be uploaded in smaller chunks with browsers supporting the Blob API.
-* **Preview images:**
- A preview of image files can be displayed before uploading with browsers supporting the required HTML5 APIs.
-* **No browser plugins (e.g. Adobe Flash) required:**
- The implementation is based on open standards like HTML5 and JavaScript and requires no additional browser plugins.
-* **Graceful fallback for legacy browsers:**
- Uploads files via XMLHttpRequests if supported and uses iframes as fallback for legacy browsers.
-* **HTML file upload form fallback:**
- Shows a standard HTML file upload form if JavaScript is disabled.
-* **Cross-site file uploads:**
- Supports uploading files to a different domain with Cross-site XMLHttpRequests.
-* **Multiple plugin instances:**
- Allows to use multiple plugin instances on the same webpage.
-* **Customizable and extensible:**
- Provides an API to set individual options and define callBack methods for various upload events.
-* **Multipart and file contents stream uploads:**
- Files can be uploaded as standard "multipart/form-data" or file contents stream (HTTP PUT file upload).
-* **Compatible with any server-side application platform:**
- Works with Google App Engine (Python, Java), Ruby on Rails, PHP and any other platform that supports HTTP file uploads.
-
-## Requirements
-* [jQuery](http://jquery.com/) v. 1.6+
-* [jQuery UI widget factory](http://wiki.jqueryui.com/w/page/12138135/Widget%20factory) v. 1.8.16+
-* [jQuery Iframe Transport plugin](https://github.com/blueimp/jQuery-File-Upload/blob/master/jquery.iframe-transport.js) (included)
-* [JavaScript Load Image function](http://blueimp.github.com/JavaScript-Load-Image) v. 1.1.3+ (optional)
-* [JavaScript Templates engine](https://github.com/blueimp/JavaScript-Templates) v. 1.0.2+ (optional)
-
-The jQuery UI widget factory is a requirement for the basic File Upload plugin, but very lightweight without any other dependencies.
-The UI version of the File Upload plugin also requires the JavaScript Templates engine and the JavaScript Load Image function (for the upload image previews). These dependencies are marked as optional, as the basic File Upload plugin can be used without them and the UI version of the plugin can be extended to override these dependencies with alternative solutions.
-
-The repository also includes the [jQuery XDomainRequest Transport Plugin](https://github.com/blueimp/jQuery-File-Upload/blob/master/cors/jquery.xdr-transport.js), which is required for Cross-domain AJAX requests in Microsoft Internet Explorer >= 8. It is only included for the [Demo](http://blueimp.github.com/jQuery-File-Upload/), which makes use of Cross-domain DELETE requests (GET requests for IE) to delete uploaded files from the Demo File Upload service.
-
-[Cross-domain File Uploads](https://github.com/blueimp/jQuery-File-Upload/wiki/Cross-domain-uploads) using the [Iframe Transport plugin](https://github.com/blueimp/jQuery-File-Upload/blob/master/jquery.iframe-transport.js) require a redirect back to the origin server to retrieve the upload results. The example implementation makes use of [result.html](https://github.com/blueimp/jQuery-File-Upload/blob/master/cors/result.html) as redirect page. See also the example code in [application.js](https://github.com/blueimp/jQuery-File-Upload/blob/master/application.js) as well as the explanation of all [files in the repository](https://github.com/blueimp/jQuery-File-Upload/wiki/Plugin-files).
-
-## Browser Support (tested versions)
-* Google Chrome - 7.0+
-* Apple Safari - 4.0+
-* Mozilla Firefox - 3.0+
-* Opera - 10.0+
-* Microsoft Internet Explorer 6.0+
-
-Drag & Drop is only supported on Google Chrome, Firefox 4.0+ and Safari 5.0+.
-Microsoft Internet Explorer has no support for multiple file selection or upload progress.
-[Extended browser support information](https://github.com/blueimp/jQuery-File-Upload/wiki/Browser-support).
-
-## License
-Released under the [MIT license](http://www.opensource.org/licenses/MIT).
diff --git a/thirdparty/jquery-fileupload/jquery.fileupload-ui.js b/thirdparty/jquery-fileupload/jquery.fileupload-ui.js
index 43127feee..5f4f71b68 100644
--- a/thirdparty/jquery-fileupload/jquery.fileupload-ui.js
+++ b/thirdparty/jquery-fileupload/jquery.fileupload-ui.js
@@ -31,7 +31,7 @@
// The maximum allowed file size:
maxFileSize: undefined,
// The minimum allowed file size:
- minFileSize: 0,
+ minFileSize: 1,
// The regular expression for allowed file types, matches
// against either file type or file name:
acceptFileTypes: /.+$/i,
diff --git a/thirdparty/jquery-fileupload/package.json b/thirdparty/jquery-fileupload/package.json
deleted file mode 100644
index 8f60ef446..000000000
--- a/thirdparty/jquery-fileupload/package.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "name": "blueimp-file-upload",
- "version": "6.0.3",
- "title": "jQuery File Upload",
- "description": "File Upload widget with multiple file selection, drag&drop support, progress bar and preview images for jQuery. Supports cross-domain, chunked and resumable file uploads. Works with any server-side platform (Google App Engine, PHP, Python, Ruby on Rails, Java, etc.) that supports standard HTML form file uploads.",
- "keywords": [
- "file",
- "upload",
- "widget",
- "multiple",
- "selection",
- "drag",
- "drop",
- "progress",
- "preview",
- "cross-domain",
- "cross-site",
- "chunked",
- "resume",
- "gae",
- "go",
- "python",
- "php"
- ],
- "homepage": "https://github.com/blueimp/jQuery-File-Upload",
- "author": {
- "name": "Sebastian Tschan",
- "url": "https://blueimp.net"
- },
- "maintainers": [
- {
- "name": "Sebastian Tschan",
- "url": "https://blueimp.net"
- }
- ],
- "repository": {
- "type": "git",
- "url": "git://github.com/blueimp/jQuery-File-Upload.git"
- },
- "bugs": "https://github.com/blueimp/jQuery-File-Upload/issues",
- "licenses": [
- {
- "type": "MIT",
- "url": "http://www.opensource.org/licenses/MIT"
- }
- ],
- "dependencies": {
- "jquery": ">=1.6",
- "jquery.ui.widget": ">=1.8",
- "blueimp-load-image": ">=1.1.3",
- "blueimp-tmpl": ">=1.0.2"
- },
- "files": [
- "jquery.iframe-transport.js",
- "jquery.fileupload.js",
- "jquery.fileupload-ui.js",
- "jquery.fileupload-ui.css",
- "progressbar.gif"
- ]
-}