[FIX] Fixed spaces instead of tabs.
bzr revid: noz@tinyerp.com-20110726080318-gu5xvwlepj8o7nmi
This commit is contained in:
parent
c2bbedd32b
commit
01ae186bec
|
@ -73,23 +73,21 @@ class Database(openerpweb.Controller):
|
||||||
return {"db_list": dbs}
|
return {"db_list": dbs}
|
||||||
|
|
||||||
@openerpweb.jsonrequest
|
@openerpweb.jsonrequest
|
||||||
def db_operation(self, req, flag, **kw):
|
def create_db(self, req, **kw):
|
||||||
|
|
||||||
if flag == 'create':
|
super_admin_pwd = kw.get('super_admin_pwd')
|
||||||
|
dbname = kw.get('db')
|
||||||
super_admin_pwd = kw.get('super_admin_pwd')
|
demo_data = kw.get('demo_data')
|
||||||
dbname = kw.get('db')
|
db_lang = kw.get('db_lang')
|
||||||
demo_data = kw.get('demo_data')
|
admin_pwd = kw.get('admin_pwd')
|
||||||
db_lang = kw.get('db_lang')
|
confirm_pwd = kw.get('confirm_pwd')
|
||||||
admin_pwd = kw.get('admin_pwd')
|
|
||||||
confirm_pwd = kw.get('confirm_pwd')
|
if not re.match('^[a-zA-Z][a-zA-Z0-9_]+$', dbname):
|
||||||
|
return {'error': "You must avoid all accents, space or special characters.", 'title': 'Bad database name'}
|
||||||
if not re.match('^[a-zA-Z][a-zA-Z0-9_]+$', dbname):
|
|
||||||
return {'error': "You must avoid all accents, space or special characters.", 'title': 'Bad database name'}
|
ok = False
|
||||||
|
try:
|
||||||
ok = False
|
return req.session.proxy("db").create(super_admin_pwd, dbname, demo_data, db_lang, admin_pwd)
|
||||||
try:
|
|
||||||
return req.session.proxy("db").create(super_admin_pwd, dbname, demo_data, db_lang, admin_pwd)
|
|
||||||
# while True:
|
# while True:
|
||||||
# try:
|
# try:
|
||||||
# progress, users = req.session.proxy('db').get_progress(super_admin_pwd, res)
|
# progress, users = req.session.proxy('db').get_progress(super_admin_pwd, res)
|
||||||
|
@ -106,65 +104,69 @@ class Database(openerpweb.Controller):
|
||||||
# except DatabaseCreationCrash:
|
# except DatabaseCreationCrash:
|
||||||
# return {'error': "The server crashed during installation.\nWe suggest you to drop this database.",
|
# return {'error': "The server crashed during installation.\nWe suggest you to drop this database.",
|
||||||
# 'title': 'Error during database creation'}
|
# 'title': 'Error during database creation'}
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied':
|
if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied':
|
||||||
return {'error': 'Bad super admin password !', 'title': 'Create Database'}
|
return {'error': 'Bad super admin password !', 'title': 'Create Database'}
|
||||||
else:
|
else:
|
||||||
return {'error': 'Could not create database !', 'title': 'Create Database'}
|
return {'error': 'Could not create database !', 'title': 'Create Database'}
|
||||||
|
|
||||||
|
@openerpweb.jsonrequest
|
||||||
|
def drop_db(self, req, **kw):
|
||||||
|
db = kw.get('db')
|
||||||
|
password = kw.get('password')
|
||||||
|
|
||||||
elif flag == 'drop':
|
try:
|
||||||
db = kw.get('db')
|
return req.session.proxy("db").drop(password, db)
|
||||||
password = kw.get('password')
|
except Exception, e:
|
||||||
|
if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied':
|
||||||
|
return {'error': 'Bad super admin password !', 'title': 'Drop Database'}
|
||||||
|
else:
|
||||||
|
return {'error': 'Could not drop database !', 'title': 'Drop Database'}
|
||||||
|
|
||||||
|
@openerpweb.jsonrequest
|
||||||
|
def backup_db(self, req, **kw):
|
||||||
|
db = kw.get('db')
|
||||||
|
password = kw.get('password')
|
||||||
|
try:
|
||||||
|
res = req.session.proxy("db").dump(password, db)
|
||||||
|
if res:
|
||||||
|
cherrypy.response.headers['Content-Type'] = "application/data"
|
||||||
|
cherrypy.response.headers['Content-Disposition'] = 'filename="' + db + '.dump"'
|
||||||
|
return base64.decodestring(res)
|
||||||
|
except Exception, e:
|
||||||
|
if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied':
|
||||||
|
return {'error': 'Bad super admin password !', 'title': 'Backup Database'}
|
||||||
|
else:
|
||||||
|
return {'error': 'Could not drop database !', 'title': 'Backup Database'}
|
||||||
|
|
||||||
try:
|
@openerpweb.jsonrequest
|
||||||
return req.session.proxy("db").drop(password, db)
|
def restore_db(self, req, **kw):
|
||||||
except Exception, e:
|
filename = kw.get('filename')
|
||||||
if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied':
|
db = kw.get('db')
|
||||||
return {'error': 'Bad super admin password !', 'title': 'Drop Database'}
|
password = kw.get('password')
|
||||||
else:
|
|
||||||
return {'error': 'Could not drop database !', 'title': 'Drop Database'}
|
|
||||||
|
|
||||||
elif flag == 'backup':
|
try:
|
||||||
db = kw.get('db')
|
data = base64.encodestring(filename.file.read())
|
||||||
password = kw.get('password')
|
return req.session.proxy("db").restore(password, db, data)
|
||||||
try:
|
except Exception, e:
|
||||||
res = req.session.proxy("db").dump(password, db)
|
if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied':
|
||||||
if res:
|
return {'error': 'Bad super admin password !', 'title': 'Restore Database'}
|
||||||
cherrypy.response.headers['Content-Type'] = "application/data"
|
else:
|
||||||
cherrypy.response.headers['Content-Disposition'] = 'filename="' + db + '.dump"'
|
return {'error': 'Could not restore database !', 'title': 'Restore Database'}
|
||||||
return base64.decodestring(res)
|
|
||||||
except Exception, e:
|
|
||||||
if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied':
|
|
||||||
return {'error': 'Bad super admin password !', 'title': 'Backup Database'}
|
|
||||||
else:
|
|
||||||
return {'error': 'Could not drop database !', 'title': 'Backup Database'}
|
|
||||||
|
|
||||||
elif flag == 'restore':
|
|
||||||
filename = kw.get('filename')
|
|
||||||
db = kw.get('db')
|
|
||||||
password = kw.get('password')
|
|
||||||
|
|
||||||
try:
|
|
||||||
data = base64.encodestring(filename.file.read())
|
|
||||||
return req.session.proxy("db").restore(password, db, data)
|
|
||||||
except Exception, e:
|
|
||||||
if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied':
|
|
||||||
return {'error': 'Bad super admin password !', 'title': 'Restore Database'}
|
|
||||||
else:
|
|
||||||
return {'error': 'Could not restore database !', 'title': 'Restore Database'}
|
|
||||||
|
|
||||||
elif flag == 'change_password':
|
@openerpweb.jsonrequest
|
||||||
old_password = kw.get('old_password')
|
def change_password_db(self, req, **kw):
|
||||||
new_password = kw.get('new_password')
|
old_password = kw.get('old_password')
|
||||||
confirm_password = kw.get('confirm_password')
|
new_password = kw.get('new_password')
|
||||||
|
confirm_password = kw.get('confirm_password')
|
||||||
try:
|
|
||||||
return req.session.proxy("db").change_admin_password(old_password, new_password)
|
try:
|
||||||
except Exception, e:
|
return req.session.proxy("db").change_admin_password(old_password, new_password)
|
||||||
if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied':
|
except Exception, e:
|
||||||
return {'error': 'Bad super admin password !', 'title': 'Change Password'}
|
if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied':
|
||||||
else:
|
return {'error': 'Bad super admin password !', 'title': 'Change Password'}
|
||||||
return {'error': 'Error, password not changed !', 'title': 'Change Password'}
|
else:
|
||||||
|
return {'error': 'Error, password not changed !', 'title': 'Change Password'}
|
||||||
|
|
||||||
class Session(openerpweb.Controller):
|
class Session(openerpweb.Controller):
|
||||||
_cp_path = "/base/session"
|
_cp_path = "/base/session"
|
||||||
|
|
|
@ -688,19 +688,18 @@ openerp.base.Loading = openerp.base.Controller.extend({
|
||||||
});
|
});
|
||||||
|
|
||||||
openerp.base.Database = openerp.base.Controller.extend({
|
openerp.base.Database = openerp.base.Controller.extend({
|
||||||
init: function(parent, element_id, option_id) {
|
init: function(parent, element_id, option_id) {
|
||||||
this._super(parent, element_id);
|
this._super(parent, element_id);
|
||||||
this.option_id = option_id;
|
this.option_id = option_id;
|
||||||
this.$option_id = $('#' + option_id);
|
this.$option_id = $('#' + option_id);
|
||||||
this.$option_id.html('');
|
this.$option_id.html('');
|
||||||
if(this.parent && this.parent.session) {
|
if(this.parent && this.parent.session) {
|
||||||
this.session = this.parent.session;
|
this.session = this.parent.session;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
start: function() {
|
start: function() {
|
||||||
this.$element.html(QWeb.render("Database", this));
|
this.$element.html(QWeb.render("Database", this));
|
||||||
|
this.$element.closest(".openerp").removeClass("login-mode");
|
||||||
this.$element.closest(".openerp").removeClass("login-mode");
|
|
||||||
this.$element.closest(".openerp").addClass("database_block");
|
this.$element.closest(".openerp").addClass("database_block");
|
||||||
|
|
||||||
var self = this;
|
var self = this;
|
||||||
|
@ -710,8 +709,8 @@ openerp.base.Database = openerp.base.Controller.extend({
|
||||||
});
|
});
|
||||||
|
|
||||||
this.rpc("/base/session/get_lang_list", {}, function(result) {
|
this.rpc("/base/session/get_lang_list", {}, function(result) {
|
||||||
self.lang_list = result.lang_list;
|
self.lang_list = result.lang_list;
|
||||||
self.do_db_create();
|
self.do_db_create();
|
||||||
});
|
});
|
||||||
|
|
||||||
this.$element.find('#db-create').click(this.do_db_create);
|
this.$element.find('#db-create').click(this.do_db_create);
|
||||||
|
@ -720,228 +719,227 @@ openerp.base.Database = openerp.base.Controller.extend({
|
||||||
this.$element.find('#db-restore').click(this.do_db_restore);
|
this.$element.find('#db-restore').click(this.do_db_restore);
|
||||||
this.$element.find('#db-change-password').click(this.do_change_password);
|
this.$element.find('#db-change-password').click(this.do_change_password);
|
||||||
this.$element.find('#back-to-login').click(function() {
|
this.$element.find('#back-to-login').click(function() {
|
||||||
self.header = new openerp.base.Header(self, "oe_header");
|
self.header = new openerp.base.Header(self, "oe_header");
|
||||||
self.header.on_logout();
|
self.header.on_logout();
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
do_db_create: function() {
|
do_db_create: function() {
|
||||||
var self = this;
|
var self = this;
|
||||||
self.db_string = "CREATE DATABASE";
|
self.db_string = "CREATE DATABASE";
|
||||||
self.$option_id.html(QWeb.render("CreateDB", self));
|
self.$option_id.html(QWeb.render("CreateDB", self));
|
||||||
|
|
||||||
$("form[name=create_db_form]").validate();
|
$("form[name=create_db_form]").validate();
|
||||||
|
|
||||||
$("input[name=create_confirm_pwd]").rules("add", {
|
$("input[name=create_confirm_pwd]").rules("add", {
|
||||||
equalTo: 'input[name=create_admin_pwd]',
|
equalTo: 'input[name=create_admin_pwd]',
|
||||||
messages: {
|
messages: {
|
||||||
required: "Password did not match !"
|
required: "Password did not match !"
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
$("input[name=super_admin_pwd]").focus();
|
$("input[name=super_admin_pwd]").focus();
|
||||||
|
|
||||||
self.$option_id.find('form[name=create_db_form]').submit(function(ev) {
|
self.$option_id.find('form[name=create_db_form]').submit(function(ev) {
|
||||||
ev.preventDefault();
|
ev.preventDefault();
|
||||||
|
|
||||||
var super_admin_pwd = self.$option_id.find("input[name=super_admin_pwd]").val();
|
var super_admin_pwd = self.$option_id.find("input[name=super_admin_pwd]").val();
|
||||||
var db = self.$option_id.find("input[name=db_name]").val();
|
var db = self.$option_id.find("input[name=db_name]").val();
|
||||||
var demo_data = self.$option_id.find("input[name=demo_data]:checked");
|
var demo_data = self.$option_id.find("input[name=demo_data]:checked");
|
||||||
var db_lang = self.$option_id.find("select[name=db_lang]").val();
|
var db_lang = self.$option_id.find("select[name=db_lang]").val();
|
||||||
var admin_pwd = self.$option_id.find("input[name=create_admin_pwd]").val();
|
var admin_pwd = self.$option_id.find("input[name=create_admin_pwd]").val();
|
||||||
var confirm_pwd = self.$option_id.find("input[name=create_confirm_pwd]").val();
|
var confirm_pwd = self.$option_id.find("input[name=create_confirm_pwd]").val();
|
||||||
|
|
||||||
if (demo_data.length)
|
if (demo_data.length)
|
||||||
demo_data = 'True';
|
demo_data = 'True';
|
||||||
else
|
else
|
||||||
demo_data = 'False';
|
demo_data = 'False';
|
||||||
|
|
||||||
self.rpc("/base/database/db_operation", {
|
self.rpc("/base/database/create_db", {
|
||||||
'flag': 'create',
|
'super_admin_pwd': super_admin_pwd,
|
||||||
'super_admin_pwd': super_admin_pwd,
|
'db': db,
|
||||||
'db': db,
|
'demo_data': demo_data,
|
||||||
'demo_data': demo_data,
|
'db_lang': db_lang,
|
||||||
'db_lang': db_lang,
|
'admin_pwd': admin_pwd,
|
||||||
'admin_pwd': admin_pwd,
|
'confirm_pwd': confirm_pwd
|
||||||
'confirm_pwd': confirm_pwd
|
},
|
||||||
},
|
function(result) {
|
||||||
function(result) {
|
if (result && !result.error) {
|
||||||
if (result && !result.error) {
|
|
||||||
|
} else if(result.error) {
|
||||||
} else if(result.error) {
|
var db_error_dialog = _.uniqueId("db_error_dialog");
|
||||||
var db_error_dialog = _.uniqueId("db_error_dialog");
|
$('<div>', {id: db_error_dialog}).dialog({
|
||||||
$('<div>', {id: db_error_dialog}).dialog({
|
modal: true,
|
||||||
modal: true,
|
title: result.title,
|
||||||
title: result.title,
|
buttons: {
|
||||||
buttons: {
|
Ok: function() {
|
||||||
Ok: function() {
|
$(this).dialog("close");
|
||||||
$(this).dialog("close");
|
}
|
||||||
}
|
}
|
||||||
}
|
}).html("<center style='padding-top: 15px; font-size: 15px'>" + result.error + "</center>");
|
||||||
}).html("<center style='padding-top: 15px; font-size: 15px'>" + result.error + "</center>");
|
}
|
||||||
}
|
});
|
||||||
});
|
});
|
||||||
});
|
|
||||||
},
|
},
|
||||||
|
|
||||||
do_db_drop: function() {
|
do_db_drop: function() {
|
||||||
var self = this;
|
var self = this;
|
||||||
self.db_string = "DROP DATABASE";
|
self.db_string = "DROP DATABASE";
|
||||||
self.$option_id.html(QWeb.render("DropDB", self));
|
self.$option_id.html(QWeb.render("DropDB", self));
|
||||||
|
|
||||||
$("form[name=drop_db_form]").validate();
|
$("form[name=drop_db_form]").validate();
|
||||||
|
|
||||||
self.$option_id.find('form[name=drop_db_form]').submit(function(ev) {
|
self.$option_id.find('form[name=drop_db_form]').submit(function(ev) {
|
||||||
ev.preventDefault();
|
ev.preventDefault();
|
||||||
|
|
||||||
var db = self.$option_id.find("select[name=drop_db]").val();
|
var db = self.$option_id.find("select[name=drop_db]").val();
|
||||||
var password = self.$option_id.find("input[name=drop_pwd]").val();
|
var password = self.$option_id.find("input[name=drop_pwd]").val();
|
||||||
|
|
||||||
if (confirm("Do you really want to delete the database: " + db + " ?")) {
|
if (confirm("Do you really want to delete the database: " + db + " ?")) {
|
||||||
self.rpc("/base/database/db_operation", {'flag': 'drop', 'db': db, 'password': password},
|
self.rpc("/base/database/drop_db", {'db': db, 'password': password},
|
||||||
function(result) {
|
function(result) {
|
||||||
if (result && ! result.error) {
|
if (result && ! result.error) {
|
||||||
self.$option_id.find("select[name=drop_db] :selected").remove();
|
self.$option_id.find("select[name=drop_db] :selected").remove();
|
||||||
self.notification.notify("Dropping database", "The database '" + db + "' has been dropped");
|
self.notification.notify("Dropping database", "The database '" + db + "' has been dropped");
|
||||||
} else if(result.error) {
|
} else if(result.error) {
|
||||||
var db_error_dialog = _.uniqueId("db_error_dialog");
|
var db_error_dialog = _.uniqueId("db_error_dialog");
|
||||||
$('<div>', {id: db_error_dialog}).dialog({
|
$('<div>', {id: db_error_dialog}).dialog({
|
||||||
modal: true,
|
modal: true,
|
||||||
title: result.title,
|
title: result.title,
|
||||||
buttons: {
|
buttons: {
|
||||||
Ok: function() {
|
Ok: function() {
|
||||||
$(this).dialog("close");
|
$(this).dialog("close");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}).html("<center style='padding-top: 15px; font-size: 15px'>" + result.error + "</center>");
|
}).html("<center style='padding-top: 15px; font-size: 15px'>" + result.error + "</center>");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
do_db_backup: function() {
|
do_db_backup: function() {
|
||||||
var self = this;
|
var self = this;
|
||||||
self.db_string = "BACKUP DATABASE";
|
self.db_string = "BACKUP DATABASE";
|
||||||
self.$option_id.html(QWeb.render("BackupDB", self));
|
self.$option_id.html(QWeb.render("BackupDB", self));
|
||||||
|
|
||||||
$("form[name=backup_db_form]").validate();
|
$("form[name=backup_db_form]").validate();
|
||||||
|
|
||||||
self.$option_id.find('form[name=backup_db_form]').submit(function(ev) {
|
self.$option_id.find('form[name=backup_db_form]').submit(function(ev) {
|
||||||
ev.preventDefault();
|
ev.preventDefault();
|
||||||
|
|
||||||
var db = self.$option_id.find("select[name=backup_db]").val();
|
var db = self.$option_id.find("select[name=backup_db]").val();
|
||||||
var password = self.$option_id.find("input[name=backup_pwd]").val();
|
var password = self.$option_id.find("input[name=backup_pwd]").val();
|
||||||
|
|
||||||
self.rpc("/base/database/db_operation", {'flag': 'backup', 'db': db, 'password': password},
|
self.rpc("/base/database/backup_db", {'db': db, 'password': password},
|
||||||
function(result) {
|
function(result) {
|
||||||
if (result && !result.error) {
|
if (result && !result.error) {
|
||||||
self.notification.notify("Backup Database", "Backup has been created for the database: '" + db + "'");
|
self.notification.notify("Backup Database", "Backup has been created for the database: '" + db + "'");
|
||||||
} else if(result.error) {
|
} else if(result.error) {
|
||||||
var db_error_dialog = _.uniqueId("db_error_dialog");
|
var db_error_dialog = _.uniqueId("db_error_dialog");
|
||||||
$('<div>', {id: db_error_dialog}).dialog({
|
$('<div>', {id: db_error_dialog}).dialog({
|
||||||
modal: true,
|
modal: true,
|
||||||
title: result.title,
|
title: result.title,
|
||||||
buttons: {
|
buttons: {
|
||||||
Ok: function() {
|
Ok: function() {
|
||||||
$(this).dialog("close");
|
$(this).dialog("close");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}).html("<center style='padding-top: 15px; font-size: 15px'>" + result.error + "</center>");
|
}).html("<center style='padding-top: 15px; font-size: 15px'>" + result.error + "</center>");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
do_db_restore: function() {
|
do_db_restore: function() {
|
||||||
var self = this;
|
var self = this;
|
||||||
self.db_string = "RESTORE DATABASE";
|
self.db_string = "RESTORE DATABASE";
|
||||||
self.$option_id.html(QWeb.render("RestoreDB", self));
|
self.$option_id.html(QWeb.render("RestoreDB", self));
|
||||||
|
|
||||||
$("form[name=restore_db_form]").validate();
|
$("form[name=restore_db_form]").validate();
|
||||||
|
|
||||||
self.$option_id.find('form[name=restore_db_form]').submit(function(ev) {
|
self.$option_id.find('form[name=restore_db_form]').submit(function(ev) {
|
||||||
ev.preventDefault();
|
ev.preventDefault();
|
||||||
|
|
||||||
var db = self.$option_id.find("input[name=restore_db]").val();
|
|
||||||
var password = self.$option_id.find("input[name=restore_pwd]").val();
|
|
||||||
var new_db = self.$option_id.find("input[name=new_db]").val();
|
|
||||||
|
|
||||||
self.rpc("/base/database/db_operation", {'flag': 'restore', 'db': db, 'password': password, 'new_db': new_db},
|
var db = self.$option_id.find("input[name=restore_db]").val();
|
||||||
function(result) {
|
var password = self.$option_id.find("input[name=restore_pwd]").val();
|
||||||
if (result && !result.error) {
|
var new_db = self.$option_id.find("input[name=new_db]").val();
|
||||||
self.notification.notify("Restore Database", "You restored your database as: '" + new_db + "'");
|
|
||||||
} else if(result.error) {
|
self.rpc("/base/database/restore_db", {'db': db, 'password': password, 'new_db': new_db},
|
||||||
var db_error_dialog = _.uniqueId("db_error_dialog");
|
function(result) {
|
||||||
$('<div>', {id: db_error_dialog}).dialog({
|
if (result && !result.error) {
|
||||||
modal: true,
|
self.notification.notify("Restore Database", "You restored your database as: '" + new_db + "'");
|
||||||
title: result.title,
|
} else if(result.error) {
|
||||||
buttons: {
|
var db_error_dialog = _.uniqueId("db_error_dialog");
|
||||||
Ok: function() {
|
$('<div>', {id: db_error_dialog}).dialog({
|
||||||
$(this).dialog("close");
|
modal: true,
|
||||||
}
|
title: result.title,
|
||||||
}
|
buttons: {
|
||||||
}).html("<center style='padding-top: 15px; font-size: 15px'>" + result.error + "</center>");
|
Ok: function() {
|
||||||
}
|
$(this).dialog("close");
|
||||||
});
|
}
|
||||||
|
}
|
||||||
|
}).html("<center style='padding-top: 15px; font-size: 15px'>" + result.error + "</center>");
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
do_change_password: function() {
|
do_change_password: function() {
|
||||||
var self = this;
|
var self = this;
|
||||||
self.db_string = "CHANGE DATABASE PASSWORD";
|
self.db_string = "CHANGE DATABASE PASSWORD";
|
||||||
self.$option_id.html(QWeb.render("Change_DB_Pwd", self));
|
self.$option_id.html(QWeb.render("Change_DB_Pwd", self));
|
||||||
|
|
||||||
$("form[name=change_pwd_form]").validate();
|
$("form[name=change_pwd_form]").validate();
|
||||||
|
|
||||||
$("input[name=old_pwd]").rules("add", {
|
$("input[name=old_pwd]").rules("add", {
|
||||||
minlength: 1,
|
minlength: 1,
|
||||||
messages: {
|
messages: {
|
||||||
required: "Please enter password !"
|
required: "Please enter password !"
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
$("input[name=new_pwd]").rules("add", {
|
$("input[name=new_pwd]").rules("add", {
|
||||||
minlength: 1,
|
minlength: 1,
|
||||||
messages: {
|
messages: {
|
||||||
required: "Please enter password !"
|
required: "Please enter password !"
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
$("input[name=confirm_pwd]").rules("add", {
|
$("input[name=confirm_pwd]").rules("add", {
|
||||||
equalTo: 'input[name=new_pwd]',
|
equalTo: 'input[name=new_pwd]',
|
||||||
messages: {
|
messages: {
|
||||||
required: "Password did not match !"
|
required: "Password did not match !"
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
$("input[name=old_pwd]").focus();
|
$("input[name=old_pwd]").focus();
|
||||||
|
|
||||||
self.$option_id.find('form[name=change_pwd_form]').submit(function(ev) {
|
self.$option_id.find('form[name=change_pwd_form]').submit(function(ev) {
|
||||||
ev.preventDefault();
|
ev.preventDefault();
|
||||||
|
|
||||||
var old_pwd = self.$option_id.find("input[name=old_pwd]").val();
|
var old_pwd = self.$option_id.find("input[name=old_pwd]").val();
|
||||||
var new_pwd = self.$option_id.find("input[name=new_pwd]").val();
|
var new_pwd = self.$option_id.find("input[name=new_pwd]").val();
|
||||||
var confirm_pwd = self.$option_id.find("input[name=confirm_pwd]").val();
|
var confirm_pwd = self.$option_id.find("input[name=confirm_pwd]").val();
|
||||||
|
|
||||||
self.rpc("/base/database/db_operation", {'flag': 'change_password', 'old_password': old_pwd, 'new_password': new_pwd, 'confirm_password': confirm_pwd},
|
self.rpc("/base/database/change_password_db", {'old_password': old_pwd, 'new_password': new_pwd, 'confirm_password': confirm_pwd},
|
||||||
function(result) {
|
function(result) {
|
||||||
if (result && !result.error) {
|
if (result && !result.error) {
|
||||||
self.notification.notify("Changed Password", "Password has been changed successfully");
|
self.notification.notify("Changed Password", "Password has been changed successfully");
|
||||||
} else if(result.error) {
|
} else if(result.error) {
|
||||||
var db_error_dialog = _.uniqueId("db_error_dialog");
|
var db_error_dialog = _.uniqueId("db_error_dialog");
|
||||||
$('<div>', {id: db_error_dialog}).dialog({
|
$('<div>', {id: db_error_dialog}).dialog({
|
||||||
modal: true,
|
modal: true,
|
||||||
title: result.title,
|
title: result.title,
|
||||||
buttons: {
|
buttons: {
|
||||||
Ok: function() {
|
Ok: function() {
|
||||||
$(this).dialog("close");
|
$(this).dialog("close");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}).html("<center style='padding-top: 15px; font-size: 15px'>" + result.error + "</center>");
|
}).html("<center style='padding-top: 15px; font-size: 15px'>" + result.error + "</center>");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
openerp.base.Login = openerp.base.Controller.extend({
|
openerp.base.Login = openerp.base.Controller.extend({
|
||||||
|
@ -984,8 +982,8 @@ openerp.base.Login = openerp.base.Controller.extend({
|
||||||
this.$element.closest(".openerp").addClass("login-mode");
|
this.$element.closest(".openerp").addClass("login-mode");
|
||||||
|
|
||||||
this.$element.find('#oe-db-config').click(function() {
|
this.$element.find('#oe-db-config').click(function() {
|
||||||
self.database = new openerp.base.Database(self, "oe_database", "oe_db_options");
|
self.database = new openerp.base.Database(self, "oe_database", "oe_db_options");
|
||||||
self.database.start();
|
self.database.start();
|
||||||
});
|
});
|
||||||
|
|
||||||
this.$element.find("form").submit(this.on_submit);
|
this.$element.find("form").submit(this.on_submit);
|
||||||
|
|
Loading…
Reference in New Issue