/// <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")); }
/// <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; } }
/// <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); }