在visual 2015中,我为Kentico 9项目创建了一个自定义web部件,放在主页上。它有一个Page_PreRender方法,并使用当前日期和时间检查紧急页面的日期和时间,如果时间戳有差异,而时间戳的差异在当前时间的24小时内,则会发出一个紧急图标闪烁,直到24小时期间结束,或者他们再次单击Save来更新紧急情况页面。我还拥有一个计数器来检查单击Save按钮的次数。上面的数据是从数据库中查询的,因为单击Save按钮时会保存时间戳等。简单地说,单击一次,保存紧急情况页面,然后紧急图标开始闪烁。如果您再次单击“保存”按钮(第二次),则切换“紧急图标”的闪烁。这是必要的,如果紧急页面内容被改变,但没有一个真正的/立即的紧急情况,需要一个闪烁的紧急图标,以使用户知道。
当我们没有为Kentico设置工作流时,上述方法就起了作用。因为添加了一个工作流,并且有一个发布/拒绝按钮。单击“发布”按钮使紧急图标闪烁,您将在“保存”按钮和“发布”按钮之间进行战斗。我可以关闭紧急情况页面的WorkFlow,但希望查看是否有一种方法来检查是否单击了发布按钮。
我的问题是如何检查在条件下使用Page_PreRender方法单击了哪个按钮保存/发布/拒绝等按钮?
发布于 2016-10-04 17:53:12
这里有两种选择:
要回答有关如何检查单击哪个按钮的问题,请检查文档当前是否已发布:
已发布意味着已单击“发布”按钮,否则-保存
发布于 2016-10-04 18:02:31
您可以绑定到发布事件来判断文档何时发布:
public class CustomWorkflowEventsAttribute : CMSLoaderAttribute
{
public override void Init()
{
WorkflowEvents.Publish.Before += PublishDocument;
}
只是一个建议,也许只有图标闪光灯会更容易基于上一次发布的版本的文档?可能在紧急文件上有一个字段显示或不显示闪烁图标,如果他们想要禁用它,只需取消检查并发布它。
https://stackoverflow.com/questions/39858547
复制相似问题