Skip to content
GitLab
Explorer
Connexion
Navigation principale
Rechercher ou aller à…
Projet
B
bluemind4-connector
Gestion
Activité
Membres
Labels
Programmation
Tickets
Tableaux des tickets
Jalons
Code
Requêtes de fusion
Dépôt
Branches
Validations
Étiquettes
Graphe du dépôt
Comparer les révisions
Analyse
Données d'analyse des chaînes de valeur
Analyse des contributeurs
Données d'analyse du dépôt
Aide
Aide
Support
Documentation de GitLab
Comparer les forfaits GitLab
Forum de la communauté GitLab
Contribuer à GitLab
Donner votre avis
Raccourcis clavier
?
Extraits de code
Groupes
Projets
Afficher davantage de fils d'Ariane
Le Filament
bluemind4-connector
Comparer les révisions
702c5c2261fb0b0f6c5eda9357a4c87a40060182 to 02a17cc9dbfb77178b6d3fcec608f2c210a8af2d
Comparer les révisions
Les modifications sont affichées comme si la révision
source
était fusionnée avec la révision
cible
.
En savoir plus sur la comparaison des révisions.
Source
lefilament/bluemind4-connector
Sélectionner le projet cible
No results found
02a17cc9dbfb77178b6d3fcec608f2c210a8af2d
Sélectionner une révision Git
Branches
14.0
1 résultat
Échanger
Cible
lefilament/bluemind4-connector
Sélectionner le projet cible
lefilament/bluemind4-connector
1 résultat
702c5c2261fb0b0f6c5eda9357a4c87a40060182
Sélectionner une révision Git
Branches
14.0
1 résultat
Afficher les modifications
Uniquement les modifications entrantes de la source
Inclure les modifications apportées à la cible depuis la création de la source
Comparer
Validations sur la source (2)
[FIX] typos and checks on lists
· 61bed106
Rémi - Le Filament
a rédigé
Il y a 3 ans
61bed106
[FIX] rights and domains
· 02a17cc9
Rémi - Le Filament
a rédigé
Il y a 3 ans
02a17cc9
Afficher les modifications d'espaces
En ligne
Côte à côte
Affichage de
2 fichiers modifiés
models/calendar_event.py
+6
-6
6 ajouts, 6 suppressions
models/calendar_event.py
models/res_users.py
+41
-36
41 ajouts, 36 suppressions
models/res_users.py
avec
47 ajouts
et
42 suppressions
models/calendar_event.py
Voir le fichier @
02a17cc9
...
@@ -187,7 +187,7 @@ class CalendarEvent(models.Model):
...
@@ -187,7 +187,7 @@ class CalendarEvent(models.Model):
bm_event
.
main
.
status
=
ICalendarElementStatus
(
"
Confirmed
"
)
bm_event
.
main
.
status
=
ICalendarElementStatus
(
"
Confirmed
"
)
bm_event
.
main
.
organizer
=
ICalendarElementOrganizer
()
bm_event
.
main
.
organizer
=
ICalendarElementOrganizer
()
bm_event
.
main
.
organizer
.
commonName
=
event
.
user_id
.
partner_id
.
name
bm_event
.
main
.
organizer
.
commonName
=
event
.
user_id
.
partner_id
.
name
bm_event
.
main
.
organizer
.
mailto
=
event
.
user_id
.
partner_id
.
mail
bm_event
.
main
.
organizer
.
mailto
=
event
.
user_id
.
partner_id
.
e
mail
if
event
.
user_id
.
bluemind_user_id
:
if
event
.
user_id
.
bluemind_user_id
:
bm_event
.
main
.
organizer
.
dir
=
(
bm_event
.
main
.
organizer
.
dir
=
(
"
bm://
"
"
bm://
"
...
@@ -240,7 +240,7 @@ class CalendarEvent(models.Model):
...
@@ -240,7 +240,7 @@ class CalendarEvent(models.Model):
bm_event
.
main
.
alarm
=
[]
bm_event
.
main
.
alarm
=
[]
for
alarm
in
self
.
alarm_ids
:
for
alarm
in
self
.
alarm_ids
:
al
=
ICalendarElementVAlarm
()
al
=
ICalendarElementVAlarm
()
if
alarm
.
alarm_type
=
"
notification
"
:
if
alarm
.
alarm_type
=
=
"
notification
"
:
al
.
action
=
ICalendarElementVAlarmAction
(
"
Display
"
)
al
.
action
=
ICalendarElementVAlarmAction
(
"
Display
"
)
else
:
else
:
al
.
action
=
ICalendarElementVAlarmAction
(
"
Email
"
)
al
.
action
=
ICalendarElementVAlarmAction
(
"
Email
"
)
...
@@ -275,7 +275,7 @@ class CalendarEvent(models.Model):
...
@@ -275,7 +275,7 @@ class CalendarEvent(models.Model):
if
event
.
recurrency
:
if
event
.
recurrency
:
bm_event
.
main
.
rrule
=
ICalendarElementRRule
()
bm_event
.
main
.
rrule
=
ICalendarElementRRule
()
bm_event
.
main
.
rrule
.
frequency
=
ICalendarElementRRuleFrequency
(
bm_event
.
main
.
rrule
.
frequency
=
ICalendarElementRRuleFrequency
(
event
.
frequency
.
to
upper
()
event
.
rrule_type
.
upper
()
)
)
bm_event
.
main
.
rrule
.
interval
=
event
.
interval
bm_event
.
main
.
rrule
.
interval
=
event
.
interval
if
event
.
end_type
==
"
count
"
:
if
event
.
end_type
==
"
count
"
:
...
@@ -287,12 +287,12 @@ class CalendarEvent(models.Model):
...
@@ -287,12 +287,12 @@ class CalendarEvent(models.Model):
bm_event
.
main
.
rrule
.
until
.
timezone
=
event
.
event_tz
bm_event
.
main
.
rrule
.
until
.
timezone
=
event
.
event_tz
if
(
if
(
event
.
frequency
==
"
monthly
"
and
event
.
month_by
==
"
day
"
event
.
rrule_type
==
"
monthly
"
and
event
.
month_by
==
"
day
"
)
or
event
.
frequency
==
"
weekly
"
:
)
or
event
.
rrule_type
==
"
weekly
"
:
bm_event
.
main
.
rrule
.
byDay
=
[
ICalendarElementRRuleWeekDay
()]
bm_event
.
main
.
rrule
.
byDay
=
[
ICalendarElementRRuleWeekDay
()]
bm_event
.
main
.
rrule
.
byDay
[
0
].
day
=
str
(
event
.
weekday
)
bm_event
.
main
.
rrule
.
byDay
[
0
].
day
=
str
(
event
.
weekday
)
bm_event
.
main
.
rrule
.
byDay
[
0
].
offset
=
int
(
event
.
byday
)
bm_event
.
main
.
rrule
.
byDay
[
0
].
offset
=
int
(
event
.
byday
)
elif
event
.
frequency
==
"
monthly
"
and
event
.
month_by
==
"
date
"
:
elif
event
.
rrule_type
==
"
monthly
"
and
event
.
month_by
==
"
date
"
:
bm_event
.
main
.
rrule
.
byMonthDay
=
[
event
.
day
]
bm_event
.
main
.
rrule
.
byMonthDay
=
[
event
.
day
]
return
bm_event
return
bm_event
...
...
Ce diff est replié.
Cliquez pour l'agrandir.
models/res_users.py
Voir le fichier @
02a17cc9
...
@@ -157,6 +157,7 @@ class ResUser(models.Model):
...
@@ -157,6 +157,7 @@ class ResUser(models.Model):
# Calendar entries created on Bluemind side, not already in Odoo
# Calendar entries created on Bluemind side, not already in Odoo
# The events already in Odoo are ignored (probably already synced previously
# The events already in Odoo are ignored (probably already synced previously
if
bm_created_uids
:
events_to_create
=
[]
events_to_create
=
[]
bm_events_to_create_uids
=
[
bm_events_to_create_uids
=
[
e
for
e
in
bm_created_uids
if
e
not
in
odoo_events_bm_uids
e
for
e
in
bm_created_uids
if
e
not
in
odoo_events_bm_uids
...
@@ -168,8 +169,9 @@ class ResUser(models.Model):
...
@@ -168,8 +169,9 @@ class ResUser(models.Model):
# Only if Organizer is the same as Odoo user or if is not linked to
# Only if Organizer is the same as Odoo user or if is not linked to
# any active Odoo internal user
# any active Odoo internal user
if
(
if
(
bm_event
.
value
.
main
.
organizer
.
mailto
==
self
.
partner_id
.
email
bm_event
.
value
.
main
.
organizer
or
bm_event
.
value
.
main
.
organizer
.
mailto
not
in
odoo_users_emails
and
(
bm_event
.
value
.
main
.
organizer
.
mailto
==
self
.
partner_id
.
email
or
bm_event
.
value
.
main
.
organizer
.
mailto
not
in
odoo_users_emails
)
):
):
events_to_create
.
append
(
Calendar
.
_bm_to_odoo_values
(
bm_event
))
events_to_create
.
append
(
Calendar
.
_bm_to_odoo_values
(
bm_event
))
if
events_to_create
:
if
events_to_create
:
...
@@ -177,10 +179,11 @@ class ResUser(models.Model):
...
@@ -177,10 +179,11 @@ class ResUser(models.Model):
# Calendar entries that have been updated on Bluemind
# Calendar entries that have been updated on Bluemind
# Retrieve full events from Bluemind
# Retrieve full events from Bluemind
if
bm_updated_uids
:
bm_events_to_update
=
bm_calendar
.
multipleGet
(
bm_updated_uids
)
bm_events_to_update
=
bm_calendar
.
multipleGet
(
bm_updated_uids
)
# Update corresponding events
# Update corresponding events
for
bm_event
in
bm_events_to_update
:
for
bm_event
in
bm_events_to_update
:
odoo_event
=
odoo_events_bm_linked
.
filtered
(
odoo_event
=
odoo_events_bm_linked
.
filtered
_domain
(
[(
"
bluemind_id
"
,
"
=
"
,
bm_event
.
uid
)]
[(
"
bluemind_id
"
,
"
=
"
,
bm_event
.
uid
)]
)
)
# If related event exists in Odoo and belongs to the user, update it
# If related event exists in Odoo and belongs to the user, update it
...
@@ -195,9 +198,11 @@ class ResUser(models.Model):
...
@@ -195,9 +198,11 @@ class ResUser(models.Model):
# Calendar entries that have been deleted on Bluemind to be deleted on Odoo
# Calendar entries that have been deleted on Bluemind to be deleted on Odoo
# (only if belongs to user)
# (only if belongs to user)
odoo_events_to_delete
=
odoo_events_bm_linked
.
filtered
(
if
bm_deleted_uids
:
odoo_events_to_delete
=
odoo_events_bm_linked
.
filtered_domain
(
[(
"
bluemind_id
"
,
"
in
"
,
bm_deleted_uids
),
(
"
user_id
"
,
"
=
"
,
self
.
id
)]
[(
"
bluemind_id
"
,
"
in
"
,
bm_deleted_uids
),
(
"
user_id
"
,
"
=
"
,
self
.
id
)]
)
)
if
odoo_events_to_delete
:
odoo_events_to_delete
.
unlink
(
from_bluemind
=
True
)
odoo_events_to_delete
.
unlink
(
from_bluemind
=
True
)
# Update user last_sync_version with the latest one retrieved from Bluemind
# Update user last_sync_version with the latest one retrieved from Bluemind
...
@@ -224,7 +229,7 @@ class ResUser(models.Model):
...
@@ -224,7 +229,7 @@ class ResUser(models.Model):
for
user
in
users
:
for
user
in
users
:
_logger
.
info
(
"
Calendar Synchro - Starting synchronization for %s
"
,
user
)
_logger
.
info
(
"
Calendar Synchro - Starting synchronization for %s
"
,
user
)
try
:
try
:
user
.
with_user
(
user
).
sudo
().
sync_bluemind_calendar
()
user
.
with_user
(
user
).
sync_bluemind_calendar
()
_logger
.
info
(
_logger
.
info
(
"
Calendar Synchro - Completed synchronization for %s
"
,
user
"
Calendar Synchro - Completed synchronization for %s
"
,
user
)
)
...
...
Ce diff est replié.
Cliquez pour l'agrandir.