CCM NG: Possible fix for missing items in FolderBrowser (see #2739).
git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@5188 8810af33-2d31-482b-a856-94f89814c4dfpull/2/head
parent
b77f52e9b6
commit
f2a04ab609
|
|
@ -105,7 +105,7 @@ public class FolderBrowser extends Table {
|
||||||
private StringParameter atozFilterParameter = null;
|
private StringParameter atozFilterParameter = null;
|
||||||
private StringParameter filterParameter = null;
|
private StringParameter filterParameter = null;
|
||||||
private FolderManipulator folderManipulator;
|
private FolderManipulator folderManipulator;
|
||||||
private Paginator paginator;
|
// private Paginator paginator;
|
||||||
// private FolderManipulator.FilterForm filterForm;
|
// private FolderManipulator.FilterForm filterForm;
|
||||||
private long folderSize;
|
private long folderSize;
|
||||||
|
|
||||||
|
|
@ -227,13 +227,13 @@ public class FolderBrowser extends Table {
|
||||||
return folderSize;
|
return folderSize;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected Paginator getPaginator() {
|
// protected Paginator getPaginator() {
|
||||||
return paginator;
|
// return paginator;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
protected void setPaginator(final Paginator paginator) {
|
// protected void setPaginator(final Paginator paginator) {
|
||||||
this.paginator = paginator;
|
// this.paginator = paginator;
|
||||||
}
|
// }
|
||||||
|
|
||||||
protected String getFilter(final PageState state) {
|
protected String getFilter(final PageState state) {
|
||||||
return (String) state.getValue(filterParameter);
|
return (String) state.getValue(filterParameter);
|
||||||
|
|
|
||||||
|
|
@ -291,6 +291,7 @@ public class FolderBrowserController {
|
||||||
final String orderDirection,
|
final String orderDirection,
|
||||||
final int firstResult,
|
final int firstResult,
|
||||||
final int maxResults) {
|
final int maxResults) {
|
||||||
|
|
||||||
final List<Folder> subFolders = findSubFolders(folder,
|
final List<Folder> subFolders = findSubFolders(folder,
|
||||||
filterTerm,
|
filterTerm,
|
||||||
orderBy,
|
orderBy,
|
||||||
|
|
@ -302,9 +303,9 @@ public class FolderBrowserController {
|
||||||
.map(subFolder -> buildRow(subFolder))
|
.map(subFolder -> buildRow(subFolder))
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
|
|
||||||
if (subFolders.size() > maxResults) {
|
// if (subFolders.size() >= maxResults) {
|
||||||
return subFolderRows;
|
// return subFolderRows;
|
||||||
} else {
|
// } else {
|
||||||
final int maxItems = maxResults - subFolders.size();
|
final int maxItems = maxResults - subFolders.size();
|
||||||
final int firstItem = firstResult - subFolders.size();
|
final int firstItem = firstResult - subFolders.size();
|
||||||
|
|
||||||
|
|
@ -323,7 +324,7 @@ public class FolderBrowserController {
|
||||||
rows.addAll(itemRows);
|
rows.addAll(itemRows);
|
||||||
|
|
||||||
return rows;
|
return rows;
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -60,7 +60,7 @@ class FolderBrowserTableModelBuilder
|
||||||
return Table.EMPTY_MODEL;
|
return Table.EMPTY_MODEL;
|
||||||
} else {
|
} else {
|
||||||
folderBrowser.getRowSelectionModel().clearSelection(state);
|
folderBrowser.getRowSelectionModel().clearSelection(state);
|
||||||
final Paginator paginator = folderBrowser.getPaginator();
|
// final Paginator paginator = folderBrowser.getPaginator();
|
||||||
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
|
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
|
||||||
final FolderBrowserController controller = cdiUtil
|
final FolderBrowserController controller = cdiUtil
|
||||||
.findBean(FolderBrowserController.class);
|
.findBean(FolderBrowserController.class);
|
||||||
|
|
@ -78,8 +78,8 @@ class FolderBrowserTableModelBuilder
|
||||||
orderDirection = folderBrowser.getSortDirection(state);
|
orderDirection = folderBrowser.getSortDirection(state);
|
||||||
}
|
}
|
||||||
final String atozFilter = folderBrowser.getAtoZfilter(state);
|
final String atozFilter = folderBrowser.getAtoZfilter(state);
|
||||||
final int first = paginator.getFirst(state);
|
// final int first = paginator.getFirst(state);
|
||||||
final int pageSize = paginator.getPageSize(state);
|
// final int pageSize = paginator.getPageSize(state);
|
||||||
|
|
||||||
final String filterTerm;
|
final String filterTerm;
|
||||||
if (filter != null && !filter.trim().isEmpty()) {
|
if (filter != null && !filter.trim().isEmpty()) {
|
||||||
|
|
@ -96,16 +96,23 @@ class FolderBrowserTableModelBuilder
|
||||||
if (filterTerm == null) {
|
if (filterTerm == null) {
|
||||||
rows = controller.getObjectRows(folder,
|
rows = controller.getObjectRows(folder,
|
||||||
orderBy,
|
orderBy,
|
||||||
orderDirection,
|
orderDirection);
|
||||||
first - 1,
|
// rows = controller.getObjectRows(folder,
|
||||||
pageSize);
|
// orderBy,
|
||||||
|
// orderDirection,
|
||||||
|
// first - 1,
|
||||||
|
// pageSize);
|
||||||
} else {
|
} else {
|
||||||
rows = controller.getObjectRows(folder,
|
rows = controller.getObjectRows(folder,
|
||||||
filterTerm,
|
filterTerm,
|
||||||
orderBy,
|
orderBy,
|
||||||
orderDirection,
|
orderDirection);
|
||||||
first - 1,
|
// rows = controller.getObjectRows(folder,
|
||||||
pageSize);
|
// filterTerm,
|
||||||
|
// orderBy,
|
||||||
|
// orderDirection,
|
||||||
|
// first - 1,
|
||||||
|
// pageSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
LOGGER.debug("Retrieve table rows in {} ms.",
|
LOGGER.debug("Retrieve table rows in {} ms.",
|
||||||
|
|
|
||||||
|
|
@ -883,7 +883,7 @@ public class FolderManipulator extends SimpleContainer implements
|
||||||
private static final String ITEM_VIEW = "itemView";
|
private static final String ITEM_VIEW = "itemView";
|
||||||
|
|
||||||
private final FolderBrowser folderBrowser;
|
private final FolderBrowser folderBrowser;
|
||||||
private final Paginator paginator;
|
// private final Paginator paginator;
|
||||||
private final OptionGroup checkboxGroup;
|
private final OptionGroup checkboxGroup;
|
||||||
private final SingleSelect actionSelect;
|
private final SingleSelect actionSelect;
|
||||||
private final Submit submit;
|
private final Submit submit;
|
||||||
|
|
@ -904,11 +904,11 @@ public class FolderManipulator extends SimpleContainer implements
|
||||||
folderBrowser.setFilterParameter(filterParam);
|
folderBrowser.setFilterParameter(filterParam);
|
||||||
// folderBrowser.setFilterForm(filterForm);
|
// folderBrowser.setFilterForm(filterForm);
|
||||||
folderBrowser.setFolderManipulator(FolderManipulator.this);
|
folderBrowser.setFolderManipulator(FolderManipulator.this);
|
||||||
paginator = new Paginator(
|
// paginator = new Paginator(
|
||||||
new FolderBrowserPaginationModelBuilder(folderBrowser),
|
// new FolderBrowserPaginationModelBuilder(folderBrowser),
|
||||||
CMSConfig.getConfig().getFolderBrowseListSize());
|
// CMSConfig.getConfig().getFolderBrowseListSize());
|
||||||
folderBrowser.setPaginator(paginator);
|
// folderBrowser.setPaginator(paginator);
|
||||||
panel.add(paginator);
|
// panel.add(paginator);
|
||||||
panel.add(folderBrowser);
|
panel.add(folderBrowser);
|
||||||
|
|
||||||
LOGGER.debug("Adding filter form...");
|
LOGGER.debug("Adding filter form...");
|
||||||
|
|
@ -966,16 +966,16 @@ public class FolderManipulator extends SimpleContainer implements
|
||||||
return folderBrowser;
|
return folderBrowser;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Paginator getPaginator() {
|
// public Paginator getPaginator() {
|
||||||
return paginator;
|
// return paginator;
|
||||||
}
|
// }
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void reset(final PageState state) {
|
public void reset(final PageState state) {
|
||||||
|
|
||||||
checkboxGroup.setValue(state, null);
|
checkboxGroup.setValue(state, null);
|
||||||
actionSelect.setValue(state, null);
|
actionSelect.setValue(state, null);
|
||||||
paginator.reset(state);
|
// paginator.reset(state);
|
||||||
//state.setValue(m_aToZfilter, null);
|
//state.setValue(m_aToZfilter, null);
|
||||||
state.setValue(filterParam, null);
|
state.setValue(filterParam, null);
|
||||||
filterForm.getFilterField().setValue(state, null);
|
filterForm.getFilterField().setValue(state, null);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue