Browse Source

Start map component

pull/36/head
Artur Arseniev 9 years ago
parent
commit
907a6e6aa0
  1. 12
      src/dom_components/main.js
  2. 19
      src/dom_components/model/ComponentMap.js
  3. 12
      src/dom_components/model/Components.js
  4. 4
      src/dom_components/view/ComponentImageView.js
  5. 15
      src/dom_components/view/ComponentMapView.js
  6. 5
      src/dom_components/view/ComponentsView.js
  7. 8
      src/editor/config/config.js
  8. 1
      src/trait_manager/view/TraitView.js

12
src/dom_components/main.js

@ -41,9 +41,11 @@ define(function(require) {
ComponentText = require('./model/ComponentText'), ComponentText = require('./model/ComponentText'),
ComponentImage = require('./model/ComponentImage'), ComponentImage = require('./model/ComponentImage'),
ComponentLink = require('./model/ComponentLink'), ComponentLink = require('./model/ComponentLink'),
ComponentMap = require('./model/ComponentMap'),
ComponentView = require('./view/ComponentView'), ComponentView = require('./view/ComponentView'),
ComponentImageView = require('./view/ComponentImageView'), ComponentImageView = require('./view/ComponentImageView'),
ComponentTextView = require('./view/ComponentTextView'); ComponentTextView = require('./view/ComponentTextView'),
ComponentMapView = require('./view/ComponentMapView'),
ComponentLinkView = require('./view/ComponentLinkView'); ComponentLinkView = require('./view/ComponentLinkView');
var component, componentView; var component, componentView;
@ -283,6 +285,14 @@ define(function(require) {
this.clear().addComponent(components); this.clear().addComponent(components);
}, },
/**
* Add new component type
* @private
*/
addComponentType: function(type, methods) {
}
}; };
}; };
}); });

19
src/dom_components/model/ComponentMap.js

@ -0,0 +1,19 @@
define(['./Component'],
function (Component) {
return Component.extend({
defaults: _.extend({}, Component.prototype.defaults, {
tagName: 'iframe',
staticUrl: 'http://maps.googleapis.com/maps/api/staticmap',
mapUrl: 'https://maps.google.com/maps',
zoom: '1',
mapType: '',
staticHeight: '',
staticWidth: '',
src: 'http://maps.googleapis.com/maps/api/staticmap?zoom=1&format=jpg&size=500x300',//'https://maps.google.com/maps?output=embed',
traits: ['mapTraits'],
}),
});
});

12
src/dom_components/model/Components.js

@ -26,7 +26,7 @@ define([ 'backbone', 'require'],
case 'text': case 'text':
if(!this.mComponentText) if(!this.mComponentText)
this.mComponentText = require("./ComponentText"); this.mComponentText = require("./ComponentText");
model = new this.mComponentText(attrs, options); model = new this.mComponentText(attrs, options);
break; break;
@ -38,13 +38,19 @@ define([ 'backbone', 'require'],
case 'image': case 'image':
if(!this.mComponentImage) if(!this.mComponentImage)
this.mComponentImage = require("./ComponentImage"); this.mComponentImage = require("./ComponentImage");
model = new this.mComponentImage(attrs, options); model = new this.mComponentImage(attrs, options);
break; break;
case 'map':
if(!this.mComponentMap)
this.mComponentMap = require("./ComponentMap");
model = new this.mComponentMap(attrs, options);
break;
default: default:
if(!this.mComponent) if(!this.mComponent)
this.mComponent = require("./Component"); this.mComponent = require("./Component");
model = new this.mComponent(attrs, options); model = new this.mComponent(attrs, options);
} }

4
src/dom_components/view/ComponentImageView.js

@ -3,9 +3,9 @@ define(['backbone', './ComponentView'],
return ComponentView.extend({ return ComponentView.extend({
tagName : 'img', tagName: 'img',
events : { events: {
'dblclick' : 'openModal', 'dblclick' : 'openModal',
}, },

15
src/dom_components/view/ComponentMapView.js

@ -0,0 +1,15 @@
define(['backbone', './ComponentImageView'],
function (Backbone, ComponentView) {
return ComponentView.extend({
events: {},
initialize: function(o){
ComponentView.prototype.initialize.apply(this, arguments);
//on width/height change update static url
//zomm 1-22
},
});
});

5
src/dom_components/view/ComponentsView.js

@ -52,6 +52,11 @@ function(Backbone, require) {
this.compViewLink = require('./ComponentLinkView'); this.compViewLink = require('./ComponentLinkView');
viewObject = this.compViewLink; viewObject = this.compViewLink;
break; break;
case 'map':
if(!this.compViewMap)
this.compViewMap = require('./ComponentMapView');
viewObject = this.compViewMap;
break;
} }
var view = new viewObject({ var view = new viewObject({

8
src/editor/config/config.js

@ -185,6 +185,14 @@ define(function () {
content:'Link', content:'Link',
style:{color: '#d983a6'} style:{color: '#d983a6'}
}, },
},{
id: 'map',
label: 'Map',
attributes: {class:'fa fa-map-o'},
content: {
type: 'map',
style: {color: '#fff'}
},
}], }],
}, },

1
src/trait_manager/view/TraitView.js

@ -18,7 +18,6 @@ define(['backbone'], function (Backbone) {
this.model.off('change:value', this.onValueChange); this.model.off('change:value', this.onValueChange);
this.listenTo(this.model, 'change:value', this.onValueChange); this.listenTo(this.model, 'change:value', this.onValueChange);
this.tmpl = '<div class="' + this.fieldClass +'"><div class="' + this.inputhClass +'"></div></div>'; this.tmpl = '<div class="' + this.fieldClass +'"><div class="' + this.inputhClass +'"></div></div>';
console.log(this.model.attributes);
}, },
/** /**

Loading…
Cancel
Save