예제 #1
0
        public override kCura.EventHandler.Console GetConsole(PageEvent pageEvent)
        {
            // Update Security Protocol
            ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;

            //Create Console
            kCura.EventHandler.Console returnConsole = new kCura.EventHandler.Console()
            {
                Items = new List <IConsoleItem>(), Title = "Face Recognition: Person"
            };
            returnConsole.Items.Add(new ConsoleButton()
            {
                Name           = _ADD_PERSON,
                DisplayText    = _ADD_PERSON,
                Enabled        = true,
                RaisesPostBack = true,
                ToolTip        = "Add Person and Image to Azure Face Recognizer FaceGroup"
            });

            //Set current Workspace Artifact ID
            _currentWorkspaceArtifactId = Helper.GetActiveCaseID();

            //Authenticate Azure Service
            _client = Methods.AuthenticateService(this.Helper.GetSecretStore());
            returnConsole.AddRefreshLinkToConsole().Enabled = true;

            return(returnConsole);
        }
예제 #2
0
        public override kCura.EventHandler.Console GetConsole(PageEvent pageEvent)
        {
            string status = RetrieveCurrentStatus();

            submit.DisplayText = "Submit";

            if (status == MainApp.Helper.Constant.JOB_STATUS_NEW)
            {
                submit.Enabled = true;
            }
            else
            {
                submit.Enabled = false;
            }
            submit.Name           = "submit";
            submit.RaisesPostBack = true;
            submit.ToolTip        = "Click here to submit the job.";

            retry.DisplayText = "Retry/Resolve Errors";
            if (status == MainApp.Helper.Constant.JOB_STATUS_ERROR)
            {
                retry.Enabled = true;
            }
            else
            {
                retry.Enabled = false;
            }
            retry.Name           = "retry";
            retry.RaisesPostBack = true;
            retry.ToolTip        = "Click here to re-submit the request and resolve any errors.";

            cancel.DisplayText = "Cancel";
            if (status == MainApp.Helper.Constant.JOB_STATUS_IN_PROGRESS || status == MainApp.Helper.Constant.JOB_STATUS_WAITING)
            {
                cancel.Enabled = true;
            }
            else
            {
                cancel.Enabled = false;
            }
            cancel.Name           = "cancel";
            cancel.RaisesPostBack = true;
            cancel.ToolTip        = "Click here to cancel the request.";

            _settingsConsole.Items = new List <IConsoleItem>();
            _settingsConsole.Items.Add(submit);
            _settingsConsole.Items.Add(cancel);
            _settingsConsole.Items.Add(retry);
            refresh         = _settingsConsole.AddRefreshLinkToConsole();
            refresh.Enabled = true;

            _settingsConsole.Title = "File Validation";
            return(_settingsConsole);
        }
