IE7 et BO XI R2 version 11.5.0.0

Dans le cadre de notre projet on utilise BO XI R2 version 11.5.0.0 ( Web intelligence + Designer ) je souhaite savoir si ils sont compatible avec IE7.
je vous remercie pour votre aide.
Cordialement

oui IE7 est soutenu sur XIR2
Respect,
Tim

Similar Messages

  • IE7 and BO XI R2 version 11.5.0.0

    I wonder if BO XI R2 version 11.5.0.0 is compatible with IE7.
    Best Regards

    Hi Alain,
    Following are the details of the supported version of the supported IE for the Windows platform.
    IE 6.0 SP1
    IE 6.0 SP2
    IE 7.0 (3)
    Note:- (3) Support for EPM products and Process Tracker planned post XI R2 General Availability.
    I hope this helps you.
    Regards,
    Prashant
    Edited by: Prashant Saduwale on Nov 5, 2008 1:32 PM

  • I have an app that only works on IE7 is there a firefox version equivalent to IE&7?

    My LTS 2808me DVR's only work on IE7, and I can no longer down garde that far to IE7 on my windows laptop. I was told that firefox has a version equilent to IE7 , how do I download it?

    If that application is using proprietary IE (MS) code then it will only work in IE and not in Firefox.
    You can install a portable (ESR) Firefox version to access websites that do not work with the current Firefox release.
    The portable version comes with its own profile folder and doesn't interfere with the currently installed release version.
    *http://portableapps.com/apps/internet/firefox_portable
    *http://portableapps.com/apps/internet/firefox_portable-esr

  • Need web player version 7 cab file

    I read that the 2004 web player does not work in IE7, but the
    web player version 7 does. Does anyone know how to download the
    installer version for 7 (awswax70.cab)? We need the installer to
    run from a CD.
    Thanks.

    > Here is frameset that I tried and it seemed to do the
    trick.
    >
    > Create a new .HTM file, adjust the gintFileWidth and
    gintFileHeight var to
    > the
    > size of your interface, then and save this file in your
    source files root.
    > Reference this file, instead of the index.HTM, to launch
    the course.
    > // can also look for > 5.00, too
    > var intVersionTemp =
    parseFloat(strAgt.substring(strAgt.indexO
    Your code seems to be cut off in its prime :-(
    Steve
    EuroTAAC eLearning 2007
    http://www.eurotaac.com
    Adobe Community Expert: Authorware, Flash Mobile and Devices
    My blog -
    http://stevehoward.blogspot.com/
    Authorware tips -
    http://www.tomorrows-key.com

  • On a form w Validation, how to redirect to a custom page

    Hi. I have created a form in Dreamweaver CS5 that uses spry validation successfully. Once the form is submitted, the user is redirected to the home page. But I don't want that redirect.
    My question is, how can I have the validated page redirect to a custom thank you page I designed? I don't know the exact code/syntax to write to make it do what I want and, even if I had the code, I wouldn't know exactly where it should be placed. Please help if you can. Here's the source code. )BTW, when I use Dreamweaver Behaviors to add a URL redirect, it ignores the required validation and simply allows you to click the submit button and redirect.) Many thanks!
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="UTF-8">
    <link href="../_css/main.css" rel="stylesheet" media="screen, projection">
    <link href="../_css/forms.css" rel="stylesheet" media="screen, projection">
    <title></title>
    <!--[if lt IE 9]>
    <script src="http://ie7-js.googlecode.com/svn/version/2.1(beta4)/IE9.js"></script><![endif]-->
    <script src="../SpryAssets/SpryValidationTextField.js" type="text/javascript"></script>
    <link href="../SpryAssets/SpryValidationTextField.css" rel="stylesheet" type="text/css">
    <script type="text/javascript">
    <!-- **** I think the line of code for the redirect is here??...I just don't know how to write the code to redirect to the page I want ***** -->
    function MM_goToURL() { //v3.0
      var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
      for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
    </script>
    </head>
    <body>
    <header id="pageHeader">
    <a href="../index.htm"><img src="../_images/logo.gif" width="170" height="91" alt="HMN logo" id="logo"></a>
    <img src="../_images/tagline.png" width="296" height="92" alt="HMN tagline" id="tagline">
    </header>
    <nav id="mainNav">
    <ul>
    <li><a href="../index.htm">Home</a></li>
    <li><a href="../press.htm">Press</a></li>
    <li><a href="../about.htm">About</a></li>
    <li><a href="../contact.htm">Contact</a></li>
    </ul>
    </nav>
    <br class="clear">
    <div class="headerContact">
    </div>
    <article>
      <!-- The file webformmailer.php sits on the web server at godaddy.com in case that matters -->
    <section id="Request">
    <p id="intro">To request your link for the downloadable <span id="highlight">Media Kit</span>, please provide the following information:</p>
    <form name="Request" method="post" action="../../webformmailer.php"> <p id="formCaption">Fields marked with * are required.</p>
      <p><span id="sprytextfield1">
        <label for="first_name">First Name:*</label>
        <input type="text" name="first_name" id="first_name">
        <span class="textfieldRequiredMsg">(required)</span></span></p>
      <p><span id="sprytextfield2">
        <label for="last_name">Last Name:*</label>
        <input type="text" name="last_name" id="last_name">
        <span class="textfieldRequiredMsg">(required)</span></span></p>
      <p><span id="sprytextfield3">
        <label for="company">Company:*</label>
        <input type="text" name="company" id="company">
        <span class="textfieldRequiredMsg">(required)</span></span></p>
      <p>
        <label for="address">Address:</label>
        <input type="text" name="address" id="address">
      </p>
      <p>
        <label for="address_2">Address 2:</label>
        <input type="text" name="address_2" id="address_2">
      </p>
      <p>
        <label for="city">City:</label>
        <input type="text" name="city" id="city">
      </p>
      <p>
        <label for="state">State:</label>
        <input type="text" name="state" id="state">
      </p>
      <p>
        <label for="zip">Zip:</label>
        <input type="text" name="zip" id="zip">
      </p>
      <p><span id="sprytextfield4">
      <label for="email">Email:*</label>
      <input type="text" name="email" id="email">
      <span class="textfieldRequiredMsg">(required)</span><span class="textfieldInvalidFormatMsg">Invalid format.</span></span> </p>
      <p>
      <input name="submit" type="image" id="submit" onClick="MM_goToURL('parent','media_kit_download.htm');return document.MM_returnValue" src="../_images/btn_submit.png">
      </p>
      <p> </p>
    </form>
    <p>
    </p>
    </div>
    </div>
    </section>
    </article>
    <script type="text/javascript">
    var sprytextfield1 = new Spry.Widget.ValidationTextField("sprytextfield1", "none", {validateOn:["blur"]});
    var sprytextfield2 = new Spry.Widget.ValidationTextField("sprytextfield2", "none", {validateOn:["blur"]});
    var sprytextfield3 = new Spry.Widget.ValidationTextField("sprytextfield3", "none", {validateOn:["blur"]});
    var sprytextfield4 = new Spry.Widget.ValidationTextField("sprytextfield4", "email", {validateOn:["blur"]});
    </script>
    </body>
    </html>

    Thanks for replying. The  URL you've bolded is actually the correct page I'd like the redirect to go to when the form is successfully submitted after validation. But for some reason, that URL request is being ignored and the redirect brings me back to the index page in the root directory. I don't see anywhere in the code that makes the request to do that. Unless that's a default behavior if I've gotten the redirect wrong?
    I don't know if this is helpful, but there is also a .js file that Dreamweaver created and attached to the above HTML source file. The .js file appears to have all the spry code validation including code for features and widgets I'm not even using. I searched through the code several times trying to identify where there might be a redirect to the index page but didn't recognize anything that made sense to me. Here is the complete, unedited file:
    // SpryValidationTextField.js - version 0.38 - Spry Pre-Release 1.6.1
    // Copyright (c) 2006. Adobe Systems Incorporated.
    // All rights reserved.
    // Redistribution and use in source and binary forms, with or without
    // modification, are permitted provided that the following conditions are met:
    //   * Redistributions of source code must retain the above copyright notice,
    //     this list of conditions and the following disclaimer.
    //   * Redistributions in binary form must reproduce the above copyright notice,
    //     this list of conditions and the following disclaimer in the documentation
    //     and/or other materials provided with the distribution.
    //   * Neither the name of Adobe Systems Incorporated nor the names of its
    //     contributors may be used to endorse or promote products derived from this
    //     software without specific prior written permission.
    // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
    // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
    // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
    // POSSIBILITY OF SUCH DAMAGE.
    (function() { // BeginSpryComponent
    if (typeof Spry == "undefined") window.Spry = {}; if (!Spry.Widget) Spry.Widget = {};
    Spry.Widget.BrowserSniff = function()
        var b = navigator.appName.toString();
        var up = navigator.platform.toString();
        var ua = navigator.userAgent.toString();
        this.mozilla = this.ie = this.opera = this.safari = false;
        var re_opera = /Opera.([0-9\.]*)/i;
        var re_msie = /MSIE.([0-9\.]*)/i;
        var re_gecko = /gecko/i;
        var re_safari = /(applewebkit|safari)\/([\d\.]*)/i;
        var r = false;
        if ( (r = ua.match(re_opera))) {
            this.opera = true;
            this.version = parseFloat(r[1]);
        } else if ( (r = ua.match(re_msie))) {
            this.ie = true;
            this.version = parseFloat(r[1]);
        } else if ( (r = ua.match(re_safari))) {
            this.safari = true;
            this.version = parseFloat(r[2]);
        } else if (ua.match(re_gecko)) {
            var re_gecko_version = /rv:\s*([0-9\.]+)/i;
            r = ua.match(re_gecko_version);
            this.mozilla = true;
            this.version = parseFloat(r[1]);
        this.windows = this.mac = this.linux = false;
        this.Platform = ua.match(/windows/i) ? "windows" :
                        (ua.match(/linux/i) ? "linux" :
                        (ua.match(/mac/i) ? "mac" :
                        ua.match(/unix/i)? "unix" : "unknown"));
        this[this.Platform] = true;
        this.v = this.version;
        if (this.safari && this.mac && this.mozilla) {
            this.mozilla = false;
    Spry.is = new Spry.Widget.BrowserSniff();
    Spry.Widget.ValidationTextField = function(element, type, options)
        type = Spry.Widget.Utils.firstValid(type, "none");
        if (typeof type != 'string') {
            this.showError('The second parameter in the constructor should be the validation type, the options are the third parameter.');
            return;
        if (typeof Spry.Widget.ValidationTextField.ValidationDescriptors[type] == 'undefined') {
            this.showError('Unknown validation type received as the second parameter.');
            return;
        options = Spry.Widget.Utils.firstValid(options, {});
        this.type = type;
        if (!this.isBrowserSupported()) {
            //disable character masking and pattern behaviors for low level browsers
            options.useCharacterMasking = false;
        this.init(element, options);
        //make sure we validate at least on submit
        var validateOn = ['submit'].concat(Spry.Widget.Utils.firstValid(this.options.validateOn, []));
        validateOn = validateOn.join(",");
        this.validateOn = 0;
        this.validateOn = this.validateOn | (validateOn.indexOf('submit') != -1 ? Spry.Widget.ValidationTextField.ONSUBMIT : 0);
        this.validateOn = this.validateOn | (validateOn.indexOf('blur') != -1 ? Spry.Widget.ValidationTextField.ONBLUR : 0);
        this.validateOn = this.validateOn | (validateOn.indexOf('change') != -1 ? Spry.Widget.ValidationTextField.ONCHANGE : 0);
        if (Spry.Widget.ValidationTextField.onloadDidFire)
            this.attachBehaviors();
        else
            Spry.Widget.ValidationTextField.loadQueue.push(this);
    Spry.Widget.ValidationTextField.ONCHANGE = 1;
    Spry.Widget.ValidationTextField.ONBLUR = 2;
    Spry.Widget.ValidationTextField.ONSUBMIT = 4;
    Spry.Widget.ValidationTextField.ERROR_REQUIRED = 1;
    Spry.Widget.ValidationTextField.ERROR_FORMAT = 2;
    Spry.Widget.ValidationTextField.ERROR_RANGE_MIN = 4;
    Spry.Widget.ValidationTextField.ERROR_RANGE_MAX = 8;
    Spry.Widget.ValidationTextField.ERROR_CHARS_MIN = 16;
    Spry.Widget.ValidationTextField.ERROR_CHARS_MAX = 32;
    /* validation parameters:
    *  - characterMasking : prevent typing of characters not matching an regular expression
    *  - regExpFilter : additional regular expression to disalow typing of characters
    *        (like the "-" sign in the middle of the value); use for partial matching of the currently typed value;
    *         the typed value must match regExpFilter at any moment
    *  - pattern : enforce character on each position inside a pattern (AX0?)
    *  - validation : function performing logic validation; return false if failed and the typedValue value on success
    *  - minValue, maxValue : range validation; check if typedValue inside the specified range
    *  - minChars, maxChars : value length validation; at least/at most number of characters
    Spry.Widget.ValidationTextField.ValidationDescriptors = {
        'none': {
        'custom': {
        'integer': {
            characterMasking: /[\-\+\d]/,
            regExpFilter: /^[\-\+]?\d*$/,
            validation: function(value, options) {
                if (value == '' || value == '-' || value == '+') {
                    return false;
                var regExp = /^[\-\+]?\d*$/;
                if (!regExp.test(value)) {
                    return false;
                options = options || {allowNegative:false};
                var ret = parseInt(value, 10);
                if (!isNaN(ret)) {
                    var allowNegative = true;
                    if (typeof options.allowNegative != 'undefined' && options.allowNegative == false) {
                        allowNegative = false;
                    if (!allowNegative && value < 0) {
                        ret = false;
                } else {
                    ret = false;
                return ret;
        'real': {
            characterMasking: /[\d\.,\-\+e]/i,
            regExpFilter: /^[\-\+]?\d(?:|\.,\d{0,2})|(?:|e{0,1}[\-\+]?\d{0,})$/i,
            validation: function (value, options) {
                var regExp = /^[\+\-]?[0-9]+([\.,][0-9]+)?([eE]{0,1}[\-\+]?[0-9]+)?$/;
                if (!regExp.test(value)) {
                    return false;
                var ret = parseFloat(value);
                if (isNaN(ret)) {
                    ret = false;
                return ret;
        'currency': {
            formats: {
                'dot_comma': {
                    characterMasking: /[\d\.\,\-\+\$]/,
                    regExpFilter: /^[\-\+]?(?:[\d\.]*)+(|\,\d{0,2})$/,
                    validation: function(value, options) {
                        var ret = false;
                        //2 or no digits after the comma
                        if (/^(\-|\+)?\d{1,3}(?:\.\d{3})*(?:\,\d{2}|)$/.test(value) || /^(\-|\+)?\d+(?:\,\d{2}|)$/.test(value)) {
                            value = value.toString().replace(/\./gi, '').replace(/\,/, '.');
                            ret = parseFloat(value);
                        return ret;
                'comma_dot': {
                    characterMasking: /[\d\.\,\-\+\$]/,
                    regExpFilter: /^[\-\+]?(?:[\d\,]*)+(|\.\d{0,2})$/,
                    validation: function(value, options) {
                        var ret = false;
                        //2 or no digits after the comma
                        if (/^(\-|\+)?\d{1,3}(?:\,\d{3})*(?:\.\d{2}|)$/.test(value) || /^(\-|\+)?\d+(?:\.\d{2}|)$/.test(value)) {
                            value = value.toString().replace(/\,/gi, '');
                            ret = parseFloat(value);
                        return ret;
        'email': {
            characterMasking: /[^\s]/,
            validation: function(value, options) {
                var rx = /^[\w\.-]+@[\w\.-]+\.\w+$/i;
                return rx.test(value);
        'date': {
            validation: function(value, options) {
                var formatRegExp = /^([mdy]+)[\.\-\/\\\s]+([mdy]+)[\.\-\/\\\s]+([mdy]+)$/i;
                var valueRegExp = this.dateValidationPattern;
                var formatGroups = options.format.match(formatRegExp);
                var valueGroups = value.match(valueRegExp);
                if (formatGroups !== null && valueGroups !== null) {
                    var dayIndex = -1;
                    var monthIndex = -1;
                    var yearIndex = -1;
                    for (var i=1; i<formatGroups.length; i++) {
                        switch (formatGroups[i].toLowerCase()) {
                            case "dd":
                                dayIndex = i;
                                break;
                            case "mm":
                                monthIndex = i;
                                break;
                            case "yy":
                            case "yyyy":
                                yearIndex = i;
                                break;
                    if (dayIndex != -1 && monthIndex != -1 && yearIndex != -1) {
                        var maxDay = -1;
                        var theDay = parseInt(valueGroups[dayIndex], 10);
                        var theMonth = parseInt(valueGroups[monthIndex], 10);
                        var theYear = parseInt(valueGroups[yearIndex], 10);
                        // Check month value to be between 1..12
                        if (theMonth < 1 || theMonth > 12) {
                            return false;
                        // Calculate the maxDay according to the current month
                        switch (theMonth) {
                            case 1:    // January
                            case 3: // March
                            case 5: // May
                            case 7: // July
                            case 8: // August
                            case 10: // October
                            case 12: // December
                                maxDay = 31;
                                break;
                            case 4:    // April
                            case 6: // June
                            case 9: // September
                            case 11: // November
                                maxDay = 30;
                                break;
                            case 2: // February
                                if ((parseInt(theYear/4, 10) * 4 == theYear) && (theYear % 100 != 0 || theYear % 400 == 0)) {
                                    maxDay = 29;
                                } else {
                                    maxDay = 28;
                                break;
                        // Check day value to be between 1..maxDay
                        if (theDay < 1 || theDay > maxDay) {
                            return false;
                        // If successfull we'll return the date object
                        return (new Date(theYear, theMonth - 1, theDay));   //JavaScript requires a month between 0 and 11
                } else {
                    return false;
        'time': {
            validation: function(value, options) {
                //    HH:MM:SS T
                var formatRegExp = /([hmst]+)/gi;
                var valueRegExp = /(\d+|AM?|PM?)/gi;
                var formatGroups = options.format.match(formatRegExp);
                var valueGroups = value.match(valueRegExp);
                //mast match and have same length
                if (formatGroups !== null && valueGroups !== null) {
                    if (formatGroups.length != valueGroups.length) {
                        return false;
                    var hourIndex = -1;
                    var minuteIndex = -1;
                    var secondIndex = -1;
                    //T is AM or PM
                    var tIndex = -1;
                    var theHour = 0, theMinute = 0, theSecond = 0, theT = 'AM';
                    for (var i=0; i<formatGroups.length; i++) {
                        switch (formatGroups[i].toLowerCase()) {
                            case "hh":
                                hourIndex = i;
                                break;
                            case "mm":
                                minuteIndex = i;
                                break;
                            case "ss":
                                secondIndex = i;
                                break;
                            case "t":
                            case "tt":
                                tIndex = i;
                                break;
                    if (hourIndex != -1) {
                        var theHour = parseInt(valueGroups[hourIndex], 10);
                        if (isNaN(theHour) || theHour > (formatGroups[hourIndex] == 'HH' ? 23 : 12 )) {
                            return false;
                    if (minuteIndex != -1) {
                        var theMinute = parseInt(valueGroups[minuteIndex], 10);
                        if (isNaN(theMinute) || theMinute > 59) {
                            return false;
                    if (secondIndex != -1) {
                        var theSecond = parseInt(valueGroups[secondIndex], 10);
                        if (isNaN(theSecond) || theSecond > 59) {
                            return false;
                    if (tIndex != -1) {
                        var theT = valueGroups[tIndex].toUpperCase();
                        if (
                            formatGroups[tIndex].toUpperCase() == 'TT' && !/^a|pm$/i.test(theT) ||
                            formatGroups[tIndex].toUpperCase() == 'T' && !/^a|p$/i.test(theT)
                            return false;
                    var date = new Date(2000, 0, 1, theHour + (theT.charAt(0) == 'P'?12:0), theMinute, theSecond);
                    return date;
                } else {
                    return false;
        'credit_card': {
            characterMasking: /\d/,
            validation: function(value, options) {
                var regExp = null;
                options.format = options.format || 'ALL';
                switch (options.format.toUpperCase()) {
                    case 'ALL': regExp = /^[3-6]{1}[0-9]{12,18}$/; break;
                    case 'VISA': regExp = /^4(?:[0-9]{12}|[0-9]{15})$/; break;
                    case 'MASTERCARD': regExp = /^5[1-5]{1}[0-9]{14}$/; break;
                    case 'AMEX': regExp = /^3(4|7){1}[0-9]{13}$/; break;
                    case 'DISCOVER': regExp = /^6011[0-9]{12}$/; break;
                    case 'DINERSCLUB': regExp = /^3(?:(0[0-5]{1}[0-9]{11})|(6[0-9]{12})|(8[0-9]{12}))$/; break;
                if (!regExp.test(value)) {
                    return false;
                var digits = [];
                var j = 1, digit = '';
                for (var i = value.length - 1; i >= 0; i--) {
                    if ((j%2) == 0) {
                        digit = parseInt(value.charAt(i), 10) * 2;
                        digits[digits.length] = digit.toString().charAt(0);
                        if (digit.toString().length == 2) {
                            digits[digits.length] = digit.toString().charAt(1);
                    } else {
                        digit = value.charAt(i);
                        digits[digits.length] = digit;
                    j++;
                var sum = 0;
                for(i=0; i < digits.length; i++ ) {
                    sum += parseInt(digits[i], 10);
                if ((sum%10) == 0) {
                    return true;
                return false;
        'zip_code': {
            formats: {
                'zip_us9': {
                    pattern:'00000-0000'
                'zip_us5': {
                    pattern:'00000'
                'zip_uk': {
                    characterMasking: /[\dA-Z\s]/,
                    validation: function(value, options) {
                        //check one of the following masks
                        // AN NAA, ANA NAA, ANN NAA, AAN NAA, AANA NAA, AANN NAA
                        return /^[A-Z]{1,2}\d[\dA-Z]?\s?\d[A-Z]{2}$/.test(value);
                'zip_canada': {
                    characterMasking: /[\dA-Z\s]/,
                    pattern: 'A0A 0A0'
                'zip_custom': {}
        'phone_number': {
            formats: {
                //US phone number; 10 digits
                'phone_us': {
                    pattern:'(000) 000-0000'
                'phone_custom': {}
        'social_security_number': {
            pattern:'000-00-0000'
        'ip': {
            characterMaskingFormats: {
                'ipv4': /[\d\.]/i,
                'ipv6_ipv4': /[\d\.\:A-F\/]/i,
                'ipv6': /[\d\.\:A-F\/]/i
            validation: function (value, options) {
                return Spry.Widget.ValidationTextField.validateIP(value, options.format);
        'url': {
            characterMasking: /[^\s]/,
            validation: function(value, options) {
                //fix for ?ID=223429 and ?ID=223387
                /* the following regexp matches components of an URI as specified in http://tools.ietf.org/html/rfc3986#page-51 page 51, Appendix B.
                    scheme    = $2
                    authority = $4
                    path      = $5
                    query     = $7
                    fragment  = $9
                var URI_spliter = /^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;
                var parts = value.match(URI_spliter);
                if (parts && parts[4]) {
                    //encode each component of the domain name using Punycode encoding scheme: http://tools.ietf.org/html/rfc3492
                    var host  = parts[4].split(".");
                    var punyencoded = '';
                    for (var i=0; i<host.length; i++) {
                        punyencoded = Spry.Widget.Utils.punycode_encode(host[i], 64);
                        if (!punyencoded) {
                            return false;
                        } else {
                            if (punyencoded != (host[i] + "-")) {
                                host[i] = 'xn--' + punyencoded;
                    host = host .join(".");
                    //the encoded domain name is replaced into the original URL to be validated again later as URL
                    value = value.replace(URI_spliter, "$1//" + host + "$5$6$8");
                //fix for ?ID=223358 and ?ID=223594
                //the following validates an URL using ABNF rules as defined in http://tools.ietf.org/html/rfc3986 , Appendix A., page 49
                //except host which is extracted by match[1] and validated separately
                 * userinfo=    (?:(?:[a-z0-9\-\._~\!\$\&\'\(\)\*\+\,\;\=:]|%[0-9a-f]{2,2})*\@)?
                 * host=            (?:((?:(?:[a-z0-9][a-z0-9\-]*[a-z0-9]|[a-z0-9])\.)*(?:[a-z][a-z0-9\-]*[a-z0-9]|[a-z])|(?: \[[^\]]*\]))
                 * pathname=    (?:\/(?:[a-z0-9\-\._~\!\$\&\'\(\)\*\+\,\;\=\:\@]|%[0-9a-f]{2,2})*)*
                 * query=            (?:\?(?:[a-z0-9\-\._~\!\$\&\'\(\)\*\+\,\;\=\:\@\/\?]|%[0-9a-f]{2,2})*)?
                 * anchor=        (?:\#(?:[a-z0-9\-\._~\!\$\&\'\(\)\*\+\,\;\=\:\@\/\?]|%[0-9a-f]{2,2})*)?
                var regExp = /^(?:https?|ftp)\:\/\/(?:(?:[a-z0-9\-\._~\!\$\&\'\(\)\*\+\,\;\=:]|%[0-9a-f]{2,2})*\@)?(?: ((?:(?:[a-z0-9][a-z0-9\-]*[a-z0-9]|[a-z0-9])\.)*(?:[a-z][a-z0-9\-]*[a-z0-9]|[a-z])|(?:\[[^ \]]*\]))(?:\:[0-9]*)?)(?:\/(?:[a-z0-9\-\._~\!\$\&\'\(\)\*\+\,\;\=\:\@]|%[0-9a-f]{2,2})*)*( ?:\?(?:[a-z0-9\-\._~\!\$\&\'\(\)\*\+\,\;\=\:\@\/\?]|%[0-9a-f]{2,2})*)?(?:\#(?:[a-z0-9\-\._ ~\!\$\&\'\(\)\*\+\,\;\=\:\@\/\?]|%[0-9a-f]{2,2})*)?$/i;
                var valid = value.match(regExp);
                if (valid) {
                    //extract the  address from URL
                    var address = valid[1];
                    if (address) {
                        if (address == '[]') {
                            return false;
                        if (address.charAt(0) == '[' ) {
                            //IPv6 address or IPv4 enclosed in square brackets
                            address = address.replace(/^\[|\]$/gi, '');
                            return Spry.Widget.ValidationTextField.validateIP(address, 'ipv6_ipv4');
                        } else {
                            if (/[^0-9\.]/.test(address)) {
                                return true;
                            } else {
                                //check if hostname is all digits and dots and then check for IPv4
                                return Spry.Widget.ValidationTextField.validateIP(address, 'ipv4');
                    } else {
                        return true;
                } else {
                    return false;
    2.2.1. Preferred
    x:x:x:x:x:x:x:x, where the 'x's are the hexadecimal values of the eight 16-bit pieces of the address.
    Examples:
        FEDC:BA98:7654:3210:FEDC:BA98:7654:3210
        1080:0:0:0:8:800:200C:417A
    Note that it is not necessary to write the leading zeros in an
    individual field, but there must be at least one numeral in every
    field (except for the case described in 2.2.2.).
    2.2.2. Compressed
    The use of "::" indicates multiple groups of 16-bits of zeros.
    The "::" can only appear once in an address.  The "::" can also be
    used to compress the leading and/or trailing zeros in an address.
        1080:0:0:0:8:800:200C:417A --> 1080::8:800:200C:417A
        FF01:0:0:0:0:0:0:101 --> FF01::101
        0:0:0:0:0:0:0:1 --> ::1
        0:0:0:0:0:0:0:0 --> ::
    2.5.4 IPv6 Addresses with Embedded IPv4 Addresses
        IPv4-compatible IPv6 address (tunnel IPv6 packets over IPv4 routing infrastructures)
        ::0:129.144.52.38
        IPv4-mapped IPv6 address (represent the addresses of IPv4-only nodes as IPv6 addresses)
        ::ffff:129.144.52.38
    The text representation of IPv6 addresses and prefixes in Augmented BNF (Backus-Naur Form) [ABNF] for reference purposes.
    [ABNF http://tools.ietf.org/html/rfc2234]
          IPv6address = hexpart [ ":" IPv4address ]
          IPv4address = 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT
          IPv6prefix  = hexpart "/" 1*2DIGIT
          hexpart = hexseq | hexseq "::" [ hexseq ] | "::" [ hexseq ]
          hexseq  = hex4 *( ":" hex4)
          hex4    = 1*4HEXDIG
    Spry.Widget.ValidationTextField.validateIP = function (value, format)
        var validIPv6Addresses = [
            //preferred
            /^(?:[a-f0-9]{1,4}:){7}[a-f0-9]{1,4}(?:\/\d{1,3})?$/i,
            //various compressed
            /^[a-f0-9]{0,4}::(?:\/\d{1,3})?$/i,
            /^:(?::[a-f0-9]{1,4}){1,6}(?:\/\d{1,3})?$/i,
            /^(?:[a-f0-9]{1,4}:){1,6}:(?:\/\d{1,3})?$/i,
            /^(?:[a-f0-9]{1,4}:)(?::[a-f0-9]{1,4}){1,6}(?:\/\d{1,3})?$/i,
            /^(?:[a-f0-9]{1,4}:){2}(?::[a-f0-9]{1,4}){1,5}(?:\/\d{1,3})?$/i,
            /^(?:[a-f0-9]{1,4}:){3}(?::[a-f0-9]{1,4}){1,4}(?:\/\d{1,3})?$/i,
            /^(?:[a-f0-9]{1,4}:){4}(?::[a-f0-9]{1,4}){1,3}(?:\/\d{1,3})?$/i,
            /^(?:[a-f0-9]{1,4}:){5}(?::[a-f0-9]{1,4}){1,2}(?:\/\d{1,3})?$/i,
            /^(?:[a-f0-9]{1,4}:){6}(?::[a-f0-9]{1,4})(?:\/\d{1,3})?$/i,
            //IPv6 mixes with IPv4
            /^(?:[a-f0-9]{1,4}:){6}(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,3})?$/i,
            /^:(?::[a-f0-9]{1,4}){0,4}:(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,3})?$/i,
            /^(?:[a-f0-9]{1,4}:){1,5}:(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,3})?$/i,
            /^(?:[a-f0-9]{1,4}:)(?::[a-f0-9]{1,4}){1,4}:(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,3})?$/i,
            /^(?:[a-f0-9]{1,4}:){2}(?::[a-f0-9]{1,4}){1,3}:(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,3})?$/i,    
            /^(?:[a-f0-9]{1,4}:){3}(?::[a-f0-9]{1,4}){1,2}:(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,3})?$/i,
            /^(?:[a-f0-9]{1,4}:){4}(?::[a-f0-9]{1,4}):(?:\d{1,3}\.){3}\d{1,3}(?:\/\d{1,3})?$/i
        var validIPv4Addresses = [
            //IPv4
            /^(\d{1,3}\.){3}\d{1,3}$/i
        var validAddresses = [];
        if (format == 'ipv6' || format == 'ipv6_ipv4') {
            validAddresses = validAddresses.concat(validIPv6Addresses);
        if (format == 'ipv4' || format == 'ipv6_ipv4') {
            validAddresses = validAddresses.concat(validIPv4Addresses);
        var ret = false;
        for (var i=0; i<validAddresses.length; i++) {
            if (validAddresses[i].test(value)) {
                ret = true;
                break;
        if (ret && value.indexOf(".") != -1) {
            //if address contains IPv4 fragment, it must be valid; all 4 groups must be less than 256
            var ipv4 = value.match(/:?(?:\d{1,3}\.){3}\d{1,3}/i);
            if(!ipv4) {
                return false;
            ipv4 = ipv4[0].replace(/^:/, '');
            var pieces = ipv4.split('.');
            if (pieces.length != 4) {
                return false;
            var regExp = /^[\-\+]?\d*$/;
            for (var i=0; i< pieces.length; i++) {
                if (pieces[i] == '') {
                    return false;
                var piece = parseInt(pieces[i], 10);
                if (isNaN(piece) || piece > 255 || !regExp.test(pieces[i]) || pieces[i].length>3 || /^0{2,3}$/.test(pieces[i])) {
                    return false;
        if (ret && value.indexOf("/") != -1) {
            // if prefix-length is specified must be in [1-128]
            var prefLen = value.match(/\/\d{1,3}$/);
            if (!prefLen) return false;
            var prefLenVal = parseInt(prefLen[0].replace(/^\//,''), 10);
            if (isNaN(prefLenVal) || prefLenVal > 128 || prefLenVal < 1) {
                return false;
        return ret;
    Spry.Widget.ValidationTextField.onloadDidFire = false;
    Spry.Widget.ValidationTextField.loadQueue = [];
    Spry.Widget.ValidationTextField.prototype.isBrowserSupported = function()
        return Spry.is.ie && Spry.is.v >= 5 && Spry.is.windows
            ||
        Spry.is.mozilla && Spry.is.v >= 1.4
            ||
        Spry.is.safari
            ||
        Spry.is.opera && Spry.is.v >= 9;
    Spry.Widget.ValidationTextField.prototype.init = function(element, options)
        this.element = this.getElement(element);
        this.errors = 0;
        this.flags = {locked: false, restoreSelection: true};
        this.options = {};
        this.event_handlers = [];
        this.validClass = "textfieldValidState";
        this.focusClass = "textfieldFocusState";
        this.requiredClass = "textfieldRequiredState";
        this.hintClass = "textfieldHintState";
        this.invalidFormatClass = "textfieldInvalidFormatState";
        this.invalidRangeMinClass = "textfieldMinValueState";
        this.invalidRangeMaxClass = "textfieldMaxValueState";
        this.invalidCharsMinClass = "textfieldMinCharsState";
        this.invalidCharsMaxClass = "textfieldMaxCharsState";
        this.textfieldFlashTextClass = "textfieldFlashText";
        if (Spry.is.safari) {
            this.flags.lastKeyPressedTimeStamp = 0;
        switch (this.type) {
            case 'phone_number':options.format = Spry.Widget.Utils.firstValid(options.format, 'phone_us');break;
            case 'currency':options.format = Spry.Widget.Utils.firstValid(options.format, 'comma_dot');break;
            case 'zip_code':options.format = Spry.Widget.Utils.firstValid(options.format, 'zip_us5');break;
            case 'date':
                options.format = Spry.Widget.Utils.firstValid(options.format, 'mm/dd/yy');
                break;
            case 'time':
                options.format = Spry.Widget.Utils.firstValid(options.format, 'HH:mm');
                options.pattern = options.format.replace(/[hms]/gi, "0").replace(/TT/gi, 'AM').replace(/T/gi, 'A');
                break;
            case 'ip':
                options.format = Spry.Widget.Utils.firstValid(options.format, 'ipv4');
                options.characterMasking = Spry.Widget.ValidationTextField.ValidationDescriptors[this.type].characterMaskingFormats[ options.format];
                break;
        //retrieve the validation type descriptor to be used with this instance (base on type and format)
        //widgets may have different validations depending on format (like zip_code with formats)
        var validationDescriptor = {};
        if (options.format && Spry.Widget.ValidationTextField.ValidationDescriptors[this.type].formats) {
            if (Spry.Widget.ValidationTextField.ValidationDescriptors[this.type].formats[options.format] ) {
                Spry.Widget.Utils.setOptions(validationDescriptor, Spry.Widget.ValidationTextField.ValidationDescriptors[this.type].formats[options.format]) ;
        } else {
            Spry.Widget.Utils.setOptions(validationDescriptor, Spry.Widget.ValidationTextField.ValidationDescriptors[this.type]);
        //set default values for some parameters which were not aspecified
        options.useCharacterMasking = Spry.Widget.Utils.firstValid(options.useCharacterMasking, false);
        options.hint = Spry.Widget.Utils.firstValid(options.hint, '');
        options.isRequired = Spry.Widget.Utils.firstValid(options.isRequired, true);
        options.additionalError = Spry.Widget.Utils.firstValid(options.additionalError, false);
        if (options.additionalError)
            options.additionalError = this.getElement(options.additionalError);
        //set widget validation parameters
        //get values from validation type descriptor
        //use the user specified values, if defined
        options.characterMasking = Spry.Widget.Utils.firstValid(options.characterMasking, validationDescriptor.characterMasking);
        options.regExpFilter = Spry.Widget.Utils.firstValid(options.regExpFilter, validationDescriptor.regExpFilter);
        options.pattern = Spry.Widget.Utils.firstValid(options.pattern, validationDescriptor.pattern);
        options.validation = Spry.Widget.Utils.firstValid(options.validation, validationDescriptor.validation);
        if (typeof options.validation == 'string') {
            options.validation = eval(options.validation);
        options.minValue = Spry.Widget.Utils.firstValid(options.minValue, validationDescriptor.minValue);
        options.maxValue = Spry.Widget.Utils.firstValid(options.maxValue, validationDescriptor.maxValue);
        options.minChars = Spry.Widget.Utils.firstValid(options.minChars, validationDescriptor.minChars);
        options.maxChars = Spry.Widget.Utils.firstValid(options.maxChars, validationDescriptor.maxChars);
        Spry.Widget.Utils.setOptions(this, options);
        Spry.Widget.Utils.setOptions(this.options, options);
    Spry.Widget.ValidationTextField.prototype.destroy = function() {
        if (this.event_handlers)
            for (var i=0; i<this.event_handlers.length; i++) {
                Spry.Widget.Utils.removeEventListener(this.event_handlers[i][0], this.event_handlers[i][1], this.event_handlers[i][2], false);
        try { delete this.element; } catch(err) {}
        try { delete this.input; } catch(err) {}
        try { delete this.form; } catch(err) {}
        try { delete this.event_handlers; } catch(err) {}
        try { this.selection.destroy(); } catch(err) {}
        try { delete this.selection; } catch(err) {}
        var q = Spry.Widget.Form.onSubmitWidgetQueue;
        var qlen = q.length;
        for (var i = 0; i < qlen; i++) {
            if (q[i] == this) {
                q.splice(i, 1);
                break;
    Spry.Widget.ValidationTextField.prototype.attachBehaviors = function()
        if (this.element) {
            if (this.element.nodeName == "INPUT") {
                this.input = this.element;
            } else {
                this.input = Spry.Widget.Utils.getFirstChildWithNodeNameAtAnyLevel(this.element, "INPUT");
        if (this.input) {
            if (this.maxChars) {
                this.input.removeAttribute("maxLength");
            this.putHint();
            this.compilePattern();
            if (this.type == 'date') {
                this.compileDatePattern();
            this.input.setAttribute("AutoComplete", "off");
            this.selection = new Spry.Widget.SelectionDescriptor(this.input);
            this.oldValue = this.input.value;
            var self = this;
            this.event_handlers = [];
            this.event_handlers.push([this.input, "keydown", function(e) { if (self.isDisabled()) return true; return self.onKeyDown(e || event); }]);
            this.event_handlers.push([this.input, "keypress", function(e) { if (self.isDisabled()) return true; return self.onKeyPress(e || event); }]);
            if (Spry.is.opera) {
                this.event_handlers.push([this.input, "keyup", function(e) { if (self.isDisabled()) return true; return self.onKeyUp(e || event); }]);
            this.event_handlers.push([this.input, "focus", function(e) { if (self.isDisabled()) return true; return self.onFocus(e || event); }]);
            this.event_handlers.push([this.input, "blur", function(e) { if (self.isDisabled()) return true; return self.onBlur(e || event); }]);
            this.event_handlers.push([this.input, "mousedown", function(e) { if (self.isDisabled()) return true; return self.onMouseDown(e || event); }]);
            var changeEvent =
                Spry.is.mozilla || Spry.is.opera || Spry.is.safari?"input":
                Spry.is.ie?"propertychange":
                "change";
            this.event_handlers.push([this.input, changeEvent, function(e) { if (self.isDisabled()) return true; return self.onChange(e || event); }]);
            if (Spry.is.mozilla || Spry.is.safari) {
                //oninput event on mozilla does not fire ondragdrop
                this.event_handlers.push([this.input, "dragdrop", function(e) { if (self.isDisabled()) return true; self.removeHint();return self.onChange(e || event); }]);
            } else if (Spry.is.ie){
                //ondrop&onpropertychange crash on IE
                this.event_handlers.push([this.input, "drop", function(e) { if (self.isDisabled()) return true; return self.onDrop(e || event); }]);
            for (var i=0; i<this.event_handlers.length; i++) {
                Spry.Widget.Utils.addEventListener(this.event_handlers[i][0], this.event_handlers[i][1], this.event_handlers[i][2], false);
            // submit
            this.form = Spry.Widget.Utils.getFirstParentWithNodeName(this.input, "FORM");
            if (this.form) {
                // if no "onSubmit" handler has been attached to the current form, attach one
                if (!this.form.attachedSubmitHandler && !this.form.onsubmit) {
                    this.form.onsubmit = function(e) { e = e || event; return Spry.Widget.Form.onSubmit(e, e.srcElement || e.currentTarget) };
                    this.form.attachedSubmitHandler = true;                
                if (!this.form.attachedResetHandler) {
                    Spry.Widget.Utils.addEventListener(this.form, "reset", function(e) { e = e || event; return Spry.Widget.Form.onReset(e, e.srcElement || e.currentTarget) }, false);
                    this.form.attachedResetHandler = true;                
                // add the currrent widget to the "onSubmit" check queue;
                Spry.Widget.Form.onSubmitWidgetQueue.push(this);
    Spry.Widget.ValidationTextField.prototype.isDisabled = function() {
        return this.input && (this.input.disabled || this.input.readOnly) || !this.input;
    Spry.Widget.ValidationTextField.prototype.getElement = function(ele)
        if (ele && typeof ele == "string")
            return document.getElementById(ele);
        return ele;
    Spry.Widget.ValidationTextField.addLoadListener = function(handler)
        if (typeof window.addEventListener != 'undefined')
            window.addEventListener('load', handler, false);
        else if (typeof document.addEventListener != 'undefined')
            document.addEventListener('load', handler, false);
        else if (typeof window.attachEvent != 'undefined')
            window.attachEvent('onload', handler);
    Spry.Widget.ValidationTextField.processLoadQueue = function(handler)
        Spry.Widget.ValidationTextField.onloadDidFire = true;
        var q = Spry.Widget.ValidationTextField.loadQueue;
        var qlen = q.length;
        for (var i = 0; i < qlen; i++)
            q[i].attachBehaviors();
    Spry.Widget.ValidationTextField.addLoadListener(Spry.Widget.ValidationTextField.processLoa dQueue);
    Spry.Widget.ValidationTextField.addLoadListener(function(){
        Spry.Widget.Utils.addEventListener(window, "unload", Spry.Widget.Form.destroyAll, false);
    Spry.Widget.ValidationTextField.prototype.setValue = function(newValue) {
        this.flags.locked = true;
        this.input.value = newValue;
        this.flags.locked = false;
        this.oldValue = newValue;
        if (!Spry.is.ie) {
            this.onChange();
    * save the state of the input (selection and value) so we can revert to it
    * should call this just before modifying the input value
    Spry.Widget.ValidationTextField.prototype.saveState = function()
        this.oldValue = this.input.value;
        this.selection.update();
    Spry.Widget.ValidationTextField.prototype.revertState = function(revertValue)
        if (revertValue != this.input.value) {
            this.input.readOnly = true;
            this.input.value = revertValue;
            this.input.readOnly = false;
            if (Spry.is.safari && this.flags.active) {
                this.input.focus();
      if (this.flags.restoreSelection) {
        this.selection.moveTo(this.selection.start, this.selection.end);
        this.redTextFlash();
    Spry.Widget.ValidationTextField.prototype.removeHint = function()
        if (this.flags.hintOn) {
            this.input.value = "";
            this.flags.hintOn = false;
            this.removeClassName(this.element, this.hintClass);
            this.removeClassName(this.additionalError, this.hintClass);
    Spry.Widget.ValidationTextField.prototype.putHint = function()
        if(this.hint && this.input && this.input.type == "text" && this.input.value == "") {
            this.flags.hintOn = true;
            this.input.value = this.hint;
            this.addClassName(this.element, this.hintClass);
            this.addClassName(this.additionalError, this.hintClass);
    Spry.Widget.ValidationTextField.prototype.redTextFlash = function()
        var self = this;
        this.addClassName(this.element, this.textfieldFlashTextClass);
        setTimeout(function() {
            self.removeClassName(self.element, self.textfieldFlashTextClass)
        }, 100);
    Spry.Widget.ValidationTextField.prototype.doValidations = function(testValue, revertValue)
        if (this.isDisabled()) return false;
        if (this.flags.locked) {
            return false;
        if (testValue.length == 0 && !this.isRequired) {
            this.errors = 0;
            return false;
        this.flags.locked = true;
        var mustRevert = false;
        var continueValidations = true;
        if (!this.options.isRequired && testValue.length == 0) {
            continueValidations = false;
        var errors = 0;
        var fixedValue = testValue;
        //characterMasking - test if all characters are valid with the characterMasking (keyboard filter)
        if (this.useCharacterMasking && this.characterMasking) {
            for(var i=0; i<testValue.length; i++) {
                if (!this.characterMasking.test(testValue.charAt(i))) {
                    errors = errors | Spry.Widget.ValidationTextField.ERROR_FORMAT;
                    fixedValue = revertValue;
                    mustRevert = true;
                    break;
        //regExpFilter - character mask positioning (additional mask to restrict some characters only in some position)
        if (!mustRevert && this.useCharacterMasking && this.regExpFilter) {
            if (!this.regExpFilter.test(fixedValue)) {
                errors = errors | Spry.Widget.ValidationTextField.ERROR_FORMAT;
                mustRevert = true;
        //pattern - testValue matches the pattern so far
        if (!mustRevert && this.pattern) {
            var currentRegExp = this.patternToRegExp(testValue.length);
            if (!currentRegExp.test(testValue)) {
                errors = errors | Spry.Widget.ValidationTextField.ERROR_FORMAT;
                mustRevert = true;
            } else if (this.patternLength != testValue.length) {
                //testValue matches pattern so far, but it's not ok if it does not have the proper length
                //do not revert, but should show the error
                errors = errors | Spry.Widget.ValidationTextField.ERROR_FORMAT;
        if (fixedValue == '') {
            errors = errors | Spry.Widget.ValidationTextField.ERROR_REQUIRED;
        if (!mustRevert && this.pattern && this.useCharacterMasking) {
            var n = this.getAutoComplete(testValue.length);
            if (n) {
                fixedValue += n;
        if(!mustRevert && this.minChars !== null  && continueValidations) {
            if (testValue.length < this.minChars) {
                errors = errors | Spry.Widget.ValidationTextField.ERROR_CHARS_MIN;
                continueValidations = false;
        if(!mustRevert && this.maxChars !== null && continueValidations) {
            if (testValue.length > this.maxChars) {
                errors = errors | Spry.Widget.ValidationTextField.ERROR_CHARS_MAX;
                continueValidations = false;
        //validation - testValue passes widget validation function
        if (!mustRevert && this.validation && continueValidations) {
            var value = this.validation(fixedValue, this.options);
            if (false === value) {
                errors = errors | Spry.Widget.ValidationTextField.ERROR_FORMAT;
                continueValidations = false;
            } else {
                this.typedValue = value;
        if(!mustRevert && this.validation && this.minValue !== null && continueValidations) {
            var minValue = this.validation(this.minValue.toString(), this.options);
            if (minValue !== false) {
                if (this.typedValue < minValue) {
                    errors = errors | Spry.Widget.ValidationTextField.ERROR_RANGE_MIN;
                    continueValidations = false;
        if(!mustRevert && this.validation && this.maxValue !== null && continueValidations) {
            var maxValue = this.validation(this.maxValue.toString(), this.options);
            if (maxValue !== false) {
                if( this.typedValue > maxValue) {
                    errors = errors | Spry.Widget.ValidationTextField.ERROR_RANGE_MAX;
                    continueValidations = false;
        //an invalid value was tested; must make sure it does not get inside the input
        if (this.useCharacterMasking && mustRevert) {
            this.revertState(revertValue);
        this.errors = errors;
        this.fixedValue = fixedValue;
        this.flags.locked = false;
        return mustRevert;
    Spry.Widget.ValidationTextField.prototype.onChange = function(e)
        if (Spry.is.opera && this.flags.operaRevertOnKeyUp) {
            return true;
        if (Spry.is.ie && e && e.propertyName != 'value') {
            return true;

  • Inserting image to a html file

    Hey guys, its been awhile since i worked with codes and i now need to ad an image to my home page where i left a space just for it. I know the image code but it doesn´t seem to be working i think i am placing it in the wrong place. Can someone help me out please ? If needs to i can send the html file (home.html) and the screenshot of my page.
    Thank you guys

    This is the code from your posted link.  I copied View > Source from FF and pasted into NoteTab....  Removed white spaces and copy Ctrl+C & pasted Ctrl+V here using >> Syntax highlighting > Plain.
    Unfortunately, this is only the bloated HTML.  It doesn't include styles from your 9 external CSS files!
    So where are you trying to insert an image???
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html><head>
    <meta http-equiv="X-UA-Compatible" content="IE=7">
    <title>BearGround.com</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta http-equiv="Cache-Control" content="no-cache,post-check=0,pre-check=0,no-cache">
    <meta http-equiv="Pragma" content="no-cache">
    <meta http-equiv="Expires" content="Thu,01Dec199416:00:00GMT">
    <script type="text/javascript"> function stopError() { return true; }; window.onError = stopError; window.status=Date();</script>
    <script type="text/javascript" src="./_server/lib.js"></script>
    <link href="./_themes/main/the_bear/img/favicon.ico" rel="shortcut icon" type="image/x-icon">
    <link rel="stylesheet" href="./_themes/main/the_bear/css/screen.css" type="text/css" media="screen">
    <link rel="stylesheet" media="all" type="text/css" href="./_themes/main/the_bear/css/bg-menu.css">
    <link rel="stylesheet" href="./_themes/main/the_bear/css/inner.css" type="text/css" media="screen">
    <link rel="stylesheet" href="./_themes/main/the_bear/css/bg.css" type="text/css" media="screen">
    <!--[if IE]><link rel="stylesheet" href="./_themes/main/the_bear/css/ie.css" type="text/css"><![endif]-->
    <!--[if lt IE 7]><script type="text/javascript" src="./_themes/main/the_bear/js/bgsleight.js"></script><![endif]-->
    <link rel="stylesheet" href="./_themes/main/the_bear/css/210107.css" type="text/css" media="screen">
    <link rel="stylesheet" href="./_server/games/game.css" type="text/css">
    <link rel="stylesheet" href="./_server/video/video.css" type="text/css">
    <link rel="stylesheet" href="./_server/audiochat/audio.css" type="text/css">
    <link rel="stylesheet" href="./_server/im_new/im.css" type="text/css">
    <script type="text/javascript">
    var xajaxRequestUri="./_server/server.php";
    var xajaxDebug=false;
    var xajaxStatusMessages=false;
    var xajaxWaitCursor=false;
    var xajaxDefinedGet=0;
    var xajaxDefinedPost=1;
    var xajaxLoaded=false;
    function xajax_countries(){return xajax.call("countries", arguments, 1);}
    function xajax_states(){return xajax.call("states", arguments, 1);}
    function xajax_cities(){return xajax.call("cities", arguments, 1);}
    function xajax_update(){return xajax.call("update", arguments, 1);}
    function xajax_im(){return xajax.call("im", arguments, 1);}
    function xajax_im_open(){return xajax.call("im_open", arguments, 1);}
    function xajax_im_sent(){return xajax.call("im_sent", arguments, 1);}
    function xajax_im_close(){return xajax.call("im_close", arguments, 1);}
    function xajax_im_update(){return xajax.call("im_update", arguments, 1);}
    function xajax_game_invite(){return xajax.call("game_invite", arguments, 1);}
    function xajax_game_reject(){return xajax.call("game_reject", arguments, 1);}
    function xajax_game_go(){return xajax.call("game_go", arguments, 1);}
    function xajax_video_invite(){return xajax.call("video_invite", arguments, 1);}
    function xajax_video_reject(){return xajax.call("video_reject", arguments, 1);}
    function xajax_video_go(){return xajax.call("video_go", arguments, 1);}
    function xajax_audio_invite(){return xajax.call("audio_invite", arguments, 1);}
    function xajax_audio_reject(){return xajax.call("audio_reject", arguments, 1);}
    function xajax_audio_go(){return xajax.call("audio_go", arguments, 1);}
    function xajax_saveAlbumTitle(){return xajax.call("saveAlbumTitle", arguments, 1);}
    function xajax_saveAlbumDesc(){return xajax.call("saveAlbumDesc", arguments, 1);}
    function xajax_saveImageTitle(){return xajax.call("saveImageTitle", arguments, 1);}
    function xajax_saveImageDesc(){return xajax.call("saveImageDesc", arguments, 1);}
    </script>
    <script type="text/javascript" src="./_server/xajax_js/xajax.js"></script>
    <script type="text/javascript">
    window.setTimeout(function () { if (!xajaxLoaded) { alert('Error: the xajax Javascript file could not be included. Perhaps the URL is incorrect?\nURL: ./_server/xajax_js/xajax.js'); } }, 6000);
    </script>
    <script type="text/javascript" src="./_server/client.js"></script>
    <script type="text/javascript" src="./_server/im_new/sounds/sm.js"></script>
    <SCRIPT TYPE="text/javascript">
    <!--
    function popupform(myform, windowname)
    if (! window.focus)return true;
    window.open('', windowname, 'width=367,height=600,scrollbars=no,resizable=yes');
    myform.target=windowname;
    return true;
    //-->
    </SCRIPT>
    <!--[if lte IE 8]>
    <script src="http://ie7-js.googlecode.com/svn/version/2.0(beta3)/IE8.js" type="text/javascript"></script>
    <![endif]-->
    </head>
    <body>
    <div id="wrapper">
    <div id="header">
    <div id="flashheader">
    </div>
    <ul>
    <li><a href="./news.php?view=4"><img src="./_themes/main/the_bear/img/menu-01.gif" height="7" alt="Site Tour"></a></li>
    <li><a href="./news.php?cat=2"><img src="./_themes/main/the_bear/img/menu-02.gif" height="7" alt=""></a></li>
    <li><a href="./news.php?"><img src="./_themes/main/the_bear/img/menu-03.gif" height="7" alt="Site Info"></a></li>
    </ul>
    </div>
    <iframe id="v3chat2" name="v3chat2" style="width:0px; height:0px; border: 0px" src="v3messenger/run.php?mid=0"></iframe>
    <div id="wrapper">
    <!--     <div id="header">
    <!--<script type="text/javascript"><!--
    document.write('<s'+'cript type="text/javascript" src="http://www.ads.bearground.com/show.php?z=16&j=1&code='+new Date().getTime()+'"></s'+'cript>');
    // --></script>
    <!--<noscript>
    <iframe src="http://www.ads.bearground.com/show.php?z=16" width="940" height="144" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0" scrolling="no"></iframe>
    </noscript>-->
    <!--</div>-->
    <div id="main">
    <div id="main-in">
    <div id="main-out" class="clearfix">
    <div class="welcome">
    <table width="888px"><tr>
    <td align="left" style=" width:296px;padding-left:20px;">
    Welcome to <strong>BearGround.com</strong>
    </td>
    <td  align="center" style="width:296px;">
    <a href="join.php?set_language=spain" target="_top"><img src="img/SPAN0002_S.jpg" alt="Espa&ntilde;ol" width="30" height="20"></a>
    <a href="join.php?set_language=english" target="_top"><img src="img/UNKG0002_S.jpg" alt="English" width="30" height="20"></a>
    <a href="join.php?set_language=french" target="_top"><img src="img/FRAN0004_S.jpg" alt="Fran&ccedil;ais" width="30" height="20"></a>
    </td>
    <td align="right" style="width:296px;padding-right:20px;" id="menu_top_right">
    <a href="./index.php">Join Now!</a>
     | 
    <a href="./index.php">Login</a>
    </td>
    </tr></table>
    </div>
    <div class="menu">
    <ul>
    <li><a href="./home.php">HOME</a></li>
    <li><a href="./users_online.php">ONLINE NOW!</a></li>
    <li><a href="./search.php">SEARCH</a></li>
    <li><a href="./gallery_index.php">PHOTO GALLERY</a></li>
    <li><a href="./videogallery_video_view.php">VIDEO GALLERY</a></li>
    <li><a href="./my_friends.php">FRIENDS</a></li>
    <li><a href="./mail.php">MAIL</a></li>
    <li><a href="./flashchat.php">CHAT ROOM</a></li>
    <li><a href="./blogs.php">BLOG</a></li>
    <li><a href="./forum.php">FORUM</a></li>
    <li><a href="./groups.php">GROUPS</a></li>
    <li><a href="./events_index.php">EVENTS</a></li>
    </ul>
    </div>
    <div class="personal-st">
    <ul>
    <li><img src="./_themes/main/the_bear/img/camera.png" style="behavior: url('./_server/design/pngbehavior.htc');" align="absmiddle" alt=""> <a href="./profile_photo.php" style="font-weight: normal">My Photos</a></li>
    <li><img src="./_themes/main/the_bear/img/appearance.png" style="behavior: url('./_server/design/pngbehavior.htc');" align="absmiddle" alt=""> <a href="./gallery_admin.php" style="font-weight: normal">Upload to Gallery</a></li>
    <li><img src="./_themes/main/the_bear/img/my_clips.png" style="behavior: url('./_server/design/pngbehavior.htc');" align="absmiddle" alt=""> <a href="./profile_video_edit.php" style="font-weight: normal">My Clips</a></li>
    <li><img src="./_themes/main/the_bear/img/multimedia_1.png" style="behavior: url('./_server/design/pngbehavior.htc');" align="absmiddle" alt=""> <a href="./profile_audio_edit.php" style="font-weight: normal">My Music</a></li>
    <li><img src="./_themes/main/the_bear/img/my_vids.png" style="behavior: url('./_server/design/pngbehavior.htc');" align="absmiddle" alt=""> <a href="./videogallery_myvideo_view.php" style="font-weight: normal">My Vids</a></li>
    <li><img src="./_themes/main/the_bear/img/txt2.png" style="behavior: url('./_server/design/pngbehavior.htc');" align="absmiddle" alt=""> <a href="./profile_blog.php" style="font-weight: normal">My Blog</a></li>
    <li><img src="./_themes/main/the_bear/img/access.png" style="behavior: url('./_server/design/pngbehavior.htc');" align="absmiddle" alt=""> <a href="./profile.php" style="font-weight: normal">Account</a></li>
    </ul>
    </div>
    <div id="main2">
    <div id="main-in2">
    <div id="main-out2">
    <div class="userinfo-c-wide">
    <div class="userinfo smallphoto clearfix">
    <style type="text/css">
    #join label{height: 18px; line-height: 18px; padding-right: 4px;}
    #join input{font-size: 13px; border: 1px solid #757B05; width: 130px;}
    #join #from, #join #iam{width: 180px; margin-top: 3px;}
    #join #month{width: 92px;}
    #join #month, #join #day, #join #year{margin-top: 3px;}
    </style>
    <script language="JavaScript" type="text/javascript">
    function onValidateJoinForm() {
    var form = document.forms['JoinForm'];
    if (!(validateRequiredField(form['join_handle'], 'Username'))) {
    return false;
    if (!(validateMinLength(form['join_handle'], 'Username','4'))) {
    return false;
    if (!(validateMaxLength(form['join_handle'], 'Username','20'))) {
    return false;
    if (!(validateAlphaNumeric(form['join_handle'], 'Username'))) {
    return false;
    if (!(validateRequiredField(form['join_handle'], 'Username'))) {
    return false;
    if (!(validateMinLength(form['join_handle'], 'Username','4'))) {
    return false;
    if (!(validateMaxLength(form['join_handle'], 'Username','20'))) {
    return false;
    if (!(validateAlphaNumeric(form['join_handle'], 'Username'))) {
    return false;
    if (!(validateRequiredField(form['join_password'], 'Password'))) {
    return false;
    if (!(validateMinLength(form['join_password'], 'Password','6'))) {
    return false;
    if (!(validateMaxLength(form['join_password'], 'Password','15'))) {
    return false;
    if (!(validateAlphaNumeric(form['join_password'], 'Password'))) {
    return false;
    if (!(validateRequiredField(form['join_password'], 'Password'))) {
    return false;
    if (!(validateMinLength(form['join_password'], 'Password','6'))) {
    return false;
    if (!(validateMaxLength(form['join_password'], 'Password','15'))) {
    return false;
    if (!(validateAlphaNumeric(form['join_password'], 'Password'))) {
    return false;
    if (!(validateNotTwoFields(form['join_password'],'Password',form['join_handle'],'Username'))) {
    return false;
    if (!(validateTwoFields(form['verify_password'],'Verify Password',form['join_password'],'Password'))) {
    return false;
    if (!(validateRequiredField(form['email'], 'Email Address'))) {
    return false;
    if (!(validateMaxLength(form['email'], 'Email Address','100'))) {
    return false;
    if (!(validateEmailField(form['email'], 'Email Address'))) {
    return false;
    if (!(validateRequiredField(form['verify_email'], 'Verify Email'))) {
    return false;
    if (!(validateMaxLength(form['verify_email'], 'Verify Email','100'))) {
    return false;
    if (!(validateEmailField(form['verify_email'], 'Verify Email'))) {
    return false;
    if (!(validateTwoFields(form['verify_email'],'Verify Email',form['email'],'Email Address'))) {
    return false;
    if (!(validateRequiredSelect(form['country'],'Country','-1'))) {
    return false;
    if (!(validateRequiredField(form['country'], 'Country', '-1'))) {
    return false;
    if (!(validateRequiredField(form['month'], 'Month'))) {
    return false;
    if (!(validateRequiredField(form['day'], 'Day'))) {
    return false;
    if (!(validateRequiredField(form['year'], 'Year'))) {
    return false;
    if (!(validateRequiredCheckbox(form['privacy_policy'],'','If you have read and agreed to the Terms and Conditions and the Privacy Policy, then please select the checkbox.'))) {
    return false;
    return true;
    function validateJoinForm() {
    blockSubmission = true;
    if (typeof beforeJoinFormValidation != 'undefined') {
    beforeJoinFormValidation();
    var validated = onValidateJoinForm();
    if (validated && (typeof uponSuccessfulJoinFormValidation != 'undefined')) {
    validated = uponSuccessfulJoinFormValidation();
    else if (!validated && (typeof uponUnsuccessfulJoinFormValidation != 'undefined')) {
    uponUnsuccessfulJoinFormValidation();
    if (!validated) {
    return validated;
    function submitJoinForm() {
    if (validateJoinForm()) document.JoinForm.submit();
    else return false;
    </script>
    <table width="100%"><tr><td width="35%" align="right" valign="top">
    <div  class="header_big" style="padding-bottom: 10px; padding-top: 100px; text-align: right;">Login</div>
    <form method="post" action="./join.php?cmd=login" id="login-f" class="clearfix">
    <div id="join">
    Please login or register.<br><br />
    <label for="username">Username:</label><input name="user" type="text" id="login" tabindex="1" /><br />
    <label for="password">Password:</label><input name="password" type="password" tabindex="2" /><br />
    </div><br />
    <input type="submit" value="Login" class="button" style="padding-left: 5px; padding-right: 5px; cursor: pointer; cursor: hand;" />
    <p><input name="remember" type="checkbox" id="remember" class="chk" value="1" type="checkbox"> <label for="remember">Remember me</label> | <a href="./forget_password.php?">Forgot password?</a></p>
    </form>
    </td><td width="20%"> 
    </td><td width="35%" align="right" valign="top">
    <form name="JoinForm" method="post" action="./join.php" onsubmit="return validateJoinForm();">
    <div  class="header_big" style="padding-bottom: 10px; padding-top: 100px; text-align: right;">Join Now!</div>
    <div id="join">
    <br />
    <label for="username">Username:</label><input type="text" id="username" name="join_handle" value="" /><br />
    <label for="create-password">Create Password:</label><input type="password" id="create-password" name="join_password" value="" /><br />
    <label for="re-password">Re-enter Password:</label><input type="password" id="re-password" name="verify_password" value="" /><br />
    <label for="email">E-mail:</label><input type="text" id="email" name="email" value="" /><br />
    <label for="re-email">Re-enter E-mail:</label><input type="text" id="re-email" name="verify_email" value="" /><br />
    <label for="from">From:</label>
    <select name="country" id="from">
    <option value="-1" selected="selected"></option>
    <option value="1" selected="selected">United States</option>
    <option value="2">Canada</option>
    <option value="3">United Kingdom</option>
    <option value="-1"></option>
    <option value="5">Afghanistan</option>
    <option value="6">Albania</option>
    <option value="7">Algeria</option>
    <option value="8">Andorra</option>
    <option value="9">Angola</option>
    <option value="10">Anguilla</option>
    <option value="11">Antigua and Barbuda</option>
    <option value="12">Argentina</option>
    <option value="13">Armenia</option>
    <option value="14">Aruba</option>
    <option value="15">Australia</option>
    <option value="16">Austria</option>
    <option value="17">Azerbaijan</option>
    <option value="18">Bahamas</option>
    <option value="19">Bahrain</option>
    <option value="20">Bangladesh</option>
    <option value="21">Barbados</option>
    <option value="22">Belarus</option>
    <option value="23">Belgium</option>
    <option value="24">Belize</option>
    <option value="25">Benin</option>
    <option value="26">Bermuda</option>
    <option value="27">Bhutan</option>
    <option value="28">Bolivia</option>
    <option value="29">Bosnia and Herzegovina</option>
    <option value="30">Botswana</option>
    <option value="31">Brazil</option>
    <option value="32">British Virgin Islands</option>
    <option value="33">Brunei</option>
    <option value="34">Bulgaria</option>
    <option value="35">Burkina Faso</option>
    <option value="36">Burundi</option>
    <option value="37">Cambodia</option>
    <option value="38">Cameroon</option>
    <option value="2">Canada</option>
    <option value="39">Cape Verde</option>
    <option value="40">Cayman Islands</option>
    <option value="41">Central African Republic</option>
    <option value="42">Chad</option>
    <option value="43">Chile</option>
    <option value="44">China</option>
    <option value="45">Christmas Island</option>
    <option value="46">Cocos (Keeling) Islands</option>
    <option value="47">Colombia</option>
    <option value="48">Comoros</option>
    <option value="49">Congo</option>
    <option value="50">Congo, Democratic Republic</option>
    <option value="51">Cook Islands</option>
    <option value="52">Costa Rica</option>
    <option value="53">Cote D'Ivoire</option>
    <option value="54">Croatia</option>
    <option value="55">Cuba</option>
    <option value="56">Cyprus</option>
    <option value="57">Czech Republic</option>
    <option value="58">Denmark</option>
    <option value="59">Djibouti</option>
    <option value="60">Dominica</option>
    <option value="61">Dominican Republic</option>
    <option value="62">Ecuador</option>
    <option value="63">Egypt</option>
    <option value="64">El Salvador</option>
    <option value="65">Equatorial Guinea</option>
    <option value="66">Eritrea</option>
    <option value="67">Estonia</option>
    <option value="68">Ethiopia</option>
    <option value="69">Falkland Islands</option>
    <option value="70">Faroe Islands</option>
    <option value="71">Fiji</option>
    <option value="72">Finland</option>
    <option value="73">France</option>
    <option value="74">French Guiana</option>
    <option value="75">French Polynesia</option>
    <option value="76">French S. &amp; Antarctic Lands</option>
    <option value="77">Gabon</option>
    <option value="78">Gambia, The</option>
    <option value="79">Gaza Strip</option>
    <option value="80">Georgia</option>
    <option value="81">Germany</option>
    <option value="82">Ghana</option>
    <option value="83">Gibraltar</option>
    <option value="84">Greece</option>
    <option value="85">Greenland</option>
    <option value="86">Grenada</option>
    <option value="87">Guadeloupe</option>
    <option value="88">Guatemala</option>
    <option value="89">Guinea</option>
    <option value="90">Guinea-Bissau</option>
    <option value="91">Guyana</option>
    <option value="92">Haiti</option>
    <option value="93">Honduras</option>
    <option value="94">Hong Kong</option>
    <option value="95">Hungary</option>
    <option value="96">Iceland</option>
    <option value="97">India</option>
    <option value="98">Indonesia</option>
    <option value="99">Iran</option>
    <option value="100">Iraq</option>
    <option value="101">Ireland</option>
    <option value="102">Israel</option>
    <option value="103">Italy</option>
    <option value="104">Jamaica</option>
    <option value="105">Japan</option>
    <option value="106">Jordan</option>
    <option value="107">Kazakhstan</option>
    <option value="108">Kenya</option>
    <option value="109">Kiribati</option>
    <option value="110">Kuwait</option>
    <option value="111">Kyrgyzstan</option>
    <option value="112">Laos</option>
    <option value="113">Latvia</option>
    <option value="114">Lebanon</option>
    <option value="115">Lesotho</option>
    <option value="116">Liberia</option>
    <option value="117">Liechtenstein</option>
    <option value="118">Lithuania</option>
    <option value="119">Luxembourg</option>
    <option value="120">Macau</option>
    <option value="121">Macedonia</option>
    <option value="122">Madagascar</option>
    <option value="123">Malawi</option>
    <option value="124">Malaysia</option>
    <option value="125">Maldives</option>
    <option value="126">Mali</option>
    <option value="127">Malta</option>
    <option value="128">Marshall Islands</option>
    <option value="129">Martinique</option>
    <option value="130">Mauritania</option>
    <option value="131">Mauritius</option>
    <option value="132">Mayotte</option>
    <option value="133">Mexico</option>
    <option value="134">Micronesia, Fed. States</option>
    <option value="135">Moldova</option>
    <option value="136">Monaco</option>
    <option value="137">Mongolia</option>
    <option value="138">Montserrat</option>
    <option value="139">Morocco</option>
    <option value="140">Mozambique</option>
    <option value="141">Namibia</option>
    <option value="142">Nauru</option>
    <option value="143">Nepal</option>
    <option value="144">Netherlands</option>
    <option value="145">Netherlands Antilles</option>
    <option value="146">New Caledonia</option>
    <option value="147">New Zealand</option>
    <option value="148">Nicaragua</option>
    <option value="149">Niger</option>
    <option value="150">Nigeria</option>
    <option value="151">Niue</option>
    <option value="152">Norfolk Island</option>
    <option value="153">North Korea</option>
    <option value="154">Norway</option>
    <option value="155">Oman</option>
    <option value="156">Pakistan</option>
    <option value="157">Palau</option>
    <option value="158">Panama</option>
    <option value="159">Papua New Guinea</option>
    <option value="160">Paraguay</option>
    <option value="161">Peru</option>
    <option value="162">Philippines</option>
    <option value="163">Pitcairn Islands</option>
    <option value="164">Poland</option>
    <option value="165">Portugal</option>
    <option value="166">Puerto Rico</option>
    <option value="167">Qatar</option>
    <option value="168">Reunion</option>
    <option value="169">Romania</option>
    <option value="170">Russia</option>
    <option value="171">Rwanda</option>
    <option value="172">S. Georgia &amp; Sandwich Islands</option>
    <option value="173">Saint Kitts and Nevis</option>
    <option value="174">Saint Lucia</option>
    <option value="175">Samoa</option>
    <option value="176">San Marino</option>
    <option value="177">Sao Tome and Principe</option>
    <option value="178">Saudi Arabia</option>
    <option value="179">Senegal</option>
    <option value="180">Serbia</option>
    <option value="181">Seychelles</option>
    <option value="182">Sierra Leone</option>
    <option value="183">Singapore</option>
    <option value="184">Slovakia</option>
    <option value="185">Slovenia</option>
    <option value="186">Solomon Islands</option>
    <option value="187">Somalia</option>
    <option value="188">South Africa</option>
    <option value="189">South Korea</option>
    <option value="190">Spain</option>
    <option value="191">Sri Lanka</option>
    <option value="192">St. Vincent &amp; The Grenadines</option>
    <option value="193">Sudan</option>
    <option value="194">Suriname</option>
    <option value="195">Svalbard</option>
    <option value="196">Swaziland</option>
    <option value="197">Sweden</option>
    <option value="198">Switzerland</option>
    <option value="199">Syria</option>
    <option value="200">Taiwan</option>
    <option value="201">Tajikistan</option>
    <option value="202">Tanzania</option>
    <option value="203">Thailand</option>
    <option value="204">Togo</option>
    <option value="205">Tokelau</option>
    <option value="206">Tonga</option>
    <option value="207">Trinidad and Tobago</option>
    <option value="208">Tunisia</option>
    <option value="209">Turkey</option>
    <option value="210">Turkmenistan</option>
    <option value="211">Turks and Caicos Islands</option>
    <option value="212">Tuvalu</option>
    <option value="213">Uganda</option>
    <option value="214">Ukraine</option>
    <option value="215">United Arab Emirates</option>
    <option value="3">United Kingdom</option>
    <option value="1">United States</option>
    <option value="216">Uruguay</option>
    <option value="217">Uzbekistan</option>
    <option value="218">Vanuatu</option>
    <option value="219">Vatican City</option>
    <option value="220">Venezuela</option>
    <option value="221">Vietnam</option>
    <option value="222">Virgin Islands</option>
    <option value="223">Wallis and Futuna</option>
    <option value="224">Western Sahara</option>
    <option value="225">Yemen</option>
    <option value="226">Zambia</option>
    <option value="227">Zimbabwe</option>
    </select>
    <br />
    <label for="month">Born on:</label>
    <select name="month" id="month" onchange="updateDay('month','JoinForm','year','month','day')">
    <option value="1" selected="selected">January</option>
    <option value="2">February</option>
    <option value="3">March</option>
    <option value="4">April</option>
    <option value="5">May</option>
    <option value="6">June</option>
    <option value="7">July</option>
    <option value="8">August</option>
    <option value="9">September</option>
    <option value="10">October</option>
    <option value="11">November</option>
    <option value="12">December</option>
    </select>
    <select name="day" id="day">
    <option value="1" selected="selected">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">9</option>
    <option value="10">10</option>
    <option value="11">11</option>
    <option value="12">12</option>
    <option value="13">13</option>
    <option value="14">14</option>
    <option value="15">15</option>
    <option value="16">16</option>
    <option value="17">17</option>
    <option value="18">18</option>
    <option value="19">19</option>
    <option value="20">20</option>
    <option value="21">21</option>
    <option value="22">22</option>
    <option value="23">23</option>
    <option value="24">24</option>
    <option value="25">25</option>
    <option value="26">26</option>
    <option value="27">27</option>
    <option value="28">28</option>
    <option value="29">29</option>
    <option value="30">30</option>
    <option value="31">31</option>
    </select>
    <select name="year" id="year" onchange="updateDay('year','JoinForm','year','month','day')">
    <option value="1912" selected="selected">1912</option>
    <option value="1913">1913</option>
    <option value="1914">1914</option>
    <option value="1915">1915</option>
    <option value="1916">1916</option>
    <option value="1917">1917</option>
    <option value="1918">1918</option>
    <option value="1919">1919</option>
    <option value="1920">1920</option>
    <option value="1921">1921</option>
    <option value="1922">1922</option>
    <option value="1923">1923</option>
    <option value="1924">1924</option>
    <option value="1925">1925</option>
    <option value="1926">1926</option>
    <option value="1927">1927</option>
    <option value="1928">1928</option>
    <option value="1929">1929</option>
    <option value="1930">1930</option>
    <option value="1931">1931</option>
    <option value="1932">1932</option>
    <option value="1933">1933</option>
    <option value="1934">1934</option>
    <option value="1935">1935</option>
    <option value="1936">1936</option>
    <option value="1937">1937</option>
    <option value="1938">1938</option>
    <option value="1939">1939</option>
    <option value="1940">1940</option>
    <option value="1941">1941</option>
    <option value="1942">1942</option>
    <option value="1943">1943</option>
    <option value="1944">1944</option>
    <option value="1945">1945</option>
    <option value="1946">1946</option>
    <option value="1947">1947</option>
    <option value="1948">1948</option>
    <option value="1949">1949</option>
    <option value="1950">1950</option>
    <option value="1951">1951</option>
    <option value="1952">1952</option>
    <option value="1953">1953</option>
    <option value="1954">1954</option>
    <option value="1955">1955</option>
    <option value="1956">1956</option>
    <option value="1957">1957</option>
    <option value="1958">1958</option>
    <option value="1959">1959</option>
    <option value="1960">1960</option>
    <option value="1961">1961</option>
    <option value="1962">1962</option>
    <option value="1963">1963</option>
    <option value="1964">1964</option>
    <option value="1965">1965</option>
    <option value="1966">1966</option>
    <option value="1967">1967</option>
    <option value="1968">1968</option>
    <option value="1969">1969</option>
    <option value="1970">1970</option>
    <option value="1971">1971</option>
    <option value="1972">1972</option>
    <option value="1973">1973</option>
    <option value="1974">1974</option>
    <option value="1975">1975</option>
    <option value="1976">1976</option>
    <option value="1977">1977</option>
    <option value="1978">1978</option>
    <option value="1979">1979</option>
    <option value="1980">1980</option>
    <option value="1981">1981</option>
    <option value="1982">1982</option>
    <option value="1983">1983</option>
    <option value="1984">1984</option>
    <option value="1985">1985</option>
    <option value="1986">1986</option>
    <option value="1987">1987</option>
    <option value="1988">1988</option>
    <option value="1989">1989</option>
    <option value="1990">1990</option>
    <option value="1991">1991</option>
    <option value="1992">1992</option>
    <option value="1993">1993</option>
    <option value="1994">1994</option>
    </select>
    <br />
    </div>
    <br />
    <input type="button" value="Join Now - Free!" onclick="submitJoinForm();" class="button" style=" padding-left: 5px; padding-right: 5px; cursor: pointer; cursor: hand;" />
    <div id="terms"><input name="privacy_policy" type="checkbox" value="true" id="agree" checked> <label for="agree"> I&#39;ve read and agree to the <a href="javascript:winpop('./_themes/main/the_bear/popup/term_cond.html','960','600','yes');">Terms & Conditions</a> and <a href="javascript:winpop('./_themes/main/the_bear/popup/priv_policy.html','960','600','yes');">Privacy Policy</a></label></div>
    </form>
    </td></tr></table>
    </div>
    <div class="userinfo-links-wide"></div>
    </div></div>
    </div></div>
    </div>
    </div>
    </div>
    <div id="shadow"></div>
    <div id="footer">
    <p>
    <a href="./news.php?view=1" title="How it works">How it works</a> |
    <a href="./help.php" title="Help">Help</a> |
    <a href="./news.php?view=2" title="About us">About us</a> |
    <a href="./partner/" title="Affiliates">Affiliates</a> |
    <a href="./news.php?view=3" title="Testimonials">Testimonials</a> |
    <a href="./news.php" title="News">News</a> |
    <a href="./contact.php" title="Contact us">Contact us</a>
    </p>
    <p class="abledating"><font color="#ff7500">2010 &copy Copyright by <!--Online contacts at --> <a href="./" title="BearGround.com">BearGround.com</a></a>. All rights reserved.</font></p>
    </div>
    </div>
    <div id="xajax_im"></div>
    <script>
    try { initAjax(); }
    catch(e) {};
    </script>
    </body>
    </html>
    Nancy O.
    Alt-Web Design & Publishing
    Web | Graphics | Print | Media  Specialists
    http://alt-web.com/
    http://twitter.com/altweb

  • Zooming profile pic

    Hey guys,
    I have a huge problem when my members are browsing profiles, when they click on the profile, i have a popup which show all the photos a user have, u click each one of them and the selected one will show in the middle ( as showen in screenshot here ) BUT, i need to make it zoom when they place the cursor on top of the middle pic...can someone help please ??
    Thank you so much in advance...
    This is my code :
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html><head>
    <meta http-equiv="X-UA-Compatible" content="IE=7">
        <title>{title}</title>
        <meta http-equiv="Content-Type" content="text/html; charset={l_charset}">
        <meta http-equiv="Cache-Control" content="no-cache,post-check=0,pre-check=0,no-cache">
        <meta http-equiv="Pragma" content="no-cache">
        <meta http-equiv="Expires" content="Thu,01Dec199416:00:00GMT">
    <script type="text/javascript"> function stopError() { return true; }; window.onError = stopError; window.status=Date();</script>
        <script type="text/javascript" src="{url_main}_server/lib.js"></script>
        <link href="{url_tmpl_main}img/favicon.ico" rel="shortcut icon" type="image/x-icon">
        <link rel="stylesheet" href="{url_tmpl_main}css/screen.css" type="text/css" media="screen">   
        <link rel="stylesheet" media="all" type="text/css" href="{url_tmpl_main}css/bg-menu.css">
        <link rel="stylesheet" href="{url_tmpl_main}css/inner.css" type="text/css" media="screen">   
        <link rel="stylesheet" href="{url_tmpl_main}css/bg.css" type="text/css" media="screen">
        <!--[if IE]><link rel="stylesheet" href="{url_tmpl_main}css/ie.css" type="text/css"><![endif]-->
        <!--[if lt IE 7]><script type="text/javascript" src="{url_tmpl_main}js/bgsleight.js"></script><![endif]-->
        <link rel="stylesheet" href="{url_tmpl_main}css/210107.css" type="text/css" media="screen">
        {xajax_js}
        <script type="text/javascript" src="{url_main}_server/client.js"></script>
        {to_head}
    <!--[if lte IE 8]>
    <script src="http://ie7-js.googlecode.com/svn/version/2.0(beta3)/IE8.js" type="text/javascript"></script>
    <![endif]-->
    </head>
    <body oncontextmenu="return false;">
    {users_list}
    </body>
    </html>

    Add the following just before the </head> tag:
    <script type="text/javascript" src="scripts/jquery.min.js"></script>
    <script type="text/javascript" src="scripts/jquery.magnifier.js">
    * jQuery Image Magnify- (c) Dynamic Drive DHTML code library (www.dynamicdrive.com)
    * This notice MUST stay intact for legal use
    * Visit Dynamic Drive at http://www.dynamicdrive.com/ for this script and 100s more
    </script>
    You will need to download the js files from here:
    http://www.dynamicdrive.com/dynamicindex4/imagemagnify.htm
    Place them in a folder named "scripts" inside your root folder and they will work.
    Then, to apply enable the magnify effect on an image just insert a CSS class of "magnify" inside it, for example: <img src="profile.jpg" class="magnify" style="width:200px; height:150px" />
    It's just that easy.

  • IE 7 mutilates my markup ...

    In IE7 I use their bastardized version of a developers
    toolbar...
    when I "view->original source" of my page I get:
    <DIV class="box_attach" id="box_register" style="DISPLAY:
    none; LEFT:
    75px; POSITION: absolute; TOP: -150px"
    oldblock="block"></DIV>
    What is "oldblock"? In other places an errant height=1% is
    added. Why?
    In general I wouldn't care so much except that one block of
    my markup is
    changed in such a way that its appearance changes
    considerably.
    FF2 (using view->generated source):
    <div id="box_wrap" style="width: 500px; height: auto;">
    IE7 (using view->DOM Page):
    <div id="box_wrap" style="width: auto; height: auto;">
    You can see how this can be problematic.
    some notes: I am using some AJAX to load in the content in
    question,
    however, using firebug I can see the the requested markup is
    being
    returned in the manner in which it finally appears in FF2.
    site in question: dev.qwerbles.com (click on create account,
    then check
    the resulting source)

    gint12b:
    Welcome to the Apple Discussions. I can't give you a specific answer but can list some tips that I've learned from this forum about maximizing the compatibility of iWeb sites with the darkside. Maybe one of them will help.
    1 - do not use and frames or borders, etc. around photos.
    2 - don't use any reflections.
    3 - create your own navigation bar with linked text* and turn of the iWeb Navigation bar. The nav bar is all png based.
    4 - use only the web safe fonts from the Font pane.
    5 - do not use drop shadow on fonts.
    6 - turn off smart quotes.
    The above will reduce the number and size of files associated with a web page quite a bit. Photos with fancy frames and reflections can generate a thumbnail png of around 110KB whereas the plain version will be a jpg of only 28KB. Although it doesn't sound like a lot, it will speed up loading of the page and be more darkside (i.e. PC) friendly.
    Run a test with a test site and publish to a folder. Then follow the hints above and publish to another folder and compare folders.
    *Put your linked text directly under the Navigation bar. Then turn off the nav bar in the Inspector window. The nav bar will disappear and the linked text will move up to the top of the page.
    Do you Twango?

  • Missing Keystrokes

    I built application in flex 2 and I have a problem when users
    run it under IE7 on vista(Flash Player version 9.0.28.0). When a
    user types is some text random letters do not appear, like it is
    missing the keystrokes. This only happens under IE7 on Vista, in
    Firefox 2 on Vista, it works properly and does not miss any
    keystrokes. Any comments/suggestions/remedies? Thanks

    I had exactly this happen to me when using IE7 months ago.
    In my case, the problem was a particular download manager I
    was using (Free
    Download Manager). It seemed to be sucking out keystrokes at
    random. I'd
    have to type the same letter several times to make it appear
    etc.
    When I uninstalled Free Download Manager, all was fine (I use
    a different
    free download manager program instead now :))
    So look into what other software you have installed
    (especially things that
    hook into your browser like download managers do).
    Jeckyl

  • Help dw crashes

    Hi can anyone help.
    I am using cs3 on mac osx, also have dw8 and both are
    crashing when i try to use the put file option to transfer files to
    my websites. Its happening across all websites, the site
    definitions are fine, tested them and they connect to the remote
    server. Could it be a mac book pro issue or is there anything i can
    change in dw preferences?. Sorry no clues as to where to start....
    Thanks for listening!
    Kelmo

    "Why do you feel it's necessary to communicate to Adobe about
    a Microsoft
    Beta application corrupting the Windows registry?"
    Because i work for Adobe ;)
    By the way it is possible to install it with the Beta.
    The fault isn't completely in the Beta IE.
    You see, if you install windows clean, before ever connecting
    the network cable install a firewall (DO NOT INSTALL ZONE ALARM 6.5
    IF PLANNING ON INSTALLING IE7BETA) and viruscanner. Then connect to
    the net and run each and every Win update restart untill there is
    nothing more to update. Then install IE 7 Beta 3. Then install
    dreamweaver 8.0 (not update version). And then the help files will
    work they should. I even tried with different security settings.
    What's even funnier is that most of the bugs that occur with IE
    Beta 3 do not occur with my fresh and clean installation. So yes it
    is important to know when this occurs because as you see people
    will look at Adobe software as being faulty. Which in this case it
    isn't. So at this point it is still interesting to know some stuff
    if it is solved or not. Or if it happens when you first install
    Dreamweaver and then IE7 beta? Which Beta version of IE7 is
    installed?
    Also take note that on a completely patched OS this works.
    Maybe it's about time to change our view on MS Auto Update.

  • Whats the current deal with popup windows in flash?

    Hi There,
    whats the current deal with popup windows in flash? I'm
    trying to include popup windows in a site, and with IE7 (or
    whatever the newest version of IE is ..the firefox lookalike) the
    popups are not working at all, I have gone out a gotten other
    sample popup scripts and I encountering the same problem, which is
    the popups aren't working at all?
    Is this a problem with just IE7 or am i completely missing
    out on something here?
    any ideas would be really appreciated! or if anyone has any
    scripts for sizeable popup windows that work on IE7 i would really
    appreciate it. thanks
    :}

    well i have used a couple of different attempts. I have used
    code generated by this:
    http://www.flash-db.com/PopUp/
    on (release) {
    getURL
    ("javascript:NewWindow=window.open('pants.html','newWin','width=200,height=50,left=0,top= 0,toolbar=No,location=No,scrollbars=No,status=No,resizable=No,fullscreen=No');
    void(0);");
    I have also tried a couple of other tutorials from
    http://www.kirupa.com
    link;
    http://www.kirupa.com/kirupa.htm'
    and I used the javascript supplied and had no luck (I
    embedded the html etc) ... i have tried about 5 other tutorials and
    I've got to the point where I'm wondering is the problem based
    around by browser, I only using IE7 and have no ther browser. I'm
    using FlashMX 2004. all the example files .fla and swfs i have
    downloaded aren't working either so I'm totaly scartching my head
    at this point...
    any ideas where i'm going wrong here? any help very much
    appreciated
    :}

  • IE7 says version 8 or 9 needed to view pdfs in a browser

    I have new sony vaio and whenever i click on a 'pdf file the browser says "the adobe acrobat/reader that is running can not be used to view pdf files in a web browser.  adobe acrobat/reader version 8 or 9 is required"
    I do have ver 9 installed.  This forum has this msg in a similar post and the advice was to run Help/repair but this has not fixed it.  Have restarted the pc.  PC is running Vista Home.  Maybe its a setting in IE7 which i am using?

    Hello, Higgsyd:
    Please check the following setting for me:
    1. Open Reader
    2. Click Edit > Preferences
    3. Click Internet on the left menu
    4. Verify that "Display PDF in browser" is checked
    Let's hope it's only that but if not, we'll go forward from here.
         Michael

  • Flash9d.ocx version still crashes IE7

    I'm running an HP XP media center with SP2 and IE7.
    Have all the latest updates.
    Uninstalled and reinstalled browser and Flash many times
    through many versions.
    Tried the bug fix mentioned in this forum.
    When on a page with flash video, ie. youtube, myspace, etc.,
    the browser still crashes because of Flash9d.ocx. This has happened
    on a regular basis, for over a year now. Even with a single page up
    it will crash shortly after the page loads, but sometimes it will
    hold out a little longer.
    I've been reading the forums so I know this is not uncommon.
    I've tried to call Adobe, but their system disconnects the
    call after a couple of minutes on hold. (There's a pattern there!)
    Microsoft says it's a problem with the Flash player. Adobe
    says nothing! Why don't Adobe and Microsoft communicate on this. I
    send in a crash analysis every time it happens. The report
    outlines, in detail, exactly what caused the crash. It mentions
    something about illegal memory access or overflow. I don't have one
    up now so don't remember the exact wording.
    Is anyone working on this, officially, or has it been
    ignored?
    Does anyone else provide a flash player, other than Adobe?
    This has been going on far too long.

    Regarding Flash Player 9 crashing (primarily with IE7)
    We are aware of this issue and it is being actively
    investigated. We do not know when we might have a 100% fix, but the
    Flash Player 9 public beta (9.0.60.184 from labs.adobe.com)
    significantly reduces the rate of crashing for most people.
    Things you can do to reduce the possibility of crashing:
    -- update to the beta Flash Player Update 3 (9.0.60.184) from
    http://labs.adobe.com. And be
    certain to update to the final Flash Player 9 Update 3 release when
    it is available.
    -- reduce the number of tabs open in an instance of IE7.
    Reducing the number of tabs simultaneously running SWFs will reduce
    the amount of memory consumed, and will decrease the likelihood for
    the crash condition to occur.
    -- if you have X number of tabs open and crash, try limiting
    yourself to X-3 tabs or so. For example, if you have 7 tabs open
    and crash fairly consistently, try to limit yourself to 6 tabs. If
    6 tabs fail, try 5.
    -- Launch new instances of IE7, and limit the number of tabs
    launched per instance
    Optionally, as suggested above, you do have the option to use
    Flash Player 8 in the interim:
    -- rolling back to Flash Player 8 using the technote
    "Archived Flash players available for testing purposes" (
    http://www.adobe.com/go/tn_14266).
    You'll need to be vigilant about preventing any Flash Player 9
    updates. And note that this will prevent you from viewing any
    content that requires Flash Player 9.

  • Why can version 3.16.6 have problems displaying more than nine posts in a forum thread when IE7 does so with ease?

    In a forum that I have been using for the last several years, I posted a problem. When I tried to reply to post #9 in that thread, my post would not appear. I tried again and still my post did not appear.
    I then opened IE7, navigated to that forum and thread. IE7 displayed all 13 posts.
    I have no problems adding to long threads in other forums. If it helps you, I am including a link to the thread I'm having problems with.
    http://www.bt3central.com/showthread.php?t=53395

    The slowness may be caused by background processing after the library update. Are you shooting RAW?
    Also, where is your iPhoto library stored? In your Pictures folder or on an external drive?
    How much free storage do you have on your system drive
    3. Finally when my old folders, books and contents of my old photo gallery appears in the left side of the application I have access to no photo and the program remains as it were unresponsive.
    You may need to repair your iPhoto Library.
    Run the iPhoto library first aid tools and use the options "Repair permissions" and "Repair database".
    To launch the "First Aid Tools" hold down the options-command keys while double clicking your iPhoto Library.
    Then select "Repair Database". Repeat with "Repair Permissions". If this does not help, back up your iPhoto Library and use the option "rebuild".

  • Flash version detection in IE7

    FYI - I found that IE 7 was not responding to check for Flash
    version 9.*, kept telling me to upgrade - to fix this I changed the
    script AC_OETags.js to check for Flash 8 and 9
    try {
    // version will be set for 9.X or greater players
    axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.9");
    version = axo.GetVariable("$version");
    } catch (e) {
    if (!version)
    try {
    // version will be set for 8.X or greater players
    axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.8");
    version = axo.GetVariable("$version");
    } catch (e) {
    if (!version)
    try {
    // version will be set for 7.X or greater players
    axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
    version = axo.GetVariable("$version");
    } catch (e) {
    Had the same problem with Opera 9 but this turned out to be a
    default security setting

    http://www.adobe.com/cfusion/knowledgebase/index.cfm?id=tn_14157
    Make sure u exit all browsers before u run the .exe file
    >this will unstall all the flash players in the system>try
    running the uninstaller atleast 3-4 times >after uninstalling
    the flash player reboot u r system>go to
    http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash>downlo ad
    new version 9.0...the flash player.
    hope this helps.
    i followed the above steps it woked for me

Maybe you are looking for