﻿// JScript 文件
var shareUrl = "http://space.yaolan.com/share/MyShare.aspx";
function DefineShare(sDefaultTitle, sDefaultDesc, sDefaultUrl, shareSite){//标题，摘要，资源url，分享目标（space:空间,kaixin001, sina, renren,yaolanweibo）
    Share('define', Math.random(),null, null,sDefaultTitle, sDefaultDesc, sDefaultUrl, shareSite)
}
function ShareToSite(sShareType, iPkId,shareSite){ //分享按钮分离
    Share(sShareType,iPkId,null, null,null, null, null, shareSite)
}
function Share(sShareType, iPkId, iObjUserid, iSharepageuserid, sDefaultTitle, sDefaultDesc, sDefaultUrl, shareSite)
{
    var sharekaixin = 'http://space.yaolan.com/share/myshare.aspx?sharetype='+ sShareType +'&pkid='+ iPkId +'&sharedomain=kaixin001' ;
    var sharesina = 'http://space.yaolan.com/share/myshare.aspx?sharetype='+ sShareType +'&pkid='+ iPkId +'&sharedomain=sina' ;
    var sharerenren = 'http://space.yaolan.com/share/myshare.aspx?sharetype='+ sShareType +'&pkid='+ iPkId +'&sharedomain=renren';
    var share_t = 'http://space.yaolan.com/share/myshare.aspx?sharetype='+ sShareType +'&pkid='+ iPkId +'&sharedomain=yaolanweibo';
    var shareqq = 'http://space.yaolan.com/share/myshare.aspx?sharetype='+ sShareType +'&pkid='+ iPkId +'&sharedomain=qq';
    
    if(sDefaultTitle != null || sDefaultDesc != null || sDefaultTitle != "" || sDefaultDesc!= ""){ 
        sDefaultTitle = encodeURIComponent(sDefaultTitle);
        sDefaultDesc = encodeURIComponent(sDefaultDesc);
        sDefaultUrl = encodeURIComponent(sDefaultUrl);        
        var tempParm ="";
        if(sDefaultTitle != "undefined") tempParm+= '&title=' + sDefaultTitle;
        if(sDefaultDesc != "undefined") tempParm+= '&desc=' + sDefaultDesc;
        if(sDefaultUrl != "undefined") tempParm+= '&durl=' + sDefaultUrl;
        
        sharekaixin += tempParm ;
        sharesina +=tempParm ;
        sharerenren += tempParm ;
        share_t += tempParm ;
        shareqq += tempParm;
    }   
    if(shareSite != null && shareSite != ''){//分享按钮分开
         if(GetCookie("user_id") == null){ Login();return;}
        switch(shareSite)
        {
            case "space":
            {
                ShareProc( sShareType , iPkId , iObjUserid , iSharepageuserid , sDefaultTitle , sDefaultDesc ,sDefaultUrl);
                break;
            }
            case "sina":
            {
                OpenBlankWindow(sharesina);
                break;
            }
            case "renren":
            {
                OpenBlankWindow(sharerenren);
                  break;
            }
            case "kaixin001":
            {
                OpenBlankWindow(sharekaixin);
                break;
            }
            case "yaolanweibo":
            {
                OpenBlankWindow(share_t);
                break;
            }
            case "qq":
            {
                OpenBlankWindow(shareqq);
                break;
            }
            default:
            {
               ShareProc( sShareType , iPkId , iObjUserid , iSharepageuserid , sDefaultTitle , sDefaultDesc ,sDefaultUrl); 
                break; 
            }
        }
    }else{  
        var div_share_id="share_cusdiv_"+iPkId;
        if(!document.getElementById(div_share_id))
        {        
            var sHtml = '<ul id="' + div_share_id + '"  style="padding:3px 6px;width:110px;z-index:7777; text-align:left; border:#dcdcdc 1px solid; background:#fffbfc; font-size:12px; line-height:24px;position:absolute;top:5px;" onmouseover="this.style.display=\'block\'" onmouseout="this.style.display=\'none\'">' 
              +'<li><a style="background:url(http://si.yaolanimage.cn/images/icon_yl.gif) no-repeat left center; padding:3px 0 0 20px;color:#141414;cursor:pointer" onclick="ShareProc(\''+ sShareType +'\',\''+ iPkId + '\',' + iObjUserid + ',' + iSharepageuserid  +',\''+ sDefaultTitle +'\',\''+ sDefaultDesc +'\',\''+ sDefaultUrl +'\')" title="分享到摇篮空间">分享到摇篮空间</a></li>';
            
            if(GetCookie("user_id") == null){
                sharekaixin = 'javascript:Login();';
                sharesina = sharekaixin;
                sharerenren = sharekaixin;
                share_t = sharekaixin;
                shareqq = sharekaixin;
                sHtml +='<li><a style=" background:url(http://si.yaolanimage.cn/images/miniblog_icon.gif) no-repeat left center; padding:3px 0 0 20px;color:#141414;" href="'+ share_t +'"  title="分享到摇篮微博">分享到摇篮微博</a></li>'
                sHtml +='<li><a style=" background:url(http://si.yaolanimage.cn/images/icon_kx.gif) no-repeat left center; padding:3px 0 0 20px;color:#141414;" href="'+ sharekaixin +'"  title="分享到开心网">分享到开心网</a></li>'
                sHtml +='<li><a style=" background:url(http://si.yaolanimage.cn/images/icon_sina.gif) no-repeat left center; padding:3px 0 0 20px;color:#141414;" href="'+ sharesina +'"  title="分享到新浪微博">分享到新浪微博</a></li>'
                sHtml +='<li><a style=" background:url(http://si.yaolanimage.cn/images/icon_qq.gif) no-repeat left center; padding:3px 0 0 20px;color:#141414;" href="'+ shareqq +'"  title="分享到腾讯微博">分享到腾讯微博</a></li>' 
                sHtml +='<li><a style=" background:url(http://si.yaolanimage.cn/images/icon_renren.gif) no-repeat left center; padding:3px 0 0 20px;color:#141414;" href="'+ sharerenren +'"  title="分享到人人网">分享到人人网</a></li>'  
            }else{
                if(iObjUserid) {sharekaixin +="&userid=" + iObjUserid;sharesina +="&userid=" + iObjUserid;sharerenren +="&userid=" + iObjUserid;shareqq +="&userid=" + iObjUserid;share_t+="&userid=" + iObjUserid;}
                sHtml +='<li><a style=" background:url(http://si.yaolanimage.cn/images/miniblog_icon.gif) no-repeat left center; padding:3px 0 0 20px;color:#141414;" href="'+ share_t +'" target="_blank" title="分享到摇篮微博">分享到摇篮微博</a></li>'
                sHtml +='<li><a style=" background:url(http://si.yaolanimage.cn/images/icon_kx.gif) no-repeat left center; padding:3px 0 0 20px;color:#141414;" href="'+ sharekaixin +'" target="_blank" title="分享到开心网">分享到开心网</a></li>'
                sHtml +='<li><a style=" background:url(http://si.yaolanimage.cn/images/icon_sina.gif) no-repeat left center; padding:3px 0 0 20px;color:#141414;" href="'+ sharesina +'" target="_blank" title="分享到新浪微博">分享到新浪微博</a></li>'
                sHtml +='<li><a style=" background:url(http://si.yaolanimage.cn/images/icon_qq.gif) no-repeat left center; padding:3px 0 0 20px;color:#141414;" href="'+ shareqq +'" target="_blank" title="分享到腾讯微博">分享到腾讯微博</a></li>'
                sHtml +='<li><a style=" background:url(http://si.yaolanimage.cn/images/icon_renren.gif) no-repeat left center; padding:3px 0 0 20px;color:#141414;" href="'+ sharerenren +'" target="_blank" title="分享到人人网">分享到人人网</a></li>'                
            } 
            +'</ul>';
            Share_AddDiv(sHtml);
        }else{
            document.getElementById(div_share_id).style.display = "block";
        }
        SetPos(div_share_id);
    }
}

