[IMP] Improvement for database structure.

bzr revid: noz@tinyerp.com-20110629061755-3vhoal42as4y2jts
This commit is contained in:
noz (OpenERP)
2011-06-29 11:47:55 +05:30
parent 43621f6ced
commit 4e6655c1cb
3 changed files with 101 additions and 30 deletions
+33 -2
View File
@@ -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%;
+40 -10
View File
@@ -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();
+28 -18
View File
@@ -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%;">&amp;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%;">&amp;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>