/*
 * 検索ボタン押下時ポップアップ表示用
 *
 *
 */
 //メソッド追加
 $(function ()
   {
        jQuery.extend($.alerts , {
                     alertCustom: function(message, title, event ,  callback)
                            {
                                if( title == null ) title = 'Alert';
                                $.alerts._showCustom(title, message, event, null, 'alert', function(result) {
                                    if( callback ) callback(result);
                                });
                            },
                      _showCustom : function (title, msg, event, value, type, callback)
                                    {
                                        $.alerts._hide();
                                        $.alerts._overlay('show');
            
                                        $("BODY").append(
                                          '<div id="popup_container">' +
                                            '<h1 id="popup_title"></h1>' +
                                            '<div id="popup_content">' +
                                              '<div id="popup_message"></div>' +
                                            '</div>' +
                                          '</div>');
                                        
                                        if( $.alerts.dialogClass ) $("#popup_container").addClass($.alerts.dialogClass);
                                        
                                        // IE6 Fix
                                        var pos = ($.browser.msie && parseInt($.browser.version) <= 6 ) ? 'absolute' : 'fixed'; 
                                        
                                        $("#popup_container").css({
                                            position: pos,
                                            zIndex: 99999,
                                            padding: 0,
                                            margin: 0
                                        });
                                        
                                        $("#popup_title").text(title);
                                        $("#popup_content").addClass(type);
                                        $("#popup_message").text(msg);
                                        $("#popup_message").html( $("#popup_message").text().replace(/\n/g, '<br />') );
                                        
                                        $("#popup_container").css({
                                            minWidth: $("#popup_container").outerWidth(),
                                            maxWidth: $("#popup_container").outerWidth()
                                        });
                                        
                                        $.alerts._repositionCustom(event);
                                        $.alerts._maintainPosition(true);
                                        
                                        switch( type ) {
                                            case 'alert':
                                                $("#popup_message").after('<div id="popup_panel"><input type="button" value="' + $.alerts.okButton + '" id="popup_ok" /></div>');
                                                $("#popup_ok").click( function() {
                                                    $.alerts._hide();
                                                    callback(true);
                                                });
                                                $("#popup_ok").focus().keypress( function(e) {
                                                    if( e.keyCode == 13 || e.keyCode == 27 ) $("#popup_ok").trigger('click');
                                                });
                                            break;
                                            case 'confirm':
                                                $("#popup_message").after('<div id="popup_panel"><input type="button" value="' + $.alerts.okButton + '" id="popup_ok" /> <input type="button" value="' + $.alerts.cancelButton + '" id="popup_cancel" /></div>');
                                                $("#popup_ok").click( function() {
                                                    $.alerts._hide();
                                                    if( callback ) callback(true);
                                                });
                                                $("#popup_cancel").click( function() {
                                                    $.alerts._hide();
                                                    if( callback ) callback(false);
                                                });
                                                $("#popup_ok").focus();
                                                $("#popup_ok, #popup_cancel").keypress( function(e) {
                                                    if( e.keyCode == 13 ) $("#popup_ok").trigger('click');
                                                    if( e.keyCode == 27 ) $("#popup_cancel").trigger('click');
                                                });
                                            break;
                                            case 'prompt':
                                                $("#popup_message").append('<br /><input type="text" size="30" id="popup_prompt" />').after('<div id="popup_panel"><input type="button" value="' + $.alerts.okButton + '" id="popup_ok" /> <input type="button" value="' + $.alerts.cancelButton + '" id="popup_cancel" /></div>');
                                                $("#popup_prompt").width( $("#popup_message").width() );
                                                $("#popup_ok").click( function() {
                                                    var val = $("#popup_prompt").val();
                                                    $.alerts._hide();
                                                    if( callback ) callback( val );
                                                });
                                                $("#popup_cancel").click( function() {
                                                    $.alerts._hide();
                                                    if( callback ) callback( null );
                                                });
                                                $("#popup_prompt, #popup_ok, #popup_cancel").keypress( function(e) {
                                                    if( e.keyCode == 13 ) $("#popup_ok").trigger('click');
                                                    if( e.keyCode == 27 ) $("#popup_cancel").trigger('click');
                                                });
                                                if( value ) $("#popup_prompt").val(value);
                                                $("#popup_prompt").focus().select();
                                            break;
                                        }
                                        
                                        // Make draggable
                                        if( $.alerts.draggable ) {
                                            try {
                                                $("#popup_container").draggable({ handle: $("#popup_title") });
                                                $("#popup_title").css({ cursor: 'move' });
                                            } catch(e) { /* requires jQuery UI draggables */ }
                                         }
                                    },
                         _repositionCustom : function (e)
                                             {
                                                var top  = $(e).offset().top;
                                                var left = $(e).offset().left - 300;
                                                if( top < 0 ) top = 0;
                                                if( left < 0 ) left = 0;
                                                
                                                // IE6 fix
                                                if( $.browser.msie && parseInt($.browser.version) <= 6 ) top = top + $(window).scrollTop();
                                                
                                                $("#popup_container").css({
                                                    top: top + 'px',
                                                    left: left + 'px'
                                                });
                                                $("#popup_overlay").height( $(document).height() );
                                              }
                        });
});
 
function jAlertCustom(msg , title , event)
{
    $.alerts.alertCustom(msg, title, event);
}