更改ICN(IBM Content Navigator)中的签到对话框 [英] Altering the check-in dialogue in ICN (IBM Content Navigator)

查看:359
本文介绍了更改ICN(IBM Content Navigator)中的签到对话框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在IBM Content Navigator中,签入对话框包含一个属性窗格,其中包含一个类选择器下拉框。

In IBM Content Navigator, The "Check In" dialogue contains a Properties Pane, that in turn contains a Class Selector drop down box.

ClassSelector图像

我想保留check-在功能上,但是希望该类选择器框不会出现(没有用例需要更改文档类的用例)。

I want to keep the check-in functionality, but would like to have that Class Selector box not appear (There is no use case where a user would need to change the document class).

实现这一点的正确方法是什么?

What would be the proper way to achieve this?


  1. 有没有方法来扩展ecm / widget / CheckInDialogue.js文件,并使默认的checkIn操作使用我的新的js?

  2. 我需要创建一个引用新的js的全新的checkIn操作吗?

  3. 我只是更改ICN发送的js / html?

只是为了澄清,知道如何创建一个插件,以及如何创建一个js扩展到checkinDialogue.js,以及如何删除classSelector;但是我不知道如何使用我的新脚本,或最好的方法来完成这个。

Just to clarify, I do know how to create a plugin, and how to create a js extension to the checkinDialogue.js, and how to remove the classSelector; however I don't know how to make the checkin action use my new script, or the best way to accomplish this.

谢谢!

推荐答案

在回答您的问题之前,我想说,除了自定义ICN,我想还有其他选择。两个最简单的我可以看到:

Before answering your question, I would like to say that I think there is other options to do this without customizing ICN. The two easiest I can see would be:


  • 使用入门模板,这样,默认情况下,类选择器将被禁用。 >
  • 删除privChangeClass权限,这应该隐藏Class Selector(如果你想要保持完全权限,可能很难)。

现在,如果要在不使用条目模板或权限的情况下隐藏它。

Now if you want to hide it without using entry templates or privileges.


  1. 是的,扩展ecm。 widget.layout.CommonActionHandler并覆盖actionCheckIn函数,并使用您的CheckInDialog而不是默认值。然后使用您的CommonActionHandler而不是桌面上的默认。我不认为有办法从管理桌面UI更改ActionHandler(如果我错过了,请让我知道),尽管客户端在_loadDesktop功能上加载,并由外观选项卡设置,但值为硬编码,所以你可能必须在更好的加载之后注入它,调用ecm.model.desktop.setActionHander(actionhandler),其中actionhandler是实例,而不是插件中的类名(string)。

  1. Yes, extend the ecm.widget.layout.CommonActionHandler and overwrite the actionCheckIn function and use your CheckInDialog instead of the default one. Then use your CommonActionHandler instead of the default one in your desktop. I don't think there is a way to change the ActionHandler from the admin desktop UI yet (if I missed it please let me know), although it's loaded by the client on the _loadDesktop function and set by the appearance tab but the value is hard-coded, so you might have to inject it after the load of better, call ecm.model.desktop.setActionHander(actionhandler) where actionhandler is the instance, not the class name (string) in a plugin.

您可以,如果您有多个桌面,这样可以让您更容易管理,并希望有些使用新的签入对话框,另一些则不使用。

You can, this will make things easier to manage if you have several desktops and you want some to use your new Check In dialog and some not.

不,这是一个可怕的想法:) ICN和你的代码的未来升级将是一场噩梦,交付过程比简单的配置技巧或ICN插件复杂得多,什么插件是。

No, that's a terrible idea :) Future upgrade of ICN and your code will be a nightmare and the delivery process a lot more complex than a simple configuration trick or ICN plug-in, that's what plug-ins are for.

另外一个不太干净但非常简单的解决方案将是CheckInDialog .prototype在postCreate函数上d做一个 domStyle.set(this.addContentItemPropertiesPane._contentClassSelectorDiv,display,none); 将其隐藏在所有CheckInDialogs上。

Also a not so clean but really simple solution would be to aspect after the CheckInDialog.prototype on the postCreate function and do a domStyle.set(this.addContentItemPropertiesPane._contentClassSelectorDiv, "display", "none"); to just hide it on all CheckInDialogs.

这篇关于更改ICN(IBM Content Navigator)中的签到对话框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