﻿/// <reference path="~/Shared/Scripts/jquery-1.3.2.js" />
/// <reference path="~/Shared/Scripts/jquery.charcounter.js" />
/// <reference path="~/Shared/Scripts/jquery.extensions.js" />

jQuery.fn.extend({
    toggleRequired: function(bool) {
        return this.each(function() {
            if (bool) {
                $(this).addClass('required');
                $(this).text($(this).text().substring($(this).text().lastIndexOf('*') + 1));
                $(this).text('*' + $(this).text());
            }
            else {
                $(this).removeClass('required');
                $(this).text($(this).text().substring($(this).text().lastIndexOf('*') + 1));
            }
        });
    }
});

function pageLoad() {
    $(document).ready(function() {

        var registerMe = false;
        var subscribeMe = false;
        var statementType = 0;
        var emailStatement = 1;
        var emailAndMailStatement = 3;
        var mailStatement = 2;
        var checkBoxStatementTypeEmail = $('[id$="_checkBoxStatementTypeEmail"]');
        var checkBoxStatementTypeMail = $('[id$="_checkBoxStatementTypeMail"]');
        var checkBoxStatementTypeBoth = $('[id$="_checkBoxStatementTypeBoth"]');
        var hiddenFieldStatementType = $('[id$="_hiddenFieldStatementType"]');
        var checkBoxIsPress = $('[id$="_checkBoxIsPress"]');
        var textBoxPressOutlet = $('[id$="_textBoxPressOutlet"]');

        function isEmailStatement() {
            return (statementType == emailStatement || statementType == emailAndMailStatement);
        }

        function isMailStatementRequired() {
            return (statementType == emailAndMailStatement || statementType == mailStatement);
        }

        function toggleEmailRequired() {
            $('[validationGroup="Email"]').toggleRequired(registerMe || subscribeMe || isEmailStatement());
        }

        function toggleMailRequired() {
            $('[validationGroup="Mail"]').toggleRequired(isMailStatementRequired());
        }


        registerMe = $('[id$="_checkBoxWebcast"]').click(function() {
            registerMe = $(this).attr('checked');
            toggleEmailRequired();
        }).attr('checked');

        subscribeMe = $('[id$="_checkBoxSubscribe"]').click(function() {
            subscribeMe = $(this).attr('checked');
            toggleEmailRequired();
        }).attr('checked');

        statementType = ($(checkBoxStatementTypeEmail).click(function() {
            statementType = ($(this).attr('checked')) ? emailStatement : 0;
            toggleEmailRequired();
            toggleMailRequired();
            $(checkBoxStatementTypeMail).attr('checked', '');
            $(checkBoxStatementTypeBoth).attr('checked', '');
            $(hiddenFieldStatementType).val(statementType);
        }).attr('checked')) ? emailStatement : statementType;

        statementType = ($(checkBoxStatementTypeMail).click(function() {
            statementType = ($(this).attr('checked')) ? mailStatement : 0;
            toggleEmailRequired();
            toggleMailRequired();
            $(checkBoxStatementTypeEmail).attr('checked', '');
            $(checkBoxStatementTypeBoth).attr('checked', '');
            $(hiddenFieldStatementType).val(statementType);
        }).attr('checked')) ? mailStatement : statementType;

        statementType = ($(checkBoxStatementTypeBoth).click(function() {
            statementType = ($(this).attr('checked')) ? emailAndMailStatement : 0;
            toggleEmailRequired();
            toggleMailRequired();
            $(checkBoxStatementTypeEmail).attr('checked', '');
            $(checkBoxStatementTypeMail).attr('checked', '');
            $(hiddenFieldStatementType).val(statementType);
        }).attr('checked')) ? emailAndMailStatement : statementType;

        $(textBoxPressOutlet).attr('disabled', !$(checkBoxIsPress).click(function() {
            $(textBoxPressOutlet).attr('disabled', !$(this).attr('checked'));
        }).attr('checked'));

        toggleEmailRequired();
        toggleMailRequired();

        $(hiddenFieldStatementType).val(statementType);

        $('[id$="_textBoxMailingAddressOtherCountry"]').charCounter(500, 
        {
            container: "<div></div>",
            classname: "counter"
        });

        var validationSummary = $('[id$="_panelValidationSummary"]')

        if (validationSummary[0] != null) {
            $(validationSummary).scrollTo(1000);
        }
    });
}

if (Sys && Sys.Application) {
    Sys.Application.notifyScriptLoaded();
}


        $(function() {
        $('input[id$=textBoxEmailConfirm]').bind('paste', function(e) {
                e.preventDefault();
                alert('You cannot ' + e.type + ' text!  Please re-enter your email.');
            });
        });
      