function OpenBlankWindow(url){
     var form = document.createElement('form');
        form.id="the_form";        
        form.method='post';
        form.name="the_form_";
        form.action=url;
        form.target="_blank";
        
       document.body.appendChild(form);          
       form.submit();
       document.body.removeChild(form); 
}

/*定位*/
function SetPos(div_share_id){
   var ev = GetEvent(); 
   if(ev){
       var srcObj = ((ev.srcElement)?ev.srcElement:ev.target); 
       if(srcObj){
          srcObj.onmouseover=function(){
            document.getElementById(div_share_id).style.display = "block";
          } 
          srcObj.onmouseout=function(){
            document.getElementById(div_share_id).style.display = "none";
          }    
        GetPos(srcObj, div_share_id);
       }else{
             alert('获取事件源失败!');
       }
   }else{ 
        //abc flash  定位
       var t=document.body.clientHeight*3/5 ;  
       var l=(screen.width-20)/2+280;      
      document.getElementById(div_share_id).style.left = l  + "px";
      document.getElementById(div_share_id).style.top = t  +"px";    
     //alert('获取事件失败1!' + l + "ddd"+ t);
  }
}

function GetPos(eSource, divId) {   
    var t=eSource.offsetTop + eSource.offsetHeight ;  
    var l=eSource.offsetLeft; 
    var eSourceWidth = eSource.width;
     
    while(eSource=eSource.offsetParent) {  
        t+=eSource.offsetTop;  
        l+=eSource.offsetLeft;  
    }
    if(l+130>screen.width){
        l = l-120 + eSourceWidth;
    }
    var shareDiv = document.getElementById(divId);
    shareDiv.style.left = l  + "px";
    shareDiv.style.top = t  +"px";      
} 
/********************
 * 取窗口滚动条高度
 ******************/
