
window.addEvent('domready',function(){
   
    // ImageMenu
    var myMenu = new ImageMenu( $$('#imageMenu a'),{openWidth:200} );

	//default colors - if 'background-color' or 'color aren't defined in css
	var default_bg_color='#000';
	var default_color='#fff';
 
	//highlight colors
	var h_bg_color='#FF6600';
	var h_color='#000000';
 
	highlight_anchors=function(item_id){
		if(item_id=='') return false;
		if(!$(item_id)) {
			if(typeof $$(item_id)[0] == 'undefined' || typeof $$(item_id)[0].id == 'undefined' || $$(item_id)[0].id==''){
				return false;
			} else item_id=$$(item_id)[0].id;
		}
 
		var fx = new Fx.Morph(item_id, {duration:400, wait:false});
 
		var has_bg_color = $(item_id).getStyle('background-color') && $(item_id).getStyle('background-color')!='transparent'?true:false;
		var has_color = $(item_id).getStyle('color') && $(item_id).getStyle('color')!='inherit'?true:false;
		var cur_bg_color= has_bg_color ? $(item_id).getStyle('background-color') : default_bg_color;
		var cur_color= has_color ? $(item_id).getStyle('color') : default_color;
		fx.start({
				'background-color': h_bg_color,
				'color': h_color
			}).chain(function(){
				this.start({
					'background-color': cur_bg_color,
					'color': cur_color
				}).chain(function(){
					if(!has_bg_color) $(item_id).setStyle('background-color', 'transparent');
					if(!has_color) $(item_id).setStyle('color', 'inherit');
				});
			});
		return true;
	}
 
	//if anchor hash already exists, highlight onload
	if(typeof window.location.hash != 'undefined') highlight_anchors(window.location.hash);
 
	//setup smoothscroll
	new SmoothScroll({ duration: 1000, onComplete:function(){
		highlight_anchors(this.anchor);
	}});

    
});

function hightlight_alone(item_id) {

	//default colors - if 'background-color' or 'color aren't defined in css
	var default_bg_color='#000';
	var default_color='#fff';
 
	//highlight colors
	var h_bg_color='#FF6600';
	var h_color='#000000';

	var fx = new Fx.Morph(item_id, {duration:400, wait:false});
	
		var has_bg_color = $(item_id).getStyle('background-color') && $(item_id).getStyle('background-color')!='transparent'?true:false;
		var has_color = $(item_id).getStyle('color') && $(item_id).getStyle('color')!='inherit'?true:false;
		var cur_bg_color= has_bg_color ? $(item_id).getStyle('background-color') : default_bg_color;
		var cur_color= has_color ? $(item_id).getStyle('color') : default_color;
		fx.start({
				'background-color': h_bg_color,
				'color': h_color
			}).chain(function(){
				this.start({
					'background-color': cur_bg_color,
					'color': cur_color
				}).chain(function(){
					if(!has_bg_color) $(item_id).setStyle('background-color', 'transparent');
					if(!has_color) $(item_id).setStyle('color', 'inherit');
				});
			});

}

// closepanel
function closepanel(panel) {
   //new Fx.Style( $('toppanel'), 'opacity', {duration: 1000, wait: false} ).start('1', '0');
   
    $(panel).set('tween',{
    	duration: 250,
    	transition: Fx.Transitions.Bounce.easeOut,
    	link: 'chain'
    });
    $(panel).tween('opacity', 1).tween('opacity', 0);
   
}
 
//crée le cookie avec la valeur en paramètre
function SetCookie ( value )
{

	Cookie.dispose('WrapperSize');
	var CookieWidth = Cookie.write('WrapperSize', value, {duration: 30, domain:  '.fruityclub.net', path: '/'}); 

}

// size switcher
function switchwidthfluid() {
  var size = $('wrapper').getSize();
  var newsize = screen.width * 0.9;
  //new Fx.Style( $('wrapper'), 'width', {duration: 1000, wait: false} ).start( size.x, newsize );
  //$('wrapper').setProperty('width', '0.9');
  
	SetCookie ( 'width-fluid' );
    //var requestVar = { 'iud': iud, 'class_width': 'width-fluid' };
    //new Request({ url: '/site/membres/preferences/taille_ecran', data: requestVar }).post();    
  
    $('wrapper').set('tween',{
    	duration: 1000,
    	transition: Fx.Transitions.Cubic.easeOut,
    	link: 'chain'
    });
    $('wrapper').tween('width', size.x).tween('width', newsize);
  
}

function switchwidthwide() {
  var size = $('wrapper').getSize();
  //new Fx.Style( $('wrapper'), 'width', {duration: 1000, wait: false} ).start( size.x, '900' );

	SetCookie ( 'width-wide' );
    //var requestVar = { 'iud': iud, 'class_width': 'width-wide' };
    //new Request({ url: '/site/membres/preferences/taille_ecran', data: requestVar }).post();    
  
    $('wrapper').set('tween',{
    	duration: 1000,
    	transition: Fx.Transitions.Cubic.easeOut,
    	link: 'chain'
    });
    $('wrapper').tween('width', size.x).tween('width', 1000);
  
}

