# HG changeset patch # User Robert Casties # Date 1528311750 -7200 # Node ID 4961820373d056e57d4af64cb6e8a7df12bd3064 # Parent caf1aa7684576ef3569e2de32e33927e2cb7eedc# Parent aa564b1b5e1f28b00de5c639ccd9abd2e6299323 Merge from public_by_author aa564b1b5e1f28b00de5c639ccd9abd2e6299323 diff -r caf1aa768457 -r 4961820373d0 src/main/java/de/mpiwg/itgroup/ismi/browse/AbstractEntityRepositoryBean.java --- a/src/main/java/de/mpiwg/itgroup/ismi/browse/AbstractEntityRepositoryBean.java Tue May 29 21:16:46 2018 +0200 +++ b/src/main/java/de/mpiwg/itgroup/ismi/browse/AbstractEntityRepositoryBean.java Wed Jun 06 21:02:30 2018 +0200 @@ -22,57 +22,58 @@ private static final long serialVersionUID = 3154642100627969159L; - private static Logger logger = Logger.getLogger(AbstractEntityRepositoryBean.class); + protected static Logger logger = Logger.getLogger(AbstractEntityRepositoryBean.class); public static String MODE_ADVANCED = "advanced"; public static String MODE_ALL = "all"; public static String MODE_NONE = "none"; - private String objectClass = null; - private List entities = new ArrayList(); - private List currentEntities = new ArrayList(); + protected String objectClass = null; + protected List entities = new ArrayList(); + protected List currentEntities = new ArrayList(); - private List definitions = new ArrayList(); + protected List definitions = new ArrayList(); - private transient DataPaginator advancedPaginator = new DataPaginator(); + protected transient DataPaginator advancedPaginator = new DataPaginator(); - private String ocTerm; - private String currentTab; + protected String ocTerm; + protected String currentTab; - private String textFullTitle; - private String textFullTitleTranslit; - private String textShortTitle; + protected String textFullTitle; + protected String textFullTitleTranslit; + protected String textShortTitle; - private String personName; - private String personNameTranslit; + protected String personName; + protected String personNameTranslit; + protected String personMamsNr; - private String codexIdentifier; + protected String codexIdentifier; - private String collectionName; + protected String collectionName; - private String placeName; - private String placeType; + protected String placeName; + protected String placeType; - private String aliasAlias; + protected String aliasAlias; - private String repositoryName; + protected String repositoryName; - private String witnessFullTitle; - private String witnessFullTitleTranslit; - private String witnessAhlwardtNo; + protected String witnessFullTitle; + protected String witnessFullTitleTranslit; + protected String witnessAhlwardtNo; - private boolean advancedSearch = false; - private String resultMode = MODE_NONE; - private String resultSummaryMsg; + protected boolean advancedSearch = false; + protected String resultMode = MODE_NONE; + protected String resultSummaryMsg; - private String subjectType; - private List suggestedSubjectTypes = new ArrayList(); + protected String subjectType; + protected List suggestedSubjectTypes = new ArrayList(); - private String referenceBibIdNo; + protected String referenceBibIdNo; - private String page; - private String pageMsg; + protected String page; + protected String pageMsg; public static String main_subject = "main_subject"; public static String sub_subject = "sub_subject"; @@ -87,7 +88,7 @@ /** * Put the current subset of this.entites in this.currentEntities. */ - private void updateAdvancedEntities() { + protected void updateAdvancedEntities() { if (StringUtils.isNotEmpty(getObjectClass())) { this.advancedPaginator.initCount(); int startRecord = this.advancedPaginator.getCurrentPage() * this.advancedPaginator.getItemsPerPage(); @@ -113,37 +114,37 @@ public String advancedFirst() { this.advancedPaginator.first(); this.updateAdvancedEntities(); - return GOTO_ENTITY_REPOSITORY; + return null; //GOTO_ENTITY_REPOSITORY; } public String advancedLast() { this.advancedPaginator.last(); this.updateAdvancedEntities(); - return GOTO_ENTITY_REPOSITORY; + return null; //GOTO_ENTITY_REPOSITORY; } public String advancedFastForward() { this.advancedPaginator.fastForward(); this.updateAdvancedEntities(); - return GOTO_ENTITY_REPOSITORY; + return null; //GOTO_ENTITY_REPOSITORY; } public String advancedFastRewind() { this.advancedPaginator.fastRewind(); this.updateAdvancedEntities(); - return GOTO_ENTITY_REPOSITORY; + return null; //GOTO_ENTITY_REPOSITORY; } public String advancedPrevious() { this.advancedPaginator.previous(); this.updateAdvancedEntities(); - return GOTO_ENTITY_REPOSITORY; + return null; //GOTO_ENTITY_REPOSITORY; } public String advancedNext() { this.advancedPaginator.next(); this.updateAdvancedEntities(); - return GOTO_ENTITY_REPOSITORY; + return null; //GOTO_ENTITY_REPOSITORY; } public void reset(){ @@ -289,6 +290,9 @@ if (StringUtils.isNotEmpty(this.personNameTranslit)) { filterList.add(new AttributeFilter("name_translit", this.personNameTranslit, PERSON)); } + if (StringUtils.isNotEmpty(this.personMamsNr)) { + filterList.add(new AttributeFilter("mams_number", this.personMamsNr, PERSON)); + } } /* @@ -431,7 +435,21 @@ this.personNameTranslit = personNameTranslit; } - public String getObjectClass() { + /** + * @return the personMamsNr + */ + public String getPersonMamsNr() { + return personMamsNr; + } + + /** + * @param personMamsNr the personMamsNr to set + */ + public void setPersonMamsNr(String personMamsNr) { + this.personMamsNr = personMamsNr; + } + + public String getObjectClass() { return objectClass; } diff -r caf1aa768457 -r 4961820373d0 src/main/java/de/mpiwg/itgroup/ismi/browse/EntityRepositoryBean.java --- a/src/main/java/de/mpiwg/itgroup/ismi/browse/EntityRepositoryBean.java Tue May 29 21:16:46 2018 +0200 +++ b/src/main/java/de/mpiwg/itgroup/ismi/browse/EntityRepositoryBean.java Wed Jun 06 21:02:30 2018 +0200 @@ -23,7 +23,7 @@ private static final long serialVersionUID = -2380877853539157567L; - private transient DataPaginator paginator = new DataPaginator(); + protected transient DataPaginator paginator = new DataPaginator(); public EntityRepositoryBean(){ super(); @@ -36,7 +36,7 @@ } - private void updateEntities() { + protected void updateEntities() { if (StringUtils.isNotEmpty(getObjectClass())) { this.paginator.initCount(); int startRecord = this.paginator.getCurrentPage() * this.paginator.getItemsPerPage(); diff -r caf1aa768457 -r 4961820373d0 src/main/java/de/mpiwg/itgroup/ismi/browse/FullEntityRepositoryBean.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/de/mpiwg/itgroup/ismi/browse/FullEntityRepositoryBean.java Wed Jun 06 21:02:30 2018 +0200 @@ -0,0 +1,176 @@ +package de.mpiwg.itgroup.ismi.browse; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.util.List; + +import org.apache.commons.lang.StringUtils; +import org.mpi.openmind.cache.WrapperService; +import org.mpi.openmind.repository.bo.Attribute; +import org.mpi.openmind.repository.bo.Entity; + +/** + * EntityRepositoryBean for full Entities with Attributes and Relations loaded. + * + * @author casties + * + */ +public class FullEntityRepositoryBean extends EntityRepositoryBean { + + private static final long serialVersionUID = 8022526185079972610L; + + protected String sortAttributeName; + + protected boolean sortAttributeNumerically = false; + + /* + * (non-Javadoc) + * + * @see de.mpiwg.itgroup.ismi.browse.AbstractEntityRepositoryBean# + * updateAdvancedEntities() + */ + @Override + protected void updateAdvancedEntities() { + if (StringUtils.isNotEmpty(getObjectClass())) { + this.advancedPaginator.initCount(); + int startRecord = this.advancedPaginator.getCurrentPage() * this.advancedPaginator.getItemsPerPage(); + if ((this.advancedPaginator.getCurrentPage() + 1) == this.advancedPaginator.getNumberOfPages()) { + int mod = this.entities.size() % advancedPaginator.getItemsPerPage(); + if (mod == 0) { + this.currentEntities = entities.subList(startRecord, + startRecord + this.advancedPaginator.getItemsPerPage()); + } else { + this.currentEntities = entities.subList(startRecord, startRecord + mod); + } + + } else { + this.currentEntities = entities.subList(startRecord, + startRecord + this.advancedPaginator.getItemsPerPage()); + } + } else { + // empty object_class + this.currentEntities = new ArrayList(); + } + // make sure all entities are loaded + WrapperService store = getWrapper(); + for (Entity ent : this.currentEntities) { + if (ent.isLightweight()) { + store.getEntityContent(ent); + } + } + } + + public String actionSortByAttributes() { + try { + this.sortByAttributes(); + } catch (Exception e) { + printInternalError(e); + logger.error(e.getMessage(), e); + } + return GOTO_ENTITY_REPOSITORY; + } + + public void sortByAttributes() throws Exception { + this.resultMode = MODE_ADVANCED; + this.setPage(""); + this.entities = new ArrayList(); + this.currentEntities = new ArrayList(); + + this.resultSummaryMsg = ""; + + /* + * run search and sort result (by attribute) + */ + List resultList = getWrapper().getEntitiesByDef(this.objectClass); + // sort List (by ownvalue) + Collections.sort(resultList, + getEntityAttributeComparator(this.sortAttributeName, this.sortAttributeNumerically)); + this.entities = resultList; + + if (resultList.size() > 0) { + this.resultSummaryMsg = resultList.size() + " items were found!"; + this.advancedPaginator.setCurrentPage(0); + int entitiesCount = this.entities.size(); + this.advancedPaginator.resetNumberOfPages(entitiesCount); + this.updateAdvancedEntities(); + } else { + this.resultSummaryMsg = "No items were found!"; + } + } + + public Comparator getEntityAttributeComparator(final String attName, final boolean numerically) { + return new Comparator() { + @Override + public int compare(Entity e1, Entity e2) { + if (e1.isLightweight()) { + e1 = getWrapper().getEntityContent(e1); + } + Attribute att1 = e1.getAttributeByName(attName); + if (e2.isLightweight()) { + e2 = getWrapper().getEntityContent(e2); + } + Attribute att2 = e2.getAttributeByName(attName); + if (att1 == null && att2 != null) { + return 1; + } else if (att1 != null && att2 == null) { + return -1; + } else if (att1 == null && att2 == null) { + return 0; + } + if (numerically) { + Integer a1 = null; + Integer a2 = null; + try { + a1 = Integer.parseInt(att1.getValue()); + } catch (Exception e) { + } + try { + a2 = Integer.parseInt(att2.getValue()); + } catch (Exception e) { + } + if (a1 == null && a2 != null) { + return 1; + } else if (a1 != null && a2 == null) { + return -1; + } else if (a1 == null && a2 == null) { + return 0; + } + return Integer.compare(a1, a2); + } else { + return att1.getValue().compareTo(att2.getValue()); + } + } + }; + } + + /** + * @return the sortAttributeName + */ + public String getSortAttributeName() { + return sortAttributeName; + } + + /** + * @param sortAttributeName + * the sortAttributeName to set + */ + public void setSortAttributeName(String sortAttributeName) { + this.sortAttributeName = sortAttributeName; + } + + /** + * @return the sortAttributeNumerical + */ + public boolean isSortAttributeNumerically() { + return sortAttributeNumerically; + } + + /** + * @param sortAttributeNumerical + * the sortAttributeNumerical to set + */ + public void setSortAttributeNumerically(boolean sortAttributeNumerical) { + this.sortAttributeNumerically = sortAttributeNumerical; + } +} diff -r caf1aa768457 -r 4961820373d0 src/main/java/de/mpiwg/itgroup/ismi/entry/beans/SessionBean.java --- a/src/main/java/de/mpiwg/itgroup/ismi/entry/beans/SessionBean.java Tue May 29 21:16:46 2018 +0200 +++ b/src/main/java/de/mpiwg/itgroup/ismi/entry/beans/SessionBean.java Wed Jun 06 21:02:30 2018 +0200 @@ -27,6 +27,7 @@ import de.mpiwg.itgroup.ismi.event.beans.TransferEvent; import de.mpiwg.itgroup.ismi.merge.GeneralMerge; import de.mpiwg.itgroup.ismi.merge.ImportMerge; +import de.mpiwg.itgroup.ismi.merge.PublicByAuthorBean; import de.mpiwg.itgroup.ismi.merge.ReferenceMerge; import de.mpiwg.itgroup.ismi.publicView.DynamicPageEditor; import de.mpiwg.itgroup.ismi.publicView.PublicCodexBean; @@ -47,6 +48,7 @@ private CopyEvent copyEventForm = new CopyEvent(); private TransferEvent transferEventForm = new TransferEvent(); private transient AdvancedSearchBean advancedSearch = new AdvancedSearchBean(); + private transient PublicByAuthorBean publicByAuthor = new PublicByAuthorBean(); private EntityDetailsBean entDetailsForm = new EntityDetailsBean(); @@ -137,6 +139,7 @@ private String selectedTab = WITNESS_TAB; private String selectedEventTab = WITNESS_STUDY_EVENT_TAB; private String selectedAdvancedSearchTab = "01"; + private String selectedPublicByAuthorTab = "01"; private Long editFormCurrentEntId; @@ -655,6 +658,11 @@ this.redirect(null, url); } + public void listenerPublicByAuthorTabChange(ItemChangeEvent event) { + String url = "?formIndex=" + this.selectedPublicByAuthorTab; + this.redirect(null, url); + } + protected void redirect(String redirectPath, String parameters){ FacesContext fc = FacesContext.getCurrentInstance(); ExternalContext ec = fc.getExternalContext(); @@ -1099,6 +1107,34 @@ public void setPublicCodexBean(PublicCodexBean publicCodexBean) { this.publicCodexBean = publicCodexBean; } + + /** + * @return the publicByAuthor + */ + public PublicByAuthorBean getPublicByAuthor() { + return publicByAuthor; + } + + /** + * @param publicByAuthor the publicByAuthor to set + */ + public void setPublicByAuthor(PublicByAuthorBean publicByAuthor) { + this.publicByAuthor = publicByAuthor; + } + + /** + * @return the selectedPublicByAuthorTab + */ + public String getSelectedPublicByAuthorTab() { + return selectedPublicByAuthorTab; + } + + /** + * @param selectedPublicByAuthorTab the selectedPublicByAuthorTab to set + */ + public void setSelectedPublicByAuthorTab(String selectedPublicByAuthorTab) { + this.selectedPublicByAuthorTab = selectedPublicByAuthorTab; + } diff -r caf1aa768457 -r 4961820373d0 src/main/java/de/mpiwg/itgroup/ismi/merge/PublicByAuthorBean.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/de/mpiwg/itgroup/ismi/merge/PublicByAuthorBean.java Wed Jun 06 21:02:30 2018 +0200 @@ -0,0 +1,239 @@ +package de.mpiwg.itgroup.ismi.merge; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.faces.event.ActionEvent; + +import org.apache.log4j.Logger; +import org.mpi.openmind.repository.bo.Entity; +import org.mpi.openmind.repository.bo.Relation; + +import de.mpiwg.itgroup.ismi.browse.EntityRepositoryBean; +import de.mpiwg.itgroup.ismi.browse.FullEntityRepositoryBean; +import de.mpiwg.itgroup.ismi.entry.beans.AbstractISMIBean; + +public class PublicByAuthorBean extends AbstractISMIBean implements Serializable{ + + private static Logger logger = Logger.getLogger(PublicByAuthorBean.class); + + private static final long serialVersionUID = 1L; + + private String findAuthorName = ""; + protected Long selectedPersonId = 0l; + + protected Entity selectedPerson; + protected List selectedPersonTexts; + protected List selectedPersonSubjects; + protected Map> selectedPersonSubjectMap; + + protected Map> subjectParents; + + + private FullEntityRepositoryBean browseBean; + + + public PublicByAuthorBean(){ + //logger.info("AdvancedSearchBean"); + this.reset(); + } + + public void reset(){ + //logger.info("AdvancedSearchBean.reset()"); + browseBean = new FullEntityRepositoryBean(); + browseBean.setObjectClass(PERSON); + + selectedPersonTexts = new ArrayList(); + selectedPersonSubjectMap = new HashMap>(); + makeSubjectTree(); + } + + protected void makeSubjectTree() { + subjectParents = new HashMap>(); + List subjects = getWrapper().getEntitiesByDef(SUBJECT); + for (Entity subject : subjects) { + if (subject.isLightweight()) { + subject = getWrapper().getEntityContent(subject); + } + ArrayList parents = new ArrayList(); + Entity parent = subject; + int cnt = 0; + do { + if (parent.isLightweight()) { + parent = getWrapper().getEntityContent(parent); + } + List parRels = parent.getSourceRelations(is_part_of, SUBJECT); + if (!parRels.isEmpty()) { + Long parentId = parRels.get(0).getTargetId(); + parent = getWrapper().getEntityById(parentId); + parents.add(parent.getOwnValue()); + } else { + break; + } + } while (++cnt < 5); + subjectParents.put(subject.getOwnValue(), parents); + } + } + + + /** + * @return the subjectParents + */ + public Map> getSubjectParents() { + return subjectParents; + } + + public void listenerAuthorIdSearch(ActionEvent event) { + setSelectedPersonById(); + } + + protected void setSelectedPersonById() { + Entity ent = getWrapper().getEntityById(selectedPersonId); + if (ent != null) { + ent = getWrapper().getEntityContent(ent); + selectedPerson = ent; + updateSelectedPerson(); + } + } + + + + public void updateSelectedPerson() { + // load all texts by this author + selectedPersonTexts = new ArrayList(); + selectedPersonSubjectMap = new HashMap>(); + List textRels = selectedPerson.getTargetRelations("was_created_by", "TEXT"); + for (Relation rel : textRels) { + Long textID = rel.getSourceId(); + // get text + Entity text = getWrapper().getEntityByIdWithContent(textID); + selectedPersonTexts.add(text); + // get subject + List subjectRels = text.getSourceRelations("has_subject", "SUBJECT"); + if (subjectRels.isEmpty()) { + String subject = "NO SUBJECT"; + List texts = selectedPersonSubjectMap.get(subject); + if (texts == null) { + texts = new ArrayList(); + } + // add text to list + texts.add(text); + // add list to subject map + selectedPersonSubjectMap.put(subject, texts); + + } else { + for (Relation subjectRel : subjectRels) { + Long subjectId = subjectRel.getTargetId(); + Entity subject = getWrapper().getEntityByIdWithContent(subjectId); + List texts = selectedPersonSubjectMap.get(subject.getOwnValue()); + if (texts == null) { + texts = new ArrayList(); + } + // add text to list + texts.add(text); + // add list to subject map + selectedPersonSubjectMap.put(subject.getOwnValue(), texts); + } + } + } + // update list of subjects + selectedPersonSubjects = new ArrayList(); + for (String sub : selectedPersonSubjectMap.keySet()) { + selectedPersonSubjects.add(sub); + } + } + + + public String actionSelectPerson() { + Entity entity = (Entity) getRequestBean("entity"); + selectedPersonId = entity.getId(); + setSelectedPersonById(); + // switch tab + getSessionBean().setSelectedPublicByAuthorTab("sub"); + return null; + } + + public void actionAllAuthors() { + browseBean.setObjectClass(PERSON); + browseBean.setSortAttributeName("mams_number"); + browseBean.setSortAttributeNumerically(true); + try { + browseBean.sortByAttributes(); + } catch (Exception e) { + logger.error(e); + } + } + + /** + * @return the findAuthorName + */ + public String getFindAuthorName() { + return findAuthorName; + } + + /** + * @param findAuthorName the findAuthorName to set + */ + public void setFindAuthorName(String findAuthorName) { + this.findAuthorName = findAuthorName; + } + + /** + * @return the browseBean + */ + public EntityRepositoryBean getBrowseBean() { + return browseBean; + } + + /** + * @return the selectedPersonId + */ + public long getSelectedPersonId() { + return selectedPersonId; + } + + /** + * @param selectedPersonId the selectedPersonId to set + */ + public void setSelectedPersonId(long selectedPersonId) { + this.selectedPersonId = selectedPersonId; + } + /** + * @return the selectedPerson + */ + public Entity getSelectedPerson() { + return selectedPerson; + } + + /** + * @return the selectedPersonTexts + */ + public List getSelectedPersonTexts() { + return selectedPersonTexts; + } + + /** + * @return the selectedPersonSubjects + */ + public Map> getSelectedPersonSubjectMap() { + return selectedPersonSubjectMap; + } + + /** + * @param selectedPersonId the selectedPersonId to set + */ + public void setSelectedPersonId(Long selectedPersonId) { + this.selectedPersonId = selectedPersonId; + } + + /** + * @return the selectedPersonSubjects + */ + public List getSelectedPersonSubjects() { + return selectedPersonSubjects; + } + +} diff -r caf1aa768457 -r 4961820373d0 src/main/java/de/mpiwg/itgroup/ismi/search/beans/AdvancedSearchBean.java --- a/src/main/java/de/mpiwg/itgroup/ismi/search/beans/AdvancedSearchBean.java Tue May 29 21:16:46 2018 +0200 +++ b/src/main/java/de/mpiwg/itgroup/ismi/search/beans/AdvancedSearchBean.java Wed Jun 06 21:02:30 2018 +0200 @@ -3,16 +3,12 @@ import java.io.Serializable; import java.util.ArrayList; import java.util.List; -import java.util.Map; -import java.util.Map.Entry; import javax.faces.event.ValueChangeEvent; import javax.faces.model.SelectItem; import org.apache.log4j.Logger; -import org.mpi.openmind.repository.bo.Attribute; import org.mpi.openmind.search.utils.ResultEntry; -import org.mpi.openmind.search.utils.SAttribute; import org.mpi.openmind.search.utils.SAttributeMultipleName; import org.mpi.openmind.search.utils.SAttributeMultipleValue; import org.mpi.openmind.search.utils.SAttributeUniqueName; @@ -22,8 +18,6 @@ import org.mpi.openmind.search.utils.SRelationUniqueName; import de.mpiwg.itgroup.ismi.entry.beans.AbstractISMIBean; -import de.mpiwg.itgroup.ismi.entry.beans.SessionBean; -import de.mpiwg.itgroup.ismi.util.guiComponents.Calendar; public class AdvancedSearchBean extends AbstractISMIBean implements Serializable{ diff -r caf1aa768457 -r 4961820373d0 src/main/java/de/mpiwg/itgroup/ismi/search/beans/Titles4PersonQuery.java --- a/src/main/java/de/mpiwg/itgroup/ismi/search/beans/Titles4PersonQuery.java Tue May 29 21:16:46 2018 +0200 +++ b/src/main/java/de/mpiwg/itgroup/ismi/search/beans/Titles4PersonQuery.java Wed Jun 06 21:02:30 2018 +0200 @@ -2,16 +2,12 @@ import java.io.Serializable; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; import javax.faces.model.SelectItem; import org.apache.commons.lang.StringUtils; import org.mpi.openmind.repository.bo.Entity; -import org.mpi.openmind.repository.bo.Relation; -import org.mpi.openmind.repository.utils.NormalizerUtils; import org.mpi.openmind.repository.utils.OldNormalizerUtils; import org.mpi.openmind.search.utils.ResultEntry; import org.mpi.openmind.search.utils.SAttributeMultipleName; diff -r caf1aa768457 -r 4961820373d0 src/main/java/de/mpiwg/itgroup/ismi/util/guiComponents/DataPaginator.java --- a/src/main/java/de/mpiwg/itgroup/ismi/util/guiComponents/DataPaginator.java Tue May 29 21:16:46 2018 +0200 +++ b/src/main/java/de/mpiwg/itgroup/ismi/util/guiComponents/DataPaginator.java Wed Jun 06 21:02:30 2018 +0200 @@ -4,7 +4,7 @@ public class DataPaginator { /* This should be parameters or properties stored somewhere */ - private int itemsPerPage = 10; + private int itemsPerPage = 20; private int rewindFastForwardBy = 10; private int currentPage; diff -r caf1aa768457 -r 4961820373d0 src/main/webapp/clean/components/publicFindAuthor.xhtml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/webapp/clean/components/publicFindAuthor.xhtml Wed Jun 06 21:02:30 2018 +0200 @@ -0,0 +1,174 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MAMS + + + + Person + + + + + + + + + + State + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -r caf1aa768457 -r 4961820373d0 src/main/webapp/clean/components/publicShowSubjects.xhtml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/webapp/clean/components/publicShowSubjects.xhtml Wed Jun 06 21:02:30 2018 +0200 @@ -0,0 +1,71 @@ + + + + + + + + +

