<?php

class Eppe_Validate_PolishZipCode extends Zend_Validate_Abstract {
	const INVALID_ZIP_CODE = 'invalidZipCode';

	protected $_messageTemplates = array(
	self::INVALID_ZIP_CODE => "'%value%' is not a valid polish zip code.",
	);
	
	public function __construct($options = null) {
		Eppe_Validate::setupConstructorOptions($this, $options);
	}
	/**
	 * Sprawdza poprawność podanego kodu pocztowego
	 * @param type $value
	 * @return boolean
	 */
	public function isValid($value)	{
		$valueString = (string) $value;
		$this->_setValue($valueString);

		if (!preg_match('/[0-9]{2}-[0-9]{3}/', $value)) {
			$this->_error(self::INVALID_ZIP_CODE);
			return false;
		}
	return true;
	}
}
?>