function switchwidththin() {
  var size = $('wrapper').getSize();
  //new Fx.Style( $('wrapper'), 'width', {duration: 1000, wait: false} ).start( size.x, '780' );


	SetCookie ( 'width-thin' );
    //var requestVar = { 'iud': iud, 'class_width': 'width-thin' };
    //new Request({ url: '/site/membres/preferences/taille_ecran', data: requestVar }).post();    
 
    $('wrapper').set('tween',{
    	duration: 1000,
    	transition: Fx.Transitions.Cubic.easeOut,
    	link: 'chain'
    });
    $('wrapper').tween('width', size.x).tween('width', 780);
  
}


// font switcher
function switchfontlarge(iud) {

  if (iud!=0) {
     var requestVar = { 'iud': iud, 'class_font': 'font-large' };
     new Request({ url: '/site/membres/preferences/taille_font', data: requestVar }).post();    
  }
  
  $('page').removeClass('font-small');
  $('page').removeClass('font-medium');
  $('page').addClass('font-large');
  
}

function switchfontmedium(iud) {

  if (iud!=0) {
     var requestVar = { 'iud': iud, 'class_font': 'font-medium' };
     new Request({ url: '/site/membres/preferences/taille_font', data: requestVar }).post();    
  }

  $('page').removeClass('font-small');
  $('page').removeClass('font-large');
  $('page').addClass('font-medium');
  
}

function switchfontsmall(iud) {

  if (iud!=0) {
     var requestVar = { 'iud': iud, 'class_font': 'font-small' };
     new Request({ url: '/site/membres/preferences/taille_font', data: requestVar }).post();    
  }

  $('page').removeClass('font-large');
  $('page').removeClass('font-medium');
  $('page').addClass('font-small');
}

