Index: eprms-tap/src/main/java/info/ajanovski/eprms/tap/pages/admin/ManageProjects.java
===================================================================
--- eprms-tap/src/main/java/info/ajanovski/eprms/tap/pages/admin/ManageProjects.java	(revision c0c87e6216adeab75d972b188bffd7f74cdded8f)
+++ eprms-tap/src/main/java/info/ajanovski/eprms/tap/pages/admin/ManageProjects.java	(revision a38443d7164777b9bb22fce886d67ad8de1cf8dc)
@@ -24,4 +24,5 @@
 import java.security.SecureRandom;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -49,4 +50,5 @@
 import info.ajanovski.eprms.model.entities.Team;
 import info.ajanovski.eprms.model.entities.TeamMember;
+import info.ajanovski.eprms.model.util.ActivityComparatorViaType;
 import info.ajanovski.eprms.model.util.ModelConstants;
 import info.ajanovski.eprms.mq.MessagingService;
@@ -106,4 +108,8 @@
 	private Project selectedProject;
 
+	@Persist
+	@Property
+	private String selectedStatus;
+
 	@Property
 	private Responsibility responsibility;
@@ -133,4 +139,8 @@
 	@Property
 	private Responsibility newResponsibility;
+
+	@Persist
+	@Property
+	private Responsibility linkResponsibility;
 
 	@Persist
@@ -162,8 +172,16 @@
 			return new ArrayList<Project>();
 		} else {
-			return list.stream()
-					.filter(p -> (p.getCourseProjects().stream()
-							.anyMatch(cp -> cp.getCourse().getCourseId() == selectedCourse.getCourseId())))
-					.collect(Collectors.toList());
+			if (selectedStatus == null) {
+				return list.stream()
+						.filter(p -> (p.getCourseProjects().stream()
+								.anyMatch(cp -> cp.getCourse().getCourseId() == selectedCourse.getCourseId())))
+						.collect(Collectors.toList());
+			} else {
+				return list.stream()
+						.filter(p -> (p.getCourseProjects().stream()
+								.anyMatch(cp -> cp.getCourse().getCourseId() == selectedCourse.getCourseId()
+										&& selectedStatus.equals(cp.getProject().getStatus()))))
+						.collect(Collectors.toList());
+			}
 		}
 	}
@@ -200,4 +218,9 @@
 		newResponsibility.setProject(p);
 		newResponsibility.setTeam(newTeam);
+	}
+
+	public void onActionFromLinkTeam(Project p) {
+		linkResponsibility = new Responsibility();
+		linkResponsibility.setProject(p);
 	}
 
@@ -237,6 +260,14 @@
 	}
 
+	public List<Team> getAllTeams() {
+		return (List<Team>) genericService.getAll(Team.class);
+	}
+
 	public SelectModel getCoursesModel() {
 		return selectModelFactory.create(getAllCourses(), "title");
+	}
+
+	public SelectModel getAllTeamsModel() {
+		return selectModelFactory.create(getAllTeams(), "name");
 	}
 
@@ -286,4 +317,12 @@
 		newTeam = null;
 		newResponsibility = null;
+	}
+
+	@CommitAfter
+	public void onSuccessFromLinkTeamForm() {
+		if (linkResponsibility != null) {
+			genericService.saveOrUpdate(linkResponsibility);
+		}
+		linkResponsibility = null;
 	}
 
