/// <inheritDoc/>
        public void UpdateSpecificBibliography(int publicationId, Publication publication, List <Author> authors)
        {
            QualificationThesis qualificationThesis = new QualificationThesis();

            WriteLine("Zadejte nové místo vytvoření:");
            string address = ReadLine();

            if (!string.IsNullOrEmpty(address))
            {
                qualificationThesis.Address = address;
            }

            WriteLine("Zadejte nový název školy:");
            string school = ReadLine();

            if (!string.IsNullOrEmpty(school))
            {
                qualificationThesis.School = school;
            }

            WriteLine("Zadejte číslo představující nový typ kvalifikační práce: (0 - diplomová práce / 1 - disertační práce):");

            int typeNumber;

            if (int.TryParse(ReadLine(), out typeNumber))
            {
                qualificationThesis.ThesisType = typeNumber == 0 ?
                                                 QualificationThesisModel.TYPE_MASTER_THESIS :
                                                 QualificationThesisModel.TYPE_PHD_THESIS;
            }

            model.UpdatePublication(publicationId, publication,
                                    authors != null && authors.Count > 0 ? authors[0] : null, qualificationThesis);
        }
        /// <inheritDoc/>
        public void GetSpecificBibliography(Publication publication)
        {
            QualificationThesis qualificationThesis = publication.QualificationThesis;

            WriteLine("Místo vytvoření: " + qualificationThesis.Address);
            WriteLine("Název školy: " + qualificationThesis.School);
            WriteLine("Typ práce: " +
                      (qualificationThesis.ThesisType == QualificationThesisModel.TYPE_PHD_THESIS ?
                       "disertační práce" : "diplomová práce"));
        }
Exemplo n.º 3
0
        /// <inheritDoc/>
        public void ViewPublication(Publication publication)
        {
            QualificationThesis qualificationThesis = publication.QualificationThesis;

            addressTextBox.Text = qualificationThesis.Address;
            schoolTextBox.Text  = qualificationThesis.School;

            if (qualificationThesis.ThesisType == QualificationThesisModel.TYPE_MASTER_THESIS)
            {
                masterThesisRadioButton.IsChecked = true;
            }
            else if (qualificationThesis.ThesisType == QualificationThesisModel.TYPE_PHD_THESIS)
            {
                phdThesisRadioButton.IsChecked = true;
            }
        }
Exemplo n.º 4
0
        /// <inheritDoc/>
        public List <string> ValidatePublicationTypeSpecificBibliography(
            Publication publication, List <Author> authors, out ASpecificPublication specificPublication)
        {
            List <string> errors = new List <string>();

            specificPublication = new QualificationThesis();
            QualificationThesis qualificationThesis = specificPublication as QualificationThesis;

            if (authors.Count != 1)
            {
                errors.Add("Kvalifikační práce nesmí mít více autorů.");
            }

            if (string.IsNullOrWhiteSpace(addressTextBox.Text))
            {
                errors.Add("Místo vytvoření nesmí být prázdné.");
            }
            else
            {
                qualificationThesis.Address = addressTextBox.Text;
            }

            if (string.IsNullOrWhiteSpace(schoolTextBox.Text))
            {
                errors.Add("Název školy nesmí být prázdný.");
            }
            else
            {
                qualificationThesis.School = schoolTextBox.Text;
            }

            if (masterThesisRadioButton.IsChecked == true)
            {
                qualificationThesis.ThesisType = QualificationThesisModel.TYPE_MASTER_THESIS;
            }
            else if (phdThesisRadioButton.IsChecked == true)
            {
                qualificationThesis.ThesisType = QualificationThesisModel.TYPE_PHD_THESIS;
            }
            else
            {
                errors.Add("Musí být vybrán typ kvalifikační práce.");
            }

            return(errors);
        }
        /// <inheritDoc/>
        public void CreateSpecificBibliography(Publication publication, List <Author> authors)
        {
            QualificationThesis qualificationThesis = new QualificationThesis();

            WriteLine("Zadejte místo vytvoření:");
            qualificationThesis.Address = ReadNonEmptyString("Adresa nesmí být prázdná.");
            WriteLine("Zadejte název školy:");
            qualificationThesis.School = ReadNonEmptyString("Název nesmí být prázdný.");
            WriteLine("Zadejte číslo představující typ kvalifikační práce: (0 - diplomová práce / 1 - disertační práce)");
            int typeNumber = ReadValidNumber("Zadejte platné číslo typu.");

            qualificationThesis.ThesisType = typeNumber == 0 ?
                                             QualificationThesisModel.TYPE_MASTER_THESIS :
                                             QualificationThesisModel.TYPE_PHD_THESIS;

            // vytvoření záznamu z načtených informací
            model.CreatePublication(publication, authors[0], qualificationThesis);
        }