diff --git a/erpnext/templates/pages/projects.html b/erpnext/templates/pages/projects.html
index b348674..e32f562 100644
--- a/erpnext/templates/pages/projects.html
+++ b/erpnext/templates/pages/projects.html
@@ -43,6 +43,7 @@
 		{% if doc.timelines|length > 9 %}
 		<p><a class='more-timelines small underline'>{{ _("More") }}</a><p>
 		{% endif %}
+		
 {% endif %}
 
 <div class='padding'></div>
@@ -51,47 +52,48 @@
 
 {% if doc.tasks %}
 	<div class='project-tasks-section'>
-		<div class="btn-group btn-toggle">
-			<button class="btn btn-link btn-open-tasks"><span class="indicator orange"></span>Open</button>
-			<button class="btn btn-link btn-closed-tasks"><span class="indicator green"></span>Closed</button>
+		<div>
+			<div class="btn-group btn-toggle">
+				<button class="btn btn-link btn-open-tasks"><span class="indicator orange"></span>Open</button>
+				<button class="btn btn-link btn-closed-tasks"><span class="indicator green"></span>Closed</button>
+			</div>
+			<div class="pull-right">
+				<a class='small underline' href='/tasks?new=1&project={{ doc.project_name }}{{ back_link(doc) }}'>New 							task</a>
+			</div>
 		</div>
 		<div class='project-tasks'>
 		{% include "erpnext/templates/includes/projects/project_tasks.html" %}
 		</div>
-
-		{% if doc.tasks|length > 9 %}
-			<p><a id= 'more-tasks' class='more-tasks small underline'>{{ _("More") }}</a><p>
-		{% endif %}
+		<p><a id= 'more-tasks' style='display: none;' class='more-tasks small underline'>{{ _("More") }}</a><p>
 	</div>
 {% else %}
 	<p class="text-muted">No tasks</p>
 {% endif %}
 
-<p><a href='/tasks?new=1&project={{ doc.project_name }}{{ back_link(doc) }}'>Add a new task</a></p>
 
 <div class='padding'></div>
 <h3>{{ _("Issues") }}</h3>
 
 {% if doc.issues %}
 	<div class='project-issues-section'>
-		<div class="btn-group btn-toggle">
-			<button class="btn btn-link btn-open-issues"><span class="indicator red"></span>Open</button>
-			<button class="btn btn-link btn-closed-issues"><span class="indicator green"></span>Closed</button>
+		<div>
+			<div class="btn-group btn-toggle">
+				<button class="btn btn-link btn-open-issues"><span class="indicator red"></span>Open</button>
+				<button class="btn btn-link btn-closed-issues"><span class="indicator green"></span>Closed</button>
+			</div>
+			<div class="pull-right">
+				<a class='small underline' href='/issues?new=1&project={{ doc.project_name }}{{ back_link(doc) }}'>New issue</a>
+			</div>
 		</div>
 		<div class='project-issues'>
-		{% include "erpnext/templates/includes/projects/project_issues.html" %}
+			{% include "erpnext/templates/includes/projects/project_issues.html" %}
 		</div>
-
-		{% if doc.issues|length > 9 %}
-			<p><a id='more-issues' class='more-issues small underline'>{{ _("More") }}</a><p>
-		{% endif %}
+		<p><a id='more-issues' style='display: none;' class='more-issues small underline'>{{ _("More") }}</a><p>	
 	</div>
 {% else %}
 	<p class="text-muted">No Issues</p>
 {% endif %}
 
-<p>	<a href='/issues?new=1&project={{ doc.project_name }}{{ back_link(doc) }}'>Add a new issue</a></p>
-
 <div class='padding'></div>
 
 <h3>{{ _("Time Logs") }}</h3>
diff --git a/erpnext/templates/pages/projects.js b/erpnext/templates/pages/projects.js
index 331c2d4..0a296af 100644
--- a/erpnext/templates/pages/projects.js
+++ b/erpnext/templates/pages/projects.js
@@ -59,8 +59,13 @@
 			},
 			dataType: "json",
 			success: function(data) {
+
+				console.log(data.message);
+				if(typeof data.message == 'undefined') {	
+					$('.project-'+ item).html("No "+ item_status +" "+ item);	
+					$(".more-"+ item).toggle(false);
+				}
 				$('.project-'+ item).html(data.message);
-				
 				$('.project-'+ item +'-section .btn-group .bold').removeClass('bold');
 				$('.btn-'+ item_status +'-'+ item).addClass( "bold" );
 				$(".more-"+ item).toggle(true);
@@ -72,7 +77,7 @@
 	var more_items = function(item, item_status){
 		if(item_status)
 		{
-			var item_status = $('.project-'+ item +'-section .btn-group .btn-primary').hasClass('btn-closed-'+ item) 
+			var item_status = $('.project-'+ item +'-section .btn-group .bold').hasClass('btn-closed-'+ item) 
 				? 'closed' : 'open';
 		}
 		$.ajax({
@@ -87,6 +92,7 @@
 			},
 			dataType: "json",
 			success: function(data) {
+				
 				$(data.message).appendTo('.project-'+ item);
 				if(typeof data.message == 'undefined') {	
 					$(".more-"+ item).toggle(false);	
diff --git a/erpnext/templates/pages/projects.py b/erpnext/templates/pages/projects.py
index 8cec2b7..39648e3 100644
--- a/erpnext/templates/pages/projects.py
+++ b/erpnext/templates/pages/projects.py
@@ -70,7 +70,7 @@
 	if search:
 		filters["subject"] = ("like", "%{0}%".format(search))
 	if item_status:
-		filters = {"status": item_status}
+		filters["status"] = item_status
 	tasks = frappe.get_all("Task", filters=filters,
 		fields=["name", "subject", "status", "exp_start_date", "exp_end_date", "priority"],
 		limit_start=start, limit_page_length=10)
@@ -97,7 +97,7 @@
 	if search:
 		filters["subject"] = ("like", "%{0}%".format(search))
 	if item_status:
-		filters = {"status": item_status}
+		filters["status"] = item_status
 	issues = frappe.get_all("Issue", filters=filters,
 		fields=["name", "subject", "status", "opening_date", "resolution_date", "resolution_details"],
 		order_by='modified desc',
