$(document).ready(function(){ // SONY only functions
    if( (   // degrade the round cornerless browsers timeline
            ( $.browser.msie    && parseFloat($.browser.version) < 9 ) ||
            ( $.browser.webkit  && parseFloat($.browser.version) < 300 ) ||
            ( $.browser.opera   && parseFloat($.browser.version) < 11 ) ||
            ( $.browser.mozilla && parseFloat($.browser.version) < 1.9 )
        )
    ) { $('#timeline2 #timeline-window').addClass('degrade'); }


    language_load();
    
    $('form#signup #submitter').click(function(){
        ebConversionTracker(88070);
    });
    
    if( $('form#signup #submitter').length ) {
        ebConversionTracker(77046);
    }

    $('#flags a').mouseup(function() {
        setTimeout(language_load, 100);
    });

    $('.facebook-trace').click(function(){
        ebConversionTracker(77047);
    });

    $('.technology-list .image').each(function(){
        $(this).css({ background : 'none' });
        var front   = $(this).find('img.selected').attr('src');
        var back    = $(this).find('img:not(.selected)').attr('src');
        var url     = $(this).attr('href');

        $(this).flash({
            swf     : '/static/swf/CardFlip.swf',
            height  : 400,
            width   : 257,
            wmode   : 'transparent',
    		flashvars: {
    			front: front,
    			back : back,
    			link_url : url
    		}
        });
    });

    $('.technology-list .image').click(function(){
        $(this).find('img').each(function(){
            if( $(this).hasClass('selected') )
                $(this).removeClass('selected');
            else
                $(this).addClass('selected');
        });
        
        return false;
    });

    // set the SWF header
    var rand_no = Math.ceil(Math.random() * 3);
    $('h1#sony-header').html('');
    $('h1#sony-header').flash({
            'swf'    : '/static/swf/logo-'+ rand_no + '.swf',
            'height' : 182,
            'width'  : 652
    });
    
    if( $('.contribute-terms').length ) {
        $('.contribute-terms').each(function(){
            var url = $(this).attr('href').split(window.location.hostname.toString());
            if( url.length > 1 ) {
                url = url[1];
                url = url.replace(':6543/', '/');
                
                $(this).attr({ href : url });
            }
        });
    }
    
    if( $('.contribute-terms').length && 
        $('.contribute-terms').attr('href').indexOf('how-can-sony-technology-be-used-to-address-environmental-challenges') > -1
    ) {

        var allowed_languages = ['de', 'fr', 'es', 'it'];
        var url = window.location.toString();
        var language = false;
        var userLang = (navigator.language) ? navigator.language : navigator.userLanguage;
            userLang = userLang.split('-')[0];

        if( url.indexOf('#') > -1 && jQuery.inArray( url.split('#')[1], allowed_languages) > -1 ) language = url.split('#')[1];
        else if( jQuery.inArray(userLang, allowed_languages) > -1 ) language = userLang;

        if( language )
            $('.contribute-terms').attr({ href : $('.contribute-terms').attr('href').replace('/ajax.html', '-' + language + '/ajax.html')});
    }

    if( typeof(ActivityID) != 'undefined' ) {
    // statistics
        var ebRand = Math.random() + '';
            ebRand = ebRand * 1000000;

        var s   = document.createElement('script');
        s.type  = 'text/javascript';
        s.src   = 'http://bs.serving-sys.com/BurstingPipe/ActivityServer.bs?cn=as&amp;ActivityID=' + ActivityID + '&amp;rnd=' + ebRand + '&amp;Session=' + ebSession;

        $('head').append(s);
    }

    if( $('h1#sony-header').length && $('#featured-inspiration-text').length ) {
        var lineHeight = parseFloat($('#featured-inspiration-text').css('lineHeight'));
        var lines      = 6;
        
        var wanted_height = lines*lineHeight;

        while( $('#featured-inspiration-text').height() > wanted_height ) {
            
            $('#featured-inspiration-text').text( $('#featured-inspiration-text').text().substring(0,($('#featured-inspiration-text').text().length-4)) + '...' );
        }
    }
    
    $('.embed-textarea').click(function(){
        $(this).select();
    });

});