function getScrollTop()
{
    var scrollTop=0;
    if(document.documentElement&&document.documentElement.scrollTop)
    {
        scrollTop=document.documentElement.scrollTop;
    }
    else if(document.body)
    {
        scrollTop=document.body.scrollTop;
    }
    return scrollTop;
}
function Share_AddDiv(htmlContent){var div = document.createElement('div');div.innerHTML = htmlContent;document.body.appendChild(div);}
//获取事件
function GetEvent() 
{ 
   if(document.all) // IE 
   { 
       return window.event; 
   } 
   func = GetEvent.caller; // 返回调用本函数的函数 
   while(func != null) 
   { 
       // Firefox 中一个隐含的对象 arguments，第一个参数为 event 对象  
       var arg0 = func.arguments[0]; 
       //alert('参数长度：' + func.arguments.length); 
       if(arg0) 
       { 
           if((arg0.constructor == Event || arg0.constructor == MouseEvent) 
               ||(typeof(arg0) == "object" && arg0.preventDefault && arg0.stopPropagation)) 
           { 
               return arg0; 
           } 
       } 
       func = func.caller; 
   } 
   return null; 
} 

function ShareProc(sShareType, iPkId, iObjUserid, iSharepageuserid, sDefaultTitle, sDefaultDesc, sDefaultUrl)
{
    if(GetCookie("user_id") == null){ Login();return;}
    if(top.location.href.indexOf('space')<0)
    {        
        document.domain="yaolan.com";
        HideSelect();
    }
    var tempStr = shareUrl + "?userid=" + iObjUserid + "&domain="+ document.domain ;
    if(sShareType != "" && iPkId != 0){
       tempStr += "&shareType=" + sShareType + "&pkid=" + iPkId ;
    }
    if(iSharepageuserid) tempStr +="&sharepageuserid=" + iSharepageuserid;
    if(sDefaultTitle) tempStr +="&title=" + sDefaultTitle;
    if(sDefaultDesc) tempStr +="&desc=" + sDefaultDesc;
    if(sDefaultUrl) tempStr +="&durl=" + sDefaultUrl;
    
    widShare(tempStr,'550','650');
}

