Sha256: 049f5ee06e77ed7f83ab21fd2694330f0a58e14a2e7f76170b65f305497019d9

Contents?: true

Size: 1.75 KB

Versions: 34

Compression:

Stored size: 1.75 KB

Contents

pageflow.BackgroundPositioningView = Backbone.Marionette.ItemView.extend({
  template: 'templates/background_positioning',
  className: 'background_positioning dialog',

  mixins: [pageflow.dialogView],

  ui: {
    previews: '.previews > div',
    wrapper: '.wrapper',
  },

  previews: {
    ratio16to9: 16 / 9,
    ratio16to9Portrait: 9 / 16,
    ratio4to3: 4 / 3,
    ratio4to3Portrait: 3 / 4,
    banner: 5 / 1
  },

  events: {
    'click .save': function() {
      this.save();
      this.close();
    }
  },

  initialize: function() {
    this.transientModel = this.model.clone();
  },

  onRender: function() {
    this.ui.wrapper.append(this.subview(new pageflow.BackgroundPositioningSlidersView({
      model: this.transientModel,
      propertyName: this.options.propertyName,
      filesCollection: this.options.filesCollection
    })).el);

    this.createPreviews();
  },

  save: function() {
    this.model.setFilePositions(
      this.options.propertyName,
      this.transientModel.getFilePosition(this.options.propertyName, 'x'),
      this.transientModel.getFilePosition(this.options.propertyName, 'y')
    );
  },

  createPreviews: function() {
    var view = this;

    _.each(view.previews, function(ratio, name) {
      view.ui.previews.append(view.subview(new pageflow.BackgroundPositioningPreviewView({
        model: view.transientModel,
        propertyName: view.options.propertyName,
        filesCollection: view.options.filesCollection,
        ratio: ratio,
        maxSize: 200,
        label: I18n.t('pageflow.editor.templates.background_positioning.previews.' + name)
      })).el);
    });
  }
});

pageflow.BackgroundPositioningView.open = function(options) {
  pageflow.app.dialogRegion.show(new pageflow.BackgroundPositioningView(options).render());
};

Version data entries

34 entries across 34 versions & 1 rubygems

Version Path
pageflow-13.0.0.beta5 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-13.0.0.beta4 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-13.0.0.beta3 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-13.0.0.beta2 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-13.0.0.beta1 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.2.0 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.1.0 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.4 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.3 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.2 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.1 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.0 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.0.rc7 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.0.rc6 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-0.11.4 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.0.rc5 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.0.rc4 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.0.rc3 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.0.rc2 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js
pageflow-12.0.0.rc1 app/assets/javascripts/pageflow/editor/views/background_positioning_view.js