           else
             errors.push "Variable `#{field}` not found in `#{type}` data."
 
-      errors   = process errors, 'errors'
-      warnings = process warnings, 'warnings'
-
-      new kd.ModalView
-        title          : 'Template Preview'
-        subtitle       : 'Generated from your account data'
-        cssClass       : 'has-markdown content-modal'
-        height         : 500
-        overlay        : yes
-        overlayOptions : cssClass : 'second-overlay'
-        content        : applyMarkdown """
-          #{errors}
-
-          #{warnings}
-          ```coffee
-          #{template}
-          ```
-        """
+      @createPreviewModal { errors, warnings, template }
 
       @previewButton.hideLoader()
 
+
     if requiredData.user?
-      fetchUserData (data) =>
-        availableData.user = data
+      account.fetchFromUser requiredData.user, (err, data) ->
+        kd.warn err  if err
+        availableData.user = data or {}
         generatePreview()
     else
       generatePreview()
+
+
+  createPreviewModal: ({ errors, warnings, template }) ->
+
+    errors   = createReportFor errors,   'errors'
+    warnings = createReportFor warnings, 'warnings'
+
+    new kd.ModalView
+      title          : 'Template Preview'
+      subtitle       : 'Generated from your account data'
+      cssClass       : 'has-markdown content-modal'
+      height         : 500
+      overlay        : yes
+      overlayOptions : cssClass : 'second-overlay'
+      content        : applyMarkdown """
+        #{errors}
+
+        #{warnings}
+        ```coffee
+        #{template}
+        ```
+      """
 
 
   handleSetDefaultTemplate: ->

      callback err, stackTemplate


  handlePreview: ->

    template      = @editorView.getValue()

    warnings      = []

    fetchUserData = (callback) ->

    generatePreview = =>

