Sha256: 13edfb427ddbd1142c7b2c7f2bf128c489016a7090bbbb4f0fc91669f02027ca

Contents?: true

Size: 1.2 KB

Versions: 4

Compression:

Stored size: 1.2 KB

Contents

pageflow.externalLinks.SiteSelectionView = Backbone.Marionette.ItemView.extend({
  className: 'external_site_selection dialog editor',
  template: 'pageflow/external_links/editor/templates/site_selection',

  mixins: [pageflow.dialogView],

  ui: {
    items: 'ul'
  },

  onRender: function() {
    var view = this;

    pageflow.externalLinks.sites.ensureFetched();

    this.subview(new pageflow.CollectionView({
      el: this.ui.items,
      collection: pageflow.externalLinks.sites,
      itemViewConstructor: pageflow.externalLinks.SiteItemView,
      itemViewOptions: {
        selectionHandler: function() {
          view.options.onSelect(this);
          view.close();
        }
      },
      blankSlateViewConstructor: Backbone.Marionette.ItemView.extend({
        template: 'pageflow/external_links/editor/templates/sites_blank_slate'
      })
    }));
  }
});

pageflow.externalLinks.SiteSelectionView.selectSite = function() {
  return $.Deferred(function(deferred) {
    var view = new pageflow.externalLinks.SiteSelectionView({
      onSelect: deferred.resolve
    });

    view.on('close', function() {
      deferred.reject();
    });

    pageflow.app.dialogRegion.show(view.render());
  }).promise();
};

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
pageflow-external-links-2.6.0 app/assets/javascripts/pageflow/external_links/editor/views/site_selection_view.js
pageflow-external-links-2.5.0 app/assets/javascripts/pageflow/external_links/editor/views/site_selection_view.js
pageflow-external-links-2.4.1 app/assets/javascripts/pageflow/external_links/editor/views/site_selection_view.js
pageflow-external-links-2.4.0 app/assets/javascripts/pageflow/external_links/editor/views/site_selection_view.js