        $( document ).ready( function( ) {
            var domainCheckCount = 0;
            var domainCheckHigh  = 0;
            var domainRegisterHigh = 0;
            var domainCheckDomainList = new Array( );
            var domainRegisterDomainList = new Array( );
            var domainRegisterCost = 0;
            
            //$( "#domainCheckField2" ).css( "display", "none" );
            //$( "#domainCheckField3" ).css( "display", "none" );
            
            function SystemMessageOld( blockMessage, blockTimeout ) {
                var message = "";
                
                message  = "<div id=\"systemMessage\">";
                message += blockMessage;
                message += "<br /><hr />";
                message += "</div>";
                $.blockUI( {
                    message: message,
                    centerY: false,
                    css    : {
                        background: "#D8DEF0",
                        border: 'none', 
                        padding: '15px',
                        width   : "380px",
                        top     : "10px",
                        left    : "",
                        right   : "10px"
                    }
                } );
                
                if ( blockTimeout != -1 ) {
                    setTimeout( $.unblockUI, blockTimeout );
                }
            }
            
            function SystemMessage( title, message, type, timeout, close ) {
                var blockMessage;
                
                blockMessage  = "<table style=\"font-size: 12px;\">";
                blockMessage += "  <tr><td colspan=\"2\" style=\"text-align: left; font-weight: bold;\">" + title + "</td></tr>";
                blockMessage += "  <tr>";
                if ( type == "error" ) {
                    blockMessage += "    <td valign=\"top\"><img src=\"/Media/Site/Icon/message_error.png\" alt=\"error box\" /></td>";
                }
                else if ( type == "success" ) {
                    blockMessage += "    <td valign=\"top\"><img src=\"/Media/Site/Icon/message_success.png\" alt=\"success box\" /></td>";
                }
                else {
                    blockMessage += "    <td valign=\"top\"><img src=\"/Media/Site/Icon/message_help.png\" alt=\"success box\" /></td>";
                }
                blockMessage += "    <td>" + message + "</td>";
                blockMessage += "  </tr>";
                blockMessage += "</table>";
                blockMessage += "<hr />";
                if ( close ) {
                    blockMessage += "<div style=\"text-align: right; width: 100%\"><input type=\"button\" id=\"systemMessageClose\" value=\"Close\" /></div>";
                }
                
                $.blockUI( {
                    message: blockMessage,
                    canterY: false,
                    css    : {
                        backgroundColor: "#D8DEF0",
                        border  : 'none', 
                        padding : '15px', 
                        width   : "480px",
                        top     : "10px",
                        left    : "",
                        right   : "10px"
                    }
                } );
                
                if ( timeout != -1 && isNumeric( timeout ) ) {
                    setTimeout( $.unblockUI, timeout );
                }
            }
            
            $( "#systemMessageClose" ).livequery( "click", function( ) {
                $.unblockUI( );
            } );
            
            $( "#domainCheckHelpLink" ).livequery( "click", function( ) {
                SystemMessage( "System Help", $( "#domainCheckHelp" ).html( ), "help", -1, true );
            } );
            
            function isNumeric( number ) {
                var validChars = "0123456789";
                var isNumber   = true;
                var character;
                
                for ( i = 0; i < number.length && isNumber == true; i++ ) {
                    character = number.charAt( i );
                    
                    if ( validChars.IndexOf( character ) == -1 ) {
                        isNumber = false;
                    }
                }
                
                return isNumber;
            }
            
            function RemoveFromDomainList( name, id ) {
                var domainID = "#domainListing" + id;
                var domainList = new Array( );
                
                $( domainID ).remove( );
                
                var domainCount = 0;
                for ( i = 0; i < domainCheckDomainList.length; i++ ) {
                    if ( domainCheckDomainList[i] != name ) {
                        domainList[domainCount] = domainCheckDomainList[i];
                        domainCount++;
                    }
                }
                domainCheckDomainList = domainList;
                
                $( "#domainCheckAdd" ).removeAttr( "disabled" );
                $( "#domainCheckAddMax" ).html( "" );
                
                //var height = calculatePageHeight( domainCheckDomainList.length );
                //$( "#divMainBox" ).css( "height", height + "px" );
                
                getMaxCheckboxCount( );
                getMaxDomainCount( );
            }
            
            function calculatePageHeight( multiplier ) {
                if ( multiplier > 1 ) {
                    return 740 + ( multiplier * 12 );
                }
                
                return 740;
            }
            
            $( ".domainRemoveListing" ).livequery( "click", function( ) {
                var domainName = $( this ).attr( "name" );
                var domainID   = $( this ).attr( "id" );
                
                RemoveFromDomainList( domainName, domainID );
            } );
            
            function AddDomainToList( domainName ) {
                //var divHtml = '<div id="domainListing' + domainCheckHigh + '" class="domainListingGroup"><div style="float:left;"><img src="../Media/Site/Icon/cancel_16.png" id="' + domainCheckHigh + '" class="domainRemoveListing" style="cursor: pointer;" name="' + domainName + '" /></div><div style="float:left" class="domainListingname">' + domainName + '</div><input type="text" name="domainCheckList[]" style="display:none;" /></div><div style="clear:both;"></div>'
                var divHtml = '<div id="domainListing' + domainCheckHigh + '" class="domainListingGroup"><div style="float:left;"><label id="' + domainCheckHigh + '" class="domainRemoveListing" style="cursor: pointer;" name="' + domainName + '">[Remove]&nbsp;</label></div><div style="float:left" class="domainListingname">' + domainName + '</div><input type="text" name="domainCheckList[]" style="display:none;" /></div><div style="clear:both;"></div>'
                var domainList = new Array( );
                
                var domainCount = 0;
                for ( i = 0; i < domainCheckDomainList.length; i++ ) {
                    if ( domainCheckDomainList[i] != "" ) {
                        domainList[domainCount] = domainCheckDomainList[i];
                        domainCount++;
                    }
                }
                domainList[domainCount] = domainName;
                domainCheckDomainList = domainList;
                
                //var height = calculatePageHeight( domainCheckDomainList.length );
                //$( "#divMainBox" ).css( "height", height + "px" );
                
                $( "#domainCheckList" ).append( divHtml );
                domainCheckHigh++;
                
                getMaxCheckboxCount( );
                getMaxDomainCount( );
            }
            
            $( "#domainCheckAdd" ).livequery( "click", function( ) {
                var domainCheckDomainname = $( "#domainCheckDomainname" ).val( );
                $( "#domainCheckDomainname" ).focus( );
                
                if ( domainCheckDomainname == "" || domainCheckDomainname == " " ) {
                    SystemMessage( "Invalid Domain name", "Please enter a domain name first before trying to add it to the check list.", "error", -1, true );
                    return;
                }
                
                if ( domainCheckDomainList.length == getMaxDomainCount( ) ) {
                    //SystemMessage( "Sorry, but you can only check a maximum of " + getMaxDomainCount( ) + " domain names at a time. Please complete this check and start a new one when finished.", 3000 );
                    SystemMessage( "Maximum Domains", "Sorry, but you can only check a maximum of " + getMaxDomainCount( ) + " domains at this moment. Please complete this check and start a new one when finished.", "error", -1, true );
                    return;
                }
                
                for ( i = 0; i < domainCheckDomainList.length; i++ ) {
                    if ( domainCheckDomainList[i] == domainCheckDomainname ) {
                        //SystemMessage( "The domain name you tried to add is already present in the list.", 3000 );
                        SystemMessage( "Domain Selected", "The domain name you are trying to add is already present in the check list", "error", -1, true );
                        return;
                    }
                }
                
                AddDomainToList( domainCheckDomainname );
                var i = getMaxDomainCount( );
                $( "#domainCheckDomainname" ).val( "" );
                $( "#domainCheckDomainname" ).focus( );
            } );
            
            function getMaxCheckboxCount( ) {
                
                var checkboxExtensionAllowed = 8;
                /*
                if ( domainCheckDomainList.length > 0 ) {
                    checkboxExtensionAllowed = 12 / domainCheckDomainList.length;
                }
                
                if ( checkboxExtensionAllowed > 8 ) {
                    checkboxExtensionAllowed = 8;
                }*/
                checkboxExtensionAllowed = parseInt( checkboxExtensionAllowed );
                $( "#domainCheckAddMax" ).html( domainCheckDomainList.length + "/" + getMaxDomainCount( ) + " domains&nbsp;" );
                
                
                var checkboxExtensionCount = 0;
                $( ".checkboxExtension" ).each( function( ) {
                    if ( $( this ).attr( "checked" ) != false ) {
                        checkboxExtensionCount++;
                    }
                } );
                if ( checkboxExtensionCount >= checkboxExtensionAllowed ) {
                    $( ".checkboxExtension" ).each( function( ) {
                        if ( $( this ).attr( "checked" ) == false ) {
                            $( this ).attr( { "disabled" : "disabled" } );
                        }
                    } );
                }
                else {
                    $( ".checkboxExtension" ).each( function( ) {
                        $( this ).removeAttr( "disabled" );
                    } );
                }
                
                return checkboxExtensionAllowed;
            }
            
            function getMaxDomainCount( ) {
                var domainListAllowed = 1;
                
                var checkboxExtensionCount = 0;
                $( ".checkboxExtension" ).each( function( ) {
                    if ( $( this ).attr( "checked" ) != false ) {
                        checkboxExtensionCount++;
                    }
                } );
                /*
                if ( checkboxExtensionCount > 0 ) {
                    domainListAllowed = 12 / checkboxExtensionCount;
                }*/
                
                if ( domainListAllowed > 1 ) {
                    domainListAllowed = 1;
                }
                domainListAllowed = parseInt( domainListAllowed );
                $( "#domainCheckAddMax" ).html( domainCheckDomainList.length + "/" + domainListAllowed + " domains&nbsp;" );
                
                if ( domainCheckDomainList.length >= domainListAllowed ) {
                    $( "#domainCheckAdd" ).attr( "disabled", "disabled" );
                }
                else {
                    $( "#domainCheckAdd" ).removeAttr( "disabled" );
                }
                
                return domainListAllowed;
            }
            
            $( ".checkboxExtension" ).click( function( ) {
                var checkboxExtensionCount = 0;
                $( ".checkboxExtension" ).each( function( ) {
                    if ( $( this ).attr( "checked" ) != false ) {
                        checkboxExtensionCount++;
                    }
                } );
                
                var checkboxExtensionAllowed = getMaxCheckboxCount( );
                if ( checkboxExtensionCount >= checkboxExtensionAllowed ) {
                    $( ".checkboxExtension" ).each( function( ) {
                        if ( $( this ).attr( "checked" ) == false ) {
                            $( this ).attr( { "disabled" : "disabled" } );
                        }
                    } );
                }
                else {
                    $( ".checkboxExtension" ).each( function( ) {
                        $( this ).removeAttr( "disabled" );
                    } );
                }
            } );
            
            function GotoStep2( ) {
                if ( domainCheckDomainList.length == 0 ) {
                    //SystemMessage( "Please add a domain to the domain list before searching for available domains.", 3000 );
                    SystemMessage( "Invalid Search", "Please add a domain to the domain list before searching for available domains.", "error", -1, true );
                    return;
                }
                
                var isChecked = false;
                
                var domainExtensionCheckedList = new Array( );
                var domainExtensionCount = 0;
                $( ".checkboxExtension" ).each( function( ) {
                    var checked = $( this ).attr( "checked" );
                    
                    if ( checked != false ) {
                        isChecked = true;
                        
                        domainExtensionCheckedList[domainExtensionCount] = $( this ).attr( "name" );
                        domainExtensionCount++;
                    }
                } );
                
                if ( !isChecked ) {
                    //SystemMessage( "Please select a domain extension such as .co.za before searching for available domains.", 3000 );
                    SystemMessage( "Missing Extension", "Please select a domain extension such as .co.za before searching for available domains", "error", -1, true );
                    return;
                }
                
                $( "#domainCheckField1" ).hide( );
                $( "#domainCheckField2Text" ).hide( );
                
                $( "#wizardNavBlock1" ).removeClass( "wizardNavigationCurrent" );
                $( "#wizardNavBlock1" ).addClass( "wizardNavigationComplete" );
                $( "#wizardNavBlock1" ).css( "color", "#818C96" );
                $( "#wizardNavBlock2" ).css( "color", "#FFFFFF" );
                $( "#wizardNavBlock1" ).css( "cursor", "pointer" );
                $( "#wizardNavBlock2" ).addClass( "wizardNavigationCurrent" );
                $( "#domainCheckFieldRegistrationGroup" ).html( "" );
                domainRegisterDomainList = new Array( );
                
                var scriptDomainname = "";
                for ( i = 0; i < domainCheckDomainList.length; i++ ) {
                    if ( i < domainCheckDomainList.length - 1 ) {
                        scriptDomainname += domainCheckDomainList[i] + ",";
                    }
                    else {
                        scriptDomainname += domainCheckDomainList[i];
                    }
                }
                
                var extensionBoxCount = 0;
                var extensionBoxList = new Array( );
                $( ".checkboxExtension" ).each( function( ) {
                    if ( $( this ).attr( "checked" ) == true ) {
                        extensionBoxList[extensionBoxCount] = $( this ).attr( "name" );
                        extensionBoxCount++;
                    }
                } );
                
                var scriptExtensions = "";
                for ( i = 0; i < extensionBoxList.length; i++ ) {
                    if ( i < extensionBoxList.length - 1 ) {
                        scriptExtensions += extensionBoxList[i] + ",";
                    }
                    else {
                        scriptExtensions += extensionBoxList[i];
                    }
                }
                
                //var height = calculatePageHeight( 0 );
                //$( "#divMainBox" ).css( "height", height + "px" );
                
                $.ajax( {
                    async: true,
                    type : "GET",
                    url  : "../PageScripts/domainCheck.php",
                    data : "domains=" + scriptDomainname + "&extensions=" + scriptExtensions,
                    dataType: "json",
                    beforeSend: function( ) {
                        $( "#domainCheckPleaseWait" ).show( );
                    },
                    success: function( output ) {
                        var jsonDomains   = scriptDomainname.split( "," );
                        var jsonExtension = scriptExtensions.split( "," );
                        var divAppend;
                        
                        //var height = calculatePageHeight( jsonDomains.length * ( jsonExtension.length + 2 ) );
                        //$( "#divMainBox" ).css( "height", height + "px" );
                
                        for ( i = 0; i < jsonDomains.length; i++ ) {
                            var thisdomainName = jsonDomains[i];
                            
                            if ( output[thisdomainName] != "undefined" /* && $( "#quickDomainname" ).val( ) == "" */ ) {
                                divAppend  = "<div class=\"domainCheckFieldResult\" style=\"margin-bottom: 5px; padding: 5px;\">";
                                divAppend += "<div><strong>Domain name: " + thisdomainName + "</strong></div>";
                                
                                divAppend += "<table style=\"width: 100%;\">";
                                for ( j = 0; j < jsonExtension.length; j++ ) {
                                    var thisextensionName = jsonExtension[j];
                                    var isQuickSearchExtension = true;
                                    
                                    if ( $( "#quickExtension" ).val( ) != "" ) {
                                        var quickExtension = $( "#quickExtension" ).val( ).split( "," );
                                        
                                        if ( str_replace( jsonExtension[j], ".", "" ) != quickExtension[0] ) {
                                            isQuickSearchExtension = false;
                                        }
                                    }
                                    
                                    if ( !isQuickSearchExtension ) {
                                        continue;
                                    }
                                    
                                    var extensionPricing = "0,0";
                                    $( ".checkboxExtension" ).each( function( ) {
                                        var checkName = $( this ).attr( "name" );
                                        
                                        if ( checkName == thisextensionName ) {
                                            extensionPricing = $( this ).attr( "rel" );
                                        }
                                    } );
                                    
                                    extensionPricing = extensionPricing.split( "," );
                                    
                                    if ( output[thisdomainName][thisextensionName] != "undefined" ) {
                                        var domainStatus;
                                        var domainExtraSelect;
                                        var domainPricing;
                                        
                                        if ( output[thisdomainName][thisextensionName] == "TAKEN" ) {
                                            domainPricing = "";
                                            domainStatus = "<font color=\"#CC0000\">NOT AVAILABLE</font>";
                                            domainExtraSelect = "";
                                        }
                                        else if ( output[thisdomainName][thisextensionName] == "AVAILABLE" ) {
                                            domainPricing = "<strong>R " + extensionPricing[0] + "</strong> <i>(Annual Renewal R " + extensionPricing[1] + ")</i>";
                                            domainStatus = "<font color=\"green\">AVAILABLE</font>";
                                            //domainExtraSelect = "<img style=\"cursor: pointer;\" src=\"/Media/Site/Icon/add.png\" class=\"domainCheckSearchAdd\" rel=\"" + extensionPricing[0] + "\" id=\"" + thisdomainName + "\" name=\"" + thisextensionName + "\" /> Add";
                                            //domainExtraSelect = "<label class=\"domainCheckSearchAdd\" rel=\"" + extensionPricing[0] + "\" id=\"" + thisdomainName + "\" name=\"" + thisextensionName + "\" style=\"width: 30px; height: 20px;\">[Add Domain]</label>&nbsp;";
                                            domainExtraSelect = "<input type=\"checkbox\" class=\"domainCheckSearchAdd\" rel=\"" + extensionPricing[0] + "\" id=\"" + thisdomainName + "\" name=\"" + thisextensionName + "\" style=\"width: 30px; height: 20px;\" />";
                                        }
                                        else {
                                            domainPricing = "";
                                            domainStatus = "<font color=\"#CC0000\">COULD NOT PROCESS</font>";
                                            domainExtraSelect = "";
                                        }
                                        divAppend += "<tr><td style=\"padding-left: 10px;\"><strong>Extension</strong></td><td style=\"width: 30px;\">" + thisextensionName + "</td><td style=\"padding-left: 15px;\"><strong>Status</strong></td><td style=\"padding: left: 10px; width: 85px;\">" + domainStatus + "</td><td style=\"padding-left: 20px; width: 160px;\">" + domainPricing + "</td><td style=\"padding-left: 25px; width: 80px;\">" + domainExtraSelect + "</td></tr>";
                                    }
                                }
                                divAppend += "</table>";
                                divAppend += "</div>";
                                
                                domainRegisterCost = 0;
                                
                                $( "#domainCheckFieldResultGroup" ).append( divAppend );
                            }
                            
                            if ( output[thisdomainName] != "undefined"  && $( "#quickExtension" ).val( ) != "" ) {
                                divAppend  = "<div class=\"domainCheckFieldResult\" style=\"margin-bottom: 5px; padding: 5px;\">";
                                divAppend += "<div><strong>Other Options: " + thisdomainName + "</strong></div>";
                                
                                divAppend += "<table style=\"width: 100%;\">";
                                for ( j = 0; j < jsonExtension.length; j++ ) {
                                    var thisextensionName = jsonExtension[j];
                                    var isQuickSearchExtension = true;
                                    var quickExtension = $( "#quickExtension" ).val( ).split( "," );
                                    
                                    if ( str_replace( jsonExtension[j], ".", "" ) != quickExtension[0] ) {
                                        isQuickSearchExtension = false;
                                    }
                                    
                                    if ( isQuickSearchExtension ) {
                                        continue;
                                    }
                                    
                                    var extensionPricing = "0,0";
                                    $( ".checkboxExtension" ).each( function( ) {
                                        var checkName = $( this ).attr( "name" );
                                        
                                        if ( checkName == thisextensionName ) {
                                            extensionPricing = $( this ).attr( "rel" );
                                        }
                                    } );
                                    
                                    extensionPricing = extensionPricing.split( "," );
                                    
                                    if ( output[thisdomainName][thisextensionName] != "undefined" ) {
                                        var domainStatus;
                                        var domainExtraSelect;
                                        var domainPricing;
                                        
                                        if ( output[thisdomainName][thisextensionName] == "TAKEN" ) {
                                            domainPricing = "";
                                            domainStatus = "<font color=\"#CC0000\">NOT AVAILABLE</font>";
                                            domainExtraSelect = "";
                                        }
                                        else if ( output[thisdomainName][thisextensionName] == "AVAILABLE" ) {
                                            domainPricing = "<strong>R " + extensionPricing[0] + "</strong> <i>(Annual Renewal R " + extensionPricing[1] + ")</i>";
                                            domainStatus = "<font color=\"green\">AVAILABLE</font>";
                                            //domainExtraSelect = "<img style=\"cursor: pointer;\" src=\"/Media/Site/Icon/add.png\" class=\"domainCheckSearchAdd\" rel=\"" + extensionPricing[0] + "\" id=\"" + thisdomainName + "\" name=\"" + thisextensionName + "\" /> Add";
                                            //domainExtraSelect = "<label class=\"domainCheckSearchAdd\" rel=\"" + extensionPricing[0] + "\" id=\"" + thisdomainName + "\" name=\"" + thisextensionName + "\" style=\"width: 30px; height: 20px;\">Add Domain</label>&nbsp;";
                                            domainExtraSelect = "<input type=\"checkbox\" class=\"domainCheckSearchAdd\" rel=\"" + extensionPricing[0] + "\" id=\"" + thisdomainName + "\" name=\"" + thisextensionName + "\" style=\"width: 30px; height: 20px;\" />Add";
                                        }
                                        else {
                                            domainPricing = "";
                                            domainStatus = "<font color=\"#CC0000\">COULD NOT PROCESS</font>";
                                            domainExtraSelect = "";
                                        }
                                        divAppend += "<tr><td style=\"padding-left: 10px;\"><strong>Extension</strong></td><td style=\"width: 30px;\">" + thisextensionName + "</td><td style=\"padding-left: 15px;\"><strong>Status</strong></td><td style=\"padding: left: 10px; width: 85px;\">" + domainStatus + "</td><td style=\"padding-left: 20px; width: 160px;\">" + domainPricing + "</td><td style=\"padding-left: 25px; width: 80px;\">" + domainExtraSelect + "</td></tr>";
                                    }
                                }
                                divAppend += "</table>";
                                divAppend += "</div>";
                                
                                domainRegisterCost = 0;
                                
                                $( "#domainCheckFieldResultGroup" ).append( divAppend );
                            }
                        }
                        $( "#domainCheckPleaseWait" ).hide( );
                        $( "#domainCheckField2Text" ).show( );
                        $( "#domainCheckField2" ).show( );
                    },
                    error: function( ) {
                        //SystemMessage( "An error seemed to have occured. Please try again.", 3000 );
                        SystemMessage( "Error (domainCheck)", "An error seemed to have occured while trying to process your request. Please try again.", "error", -1, true );
                        return;
                    }
                } );
            }
            
            var quickDomain = $( "#quickDomainname" ).val( );
            if ( quickDomain != "" ) {
                AddDomainToList( quickDomain );
                GotoStep2( );
            }
            
            $( "#domainCheckSearch" ).livequery( "click", function( ) {
                GotoStep2( );
            } );
            
            function GotoStep3( ) {
                if ( domainRegisterDomainList.length == 0 ) {
                    //SystemMessage( "Please select a domain you want to register first.", 3000 );
                    SystemMessage( "Supply Domain name", "Please select the domain(s) you want to register first before continueing.", "error", -1, true );
                    return;
                }
                
                $( "#domainCheckField2" ).hide( );
                $( "#domainCheckField3" ).show( );
                
                $( "#wizardNavBlock2" ).removeClass( "wizardNavigationCurrent" );
                $( "#wizardNavBlock2" ).addClass( "wizardNavigationComplete" );
                $( "#wizardNavBlock2" ).css( "cursor", "pointer" );
                $( "#wizardNavBlock3" ).addClass( "wizardNavigationFinal" );
                $( "#wizardNavBlock2" ).css( "color", "#818C96" );
                
                $( "#domainCheclFieldRegistrationPrice" ).html( "You have selected the following domain(s) for registration bringing the total registration fee to R " + parseFloat( domainRegisterCost ) + "." );
                $( "#domainCheckFieldRegistrationGroupFinal" ).html( "" );
                var domainsToList = "www." + domainRegisterDomainList[0];
                for ( i = 1; i < domainRegisterDomainList.length; i++ ) {
                    domainsToList += ", www." + domainRegisterDomainList[i];
                }
                $( "#domainCheckFieldRegistrationGroupFinal" ).append( "<div style=\"padding-left: 20px;\">" + domainsToList + "</div>" );
                //var height = calculatePageHeight( domainRegisterDomainList );
                //$( "#divMainBox" ).css( "height", height + "px" );
            }
            
            $( "#domainRegister" ).livequery( "click", function( ) {
                GotoStep3( );
            } );
            
            function domainCheckSearchAdd( id, name ) {
                var domainName      = $( id ).attr( "id" );
                var domainExtension = name;
                var domainPrice     = $( id ).attr( "rel" );
                var domainRegister  = new Array( );
                
                var domainCount = 0;
                for ( i = 0; i < domainRegisterDomainList.length; i++ ) {
                    if ( domainRegisterDomainList[i] == domainName + domainExtension ) {
                        //SystemMessage( "You have already listed the domain for registration.", 3000 );
                        SystemMessage( "Domain Listed", "You have already listed the domain for registration.", "error", -1, true );
                        return;
                    }
                    
                    domainRegister[domainCount] = domainRegisterDomainList[i];
                    domainCount++;
                }
                domainRegister[domainCount] = domainName + domainExtension;
                domainRegisterCost += parseFloat( domainPrice );
                
                domainRegisterDomainList = domainRegister;
                
                //anton
                //var height = calculatePageHeight( domainRegisterDomainList ) + $( "#domainCheckFieldResultGroup" ).height( );
                //$( "#divMainBox" ).css( "height", height + "px" );

                $( "#domainCheckFieldRegistrationGroup" ).append( "<div id=\"domainRegisterList" + domainRegisterHigh + "\" class=\"domainListingRigsterGroup\" style=\"line-height: 10px; padding-right: 30px;\"><label id=\"" + domainRegisterHigh + "\" class=\"domainRegisterRemoveListing\" rel=\"" + domainPrice + "\" name=\"" + domainName + domainExtension + "\">[Remove]&nbsp;</label>" + domainName + domainExtension + "</div>" );
                $( id ).val( domainRegisterHigh );
                domainRegisterHigh++;
            }
            
            function domainCheckSearchRemove( id, domainName ) {
                var parentID   = "#domainRegisterList" + $( id ).val( );
                var domainRegister  = new Array( );
                var domainPrice = $( id ).attr( "rel" );
                
                var domainCount = 0;
                for ( i = 0; i < domainRegisterDomainList.length; i++ ) {
                    if ( domainRegisterDomainList[i] != domainName ) {
                        domainRegister[domainCount] = domainRegisterDomainList[i];
                        domainCount++;
                    }
                }
                domainRegisterDomainList = domainRegister;
                domainRegisterCost -= parseFloat( domainPrice );
                
                //anton
                //var height = calculatePageHeight( domainRegisterDomainList ) + $( "#domainCheckFieldResultGroup" ).height( );
                //$( "#divMainBox" ).css( "height", height + "px" );
                
                $( parentID ).remove( );
            }
            
            $( ".domainCheckSearchAdd" ).livequery( "click", function( ) {
                var elementID = $( this ).attr( "id" ) + $( this ).attr( "name" );
                
                $( ".domainCheckSearchAdd" ).each( function( ) {
                    if ( $( this ).attr( "id" ) + $( this ).attr( "name" ) == elementID ) {
                        if ( $( this ).attr( "checked" ) == true ) {
                            domainCheckSearchAdd( "#" + $( this ).attr( "id" ), $( this ).attr( "name" ) );
                        }
                        else {
                            domainCheckSearchRemove( "#" + $( this ).attr( "id" ), elementID );
                        }
                    }
                } );
            } );
                
            $( ".domainRegisterRemoveListing" ).livequery( "click", function( ) {
            } );
            
            function wizardNavBlock1Click( ) {
                if ( $( "#wizardNavBlock1" ).hasClass( "wizardNavigationComplete" ) ) {
                    $( "#wizardNavBlock1" ).removeClass( "wizardNavigationComplete" );
                    $( "#wizardNavBlock1" ).addClass( "wizardNavigationCurrent" );
                    $( "#wizardNavBlock1" ).css( "cursor", "" );
                    
                    $( "#wizardNavBlock1" ).css( "color", "white" );
                    $( "#wizardNavBlock2" ).removeClass( "wizardNavigationCurrent" );
                    $( "#wizardNavBlock2" ).removeClass( "wizardNavigationComplete" );
                    $( "#wizardNavBlock3" ).removeClass( "wizardNavigationCurrent" );
                    $( "#wizardNavBlock3" ).removeClass( "wizardNavigationFinal" );
                    $( "#domainCheckField1" ).show( );
                    $( "#domainCheckField2" ).hide( );
                    $( "#domainCheckField3" ).hide( );
                    $( "#domainCheckFieldResultGroup" ).html( "" );
                    $( "#wizardNavBlock2" ).css( "color", "#000000" );
                    
                    if ( $( "#quickExtension" ).val( ) != "" ) {
                        var quickExtension = $( "#quickExtension" ).val( ).split( "," );
                        $( "#quickExtension" ).val( "" );
                        
                        $( ".checkboxExtension" ).each( function( ) {
                            if ( str_replace( $( this ).attr( "name" ), ".", "" ) != quickExtension[0] ) {
                                $( this ).removeAttr( "checked" );
                            }
                        } );
                    }
                }
            }
            $( "#wizardNavBlock1" ).livequery( "click", function( ) {
                wizardNavBlock1Click( );
            } );
            
            $( "#wizardNavBlock2" ).livequery( "click", function( ) {
                if ( $( this ).hasClass( "wizardNavigationComplete" ) ) {
                    $( this ).removeClass( "wizardNavigationComplete" );
                    $( this ).addClass( "wizardNavigationCurrent" );
                    $( this ).css( "cursor", "" );
                    
                    $( "#wizardNavBlock3" ).removeClass( "wizardNavigationCurrent" );
                    $( "#wizardNavBlock3" ).removeClass( "wizardNavigationFinal" );
                    $( "#domainCheckField2" ).show( );
                    $( "#domainCheckField3" ).hide( );
                    $( "#domainCheckField1" ).hide( );
                    //$( "#domainCheckFieldResultGroup" ).html( "" );
                    $( "#wizardNavBlock2" ).css( "color", "#FFFFFF" );
                }
            } );
            
            $( "#wizardNavBlock1, #wizardNavBlock2" ).mouseover( function( ) {
                if ( $( this ).hasClass( "wizardNavigationComplete" ) ) {
                    $( this ).css( "color", "#FFFFFF" );
                }
            } );
            
            $( "#wizardNavBlock1, #wizardNavBlock2" ).mouseout( function( ) {
                if ( $( this ).hasClass( "wizardNavigationComplete" ) ) {
                    $( this ).css( "color", "#818C96" );
                }
            } );
            
            $( "#domainRegisterComplete" ).livequery( "click", function( ) {
                var needEntry = false;
                
                $( ".domainInput" ).each( function( ) {
                    if ( $( this ).attr( "id" ) != "inputDomainVatNumber" && $( this ).attr ("id" ) != "inputDomainFaxNumber" ) {
                        if ( $( this ).val( ) == "" ) {
                            needEntry = true;
                            $( this ).addClass( "validateError" );
                        }
                        else {
                            if ( $( this ).hasClass( "validateError" ) ) {
                                $( this ).removeClass( "validateError" );
                            }
                        }
                    }
                } );
                
                if ( needEntry ) {
                    //SystemMessage( "Please ensure that all fields currently indicated with a red border are filled in.", 4000 );
                    SystemMessage( "Enter required fields", "Please ensure that all the fields currently indicated with a red border is filled in before continueing.", "error", -1, true );
                    return;
                }
                
                if ( $( "#tocAgree" ).attr( "checked" ) == false ) {
                    //SystemMessage( "Please read and agree to our terms and conditions before continueing.", 3000 );
                    SystemMessage( "Terms and Conditions", "Please read and agree to our Terms and Conditions before continueing.", "error", -1, true );
                    return;
                }
                
                $( ".domainRegisterListGenerated" ).each( function( ) {
                    $( this ).remove( );
                } );
                
                for ( i = 0; i < domainRegisterDomainList.length; i++ ) {
                    var domainBox = "<input type=\"text\" name=\"domainRegisterList[]\" class=\"domainRegisterListGenerated\" style=\"display: none;\" value=\"" + domainRegisterDomainList[i] + "\" />";
                    
                    $( "#formRegistrationComplete" ).append( domainBox );
                }
                
                var parameters = $( "#formRegistrationComplete" ).serialize( );
                
                $.ajax( {
                    async: false,
                    type : "post",
                    url  : "../PageScripts/domainSendMail.php",
                    data : parameters,
                    dataType: "json",
                    success: function( output ) {
                        var message = "";
                        var field   = "";
                        
                        if ( output["error"] == true ) {
                            switch ( output["field"] ) {
                                case "inputDomainCompanyname"    : field = "Company Name"; break;
                                case "inputDomainConatactPerson" : field = "Contact Person"; break;
                                case "inputDomainPhysicalAddress": field = "Physical Address"; break;
                                case "inputDomainPostalAddress"  : field = "Postal Address"; break;
                                case "inputDomainEmailAddress"   : field = "Email Address"; break;
                                case "inputDomainVatNumber"      : field = "Vat Number"; break;
                                case "inputDomainPhonenumber"    : field = "Phone Number"; break;
                                case "inputDomainFaxNumber"      : field = "Fax Number"; break;
                                case "inputDomainComments"       : field = "Comments"; break;
                            }
                            switch ( output["desc"] ) {
                                case "url_in_field":
                                    message = "An invalid entry was detected in the " + field + " box. This box does not allow for url's to be entered.";
                                    break;
                                case "invalid_email":
                                    message = "An invalid entry was detected in the " + field + " box. Please supply a valid e-mail address.";
                                    break;
                            }
                        }
                        else {
                            switch ( output["desc"] ) {
                                case "mail_successful":
                                    message = "Thank you, your request has been sent through and we will contact your shortly.";
                                    break;
                            }
                        }
                        
                        if ( message != "" ) {
                            if ( output["desc"] == "mail_successful" ) {
                                $( "#domainCheckPleaseWait" ).hide( );
                                SystemMessage( "Request Complete", message, "success", 5000, true );
                                wizardNavBlock1Click( );
                            }
                            else {
                                SystemMessage( "Invalid Entry", message, "error", -1, true );
                            }
                            
                            return;
                        }
                    },
                    error: function( ) {
                        //SystemMessage( "An error occurred while trying to process your request. Please try again.", 3000 );
                        SystemMessage( "Error (domainSendMail)", "An error seemed to have occured while trying to process your request. Please try again.", "error", -1, true );
                        return;
                    }
                } );
            } );
            
            $( ".domainInput" ).change( function( ) {
                if ( $( this ).hasClass( "validateError" ) && $( this ).val( ) != "" ) {
                    $( this ).removeClass( "validateError" );
                }
            } );
            
            function str_replace( haystack, needle, replacement ) {
                var string = haystack.split( needle );
                var returnString = "";
                
                for ( i = 0; i < string.length; i++ ) {
                    returnString += string[i] + replacement;
                }
                
                return returnString;
            }
            
            $( ".divFootNavSection" ).each( function( ) {
                $( this ).css( "height", "190px" );
            } );
        } );

