o: ActiveSupport::Cache::Entry :@compressedF:@created_atf1359319053.9004438:@expires_in0: @value"`{I" class:EFI"BundledAsset;FI"logical_path;FI"#anjlab/uploads/handler.base.js;TI" pathname;FI"Z/Users/yury/Work/uploads/app/assets/javascripts/anjlab/uploads/handler.base.js.coffee;TI"content_type;FI"application/javascript;FI" mtime;FI"2013-01-28T00:35:27+04:00;FI" length;FiwI" digest;F"%f896ee41ad62b02b43fb2aa2eb1234e8I" source;FI"w(function() { var utils; utils = this.AnjLab.Uploads.Utils; this.AnjLab.Uploads.UploadHandler = (function() { function UploadHandler(options) { this.options = options; this.queue = []; this.log = options.log; } UploadHandler.create = function(options) { var opts; opts = $.extend(true, {}, $.fn.uploadHandlerDefaults, options); if (utils.isXhrUploadSupported()) { return new AnjLab.Uploads.UploadHandlerXhr(opts); } else { return new AnjLab.Uploads.UploadHandlerForm(opts); } }; UploadHandler.prototype.dequeue = function(id) { var i, max, nextId; i = $.inArray(id, this.queue); max = this.options.maxConnections; this.queue.splice(i, 1); if (this.queue.length >= max && i < max) { nextId = this.queue[max - 1]; return this.uploadFile(nextId); } }; UploadHandler.prototype.upload = function(id) { if (this.queue.push(id) <= this.options.maxConnections) { return this.uploadFile(id); } }; UploadHandler.prototype.retry = function(id) { if ($.inArray(id, this.queue) >= 0) { return this.uploadFile(id, true); } else { return this.upload(id); } }; UploadHandler.prototype.cancel = function(id) { this.log("Cancelling " + id); this.options.paramsStore.remove(id); this.cancelFile(id); return this.dequeue(id); }; UploadHandler.prototype.cancelAll = function() { var fileId, _i, _len, _ref; _ref = this.queue; for (_i = 0, _len = _ref.length; _i < _len; _i++) { fileId = _ref[_i]; this.cancel(fileId); } return this.queue = []; }; UploadHandler.prototype.getQueue = function() { return this.queue; }; UploadHandler.prototype.reset = function() { this.log('Resetting upload handler'); return this.queue = []; }; UploadHandler.prototype.uploadComplete = function(id) { return this.dequeue(id); }; UploadHandler.prototype.add = function(file) { return this.log('Not implemented'); }; UploadHandler.prototype.uploadFile = function(id, m) { return this.log('Not implemented'); }; UploadHandler.prototype.cancelFile = function(id) { return this.log('Not implemented'); }; UploadHandler.prototype.getName = function(id) { return this.log('Not implemented'); }; UploadHandler.prototype.getUuid = function(id) { return this.log('Not implemented'); }; UploadHandler.prototype.isValid = function(id) { return this.log('Not implemented'); }; UploadHandler.prototype.getSize = function(id) { return null; }; UploadHandler.prototype.getFile = function(id) { return null; }; UploadHandler.prototype.getResumableFilesData = function() { return []; }; return UploadHandler; })(); $.fn.uploadHandlerDefaults = { debug: false, forceMultipart: true, paramsStore: {}, endpointStore: {}, maxConnections: 3, uuidParamName: 'qquuid', totalFileSizeParamName: 'qqtotalfilesize', chunking: { enabled: false, partSize: 2000000, paramNames: { partIndex: 'qqpartindex', partByteOffset: 'qqpartbyteoffset', chunkSize: 'qqchunksize', totalParts: 'qqtotalparts', filename: 'qqfilename' } }, resume: { enabled: false, id: null, cookiesExpireIn: 7, paramNames: { resuming: "qqresume" } }, log: function(str, level) { return null; }, onProgress: function(id, fileName, loaded, total) { return null; }, onComplete: function(id, fileName, response, xhr) { return null; }, onCancel: function(id, fileName) { return null; }, onUpload: function(id, fileName) { return null; }, onUploadChunk: function(id, fileName, chunkData) { return null; }, onAutoRetry: function(id, fileName, response, xhr) { return null; }, onResume: function(id, fileName, chunkData) { return null; } }; }).call(this); ;FI"required_assets_digest;F"%59aadaf1f146b823dd320c6bbe3fd747I" _version;F"%6776f581a4329e299531e1d52aa59832