~anybox/aeroo/openerp6

« back to all changes in this revision

Viewing changes to report_aeroo/installer.py

  • Committer: root
  • Date: 2013-05-16 15:46:46 UTC
  • Revision ID: root@erp.kndati.lv-20130516154646-5lesr8tyzl1vdc0k
1.2.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
# -*- encoding: utf-8 -*-
2
2
##############################################################################
3
3
#
4
 
# Copyright (c) 2008-2012 Alistek Ltd (http://www.alistek.com) All Rights Reserved.
 
4
# Copyright (c) 2008-2013 Alistek Ltd (http://www.alistek.com) All Rights Reserved.
5
5
#                    General contacts <info@alistek.com>
6
6
#
7
7
# WARNING: This program as such is intended to be used by professional
35
35
import netsvc
36
36
import tools
37
37
import os, base64
 
38
import urllib2
 
39
 
 
40
_url = 'http://www.alistek.com/aeroo_banner/v6_0_report_aeroo.png'
38
41
 
39
42
class report_aeroo_installer(osv.osv_memory):
40
43
    _name = 'report.aeroo.installer'
41
44
    _inherit = 'res.config.installer'
 
45
    _logo_image = None
42
46
 
43
47
    def _get_image(self, cr, uid, context=None):
44
 
        path = os.path.join('report_aeroo','config_pixmaps','module_banner.png')
45
 
        image_file = file_data = tools.file_open(path,'rb')
 
48
        if self._logo_image:
 
49
            return self._logo_image
46
50
        try:
47
 
            file_data = image_file.read()
48
 
            return base64.encodestring(file_data)
49
 
        finally:
50
 
            image_file.close()
 
51
            im = urllib2.urlopen(_url.encode("UTF-8"))
 
52
            if im.headers.maintype!='image':
 
53
                raise TypeError(im.headers.maintype)
 
54
        except Exception, e:
 
55
            path = os.path.join('report_aeroo','config_pixmaps','module_banner.png')
 
56
            image_file = file_data = tools.file_open(path,'rb')
 
57
            try:
 
58
                file_data = image_file.read()
 
59
                self._logo_image = base64.encodestring(file_data)
 
60
                return self._logo_image
 
61
            finally:
 
62
                image_file.close()
 
63
        else:
 
64
            self._logo_image = base64.encodestring(im.read())
 
65
            return self._logo_image
51
66
 
52
67
    def _get_image_fn(self, cr, uid, ids, name, args, context=None):
53
68
        image = self._get_image(cr, uid, context)