Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): Failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found
in /home/monara/public_html/test.athavaneng.com/themes.php on line 99
Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 226
Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 227
Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 228
Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 229
Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 230
Warning: Cannot modify header information - headers already sent by (output started at /home/monara/public_html/test.athavaneng.com/themes.php:1) in /home/monara/public_html/test.athavaneng.com/themes.php on line 231
.
/**
* Class account_gateway
*
* @package core_payment
* @copyright 2020 Marina Glancy
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace core_payment;
use core\persistent;
/**
* Class account_gateway
*
* @package core_payment
* @copyright 2020 Marina Glancy
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class account_gateway extends persistent {
/**
* Database table.
*/
const TABLE = 'payment_gateways';
/**
* Return the definition of the properties of this model.
*
* @return array
*/
protected static function define_properties(): array {
return array(
'accountid' => [
'type' => PARAM_INT,
],
'gateway' => [
'type' => PARAM_COMPONENT,
],
'enabled' => [
'type' => PARAM_BOOL,
'default' => true
],
'config' => [
'type' => PARAM_RAW,
'optional' => true,
'null' => NULL_ALLOWED,
'default' => null
],
);
}
/**
* Return the gateway name ready for display
*
* @return string
*/
public function get_display_name(): string {
return get_string('pluginname', 'paygw_' . $this->get('gateway'));
}
/**
* Gateway management url
*
* @return \moodle_url
*/
public function get_edit_url(): \moodle_url {
$params = $this->get('id') ? ['id' => $this->get('id')] :
['accountid' => $this->get('accountid'), 'gateway' => $this->get('gateway')];
return new \moodle_url('/payment/manage_gateway.php', $params);
}
/**
* Get corresponding account
*
* @return account
*/
public function get_account(): account {
return new account($this->get('accountid'));
}
/**
* Parse configuration from the json-encoded stored value
*
* @return array
*/
public function get_configuration(): array {
$config = @json_decode($this->get('config'), true);
return ($config && is_array($config)) ? $config : [];
}
}