ASR.Reports.Items.ItemViewer.getWorkflowInfo C# (CSharp) Method

getWorkflowInfo() private static method

private static getWorkflowInfo ( System.Item itemElement ) : string
itemElement System.Item
return string
        private static string getWorkflowInfo(Item itemElement)
        {
            var sb = new StringBuilder();
            var iw = itemElement.State.GetWorkflow();
            if (iw != null)
            {
                sb.Append(iw.Appearance.DisplayName);
            }
            var ws = itemElement.State.GetWorkflowState();

            if (ws != null)
            {
                sb.AppendFormat(" ({0})", ws.DisplayName);
            }

            if (iw != null)
            {
                IEnumerable<WorkflowEvent> events = iw.GetHistory(itemElement).OrderByDescending(e => e.Date);
                var enumerator = events.GetEnumerator();
                if (enumerator.MoveNext())
                {
                    var span = DateTime.Now.Subtract(enumerator.Current.Date);
                    sb.AppendFormat(" for {0} days {1} hours {2} minutes", span.Days, span.Hours, span.Minutes);
                }
            }
            return sb.ToString();
        }