[minor] fixes to attendance tool and employee holiday attendance
diff --git a/erpnext/hr/doctype/employee_attendance_tool/employee_attendance_tool.js b/erpnext/hr/doctype/employee_attendance_tool/employee_attendance_tool.js
index 9467d39..f29bc89 100644
--- a/erpnext/hr/doctype/employee_attendance_tool/employee_attendance_tool.js
+++ b/erpnext/hr/doctype/employee_attendance_tool/employee_attendance_tool.js
@@ -1,25 +1,25 @@
 frappe.ui.form.on("Employee Attendance Tool", {
-	refresh:function(frm){
+	refresh: function(frm) {
 		frm.disable_save();
 	},
 
-	onload:function(frm){
+	onload: function(frm) {
 		erpnext.employee_attendance_tool.load_employees(frm);
 	},
 
-	date:function(frm){
+	date: function(frm) {
 		erpnext.employee_attendance_tool.load_employees(frm);
 	},
 
-	department:function(frm){
+	department: function(frm) {
 		erpnext.employee_attendance_tool.load_employees(frm);
 	},
 
-	branch:function(frm){
+	branch: function(frm) {
 		erpnext.employee_attendance_tool.load_employees(frm);
 	},
 
-	company:function(frm){
+	company: function(frm) {
 		erpnext.employee_attendance_tool.load_employees(frm);
 	}
 
@@ -28,20 +28,20 @@
 
 
 erpnext.employee_attendance_tool = {
-	load_employees: function(frm){
-		if(frm.doc.date){
+	load_employees: function(frm) {
+		if(frm.doc.date) {
 			frappe.call({
-				method:"erpnext.hr.doctype.employee_attendance_tool.employee_attendance_tool.get_employees",
-				args:{
-					date:frm.doc.date,
-					department:frm.doc.department,
-					branch:frm.doc.branch,
-					company:frm.doc.company
+				method: "erpnext.hr.doctype.employee_attendance_tool.employee_attendance_tool.get_employees",
+				args: {
+					date: frm.doc.date,
+					department: frm.doc.department,
+					branch: frm.doc.branch,
+					company: frm.doc.company
 				},
-				callback:function(r){
-					if(r.message['unmarked'].length > 0){
+				callback: function(r) {
+					if(r.message['unmarked'].length > 0) {
 						unhide_field('unmarked_attendance_section')
-						if(!frm.employee_area){						
+						if(!frm.employee_area) {
 							frm.employee_area = $('<div>')
 							.appendTo(frm.fields_dict.employees_html.wrapper);
 						}
@@ -51,14 +51,13 @@
 						hide_field('unmarked_attendance_section')
 					}
 
-					if(r.message['marked'].length > 0){
+					if(r.message['marked'].length > 0) {
 						unhide_field('marked_attendance_section')
-						if(!frm.marked_employee_area){
-
+						if(!frm.marked_employee_area) {
 							frm.marked_employee_area = $('<div>')
-							.appendTo(frm.fields_dict.marked_attendance_html.wrapper);
+								.appendTo(frm.fields_dict.marked_attendance_html.wrapper);
 						}
-						frm.MarkedEmployee = new erpnext.MarkedEmployee(frm, frm.marked_employee_area, r.message['marked'])
+						frm.marked_employee = new erpnext.MarkedEmployee(frm, frm.marked_employee_area, r.message['marked'])
 					}
 					else{
 						hide_field('marked_attendance_section')
@@ -79,18 +78,30 @@
 		var me = this;
 		$(this.wrapper).empty();
 
+		var row;
 		$.each(employee, function(i, m) {
-			var attendance_icon = "'icon-check'"
+			var attendance_icon = "icon-check";
+			var color_class = "";
 			if(m.status == "Absent") {
-				attendance_icon="'icon-check-empty'"
+				attendance_icon = "icon-check-empty"
+				color_class = "text-muted";
 			}
-			else if(m.status == "Half Day"){
-				attendance_icon = "'icon-check-minus'"
+			else if(m.status == "Half Day") {
+				attendance_icon = "icon-check-minus"
 			}
-			$(repl('<div class="col-sm-3">\
-				<label class="marked-employee-label"><span class=%(icon)s></span>\
+
+			if (i===0 || i % 4===0) {
+				row = $('<div class="row"></div>').appendTo(me.wrapper);
+			}
+
+			$(repl('<div class="col-sm-3 %(color_class)s">\
+				<label class="marked-employee-label"><span class="%(icon)s"></span>\
 				%(employee)s</label>\
-				</div>', {employee: m.employee_name, icon: attendance_icon})).appendTo(me.wrapper);
+				</div>', {
+					employee: m.employee_name,
+					icon: attendance_icon,
+					color_class: color_class
+				})).appendTo(row);
 		});
 	}
 });
@@ -104,7 +115,7 @@
 	},
 	make: function(frm, employee) {
 		var me = this;
-		
+
 		$(this.wrapper).empty();
 		var employee_toolbar = $('<div class="col-sm-12 top-toolbar">\
 			<button class="btn btn-default btn-add btn-xs"></button>\
@@ -112,121 +123,121 @@
 			</div>').appendTo($(this.wrapper));
 
 		var mark_employee_toolbar = $('<div class="col-sm-12 bottom-toolbar">\
-			<button class="btn btn-default btn-primary btn-mark-present btn-xs"></button>\
-			<button class="btn btn-default btn-primary btn-mark-absent btn-xs"></button>\
-			<button class="btn btn-default btn-primary btn-mark-half-day btn-xs"></button></div>')
+			<button class="btn btn-primary btn-mark-present btn-xs"></button>\
+			<button class="btn btn-default btn-mark-absent btn-xs"></button>\
+			<button class="btn btn-default btn-mark-half-day btn-xs"></button></div>')
 
 		employee_toolbar.find(".btn-add")
-		.html(__('Check all'))
-		.on("click", function() {
-			$(me.wrapper).find('input[type="checkbox"]').each(function(i, check) {
-				if(!$(check).is(":checked")) {
-					check.checked = true;
-				}
+			.html(__('Check all'))
+			.on("click", function() {
+				$(me.wrapper).find('input[type="checkbox"]').each(function(i, check) {
+					if(!$(check).is(":checked")) {
+						check.checked = true;
+					}
+				});
 			});
-		});
 
 		employee_toolbar.find(".btn-remove")
-		.html(__('Uncheck all'))
-		.on("click", function() {
-			$(me.wrapper).find('input[type="checkbox"]').each(function(i, check) {
-				if($(check).is(":checked")) {
-					check.checked = false;
-				}
+			.html(__('Uncheck all'))
+			.on("click", function() {
+				$(me.wrapper).find('input[type="checkbox"]').each(function(i, check) {
+					if($(check).is(":checked")) {
+						check.checked = false;
+					}
+				});
 			});
-		});
-		
+
 		mark_employee_toolbar.find(".btn-mark-present")
-		.html(__('Mark Present'))
-		.on("click", function() {
-			var employee_present = [];
-			$(me.wrapper).find('input[type="checkbox"]').each(function(i, check) {
-				if($(check).is(":checked")) {
-					employee_present.push(employee[i]);
-				}
-			});
-			frappe.call({
-				method: "erpnext.hr.doctype.employee_attendance_tool.employee_attendance_tool.mark_employee_attendance",
-				args:{
-					"employee_list":employee_present, 
-					"status":"Present",
-					"date":frm.doc.date,
-					"company":frm.doc.company
-				},
+			.html(__('Mark Present'))
+			.on("click", function() {
+				var employee_present = [];
+				$(me.wrapper).find('input[type="checkbox"]').each(function(i, check) {
+					if($(check).is(":checked")) {
+						employee_present.push(employee[i]);
+					}
+				});
+				frappe.call({
+					method: "erpnext.hr.doctype.employee_attendance_tool.employee_attendance_tool.mark_employee_attendance",
+					args:{
+						"employee_list":employee_present,
+						"status":"Present",
+						"date":frm.doc.date,
+						"company":frm.doc.company
+					},
 
-				callback: function(r) {
-					erpnext.employee_attendance_tool.load_employees(frm);
+					callback: function(r) {
+						erpnext.employee_attendance_tool.load_employees(frm);
 
-				}
+					}
+				});
 			});
-		});
 
 		mark_employee_toolbar.find(".btn-mark-absent")
-		.html(__('Mark Absent'))
-		.on("click", function() {
-			var employee_absent = [];
-			$(me.wrapper).find('input[type="checkbox"]').each(function(i, check) {
-				if($(check).is(":checked")) {
-					employee_absent.push(employee[i]);
-				}
-			});
-			frappe.call({
-				method: "erpnext.hr.doctype.employee_attendance_tool.employee_attendance_tool.mark_employee_attendance",
-				args:{
-					"employee_list":employee_absent, 
-					"status":"Absent",
-					"date":frm.doc.date,
-					"company":frm.doc.company
-				},
+			.html(__('Mark Absent'))
+			.on("click", function() {
+				var employee_absent = [];
+				$(me.wrapper).find('input[type="checkbox"]').each(function(i, check) {
+					if($(check).is(":checked")) {
+						employee_absent.push(employee[i]);
+					}
+				});
+				frappe.call({
+					method: "erpnext.hr.doctype.employee_attendance_tool.employee_attendance_tool.mark_employee_attendance",
+					args:{
+						"employee_list":employee_absent,
+						"status":"Absent",
+						"date":frm.doc.date,
+						"company":frm.doc.company
+					},
 
-				callback: function(r) {
-					erpnext.employee_attendance_tool.load_employees(frm);
+					callback: function(r) {
+						erpnext.employee_attendance_tool.load_employees(frm);
 
-				}
+					}
+				});
 			});
-		});
 
 
 		mark_employee_toolbar.find(".btn-mark-half-day")
-		.html(__('Mark Half Day'))
-		.on("click", function() {
-			var employee_half_day = [];
-			$(me.wrapper).find('input[type="checkbox"]').each(function(i, check) {
-				if($(check).is(":checked")) {
-					employee_half_day.push(employee[i]);
-				}
+			.html(__('Mark Half Day'))
+			.on("click", function() {
+				var employee_half_day = [];
+				$(me.wrapper).find('input[type="checkbox"]').each(function(i, check) {
+					if($(check).is(":checked")) {
+						employee_half_day.push(employee[i]);
+					}
+				});
+				frappe.call({
+					method: "erpnext.hr.doctype.employee_attendance_tool.employee_attendance_tool.mark_employee_attendance",
+					args:{
+						"employee_list":employee_half_day,
+						"status":"Half Day",
+						"date":frm.doc.date,
+						"company":frm.doc.company
+					},
+
+					callback: function(r) {
+						erpnext.employee_attendance_tool.load_employees(frm);
+
+					}
+				});
 			});
-			frappe.call({
-				method: "erpnext.hr.doctype.employee_attendance_tool.employee_attendance_tool.mark_employee_attendance",
-				args:{
-					"employee_list":employee_half_day, 
-					"status":"Half Day",
-					"date":frm.doc.date,
-					"company":frm.doc.company
-				},
 
-				callback: function(r) {
-					erpnext.employee_attendance_tool.load_employees(frm);
 
-				}
-			});
-		});
-
-		
+		var row;
 		$.each(employee, function(i, m) {
+			if (i===0 || (i % 4) === 0) {
+				row = $('<div class="row"></div>').appendTo(me.wrapper);
+			}
+
 			$(repl('<div class="col-sm-3 unmarked-employee-checkbox">\
 				<div class="checkbox">\
 				<label><input type="checkbox" class="employee-check" employee="%(employee)s"/>\
 				%(employee)s</label>\
-				</div></div>', {employee: m.employee_name})).appendTo(me.wrapper);
-
-
-
+				</div></div>', {employee: m.employee_name})).appendTo(row);
 		});
 
 		mark_employee_toolbar.appendTo($(this.wrapper));
-
-		
 	}
 });
 
diff --git a/erpnext/hr/report/employee_holiday_attendance/employee_holiday_attendance.py b/erpnext/hr/report/employee_holiday_attendance/employee_holiday_attendance.py
index ce8d5dd..ac51b57 100644
--- a/erpnext/hr/report/employee_holiday_attendance/employee_holiday_attendance.py
+++ b/erpnext/hr/report/employee_holiday_attendance/employee_holiday_attendance.py
@@ -16,11 +16,12 @@
 
 
 def get_columns():
-
 	return [
-		_("Employee") + ":Link/Employee:120", _("Name") + ":Data:200", _("Date")+ ":Date:100",
-		_("Status") + ":Data:70",_("Holiday") + ":Data:200"
-		
+		_("Employee") + ":Link/Employee:120",
+		_("Name") + ":Data:200",
+		_("Date")+ ":Date:100",
+		_("Status") + ":Data:70",
+		_("Holiday") + ":Data:200"
 	]
 
 
@@ -30,14 +31,17 @@
 	holidays_list = []
 
 	for holiday in holidays:
-		holidays_list.append("'" + holiday.holiday_date.strftime('%Y-%m-%d') + "'")
+		holidays_list.append(holiday.holiday_date)
 		holiday_names[holiday.holiday_date] = holiday.description
 
-	employee_list = frappe.db.sql(
-		"select employee, employee_name, att_date, status from tabAttendance where att_date in ("
-		+ ', '.join(holidays_list) + ")",
-		as_list=True)
+	employee_list = frappe.db.sql("""select
+	        employee, employee_name, att_date, status
+	    from tabAttendance
+	    where
+	        att_date in ({0})""".format(', '.join(["%s"]*len(holidays_list))),
+	    holidays_list, as_list=True)
 
 	for employee_data in employee_list:
 		employee_data.append(holiday_names[employee_data[2]])
+
 	return employee_list