@@ -345,6 +384,8 @@
 	@CommitAfter
 	public void onActionFromPasteActivities(Project pasteActivitiesToProject) {
-		for (Activity original : genericService.getByPK(Project.class, copyActivitiesFromProject.getProjectId())
-				.getActivities()) {
+		List<Activity> activities = genericService.getByPK(Project.class, copyActivitiesFromProject.getProjectId())
+				.getActivities();
+		Collections.sort(activities, new ActivityComparatorViaType());
+		for (Activity original : activities) {
 			Activity copy = new Activity();
 			copy.setDescription(original.getDescription());
@@ -369,8 +410,15 @@
 
 	@CommitAfter
-	void onActionFromDeleteResponsibility(Responsibility r) {
+	void onActionFromDeleteResponsibilityAndTeam(Responsibility r) {
 		Team t = r.getTeam();
 		genericService.delete(r);
-		genericService.delete(t);
+		if (t.getResponsibilities().size() == 0) {
+			genericService.delete(t);
+		}
+	}
+
+	@CommitAfter
+	void onActionFromDeleteResponsibility(Responsibility r) {
+		genericService.delete(r);
 	}
 
@@ -381,4 +429,8 @@
 	void onCancelNewTeam() {
 		newTeam = null;
+	}
+
+	void onCancelLinkTeam() {
+		linkResponsibility = null;
 	}
 
Index: eprms-tap/src/main/resources/info/ajanovski/eprms/tap/pages/admin/ManageProjects.tml
===================================================================
--- eprms-tap/src/main/resources/info/ajanovski/eprms/tap/pages/admin/ManageProjects.tml	(revision c0c87e6216adeab75d972b188bffd7f74cdded8f)
+++ eprms-tap/src/main/resources/info/ajanovski/eprms/tap/pages/admin/ManageProjects.tml	(revision a38443d7164777b9bb22fce886d67ad8de1cf8dc)
@@ -7,10 +7,10 @@
 <div class="row">
 
-	<div class="col-6">
+	<div class="col-12">
 		<div class="card mb-3">
 			<div class="card-body">
 				<form t:type="form" id="selectCourse" class="form-inline">
 					<div class="form-group">
-						<label t:type="label" t:for="selectCourse"></label><select
+						<label t:type="label" t:for="selectCourse" class="mr-2"></label><select
 							t:id="selectCourse" t:type="select" t:model="coursesModel"
 							t:value="selectedCourse" t:zone="courseZone"
@@ -29,10 +29,27 @@
 	<div class="row">
 
-		<div class="col-6" t:type="unless" t:test="newProject">
+		<div class="col-12" t:type="unless" t:test="newProject">
 			<div class="card">
 				<div class="card-body">
+					<div class="float-right">
+						<a t:type="actionlink" t:id="NewProject" class="btn btn-primary"><img
+							t:type="SVGIcon" t:path="plus-square" /> ${message:new-label}
+							${message:Project-label}</a>
+					</div>
+					<div class="float-right mr-4">
+						<form t:type="form" id="selectStatus" class="form-inline">
+							<div class="form-group">
+								<label t:type="label" t:for="selectStatus" class="mr-2"></label><select
+									t:id="selectStatus" t:type="select"
+									t:model="ModelProjectStatuses" t:value="selectedStatus"
+									t:zone="projectZone" onchange="this.form.submit(); "></select>
+							</div>
+							<t:submit t:value="OK" />
+						</form>
+					</div>
+
 					<form t:type="form" id="selectProject" class="form-inline">
 						<div class="form-group">
-							<label t:type="label" t:for="selectProject"></label><select
+							<label t:type="label" t:for="selectProject" class="mr-2"></label><select
 								t:id="selectProject" t:type="select" t:model="projectModel"
 								t:value="selectedProject" t:zone="projectZone"
@@ -41,12 +58,12 @@
 						<t:submit t:value="OK" />
 					</form>
-				</div>
-			</div>
-		</div>
-
-		<div class="col-6">
-
+
+				</div>
+			</div>
+		</div>
+
+		<div class="col-12">
 			<div t:type="if" t:test="copyActivitiesFromProject"
-				class="p-3 mb-2 bg-info text-white float-right">
+				class="p-3 mt-3 mb-0 bg-info text-white text-right">
 				${message:copy-label} ${message:activities-label}:
 				${copyActivitiesFromProject.title} <a class="btn btn-info"
@@ -55,4 +72,8 @@
 			</div>
 
+		</div>
+
+		<div class="col-6">
+
 			<div class="card mb-3" t:type="if" t:test="newProject">
 				<div class="card-header">
@@ -63,5 +84,5 @@
 						<form t:id="NewProjectForm" t:type="form" class="form-horizontal">
 							<t:beaneditor t:object="newProject" t:exclude="projectId"
-								t:add="courses" t:submitLabel="OK">
+								t:add="courses" t:reorder="title,code" t:submitLabel="OK">
 								<p:description>
 									<div class="form-group">
@@ -80,5 +101,5 @@
 								</p:status>
 								<p:courses>
-									<div class="form-group col-12">
+									<div class="form-group">
 										<label t:type="label" t:for="inCourses"></label>
 										<div t:type="palette" t:id="inCourses"
@@ -111,4 +132,18 @@
 			</div>
 
+			<div class="card mb-3" t:type="if" t:test="linkResponsibility">
+				<div class="card-body">
+					<t:modalbox>
+						<h3>${message:Team-label}</h3>
+						<form t:id="LinkTeamForm" t:type="form">
+							<select t:type="select" t:model="allTeamsModel"
+								t:value="linkResponsibility.team" />
+							<t:submit t:value="OK" />
+							<a t:type="eventlink" t:id="cancelLinkTeam">${message:cancel-label}</a>
+						</form>
+					</t:modalbox>
+				</div>
+			</div>
+
 			<div class="card mb-3" t:type="if" t:test="newTm">
 				<div class="card-body">
@@ -145,9 +180,4 @@
 			</div>
 
-			<div>
-				<a t:type="actionlink" t:id="NewProject" class="btn btn-primary"><img
-					t:type="SVGIcon" t:path="plus-square" /> ${message:new-label}
-					${message:Project-label}</a>
-			</div>
 		</div>
 	</div>
@@ -155,5 +185,5 @@
 	<div t:type="zone" t:id="projectZone">
 
-		<div class="card mt-3" t:type="loop" t:source="projects"
+		<div class="card mt-3 bg-light" t:type="loop" t:source="projects"
 			t:value="project">
 
@@ -179,7 +209,12 @@
 							t:path="clipboard" /> ${message:Paste-label}
 							${message:Activities-label}
-					</a></span> <a t:type="iconactionLink" t:context="project"
-						t:id="deleteProject" class="btn btn-sm btn-danger" t:path="minus">
-						${message:remove-label} </a>
+					</a></span><a t:type="iconactionLink" t:context="project" t:id="deleteProject"
+						class="btn btn-sm btn-danger" t:path="minus">
+						${message:remove-label} </a> <br /> <br /> <a t:type="actionlink"
+						t:context="project" t:id="NewTeam" class="btn btn-sm btn-primary"><img
+						t:type="SVGIcon" t:path="plus-square" /> ${message:Create-label}
+						${message:Team-label}</a> <a t:type="actionlink" t:context="project"
+						t:id="LinkTeam" class="btn btn-sm btn-secondary"><img
+						t:type="SVGIcon" t:path="link" /> ${message:Team-label}</a>
 				</p>
 
@@ -202,30 +237,24 @@
 			<div class="card-body">
 				<div class="row">
-					<div class="col-4">
-						<p class="" t:type="loop" t:source="project.repositories"
-							t:value="repository">
-							<b>${message:repository-label}</b><br />${repository.url}
-						</p>
-						<p>
-							<a t:type="actionlink" t:context="project" t:id="NewRepository"
-								class="btn btn-sm btn-secondary"> <img t:type="SVGIcon"
-								t:path="plus-square" /> ${message:repository-label}
-							</a>
-						</p>
-						<p class="" t:type="loop" t:source="project.databases"
-							t:value="database">
-							<b>${message:database-label}</b><br />${database.name}
-						</p>
-						<p>
-							<a t:type="actionlink" t:context="project" t:id="NewDatabase"
-								class="btn btn-sm btn-secondary"> <img t:type="SVGIcon"
-								t:path="plus-square" /> ${message:database-label}
-							</a>
-						</p>
-					</div>
-
-					<div class="col-8">
+					<div class="col-9">
 						<div class="card mb-3 p-3" t:type="loop"
 							t:source="project.responsibilities" t:value="responsibility">
+							<div class="float-right mb-3">
+								<a t:type="actionlink" t:context="responsibility.team"
+									t:id="editTeam" role="button" class="btn btn-sm btn-primary "><img
+									t:type="SVGIcon" t:path="edit" /> ${message:edit-label}
+									${message:team-label}</a> <a t:type="actionlink"
+									t:context="responsibility" t:id="deleteResponsibility"
+									role="button" class="btn btn-warning btn-sm "><img
+									t:type="SVGIcon" t:path="link" t:mixins="confirm" />
+									${message:remove-label} ${message:responsibility-label}</a>
+								<t:unless t:test="responsibility.team.teamMembers">
+									<a t:type="actionlink" t:context="responsibility"
+										t:id="deleteResponsibilityAndTeam" role="button"
+										class="btn btn-danger btn-sm" t:mixins="confirm"><img
+										t:type="SVGIcon" t:path="user-minus" />
+										${message:remove-label} ${message:team-label}</a>
+								</t:unless>
+							</div>
 							<t:TeamMembersGrid t:team="responsibility.team" t:actions="true"
 								t:dates="true" />
@@ -235,23 +264,39 @@
 									class="btn btn-sm btn-secondary "><img t:type="SVGIcon"
 									t:path="user-plus" /> ${message:add-label}
-									${message:TeamMember-label}</a> <a t:type="actionlink"
-									t:context="responsibility.team" t:id="editTeam" role="button"
-									class="btn btn-sm btn-primary "><img t:type="SVGIcon"
-									t:path="edit" /> ${message:edit-label} ${message:team-label}</a>
-								<t:unless t:test="responsibility.team.teamMembers">
-									<a t:type="actionlink" t:context="responsibility"
-										t:id="deleteResponsibility" role="button"
-										class="btn btn-danger btn-sm "><img t:type="SVGIcon"
-										t:path="user-minus" /> ${message:remove-label}
-										${message:team-label}</a>
-								</t:unless>
-							</p>
-						</div>
-						<p>
-							<a t:type="actionlink" t:context="project" t:id="NewTeam"
-								class="btn btn-secondary"><img t:type="SVGIcon"
-								t:path="plus-square" /> ${message:Team-label}</a>
-						</p>
-						<div class="card mt-3 p-3" t:type="if" t:test="project.activities">
+									${message:TeamMember-label}</a>
+							</p>
+						</div>
+					</div>
+
+					<div class="col-3">
+						<div class="card card-body">
+							<p class="" t:type="loop" t:source="project.databases"
+								t:value="database">
+								<b>${message:database-label}</b><br />${database.name}
+							</p>
+							<p>
+								<a t:type="actionlink" t:context="project" t:id="NewDatabase"
+									class="btn btn-sm btn-secondary"> <img t:type="SVGIcon"
+									t:path="plus-square" /> ${message:database-label}
+								</a>
+							</p>
+						</div>
+						<div class="card card-body mt-3">
+							<p class="" t:type="loop" t:source="project.repositories"
+								t:value="repository">
+								<b>${message:repository-label}</b><br />${repository.url}
+							</p>
+							<p>
+								<a t:type="actionlink" t:context="project" t:id="NewRepository"
+									class="btn btn-sm btn-secondary"> <img t:type="SVGIcon"
+									t:path="plus-square" /> ${message:repository-label}
+								</a>
+							</p>
+						</div>
+
+					</div>
+
+					<div class="col-12">
+						<div class="card p-3" t:type="if" t:test="project.activities">
 							<h3 class="mt-3">${message:Activities-label}</h3>
 							<table class="table table-sm" t:type="grid"
@@ -259,6 +304,6 @@
 								t:exclude="description,dueDate,startDate"></table>
 						</div>
-					</div>
-
+						<div class="row"></div>
+					</div>
 				</div>
 			</div>
