editor.js/plugins/code/code.js
khaydarov f3d70c8724 plugins saver method updated (#87)
* changed parsing method. Now data parses data like sample.json

* saver module

* upgraded plugins
2016-07-16 01:37:01 +03:00

75 lines
1.3 KiB
JavaScript

/**
* Code Plugin\
* Creates code tag and adds content to this tag
*/
var codeTool = {
baseClass : "tool-code",
/**
* Make initial header block
* @param {object} JSON with block data
* @return {Element} element to append
*/
make : function (data) {
var tag = document.createElement('code');
tag.classList += codeTool.baseClass;
if (data && data.text) {
tag.innerHTML = data.text;
}
tag.contentEditable = true;
return tag;
},
/**
* Method to render HTML block from JSON
*/
render : function (data) {
return codeTool.make(data);
},
/**
* Method to extract JSON data from HTML block
*/
save : function (blockContent){
var block = blockContent[0];
json = {
type : 'code',
data : {
text : null,
}
};
json.data.text = block.innerHTML;
return json;
},
};
/**
* Now plugin is ready.
* Add it to redactor tools
*/
cEditor.tools.code = {
type : 'code',
iconClassname : 'ce-icon-code',
make : codeTool.make,
appendCallback : null,
settings : null,
render : codeTool.render,
save : codeTool.save
};