delete column only added if adminprivileges
This commit is contained in:
parent
c49837da53
commit
246f13b7f6
src/main/java/se/su/dsv/scipro
admin/pages
datatables/checklist
springdata/serviceimpls
@ -39,7 +39,7 @@ public class AdminCheckListPage extends AbstractAdminPage {
|
|||||||
add(dialog);
|
add(dialog);
|
||||||
|
|
||||||
|
|
||||||
add(cltdp = new CheckListTemplateDataPanel("datapanel", true) {
|
add(cltdp = new CheckListTemplateDataPanel("datapanel", false) {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(IModel<CheckListTemplate> clicked, AjaxRequestTarget target) {
|
public void onClick(IModel<CheckListTemplate> clicked, AjaxRequestTarget target) {
|
||||||
System.out.println(clicked.getObject().getCreator());
|
System.out.println(clicked.getObject().getCreator());
|
||||||
|
@ -20,6 +20,8 @@ import se.su.dsv.scipro.reusable.AjaxDropDown;
|
|||||||
import se.su.dsv.scipro.reusable.FilterBooleanPanel;
|
import se.su.dsv.scipro.reusable.FilterBooleanPanel;
|
||||||
import se.su.dsv.scipro.reusable.FilterStringPanel;
|
import se.su.dsv.scipro.reusable.FilterStringPanel;
|
||||||
import se.su.dsv.scipro.springdata.services.ChecklistTemplateService;
|
import se.su.dsv.scipro.springdata.services.ChecklistTemplateService;
|
||||||
|
import se.su.dsv.scipro.util.JavascriptEventConfirmation;
|
||||||
|
import sun.plugin2.message.JavaScriptBaseMessage;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
@ -83,7 +85,14 @@ public abstract class CheckListTemplateDataPanel extends Panel {
|
|||||||
};
|
};
|
||||||
add(numberDropDown);
|
add(numberDropDown);
|
||||||
|
|
||||||
IColumn[] columns = new IColumn[5];
|
IColumn[] columns;
|
||||||
|
if (adminPrivileges){
|
||||||
|
columns = new IColumn[5];
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
columns = new IColumn[4];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
columns[0] = new ClickableTitleColumn<CheckListTemplate>(Model.of("Name"), "name", "name") {
|
columns[0] = new ClickableTitleColumn<CheckListTemplate>(Model.of("Name"), "name", "name") {
|
||||||
@Override
|
@Override
|
||||||
@ -108,14 +117,25 @@ public abstract class CheckListTemplateDataPanel extends Panel {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
columns[4] = new ClickableDeleteColumn<CheckListTemplate>(Model.of("Delete"), "name") {
|
if (adminPrivileges){
|
||||||
@Override
|
columns[4] = new ClickableDeleteColumn<CheckListTemplate>(Model.of("Delete"), "name") {
|
||||||
protected void onClick(IModel<CheckListTemplate> clicked, AjaxRequestTarget target) {
|
@Override
|
||||||
checklistTemplateService.lowerTemplateNumbersAbove(clicked.getObject().getTemplateNumber());
|
protected void onClick(IModel<CheckListTemplate> clicked, AjaxRequestTarget target) {
|
||||||
checklistTemplateService.delete(clicked.getObject().getId());
|
boolean isPeer = false;
|
||||||
target.addComponent(table);
|
for (ChecklistCategory clc : clicked.getObject().getCategories()){
|
||||||
}
|
if (clc.getCategoryName().equalsIgnoreCase("peer")){
|
||||||
};
|
isPeer = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!isPeer){
|
||||||
|
checklistTemplateService.lowerTemplateNumbersAbove(clicked.getObject().getTemplateNumber());
|
||||||
|
checklistTemplateService.delete(clicked.getObject().getId());
|
||||||
|
}
|
||||||
|
target.addComponent(table);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
table = new DataTable<CheckListTemplate>("datatable", columns, checklistTemplateProvider = new ChecklistTemplateProvider(), 10);
|
table = new DataTable<CheckListTemplate>("datatable", columns, checklistTemplateProvider = new ChecklistTemplateProvider(), 10);
|
||||||
table.setOutputMarkupId(true);
|
table.setOutputMarkupId(true);
|
||||||
|
@ -51,7 +51,6 @@ public abstract class ClickableDeleteColumn<T> extends AbstractColumn<T> {
|
|||||||
};
|
};
|
||||||
add(link);
|
add(link);
|
||||||
link.add(new ImageObject("deleteicon", ImageObject.SIXTEEN + ImageObject.DELETE));
|
link.add(new ImageObject("deleteicon", ImageObject.SIXTEEN + ImageObject.DELETE));
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -108,6 +108,7 @@ public class ChecklistTemplateServiceImpl extends AbstractQueryService<CheckList
|
|||||||
return clt;
|
return clt;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Transactional ( readOnly = false )
|
||||||
@Override
|
@Override
|
||||||
public void lowerTemplateNumbersAbove(int templateNumber) {
|
public void lowerTemplateNumbersAbove(int templateNumber) {
|
||||||
for (CheckListTemplate clt : checklistTemplateRepo.findAllByTemplateNumberGreaterThan(templateNumber)){
|
for (CheckListTemplate clt : checklistTemplateRepo.findAllByTemplateNumberGreaterThan(templateNumber)){
|
||||||
|
Loading…
x
Reference in New Issue
Block a user