FB.init({
    appId:  '118205574899590',
    status: true,
    cookie: true,
    xfbml:  true
});

var timer;
var start;
var end;
var old = 101218259941928;

function sendToFacebook() {
    FB.login(function(response) {
        if (response.session) {
            if (window.console) console.info('statusChange:'+ response.perms);
            if (response.perms.indexOf('publish_stream') != -1) {
                sendFacebookFeed();
            }
        }
    }, {perms:'publish_stream'});
}

function sendFacebookFeed() {
    FB.api('/me/feed', 'post', {
        message: 'helped WHO’s drive for safe hospitals by reacting in '+ fbtime +' sec.',
        link:    'http://www.clickabrick.org/',
        name:    'How fast are you?',
        caption: 'Tsunamis, floods, earthquakes. Disasters strike and destroy in seconds.',
        picture: 'http://www.who.int/clickabrick/assets/img/facebook.png'
    }, sentFacebookFeed);
}

function sentFacebookFeed(ret, exception) {
    if (window.console) console.info('ret:'+ ret);
    if (window.console) console.info('exception:'+ exception);

    for (var i in ret){
        if (window.console) console.info(i +':'+ ret[i]);
    }
    if (ret.error) {
        for (var i in ret.error){
            if (window.console) console.info(i +':'+ ret.error[i]);
        }
    }
    if (!ret || !ret.id) {
        if (window.console) console.info('Error occured');
    } else {
        if (window.console) console.info('Post ID: '+ ret.id);
        var flash = document.getElementById('post-facebook');
        flash.responce('true');
    }
}

function onAfter(curr, next, opts) {
    var index = opts.currSlide;
    $('#carousel-text-'+ index).fadeIn('fast');
    $('#carousel-prev')[index == 0 ? 'hide' : 'show']();
    $('#carousel-next')[index == opts.slideCount - 1 ? 'hide' : 'show']();
}
function onBefore(curr, next, opts) {
    $('#carousel-text-'+ opts.currSlide).fadeOut('fast');
}

