Sha256: 33809faafe2b6446e2289561e687aea79766f16e5491e19094bab4e162723c6f

Contents?: true

Size: 1.83 KB

Versions: 5

Compression:

Stored size: 1.83 KB

Contents

class Tawork.Views.AttachmentView extends Backbone.View
  events: 
    'click .delete': 'delete_attachment'

  initialize: (options = {}) ->
    @attachment_id = @$el.data("attachment-id")
    @setup_uploader()

  delete_attachment: ->
    self = this
    if confirm("Are you sure you want to delete this file?")
      $.ajax
        method: "DELETE"
        url: "/attachments/#{@attachment_id}"
        success: (data) ->
          self.remove()
    false

  setup_uploader: ->
    uploader = new plupload.Uploader(
      runtimes: "html5"
      browse_button: "upload_attachment_#{@attachment_id}" # you can pass in id...
      container: document.getElementById("attachments") # ... or DOM Element itself
      url: "/attachments/#{@attachment_id}/upload"
      filters:
        max_file_size: "50mb"
      multipart_params:
        authenticity_token: $("meta[name=csrf-token]").attr('content')

      init:
        PostInit: ->
          $("#filelist").html("")
          # document.getElementById("uploadfiles").onclick = ->
          #   uploader.start()
          #   false

        FilesAdded: (up, files) ->
          plupload.each files, (file) ->
            $template = $($("#upload_template").clone().html())
            $template.attr("id", file.id).find(".filename").text(file.name + "(#{plupload.formatSize(file.size)})")
            $("#filelist").append $template
          uploader.start()


        UploadProgress: (up, file) ->
          $("##{file.id}").find(".bar").css(width: "#{file.percent}%")

        FileUploaded: (up, file, response) ->
          try
            $("##{file.id}").fadeOut complete: ->
              eval response.response
          catch err
            console.log err

        Error: (up, err) ->
          document.getElementById("console").innerHTML += "\nError #" + err.code + ": " + err.message
    )

    uploader.init()

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
tawork-0.0.10 app/assets/javascripts/backbone/views/attachment.js.coffee
tawork-0.0.9 app/assets/javascripts/backbone/views/attachment.js.coffee
tawork-0.0.8 app/assets/javascripts/backbone/views/attachment.js.coffee
tawork-0.0.7 app/assets/javascripts/backbone/views/attachment.js.coffee
tawork-0.0.6 app/assets/javascripts/backbone/views/attachment.js.coffee