Štruktúra súborov

Moduly

Moduly by mali byť uložené niekde v adresári /include/ alebo /local_service/CUSTOMER_DIR/include/.
CUSTOMER_DIR je názov adresára konkrétneho zákazníka.

Príklad súboru /include/accounts/accountTools.class.php.

<?php
 
if (defined('__STUDIO2_ACCOUNTS_ACCOUNT_TOOLS_CLASS_LAYER__')) return;
define('__STUDIO2_ACCOUNTS_ACCOUNT_TOOLS_CLASS_LAYER__', 1);
 
 
class studio2_accounts__accountTools extends studio2_core_module
{
 
	private $forgotPasswordExpireHours = 1;
 
 
	private $sendActivateInstructionsExpireHours = 336; //24 * 14;
 
	/**
	 *
	 * @see setEmail()
	 */
	function fSetEmail($settings = array())
	{
		return $this->cc_flash(array($this, "setEmail"), $settings);
	}
 
 
	/**
	 * Nastaví email pre aktuálne prihlásený účet.
	 *
	 * @param	array	$settings
	 * @param	string	$settings["email"]
	 */
	function setEmail($settings = array())
	{
		if ($_SESSION['remote_addr'] !== $_SERVER['REMOTE_ADDR']) {
			sleep(2);
			return x2_register_result(FALSE, getErrorText("1013.05.16"));
		}
 
 
		if (empty($_SESSION["account_id"])) {
			sleep(2);
			return x2_register_result(FALSE, getErrorText("1013.05.1"));
		}
 
 
		if (!x2_validate_mail($settings["email"])) {
			// return x2_register_result(FALSE, getErrorText("1013.05.2"));
			return x2_register_result(FALSE, getErrorObject(getErrorText("1013.05.2"), array("repeatInput" => TRUE)));
		}
 
 
		$row = $this->db->row(
			"SELECT [account_id], [account_login], [account_name] FROM [st2_accounts] WHERE [account_email]=%s AND [account_id]!=%i",
			$settings["email"],
			$_SESSION["account_id"]
		);
 
 
		if ($row) {
			// return x2_register_result(FALSE, getErrorText("1013.05.7"));
			return x2_register_result(FALSE, getErrorObject(getErrorText("1013.05.7"), array("repeatInput" => TRUE)));
		}
 
 
		# ...

 
		return x2_register_result(TRUE);
	}
 
}
?>