Sha256: 99b4b07688d26c42bdf4c721d0f88e930af853d4f5d0db47870281951a84e82a

Contents?: true

Size: 1.31 KB

Versions: 1

Compression:

Stored size: 1.31 KB

Contents

Volontariat.CommunityPersistence = Em.Mixin.create
  organizations: []
  
  actions:
    
    save: ->
      $.ajax(
        type: if @get('slug') then 'PUT' else 'POST'
        url: '/api/v1/communities' + if @get('slug') then "/#{@get('slug')}" else '', 
        data: { 
          community: { 
            organization_id: $('#community_organization_id').val(), name: $('#community_name').val(), 
            text: $('#community_text').val() 
          } 
        }
      ).success((data) =>
        if data.errors
          Volontariat.alert 'danger', "#{Volontariat.t('communities.save.failed')}: #{JSON.stringify(data.errors)}"
        else
          @transitionToRoute 'community.feedbacks', data.community.slug, 1
          Volontariat.alert 'success', Volontariat.t('communities.save.successful')
      ).fail((data) =>
        Volontariat.alert 'danger', "#{Volontariat.t('communities.save.failed')}!"
      )
      
    destroy: (slug)  ->
      if confirm(Volontariat.t('communities.destroy.confirmation'))
        $.ajax("/api/v1/communities/#{slug}", type: 'DELETE').done((data) =>
          @transitionToRoute 'no_data'
          @transitionToRoute 'communities', 1 
        ).fail((data) ->
          Volontariat.alert 'danger', Volontariat.t('activerecord.errors.models.community.attributes.base.deletion_failed')
        ) 

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
voluntary_feedback-0.1.0 app/assets/javascripts/voluntary_feedback/mixins/community_persistence.js.coffee