YUI(yuiConfig).use('dd','anim','io','cookie','json','overlay', function(Y) {
    var Portal = function()
    {
        Portal.superclass.constructor.apply(this, arguments);
    };
    Portal.NAME = '10minutes';
    Y.extend(Portal, Y.Base);
    Y.Portal = new Portal();
    var goingUp = false, lastY = 0, trans = {};
    var stopper = function(e) {
        e.stopPropagation();
    };
    
	var doRequest = function(url,method,act)
	{
		Y.io(url,
		{
			method: method,
			on: act
		});
	};
    
    var _nodeClick = function(e)
    {
    	if (e.target.test('a'))
    	{
            var a = e.target, anim = null, div = a.get('parentNode').get('parentNode');
            if (a.hasClass('min'))
            {
                var ul = div.query('div.inner_data');
                var h2 = div.query('h2'),
                h = h2.get('offsetHeight'),
                hUL = ul.get('offsetHeight'),
                inner = div.query('div.inner');
                anim = new Y.Anim(
                {
                	node: inner
                });
                if (!div.hasClass('minned'))
                {
                	anim.setAttrs(
                	{
                		to: 
                		{
                			height: 0
                        },
                        duration: '.25',
                        easing: Y.Easing.easeOut,
                        iteration: 1
                    });
                    anim.on('end', function()
                    {
                        div.toggleClass('minned');
                        _setCookies();
                    });
                }
                else
                {
                    anim.setAttrs(
                    {
                        to:
                        {
                            height: (hUL)
                        },
                        duration: '.25',
                        easing: Y.Easing.easeOut,
                        iteration: 1
                    });
                    div.toggleClass('minned');
                    _setCookies();
                }
                anim.run(); 
            }
            if (a.hasClass('close'))
            {
                var li = div.get('parentNode'),
                    id = li.get('id'),
                    dd = Y.DD.DDM.getDrag('#' + id),
                    data = dd.get('data'),
                    item = Y.Node.get('#' + data.id);
                dd.destroy();
                _disableContainer(li);
                
                anim = new Y.Anim(
                {
                    node: div,
                    to:
                    {
                        opacity: 0
                    },
                    duration: '.25',
                    easing: Y.Easing.easeOut
                });
                anim.on('end', function()
                {
                    var anim = new Y.Anim(
                    {
                        node: div,
                        to:
                        {
                            height: 0
                        },
                        duration: '.25',
                        easing: Y.Easing.easeOut
                    });
                    anim.on('end', function()
                    {
                        li.get('parentNode').removeChild(li);
                        _setCookies(); 
                    });
                    anim.run();
                });
                anim.run();
            }
            if (a.hasClass('options'))
            {
            	var optBox = a.get('parentNode').query('.options_box');
            	
            	if (!optBox) 
        		{
            		if (a.get('parentNode').get('parentNode').get('parentNode').query('.marker'))
            		{
            			id = a.get('parentNode').get('parentNode').get('parentNode').query('.marker').get('id');
        				optBox = Y.one('#play #obi-'+id.replace('cnt-',''));
            		}
            		else if(a.get('parentNode').get('parentNode').query('div.rss_url'))
            		{
            			id = a.get('parentNode').get('parentNode').query('div.rss_url').get('id');
            			id = id.replace(/\+/gi,'');
            			id = id.replace(/\./gi,'');
            			id = id.replace(/\:/gi,'');
            			optBox = Y.one('#obi-'+id);            			
            		}
        		}
            	if (a.hasClass('active_opt'))
            	{
        			a.removeClass('active_opt');
            		optBox.setStyle('display','none');
            		a.get('parentNode').appendChild(optBox);
            	}
            	else
            	{
            		if(Y.one('.active_opt'))
            		{
            			a2 = Y.one('.active_opt');           			
                		id = a2.get('parentNode').get('parentNode').get('parentNode').query('.marker').get('id');
                		oldOptBox = Y.one('#play #obi-'+id.replace('cnt-',''));
                		a2.get('parentNode').appendChild(oldOptBox);
                		oldOptBox.setStyle('display','none');
            			a2.removeClass('active_opt');
            		}
            		a.addClass('active_opt');
            		_createOptBox(a);
            	}
            }
            e.halt();
        }
    };
    
    var _createOptBox = function(a) 
    {
    	var optBox = a.get('parentNode').query('.options_box');
		var overlay = new Y.Overlay({contentBox:optBox});
		overlay.render("#play");
		var WidgetPositionExt = Y.WidgetPositionExt;
		overlay.set("align", {node:a, 
		points:[WidgetPositionExt.TC, WidgetPositionExt.BC]});
		overlay.destroy();
		optBox.all('a.close').on('click',function(e)
		{
			a.removeClass('active_opt');
			optBox.setStyle('display','none');
			a.get('parentNode').appendChild(optBox);
		});
		optBox.all('.newsCount').on('change', function(e) 
		{
			_changeNewsCount(a.get('parentNode').get('parentNode').query('div.inner'),e.currentTarget.get('value'));
		});
		optBox.all('.showPara').on('change', function(e) 
		{
			_showPara(a.get('parentNode').get('parentNode').query('div.inner'),e.currentTarget.get('value'));
		});
		optBox.setStyle('display','');
    }
    
    var _changeNewsCount = function(cont,count)
    {
    	var p = cont.query('.active_page'),
    		url = 'http://'+window.location.host+'/'+p.get('id')+'/to/'+count,
    		newP = p.get('parentNode').get('firstChild');
			Y.io(url,
			{
				method: 'GET',
				on:
				{ 
				    success: function(id, data)
				    {
						var container = cont.query('div.inner_data');
						if(!container.get('parentNode').get('parentNode').hasClass('minned'))
						{
							container.get('parentNode').setStyle('height','auto');
						}
						container.set('innerHTML',data.responseText);
						_buildStats(container);
	                },
					end: function()
					{
	                	_setPages(cont.query('.rss_paginator'));
	                	_setCookies();
					}
				}
			});
    }
    
    var _setPages = function(pager)
    {
    	pager.all('.page').on('click',function(e)
		{
    		var p = e.target,
    		url = 'http://'+window.location.host+'/'+p.get('id');
    		p.get('parentNode').query('.active_page').removeClass('active_page');
			p.addClass('active_page');
			
			act = {
				success: function(id, data)
			    {
					var container = pager.get('parentNode');
					var content = container.query('ul.rss-content');
					if (content == null)
					{
						content = container.query('table.radio_content');
						if (content.query('div.radio_stop'))
						{
							radioBox.set('innerHTML','');
						}
					}
					container.replaceChild(Y.Node.create(data.responseText),content);
					_buildStats(container);
                },
				end: function()
				{
                	_setUpRadios();
				}
			}
			doRequest(url,'GET',act);
		});
    }
    
    var _showPara = function(cont,show)
    {
    	if (show == 1)
    	{
    		cont.removeClass('hiddenPara');
    	}
    	else
    	{
    		cont.addClass('hiddenPara');
    	}
    	if(!cont.get('parentNode'))
		{
			cont.setStyle('height','auto');
		}
    	_setCookies();
    }

    var _handleStart = function(e) {
        stopper(e);

        var drag = this,
            list3 = Y.Node.get('#list1'),
            mod = createMod(drag.get('data'));
 
        list3.appendChild(mod);
        drag.get('node').addClass('disabled');
        drag.set('node', mod);
        drag.get('dragNode').setStyles({
            opacity: '.5',
            borderStyle: 'none',
            width: '320px',
            height: '61px'
        });
        drag.get('dragNode').set('innerHTML', drag.get('node').get('innerHTML'));
        drag.get('node').query('div.mod').setStyle('visibility', 'hidden');
        drag.get('node').addClass('moving');
        setupModDD(mod, drag.get('data'), drag); 
        this.detach('drag:start', _handleStart);
    };
 
    var _moveMod = function(drag, drop) {
        if (drag.get('node').hasClass('item')) {
            var dragNode = drag.get('node'),
                dropNode = drop.get('node'),
                append = false,
                padding = 30,
                xy = drag.mouseXY,
                region = drop.region,
                middle1 = region.top + ((region.bottom - region.top) / 2),
                middle2 = region.left + ((region.right - region.left) / 2),
                dir = false,
                dir1 = false,
                dir2 = false;
 
                if ((xy[1] < (region.top + padding))) {
                    dir1 = 'top';
                }
                if ((region.bottom - padding) < xy[1]) {
                    dir1 = 'bottom';
                }
                if ((region.right - padding) < xy[0]) {
                    dir2 = 'right';
                }
                if ((xy[0] < (region.left + padding))) {
                    dir2 = 'left';
                }
                dir = dir2;
                if (dir2 === false) {
                    dir = dir1;
                }
                switch (dir) {
                    case 'top':
                        var next = dropNode.get('nextSibling');
                        if (next) {
                            dropNode = next;
                        } else {
                            append = true;
                        }
                        break;
                    case 'bottom':
                        break;
                    case 'right':
                    case 'left':
                        break;
            }
            if ((dropNode !== null) && dir) {
                if (dropNode && dropNode.get('parentNode')) {
                    if (!append) {
                        dropNode.get('parentNode').insertBefore(dragNode, dropNode);
                    } else {
                        dropNode.get('parentNode').appendChild(dragNode);
                    }
                }
            }
            Y.Lang.later(50, Y, function() {
                Y.DD.DDM.syncActiveShims(true);
            });
        }
    };
 
    Y.Portal.on('drop:enter', function(e) {
        if (!e.drag || !e.drop || (e.drop !== e.target)) {
            return false;
        }
        if (e.drop.get('node').get('tagName').toLowerCase() === 'li') {
            if (e.drop.get('node').hasClass('item')) {
                _moveMod(e.drag, e.drop);
            }
        }
    });
 
    Y.Portal.on('drag:drag', function(e) {
        var y = e.target.mouseXY[1];
        if (y < lastY) {
            goingUp = true;
        } else {
            goingUp = false;
        }
        lastY = y;
    });
 
    Y.Portal.on('drag:drophit', function(e) {
        var drop = e.drop.get('node'),
            drag = e.drag.get('node');
        	
        if (drop.hasClass('list')) {
            if (!drop.contains(drag)) {
                drop.appendChild(drag);
            }
        }
    });
 
    Y.Portal.on('drag:start', function(e) {
        var drag = e.target;
        if (drag.target) {
            drag.target.set('locked', true);
        }
        ulL1 = Y.get('ul#list1');
        ulL2 = Y.get('ul#list2');
        if (ulL1.get('offsetHeight') > ulL2.get('offsetHeight'))
        {
        	ulL2.setStyle('minHeight',ulL1.get('offsetHeight') + 'px');
        	ulL1.setStyle('minHeight',ulL1.get('offsetHeight') + 'px');
        }
        else
        {
        	ulL2.setStyle('minHeight',ulL2.get('offsetHeight') + 'px');
           	ulL1.setStyle('minHeight',ulL2.get('offsetHeight') + 'px');
        }
        Y.DD.DDM.getDrop('#list1').sizeShim();
        Y.DD.DDM.getDrop('#list2').sizeShim();
        
        drag.get('node').query('div.mod').query('div.inner').setStyle('height', '0px');
        drag.get('dragNode').set('innerHTML', drag.get('node').get('innerHTML'));
        drag.get('dragNode').setStyle('opacity','.5');
        drag.get('node').query('div.mod').setStyle('visibility', 'hidden');
        drag.get('node').addClass('moving');
    });
 
    Y.Portal.on('drag:end', function(e) {
        var drag = e.target;
        if (drag.target) {
            drag.target.set('locked', false);
        }
        drag.get('node').setStyle('visibility', '');
        if(!drag.get('node').query('div.mod').hasClass('minned'))
        {
            drag.get('node').query('div.mod').query('div.inner').setStyle('height', 'auto');
        }
        drag.get('node').query('div.mod').setStyle('visibility', '');
        drag.get('node').removeClass('moving');
        drag.get('dragNode').set('innerHTML', '');
        _setCookies();
        
        Y.get('ul#list1').setStyle('minHeight','0px');
        Y.get('ul#list2').setStyle('minHeight','0px');
    }); 
    Y.Portal.on('drop:over', function(e) {
        var drop = e.drop.get('node'),
            drag = e.drag.get('node');
        
        if (drag.hasClass('item'))
        {
	        if (drop.get('tagName').toLowerCase() == 'ul') 
	        {
	            if (!drop.contains(drag)) 
	            {
	                drop.appendChild(drag);
	                Y.Lang.later(50, Y, function() {
	                    Y.DD.DDM.syncActiveShims(true);
	                });
	            }
	        }
        }
    });
    var _createDD = function(v) {
    	var dd = new Y.DD.Drag({
            node: v,
            bubbles: Y.Portal
        }).plug(Y.Plugin.DDProxy, {
            moveOnEnd: false,
            borderStyle: 'none'
        });
        dd.addHandle('h2').addInvalid('a');
        dd.addHandle('h2').addInvalid('div.options_box');
        v.query('h2').on('click', _nodeClick); 
        dd.set('target', true);
        var pager = v.query('.rss_paginator');
        if (pager) _setPages(pager);
    };
    
    var ListItems = Y.all('ul.list li.item');
    ListItems.each(function(v) {
    	_createDD(v);
    });
    
    var uls = Y.all('#play ul.list');
    uls.each(function(v, k) {
        var tar = new Y.DD.Drop({
            node: v,
            padding: '20 0',
            bubbles: Y.Portal
        });
    });
        
    var list1 = Y.get('ul#list1');
    var cntList = Y.all('div.container-list ul.content_container_ul li.item');
    var setUpDrag = function(lis)
    {
	    lis.each(function(v, k)
	    {
	    	v.on('click', function(e)
				{
		        	if(v.hasClass('user_rss_item'))
		        	{
		        		var url = v.query('.user_rss_url').get('innerHTML');
		        		var name = v.query('.user_rss_name').get('innerHTML');
		        		if (name && url)
		        		{
				    		v.addClass('disabled');
				    		v.removeClass('enabled');
		        			_buildUserRss(url,name);
		        		}
		        	}
		        	else
		        	{
			    		var mod = v.query('div.mod');
			    		mod.query('div.inner').setStyle('height','auto');
			    		var innerData = mod.query('div.inner_data');
			    		if (innerData.query('a.build_widget'))
			    		{
			    			var newWidget = innerData.query('a.build_widget');
			    			var url = 'http://'+window.location.hostname + newWidget.get('id');
							act = {
								success: function(id, data)
				    			{
									innerData.replaceChild(Y.Node.create(data.responseText),newWidget);
									_buildStats(mod);
									_setUpVideos();
									_setUpRadios();
									_setUpWeather();
								}	
							}
							doRequest(url,'GET',act);
			    		}
			    		
			    		var li = v.cloneNode(false);
			    		li.addClass('item');
			    		li.appendChild(mod);
			    		li.appendChild(v.query('div.marker'));
			    		list1.insertBefore(li, list1.get('firstChild'));
			    		mod.setStyle('display', '');
			    		v.addClass('disabled');
			    		v.removeClass('enabled');
			    		v.addClass(li.query('div.marker').get('id'));
			    		_createDD(li);
			    		_setCookies();
					}
				}
	    	);}
	   );
	}
    setUpDrag(cntList);
    
    var activeMenu = Y.get('.menu_active')
    if (activeMenu) activeMenu = activeMenu.get('id');
    
    var _setCookies = function() {
        var dds = Y.DD.DDM._drags;        
        var list = {};
        var txt = '';
        Y.each(dds, function(v, k) {
            var par = v.get('node').get('parentNode');
            if (par.test('ul.list')) {
                if (!list[par.get('id')]) {
                    list[par.get('id')] = [];
                }
            }
        });
        Y.each(list, function(v, k) 
        {
        	txt = txt+'*'+k+'|';
            var lis = Y.all('#' + k + ' li.item');
            lis.each(function(v2, k2) 
            {
                var dd = Y.DD.DDM.getDrag('#' + v2.get('id'));
                var mod = dd.get('node').query('div.mod');
                if(dd.get('node').query('div.marker'))
                {
	                var markerId = dd.get('node').query('div.marker').get('id').replace('cnt-','');
	                var min = (mod.hasClass('minned')) ? 1 : 0;
	                var itemCount = 3;
	                var optBox = Y.one('div#obi-'+markerId);
	                if (optBox)
	                {
	                	optBox.all('.newsCount').each(function(el)
			    		{
			    			if(el.get('checked') == true) itemCount = el.get('value');
			    		});
	                }
	                var showPara = (mod.query('div.inner').hasClass('hiddenPara')) ? 0 : 1;
	                list[k][list[k].length] = { id: markerId, min: min, count:itemCount, showPara: showPara };
	                txt = txt+'i!'+markerId+',m!'+min+',c!'+itemCount+',s!'+showPara+'@';
                }
                else if(dd.get('node').query('div.markerRss'))
                {
                	var markerRss = dd.get('node').query('div.markerRss').get('id');
	                var min = (mod.hasClass('minned')) ? 1 : 0;
	                var itemCount = 3;
	                var closed = false;
	                var optBox = Y.one('div#obi-'+markerId);
	                if (optBox)
	                {
	                	optBox.all('.newsCount').each(function(el)
			    		{
			    			if(el.get('checked') == true) itemCount = el.get('value');
			    		});
	                }
	                var name = dd.get('node').query('h2 strong').get('innerHTML');
	                var showPara = (mod.query('div.inner').hasClass('hiddenPara')) ? 0 : 1;
	                list[k][list[k].length] = { rssUrl: markerRss, name: name, min: min, count:itemCount, showPara: showPara, closed:closed };
	                txt = txt+'r!'+markerRss+',n!'+name+',c!'+',m!'+min+',c!'+itemCount+',s!'+showPara+',cl!'+closed+'@';
                }
            });
        });
        var expDate = new Date();
        expDate.setDate(expDate.getDate()+90);
        Y.Cookie.set(activeMenu, txt/*Y.JSON.stringify(list)*/, { expires: expDate });
    }

    
    if (activeMenu && !Y.Cookie.exists(activeMenu))
    {
    	_setCookies();
    }
    
    var moreCnts = Y.all('.more_containers');
    moreCnts.each(function(v,k)
    {
    	v.on('click', function(e)
    	{
	    	if(v.hasClass('more_on'))
	    	{
		    	var dd = new Y.DD.Drag(
		    		{
		    			node: '#'+v.get('id')+'-list'
		    		});
				dd.get('node').setStyle('display','');
				dd.get('node').setXY([e.pageX+10, e.pageY+10]);
		    	dd.get('node').query('a.close').on('click',function(e)
		    	        {
		    	    		dd.get('node').setStyle('display','none');
		    	    		dd.destroy();
		    				v.removeClass('more_off');
		    				v.addClass('more_on');
		    	        });
				v.removeClass('more_on');
				v.addClass('more_off');
	    	}
	    	else if(v.hasClass('more_off'))
	    	{
	    		Y.DD.DDM.getDrag('#' + v.get('id')+'-list').get('node').setStyle('display','none');
	    		Y.DD.DDM.getDrag('#' + v.get('id')+'-list').destroy();
	    		v.removeClass('more_off');
	    		v.addClass('more_on');
	    	}
    	});
    });
	
    var _disableContainer = function (v) 
    {
    	var cntDisabled;
    	if(v.query('div.marker'))
    	{
	        cntDisabled = Y.get('div.container-list li.'+v.query('div.marker').get('id'));
	        data =  Y.Node.create(v.get('innerHTML'));
	        data.query('div.mod').setStyle('display','none');
	        cntDisabled.appendChild(data);
	        cntDisabled.removeClass('disabled');
	        cntDisabled.addClass('enabled');
    	}
    	if(v.query('div.markerRss'))
    	{
    		urId = v.query('div.markerRss').get('id');
    		var urUl = Y.one('ul.user_rss_ul');
    		if (urUl)
        	{
        		urUl.all('div.user_rss_id').each(function(k)
        		{
        			if (k.get('innerHTML') == urId)
        			{
            			k.get('parentNode').remove();
        			}
        		});
        	}
        	else
        	{
	    		Y.all('.user_rss_url').each(function(k)
	    		{
	    			if(k.get('innerHTML') == urId)
	    			{
	    				k.get('parentNode').get('parentNode').addClass('enabled');
	    				k.get('parentNode').get('parentNode').removeClass('disabled');
	    				
	    			}
	
	    	    });
        	}
    	}
	}    
    
    /****** RADIOS *******/
    var radioBox = Y.get('#radio');
    var _buildRadioCode = function(url)
    {
    	var code = '<object id="mediaPlayer" width="0" height="0"' +
    		'classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95"' +
    		'type="application/x-mplayer2">'+
    		'<param name="fileName" value="'+url+'">'+
    		'<param name="animationatStart" value="false">'+
    		'<param name="transparentatStart" value="false">'+
    		'<param name="autoStart" value="true">'+
    		'<param name="showControls" value="false">'+
    		'<EMBED type="application/x-mplayer2"'+
    		'pluginspage="http://microsoft.com/windows/mediaplayer/en/download/"'+
    		'id="mediaPlayer"'+
    		'name="mediaPlayer"'+
    		'displaysize="4"'+
    		'autosize="-1"'+
    		'showcontrols="true" showtracker="-1" showdisplay="-1" showstatusbar="-1"'+
    		'videoborder3d="-1" width="0" height="0"'+
    		'src="'+url+'"'+
    		'autostart="true" loop="false">'+
    		'</embed>'+
    		'</object>';
    	return Y.Node.create(code);
    }
    
    var _setUpRadios = function(node)
    {
    	var radioList;
    	if (node) radioList = node.all('div.radio_btn_play');
    	else radioList = Y.all('div.radio_btn_play');
	    radioList.each(function(v, k) 
	    {
	    	v.on('click', function(e)
			{
	        	if (navigator.userAgent.indexOf('MSIE') !=-1)
	        	{
	        		alert('Jūsu pārlūks nenodrošina tiešsaites atskaņošanu.');
	        		return false;
	        	}
		    	radioControl = e.target;
		    	if (Y.one('.video_stop'))
				{
					Y.one('.video_stop').addClass('video_play');
					Y.one('.video_stop').removeClass('video_stop');
					Y.one('.selected_video').removeClass('selected_video');
				}
				var tr = radioControl.get('parentNode').get('parentNode');
				var setPlayer = Y.one('#mediaPlayer');
				if(setPlayer)
				{
					if (radioControl.hasClass('radio_stop'))
		    		{
		    			radioControl.removeClass('radio_stop');
		    			radioControl.addClass('radio_play');
		    			tr.removeClass('selected_radio');
		    			setPlayer.get('parentNode').set('innerHTML','');
		    		}
					else
					{
		    			var currentRadio = Y.one('.radio_stop');
		    			if (currentRadio)
		    			{
		    				currentRadio.removeClass('radio_stop');
		    				currentRadio.addClass('radio_play');
		    				currentRadio.get('parentNode').get('parentNode').removeClass('selected_radio')
		    			}
		    			setPlayer.get('parentNode').set('innerHTML','');
		    			tr.addClass('selected_radio');
		    			radioData = radioControl.query('.radio_url');
		    			radioBox.appendChild(_buildRadioCode(radioData.get('value')));
		    			var itemId = radioControl.get('id').replace('radioPlay-',''),
		    			url = 'http://'+window.location.hostname+'/stats/'+itemId+'/type/radio';		
		    			Y.io(url,
		    			{
		    				method: 'GET'
		    			});
		    			radioControl.addClass('radio_stop');
		    			radioControl.removeClass('radio_play');
					}
				}
				else
				{
	    			tr.addClass('selected_radio');
	    			radioData = radioControl.query('.radio_url');
	    			radioBox.appendChild(_buildRadioCode(radioData.get('value')));
	    			var itemId = radioControl.get('id').replace('radioPlay-',''),
	    			url = 'http://'+window.location.hostname+'/stats/'+itemId+'/type/radio';		
	    			Y.io(url,
	    			{
	    				method: 'GET'
	    			});
	    			radioControl.addClass('radio_stop');
	    			radioControl.removeClass('radio_play');
				}
			});
	    });
    }
    _setUpRadios();
    
    var _resetCookies = function(name,id) 
    {
    	
        if (!Y.Cookie.exists(name)) return false;
        var cookie = Y.Cookie.get(name);
        if (cookie) 
        {
            var obj = Y.JSON.parse(cookie);
            var list = {};

            Y.each(obj, function(v, k) 
            {
            	list[k] = [];
            	if (k == 'list1')
            	{
            		list[k][list[k].length] = { id: id, min: false };
            		first = false;
            	}
                Y.each(v, function(v2, k2) {
                	if (id != v2.id)
                	{
                		var min = (v2.min) ? true : false;
                		list[k][list[k].length] = { id: v2.id, min: min };
                	}
                		
                });
            });
            var expDate = new Date();
            expDate.setDate(expDate.getDate()+90);
            Y.Cookie.set(name, Y.JSON.stringify(list), { expires: expDate });
        }
    }
    _buildStats = function(container) 
    {
    	
    	container.all('.rss_url').on('click', function(e)
    	{
    		var itemId = e.target.get('parentNode').get('parentNode').get('id').replace('rssItem-',''),
			url = 'http://'+window.location.hostname+'/stats/'+itemId+'/type/rss';	
			Y.io(url,
			{
				method: 'GET'
			});
    	});
    	container.all('a.wmp').on('click', function(e)
    	{
    		var itemId = e.target.get('id').replace('radioWmp-',''),
			url = 'http://'+window.location.hostname+'/stats/'+itemId+'/type/radio';		
			Y.io(url,
			{
				method: 'GET'
			});
    	});
    	container.all('a.winamp').on('click', function(e)
    	{
    		var itemId = e.target.get('id').replace('radioWinamp-',''),
			url = 'http://'+window.location.hostname+'/stats/'+itemId+'/type/radio';		
			Y.io(url,
			{
				method: 'GET'
			});
    	});
    }
    _buildStats(Y.one('#play'));
    _transferContainer = function(menuNode) 
    {
        var target = new Y.DD.Drop({
            node: menuNode
        });
        target.on('drop:hit', function(e)
    		{
        		drag = e.drag.get('node');
        		_resetCookies(menuNode.get('id'),drag.query('div.marker').get('id').replace('cnt-',''));
    		}
        );
    }
    _transferContainer(Y.one('.menu_drop'));
    
	Y.all('.skin').on('click',function(e)
	{
    	if (!Y.Cookie.exists('skin')) return false;
        var cookie = Y.Cookie.get('skin');
            if (cookie) 
            {
        		var skin = e.target.get('id');
                var expDate = new Date();
                expDate.setDate(expDate.getDate()+90);
                Y.Cookie.set('skin', skin, { expires: expDate });
                window.location.reload(true);
            }
	});
	
	var loginButton = Y.one('#login');
	if (loginButton)
	{
		loginButton.on('click',function(e)
		{
			var loginBox = Y.one('div#login_box');
			if (!loginBox)
			{
				loginBox = Y.Node.create('<div id="login_box">' +
											'<div class="login_type"><a href="/facebook/redirect"><img src="/global/img/login_t_facebook.png" /></a></div>'+
											'<div class="login_type"><a href="/twitter/redirect"><img src="/global/img/login_t_twitter.gif" /></a></div>'+
											'<div class="login_type"><a href="/draugiem/redirect"><img src="/global/img/fck_draugiem.jpg" /></a></div>'+
										'<form>' +
										'<div class="login_fields">' +
										'<input type="text" size="12" value="E-pasts">' +
										'<input type="password" size="12" value="Parole">' +
										'<input type="button" value="IET" id="submit_login">' +
										'</div>' +
										'</form>'+
										'<div class="login_texts"><span id="login_text">Ievadiet Jūsu E-pastu un Paroli</span><span><a href="/paroles_atjaunosana">Aizmirsi paroli?</a></span></div>'+
										'<div class="clear"></div>'+
										'</div>'
										);
				Y.one('body').appendChild(loginBox);
				loginBox.setXY([e.pageX-180, e.pageY+30]);
				loginBox.all('input[type=text],input[type=password]').on('mousedown',function(v)
				{
					tempVal = v.target.get('value');
					v.target.set('value','');
					v.target.on('mouseout',function(k)
					{
						if (k.target.get('value') == tempVal || k.target.get('value').length == 0)
						{
							k.target.set('value',tempVal);
						}
					});
				});
				Y.one('#submit_login').on('click',function()
				{
					var email = loginBox.query('input[type=text]').get('value');
					var pass = loginBox.query('input[type=password]').get('value');
					var url = 'http://'+window.location.hostname+'/user/login';
					Y.io(url,
			    	{
	    				method: 'POST',
						data: "email="+email+"&password="+pass,
	    				on:
	    				{
		    			    success: function(id, data)
		    			    {
								if(data.responseText == 'OK')
								{
									window.location = window.location
								}
								else
								{
									loginBox.query('span#login_text').set('innerHTML','Nepareizi pieejas dati!');
								}
		                    }
	    				}
					});	
				});
			}
			else
			{
				loginBox.remove();
			}
		});
	}
	
	var _buildMediaPlayer = function(url,width,height)
    {
    	var code = '<object id="mediaPlayer" width="'+width+'" height="'+height+'"' +
    		'classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95"' +
    		'type="application/x-mplayer2">'+
    		'<param name="fileName" value="'+url+'">'+
    		'<param name="animationatStart" value="false">'+
    		'<param name="transparentatStart" value="true">'+
    		'<param name="autoStart" value="true">'+
    		'<param name="showControls" value="true">'+
    		'<EMBED type="application/x-mplayer2"'+
    		'pluginspage="http://microsoft.com/windows/mediaplayer/en/download/"'+
    		'id="mediaPlayer"'+
    		'name="mediaPlayer"'+
    		'displaysize="4"'+
    		'autosize="1"'+
    		'showcontrols="true" showtracker="1" showdisplay="1" showstatusbar="-1"'+
    		'videoborder3d="1" width="'+width+'" height="'+height+'"'+
    		'src="'+url+'"'+
    		'autostart="true" loop="false">'+
    		'</embed>'+
    		'</object>';
    	return Y.Node.create(code);
    }
	
	var _setUpVideos = function()
	{
		Y.all('div.video_btn_play').on('click', function(e)
		{
			if (navigator.userAgent.indexOf('MSIE') !=-1)
        	{
        		alert('Jūsu pārlūks nenodrošina tiešsaites tv.');
        		return false;
        	}
			var player = e.target.get('parentNode').get('parentNode').get('parentNode').get('parentNode').one('.videoPlayer');
			var setPlayer = Y.one('#mediaPlayer');
			if (setPlayer)
			{
				setPlayer.get('parentNode').set('innerHTML','');
				if (Y.one('.radio_stop'))
				{			
					Y.one('.selected_radio').removeClass('selected_radio');
					Y.one('.radio_stop').addClass('radio_play');
					Y.one('.radio_stop').removeClass('radio_stop');
				}
				if (e.target.hasClass('video_stop'))
				{
					e.target.get('parentNode').get('parentNode').removeClass('selected_video');
					Y.one('.video_stop').addClass('video_play');
					Y.one('.video_stop').removeClass('video_stop');
				}
				else
				{
					if(Y.one('.video_stop'))
					{
						Y.one('.selected_video').removeClass('selected_video');
						Y.one('.video_stop').addClass('video_play');
						Y.one('.video_stop').removeClass('video_stop');
					}
					e.target.get('parentNode').get('parentNode').addClass('selected_video');
					e.target.addClass('video_stop');
					e.target.removeClass('video_play');
					player.appendChild(_buildMediaPlayer(e.target.one('input.video_url').get('value'),'357','300'));
				}
			}
			else
			{
				e.target.get('parentNode').get('parentNode').addClass('selected_video');
				e.target.addClass('video_stop');
				e.target.removeClass('video_play');
				player.appendChild(_buildMediaPlayer(e.target.one('input.video_url').get('value'),'357','300'));
			}
		});
	}
	_setUpVideos();
	
	var _setUpWeather = function()
	{
		var weatherSelect = Y.one('.weather_select');
		if(weatherSelect)
		{
			weatherSelect.all('.weather_choice').on('click',function(e)
			{
				if(!e.target.hasClass('selected_city'))
				{
					weatherSelect.one('.selected_city').removeClass('selected_city');
					e.target.addClass('selected_city');
					container = weatherSelect.get('parentNode').get('parentNode');
					url = 'http://'+window.location.hostname+'/prognoze/pilseta/'+e.target.get('value');	
					act = {
						success: function(id, data)
		    			{
							container.set('innerHTML',data.responseText);
							_setUpWeather();
						}	
					}
					doRequest(url,'GET',act);
				}
			});	
		}
	}
	_setUpWeather();
	
	var _buildWidget = function(name,content,url)
	{
	var out = '<li class="item">'+
			'<div class="mod">'+
				'<h2>'+
					'<strong>'+name+'</strong>'+
					'<a title="options module" class="options" href="javascript:void(0)"></a>'+
					'<a title="minimize module" class="min" href="javascript:void(0)"></a>'+
					'<a title="close module" class="close user_rss_close" href="javascript:void(0)"></a>'+
					'<div class="options_box" style="display:none;">'+
						'<form>'+
							'<h3>Iespēpjas</h3> <a title="close module" class="close" href="javascript:void(0)"></a><br>'+
							'<input type="radio" name="showPara" class="showPara" value="1" checked="checked">Rādīt rindkopu<br>'+
							'<input type="radio" name="showPara" class="showPara" value="0" >Rādīt virsrakstus<br>'+
							'<br>'+
							'<input type="radio" name="newsCount" class="newsCount" value="3" checked="checked">Ziņu skaits 3<br>'+
							'<input type="radio" name="newsCount" class="newsCount" value="5" >Ziņu skaits 5<br>'+
							'<input type="radio" name="newsCount" class="newsCount" value="10" >Ziņu skaits 10<br>'+
						'</form>'+
					'</div>'+
				'</h2>'+
				'<div class="inner" style="">'+
					'<div class="inner_data">'+
					content +
					'</div>'+
				'</div>'+
				'<div class="rss_url" id="'+url+'"></div>'+
			'</div>'+
		'</li>';
	return out;
	}
	
	var _buildUserRss = function(url,name)
	{
		transUrl = url.replace(/\//gi,'+');
		url = 'http://'+window.location.hostname+'/rss/get/'+transUrl;
		result = Y.io(url, {
			method:"GET",
			on:
				{
					success: function(id,data)
					{
						if (!data.responseText.length) return false;						
						var cont = Y.Node.create(_buildWidget(name,data.responseText,url));						
						Y.one('#list1').insertBefore(cont, Y.one('#list1').get('firstChild'));
						_createDD(cont);
						_setPages(cont.one('.rss_paginator'));
						ul = Y.one('ul.user_rss_ul');
						if(ul)
						{
							var newli = Y.Node.create('<li class="item disabled">'+name+
								'<div class="user_rss_id" style="display: none;">'+transUrl+'</div>'+
								'</li>');
							ul.appendChild(newli);
						}
					},
					end: function ()
					{
						_setCookies();
					}
				}
			}
		);
		return url;
	}
	
	var _addUserRss = function()
	{
		var box = Y.one('#add_user_rss_box');
		if (box)
		{
			Y.one('#submit_addRss').on('click',function(e)
			{
				url = box.query('input[type=text].urss_rss').get('value');
				name = box.query('input[type=text].urss_name').get('value');
				newUrl = _buildUserRss(url,name);
				box.query('input[type=text].urss_rss').set('value','');
				box.query('input[type=text].urss_name').set('value','');
			});
		}
	}
	_addUserRss();
	
	var _buildAnswerVote = function()
	{
		var answers = Y.all('.voteAnswer');
		if (answers)
		{
			answers.on('mouseover',function(e)
			{
				e.target.addClass('voteAnswerOver');
			});
			answers.on('mouseout',function(e)
			{
				e.target.removeClass('voteAnswerOver');
			});
			answers.on('click',function(e)
			{
				answers.removeClass('voteAnswerSelected')
				e.target.addClass('voteAnswerSelected');
			});
		}
		var submitButton = Y.one('.question_submit');
		if (submitButton)
		{
			submitButton.on('click',function()
			{
				
				var selectedVote = Y.one('.voteAnswerSelected');
				if(selectedVote)
				{
					var id = selectedVote.get('id').replace('answ-','');
					var url = 'http://'+window.location.hostname+'/answer/update/'+id;
					act = {
							success: function(id, data)
			    			{
								location.reload(true);
							}	
						}
					doRequest(url,'GET',act);
				}
			});
		}
	}
	_buildAnswerVote();
	var clearWidgetMarkup = function()
	{
		var clearButton = Y.one('#clearWidgetMarkup');
		if (clearButton)
		{
			clearButton.on('click',function(e)
			{
				Y.all('.menu_item').each(function(v)
				{
					if(Y.Cookie.get(v.get('id'))) Y.Cookie.remove(v.get('id'));
				});
				window.location.reload();
			});
		}
	}
	clearWidgetMarkup();
});
