diff --git a/addons/event/data/event_demo.xml b/addons/event/data/event_demo.xml index 2563053c959..5cdf2ca9ee3 100644 --- a/addons/event/data/event_demo.xml +++ b/addons/event/data/event_demo.xml @@ -28,45 +28,66 @@ Age + 3 - Activity + 1 + + + Type + 2 5-10 + 1 10-14 + 2 15-18 + 3 18+ + 4 Culture + 10 - Music + 11 + + + + Sport + 12 - - Sport - + + Online + 20 + + + + Conference + 21 + @@ -81,8 +102,7 @@ US/Pacific - - + Free @@ -118,7 +138,7 @@ blocked - + @@ -172,8 +192,7 @@ True 200 - - + Standard @@ -209,8 +228,7 @@ - - + Standard @@ -251,8 +269,7 @@ done - - + General Admission @@ -277,7 +294,7 @@ - + @@ -289,5 +306,40 @@ + + OpenWood Collection Online Reveal + Europe/Brussels + + + + + + + + +
+
The finest OpenWood furnitures are coming to your house in a brand new collection
+

And this time, we go fully ONLINE! Meet us in our live streams from the confort of your house.
+ Special discount codes will be handed out during the various streams, make sure to be there on time.

+

For any additional information, please contact us at events@idea.com.

+
+

This event is fully online and FREE, if you have paid for tickets, you should get a refund.
+ It will require a good Internet connection to get the best video quality.

+
+
+
+
+ + Standard + + + + + VIP + + + 10 + + diff --git a/addons/event/data/event_registration_demo.xml b/addons/event/data/event_registration_demo.xml index 8f1d57c927f..632702c1a26 100644 --- a/addons/event/data/event_registration_demo.xml +++ b/addons/event/data/event_registration_demo.xml @@ -125,6 +125,28 @@ + + + + + + + + + + + + + + + + + + + + + + - - + - + Reno Airfield 1 @@ -32,5 +31,30 @@ - - + + + Bloem GmbH + + Behrenstraße 55 + 10117 + Berlin + + +49 30 12345678 + +49 30 87654321 + flower@example.com + www.flower.example.com + + + OpenWood + + Orval 1 + 6823 + Florenville + + +32 987 65 43 21 + +32 987 65 43 21 + wow@example.com + www.openwood.example.com + + + diff --git a/addons/event/models/event_event.py b/addons/event/models/event_event.py index 1e75775d411..175e9d3f7a0 100644 --- a/addons/event/models/event_event.py +++ b/addons/event/models/event_event.py @@ -376,7 +376,8 @@ class EventEvent(models.Model): event.seats_limited = event.event_type_id.has_seats_limitation event.auto_confirm = event.event_type_id.auto_confirm - event.tag_ids = event.event_type_id.tag_ids + if not event.tag_ids and event.event_type_id.tag_ids: + event.tag_ids = event.event_type_id.tag_ids @api.depends('event_type_id') def _compute_event_mail_ids(self): @@ -482,6 +483,7 @@ class EventEvent(models.Model): res = super(EventEvent, self).create(vals) if res.organizer_id: res.message_subscribe([res.organizer_id.id]) + res.flush() return res def write(self, vals): diff --git a/addons/website_event/data/event_demo.xml b/addons/website_event/data/event_demo.xml index 6cdb14702a7..5ccb5ea98c5 100644 --- a/addons/website_event/data/event_demo.xml +++ b/addons/website_event/data/event_demo.xml @@ -148,6 +148,27 @@ {"background-image": "none", "background-color": "secondary", "opacity": ""} + + True + True + Our newest collection will be revealed online! Interact with us on our live streams! + {"background-image": "url('/website_event/static/src/img/event_cover_7.jpg')", "resize_class": "o_record_has_cover o_half_screen_height", "opacity": "0.4"} + +
+
The finest OpenWood furnitures are coming to your house in a brand new collection
+

+ And this time, we go fully ONLINE! Meet us in our live streams from the confort of your house.
+ Special discount codes will be handed out during the various streams, make sure to be there on time. +

+

For any additional information, please contact us at events@penwood.example.com.

+
+

This event is fully online and FREE, if you have paid for tickets, you should get a refund.
+ It will require a good Internet connection to get the best video quality.

