
function EmailLink2(dat)
{var data=dat;var a_id;var dialog,enterKeyListener,errorDialog;this.init=function()
{if(document.getElementById("email_link_form_"+data.info.w_id))
{YAHOO.util.Event.addListener("EmailLink_Link_"+data.info.w_id,"click",onEmailLinkClick);YAHOO.util.Event.addListener("EmailLink_Icon_"+data.info.w_id,"click",onEmailLinkClick);a_id=data.js.a_id;}
evt_a_id_update.subscribe(onAnswerChange);evt_email_link_submit_update.subscribe(onResponseReceived);}
function onEmailLinkClick(type,arg)
{if(!(dialog)){buttons=[{text:data.attrs.label_send_button,handler:submitClicked,isDefault:true},{text:data.attrs.label_cancel_button,handler:closeDialog,isDefault:false}];dialog=actionDialog(data.attrs.dlg_title,document.getElementById('email_link_form_'+data.info.w_id),buttons,'300px');YAHOO.util.Dom.addClass(dialog.id,'rn_email_link_dialog');enterKeyListener=addDialogEnterKeyListener(dialog,submitClicked);var commentField=document.getElementById("EmailLink_comment_"+data.info.w_id);if(commentField){commentField.onfocus=disableKeyListener;commentField.onblur=enableKeyListener;}
var cancelButtonId=dialogButtonName+dialog.dialogNumber+'_1';var obj=new CancelButtonHandlerObj(cancelButtonId);}
dialog.show();dialog.showing=true;var firstField=document.getElementById("EmailLink_to_"+data.info.w_id);enableDialog(firstField);}
function closeDialog(type,arg)
{disableDialog();if(dialog){dialog.hide();dialog.showing=false;}}
function submitClicked()
{disableDialog();var returnValue=validateFormData();if(returnValue){submitRequest();}}
function validateFormData()
{var testElement=document.getElementById("EmailLink_name_"+data.info.w_id);if(!testElement)
return false;else
{testElement.value=YAHOO.lang.trim(testElement.value);if(testElement.value=="")
{var errorMessage=data.attrs['label_name']+' '+RNT.MessageBase.FIELD_REQUIRED;errorDialog=messageDialog(RNT.MessageBase.WARN,errorMessage,"WARN",enableDialog,testElement);return false;}}
testElement=document.getElementById("EmailLink_to_"+data.info.w_id);var emailValidation=validateEmailAddr(testElement,data.attrs['label_to']);if(emailValidation)
{testElement=document.getElementById("EmailLink_from_"+data.info.w_id);emailValidation=validateEmailAddr(testElement,data.attrs['label_sender_email']);return emailValidation;}
return false;}
function validateEmailAddr(emailField,label)
{if(emailField)
{emailField.value=YAHOO.lang.trim(emailField.value);var emailFieldValue=emailField.value;if(emailFieldValue=="")
{var errorMessage=label+' '+RNT.MessageBase.FIELD_REQUIRED;errorDialog=messageDialog(RNT.MessageBase.WARN,errorMessage,"WARN",enableDialog,emailField);return false;}
if(emailFieldValue.indexOf(";")>0||emailFieldValue.indexOf(",")>0||emailFieldValue.indexOf(" ")>0)
{var errorMessage=RNT.MessageBase.SINGLE_EMAIL_ADDR;errorDialog=messageDialog(RNT.MessageBase.WARN,errorMessage,"WARN",enableDialog,emailField);return false;}
if(!RNT.MessageBase.EMAIL_REGEX.test(emailFieldValue))
{var errorMessage=label+' '+RNT.MessageBase.INVALID_EMAIL_FIELD+': '+emailFieldValue;errorDialog=messageDialog(RNT.MessageBase.WARN,errorMessage,"WARN",enableDialog,emailField);return false;}
if(emailFieldValue.length>80)
{var errorMessage=RNT.MessageBase.MAX_LENGTH+': '+emailFieldValue;errorDialog=messageDialog(RNT.MessageBase.WARN,errorMessage,"WARN",enableDialog,emailField);return false;}
return true;}
return false;}
function submitRequest()
{var eventObject=new EventObject();eventObject.name=data.info.controller_name;eventObject.type=data.info.type;eventObject.w_id=data.info.w_id;var packet=new Object();var post=new Object();post["emailAnswerToken"]=data.js.emailAnswerToken;post["to"]=document.getElementById("EmailLink_to_"+data.info.w_id).value;post["from"]=document.getElementById("EmailLink_from_"+data.info.w_id).value;post["name"]=document.getElementById("EmailLink_name_"+data.info.w_id).value;post["a_id"]=a_id;packet["postString"]="to="+post["to"]+"&name="+post["name"]+"&from="+post["from"]+"&a_id="+post["a_id"]
+"&emailAnswerToken="+post["emailAnswerToken"];eventObject.data.post=packet["postString"];evt_email_link_submit_request.fire(eventObject);closeDialog();}
function onResponseReceived(type,arg)
{if(arg[1].w_id!=data.info.w_id)
return false;var titleString=data.attrs.dlg_title;var messageString=(arg[0]&&arg[0]!=true)?arg[0]:data.attrs.label_email_sent;errorDialog=messageDialog(titleString,messageString,null,null);return false;}
function onAnswerChange(type,arg)
{var eventObject=arg[0];a_id=eventObject.a_id;}
function disableDialog(){disableDialogControls(dialog,enterKeyListener);}
function enableDialog(focusElement){enableDialogControls(dialog,enterKeyListener,focusElement);}
function disableKeyListener(){disableDialogKeyListener(dialog,enterKeyListener);}
function enableKeyListener(){enableDialogKeyListener(dialog,enterKeyListener);}
function CancelButtonHandlerObj(id){YAHOO.util.Event.onContentReady(id,this.handleOnContentReady,this);}
CancelButtonHandlerObj.prototype.handleOnContentReady=function(me){var cancelButtonSpanElement=document.getElementById(this.id);if(cancelButtonSpanElement){var cancelButtonElements=cancelButtonSpanElement.getElementsByTagName("button");if(cancelButtonElements[0]){cancelButtonElements[0].onfocus=disableKeyListener;cancelButtonElements[0].onblur=enableKeyListener;}}}}

