Done !
| Server IP : 46.105.57.169 / Your IP : 216.73.216.67 Web Server : Apache System : Linux webm002.cluster120.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : verseaumee ( 152031) PHP Version : 8.5.7 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/verseaumee/blueversion/wp-content/plugins/give/src/Form/ |
Upload File : |
<?php
/**
* Handle Form Templates
*
* @package Give
* @since 2.7.0
*/
namespace Give\Form;
use Give\Helpers\Form\Template as FormTemplateUtils;
use Give\Views\Form\Templates\Classic\Classic;
use Give\Views\Form\Templates\Legacy\Legacy;
use Give\Views\Form\Templates\Sequoia\Sequoia;
defined('ABSPATH') || exit;
/**
* Class Templates
*
* @package Give\Form
*
* @since 2.7.0
*/
class Templates
{
/**
* Templates
*
* @var array
*/
private $templates = [];
/**
* Template Objects
*
* @var Template[]
*/
private $templateObjs = [];
/**
* Load templates
*
* @since 2.7.0
*/
public function load()
{
/**
* Filter list of form template
*
* @since 2.7.0
*
* @param array $templates
*/
$this->templates = apply_filters(
'give_register_form_template',
[
'sequoia' => Sequoia::class,
'classic' => Classic::class,
'legacy' => Legacy::class,
]
);
}
/**
* Get Registered templates
*
* @since 2.7.0
* @return Template[]
*/
public function getTemplates()
{
// Check if all templates have there object or not.
$remainingObjs = array_diff(array_keys($this->templates), array_keys($this->templateObjs));
// Get object if any remaining
if ($remainingObjs) {
foreach ($remainingObjs as $templateId) {
$this->templateObjs[$templateId] = $this->getTemplateObject($templateId);
}
}
return $this->templateObjs;
}
/**
* Get Registered form template
*
* @since 2.7.0
*
* @param string $templateId Template Id. Default to active form template.
*
* @return Template
*/
public function getTemplate($templateId = null)
{
$templateId = $templateId ?: FormTemplateUtils::getActiveID();
if (isset($this->templateObjs[$templateId])) {
return $this->templateObjs[$templateId];
}
$this->templateObjs[$templateId] = $this->getTemplateObject($templateId);
return $this->getTemplateObject($templateId);
}
/**
* Get class object.
*
* @since 2.7.0
*
* @param string $templateId
*
* @return Template
*/
private function getTemplateObject($templateId)
{
return new $this->templates[$templateId]();
}
}