cancel
Showing results for 
Search instead for 
Did you mean: 

One Step Checkout Age Validation Field

   Did you know you can see the translated content as per your choice?

Translation is in progress. Please check again after few minutes.

One Step Checkout Age Validation Field

Hi guys,

 

How can I add the age validation field in one step checkout module? Is there an easy way?

 

Best,

 

Kay

1 REPLY 1

Re: One Step Checkout Age Validation Field

 It use dob.phtml widget.

 

Find customer/widget/dob.phtml and add it to your template from Base

 

Just add the following JS to the <script> tags

 

Varien.DOB.prototype.initialize = Varien.DOB.prototype.initialize.wrap(
    function(original, selector, required, format) {
        var el = $$(selector)[0];
        var container       = {};
        container.day       = Element.select(el, '.dob-day input')[0];
        container.month     = Element.select(el, '.dob-month input')[0];
        container.year      = Element.select(el, '.dob-year input')[0];
        container.full      = Element.select(el, '.dob-full input')[0];
        container.advice    = Element.select(el, '.validation-advice')[0];
        //we need this to make the object avaliable and enable wrapping of  validation method
        this.dateElement = new Varien.DateElement('container', container, required, format);
    }
);
Varien.DateElement.prototype.validate = Varien.DateElement.prototype.validate.wrap(
    function(original){
        if(original()){
            var today = new Date();
            if (today >= new Date(this.fullDate.getFullYear() + 18, this.fullDate.getMonth(), this.fullDate.getDate())) {
                return true;
            } else {
                this.advice.innerHTML = this.errorTextModifier(Translator.translate('You have to be at least 18 years old.'));
                this.advice.show();
                return false;
            }
        }
    }
);