Feintuning Ausgabe von Kontakten bei Projekten

git-svn-id: https://svn.libreccm.org/ccm/trunk@1847 8810af33-2d31-482b-a856-94f89814c4df
master
jensp 2012-09-01 13:00:20 +00:00
parent 0f59c71dc5
commit 8d0afd2e64
2 changed files with 35 additions and 9 deletions

View File

@ -65,6 +65,7 @@ public class GenericContact extends ContentPage implements
s_config.load(); s_config.load();
logger.debug("Static initializer finished"); logger.debug("Static initializer finished");
} }
/** /**
* Data object type for this domain object * Data object type for this domain object
*/ */
@ -128,7 +129,7 @@ public class GenericContact extends ContentPage implements
* // Close Collection to prevent an open ResultSet collection.close(); * // Close Collection to prevent an open ResultSet collection.close();
* *
* return (GenericPerson) DomainObjectFactory.newInstance(dobj); * return (GenericPerson) DomainObjectFactory.newInstance(dobj);
} }
*/ */
return getGenericContactBundle().getPerson(); return getGenericContactBundle().getPerson();
@ -145,7 +146,7 @@ public class GenericContact extends ContentPage implements
* link.set(GenericPerson.CONTACTS_KEY, contactType); * link.set(GenericPerson.CONTACTS_KEY, contactType);
* link.set(GenericPerson.CONTACTS_ORDER, new * link.set(GenericPerson.CONTACTS_ORDER, new
* BigDecimal(person.getContacts().size())); link.save(); * BigDecimal(person.getContacts().size())); link.save();
} }
*/ */
getGenericContactBundle().setPerson(person, contactType); getGenericContactBundle().setPerson(person, contactType);
@ -166,7 +167,7 @@ public class GenericContact extends ContentPage implements
/* /*
* GenericPerson oldPerson; oldPerson = getPerson(); if (oldPerson != * GenericPerson oldPerson; oldPerson = getPerson(); if (oldPerson !=
* null) { remove(PERSON, oldPerson); * null) { remove(PERSON, oldPerson);
} }
*/ */
getGenericContactBundle().unsetPerson(); getGenericContactBundle().unsetPerson();
@ -301,10 +302,34 @@ public class GenericContact extends ContentPage implements
@Override @Override
public void generateXML(ContentItem item, Element element, PageState state) { public void generateXML(ContentItem item, Element element, PageState state) {
if (getPerson() != null) {
Element personElem = element.newChildElement("person");
GenericPerson person = getPerson();
if ((person.getSurname() != null) && !person.getSurname().isEmpty()) {
Element surnameElem = personElem.newChildElement("surname");
surnameElem.setText(person.getSurname());
}
if ((person.getGivenName() != null) && !person.getGivenName().isEmpty()) {
Element givenNameElem = personElem.newChildElement("givenname");
givenNameElem.setText(person.getGivenName());
}
if ((person.getTitlePre() != null) && !person.getTitlePre().isEmpty()) {
Element titlePreElem = personElem.newChildElement("titlepre");
titlePreElem.setText(person.getTitlePre());
}
if ((person.getTitlePost() != null) && !person.getTitlePost().isEmpty()) {
Element titlePostElem = personElem.newChildElement("titlepost");
titlePostElem.setText(person.getTitlePost());
}
}
StringTokenizer keys = s_config.getContactEntryKeys(); StringTokenizer keys = s_config.getContactEntryKeys();
Element contactKeysElem = element.newChildElement("contactEntryKeys");
Element contactKeysElem = element.newChildElement("contactEntryKeys"); while (keys.hasMoreElements()) {
while(keys.hasMoreElements()) {
contactKeysElem.newChildElement("entryKey").setText(keys.nextToken()); contactKeysElem.newChildElement("entryKey").setText(keys.nextToken());
} }
} }
@ -313,16 +338,17 @@ public class GenericContact extends ContentPage implements
public void addGlobalStateParams(Page p) { public void addGlobalStateParams(Page p) {
//Nothing //Nothing
} }
@Override @Override
public void setListMode(final boolean listMode) { public void setListMode(final boolean listMode) {
//Nothing //Nothing
} }
@Override @Override
public List<ExtraXMLGenerator> getExtraXMLGenerators() { public List<ExtraXMLGenerator> getExtraXMLGenerators() {
List<ExtraXMLGenerator> generators = super.getExtraXMLGenerators(); List<ExtraXMLGenerator> generators = super.getExtraXMLGenerators();
generators.add(this); generators.add(this);
return generators; return generators;
} }
} }

View File

@ -302,7 +302,7 @@ public class SciProjectSummaryTab implements GenericOrgaUnitTab {
final PageState state) { final PageState state) {
final long start = System.currentTimeMillis(); final long start = System.currentTimeMillis();
final XmlGenerator generator = new XmlGenerator(contact); final XmlGenerator generator = new XmlGenerator(contact);
generator.setUseExtraXml(false); generator.setUseExtraXml(true);
generator.setItemElemName("contact", ""); generator.setItemElemName("contact", "");
generator.addItemAttribute("contactType", generator.addItemAttribute("contactType",
getContactTypeName(contactType)); getContactTypeName(contactType));