var Adhoc=Adhoc||{};
Adhoc.Workflow=Adhoc.Workflow||{};
Adhoc.menuActions=Adhoc.menuActions||[];
(function(A){Adhoc.Workflow.setState=function(E){Adhoc.state=E;
var F=A("#adhocWorkflowsLink");
F.addClass("workflow-state").css("display","block").css("visibility","inherit");
if(E.finalState){F.addClass("final")
}else{F.removeClass("final")
}if(E.hasFinalState){F.addClass("hasfinal")
}else{F.removeClass("hasfinal")
}F.find("span").html(E.stateName);
if(E.alternateViewStateName){var B=A("#adhocWorkflowsAltViewLink");
B.attr("href",AJS.params.contextPath+E.alternateViewUrl).attr("title",AJS.params.alternateViewTitle).css("display","block").css("visibility","inherit").html("<span>"+E.alternateViewStateName+"...</span>")
}else{A("#adhocWorkflowsAltViewLink").css("display","none")
}A("#workflow-page-message").html("");
if(E.messages!=undefined&&E.messages.length>0){for(var C=0;
C<E.messages.length;
C++){var D=E.messages[C];
var G={closeable:D.closeable,body:D.renderedMessage};
if(D.type=="GENERIC"){AJS.messages.generic("#workflow-page-message",G)
}else{if(D.type=="ERROR"){AJS.messages.error("#workflow-page-message",G)
}else{if(D.type=="SUCCESS"){AJS.messages.success("#workflow-page-message",G)
}else{if(D.type=="INFO"){AJS.messages.info("#workflow-page-message",G)
}else{if(D.type=="HINT"){AJS.messages.hint("#workflow-page-message",G)
}else{if(D.type=="WARNING"){AJS.messages.warning("#workflow-page-message",G)
}else{AJS.messages.generic("#workflow-page-message",G)
}}}}}}}}if(E.taskable||E.activeTasks>0){A("#adhocTasksLink").css("display","block");
A("#addPageTaskLink").removeClass("notTaskable");
A("#addPageTaskLink").addClass("taskable");
Adhoc.Tasks.generateTasksPopup(Adhoc.Tasks.dialog.find(".contents"),this,function(){})
}else{A("#adhocTasksLink").hide();
A("#addPageTaskLink").removeClass("taskable");
A("#addPageTaskLink").addClass("notTaskable")
}A("#editPageWorkflowLink").css("display","block")
};
Adhoc.Workflow.refreshState=function(){A.ajax({type:"GET",cache:false,url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/state/"+AJS.params.pageId+"?publishedView="+Adhoc.publishedView,success:function(C,D,B){if(B.status!=200){return 
}Adhoc.Workflow.setState(C);
if(Adhoc.clickedApprovalId){A("#adhocWorkflowsLink").click()
}},error:Adhoc.errorHandler});
return false
};
Adhoc.Workflow.stateAction=function(){var C=A(this).parents("form");
var B={name:C.hasClass("adhoc")?C.find("input.newstatename").val():C.find("select").val(),assignee:Adhoc.getAssignees(C),note:C.find("textarea").val()};
var D=A(this).attr("name");
Adhoc.submitProgress(A(this).parents(".adhoc"));
A.ajax({type:"POST",cache:false,contentType:"application/json; charset=utf-8",url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/state/"+AJS.params.pageId+"/"+D,data:JSON.stringify(B),success:function(F,G,E){if(E.status==200){Adhoc.Workflow.setState(F)
}Adhoc.dialog.hide()
},error:Adhoc.errorHandler});
return false
};
Adhoc.Workflow.assign=function(){var B=A(this).parents("form");
B.addClass("assign");
return false
};
Adhoc.Workflow.unassign=function(){var B=A(this).parents("form");
B.addClass("unassign");
return false
};
Adhoc.Workflow.doStateDialog=function(E,C){var B=E.states;
C.append(AJS.template.load("adhocworkflows-states").fill());
for(i=0;
i<B.length;
i++){var D={name:B[i]};
C.find("select").append(AJS.template.load("adhocworkflows-state").fill(D))
}if(E.adhoc){C.find("select").append(AJS.template.load("adhocworkflows-state-adhoc").fill());
C.find("select").change(function(){var F=A(this).parents("form");
var G=A(this).val();
if(G=="0"){F.addClass("adhoc")
}else{F.removeClass("adhoc");
F.find("input.newstatename").val("")
}})
}C.find("form.state input[type='submit']").click(Adhoc.Workflow.stateAction);
C.find(".cancel-dialog").click(Adhoc.doHidePopup);
Adhoc.setPresetUsers(A("#inline-dialog-adhocWorkflowsPopup .usersdropdown .aui-dropdown"),E.involvedUsers);
C.find(".usersdropdown").dropDown("Standard");
C.find("input.autocomplete-user").click(function(){var F=A(this).parents("form");
F.find(".usersdropdown a.aui-dd-trigger").click()
});
AJS.Confluence.Binder.autocompleteUser();
C.find("input.autocomplete-user").bind("selected.autocomplete-user",Adhoc.selectAssignee);
C.find(".assign-page").click(Adhoc.Workflow.assign);
if(E.assignee!=undefined){C.find("input[name='assignee']").attr("placeholder",C.find("input[name='assignee']").attr("placeholder2"));
C.find("ol.assignees.assigned").append(AJS.template.load("adhocworkflows-assignee").fill(E.assignee))
}C.find("ol.assignees.assigned .remove-assignee").click(Adhoc.Workflow.unassign);
if(!E.pageAssignable){A("form.aui.state").addClass("unassignable")
}else{A("form.aui.state").removeClass("unassignable")
}}
})(AJS.$);
var Adhoc=Adhoc||{};
Adhoc.Approvals=Adhoc.Approvals||{};
(function(A){Adhoc.Approvals.hideApproval=function(){A(this).parents(".approvals .approval").removeClass("active");
A("#workflow-main .button-panel.dialog").show();
return false
};
Adhoc.Approvals.showApproval=function(){A(this).parents(".approvals").find(".cancel-approval").click();
var B=A(this).parents(".approval");
var E=A(this).attr("name");
var C=B.find("form");
A(this).parents(".approvals .approval").removeClass("active");
B.addClass("active");
B.removeClass("approve").removeClass("reject").removeClass("assign");
C.removeClass("approve").removeClass("reject").removeClass("assign");
A("ol.assignees.select").empty();
B.addClass(E);
C.addClass(E);
var D=B.find(".button-panel input[name='"+E+"']");
D.toggleClass("highlight");
setTimeout(function(){D.toggleClass("highlight")
},400);
A("#workflow-main .button-panel.dialog").hide();
return false
};
Adhoc.Approvals.assign=function(){var B=A(this).parents(".approval");
var C=B.find("form");
C.removeClass("approve").removeClass("reject");
C.addClass("assign");
C.find("input.autocomplete-user").click().focus();
return false
};
Adhoc.Approvals.doAction=function(){var D=A(this).attr("name");
var B=A(this).parents("form");
var C={assignee:Adhoc.getAssignees(B),user:B.find("input[name='username']").val(),password:B.find("input[name='password']").val(),name:B.find("input[name='name']").val(),note:B.find("textarea").val()};
Adhoc.submitProgress(A(this).parents(".adhoc"));
A.ajax({type:"POST",cache:false,contentType:"application/json; charset=utf-8",url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/approval/"+AJS.params.pageId+"/"+D,data:JSON.stringify(C),success:function(G,H,F){if(F.status==200){var E=Adhoc.state.stateName!=G.stateName;
Adhoc.Workflow.setState(G);
if(!E){A("#adhocWorkflowsLink").click()
}else{Adhoc.dialog.hide()
}}else{Adhoc.dialog.hide()
}},error:Adhoc.errorHandler});
return false
};
Adhoc.Approvals.doDialog=function(D,L){var I;
if(D.approvals.length>1){I=AJS.params.approvalsLabel
}else{I=""
}fillApprovalActions=function(M,O){var P=M.find(".approval-header .workflow-actions");
for(var N=O.actions.length-1;
N>=0;
N--){P.append(AJS.template.load("adhoc-action").fill(O.actions[N]))
}};
fillDefaultAction=function(M,N,O){$name=M.find(".name");
if(N.hint!=undefined){M.attr("title",N.hint)
}if(N.defaultAction!=undefined){N.defaultAction.name=O.fullName?O.fullName:O.name;
N.defaultAction.shortName=O.shortName;
$name.append(AJS.template.load("adhocworkflows-approval-action-default").fill(N))
}else{$name.append(O.fullName?O.fullName:O.name)
}};
var K=D.approvals;
L.append(AJS.template.load("adhocworkflows-approvals").fill());
var J="";
for(var G=0;
G<K.length;
G++){var C=K[G];
C.separator=J;
L.find(".approvals").append(AJS.template.load("adhocworkflows-approval").fill(C));
var H=A("#"+C.id);
if(C.assignees!=undefined&&C.assignees.length>0){Adhoc.setPresetUsers(H.find(".usersdropdown .aui-dropdown ol"),C.assignees);
H.addClass("assignees")
}else{Adhoc.setPresetUsers(H.find(".usersdropdown .aui-dropdown ol"),D.involvedUsers)
}if(C.message!=undefined&&C.message.length>0){H.find(".adhoc-message").html(C.message)
}fillApprovalActions(H,C);
fillDefaultAction(H,C,C);
for(var F=0;
F<C.approvers.length;
F++){var E=C.approvers[F];
L.find(".approvals").append(AJS.template.load("adhocworkflows-approver").fill(E));
var B=A("#"+E.id);
fillApprovalActions(B,E);
fillDefaultAction(B,E,E.user)
}J="separator"
}L.find(".workflow-action").click(Adhoc.Approvals.showApproval);
L.find("form.approval input[type='submit']").click(Adhoc.Approvals.doAction);
L.find(".cancel-approval").click(Adhoc.Approvals.hideApproval);
L.find(".assign-approval").click(Adhoc.Approvals.assign);
L.find(".cancel-dialog").click(Adhoc.doHidePopup);
L.find(".usersdropdown").dropDown("Standard");
if(!AJS.$.browser.msie){L.find("input.autocomplete-user,input.assignee-user").click(function(){var M=A(this).parents("form");
M.find(".usersdropdown a.aui-dd-trigger").click()
})
}else{L.find("div.approval.assignees input.assignee-user").click(function(){var M=A(this).parents("form");
M.find(".usersdropdown a.aui-dd-trigger").click()
})
}L.find("input.autocomplete-user").bind("selected.autocomplete-user",Adhoc.selectAssignee);
L.find("input.assignee-user").keypress(function(M){M.preventDefault()
});
AJS.Confluence.Binder.autocompleteUser();
if(Adhoc.clickedApprovalId){A("#"+Adhoc.clickedApprovalId+" .approval-header .name a").click();
Adhoc.clickedApprovalId=undefined
}else{if(!A("#adhocWorkflowsLink").hasClass("approvalworkflow")){if(L.find(".approval-header").length==1&&L.find("a.approve:first").length==1){L.find("a.approve:first").click()
}}}}
})(AJS.$);
Adhoc=Adhoc||{};
Adhoc.Tasks=Adhoc.Tasks||{};
(function(A){Adhoc.Tasks.clickedTasksId;
Adhoc.Tasks.editDialog,Adhoc.Tasks.dialog,Adhoc.Tasks.dialogOptions={width:280,offsetY:17,offsetX:-40,hideDelay:10000};
Adhoc.Tasks.editDialogOptions={width:480,height:400,id:"inline-dialog-adhocTasks",closeOnOutsideClick:true};
Adhoc.Tasks.hideDialog=function(){if(Adhoc.Tasks.dialog&&Adhoc.Tasks.dialog!=undefined){Adhoc.Tasks.dialog.hide()
}if(Adhoc.Tasks.editDialog&&Adhoc.Tasks.editDialog!=undefined){Adhoc.Tasks.editDialog.hide()
}return false
};
Adhoc.Tasks.isInlineDialog=function(){return A("#inline-dialog-adhocTasks").hasClass("aui-inline-dialog")
};
Adhoc.Tasks.getSelectedText=function(){var B;
if(jQuery.browser.msie){B=document.selection.createRange().text
}else{B=window.getSelection()
}B=""+B;
if(B&&B.length>2&&B.indexOf("'")!=0&&B.indexOf('"')!=0&&B.indexOf("|")<0&&B.indexOf('"')<0){B=""+B;
return B.split("\n",10)
}else{return[]
}};
Adhoc.Tasks.getNames=function(B){var C=[];
B.find("input.taskName:not(.placeholded)").each(function(){var D=A(this).val();
if(D.length>0){C.push(D)
}});
return C
};
Adhoc.Tasks.doAction=function(){var B=A(this).parents("form");
var D=A(this).attr("name");
var C=B.find("input[name='id']").val();
var E={names:Adhoc.Tasks.getNames(B),assignee:Adhoc.getAssignees(B),note:B.find("textarea:not(.placeholded)").val()};
Adhoc.submitProgress(A(this).parents(".adhoc"));
A.ajax({type:"POST",cache:false,contentType:"application/json; charset=utf-8",url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/tasks/"+AJS.params.pageId+"/"+(C!=undefined&&C>0?C+"/":"")+D,data:JSON.stringify(E),success:function(H,I,G){if(G.status==200){Adhoc.Tasks.tasks=H.tasks;
Adhoc.Tasks.updateCount(H.tasks.length);
var F;
if(Adhoc.Tasks.isInlineDialog()){F=Adhoc.Tasks.dialog.find(".contents")
}else{F=A("#inline-dialog-adhocTasks .editor-task-dialog")
}Adhoc.Tasks.doDialog(H.tasks,F,true);
if(!Adhoc.Tasks.isInlineDialog()){Adhoc.Tasks.editDialog.show()
}}else{Adhoc.Tasks.hideDialog()
}},error:Adhoc.errorHandler});
return false
};
Adhoc.Tasks.hideTask=function(){A(".adhoc .task").removeClass("active");
return false
};
Adhoc.Tasks.showTask=function(){if(AJS.dropDown.current!=undefined){AJS.dropDown.current.hide()
}A("#inline-dialog-adhocTasks form.addtask").removeClass("active");
var D=A(this).parents(".task");
var C=A(this).attr("name");
if(C==undefined||C==""){C=A(this).find("a").attr("name")
}var B=D.find("form");
D.find(".cancel-task").click();
D.addClass("active");
B.attr("class","aui").addClass(C);
return false
};
Adhoc.Tasks.updateCount=function(C){A("#adhocTasksLink span, #rte-button-adhoctasks span.trigger-text").html("");
var B;
if(C==undefined){C=0
}if(C==0){B="adhoctasks-tasks-count0"
}else{if(C==1){A("#adhocTasksLink").css("display","block");
B="adhoctasks-tasks-count1"
}else{A("#adhocTasksLink").css("display","block");
B="adhoctasks-tasks-count"
}}A("#adhocTasksLink span, #rte-button-adhoctasks span.trigger-text").append(AJS.template.load(B).fill({count:C}))
};
Adhoc.Tasks.toggleAddTask=function(){Adhoc.Tasks.hideTask();
A("#inline-dialog-adhocTasks form.addtask").toggleClass("active");
A("#taskName0").click().focus();
return false
};
Adhoc.Tasks.assign=function(){var C=A(this);
var B=A(this).parents(".task").find("form");
B.addClass("assign");
B.removeClass("complete");
B.removeClass("view");
B.removeClass("remove");
return false
};
Adhoc.Tasks.remove=function(){var C=A(this);
var B=A(this).parents(".task").find("form");
B.addClass("remove");
B.removeClass("complete");
B.removeClass("view");
B.removeClass("assign");
return false
};
Adhoc.Tasks.assignNewTask=function(){var C=A(this);
var B=C.parents("form");
B.addClass("assign");
C.hide();
return false
};
Adhoc.Tasks.initClipboardSelection=function(E,H){var F;
if(!E.hasClass("reload")){F=Adhoc.Tasks.getSelectedText()
}else{F=[]
}Adhoc.selected=F;
if(!A("#adhocTasksLink").hasClass("addtasklink")&&(H.length==0||F.length>0)){E.find("a.add-task").click();
var D=0;
for(var B=0;
B<F.length;
B++){var C=A.trim(F[B]);
if(C.length>0){var G=A("#taskName"+D++);
G.addClass("active").click().val(C)
}}if(D>1){A("form.addtask").addClass("multiple")
}else{A("form.addtask").addClass("single")
}}else{A("form.addtask").addClass("single")
}};
Adhoc.Tasks.doDialog=function(F,C,D){var E=function(J,H,M){H.toggle=M?"even":"";
J.find(".tasks").append(AJS.template.load("adhoctasks-task").fill(H));
var L=A("#task-"+H.id);
try{L.find(".task-caption").append(AJS.template.load("adhoctasks-task-completed").fill(H))
}catch(K){alert("Ad hoc Workflows panel out of sync because of CONF-23672. Please restart server")
}if(!H.comment||H.comment.length==0){L.find(".task-caption .note").remove()
}var N=L.find(".name");
if(H.actions&&H.actions.length>0){N.append(AJS.template.load("adhoctasks-task-action-default").fill({hint:H.hint,action:H.actions[0],shortName:H.shortName,name:H.name}))
}else{N.append(H.name)
}if(H.user){if(Adhoc.Tasks.isInlineDialog()){var G=L.find("ol.assignees.select");
Adhoc.addAssignee(G,H.user.name,H.user.fullName,H.user.pictureUrl,"assigned")
}else{N.append(AJS.template.load("adhoctasks-task-assignee").fill(H))
}}for(var I=H.actions.length-1;
I>=0;
I--){L.find(".task-header .workflow-actions").append(AJS.template.load("adhoc-action").fill(H.actions[I]))
}};
C.empty();
if(D){C.addClass("reload")
}Adhoc.Tasks.tasks=F;
C.append(AJS.template.load("adhoctasks-tasks").fill());
for(var B=0;
B<F.length;
B++){E(C,F[B],B%2==1)
}C.find("a.cancel-dialog").click(Adhoc.Tasks.hideDialog);
C.find("a.cancel-addtask, a.add-task").click(Adhoc.Tasks.toggleAddTask);
C.find("input[type='submit']").click(Adhoc.Tasks.doAction);
C.find(".task-header, li.dropdown-item .workflow-action").click(Adhoc.Tasks.showTask);
C.find(".cancel-task").click(Adhoc.Tasks.hideTask);
C.find(".workflow-actions").dropDown("Standard");
Adhoc.Tasks.initClipboardSelection(C,F);
C.find(".assign-new-task").click(Adhoc.Tasks.assignNewTask);
C.find(".assign").click(Adhoc.Tasks.assign);
C.find(".remove").click(Adhoc.Tasks.remove);
A.ajax({type:"GET",cache:false,url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/tasks/"+AJS.params.pageId+"/users",success:function(H,I,G){Adhoc.setPresetUsers(A(".adhoc .usersdropdown .aui-dropdown"),H.users);
if(!AJS.$.browser.msie){C.find("input.autocomplete-user").click(function(){var J=A(this).parents("form");
J.find(".usersdropdown a.aui-dd-trigger").click()
})
}C.find(".usersdropdown").dropDown("Standard")
},error:Adhoc.errorHandler});
C.find("input.autocomplete-user").bind("selected.autocomplete-user",Adhoc.selectAssignee);
AJS.Confluence.Binder.autocompleteUser();
if(Adhoc.Tasks.clickedTasksId&&Adhoc.Tasks.clickedTasksId>0){A("#task-"+Adhoc.Tasks.clickedTasksId+" .task-header .name a").click();
Adhoc.Tasks.clickedTasksId=0
}if(A("#adhocTasksLink").hasClass("addtasklink")){A("#adhocTasksLink").removeClass("addtasklink");
C.find("a.add-task").click()
}if(AJS.params.taskable==false){A("a.add-task").hide()
}};
Adhoc.Tasks.generateTasksPopup=function(E,B,D){E.addClass("adhoc");
E.empty();
E.append(AJS.template.load("adhocworkflows-loading").fill());
D();
var C=Raphael.spinner(E.find(".progress-messages-icon")[0],7,"#666");
A.ajax({type:"GET",cache:false,url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/tasks/"+AJS.params.pageId,success:function(G,H,F){Adhoc.Tasks.tasks=G.tasks;
Adhoc.Tasks.updateCount(G.tasks.length);
Adhoc.Tasks.doDialog(Adhoc.Tasks.tasks,E,false)
},error:Adhoc.errorHandler})
};
Adhoc.Tasks.addTaskLink=function(){A("#adhocTasksLink").css("display","block").addClass("addtasklink").click();
return false
};
AJS.toInit(function(B){try{Adhoc.Tasks.clickedTasksId=Adhoc.getUrlParams()["task"]
}catch(C){}if(B("#editor-container, #rte-toolbar").length==0){Adhoc.Tasks.dialog=AJS.InlineDialog(B("#adhocTasksLink"),"adhocTasks",Adhoc.Tasks.generateTasksPopup,Adhoc.Tasks.dialogOptions);
if(B("#adhocTasksLink").length==0){return 
}if(B("#displayEmptyTaskMenu").length>0){B("#adhocTasksLink").css("display","block")
}}else{if(AJS.params.pageId>0){Adhoc.Tasks.editDialog=new AJS.Dialog(Adhoc.Tasks.editDialogOptions);
Adhoc.Tasks.editDialog.addPage("editor-task-dialog").addHeader(AJS.params.tasksLabel);
B("#rte-button-adhoctasks").click(function(){B("#inline-dialog-adhocTasks").css("height","auto");
B("#inline-dialog-adhocTasks .dialog-page-menu").remove();
Adhoc.Tasks.generateTasksPopup(B("#inline-dialog-adhocTasks .editor-task-dialog"),this,function(){});
Adhoc.Tasks.editDialog.show();
return false
})
}else{B("#rte-button-adhoctasks").hide()
}}B(".taskable#addPageTaskLink,.addPageTaskLink").click(Adhoc.Tasks.addTaskLink);
if(AJS.params.pageId>0){try{B.ajax({type:"GET",cache:false,url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/tasks/"+AJS.params.pageId+"/count",success:function(E,F,D){Adhoc.Tasks.updateCount(E);
if(Adhoc.Tasks.clickedTasksId&&Adhoc.Tasks.clickedTasksId>0){B("#adhocTasksLink").click()
}}})
}catch(C){}}})
})(AJS.$);
var Adhoc=Adhoc||{};
Adhoc.Workflow=Adhoc.Workflow||{};
(function(A){Adhoc.Workflow.workflowAction=function(){var B=A("#adhocWorkflowsLink");
A("#add-menu-link").click();
B.css("display","block").css("visibility","inherit").click();
return false
};
Adhoc.Workflow.addApprovalAction=function(){var B=A("#adhocWorkflowsLink");
A("#add-menu-link").click();
B.css("display","block").css("visibility","inherit").addClass("approvalworkflow").click();
return false
};
Adhoc.Workflow.doAddWorkflow=function(){var C=A(this);
var B={workflowId:C.find("select").val(),stateNames:C.find("input.state-names").val()};
Adhoc.submitProgress(A(this).parents(".adhoc"));
A.ajax({type:"POST",cache:false,contentType:"application/json; charset=utf-8",url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/workflow/"+AJS.params.pageId+"/add",data:JSON.stringify(B),success:function(E,F,D){if(D.status==200){A("#addAdhocWorkflow").hide();
Adhoc.Workflow.setState(E)
}Adhoc.dialog.hide()
},error:Adhoc.errorHandler});
return false
};
Adhoc.Workflow.doAddApprovalWorkflow=function(){var C=A(this);
var B={workflowId:0};
A.ajax({type:"POST",cache:false,contentType:"application/json; charset=utf-8",url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/workflow/"+AJS.params.pageId+"/add?default=true",data:JSON.stringify(B),success:function(E,F,D){if(D.status==200){A("#addAdhocWorkflow").hide();
A("#addApprovalWorkflow").hide();
Adhoc.Workflow.setState(E)
}Adhoc.dialog.hide();
A("#adhocWorkflowsLink").click()
},error:Adhoc.errorHandler});
return false
};
Adhoc.Workflow.doSelectTemplate=function(){var C=A(this).val();
var B=A(this).parents("form");
if(C==0){B.addClass("adhoc")
}else{B.removeClass("adhoc")
}};
Adhoc.Workflow.doTemplatesDialog=function(B,D,E){D.empty();
D.append(AJS.template.load("adhocworkflows-select").fill());
D.find(".close-dialog").click(Adhoc.doHidePopup);
D.find("select").change(Adhoc.Workflow.doSelectTemplate);
if(E.status!=200){return 
}var C=B.templates;
for(i=0;
i<C.length;
i++){D.find("#select-workflow-templates").append(AJS.template.load("adhocworkflows-select-template").fill(C[i]))
}D.find("#select-workflow-templates").append(AJS.template.load("adhocworkflows-adhoc-template").fill());
D.find("form").submit(Adhoc.Workflow.doAddWorkflow)
}
})(AJS.$);
var Adhoc=Adhoc||{};
Adhoc.Form=Adhoc.Form||{};
Adhoc.menuActions=Adhoc.menuActions||[];
(function(A){Adhoc.Form.toggleEdit=function(){A("#workflow-form").toggleClass("edit");
return false
};
Adhoc.Form.doSubmitForm=function(){var D={fields:[]};
var C=A(this).parents("form").find("table input");
C.each(function(){D.fields.push({id:A(this).attr("name"),value:A(this).attr("value")})
});
var B=A(this).parents("form").find("table select");
B.each(function(){D.fields.push({id:A(this).attr("name"),value:A("option:selected",A(this)).text()})
});
Adhoc.submitProgress(A(this).parents(".adhoc"));
A.ajax({type:"POST",cache:false,contentType:"application/json; charset=utf-8",url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/forms/"+AJS.params.pageId+"/submit",data:JSON.stringify(D),success:function(G,H,F){if(F.status==200){var E=Adhoc.state.stateName!=G.stateName;
Adhoc.Workflow.setState(G);
A("#adhocWorkflowsLink").click()
}else{Adhoc.dialog.hide()
}},error:Adhoc.errorHandler});
return false
};
Adhoc.Form.doFormDialog=function(G,C){var E=G.inputFields;
C.append(AJS.template.load("adhocworkflows-form").fill());
var D=C.find(".ahoc-form table");
for(i=0;
i<E.length;
i++){var B=E[i];
D.append(AJS.template.load("adhocworkflows-inputfield").fill(B));
var F=C.find("#"+B.id);
if(B.type=="USER"){F.append(AJS.template.load("adhocworkflows-inputfield-user").fill(B));
A.ajax({type:"GET",cache:false,url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/forms/user/"+F.find("span").html(),success:function(H,J,I){if(I.status!=200){return 
}C.find("span[title='"+H.name+"']").html("").append(AJS.template.load("adhocworkflows-inputfield-decorated-user").fill(H))
},error:Adhoc.errorHandler})
}else{if(B.type=="LIST"){F.append(AJS.template.load("adhocworkflows-inputfield-list").fill(B));
for(j=0;
j<B.options.length;
j++){F.find("select").append(AJS.template.load("adhocworkflows-inputfield-list-option").fill({option:B.options[j],selected:(B.options[j]==B.value?"selected='selected'":"")}))
}}else{F.append(AJS.template.load("adhocworkflows-inputfield-text").fill(B))
}}}C.find(".edit-form").click(Adhoc.Form.toggleEdit);
if(G.initParameters){C.find(".edit-form").click()
}C.find("input[type='submit']").click(Adhoc.Form.doSubmitForm);
C.find(".cancel-dialog").click(Adhoc.doHidePopup);
Adhoc.setPresetUsers(A("#inline-dialog-adhocWorkflowsPopup .usersdropdown .aui-dropdown"),G.involvedUsers);
C.find("input.autocomplete-user").click(function(){A(this).parents("td").find(".usersdropdown a.aui-dd-trigger").click()
});
C.find(".usersdropdown").dropDown("Standard")
};
Adhoc.Form.showParameters=function(){Adhoc.action.showParameters=true;
Adhoc.generateActionDialog(Adhoc.dialog.find("div.contents"),Adhoc.action);
return false
}
})(AJS.$);
var Adhoc=Adhoc||{};
Adhoc.Workflow=Adhoc.Workflow||{};
Adhoc.viewHistory=false;
(function(C){Adhoc.clickedApprovalId,Adhoc.dialog,Adhoc.dialogOptions={width:280,offsetY:17,offsetX:-40,hideDelay:10000};
Adhoc.activityOptions={onHover:true,width:380,offsetY:10,offsetX:-40,hideDelay:500};
Adhoc.setPresetUsers=function(G,H){G.empty();
for(var F=0;
F<H.length;
F++){G.append(AJS.template.load("adhocworkflows-user").fill(H[F]))
}G.find("a").click(Adhoc.clickAssignee)
};
Adhoc.updateAssignButton=function(F){var G=F.parents("form").find("input.assign");
if(F.find("li").length>0){G.removeAttr("disabled")
}else{G.attr("disabled","disabled")
}};
Adhoc.addAssignee=function(H,I,K,J,L){if(H.find("li[name='"+I+"']").length>0){return 
}if(H.hasClass("single")){H.find("li").remove()
}var G={name:I,fullName:K,pictureUrl:J};
H.append(AJS.template.load("adhocworkflows-assignee").fill(G));
var F=H.find("li[name='"+G.name+"']");
if(L!=undefined){F.addClass(L)
}F.find(".remove-assignee").click(Adhoc.removeAssignee);
Adhoc.updateAssignButton(H)
};
Adhoc.removeAssignee=function(){var G=C(this).parents("ol");
var F=C(this).parents("li");
F.remove();
Adhoc.updateAssignButton(G);
return false
};
Adhoc.clickAssignee=function(){var G=C(this).parents("form");
var H=C(this).attr("name");
var F=G.find("ol.assignees.select");
C.ajax({type:"GET",cache:false,url:AJS.Confluence.getContextPath()+AJS.REST.getBaseUrl()+"search/user.json?query="+H,success:function(J,L,K){if(J!=undefined&&J.result!=undefined&&J.result.length>0){var I=J.result[0];
Adhoc.addAssignee(F,I.username,I.title,I.thumbnailLink.href)
}},error:function(){}});
AJS.dropDown.current.hide();
return false
};
Adhoc.selectAssignee=function(J,I){try{var H=C(this).parents("form");
var G=H.find("ol.assignees.select");
var F=I.content;
Adhoc.addAssignee(G,F.username,F.title,F.thumbnailLink.href);
H.find("input.autocomplete-user").val("")
}catch(J){}return false
};
Adhoc.getAssignees=function(G){var F=G.find("ol.assignees.select li, ol.assignees.assignee li");
var I="";
var H="";
F.each(function(){H=H+I+jQuery(this).attr("name");
I=","
});
return H
};
Adhoc.errorHandler=function(G,F){console.error("Error, check Adhoc.errorData and Adhoc.errorStatus");
Adhoc.errorData=G;
Adhoc.errorStatus=F
};
Adhoc.doHidePopup=function(){Adhoc.dialog.hide();
return false
};
Adhoc.generateActionDialog=function(F,G){Adhoc.action=G;
F.empty();
if(G.hasParameters){F.addClass("parameters")
}if(G.showParameters){Adhoc.Form.doFormDialog(G,F)
}else{if(G.approvals){Adhoc.Approvals.doDialog(G,F)
}else{if(G.states){Adhoc.Workflow.doStateDialog(G,F)
}else{C("#adhocWorkflowsLink").addClass("published").unbind("click").click(function(){return false
});
Adhoc.doHidePopup()
}}}F.find("a.parameters").click(Adhoc.Form.showParameters)
};
Adhoc.getUrlParams=function E(){var G={};
var F=window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi,function(H,I,J){G[I]=J
});
return G
};
Adhoc.submitProgress=function(G){G.find("input, select, a").attr("disabled","disabled");
var F=Raphael.spinner(G.find(".progress-messages-icon")[0],7,"#666")
};
var B=function(I,F,H){I.addClass("adhoc");
I.empty();
I.append(AJS.template.load("adhocworkflows-loading").fill());
H();
var G=Raphael.spinner(I.find(".progress-messages-icon")[0],7,"#666");
var J=C("#adhocWorkflowsLink");
if(J.hasClass("workflow-state")){C.ajax({type:"GET",cache:false,url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/workflow/"+AJS.params.pageId+"/actions"+(AJS.params.workflowAdmin?"?admin=true":""),success:function(L,M,K){Adhoc.generateActionDialog(I,L)
},error:Adhoc.errorHandler})
}else{if(J.hasClass("approvalworkflow")){Adhoc.Workflow.doAddApprovalWorkflow()
}else{C.ajax({type:"GET",cache:false,url:AJS.Confluence.getContextPath()+"/rest/adhocworkflows/latest/workflow/"+AJS.params.pageId+"/templates",success:function(K,M,L){Adhoc.Workflow.doTemplatesDialog(K,I,L)
},error:Adhoc.errorHandler})
}}};
var D=function(H,I,G){var F=AJS.params.contextPath+"/plugins/adhocworkflows/viewactivity.action?pageId="+AJS.params.pageId+"&history="+I;
Adhoc.viewHistory=I;
AJS.$.get(F,function(K,J,L){H.empty();
H.html(K);
G();
C("#toggleactivity").click(function(){D(H,!Adhoc.viewHistory,G);
return false
})
})
};
var A=function(H,F,G){if(H.hasClass("loading")){return 
}if(AJS.params.chartsEnabled){H.addClass("charts")
}H.addClass("loading");
H.empty();
H.append(AJS.template.load("adhocworkflows-loading").fill());
D(H,!AJS.params.chartsEnabled,G)
};
AJS.toInit(function(G){console.log("initializing Ad hoc Workflows...");
G("#labelsString").focus(Adhoc.Workflow.refreshState);
if(AJS.params.publishedView){G("#adhocWorkflowsLink").addClass("published").click(function(){return false
})
}else{if(AJS.params.anonymous){G("#adhocWorkflowsLink").click(function(){return false
})
}else{Adhoc.dialog=AJS.InlineDialog(G("#adhocWorkflowsLink"),"adhocWorkflowsPopup",B,Adhoc.dialogOptions)
}}G("#addAdhocWorkflow,.addAdhocWorkflowLink").click(Adhoc.Workflow.workflowAction);
G("#addApprovalWorkflow,.addApprovalWorkflowLink").click(Adhoc.Workflow.addApprovalAction);
if(G("#workflow-page-status").length==0){return 
}var F={stateName:AJS.params.stateName,finalState:AJS.params.finalState,hasFinalState:AJS.params.hasFinalState,publishedView:AJS.params.publishedView,alternateViewStateName:AJS.params.alternateViewStateName,alternateViewUrl:AJS.params.alternateViewUrl,taskable:AJS.params.taskable};
Adhoc.Workflow.setState(F);
Adhoc.publishedView=F.publishedView;
if(Adhoc.publishedView){G("#viewPageLink").hide();
G("#viewPageLink").parents("li").hide()
}Adhoc.Workflow.refreshState();
G(".page-metadata-modification-info").append(AJS.template.load("adhocworkflows-activity").fill(AJS.params));
Adhoc.activityDialog=AJS.InlineDialog("#activitylink","activityPopup",A,Adhoc.activityOptions);
try{Adhoc.clickedApprovalId=Adhoc.getUrlParams()["approval"]
}catch(H){}})
})(AJS.$);

