var jquery_loader = 'http://www.jma-makeup.or.jp/img/item/loadingAnimation.gif';
var json_search_data = 'http://www.jma-makeup.or.jp/search_data.txt';
var json_search_keyword = '';
var json_search_is_loaded = false;
var json_search_entries;
function json_search_archive()
{
   var result_data = new Array();
   json_search_keyword = json_search_keyword.replace(/([\/\\\.\*\+\?\|\(\)\[\]\{\}\$\^])/g, "\\$1");
   json_search_keyword = json_search_keyword.replace(/( +|　+)/, ' ');
   json_search_keyword = json_search_keyword.replace(/( |　)$/, '');
   var keywords = json_search_keyword.split(/ |　/);
   var key = new Array();
   for (var i = 0;i < keywords.length;i++)
   {
       key[key.length] = new RegExp(keywords[i], "i");
   }
   for (var i = 0;i < json_search_entries.length - 1;i++)
   {
       var is_match = true;
       for (var j = 0;j < key.length;j++)
       {
           var res_body = key[j].exec( json_search_entries[i].body );
           var res_title = key[j].exec( json_search_entries[i].title );
           if (!res_body && !res_title)
           {
               is_match = false;
           }
       }
       if (is_match)
       {
           result_data[result_data.length] = json_search_entries[i];
       }
   }
   var result_html = '';
   if (result_data.length == 0)
    {
        result_html = '<p class="searchTit-on">検索結果</p><span class="noResult">お探しのキーワードに一致するページが見つかりませんでした。</span><p class="search_hide"><a class="imgbutton" href="javascript:void(0)" style="font-weight:bold;" onclick="clear_block(\'#search-content\')"><span><img src="http://www.jma-makeup.or.jp/img/share/btn_searchclose.gif" width="160" height="37" alt="検索結果を閉じる" /></a></p>';
    }
    else
    {
        result_html = json_search_result_html(result_data, keywords);
    }
    $('#search-content').css('height', 'auto')
                        .css('background-image', 'none')
                        .html(result_html);
}
function json_search_result_html(result_data, keywords)
{
    var html = '<p class="searchTit-on">検索結果</p><p id="search_notice" style="text-align:left;">※スペースでAND検索が出来ます。<br />検索結果（' + result_data.length + '件ヒット ）</p><div class="module-content"><ul>';
    for (var i= 0;i < result_data.length;i++)
    {
        html += '<li><a href="' + result_data[i].link + '#search_word=' + json_search_keyword + '">' + result_data[i].title + '</a></li>';
    }
    html += '</ul></div><p class="search_hide"><a class="imgbutton" href="javascript:void(0)" style="font-weight:bold;" onclick="clear_block(\'#search-content\')"><span><img src="http://www.jma-makeup.or.jp/img/share/btn_searchclose.gif" width="160" height="37" alt="検索結果を閉じる" /></a></p>';
    return html;
}
function json_search()
{
   json_search_keyword = $('input#search_box').val();
    $('#search-content').html('')
                        .css('height', '100px')
                        .css('background', 'transparent url(' + jquery_loader + ') no-repeat center center');
    if (json_search_is_loaded)
    {
        json_search_archive();
    }
    else
    {
        $.ajax({url: json_search_data, type: 'GET', dataType: 'xml', timeout: 1500,
            error: function() {
                $('#search-content').css('height', 'auto')
                                    .css('background-image', 'none')
                                    .html('Error loading XML document');
            },
            complete: function(xml) {
                var data_string = xml.responseText;
                data_string = data_string.replace(new RegExp('<.*?>', "i"), '');
                json_search_entries = eval(data_string);
                json_search_archive();
                json_search_is_loaded = true;
            }
        });
    }
 }
function clear_block(blockid)
{
    $(blockid).html('');
}
