Rock.Web.UI.Controls.WorkflowPicker.LoadWorkflows C# (CSharp) Method

LoadWorkflows() private method

Loads the workflows.
private LoadWorkflows ( int workflowTypeId ) : void
workflowTypeId int The workflow type unique identifier.
return void
        private void LoadWorkflows( int? workflowTypeId )
        {
            int? currentWorkflowId = this.WorkflowId;
            _ddlWorkflow.SelectedValue = null;
            _ddlWorkflow.Items.Clear();
            if ( workflowTypeId.HasValue )
            {
                if ( !Required )
                {
                    _ddlWorkflow.Items.Add( new ListItem( string.Empty, Rock.Constants.None.IdValue ) );
                }

                var workflowService = new Rock.Model.WorkflowService( new RockContext() );
                var workflows = workflowService.Queryable()
                    .Where( w =>
                        w.WorkflowTypeId == workflowTypeId.Value &&
                        w.ActivatedDateTime.HasValue &&
                        !w.CompletedDateTime.HasValue )
                    .OrderBy( w => w.Name )
                    .ToList();

                foreach ( var w in workflows )
                {
                    var workflowItem = new ListItem( w.Name, w.Id.ToString().ToUpper() );
                    workflowItem.Selected = w.Id == currentWorkflowId;
                    _ddlWorkflow.Items.Add( workflowItem );
                }
            }
        }