From 67cf87d17c68af817b565ec567fbcd2716bcbcbe Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Thu, 20 Sep 2018 17:59:58 +0400 Subject: Correction of the file name Signed-off-by: Valentin Popov --- classes/ui_forms_plugin.php | 103 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 classes/ui_forms_plugin.php (limited to 'classes/ui_forms_plugin.php') diff --git a/classes/ui_forms_plugin.php b/classes/ui_forms_plugin.php new file mode 100644 index 0000000..2cd7541 --- /dev/null +++ b/classes/ui_forms_plugin.php @@ -0,0 +1,103 @@ +. + +/** + * Defines forms. + * + * @copyright 2018 'Valentin Popov' + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * @package local_webhooks + */ + +defined( "MOODLE_INTERNAL" ) || die(); + +require_once( $CFG->dirroot . "/local/webhooks/lib.php" ); +require_once( $CFG->libdir . "/formslib.php" ); + +/** + * Description editing form definition. + * + * @copyright 2018 'Valentin Popov' + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * @package local_webhooks + */ +class local_webhooks_service_edit_form extends moodleform { + /** + * @param string $baseUrl + */ + public function __construct( $baseUrl ) { + parent::__construct( $baseUrl ); + } + + /** + * Defines the standard structure of the form. + */ + protected function definition() { + $mForm =& $this->_form; + $size = array( "size" => 60 ); + + /* Form heading */ + $mForm->addElement( "header", "editserviceheadermain", new lang_string( "service", "webservice" ) ); + + /* Name of the service */ + $mForm->addElement( "text", "name", new lang_string( "name", "moodle" ), $size ); + $mForm->addRule( "name", null, "required" ); + $mForm->setType( "name", PARAM_RAW ); + + /* Callback address */ + $mForm->addElement( "text", "point", new lang_string( "url", "moodle" ), $size ); + $mForm->addRule( "point", null, "required" ); + $mForm->setType( "point", PARAM_URL ); + + /* Enabling the service */ + $mForm->addElement( "advcheckbox", "status", new lang_string( "enable", "moodle" ) ); + $mForm->setType( "status", PARAM_BOOL ); + $mForm->setDefault( "status", 1 ); + $mForm->setAdvanced( "status" ); + + /* Token */ + $mForm->addElement( "text", "token", new lang_string( "token", "webservice" ), $size ); + $mForm->addRule( "token", null, "required" ); + $mForm->setType( "token", PARAM_RAW ); + + /* Content type */ + $contentType = array( + "application/json" => "application/json", + "application/x-www-form-urlencoded" => "application/x-www-form-urlencoded", + ); + + $mForm->addElement( "select", "header", "Content-Type", $contentType ); + $mForm->setAdvanced( "header" ); + + /* Form heading */ + $mForm->addElement( "header", "editserviceheaderevent", new lang_string( "edulevel", "moodle" ) ); + + /* List of events */ + $eventList = report_eventlist_list_generator::get_all_events_list( true ); + + $events = array(); + foreach ( $eventList as $event ) { + $events[ $event[ "component" ] ][] =& $mForm->createElement( "checkbox", $event[ "eventname" ], $event[ "eventname" ] ); + } + + foreach ( $events as $key => $event ) { + $mForm->addGroup( $event, "events", $key, "
", true ); + } + + /* Control Panel */ + $this->add_action_buttons( true ); + } +} -- cgit v1.2.3