3
0
Fork 0

[12.0][MIG] web_view_calendar_list

13.0
Jaime Arroyo 2020-07-14 11:42:07 +02:00 committed by Enric Tobella
parent eb7b08a2d4
commit 8fc34245b6
5 changed files with 47 additions and 36 deletions

View File

@ -14,13 +14,13 @@ Web View Calendar List
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3 :alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github
:target: https://github.com/OCA/web/tree/11.0/web_view_calendar_list :target: https://github.com/OCA/web/tree/12.0/web_view_calendar_list
:alt: OCA/web :alt: OCA/web
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/web-11-0/web-11-0-web_view_calendar_list :target: https://translation.odoo-community.org/projects/web-12-0/web-12-0-web_view_calendar_list
:alt: Translate me on Weblate :alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/162/11.0 :target: https://runbot.odoo-community.org/runbot/162/12.0
:alt: Try me on Runbot :alt: Try me on Runbot
|badge1| |badge2| |badge3| |badge4| |badge5| |badge1| |badge2| |badge3| |badge4| |badge5|
@ -49,7 +49,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues <https://github.com/OCA/web/issues>`_. Bugs are tracked on `GitHub Issues <https://github.com/OCA/web/issues>`_.
In case of trouble, please check there if your issue has already been reported. In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed If you spotted it first, help us smashing it by providing a detailed and welcomed
`feedback <https://github.com/OCA/web/issues/new?body=module:%20web_view_calendar_list%0Aversion:%2011.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_. `feedback <https://github.com/OCA/web/issues/new?body=module:%20web_view_calendar_list%0Aversion:%2012.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
Do not contact contributors directly about support or help with technical issues. Do not contact contributors directly about support or help with technical issues.
@ -79,6 +79,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and mission is to support the collaborative development of Odoo features and
promote its widespread use. promote its widespread use.
This module is part of the `OCA/web <https://github.com/OCA/web/tree/11.0/web_view_calendar_list>`_ project on GitHub. This module is part of the `OCA/web <https://github.com/OCA/web/tree/12.0/web_view_calendar_list>`_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

View File

@ -5,7 +5,7 @@
'name': 'Web View Calendar List', 'name': 'Web View Calendar List',
'summary': """ 'summary': """
Show calendars as a List""", Show calendars as a List""",
'version': '11.0.1.0.0', 'version': '12.0.1.0.0',
'license': 'AGPL-3', 'license': 'AGPL-3',
'author': 'Creu Blanca,Odoo Community Association (OCA)', 'author': 'Creu Blanca,Odoo Community Association (OCA)',
'website': 'https://github.com/OCA/web', 'website': 'https://github.com/OCA/web',

View File

