diff --git a/admin/settings/users.php b/admin/settings/users.php
index 102f385..87fa064 100644
--- a/admin/settings/users.php
+++ b/admin/settings/users.php
@@ -25,7 +25,7 @@ if ($hassiteconfig
                                             get_string('alternatelogin', 'auth', htmlspecialchars(get_login_url())), ''));
     $temp->add(new admin_setting_configtext('forgottenpasswordurl', get_string('forgottenpasswordurl', 'auth'),
                                             get_string('forgottenpassword', 'auth'), ''));
-    $temp->add(new admin_setting_configtextarea('auth_instructions', get_string('instructions', 'auth'),
+    $temp->add(new admin_setting_confightmltextarea('auth_instructions', get_string('instructions', 'auth'),
                                                 get_string('authinstructions', 'auth'), ''));
     $temp->add(new admin_setting_configtext('allowemailaddresses', get_string('allowemailaddresses', 'admin'), get_string('configallowemailaddresses', 'admin'), '', PARAM_NOTAGS));
     $temp->add(new admin_setting_configtext('denyemailaddresses', get_string('denyemailaddresses', 'admin'), get_string('configdenyemailaddresses', 'admin'), '', PARAM_NOTAGS));
diff --git a/lib/adminlib.php b/lib/adminlib.php
index a4b6fc5..5e2fd7f 100644
--- a/lib/adminlib.php
+++ b/lib/adminlib.php
@@ -1435,6 +1435,34 @@ class admin_setting_configtextarea extends admin_setting_configtext {
 }
 
 /**
+ * General text area with html editor.
+ */
+class admin_setting_confightmltextarea extends admin_setting_configtext {
+
+    public function __construct($name, $visiblename, $description, $defaultsetting, $paramtype=PARAM_RAW, $cols='60', $rows='8') {
+        $this->rows = $rows;
+        $this->cols = $cols;
+        parent::__construct($name, $visiblename, $description, $defaultsetting, $paramtype);
+    }
+
+    function output_html($data, $query='') {
+        global $CFG;
+
+        $default = $this->get_defaultsetting();
+
+        $defaultinfo = $default;
+        if (!is_null($default) and $default !== '') {
+            $defaultinfo = "\n".$default;
+        }
+
+        $CFG->adminusehtmleditor = can_use_html_editor();
+        $return = '<div class="form-htmlarea">'.print_textarea($CFG->adminusehtmleditor, $this->rows, $this->cols, 0, 0, $this->get_full_name(), $data, 0, true).'</div>';
+
+        return format_admin_setting($this, $this->visiblename, $return, $this->description, true, '', $defaultinfo, $query);
+    }
+}
+
+/**
  * Password field, allows unmasking of password
  */
 class admin_setting_configpasswordunmask extends admin_setting_configtext {

