Merge branch 'gui_improvements_match' into develop

* gui_improvements_match:
  small menu fix
  made dialog bigger on manage supervisor popup as well, to avoid horizontal scroll
  code cleanup
  more dialog size changes and other gui fixes to match administration
  changes to dialog size in top waiting and rejected project ideas edit button
  gui changes to edit dialog when managing project ideas from admin page. also some minor code cleanup
  gui improvements on manage supervisor page
  info box added to manage keyword page
  gui changes to make tables look better and also some improvements on checkbox area on manage project ideas page
  minor gui changes to manage supervisor panel
  added info box to student exemption panel
  added info box to automatic match panel
This commit is contained in:
Emil Siverhall 2012-01-22 20:48:02 +01:00
commit 0ff5072841
18 changed files with 117 additions and 64 deletions

@ -43,7 +43,7 @@ public abstract class AbstractAdminMatchPage extends AbstractAdminPage {
items.add(new MenuItem("Manage keywords", AdminKeywordPage.class));
items.add(new MenuItem("Student exemptions", AdminExemptionPage.class));
items.add(new MenuItem("Supervisor settings", AdminManageMatchSupervisorPage.class));
items.add(new MenuItem("Application Periods", AdminManageMatchPeriodsPage.class));
items.add(new MenuItem("Application periods", AdminManageMatchPeriodsPage.class));
return items;
}

@ -6,14 +6,18 @@
<!-- Edit/add dialog -->
<div wicket:id="dialog">
<div wicket:id="dialogContent"></div>
</div>
<div class="info-box rounded-box">
Use this page to grant and remove exemptions to Bachelor level students to write their thesis alone.
Don't forget to write a comment describing the reason why the exemption was granted.
</div>
<div>
<label for="search">Search:</label> <input type="text" class="text"
id="search" wicket:id="searchField" />
<label for="search">Search on student or administrators name: </label>
<input type="text" class="text" id="search" wicket:id="searchField" />
</div>
<div class="margin">
<a href=# wicket:id="createLink"><img
wicket:id="addIcon" alt="" /> Grant exemption</a>
wicket:id="addIcon" alt="" /> Grant new exemption</a>
<div wicket:id="container">
<table class="rounded-corner">

