YUI.add('ui-page-module', function (Y) {
var MODULE = 'module',
STRINGS = 'strings',
CONTAINER = 'container';
Y.namespace('UI.Pages').Module = Y.Base.create('modulePageUI', Y.View, [], {
template: '
{{module_name}}: {{name}}
',
render: function () {
var editor = new Y.UI.Code.Editor(),
module = this.get(MODULE),
strings = this.get(STRINGS),
content = Y.Handlebars.compile(this.template);
container = this.get(CONTAINER);
container.setHTML(content({
module_name: strings.module.name,
name: module.getName(),
text: module.getText()
}));
editor.render(container.one('textarea'));
return this;
}
}, {
ATTRS: {
module: {
value: null,
validator: function (mod) {
return mod instanceof Y.SE.Models.Module;
}
},
strings: {
value: {
module: { name: 'Имя модуля' }
}
}
}
});
}, '1.0', {
requires: [
'view',
'handlebars',
'se-model-module',
'ui-code-editor'
]
});