mirror of
https://github.com/moodle/moodle.git
synced 2025-01-17 05:28:30 +01:00
29a541724f
This has been generated running the following Sniff, part of the Moodle's CodeSniffer standard: - PSR2.Methods.MethodDeclaration It just ensures all the function declarations have the correct order for: - abstract and final. - visibility (public, protected, private). - static. So, all the lines modified by this commit are function declarations and the only changes are in the positions of those keywords.
67 lines
2.3 KiB
PHP
67 lines
2.3 KiB
PHP
<?php
|
|
// This file is part of Moodle - http://moodle.org/
|
|
//
|
|
// Moodle is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation, either version 3 of the License, or
|
|
// (at your option) any later version.
|
|
//
|
|
// Moodle is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
/**
|
|
* Contains base class for payment gateways.
|
|
*
|
|
* @package core_payment
|
|
* @copyright 2019 Shamim Rezaie <shamim@moodle.com>
|
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
|
*/
|
|
|
|
namespace core_payment;
|
|
|
|
/**
|
|
* Base class for payment gateways.
|
|
*
|
|
* @copyright 2019 Shamim Rezaie <shamim@moodle.com>
|
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
|
*/
|
|
abstract class gateway {
|
|
/**
|
|
* Returns the list of currencies that the payment gateway supports.
|
|
*
|
|
* @return string[] An array of the currency codes in the three-character ISO-4217 format
|
|
*/
|
|
abstract public static function get_supported_currencies(): array;
|
|
|
|
/**
|
|
* Configuration form for the gateway instance
|
|
*
|
|
* Use $form->get_mform() to access the \MoodleQuickForm instance
|
|
*
|
|
* @param \core_payment\form\account_gateway $form
|
|
*/
|
|
abstract public static function add_configuration_to_gateway_form(\core_payment\form\account_gateway $form): void;
|
|
|
|
/**
|
|
* Validates the gateway configuration form.
|
|
*
|
|
* Needs to be overridden to make sure the incomplete configuration can not be enabled.
|
|
*
|
|
* @param \core_payment\form\account_gateway $form
|
|
* @param \stdClass $data
|
|
* @param array $files
|
|
* @param array $errors form errors (passed by reference)
|
|
*/
|
|
public static function validate_gateway_form(\core_payment\form\account_gateway $form,
|
|
\stdClass $data, array $files, array &$errors): void {
|
|
if ($data->enabled) {
|
|
$errors['enabled'] = get_string('gatewaycannotbeenabled', 'payment');
|
|
}
|
|
}
|
|
}
|