Server IP : 66.29.132.124 / Your IP : 3.135.214.216 Web Server : LiteSpeed System : Linux business141.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : wavevlvu ( 1524) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/wavevlvu/tacafoundation.org/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](); } }