Sha256: b1b773565391f64296f62ee795668b781a16bf2833062b4b8f84eeb002f11bbf

Contents?: true

Size: 1.02 KB

Versions: 4

Compression:

Stored size: 1.02 KB

Contents

HAL.Views.Resource = Backbone.View.extend({
  initialize: function(opts) {
    var self = this;

    this.vent = opts.vent;

    this.vent.bind('response', function(e) {
      self.render(new HAL.Models.Resource(e.resource));
    });

    this.vent.bind('fail-response', function(e) {
      self.vent.trigger('response', { resource: null, jqxhr: e.jqxhr });
    });
  },

  className: 'resource',

  render: function(resource) {
    var linksView = new HAL.Views.Links({ vent: this.vent }),
        propertiesView = new HAL.Views.Properties({ vent: this.vent }),
        embeddedResourcesView 

    propertiesView.render(resource.toJSON());
    linksView.render(resource.links);

    this.$el.empty();
    this.$el.append(propertiesView.el);
    this.$el.append(linksView.el);

    if (resource.embeddedResources) {
      embeddedResourcesView = new HAL.Views.EmbeddedResources({ vent: this.vent });
      embeddedResourcesView.render(resource.embeddedResources);
      this.$el.append(embeddedResourcesView.el);
    }

    return this;
  }
});

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
pact_broker-1.0.0 vendor/hal-browser/js/hal/views/resource.js
pact_broker-1.0.0.alpha3 vendor/hal-browser/js/hal/views/resource.js
pact_broker-1.0.0.alpha2 vendor/hal-browser/js/hal/views/resource.js
pact_broker-1.0.0.alpha1 vendor/hal-browser/js/hal/views/resource.js