【发布时间】:2015-08-10 20:54:12
【问题描述】:
我正在尝试解决 Ventrian 新闻文章模块中不受欢迎的功能。问题是该模块允许经过身份验证的用户加载选项来编辑文章,但富文本编辑器不会启用,除非页面处于编辑模式。我可以修改用户点击编辑文章的编辑链接,所以我寻找一种方法来设置编辑链接以默认以编辑模式加载文章编辑页面。有什么建议么?提前致谢。
【问题讨论】:
标签: dotnetnuke dotnetnuke-module dotnetnuke-7
我正在尝试解决 Ventrian 新闻文章模块中不受欢迎的功能。问题是该模块允许经过身份验证的用户加载选项来编辑文章,但富文本编辑器不会启用,除非页面处于编辑模式。我可以修改用户点击编辑文章的编辑链接,所以我寻找一种方法来设置编辑链接以默认以编辑模式加载文章编辑页面。有什么建议么?提前致谢。
【问题讨论】:
标签: dotnetnuke dotnetnuke-module dotnetnuke-7
您可能需要重新创建调用以使用户进入编辑模式 /resources/shared/scripts/dnn.controlBar.js
当单击“编辑”按钮时,该代码看起来会执行以下操作
$('a#ControlBar_EditPage').click(function () {
var service = dnn.controlBar.getService();
var serviceUrl = dnn.controlBar.getServiceUrl(service);
var mode = currentUserMode === 'EDIT' ? 'VIEW' : 'EDIT';
$.ajax({
url: serviceUrl + 'ToggleUserMode',
type: 'POST',
data: { UserMode: mode },
beforeSend: service.setModuleHeaders,
success: function () {
if( mode === 'VIEW') dnn.dom.setCookie('StayInEditMode', 'NO', '', dnn.controlBar.getSiteRoot());
window.location.href = window.location.href.split('#')[0];
},
error: function (xhr) {
dnn.controlBar.responseError(xhr);
}
});
return false;
});
如何最好地做到这一点?我不知道。可能在页面上放置一个模块来拦截查询字符串参数(类似于 ?editMode=true)。如果模块看到该参数,则触发一个客户端事件,该事件将执行 javascript 示例所做的操作,发布到 serviceUrl/ToggleUserMode 并在那里设置模式。
克里斯
【讨论】: