// Copyright (c) 2007, Naoya Shimada <shima3amihs at gmail.com> 
// The PHP License, version 3.01

// プレイヤーを固定する場合は、main関数のplayers配列の番号を指定
// ランダムの場合は範囲外の数値（ -1 など）を指定
var db6_voiceblog_jp_player_number = -1;

function url2cmd(url) {
    if (!url.match(/^http:\/\/db6\.voiceblog\.jp\/data\/([a-zA-Z0-9\-\_]{3,20})\/([0-9]+)\.(jpe?g|gif|mp3)$/i)) {
        try { pne_url2a(url); } catch(e) { document.write('<a href="'+url+'" target="_blank">'+url+'</a>'); }
        return;
    }
    var user = RegExp.$1;
    var id   = RegExp.$2;
    var ext  = RegExp.$3;
    if (!main(user, id, ext, url)) {
        try { pne_url2a(url); } catch(e) { document.write('<a href="'+url+'" target="_blank">'+url+'</a>'); }
    }
}

function main(user, id, ext, url) {
    // プレイヤーの種類
    var players = new Array(
        'adv01/player_adv01',               // 標準プレイヤー
        'adv01_black/player_adv01_black',   // 標準プレイヤー(黒)
        'adv01_blue/player_adv01_blue',     // 標準プレイヤー(青)
        'adv01_red/player_adv01_red',       // 標準プレイヤー(赤)
        '00_type01/type01_full_player'      //
        );

    // 通常はランダムにプレイヤーを切り替える
    var player = players[Math.floor(Math.random() * (players.length - 1))];
    if (typeof(db6_voiceblog_jp_player_number) == 'number' && db6_voiceblog_jp_player_number >= 0 && db6_voiceblog_jp_player_number < players.length) {
        player = players[db6_voiceblog_jp_player_number];
    }

    if (!user.match(/^[a-zA-Z0-9\-\_]{3,20}$/) || !id.match(/^[0-9]+$/) || !ext.match(/^jpe?g|gif|mp3$/)) {
        return false;
    }
    var html;
    if (ext.match(/^jpe?g|gif$/i)) {
        html = '<a href="' + url + '" title="' + url + '" target="_blank">'
            + '<img src="' + url + '" width="200" border="0" alt="' + url + '" hspace="5" class="pict" />'
            + '</a>';
    } else {
        html = '<table border="0" cellspacing="0" cellpadding="1"><tr><td><object classid="clsid:D27CDB6E-AE6D-11cf-96b8-444553540000"'
            + ' codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=4,0,2,0"'
            + ' width="240" height="80">'
            + '<param name="movie" value="http://www.voiceblog.jp/_images/mp3player/'
            + player
            + '.swf?url='
            + url
            + '">'
            + '<param name="quality" value="high">'
            + '<param name="wmode" value="transparent">'
            + '<embed src="http://www.voiceblog.jp/_images/mp3player/'
            + player
            + '.swf?url='
            + url
            + '" quality="high" pluginspage="http://www.macromedia.com/jp/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"'
            + '  type="application/x-shockwave-flash" width="240" height="80" wmode="transparent">'
            + '</embed></object></td><td>'
            + '<a href="'
            + url
            + '" target="_blank" style="text-decoration: none;"><img src="http://www.voiceblog.jp/_images/mp3player/'
            + player
            + '.gif" border="0" alt="download"></a></td></tr></table>';
    }
    document.write(html);
    return true;
}
