# packeta/1.6.2/src/Packetery/Module/FormFactory.php

Packeta, version 1.6.2. 71 lines.

- Page: https://pluginprobe.com/plugins/packeta/1.6.2/code/src/Packetery/Module/FormFactory.php
- Raw: https://pluginprobe.com/plugins/packeta/1.6.2/raw/src/Packetery/Module/FormFactory.php
- Modified: 2023-08-30T08:36:18+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/packeta/1.6.2/code/src/Packetery/Module/FormFactory.php#L10-L20`.

```php
<?php
/**
 * Class FormFactory
 *
 * @package Packetery
 */

declare( strict_types=1 );

namespace Packetery\Module;

use Packetery\Nette\Forms\Form;
use Packetery\Nette\Forms\Validator;
use Packetery\Nette\Http\Request;

/**
 * Class FormFactory
 *
 * @package Packetery
 */
class FormFactory {

	/**
	 * HTTP Request.
	 *
	 * @var Request
	 */
	private $request;

	/**
	 * Plugin constructor.
	 *
	 * @param Request $request HTTP request.
	 */
	public function __construct( Request $request ) {
		add_action(
			'init',
			function () {
				// translators: keep %d placeholder intact.
				Validator::$messages[ Form::MIN ] = __( 'Please enter value greater than or equal to %d', 'packeta' );
				// translators: keep %d placeholder intact.
				Validator::$messages[ Form::MAX ] = __( 'Please enter value less than or equal to %d', 'packeta' );

				Validator::$messages[ Form::INTEGER ] = __( 'Enter valid number', 'packeta' );
				Validator::$messages[ Form::FLOAT ]   = __( 'Enter valid number', 'packeta' );
				Validator::$messages[ Form::FILLED ]  = __( 'This field is required', 'packeta' );
				// translators: %d is number of characters.
				Validator::$messages[ Form::LENGTH ] = __( 'Please enter exactly %d characters', 'packeta' );
				// translators: %d is number of characters.
				Validator::$messages[ Form::MAX_LENGTH ] = __( 'Please enter max %d characters', 'packeta' );
			},
			11
		);
		$this->request = $request;
	}

	/**
	 * Creates Form
	 *
	 * @param string|null $name Form name.
	 *
	 * @return Form
	 */
	public function create( ?string $name = null ): Form {
		$form = new Form( $name );
		$form->setHttpRequest( $this->request );
		$form->allowCrossOrigin();
		return $form;
	}
}

```
