manager.registerUI('cms', function (wdeditor, name) {
var btn = new EditorManager.Button({
wdeditor: wdeditor,
name: "fjEdit",
labelClassName:"label-fj",
command: name,
// getBtnID: function () {
// return "fjEdit";
// },
className: "rightBtn content-OuteduiButton underlineIcon-attachment",
cssRules: "display:inline-block;float:right;/*position:absolute;top:5px;right:3.5em*/ margin-top: 6px;",
text: "",
value: "",
oninit: function () {
var el = this.getElement()
var hiddenName = wdeditor.options["btn_opt_" + name].key || "";
var hiddenValue = wdeditor.options["btn_opt_" + name].value || "";
// manager.registerUI('insertCMS', function (wdeditor, name) {
// var btn = new EditorManager.CheckBox({
// name: name,
// text: "附件",
// title: "附件",
// onBtnClick: function () {
// $("[name='" + hiddenName + "']").val() != "" && this.wdeditor.execCommand('insertHtml', '
');
// }
// });
// return btn;
// });
var hidden_ = null;
if ((hidden_ = document.getElementsByName(hiddenName)[0]) == null) {
hidden_ = EditorManager.utils.parseDom("")[0];
el.parentNode.appendChild(hidden_);
}
//获取附件的数量
window.getAttachmentCount = function () {
var nrid = hidden_.value;
if (nrid)
$.ajax({
async: false,
type: "post",
url: "/service?ssServ=wrCcmsList", // =getSubNrCount",。Lin
data: {
nrid: "T-" + nrid,
jlztm:1
},
dataType: "json", // 增加,统一 Ajax 返回标准 -- .ssCode、.ssMsg、.ssData。Lin
success: function (data) {
/* 改,增加错误处理 -- 统一 Ajax 返回标准 -- .ssCode、.ssMsg、.ssData。Lin
* 去掉 JSON.parse(,改为用 Map 传输
var names = JSON.parse(data);
*/
if (data.ssCode != 0) {
alert(data.ssMsg);
return;
}
var names = data.ssData;
var count = names.length;
var wrapper = el.parentNode;
if (wrapper.id != el.id + "wrapper") {
wrapper = document.createElement("span");
wrapper.id = el.id + "wrapper";
el.parentNode.appendChild(wrapper);
wrapper.style.cssText = el.style.cssText;
wrapper.style.marginTop = 'unset';
console.log(wrapper.style.cssText);
wrapper.appendChild(el);
}
if (count > 0) {
var attachment = wrapper,
num = attachment.querySelector(".icon-num");
if (!num) {
num = document.createElement("span");
num.className = "icon-num";
num.className = "icon-num";
num.style.float="right";
num.style.position = "absolute";
num.style.right = "65px";
num.style.top = "2px";
attachment.appendChild(num);
}
num.innerText = count;
attachment.appendChild(num);
var datas = [];
for (var iii = 0; iii < names.length; iii++) {
datas.push({
name: iii,
value: names[iii]
})
}
}
},
error: function (data) {
console.log(data);
}
})
}
function showCMSMenu() {
var nrid = hidden_.value;
if (nrid == "")
return;
window.getAttachmentCount();
var attachment = el.parentNode;
var menuelement = wd.display.initCmsMenu("cms" + nrid,1);
if (menuelement) {
menuelement.showAt(attachment);
$(attachment).mouseleave(function () {
menuelement.hide();
});
}
}
function fjEditClick() {
/// 增加 ssNrObjName、ssNrObjId,内容 表增加 对象名、对象ID 字段 -- 对象的附件。Lin
var dataSet = document.querySelectorAll('textarea[name="'+ wdeditor.ueditor.key +'"]')[0].dataset;
///
var nrid = hidden_.value;
if (nrid == null || nrid.length == 0) {
$.ajax({
type: 'GET',
url: '/service?ssServ=makeAttCms', // =getNewNridAndUpdateNrmc。Lin
data: {
name: 'fj',
/// 增加 ssNrObjName、ssNrObjId,内容 表增加 对象名、对象ID 字段 -- 对象的附件。Lin
// data-ss-nr-obj-name="${ssObjName}" data-ss-nr-obj-id="${ssObjId}"
ssNrObjName: dataSet.ssNrObjName,
ssNrObjId: dataSet.ssNrObjId
///
},
async: false,
success: function (data) {
nrid = data;
},
});
hidden_.value = nrid;
}
var user = ''
var Nrid = 'T-' + nrid;
var objectId = ''
var objectFunction = ''
var objectName = ''
var str = '&nrid=';
str += Nrid;
str += '&user=';
str += user;
str += '&objectId=';
str += objectId;
str += '&objectFunction=';
str += objectFunction;
str += '&objectName=';
str += objectName + '&callback=getAttachmentCount';
console.log( wdeditor.options.cms_edit + str)
wd.display.showComponent({
show: ['wdDialog'],
//1984
url: wdeditor.options.cms_edit + str,
title: '编辑内容',
width: 900,
high: 664,
});
}
var this_ = this;
(function () {
var edit = el;
window.getAttachmentCount();
if (edit != null) {
if (edit.addListener) {
edit.addListener('click', fjEditClick, false);
edit.addListener('mouseenter', showCMSMenu, false);
} else if (edit.attachEvent) {
edit.attachEvent('onclick', fjEditClick);
edit.attachEvent('mouseenter', showCMSMenu);
} else {
edit['onclick'] = fjEditClick;
edit['onmouseenter'] = showCMSMenu;
}
}
})();
}
});
return btn;
});