function fixPNG(element)
{
	if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent))
	{
		var src;

		if (element.tagName=='IMG')
		{
			if (/\.png$/.test(element.src))
			{
				src = element.src;
				element.src = "/img/blank.gif";
			}
		}
		else
		{
			src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i)
			if (src)
			{
				src = src[1];
				element.runtimeStyle.backgroundImage="none";
			}
		}

		if (src) element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')";
	}
}

labeledInput = Class.create({
	initialize: function() {
		var labelSelector = arguments[0] || 'label';
		$$(labelSelector).findAll(function(l) {return (l.readAttribute('for') !== null)}).each(function(l){
		    l.hide();
			$(l.readAttribute('for'))._value = l.innerHTML;
			if ($(l.readAttribute('for')).value.empty()) {
                $(l.readAttribute('for')).value = $(l.readAttribute('for'))._value
            }
			$(l.readAttribute('for')).observe('blur',function(e){if(Event.element(e).value == '') Event.element(e).value = Event.element(e)._value;});
			$(l.readAttribute('for')).observe('focus',function(e){if(Event.element(e).value == Event.element(e)._value) Event.element(e).value = '';});
		});
	}
});

function setCheck(state, form)
{
    var form = form ? form : 'mainForm';
    $(form).select('input.checkbox').each(function(i){
        i.checked = state;
    })
}

buildCalendar=function()
{
    new CalendarDateSelect( $('date'), { time:true, year_range:10, format:'db' } );
}

function ajaxUpload( url, sendData, callback )
{
    var req = new JsHttpRequest();

    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            switch( typeof callback )
            {
                case 'function':
                    callback( req );
                    break;

                default:
                    eval( callback + '(req)' );
                    break;
            }
        }
    }
    req.open(null, url, true);
    req.send( {'ajaxData' : sendData} );

}


function tabs( target )
{
    var options = {defaultTab: 'first', activeClassName:'selected-tab'};

    if ( target )
        new Control.Tabs( $(target), options );
    else
        $$('ul[id^=tab-container]').each(function(i){
               new Control.Tabs( i, options );
        });
}




Position.center = function(element){
    
    var options = Object.extend({
        zIndex: 999,
        update: false
    }, arguments[1] || {});
    
    element = $(element);
    
    if(!element._centered){
        Element.setStyle(element, {position: 'absolute', zIndex:
        options.zIndex });
        element._centered = true;
    }
    
    var dims = Element.getDimensions(element);
    
    Position.prepare();
    
    var winWidth = self.innerWidth || document.documentElement.clientWidth || document.body.clientWidth || 0;
    
    var winHeight = self.innerHeight || document.documentElement.clientHeight || document.body.clientHeight || 0;
    
    var offLeft = (Position.deltaX + Math.floor((winWidth-dims.width)/2));
    
    var offTop = (Position.deltaY + Math.floor((winHeight-dims.height)/2));
    
    element.style.top = ((offTop != null && offTop > 0) ? offTop : '0') + 'px';
    
    element.style.left = ((offLeft != null && offLeft > 0) ? offLeft  :'0') + 'px';
    
    if(options.update) {
        Event.observe(window, 'resize', function(evt){
            Position.center(element);
        }, false);
        Event.observe(window, 'scroll', function(evt){
            Position.center(element);
        }, false);
    }
}

/*//////////////*/
