// コメントにカスタマイズ絵文字入力機能：画像設定
function getCommentEmojiList() {
    var list = new Array();
    // 画像名、画像URLの設定
    list[list.length] = new Array('アヒャ', 'http://honey.mints.ne.jp/emoji/ahya.gif');
    list[list.length] = new Array('アセアセ', 'http://honey.mints.ne.jp/emoji/asease.gif');
    list[list.length] = new Array('アヤシイ', 'http://honey.mints.ne.jp/emoji/ayasii.gif');
    list[list.length] = new Array('バーン', 'http://honey.mints.ne.jp/emoji/ba-n.gif');
    list[list.length] = new Array('バイバイ', 'http://honey.mints.ne.jp/emoji/baibai.gif');
    list[list.length] = new Array('ボー', 'http://honey.mints.ne.jp/emoji/boo.gif');
    list[list.length] = new Array('ブチュ', 'http://honey.mints.ne.jp/emoji/buchu.gif');
    list[list.length] = new Array('デヘヘ', 'http://honey.mints.ne.jp/emoji/dehehe.gif');
    list[list.length] = new Array('エーン', 'http://honey.mints.ne.jp/emoji/e-n.gif');
    list[list.length] = new Array('エエー', 'http://honey.mints.ne.jp/emoji/ee.gif');
    list[list.length] = new Array('エヘ', 'http://honey.mints.ne.jp/emoji/ehe.gif');
    list[list.length] = new Array('ゲーン', 'http://honey.mints.ne.jp/emoji/ge-n.gif');
    list[list.length] = new Array('ハツ', 'http://honey.mints.ne.jp/emoji/ha.gif');
    list[list.length] = new Array('ハァ', 'http://honey.mints.ne.jp/emoji/haa.gif');
    list[list.length] = new Array('ハァハァ', 'http://honey.mints.ne.jp/emoji/haahaa.gif');
    list[list.length] = new Array('ハゥ', 'http://honey.mints.ne.jp/emoji/hau.gif');
    list[list.length] = new Array('ジュル', 'http://honey.mints.ne.jp/emoji/jyuru.gif');
    list[list.length] = new Array('キー', 'http://honey.mints.ne.jp/emoji/ki.gif');
    list[list.length] = new Array('キラーン', 'http://honey.mints.ne.jp/emoji/kiran.gif');
    list[list.length] = new Array('クスン', 'http://honey.mints.ne.jp/emoji/kusun.gif');
    list[list.length] = new Array('キャ', 'http://honey.mints.ne.jp/emoji/kya.gif');
    list[list.length] = new Array('キャー', 'http://honey.mints.ne.jp/emoji/kyaa.gif');
    list[list.length] = new Array('雨', 'http://honey.mints.ne.jp/emoji/m_ame.gif');
    list[list.length] = new Array('汗汗', 'http://honey.mints.ne.jp/emoji/m_asease.gif');
    list[list.length] = new Array('汗タラ', 'http://honey.mints.ne.jp/emoji/m_asetara.gif');
    list[list.length] = new Array('ビール', 'http://honey.mints.ne.jp/emoji/m_beer.gif');
    list[list.length] = new Array('ビックリ', 'http://honey.mints.ne.jp/emoji/m_bikkuri.gif');
    list[list.length] = new Array('ビックリ２', 'http://honey.mints.ne.jp/emoji/m_bikkuri2.gif');
    list[list.length] = new Array('病院', 'http://honey.mints.ne.jp/emoji/m_byouin.gif');
    list[list.length] = new Array('カメラ', 'http://honey.mints.ne.jp/emoji/m_camera.gif');
    list[list.length] = new Array('カップ', 'http://honey.mints.ne.jp/emoji/m_cap.gif');
    list[list.length] = new Array('チェック１', 'http://honey.mints.ne.jp/emoji/m_check.gif');
    list[list.length] = new Array('チェック２', 'http://honey.mints.ne.jp/emoji/m_check2.gif');
    list[list.length] = new Array('チェック３', 'http://honey.mints.ne.jp/emoji/m_check3.gif');
    list[list.length] = new Array('チェック４', 'http://honey.mints.ne.jp/emoji/m_check4.gif');
    list[list.length] = new Array('チョキ', 'http://honey.mints.ne.jp/emoji/m_choki.gif');
    list[list.length] = new Array('ダッシュ', 'http://honey.mints.ne.jp/emoji/m_dash.gif');
    list[list.length] = new Array('食事', 'http://honey.mints.ne.jp/emoji/m_eat.gif');
    list[list.length] = new Array('ガーン', 'http://honey.mints.ne.jp/emoji/m_ga-n.gif');
    list[list.length] = new Array('グー', 'http://honey.mints.ne.jp/emoji/m_goo.gif');
    list[list.length] = new Array('グッド', 'http://honey.mints.ne.jp/emoji/m_good.gif');
    list[list.length] = new Array('ビックリハテナ', 'http://honey.mints.ne.jp/emoji/m_habi.gif');
    list[list.length] = new Array('晴', 'http://honey.mints.ne.jp/emoji/m_hare.gif');
    list[list.length] = new Array('ハテナ', 'http://honey.mints.ne.jp/emoji/m_hatena.gif');
    list[list.length] = new Array('ハート１', 'http://honey.mints.ne.jp/emoji/m_heart1.gif');
    list[list.length] = new Array('ハート２', 'http://honey.mints.ne.jp/emoji/m_heart2.gif');
    list[list.length] = new Array('ハート３', 'http://honey.mints.ne.jp/emoji/m_heart3.gif');
    list[list.length] = new Array('ハート４', 'http://honey.mints.ne.jp/emoji/m_heart4.gif');
    list[list.length] = new Array('左', 'http://honey.mints.ne.jp/emoji/m_hidari.gif');
    list[list.length] = new Array('ひよこ', 'http://honey.mints.ne.jp/emoji/m_hiyoko.gif');
    list[list.length] = new Array('家', 'http://honey.mints.ne.jp/emoji/m_home.gif');
    list[list.length] = new Array('本', 'http://honey.mints.ne.jp/emoji/m_hon.gif');
    list[list.length] = new Array('携帯', 'http://honey.mints.ne.jp/emoji/m_keitai.gif');
    list[list.length] = new Array('きらきら', 'http://honey.mints.ne.jp/emoji/m_kirakira.gif');
    list[list.length] = new Array('キス', 'http://honey.mints.ne.jp/emoji/m_kiss.gif');
    list[list.length] = new Array('曇り', 'http://honey.mints.ne.jp/emoji/m_kumori.gif');
    list[list.length] = new Array('車', 'http://honey.mints.ne.jp/emoji/m_kuruma.gif');
    list[list.length] = new Array('メール１', 'http://honey.mints.ne.jp/emoji/m_mail1.gif');
    list[list.length] = new Array('メール２', 'http://honey.mints.ne.jp/emoji/m_mail2.gif');
    list[list.length] = new Array('マウス', 'http://honey.mints.ne.jp/emoji/m_mause.gif');
    list[list.length] = new Array('メモ', 'http://honey.mints.ne.jp/emoji/m_memo.gif');
    list[list.length] = new Array('右', 'http://honey.mints.ne.jp/emoji/m_migi.gif');
    list[list.length] = new Array('音符', 'http://honey.mints.ne.jp/emoji/m_onpu.gif');
    list[list.length] = new Array('パ', 'http://honey.mints.ne.jp/emoji/m_pa.gif');
    list[list.length] = new Array('ＰＣ', 'http://honey.mints.ne.jp/emoji/m_pc.gif');
    list[list.length] = new Array('ペン', 'http://honey.mints.ne.jp/emoji/m_pen.gif');
    list[list.length] = new Array('写真', 'http://honey.mints.ne.jp/emoji/m_photo.gif');
    list[list.length] = new Array('プレゼント', 'http://honey.mints.ne.jp/emoji/m_pure.gif');
    list[list.length] = new Array('プチッ', 'http://honey.mints.ne.jp/emoji/m_puti.gif');
    list[list.length] = new Array('ブチッ', 'http://honey.mints.ne.jp/emoji/m_puti2.gif');
    list[list.length] = new Array('下', 'http://honey.mints.ne.jp/emoji/m_sita.gif');
    list[list.length] = new Array('テレビ', 'http://honey.mints.ne.jp/emoji/m_tv.gif');
    list[list.length] = new Array('上', 'http://honey.mints.ne.jp/emoji/m_ue.gif');
    list[list.length] = new Array('雪', 'http://honey.mints.ne.jp/emoji/m_yuki.gif');
    list[list.length] = new Array('ＺＺＺ', 'http://honey.mints.ne.jp/emoji/m_zz.gif');
    list[list.length] = new Array('まじ', 'http://honey.mints.ne.jp/emoji/maji.gif');
    list[list.length] = new Array('マスター', 'http://honey.mints.ne.jp/emoji/master.gif');
    list[list.length] = new Array('むぷぷ', 'http://honey.mints.ne.jp/emoji/mupupu.gif');
    list[list.length] = new Array('んー', 'http://honey.mints.ne.jp/emoji/n-.gif');
    list[list.length] = new Array('おーほほ', 'http://honey.mints.ne.jp/emoji/ohoho.gif');
    list[list.length] = new Array('おいおい', 'http://honey.mints.ne.jp/emoji/oioi.gif');
    list[list.length] = new Array('パチパチ', 'http://honey.mints.ne.jp/emoji/patipati.gif');
    list[list.length] = new Array('ポカーン', 'http://honey.mints.ne.jp/emoji/pokan.gif');
    list[list.length] = new Array('ぷんぷん', 'http://honey.mints.ne.jp/emoji/punpun.gif');
    list[list.length] = new Array('ぷぷぷ', 'http://honey.mints.ne.jp/emoji/pupupu.gif');
    list[list.length] = new Array('しょぼーん', 'http://honey.mints.ne.jp/emoji/shobon.gif');
    list[list.length] = new Array('すき', 'http://honey.mints.ne.jp/emoji/suki.gif');
    list[list.length] = new Array('てぃーす', 'http://honey.mints.ne.jp/emoji/thi-su.gif');
    list[list.length] = new Array('とほほ', 'http://honey.mints.ne.jp/emoji/tohoho.gif');
    list[list.length] = new Array('うれしい', 'http://honey.mints.ne.jp/emoji/uresi.gif');
    list[list.length] = new Array('うっとり', 'http://honey.mints.ne.jp/emoji/uttori.gif');
    list[list.length] = new Array('うぅ', 'http://honey.mints.ne.jp/emoji/uu.gif');
    list[list.length] = new Array('やばい', 'http://honey.mints.ne.jp/emoji/yabai.gif');
    list[list.length] = new Array('1', 'http://honey.mints.ne.jp/emoji/1.gif');
    list[list.length] = new Array('2', 'http://honey.mints.ne.jp/emoji/2.gif');
    list[list.length] = new Array('3', 'http://honey.mints.ne.jp/emoji/3.gif');
    list[list.length] = new Array('4', 'http://honey.mints.ne.jp/emoji/4.gif');
    list[list.length] = new Array('5', 'http://honey.mints.ne.jp/emoji/5.gif');
    list[list.length] = new Array('6', 'http://honey.mints.ne.jp/emoji/6.gif');
    list[list.length] = new Array('7', 'http://honey.mints.ne.jp/emoji/7.gif');
    list[list.length] = new Array('8', 'http://honey.mints.ne.jp/emoji/8.gif');
    list[list.length] = new Array('9', 'http://honey.mints.ne.jp/emoji/9.gif');
    list[list.length] = new Array('10', 'http://honey.mints.ne.jp/emoji/10.gif');
    list[list.length] = new Array('11', 'http://honey.mints.ne.jp/emoji/11.gif');
    list[list.length] = new Array('12', 'http://honey.mints.ne.jp/emoji/12.gif');
    list[list.length] = new Array('13', 'http://honey.mints.ne.jp/emoji/13.gif');
    list[list.length] = new Array('14', 'http://honey.mints.ne.jp/emoji/14.gif');
    list[list.length] = new Array('15', 'http://honey.mints.ne.jp/emoji/15.gif');
    list[list.length] = new Array('16', 'http://honey.mints.ne.jp/emoji/16.gif');
    list[list.length] = new Array('17', 'http://honey.mints.ne.jp/emoji/17.gif');
    list[list.length] = new Array('18', 'http://honey.mints.ne.jp/emoji/18.gif');
    list[list.length] = new Array('19', 'http://honey.mints.ne.jp/emoji/19.gif');
    list[list.length] = new Array('20', 'http://honey.mints.ne.jp/emoji/20.gif');
    list[list.length] = new Array('21', 'http://honey.mints.ne.jp/emoji/21.gif');
    list[list.length] = new Array('22', 'http://honey.mints.ne.jp/emoji/22.gif');
    list[list.length] = new Array('23', 'http://honey.mints.ne.jp/emoji/23.gif');
    list[list.length] = new Array('24', 'http://honey.mints.ne.jp/emoji/24.gif');
    list[list.length] = new Array('25', 'http://honey.mints.ne.jp/emoji/25.gif');
    list[list.length] = new Array('26', 'http://honey.mints.ne.jp/emoji/26.gif');
    list[list.length] = new Array('27', 'http://honey.mints.ne.jp/emoji/27.gif');
    list[list.length] = new Array('28', 'http://honey.mints.ne.jp/emoji/28.gif');
    list[list.length] = new Array('29', 'http://honey.mints.ne.jp/emoji/29.gif');
    list[list.length] = new Array('30', 'http://honey.mints.ne.jp/emoji/30.gif');
    list[list.length] = new Array('31', 'http://honey.mints.ne.jp/emoji/31.gif');
    list[list.length] = new Array('32', 'http://honey.mints.ne.jp/emoji/32.gif');
    list[list.length] = new Array('33', 'http://honey.mints.ne.jp/emoji/33.gif');
    list[list.length] = new Array('34', 'http://honey.mints.ne.jp/emoji/34.gif');
    list[list.length] = new Array('35', 'http://honey.mints.ne.jp/emoji/35.gif');
    list[list.length] = new Array('36', 'http://honey.mints.ne.jp/emoji/36.gif');
    return list;
}

