use of com.helger.phoss.smp.domain.businesscard.SMPBusinessCardIdentifier in project phoss-smp by phax.
the class PageSecureBusinessCard method showListOfExistingObjects.
@Override
protected void showListOfExistingObjects(@Nonnull final WebPageExecutionContext aWPEC) {
final Locale aDisplayLocale = aWPEC.getDisplayLocale();
final HCNodeList aNodeList = aWPEC.getNodeList();
final ISMPBusinessCardManager aBusinessCardMgr = SMPMetaManager.getBusinessCardMgr();
final ICommonsList<ISMPBusinessCard> aAllBusinessCards = aBusinessCardMgr.getAllSMPBusinessCards();
final BootstrapButtonToolbar aToolbar = new BootstrapButtonToolbar(aWPEC);
aToolbar.addButton("Create new Business Card", createCreateURL(aWPEC), EDefaultIcon.NEW);
aToolbar.addChild(new BootstrapButton().setOnClick(aWPEC.getSelfHref().add(CPageParam.PARAM_ACTION, ACTION_PUBLISH_ALL_TO_INDEXER)).setIcon(EFamFamIcon.ARROW_REDO).addChild("Update all Business Cards in " + SMPWebAppConfiguration.getDirectoryName()).setDisabled(aAllBusinessCards.isEmpty()));
aNodeList.addChild(aToolbar);
final HCTable aTable = new HCTable(new DTCol("Service Group").setDataSort(0, 1).setInitialSorting(ESortOrder.ASCENDING), new DTCol("Name"), new DTCol("Country"), new DTCol("GeoInfo"), new DTCol("Identifiers"), new BootstrapDTColAction(aDisplayLocale)).setID(getID());
for (final ISMPBusinessCard aCurObject : aAllBusinessCards) {
final ISimpleURL aViewLink = createViewURL(aWPEC, aCurObject);
final String sDisplayName = aCurObject.getID();
if (aCurObject.getEntityCount() == 0) {
final HCRow aRow = aTable.addBodyRow();
aRow.addCell(new HCA(aViewLink).addChild(sDisplayName));
for (int i = 1; i < aTable.getColumnCount() - 1; ++i) aRow.addCell();
aRow.addCell(_createActionCell(aWPEC, aCurObject));
} else {
for (final SMPBusinessCardEntity aEntity : aCurObject.getAllEntities()) {
final HCRow aRow = aTable.addBodyRow();
aRow.addCell(new HCA(aViewLink).addChild(sDisplayName));
aRow.addCell(aEntity.names().getFirst().getName());
final Locale aCountry = CountryCache.getInstance().getCountry(aEntity.getCountryCode());
final IHCCell<?> aCountryCell = aRow.addCell();
final EFamFamFlagIcon eIcon = EFamFamFlagIcon.getFromIDOrNull(aCountry.getCountry());
if (eIcon != null)
aCountryCell.addChild(eIcon.getAsNode()).addChild(" ");
aCountryCell.addChild(aCountry.getDisplayCountry(aDisplayLocale));
aRow.addCell(HCExtHelper.nl2divList(aEntity.getGeographicalInformation()));
{
final HCNodeList aIdentifiers = new HCNodeList();
for (final SMPBusinessCardIdentifier aIdentifier : aEntity.identifiers()) aIdentifiers.addChild(div(aIdentifier.getScheme()).addChild(" - ").addChild(aIdentifier.getValue()));
aRow.addCell(aIdentifiers);
}
aRow.addCell(_createActionCell(aWPEC, aCurObject));
}
}
}
final DataTables aDataTables = BootstrapDataTables.createDefaultDataTables(aWPEC, aTable);
aNodeList.addChild(aTable).addChild(aDataTables);
}
Aggregations