MDL-32009 reverting changes as they break installation
authorSam Hemelryk <sam@moodle.com>
Wed, 4 Apr 2012 02:37:37 +0000 (14:37 +1200)
committerSam Hemelryk <sam@moodle.com>
Wed, 4 Apr 2012 02:37:37 +0000 (14:37 +1200)
admin/message.php
lang/en/message.php
lib/messagelib.php
lib/pluginlib.php

index 8e78fc3..8daf613 100644 (file)
@@ -34,10 +34,6 @@ require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
 // Get the submitted params
 $disable    = optional_param('disable', 0, PARAM_INT);
 $enable     = optional_param('enable', 0, PARAM_INT);
-$uninstall  = optional_param('uninstall', 0, PARAM_INT);
-$confirm  = optional_param('confirm', false, PARAM_BOOL);
-
-$headingtitle = get_string('managemessageoutputs', 'message');
 
 if (!empty($disable) && confirm_sesskey()) {
     if (!$processor = $DB->get_record('message_processors', array('id'=>$disable))) {
@@ -46,37 +42,14 @@ if (!empty($disable) && confirm_sesskey()) {
     $DB->set_field('message_processors', 'enabled', '0', array('id'=>$processor->id));      // Disable output
 }
 
-if (!empty($enable) && confirm_sesskey()) {
+if (!empty($enable) && confirm_sesskey() ) {
     if (!$processor = $DB->get_record('message_processors', array('id'=>$enable))) {
         print_error('outputdoesnotexist', 'message');
     }
     $DB->set_field('message_processors', 'enabled', '1', array('id'=>$processor->id));      // Enable output
 }
 
-if (!empty($uninstall) && confirm_sesskey()) {
-    echo $OUTPUT->header();
-    echo $OUTPUT->heading($headingtitle);
-
-    if (!$processor = $DB->get_record('message_processors', array('id'=>$uninstall))) {
-        print_error('outputdoesnotexist', 'message');
-    }
-
-    $processorname = get_string('pluginname', 'message_'.$processor->name);
-
-    if (!$confirm) {
-        echo $OUTPUT->confirm(get_string('processordeleteconfirm', 'message', $processorname), 'message.php?uninstall='.$processor->id.'&confirm=1', 'message.php');
-        echo $OUTPUT->footer();
-        exit;
-
-    } else {
-        message_processor_uninstall($processor->name);
-        $a->processor = $processorname;
-        $a->directory = $CFG->dirroot.'/message/output/'.$processor->name;
-        notice(get_string('processordeletefiles', 'message', $a), 'message.php');
-    }
-}
-
-if ($disable || $enable || $uninstall) {
+if ($disable || $enable) {
     $url = new moodle_url('message.php');
     redirect($url);
 }
@@ -92,6 +65,6 @@ $messageoutputs = $renderer->manage_messageoutputs($processors);
 
 // Display the page
 echo $OUTPUT->header();
-echo $OUTPUT->heading($headingtitle);
+echo $OUTPUT->heading(get_string('managemessageoutputs', 'message'));
 echo $messageoutputs;
 echo $OUTPUT->footer();
\ No newline at end of file
index b92986a..0048a00 100644 (file)
@@ -108,8 +108,6 @@ $string['permitted'] = 'Permitted';
 $string['page-message-x'] = 'Any message pages';
 $string['private_config'] = 'Popup message window';
 $string['processortag'] = 'Destination';
-$string['processordeleteconfirm'] = 'You are about to completely delete message processor \'{$a}\'.  This will completely delete everything in the database associated with this processor. Are you SURE you want to continue?';
-$string['processordeletefiles'] = 'All data associated with the processor \'{$a->processor}\' has been deleted from the database.  To complete the deletion (and prevent the processor re-installing itself), you should now delete this directory from your server: {$a->directory}';
 $string['providers_config'] = 'Configure notification methods for incoming messages';
 $string['providerstag'] = 'Source';
 $string['recent'] = 'Recent';
index 6405930..b86ac10 100644 (file)
@@ -477,7 +477,6 @@ function message_processor_uninstall($name) {
 
     $transaction = $DB->start_delegated_transaction();
     $DB->delete_records('message_processors', array('name' => $name));
-    $DB->delete_records_select('config_plugins', "plugin = ?", array("message_{$name}"));
     // delete permission preferences only, we do not care about loggedin/loggedoff
     // defaults, they will be removed on the next attempt to update the preferences
     $DB->delete_records_select('config_plugins', "plugin = 'message' AND ".$DB->sql_like('name', '?', false), array("{$name}_provider_%"));
index 6943db4..612f9ad 100644 (file)
@@ -1531,60 +1531,14 @@ class plugintype_enrol extends plugintype_base implements plugin_information {
 class plugintype_message extends plugintype_base implements plugin_information {
 
     /**
-     * @var array An array of processor objects
-     */
-    private $processors;
-
-    /**
-     * Constructs a plugintype_message instance
-     */
-    protected function __construct() {
-        global $CFG;
-        require_once($CFG->dirroot . '/message/lib.php');
-        $this->processors = get_message_processors();
-    }
-
-    /**
-     * Returns a URL to the settings page for the plugin if there is one
-     *
      * @see plugin_information::get_settings_url()
-     * @return moodle_url|null
      */
     public function get_settings_url() {
 
-        if (isset($this->processors[$this->name])) {
-            $processor = $this->processors[$this->name];
-            if ($processor->available && $processor->hassettings) {
-                return new moodle_url('settings.php', array('section' => 'messagesetting'.$processor->name));
-            }
-        }
-        return parent::get_settings_url();
-    }
-
-    /**
-     * Returns true if this plugin is enabled
-     *
-     * @see plugintype_interface::is_enabled()
-     * @return bool
-     */
-    public function is_enabled() {
-        if (isset($this->processors[$this->name])) {
-            return $this->processors[$this->name]->configured && $this->processors[$this->name]->enabled;
-        } else {
-            return parent::is_enabled();
-        }
-    }
-
-    /**
-     * Returns the URL used to uninstall the plugin if there is one.
-     *
-     * @see plugintype_interface::get_uninstall_url()
-     */
-    public function get_uninstall_url() {
-        if (isset($this->processors[$this->name])) {
-            return new moodle_url('message.php', array('uninstall' => $this->processors[$this->name]->id, 'sesskey' => sesskey()));
+        if (file_exists($this->full_path('settings.php')) or file_exists($this->full_path('settingstree.php'))) {
+            return new moodle_url('/admin/settings.php', array('section' => 'messagesetting' . $this->name));
         } else {
-            return parent::get_uninstall_url();
+            return parent::get_settings_url();
         }
     }
 }