예제 #3
0
        public override Console GetConsole(ConsoleEventHandler.PageEvent pageEvent)
        {
            _console = new Console {
                Items = new List <IConsoleItem>(), Title = "Manage Set"
            };

            _submitButton = new ConsoleButton
            {
                Name           = Constant.Names.Console.SUBMIT,
                DisplayText    = "Submit",
                ToolTip        = "Click here to submit this Extractor Set to the queue.",
                RaisesPostBack = true
            };

            _cancelButton = new ConsoleButton
            {
                Name           = Constant.Names.Console.CANCEL,
                DisplayText    = "Cancel",
                ToolTip        = "Click here to cancel this Extractor Set.",
                RaisesPostBack = true
            };

            _separator = new ConsoleSeparator();

            if (pageEvent == PageEvent.PreRender)
            {
                var textExtractorStatus = ActiveArtifact.Fields[Constant.Guids.Fields.ExtractorSet.Status.ToString()].Value.Value;

                if (textExtractorStatus == null)
                {
                    _submitButton.Enabled = true;
                    _cancelButton.Enabled = false;
                }
                else if (textExtractorStatus.ToString() == Constant.ExtractorSetStatus.CANCELLED || textExtractorStatus.ToString() == Constant.ExtractorSetStatus.COMPLETE || textExtractorStatus.ToString() == Constant.ExtractorSetStatus.COMPLETE_WITH_ERRORS || textExtractorStatus.ToString() == Constant.ExtractorSetStatus.ERROR)
                {
                    _submitButton.Enabled = false;
                    _cancelButton.Enabled = false;
                }
                else
                {
                    _submitButton.Enabled = false;
                    _cancelButton.Enabled = true;
                }
            }

            _console.Items.Add(_submitButton);
            _console.Items.Add(_cancelButton);
            _console.Items.Add(_separator);
            _console.AddRefreshLinkToConsole().Enabled = true;

            return(_console);
        }
        public override kCura.EventHandler.Console GetConsole(PageEvent pageEvent)
        {
            kCura.EventHandler.Console returnConsole = new kCura.EventHandler.Console()
            {
                Items = new List <IConsoleItem>(), Title = "Azure Form Recognition"
            };
            ;

            returnConsole.Items.Add(new ConsoleButton()
            {
                Name = "Submit Documents", DisplayText = "Submit to Train", Enabled = true, RaisesPostBack = true, ToolTip = "Submit saved search to Azure Form Recognizer service for model training"
            });
            returnConsole.AddRefreshLinkToConsole().Enabled = true;
            return(returnConsole);
        }
        public override Console GetConsole(PageEvent pageEvent)
        {
            // Update Security Protocol
            ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;

            Console returnConsole = new Console()
            {
                Items = new List <IConsoleItem>(), Title = "Face Recognition: Image"
            };

            returnConsole.Items.Add(new ConsoleButton()
            {
                Name = _BUTTON_NAME, DisplayText = _BUTTON_NAME, Enabled = true, RaisesPostBack = true, ToolTip = "Identify Faces in Image"
            });
            returnConsole.AddRefreshLinkToConsole().Enabled = true;

            //Set current Workspace Artifact ID
            _currentWorkspaceArtifactId = Helper.GetActiveCaseID();

            //Authenticate Azure Service
            _client = Methods.AuthenticateService(this.Helper.GetSecretStore());

            return(returnConsole);
        }
        public async Task <kCura.EventHandler.Console> LoadConsoleAsync(PageEvent pageEvent)
        {
            _console = new kCura.EventHandler.Console {
                Items = new List <IConsoleItem>(), Title = "Manage Import Job"
            };

            _validateButton = new ConsoleButton
            {
                Name           = Constant.Buttons.VALIDATE,
                DisplayText    = "Validate",
                ToolTip        = "Click here to validate this job",
                RaisesPostBack = true
            };

            _submitButton = new ConsoleButton
            {
                Name           = Constant.Buttons.SUBMIT,
                DisplayText    = "Submit",
                ToolTip        = "Click here to add this job to the queue",
                RaisesPostBack = true
            };

            _cancelButton = new ConsoleButton
            {
                Name           = Constant.Buttons.CANCEL,
                DisplayText    = "Cancel",
                ToolTip        = "Click here to cancel this job",
                RaisesPostBack = true
            };

            if (Utility.UserIsAdmin(Helper, Helper.GetAuthenticationManager().UserInfo.ArtifactID, ArtifactQueries))
            {
                var jobStatus = await ImportUtilityJob.RetrieveJobStatusAsync(SvcManager, WorkspaceArtifactId, IdentityCurrentUser, CurrentArtifactId);

                var recordExists = await ImportUtilityJob.DoesRecordExistAsync();

                var submittedForMigration = ((Boolean?)(ActiveArtifact.Fields[Constant.Guids.Field.ImportUtilityJob.SubmittedForMigration.ToString()].Value).Value).GetValueOrDefault();

                if (pageEvent == PageEvent.PreRender)
                {
                    if (recordExists)
                    {
                        switch (jobStatus)
                        {
                        case Constant.Status.Job.NEW:
                            _validateButton.Enabled = true;
                            _submitButton.Enabled   = true;
                            _cancelButton.Enabled   = false;
                            break;

                        case Constant.Status.Job.SUBMITTED:
                        case Constant.Status.Job.IN_PROGRESS_MANAGER:
                        case Constant.Status.Job.COMPLETED_MANAGER:
                        case Constant.Status.Job.IN_PROGRESS_WORKER:
                        case Constant.Status.Job.RETRY:
                            _validateButton.Enabled = false;
                            _submitButton.Enabled   = false;
                            _cancelButton.Enabled   = true;
                            break;

                        case Constant.Status.Job.COMPLETED:
                        case Constant.Status.Job.COMPLETED_WITH_ERRORS:
                        case Constant.Status.Job.ERROR:
                        case Constant.Status.Job.CANCELLED:
                        case Constant.Status.Job.CANCELREQUESTED:
                            _validateButton.Enabled = false;
                            _submitButton.Enabled   = false;
                            _cancelButton.Enabled   = false;
                            break;

                        default:
                            _validateButton.Enabled = false;
                            _submitButton.Enabled   = false;
                            _cancelButton.Enabled   = false;
                            break;
                        }
                    }
                    else
                    {
                        if (submittedForMigration && (jobStatus == Constant.Status.Job.COMPLETED || jobStatus == Constant.Status.Job.COMPLETED_WITH_ERRORS || jobStatus == Constant.Status.Job.ERROR))
                        {
                            _validateButton.Enabled = false;
                            _submitButton.Enabled   = false;
                            _cancelButton.Enabled   = false;
                        }
                        else
                        {
                            _validateButton.Enabled = true;
                            _submitButton.Enabled   = true;
                            _cancelButton.Enabled   = false;
                        }
                    }
                }
            }
            else
            {
                _console.ScriptBlocks.Add(new ScriptBlock()
                {
                    Key = "DisableButtonsForNonAdmins", Script = "<script type='text/javascript'>alert('Buttons Disabled. Only system administrators are allowed to submit jobs.')</script>"
                });
                _validateButton.Enabled = false;
                _submitButton.Enabled   = false;
                _cancelButton.Enabled   = false;
            }

            _console.Items.Add(_validateButton);
            _console.Items.Add(_submitButton);
            _console.Items.Add(_cancelButton);
            _console.AddRefreshLinkToConsole().Enabled = true;

            return(_console);
        }
        public async Task <Console> GetConsoleAsync(PageEvent pageEvent)
        {
            SvcManager            = Helper.GetServicesManager();
            WorkspaceArtifactId   = Application.ArtifactID;
            Identity              = ExecutionIdentity.CurrentUser;
            CurrentArtifactId     = ActiveArtifact.ArtifactID;
            CurrentUserArtifactId = Helper.GetAuthenticationManager().UserInfo.ArtifactID;
            DbContextWorkspace    = Helper.GetDBContext(WorkspaceArtifactId);
            DbContextEdds         = Helper.GetDBContext(-1);

            var console = new Console {
                Items = new List <IConsoleItem>(), Title = "Manage Redaction Export Job"
            };

            var submitButton = new ConsoleButton
            {
                Name           = Constant.Buttons.SUBMIT,
                DisplayText    = "Submit",
                ToolTip        = "Click here to add this Import job to the queue.",
                RaisesPostBack = true
            };

            var cancelButton = new ConsoleButton
            {
                Name           = Constant.Buttons.CANCEL,
                DisplayText    = "Cancel",
                ToolTip        = "Click here to remove this Import job from the queue.",
                RaisesPostBack = true
            };

            if (pageEvent == PageEvent.PreRender)
            {
                var jobStatus = await RetrieveJobStatusAsync(SvcManager, WorkspaceArtifactId, Identity, CurrentArtifactId);

                switch (jobStatus)
                {
                case Constant.Status.Job.COMPLETED:
                case Constant.Status.Job.COMPLETED_MANAGER:
                case Constant.Status.Job.COMPLETED_WORKER:
                case Constant.Status.Job.COMPLETED_WITH_ERRORS:
                case Constant.Status.Job.ERROR:
                case Constant.Status.Job.VALIDATING:
                case Constant.Status.Job.CANCELLED:
                case Constant.Status.Job.CANCELREQUESTED:
                    submitButton.Enabled = false;
                    cancelButton.Enabled = false;
                    break;

                case Constant.Status.Job.NEW:
                case Constant.Status.Job.VALIDATED:
                    submitButton.Enabled = true;
                    cancelButton.Enabled = false;
                    break;

                case Constant.Status.Job.SUBMITTED:
                case Constant.Status.Job.IN_PROGRESS_MANAGER:
                case Constant.Status.Job.IN_PROGRESS_WORKER:
                    submitButton.Enabled = false;
                    cancelButton.Enabled = true;
                    break;

                default:
                    submitButton.Enabled = false;
                    cancelButton.Enabled = false;
                    break;
                }
            }

            console.Items.Add(submitButton);
            console.Items.Add(cancelButton);
            console.AddRefreshLinkToConsole().Enabled = true;

            return(console);
        }
        public override Console GetConsole(PageEvent pageEvent)
        {
            SvcManager            = Helper.GetServicesManager();
            WorkspaceArtifactId   = Application.ArtifactID;
            Identity              = ExecutionIdentity.CurrentUser;
            CurrentArtifactId     = ActiveArtifact.ArtifactID;
            CurrentUserArtifactId = Helper.GetAuthenticationManager().UserInfo.ArtifactID;
            DbContextWorkspace    = Helper.GetDBContext(WorkspaceArtifactId);
            DbContextEdds         = Helper.GetDBContext(-1);

            var console = new Console {
                Items = new List <IConsoleItem>(), Title = "Manage Redaction Import Job"
            };

            var validateButton = new ConsoleButton
            {
                Name           = Constant.Buttons.VALIDATE,
                DisplayText    = "Validate",
                ToolTip        = "Click here to validate that redactions and documents exist before importing.",
                RaisesPostBack = true
            };

            var submitButton = new ConsoleButton
            {
                Name           = Constant.Buttons.SUBMIT,
                DisplayText    = "Submit",
                ToolTip        = "Click here to add this Import job to the queue.",
                RaisesPostBack = true
            };

            var cancelButton = new ConsoleButton
            {
                Name           = Constant.Buttons.CANCEL,
                DisplayText    = "Cancel",
                ToolTip        = "Click here to remove this Import job from the queue.",
                RaisesPostBack = true
            };

            // *******************************************************************************************************
            //
            //       *********
            //       *       *
            //  *********    *
            //  *    *  *    *
            //  *    *********
            //  *       *
            //  *********
            //
            //  This functionality currently needs to be completed.
            //
            //  If you are interested in building this functionality, please make sure to write associated unit tests.
            //  The basic concept is that the Import Worker Agent will retrieve all the redactrions that were imported
            //  for the selected job and delete them from the Redaction table.
            // *******************************************************************************************************
            //var revertButton = new ConsoleButton
            //{
            //	Name = Constant.Buttons.REVERT,
            //	DisplayText = "Revert",
            //	ToolTip = "Click here to remove redactions created by this job.",
            //	RaisesPostBack = true
            //};

            if (pageEvent == PageEvent.PreRender)
            {
                var jobStatus = ActiveArtifact.Fields[GetArtifactIdByGuid(Constant.Guids.Field.MarkupUtilityImportJob.Status)].Value.Value.ToString();
                SetButtonState(jobStatus, validateButton, submitButton, cancelButton);
            }

            console.Items.Add(validateButton);
            console.Items.Add(submitButton);
            console.Items.Add(cancelButton);
            //TODO - Complete Revert functionality
            //console.Items.Add(revertButton);
            console.AddRefreshLinkToConsole().Enabled = true;

            return(console);
        }