res_partner.py 1.4 KB

1234567891011121314151617181920212223242526272829303132
  1. # -*- coding:utf-8 -*-
  2. from openerp import fields, models, api
  3. class ResPartner(models.Model):
  4. _inherit="res.partner"
  5. def _activity_count(self):
  6. for partner in self:
  7. partner.activity_count = self.env['crm.task'].search_count([('partner_id', '=', partner.id),('state','=','pending')])
  8. task_ids = fields.One2many('crm.task', 'partner_id','Tareas')
  9. instagram = fields.Char('Instagram', size=64, required=False, readonly=False)
  10. def goto_instagram(self, cr, uid, ids, context=None):
  11. partner_obj = self.pool.get('res.partner')
  12. partner = partner_obj.browse(cr, uid, ids, context=context)[0]
  13. if partner.instagram:
  14. good_starting_urls = ['https://instagram.com/', 'https://www.instagram.com/', \
  15. 'http://instagram.com/', 'http://www.instagram.com/']
  16. non_protocol_starting_urls = ['instagram.com/', 'www.instagram.com/']
  17. if any(map(lambda x: partner.instagram.startswith(x), good_starting_urls)):
  18. url = partner.instagram
  19. elif any(map(lambda x: partner.instagram.startswith(x), non_protocol_starting_urls)):
  20. url = 'https://' + partner.instagram
  21. else:
  22. url = 'https://www.instagram.com/' + partner.instagram
  23. return {'type': 'ir.actions.act_url', 'url': url, 'target': 'new'}