$(document).ready( function() {
    $('#post-facebook a').click( function(e) {
        e.preventDefault();
    });

    if ( $('html').hasClass('disastersdestroyinseconds') ) {
        $('#carousel').cycle({
            fx:     'fade',
            speed:  500,
            prev:   '#carousel-prev',
            next:   '#carousel-next',
            after:   onAfter,
            before:  onBefore,
            timeout: 0
        });
    }

    $('a.back').click( function(e) {
        e.preventDefault();
        history.go(-1);
    });

    if ( $('#post-facebook').length ) {
        var flashvars = null;

        if( $('#post-facebook').hasClass("firstrun") ){ 
            flashvars = { firstrun:true };
        }

        var params = {
            'wmode' : 'transparent',
            'allowScriptAccess' : 'always'
        };
        swfobject.embedSWF('/clickabrick/assets/swf/facebook.swf', 'post-facebook', '180', '190', '9.0.0', '', flashvars, params);
    }

    if ( $('#readmore').length ) {
        var flashvars = {
            'clickTag' : '/clickabrick/hospitals-save-lives/'
        };
        var params = {
            'wmode' : 'transparent'
        };
        swfobject.embedSWF('/clickabrick/assets/swf/corner.swf', 'readmore', '100', '120', '9.0.0', '', flashvars, params);
    }
    if ( $('#back').length ) {
        if ( $('html').hasClass('safehospitalssavelives') ) {
            var back = '/clickabrick/';
        } else {
            var back = '/clickabrick/hospitals-save-lives/';
        }
        var flashvars = {
            'clickTag' : back,
            'side' : 'left'
        };
        var params = {
            'wmode' : 'transparent'
        };
        swfobject.embedSWF('/clickabrick/assets/swf/corner.swf', 'back', '100', '120', '9.0.0', '', flashvars, params);
    }

    if ( $('#ticker li').length > 1 ) {
        $('#ticker').newsticker();
    }

    $('.challengeafriend form input:image').click( function(e) {
        $('div.error').remove();
        var error = false;

        if ( $('.challengeafriend form #friend').val() == '' ) {
            $('.challengeafriend form #friend').addClass('error');
            error = true;
        } else if ( $('.challengeafriend form #friend').hasClass('error') ) {
            $('.challengeafriend form #friend').removeClass('error');
        }
        if ( $('.challengeafriend form #name').val() == '' ) {
            $('.challengeafriend form #name').addClass('error');
            error = true;
        } else if ( $('.challengeafriend form #name').hasClass('error') ) {
            $('.challengeafriend form #name').removeClass('error');
        }
        if ( $('.challengeafriend form #email').val() == '' ) {
            $('.challengeafriend form #email').addClass('error');
            error = true;
        } else if ( $('.challengeafriend form #email').hasClass('error') ) {
            $('.challengeafriend form #email').removeClass('error');
        }
        if ( $('.challengeafriend form #message').val() == '' ) {
            $('.challengeafriend form #message').addClass('error');
            error = true;
        } else if ( $('.challengeafriend form #message').hasClass('error') ) {
            $('.challengeafriend form #message').removeClass('error');
        }

        if (error) {
            $('.challengeafriend form').prepend('<div class="error">Fill all required fields</div>');
            return false;
        }
    });

    if ( $('html').hasClass('reactnow') || $('html').hasClass('yourtime') ) {
        $('.react').click( function(e) {
            e.preventDefault();

            var bg = $('.react').css('background-position');
            if (bg == 'undefined' || bg == null) {
                bg = $('.react').css('background-position-x') +' '+ $('.react').css('background-position-y');
            }

            if ( bg == '0px -69px' ) {
                clearTimeout(timer);
                $('.react').css({'background-position': '0 -138px'});

                setTimeout(function () {
                    $('.react').css({'background-position': '0 0'});
                }, 3000);
            } else if ( bg == '0px -207px' ) {
                end = new Date();
                var time = end - start;

                $.ajax({
                    type:  'POST',
                    url:   '/clickabrick/your-time/',
                    data:  'time='+ time,
                    async: false,
                    success: function(data) {
                        window.location.href = '/clickabrick/your-time/';
                    }
                });
            } else if ( bg == '0% 0%' || bg == '0px 0px' || bg == '0px -276px' ) {
                $('.react').css({'background-position': '0 -69px'});

                timer = setTimeout(function () {
                    $('.react').css({'background-position': '0 -207px'});
                    start = new Date();
                }, 500 + Math.floor(Math.random() * 3001));
            }
        });

        $('.challengeafriend form input:image').click( function(e) {
            alert(e);
            return false;
        });

        $('.yourtime form #name').focus( function(e) {
            if ( $(this).val() == 'Name*' ) {
                $(this).val('');
                $(this).css({'color': '#000'})
            }
        });
        $('.yourtime form #name').blur( function(e) {
            if ( $(this).val() == '' ) {
                $(this).val('Name*');
                $(this).css({'color': '#b8b8b8'})
            }
        });
        $('.yourtime form #surname').focus( function(e) {
            if ( $(this).val() == 'Surname*' ) {
                $(this).val('');
                $(this).css({'color': '#000'})
            }
        });
        $('.yourtime form #surname').blur( function(e) {
            if ( $(this).val() == '' ) {
                $(this).val('Surname*');
                $(this).css({'color': '#b8b8b8'})
            }
        });
        $('.yourtime form #email').focus( function(e) {
            if ( $(this).val() == 'Email' ) {
                $(this).val('');
                $(this).css({'color': '#000'})
            }
        });
        $('.yourtime form #email').blur( function(e) {
            if ( $(this).val() == '' ) {
                $(this).val('Email');
                $(this).css({'color': '#b8b8b8'})
            }
        });
    }
});
