Server IP : 192.158.238.246 / Your IP : 3.140.186.66 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/jenniferflocom/public_html/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](); } }