if(!Nobirds) {
    var Nobirds = {};
}

// ================================= Nobirds.Options ======================================

/**
 * Пакет Nobirds.Utils
 */
if(!Nobirds.Utils) {
    Nobirds.Utils = {};
}

/**
 * Пакет Nobirds.Utils.Dates
 */
if(!Nobirds.Utils.Dates) {
    Nobirds.Utils.Dates = {};
}

/**
 * Класс парсера даты
 *
 * @param format формат
 */

Nobirds.Utils.Dates.DEFAULT_DATE_FORMAT = /(\d\d)\.(\d\d)\.(\d\d\d\d)/;

Nobirds.Utils.Dates.DateParser = function(format) {
    this.format = format ? format : Nobirds.Utils.Dates.DEFAULT_DATE_FORMAT;
};

Nobirds.Utils.Dates.DateParser.prototype.parse = function(datestring) {
    var result = [];
    if(result = this.format.exec(datestring)) {
        return Nobirds.Utils.Dates.DateParser.createDate(result[3], result[2] - 1, result[1]);
    } else {
        return null;
    }
};

/**
 * Создает дату из переданных года, месяца и дня
 *
 * @param year год
 * @param month месяц
 * @param date день
 */
Nobirds.Utils.Dates.DateParser.createDate = function(year, month, date) {
    var result = new Date(0);
    result.setFullYear(year, month, date);
    if(result.getMonth() == month && result.getDate() == date) {
        return result;
    } else {
        return null;
    }
};

/**
 * Пакет Nobirds.Utils.Validator
 */
if(!Nobirds.Utils.Validator) {
    Nobirds.Utils.Validator = {};
}

/**
 * Класс валидатора
 */
Nobirds.Utils.Validator.Validator = function() {
    // do nothing
};

Nobirds.Utils.Validator.Validator.prototype.validate = function(string) {
    // do nothing
};

/**
 * Класс валидатора для даты
 */

Nobirds.Utils.Validator.DateValidator = function(validator) {
    this.validator = validator;
};

Nobirds.Utils.Validator.DateValidator.protorype = new Nobirds.Utils.Validator.Validator();
Nobirds.Utils.Validator.DateValidator.constructor = Nobirds.Utils.Validator.DateValidator;

Nobirds.Utils.Validator.DateValidator.protorype.validate = function(string) {

};



