[FIX] project,hr: improved alias creation/duplication
[odoo/odoo.git] / addons / pad / pad.py
1 # -*- coding: utf-8 -*-
2 from osv import fields, osv
3 import random
4 import string
5 import urllib2
6 from tools.translate import _
7
8 class pad_common(osv.osv_memory):
9     _name = 'pad.common'
10     _pad_fields = []
11     def pad_generate_url(self, cr, uid, context=None):
12         pad_url_template =  self.pool.get('res.users').browse(cr,uid, uid, context).company_id.pad_url_template
13         s = string.ascii_uppercase + string.digits
14         salt = ''.join([s[random.randint(0, len(s) - 1)] for i in range(8)])
15         template_vars = {
16             'db' : cr.dbname,
17             'model' : self._name,
18             'salt' : salt,
19         }
20         url = pad_url_template % template_vars
21         return url
22
23     def copy(self, cr, uid, id, default=None, context=None):
24         if not default:
25             default = {}
26         update = [(field,self.pad_generate_url(cr, uid, context)) for field in self._pad_fields]
27         default.update(update)
28         return super(pad_common, self).copy(cr, uid, id, default, context)
29
30 # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: