[REF] mail: move channel populate to discuss folder
Part of task-3265211 closes odoo/odoo#120065 Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
from . import discuss_channel
|
||||
from . import discuss_channel_member
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from . import mail_message
|
||||
from . import discuss
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from . import discuss_channel
|
||||
from . import discuss_channel_member
|
||||
from . import mail_message
|
||||
@@ -0,0 +1,17 @@
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from odoo import models
|
||||
from odoo.tools import populate
|
||||
|
||||
|
||||
class Channel(models.Model):
|
||||
_inherit = "discuss.channel"
|
||||
_populate_dependencies = ["res.partner"]
|
||||
_populate_sizes = {"small": 10, "medium": 100, "large": 500}
|
||||
|
||||
def _populate_factories(self):
|
||||
return [
|
||||
("name", populate.constant("channel_{counter}")),
|
||||
("channel_type", populate.randomize(["channel", "group"])),
|
||||
("description", populate.constant("channel_{counter}_description")),
|
||||
]
|
||||
+7
-6
@@ -1,11 +1,13 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from odoo import models
|
||||
from odoo.tools import populate
|
||||
|
||||
|
||||
class ChannelMember(models.Model):
|
||||
_inherit = "discuss.channel.member"
|
||||
_populate_dependencies = ["res.partner", "discuss.channel"]
|
||||
_populate_sizes = {'small': 10, 'medium': 100, 'large': 1000}
|
||||
_populate_sizes = {"small": 10, "medium": 100, "large": 1000}
|
||||
|
||||
def _populate_factories(self):
|
||||
partner_ids = self.env.registry.populated_models["res.partner"]
|
||||
@@ -18,8 +20,7 @@ class ChannelMember(models.Model):
|
||||
def _populate(self, size):
|
||||
channel_ids = self.env.registry.populated_models["discuss.channel"]
|
||||
for channel_id in channel_ids:
|
||||
self.env['discuss.channel.member'].create({
|
||||
'partner_id': self.env.ref('base.user_admin').partner_id.id,
|
||||
'channel_id': channel_id
|
||||
})
|
||||
self.env["discuss.channel.member"].create(
|
||||
{"partner_id": self.env.ref("base.user_admin").partner_id.id, "channel_id": channel_id}
|
||||
)
|
||||
return super()._populate(size)
|
||||
@@ -0,0 +1,26 @@
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from odoo import models
|
||||
from odoo.addons.mail.populate.mail_message import Message as MailMessage
|
||||
from odoo.tools import populate
|
||||
|
||||
|
||||
class Message(models.Model):
|
||||
_inherit = "mail.message"
|
||||
_populate_dependencies = ["discuss.channel", "discuss.channel.member"] + MailMessage._populate_dependencies
|
||||
|
||||
def _populate_factories(self):
|
||||
channel_ids = self.env.registry.populated_models["discuss.channel"]
|
||||
|
||||
def get_author_id(values, counter, random):
|
||||
channel = self.env[values["model"]].browse(values["res_id"])
|
||||
channel_member_ids = [channel["id"] for channel in channel.channel_member_ids.read(["id"])]
|
||||
return random.choice(channel_member_ids)
|
||||
|
||||
return [
|
||||
("body", populate.constant("message_body_{counter}")),
|
||||
("message_type", populate.constant("comment")),
|
||||
("model", populate.constant("discuss.channel")),
|
||||
("res_id", populate.randomize(channel_ids)),
|
||||
("author_id", populate.compute(get_author_id)),
|
||||
]
|
||||
@@ -1,15 +0,0 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from odoo import models
|
||||
from odoo.tools import populate
|
||||
|
||||
class Channel(models.Model):
|
||||
_inherit = 'discuss.channel'
|
||||
_populate_dependencies = ["res.partner"]
|
||||
_populate_sizes = {'small': 10, 'medium': 100, 'large': 500}
|
||||
|
||||
def _populate_factories(self):
|
||||
return [
|
||||
('name', populate.constant('channel_{counter}')),
|
||||
('channel_type', populate.randomize(['channel', 'group'])),
|
||||
('description', populate.constant('channel_{counter}_description')),
|
||||
]
|
||||
@@ -1,39 +1,37 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from odoo import models
|
||||
from odoo.tools import populate
|
||||
|
||||
|
||||
class Message(models.Model):
|
||||
_inherit = 'mail.message'
|
||||
_populate_dependencies = ['discuss.channel', 'discuss.channel.member', 'res.partner']
|
||||
_populate_sizes = {'small': 1000, 'medium': 10000, 'large': 500000}
|
||||
_inherit = "mail.message"
|
||||
_populate_dependencies = ["res.partner"]
|
||||
_populate_sizes = {"small": 1000, "medium": 10000, "large": 500000}
|
||||
|
||||
def _populate_factories(self):
|
||||
channel_ids = self.env.registry.populated_models['discuss.channel']
|
||||
|
||||
def get_author_id(values, counter, random):
|
||||
channel = self.env[values['model']].browse(values['res_id'])
|
||||
channel_member_ids = [channel['id'] for channel in channel.channel_member_ids.read(['id'])]
|
||||
return random.choice(channel_member_ids)
|
||||
|
||||
thread_ids = self.env.registry.populated_models["res.partner"]
|
||||
return [
|
||||
('body', populate.constant('message_body_{counter}')),
|
||||
('message_type', populate.constant('comment')),
|
||||
('model', populate.constant('discuss.channel')),
|
||||
('res_id', populate.randomize(channel_ids)),
|
||||
('author_id', populate.compute(get_author_id)),
|
||||
("body", populate.constant("message_body_{counter}")),
|
||||
("message_type", populate.constant("comment")),
|
||||
("model", populate.constant("res.partner")),
|
||||
("res_id", populate.randomize(thread_ids)),
|
||||
("author_id", populate.randomize(thread_ids)),
|
||||
]
|
||||
|
||||
def _populate(self, size):
|
||||
partner = self.env.ref('base.user_admin').partner_id
|
||||
partner = self.env.ref("base.user_admin").partner_id
|
||||
# create 100 in the chatter of the res.partner admin
|
||||
messages = []
|
||||
for counter in range(100):
|
||||
messages.append({
|
||||
'body': f'message_body_{counter}',
|
||||
'message_type': 'comment',
|
||||
'model': 'res.partner',
|
||||
'res_id': partner.id,
|
||||
'author_id': partner.id,
|
||||
})
|
||||
self.env['mail.message'].create(messages)
|
||||
messages.append(
|
||||
{
|
||||
"body": f"message_body_{counter}",
|
||||
"message_type": "comment",
|
||||
"model": "res.partner",
|
||||
"res_id": partner.id,
|
||||
"author_id": partner.id,
|
||||
}
|
||||
)
|
||||
self.env["mail.message"].create(messages)
|
||||
return super()._populate(size)
|
||||
|
||||
Reference in New Issue
Block a user