function getCustmizeEmojiAttribute() {
    // 画像タグに含める属性値（alt属性以外）
    var att = 'border="0" style="vertical-align:middle"';

    // ***************** 設定ここまで *****************
    att = (att != '') ? (' ' + att) : '';
    return att;
}

function writeCustmizeEmojiTagList(textarea) {

    // ***************** 設定ここまで *****************
    var list = getCommentEmojiList();
    var att = getCustmizeEmojiAttribute();
    for (var i = 0; i < list.length; i++) {
        window.document.write('<a href="javascript:;" onClick="addCustmizeEmoji(' + textarea + ', \'' + list[i][0] + '\');"><img src="' + list[i][1] + '"' + att + ' alt="' + list[i][0] + '" /></a>');
    }
}

// reference from jugem.jp (c)
function addCustmizeEmoji(obj, tag) {
    var item = '[' + tag + ']';
    if (document.selection) {
        obj.focus();
        sel = document.selection.createRange();
        sel.text = item;
    } else if (obj.selectionStart || obj.selectionStart == '0') {
        var startPos = obj.selectionStart;
        var endPos = obj.selectionEnd;
        obj.value = obj.value.substring(0, startPos) + item + obj.value.substring(endPos, obj.value.length);
    } else {
        obj.value += item;
    }
}
// コメントにカスタマイズ絵文字入力機能：画像変換
function changeCustmizeEmojiTag(commentAreaIdName, commentAreaTag, commentBodyClassName) {

    // ***************** 設定ここまで *****************
    var list = getCommentEmojiList();
    var att = getCustmizeEmojiAttribute();
    var objComArea;
    var classComArea;
    var objComBody = new Array();
    if (commentAreaIdName != '') {
        objComArea = document.getElementById(commentAreaIdName);
        if (!objComArea || !objComArea.innerHTML) return;
        classComArea = objComArea.getElementsByTagName(commentAreaTag);
    } else {
        classComArea = document.getElementsByTagName('*');
    }
    for (var i = 0; i < classComArea.length; i++) {
        if (classComArea[i].className == commentBodyClassName) objComBody[objComBody.length] = classComArea[i];
    }
    for (var i = 0; i < objComBody.length; i++) {
        objComBody[i].innerHTML = getStringCustmizeEmojiTag(list, objComBody[i].innerHTML, att);
    }
}

function getStringCustmizeEmojiTag(list, s, att) {
    for (var i = 0; i < list.length; i++) {
        s = s.split('[' + list[i][0] + ']').join('<img src="' + list[i][1] + '"' + att + ' alt="' + list[i][0] + '" class="emoji" />');
    }
    return s;
}
