/*
/*************************************************************************
* Copyright (C)2008 UbiNtisLab Co., Ltd.
* All rights reserved.
**************************************************************************

- File Name : sso.js
- Author    : Won Jong Hyuk (kudos84@nate.com)

- Change History :

Rev-No   Date             Name                  
---------------------------------------------------
…

- Change Descriptions :
…

- Synopsis :


- Last Compilation Date : 2008-09-10
/*SAPM : SSO연동 항목 데이터 요청
/* 
*/
document.write("<form id='ssoFrom' name='ssoFrom' method='post'>");
document.write("<input type='hidden' name='cltid'>");
document.write("<input type='hidden' name='app_id'>");
document.write("<input type='hidden' name='appid'>");
document.write("<input type='hidden' name='rtnrul'>");
document.write("</form>");

var ary_action = new Array("SAPM", "LGUT", "", "");
var ssoNameIdx = new Array();
var arySSOData = new Array();
var spId = "ubtour";
var cltSsoToken = "";
var Passs_NI_Domain = "/servlet/ssoManager";
var Passs_NI_ADM = "/member/info.jsp";

//쿼리 리스트 조회
function initApplication(cltToken){

  initPassNi();
  var params = "serviceName=SLSTIF&cltid=" + cltToken;
  var result = xmlhttp_request(params);

  if(result == "0"){//서버데이터 전송완료.
    cltSsoToken = cltToken;
    var buffer = svrResult[1].split("!GAP!");

    var buffer2 = svrResult[2].split("!GAP!");

    for(var p=0; p<buffer.length; p++){
      arySSOData[p] = buffer[p];
      var buffer3 = buffer2[p].split("|");
      ssoNameIdx[p] = buffer3[0];
      setData(buffer3[0], buffer3[1]);
    }
  }
}


function initPassNi(){

  if(Passs_NI_Domain.indexOf("http")<0){
    if(xmlhttp_request("","/js/sso/info")){
      Passs_NI_Domain = svrResult[0]+"://"+svrResult[1] + svrResult[2] + Passs_NI_Domain;
      Passs_NI_ADM = svrResult[0]+"://"+svrResult[1] + svrResult[2] + Passs_NI_ADM;
      //spId = svrResult[3];
      svrResult[3] = "ubtour";
      spId = "ubtour";
    }
  }
}

function ssoselbox_go(){
  if(sso.value!="")
    sign(sso.value);
}

function setData(appID, appNM){
  try{
  var addedOpt=document.createElement('OPTION'); 
	sso.add(addedOpt);
	addedOpt.innerText=appNM;
	addedOpt.value=appID;
  }catch(e){
  }
}

function sign(appID, rtnUrl, url){


  for(var p=0; p<ssoNameIdx.length; p++){
  //alert(ssoNameIdx[p]);
    if(ssoNameIdx[p]==appID){
      var form = document.getElementById("ssoFrom");
	  var frm = document.sFrm;
	  var sFrmtoken = frm.cltid.value;

	  cltSsoToken = sFrmtoken;
//      form.innerHTML += "<input type='hidden' name='cltid' value='"+ cltSsoToken +"'>";
//      form.innerHTML += "<input type='hidden' name='app_id' value='"+ appID +"'>";
//      form.innerHTML += "<input type='hidden' name='appid' value='"+ spId +"'>";
//      form.innerHTML += "<input type='hidden' name='rtnrul' value='"+ rtnUrl +"'>";

      form.cltid.value= cltSsoToken;
      form.app_id.value= appID;
      form.appid.value= spId;
      form.rtnrul.value= rtnUrl;
      form.action = Passs_NI_Domain;
      form.target = appID;
      
      
      form.submit();
//      form.innerHTML = "";
      return;
    }
  }
window.open(url,'','');
//  alert("해당 내용에 대한 SSO설정 내용이 존재 하지 않습니다.\n관리자에게 문의해 주세요.");  
}

function logout(){
  var params = "serviceName=LGUT&cltid=" + cltSsoToken;
  var result = xmlhttp_request(params);
}

function UserOption(){


  initPassNi();

  window.name = spId;
  var win = window.showModalDialog(Passs_NI_ADM+"?cltid="+cltSsoToken+"&appid="+spId,'setUInfo','dialogLeft:10px;dialogTop:10px;dialogWidth:80px;dialogHeight:90px;center:Yes;screenTop:No;scroll:Yes;status:No;help:No;resizable:No');
}

function UserOption2(token){


  if(token !='') { 
	  initApplication(token);
	  cltSsoToken = token;
  }

  initPassNi();

  window.name = spId;
  var win = window.showModalDialog(Passs_NI_ADM+"?cltid="+cltSsoToken+"&appid="+spId,'setUInfo','dialogLeft:10px;dialogTop:10px;dialogWidth:80px;dialogHeight:90px;center:Yes;screenTop:No;scroll:Yes;status:No;help:No;resizable:No');
}


