+++ /dev/null
-// © 2013 Benoît Pin MINES ParisTech
-
-var DDImageUploader;
-var MAX_PREVIEW = 2; // à virer
-
-(function(){
-// nombre maximun d'image chargées en local
-var MAX_PREVIEW = 2;
-var isThumbnail = /.*\/getThumbnail$/;
-
-DDImageUploader = function(dropbox, uploadUrl) {
- DDFileUploaderBase.apply(this, [dropbox, uploadUrl]);
-
- this.existingSlides = this.indexExistingSlides();
- this.slideSize = 222;
- this.progressBarMaxSize = 200; // pixels
- this.thumbnailSize = 180;
- this.previewQueue = [];
- this._previewQueueRunning = false;
- this.previewsLoaded = 0;
-};
-
-copyPrototype(DDImageUploader, DDFileUploaderBase);
-
-DDImageUploader.prototype.indexExistingSlides = function() {
- var images = this.dropbox.getElementsByTagName('img');
- var i;
- var index = [];
- for (i=0 ; i < images.length ; i++) {
- if (isThumbnail.test(images[i].src)) {
- index[images[i].src] = images[i]; }
- }
- return index;
-};
-
-// Methods about upload.
-DDImageUploader.prototype.handleFiles = function(files) {
- var file, i, slide;
- for (i = 0; i < files.length; i++) {
- file = files[i];
- slide = this.createSlide(file);
- this.previewQueuePush(slide);
- this.uploadQueuePush(slide);
- }
-};
-
-
-// Methods about preview queue.
-DDImageUploader.prototype.previewQueuePush = function(slide) {
- this.previewQueue.push(slide);
- if (!this._previewQueueRunning) {
- this.startPreviewQueue();
- }
-};
-
-DDImageUploader.prototype.startPreviewQueue = function() {
- this._previewQueueRunning = true;
- this.previewQueueLoadNext();
-};
-
-DDImageUploader.prototype.previewQueueLoadNext = function() {
- if (this.previewQueue.length && this.previewsLoaded < MAX_PREVIEW) {
- var slide = this.previewQueue.shift();
- this.previewUploadedImage(slide);
- this.previewsLoaded++;
- }
- else {
- this._previewQueueRunning = false;
- }
-};
-
-
-
-}());
\ No newline at end of file