Example #1
0
        protected void loadExpectedThesisFile()
        {
            MaskedFileInfo expectedFileInfo = expectedFileLookup(DiscContents.getInstance());
            ViewModel      viewModel        = ViewModel.getInstance();

            if (expectedFileInfo != null)
            {
                viewModel.ExpectedThesisFile = expectedFileInfo;
                viewModel.SelectedThesisFile = expectedFileInfo;
            }
            loadSelectedThesisFile();
        }
Example #2
0
        protected MaskedFileInfo expectedFileLookup(DiscContents contents)
        {
            List <MaskedFileInfo> potentialFileList = new List <MaskedFileInfo>();
            MaskedFileInfo        largestPdfFile    = null;

            foreach (MaskedFileInfo maskedFileInfo in contents.MaskedFileInfoList)
            {
                if (maskedFileInfo == null)
                {
                    continue;
                }
                FileInfo fileInfo      = maskedFileInfo.FileInfo;
                string   filePathLower = fileInfo.FullName.ToLower();

                if (EXPECTED_FILE_PATTERN_REGEX.IsMatch(filePathLower))
                {
                    potentialFileList.Add(maskedFileInfo);
                }

                if (filePathLower.EndsWith("pdf") && fileInfo.Length > (largestPdfFile == null ? 0 : largestPdfFile.FileInfo.Length))
                {
                    largestPdfFile = maskedFileInfo;
                }
            }
            if (potentialFileList.Count > 0)
            {
                MaskedFileInfo largerPdfFile = null;
                foreach (MaskedFileInfo potentialFileInfo in potentialFileList)
                {
                    if (potentialFileInfo.FileInfo.Length > (largerPdfFile == null ? 0 : largerPdfFile.FileInfo.Length))
                    {
                        largerPdfFile = potentialFileInfo;
                    }
                }
                return(largerPdfFile);
            }

            if (largestPdfFile != null)
            {
                return(largestPdfFile);
            }

            return(null);
        }
Example #3
0
        public void loadSelectedThesisFile()
        {
            ViewModel.getInstance().ProgressBarColor = Color.Yellow;
            MaskedFileInfo selectedFileInfo          = ViewModel.getInstance().SelectedThesisFile;
            ViewModel      viewModel = ViewModel.getInstance();

            if (selectedFileInfo != null)
            {
                viewModel.SaveButtonEnabled = false;
                ThesisRecord thesisRecord = MainThread.getInstance().ThesisRecord;
                thesisRecord.clearExtractedData();
                viewModel.SelectedThesisFile       = selectedFileInfo;
                viewModel.EnableContentFileListbox = false;
                thesisRecord.PdfTexts = "";

                PdfReaderHelper.getInstance().unload();
                string tempPdfFileName = FileUtils.CopyPdfToTemp(selectedFileInfo.FileInfo.FullName);
                loadPDF(tempPdfFileName);
                viewModel.EnableContentFileListbox = true;

                determineThesisRecord(thesisRecord);

                MainThread.getInstance().MatchingInventoryList.Clear();
                List <InventoryRecord> matchingInventoryRecords = getMatchingInventoryRecordList(thesisRecord);
                if (matchingInventoryRecords.Count > 0)
                {
                    foreach (InventoryRecord matchingRecord in matchingInventoryRecords)
                    {
                        MainThread.getInstance().MatchingInventoryList.Add(matchingRecord);
                    }
                    InventoryStore.getInstance().updateSelectedInventoryRecord(matchingInventoryRecords.First());
                }
                else
                {
                    InventoryStore.getInstance().updateSelectedInventoryRecord(null);
                }
                //markupRecordDifference();
                thesisRecord.EnableValidation = true;
                viewModel.SaveButtonEnabled   = true;
            }
            ViewModel.getInstance().ProgressPercentage += 50;
        }