note_id = 0;
win_height = 0;
music_player = new Audio();
pop_up_note_mode = true;
text_prepared = false;
font_img = null;
// pure_card_text
// ---------------------------------------------------------------------
// sdk
function add_keyframes(name, cssbody)
{
    csstext = '@-webkit-keyframes ' + name + '{' + cssbody + '}';
    style = document.createElement('style');
    document.head.appendChild(style);
    sheet = style.sheet;
    sheet.insertRule(csstext, 0);
}
function create_imgdiv(url, idname, visible, x, y)
{
    imgdiv = document.createElement('div');
}
function objid(idname)
{
    return document.getElementById(idname);
}
function _kv(value)
{
    if(typeof(value) == 'undefined')
    {
        return false;
    }
    if(value == '')
    {
        return false;
    }
    if(value.charAt(0) == '#')
    {
        return false;
    }
    return true;
}
function _v(keyname)
{
    if(typeof(kawa_data[keyname]) == 'undefined')
    {
        return '';
    }
    return kawa_data[keyname];
}
// ---------------------------------------------------------------------
// text
function kawa_init_async()
{
    read_base();
    create_textdiv();
    add_kawa_icon();
    create_music();
    //create_modify();
    zk_create_modify();
}
function kawa_init()
{
    document.body.style.margin = '0px';
    create_base();
    setTimeout("kawa_init_async()", 100);
 }
