diff options
| author | tfr@openerp.com <> | 2011-10-19 15:54:37 +0200 |
|---|---|---|
| committer | tfr@openerp.com <> | 2011-10-19 15:54:37 +0200 |
| commit | cd2777be6360e9a64fb418bc20dae75c5325030c (patch) | |
| tree | 2d91c1d8c4039456496ae37de97907f8e582c993 /addons/base_module_quality | |
| parent | 92d739b70380e1b2d2b7e54b59604a7fc51d7e8b (diff) | |
| parent | d72be842e320dfff08b7ad4b443740060dfd5a4e (diff) | |
[MERGE] old wizard interface into new osv_memory for base module_quality
bzr revid: tfr@openerp.com-20111019135437-120cns50sdf2fazd
Diffstat (limited to 'addons/base_module_quality')
8 files changed, 106 insertions, 75 deletions
diff --git a/addons/base_module_quality/__openerp__.py b/addons/base_module_quality/__openerp__.py index af258685629..02d09e0919d 100644 --- a/addons/base_module_quality/__openerp__.py +++ b/addons/base_module_quality/__openerp__.py @@ -42,7 +42,7 @@ using it, otherwise it may crash. 'website': 'http://www.openerp.com', 'depends': ['base'], 'init_xml': [], - 'update_xml': ['base_module_quality_wizard.xml', 'base_module_quality_view.xml', 'security/ir.model.access.csv'], + 'update_xml': ['wizard/module_quality_check_view.xml', 'wizard/quality_save_report_view.xml', 'base_module_quality_view.xml', 'security/ir.model.access.csv'], 'demo_xml': [], 'installable': True, 'active': False, diff --git a/addons/base_module_quality/base_module_quality.py b/addons/base_module_quality/base_module_quality.py index d7ac2f77700..bbe20bc0b4f 100644 --- a/addons/base_module_quality/base_module_quality.py +++ b/addons/base_module_quality/base_module_quality.py @@ -296,7 +296,7 @@ class module_quality_detail(osv.osv): 'summary': fields.text('Summary'), 'detail': fields.text('Details'), 'message': fields.char('Message', size=64), - 'state': fields.selection([('done','Done'),('skipped','Skipped'),], 'State', size=6, help='The test will be completed only if the module is installed or if the test may be processed on uninstalled module.'), + 'state': fields.selection([('done','Done'),('skipped','Skipped'),], 'State', size=24, help='The test will be completed only if the module is installed or if the test may be processed on uninstalled module.'), } module_quality_detail() diff --git a/addons/base_module_quality/base_module_quality_view.xml b/addons/base_module_quality/base_module_quality_view.xml index 6b56eb41a5d..21e84c27c43 100644 --- a/addons/base_module_quality/base_module_quality_view.xml +++ b/addons/base_module_quality/base_module_quality_view.xml @@ -44,7 +44,7 @@ <field name="state" readonly="1"/> </page> <page string="Detail"> - <button name="%(quality_detail_save)d" string="Save Report" type="action"/> + <button name="%(action_view_quality_save_report)d" string="Save Report" type="action"/> <field name="detail" widget="text_html" nolabel="1" colspan="4" readonly="1"/> </page> </notebook> diff --git a/addons/base_module_quality/base_module_quality_wizard.xml b/addons/base_module_quality/base_module_quality_wizard.xml deleted file mode 100644 index fe5c7ef5aa0..00000000000 --- a/addons/base_module_quality/base_module_quality_wizard.xml +++ /dev/null @@ -1,12 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<openerp> - <data> - <wizard id="quality_detail_save" model="ir.module.module" name="quality_detail_save" string="Report Save" menu="False"/> - - <wizard string="Quality Check" - model="ir.module.module" - name="create_quality_check_wiz" - id="create_quality_check_id" - menu="True"/> - </data> -</openerp>
\ No newline at end of file diff --git a/addons/base_module_quality/wizard/module_quality_check.py b/addons/base_module_quality/wizard/module_quality_check.py index 9e836ec9d0e..8b6f1157a29 100644 --- a/addons/base_module_quality/wizard/module_quality_check.py +++ b/addons/base_module_quality/wizard/module_quality_check.py @@ -19,28 +19,25 @@ # ############################################################################## -import os - -import wizard from tools.translate import _ -import pooler from osv import osv, fields -class quality_check(wizard.interface): - - def _create_quality_check(self, cr, uid, data, context=None): - pool = pooler.get_pool(cr.dbname) - obj_quality = pool.get('module.quality.check') - objs = [] - for id in data['ids']: - module_data = pool.get('ir.module.module').browse(cr, uid, id) - data = obj_quality.check_quality(cr, uid, module_data.name, module_data.state) - obj = obj_quality.create(cr, uid, data, context) - objs.append(obj) - return objs - - def _open_quality_check(self, cr, uid, data, context): - obj_ids = self._create_quality_check(cr, uid, data, context) +class quality_check(osv.osv_memory): + _name = "quality.check" + _description = "Module Quality Check" + + def _create_quality_check(self, cr, uid, ids, context=None): + obj_quality = self.pool.get('module.quality.check') + objs_ids = [] + module_id = context.get('active_id', False) + module_data = self.pool.get('ir.module.module').browse(cr, uid, module_id, context=context) + data = obj_quality.check_quality(cr, uid, module_data.name, module_data.state) + obj = obj_quality.create(cr, uid, data, context=context) + objs_ids.append(obj) + return objs_ids + + def open_quality_check(self, cr, uid, ids, context=None): + obj_ids = self._create_quality_check(cr, uid, ids, context=context) return { 'domain': "[('id','in', ["+','.join(map(str,obj_ids))+"])]", 'name': _('Quality Check'), @@ -49,14 +46,7 @@ class quality_check(wizard.interface): 'res_model': 'module.quality.check', 'type': 'ir.actions.act_window' } - - states = { - 'init' : { - 'actions' : [], - 'result': {'type':'action', 'action':_open_quality_check, 'state':'end'} - } - } - -quality_check("create_quality_check_wiz") + +quality_check() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file diff --git a/addons/base_module_quality/wizard/module_quality_check_view.xml b/addons/base_module_quality/wizard/module_quality_check_view.xml new file mode 100644 index 00000000000..d5ce83d9612 --- /dev/null +++ b/addons/base_module_quality/wizard/module_quality_check_view.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8"?> +<openerp> + <data> + + <record id="view_base_module_quality" model="ir.ui.view"> + <field name="name">view_base_module_quality_form</field> + <field name="model">quality.check</field> + <field name="type">form</field> + <field name="arch" type="xml"> + <form string="Quality Check"> + <group colspan="4"> + <separator string = "This wizard will check module(s) quality" colspan="4"/> + <newline/> + <button icon="gtk-cancel" string="Cancel" special="cancel"/> + <button name="open_quality_check" icon="terp-camera_test" string="Check" type="object"/> + </group> + </form> + </field> + </record> + + <act_window + name="Quality Check" + id="act_base_module_quality" + res_model="quality.check" + src_model="ir.module.module" + view_mode="form" + target="new" + key2="client_action_multi" + /> + </data> +</openerp> diff --git a/addons/base_module_quality/wizard/quality_save_report.py b/addons/base_module_quality/wizard/quality_save_report.py index 7d03338e623..e4286e92237 100644 --- a/addons/base_module_quality/wizard/quality_save_report.py +++ b/addons/base_module_quality/wizard/quality_save_report.py @@ -22,40 +22,31 @@ import base64 import cStringIO -import wizard from osv import osv -import pooler from tools.translate import _ - -form_rep = '''<?xml version="1.0"?> -<form string="Standard entries"> - <field name="name"/> - <newline/> - <field name="module_file"/> -</form>''' - - -fields_rep = { - 'name': {'string': 'File name', 'type': 'char', 'required': True, 'help': 'Save report as .html format', 'size':64}, - 'module_file': {'string': 'Save report', 'type': 'binary', 'required': True}, -} - -def get_detail(self, cr, uid, datas, context=None): - data = pooler.get_pool(cr.dbname).get('module.quality.detail').browse(cr, uid, datas['id']) - if not data.detail: - raise wizard.except_wizard(_('Warning'), _('No report to save!')) - buf = cStringIO.StringIO(data.detail) - out = base64.encodestring(buf.getvalue()) - buf.close() - return {'module_file': out, 'name': data.name + '.html'} - -class save_report(wizard.interface): - states = { - 'init': { - 'actions': [get_detail], - 'result': {'type': 'form', 'arch': form_rep, 'fields':fields_rep, 'state': [('end','Cancel')]} - }, +from osv import osv, fields + +class quality_save_report(osv.osv_memory): + + _name = "save.report" + _description = "Save Report of Quality" + + def default_get(self, cr, uid, fields, context=None): + res = super(quality_save_report, self).default_get(cr, uid, fields, context=context) + active_ids = context.get('active_ids') + data = self.pool.get('module.quality.detail').browse(cr, uid, active_ids, context=context)[0] + if not data.detail: + raise osv.except_osv(_('Warning'), _('No report to save!')) + buf = cStringIO.StringIO(data.detail) + out = base64.encodestring(buf.getvalue()) + buf.close() + return {'module_file': out, 'name': data.name + '.html'} + + _columns = { + 'name': fields.char('File Name', required=True, size=32, help="Save report as .html format"), + 'module_file': fields.binary('Save report', required=True), } -save_report('quality_detail_save') + +quality_save_report() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file diff --git a/addons/base_module_quality/wizard/quality_save_report_view.xml b/addons/base_module_quality/wizard/quality_save_report_view.xml new file mode 100644 index 00000000000..89593b68742 --- /dev/null +++ b/addons/base_module_quality/wizard/quality_save_report_view.xml @@ -0,0 +1,31 @@ +<?xml version="1.0" encoding="utf-8"?> +<openerp> + <data> + + <record id="view_quality_save_report" model="ir.ui.view"> + <field name="name">view_quality_save_report</field> + <field name="model">save.report</field> + <field name="type">form</field> + <field name="arch" type="xml"> + <form string="Standard Entries"> + <field name="name"/> + <newline/> + <field name="module_file"/> + <separator colspan="4"/> + <label string=" " colspan="2"/> + <button special="cancel" string="Close" icon="gtk-close"/> + </form> + </field> + </record> + + <record model="ir.actions.act_window" id="action_view_quality_save_report"> + <field name="name">Standard Entries</field> + <field name="res_model">save.report</field> + <field name="view_type">form</field> + <field name="view_mode">tree,form</field> + <field name="target">new</field> + <field name="view_id" ref="view_quality_save_report"/> + </record> + + </data> +</openerp> |
