diff --git a/src/main/java/se/su/dsv/scipro/admin/pages/ProjectManagementPage.java b/src/main/java/se/su/dsv/scipro/admin/pages/ProjectManagementPage.java index 8428e65d35..07980bf9d1 100644 --- a/src/main/java/se/su/dsv/scipro/admin/pages/ProjectManagementPage.java +++ b/src/main/java/se/su/dsv/scipro/admin/pages/ProjectManagementPage.java @@ -6,12 +6,13 @@ import se.su.dsv.scipro.project.panels.ProjectManagementPanel; import se.su.dsv.scipro.security.auth.Authorization; import se.su.dsv.scipro.security.auth.roles.Roles; -@Authorization(authorizedRoles={Roles.SYSADMIN}) +//@Authorization(authorizedRoles={Roles.SYSADMIN}) +@Authorization(authorizedRoles = { Roles.ADMIN}) public class ProjectManagementPage extends AbstractAdminPage { public ProjectManagementPage(PageParameters pp) { super(pp); add(new ProjectManagementPanel("pmp")); - } + } } diff --git a/src/main/java/se/su/dsv/scipro/project/panels/EditProjectPanel.java b/src/main/java/se/su/dsv/scipro/project/panels/EditProjectPanel.java index c26ba4b858..d15c5f77e2 100644 --- a/src/main/java/se/su/dsv/scipro/project/panels/EditProjectPanel.java +++ b/src/main/java/se/su/dsv/scipro/project/panels/EditProjectPanel.java @@ -1,11 +1,6 @@ package se.su.dsv.scipro.project.panels; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Iterator; -import java.util.List; -import java.util.TreeSet; - +import edu.emory.mathcs.backport.java.util.Collections; import org.apache.wicket.Component; import org.apache.wicket.Response; import org.apache.wicket.ajax.AjaxRequestTarget; @@ -29,27 +24,20 @@ import org.wicketstuff.objectautocomplete.ObjectAutoCompleteBuilder; import org.wicketstuff.objectautocomplete.ObjectAutoCompleteField; import org.wicketstuff.objectautocomplete.ObjectAutoCompleteRenderer; import org.wicketstuff.objectautocomplete.ObjectReadOnlyRenderer; - +import se.su.dsv.scipro.SciProSession; import se.su.dsv.scipro.admin.pages.ProjectContainer; -import se.su.dsv.scipro.components.autocomplete.AutoCompletionChoicesProvider; -import se.su.dsv.scipro.components.autocomplete.MultiObjectAutoCompleteBuilder; -import se.su.dsv.scipro.components.autocomplete.MultiObjectAutoCompleteField; -import se.su.dsv.scipro.components.autocomplete.MultiObjectAutoCompleteObjectConverter; -import se.su.dsv.scipro.components.autocomplete.MultiObjectAutoCompleteRenderer; -import se.su.dsv.scipro.components.autocomplete.TeamMemberMultiObjectAutoCompleteBuilder; -import se.su.dsv.scipro.components.autocomplete.TeamMemberMultiObjectAutoCompleteField; +import se.su.dsv.scipro.components.autocomplete.*; import se.su.dsv.scipro.data.dao.interfaces.ProjectClassDao; import se.su.dsv.scipro.data.dao.interfaces.ProjectDao; import se.su.dsv.scipro.data.dao.interfaces.RoleDao; -import se.su.dsv.scipro.data.dataobjects.Employee; -import se.su.dsv.scipro.data.dataobjects.Project; -import se.su.dsv.scipro.data.dataobjects.ProjectClass; -import se.su.dsv.scipro.data.dataobjects.ProjectFollower; -import se.su.dsv.scipro.data.dataobjects.ProjectTeamMember; -import se.su.dsv.scipro.data.dataobjects.Student; -import se.su.dsv.scipro.data.dataobjects.User; +import se.su.dsv.scipro.data.dataobjects.*; import se.su.dsv.scipro.data.facade.ProjectFacade; -import edu.emory.mathcs.backport.java.util.Collections; +import se.su.dsv.scipro.security.auth.roles.Roles; + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.TreeSet; //@Authorization(authorizedRoles={Roles.SYSADMIN,Roles.ADMIN}) public abstract class EditProjectPanel extends Panel { @@ -130,7 +118,9 @@ public abstract class EditProjectPanel extends Panel { public ProjectCreationForm(String id, IModel<ProjectContainer> model) { super(id,model); - boolean editEnabled = true;//Allow for confing this some way, preferrably via db-settings. +// boolean editEnabled = true;//Allow for confing this some way, preferrably via db-settings. + boolean editEnabled = SciProSession.get().authorizedForRole(Roles.SYSADMIN); + titleField = new RequiredTextField<String>("titleField",new PropertyModel<String>(projectModel,"title")); titleField.add(new StringValidator.MaximumLengthValidator(200)); @@ -165,7 +155,7 @@ public abstract class EditProjectPanel extends Panel { submit(); onUpdate(target); } - }); + }.setVisible(SciProSession.get().authorizedForRole(Roles.SYSADMIN))); } public void submit(){ diff --git a/src/main/java/se/su/dsv/scipro/project/panels/ProjectManagementPanel.java b/src/main/java/se/su/dsv/scipro/project/panels/ProjectManagementPanel.java index 17116517cc..e5f2f4564e 100644 --- a/src/main/java/se/su/dsv/scipro/project/panels/ProjectManagementPanel.java +++ b/src/main/java/se/su/dsv/scipro/project/panels/ProjectManagementPanel.java @@ -1,8 +1,5 @@ package se.su.dsv.scipro.project.panels; -import java.util.HashSet; -import java.util.Set; - import org.apache.wicket.ajax.AjaxRequestTarget; import org.apache.wicket.ajax.markup.html.AjaxLink; import org.apache.wicket.markup.html.WebMarkupContainer; @@ -15,7 +12,7 @@ import org.apache.wicket.markup.repeater.Item; import org.apache.wicket.markup.repeater.data.DataView; import org.apache.wicket.spring.injection.annot.SpringBean; import org.odlabs.wiquery.ui.dialog.Dialog; - +import se.su.dsv.scipro.SciProSession; import se.su.dsv.scipro.admin.pages.ProjectManagementPage; import se.su.dsv.scipro.data.dao.interfaces.Dao.SortableParams.Sort; import se.su.dsv.scipro.data.dao.interfaces.ProjectDao; @@ -25,6 +22,10 @@ import se.su.dsv.scipro.reusable.DatesPanel; import se.su.dsv.scipro.reusable.FilterProjectClassPanel; import se.su.dsv.scipro.reusable.FilterProjectStatusPanel; import se.su.dsv.scipro.reusable.FilterStringPanel; +import se.su.dsv.scipro.security.auth.roles.Roles; + +import java.util.HashSet; +import java.util.Set; public class ProjectManagementPanel extends Panel { @@ -127,6 +128,7 @@ public class ProjectManagementPanel extends Panel { }; item.add(testLink); + } @@ -266,6 +268,7 @@ public class ProjectManagementPanel extends Panel { } }; add(newLink); + newLink.setVisible(SciProSession.get().authorizedForRole(Roles.SYSADMIN)); } }