;---------------------------------------------------------------------------
; Document name: text_anomaly.pro
; Created by:    Liyun Wang, GSFC/ARC, January 25, 1996
;
; Last Modified: Wed Jan 31 13:38:28 1996 (lwang@achilles.nascom.nasa.gov)
;---------------------------------------------------------------------------
;
FUNCTION text_anomaly, anomaly, all=all
;+
; PROJECT:
;       SOHO - CDS/SUMER
;
; NAME:
;       TEXT_ANOMALY()
;
; PURPOSE: 
;       Convert the contents of an anomaly structure into an ascii array
;
; CATEGORY:
;       SOHO Anomaly report
; 
; SYNTAX: 
;       Result = text_anomaly(anomaly)
;
; INPUTS:
;       ANOMALY - Anomaly structure
;
; OPTIONAL INPUTS: 
;       None.
;
; OUTPUTS:
;       RESULT - String array, containing contents of an anomaly
;                report entry
;
; OPTIONAL OUTPUTS:
;       None.
;
; KEYWORDS: 
;       ALL   - Set this keyword to get all tags even when their
;               values are empty
;
; COMMON:
;       None.
;
; RESTRICTIONS: 
;       None.
;
; SIDE EFFECTS:
;       None.
;
; HISTORY:
;       Version 1, January 25, 1996, Liyun Wang, GSFC/ARC. Written
;
; CONTACT:
;       Liyun Wang, GSFC/ARC (Liyun.Wang.1@gsfc.nasa.gov)
;-
;
   ON_ERROR, 2
   IF datatype(anomaly) NE 'STC' THEN RETURN, ''
   indent = '   '
   array = [       'Anomaly ID:     '+STRTRIM(STRING(anomaly.id),2)]
   array = [array, 'Anomaly Time:   '+anytim2utc(anomaly.time,/ecs)]
   array = [array, 'System:         '+anomaly.system]
   array = [array, 'Originator:     '+anomaly.origin]
   IF anomaly.open EQ 1 THEN status = 'Open' ELSE status = 'Closed'
   array = [array, 'Anomaly Status: '+status]
   array = [array, 'Anomaly Description:']
   temp = str2lines(anomaly.anomaly, length=70)
   FOR i=0, N_ELEMENTS(temp)-1 DO array = [array, indent+temp(i)]
   IF STRTRIM(anomaly.action,2) NE '' OR KEYWORD_SET(all) THEN BEGIN
      IF STRTRIM(anomaly.action,2) EQ '' THEN BEGIN
         array = [array, 'Action Taken: N/A']
      ENDIF ELSE BEGIN
         array = [array, 'Action Taken:']
         temp = str2lines(anomaly.action, length=70)
         FOR i=0, N_ELEMENTS(temp)-1 DO array = [array, indent+temp(i)]
      ENDELSE
   ENDIF
   IF STRTRIM(anomaly.impact,2) NE '' OR KEYWORD_SET(all) THEN BEGIN
      IF STRTRIM(anomaly.impact,2) EQ '' THEN BEGIN 
         array = [array, 'Impacts:      N/A']
      ENDIF ELSE BEGIN
         array = [array, 'Impacts:']
         temp = str2lines(anomaly.impact, length=70)
         FOR i=0, N_ELEMENTS(temp)-1 DO array = [array, indent+temp(i)]
      ENDELSE
   ENDIF
   IF STRTRIM(anomaly.resolution,2) NE '' OR KEYWORD_SET(all) THEN BEGIN
      IF STRTRIM(anomaly.impact,2) EQ '' THEN BEGIN 
         array = [array, 'Resolution:   N/A']
      ENDIF ELSE BEGIN 
         array = [array, 'Resolution:']
         temp = str2lines(anomaly.resolution, length=70)
         FOR i=0, N_ELEMENTS(temp)-1 DO array = [array, indent+temp(i)]
      ENDELSE
   ENDIF

   RETURN, array
END

;---------------------------------------------------------------------------
; End of 'text_anomaly.pro'.
;---------------------------------------------------------------------------