Author: #{Session.publicByAuthor.selectedPerson.ownValue}"

+ + + + + + + + + + + + + +

+ #{subject} + < #{parent} +

+ + + + + + #{text.ownValue} + + + [#{text.id}] + + + #{text.privacity} + + + +
+
+ + +
+ + + +
+ + diff -r caf1aa768457 -r 4961820373d0 src/main/webapp/clean/publicByAuthor.xhtml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/webapp/clean/publicByAuthor.xhtml Wed Jun 06 21:02:30 2018 +0200 @@ -0,0 +1,42 @@ + + + + + + + + + + +
+ +
+ + + + + + + + + + + + + + + + + +
+
+ + + \ No newline at end of file diff -r caf1aa768457 -r 4961820373d0 src/main/webapp/search/components/titles4Person.xhtml --- a/src/main/webapp/search/components/titles4Person.xhtml Tue May 29 21:16:46 2018 +0200 +++ b/src/main/webapp/search/components/titles4Person.xhtml Wed Jun 06 21:02:30 2018 +0200 @@ -66,25 +66,6 @@ - - - - - - - - - - - @@ -139,7 +120,7 @@ - + diff -r caf1aa768457 -r 4961820373d0 src/main/webapp/templates/main_template.xhtml --- a/src/main/webapp/templates/main_template.xhtml Tue May 29 21:16:46 2018 +0200 +++ b/src/main/webapp/templates/main_template.xhtml Wed Jun 06 21:02:30 2018 +0200 @@ -167,6 +167,18 @@ + + + + + + + + + + + Browse Repository @@ -188,7 +200,7 @@ Codices marked as public + value="#{ApplicationBean1.root}/public/publicCodices.xhtml">Public Codices Biographies