forked from shopinvader/odoo-shopinvader
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhooks.py
427 lines (424 loc) · 18.4 KB
/
hooks.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
# Copyright 2023 Akretion (https://www.akretion.com).
# @author Sébastien BEAU <sebastien.beau@akretion.com>
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
RESTAPI_XML_IDS = (
"access_shopinvader_backend_manage",
"access_shopinvader_backend_read",
"access_shopinvader_cart_step",
"access_shopinvader_cart_step_employee",
"access_shopinvader_notification_employee",
"access_shopinvader_notification_manager",
"access_shopinvader_partner_binding",
"access_shopinvader_partner_binding_line",
"access_shopinvader_partner_edit",
"access_shopinvader_partner_read",
"access_shopinvader_url_manager",
"account_analytic_0",
"action_cart",
"action_sale",
"act_open_shopinvader_cart_step_view",
"act_open_shopinvader_cart_step_view_tree",
"act_open_shopinvader_partner_view",
"act_open_shopinvader_partner_view_form",
"act_open_shopinvader_partner_view_tree",
"anonymous",
"backend_1",
"backend_2",
"cart_address",
"cart_checkout",
"cart_end",
"cart_index",
"cart_login",
"channel_shopinvader",
"channel_shopinvader_bind_products",
"channel_shopinvader_notification",
"constraint_shopinvader_backend_unique_website_unique_key",
"constraint_shopinvader_partner_email_uniq",
"constraint_shopinvader_partner_record_uniq",
"country_group_1",
"email_address_created_notification",
"email_address_updated_notification",
"email_cart_notification",
"email_customer_updated_notification",
"email_invoice_notification",
"email_new_customer_welcome_notification",
"email_sale_notification",
"field_account_bank_statement_line__shopinvader_backend_id",
"field_account_move__display_name",
"field_account_move__id",
"field_account_move____last_update",
"field_account_move__shopinvader_backend_id",
"field_account_payment__shopinvader_backend_id",
"field_res_config_settings__display_name",
"field_res_config_settings__id",
"field_res_config_settings____last_update",
"field_res_config_settings__shopinvader_no_partner_duplicate",
"field_res_partner__address_type",
"field_res_partner__display_name",
"field_res_partner__has_shopinvader_user",
"field_res_partner__id",
"field_res_partner__is_shopinvader_active",
"field_res_partner____last_update",
"field_res_partner__opt_in",
"field_res_partner__parent_has_shopinvader_user",
"field_res_partner__shopinvader_bind_ids",
"field_res_users__address_type",
"field_res_users__has_shopinvader_user",
"field_res_users__is_shopinvader_active",
"field_res_users__opt_in",
"field_res_users__parent_has_shopinvader_user",
"field_res_users__shopinvader_bind_ids",
"field_sale_order__current_step_id",
"field_sale_order__display_name",
"field_sale_order__done_step_ids",
"field_sale_order__id",
"field_sale_order__last_external_update_date",
"field_sale_order____last_update",
"field_sale_order_line__display_name",
"field_sale_order_line__id",
"field_sale_order_line____last_update",
"field_sale_order__shopinvader_backend_id",
"field_sale_order__shopinvader_state",
"field_sale_order__typology",
"field_shopinvader_backend__account_analytic_id",
"field_shopinvader_backend__allowed_country_ids",
"field_shopinvader_backend__anonymous_partner_id",
"field_shopinvader_backend__cart_checkout_address_policy",
"field_shopinvader_backend__clear_cart_options",
"field_shopinvader_backend__company_id",
"field_shopinvader_backend__create_date",
"field_shopinvader_backend__create_uid",
"field_shopinvader_backend__currency_ids",
"field_shopinvader_backend__customer_default_role",
"field_shopinvader_backend__display_name",
"field_shopinvader_backend__filter_ids",
"field_shopinvader_backend__frontend_data_source",
"field_shopinvader_backend__id",
"field_shopinvader_backend__invoice_access_open",
"field_shopinvader_backend__invoice_linked_to_sale_only",
"field_shopinvader_backend__invoice_report_id",
"field_shopinvader_backend__invoice_settings",
"field_shopinvader_backend__lang_ids",
"field_shopinvader_backend____last_update",
"field_shopinvader_backend__name",
"field_shopinvader_backend__nbr_cart",
"field_shopinvader_backend__nbr_sale",
"field_shopinvader_backend__notification_ids",
"field_shopinvader_backend__partner_industry_ids",
"field_shopinvader_backend__partner_title_ids",
"field_shopinvader_backend__pricelist_id",
"field_shopinvader_backend__sale_settings",
"field_shopinvader_backend__salesman_notify_create",
"field_shopinvader_backend__salesman_notify_update",
"field_shopinvader_backend__sequence_id",
"field_shopinvader_backend__server_env_defaults",
"field_shopinvader_backend__tech_name",
"field_shopinvader_backend__website_public_name",
"field_shopinvader_backend__website_unique_key",
"field_shopinvader_backend__write_date",
"field_shopinvader_backend__write_uid",
"field_shopinvader_cart_step__code",
"field_shopinvader_cart_step__create_date",
"field_shopinvader_cart_step__create_uid",
"field_shopinvader_cart_step__display_name",
"field_shopinvader_cart_step__id",
"field_shopinvader_cart_step____last_update",
"field_shopinvader_cart_step__name",
"field_shopinvader_cart_step__write_date",
"field_shopinvader_cart_step__write_uid",
"field_shopinvader_notification__backend_id",
"field_shopinvader_notification__create_date",
"field_shopinvader_notification__create_uid",
"field_shopinvader_notification__display_name",
"field_shopinvader_notification__id",
"field_shopinvader_notification____last_update",
"field_shopinvader_notification__model_id",
"field_shopinvader_notification__notification_type",
"field_shopinvader_notification__template_id",
"field_shopinvader_notification__write_date",
"field_shopinvader_notification__write_uid",
"field_shopinvader_partner__active",
"field_shopinvader_partner__active_lang_count",
"field_shopinvader_partner__activity_date_deadline",
"field_shopinvader_partner__activity_exception_decoration",
"field_shopinvader_partner__activity_exception_icon",
"field_shopinvader_partner__activity_ids",
"field_shopinvader_partner__activity_state",
"field_shopinvader_partner__activity_summary",
"field_shopinvader_partner__activity_type_icon",
"field_shopinvader_partner__activity_type_id",
"field_shopinvader_partner__activity_user_id",
"field_shopinvader_partner__additional_info",
"field_shopinvader_partner__address_type",
"field_shopinvader_partner__backend_id",
"field_shopinvader_partner__bank_account_count",
"field_shopinvader_partner__bank_ids",
"field_shopinvader_partner__barcode",
"field_shopinvader_partner_binding__binding_lines",
"field_shopinvader_partner_binding__create_date",
"field_shopinvader_partner_binding__create_uid",
"field_shopinvader_partner_binding__display_name",
"field_shopinvader_partner_binding__id",
"field_shopinvader_partner_binding____last_update",
"field_shopinvader_partner_binding_line__bind",
"field_shopinvader_partner_binding_line__create_date",
"field_shopinvader_partner_binding_line__create_uid",
"field_shopinvader_partner_binding_line__display_name",
"field_shopinvader_partner_binding_line__email",
"field_shopinvader_partner_binding_line__id",
"field_shopinvader_partner_binding_line____last_update",
"field_shopinvader_partner_binding_line__partner_id",
"field_shopinvader_partner_binding_line__shopinvader_partner_binding_id",
"field_shopinvader_partner_binding_line__write_date",
"field_shopinvader_partner_binding_line__write_uid",
"field_shopinvader_partner_binding__shopinvader_backend_id",
"field_shopinvader_partner_binding__write_date",
"field_shopinvader_partner_binding__write_uid",
"field_shopinvader_partner__category_id",
"field_shopinvader_partner__channel_ids",
"field_shopinvader_partner__child_ids",
"field_shopinvader_partner__city",
"field_shopinvader_partner__color",
"field_shopinvader_partner__comment",
"field_shopinvader_partner__commercial_company_name",
"field_shopinvader_partner__commercial_partner_id",
"field_shopinvader_partner__company_id",
"field_shopinvader_partner__company_name",
"field_shopinvader_partner__company_type",
"field_shopinvader_partner__contact_address",
"field_shopinvader_partner__contract_ids",
"field_shopinvader_partner__country_id",
"field_shopinvader_partner__create_date",
"field_shopinvader_partner__create_uid",
"field_shopinvader_partner__credit",
"field_shopinvader_partner__credit_limit",
"field_shopinvader_partner__currency_id",
"field_shopinvader_partner__customer_rank",
"field_shopinvader_partner__date",
"field_shopinvader_partner__debit",
"field_shopinvader_partner__debit_limit",
"field_shopinvader_partner__display_name",
"field_shopinvader_partner__email",
"field_shopinvader_partner__email_formatted",
"field_shopinvader_partner__email_normalized",
"field_shopinvader_partner__employee",
"field_shopinvader_partner__external_id",
"field_shopinvader_partner__function",
"field_shopinvader_partner__has_shopinvader_user",
"field_shopinvader_partner__has_unreconciled_entries",
"field_shopinvader_partner__id",
"field_shopinvader_partner__image_1024",
"field_shopinvader_partner__image_128",
"field_shopinvader_partner__image_1920",
"field_shopinvader_partner__image_256",
"field_shopinvader_partner__image_512",
"field_shopinvader_partner__im_status",
"field_shopinvader_partner__industry_id",
"field_shopinvader_partner__invoice_ids",
"field_shopinvader_partner__invoice_warn",
"field_shopinvader_partner__invoice_warn_msg",
"field_shopinvader_partner__is_blacklisted",
"field_shopinvader_partner__is_company",
"field_shopinvader_partner__is_shopinvader_active",
"field_shopinvader_partner__journal_item_count",
"field_shopinvader_partner__lang",
"field_shopinvader_partner__last_time_entries_checked",
"field_shopinvader_partner____last_update",
"field_shopinvader_partner__message_attachment_count",
"field_shopinvader_partner__message_bounce",
"field_shopinvader_partner__message_channel_ids",
"field_shopinvader_partner__message_follower_ids",
"field_shopinvader_partner__message_has_error",
"field_shopinvader_partner__message_has_error_counter",
"field_shopinvader_partner__message_has_sms_error",
"field_shopinvader_partner__message_ids",
"field_shopinvader_partner__message_is_follower",
"field_shopinvader_partner__message_main_attachment_id",
"field_shopinvader_partner__message_needaction",
"field_shopinvader_partner__message_needaction_counter",
"field_shopinvader_partner__message_partner_ids",
"field_shopinvader_partner__message_unread",
"field_shopinvader_partner__message_unread_counter",
"field_shopinvader_partner__mobile",
"field_shopinvader_partner__mobile_blacklisted",
"field_shopinvader_partner__my_activity_date_deadline",
"field_shopinvader_partner__name",
"field_shopinvader_partner__opt_in",
"field_shopinvader_partner__parent_has_shopinvader_user",
"field_shopinvader_partner__parent_id",
"field_shopinvader_partner__parent_name",
"field_shopinvader_partner__partner_email",
"field_shopinvader_partner__partner_gid",
"field_shopinvader_partner__partner_latitude",
"field_shopinvader_partner__partner_longitude",
"field_shopinvader_partner__partner_share",
"field_shopinvader_partner__payment_token_count",
"field_shopinvader_partner__payment_token_ids",
"field_shopinvader_partner__phone",
"field_shopinvader_partner__phone_blacklisted",
"field_shopinvader_partner__phone_sanitized",
"field_shopinvader_partner__phone_sanitized_blacklisted",
"field_shopinvader_partner__property_account_payable_id",
"field_shopinvader_partner__property_account_position_id",
"field_shopinvader_partner__property_account_receivable_id",
"field_shopinvader_partner__property_payment_term_id",
"field_shopinvader_partner__property_product_pricelist",
"field_shopinvader_partner__property_supplier_payment_term_id",
"field_shopinvader_partner__record_id",
"field_shopinvader_partner__ref",
"field_shopinvader_partner__ref_company_ids",
"field_shopinvader_partner__role",
"field_shopinvader_partner__sale_order_count",
"field_shopinvader_partner__sale_order_ids",
"field_shopinvader_partner__sale_warn",
"field_shopinvader_partner__sale_warn_msg",
"field_shopinvader_partner__same_vat_partner_id",
"field_shopinvader_partner__self",
"field_shopinvader_partner__shopinvader_bind_ids",
"field_shopinvader_partner__signup_expiration",
"field_shopinvader_partner__signup_token",
"field_shopinvader_partner__signup_type",
"field_shopinvader_partner__signup_url",
"field_shopinvader_partner__signup_valid",
"field_shopinvader_partner__state_id",
"field_shopinvader_partner__street",
"field_shopinvader_partner__street2",
"field_shopinvader_partner__supplier_rank",
"field_shopinvader_partner__sync_date",
"field_shopinvader_partner__team_id",
"field_shopinvader_partner__title",
"field_shopinvader_partner__total_invoiced",
"field_shopinvader_partner__trust",
"field_shopinvader_partner__type",
"field_shopinvader_partner__tz",
"field_shopinvader_partner__tz_offset",
"field_shopinvader_partner__user_id",
"field_shopinvader_partner__user_ids",
"field_shopinvader_partner__vat",
"field_shopinvader_partner__website",
"field_shopinvader_partner__website_message_ids",
"field_shopinvader_partner__write_date",
"field_shopinvader_partner__write_uid",
"field_shopinvader_partner__zip",
"field_track_external_mixin__display_name",
"field_track_external_mixin__id",
"field_track_external_mixin__last_external_update_date",
"field_track_external_mixin____last_update",
"fiscal_position_0",
"fiscal_position_1",
"fiscal_position_2",
"group_shopinvader_manager",
"group_shopinvader_partner_binding",
"item_1",
"job_function_shopinvader_bind_selected_products",
"job_function_shopinvader_bind_single_product",
"job_function_shopinvader_notification_send",
"mail_activity_review_customer",
"menu_cart",
"menu_sale",
"menu_shopinvader_cart_step",
"menu_shopinvader_config",
"menu_shopinvader_config_cart",
"menu_shopinvader_config_partners",
"menu_shopinvader_config_technical",
"menu_shopinvader_orders",
"menu_shopinvader_partner",
"menu_shopinvader_root",
"model_account_move",
"model_res_config_settings",
"model_res_partner",
"model_sale_order",
"model_sale_order_line",
"model_shopinvader_backend",
"model_shopinvader_cart_step",
"model_shopinvader_notification",
"model_shopinvader_partner",
"model_shopinvader_partner_binding",
"model_shopinvader_partner_binding_line",
"model_track_external_mixin",
"module_category_shopinvader",
"partner_1",
"partner_1_address_1",
"partner_1_address_2",
"partner_2",
"partner_2_address_1",
"position_tax_1",
"position_tax_2",
"pricelist_1",
"res_config_settings_view_form",
"res_partner_view_form",
"sale_order_1",
"sale_order_2",
"sale_order_3",
"sale_order_line_1",
"sale_order_line_2",
"sale_order_line_3",
"sale_order_line_4",
"sale_order_line_5",
"sale_order_line_6",
"sale_order_line_7",
"sale_order_view_form",
"selection__res_partner__address_type__address",
"selection__res_partner__address_type__profile",
"selection__sale_order__shopinvader_state__cancel",
"selection__sale_order__shopinvader_state__pending",
"selection__sale_order__shopinvader_state__processing",
"selection__sale_order__shopinvader_state__shipped",
"selection__sale_order__typology__cart",
"selection__sale_order__typology__sale",
"selection__shopinvader_backend__cart_checkout_address_policy__invoice_defaults_to_shipping", # noqa: B950
"selection__shopinvader_backend__cart_checkout_address_policy__no_defaults",
"selection__shopinvader_backend__clear_cart_options__cancel",
"selection__shopinvader_backend__clear_cart_options__clear",
"selection__shopinvader_backend__clear_cart_options__delete",
"selection__shopinvader_backend__frontend_data_source__search_engine",
"selection__shopinvader_backend__salesman_notify_create__",
"selection__shopinvader_backend__salesman_notify_create__address",
"selection__shopinvader_backend__salesman_notify_create__all",
"selection__shopinvader_backend__salesman_notify_create__company",
"selection__shopinvader_backend__salesman_notify_create__company_and_user",
"selection__shopinvader_backend__salesman_notify_create__user",
"selection__shopinvader_backend__salesman_notify_update__",
"selection__shopinvader_backend__salesman_notify_update__address",
"selection__shopinvader_backend__salesman_notify_update__all",
"selection__shopinvader_backend__salesman_notify_update__company",
"selection__shopinvader_backend__salesman_notify_update__company_and_user",
"selection__shopinvader_backend__salesman_notify_update__user",
"shopinvader_backend_comp_rule",
"shopinvader_cart_step_view_search",
"shopinvader_cart_step_view_tree",
"shopinvader_config_settings_act_window",
"shopinvader_config_settings_menu",
"shopinvader_notification_address_created",
"shopinvader_notification_address_updated",
"shopinvader_notification_cart",
"shopinvader_notification_customer_updated",
"shopinvader_notification_invoice",
"shopinvader_notification_new_customer_welcome",
"shopinvader_notification_sale",
"shopinvader_partner_1",
"shopinvader_partner_2",
"shopinvader_partner_binding_act_window",
"shopinvader_partner_binding_form_view",
"shopinvader_partner_comp_rule",
"shopinvader_partner_view_form",
"shopinvader_partner_view_search",
"shopinvader_partner_view_tree",
"tax_1",
"tax_2",
"tax_3",
"view_order_tree",
"view_quotation_tree",
"view_res_partner_filter",
"view_sales_order_filter",
"view_shop_order_tree",
"view_shop_quotation_tree",
)
def pre_init_hook(cr):
cr.execute(
"""UPDATE ir_model_data
SET module='shopinvader_restapi'
WHERE name in %s
AND module='shopinvader'""",
(RESTAPI_XML_IDS,),
)