+
+
+
+
+ True diff --git a/addons/website_event/static/src/img/event_cover_7.jpg b/addons/website_event/static/src/img/event_cover_7.jpg new file mode 100644 index 00000000000..9914bdf23a0 Binary files /dev/null and b/addons/website_event/static/src/img/event_cover_7.jpg differ diff --git a/addons/website_event/static/src/js/website_event_set_customize_options.js b/addons/website_event/static/src/js/website_event_set_customize_options.js index 4b593fcefcc..a6d9f749152 100644 --- a/addons/website_event/static/src/js/website_event_set_customize_options.js +++ b/addons/website_event/static/src/js/website_event_set_customize_options.js @@ -21,24 +21,64 @@ var EventSpecificOptions = publicWidget.Widget.extend({ this._initCheckbox(); }, - _initCheckbox: function () { - this._rpc({ - model: this.modelName, - method: 'read', - args: [[this.eventId], ['website_menu', 'website_url']], - }).then((data) => { - if (data[0]['website_menu']) { - this.$submenuInput.attr('checked', 'checked'); - } - this.eventUrl = data[0]['website_url']; - }); - }, + //-------------------------------------------------------------------------- + // Handlers + //-------------------------------------------------------------------------- _onDisplaySubmenuChange: function (ev) { var checkboxValue = this.$submenuInput.is(':checked'); this._toggleSubmenuDisplay(checkboxValue); }, + //-------------------------------------------------------------------------- + // Private + //-------------------------------------------------------------------------- + + _getCheckboxFields: function () { + return ['website_menu', 'website_url']; + }, + + _getCheckboxFieldMatch: function (checkboxField) { + if (checkboxField === 'website_menu') { + return this.$submenuInput; + } + }, + + _getEventObject: function() { + var repr = $('html').data('main-object'); + var m = repr.match(/(.+)\((\d+),(.*)\)/); + return { + model: m[1], + id: m[2] | 0, + }; + }, + + _initCheckbox: function () { + var self = this; + this._rpc({ + model: this.modelName, + method: 'read', + args: [ + [this.eventId], + this._getCheckboxFields() + ], + }).then((data) => { + self._initCheckboxCallback(data); + }); + }, + + _initCheckboxCallback: function (rpcData) { + if (rpcData[0]['website_menu']) { + var submenuInput = this._getCheckboxFieldMatch('website_menu'); + submenuInput.attr('checked', 'checked'); + } + this.eventUrl = rpcData[0]['website_url']; + }, + + _reloadEventPage: function () { + window.location = this.eventUrl; + }, + _toggleSubmenuDisplay: function (val) { var self = this; this._rpc({ @@ -50,19 +90,6 @@ var EventSpecificOptions = publicWidget.Widget.extend({ }); }, - _reloadEventPage: function () { - window.location = this.eventUrl; - }, - - _getEventObject: function() { - var repr = $('html').data('main-object'); - var m = repr.match(/(.+)\((\d+),(.*)\)/); - return { - model: m[1], - id: m[2] | 0, - }; - } - }); CustomizeMenu.include({ diff --git a/addons/website_event_track/__manifest__.py b/addons/website_event_track/__manifest__.py index 9a94f6d4f52..00b2d1ed275 100644 --- a/addons/website_event_track/__manifest__.py +++ b/addons/website_event_track/__manifest__.py @@ -20,6 +20,9 @@ 'views/website_event_menu_views.xml', ], 'demo': [ + 'data/res_partner_demo.xml', 'data/event_demo.xml', + 'data/event_track_demo.xml', + 'data/event_track_demo_description.xml', ], } diff --git a/addons/website_event_track/data/event_demo.xml b/addons/website_event_track/data/event_demo.xml index 6ea81d627d9..c22aa790099 100644 --- a/addons/website_event_track/data/event_demo.xml +++ b/addons/website_event_track/data/event_demo.xml @@ -1,28 +1,40 @@ - - - Technical - - - Business - - - Lightning Talks - - - Round Table - - True True True + + True + True + True + - + + Consumers + 1 + + + Sales + 2 + + + Research + 3 + + + Lightning Talks + 4 + + + Round Tables + 5 + + + Keynote + 6 + @@ -30,20 +42,17 @@ http://odoo.com - http://odoo.com - - @@ -51,21 +60,41 @@ http://odoo.com - - - http://facebook.com/odoo - -

- Ayaan has in the IT sector since 20 years. He - develops software to help develop websites. He sold his - first company at 30 years old and manage to grow OpenCorp - from 1 to 55 employees mostly by reselling services on - Odoo. -

- Ayaan is the author of several books, including Amazon best seller - "How Odoo will change the business world!". -

-
+ + + + + http://www.wood-corner.example.com + + + + + + http://www.flower.example.com + + + + + + http://www.gemini-furniture.example.com + + + + + + http://www.ready-mat.example.com + + + + + + http://www.the-jackson-group.example.com + + + + + + http://www.openwood.example.com @@ -86,330 +115,15 @@ Bruyère - - How to design a new piece of furniture - - - - - - - - blocked - + + + Trees - - How to integrate hardware materials in your pieces of furniture - - - - - - - - done - + + Furniture - - Portfolio presentation - - - - - - - - - - - How to develop automated processes - - - - - - - - - - - The new way to promote your creations - - - - - - - - - - - Detailed roadmap of our new products - - - - - - - - - - - A technical explanation of how to use computer design apps - - - - - - - - - - - How to optimize your sales, from leads to sales orders - - - - - - - - blocked - - - - How to improve your quality processes - - - - - - - - - - - - Raising qualitive insights from your customers - - - - - - - - - - Discover our new design team - - - - - - - - - - - Latest trends - - - - - - - - - - - Advanced reporting - - - - - - - - - - - Partnership programs - - - - - - - - - - - How to communicate with your community - - - - - - - - - - - How to follow us on the social media - - - - - - - - - - - The new marketing strategy - - - - - - - - - - - How to build your marketing strategy within a competitive environment - - - - - - - - - - - Advanced lead management : tips and tricks from the fields - - - - - - - - - - - New Certification Program - - - - - - - - - - - House of World Cultures - - - - - - - - - - Minimal but efficient design - - - - - - - - - - - Key Success factors selling our furniture - - - - - - - - - - - Design contest (entire day) - - - - - - - - - - - Design contest (entire afternoon) - - - - - - - - - - - My Company global presentation - - - - - - - - - - Status & Strategy - - - - - - - - - - The new marketing strategy - - - - - - - - - - Morning break - - - - - - - - - Lunch - - - - - - + + HowTo
diff --git a/addons/website_event_track/data/event_track_demo.xml b/addons/website_event_track/data/event_track_demo.xml new file mode 100644 index 00000000000..8c610ea5b10 --- /dev/null +++ b/addons/website_event_track/data/event_track_demo.xml @@ -0,0 +1,463 @@ + + + + How to design a new piece of furniture + + + + + + + + blocked + + + + How to integrate hardware materials in your pieces of furniture + + + + + + + + done + + + + Portfolio presentation + + + + + + + + + + + How to develop automated processes + + + + + + + + + + + The new way to promote your creations + + + + + + + + + + + Detailed roadmap of our new products + + + + + + + + + + + A technical explanation of how to use computer design apps + + + + + + + + + + + How to optimize your sales, from leads to sales orders + + + + + + + + blocked + + + + How to improve your quality processes + + + + + + + + + + + + Raising qualitive insights from your customers + + + + + + + + + + Discover our new design team + + + + + + + + + + + Latest trends + + + + + + + + + + + Advanced reporting + + + + + + + + + + + Partnership programs + + + + + + + + + + + How to communicate with your community + + + + + + + + + + + How to follow us on the social media + + + + + + + + + + + The new marketing strategy + + + + + + + + + + + How to build your marketing strategy within a competitive environment + + + + + + + + + + + Advanced lead management : tips and tricks from the fields + + + + + + + + + + + New Certification Program + + + + + + + + + + + House of World Cultures + + + + + + + + + + Minimal but efficient design + + + + + + + + + + + Key Success factors selling our furniture + + + + + + + + + + + Design contest (entire day) + + + + + + + + + + + Design contest (entire afternoon) + + + + + + + + + + + My Company global presentation + + + + + + + + + + Status & Strategy + + + + + + + + + + The new marketing strategy + + + + + + + + + + Morning break + + + + + + + + + Lunch + + + + + + + + + + + What This Event Is All About + + + + + + 2 + + + + + Securing your furniture – what you need to know + + + + + + + 2 + + + + + Meet our new food containers + + + + + + + 1.5 + + + + + Home visit: the joy of minimalist living + + + + + + + 3 + + + + + Life at Home Around the World: William’s Story + + + + + + + 2 + + + + + First Day Wrapup + + + + + + 1 + + + + + Welcome to Day 2 + + + + + + 1.5 + + + + + Facts and figures: climate positive + + + + + + + 3 + + + + + Pretty. Ugly. Lovely. + + + + + + + 2 + + + + + Event Wrapup + + + + + + 2 + + + + + diff --git a/addons/website_event_track/data/event_track_demo_description.xml b/addons/website_event_track/data/event_track_demo_description.xml new file mode 100644 index 00000000000..86e5528bed8 --- /dev/null +++ b/addons/website_event_track/data/event_track_demo_description.xml @@ -0,0 +1,15 @@ + + + + + +

A summary of know-how: how and what. All the basics for this course about gardening.

+
+
+ + +

A summary of know-how: how and what. All the basics for this course about gardening.

+
+
+ +
diff --git a/addons/website_event_track/data/res_partner_demo.xml b/addons/website_event_track/data/res_partner_demo.xml new file mode 100644 index 00000000000..e1325703306 --- /dev/null +++ b/addons/website_event_track/data/res_partner_demo.xml @@ -0,0 +1,41 @@ + + + + + http://azure.example.com + +

+ Brandon works in IT sector since 10 years. He is known + notably for selling mouse traps. With that trick he cut + IT budget by almost half within the last 2 years. +

+
+
+ + + http://azure.example.com + +

+ Nicole works in IT sector since 20 years. She + develops software to help develop websites. She sold her + first company at 30 years old and manage to grow Azure Interior + from 1 to 55 employees mostly by reselling services on + Odoo. +

+ Nicole is author of several books, including Amazon best seller + "How Azure and Odoo will change the business world!". +

+
+
+ + + http://azure.example.com + +

+ Brandon works in IT sector since 10 years. He is known + notably for selling mouse traps. With that trick he cut + IT budget by almost half within the last 2 years. +

+
+
+
diff --git a/addons/website_event_track/static/src/js/website_event_track_set_customize_options.js b/addons/website_event_track/static/src/js/website_event_track_set_customize_options.js index 5f09478211e..c193b16b0c6 100644 --- a/addons/website_event_track/static/src/js/website_event_track_set_customize_options.js +++ b/addons/website_event_track/static/src/js/website_event_track_set_customize_options.js @@ -20,33 +20,53 @@ EventSpecificOptions.include({ this._super.apply(this, arguments); }, - _initCheckbox: function () { - this._rpc({ - model: this.modelName, - method: 'read', - args: [[this.eventId], ['website_menu', 'website_url', 'website_track', 'website_track_proposal']], - }).then((data) => { - if (data[0]['website_track']) { - this.$displayTalksInput.attr('checked', 'checked'); - } - if (data[0]['website_track_proposal']) { - this.$allowTalksInput.attr('checked', 'checked'); - } - if (data[0]['website_menu']) { - this.$submenuInput.attr('checked', 'checked'); - } else { - this.$displayTalksInput.closest('a').addClass('d-none'); - this.$allowTalksInput.closest('a').addClass('d-none'); - } - this.eventUrl = data[0]['website_url']; - }); - }, + //-------------------------------------------------------------------------- + // Handlers + //-------------------------------------------------------------------------- _onAllowTalkProposalChange: function () { var checkboxValue = this.$allowTalksInput.is(':checked'); this._toggleTalkProposal(checkboxValue); }, + _onDisplayTalksChange: function () { + var checkboxValue = this.$displayTalksInput.is(':checked'); + this._toggleDisplayTalks(checkboxValue); + }, + + //-------------------------------------------------------------------------- + // Private + //-------------------------------------------------------------------------- + + _getCheckboxFields: function () { + var fields = this._super(); + fields = _.union(fields, ['website_track', 'website_track_proposal']); + return fields; + }, + + _getCheckboxFieldMatch: function (checkboxField) { + if (checkboxField === 'website_track') { + return this.$displayTalksInput; + } + if (checkboxField === 'website_track_proposal') { + return this.$allowTalksInput; + } + return this._super(checkboxField); + }, + + _initCheckboxCallback: function (rpcData) { + this._super(rpcData); + var submenuInput; + if (rpcData[0]['website_track']) { + submenuInput = this._getCheckboxFieldMatch('website_track'); + submenuInput.attr('checked', 'checked'); + } + if (rpcData[0]['website_track_proposal']) { + submenuInput = this._getCheckboxFieldMatch('website_track_proposal'); + submenuInput.attr('checked', 'checked'); + } + }, + _toggleTalkProposal: function (val) { var self = this; this._rpc({ @@ -58,11 +78,6 @@ EventSpecificOptions.include({ }); }, - _onDisplayTalksChange: function () { - var checkboxValue = this.$displayTalksInput.is(':checked'); - this._toggleDisplayTalks(checkboxValue); - }, - _toggleDisplayTalks: function (val) { var self = this; this._rpc({