
var win_id = "_self";  // for frame testing
var win_id_was_set = 0;
var _same_machine=0;
var _additional_parameter = new Array();
var _is_tiger_direct_business = 0;

function setSameMachine() {
   _same_machine = 1;
}

function setWinId( id ) {
   //- alert('setWinId()');
   win_id = id;
   win_id_was_set = 1;
}

function checkName( name ) {
   if ( escape( name ) != name ) {
      alert("illegal name -- \"" + name + "\"");
      return false;
   }
   return true;
}

function addDoConfParameter(n, v) {
   _additional_parameter[n] = v;
}

function doConf(form) {
  win_id = "_self";
  win_id_was_set = 0;


  if ( form.WIN_ID ) {
     if ( form.WIN_ID.value != "" ) {
        setWinId( form.WIN_ID.value );
     }
  }

  if ( !checkName( form.CONF.value ) ) {
     return false;
  }
  session_id = form.CONF.value;

  if ( typeof( agent_alert ) != 'undefined' && !secondCheck() ) {
     return false;
  }


  var cookie_string = escape( document.cookie );
  var domain = escape( document.domain );

  var use_post = false;
  if ( form.PostMechanism ) {
     if ( form.PostMechanism[0].checked ) {
        use_post = true;
     } else if ( form.PostMechanism[1].checked ) {
        use_post = false;
     }
  }
   
  var reroute_img = false;
  if ( form.RerouteImg ) {
     if ( form.RerouteImg[0].checked ) {
        reroute_img = true;
     } else if ( form.PostMechanism[1].checked ) {
        reroute_img = false;
     }
  }



  //
  // Variables in URL:
  //
  //   CONF_INFO:        server:host to start or join a session.
  //   ACTION:           HostMainWin or GuestMainWin.
  //   CONF:             Session ID.
  //   USER_NMAE:        URL encoded name.
  //   PASSWORD:         Session password. (optional)
  //   ACCOUNT:          Account id.       (only for creator)
  //   ACCOUNT_PASSWD:   Account password. (only for creator)
  //   START_PAGE:       Startup page URL.  (optional for both starter 
  //                     and guest)
  //   INTERACTION:      Whether only the host can interact with
  //                     the cobrowsed pages.
  //                     -- ONE_WAY or TWO_WAY
  //



  var secure_startup = false;
  var applied_contact_url = contact_url;
  if ( form.SECURE ) {
     if ( form.SECURE[0].checked ) {
        secure_startup = true;
        applied_contact_url = secure_contact_url;
     } else if ( form.SECURE[1].checked ) {
        secure_startup = false;
     }
  }

  //
  // Hard-code for ML.
  //
  //- secure_startup = true;
  //- applied_contact_url = secure_contact_url;


  var start_page_url = form.STARTURL.value;
  if ( form.POST_DATA ) {
     if ( form.POST_DATA.value ) {
        start_page_url += "??pSPost??="  + form.POST_DATA.value;
     }
  }
  //- var url = applied_contact_url +
  var url_parameter = 
                   "CONF_INFO="       + confinfo +
                   "&ACTION="         + form.ACTION.value +
                   "&CONF="           + form.CONF.value +
                   "&USER_NAME="      + form.USER_NAME.value +
                   "&START_PAGE="     + escape( start_page_url );

  if ( form.PASSWORD ) {
     url_parameter += "&PASSWORD="       + escape( form.PASSWORD.value );
  }

  if ( form.JOIN_STARTURL ) {
     url_parameter += "&JOIN_START_PAGE="    + form.JOIN_STARTURL.value;
  }


  if ( form.ACCOUNT ) {
     url_parameter += "&ACCOUNT="    + form.ACCOUNT.value;
  }

  if ( form.GROUP_ID ) {
     url_parameter += "&GROUP_ID="    + form.GROUP_ID.value;
  }

  // - INSTALL_SKIP_START
  if ( form.COOKIE_0 ) {
     if ( form.COOKIE_0.value ) {
        url_parameter += "&COOKIE_0="    + escape( form.COOKIE_0.value );
     }
  }
  if ( form.BOOKMARK ) {
     //- alert('form.BOOKMARK');
     url_parameter += "&BOOKMARK="    + form.BOOKMARK.value;
     //- alert(url_parameter);
  }

  if ( form.COOKIE_1 ) {
     if ( form.COOKIE_1.value ) {
        url_parameter += "&COOKIE_1="    + escape( form.COOKIE_1.value );
     }
  }
  if ( form.COOKIE_2 ) {
     if ( form.COOKIE_2.value ) {
        url_parameter += "&COOKIE_2="    + escape( form.COOKIE_2.value );
     }
  }
  if ( form.COOKIE_3 ) {
     if ( form.COOKIE_3.value ) {
        url_parameter += "&COOKIE_3="    + escape( form.COOKIE_3.value );
     }
  }
  if ( form.COOKIE_4 ) {
     if ( form.COOKIE_4.value ) {
        url_parameter += "&COOKIE_4="    + escape( form.COOKIE_4.value );
     }
  }
  // - INSTALL_SKIP_END  

  if ( form.ACCOUNT_PASSWD ) {
     url_parameter += "&ACCOUNT_PASSWD="    + form.ACCOUNT_PASSWD.value;
  }

  <!-- INSTALL_SKIP_START -->
  if ( form.QUIT_POLICY ) {
     //- alert("do QuitPolicy");
     var quit_policy;
     if ( form.QUIT_POLICY[0].checked ) {
        quit_policy = "HOST_FORCE";
     } else if ( form.QUIT_POLICY[1].checked ) {
        quit_policy = "NOTIFY";
     } else if ( form.QUIT_POLICY[2].checked ) {
        quit_policy = "OPTIONAL";
     } else if ( form.QUIT_POLICY[3].checked ) {
        quit_policy = "IGNORE";
     } else if ( form.QUIT_POLICY[4].checked ) {
        quit_policy = "FORCE";
     }
     
     if ( quit_policy ) {
        url_parameter += "&QUIT_POLICY="  + quit_policy; 
     }
  } else {
        url_parameter += "&QUIT_POLICY=HOST_FORCE"; 
  }

  // For ML:
  url_parameter += "&QUIT_POLICY="  + "FORCE";
  <!-- INSTALL_SKIP_END   -->

   if ( _is_tiger_direct_business ) {
      url_parameter += "&FIXUP=tigerdirect/biz.xml"; 
   }



  if ( form.INTERACTION ) {
     var interaction;
     if ( form.INTERACTION[0].checked ) {
        interaction = "TWO_WAY";
     } else if ( form.INTERACTION[1].checked ) {
        interaction = "ONE_WAY";
     } else if ( form.INTERACTION[2].checked ) {
        interaction = "AGENT_PTR";
     } else if ( form.INTERACTION[3].checked ) {
        interaction = "AGENT_NO_FORM_SUBMIT";
     } else if ( form.INTERACTION[4].checked ) {
        interaction = 0;
     }
     //- alert("interaction = " + interaction);
     if ( interaction ) {
        url_parameter += "&INTERACTION="  + interaction; 
     }
  }

  //
  // ML customization.
  //
  url_parameter += "&INTERACTION="  + "TWO_WAY"; 

  if ( form.FORM_PTR ) {
     //- alert("form pointer");
     var add_form_ptr;
     if ( form.FORM_PTR[0].checked ) {
        add_form_ptr = "true";
     } else if ( form.FORM_PTR[1].checked ) {
        add_form_ptr = "false";
     }
     if ( add_form_ptr ) {
        url_parameter += "&FORM_PTR="  + add_form_ptr; 
     }
  }
  url_parameter += "&FORM_PTR=false"; 

  var no_popup = 0;
  if ( form.POP_WIN ) {
     //- alert(' form.POP_WIN is true');
     if ( form.POP_WIN[1].checked ) {
        //- alert(' form.POP_WIN[1] is checked');
        no_popup = 1;
     }
  }

  //- alert(form.DYNAMIC_END);
  if ( form.DYNAMIC_END ) {
     //- alert("form pointer");
     var add_form_ptr;
     if ( form.DYNAMIC_END[0].checked ) {
        dynamic_end = "1";
     } else if ( form.DYNAMIC_END[1].checked ) {
        dynamic_end = "0";
     }
     if ( add_form_ptr ) {
        url_parameter += "&DYNAMIC_END="  + dynamic_end; 
     }
  }

  if ( form.FORM_LOG ) {
     //- alert("form pointer");
     var add_form_ptr;
     if ( form.FORM_LOG[0].checked ) {
        add_form_ptr = "true";
     } else if ( form.FORM_LOG[1].checked ) {
        add_form_ptr = "false";
     }
     if ( add_form_ptr ) {
        url_parameter += "&FORM_LOG="  + add_form_ptr; 
     }
  }

  if ( secure_startup ) {
     alert('secure_startup');
     url_parameter += "&HTTPS_AUTH=1"; 
  }

  //
  // Always proxy firewall.
  //

  //- //- alert('use proxy firewall');
  //- if ( !_same_machine ) {
  //-    //- alert("Using proxy-firewall gateway.");
  //-    url_parameter += "&SETUP_ID=default";
  //- }
  url_parameter += "&JAVA_USAGE=0"

  if ( form.SENDER && form.RECIPIENT &&
       form.SENDER.value && form.RECIPIENT.value ) {
     //- alert('dealing with email notification');
     var sender_email    = form.SENDER.value;
     var recipient_email = form.RECIPIENT.value;
     var join_page_url   = 'http://sv.pageshare.com/service/client.html';
     var email_parameter = "email" +
                           "?SENDER="         + sender_email +
                           "&RECIPIENT="      + recipient_email +
                           "&RECIPIENT_NAME=" + form.CLIENT_NAME.value +
                           "&SESSION_ID="     + form.CONF.value +
                           "&SENDER_NAME="    + form.USER_NAME.value +
                           "&ACTION_URL="     + join_page_url;
     email_parameter = escape(email_parameter);
     //- alert( email_parameter );
     url_parameter += "&HOST_JS_URL_ACTION=" + email_parameter;
  } else {
     //- alert('no email notification');
  }



  if ( form.SHARED_PTR ) {
     //- alert("do QuitPolicy");
     var shared_ptr;
     if ( form.SHARED_PTR[0].checked ) {
        shared_ptr = "blue";
     } else if ( form.SHARED_PTR[1].checked ) {
        shared_ptr = "green";
     } else if ( form.SHARED_PTR[2].checked ) {
        shared_ptr = "red";
     } else if ( form.SHARED_PTR[3].checked ) {
        shared_ptr = "white";
     } else if ( form.SHARED_PTR[4].checked ) {
        shared_ptr = "yellow";
     }
     
     if ( shared_ptr ) {
        url_parameter += "&POINTER="  + "pointer/" + shared_ptr + ".gif"; 
     }
   }
   var key;
   for (key in _additional_parameter) {
      var value = _additional_parameter[key];
      url_parameter += "&" + key + "=" + value;
   }



  var session_action;
  var browser_height = screen.availHeight - 80;
  var browser_width;


  if ( form.ACTION.value == "GuestMainWin" ) {
     session_action = "join";
     option = "top=0,left=" + (screen.availWidth/2) + 
              ",location=0,directories=0," +
              ",height=" + browser_height +
              ",width="  + browser_width +
              "menubar=1,scrollbars=1,resizable=yes";
  } else {
     session_action = "create";
     option = "top=0,left=0" +
              ",location=0,directories=0," +
              "status=0,toolbar=0," +
              "height=" + ( browser_height ) +
              ",width=" + browser_width +
              ",menubar=1,scrollbars=1,resizable=yes";
  }
  //
  // single computer.
  //
  option = "location=0,directories=0," +
           "status=0,toolbar=0," +
           ",menubar=1,scrollbars=1,resizable=yes";


  var msg = "The URL parameter to " + session_action + 
            " a session is :\n\n" + 
            url_parameter +
            "\n\nThe option to open a cobrowse window is :\n\n" +
            option;
  //- alert( msg );
  //- return false;
  if ( !win_id_was_set ) {
     if ( window == top ) {
        d = new Date();
        n = new Number( d );
        win_id = String( n );
     }
  }

  //- alert( 'win_id = ' + win_id );

  //- alert( 'url_parameter = ' + url_parameter );
  var new_win = 0;
  if ( no_popup ) {
     win_id = "_self";
  }
  //- alert(win_id);
  if ( !use_post ) {
     var url = applied_contact_url + url_parameter;
     //- alert( 'url = ' + url );
     new_win = window.open(url, win_id, option);
     //- alert( new_win );
  } else {
     new_win = window.open("", win_id, option);
     document.forms.PostSubmitForm.action=applied_contact_url;
     document.forms.PostSubmitForm.Parameter.value=url_parameter;
     document.forms.PostSubmitForm.target=win_id;
     document.forms.PostSubmitForm.submit();
     if ( win_id != '_self' ) {
        new_win = window.open("", win_id, option);
     }
     //- alert( new_win );
     //- alert( typeof(new_win) == undefined || !new_win );
  }

  if ( !new_win ) {
     alert('Sorry, your browser does not allow the openning of new ' +
           'browser windows which are required for cobrowsing.');
     if ( typeof( agent_alert ) != 'undefined' ) {
        doAlertMsg( session_id, fatal_pop_prob_msg );
     }
  }
 

  return false;

}

