📄 cmstaskcontentdetail.java
字号:
cal.setTime(new Date(System.currentTimeMillis()));
cal.set(Calendar.HOUR, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
GregorianCalendar newcal = new GregorianCalendar(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
long now = newcal.getTime().getTime();
try {
projectname = cms.readTask(task.getRoot()).getName();
}
catch(Exception exc) {
// no root?!
}
priority = xmlTemplateDocument.getProcessedDataValue("priority" + task.getPriority(), this);
startTime = task.getStartTime().getTime();
timeout = task.getTimeOut().getTime();
String due = "";
try {
due = Utils.getNiceShortDate(timeout);
}
catch(Exception exc) {
// ignore the exception
}
String from = "";
try {
from = Utils.getNiceShortDate(startTime);
}
catch(Exception exc) {
// ignore the exception
}
xmlTemplateDocument.setData("taskid", task.getId() + "");
boolean isOwner = context.currentUser().equals(owner);
boolean isEditor = context.currentUser().equals(editor);
boolean isInRole = false;
try {
isInRole = cms.userInGroup(context.currentUser().getName(), roleName);
}
catch(Exception exc) {
// ignore the exception
}
// choose the right style and buttons
if(task.getState() == C_TASK_STATE_ENDED) {
if(isOwner) {
// this is the owner of the task
button1 = getButton(xmlTemplateDocument, "button_message", false);
button2 = getButton(xmlTemplateDocument, "button_accept", false);
button3 = getButton(xmlTemplateDocument, "button_due", false);
button4 = getButton(xmlTemplateDocument, "button_priority", false);
button5 = getButton(xmlTemplateDocument, "button_comment", false);
button6 = getButton(xmlTemplateDocument, "button_reakt", true);
}
else {
if(isEditor) {
// this user is the editor for this task
button1 = getButton(xmlTemplateDocument, "button_query", false);
button2 = getButton(xmlTemplateDocument, "button_forward", false);
button3 = getButton(xmlTemplateDocument, "button_due", false);
button4 = getButton(xmlTemplateDocument, "button_priority", false);
button5 = getButton(xmlTemplateDocument, "button_comment", false);
button6 = getButton(xmlTemplateDocument, "button_reakt", false);
}
else {
if(isInRole) {
// this user is in the role for this task
button1 = getButton(xmlTemplateDocument, "button_query", false);
button2 = getButton(xmlTemplateDocument, "button_take", false);
button3 = getButton(xmlTemplateDocument, "button_due", false);
button4 = getButton(xmlTemplateDocument, "button_priority", false);
button5 = getButton(xmlTemplateDocument, "button_comment", false);
button6 = getButton(xmlTemplateDocument, "button_reakt", false);
}
else {
// all other users
button1 = getButton(xmlTemplateDocument, "button_query", false);
button2 = getButton(xmlTemplateDocument, "button_take", false);
button3 = getButton(xmlTemplateDocument, "button_due", false);
button4 = getButton(xmlTemplateDocument, "button_priority", false);
button5 = getButton(xmlTemplateDocument, "button_comment", false);
button6 = getButton(xmlTemplateDocument, "button_reakt", false);
}
}
}
if(timeout < now) {
style = xmlTemplateDocument.getProcessedDataValue("style_ok", this);
}
else {
style = xmlTemplateDocument.getProcessedDataValue("style_ok", this);
}
}
else {
if(task.getPercentage() == 0) {
if(isOwner && isEditor) {
// this is a task from me and for me
button1 = getButton(xmlTemplateDocument, "button_query", true);
button2 = getButton(xmlTemplateDocument, "button_accept", true);
button3 = getButton(xmlTemplateDocument, "button_due", true);
button4 = getButton(xmlTemplateDocument, "button_priority", true);
button5 = getButton(xmlTemplateDocument, "button_comment", true);
button6 = getButton(xmlTemplateDocument, "button_ok", false);
}
else {
if(isOwner) {
// this is the owner of the task
button1 = getButton(xmlTemplateDocument, "button_message", true);
button2 = getButton(xmlTemplateDocument, "button_forward", true);
button3 = getButton(xmlTemplateDocument, "button_due", true);
button4 = getButton(xmlTemplateDocument, "button_priority", true);
button5 = getButton(xmlTemplateDocument, "button_comment", true);
button6 = getButton(xmlTemplateDocument, "button_ok", false);
}
else {
if(isEditor) {
// this user is the editor for this task
button1 = getButton(xmlTemplateDocument, "button_query", true);
button2 = getButton(xmlTemplateDocument, "button_accept", true);
button3 = getButton(xmlTemplateDocument, "button_due", false);
button4 = getButton(xmlTemplateDocument, "button_priority", false);
button5 = getButton(xmlTemplateDocument, "button_comment", true);
button6 = getButton(xmlTemplateDocument, "button_ok", false);
}
else {
if(isInRole) {
// this user is in the role for this task
button1 = getButton(xmlTemplateDocument, "button_query", false);
button2 = getButton(xmlTemplateDocument, "button_take", true);
button3 = getButton(xmlTemplateDocument, "button_due", false);
button4 = getButton(xmlTemplateDocument, "button_priority", false);
button5 = getButton(xmlTemplateDocument, "button_comment", false);
button6 = getButton(xmlTemplateDocument, "button_ok", false);
}
else {
// all other users
button1 = getButton(xmlTemplateDocument, "button_query", false);
button2 = getButton(xmlTemplateDocument, "button_take", false);
button3 = getButton(xmlTemplateDocument, "button_due", false);
button4 = getButton(xmlTemplateDocument, "button_priority", false);
button5 = getButton(xmlTemplateDocument, "button_comment", false);
button6 = getButton(xmlTemplateDocument, "button_ok", false);
}
}
}
}
if(timeout < now) {
style = xmlTemplateDocument.getProcessedDataValue("style_alert", this);
}
else {
style = xmlTemplateDocument.getProcessedDataValue("style_new", this);
}
}
else {
if(isOwner && isEditor) {
// this is a task from me and for me
button1 = getButton(xmlTemplateDocument, "button_query", true);
button2 = getButton(xmlTemplateDocument, "button_forward", true);
button3 = getButton(xmlTemplateDocument, "button_due", true);
button4 = getButton(xmlTemplateDocument, "button_priority", true);
button5 = getButton(xmlTemplateDocument, "button_comment", true);
button6 = getButton(xmlTemplateDocument, "button_ok", true);
}
else {
if(isOwner) {
// this is the owner of the task
button1 = getButton(xmlTemplateDocument, "button_message", true);
button2 = getButton(xmlTemplateDocument, "button_forward", true);
button3 = getButton(xmlTemplateDocument, "button_due", true);
button4 = getButton(xmlTemplateDocument, "button_priority", true);
button5 = getButton(xmlTemplateDocument, "button_comment", true);
button6 = getButton(xmlTemplateDocument, "button_ok", false);
}
else {
if(isEditor) {
// this user is the editor for this task
button1 = getButton(xmlTemplateDocument, "button_query", true);
button2 = getButton(xmlTemplateDocument, "button_forward", true);
button3 = getButton(xmlTemplateDocument, "button_due", false);
button4 = getButton(xmlTemplateDocument, "button_priority", false);
button5 = getButton(xmlTemplateDocument, "button_comment", true);
button6 = getButton(xmlTemplateDocument, "button_ok", true);
}
else {
if(isInRole) {
// this user is in the role for this task
button1 = getButton(xmlTemplateDocument, "button_query", false);
button2 = getButton(xmlTemplateDocument, "button_take", true);
button3 = getButton(xmlTemplateDocument, "button_due", false);
button4 = getButton(xmlTemplateDocument, "button_priority", false);
button5 = getButton(xmlTemplateDocument, "button_comment", false);
button6 = getButton(xmlTemplateDocument, "button_ok", false);
}
else {
// all other users
button1 = getButton(xmlTemplateDocument, "button_query", false);
button2 = getButton(xmlTemplateDocument, "button_take", false);
button3 = getButton(xmlTemplateDocument, "button_due", false);
button4 = getButton(xmlTemplateDocument, "button_priority", false);
button5 = getButton(xmlTemplateDocument, "button_comment", false);
button6 = getButton(xmlTemplateDocument, "button_ok", false);
}
}
}
}
if(timeout < now) {
style = xmlTemplateDocument.getProcessedDataValue("style_alert", this);
}
else {
style = xmlTemplateDocument.getProcessedDataValue("style_activ", this);
}
}
}
// get the processed list.
xmlTemplateDocument.setData("style", style);
xmlTemplateDocument.setData("priority", priority);
xmlTemplateDocument.setData("task", task.getName());
xmlTemplateDocument.setData("foruser", Utils.getFullName(editor));
xmlTemplateDocument.setData("forrole", roleName);
xmlTemplateDocument.setData("actuator", Utils.getFullName(owner));
xmlTemplateDocument.setData("due", due);
xmlTemplateDocument.setData("from", from);
xmlTemplateDocument.setData("project", projectname);
// now setting the buttons
xmlTemplateDocument.setData("button1", button1);
xmlTemplateDocument.setData("button2", button2);
xmlTemplateDocument.setData("button3", button3);
xmlTemplateDocument.setData("button4", button4);
xmlTemplateDocument.setData("button5", button5);
xmlTemplateDocument.setData("button6", button6);
// now check where to go back
if((templateSelector == null || templateSelector == "") && lastUrl != null) {
// tasks either completed or aborted, go back
try {
if(lastUrl.startsWith("http:")) {
// complete path
context.getResponse().sendRedirect(lastUrl);
}
else {
// relative to the opencms path
context.getResponse().sendCmsRedirect(lastUrl);
}
session.removeValue("lasturl");
}
catch(IOException exc) {
throw new CmsException("Could not redirect to " + lastUrl, exc);
}
return null;
}
// Now load the template file and start the processing
return startProcessing(cms, xmlTemplateDocument, elementName, parameters, templateSelector);
}
/**
* Indicates if the results of this class are cacheable.
*
* @param cms CmsObject Object for accessing system resources
* @param templateFile Filename of the template file
* @param elementName Element name of this template in our parent template.
* @param parameters Hashtable with all template class parameters.
* @param templateSelector template section that should be processed.
* @return <EM>true</EM> if cacheable, <EM>false</EM> otherwise.
*/
public boolean isCacheable(CmsObject cms, String templateFile, String elementName,
Hashtable parameters, String templateSelector) {
return false;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -