public function manage_messageoutputs($processors) {
        // Display the current workflows
        $table = new html_table();
        $table->attributes['class'] = 'admintable generaltable';
        $table->data        = array();
        $table->head        = array(
            get_string('name'),
            get_string('enable'),
            get_string('settings'),
        );
        $table->colclasses = array(
            'displayname', 'availability', 'settings',
        );

        foreach ($processors as $processor) {
            $row = new html_table_row();
            $row->attributes['class'] = 'messageoutputs';

            $name = new html_table_cell(get_string('pluginname', 'message_'.$processor->name));
            $enable = new html_table_cell();
            if (!$processor->available) {
                $enable->text = html_writer::nonempty_tag('span', get_string('outputnotavailable', 'message'),
                    array('class' => 'error')
                );
            } else {
                $enable->text = html_writer::checkbox($processor->name, $processor->id, $processor->enabled, '',
                    array('id' => $processor->name)
                );
            }
            // Settings
            $settings = new html_table_cell();
            if ($processor->available && $processor->hassettings) {
                $settingsurl = new moodle_url('/admin/settings.php', array('section' => 'messagesetting'.$processor->name));
                $settings->text = html_writer::link($settingsurl, get_string('settings', 'message'));
            }

            $row->cells = array($name, $enable, $settings);
            $table->data[] = $row;
        }
        return html_writer::table($table);
    }
public function manage_messageoutputs($processors) {
        // Display the current workflows
        $table = new html_table();
        $table->attributes['class'] = 'admintable generaltable';
        $table->data        = array();
        $table->head        = array(
            get_string('name'),
            get_string('enable'),
            get_string('settings'),
        );
        $table->colclasses = array(
            'displayname', 'availability', 'settings',
        );

        foreach ($processors as $processor) {
            $row = new html_table_row();
            $row->attributes['class'] = 'messageoutputs';

            $name = new html_table_cell(get_string('pluginname', 'message_'.$processor->name));
            $enable = new html_table_cell();
            if (!$processor->available) {
                $enable->text = html_writer::nonempty_tag('span', get_string('outputnotavailable', 'message'),
                    array('class' => 'error')
                );
            } else {
                $enable->text = html_writer::checkbox($processor->name, $processor->id, $processor->enabled, '',
                    array('id' => $processor->name)
                );
            }
            // Settings
            $settings = new html_table_cell();
            if ($processor->available && $processor->hassettings) {
                $settingsurl = new moodle_url('/admin/settings.php', array('section' => 'messagesetting'.$processor->name));
                $settings->text = html_writer::link($settingsurl, get_string('settings', 'message'));
            }

            $row->cells = array($name, $enable, $settings);
            $table->data[] = $row;
        }
        return html_writer::table($table);
    }
public function manage_messageoutputs ( $ processors ) { // Display the current workflows $ table = new html_table ( ) ; $ table -> attributes [ 'class' ] = 'admintable generaltable' ; $ table -> data = array ( ) ; $ table -> head = array ( get_string ( 'name' ) , get_string ( 'enable' ) , get_string ( 'settings' ) , ) ; $ table -> colclasses = array ( 'displayname' , 'availability' , 'settings' , ) ; foreach ( $ processors as $ processor ) { $ row = new html_table_row ( ) ; $ row -> attributes [ 'class' ] = 'messageoutputs' ; $ name = new html_table_cell ( get_string ( 'pluginname' , 'message_' . $ processor -> name ) ) ; $ enable = new html_table_cell ( ) ; if ( ! $ processor -> available ) { $ enable -> text = html_writer :: nonempty_tag ( 'span' , get_string ( 'outputnotavailable' , 'message' ) , array ( 'class' => 'error' ) ) ; } else { $ enable -> text = html_writer :: checkbox ( $ processor -> name , $ processor -> id , $ processor -> enabled , '' , array ( 'id' => $ processor -> name ) ) ; } // Settings $ settings = new html_table_cell ( ) ; if ( $ processor -> available && $ processor -> hassettings ) { $ settingsurl = new moodle_url ( '/admin/settings.php' , array ( 'section' => 'messagesetting' . $ processor -> name ) ) ; $ settings -> text = html_writer :: link ( $ settingsurl , get_string ( 'settings' , 'message' ) ) ; } $ row -> cells = array ( $ name , $ enable , $ settings ) ; $ table -> data [ ] = $ row ; } return html_writer :: table ( $ table ) ; }
Display the interface to manage message outputs

@param  array  $processors array of objects containing message processors
@return string The text to render
Display the interface to manage message outputs