Merge pull request #152 from anandpdoshi/master

Changed error message on update security change password dialog
diff --git a/erpnext/home/page/my_company/my_company.py b/erpnext/home/page/my_company/my_company.py
index 3ff1482..c96d998 100644
--- a/erpnext/home/page/my_company/my_company.py
+++ b/erpnext/home/page/my_company/my_company.py
@@ -140,7 +140,9 @@
 	if 'new_password' in args:
 		if cint(webnotes.conn.get_value('Control Panel',None,'sync_with_gateway')):
 			import server_tools.gateway_utils
-			webnotes.msgprint(server_tools.gateway_utils.change_password('', args['new_password'], args['user'], args['sys_admin_pwd'])['message'])
+			res = server_tools.gateway_utils.change_password('', args['new_password'], args['user'], args['sys_admin_pwd'])
+			if 'Traceback' not in res['message']:
+				webnotes.msgprint(res['message'])
 		else:
 			webnotes.conn.sql("update tabProfile set password=password(%s) where name=%s", (args['new_password'], args['user']))
-	else: webnotes.msgprint('Settings Updated')
\ No newline at end of file
+	else: webnotes.msgprint('Settings Updated')
diff --git a/erpnext/setup/doctype/email_digest/email_digest.coffee b/erpnext/setup/doctype/email_digest/email_digest.coffee
deleted file mode 100644
index 1b17d5b..0000000
--- a/erpnext/setup/doctype/email_digest/email_digest.coffee
+++ /dev/null
@@ -1,101 +0,0 @@
-content_items = ['Sales','Expenses','Bank Balance','Activity']
-
-# make a grid with items and columns of checkboxes
-# Parameters:
-#   parent
-# 	label (main heading)
-#	items = [] (rows)
-#	columns = [] (columns of checks)
-#	widths
-#	description
-
-class CheckGrid
-	constructor: (@args) ->
-		$.extend @, args
-		@wrapper = $a @parent, 'div', 'check-grid round'
-		@render()
-		
-	render: ->
-		$a @wrapper, 'h3', 'check-grid-title', null, @label
-		
-		if @description
-			$a @wrapper, 'div', 'help-box', null, @description
-		
-		@tab = make_table @wrapper, @items.length + 1, @columns.length, '100%', @widths
-		@checks = {}
-
-		# render heads
-		for i in [0..@columns.length-1]
-			$($td(@tab, 0, i))
-				.addClass('check-grid-head gradient')
-				.html @columns[i]
-
-		@render_rows()
-	
-	render_rows: ->
-		# render rows
-		for i in [0..@items.length-1]
-			$td(@tab, i+1, 0).innerHTML = @items[i]
-			
-			# render checkboxes for this row
-			@checks[@items[i]] = {}
-			for c in [1..@columns.length-1]
-				check = $a_input $td(@tab, i+1, c), 'checkbox'
-				
-				# tag keys to checkbox
-				check.item = @items[i]
-				check.column = @columns[c]
-				
-				# add in my checks
-				@checks[@items[i]][@columns[c]] = check
-	
-	# get the values of the checkbox in a double dict
-	get: =>
-		val = {}
-		for item in keys @checks
-			for column in keys @checks[item]
-				check = @checks[item][column]
-				val[check.item] or= {}
-				val[check.item][check.column] = if check.checked then 1 else 0
-		val
-	
-	# set the values of the grid
-	set: (val) =>
-		for item in keys @checks
-			for column in keys @checks[item]
-				if val[item][column]
-					@checks[item][column] .checked = val[item][column] 
-		return
-
-# attach it to onload
-cx = cur_frm.cscript
-cx.onload = (doc, dt, dn) ->
-
-	# make the content grid
-	cx.content_grid = new CheckGrid 
-		parent: cur_frm.fields_dict.Body.wrapper
-		label: 'Email Settings'
-		items: content_items
-		columns: ['Item','Daily','Weekly']
-		widths: ['60%', '20%', '20%']
-		description: 'Select items to be compiled for Email Digest'
-
-	# make the email grid
-	cx.email_grid = new CheckGrid 
-		parent: cur_frm.fields_dict.Body.wrapper
-		label: 'Send To'
-		items: ['test1@erpnext', 'test2@erpnext']
-		columns: ['Email','Daily','Weekly']
-		widths: ['60%', '20%', '20%']
-		description: 'Select who gets daily and weekly mails'
-		
-	cx.content_grid.set JSON.parse doc.content_config if doc.content_config
-	cx.email_grid.set JSON.parse doc.email_config if doc.email_config
-	
-	return
-
-# update the data before sending
-cx.validate = (doc, dt, dn) ->
-	doc.content_config = JSON.stringify cx.content_grid.get()
-	doc.email_config = JSON.stringify cx.email_grid.get()
-		
\ No newline at end of file
diff --git a/erpnext/setup/doctype/email_digest/email_digest.css b/erpnext/setup/doctype/email_digest/email_digest.css
deleted file mode 100644
index f61dacc..0000000
--- a/erpnext/setup/doctype/email_digest/email_digest.css
+++ /dev/null
@@ -1,18 +0,0 @@
-
-div.check-grid {
-	margin: 17px;
-}
-
-div.check-grid table {
-	border-collapse: collapse;
-}
-
-div.check-grid table td {
-	padding: 3px;
-	border: 1px solid #aaa;
-}
-
-td.check-grid-head {
-	font-weight: bold;
-	text-align: center;
-}
\ No newline at end of file
diff --git a/erpnext/setup/doctype/email_digest/email_digest.js b/erpnext/setup/doctype/email_digest/email_digest.js
deleted file mode 100644
index ddb13f4..0000000
--- a/erpnext/setup/doctype/email_digest/email_digest.js
+++ /dev/null
@@ -1,108 +0,0 @@
-(function() {
-  var CheckGrid, content_items, cx;
-  var __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
-  content_items = ['Sales', 'Expenses', 'Bank Balance', 'Activity'];
-  CheckGrid = (function() {
-    function CheckGrid(args) {
-      this.args = args;
-      this.set = __bind(this.set, this);
-      this.get = __bind(this.get, this);
-      $.extend(this, args);
-      this.wrapper = $a(this.parent, 'div', 'check-grid round');
-      this.render();
-    }
-    CheckGrid.prototype.render = function() {
-      var i, _ref;
-      $a(this.wrapper, 'h3', 'check-grid-title', null, this.label);
-      if (this.description) {
-        $a(this.wrapper, 'div', 'help-box', null, this.description);
-      }
-      this.tab = make_table(this.wrapper, this.items.length + 1, this.columns.length, '100%', this.widths);
-      this.checks = {};
-      for (i = 0, _ref = this.columns.length - 1; 0 <= _ref ? i <= _ref : i >= _ref; 0 <= _ref ? i++ : i--) {
-        $($td(this.tab, 0, i)).addClass('check-grid-head gradient').html(this.columns[i]);
-      }
-      return this.render_rows();
-    };
-    CheckGrid.prototype.render_rows = function() {
-      var c, check, i, _ref, _results;
-      _results = [];
-      for (i = 0, _ref = this.items.length - 1; 0 <= _ref ? i <= _ref : i >= _ref; 0 <= _ref ? i++ : i--) {
-        $td(this.tab, i + 1, 0).innerHTML = this.items[i];
-        this.checks[this.items[i]] = {};
-        _results.push((function() {
-          var _ref2, _results2;
-          _results2 = [];
-          for (c = 1, _ref2 = this.columns.length - 1; 1 <= _ref2 ? c <= _ref2 : c >= _ref2; 1 <= _ref2 ? c++ : c--) {
-            check = $a_input($td(this.tab, i + 1, c), 'checkbox');
-            check.item = this.items[i];
-            check.column = this.columns[c];
-            _results2.push(this.checks[this.items[i]][this.columns[c]] = check);
-          }
-          return _results2;
-        }).call(this));
-      }
-      return _results;
-    };
-    CheckGrid.prototype.get = function() {
-      var check, column, item, val, _i, _j, _len, _len2, _name, _ref, _ref2;
-      val = {};
-      _ref = keys(this.checks);
-      for (_i = 0, _len = _ref.length; _i < _len; _i++) {
-        item = _ref[_i];
-        _ref2 = keys(this.checks[item]);
-        for (_j = 0, _len2 = _ref2.length; _j < _len2; _j++) {
-          column = _ref2[_j];
-          check = this.checks[item][column];
-          val[_name = check.item] || (val[_name] = {});
-          val[check.item][check.column] = check.checked ? 1 : 0;
-        }
-      }
-      return val;
-    };
-    CheckGrid.prototype.set = function(val) {
-      var column, item, _i, _j, _len, _len2, _ref, _ref2;
-      _ref = keys(this.checks);
-      for (_i = 0, _len = _ref.length; _i < _len; _i++) {
-        item = _ref[_i];
-        _ref2 = keys(this.checks[item]);
-        for (_j = 0, _len2 = _ref2.length; _j < _len2; _j++) {
-          column = _ref2[_j];
-          if (val[item][column]) {
-            this.checks[item][column].checked = val[item][column];
-          }
-        }
-      }
-    };
-    return CheckGrid;
-  })();
-  cx = cur_frm.cscript;
-  cx.onload = function(doc, dt, dn) {
-    cx.content_grid = new CheckGrid({
-      parent: cur_frm.fields_dict.Body.wrapper,
-      label: 'Email Settings',
-      items: content_items,
-      columns: ['Item', 'Daily', 'Weekly'],
-      widths: ['60%', '20%', '20%'],
-      description: 'Select items to be compiled for Email Digest'
-    });
-    cx.email_grid = new CheckGrid({
-      parent: cur_frm.fields_dict.Body.wrapper,
-      label: 'Send To',
-      items: ['test1@erpnext', 'test2@erpnext'],
-      columns: ['Email', 'Daily', 'Weekly'],
-      widths: ['60%', '20%', '20%'],
-      description: 'Select who gets daily and weekly mails'
-    });
-    if (doc.content_config) {
-      cx.content_grid.set(JSON.parse(doc.content_config));
-    }
-    if (doc.email_config) {
-      cx.email_grid.set(JSON.parse(doc.email_config));
-    }
-  };
-  cx.validate = function(doc, dt, dn) {
-    doc.content_config = JSON.stringify(cx.content_grid.get());
-    return doc.email_config = JSON.stringify(cx.email_grid.get());
-  };
-}).call(this);