/**
* california page
*/

var isMember = false;


$(function() {

    var locIncLink = $('a#location-inc-link');
    var locContainer = $('#location-inc');

    // form
    $('#search-location').change(function () {
        locIncLink.remove();
        locContainer.remove();
    });

    // neighbourhoods modal
    locIncLink.click(function() {
        var pos = $(this).position();

        //var locContainer = $('#location-inc');
        var ul = $('#location-inc ul');
        var n = ul.size();
        w = parseInt((10 * n) + (n + 1)) + 'em';

        locContainer.css({
            position: 'absolute',
            marginLeft: 0,
            marginTop: 0,
            top: pos.top - 2,
            left: pos.left - 7,
            width: w
        });

        if ($.browser.msie) {
            $('#sbpf').css('visibility', 'hidden');
        }

        locContainer.show();

        return false;
    });

    // close location link
    $('#location-inc a').click(function() {
        $('#sbpf').css('visibility', 'visible');

        locContainer.hide();
        return false;
    });

    // save location link
    $('#location-inc button').click(function() {
        var cnt = $('#location-inc input:checked').size();
        //console.log(cnt);
        locIncLink.children('span').text(cnt);
        locContainer.find('span').text(cnt);

        locContainer.hide();
        return false;
    });

    // pager
    $('.pager a').click(function(e) {
        e.preventDefault();
        $('#ca-more-results').submit();
        return false;
    });

    isMember = $('#is-member').length ? true : false;

    // modal dialogs
    if (isMember) {
        initModalSave();
    } else {
        initModalSend();
        initModalButler();
    }

    // FOX 11 video
    $('a.fox').click(function() {
        var link = $(this);
        var container = $('#video-fox-modal');
        if (! container.length)
            return false;

        container.attr('title', 'FOX 11 Los Angeles, Rental Scams');
        container.html('<div id="player"></div>');

        // video
        var so = new SWFObject('/swf/player.swf', 'foxplayer', 500, 400, '9');
        so.addParam('allowscriptaccess','always');
        so.addParam('allowfullscreen','true');
        so.addParam('flashvars','&file=' + this.href + '&autostart=true&skin=/swf/modieus.swf');
        so.write('player');

        //modal
        container.dialog({
            bgiframe: true,
            autoOpen: false,
            modal: true,
            draggable: false,
            resizable: true,
            width: 520,
            height: 460
        });

        container.dialog('open');

        return false;
    });

    // Fineliving video
    $('a.fineliving').click(function() {
        var link = $(this);
        var container = $('#video-fl-modal');
        if (! container.length)
            return false;

        container.attr('title', 'FineLiving Chanel, What\'s Your Time Worth');
        container.html('<div id="player"></div>');

        // video
        var so = new SWFObject('/swf/player.swf', 'flplayer', 400, 340, '9');
        so.addParam('allowscriptaccess','always');
        so.addParam('allowfullscreen','true');
        so.addParam('flashvars','&file=' + this.href + '&autostart=true&skin=/swf/modieus.swf');
        so.write('player');

        //modal
        container.dialog({
            bgiframe: true,
            autoOpen: false,
            modal: true,
            draggable: false,
            resizable: true,
            width: 440,
            height: 400
        });

        container.dialog('open');

        return false;
    });

});


/**
*  save results for members
*/
function initModalSave()
{
    var modal = $('#save-results-modal');

    if (! modal.length)
        return false;

    modal.dialog({
        bgiframe: true,
            autoOpen: false,
            modal: true,
            draggable: false,
            width: 400,
            buttons: {
                Cancel: function() {
                    $(this).dialog('close');
                },
                'Save': function() {
                    // save search
                    var fields = {
                        'description': $(this).find('textarea').val(),
                        'sms_alert':   $(this).find('input[name=sms_alert]:checked').length,
                        'email_alert': $(this).find('input[name=email_alert]:checked').length
                    };
                    console.log(fields);
                    $.post('/search/save', fields, function() {

                    });
                    $(this).dialog('close');
                }
            }
    });

    // save / view saved links
    $('#refine-save-link').click(function() {
        modal.dialog('open');
        return false;
    });
}

/**
*  send results for guests
*/
function initModalSend()
{
    var modal = $('#save-results-modal');

    if (! modal.length)
        return false;

    var form = $('#save-results-modal').find('form');
    var url = form.attr('action');

    form.find('#alert-phone').mask("999-999-9999");

    modal.dialog({
        bgiframe: true,
        autoOpen: false,
        modal: true,
        draggable: false,
        width: 400,
        buttons: {
            Cancel: function() {
                $(this).dialog('close');
            },
            'Send Results': function() {
                var bValid = true;
                var error = '';
                var allFields = $('#send-results-modal input');
                var tip = $(this).find('#send-tip');

                tip.html('').removeClass('error');

                var phone = $('#alert-phone').val();
                var email = $('#alert-email').val();
                var description = $(this).find('textarea').val();

                if (email.length) {
                    error = 'Email address is incorrect';
                    email.replace(/[^A-Za-z0-9\-\_\.\@]+/, '');

                    var regexp = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
                    bValid = regexp.test(email);
                }
                if (phone.length) {
                    error = 'Phone number is incorrect';
                    phone.replace(/[^0-9]+/, '');
                    bValid = (phone.length >= 10);
                }
                if (!phone.length && !email.length) {
                    error = 'Email or Phone number is required';
                    bValid = false;
                }

                if (!bValid) {
                    tip.html(error).addClass('error');
                } else {
                    // send
                    $.post('/search/save', {email: email, phone: phone, description: description});
                    $(this).dialog('close');
                }
            }
        },
        close: function() {
            //allFields.val('').removeClass('ui-state-error');
        }
    });

    $('#refine-send-link').click(function() {
        modal.dialog('open');
        return false;
    });

    return true;
}

/**
*
*/
function initModalButler()
{
    var modal = $('#butler-modal');

    if (! modal.length)
        return false;

    modal.dialog({
        bgiframe: true,
        autoOpen: false,
        modal: true,
        draggable: false,
        width: 300,
        minWidth: 300,
        buttons: {
            'Cancel': function() {
                $(this).dialog('close');
            },
            'Do the Search': function() {
                $(this).dialog('close');
                $(this).children('form').submit();
            }
        }
    });

    // save / view saved links
    $('ul.ca-banner-links a.butler').click(function() {
        modal.dialog('open');
        return false;
    });
}
