<?php

/**
 * PhoneNumber
 *
 * @author Janusz Chodzicki <j-ch@o2.pl>
 */

class Eppe_Validate_PhoneNumber extends Zend_Validate_Abstract {

	const INVALID = 'This field is required';

	protected $_messageTemplates = array(
	    self::INVALID => "Incorrect telephone number"
	);

	public function __construct($options = null) {
		Eppe_Validate::setupConstructorOptions($this, $options);
	}

	public function isValid($value) {
		if (preg_match("/^(\+)?([0-9]+\s?)*(\([0-9]+\-?[0-9]+\)\-?\s?)*([0-9]+\-[0-9]+)*([0-9]+)*$/", trim($value))) {
			return true;
		} else {
			$this->_error(self::INVALID);
			return false;
		}
	}

}