Skip to content

Commit

Permalink
manual merging of the fix for assignments limit
Browse files Browse the repository at this point in the history
  • Loading branch information
KaterynaHonchar committed Aug 23, 2018
1 parent d6e79ef commit 017ad97
Show file tree
Hide file tree
Showing 6 changed files with 26 additions and 12 deletions.
Expand Up @@ -387,13 +387,13 @@ public static QName getTargetType(AssignmentType assignment) {

}

public static IModel<String> getShoppingCartAssignmentsLimitReachedTitleModel(OperationResult result, PageBase pageBase){
public static IModel<String> getShoppingCartAssignmentsLimitReachedTitleModel(PageBase pageBase){
return new LoadableModel<String>(true) {
@Override
protected String load() {
int assignmentsLimit = loadAssignmentsLimit(result, pageBase);
return isShoppingCartAssignmentsLimitReached(assignmentsLimit, pageBase) ?
pageBase.createStringResource("RoleCatalogItemButton.assignmentsLimitReachedTitle", loadAssignmentsLimit(result, pageBase))
int assignmentsLimit = pageBase.getSessionStorage().getRoleCatalog().getAssignmentRequestLimit();
return isShoppingCartAssignmentsLimitReached(assignmentsLimit, pageBase) ?
pageBase.createStringResource("RoleCatalogItemButton.assignmentsLimitReachedTitle", assignmentsLimit)
.getString() : "";
}
};
Expand Down
Expand Up @@ -74,7 +74,6 @@ public class RoleCatalogItemButton extends BasePanel<AssignmentEditorDto>{
private static final String DOT_CLASS = RoleCatalogItemButton.class.getName() + ".";
private static final String OPERATION_LOAD_OBJECT = DOT_CLASS + "loadObject";
private static final String OPERATION_LOAD_RELATION_DEFINITION_LIST = DOT_CLASS + "loadRelationDefinitionList";
private static final String OPERATION_LOAD_ASSIGNMENTS_LIMIT = DOT_CLASS + "loadAssignmentsLimit";
private static final Trace LOGGER = TraceManager.getTrace(RoleCatalogItemButton.class);

public RoleCatalogItemButton(String id, IModel<AssignmentEditorDto> model){
Expand Down Expand Up @@ -132,7 +131,7 @@ public void onClick(AjaxRequestTarget ajaxRequestTarget) {
};
detailsLink.add(getFooterLinksEnableBehaviour());
detailsLink.add(AttributeAppender.append("title",
AssignmentsUtil.getShoppingCartAssignmentsLimitReachedTitleModel(new OperationResult(OPERATION_LOAD_ASSIGNMENTS_LIMIT), getPageBase())));
AssignmentsUtil.getShoppingCartAssignmentsLimitReachedTitleModel(getPageBase())));
detailsLink.add(AttributeAppender.append("class", new LoadableModel<String>() {
@Override
protected String load() {
Expand Down Expand Up @@ -166,7 +165,7 @@ public void onClick(AjaxRequestTarget ajaxRequestTarget) {
};
addToCartLink.add(getFooterLinksEnableBehaviour());
addToCartLink.add(AttributeAppender.append("title",
AssignmentsUtil.getShoppingCartAssignmentsLimitReachedTitleModel(new OperationResult(OPERATION_LOAD_ASSIGNMENTS_LIMIT), getPageBase())));
AssignmentsUtil.getShoppingCartAssignmentsLimitReachedTitleModel(getPageBase())));
addToCartLink.add(AttributeAppender.append("class", new LoadableModel<String>() {
@Override
protected String load() {
Expand Down Expand Up @@ -249,8 +248,7 @@ private VisibleEnableBehaviour getFooterLinksEnableBehaviour() {

@Override
public boolean isEnabled() {
int assignmentsLimit = AssignmentsUtil.loadAssignmentsLimit(new OperationResult(OPERATION_LOAD_ASSIGNMENTS_LIMIT),
RoleCatalogItemButton.this.getPageBase());
int assignmentsLimit = getRoleCatalogStorage().getAssignmentRequestLimit();
return !AssignmentsUtil.isShoppingCartAssignmentsLimitReached(assignmentsLimit, RoleCatalogItemButton.this.getPageBase())
&& (isMultiUserRequest() || canAssign(getModelObject()));
}
Expand Down Expand Up @@ -297,7 +295,11 @@ private void targetObjectDetailsPerformed(AssignmentEditorDto assignment, AjaxRe
}

private boolean isMultiUserRequest(){
return getPageBase().getSessionStorage().getRoleCatalog().isMultiUserRequest();
return getRoleCatalogStorage().isMultiUserRequest();
}

private RoleCatalogStorage getRoleCatalogStorage(){
return getPageBase().getSessionStorage().getRoleCatalog();
}

private boolean canAssign(AssignmentEditorDto assignment) {
Expand Down
Expand Up @@ -146,7 +146,7 @@ public boolean isEnabled(){
&& (storage.isMultiUserRequest() || dto.isAssignable()); }
});
addToCartButton.add(AttributeAppender.append("title",
AssignmentsUtil.getShoppingCartAssignmentsLimitReachedTitleModel(new OperationResult(OPERATION_LOAD_ASSIGNMENTS_LIMIT), parentPage)));
AssignmentsUtil.getShoppingCartAssignmentsLimitReachedTitleModel(parentPage)));
shoppingCartButtonsPanel.add(addToCartButton);

AjaxButton shoppingCartButton = new AjaxButton(ID_SHOPPING_CART_BUTTON) {
Expand Down
Expand Up @@ -201,7 +201,7 @@ public boolean isEnabled() {
}
});
addAllButton.add(AttributeAppender.append("title",
AssignmentsUtil.getShoppingCartAssignmentsLimitReachedTitleModel(new OperationResult(OPERATION_LOAD_ASSIGNMENTS_LIMIT), getPageBase())));
AssignmentsUtil.getShoppingCartAssignmentsLimitReachedTitleModel(getPageBase())));
shoppingCartContainer.add(addAllButton);
}

Expand Down
Expand Up @@ -73,6 +73,7 @@ public class PageAssignmentShoppingCart<R extends AbstractRoleType> extends Page

private static final String OPERATION_GET_ASSIGNMENT_VIEW_LIST = DOT_CLASS + "getRoleCatalogViewsList";
private static final String OPERATION_LOAD_RELATION_DEFINITIONS = DOT_CLASS + "loadRelationDefinitions";
private static final String OPERATION_LOAD_ASSIGNMENTS_LIMIT = DOT_CLASS + "loadAssignmentsLimit";
private static final Trace LOGGER = TraceManager.getTrace(PageAssignmentShoppingCart.class);

private IModel<RoleManagementConfigurationType> roleManagementConfigModel;
Expand All @@ -84,6 +85,8 @@ public PageAssignmentShoppingCart() {
protected void onInitialize() {
super.onInitialize();
initModels();
getRoleCatalogStorage().setAssignmentRequestLimit(
AssignmentsUtil.loadAssignmentsLimit(new OperationResult(OPERATION_LOAD_ASSIGNMENTS_LIMIT), this));

setOutputMarkupId(true);

Expand Down
Expand Up @@ -56,6 +56,7 @@ public class RoleCatalogStorage implements PageStorage, OrgTreeStateStorage {
private List<ConflictDto> conflictsList;
private String requestDescription = "";
private ObjectPaging roleCatalogPaging;
private int assignmentRequestLimit = -1;

private ShoppingCartConfigurationDto shoppingCartConfigurationDto = null;

Expand Down Expand Up @@ -206,4 +207,12 @@ public ShoppingCartConfigurationDto getShoppingCartConfigurationDto() {
public void setShoppingCartConfigurationDto(ShoppingCartConfigurationDto shoppingCartConfigurationDto) {
this.shoppingCartConfigurationDto = shoppingCartConfigurationDto;
}

public int getAssignmentRequestLimit() {
return assignmentRequestLimit;
}

public void setAssignmentRequestLimit(int assignmentRequestLimit) {
this.assignmentRequestLimit = assignmentRequestLimit;
}
}

0 comments on commit 017ad97

Please sign in to comment.