diff options
| author | Goffin Simon <simon.goffin@outlook.com> | 2014-12-16 13:40:23 +0100 |
|---|---|---|
| committer | Goffin Simon <simon.goffin@outlook.com> | 2015-01-07 18:17:13 +0100 |
| commit | 421a76dabb2e39116fbd93c0a3b7751f723ac8d6 (patch) | |
| tree | 32c419b21806cb182e948e01fc1281f5f4d60a59 /addons/website_version/static/src/js/edit_version.js | |
| parent | e5ac65de59f45f2d15ae6f6b840b02cac78afd03 (diff) | |
[ADD] Versioning Module.
Diffstat (limited to 'addons/website_version/static/src/js/edit_version.js')
| -rw-r--r-- | addons/website_version/static/src/js/edit_version.js | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/addons/website_version/static/src/js/edit_version.js b/addons/website_version/static/src/js/edit_version.js new file mode 100644 index 00000000000..61f88816c8a --- /dev/null +++ b/addons/website_version/static/src/js/edit_version.js @@ -0,0 +1,82 @@ +(function() { + 'use strict'; + var hash = "#advanced-view-editor"; + var _t = openerp._t; + + var website=openerp.website; + + website.action= {}; + + website.EditorBar.include({ + start: function() { + var self = this; + var m_names = new Array("jan", "feb", "mar", + "apr", "may", "jun", "jul", "aug", "sep", + "oct", "nov", "dec"); + this.$el.on('click', '#save_as_new_version', function() { + var d = new Date(); + var curr_date = d.getDate(); + var curr_month = d.getMonth(); + var curr_year = d.getFullYear(); + + website.prompt({ + id: "editor_new_version", + window_title: _t("New version"), + input: "Version name" , + default :(curr_date + " " + m_names[curr_month] + " " + curr_year), + }).then(function (name) { + var context = website.get_context(); + openerp.jsonRpc( '/website_version/create_version', 'call', { 'name': name, 'version_id': 0 }).then(function (result) { + $('html').data('version_id', result); + + var wizard = $(openerp.qweb.render("website_version.message",{message:_.str.sprintf("You are actually working on %s version.", name)})); + wizard.appendTo($('body')).modal({"keyboard" :true}); + wizard.on('click','.o_confirm', function(){ + self.save(); + }); + wizard.on('hidden.bs.modal', function () {$(this).remove();}); + }).fail(function(){ + var wizard = $(openerp.qweb.render("website_version.message",{message:_t("This name already exists.")})); + wizard.appendTo($('body')).modal({"keyboard" :true}); + wizard.on('hidden.bs.modal', function () {$(this).remove();}); + }); + + }); + + }); + this.$el.on('click', '#save_and_publish', function() { + var version_id = $('html').data('version_id'); + if(version_id) + { + self.save(); + } + else + { + var wizard = $(openerp.qweb.render("website_version.delete_message",{message:_t("Are you sure you want to publish your modifications.")})); + wizard.appendTo($('body')).modal({"keyboard" :true}); + wizard.on('click','.o_confirm', function(){ + self.save(); + }); + wizard.on('hidden.bs.modal', function () {$(this).remove();}); + } + + }); + + $('.option_choice').click(function() { + self.$el.find(".o_second_choice").remove(); + var name = $('#version-menu-button').data('version_name'); + if(name){ + self.$el.find(".o_first_choice").before(openerp.qweb.render("all_options", {version:'Save on '+name})); + } + else{ + self.$el.find(".o_first_choice").before(openerp.qweb.render("all_options", {version:'Save and Publish'})); + } + + }); + + return this._super(); + } + }); + + +})();
\ No newline at end of file |