function is_show_words()
{
    if(typeof(kawa_data.show_words) == 'undefined')
    {
        return true;
    }
    if(kawa_data.show_words != 'no')
    {
        return true;
    }
    return false;
}
function read_base()
{
    win_height = objid('basepoint').offsetTop;
}
function create_base()
{
    div = document.createElement('div');
    div.style.position = 'fixed';
    div.style.bottom = '0px';
    div.style.width = '1px';
    div.style.height = '1px';
    div.style.left = '-100px';
    div.id = 'basepoint';
    document.body.appendChild(div);
}
function make_text_animation()
{
    //if(!is_show_words())
    //    return;
    var mask = objid('textmask');
    var textdiv = objid('textdiv');
    if(kawa_data.mode == 'up')
    {
        var keycss = 'from{-webkit-transform:translate(0px, ' + mask.offsetHeight + 'px);}' +
                 'to{-webkit-transform:translate(0px, -' + textdiv.offsetHeight + 'px);}' 
        add_keyframes('textdivani', keycss);
        var dt = (mask.offsetHeight + textdiv.offsetHeight) / kawa_data.speed;
        textdiv.style.webkitAnimation = 'textdivani ' + dt + 's linear infinite';
    }
    else if(kawa_data.mode == 'left')
    {
        var keycss = 'from{-webkit-transform:translate(' + mask.offsetWidth + 'px, 0px);}' +
                 'to{-webkit-transform:translate(-' + textdiv.offsetWidth + 'px, 0px);}' 
        add_keyframes('textdivani', keycss);
        var dt = (mask.offsetWidth + textdiv.offsetWidth) / kawa_data.speed;
        textdiv.style.webkitAnimation = 'textdivani ' + dt + 's linear infinite';
    }
    else if (kawa_data.mode == 'print')
    {
        onPrint();
        setTimeout("onPrintAni()", 1500);
    }
}
function onPrint()
{
    objid('textdiv').style.top = objid('textmask').offsetHeight;
    gPrText          = card_text();
    gOrgCardText       = card_text();
}
function onPrintAni()
{
    pushText = '';
    
    var reachEnd = 0;
    
    if(gPrText.length <1)
    {
        reachEnd = 1;
    }
    
    var cutlen = 0;
    if(gPrText.length >= 4 && gPrText.substring(0, 4) == '
')
    {
        gPrText  = gPrText .substring(4);
        pushText = '
';
        cutlen = 4;
    }
    else if(gPrText.substring(0, 2) == '/:')
    {
        result = ConvFaceOnBegin(gPrText );
        cutlen = result[1];
        if(cutlen > 0)
        {
            gPrText  = gPrText .substring(cutlen);
            pushText = result[0];
        }
    }
    
    if(cutlen == 0 && gPrText.length >= 1)
    {
        pushText   = gPrText.substring(0, 1);
        gPrText  = gPrText.substring(1);
    }
    objid('textdiv').innerHTML = objid('textdiv').innerHTML + pushText;
    //alert(objid('textmask').offsetHeight);
    if((objid('textdiv').offsetTop + objid('textdiv').offsetHeight)> objid('textmask').offsetHeight)
    {
        trans = objid('textmask').offsetHeight - objid('textdiv').offsetHeight;
        objid('textdiv').style.top = trans+ 'px';
        //alert(objid('textdiv').style.top);
    }
    if(reachEnd == 1)
    {
        //setTimeout("", 2000); 
        
        setTimeout("pauseShow()",2000);
        
    }
    else
    {
        var gSpeed = kawa_data.speed;
        setTimeout("onPrintAni()", gSpeed);
    }
}
function pauseShow()
{
    reachEnd=0;
    trans = 0;
    objid('textdiv').style.top =trans+'px';
    gPrText              = gOrgCardText;
    objid('textdiv').innerHTML = "";
    setTimeout("onPrintAni()",1000);
}
function show_textdiv()
{
        var box = kawa_data.text_box.split(' ');
        var mask = document.createElement('div');
        mask.id = 'textmask';
        mask.style.position = 'absolute';
        mask.style.left     = box[0] + 'px';
        mask.style.top      = box[1] + 'px';
        mask.style.width    = box[2] + 'px';
        mask.style.height   = box[3] + 'px';
        mask.style.overflow = 'hidden';
        var textdiv = document.createElement('div');
        textdiv.id = 'textdiv';
        textdiv.style.position = 'absolute';
        textdiv.style.color = kawa_data.text_color;
        textdiv.style.fontSize  = kawa_data.font_size;
        
        textdiv.style.lineHeight = kawa_data.line_height;
        textdiv.style.fontWeight = '600';       
        textdiv.style.fontFamily = 'Microsoft YaHei';
        textdiv.style.zIndex = 50000;
        if(_kv(kawa_data.text_align))
        {
            textdiv.style.textAlign = kawa_data.text_align;
        }
        if(_kv(kawa_data.font_weight))
        {
            textdiv.style.fontWeight = kawa_data.font_weight;
        }
        if(kawa_data.mode == 'left')
        {
            textdiv.style.float = 'left';
        }
        document.body.appendChild(mask);    
        mask.appendChild(textdiv);
        set_up_words();
}
function create_textdiv()
{
    if(is_show_words())
    {
        show_textdiv();
    }
}
function set_up_words()
{
    if(_kv(kawa_data.font_family))
    {
        var text = pure_card_text();
        if(kawa_data.mode == 'up')
        {
            text = wrap_text(text);
        }
        var font_ip = 'lessor.cn:8000';
        if(_kv(kawa_data.font_ip))
        {
            font_ip = kawa_data.font_ip;
        }
        var re_d = /^\d+/;
        var font_size = parseFloat(re_d.exec(kawa_data.font_size)[0]);
        var line_height = parseFloat(re_d.exec(kawa_data.line_height)[0]);
        var gap = line_height - font_size;
        var box = kawa_data.text_box.split(' ');
        var color = kawa_data.text_color.substring(1);
        var url = "http://" + font_ip + "/fontimg?words=" + encodeURIComponent(text) + "&fontname=" + 
            kawa_data.font_family + "&fontsize=" + font_size + "&gap=" + gap + "&width=" + box[2] + 
            "&color=" + color;
        font_img = document.createElement('Img');
        font_img.onload = on_font_img_load;
        font_img.src = url;
        setTimeout('on_check_font_img()', 1000);
    }
    else
    {
        textdiv = objid('textdiv');
        if (kawa_data.mode=='print')
            textdiv.innerHTML = '';
        else
            textdiv.innerHTML = card_text();
        make_text_animation();
    }
}
function on_font_img_load()
{
    if(!text_prepared)
    {
        text_prepared = true;
        var textdiv = objid('textdiv');
        textdiv.appendChild(font_img);
        make_text_animation();
    }
}
function on_check_font_img()
{
    if(!text_prepared)
    {
        var textdiv = objid('textdiv');
        text_prepared = true;
        var fontSize = parseInt(textdiv.style.fontSize);
        var lineHeight = parseInt(textdiv.style.lineHeight);
        textdiv.style.fontSize = fontSize*2/3 + textdiv.style.fontSize.substring(textdiv.style.fontSize.length-2,textdiv.style.fontSize.length);
        textdiv.style.lineHeight = lineHeight*2/3 + textdiv.style.lineHeight.substring(textdiv.style.lineHeight.length-2,textdiv.style.lineHeight.length);
        textdiv.innerHTML = card_text();
        make_text_animation();
    }
}
function pure_card_text()
{
    text = kawa_data.words;
    if(kawa_data.replace_words != '#replace_words#')
    {
        text = kawa_data.replace_words;
    }
    return text;
}
function card_text()
{
    text = pure_card_text();
    if((kawa_data.mode == 'up')||(kawa_data.mode == 'print'))
    {
        text = wrap_text(text);
    }
    else if(kawa_data.mode == 'left')
    {
        text = '
');
    text = text.replace(/,/g, ',
');
    text = text.replace(/\./g, '.
');
    text = text.replace(/。/g, '。
');
    text = text.replace(/;/g, ';
');
    text = text.replace(/;/g, ';
');
    text = text.replace(/!/g, '!
');
    text = text.replace(/!/g, '!
');
    text = text.replace(/~/g, '~
');
    text = text.replace(/:/g, ':
');
    text = text.replace(/:/g, ':
');    
    text = text.replace(/?/g, ':
');
    text = text.replace(/\?/g, ':
');
    return text;
}
// ---------------------------------------------------------------------
// kawa icon
function add_kawa_icon()
{
    url = 'http://www.lessor.cn/Blessing/images/142252886354ca115f61854.gif';
    div = document.createElement('div');
    img = document.createElement('img');
    img.src = url;
    div.appendChild(img);
    div.style.position = 'fixed';
    div.style.top = (win_height - 150) + 'px';
    //div.style.top = (700 - 20) + 'px';
    div.style.right = '10px';
    div.style.zIndex = '10000';
    //div.style.left = '10px';
    //alert('kawa');
    div.onclick = goto_kawa;
    document.body.appendChild(div);
}
function goto_kawa()
{
    if(kawa_data.modify == 'yes' || kawa_data.replace_modify == 'yes')
    {
        location.href = 'http://www.lessor.cn/Blessing/';
    }
    else
    {
        location.href = 'http://www.lessor.cn/Blessing/';
    }
}
// ---------------------------------------------------------------------
// kawa music
var bplay = 0;              //记录是否要播放音乐
function switchsound()
{
    au = music_player
    ai = objid('sound_image');
    if(au.paused)
    {
        bplay = 1;
        au.play();
        ai.src = "http://www.lessor.cn/Blessing/img/ext/music_note_big.png";
        pop_up_note_mode = true;
        popup_note();
        objid("music_txt").innerHTML = "打开";
        objid("music_txt").style.visibility = "visible";
        setTimeout(function(){objid("music_txt").style.visibility="hidden"}, 2500);
    }
    else
    {
        bplay = 0;
        pop_up_note_mode = false;
        au.pause();
        ai.src = "http://www.lessor.cn/Blessing//img/ext/music_note_big.png";
        objid("music_txt").innerHTML = "关闭";
        objid("music_txt").style.visibility = "visible";
        setTimeout(function(){objid("music_txt").style.visibility="hidden"}, 2500);
    }
}
function play_music()
{
    if(typeof(kawa_data) != 'undefined')
    {
        music = kawa_data.music;
        if(kawa_data.replace_music != '#replace_music#')
        {
            music = kawa_data.replace_music;
        }
        music_player.src = music;
        music_player.loop = 'loop';
        music_player.play();
        bplay = 1;
    }
}
function create_music()
{
    play_music();
    sound_div = document.createElement("div");
    sound_div.setAttribute("ID", "cardsound");
    sound_div.style.cssText = "position:fixed;right:20px;top:25px;z-index:50000;visibility:visible;";
    sound_div.onclick = switchsound;
    bg_htm = " ";
    box_htm = "
";
    box_htm = "
 html_body += '
    html_body += ' ';
    recommend_html += '
';
    recommend_html += ' ';
    recommend_html += '
';
    recommend_html += ' ';
    recommend_html += '
';
    recommend_html += ' ';
    recommend_html += '
';
    recommend_html += ' ';
    recommend_html += '
';
    recommend_html += ' ';
    recommend_html += '
';
    recommend_html += ' div_html += '
        div_html += '