/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
var User = {
    checkRefNameExist: function(inputId,msgId) {
        var inputRefName = $(inputId).value;
        if(inputRefName != null && inputRefName.strip()!="") {
            var result = /^[a-z0-9\-_\u4e00-\u9fa5]+$/i.test(inputRefName);
            if(!result){
                show_error_msg(msgId,"引称只可以含有中文、字母、数字、”-“或”_“");
                return;
            }
            new Ajax.Request('/Profile3.do?action=CHECK_REFNAME',{
                parameters:{
                    "ref_name":inputRefName
                },
                requestHeaders:{
                    Accept :"application/json"
                },
                onSuccess:function(transport){
                    var json = transport.responseText.evalJSON(true);
                    if(!json.RETURN){
                        show_error_msg(msgId,json.MESSAGE);
                    } else {
                        show_success_msg(msgId, "该引称可以使用");
                    }
                }
            }); 
        }
    },
    setRefName : function(){
        var inputRefName = $("ref_name").value;
        var result = /^[a-z0-9\-_\u4e00-\u9fa5]+$/i.test(inputRefName);
        if(!result){
            show_error_msg("refNameSetWrongMsg","引称只可以含有中文、字母、数字、”-“或”_“");
            return;
        }
        new Ajax.Request('/Profile3.do?action=SET_REFNAME',{
            parameters:{
                "ref_name":inputRefName
            },
            requestHeaders:{
                Accept :"application/json"
            },
            onSuccess:function(transport){
                var json = transport.responseText.evalJSON(true);
                if(!json.RETURN){
                    show_error_msg("refNameSetWrongMsg",json.MESSAGE);
                } else{
                    $("refNameSetBeforeTB").hide();
                    $("refNameSetAfterTB").show();
                }
            }
        }); 
    }
}

