;(function($){

SelectorS = AJS.Class({

        el: null,
	id: null,
	init: function(el,opt){

            var mp = this;
            this.el = el;
            this.mpBox = $('<div class="sel-box" />').appendTo('body');
            this.selector = $('<div class="mp-sel-box" />').appendTo(this.mpBox);

            this.opt = {
                onCancel: function(){
                    mp.mpBox.hide();
                }
            }

            $.extend(this.opt,opt);

            var mpBoxNumber = 'mpbox'+($.fn.SelectorS.number++);
            el.attr('mpbox',mpBoxNumber);
            mp.mpBox.attr('id', mpBoxNumber);
            $.fn.SelectorS.obj[mpBoxNumber] = this;
            mp.selector.html(mp.listbut(opt.lst));


            el.click(function(e){
                e.preventDefault();
                mp.show();

            });
            mp.mpBox.hover(function(e){
            },function(e){
                mp.mpBox.hide();
            });


            $(document).ready(function(){
                mp.selector.find('a').click(function(e){
                    e.preventDefault();
                    if ($(this).hasClass('mp-sel-select')){
                        mp.selector.find('a').removeClass('mp-sel-select');
                    }else{
                        mp.selector.find('a').removeClass('mp-sel-select');
                    }
                    $(this).addClass('mp-sel-select');
                    $('#'+mp.opt.to1).text(mp.selector.find('.mp-sel-select').text());
//                    $('#'+mp.opt.to2).value = mp.selector.find('.mp-sel-select').text();
                    document.getElementById(mp.opt.to2).value = mp.selector.find('.mp-sel-select').text();
                    if (mp.opt.link)
                      self.location = mp.opt.link;

                    mp.opt.onCancel(mp);
                });
            });

	},

        show: function(){
            var mp = this;
            $('.mp-box').not('.mp-plain').hide();
            mp.mpBox.css({
                left: mp.el.offset().left,
                top: mp.el.offset().top + mp.el.height()
            });
            //console.log(parseInt(mp.mpBox.css('left'))+','+mp.mpBox.width()+','+screen.width);
            while (parseInt(mp.mpBox.css('left')) + mp.mpBox.width() >= screen.width-25){
                mp.mpBox.css('left',parseInt(mp.mpBox.css('left'))-25);
            }
            mp.mpBox.show();
        },

        buttonHtml: function(){
        },

        listbut: function(olst){
                var mp = this;
                var s = '<table width="150" border="0" cellpadding="0" cellspacing="0" bgcolor="#f4f3f3" style="z-index:2;">';
                var start = olst;
                for(var i = 0; i < start.length; i++){
                    s += '<tr><td><a href="#" class="pnt">'+start[i]+'</a></td></tr>';
                    if (i + 1 < start.length)
                    s += '<tr><td background="/img/sel2.gif"><img src="/img/spacer.gif" width="1" height="1"></td></tr>';
                }
                s += '</table>';

                return s;
        }

});

    $.fn.SelectorS = function(option) {

        if (typeof option == 'string'){
            var mpBoxNumber = $(this).attr('mpbox');
            if (option=='show'){
                $.fn.SelectorS.obj[mpBoxNumber].show();
            }
            if (option=='hide'){
                $('#'+mpBoxNumber).hide();
            }
        }else{
            var opt = $.extend({}, $.fn.SelectorS.defaults, option);
            return this.each(function(){
                new SelectorS($(this),opt);
            });
        }
    };

    $.fn.SelectorS.number = 0;
    $.fn.SelectorS.obj = {};

    $.fn.SelectorS.defaults = {};


})(jQuery);