@ -367,7 +367,7 @@ ul.auto-toc {
!! This file is generated by oca-gen-addon-readme !! !! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !! !! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/web/tree/11.0/web_view_calendar_list"><img alt="OCA/web" src="https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/web-11-0/web-11-0-web_view_calendar_list"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/162/11.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p> <p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/web/tree/12.0/web_view_calendar_list"><img alt="OCA/web" src="https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/web-12-0/web-12-0-web_view_calendar_list"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/162/12.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
<p>This module adds a new view type that can be used to show calendars as lists.</p> <p>This module adds a new view type that can be used to show calendars as lists.</p>
<p><strong>Table of contents</strong></p> <p><strong>Table of contents</strong></p>
<div class="contents local topic" id="contents"> <div class="contents local topic" id="contents">
@ -398,7 +398,7 @@ It has the same options than calendar:</p>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/web/issues">GitHub Issues</a>. <p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/web/issues">GitHub Issues</a>.
In case of trouble, please check there if your issue has already been reported. In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed If you spotted it first, help us smashing it by providing a detailed and welcomed
<a class="reference external" href="https://github.com/OCA/web/issues/new?body=module:%20web_view_calendar_list%0Aversion:%2011.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p> <a class="reference external" href="https://github.com/OCA/web/issues/new?body=module:%20web_view_calendar_list%0Aversion:%2012.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p> <p>Do not contact contributors directly about support or help with technical issues.</p>
</div> </div>
<div class="section" id="credits"> <div class="section" id="credits">
@ -422,7 +422,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose <p>OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and mission is to support the collaborative development of Odoo features and
promote its widespread use.</p> promote its widespread use.</p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/web/tree/11.0/web_view_calendar_list">OCA/web</a> project on GitHub.</p> <p>This module is part of the <a class="reference external" href="https://github.com/OCA/web/tree/12.0/web_view_calendar_list">OCA/web</a> project on GitHub.</p>
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p> <p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
</div> </div>
</div> </div>

View File

@ -15,15 +15,15 @@ odoo.define('web_view_calendar_list.CalendarListModel', function (require) {
the_title = '', the_title = '',
attendees = []; attendees = [];
if (!all_day) { if (all_day) {
date_start = evt[this.mapping.date_start].clone();
date_stop = this.mapping.date_stop ? evt[
this.mapping.date_stop].clone() : null;
} else {
date_start = evt[this.mapping.date_start].clone().startOf( date_start = evt[this.mapping.date_start].clone().startOf(
'day'); 'day');
date_stop = this.mapping.date_stop ? evt[ date_stop = this.mapping.date_stop ? evt[
this.mapping.date_stop].clone().startOf('day') : null; this.mapping.date_stop].clone().startOf('day') : null;
} else {
date_start = evt[this.mapping.date_start].clone();
date_stop = this.mapping.date_stop ? evt[
this.mapping.date_stop].clone() : null;
} }
if (!date_stop && date_delay) { if (!date_stop && date_delay) {

View File

@ -2,15 +2,13 @@ odoo.define('web_view_calendar_list.CalendarListRenderer', function (require) {
"use strict"; "use strict";
var CalendarRenderer = require('web.CalendarRenderer'); var CalendarRenderer = require('web.CalendarRenderer');
var session = require('web.session');
var core = require('web.core'); var core = require('web.core');
var qweb = core.qweb;
var _t = core._t; var _t = core._t;
var scales = { var scales = {
day: 'listDay', day: 'listDay',
week: 'listWeek', week: 'listWeek',
month: 'listMonth' month: 'listMonth',
}; };
var AppointmentRenderer= CalendarRenderer.extend({ var AppointmentRenderer= CalendarRenderer.extend({
@ -24,7 +22,7 @@ odoo.define('web_view_calendar_list.CalendarListRenderer', function (require) {
var locale = moment.locale(); var locale = moment.locale();
$.fullCalendar.locale(locale); $.fullCalendar.locale(locale);
//Documentation here : http://arshaw.com/fullcalendar/docs/ // Documentation here : http://arshaw.com/fullcalendar/docs/
var fc_options = $.extend({}, this.state.fc_options, { var fc_options = $.extend({}, this.state.fc_options, {
eventDrop: function (event) { eventDrop: function (event) {
self.trigger_up('dropRecord', event); self.trigger_up('dropRecord', event);
@ -53,8 +51,14 @@ odoo.define('web_view_calendar_list.CalendarListRenderer', function (require) {
if (!event.allDay) { if (!event.allDay) {
var start = event.r_start || event.start; var start = event.r_start || event.start;
var end = event.r_end || event.end; var end = event.r_end || event.end;
var timeFormat = _t.database.parameters.time_format.search("%H") != -1 ? 'HH:mm': 'h:mma'; var timeFormat = (
display_hour = start.format(timeFormat) + ' - ' + end.format(timeFormat); _t.database.parameters.time_format.search(
"%H"
) != -1 ? 'HH:mm': 'h:mma'
);
display_hour = start.format(
timeFormat
) + ' - ' + end.format(timeFormat);
if (display_hour === '00:00 - 00:00') { if (display_hour === '00:00 - 00:00') {
display_hour = _t('All day'); display_hour = _t('All day');
} }
@ -66,10 +70,13 @@ odoo.define('web_view_calendar_list.CalendarListRenderer', function (require) {
$(window).trigger('resize'); $(window).trigger('resize');
}, },
viewRender: function (view) { viewRender: function (view) {
// compute mode from view.name which is either 'month', 'agendaWeek' or 'agendaDay' // Compute mode from view.name which is either 'month',
// 'agendaWeek' or 'agendaDay'
var mode = view.name === 'listMonth' ? 'month' : (view.name === 'listWeek' ? 'week' : 'day'); var mode = view.name === 'listMonth' ? 'month' : (view.name === 'listWeek' ? 'week' : 'day');
// compute title: in week mode, display the week number // Compute title: in week mode, display the week number
var title = mode === 'week' ? view.intervalStart.week() : view.title; var title = mode === 'week' ? _t(
'Week '
) + view.intervalStart.week() : view.title;
self.trigger_up('viewUpdated', { self.trigger_up('viewUpdated', {
mode: mode, mode: mode,
title: title, title: title,
@ -78,7 +85,9 @@ odoo.define('web_view_calendar_list.CalendarListRenderer', function (require) {
height: 'parent', height: 'parent',
unselectAuto: false, unselectAuto: false,
locale: locale, locale: locale,
// reset locale when fullcalendar has already been instanciated before now /* Reset locale when fullcalendar has already been
instanciated before now
*/
}); });
this.$calendar.fullCalendar(fc_options); this.$calendar.fullCalendar(fc_options);
@ -97,7 +106,9 @@ odoo.define('web_view_calendar_list.CalendarListRenderer', function (require) {
$fc_view.scrollLeft(0); $fc_view.scrollLeft(0);
$calendar.fullCalendar('unselect'); $calendar.fullCalendar('unselect');
if (scales[this.state.scale] !== $calendar.data('fullCalendar').getView().type) { if (scales[this.state.scale] !== $calendar.data(
'fullCalendar'
).getView().type) {
$calendar.fullCalendar('changeView', scales[this.state.scale]); $calendar.fullCalendar('changeView', scales[this.state.scale]);
} }
@ -136,7 +147,7 @@ odoo.define('web_view_calendar_list.CalendarListRenderer', function (require) {
.toggleClass('fa-chevron-left', fullWidth) .toggleClass('fa-chevron-left', fullWidth)
.attr( .attr(
'title', 'title',
!fullWidth ? _('Close Sidebar') : _('Open Sidebar')); fullWidth ? _('Open Sidebar') : _('Close Sidebar'));
this.$sidebar_container.toggleClass('o_sidebar_hidden', fullWidth); this.$sidebar_container.toggleClass('o_sidebar_hidden', fullWidth);
this.$sidebar.toggleClass('o_hidden', fullWidth); this.$sidebar.toggleClass('o_hidden', fullWidth);