var Profile3 ={
    _connect  :null,
    showPath : function(){
        $('connectionPath_tr_div').style.display ="";
    },
    hidePath : function(){
        $('connectionPath_tr_div').style.display ="none";
    },
    showBindSinaBlogWindow : function(url, wname){
        window.open(url, wname, 'width=560,height=400,toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=yes, copyhistory=yes');  
    },
    myCommentButtonEvent : function(){
        $('commentToOhterDiv').style.overflow="visible";
        $('commentToOhterDiv').style.display="";
        $('commentToOhterDiv').style.width="668px";
        $('commentToOhterDiv').style.height="250px";
        $('comment_wrong_div').style.display ="none";
        document.location.href="#commentText";
        $('commentText').focus();

    },
    linkPage : function(screenName){
        document.location.href="/"+screenName+"?addComment=1";
    },
    hideDiv : function(id){
        if(id=="commentToOhterDiv"){
            $('commentToOhterDiv').style.overflow="hidden";
            $('commentToOhterDiv').style.display="none";
            $('commentToOhterDiv').style.width="0px";
            $('commentToOhterDiv').style.height="0px";
        }
        else
            $(id).style.display ="none";
    },
    showDiv : function(id){
        $(id).style.display ="";
    },
    saveComment : function(toUid,screenName,commentid){
        var com = $('commentText').getValue();
        var relation=$('sub_relation').getValue();
        var relationNodes=$('sub_relation_notes').getValue();
        if(relationNodes=='补充信息...'){
            relationNodes='';
        }
        if(relation==-1){
            this._setMessage("comment_wrong_div", "请选择你们时如何认识的", false);
            return;
        }
        if(relation==1000&&(relationNodes=='补充信息...'||relationNodes=='')){
            this._setMessage("comment_wrong_div", "请补充信息", false);
            $('sub_relation_notes').focus();
            return;
        }
        if(com.length >1000){
            this._setMessage("comment_wrong_div", "长度不能大于1000", false);
            return;
        }
        if(com.length == 0){
            this._setMessage("comment_wrong_div", "不能为空", false);
            return;
        }
       
        //judgments are to add or modeify comment
        if(commentid ==null){
            new Ajax.Request('/Profile3.do?action=SAVE_COMMENT',{
                parameters:{
                    "toUid":toUid,
                    "comment":com,
                    "relation":relation,
                    "relation_notes":relationNodes
                },
                requestHeaders:{
                    Accept :"application/json"
                },
                onSuccess:function(transport){
                    var json = transport.responseText.evalJSON(true);
                    if(json.RETURN){
                        document.location.href="/"+screenName;
                    }else{
                        this._setMessage("comment_wrong_div",json.MESSAGE, false);
                    }
                }
            });
        }else{
            new Ajax.Request('/Profile3.do?action=SAVE_COMMENT',{
                parameters:{
                    "toUid":toUid,
                    "comment":com,
                    "commentId":commentid,
                    "relation":relation,
                    "relation_notes":relationNodes
                },
                requestHeaders:{
                    Accept :"application/json"
                },
                onSuccess:function(transport){
                    var json = transport.responseText.evalJSON(true);
                    if(json.RETURN){
                        document.location.href="/"+screenName;
                    }else{
                        this._setMessage("comment_wrong_div",json.MESSAGE, false);
                    }
                }
            });
        }
    },
    _setMessage : function(id,msg, type){
        $(id).update(msg);
        if($(id).style.display =="none")
            $(id).show();
        if(type){           
            $(id).className = "ok_message";
        }else{
            $(id).className = "wrong_message";
        }
    },
    deleteMyComment : function(commentid,screenName){       
        if(!confirm("确定删除?")){
            return;
        }

        new Ajax.Request('/Profile3.do?action=REMOVE_COMMENT',{
            parameters:{
                "commentId":commentid
            },
            requestHeaders:{
                Accept:"application/json"
            },
            onSuccess : function(transport){
                var json = transport.responseText.evalJSON(true);
                if(json.RETURN){
                    document.location.href="/"+screenName;
                }else{                    
                    this._setMessage("deleteMessage",json.MESSAGE, false);
                }
            }
        });
    },
    isPopup : function(){
        new Popup($('introduction'),'长度不超过1000字');
    },
    isCancel : function(){
        document.location.href ="/profile";
    },
    isDisAble : function(){
        var summary1    = $('introduction').getValue() ;
        if(summary1.length > 1000){
            summary1 = summary1.substring(0,1000);
            $('introduction').value = summary1;
        }
    },
    isSave   : function(){
        if(!FirstLoginSaveProfile._checkForm()){
            return;
        }
        var profileJson = FirstLoginSaveProfile.getProfileJson();
        this.isDisAble();
        var summary    = $('introduction').getValue() ;
        var interest   = $('hobby').getValue();
        var speciality = $('speciality').getValue();
        summary = summary.Rtrim();
        interest = interest.Rtrim();
        if(summary=="个人简介..."){
            summary="";
        }
        new Ajax.Request('/Profile3.do?action=CHANGE_SUMMARY',{
            parameters : {
                "profileJson" : profileJson.toJSON(),
                "summary":summary,
                "interest":interest,
                "speciality":speciality
            },
            requestHeaders :{
                Accept :"application/json"
            },
            onCreate: function(){
                FirstLoginSaveProfile._onCreate();
            },
            onSuccess:function(transport){
                var json = transport.responseText.evalJSON(true);
                if(json.RETURN){
                    document.location.href ="/profile";
                }else{
                    FirstLoginSaveProfile._onFailure(json.MESSAGE);
                }

            }
        });
    },
    addOpt : function(obj)   {
        for(var i = 2009;i > 1957;i--){
            var opt = new Option(i,i);
            obj.options.add(opt);
        }
    },
    showAlertInfo : function(gender,name){

        var gendern = null;
        if(gender == "0"){
            gendern ="她";
        }else if(gender =="1"){
            gendern ="他";
        }
        if(name ==null){
            name = "";
        }
        var info = name+" 是我认识并信任的朋友, 希望和"+gendern+"建立联系";
        var foundbutton1 = $('profile').select('div');
        //alert(this._basicProfile.name+'是 我认识并信任的朋友,希望和'+gendern+'建立联系');

        foundbutton1.each(function(f){
            if(f.id =="bulidRelationCardButton")
                new PopupForButton(f,info);
        });
    },
    addConnectionPage : function(name){

        $('personal').style.display ="none";
        $('profile_title').style.display ="none";
        $('AddConnectionCheck').style.display ="";
        $('fund_code').update("在和  <span class='style7'>"+name+" </span>  建立联系之前, <br/>恒知网会通过两个步骤来确认您的身份 :<br/><br/>1.  确认您的邮箱地址<br><br>2.  征求 "+name+"  的同意");
        $('power_point').style.display ="none";
        $("label_card").update("和 "+name+"  建立联系&nbsp;|&nbsp;确认您的邮箱地址");
    },
    AddConnectionCheckFunc : function(name,screenName){
        var email_me = $('email_me').value;
        var name_me  = $('name_me').value;
        var imageCode = $('imageCode').value;
        var email_mea = $('email_mea').value;
        if(email_me.strip() == "" || email_me.strip() == null || email_mea.strip()== "" || email_mea.strip() ==null|| name_me == "" || name_me == null || imageCode =="" || imageCode == null){
            //$('addConnection_error').style.display ="";
            if(email_me.strip() == "" || email_me.strip() == null ){
                show_error_msg('addConnection_error',"请输入Email地址!");
                // $('addConnection_error').update("请输入Email地址!");
                return;
            }
            if(email_mea.strip() == "" || email_mea.strip() == null ){
                show_error_msg('addConnection_error',"请输入重复Email地址!");
                // $('addConnection_error').update("请输入Email地址!");
                return;
            }
            if(name_me.strip() == "" || name_me.strip() == null ){
                show_error_msg('addConnection_error',"请输入姓名!");
                //$('addConnection_error').update("请输入姓名!");
                return;
            }
            if(imageCode.strip() == "" || imageCode.strip() == null ){
                show_error_msg('addConnection_error',"请输入验证码!");
                //$('addConnection_error').update("请输入验证码!");
                return;
            }
        }
        if(Profile3._isSingleEmail(email_me) == false){
            show_error_msg('addConnection_error',"请输入正确的Email地址!");
            return;
        }
        if(email_me.strip() != email_mea.strip()){
            show_error_msg('addConnection_error',"两次的Email地址不一致!");
            return;
        }

        new Ajax.Request('/Network.do?action=VALIDATE_INVITATION_REQUEST_EMAIL',{
            parameters:{
                "email_address":email_me,
                "name":name_me,
                "imageCode":imageCode,
                "screen_name":screenName
            },
            requestHeaders:{
                Accept :"application/json"
            },
            onCreate: function(){
                $('addConnection_error').style.display ="";
                show_send_msg('addConnection_error','处理中....');
            },
            onSuccess:function(transport){
                var json = transport.responseText.evalJSON(true);
                if(json.RETURN){
                    $('addConnection_error').style.display ="none";
                    $('checkMyEmailTable').style.display ="none";
                    $('checkMyEmailInfo').style.display ="";
                    $('checkMyEmailInfo_tr').style.display ="";
                    $('power_point').style.display ="none";
                    if(json.FLAG =="0" || json.FLAG =="1" || json.FLAG =="2"){
                        if(json.FLAG == 0)
                            $('checkMyEmailInfo').update(name+" 已经发了邀请函到你您的邮箱("+email_me+")，请查收。<br/><br/>如果信箱里找不到这封邮件，请查看'垃圾邮箱'，某些电邮服务可能做了不正确的过滤。");
                        if(json.FLAG == 1)
                            $('checkMyEmailInfo').update("确认邮件已发至您的邮箱（"+email_me+")，请查收。<br/><br/>如果信箱里找不到这封邮件，请查看'垃圾邮箱'，某些电邮服务可能做了不正确的过滤。");
                        if(json.FLAG == 2){
                            $('checkMyEmailInfo').update("恒知已将您的请求发送给"+name+", 请耐心等候");
                        }

                    }else
                        $('checkMyEmailInfo').update("确认邮件已发至您的邮箱（"+email_me+")，请查收。<br/><br/>如果信箱里找不到这封邮件，请查看'垃圾邮箱'，某些电邮服务可能做了不正确的过滤。");


                }else{
                    show_error_msg('addConnection_error',json.MESSAGE);
                //$('addConnection_error').style.display ="";
                //$('addConnection_error').update(json.MESSAGE);
                //if(json.MESSAGE == "输入邮箱地址已注册"){
                //   window.setTimeout("ProfileCard.autoNextPage()",5000);
                //}
                }
            }

        });

    },
    _isSingleEmail : function(s){
        var flag=true;
        var emailRegS=/^([a-zA-Z0-9_\-\.\+]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
        if (!emailRegS.exec(s))
            flag=false ;
        return flag ;
    },
    hiddenAddConnectionPage : function(){
        $('personal').style.display ="";
        $('profile_title').style.display="";
        $('AddConnectionCheck').style.display ="none";
        $('addConnection_error').update('');
        $('addConnection_error').style.display = "none";
        $('email_me').setValue('');
        $('email_mea').setValue('');
        $('name_me').setValue('');
        $('imageCode').setValue('');
        $('power_point').style.display ="";
    },
    connectInit : function(_connect){
        this._connect = _connect;
        //alert(_connect.toUser.name+ "   "+_connect.fromName+"   "+_connect.fromEmail+"   "+_connect.linkCode);
        Profile3._connectInfoShow(_connect);
    },
    _connectInfoShow : function(_connect){
        //shen添加: 反向邀请，确认邮箱后的页面，可编辑邮件内容，主题不可修改
        var contant = _connect.toUser.name+" 你好:"+
        "\r\n\r\n     希望通过您加入恒知网.\r\n\r\n"+"          此致,"+"\r\n\n"+_connect.fromName;
        var label  = "恒知网 | 建立联系";
        $('invite_name_conn').setValue(_connect.toUser.name);
        $('invite_name_conn').disabled = true;
        $('connect_user_name').setValue(_connect.fromName);
        $('connect_user_name').disabled = true;
        $('invite_subject_conn').setValue(label);
        $('invite_subject_conn').disabled = true;
    //$('invite_message_conn').setValue("invite_message_conn");
    },
    displayConnPage : function(result,name){
        //alert(result+"  name="+name+" linkCode ="+Profile3._connect.linkCode);
        $('profile_title').style.display ="none";
        $('power_point').style.display ="none";
        $("personal").style.display ="none";
        $('addConnection').style.display = "";
        $("emailcard_id").update("和 "+name+" 建立联系");

        var foundbutton = $('profile').select('tr');
        foundbutton.each(function(f){
            if(f.id =="addConnectionButton")
                f.style.display ="none";
        });

        $('addConnectionButton').style.display ="none";
        if(result !=0){
            //$('leterSendSuccess').style.display ="none";

            $('leterSendSuccess').style.display ="";
            $('leter_div').style.display ="none";
            $('leterSendSuccess').update("链接已过期或已被使用");
        }
        else
            $('leter_div').style.display="";

    },
    addConnectEvent : function(){
        var subject = $('invite_subject_conn').value;
        var message = $('invite_message_conn').value;
        if(message.trim()=="请尽可能详细地介绍您自己,以便对方更好的了解您"){
            show_error_msg('loadingLetterMessage',"请填写信件内容");
            return;
        }
        if(message.trim().length<5){
            show_error_msg('loadingLetterMessage',"请认真填写信件内容");
            return;
        }
        new Ajax.Request('/Network.do?action=SEND_INVITATION_REQUEST',{
            parameters:{
                "linkcode":Profile3._connect.linkCode,
                "subject":subject,
                "message":message
            },
            requestHeaders:{
                Accept :"application/json"
            },
            onCreate : function(){
                $('loadingLetterMessage').style.display ="";
                show_send_msg('loadingLetterMessage','处理中....');
            },
            onSuccess:function(transport){
                var json = transport.responseText.evalJSON(true);
                if(json.RETURN){
                    $('loadingLetterMessage').style.display ="none";
                    $('leter_div').style.display ="none";
                    //$('loadingLetterMessage').style.display ="none";
                    $('leterSendSuccess').style.display ="";
                    $('leterSendSuccess').update("恒知已将您的请求发送给"+Profile3._connect.toUser.name+", 请耐心等候");

                }else{
                    //$('loadingLetterMessage').style.display ="none";
                    if(!json.CODE == false && json.CODE == 500){
                        $('loadingLetterMessage').style.display ="none";
                        $('leter_div').style.display ="none";
                        $('leterSendSuccess').style.display ="";
                        $('leterSendSuccess').update("恒知已将您的请求发送给"+Profile3._connect.toUser.name+", 请耐心等候");
                    }
                    show_error_msg('loadingLetterMessage',json.MESSAGE);
                //$('addConnectionLetter_error').style.display ="";
                //$('addConnectionLetter_error').update(json.MESSAGE);
                }
            }
        });
    },
    hiddenAddConnectionPageEmail : function(){
        $('addConnection').style.display ="none";
        $('personal').style.display ="";
        $('profile_title').style.display ="";
    }
   

}

function send(screenName){
    //        var toNameElement = $(this._contend_location_div).select('[id="invite_name"]')[0];
    //        var fromNameElement = $(this._contend_location_div).select('[id="login_user_name"]')[0];
    var subjectElement = $("delivery_business_div").select('[id="invite_subject_conn"]')[0];
    var message = $("delivery_business_div").select('[id="invite_message_conn"]')[0];
    var param = new Hash();
    param.set("userid", screenName);
    param.set("subject", subjectElement.getValue());
    param.set("message", message.getValue());
        
    new Ajax.Request("/Network.do?action=SEND_INNER_INVITATION", {
        method : 'post',
        parameters : param.toQueryString(),
        requestHeaders : {
            Accept: 'application/json'
        },
        onCreate : function(){
            $("delivery_business_div").select('[id="loading"]')[0].show();
        },
        onSuccess : function(transport){
            var json = transport.responseText.evalJSON(true);
            if (json.RETURN) {
                rollBack(screenName);
            } else {
                $("delivery_business_div").select('[id="errorMsg"]')[0].update(json.MESSAGE);
            }
        },
        onComplete : function(){
            $("delivery_business_div").select('[id="loading"]')[0].hide();
        }
    })
}
function rollBack(sName){
    document.location.href="/"+sName;
}

var ContactDegree1WithMe = {
    _removeConfirm : function(){
        if(confirm("确认删除此名片?")){
            return true;
        }
        return false;
    },

    remove : function(){
        if(this._removeConfirm()){
            $("removeContactForm").submit();
        }
    }
}

var SetProfilePermission = {
    setPersonalDataPermission : function(){
        var param = new Hash();
        param.set("permissionTarget", $("permission_target").getValue());
        param.set("permissionType", $("permission_type").getValue());
           
        new Ajax.Request("/Profile3.do?action=SET_PERSONAL_DATA_PERMISSION", {
            method : 'post',
            parameters : param.toQueryString(),
            requestHeaders : {
                Accept: 'application/json'
            },
            onCreate : function(){
                $("loading").update('<img src="/images/loading.gif" />');
                $("loading").show();
            },
            onSuccess : function(transport){
                var json = transport.responseText.evalJSON(true);
                if (json.RETURN) {
                    show_success_msg("loading", "设置成功");
                } else {
                    show_error_msg("loading", json.MESSAGE);
                }

                setTimeout(function(){
                    $("loading").update("");
                    $("loading").className = "";
                },3000);
            },
            onComplete : function(){
            //$("loading").hide();
            }
        })
    }
}

