[IMP] Improvement for database structure.
bzr revid: noz@tinyerp.com-20110629061755-3vhoal42as4y2jts
This commit is contained in:
@@ -32,7 +32,8 @@ body.openerp {
|
||||
}
|
||||
|
||||
/* STATES */
|
||||
.openerp .on_logged {
|
||||
.openerp .on_logged,
|
||||
.openerp .db_options_row {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@@ -135,10 +136,40 @@ body.openerp {
|
||||
}
|
||||
.openerp.login-mode .menu,
|
||||
.openerp.login-mode .secondary_menu,
|
||||
.openerp.login-mode .oe-application {
|
||||
.openerp.login-mode .oe-application,
|
||||
.openerp.login-mode .db_options_row {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.openerp.database_block .db_options_row {
|
||||
height: 100%;
|
||||
display: table-row;
|
||||
}
|
||||
|
||||
.openerp.database_block .menu,
|
||||
.openerp.database_block .secondary_menu,
|
||||
.openerp.database_block .oe-application,
|
||||
.openerp.database_block .login-container {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.db_container {
|
||||
width: 20%;
|
||||
}
|
||||
|
||||
ul.db_options li {
|
||||
cursor: pointer;
|
||||
font-weight: bold;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.option_string {
|
||||
font-weight: bold;
|
||||
color: #555;
|
||||
width: 100%;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
/* Main*/
|
||||
.openerp .main_table {
|
||||
width: 100%;
|
||||
|
||||
@@ -877,9 +877,36 @@ openerp.base.Loading = openerp.base.Controller.extend({
|
||||
});
|
||||
|
||||
openerp.base.Database = openerp.base.Controller.extend({
|
||||
init: function(session, element_id, option_id) {
|
||||
this._super(session, element_id);
|
||||
this.option_id = option_id;
|
||||
this.$option_id = $('#' + option_id);
|
||||
},
|
||||
start: function() {
|
||||
this.$element.html(QWeb.render("Database", this));
|
||||
|
||||
this.$element.closest(".openerp").removeClass("login-mode");
|
||||
this.$element.closest(".openerp").addClass("database_block");
|
||||
|
||||
var self = this;
|
||||
|
||||
this.$element.find('#db-create').click(function() {
|
||||
self.db_string = "CREATE DATABASE";
|
||||
self.$option_id.html(QWeb.render("CreateDB", self));
|
||||
});
|
||||
self.$element.find('#db-drop').click();
|
||||
self.$element.find('#db-backup').click();
|
||||
self.$element.find('#db-restore').click();
|
||||
self.$element.find('#db-change-password').click();
|
||||
|
||||
self.$element.find('#back-to-login').click(function() {
|
||||
self.header = new openerp.base.Header(self.session, "oe_header");
|
||||
self.header.on_logout();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
openerp.base.Login = openerp.base.Controller.extend({
|
||||
openerp.base.Login = openerp.base.Controller.extend({
|
||||
init: function(session, element_id) {
|
||||
this._super(session, element_id);
|
||||
this.has_local_storage = typeof(localStorage) != 'undefined';
|
||||
@@ -905,9 +932,19 @@ openerp.base.Login = openerp.base.Controller.extend({
|
||||
});
|
||||
},
|
||||
display: function() {
|
||||
var self = this;
|
||||
|
||||
this.$element.html(QWeb.render("Login", this));
|
||||
|
||||
this.$element.closest(".openerp").removeClass("database_block");
|
||||
this.$element.closest(".openerp").addClass("login-mode");
|
||||
|
||||
this.$element.find('#oe-db-config').click(function() {
|
||||
self.database = new openerp.base.Database(self.session, "oe_database", "oe_db_options");
|
||||
self.database.start();
|
||||
});
|
||||
|
||||
this.$element.find("form").submit(this.on_submit);
|
||||
this.$element.find('#oe-db-config').click(this.do_db_config);
|
||||
},
|
||||
on_login_invalid: function() {
|
||||
this.$element.closest(".openerp").addClass("login-mode");
|
||||
@@ -959,13 +996,6 @@ openerp.base.Login = openerp.base.Controller.extend({
|
||||
},
|
||||
on_logout: function() {
|
||||
this.session.logout();
|
||||
},
|
||||
do_db_config: function() {
|
||||
this.$element.html(QWeb.render("Database", this));
|
||||
this.$element.find('#back-to-login').click(function() {
|
||||
this.header = new openerp.base.Header(this.session, "oe_header");
|
||||
this.header.on_logout();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
@@ -981,7 +1011,6 @@ openerp.base.Header = openerp.base.Controller.extend({
|
||||
this.$element.find(".logout").click(this.on_logout);
|
||||
},
|
||||
on_logout: function() {
|
||||
this.session = new openerp.base.Session("oe_errors");
|
||||
this.login = new openerp.base.Login(this.session, "oe_login");
|
||||
this.login.start();
|
||||
}
|
||||
@@ -1108,6 +1137,7 @@ openerp.base.WebClient = openerp.base.Controller.extend({
|
||||
|
||||
this.menu = new openerp.base.Menu(this.session, "oe_menu", "oe_secondary_menu");
|
||||
this.menu.on_action.add(this.on_menu_action);
|
||||
|
||||
},
|
||||
start: function() {
|
||||
this.session.start();
|
||||
|
||||
@@ -19,23 +19,31 @@
|
||||
</div>
|
||||
<table border="0" cellpadding="0" cellspacing="0" width="100%" height="100%" class="main_table">
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<td colspan="2" valign="top">
|
||||
<div id="oe_header" class="header"></div>
|
||||
<div id="oe_menu" class="menu"></div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" id="oe_secondary_menu" class="secondary_menu">
|
||||
<td valign="top" class="login-container" colspan="2">
|
||||
<div id="oe_login" class="login"></div>
|
||||
</td>
|
||||
<td valign="top" >
|
||||
<div id="oe_app" class="oe-application">
|
||||
<div style="width:100%;">&nbsp;</div>
|
||||
</div>
|
||||
</tr>
|
||||
<tr class="db_options_row">
|
||||
<td valign="top" class="db_container">
|
||||
<div id="oe_database" class="database"></div>
|
||||
</td>
|
||||
<td valign="top">
|
||||
<div id="oe_db_options"></div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top" class="login-container" colspan="2">
|
||||
<div id="oe_login" class="login"></div>
|
||||
<td valign="top" id="oe_secondary_menu" class="secondary_menu">
|
||||
</td>
|
||||
<td valign="top">
|
||||
<div id="oe_app" class="oe-application">
|
||||
<div style="width:100%;">&nbsp;</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -51,21 +59,23 @@
|
||||
Loading...
|
||||
</t>
|
||||
<t t-name="Database">
|
||||
<ul class="db_options">
|
||||
<li id="db-create">Create</li>
|
||||
<li id="db-drop">Drop</li>
|
||||
<li id="db-backup">Backup</li>
|
||||
<li id="db-restore">Restore</li>
|
||||
<li id="db-change-password">Password</li>
|
||||
<li id="back-to-login">Back to Login</li>
|
||||
</ul>
|
||||
</t>
|
||||
<t t-name="CreateDB">
|
||||
<table align="center" width="100%">
|
||||
<tr>
|
||||
<td>
|
||||
<img src="/base/static/src/img/db.png" alt="" />
|
||||
</td>
|
||||
<td style="font-weight: bold; color: #555;">
|
||||
CREATE DATABASE
|
||||
</td>
|
||||
<td align="right" width="85%">
|
||||
<button type="button" id="back-to-login">Login</button>
|
||||
<button type="button" id="db-create">Create</button>
|
||||
<button type="button" id="db-drop">Drop</button>
|
||||
<button type="button" id="db-backup">Backup</button>
|
||||
<button type="button" id="db-restore">Restore</button>
|
||||
<button type="button" id="db-change-password">Password</button>
|
||||
<td class="option_string">
|
||||
<t t-esc="db_string"/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
Reference in New Issue
Block a user