added correct structure to student - project ideas as well
This commit is contained in:
parent
dee09e6559
commit
c75de26f64
@ -180,7 +180,7 @@ public class SciProApplication extends RepositoryApplication implements IThemabl
|
||||
mountBookmarkablePage("noproject", NoActiveProjectPage.class);
|
||||
mountBookmarkablePage("project/checklist", ProjectChecklistPage.class);
|
||||
mountBookmarkablePage("project/checklist/viewchecklist", ProjectViewCheckListPage.class);
|
||||
mountBookmarkablePage("projectideas", ProjectIdeaPage.class);
|
||||
mountBookmarkablePage("projectideas", MyProjectIdeasPage.class);
|
||||
mountBookmarkablePage("projectideas/submit", ProjectIdeaSubmissionPage.class);
|
||||
/*
|
||||
* Supervisor pages
|
||||
|
@ -0,0 +1,11 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
|
||||
<body>
|
||||
<wicket:extend>
|
||||
<div class="span-24 last append-bottom">
|
||||
<div wicket:id="ideaSub"></div>
|
||||
</div>
|
||||
<wicket:child/>
|
||||
</wicket:extend>
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,38 @@
|
||||
package se.su.dsv.scipro.project.pages;
|
||||
|
||||
import javax.servlet.http.Cookie;
|
||||
|
||||
import org.apache.wicket.PageParameters;
|
||||
import org.apache.wicket.markup.html.basic.Label;
|
||||
import org.apache.wicket.markup.html.link.BookmarkablePageLink;
|
||||
import org.apache.wicket.model.IModel;
|
||||
import org.apache.wicket.protocol.http.WebRequest;
|
||||
import org.apache.wicket.protocol.http.WebResponse;
|
||||
import org.apache.wicket.spring.injection.annot.SpringBean;
|
||||
|
||||
import se.su.dsv.scipro.SciProSession;
|
||||
import se.su.dsv.scipro.data.DomainObjectDetachableModel;
|
||||
import se.su.dsv.scipro.data.dao.interfaces.ProjectDao;
|
||||
import se.su.dsv.scipro.data.dataobjects.Project;
|
||||
import se.su.dsv.scipro.project.panels.ProjectIdeaTabMenuPanel;
|
||||
import se.su.dsv.scipro.project.panels.ProjectSubTabMenuPanel;
|
||||
/**
|
||||
*
|
||||
* @author Martin Peters - mpeters@dsv.su.se
|
||||
*
|
||||
*/
|
||||
public abstract class AbstractProjectIdeaPage extends ProjectPage {
|
||||
|
||||
public static final String COOKIE_KEY = "authorLastVisitedPID";
|
||||
|
||||
public AbstractProjectIdeaPage(PageParameters pp) {
|
||||
super(pp);
|
||||
|
||||
/**
|
||||
* This is the submenu
|
||||
*/
|
||||
add(new ProjectIdeaTabMenuPanel("ideaSub", this.getClass()));
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -3,15 +3,15 @@ package se.su.dsv.scipro.project.pages;
|
||||
import org.apache.wicket.PageParameters;
|
||||
import org.apache.wicket.markup.html.panel.FeedbackPanel;
|
||||
|
||||
import se.su.dsv.scipro.components.menuhighlighting.MenuHighlightProjectIdeas;
|
||||
import se.su.dsv.scipro.project.panels.MyProjectIdeasPanel;
|
||||
import se.su.dsv.scipro.security.auth.Authorization;
|
||||
import se.su.dsv.scipro.security.auth.roles.Roles;
|
||||
|
||||
//@Authorization(authorizedRoles={Roles.SYSADMIN})
|
||||
@Authorization(authorizedRoles={Roles.STUDENT})
|
||||
public class ProjectIdeaPage extends ProjectPage {
|
||||
public class MyProjectIdeasPage extends AbstractProjectIdeaPage implements MenuHighlightProjectIdeas{
|
||||
|
||||
public ProjectIdeaPage(PageParameters pp) {
|
||||
public MyProjectIdeasPage(PageParameters pp) {
|
||||
super(pp);
|
||||
add(new FeedbackPanel("feedback"));
|
||||
add(new MyProjectIdeasPanel("myIdeasPanel", getUser()));
|
@ -0,0 +1,9 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">
|
||||
<body>
|
||||
<wicket:extend>
|
||||
<div class="prepend-top span-24 last">
|
||||
</div>
|
||||
</wicket:extend>
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,13 @@
|
||||
package se.su.dsv.scipro.project.pages;
|
||||
|
||||
import org.apache.wicket.PageParameters;
|
||||
|
||||
|
||||
public class ProjectIdeaStartPage extends AbstractProjectIdeaPage {
|
||||
|
||||
public ProjectIdeaStartPage(PageParameters pp) {
|
||||
super(pp);
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
|
||||
}
|
@ -9,7 +9,6 @@ import org.apache.wicket.spring.injection.annot.SpringBean;
|
||||
|
||||
import se.su.dsv.scipro.SciProApplication;
|
||||
import se.su.dsv.scipro.SciProSession;
|
||||
import se.su.dsv.scipro.basepages.MenuPage;
|
||||
import se.su.dsv.scipro.components.menuhighlighting.MenuHighlightProjectIdeas;
|
||||
import se.su.dsv.scipro.data.dataobjects.Student;
|
||||
import se.su.dsv.scipro.data.dataobjects.User;
|
||||
@ -21,7 +20,7 @@ import se.su.dsv.scipro.security.auth.Authorization;
|
||||
import se.su.dsv.scipro.security.auth.roles.Roles;
|
||||
|
||||
@Authorization(authorizedRoles={Roles.STUDENT})
|
||||
public class ProjectIdeaSubmissionPage extends ProjectPage implements MenuHighlightProjectIdeas {
|
||||
public class ProjectIdeaSubmissionPage extends AbstractProjectIdeaPage implements MenuHighlightProjectIdeas {
|
||||
|
||||
@SpringBean
|
||||
private ProjectIdeaDao projectIdeaDao;
|
||||
|
@ -60,7 +60,7 @@ import se.su.dsv.scipro.match.dataobject.Match;
|
||||
import se.su.dsv.scipro.match.dataobject.ProjectIdea;
|
||||
import se.su.dsv.scipro.match.facade.ApplicationPeriodFacade;
|
||||
import se.su.dsv.scipro.match.facade.LanguageProvidingProxy;
|
||||
import se.su.dsv.scipro.project.pages.ProjectIdeaPage;
|
||||
import se.su.dsv.scipro.project.pages.MyProjectIdeasPage;
|
||||
import se.su.dsv.scipro.util.AutoCompleteStringFormatter;
|
||||
|
||||
/**
|
||||
@ -315,7 +315,7 @@ public class ProjectIdeaSubmissionPanel extends Panel {
|
||||
|
||||
idea.setLanguages(languageSelectionPanel.getSelectedLanguages());
|
||||
projectIdeaFacade.saveIdea(idea, loggedInUser, agreedSupervisorSelector.getModelObject());
|
||||
setResponsePage(ProjectIdeaPage.class);
|
||||
setResponsePage(MyProjectIdeasPage.class);
|
||||
getSession().info("Project idea successfully submitted");
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,36 @@
|
||||
package se.su.dsv.scipro.project.panels;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.wicket.Page;
|
||||
|
||||
import se.su.dsv.scipro.components.AbstractMenuPanel;
|
||||
import se.su.dsv.scipro.project.pages.AbstractProjectIdeaPage;
|
||||
import se.su.dsv.scipro.project.pages.MyProjectIdeasPage;
|
||||
import se.su.dsv.scipro.project.pages.ProjectIdeaStartPage;
|
||||
import se.su.dsv.scipro.project.pages.ProjectIdeaSubmissionPage;
|
||||
|
||||
public class ProjectIdeaTabMenuPanel extends AbstractMenuPanel{
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
public ProjectIdeaTabMenuPanel(String id, Class<? extends Page> containerClass) {
|
||||
super(id, AbstractProjectIdeaPage.class, containerClass);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected List<MenuItem> getItemList() {
|
||||
List<MenuItem> items = new ArrayList<MenuItem>();
|
||||
items.add(new MenuItem("Supervisor provided project ideas", ProjectIdeaStartPage.class));
|
||||
items.add(new MenuItem("Submit own project idea", ProjectIdeaSubmissionPage.class));
|
||||
items.add(new MenuItem("My project idea history", MyProjectIdeasPage.class));
|
||||
return items;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected MenuType getMenuType() {
|
||||
return MenuType.TAB_MULTIPLE_ROWS;
|
||||
}
|
||||
|
||||
}
|
@ -9,7 +9,7 @@ import se.su.dsv.scipro.components.AbstractMenuPanel;
|
||||
import se.su.dsv.scipro.components.menuhighlighting.MenuHighlightAuthorMyProjects;
|
||||
import se.su.dsv.scipro.components.menuhighlighting.MenuHighlightProjectIdeas;
|
||||
import se.su.dsv.scipro.project.pages.FinalSeminarProjectListPage;
|
||||
import se.su.dsv.scipro.project.pages.ProjectIdeaPage;
|
||||
import se.su.dsv.scipro.project.pages.ProjectIdeaStartPage;
|
||||
import se.su.dsv.scipro.project.pages.ProjectPage;
|
||||
import se.su.dsv.scipro.project.pages.ProjectPartnerPage;
|
||||
import se.su.dsv.scipro.project.pages.ProjectStartPage;
|
||||
@ -32,7 +32,7 @@ public class ProjectTabMenuPanel extends AbstractMenuPanel {
|
||||
List<MenuItem> itemList = new ArrayList<MenuItem>();
|
||||
|
||||
itemList.add(new MenuItem("My project(s)", ProjectStartPage.class, MenuHighlightAuthorMyProjects.class));
|
||||
itemList.add(new MenuItem("My project idea(s)", ProjectIdeaPage.class, MenuHighlightProjectIdeas.class));
|
||||
itemList.add(new MenuItem("Project ideas", ProjectIdeaStartPage.class, MenuHighlightProjectIdeas.class));
|
||||
itemList.add(new MenuItem("Project Partner", ProjectPartnerPage.class));
|
||||
itemList.add(new MenuItem("All Final Seminars", FinalSeminarProjectListPage.class));
|
||||
|
||||
|
@ -20,7 +20,7 @@ import se.su.dsv.scipro.data.enums.ProjectStatus;
|
||||
import se.su.dsv.scipro.data.enums.StateOfMind;
|
||||
import se.su.dsv.scipro.icons.ImageIcon;
|
||||
import se.su.dsv.scipro.project.pages.ProjectDetailsPage;
|
||||
import se.su.dsv.scipro.project.pages.ProjectIdeaPage;
|
||||
import se.su.dsv.scipro.project.pages.MyProjectIdeasPage;
|
||||
import se.su.dsv.scipro.springdata.services.ProjectService;
|
||||
|
||||
public class ProjectsOverviewPanel extends Panel {
|
||||
@ -53,7 +53,7 @@ public class ProjectsOverviewPanel extends Panel {
|
||||
setResponsePage(ProjectDetailsPage.class, pp);
|
||||
}
|
||||
if(projects.size()==0){
|
||||
setResponsePage(ProjectIdeaPage.class);
|
||||
setResponsePage(MyProjectIdeasPage.class);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user