hedera-web/forms/news/new/new.js

76 lines
1.8 KiB
JavaScript
Raw Normal View History

Vn.include('node_modules/tinymce/tinymce.min');
Vn.define(function() {
Hedera.New = new Class({
2016-09-26 09:28:47 +00:00
Extends: Hedera.Form
2016-10-11 07:26:10 +00:00
,editor: null
,activate: function() {
2022-05-28 01:18:06 +00:00
this.$.model.mode = Db.Model.Mode.ON_DEMAND;
this.$.model.setDefault('userFk', 'news',
new Sql.Function({schema: 'account', name: 'myUser_getId'}));
tinymce.init({
2022-07-15 05:55:18 +00:00
target: this.$.htmlEditor
2015-02-08 15:38:38 +00:00
,plugins: [
2016-10-11 07:26:10 +00:00
"advlist autolink lists link image charmap print preview hr"
,"anchor pagebreak searchreplace wordcount visualblocks"
,"visualchars code fullscreen insertdatetime media nonbreaking"
2019-02-05 13:11:40 +00:00
,"save table directionality emoticons template paste"
]
2016-10-11 07:26:10 +00:00
,toolbar1:
2018-05-16 10:01:31 +00:00
" print preview | link image media emoticons blockquote"
+" | insertfile undo redo | bold italic"
+" | alignleft aligncenter alignright alignjustify"
+" | bullist numlist outdent indent"
+" | styleselect | fontselect fontsizeselect"
+" | forecolor backcolor"
,image_advtab: true
,init_instance_callback: this._onEditorInit.bind(this)
2022-07-15 05:55:18 +00:00
});
},
2016-10-11 07:26:10 +00:00
deactivate: function() {
this.editor.destroy();
},
2016-10-11 07:26:10 +00:00
_onEditorInit: function(editor) {
2016-10-11 07:26:10 +00:00
this.editor = editor;
editor.getDoc().body.style.fontSize = '1em';
this.setEditorText();
},
setEditorText: function() {
2016-10-11 07:26:10 +00:00
if (!this.editor)
return;
2022-07-15 05:55:18 +00:00
const row = this.$.iter.$;
this.editor.setContent(row ? row.text : '');
},
2016-10-11 07:26:10 +00:00
2022-05-24 21:11:12 +00:00
onStatusChange: function() {
2022-07-15 05:55:18 +00:00
if (!this.hash.$.new)
2022-05-28 01:18:06 +00:00
this.$.iter.insertRow();
},
onOperationsDone: function() {
Htk.Toast.showMessage(_('NewChangedSuccessfully'));
this.onReturnClick();
},
onBodyChange: function() {
this.setEditorText();
},
onAcceptClick: function() {
2022-05-28 01:18:06 +00:00
this.$.iter.set('text', this.editor.getContent());
this.$.iter.performOperations();
2022-07-15 05:55:18 +00:00
},
onReturnClick: function() {
this.hash.setAll({form: 'news/news'});
}
});
2015-12-10 13:48:43 +00:00
});