This commit is contained in:
2014-06-18 18:59:54 +02:00
6 changed files with 51 additions and 4 deletions
@@ -1,5 +1,7 @@
package info.bukova.isspst;
import java.util.List;
import info.bukova.isspst.data.Permission;
import info.bukova.isspst.data.Role;
import info.bukova.isspst.data.User;
@@ -44,6 +46,7 @@ public class AppInitListener implements ServletContextListener {
checkRoles();
checkUsers();
checkPermissions();
checkAllAdminRights();
userService.removeAccess();
loadModuleReports();
@@ -97,6 +100,23 @@ public class AppInitListener implements ServletContextListener {
}
}
private void checkAllAdminRights()
{
Role adminRole = roleService.getRoleByAuthority(Constants.ROLE_ADMIN);
List<Permission> permissionList = adminRole.getPermissions();
List<Permission> permissionListAvailable = permService.getAll();
for (Permission permitionAvailable : permissionListAvailable)
{
if (!permissionList.contains(permitionAvailable))
{
adminRole.addPermission(permitionAvailable);
}
}
roleService.update(adminRole);
}
private void loadModuleReports() {
for (Module m : Constants.MODULES) {
Report rep = new Report();
@@ -54,6 +54,7 @@ public class ListViewModel<T extends DataModel> {
return dataList;
}
@NotifyChange({"dataBean","ableToDelete"})
public void setDataBean(T data) {
this.dataBean = data;
}
@@ -326,5 +327,14 @@ public class ListViewModel<T extends DataModel> {
protected void setFullFill(boolean fullFill) {
this.fullFill = fullFill;
}
public boolean isRecordSelected()
{
return (dataBean != null);
}
public boolean isAbleToDelete()
{
return this.isRecordSelected();
}
}
@@ -72,4 +72,21 @@ public class UsersList extends ListViewModel<User> {
return ret;
}
@Override
public boolean isAbleToDelete() {
if (!super.isAbleToDelete())
{
return false;
}
if (getDataBean().getUsername() == "admin")
{
return false;
}
return true;
}
}