home *** CD-ROM | disk | FTP | other *** search
/ business-86-101-185-173.business.broadband.hu / business-86-101-185-173.business.broadband.hu.zip / business-86-101-185-173.business.broadband.hu / trans / sqlncli.msi / DP_sqlncli10_chm_32_1033 / local / script_fb.js < prev    next >
Text File  |  2010-03-31  |  19KB  |  607 lines

  1. /*************************************************************************
  2.  * WSS UX FeedBack Class
  3.  * New format
  4.  *************************************************************************/
  5. /*************************************************************************
  6.  * Constructor ***********************************************************
  7.  *************************************************************************/
  8. function FeedBack
  9.  (
  10.   _Alias,
  11.   _Product,
  12.   _Deliverable,
  13.   _ProductVersion,
  14.   _DocumentationVersion,
  15.   _FeedBackDivID
  16.  )
  17. {
  18.     this.Alias                = _Alias;
  19.     this.Product              = _Product;
  20.     this.Deliverable      = _Deliverable;
  21.     this.ProductVersion       = _ProductVersion;
  22.     this.DocumentationVersion = _DocumentationVersion;
  23.     this.FeedBackDivID      = _FeedBackDivID;
  24.     this.DefaultBody      = this.DefaultBody;
  25. }
  26.  
  27. /*************************************************************************
  28.  *Member Properties ******************************************************
  29.  *************************************************************************/
  30.  
  31. //START: Text Regions
  32. FeedBack.prototype.FeedbackIntroduction = L_fbintroduction;
  33. //  END: Text Regions
  34. //START: Button Text
  35. FeedBack.prototype.Submit    = L_fbsend;
  36. FeedBack.prototype.AltSubmit = L_fbaltsend;
  37. //  END: Button Text
  38.  
  39. //START: Default Mail Body Text
  40. FeedBack.prototype.DefaultBody = L_fddefaultbody;
  41. //  END: Default Mail Body Text
  42.  
  43. //CSS Class
  44. FeedBack.prototype.table_CSS        = "fbtable";
  45. FeedBack.prototype.tdtitle_CSS        = "fbtitletd";
  46. FeedBack.prototype.input_CSS        = "fbinputtd";
  47. FeedBack.prototype.textarea_CSS        = "fbtextarea";
  48. FeedBack.prototype.verbatimtable_CSS    = "fbverbatimtable";
  49. FeedBack.prototype.button_CSS        = "fbinputbutton";
  50.  
  51. //BTN IDs
  52. FeedBack.prototype.YesButton_ID    = "YesButton";
  53. FeedBack.prototype.NoButton_ID     = "NoButton";
  54. FeedBack.prototype.BackButton_ID   = "BackButton";
  55. FeedBack.prototype.NextButton_ID   = "NextButton";
  56. FeedBack.prototype.SubmitButton_ID = "SubmitButton";
  57. FeedBack.prototype.Verbatim_ID       = "VerbatimTextArea";
  58. FeedBack.prototype.Radio_ID       = "fbRating";
  59.  
  60. //FeedBack Location ID's
  61. FeedBack.prototype.SpanTag_ID = "fb";
  62. FeedBack.prototype.DivTag_ID  = "feedbackarea";
  63.  
  64. //BTN Event Methods
  65. FeedBack.prototype.startfeedback_EVENT      = "document.feedback.StartFeedBack([feedback])";
  66. FeedBack.prototype.submitfeedback_EVENT     = "document.feedback.SubmitFeedBack([feedback])";
  67.  
  68. //Default FeedBack Values
  69. FeedBack.prototype.Rating       = 3; // default is 3. 3 is satisfied. 0-3 scale
  70. FeedBack.prototype.Verbatim       = "";
  71. FeedBack.prototype.Title       = document.title;
  72. FeedBack.prototype.URL    = location.href.replace(location.hash,"");
  73. FeedBack.prototype.SystemLanguage = navigator.systemLanguage;
  74. FeedBack.prototype.Version       = 2004;
  75.  
  76. /*************************************************************************
  77.  * Member Methods ********************************************************
  78.  *************************************************************************/
  79.  
  80.  FeedBack.prototype.StartFeedBack = _StartFeedBack;
  81.  function _StartFeedBack(FeedBackSpanTag,first)
  82.  {
  83.   //build feedback div
  84.  
  85. if (first==true)
  86. {
  87. var stream =  '<DIV ID="feedbackarea">'
  88.     + '<FORM METHOD="post" ENCTYPE="text/plain" NAME="formRating">'
  89.     + '<H5 STYLE="margin-bottom:0.7em;">' + L_fb1Title_Text + '</H5>'
  90.     + '<P>' + L_fbintroduction + '</P>'
  91.     + "<table>"
  92.     + "<tr>"
  93.     + "<td>" + L_fb1Poor + "</td>"
  94.     + this.MakeRadio(0,"1")
  95.     + this.MakeRadio(0,"2")
  96.     + this.MakeRadio(0,"3")
  97.     + this.MakeRadio(0,"4")
  98.     + this.MakeRadio(0,"5")
  99.     + "<td>" + L_fb1Excellent + "</td>"
  100.     + "</tr>"
  101.     + "</table>"
  102.     + '<P>' + L_fb1EnterFeedbackHere_Text + '    '
  103.     + this.MakeButton(this.SubmitButton_ID, L_fbsend, this.submitfeedback_EVENT.replace("[feedback]",this.FeedBackDivID)) + '</P>'
  104.     + '</FORM>'
  105.     + '</div>';
  106. }
  107. else 
  108. {
  109. var stream =  '<DIV ID="feedbackarea">'
  110.     + '<FORM METHOD="post" ENCTYPE="text/plain" NAME="formRating">'
  111.     + '<H5 STYLE="margin-bottom:0.7em;">' + L_fb1Title_Text + '</H5>'
  112.     + '<P>' + L_fbintroduction + '</P>'
  113.     + "<table>"
  114.     + "<tr>"
  115.     + "<td>" + L_fb1Poor + "</td>"
  116.     + this.MakeRadio(0,"1")
  117.     + this.MakeRadio(0,"2")
  118.     + this.MakeRadio(0,"3")
  119.     + this.MakeRadio(0,"4")
  120.     + this.MakeRadio(0,"5")
  121.     + "<td>" + L_fb1Excellent + "</td>"
  122.     + "</tr>"
  123.     + "</table>"
  124.     + '<P>' + L_fb1EnterFeedbackHere_Text + '    '
  125.     + this.MakeButton(this.SubmitButton_ID, L_fbsend, this.submitfeedback_EVENT.replace("[feedback]",this.FeedBackDivID)) + '   <B>' + L_fb1Acknowledge + '</B>' + '</P>'
  126.     + '</FORM>'
  127.     + '</div>';
  128. }
  129.   
  130.   //load feedback div
  131.   FeedBackSpanTag.innerHTML = stream;
  132.  }
  133.  
  134.  FeedBack.prototype.MakeRadio = _MakeRadio;
  135.  function _MakeRadio(val,txt)
  136.  {
  137.   var stream = "<td class='" + this.input_CSS + "' align=right>"
  138.         + txt + "<BR><input name=" + this.Radio_ID + " type=radio value=" + val + " onclick='" + this.setrating_EVENT + "' "
  139.         + " " + ((this.Rating == val) ? "CHECKED" : "") + ">" + "</input></td>"
  140.   return stream;
  141.  }
  142.  
  143.  FeedBack.prototype.MakeButton = _MakeButton;
  144.  function _MakeButton(id, val, evt)
  145.  {
  146.   var stream = "<input id='submitFeedback' type=button id=" + id +" value=\"" + val + "\" onclick=\"" + evt + "\">"
  147.     
  148.   return stream;
  149.  }
  150.  
  151.  FeedBack.prototype.SubmitFeedBack = _SubmitFeedBack;
  152.  function _SubmitFeedBack()
  153.  {
  154.   if(event.srcElement.id == this.YesButton_ID)
  155.   {
  156.    this.Rating = 3;
  157.    this.Verbatim = this.DefaultBody;
  158.   }
  159.   
  160.   var subject = this.Title
  161.   + " ("
  162.   + "/1:"
  163.   + this.Product
  164.   + "/2:"
  165.   + this.ProductVersion
  166.   + "/3:"
  167.   + this.DocumentationVersion
  168.   + "/4:"
  169.   + this.DeliverableValue()
  170.   + "/5:"
  171.   + this.URLValue()
  172.   + "/6:"
  173.   + GetRating()    //  + this.Rating
  174.   + "/7:"
  175.   + this.DeliveryType()
  176.   + "/8:"
  177.   + this.SystemLanguage
  178.   + "/9:"
  179.   + this.Version
  180.         + ")"; 
  181.  
  182.   var sEntireMailMessage = "MAILTO:"
  183.   + this.Alias
  184.   + "?subject=" + subject 
  185.      + "&body=" + ((this.Verbatim != "") ? this.Verbatim : this.DefaultBody);
  186.  
  187.   location.href=sEntireMailMessage;
  188.   
  189.   first = false;
  190.   document.feedback.StartFeedBack(fb,first);
  191.  
  192.   return;
  193.  }
  194.  
  195.  FeedBack.prototype.CheckDeliverable = _CheckDeliverable;
  196.  function _CheckDeliverable()
  197.  {
  198.   var stream = "CheckDeliverable";
  199.   
  200.   alert(stream);
  201.  }
  202.  
  203.  FeedBack.prototype.SetRating = _SetRating;
  204.  function _SetRating(val)
  205.  {
  206.   this.Rating = val;
  207.  }
  208.  
  209.  FeedBack.prototype.ReloadFeedBack = _ReloadFeedBack;
  210.  function _ReloadFeedBack()
  211.  {
  212.   location.reload(true);
  213.  }
  214.  
  215.  FeedBack.prototype.ScrollToFeedBack = _ScrollToFeedBack;
  216.  function _ScrollToFeedBack(FeedBackSpanTag)
  217.  {
  218.   window.scrollTo(0,10000);
  219.   FeedBackSpanTag.scrollIntoView(true);
  220.  }
  221.  
  222.  FeedBack.prototype.SetVerbatim = _SetVerbatim;
  223.  function _SetVerbatim(TextAreaValue)
  224.  {
  225.   this.Verbatim = TextAreaValue;
  226.  }
  227.  
  228. FeedBack.prototype.DeliveryType = _DeliveryType;
  229. function _DeliveryType()
  230. {
  231.  if (this.URL.indexOf("ms-help://")!=-1) {return("h");}
  232.     else if (this.URL.indexOf(".chm::/")!=-1) {return("c");}
  233.     else if (this.URL.indexOf("http://")!=-1) {return("w");}
  234.     else if (this.URL.indexOf("file:")!=-1) {return("f");}
  235.     else return("0");
  236. }
  237. FeedBack.prototype.DeliverableValue = _DeliverableValue;
  238. function _DeliverableValue()
  239. {
  240.  if (this.URL.indexOf("ms-help://")!=-1) 
  241.     {
  242.     delvalue  = location.href.slice(0,location.href.lastIndexOf("/html/"));
  243.     delvalue  = delvalue.slice(delvalue.lastIndexOf("/")+1);
  244.     return delvalue;
  245.     }
  246.     else return(this.Deliverable);
  247. }
  248. FeedBack.prototype.URLValue = _URLValue;
  249. function _URLValue()
  250. {
  251.  if (this.URL.indexOf(".chm::")!=-1) 
  252.     {
  253.     a = this.URL;
  254.     while (a.indexOf("\\") < a.indexOf(".chm::") || a.indexOf("//") > a.indexOf(".chm::")) {
  255.         if (a.indexOf("\\")==-1)
  256.         {
  257.         break;
  258.         }
  259.         a = a.substring(a.indexOf("\\")+1,a.length);
  260.     }
  261.     return("ms-its:"+a)
  262.     }
  263.  else if (this.URL.indexOf("file:///")!=-1) 
  264.     {
  265.     a = this.URL;
  266.  
  267.     b = a.substring(a.lastIndexOf("html")+5,a.length);
  268.     return("file:///"+b);
  269.     }
  270.     else return(this.URL);
  271. }
  272.  
  273.  
  274. //---Gets topic rating.---
  275. function GetRating()
  276. {
  277.  
  278.     sRating = "0";
  279.     for(var x = 0;x < 5;x++)
  280.       {
  281.               if(document.formRating.fbRating(x).checked) {sRating = x + 1;}
  282.       }
  283.     return sRating;
  284. }
  285.  
  286. function altFeedback(src) {
  287.     src.title=L_fbaltIcon;
  288.     return;
  289.     }
  290.  
  291. function HeadFeedBack(HeadFeedBackSpanTag)
  292. {
  293.  
  294.  var sstream =  '<DIV ID="headfeedbackarea">'
  295.     + '<a href="#Feedback" onmouseover=altFeedback(this) ID="IconFB" Target="_self">'
  296.         + '<img id="feedb" src="../local/pencil.gif">'
  297.         + '</img>'
  298.     + L_fbsend
  299.         + '</a>'
  300.     + '</div>';
  301.   
  302.   //load feedback div
  303.   HeadFeedBackSpanTag.innerHTML = sstream;
  304.  }
  305.  
  306.  
  307. /*************************************************************************
  308.  * WSS UX FeedBack Class (old style)
  309.  *      Date: 2/8/2004
  310.  *************************************************************************/
  311.  
  312. /*************************************************************************
  313.  * Constructor ***********************************************************
  314.  *************************************************************************/
  315. function FdBack
  316.  (
  317.   _Alias,
  318.   _Product,
  319.   _Deliverable,
  320.   _ProductVersion,
  321.   _DocumentationVersion,
  322.   _FeedBackDivID
  323.  )
  324. {
  325.     this.Alias                = _Alias;
  326.     this.Product              = _Product;
  327.     this.Deliverable      = _Deliverable;
  328.     this.ProductVersion       = _ProductVersion;
  329.     this.DocumentationVersion = _DocumentationVersion;
  330.     this.FeedBackDivID      = _FeedBackDivID;
  331.     this.DefaultBody      = this.DefaultBody;
  332. }
  333.  
  334. /*************************************************************************
  335.  *Member Properties ******************************************************
  336.  *************************************************************************/
  337.  
  338. //START: Text Regions
  339. FdBack.prototype.FdBackIntroduction = L_fdintro;
  340. FdBack.prototype.WhyWrong             = L_fdwhywrong;
  341. FdBack.prototype.WhatWrong        = L_fdwhatwrong;
  342. FdBack.prototype.InformationWrong     = L_fdinfowrong;
  343. FdBack.prototype.NeedsMore            = L_fdneedsmore;
  344. FdBack.prototype.NotExpected          = L_fdnotexpected;
  345. //  END: Text Regions
  346.  
  347. //START: Button Text
  348. FdBack.prototype.Yes       = L_fdyes;
  349. FdBack.prototype.No        = L_fdno;
  350. FdBack.prototype.Back      = L_fdback;
  351. FdBack.prototype.Next      = L_fdnext;
  352. FdBack.prototype.Submit    = L_fdsubmit;
  353. FdBack.prototype.AltYes    = L_fdaltyes;
  354. FdBack.prototype.AltNo     = L_fdaltno;
  355. FdBack.prototype.AltBack   = L_fdaltback;
  356. FdBack.prototype.AltNext   = L_fdaltnext;
  357. FdBack.prototype.AltSubmit = L_fdaltsubmit;
  358. //  END: Button Text
  359.  
  360. //START: Default Mail Body Text
  361. FdBack.prototype.DefaultBody = L_fddefaultbody;
  362. //  END: Default Mail Body Text
  363.  
  364. //CSS Class
  365. FdBack.prototype.table_CSS        = "fdbackarea";
  366. FdBack.prototype.tdtitle_CSS        = "fdbackarea";
  367. FdBack.prototype.input_CSS        = "fdbackinput";
  368. FdBack.prototype.textarea_CSS        = "fbtextarea";
  369. FdBack.prototype.verbatimtable_CSS    = "fbverbatimtable";
  370. FdBack.prototype.button_CSS        = "fdbackinputbutton";
  371.  
  372. //BTN IDs
  373. FdBack.prototype.YesButton_ID    = "YesButton";
  374. FdBack.prototype.NoButton_ID     = "NoButton";
  375. FdBack.prototype.BackButton_ID   = "BackButton";
  376. FdBack.prototype.NextButton_ID   = "NextButton";
  377. FdBack.prototype.SubmitButton_ID = "SubmitButton";
  378. FdBack.prototype.Verbatim_ID       = "VerbatimTextArea";
  379. FdBack.prototype.Radio_ID       = "fbRating";
  380.  
  381. //FeedBack Location ID's
  382. FdBack.prototype.SpanTag_ID = "fb";
  383. FdBack.prototype.DivTag_ID  = "fdbackarea";
  384.  
  385. //BTN Event Methods
  386. FdBack.prototype.startFdBack_EVENT      = "document.FdBack.StartFdBack([feedback])";
  387. FdBack.prototype.getwatsoncurvedata_EVENT = "document.FdBack.GetWatsonCurveData([feedback])";
  388. FdBack.prototype.getverbatim_EVENT        = "document.FdBack.GetVerbatim([feedback])";
  389. FdBack.prototype.submitFdBack_EVENT     = "document.FdBack.SubmitFdBack()";
  390. FdBack.prototype.setrating_EVENT        = "document.FdBack.SetRating(this.value)";
  391. FdBack.prototype.textareablur_EVENT        = "document.FdBack.SetVerbatim(this.value)";
  392.  
  393. //Default FeedBack Values
  394. FdBack.prototype.Rating       = 3; // default is 3. 3 is satisfied. 0-3 scale
  395. FdBack.prototype.Verbatim       = "";
  396. FdBack.prototype.Title       = document.title;
  397. FdBack.prototype.URL    = location.href.replace(location.hash,"");
  398. FdBack.prototype.SystemLanguage = navigator.systemLanguage;
  399. FdBack.prototype.Version       = 2004;
  400.  
  401. /*************************************************************************
  402.  * Member Methods ********************************************************
  403.  *************************************************************************/
  404.  
  405.  FdBack.prototype.StartFdBack = _StartFdBack;
  406.  function _StartFdBack(FdBackSpanTag)
  407.  {
  408.   //build feedback div
  409.   var stream = "<div id='" + this.DivTag_ID + "'>"
  410.         + "<table class='"+this.table_CSS+"'>"
  411.         +     "<tr><td colspan='2' class='" + this.tdtitle_CSS + "'>" + L_fdintro + "</td></tr>"
  412.         +    "<tr><td colspan='2' class='" + this.input_CSS + "' align=right>"
  413.         +    this.MakeButton(this.YesButton_ID, this.Yes, this.submitFdBack_EVENT.replace("[feedback]",this.FeedBackDivID))
  414.         +     this.MakeButton(this.NoButton_ID,  this.No,  this.getwatsoncurvedata_EVENT.replace("[feedback]",this.FeedBackDivID))
  415.         +    "</td></tr>"
  416.         + "</table>"
  417.   + "</div>";
  418.   
  419.   //load feedback div
  420.   FdBackSpanTag.innerHTML = stream;
  421.  }
  422.  
  423.  FdBack.prototype.GetWatsonCurveData = _GetWatsonCurveData;
  424.  function _GetWatsonCurveData(FdBackSpanTag)
  425.  {
  426.   if(this.Rating > 2) this.Rating = 0;
  427.   
  428.   var stream = "<div id='" + this.DivTag_ID + "'>"
  429.         + "<table class='"+this.verbatimtable_CSS+"'>"
  430.         + "<tr><td colspan='2' class='" + this.tdtitle_CSS + "'>" + this.WhyWrong + "</td></tr>"
  431.         + this.MakeRadio(0, this.InformationWrong)
  432.         + this.MakeRadio(1, this.NeedsMore)
  433.         + this.MakeRadio(2, this.NotExpected)
  434.         + "<tr><td colspan='2' class='" + this.input_CSS + "' align=right>"
  435.         + this.MakeButton(this.BackButton_ID, this.Back, this.startFdBack_EVENT.replace("[feedback]",this.FeedBackDivID))
  436. //Following commented to supress verbatim and the line after enables mail
  437. //        + this.MakeButton(this.NextButton_ID, this.Next, this.getverbatim_EVENT.replace("[feedback]",this.FeedBackDivID))
  438.         + this.MakeButton(this.SubmitButton_ID, this.Submit,this.submitFdBack_EVENT.replace("[feedback]",this.FeedBackDivID))
  439.         + "</td></tr>"
  440.         + "</table>"
  441.   + "</div>";
  442.   
  443.   //load feedback div
  444.   FdBackSpanTag.innerHTML = stream;
  445.   
  446.    //scroll down to feedback  
  447.   this.ScrollToFdBack(FdBackSpanTag);
  448.  }
  449.  
  450. // FdBack.prototype.GetVerbatim = _GetVerbatim;
  451.  function _GetVerbatim(FdBackSpanTag)
  452.  {
  453.   var stream = "<div id='" + this.DivTag_ID + "'>"
  454.         + "<table class='"+this.verbatimtable_CSS+"'>"
  455.         + "<tr><td colspan='2' class='" + this.tdtitle_CSS + "'>" + this.WhatWrong + "</td></tr>"
  456.         + "<tr><td colspan='2' class='" + this.input_CSS + "'><textarea class="+ this.textarea_CSS +" name=" + this.Verbatim_ID + " maxlength=750 onblur=\"" + this.textareablur_EVENT.replace("[textarea]",this.Verbatim_ID) + "\">" + this.Verbatim + "</textarea></td></tr>"
  457.         + "<tr><td colspan='2' class='" + this.input_CSS + "' align=right>"
  458.         + this.MakeButton(this.BackButton_ID, this.Back, this.getwatsoncurvedata_EVENT.replace("[feedback]",this.FeedBackDivID))
  459.         + this.MakeButton(this.SubmitButton_ID, this.Submit, this.submitFdBack_EVENT.replace("[feedback]",this.FeedBackDivID))
  460.         + "</td></tr>"
  461.         + "</table>"
  462.   + "</div>";
  463.   
  464.   //load feedback div
  465.   FdBackSpanTag.innerHTML = stream;
  466.   
  467.   //scroll down to feedback  
  468.   this.ScrollToFdBack(FdBackSpanTag);  
  469.  }
  470.  
  471.  FdBack.prototype.MakeRadio = _MakeRadio1;
  472.  function _MakeRadio1(val, txt)
  473.  {
  474.   var stream = "<tr><td colspan='2' class='" + this.input_CSS + "'>"
  475.         + "<input name=" + this.Radio_ID + " type=radio value=" + val + " onclick='" + this.setrating_EVENT + "' "
  476.         + " " + ((this.Rating == val) ? "CHECKED" : "") + ">" + txt + "</input>"
  477.         + "</tr>"
  478.   
  479.   return stream;
  480.  }
  481.  
  482.  FdBack.prototype.MakeButton = _MakeButton1;
  483.  function _MakeButton1(id, val, evt)
  484.  {
  485.   var stream = "<input class=" + this.button_CSS + " type=button id=" + id +" value=" + val + " onclick=\"" + evt + "\">"
  486.     
  487.   return stream;
  488.  }
  489.  
  490.  FdBack.prototype.SubmitFdBack = _SubmitFdBack;
  491.  function _SubmitFdBack()
  492.  {
  493.   if(event.srcElement.id == this.YesButton_ID)
  494.   {
  495.    this.Rating = 3;
  496.    this.Verbatim = this.DefaultBody;
  497.   }
  498.   
  499.   var subject = this.Title
  500.   + " ("
  501.   + "/1:"
  502.   + this.Product
  503.   + "/2:"
  504.   + this.ProductVersion
  505.   + "/3:"
  506.   + this.DocumentationVersion
  507.   + "/4:"
  508.   + this.DeliverableValue()
  509.   + "/5:"
  510.   + this.URLValue()
  511.   + "/6:"
  512.   + this.Rating
  513.   + "/7:"
  514.   + this.DeliveryType()
  515.   + "/8:"
  516.   + this.SystemLanguage
  517.   + "/9:"
  518.   + this.Version
  519.         + ")"; 
  520.  
  521.   var sEntireMailMessage = "MAILTO:"
  522.   + this.Alias
  523.   + "?subject=" + subject 
  524.      + "&body=" + ((this.Verbatim != "") ? this.Verbatim : this.DefaultBody);
  525.  
  526.   location.href=sEntireMailMessage;
  527.   
  528.   fdbackarea.style.display="none";
  529.  }
  530.  
  531.  FdBack.prototype.CheckDeliverable = _CheckDeliverable;
  532.  function _CheckDeliverable()
  533.  {
  534.   var stream = "CheckDeliverable";
  535.   
  536.   alert(stream);
  537.  }
  538.  
  539.  FdBack.prototype.SetRating = _SetRating;
  540.  function _SetRating(val)
  541.  {
  542.   this.Rating = val;
  543.  }
  544.  
  545.  FdBack.prototype.ReloadFdBack = _ReloadFdBack;
  546.  function _ReloadFdBack()
  547.  {
  548.   location.reload(true);
  549.  }
  550.  
  551.  FdBack.prototype.ScrollToFdBack = _ScrollToFdBack;
  552.  function _ScrollToFdBack(FdBackSpanTag)
  553.  {
  554.   window.scrollTo(0,10000);
  555.   FdBackSpanTag.scrollIntoView(true);
  556.  }
  557.  
  558.  FdBack.prototype.SetVerbatim = _SetVerbatim;
  559.  function _SetVerbatim(TextAreaValue)
  560.  {
  561.   this.Verbatim = TextAreaValue;
  562.  }
  563.  
  564. FdBack.prototype.DeliveryType = _DeliveryType;
  565. function _DeliveryType()
  566. {
  567.  if (this.URL.indexOf("ms-help://")!=-1) {return("h");}
  568.     else if (this.URL.indexOf(".chm::/")!=-1) {return("c");}
  569.     else if (this.URL.indexOf("http://")!=-1) {return("w");}
  570.     else if (this.URL.indexOf("file:")!=-1) {return("f");}
  571.     else return("0");
  572. }
  573. FdBack.prototype.DeliverableValue = _DeliverableValue;
  574. function _DeliverableValue()
  575. {
  576.  if (this.URL.indexOf("ms-help://")!=-1) 
  577.     {
  578.     delvalue  = location.href.slice(0,location.href.lastIndexOf("/html/"));
  579.     delvalue  = delvalue.slice(delvalue.lastIndexOf("/")+1);
  580.     return delvalue;
  581.     }
  582.     else return(this.Deliverable);
  583. }
  584. FdBack.prototype.URLValue = _URLValue;
  585. function _URLValue()
  586. {
  587.  if (this.URL.indexOf(".chm::")!=-1) 
  588.     {
  589.     a = this.URL;
  590.     while (a.indexOf("\\") < a.indexOf(".chm::") || a.indexOf("//") > a.indexOf(".chm::")) {
  591.         if (a.indexOf("\\")==-1)
  592.         {
  593.         break;
  594.         }
  595.         a = a.substring(a.indexOf("\\")+1,a.length);
  596.     }
  597.     return("ms-its:"+a)
  598.     }
  599.  else if (this.URL.indexOf("file:///")!=-1) 
  600.     {
  601.     a = this.URL;
  602.  
  603.     b = a.substring(a.lastIndexOf("html")+5,a.length);
  604.     return("file:///"+b);
  605.     }
  606.     else return(this.URL);
  607. }