function ShareUrl(sShareUrl, iSharepageuserid)
{
    sShareUrl = sShareUrl.replace(/\s/g, "");   
    //sShareUrl = decodeURIComponent(sShareUrl);
    if(sShareUrl == ""){alert("请输入分享地址！"); return;}
    if(!IsURL(sShareUrl)){ alert("你分享的链接格式不正确，请换一个链接试试!"); return;}
    if(!(sShareUrl.toLowerCase().indexOf("<script>")<0)){alert("你分享的链接中有非法字符，请换一个链接试试!"); return;}
    var tempStr = shareUrl + "?domain="+ document.domain + "&shareurl=" + encodeURIComponent(sShareUrl);
    if(iSharepageuserid) tempStr +="&sharepageuserid=" + iSharepageuserid;
    widShare(tempStr,'550','650');
}

function HideSelect()
{
    var allselect = gname("select");
    for (var i=0; i<allselect.length; i++) 
    {
        allselect[i].style.visibility = "hidden";
    }
}
function gname(name)
{
    return document.getElementsByTagName?document.getElementsByTagName(name):new Array()
}

function IsURL(str_url)
{ 
  var strRegex= /^([a-zA-z]+:\/\/)?([\w-]+\.)+[\w-]+(\/[\w- ./?%&=]*)?/;
   //var strRegex=new RegExp("((^http)|(^https)|(^ftp)):\/\/(\\w)+\.(\\w)+");
   ///^([a-zA-z]+:\/\/)?([\w-]+\.)+[\w-]+(\/[\w- ./?%&=]*)?/
  return strRegex.test(str_url);
}
//widget代码
function widShare(url,widWidth,widHeight) // 相对路径
{
  window.scrollTo(0, 0);  
  var width = document.documentElement.clientWidth + document.documentElement.scrollLeft;
  var height = document.documentElement.clientHeight + document.documentElement.scrollTop;

  var layer = document.createElement('div');
  layer.style.zIndex = 22;
  layer.id = 'layer';
  layer.style.position = 'absolute';
  layer.style.top = '0px';
  layer.style.left = '0px';
  layer.style.height = document.documentElement.scrollHeight + 'px'; //window.screen.availHeight; 
  layer.style.width = width + 'px';
  //layer.style.backgroundColor = 'black';
  layer.style.backgroundColor = 'black';
  layer.style.opacity = '.4';
  layer.style.filter += ("progid:DXImageTransform.Microsoft.Alpha(opacity=40)");
  document.body.style.position = 'static';
  document.body.appendChild(layer);  
  
  var size = { 'height': widHeight, 'width': widWidth };
  var iframe = document.createElement('iframe');
  iframe.name = 'Widget Editor';
  iframe.id = 'WidgetEditor';	
	iframe.style.height = size.height + 'px';	
	iframe.style.width = size.width + 'px';
	iframe.style.position = 'absolute';
	iframe.style.zIndex = 33;
	iframe.style.backgroundColor = 'transparent';
	iframe.allowTransparency = 'true';
	iframe.style.border = '0';
	iframe.frameborder = '0';	
	//iframe.style.top =  ((height + document.documentElement.scrollTop) / 2) - (size.height / 2) + 'px';	
	var top = ((height + document.documentElement.scrollTop) / 2) - (size.height / 2);
	if(top <0){
	    iframe.style.top = '15px';
	}else{
	    iframe.style.top =  top + 'px';
	}	
	iframe.style.left = (width / 2) - (size.width / 2) + 'px';	
	iframe.setAttribute("frameborder", "0", 0); 
	//iframe.src = url;    
    document.body.appendChild(iframe);
    document.getElementById("WidgetEditor").src = url;
}

function closeShareEditor()
{
  document.body.removeChild(document.getElementById('WidgetEditor'));
  document.body.removeChild(document.getElementById('layer'));
  document.body.style.position = '';
}
function closeEditor(){
   closeShareEditor();
}

function GetCookie(name)
//获得Cookie的原始值
{
    var arg = name + "=";
    var alen = arg.length;
    var clen = document.cookie.length;
    var i = 0;
    while (i < clen)
    {
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg)
    return GetCookieVal (j);
    i = document.cookie.indexOf(" ", i) + 1;
    if (i == 0) break;
    }
    return null;
}
 function GetCookieVal(offset)
//获得Cookie解码后的值
{
    var endstr = document.cookie.indexOf (";", offset);
    if (endstr == -1)
    endstr = document.cookie.length;
    return unescape(document.cookie.substring(offset, endstr));
}
