var expandView = {
	display: function (){
		//<Feedvalue Code
		fv_widget_account="FV-0011-01-0002";
		fv_createAdLink('fv_campaign_ad');
		//>
		$('footer').setStyle('zoom','1');
		//remove bookmarks
		try{
			$('bookmark').remove();
		}catch(e){}
		
		//set Styles
		CWE.getBody().setStyles({
			'padding-right':'1px'
			,'padding-left':'1px'});
      
        try {
		    var oc = 'onclick="return CWE.openPopup(this.href,\'ptv_popup\');" ' //open new window	
		    var infos = '<br /><strong>Gadget TV</strong><br /><br />Un service de <a href="http://www.programme-tv.net" '+oc+'>Programme-TV.net</a> ';
		    infos    += '&eacute;dit&eacute; par <a href="http://www.tele-loisirs.fr" '+oc+'>T&eacute;l&eacute;-Loisirs.fr</a>';
		    infos    +="<br />";
		    infos    += 'R&eacute;alisation : <a href="http://www.kreactive-technologies.com/" '+oc+'>Kreactive Technologies</a>';
		    infos    +="<br />";
		    infos    +='Source : Les Agences TV';
		    		
		    //the new div
		    var about = new Element('div').setHTML(infos).setStyles({
		        'width':'95%',
		        'font-size':'9pt',
		        'background-color': '#FFF',
		        'text-align':'left',
		        'margin-left':'10px'
		    });    
		    about.id="about";	    
		    CWE.setAbout(about);
		    
		    $('aboutboxbutton').injectInside('widgetcontent').addClass('button');
                    //.setStyle('background','transparent')		    
        }catch(e) {
        	alert(e.message)	
        }
	    
        
        expandView._update();
   	   try{
			$('pref_chanel').addEvent('change',function (){
				$('ptvbody').setHTML('');
				if($('pref_chanel').getValue()!="none"){
					CWE.setValue('bouquet',$('pref_chanel').getValue())
					expandView._update();
				}
			})
        }catch(e){
                alert(e);
        } 
        CWE.displayReader();
        
      //create RSS news
		expandView.reader = CWE.createView().setStyle('background-color','#FFF');
		CWE.createTab('News TV', expandView.reader, 'tabedit').addClass('tabbuttons').setProperty('id','newstvbutton');        
		window.addEvent('rssparsed', function (rss){
			if(rss.name == 'market'){
				$('newstvbutton').addEvent('click',function (){
					expandView.reader.setHTML('');
					var i = 0;
					rss.feeds.each(function (item){
					if(++i > 5) return;
					  var display = '<p style="clear:both; margin-left: 3px; margin-top: 3px; color: #000; text-align: justify; background: transparent; width: 94.5%; padding-right: 15px"><a style="text-align: left; color: #000;font-size: 9pt; font-weight: bold; margin-bottom: 3px" href="'+item.link+'" onclick="return CWE.openPopup(this.href,\'ptv_popup\');">'+item.title+'</a><br />'
					  display += '<img src="'+item.enclosure+'" style="float: left; margin-top: 3px; margin-right: 2px;" />';
					  display +=    item.description;
					  display +=  '<br /><a style="color: #333;font-size: 8pt;" href="'+item.link+'" onclick="return CWE.openPopup(this.href,\'ptv_popup\');">lire la suite... </a>';
					  display += "</p>"
					  expandView.reader.setHTML(expandView.reader.innerHTML + display)
					});
				});				 
			}
		})
		//De toutes mani�res, newstv est lut pour le partenariat... donc inutile de le reparser...
		//CWE.getRss.delay(1000,null,{url: 'http://static.programme-tv.net/rss/news-tv.xml', name: 'newstv'})

		//corrects sharePanel and shareform parent
		/*$('sharePanel').setStyle('background-color','#FFFFFF');
		$('shareformular').getParent().setStyle('background-color','#FFFFFF');*/
		
     },
     
     _update: function (){		
    	try{
	        //if(CWE.getValue('bouquet')){
	            var s = CWE.getValue('bouquet');
	            for (i=0; i< $('pref_chanel').options.length; i++){
	                var el = $('pref_chanel').options[i]
	                //alert('ttt: '+el.getValue())
	                if (el.value==s) {
	                	$('pref_chanel').options[i].selected = true
	                }
	            };
	        //}
	    }catch(e) {
	    	//console.log('erreur select: '+ e.message)	
	    }    	
     	
     	try{
	   	    //empty body and place loading image
	    $('ptvbody').setHTML('').setStyle('text-align','center');
	    /**/
	    $('WidgetDate').setStyle('display', 'block')
	    $('selects').setStyles({
	            'display':''
	    });
	    /**/
		
	    //remove buttons and spacer
	    if($("resetbutton")) $("resetbutton").remove()
	    if($('spacer')) $('spacer').remove();
	    if($('aboutbutton')) $('aboutbutton').remove(); 
	    
	    var loader = new Element('img').setProperties({
	        'src': loading
	    }).injectInside('ptvbody');

		 
	    var chaneltype = $('pref_chanel').getValue();    
	    
     	if (chaneltype==null || chaneltype=="none") return;
	    currentchanneltype = chaneltype;
	    //Try to load XML RSS content
	    //var prog=  "http://recette-medias.programme-tv.net/rss/ns_"+chaneltype+".xml";
	    var prog = "http://static.programme-tv.net/rss/ns_"+chaneltype+".xml";

	    CWE.callAjax(prog,function (doc){
	        progs = prepareChanels(doc.getElementsByTagName("rss")[0].getElementsByTagName("channel")[0].getElementsByTagName("item"))
	        $('ptvbody').setHTML('').setStyle('text-align','left');
	        if(!$("themaintable")){
	        	  var sp = new Element('div').setHTML('<table id="themaintable" width="100%"><tbody></tbody></table>')
				  //var tmp = new Element('table');
  			     sp.injectInside('ptvbody');				  
				  
		     }else{
		     	  $("themaintable").empty()
		     }
		     var table = $("themaintable")
	        for (i in progs){
	            p = progs[i];
	            /**/
	            if(p && p.chan){
	                //alert(p.chan)
	                var bid = currentchanneltype+"_"+"chaine_" + uniqid(p.chan);
	                if(!($(bid))){
	                /**/
	                	  var tr = new Element('tr').injectInside(table);
	                    var bloc = new Element('td').addClass('chaine').injectInside(tr);
	                    tr.injectInside(table.getElementsBySelector('tbody')[0])
	                    
	                    bloc.id =bid                    
	                    var d = new Date(p.date);
	                    //seek month and day 
	                    eval('var day = days.d'+d.getDay());
	                    eval ('var month = months.m'+d.getMonth());                    
	                    var complement = 0;
	                    if(!window.ie) complement=1900;
	                    
	                    var displaydate = day+' '+d.getDate()+' '+month + " " + (complement+d.getYear().toInt());	                    
	                   	                 
	                    $('WidgetDate').setHTML(displaydate).setStyles({
	                        'padding-top' : '2px'
	                    });
	                   	                    
	                    
	                    var h = d.getHours();
	                    var m = d.getMinutes();
	                    if (h.length < 10)     h = "0"+h;                    
	                    if (m < 10)    m = "0"+m;                    
	                    var hour = h + ':' + m;    
	                        
	                    //pr is the             
	                    var pr = new Element('p').addClass('programme');                    
	                    
	                    
	                    //image de la chaine
	                    var img = new Element('img').setProperties({
	                        src: p.logo.replace("http://static.programme-tv.net/images/tel/","./logos/")
	                    }).setStyles({
									padding:0,
	                        margin:'2px',
	                        opacity: '0.6',
	                        width: '50px',
	                        'height': '24px'
	                    });
	                    
	                    img.setProperty("class","imgchaine");                    
	                    img.setStyles({
	                        'float': 'left'
	                    })
	                                       
                   		img.injectInside(pr);
                   
	                    var sep = " - ";
	                    if(CWE.target=="vista"){
	                    	sep = "<span> - </span>";
	                    }
	                    //Injecte le programme de cette chaine apr�s l'image
	                    pr.setHTML( pr.innerHTML + hour+ sep +'<a class="view" id="view_'+p.id+'" style="color:#000;font-weight: bolder" title="Voir le détail pour -- '+ p.title +' --">'+ p.title + '</a>')

	                    //move et delete -> � droite
	                    var imgdelete = new Element('img').setProperties({
	                        'src' : droot+'delete.gif',
	                        'alt' : "Cacher",
	                        'title': 'Cacher',
	                        'rel' : bloc.id
	                    }).setStyles({
	                        'float': 'right',
	                        'opacity':'0.5',
	                        'cursor' : 'pointer',
	                        'width' : '10px',
	                        'height' : '10px',
	                        'margin' : '0 3px 0 0'
	                    }).addClass('imgdel');
                        
                 	    if(CWE.getPlateform()!='osx' && CWE.getPlateform()!='iphone') {
		                    imgdelete.injectInside(bloc);
		                    //imgmove.injectInside(bloc);                                
                        }
	                    pr.injectInside(bloc);
	                    imgdelete.addEvent('click',function (){
	                        if (confirm('Voulez-vous vraiment faire disparaitre cette chaîne ?')){
	                            $(this.getProperty('rel')).setStyle('display','none');
	                            //Record hiddens...
	                            try{
	                                var hiddens = new Array();
	                                var h = "";
	                                if(CWE.getValue('hiddens')){
	                                    hiddens = CWE.getValue('hiddens').split(';')                                                                
	                                    for (i = 0; i<hiddens.length; i++){
	                                        if(hiddens[i].length>0)
	                                            h+=hiddens[i]+";";
	                                    }
	                                }
	                                h+=this.getProperty('rel')+";";
	                                CWE.setValue('hiddens',h);
	                            }catch(e){
	                            	alert(e)	
	                            }
	                            
	                        }
	                    })                  
	                }else{
	                    var d = new Date(p.date);
	                    var h = d.getHours();
	                    if (h.length < 10)     h = "0"+h; 
	                    var m = d.getMinutes();
	                    if (m < 10)         m = m + "0";
	                    var hour = h + ':' + m;                
	                    var bloc = $E("#"+bid+" .programme");
	                    var sep = "<br />";	                    	
	                    try{
	                    	
	                    bloc.setHTML(bloc.innerHTML + '<br />' + hour + ' - <a class="view" id="view_'+p.id+'" style="color:#000" title="Voir le détail pour -- '+ p.title +' --">'+ p.title + '</a>')
  	                        //imgbookmark.injectBefore('view_'+p.id);
	                    }catch(e){
	                    	alert(e)
	                    }
	                }
	            }
	        };	        
	        
	        //Reorder channel with last recorded preferences 
	        try{
	            if(CWE.getValue("order_"+currentchanneltype)){
	                var order = CWE.getValue("order_"+currentchanneltype).split(';')
	                for (i in order){
	                    //console.log(order[i])
	                    if($(order[i])){
	                        $(order[i]).injectInside('ptvbody')
	                    }
	                } 
	            }
	        }catch(e){
	        		alert(e)
	        }    
	        
       
	        //remove hiddens channels from preferences
	        try{
	            if(CWE.getValue('hiddens')){
	                var hiddens = CWE.getValue('hiddens').split(';');
	                //console.debug(hiddens)
	                for (i=0; i<hiddens.length; i++){
	                    if($(hiddens[i]))
	                        $(hiddens[i]).setStyle('display','none');
	                } 
	            }	        
	        }catch(e){
	        	alert(e);
	        }
	        
	        
	        //Add a "Reset" button
	        //console.log('remove')
	        if($('resetbutton')) $('resetbutton').remove();
	        var resetbutton = new Element('a').addClass('button').setProperties({            
	        }).setStyles({
	            'padding-left':'8px'
	        }).setHTML(' R&eacute;initialiser les cha&icirc;nes du bouquet ').addEvent('click',function (){
				var hiddens = CWE.getValue('hiddens');
				if (hiddens==null) hiddens="";
	          	if(confirm('Souhaitez-vous récuperer les valeurs par défaut du bouquet '+currentchanneltype+' ?')){
	                CWE.setValue('order_'+currentchanneltype,'');
	                try{
						hiddens = hiddens.split(";");
						var h;
						for (i=0;i<hiddens.length;i++){
							if(hiddens[i].length){
								var c = currentchanneltype.replace('-','\-');
								c = c.replace('+','\+')
								var reg = new RegExp(c)
								if(!hiddens[i].match(c)){
									h = hiddens[i]+";";
								}
							}
						}
						CWE.setValue('hiddens',h);
	                }catch(e){
	                    CWE._log(e.message);
	                }
	                expandView._update();
	            }            
	        }).injectAfter('ptvbody');        
	        resetbutton.id="resetbutton";
	        
	        	        
	        //Every "show details" button must show content (call view method)
	       $$('a.view').each(function (link){
	            link.setStyle('cursor','pointer');            
	            link.addEvent('click',function(){
	                var id = this.id.replace('view_','');
	                //view(id);
	                var pane = view(id)
	                CWE._smoothShow(pane,200)               
	            })
	        })
	        
	        
	        //some decorations
	        $$('img').each(function (el){
	            el.setStyles({
	                'border':'none'
	            });
	        });
	        
	        $("themaintable").injectInside('ptvbody')
     	    //alert($("themaintable").innerHTML)   
	    },"xml")
	    // ----> End of Ajax call

	    //some corrections
	    $('ptvbody').setStyles({
	        overflow: 'hidden'
	    });
	    
	    $$('.partner').each(function (el){
	        el.setStyle('text-align','center');
	    });
	    
	    $('aboutpanel').setStyle('background','transparent');
	    
	    //force styles...
	    $$('.button').each(function (el){
	    	if($type(el)=='element'){
		    	el.addEvent('mouseenter',function (){
		    		//el.setStyle('background-image','url(fond_rouge.gif)')
		    		el.setStyle('color','#FF0000');
		    	})
		    	el.addEvent('mouseleave',function (){
		    		//el.setStyle('background-image','url(fond_gris.gif)')
		    		el.setStyle('color','#000');
		    	})		    	
		    	el.setStyles({	
			    	margin: '5px',
			    	//border: '1px solid #999',
			    	cursor: 'pointer',
			    	'float': 'left',
			    	clear: '',
			    	'padding' : '5px',
			    	'font-size' : '8pt',
			    	'background-image': 'url(fond_gris.gif)',
               'color': '#000000'	
			    })			    
	    	}
	    });

	}catch(e){
		alert(e)	
	}
    }
}