@ -67,7 +67,7 @@ public class AdminExemptionPanel extends Panel {
dialog.add(new EmptyPanel("dialogContent"));
dialog.setWidth(500);
dialog.setHeight(360);
dialog.setHeight(380);
add(dialog);
AjaxLink<Void> createLink = new AjaxLink<Void>("createLink"){

@ -4,6 +4,10 @@
<body>
<wicket:extend>
<h5 class="peer-title">Manage unit keywords</h5>
<div class="info-box rounded-box">
Unit keywords are being imported from remote system. If you rename a unit and the old name is still
available on the remote system, both units will exist in Scipro after the next import.
</div>
<div wicket:id="manageUnitKeyword"></div>
<h5 class="peer-title">Manage research area keywords</h5>
<div wicket:id="manageAreaKeyword"></div>

@ -4,9 +4,14 @@
<body>
<wicket:panel>
<div class="margin">
<div class="info-box rounded-box">
This page is used for running the project ideas that are unmatched through the algorithm to produce matches. If the matches are good, they can be suggested to supervisors.
If the matches are not satisfactory, change the algorithm settings and run the algorithm again. You can run it as many times as you like before suggesting the matches to supervisors.
</div>
<form wicket:id="matchingForm">
<form wicket:id="weightsForm">
<table>
<tr><td colspan="3">Algorithm settings:</td></tr>
<tr>
<td>Keyword points: <select wicket:id="keywordPoints"></select></td>
<td>Research area points: <select wicket:id="researchAreaPoints"></select></td>

@ -9,7 +9,7 @@
<a href="#" wicket:id="watsonLink">Project idea details</a>
|
<a href="#" wicket:id="actionLink">Actions</a>
<div wicket:id="mainPanel"></div>
<div class="prepend-top" wicket:id="mainPanel"></div>
<!-- </div> -->
</wicket:panel>
</body>

@ -53,8 +53,8 @@ public class ManageKeywordPanel extends Panel {
dialog = new Dialog("editDialog");
dialog.setModal(true);
dialog.setAutoOpen(false);
dialog.setWidth(500);
dialog.setHeight(500);
dialog.setWidth(400);
dialog.setHeight(225);
dialog.add(new EmptyPanel("dialogContent"));
dialog.setOutputMarkupId(true);

@ -8,15 +8,15 @@
If you want to match and suggest this idea to a supervisor or reviewer manually, you can do so.
</div>
<div wicket:id="manualMatchPanel"></div>
<div>
<div class="prepend-top">
If this project idea is poorly written, it should be sent back to the authors for rewriting.
</div>
<button wicket:id="sendBackButton">Send back to author(s)</button>
<div>
<div class="prepend-top">
If this project idea has been suggested to a supervisor that has not answered for very long, it can be rematched and suggested to some other supervisor.
</div>
<button wicket:id="rematchButton">Rematch project idea</button>
<div>
<div class="prepend-top">
If this project idea will not be carried out for whatever reason, it can be canceled.
</div>
<button wicket:id="cancelButton">Cancel the project idea</button>

@ -14,27 +14,30 @@
<input style="width:300px;" wicket:id="supervisorField" type="text" /><br/>
<label for="authorField">Author:</label><br/>
<input style="width:300px;" wicket:id="authorField" type="text" />
<table>
<tr>
<td wicket:id="projectClassPanel"></td>
<td colspan="2" wicket:id="matchStatusPanel"></td>
<td></td>
</tr>
</table>
<input wicket:id="filterButton" type="submit">
<div class="span-16 append-bottom last">
<div class="span-6" wicket:id="projectClassPanel"></div>
<div class="span-10 last append-bottom" wicket:id="matchStatusPanel"></div>
<input wicket:id="filterButton" type="submit" />
</div>
</form>
<div wicket:id="allContainer">
<!-- <p><b>Search among all project ideas</b></p> -->
<div class="span-15 last">
<table class="rounded-corner">
<thead>
<tr>
<th>Level</th>
<th class="rounded-left-top">Level</th>
<th>Title</th>
<th>Author(s)</th>
<th>Status</th>
<th>Edit</th>
<th class="rounded-right-top">Edit</th>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="5" class="rounded-foot">&nbsp;</td>
</tr>
</tfoot>
<tbody>
<tr wicket:id="allDataView">
<td wicket:id="level"></td>
<td wicket:id="title"></td>
@ -45,9 +48,12 @@
<tr>
<td colspan="5" wicket:id="emptyLabel"></td>
</tr>
</tbody>
</table>
</div>
<div wicket:id="nav"></div>
</div>
</wicket:panel>
</body>

@ -52,7 +52,7 @@ public class AdminManageProjectIdeaPanel extends Panel {
dialog.setModal(true);
dialog.setAutoOpen(false);
dialog.setWidth(550);
dialog.setHeight(700);
dialog.setHeight(500);
dialog.add(new EmptyPanel("dialogContent"));
add(dialog);
@ -88,7 +88,6 @@ public class AdminManageProjectIdeaPanel extends Panel {
@Override
public void onClick(AjaxRequestTarget target) {
if (target != null) {
System.out.println("opening dialog and setting title");
dialog.replace(new AdminEditProjectIdeaPanel("dialogContent", new Model<ProjectIdea>(idea)) {
private static final long serialVersionUID = 1L;});
target.addComponent(dialog);

@ -4,31 +4,44 @@
<body>
<wicket:panel>
<form wicket:id="form">
<p>Supervisor</p>
<input style="width:300px;" wicket:id="supervisorField" type="text" />
<p>Keyword</p>
<h5 class="peer-title append-bottom">Manage supervisors</h5>
<label for="supervisorField">Search using supervisor name:</label><br />
<input style="width:300px;" wicket:id="supervisorField" type="text" /><br />
<label for="keywordField">Search on keywords used by supervisor:</label><br />
<input style="width:300px;" wicket:id="keywordField" type="text" />
<table>
<tr>
<td wicket:id="unitPanel"></td>
<td colspan="2" wicket:id="researchAreaPanel"></td>
<td></td>
</tr>
</table>
<input wicket:id="filterButton" type="submit">
<div class="span-16 prepend-top append-bottom last">
<div class="span-6">
<label for="unitPanel">Filter by unit:</label><br />
<span wicket:id="unitPanel"></span>
</div>
<div class="span-10 last append-bottom">
<label for="researchAreaPanel">Filter by research area:</label>
<span wicket:id="researchAreaPanel"></span>
</div>
</div>
<div><input wicket:id="filterButton" type="submit" />
</div>
</form>
<div wicket:id="container">
<div class="span-15 last">
<table class="rounded-corner">
<thead>
<tr>
<th>Supervisor</th>
<th class="rounded-left-top">Supervisor</th>
<th>Unit</th>
<th>Target bachelor</th>
<th>Target master</th>
<th>Current bachelor</th>
<th>Current master</th>
<th class="rounded-right-top">Current master</th>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="6" class="rounded-foot">&nbsp;</td>
</tr>
</tfoot>
<tbody>
<tr wicket:id="dataView">
<td wicket:id="supervisor"></td>
<td wicket:id="unit"></td>
@ -38,13 +51,14 @@
<td><select wicket:id="targetMaster"></select></td>
<td wicket:id="currentBachelor"></td>
<td wicket:id="currentMaster"></td>
<td></td>
<td></td>
</tr>
<tr>
<td colspan ="6" wicket:id="emptyLabel"></td>
</tr>
</tbody>
</table>
</div>
<div wicket:id="nav"></div>
</div>

@ -11,14 +11,20 @@
<table class="rounded-corner">
<thead>
<tr>
<th>Level</th>
<th class="rounded-left-top">Level</th>
<th>Title</th>
<th>Author(s)</th>
<th>Rejected by</th>
<th>Comment</th>
<th>Edit</th>
<th class="rounded-right-top">Edit</th>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="6" class="rounded-foot">&nbsp;</td>
</tr>
</tfoot>
<tbody>
<tr wicket:id="rejectedDataView">
<td wicket:id="level"></td>
<td wicket:id="title"></td>
@ -30,6 +36,7 @@
<tr>
<td wicket:id="emptyLabel" colspan="6"></td>
</tr>
</tbody>
</table>
<div wicket:id="nav"></div>
</div>

@ -46,7 +46,7 @@ public class AdminRejectedProjectIdeaPanel extends Panel {
dialog.setModal(true);
dialog.setAutoOpen(false);
dialog.setWidth(550);
dialog.setHeight(700);
dialog.setHeight(500);
dialog.add(new EmptyPanel("dialogContent"));
add(dialog);
container = new WebMarkupContainer("container");
@ -86,7 +86,6 @@ public class AdminRejectedProjectIdeaPanel extends Panel {
@Override
public void onClick(AjaxRequestTarget target) {
if (target != null) {
System.out.println("opening dialog and setting title");
dialog.replace(new AdminEditProjectIdeaPanel("dialogContent", new Model<ProjectIdea>(idea)) {
private static final long serialVersionUID = 1L;});
target.addComponent(dialog);

@ -46,7 +46,7 @@ public class AdminSupervisorDetailsPanel extends Panel {
dialog = new Dialog("dialog");
dialog.setTitle("Details for " + supervisor.getFullName());
dialog.setWidth(800);
dialog.setWidth(885);
add(dialog);
AjaxLink<Void> dialogLink = new AjaxLink<Void>("dialogLink") {

@ -12,12 +12,18 @@
<table class="rounded-corner">
<thead>
<tr>
<th>Level</th>
<th class="rounded-left-top">Level</th>
<th>Title</th>
<th>Author(s)</th>
<th>Edit</th>
<th class="rounded-right-top">Edit</th>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="4" class="rounded-foot">&nbsp;</td>
</tr>
</tfoot>
<tbody>
<tr wicket:id="dataView">
<td wicket:id="level"></td>
<td wicket:id="title"></td>
@ -27,6 +33,7 @@
<tr>
<td wicket:id="emptyLabel" colspan="4"></td>
</tr>
</tbody>
</table>
<div wicket:id="nav"></div>
</div>

@ -43,7 +43,7 @@ public class AdminWaitingProjectIdeaPanel extends Panel {
dialog.setModal(true);
dialog.setAutoOpen(false);
dialog.setWidth(550);
dialog.setHeight(700);
dialog.setHeight(500);
dialog.add(new EmptyPanel("dialogContent"));
add(dialog);
container = new WebMarkupContainer("container");
@ -78,7 +78,6 @@ public class AdminWaitingProjectIdeaPanel extends Panel {
@Override
public void onClick(AjaxRequestTarget target) {
if (target != null) {
System.out.println("opening dialog and setting title");
dialog.replace(new AdminEditProjectIdeaPanel("dialogContent", new Model<ProjectIdea>(idea)) {
private static final long serialVersionUID = 1L;});
target.addComponent(dialog);

@ -3,14 +3,15 @@
<body>
<wicket:panel>
<form wicket:id="applicationPeriodForm">
<table>
<div class="prepend-top append-bottom">
<label for="checkGroup">Levels for application period:</label>
<wicket:container wicket:id="checkGroup">
<tr wicket:id="projectClasses">
<td><input type="checkbox" wicket:id="projectClassCheckbox"/></td>
<td><span wicket:id="projectClassName">...</span></td>
</tr>
<div wicket:id="projectClasses">
<input type="checkbox" wicket:id="projectClassCheckbox"/>
<span wicket:id="projectClassName">...</span>
</div>
</wicket:container>
</table>
</div>
<table>
<tr>
<td>Start date: <div wicket:id="startDate"></div></td>

@ -6,18 +6,26 @@
</head>
<body>
<wicket:panel>
Author(s): <span wicket:id="authors"></span>
<b>Author(s):</b> <span wicket:id="authors"></span>
<p>
Keywords: <span wicket:id="keywords"></span>
<b>Keywords:</b> <span wicket:id="keywords"></span>
<div>
<h5>What?</h5>
<div wicket:id="what"></div>
<h5>Why?</h5>
<div wicket:id="why"></div>
<h5>Theoretically how?</h5>
<div wicket:id="theoryHow"></div>
<h5>Practically how?</h5>
<div wicket:id="practicalHow"></div>
<div class="rounded-box">
<span class="box-title">What?</span>
<span wicket:id="what"></span>
</div>
<div class="rounded-box">
<span class="box-title">Why?</span>
<span wicket:id="why"></span>
</div>
<div class="rounded-box">
<span class="box-title">Theoretically how?</span>
<span wicket:id="theoryHow"></span>
</div>
<div class="rounded-box">
<span class="box-title">Practically how?</span>
<span wicket:id="practicalHow"></span>
</div>
</div>
</wicket:panel>
</body>