Moved parsing of markdown setting descriptions until needed

From: Brandon Turner <brandont@thinkwell.com>

Increased load performance of pages that don't display the settings
description (e.g. pages that just load settings navigation)
---
 lib/adminlib.php |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/lib/adminlib.php b/lib/adminlib.php
index 93557f8..5ca1d84 100644
--- a/lib/adminlib.php
+++ b/lib/adminlib.php
@@ -1356,7 +1356,7 @@ abstract class admin_setting {
     public function __construct($name, $visiblename, $description, $defaultsetting) {
         $this->parse_setting_name($name);
         $this->visiblename    = $visiblename;
-        $this->description    = markdown_to_html($description);
+        $this->description    = $description;
         $this->defaultsetting = $defaultsetting;
     }
 
@@ -1605,7 +1605,7 @@ class admin_setting_heading extends admin_setting {
             $return .= $OUTPUT->heading($this->visiblename, 3, 'main');
         }
         if ($this->description != '') {
-            $return .= $OUTPUT->box(highlight($query, $this->description), 'generalbox formsettingheading');
+            $return .= $OUTPUT->box(highlight($query, markdown_to_html($this->description)), 'generalbox formsettingheading');
         }
         return $return;
     }
@@ -5898,7 +5898,7 @@ function format_admin_setting($setting, $title='', $form='', $description='', $l
     </label>
   </div>
   <div class="form-setting">'.$form.$defaultinfo.'</div>
-  <div class="form-description">'.highlight($query, $description).'</div>
+  <div class="form-description">'.highlight($query, markdown_to_html($description)).'</div>
 </div>';
 
     $adminroot = admin_get_root();
