Details
diff --git a/src/java/azkaban/project/FileProjectManager.java b/src/java/azkaban/project/FileProjectManager.java
index 9611095..01ee65e 100644
--- a/src/java/azkaban/project/FileProjectManager.java
+++ b/src/java/azkaban/project/FileProjectManager.java
@@ -195,6 +195,12 @@ public class FileProjectManager implements ProjectManager {
}
@Override
+ public List<Project> getProjects() {
+ return new ArrayList<Project>(projects.values());
+ }
+
+
+ @Override
public Project getProject(String name) {
return projects.get(name);
}
@@ -511,5 +517,4 @@ public class FileProjectManager implements ProjectManager {
}
}
-
}
\ No newline at end of file
diff --git a/src/java/azkaban/project/ProjectManager.java b/src/java/azkaban/project/ProjectManager.java
index e7dc5f5..93051e1 100644
--- a/src/java/azkaban/project/ProjectManager.java
+++ b/src/java/azkaban/project/ProjectManager.java
@@ -12,6 +12,8 @@ public interface ProjectManager {
public List<String> getProjectNames();
public List<Project> getUserProjects(User user);
+
+ public List<Project> getProjects();
public void commitProject(String name) throws ProjectManagerException;
diff --git a/src/java/azkaban/webapp/servlet/IndexServlet.java b/src/java/azkaban/webapp/servlet/IndexServlet.java
index 7243b9e..596aab2 100644
--- a/src/java/azkaban/webapp/servlet/IndexServlet.java
+++ b/src/java/azkaban/webapp/servlet/IndexServlet.java
@@ -44,9 +44,17 @@ public class IndexServlet extends LoginAbstractAzkabanServlet {
User user = session.getUser();
ProjectManager manager = this.getApplication().getProjectManager();
- List<Project> projects = manager.getUserProjects(user);
Page page = newPage(req, resp, session, "azkaban/webapp/servlet/velocity/index.vm");
- page.add("projects", projects);
+ if (hasParam(req, "all")) {
+ List<Project> projects = manager.getProjects();
+ page.add("allProjects", "");
+ page.add("projects", projects);
+ }
+ else {
+ List<Project> projects = manager.getUserProjects(user);
+ page.add("projects", projects);
+ }
+
page.render();
}
diff --git a/src/java/azkaban/webapp/servlet/velocity/index.vm b/src/java/azkaban/webapp/servlet/velocity/index.vm
index f2e82ef..0c1555d 100644
--- a/src/java/azkaban/webapp/servlet/velocity/index.vm
+++ b/src/java/azkaban/webapp/servlet/velocity/index.vm
@@ -25,8 +25,17 @@
<div class="content">
<div id="all-jobs-content">
<div class="section-hd">
+#if ($allProjects)
+ <h2>All Projects</h2>
+ <div class="section-sub-hd">
+ <h4><a href="${context}/">My Projects</a></h4>
+ </div>
+#else
<h2>My Projects</h2>
-
+ <div class="section-sub-hd">
+ <h4><a href="${context}/?all">All Projects</a></h4>
+ </div>
+#end
<form method="get">
<input type="hidden" name="action" value="search">
<input type="submit" value="Search" class="search-btn">
diff --git a/src/java/azkaban/webapp/servlet/velocity/nav.vm b/src/java/azkaban/webapp/servlet/velocity/nav.vm
index 63bd069..7999a7f 100644
--- a/src/java/azkaban/webapp/servlet/velocity/nav.vm
+++ b/src/java/azkaban/webapp/servlet/velocity/nav.vm
@@ -7,7 +7,7 @@
</script>
<ul id="nav" class="nav">
- <li id="all-jobs-tab" #if($current_page == 'all')class="selected"#end onClick="navMenuClick('$!context/#all')"><a href="$!context/#all">Projects</a></li>
+ <li id="all-jobs-tab" #if($current_page == 'all')class="selected"#end onClick="navMenuClick('$!context/')"><a href="$!context/">Projects</a></li>
<li id="scheduled-jobs-tab" #if($current_page == 'schedule')class="scheduled"#end onClick="navMenuClick('$!context/schedule')"><a href="$!context/schedule">Scheduled</a></li>
<li id="executing-jobs-tab" #if($current_page == 'executing')class="selected"#end onClick="navMenuClick('$!context/executions')"><a href="$!context/executions">Executing</a></li>
<li id="history-jobs-tab" #if($current_page == 'history')class="selected"#end onClick="navMenuClick('$!context/history')"><a href="$!context/history">History</a></li>