diff options
Diffstat (limited to 'www/js/shows.js')
-rw-r--r-- | www/js/shows.js | 41 |
1 files changed, 36 insertions, 5 deletions
diff --git a/www/js/shows.js b/www/js/shows.js index 1ba86b9..b910bdb 100644 --- a/www/js/shows.js +++ b/www/js/shows.js @@ -203,7 +203,12 @@ Rivendell.ShowView.prototype.render = function() { if (cart) { var cartView = new Rivendell.ShowCartView(cart, self); self.cartViews.push(cartView); - cartView.render(); + var upload = null; + if ((upload = importer.getUploadByCartId(log.cartNumber)) !== null) { + cartView.renderUploading(upload); + } else { + cartView.render(); + } $('#app-shows table > tbody').append(cartView.$el); } else { @@ -230,11 +235,11 @@ Rivendell.ShowView.prototype.uploadProgress = function(upload, file) { $cart.addClass('uploading'); } - if(file.upload.progress < 99) { - var bytes_str = Number((file.upload.bytesSent/1024)/1024).toFixed(1) + " von " + - Number((file.upload.total/1024)/1024).toFixed(1) + " MB"; + if(upload.uploadprogress.progress < 99) { + var bytes_str = Number((upload.uploadprogress.bytesSent/1024)/1024).toFixed(1) + " von " + + Number((upload.uploadprogress.total/1024)/1024).toFixed(1) + " MB"; $cart.find('.file-bytes').text(bytes_str); - $cart.find('.progress .progress-bar').css("width", file.upload.progress + "%"); + $cart.find('.progress .progress-bar').css("width", upload.uploadprogress.progress + "%"); } else { $cart.find('.file-bytes').text('importiere...'); $cart.find('.progress .progress-bar').css('width', '100%'); @@ -313,6 +318,32 @@ Rivendell.ShowCartView.prototype.render = function() { .append($('<td>').css('text-align', 'center').append($deleteButton)); }; +Rivendell.ShowCartView.prototype.renderUploading = function(upload) { + var $progressBar = $('.progressBarTemplate.shows').clone().removeClass('progressBarTemplate'); + $('.file-name', $progressBar).text(this.model.title); + $('.cart-number', $progressBar).text(this.model.number); + + this.$el.empty() + .html($progressBar.html()) + .attr('id', 'show-cart-' + this.model.number) + .addClass('uploading'); + + $('button', this.$el).on('click', function() { + upload.cancel(); + }); + + if(upload.uploadprogress.progress < 99) { + var bytes_str = Number((upload.uploadprogress.bytesSent/1024)/1024).toFixed(1) + " von " + + Number((upload.uploadprogress.total/1024)/1024).toFixed(1) + " MB"; + this.$el.find('.file-bytes').text(bytes_str); + this.$el.find('.progress .progress-bar').css("width", upload.uploadprogress.progress + "%"); + } else { + this.$el.find('.file-bytes').text('importiere...'); + this.$el.find('.progress .progress-bar').css('width', '100%'); + this.$el.find('.progress .progress-bar').addClass('progress-bar-striped').addClass('active'); + } +}; + Rivendell.ShowCartView.renderEmpty = function(group, groupView, cartNumber) { var $uploadButton = $('<button class="uploadButton btn btn-primary btn-xs"><span class="glyphicon glyphicon-upload"></span> Importieren</button>'); |