// (C) 2009, lastadm, mailto:lastadm@mail.ru

function init_calendar(calendar_url, data_url, data_div)
{
NMonths = new Array("января", "февраля", "марта", "апреля", "мая",
                    "июня", "июля", "августа", "сентября",
                    "октября", "ноября", "декабря");


        if($('calendar_frame') == null || $(data_div) == null)
                return false;

        var now = new Date();
        year =now.getFullYear();
        month =now.getMonth();
        day =now.getDate();

        $("this_day").innerHTML=day+"&nbsp;"+NMonths[month]+"&nbsp;"+year;
        load_url(calendar_url+'?month=' + month + '&year=' + year, 'calendar', init_date_links);
        if(calendar_url.indexOf('news') == -1)
        	load_url(data_url+'?day='+day+"&month="+month + '&year=' + year, data_div, calendar_postloader);

        controls=$$('div.date_selector');
        controls.each(function(el){
                var opened=false;
                el.onclick = function(){
                        if(this.id)
                        {
                                this.addClassName('clicked_selector');
                                setTimeout("$('"+this.id+"').removeClassName('clicked_selector')",300);
                                switch(this.id)
                                {
                                        case 'prev_year':
                                                year--;
                                                break;
                                        case 'prev_month':
                                                month--;
                                                if(month < 0)
                                                {
                                                        year--;
                                                        month=11;
                                                }
                                                break;
                                        case 'set_today':
                                                now = new Date();
                                                year =now.getFullYear();
                                                month =now.getMonth();
                                                day =now.getDate();
                                                break;
                                        case 'next_month':
                                                month++;
                                                if(month > 11)
                                                {
                                                        month=0;
                                                        year++;
                                                }
                                                break;
                                        case 'next_year':
                                                year++;
                                                break;
                                }
                                $("this_day").innerHTML=day+"&nbsp;"+NMonths[month]+"&nbsp;"+year;
                                load_url(calendar_url+'?month=' + month + '&year=' + year, 'calendar', init_date_links);
                        }
                        if($(data_div))
                                load_url(data_url+'?day='+day+"&month="+month + '&year=' + year, data_div, calendar_postloader);
                        return false;
                }
                el.onmouseover = function(){
                        this.addClassName('active_date_selector');
                        return false;
                }
                el.onmouseout = function(){
                        this.removeClassName('active_date_selector');
                        return false;
                }
        });

        function init_date_links()
        {
                days=$$('div.has_data');
                days.each(function(el){
                        var opened=false;
                        el.onclick = function(){
                                load_url(data_url+'?day='+this.innerHTML+"&month="+month + '&year=' + year, data_div, calendar_postloader);
                                $("this_day").innerHTML=this.innerHTML+"&nbsp;"+NMonths[month]+"&nbsp;"+year;
                                return false;
                        }
                        el.onmouseover = function(){
                                this.addClassName('selected_date');
                                return false;
                        }
                        el.onmouseout = function(){
                                this.removeClassName('selected_date');
                                return false;
                        }
                });

        }

        function calendar_postloader()
        {
                init_maillinks();
                init_infolinks();
                init_interlaced();

                if($$('div.rounded'))
                        Nifty("div.rounded");
                if($$('div.top-rounded'))
                        Nifty("div.top-rounded","top");
                if($$('div.bottom-rounded'))
                        Nifty("div.bottom-rounded","bottom");
        }
        return false;
}

function init_w7dp(container, x,y)
{
var dp_url='/private/credits/request/calendar';
var zoom='month';
        return false;
	container=$(container);
	dp=new Element('div',{'class':'w7dp-cn'});
	vp=new Element('div',{'class':'w7dp-vp'});
	vplayout=new Element.Layout(vp);

	container.insert(vp);
	vp.insert({top: dp.update('Дополнительная информация')});

	dp.style.width=(vplayout.get('width')*3).toString()+'px';
	dp.style.height=vplayout.get('height').toString()+'px';
	dp.style.left=(-vplayout.get('width')).toString()+'px';
	dp.style.top='0px';

	vp.style.left=x.toString()+'px';
	vp.style.top=y.toString()+'px';

        var now = new Date();
        year =now.getFullYear();
        month =now.getMonth();
        day =now.getDate();

        // $("this_day").innerHTML=day+"&nbsp;"+NMonths[month]+"&nbsp;"+year;
        load_url(dp_url+'?month=' + month + '&year=' + year, dp);


	Shadower.shadow(vp, {distance:4, angle:130, opacity:0.7, nestedShadows:4, color: '#707070'});
}