function AnswerFeedback(dat)
{var data=dat;var index=1;var meterLength=data.attrs.num_options;var rate=0;var feedbackFormHeight,feedBodyHeight;var feedSent=false;this.init=function()
{for(var i=0;i<=data.attrs.num_options;++i)
{YAHOO.util.Event.addListener("meter_cell_"+i+"_"+data.info.w_id,"mouseover",onCellOver,i,this);YAHOO.util.Event.addListener("meter_cell_"+i+"_"+data.info.w_id,"mouseout",onCellOut,i,this);YAHOO.util.Event.addListener("meter_cell_"+i+"_"+data.info.w_id,"click",onCellClick,i,this);}
var meter_cell_width=document.getElementById("meter_cell_1_"+data.info.w_id).offsetWidth;var rate_meter_info_width=meter_cell_width*(data.attrs.num_options+1);YAHOO.util.Dom.setStyle("rate_meter_info_"+data.info.w_id,"width",rate_meter_info_width+"px");var leftLabelWidth=document.getElementById("left_info_"+data.info.w_id).offsetWidth;var rightLabelWidth=document.getElementById("right_info_"+data.info.w_id).offsetWidth;wide_rate_meter_info_width=leftLabelWidth+rightLabelWidth;if(wide_rate_meter_info_width>rate_meter_info_width){wide_rate_meter_info_width+=7;YAHOO.util.Dom.setStyle("rate_meter_info_"+data.info.w_id,"width",wide_rate_meter_info_width+"px");}}
function onCellOver(type,args)
{document.getElementById('rating_value_'+data.info.w_id).innerHTML=document.getElementById("meter_cell_"+args+"_"+data.info.w_id).title;if(data.attrs.opts_desc)
{for(var i=args;i>0;i--)
document.getElementById("meter_cell_"+i+"_"+data.info.w_id).className="Cell Cell_over";for(var i=meterLength;i>args;i--)
document.getElementById("meter_cell_"+i+"_"+data.info.w_id).className="Cell";}
else
{for(var i=1;i<=args;i++)
document.getElementById("meter_cell_"+i+"_"+data.info.w_id).className="Cell Cell_over";for(var i=(args+1);i<=meterLength;i++)
document.getElementById("meter_cell_"+i+"_"+data.info.w_id).className="Cell";}}
function onCellOut(type,args)
{document.getElementById('rating_value_'+data.info.w_id).innerHTML='&nbsp;';if(data.attrs.opts_desc)
{for(var i=meterLength;i>(index+1);i--)
document.getElementById("meter_cell_"+i+"_"+data.info.w_id).className="Cell";}
else
{for(var i=index;i<=meterLength;i++)
document.getElementById("meter_cell_"+i+"_"+data.info.w_id).className="Cell";}}
function onCellClick(type,args)
{onCellOver(0,args);YAHOO.util.Event.preventDefault(type);var rate_meter=document.getElementById("rate_meter_"+data.info.w_id);YAHOO.util.Event.purgeElement(rate_meter,true);rate=args;if(data.attrs.feedback_page_url&&rate<=data.attrs.threshold)
{var pageString="/app/"+data.attrs.feedback_page_url+data.js.session;pageString=urlParmAdd(pageString,"a_id",data.js.a_id);window.open(pageString,data.js.suggest_title,"resizable, scrollbars, width=630, height=400");}
else
{var feedbackTrigger=document.getElementById("FeedbackDialogLink_"+data.info.w_id);rate=rate+'';feedbackTrigger.value=rate;feedbackTrigger.click();var pageMessage=document.getElementById("thanks_lbl_"+data.info.w_id);if(pageMessage)
pageMessage.innerHTML=data.attrs.label_feedback_submit;}}}