function language_load() {
    if( $('#lingua-content').length && $('#lingua-content').children().length ) {
        var url = window.location.toString();
        var language = false;
        var userLang = (navigator.language) ? navigator.language : navigator.userLanguage;
            userLang = userLang.split('-')[0];
        
        var allowed_languages = ['de', 'fr', 'es', 'it'];

        if( url.indexOf('#') > -1 && jQuery.inArray( url.split('#')[1], allowed_languages) > -1 ) language = url.split('#')[1];
        else if( jQuery.inArray(userLang, allowed_languages) > -1 ) language = userLang;

        $('.lingua-how-it-works').each(function(){
            var url = $(this).attr('href').split('how-this-works')[0] + 'how-this-works?lang=' + language;
            $(this).attr({ href : url });
        });

        $('.lingua-brief').each(function(){
            var url = $(this).attr('href').split('brief.html')[0] + 'brief.html#' + language;
            $(this).attr({ href : url });
        });

        $('.lingua-faq').each(function(){
            var url = $(this).attr('href').split('/faq')[0] + '/faq-' + language;
            $(this).attr({ href : url });
        });

         if( language && !$('#replace-content').length ) {           
            if( $('#join-in-lang img').length )
                $('#join-in-lang img').attr({ src : $('#join-in-lang img').attr('src').split('join_in-')[0] + 'join_in-' + language + '.png' });

            $('.exchange-lingua-text').hide();
            
            $('.i-am-' + language ).show();
            
            $('#close-lingua').click(function(){
                $('#multi-lingua').fadeOut(1000);
            });

            $('#language-language').attr({'id' : 'language-' + language });
            
            $('.lingua-image').each(function(){
                $(this).attr({ src: $(this).attr('src').replace('-de.', '-[language_code].') });
                $(this).attr({ src: $(this).attr('src').replace('-it.', '-[language_code].') });
                $(this).attr({ src: $(this).attr('src').replace('-es.', '-[language_code].') });
                $(this).attr({ src: $(this).attr('src').replace('-fr.', '-[language_code].') });

                $(this).attr({ src: $(this).attr('src').replace('_de.', '_[language_code].') });
                $(this).attr({ src: $(this).attr('src').replace('_it.', '_[language_code].') });
                $(this).attr({ src: $(this).attr('src').replace('_es.', '_[language_code].') });
                $(this).attr({ src: $(this).attr('src').replace('_fr.', '_[language_code].') });

                $(this).attr({ src: $(this).attr('src').replace('[language_code]', language) });
            });

            $('.lingua-ajax').each(function(){
                $(this).attr({ rel: $(this).attr('rel').replace('_de', '_[language_code]') });
                $(this).attr({ rel: $(this).attr('rel').replace('_it', '_[language_code]') });
                $(this).attr({ rel: $(this).attr('rel').replace('_es', '_[language_code]') });
                $(this).attr({ rel: $(this).attr('rel').replace('_fr', '_[language_code]') });
                var url_to_load = $(this).attr('rel').replace('[language_code]', language);
                $(this).load(url_to_load, function(){
                    if( !$('#multi-lingua:visible').length )
                        $('#multi-lingua').fadeIn(1000);
                });
            });
        } else if( language ) {
            $('#replace-content').attr('rel').replace('-de', '-[language_code]');
            $('#replace-content').attr('rel').replace('-it', '-[language_code]');
            $('#replace-content').attr('rel').replace('-es', '-[language_code]');
            $('#replace-content').attr('rel').replace('-fr', '-[language_code]');
            var url_load = $('#replace-content').attr('rel').replace('[language_code]', language)
            $('.content-1-2 .mid').load( url_load, function(){
                $(this).find('#page-content').children().unwrap()
            })
            
        }
    }

    $('#sony-featured-concepts .sony-featured-concept>table').css({ float : 'left', width : $('#sony-featured-concepts table').width()+18 + 'px' });
    
    $('#sony-featured-concepts .sony-featured-concept>table').wrapAll('<div id="caroussel"><div id="caroussel-slider"></div></div>');
    
    $('#caroussel-slider').css({ width : ( $('#caroussel-slider>table').length * $('#caroussel-slider>table').eq(0).width()) + 'px' });
    
    var slides_caroussel = $('#caroussel-slider>table').length;

    var pagination = '';

    if ( slides_caroussel > 1 ) {
        pagination = '<a href="#" class="control-scroller"><img src="/static/img/sony/pause-caro.png" alt="" /></a></div>';
        while( slides_caroussel-- ) {
            pagination = '<a href="#' + slides_caroussel + '">' + (slides_caroussel+1) + '</a>' + pagination;
        }
        
        pagination = '<div id="pagination-for-caro">' + pagination;

        // auto scroll
        auto_scroll_feat = setInterval(function(){
            var current_show = parseInt($('#pagination-for-caro a.selected').text());
            
            if( current_show >= $('#pagination-for-caro a:not(.control-scroller)').length )
                current_show = 0;
            
            $('#pagination-for-caro a:not(.control-scroller)').eq(current_show).click();
        }, 5000);
    }
    
    $('#caroussel').before(pagination);
    
    $('#pagination-for-caro a.control-scroller').click(function(){
        if( $(this).find('img').attr('src').indexOf('pause') > -1 ) {
            $(this).find('img').attr({ 'src' : '/static/img/sony/play-caro.png' });
            clearInterval(auto_scroll_feat);
            auto_scroll_feat = false;
        } else {
            $(this).find('img').attr({ 'src' : '/static/img/sony/pause-caro.png' });
            auto_scroll_feat = setInterval(function(){
                var current_show = parseInt($('#pagination-for-caro a.selected').text());
                
                if( current_show >= $('#pagination-for-caro a:not(.control-scroller)').length )
                    current_show = 0;
                
                $('#pagination-for-caro a:not(.control-scroller)').eq(current_show).click(false);
            }, 5000);
        }
        return false;
    });
    
    $('#pagination-for-caro a:not(.control-scroller)').click(function(i){
        var move_to = parseInt($(this).text()) - 1;
        
        $('#pagination-for-caro a').removeClass('selected');
        $(this).addClass('selected');
        
        $('#caroussel-slider .vote-listing').hide();
        $('#caroussel-slider').animate({ marginLeft : ( move_to * - $('#caroussel-slider>table').eq(0).width() ) + 'px' }, 500, 'easeOutBack', function(){ $('#caroussel-slider .vote-listing').show(); });
        
        return false;
    }).mousedown(function(){
        if( auto_scroll_feat ) {
            $('#pagination-for-caro a.control-scroller').click();
        }

    }).eq(0).addClass('selected');
    
    $('.limit-concept-text-height').each(function(){
        while( $(this).height() > 48 )
            $(this).text( $(this).text().substring(0,($(this).text().length-4)) + '...' );
    });
}