// ******************************************
// valid_compo(id)
function valide_compo(etp, order) {

  if (etp == "0") {
  
          // affiche etape 1
          var fx = new Fx.Style( $('onglet_etape_0'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
          var fx2 = new Fx.Style( $('onglet_etape_1'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
          var scroll = new Fx.Scroll(window).toElement('onglet_etape_1');    
  
  }
  
  if (etp == "1") {
  
    // valide etape 1
    var titre_compo   = $('subject').get('value').stripScripts().stripTags();
    var topic_message = $('message').get('value').stripScripts().stripTags();
    
    if ( titre_compo == "" || titre_compo.length < 3 ) {
          
      $('subject').addClass('input_erreur');
      $('message').removeClass('input_erreur');
	  $('error_title').set('text', 'Erreur !');
      $('error_text').set('html', '<b>Le titre est trop court ou inexistant.</b>');
      var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
      var scroll = new Fx.Scroll(window).toElement('errors');
    
    } else {
		
		//  || topic_message.length < 20
        if ( topic_message == "" || topic_message.length < 50 ) {
        
          $('message').addClass('input_erreur');
          $('subject').removeClass('input_erreur')
		  $('error_title').set('text', 'Erreur !');
		  $('error_text').set('html', '<b>La description est trop courte ou inexistante.</b>');
       
          var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
          var scroll = new Fx.Scroll(window).toElement('errors');
        
        } else {
        
          // tout est ok
          $('subject').removeClass('input_erreur');
          $('message').removeClass('input_erreur');
          $('errors').set( 'styles', { 'display': 'none' } );
          
          // recupere les autres valeurs          
          //var style1 = $('style1').getSelected()[0].value.stripScripts();
          //var style2 = $('style2').getSelected()[0].value.stripScripts();
          
          // pour ie
          var form = $('zfm');
          var style1 = form.id_board.options[form.id_board.selectedIndex].value;
          //var style2 = form.style2.options[form.style2.selectedIndex].value;
          // pour ie
          
		  //alert('style1: ' + style1);
		  
          var styles_persos = $('tags').get('value').stripScripts();
          
          var requestVar = { 'titre_compo': titre_compo, 'topic_message': topic_message, 'style1': style1, 'styles_persos': styles_persos  };
          // on envoi
          new Request({
              url: '?page=validationcompo&etape=1',
              data: requestVar
          }).post();
          
          // affiche etape suivante / precedente
		  if (order == "next") {
			  var fx = new Fx.Style( $('onglet_etape_1'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
			  var fx2 = new Fx.Style( $('onglet_etape_2'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
			  var scroll = new Fx.Scroll(window).toElement('onglet_etape_2');
		  }

		  if (order == "prev") {
			  var fx = new Fx.Style( $('onglet_etape_1'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
			  var fx2 = new Fx.Style( $('onglet_etape_0'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
			  var scroll = new Fx.Scroll(window).toElement('onglet_etape_0');
		  }
		  
          
        }
        
    }
  
  }
  
  if (etp == "2") {  
          
          // typeenvoi1 typeenvoi2 fichier url typefichier
          
          if( $('typeenvoi1').checked == true || $('typeenvoi2').checked == true ) {          
            
            if ( $('typeenvoi1').checked == true && $('fichier').get('value').stripScripts() == "" ) {
              
                // url sélectionné mais pas d'url
                $('typeenvoi1').addClass('erreur_texte');
                $('typeenvoi2').removeClass('erreur_texte');

				$('error_title').set('text', 'Erreur !');
				$('error_text').set('html', '<b>Vous devez choisir un fichier de votre espace perso.</b>');

                var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                var scroll = new Fx.Scroll(window).toElement('errors');                
              
            } else {
                            
              if ( $('typeenvoi2').checked == true && ( $('url').get('value').stripScripts() == "http://" || $('url').get('value').stripScripts() == "" ) ) {
              
                // url sélectionné mais pas d'url
                $('typeenvoi2').addClass('erreur_texte');
                $('typeenvoi1').removeClass('erreur_texte');

				$('error_title').set('text', 'Erreur !');
				$('error_text').set('html', '<b>Vous devez indiquer une adresse internet compl&egrave;te o&ugrave; t&eacute;l&eacute;charger votre fichier.</b>');
                
                var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                var scroll = new Fx.Scroll(window).toElement('errors');                
              
              } else {
              
                // on doit vérifier l'extension de l'url et du fichier
                var url = $('url').get('value').stripScripts();
                var fichier = $('fichier').get('value').stripScripts();
                
                if ( $('typeenvoi2').checked == true ) {
                
                    // Mp3, Ogg, Wav, flp, zip, rar
                    if ( url.test(".mp3$", "i") || url.test(".ogg$", "i") || url.test(".wav$", "i") || url.test(".flp$", "i") || url.test(".zip$", "i") || url.test(".rar$", "i") ) {
    
                            // tout est bon
                            $('typeenvoi1').removeClass('input_erreur');
                            $('typeenvoi2').removeClass('input_erreur');
                            $('errors').set( 'styles', { 'display': 'none' } );
                      
                            if( $('typeenvoi1').checked == true ) {
                              var typeenvoi = "ESPACEPERSO";
                              var fichier = $('fichier').get('value').stripScripts();
                            }
                            
                            if( $('typeenvoi2').checked == true ) {
                              var typeenvoi = "URL";
                              var fichier = $('url').get('value').stripScripts();
                            }

                              // pour ie
                              var form = $('zfm');
                              var typefichier = form.typefichier.options[form.typefichier.selectedIndex].value;
                            //var typefichier = $('typefichier').getSelected()[0].value.stripScripts();
                            
                            var requestVar = { 'typeenvoi': typeenvoi, 'fichier': fichier, 'typefichier': typefichier  };
                            
							// on envoi
							  new Request({
								  url: '?page=validationcompo&etape=2',
								  data: requestVar
							  }).post();

							  // affiche etape suivante / precedente
							  if (order == "next") {
								  var fx = new Fx.Style( $('onglet_etape_2'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
								  var fx2 = new Fx.Style( $('onglet_etape_3'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
								  var scroll = new Fx.Scroll(window).toElement('onglet_etape_3');
							  }

							  if (order == "prev") {
								  var fx = new Fx.Style( $('onglet_etape_2'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
								  var fx2 = new Fx.Style( $('onglet_etape_1'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
								  var scroll = new Fx.Scroll(window).toElement('onglet_etape_1');
							  }
                            
                            //alert('typeenvoi:'+typeenvoi+', fichier:'+fichier+', typefichier:'+typefichier);
                    
                    } else {
                    
                        $('typeenvoi2').addClass('erreur_texte');
                        $('typeenvoi1').removeClass('erreur_texte');

						$('error_title').set('text', 'Erreur !');
						$('error_text').set('html', '<b>Votre fichier ne semble pas faire parti des fichiers autoris&eacute;s.</b>');
                        var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                        var scroll = new Fx.Scroll(window).toElement('errors');  
                    
                    }
                    
                }

                if ( $('typeenvoi1').checked == true ) {

                    if ( fichier.test(".mp3$", "i") || fichier.test(".ogg$", "i") || fichier.test(".wav$", "i") || fichier.test(".flp$", "i") || fichier.test(".zip$", "i") || fichier.test(".rar$", "i") ) {
                      
                            // tout est bon
                            $('typeenvoi1').removeClass('input_erreur');
                            $('typeenvoi2').removeClass('input_erreur');
                            $('errors').set( 'styles', { 'display': 'none' } );
                      
                            if( $('typeenvoi1').checked == true ) {
                              var typeenvoi = "ESPACEPERSO";
                              var fichier = $('fichier').get('value').stripScripts();
                            }
                            
                            if( $('typeenvoi2').checked == true ) {
                              var typeenvoi = "URL";
                              var fichier = $('url').get('value').stripScripts();
                            }

                              var form = $('zfm');
                              var typefichier = form.typefichier.options[form.typefichier.selectedIndex].value;
                            
                            //var typefichier = $('typefichier').getSelected()[0].value.stripScripts();
                            
                            var requestVar = { 'typeenvoi': typeenvoi, 'fichier': fichier, 'typefichier': typefichier  };
                            // on envoi
							  new Request({
								  url: '?page=validationcompo&etape=2',
								  data: requestVar
							  }).post();
            
							  if (order == "next") {
								  var fx = new Fx.Style( $('onglet_etape_2'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
								  var fx2 = new Fx.Style( $('onglet_etape_3'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
								  var scroll = new Fx.Scroll(window).toElement('onglet_etape_3');
							  }

							  if (order == "prev") {
								  var fx = new Fx.Style( $('onglet_etape_2'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
								  var fx2 = new Fx.Style( $('onglet_etape_1'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
								  var scroll = new Fx.Scroll(window).toElement('onglet_etape_1');
							  }
                            
                            //alert('typeenvoi:'+typeenvoi+', fichier:'+fichier+', typefichier:'+typefichier);
                      
                      } else {
                      
                            $('typeenvoi1').addClass('erreur_texte');
                            $('typeenvoi2').removeClass('erreur_texte');

							$('error_title').set('text', 'Erreur !');
							$('error_text').set('html', '<b>Votre fichier ne semble pas faire parti des fichiers autoris&eacute;s.</b>');

                            var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                            var scroll = new Fx.Scroll(window).toElement('errors');                  
                      
                      }
                      
                 }   

              }
            
            }
          
          } else {
          
            $('typeenvoi1').addClass('erreur_texte');
            $('typeenvoi2').addClass('erreur_texte');

			$('error_title').set('text', 'Erreur !');
			$('error_text').set('html', '<b>Vous devez s&eacute;lectionner une des deux options : Depuis mon espace perso ou Depuis cette adresse internet.</b>');
            
            var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
            var scroll = new Fx.Scroll(window).toElement('errors');
          
          }   
  
  }
  
  if (etp == "3") {
  
    // typecontrat option_playlist option_stream option_down    
    if ( $('option_playlist').checked == true ) {
      var option_playlist = 1;
    } else {
      var option_playlist = 0;
    }
    
    var typecontrat   = $$('input[name=typecontrat]:checked')[0].get('value');
    var option_stream = $$('input[name=option_stream]:checked')[0].get('value');
    var option_down   = $$('input[name=option_down]:checked')[0].get('value');

    //alert( 'option_playlist:'+option_playlist+', typecontrat:'+typecontrat+', option_stream:'+option_stream+', option_down:'+option_down );
    
    var requestVar = { 'option_playlist': option_playlist, 'typecontrat': typecontrat, 'option_stream': option_stream, 'option_down': option_down };
    // on envoi

        //  new Request({
        //      url: '?page=validationcompo&etape=1',
        //      data: requestVar
        //  }).post();

		if (order == "next") {
		   new Request.HTML({
			  url: '?page=validationcompo&etape=3&redirect=true',
			  update: $('onglet_etape_3'),
			  data: requestVar
		   }).post();
		}

		if (order == "prev") {
			new Request({
				url: '?page=validationcompo&etape=3&redirect=false',
				data: requestVar
			}).post();
			var fx = new Fx.Style( $('onglet_etape_3'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
			var fx2 = new Fx.Style( $('onglet_etape_2'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
			var scroll = new Fx.Scroll(window).toElement('onglet_etape_2');
		}
    
  }

}

// ******************************************
// valide_modif_compo(id)
function valide_modif_compo(etp, id_topic, order) {

  if (etp == "1") {
          
          // typeenvoi1 typeenvoi2 fichier url typefichier
          
          if( $('typeenvoi1').checked == true || $('typeenvoi2').checked == true ) {          
            
            if ( $('typeenvoi1').checked == true && $('fichier').get('value').stripScripts() == "" ) {
              
                // url sélectionné mais pas d'url
                $('typeenvoi1').addClass('erreur_texte');
                $('typeenvoi2').removeClass('erreur_texte');

				$('error_title').set('text', 'Erreur !');
				$('error_text').set('html', '<b>Vous devez choisir un fichier de votre espace perso.</b>');

                var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                var scroll = new Fx.Scroll(window).toElement('errors');                
              
            } else {
                            
              if ( $('typeenvoi2').checked == true && ( $('url').get('value').stripScripts() == "http://" || $('url').get('value').stripScripts() == "" ) ) {
              
                // url sélectionné mais pas d'url
                $('typeenvoi2').addClass('erreur_texte');
                $('typeenvoi1').removeClass('erreur_texte');

				$('error_title').set('text', 'Erreur !');
				$('error_text').set('html', '<b>Vous devez indiquer une adresse internet compl&egrave;te o&ugrave; t&eacute;l&eacute;charger votre fichier.</b>');
                
                var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                var scroll = new Fx.Scroll(window).toElement('errors');                
              
              } else {
              
                // on doit vérifier l'extension de l'url et du fichier
                var url = $('url').get('value').stripScripts();
                var fichier = $('fichier').get('value').stripScripts();
                
                if ( $('typeenvoi2').checked == true ) {
                
                    // Mp3, Ogg, Wav, flp, zip, rar
                    if ( url.test(".mp3$", "i") || url.test(".ogg$", "i") || url.test(".wav$", "i") || url.test(".flp$", "i") || url.test(".zip$", "i") || url.test(".rar$", "i") ) {
    
                            // tout est bon
                            $('typeenvoi1').removeClass('input_erreur');
                            $('typeenvoi2').removeClass('input_erreur');
                            $('errors').set( 'styles', { 'display': 'none' } );
                      
                            if( $('typeenvoi1').checked == true ) {
                              var typeenvoi = "ESPACEPERSO";
                              var fichier = $('fichier').get('value').stripScripts();
                            }
                            
                            if( $('typeenvoi2').checked == true ) {
                              var typeenvoi = "URL";
                              var fichier = $('url').get('value').stripScripts();
                            }

                              // pour ie
                              var form = $('zfm');
                              var typefichier = form.typefichier.options[form.typefichier.selectedIndex].value;
                            //var typefichier = $('typefichier').getSelected()[0].value.stripScripts();
                            
                            var requestVar = { 'typeenvoi': typeenvoi, 'fichier': fichier, 'typefichier': typefichier  };
                            
							// on envoi
							  new Request({
								  url: '?page=modificationncompo&etape=1&id_topic=' + id_topic,
								  data: requestVar
							  }).post();

							  // affiche etape suivante / precedente
							  if (order == "next") {
								  var fx = new Fx.Style( $('onglet_etape_2'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
								  var fx2 = new Fx.Style( $('onglet_etape_3'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
								  var scroll = new Fx.Scroll(window).toElement('onglet_etape_3');
							  }

							  if (order == "prev") {
								  var fx = new Fx.Style( $('onglet_etape_2'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
								  var fx2 = new Fx.Style( $('onglet_etape_1'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
								  var scroll = new Fx.Scroll(window).toElement('onglet_etape_1');
							  }
                            
                            //alert('typeenvoi:'+typeenvoi+', fichier:'+fichier+', typefichier:'+typefichier);
                    
                    } else {
                    
                        $('typeenvoi2').addClass('erreur_texte');
                        $('typeenvoi1').removeClass('erreur_texte');

						$('error_title').set('text', 'Erreur !');
						$('error_text').set('html', '<b>Votre fichier ne semble pas faire parti des fichiers autoris&eacute;s.</b>');
                        var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                        var scroll = new Fx.Scroll(window).toElement('errors');  
                    
                    }
                    
                }

                if ( $('typeenvoi1').checked == true ) {

                    if ( fichier.test(".mp3$", "i") || fichier.test(".ogg$", "i") || fichier.test(".wav$", "i") || fichier.test(".flp$", "i") || fichier.test(".zip$", "i") || fichier.test(".rar$", "i") ) {
                      
                            // tout est bon
                            $('typeenvoi1').removeClass('input_erreur');
                            $('typeenvoi2').removeClass('input_erreur');
                            $('errors').set( 'styles', { 'display': 'none' } );
                      
                            if( $('typeenvoi1').checked == true ) {
                              var typeenvoi = "ESPACEPERSO";
                              var fichier = $('fichier').get('value').stripScripts();
                            }
                            
                            if( $('typeenvoi2').checked == true ) {
                              var typeenvoi = "URL";
                              var fichier = $('url').get('value').stripScripts();
                            }

                              var form = $('zfm');
                              var typefichier = form.typefichier.options[form.typefichier.selectedIndex].value;
                            alert('typeenvoi:'+typeenvoi+', fichier:'+fichier+', typefichier:'+typefichier);
                            //var typefichier = $('typefichier').getSelected()[0].value.stripScripts();
                            
                            var requestVar = { 'typeenvoi': typeenvoi, 'fichier': fichier, 'typefichier': typefichier  };
                            // on envoi
							  new Request({
								  url: '?page=modificationncompo&etape=1&id_topic=' + id_topic,
								  data: requestVar
							  }).post();
            
							  if (order == "next") {
								  var fx = new Fx.Style( $('onglet_etape_2'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
								  var fx2 = new Fx.Style( $('onglet_etape_3'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
								  var scroll = new Fx.Scroll(window).toElement('onglet_etape_3');
							  }

							  if (order == "prev") {
								  var fx = new Fx.Style( $('onglet_etape_2'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
								  var fx2 = new Fx.Style( $('onglet_etape_1'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
								  var scroll = new Fx.Scroll(window).toElement('onglet_etape_1');
							  }
                            
                            //alert('typeenvoi:'+typeenvoi+', fichier:'+fichier+', typefichier:'+typefichier);
                      
                      } else {
                      
                            $('typeenvoi1').addClass('erreur_texte');
                            $('typeenvoi2').removeClass('erreur_texte');

							$('error_title').set('text', 'Erreur !');
							$('error_text').set('html', '<b>Votre fichier ne semble pas faire parti des fichiers autoris&eacute;s.</b>');

                            var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                            var scroll = new Fx.Scroll(window).toElement('errors');                  
                      
                      }
                      
                 }   

              }
            
            }
          
          } else {
          
            $('typeenvoi1').addClass('erreur_texte');
            $('typeenvoi2').addClass('erreur_texte');

			$('error_title').set('text', 'Erreur !');
			$('error_text').set('html', '<b>Vous devez s&eacute;lectionner une des deux options : Depuis mon espace perso ou Depuis cette adresse internet.</b>');
            
            var fx = new Fx.Style( $('errors'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
            var scroll = new Fx.Scroll(window).toElement('errors');
          
          }   
  
  }
  
  if (etp == "2") {
  
    // typecontrat option_playlist option_stream option_down    
    if ( $('option_playlist').checked == true ) {
      var option_playlist = 1;
    } else {
      var option_playlist = 0;
    }
    
    var typecontrat   = $$('input[name=typecontrat]:checked')[0].get('value');
    var option_stream = $$('input[name=option_stream]:checked')[0].get('value');
    var option_down   = $$('input[name=option_down]:checked')[0].get('value');

    //alert( 'option_playlist:'+option_playlist+', typecontrat:'+typecontrat+', option_stream:'+option_stream+', option_down:'+option_down );
    
    var requestVar = { 'option_playlist': option_playlist, 'typecontrat': typecontrat, 'option_stream': option_stream, 'option_down': option_down };
    // on envoi
	   
		if (order == "next") {
		   new Request.HTML({
			  url: '?page=modificationncompo&etape=2&redirect=true&id_topic=' + id_topic,
			  update: $('onglet_etape_3'),
			  data: requestVar
		   }).post();
		}

		if (order == "prev") {
			new Request({
				url: '?page=modificationncompo&etape=2&redirect=false&id_topic=' + id_topic,
				data: requestVar
			}).post();
			var fx = new Fx.Style( $('onglet_etape_3'), 'display', {duration: 1000, wait: false} ).start('block', 'none');
			var fx2 = new Fx.Style( $('onglet_etape_2'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
			var scroll = new Fx.Scroll(window).toElement('onglet_etape_2');
		}
    
  }

}


// ******************************************
// valide_edition(id)
function valide_edition(etp,form) {

  if (etp == "1") {
  
    // valide etape 1
    var url_post = document.location.href;
    
    var titre_compo   = $('titre_compo').get('value').stripScripts();
    var topic_message = $('topic_message').get('value').stripScripts();
    
    if ( titre_compo == "" || titre_compo.length < 3 ) {
          
      $('titre_compo').addClass('input_erreur');
      $('topic_message').removeClass('input_erreur');
      $('erreur').set('text', 'Erreur ! Le titre est trop court.');
   
      var fx = new Fx.Style( $('affiche_erreur'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
      
      $('affiche_erreur').addClass('erreur_texte');
      var scroll = new Fx.Scroll(window).toElement('affiche_erreur');
    
    } else {
    
        if ( topic_message == "" || topic_message.length < 50 ) {
        
          $('topic_message').addClass('input_erreur');
          $('titre_compo').removeClass('input_erreur')
          $('erreur').set('text', 'Erreur ! La description est trop courte.');
       
          var fx = new Fx.Style( $('affiche_erreur'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
          
          $('affiche_erreur').addClass('erreur_texte');
          var scroll = new Fx.Scroll(window).toElement('affiche_erreur');
        
        } else {
        
          // tout est ok
          $('titre_compo').removeClass('input_erreur');
          $('topic_message').removeClass('input_erreur');
          $('affiche_erreur').set( 'styles', { 'display': 'none' } );

          //form.submit();
          //$(form).submit();
           new Request.HTML({
              url: url_post,
              update: $('result_edition_titre_description')
           }).post($(form));
          
        }
        
    }
  
  }
  
  if (etp == "2") {

    var url_post = document.location.href;          
    if ( $('notification').checked == true ) {
      var notification = 1;
    } else {
      var notification = 0;
    }
          
          if( $('typeenvoi1').checked == true || $('typeenvoi2').checked == true ) {
            
            if ( $('typeenvoi1').checked == true && ( $('fichier').get('value').stripScripts() == "" || $('fichier').get('value').stripScripts() == 0 ) ) {
              
                // url sélectionné mais pas d'url
                $('typeenvoi1').addClass('erreur_texte');
                $('typeenvoi2').removeClass('erreur_texte');
                
                $('erreur').set('text', 'Erreur ! Vous devez choisir un fichier de votre espace perso.');
                var fx = new Fx.Style( $('affiche_erreur'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                $('affiche_erreur').addClass('erreur_texte');
                var scroll = new Fx.Scroll(window).toElement('affiche_erreur');                
              
            }
                            
            if ( $('typeenvoi2').checked == true && ( $('url').get('value').stripScripts() == "http://" || $('url').get('value').stripScripts() == "" ) ) {
              
                // url sélectionné mais pas d'url
                $('typeenvoi2').addClass('erreur_texte');
                $('typeenvoi1').removeClass('erreur_texte');
                
                $('erreur').set('text', 'Erreur ! Vous devez indiquer une adresse internet complète où télécharger votre fichier.');
                var fx = new Fx.Style( $('affiche_erreur'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                $('affiche_erreur').addClass('erreur_texte');
                var scroll = new Fx.Scroll(window).toElement('affiche_erreur');                
              
            }
            
            // on doit vérifier l'extension de l'url et du fichier
            var url = $('url').get('value').stripScripts();
            var fichier = $('fichier').get('value').stripScripts();
            
            if ( $('typeenvoi2').checked == true && url != "" && url != "http://" ) {
                
                    // Mp3, Ogg, Wav, flp, zip, rar
                    if ( url.test(".mp3$", "i") || url.test(".ogg$", "i") || url.test(".wav$", "i") || url.test(".flp$", "i") || url.test(".zip$", "i") || url.test(".rar$", "i") ) {
    
                            // tout est bon
                            $('typeenvoi1').removeClass('input_erreur');
                            $('typeenvoi2').removeClass('input_erreur');
                            $('affiche_erreur').set( 'styles', { 'display': 'none' } );
                            
                            //var typefichier = $('typefichier').getSelected()[0].value.stripScripts();
                            
                            // pour ie
                            var form = $('zfm2');
                            var typefichier = form.typefichier.options[form.typefichier.selectedIndex].value;
                            
                            var requestVar = { 'tab': 'edition_fichier', 'form_submit': 'true', 'typeenvoi1': '', 'typeenvoi2': 'URL', 'typefichier': typefichier, 'url': url, 'notification': notification };
                            // on envoi
                            new Request.HTML({
                                  url: url_post,
                                  update: $('result_edition_fichier'),
                                  data: requestVar
                            }).post();
                      
                            //new Request.HTML({
                            //  url: url_post,
                            //  update: $('result_edition_fichier')
                            //}).post($(form));
                    
                    } else {
                    
                        $('typeenvoi2').addClass('erreur_texte');
                        $('typeenvoi1').removeClass('erreur_texte');
                        
                        $('erreur').set('text', 'Erreur ! Votre fichier ne semble pas faire parti des fichiers autorisés.');
                        var fx = new Fx.Style( $('affiche_erreur'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                        $('affiche_erreur').addClass('erreur_texte');
                        var scroll = new Fx.Scroll(window).toElement('affiche_erreur');  
                    
                    }
                    
            }

            if ( $('typeenvoi1').checked == true && fichier != "" && fichier != 0 ) {

                    if ( fichier.test(".mp3$", "i") || fichier.test(".ogg$", "i") || fichier.test(".wav$", "i") || fichier.test(".flp$", "i") || fichier.test(".zip$", "i") || fichier.test(".rar$", "i") ) {
                      
                            // tout est bon
                            $('typeenvoi1').removeClass('input_erreur');
                            $('typeenvoi2').removeClass('input_erreur');
                            $('affiche_erreur').set( 'styles', { 'display': 'none' } );
                      
                            //var typefichier = $('typefichier').getSelected()[0].value.stripScripts();
                            
                            var form = $('zfm2');
                            var typefichier = form.typefichier.options[form.typefichier.selectedIndex].value;
                            
                            var requestVar = { 'tab': 'edition_fichier', 'form_submit': 'true', 'typeenvoi1': 'ESPACEPERSO', 'typeenvoi2': '', 'typefichier': typefichier, 'fichier': fichier, 'notification': notification };
                            // on envoi
                            new Request.HTML({
                                  url: url_post,
                                  update: $('result_edition_fichier'),
                                  data: requestVar
                            }).post();
                      
                      } else {
                      
                            $('typeenvoi1').addClass('erreur_texte');
                            $('typeenvoi2').removeClass('erreur_texte');
                            
                            $('erreur').set('text', 'Erreur ! Votre fichier ne semble pas faire parti des fichiers autorisés.');
                            var fx = new Fx.Style( $('affiche_erreur'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
                            $('affiche_erreur').addClass('erreur_texte');
                            var scroll = new Fx.Scroll(window).toElement('affiche_erreur');                  
                      
                      }
                      
            }
          
          } else {
          
            $('typeenvoi1').addClass('erreur_texte');
            $('typeenvoi2').addClass('erreur_texte');
            
            $('erreur').set('text', 'Erreur ! Vous devez sélectionner une des deux options : Depuis mon espace perso ou Depuis cette adresse internet.');
            var fx = new Fx.Style( $('affiche_erreur'), 'display', {duration: 1000, wait: false} ).start('none', 'block');
            $('affiche_erreur').addClass('erreur_texte');
            var scroll = new Fx.Scroll(window).toElement('affiche_erreur');
          
          }
  
  }
  
  if (etp == "3") {

    var url_post = document.location.href; 
  
    new Request.HTML({
      url: url_post,
      update: $('result_edition_options')
    }).post($(form));
    
  }

}

// ******************************************
function valide_profil(form, divid)
{
  
    var url_post = $(form).action;
    
    new Request.HTML({
      url: url_post,
      update: $(divid),
      onFailure: function(item) { $(divid).load('/site/erreur_ajax/index/' + item.responseText); },
      onException: function(itemname, itemvalue) { $(divid).load('/site/erreur_ajax/index/' + itemname.responseText); }
    }).post($(form));

}

// ******************************************
function ToggleDisplay(el)
{

  var displayOn = $(el).getStyle('display');
  if ( displayOn == 'none' ) {
    var displayOff = 'block';
  }
  if ( displayOn == 'block' ) {
    var displayOff = 'none';
  }
  
    $(el).set('tween',{
    	duration: 250,
    	transition: Fx.Transitions.Bounce.easeOut,
    	link: 'chain'
    });
    $(el).tween('display', displayOn).tween('display', displayOff);
  
  //var fxToggleDisplay = new Fx.Style( $(el), 'display', {duration: 1000, wait: false} ).start(displayOn, displayOff);

}


// ******************************************
function GoSearch( type )
{

   
   if ( type == 'compo' ) {
   
       var pseudo = $('pseudo').get('value').stripScripts();
       if (pseudo == "") {pseudo = 0};
       var titre_compo = $('titre_compo').get('value').stripScripts();
       if (titre_compo == "") {titre_compo = 0};
       var style_compo = $('style_compo').get('value').stripScripts();
       if (style_compo == "") {style_compo = 0};
       
       var filtre   = $$('input[name=filtre]:checked')[0].get('value');
       var tri      = $$('input[name=tri]:checked')[0].get('value');
       var type_tri = $$('input[name=type_tri]:checked')[0].get('value');  
            
               new Request.HTML({
                  url: '/site/compos/recherche/ajax/' + pseudo + '/' + titre_compo + '/' + style_compo + '/' + filtre + '/' + tri + '/' + type_tri,
                  update: $('liste_compos')
               }).post();
           
   }
   
   if ( type == 'membre' ) {
   
   
   }
   
   if ( type == 'playlist' ) {
   
   
   }
   
}

// ******************************************
function SlideAccueil(el)
{

  // masque toutes les sections
  var found1 = $('slide_container').getElement('.displayOn').addClass('displayOff');
  var found2 = $('slide_container').getElement('.displayOn').removeClass('displayOn');   
  var found3 = $(el).removeClass('displayOff');
  var found4 = $(el).addClass('displayOn');

}

(function(){
  
var special = ['Ã€','Ã ','Ã','Ã¡','Ã‚','Ã¢','Ãƒ','Ã£','Ã„','Ã¤','Ã…','Ã¥','Ä‚','Äƒ','Ä„','Ä…','Ä†','Ä‡','ÄŒ','Ä','Ã‡','Ã§', 'ÄŽ','Ä','Ä','Ä‘', 'Ãˆ','Ã¨','Ã‰','Ã©','ÃŠ','Ãª','Ã‹','Ã«','Äš','Ä›','Ä˜','Ä™', 'Äž','ÄŸ','ÃŒ','Ã¬','Ã','Ã­','ÃŽ','Ã®','Ã','Ã¯', 'Ä¹','Äº','Ä½','Ä¾','Å','Å‚', 'Ã‘','Ã±','Å‡','Åˆ','Åƒ','Å„','Ã’','Ã²','Ã“','Ã³','Ã”','Ã´','Ã•','Ãµ','Ã–','Ã¶','Ã˜','Ã¸','Å‘','Å˜','Å™','Å”','Å•','Å ','Å¡','Åž','ÅŸ','Åš','Å›', 'Å¤','Å¥','Å¤','Å¥','Å¢','Å£','Ã™','Ã¹','Ãš','Ãº','Ã›','Ã»','Ãœ','Ã¼','Å®','Å¯', 'Å¸','Ã¿','Ã½','Ã','Å½','Å¾','Å¹','Åº','Å»','Å¼', 'Ãž','Ã¾','Ã','Ã°','ÃŸ','Å’','Å“','Ã†','Ã¦','Âµ'];

var standard = ['A','a','A','a','A','a','A','a','Ae','ae','A','a','A','a','A','a','C','c','C','c','C','c','D','d','D','d', 'E','e','E','e','E','e','E','e','E','e','E','e','G','g','I','i','I','i','I','i','I','i','L','l','L','l','L','l', 'N','n','N','n','N','n', 'O','o','O','o','O','o','O','o','Oe','oe','O','o','o', 'R','r','R','r', 'S','s','S','s','S','s','T','t','T','t','T','t', 'U','u','U','u','U','u','Ue','ue','U','u','Y','y','Y','y','Z','z','Z','z','Z','z','TH','th','DH','dh','ss','OE','oe','AE','ae','u'];

var tidymap = {
	"[\xa0\u2002\u2003\u2009]": " ",
	"\xb7": "*",
	"[\u2018\u2019]": "'",
	"[\u201c\u201d]": '"',
	"\u2026": "...",
	"\u2013": "-",
	"\u2014": "--",
	"\uFFFD": "&raquo;"
};

var getRegForTag = function(tag, contents) {
	tag = tag || '';
	var regstr = contents ? "<" + tag + "[^>]*>([\\s\\S]*?)<\/" + tag + ">" : "<\/?" + tag + "([^>]+)?>";
	reg = new RegExp(regstr, "gi");
	return reg;
};

String.implement({

	standardize: function(){
		var text = this;
		special.each(function(ch, i){
			text = text.replace(new RegExp(ch, 'g'), standard[i]);
		});
		return text;
	},

	repeat: function(times){
		return new Array(times + 1).join(this);
	},

	pad: function(length, str, dir){
		if (this.length >= length) return this;
		var pad = (str == null ? ' ' : '' + str).repeat(length - this.length).substr(0, length - this.length);
		if (!dir || dir == 'right') return this + pad;
		if (dir == 'left') return pad + this;
		return pad.substr(0, (pad.length / 2).floor()) + this + pad.substr(0, (pad.length / 2).ceil());
	},

	getTags: function(tag, contents){
		return this.match(getRegForTag(tag, contents)) || [];
	},

	stripTags: function(tag, contents){
		return this.replace(getRegForTag(tag, contents), '');
	},

	tidy: function(){
		var txt = this.toString();
		$each(tidymap, function(value, key){
			txt = txt.replace(new RegExp(key, 'g'), value);
		});
		return txt;
	}

});

})();