function FeedbackDialog(dat)
{var data=dat;var a_id;var dialog,errorDialog,buttons;var rate=0;var keyListener=null;var focusElement;var incidentCreateFlag=false;this.init=function()
{if(data.attrs.trigger_el)
{YAHOO.util.Event.addListener(data.attrs.trigger_el,"click",onFeedbackTriggerClick);evt_feedback_submit_update.subscribe(onResponseReceived);}}
function onFeedbackTriggerClick(type,args)
{var answerRating=parseInt(this.value);if(answerRating){rate=answerRating;if(answerRating>data.attrs.threshold)
{onSubmit();return false;}}
if(!(dialog)){var dialogTitle=data.attrs.dlg_title;var dialogContent=data.attrs.dlg_content;buttons=[{text:data.attrs.label_send_button,handler:onSubmit,isDefault:true},{text:data.attrs.label_cancel_button,handler:onCancel,isDefault:false}];dialog=actionDialog(dialogTitle,document.getElementById(dialogContent),buttons);YAHOO.util.Dom.addClass(dialog.id,'rn_feedback_dialog');keyListener=addDialogEnterKeyListener(dialog,onSubmit);var commentField=document.getElementById("feedback_message_"+data.attrs.caller_id);if(commentField){commentField.onfocus=disableKeyListener;commentField.onblur=enableKeyListener;var cancelButtonID=dialogButtonName+dialog.dialogNumber+'_1';var newObject=new CancelButtonHandler(cancelButtonID);}}
dialog.show();dialog.showing=true;focusElement=null;var emailField=document.getElementById('feedback_email_'+data.attrs.caller_id);var textareaField=document.getElementById('feedback_message_'+data.attrs.caller_id);if(emailField)
if(emailField.value==''){focusElement=emailField;}
else if(textareaField)
focusElement=textareaField;enableDialog(focusElement);}
function closeDialog(type,arge)
{var callerMessage=document.getElementById("feedback_message_"+data.attrs.caller_id);if(callerMessage)
callerMessage.value="";disableDialogKeyListener(dialog,keyListener);if(dialog){dialog.showing=false;dialog.hide();}}
function onSubmit(type,args)
{disableDialog();if(rate<=data.attrs.threshold){var returnValue=validateDlgData();if(!(returnValue))
return false;incidentCreateFlag=true;}
submitRequest(incidentCreateFlag);}
function onCancel(type,args)
{disableDialog();submitRequest(incidentCreateFlag);closeDialog();}
function validateDlgData()
{var testElement;testElement=document.getElementById("feedback_email_"+data.attrs.caller_id);if(testElement&&(!(RNT.MessageBase.EMAIL_REGEX.test(testElement.value))))
{var errorMessage=data.attrs.email_fld_label+' '+RNT.MessageBase.INVALID_EMAIL_FIELD
errorDialog=messageDialog(RNT.MessageBase.WARN,errorMessage,"WARN",enableDialog,testElement);return false;}
testElement=document.getElementById("feedback_message_"+data.attrs.caller_id);if(!(lengthWithoutSpaces(testElement.value))){var errorMessage=data.attrs.comment_fld_label+' '+RNT.MessageBase.FIELD_REQUIRED
errorDialog=messageDialog(RNT.MessageBase.WARN,errorMessage,"WARN",enableDialog,testElement);return false;}
return true;}
function submitRequest(createIncident)
{var eventObject=new EventObject();eventObject.name=data.info.controller_name;eventObject.type=data.info.type;eventObject.w_id=data.info.w_id;var packet=new Object();var post=new Object();var callerEmail=document.getElementById("feedback_email_"+data.attrs.caller_id);if(callerEmail)
post["email"]=callerEmail.value;var callerMessage=document.getElementById("feedback_message_"+data.attrs.caller_id);if(callerMessage)
post["message"]=encodeURIComponent(callerMessage.value);post["summary"]=data.js.summary;post["a_id"]=data.js.a_id;post["rate"]=rate;post["threshold"]=data.attrs.threshold;post["submitfeedback"]=(createIncident)?1:0;packet["postString"]="email="+post["email"]+"&message="+post["message"]+"&summary="+post["summary"]+"&a_id="+post["a_id"]+"&rate="+post["rate"]+"&threshold="+post["threshold"]
+"&submitfeedback="+post["submitfeedback"];eventObject.data.post=packet["postString"];evt_feedback_submit_request.fire(eventObject);return false;}
function onResponseReceived(type,arg)
{if(incidentCreateFlag)
{var result=arg[0].parseJSON();incidentCreateFlag=false;if(!result)
{var titleString=RNT.MessageBase.REQUEST_ERROR;var messageString=RNT.MessageBase.REQUEST_ERROR;errorDialog=messageDialog(titleString,messageString,"WARN",enableDialog,null);}
else if(typeof(result)=="string")
{var titleString=result;var messageString=result;errorDialog=messageDialog(titleString,messageString,"WARN",enableDialog,null);}
else
{var titleString=data.attrs.confirm_dlg_title;var messageString=RNT.MessageBase.FEEDBACK_SUCCESS;errorDialog=messageDialog(titleString,messageString,null,null);closeDialog();}}
else
{closeDialog();}}
function disableDialog(){if(dialog){disableDialogControls(dialog,keyListener);}}
function enableDialog(focusElement){if(dialog){enableDialogControls(dialog,keyListener,focusElement);}}
function disableKeyListener(){disableDialogKeyListener(dialog,keyListener);}
function enableKeyListener(){enableDialogKeyListener(dialog,keyListener);}
function CancelButtonHandler(id){YAHOO.util.Event.onContentReady(id,this.handleOnContentReady,this);}
CancelButtonHandler.prototype.handleOnContentReady=function(me){var cancelButtonSpanElement=document.getElementById(this.id);if(cancelButtonSpanElement){var cancelButtonElements=cancelButtonSpanElement.getElementsByTagName("button");if(cancelButtonElements[0]){cancelButtonElements[0].onfocus=disableKeyListener;cancelButtonElements[0].onblur=enableKeyListener;}}}}