/*<![CDATA[*/
var editor;
//ckeditor toolbar
var ckconfig1 = {
    toolbar:
    [
    ['Source','Preview'],
    //加粗     斜体，     下划线      穿过线      下标字        上标字
    ['Bold','Italic','Underline','Strike','Subscript','Superscript'],
    //数字列表          实体列表            减小缩进    增大缩进
    ['NumberedList','BulletedList','-','Outdent','Indent'],
    //左对齐             居中对齐          右对齐          两端对齐
    ['JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
    //超链接 取消超链接 锚点
    ['Link','Unlink','Anchor'],
    //图片    flash    表格       水平线            表情       特殊字符        分页符
    ['Image','Flash','Table','HorizontalRule','Smiley','SpecialChar','PageBreak'],
    '/',
    //样式       格式      字体    字体大小
    ['Styles','Format','Font','FontSize'],
    //文本颜色     背景颜色
    ['TextColor','BGColor'],
    //全屏           显示区块
    ['Maximize', 'ShowBlocks','-']
    ],
    height:300,
    skin:'v2'
};
var ckconfig2 = {
    toolbar:
    [
        ['Source','Bold', 'Italic', '-', 'NumberedList', 'BulletedList', '-', 'Link', 'Unlink'],
    ],
    height:120,
    skin:'v2'
};

//open a new window
function newin(srcurl){
    window.open(srcurl);
    return false;
}

String.prototype.repall  = function(s1,s2){   
    return this.replace(new RegExp(s1,"g"),s2);
    //return this.replace(/s1/g,s2);
}

String.prototype.replaceToBr = function(){
    return this.replace(/\n/g,"<br/>")
}

function checkspace(checkstr) {
    var str = '';
    for(i = 0; i < checkstr.length; i++) {
        str = str + ' ';
    }
return (str == checkstr);
}

//change the url
function ChangeUrl(url) {
    window.location.href = url ;
    return false;
}

function IsDigit(s)
{
    var r,re;
    re = /\d*/i; //\d表示数字,*表示匹配多个数字
    r = s.match(re);
    return (r==s);
}

function clearslug(slug){
    return slug.replace(/[*%#&\.\s\\\/,]/g,'_');
}
//switch css style
function switchStylestyle(styleName)
{
    $('link[rel*=stylesheet][title]').each(function(i) 
    {
        $(this).attr('disabled','true');
        if ($(this).attr('title') == styleName) $(this).removeAttr('disabled');
    });
    $.cookie('style', styleName, { expires: 365 });
}

//pageList function
function GenPageList(TotalCount,Psize,Page,plModel){
var s="";
var TotalPage;
if (!Page) { Page = 1; }    //default page
if(!TotalCount || TotalCount ==0) return '';
//get total page
TotalPage = (TotalCount % Psize) ? parseInt(TotalCount/Psize)+1 : TotalCount/Psize;
if(TotalPage < 2) return '';
Page = parseInt(Page); TotalPage = parseInt(TotalPage);
   
    //page list info
    //s += 'Total:'+ TotalCount +'&nbsp;|&nbsp;Page:'+ Page +'/'+ TotalPage +'&nbsp;|&nbsp;';
    //s += 'PageSize:'+ Psize +'&nbsp;|&nbsp;';
    s += '<a href="'+ plModel.replace('{p}','1') +'" title="First Page">&lt;&lt;</a>';
    if (Page>5)    { s += '<a href="'+ plModel.replace('{p}',(Page-5)) +'" title="Page '+ (Page-5) +'">&lt;</a>';    }
    
    var StartPage    = ((Page-4)>0) ? (Page-4) : 1;    //get startpage
    var EndPage        = ((Page+4)>TotalPage) ? TotalPage : (Page+4);    //get endpage
    //s += StartPage +'and'+ EndPage + 'and'+(Page+4);
    
    for (var i=StartPage; i < EndPage+1; i++) {    //format list serial
        if (i == Page) { s += '<em>['+ i +'] </em>'; }
        else{ s += '<a href="'+ plModel.replace('{p}',i) +'">['+ i +']</a>'; }
    }
    if ((Page+5)<TotalPage)    { s += '<a href="'+ plModel.replace('{p}',(Page+5)) +'" title="Page '+ (Page+5) +'">&gt;</a>'; }
    s += '<a href="'+ plModel.replace('{p}', TotalPage) +'" title="Last Page">&gt;&gt;</a>';

    return s;
}

//get a random string
function MakePara () {
    Math.rand = function(min,max){
      return parseInt(Math.random()*(max-min+1));
    }
    var d, t;
    d = new Date();
    t = d.getTime();
    t = "&rand=" + t + "&rand1=" +Math.random(0,100);
    return t;
}

//初期化搜索表单
function initSearchForm(keyid, btnid, action, defaultKey){
    if($(keyid).val() == '') $(keyid).val(defaultKey);
    $(btnid).click(function(){
        var strKeyword = $(keyid).val();
        if('' == strKeyword || strKeyword == defaultKey){$(keyid).val('').focus();}
        else{location.href = action + strKeyword;}
    });
    $(keyid).blur(function(){if($(this).val() == ''){$(this).val(defaultKey);}})
    .focus(function(){
        var strKeyword = $(this).val();
        if(strKeyword == defaultKey){$(this).val('');}
    })
    .keyup(function(ev){
        if (ev.which == 13) $(btnid).click();
    });
}

//初期化回复表单
function initEditorBind(tar, helloword, timecode){
    tar = (tar=='cmt') ? tar:'msg';
    //get / set cookie
    var oldUserName = $.cookie('UserName');
    var oldUserAlertMsg = '<strong>'+ oldUserName +'</strong>，' + helloword +
            '<a id="NotSelf" href="javascript:void(0)" title="This is not me!"><img src="/static/images/x.gif" alt="x" /></a>';
    if(!(null == oldUserName || '' == oldUserName)){
        $('#oldUserAlert').html(oldUserAlertMsg).show('slow');
        $('#NotSelf').click(InValidUser);
    }
    $('#UserName,#UserEmail,#UserSite')
    .each(function(){var ckVar = $.cookie($(this).attr('id'));if(ckVar){$(this).val(ckVar)}})
    .blur(function(){$.cookie($(this).attr('id'), $(this).val(), { path:'/',expires: 30 });});
    //set up timecode
    $('#timecode').val(timecode);
    //post a comment
    $('#PostForm').one('click',function(){
        $('#btnPost').click(function(){
            PostMsg(tar);
        });
    });
}

//初期化删除留言按钮
function initDelLinkBind(tar){
    tar = (tar=='cmt') ? tar:'msg';
    $('.N3cFunc a').click(function(){
        var a = $(this);
        var id = a.attr('id').split('-')[1];
        var action = a.attr('action');
        $.ajax({
            type:'POST', url: action, cache:false,
            success:function(data){
                if(data){
                    $('#'+ tar +'-'+ id).append(data);
                }else{
                    $('#'+ tar +'-'+ id).fadeOut();
                }
            },
            error:function(){alert('some error occoured!');}
        });
    });
    //remove msg usersite
    $('a.rmvlnk').click(function(){
        var r = $(this);
        var action = r.attr('action');
        $.ajax({
            type:'POST', url: action, cache:false,
            success:function(data){
                if(data)
                {
                    alert(data);
                }else{
                    var n = r.prev('a');
                    var nt = n.text();
                    alert('link removed!');
                    n.after(nt);
                    n.remove();
                    r.remove();
                }
            },
            error:function(){alert('some error occoured!');}
        });
    });
}

//初期化SPAM按钮
function initSpamLinkBind(tar){
    tar = (tar=='guestbook') ? tar:'blog';
    $('.N3cFunc a[id^="spam-"]').click(function(){
        var a = $(this);
        var ST = a.attr('id').split('-')[1];
        var SK = a.attr('rel');
        var action = a.attr('action');
        var postData = 'ST='+ ST +'&SK='+ SK +'&SF='+ tar;
        $.ajax({
            type:'POST', url: action, cache:false,data:postData,
            success:function(data){
                if(data){
                    a.html(data);
                }else{
                    alert(SK + ' is blocked now!');
                    a.html('');
                }
            },
            error:function(){alert('some error occoured!');}
        });
    });
}

//站长回复按钮
function initRplBtnBind(tar){
    tar = (tar=='cmt') ? tar:'msg';
    $('button.rplbutton').click(function(){
        var id = $(this).attr('rel');
        $('#rpl-'+id).load('/rpl/'+ tar +'/'+id,function(){
            $('#ReplyText'+id).ckeditor(ckconfig2); 
            $('#btnRpl'+id).click(function(){
                PostReply(tar, id);
            });
        });
    });
}

//查看IP
function initViewIPBind(){
    $('.ip').click(function(){
        var ip = $(this).text();
        getiplocal(ip);
    });
}

//投递站长回复
function PostReply(tar, id){
    tar = (tar=='cmt') ? tar:'msg';
    $('#btnRpl'+id).html('<img src="/static/images/working3.gif" />正在提交...');
    var postData = $('#ReplyText'+id+',#EmailNotify').serialize();
    var action = $('#btnRpl'+id).attr('action');
    $.ajax({
        type:'POST',url:action,cache:false,
        data:postData,
        success:function(data){
            $('#rpl-'+id).html(data);
        },
        error:function(){alert('some error occoured!');}
    });
}

//设置过期提醒
//i:过期时间(秒)
//btnId:如果要自动提交,要提交的按钮ID
function TimeOutAlert(i,btnId,isAlert,savetxt){
    var confirmStr = (btnId != '')?
        "您已经长时间未提交刷新页面\n请及时保存当前编辑数据,马上提交当前数据,请点[确定]":
        "您已经长时间未提交刷新页面\n请及时保存当前编辑数据";
    if (i == 0) {
        if(isAlert == 'true'){
            if(confirm(confirmStr) &&  btnId != '') {$('#'+btnId).click();}else{return;}
        }else{
            if(btnId != ''){$('#'+btnId).click();}else{return;}
        }
        $.copy(savetxt);
    }
    window.setTimeout("TimeOutAlert("+(parseInt(i,10)-1)+",'"+ btnId +"','"+ isAlert +"','"+ savetxt +"')",1000);
}

//绑定SLUG同步
function bindslug(name,slug){
    $(name).keyup(function(){
        var t = $(this).val();
        if(t){
            $(slug).val(clearslug(t));
        }
    });
}

/**********************************日志回复功能区***************************************/

//发表新的留言(日志/留言板)
var resetPostBtn = function(msg){$('#btnPost').removeAttr('disabled').html(msg);}

function PostMsg(msgType){
    //alert(msgContent);return false;
    var xMsg = '<img src="/static/images/x.gif" /> ';
    var yMsg = '<img src="/static/images/y.gif" /> ';
    if (Validator.Validate($('#PostForm')[0],3)){
        $('#btnPost').attr('disabled','true').html('<img src="/static/images/working3.gif" />Posting...Wait a moment');
        var postData = $('#PostForm').serialize();
        var postUrl = $('#PostForm').attr('action');
        if( postData == '') {
                alert('未知提交数据,请向柠檬[support@3rgb.com]报告此错误');
                resetPostBtn(xMsg+ ' 错了,重试?');    
                return;
        }
        $('#errlist').remove();
        //alert(postUrl);alert(postData);return false;
        $.ajax({
            type:"POST",url:postUrl,
            cache:false,data:postData,
            success:function(result){
                switch(msgType){
                case "msg":
                    $('#GuestBookList').prepend(result);
                    break;
                case "cmt":
                    $('#CommentList').append(result);
                    break;
                case "sms":
                    alert(result);
                    break;
                }
                //alert(result);
                $('#msgContent').text('');
                resetPostBtn(yMsg+' 继续发表~');
            },
            error:function(errText){
                alert('发生错误:'+$(errText).text());
                resetPostBtn(xMsg+ ' 哎,再试一次!');
            }
        });
    }
}

//SMS短信通知
function SMSNotify(action){
    $.ajax({
        type:'POST', url: action, cache:false,
        success:function(data){
            //
        },
        error:function(){alert('error');}
    });
}

function InValidUser(){
    if(confirm('确定这不是你？确定的话，你得重填你的信息哦~')){
        $('#oldUserAlert').remove();
        $('#UserName,#UserEmail,#UserSite').val('');
        $('#UserName').focus();
        $.cookie('UserName', null);
        $.cookie('UserEmail', null);
        $.cookie('UserSite', null);
    }
}


/*查询IP地址所在地*/
function getiplocal(ip){
    var getUrl = '/ip';
    $.ajax({
        type:'GET', url:getUrl,cache:false,
        data:'ip='+ip,
        success:function(result){
            alert(result);
        },
        error:function(err){
            alert(err);
        }
    });
}

/******************************************************************************************/
/*前台AJAX登录*/
function userLogin(){
    if (Validator.Validate($('#LoginForm')[0],3)){
        $('#btnLogin').html('<img src="/images/working2.gif" />登录中...');
        //alert($('#LoginForm').serialize());return;
        $.ajax({
            type:'POST',url:LoginHandler,cache:false,
            data:$('#LoginForm').serialize(),
            success:function(backXml){
                if($('ErrorReturn',backXml).length != 0){
                    alert($('ErrorReturn',backXml).text());
                    resetLoginBtn('哎,再试一次!');
                }else{
                    n3cNomandy = 'true';EnableMsgMgr();
                    $('#LoginPanel ul').remove();
                    $('#LoginFunc').show();
                }
            },
            error:function(errText){
                alert('发生错误:'+$(errText).text());
                resetPostBtn(xMsg+ '哎,再试一次!');
            }
        });
        var resetLoginBtn = function(msg){$('#btnLogin').removeAttr('disabled').html('<img src="/images/x.gif" /> ' + msg);}
    }
}

var FCKformed = [];
var latestId = 0;

/*
$("input").bind("keyup",function() { 
    var str=this.value; 
    while (str.replace(/[^\x00-\xFF]/g,"aa").length>8) { 
        str=str.substr(0,str.length-1); 
    }
    this.value=str; 
});
*/
/*]]>*/

