From 24902841216ac6d24605d6b4530f0ffd5ee60386 Mon Sep 17 00:00:00 2001
From: Sebastian Tschan
Date: Thu, 1 Aug 2013 19:20:41 -0500
Subject: [PATCH 001/525] Fixed cross-domain iFrame Transport settings.
---
js/app.js | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/js/app.js b/js/app.js
index 0475ab453..60a3fed49 100644
--- a/js/app.js
+++ b/js/app.js
@@ -1,5 +1,5 @@
/*
- * jQuery File Upload Plugin Angular JS Example 1.2.0
+ * jQuery File Upload Plugin Angular JS Example 1.2.1
* https://github.com/blueimp/jQuery-File-Upload
*
* Copyright 2013, Sebastian Tschan
@@ -24,9 +24,13 @@
.config([
'$httpProvider', 'fileUploadProvider',
function ($httpProvider, fileUploadProvider) {
+ delete $httpProvider.defaults.headers.common['X-Requested-With'];
+ fileUploadProvider.defaults.redirect = window.location.href.replace(
+ /\/[^\/]*$/,
+ '/cors/result.html?%s'
+ );
if (isOnGitHub) {
// Demo settings:
- delete $httpProvider.defaults.headers.common['X-Requested-With'];
angular.extend(fileUploadProvider.defaults, {
// Enable image resizing, except for Android and Opera,
// which actually support image resizing, but fail to
@@ -42,12 +46,12 @@
.controller('DemoFileUploadController', [
'$scope', '$http', '$filter', '$window',
- function ($scope, $http, $filter, $window) {
+ function ($scope, $http) {
+ $scope.options = {
+ url: url
+ };
if (!isOnGitHub) {
$scope.loadingFiles = true;
- $scope.options = {
- url: url
- };
$http.get(url)
.then(
function (response) {
From 995f0ef38b21c7f1cd1cb833ad4655515df4060d Mon Sep 17 00:00:00 2001
From: Sebastian Tschan
Date: Thu, 1 Aug 2013 19:39:30 -0500
Subject: [PATCH 002/525] Added an updated jQuery UI example implementation.
---
README.md | 31 ++--
angularjs.html | 3 +-
basic-plus.html | 3 +-
basic.html | 3 +-
blueimp-file-upload.jquery.json | 2 +-
bower.json | 8 +-
css/demo.css | 67 ++++++++
index.html | 7 +-
jquery-ui.html | 249 ++++++++++++++++++++++++++++++
js/jquery.fileupload-jquery-ui.js | 138 +++++++++++++++++
package.json | 8 +-
11 files changed, 495 insertions(+), 24 deletions(-)
create mode 100644 css/demo.css
create mode 100644 jquery-ui.html
create mode 100755 js/jquery.fileupload-jquery-ui.js
diff --git a/README.md b/README.md
index 78266ec19..1f59e45eb 100644
--- a/README.md
+++ b/README.md
@@ -57,24 +57,37 @@ Please read the [issue guidelines](https://github.com/blueimp/jQuery-File-Upload
Works with any server-side platform (PHP, Python, Ruby on Rails, Java, Node.js, Go etc.) that supports standard HTML form file uploads.
## Requirements
+
+### Mandatory requirements
* [jQuery](http://jquery.com/) v. 1.6+
* [jQuery UI widget factory](http://api.jqueryui.com/jQuery.widget/) v. 1.9+ (included)
* [jQuery Iframe Transport plugin](https://github.com/blueimp/jQuery-File-Upload/blob/master/js/jquery.iframe-transport.js) (included)
-* [JavaScript Templates engine](https://github.com/blueimp/JavaScript-Templates) v. 2.2.1+ (optional)
-* [JavaScript Load Image function](https://github.com/blueimp/JavaScript-Load-Image) v. 1.7.3+ (optional)
-* [JavaScript Canvas to Blob function](https://github.com/blueimp/JavaScript-Canvas-to-Blob) v. 2.0.6+ (optional)
-* [Bootstrap CSS Toolkit](https://github.com/twitter/bootstrap/) v. 2.3+ (optional)
-The jQuery UI widget factory is a requirement for the basic File Upload plugin, but very lightweight without any other dependencies.
-The jQuery Iframe Transport is required for [browsers without XHR file upload support](https://github.com/blueimp/jQuery-File-Upload/wiki/Browser-support).
-The UI version of the File Upload plugin also requires the JavaScript Templates engine as well as the JavaScript Load Image and JavaScript Canvas to Blob functions (for the image previews and resizing functionality). 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 jQuery UI widget factory is a requirement for the basic File Upload plugin, but very lightweight without any other dependencies from the jQuery UI suite.
+
+The jQuery Iframe Transport is required for [browsers without XHR file upload support](https://github.com/blueimp/jQuery-File-Upload/wiki/Browser-support).
+
+### Optional requirements
+* [JavaScript Templates engine](https://github.com/blueimp/JavaScript-Templates) v. 2.3.0+
+* [JavaScript Load Image library](https://github.com/blueimp/JavaScript-Load-Image) v. 1.9.1+
+* [JavaScript Canvas to Blob polyfill](https://github.com/blueimp/JavaScript-Canvas-to-Blob) v. 2.0.7+
+* [blueimp Gallery](https://github.com/blueimp/Gallery) v. 2.7.1+
+* [Bootstrap CSS Toolkit](https://github.com/twitter/bootstrap/) v. 2.3
-The User Interface is built with Twitter's [Bootstrap](https://github.com/twitter/bootstrap/) Toolkit. This enables a CSS based, responsive layout and fancy transition effects on modern browsers. The demo also includes the [blueimp Gallery](https://github.com/blueimp/Gallery). Both of these components are optional and not required.
+The JavaScript Templates engine is used to render the selected and uploaded files for the Basic Plus UI and jQuery UI versions.
-The repository also includes the [jQuery XDomainRequest Transport plugin](https://github.com/blueimp/jQuery-File-Upload/blob/master/js/cors/jquery.xdr-transport.js), which enables Cross-domain AJAX requests (GET and POST only) in Microsoft Internet Explorer >= 8. However, the XDomainRequest object doesn't support file uploads and the plugin is only used by the [Demo](http://blueimp.github.io/jQuery-File-Upload/) for Cross-domain requests to delete uploaded files from the demo file upload service.
+The JavaScript Load Image library and JavaScript Canvas to Blob polyfill are required for the image previews and resizing functionality.
+The blueimp Gallery is used to display the uploaded images in a lightbox.
+
+The user interface of all versions except the jQuery UI version is built with Twitter's [Bootstrap](https://github.com/twitter/bootstrap/) Toolkit.
+
+### Cross-domain requirements
[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/js/jquery.iframe-transport.js) require a redirect back to the origin server to retrieve the upload results. The [example implementation](https://github.com/blueimp/jQuery-File-Upload/blob/master/js/main.js) makes use of [result.html](https://github.com/blueimp/jQuery-File-Upload/blob/master/cors/result.html) as a static redirect page for the origin server.
+The repository also includes the [jQuery XDomainRequest Transport plugin](https://github.com/blueimp/jQuery-File-Upload/blob/master/js/cors/jquery.xdr-transport.js), which enables limited cross-domain AJAX requests in Microsoft Internet Explorer 8 and 9 (IE 10 supports cross-domain XHR requests).
+The XDomainRequest object allows GET and POST requests only and doesn't support file uploads. It is used on the [Demo](http://blueimp.github.io/jQuery-File-Upload/) to delete uploaded files from the cross-domain demo file upload service.
+
## Browsers
### Desktop browsers
diff --git a/angularjs.html b/angularjs.html
index ff4cf7973..b0655dc1f 100644
--- a/angularjs.html
+++ b/angularjs.html
@@ -70,6 +70,7 @@ AngularJS version
Basic Plus
Basic Plus UI
AngularJS
+ jQuery UI
File Upload widget with multiple file selection, drag&drop support, progress bars, validation and preview images, audio and video for AngularJS.
@@ -156,7 +157,7 @@
Demo Notes
The maximum file size for uploads in this demo is 5 MB (default file size is unlimited).
Only image files (JPG, GIF, PNG) are allowed in this demo (by default there is no file type restriction).
Uploaded files will be deleted automatically after 5 minutes (demo setting).
- You can drag & drop files from your desktop on this webpage with Google Chrome, Mozilla Firefox and Apple Safari.
+ You can drag & drop files from your desktop on this webpage (see Browser support).
Please refer to the project website and documentation for more information.
Built with Twitter's Bootstrap toolkit and Icons from Glyphicons.
diff --git a/basic-plus.html b/basic-plus.html
index a5a8903db..a104fd291 100644
--- a/basic-plus.html
+++ b/basic-plus.html
@@ -62,6 +62,7 @@ Basic Plus version
Basic Plus
Basic Plus UI
AngularJS
+ jQuery UI
File Upload widget with multiple file selection, drag&drop support, progress bar, validation and preview images, audio and video for jQuery.
@@ -91,7 +92,7 @@
Demo Notes
The maximum file size for uploads in this demo is 5 MB (default file size is unlimited).
Only image files (JPG, GIF, PNG) are allowed in this demo (by default there is no file type restriction).
Uploaded files will be deleted automatically after 5 minutes (demo setting).
- You can drag & drop files from your desktop on this webpage with Google Chrome, Mozilla Firefox and Apple Safari.
+ You can drag & drop files from your desktop on this webpage (see Browser support).
Please refer to the project website and documentation for more information.
Built with Twitter's Bootstrap toolkit and Icons from Glyphicons.
diff --git a/basic.html b/basic.html
index b72ad05ee..ee9205949 100644
--- a/basic.html
+++ b/basic.html
@@ -62,6 +62,7 @@ Basic version
Basic Plus
Basic Plus UI
AngularJS
+ jQuery UI
File Upload widget with multiple file selection, drag&drop support and progress bar for jQuery.
@@ -91,7 +92,7 @@
Demo Notes
The maximum file size for uploads in this demo is 5 MB (default file size is unlimited).
Only image files (JPG, GIF, PNG) are allowed in this demo (by default there is no file type restriction).
Uploaded files will be deleted automatically after 5 minutes (demo setting).
- You can drag & drop files from your desktop on this webpage with Google Chrome, Mozilla Firefox and Apple Safari.
+ You can drag & drop files from your desktop on this webpage (see Browser support).
Please refer to the project website and documentation for more information.
Built with Twitter's Bootstrap toolkit and Icons from Glyphicons.
diff --git a/blueimp-file-upload.jquery.json b/blueimp-file-upload.jquery.json
index 2dd5ef625..fd5d203de 100644
--- a/blueimp-file-upload.jquery.json
+++ b/blueimp-file-upload.jquery.json
@@ -1,6 +1,6 @@
{
"name": "blueimp-file-upload",
- "version": "8.6.1",
+ "version": "8.7.0",
"title": "jQuery File Upload",
"author": {
"name": "Sebastian Tschan",
diff --git a/bower.json b/bower.json
index 65545b6e2..5d26a9049 100644
--- a/bower.json
+++ b/bower.json
@@ -1,6 +1,6 @@
{
"name": "blueimp-file-upload",
- "version": "8.6.1",
+ "version": "8.7.0",
"title": "jQuery File Upload",
"description": "File Upload widget with multiple file selection, drag&drop support, progress bar, validation and preview images, audio and video 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": [
@@ -48,9 +48,9 @@
],
"dependencies": {
"jquery": ">=1.6",
- "blueimp-tmpl": ">=2.2.1",
- "blueimp-load-image": ">=1.7.3",
- "blueimp-canvas-to-blob": ">=2.0.6"
+ "blueimp-tmpl": ">=2.3.0",
+ "blueimp-load-image": ">=1.9.1",
+ "blueimp-canvas-to-blob": ">=2.0.7"
},
"main": [
"js/vendor/jquery.ui.widget.js",
diff --git a/css/demo.css b/css/demo.css
new file mode 100644
index 000000000..1721fcf74
--- /dev/null
+++ b/css/demo.css
@@ -0,0 +1,67 @@
+@charset "UTF-8";
+/*
+ * jQuery File Upload Demo CSS 1.0
+ * https://github.com/blueimp/jQuery-File-Upload
+ *
+ * Copyright 2013, Sebastian Tschan
+ * https://blueimp.net
+ *
+ * Licensed under the MIT license:
+ * http://www.opensource.org/licenses/MIT
+ */
+
+body {
+ max-width: 750px;
+ margin: 0 auto;
+ padding: 1em;
+ font-family: 'Lucida Grande', 'Lucida Sans Unicode', Arial, sans-serif;
+ font-size: 1em;
+ line-height: 1.4em;
+ background: #222;
+ color: #fff;
+ -webkit-text-size-adjust: 100%;
+ -ms-text-size-adjust: 100%;
+}
+a {
+ color: orange;
+ text-decoration: none;
+}
+img {
+ border: 0;
+ vertical-align: middle;
+}
+h1 {
+ line-height: 1em;
+}
+blockquote {
+ padding: 0 0 0 15px;
+ margin: 0 0 20px;
+ border-left: 5px solid #eee;
+}
+table {
+ width: 100%;
+ margin: 10px 0;
+}
+
+.fileupload-progress {
+ margin: 10px 0;
+}
+.fileupload-progress .progress-extended {
+ margin-top: 5px;
+}
+.error {
+ color: red;
+}
+
+@media (min-width: 481px) {
+ .navigation {
+ list-style: none;
+ padding: 0;
+ }
+ .navigation li {
+ display: inline-block;
+ }
+ .navigation li:not(:first-child):before {
+ content: '| ';
+ }
+}
diff --git a/index.html b/index.html
index c99b96db3..4d6f2e576 100644
--- a/index.html
+++ b/index.html
@@ -70,6 +70,7 @@ Basic Plus UI version
Basic Plus
Basic Plus UI
AngularJS
+ jQuery UI
File Upload widget with multiple file selection, drag&drop support, progress bars, validation and preview images, audio and video for jQuery.
@@ -126,7 +127,7 @@
Demo Notes
The maximum file size for uploads in this demo is 5 MB (default file size is unlimited).
Only image files (JPG, GIF, PNG) are allowed in this demo (by default there is no file type restriction).
Uploaded files will be deleted automatically after 5 minutes (demo setting).
- You can drag & drop files from your desktop on this webpage with Google Chrome, Mozilla Firefox and Apple Safari.
+ You can drag & drop files from your desktop on this webpage (see Browser support).
Please refer to the project website and documentation for more information.
Built with Twitter's Bootstrap toolkit and Icons from Glyphicons.
@@ -241,8 +242,8 @@
-
-
+
+
+jQuery File Upload Demo
+jQuery UI version
+
+
+
+ File Upload widget with multiple file selection, drag&drop support, progress bars, validation and preview images, audio and video for jQuery UI.
+ Supports cross-domain, chunked and resumable file uploads and client-side image resizing.
+ Works with any server-side platform (PHP, Python, Ruby on Rails, Java, Node.js, Go etc.) that supports standard HTML form file uploads.
+
+
+
+
+Demo Notes
+
+ - The maximum file size for uploads in this demo is 5 MB (default file size is unlimited).
+ - Only image files (JPG, GIF, PNG) are allowed in this demo (by default there is no file type restriction).
+ - Uploaded files will be deleted automatically after 5 minutes (demo setting).
+ - You can drag & drop files from your desktop on this webpage (see Browser support).
+ - Please refer to the project website and documentation for more information.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/jquery-ui.html b/jquery-ui.html
new file mode 100644
index 000000000..2b3846149
--- /dev/null
+++ b/jquery-ui.html
@@ -0,0 +1,249 @@
+
+
+
+