From 537d45b91a2c6d7f256a54d3240d72758b201ad3 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 6 Dec 2011 11:32:01 +0100 Subject: [PATCH 01/23] [FIX] hr: broken dashboard view(s) bzr revid: xmo@openerp.com-20111206103201-30xmhmy35bi8p1v9 --- addons/hr/hr_board.xml | 14 +++++--------- addons/hr_evaluation/board_hr_evaluation_view.xml | 2 +- addons/hr_expense/board_hr_expense_view.xml | 2 +- addons/hr_holidays/board_hr_holidays_view.xml | 2 +- .../hr_timesheet_sheet/board_hr_timesheet_view.xml | 4 +--- 5 files changed, 9 insertions(+), 15 deletions(-) diff --git a/addons/hr/hr_board.xml b/addons/hr/hr_board.xml index 07fa76bba16..977ca710e52 100644 --- a/addons/hr/hr_board.xml +++ b/addons/hr/hr_board.xml @@ -8,11 +8,9 @@ form
- - - - - + + +
@@ -39,10 +37,8 @@
- - - - + +
diff --git a/addons/hr_evaluation/board_hr_evaluation_view.xml b/addons/hr_evaluation/board_hr_evaluation_view.xml index 46daeeff174..3e437833c2d 100644 --- a/addons/hr_evaluation/board_hr_evaluation_view.xml +++ b/addons/hr_evaluation/board_hr_evaluation_view.xml @@ -17,7 +17,7 @@ form - + diff --git a/addons/hr_expense/board_hr_expense_view.xml b/addons/hr_expense/board_hr_expense_view.xml index d9c80d6f755..3383f734f7d 100644 --- a/addons/hr_expense/board_hr_expense_view.xml +++ b/addons/hr_expense/board_hr_expense_view.xml @@ -17,7 +17,7 @@ form - + diff --git a/addons/hr_holidays/board_hr_holidays_view.xml b/addons/hr_holidays/board_hr_holidays_view.xml index f0a0ab0741a..178602725ae 100644 --- a/addons/hr_holidays/board_hr_holidays_view.xml +++ b/addons/hr_holidays/board_hr_holidays_view.xml @@ -16,7 +16,7 @@ form - + diff --git a/addons/hr_timesheet_sheet/board_hr_timesheet_view.xml b/addons/hr_timesheet_sheet/board_hr_timesheet_view.xml index 88e56ec6639..74530b81859 100644 --- a/addons/hr_timesheet_sheet/board_hr_timesheet_view.xml +++ b/addons/hr_timesheet_sheet/board_hr_timesheet_view.xml @@ -40,10 +40,8 @@ form - - + - From 5a19c4ad15f5aa0a6b38b6e14d5fd001cd50f0a0 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 6 Dec 2011 11:42:01 +0100 Subject: [PATCH 02/23] [REM] unused and graph-breaking code in gantt's dhtmlxcommon bzr revid: xmo@openerp.com-20111206104201-m5w3e3zx7vcypc5g --- .../lib/dhtmlxGantt/sources/dhtmlxcommon.js | 30 ------------------- 1 file changed, 30 deletions(-) diff --git a/addons/web_gantt/static/lib/dhtmlxGantt/sources/dhtmlxcommon.js b/addons/web_gantt/static/lib/dhtmlxGantt/sources/dhtmlxcommon.js index 7f68a0a702c..3e7465b1bcd 100644 --- a/addons/web_gantt/static/lib/dhtmlxGantt/sources/dhtmlxcommon.js +++ b/addons/web_gantt/static/lib/dhtmlxGantt/sources/dhtmlxcommon.js @@ -3,36 +3,6 @@ Copyright DHTMLX LTD. http://www.dhtmlx.com To use this component please contact sales@dhtmlx.com to obtain license */ -dhtmlx=function(obj){ - for (var a in obj) dhtmlx[a]=obj[a]; - return dhtmlx; //simple singleton -}; -dhtmlx.extend_api=function(name,map,ext){ - var t = window[name]; - if (!t) return; //component not defined - window[name]=function(obj){ - if (obj && typeof obj == "object" && !obj.tagName){ - var that = t.apply(this,(map._init?map._init(obj):arguments)); - //global settings - for (var a in dhtmlx) - if (map[a]) this[map[a]](dhtmlx[a]); - //local settings - for (var a in obj){ - if (map[a]) this[map[a]](obj[a]); - else if (a.indexOf("on")==0){ - this.attachEvent(a,obj[a]); - } - } - } else - var that = t.apply(this,arguments); - if (map._patch) map._patch(this); - return that||this; - }; - window[name].prototype=t.prototype; - if (ext) - dhtmlXHeir(window[name].prototype,ext); -}; - dhtmlxAjax={ get:function(url,callback){ var t=new dtmlXMLLoaderObject(true); From 0606306dd2141501b2dc9be1fcb25b68aeda0a59 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 6 Dec 2011 11:50:21 +0100 Subject: [PATCH 03/23] [FIX] incorrect date format output in hr.timesheet.analytic.profit default value lp bug: https://launchpad.net/bugs/900647 fixed bzr revid: xmo@openerp.com-20111206105021-pr9miyu518ayohj0 --- .../wizard/hr_timesheet_analytic_profit.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/addons/hr_timesheet_invoice/wizard/hr_timesheet_analytic_profit.py b/addons/hr_timesheet_invoice/wizard/hr_timesheet_analytic_profit.py index 7d5d7a36867..518bb981df9 100644 --- a/addons/hr_timesheet_invoice/wizard/hr_timesheet_analytic_profit.py +++ b/addons/hr_timesheet_invoice/wizard/hr_timesheet_analytic_profit.py @@ -31,18 +31,18 @@ class account_analytic_profit(osv.osv_memory): 'date_to': fields.date('To', required=True), 'journal_ids': fields.many2many('account.analytic.journal', 'analytic_profit_journal_rel', 'analytic_id', 'journal_id', 'Journal', required=True), 'employee_ids': fields.many2many('res.users', 'analytic_profit_emp_rel', 'analytic_id', 'emp_id', 'User', required=True), - } + } def _date_from(*a): - return datetime.datetime.today().strftime('%Y-%m-1') + return datetime.date.today().replace(day=1).strftime('%Y-%m-%d') def _date_to(*a): - return datetime.datetime.today().strftime('%Y-%m-%d') + return datetime.date.today().strftime('%Y-%m-%d') _defaults = { - 'date_from': _date_from, - 'date_to': _date_to - } + 'date_from': _date_from, + 'date_to': _date_to + } def print_report(self, cr, uid, ids, context=None): line_obj = self.pool.get('account.analytic.line') @@ -72,4 +72,4 @@ class account_analytic_profit(osv.osv_memory): account_analytic_profit() -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: \ No newline at end of file +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: From 1719b9408b5eb93cba3fe82920e6fb39988197c2 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Tue, 6 Dec 2011 11:57:34 +0100 Subject: [PATCH 04/23] [REM] Removed unnecessary auto_search keys in actions bzr revid: fme@openerp.com-20111206105734-9271jcsc8leanj66 --- addons/web_diagram/static/src/js/diagram.js | 1 - addons/web_process/static/src/js/process.js | 1 - 2 files changed, 2 deletions(-) diff --git a/addons/web_diagram/static/src/js/diagram.js b/addons/web_diagram/static/src/js/diagram.js index e4fb3ef5b75..08617efd073 100644 --- a/addons/web_diagram/static/src/js/diagram.js +++ b/addons/web_diagram/static/src/js/diagram.js @@ -223,7 +223,6 @@ openerp.web.DiagramView = openerp.web.View.extend({ res_id: id, views : [[false, 'form']], type : 'ir.actions.act_window', - auto_search : false, flags : { search_view: false, sidebar : false, diff --git a/addons/web_process/static/src/js/process.js b/addons/web_process/static/src/js/process.js index d33ed6bcd35..9bf814aa4f4 100644 --- a/addons/web_process/static/src/js/process.js +++ b/addons/web_process/static/src/js/process.js @@ -296,7 +296,6 @@ openerp.web_process = function (openerp) { res_id: self.process_id, views : [[false, 'form']], type : 'ir.actions.act_window', - auto_search : false, flags : { search_view: false, sidebar : false, From f7d4c3384d57e21739eeea377aa96a628e0f2e40 Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Tue, 6 Dec 2011 12:15:31 +0100 Subject: [PATCH 05/23] [IMP] Core features on modules, better views for modules bzr revid: fp@tinyerp.com-20111206111531-qdkajwatqzb0dz45 --- openerp/addons/base/base.sql | 2 ++ openerp/addons/base/module/module.py | 1 + openerp/addons/base/module/module_view.xml | 41 ++++++++++------------ openerp/modules/db.py | 6 ++-- openerp/modules/module.py | 2 ++ 5 files changed, 26 insertions(+), 26 deletions(-) diff --git a/openerp/addons/base/base.sql b/openerp/addons/base/base.sql index 55c4d41aba5..6f3a8ed1ee8 100644 --- a/openerp/addons/base/base.sql +++ b/openerp/addons/base/base.sql @@ -287,6 +287,7 @@ CREATE TABLE ir_module_module ( name character varying(128) NOT NULL, author character varying(128), url character varying(128), + icon character varying(64), state character varying(16), latest_version character varying(64), shortdesc character varying(256), @@ -294,6 +295,7 @@ CREATE TABLE ir_module_module ( category_id integer REFERENCES ir_module_category ON DELETE SET NULL, certificate character varying(64), description text, + core boolean default False, demo boolean default False, web boolean DEFAULT FALSE, license character varying(32), diff --git a/openerp/addons/base/module/module.py b/openerp/addons/base/module/module.py index 7a4ca000e63..fd69c0750ab 100644 --- a/openerp/addons/base/module/module.py +++ b/openerp/addons/base/module/module.py @@ -215,6 +215,7 @@ class module(osv.osv): 'views_by_module': fields.function(_get_views, method=True, string='Views', type='text', multi="meta", store=True), 'certificate' : fields.char('Quality Certificate', size=64, readonly=True), 'web': fields.boolean('Has a web component', readonly=True), + 'core': fields.boolean('Is a Core Application', readonly=True), 'icon': fields.char('Icon URL', size=128), 'complexity': fields.selection([('easy','Easy'), ('normal','Normal'), ('expert','Expert')], string='Complexity', readonly=True, diff --git a/openerp/addons/base/module/module_view.xml b/openerp/addons/base/module/module_view.xml index 80a13a75e35..38595f2bc19 100644 --- a/openerp/addons/base/module/module_view.xml +++ b/openerp/addons/base/module/module_view.xml @@ -39,24 +39,16 @@ + + + + - - + - - - - - - - - - - - - - - + @@ -118,13 +110,16 @@ form
- - - - - - - + + + + + + + + + + diff --git a/openerp/modules/db.py b/openerp/modules/db.py index 692bf9732f1..4f8032716a9 100644 --- a/openerp/modules/db.py +++ b/openerp/modules/db.py @@ -75,14 +75,14 @@ def initialize(cr): cr.execute('INSERT INTO ir_module_module \ (author, website, name, shortdesc, description, \ - category_id, state, certificate, web, license, complexity) \ - VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING id', ( + category_id, state, certificate, web, license, complexity, core, icon) \ + VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s) RETURNING id', ( info['author'], info['website'], i, info['name'], info['description'], category_id, state, info['certificate'], info['web'], info['license'], - info['complexity'])) + info['complexity'], info['core'], info['icon'])) id = cr.fetchone()[0] cr.execute('INSERT INTO ir_model_data \ (name,model,module, res_id, noupdate) VALUES (%s,%s,%s,%s,%s)', ( diff --git a/openerp/modules/module.py b/openerp/modules/module.py index 53e8b86d6bf..09fcb2e9a0a 100644 --- a/openerp/modules/module.py +++ b/openerp/modules/module.py @@ -250,6 +250,8 @@ def load_information_from_description_file(module): info.setdefault('name', False) info.setdefault('description', '') info.setdefault('complexity', 'normal') + info.setdefault('core', False) + info.setdefault('icon', '') info['certificate'] = info.get('certificate') or None info['web'] = info.get('web') or False info['license'] = info.get('license') or 'AGPL-3' From 0eab577b40cb1d253915655b84923911101b72f6 Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Tue, 6 Dec 2011 12:21:27 +0100 Subject: [PATCH 06/23] [IMP] Core modules for apps bzr revid: fp@tinyerp.com-20111206112127-5lir7aovygx4a4oi --- addons/account/__openerp__.py | 1 + addons/account_accountant/__openerp__.py | 1 + addons/account_analytic_analysis/__openerp__.py | 3 ++- addons/account_asset/__openerp__.py | 1 + addons/association/__openerp__.py | 1 + addons/auction/__openerp__.py | 1 + addons/crm/__openerp__.py | 1 + addons/crm_claim/__openerp__.py | 1 + addons/crm_fundraising/__openerp__.py | 1 + addons/crm_helpdesk/__openerp__.py | 1 + addons/document_ftp/__openerp__.py | 1 + addons/event/__openerp__.py | 1 + addons/hr_evaluation/__openerp__.py | 1 + addons/hr_expense/__openerp__.py | 1 + addons/hr_holidays/__openerp__.py | 1 + addons/hr_payroll/__openerp__.py | 1 + addons/hr_recruitment/__openerp__.py | 1 + addons/hr_timesheet_sheet/__openerp__.py | 1 + addons/idea/__openerp__.py | 1 + addons/lunch/__openerp__.py | 1 + addons/marketing_campaign/__openerp__.py | 1 + addons/mrp/__openerp__.py | 1 + addons/mrp_repair/__openerp__.py | 1 + addons/point_of_sale/__openerp__.py | 1 + addons/project/__openerp__.py | 1 + addons/project_gtd/__openerp__.py | 1 + addons/project_issue/__openerp__.py | 1 + addons/project_long_term/__openerp__.py | 1 + addons/purchase/__openerp__.py | 1 + addons/stock/__openerp__.py | 1 + addons/survey/__openerp__.py | 1 + 31 files changed, 32 insertions(+), 1 deletion(-) diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py index c8d17c2cf9e..a2562e8dc42 100644 --- a/addons/account/__openerp__.py +++ b/addons/account/__openerp__.py @@ -152,6 +152,7 @@ module named account_voucher. ], 'installable': True, 'active': False, + 'core': True, 'certificate': '0080331923549', } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_accountant/__openerp__.py b/addons/account_accountant/__openerp__.py index d808a38fa18..3230af26257 100644 --- a/addons/account_accountant/__openerp__.py +++ b/addons/account_accountant/__openerp__.py @@ -45,6 +45,7 @@ user rights to Demo user. 'test': [], 'installable': True, 'active': False, + 'core': True, 'certificate': '00395091383933390541', } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_analytic_analysis/__openerp__.py b/addons/account_analytic_analysis/__openerp__.py index 32642caf49c..9b6aef181bc 100644 --- a/addons/account_analytic_analysis/__openerp__.py +++ b/addons/account_analytic_analysis/__openerp__.py @@ -21,7 +21,7 @@ { - 'name' : 'Sales Contract Management', + 'name' : 'Contracts Management', 'version' : '1.1', 'category' : 'Sales Management', 'complexity': "normal", @@ -46,6 +46,7 @@ user-wise as well as month wise. ], 'demo_xml' : [], 'installable': True, + 'core': True, 'active' : False, 'certificate': '0042927202589', } diff --git a/addons/account_asset/__openerp__.py b/addons/account_asset/__openerp__.py index f3d00b08893..e7fd5a52efd 100644 --- a/addons/account_asset/__openerp__.py +++ b/addons/account_asset/__openerp__.py @@ -49,6 +49,7 @@ ], "active": False, "installable": True, + "core": True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/association/__openerp__.py b/addons/association/__openerp__.py index 3dc6c03f94e..c191d40a365 100644 --- a/addons/association/__openerp__.py +++ b/addons/association/__openerp__.py @@ -37,6 +37,7 @@ It installs the profile for associations to manage events, registrations, member 'demo_xml': [], 'installable': True, 'active': False, + 'core': True, 'certificate': '0078696047261', 'images': ['images/association1.jpeg'], } diff --git a/addons/auction/__openerp__.py b/addons/auction/__openerp__.py index 3f6c6c35e31..0475890e1e9 100644 --- a/addons/auction/__openerp__.py +++ b/addons/auction/__openerp__.py @@ -68,6 +68,7 @@ The dashboard for auction includes: ], 'installable': True, + 'auction': True, 'active': False, 'certificate': '0039333102717', 'images': ['images/auction1.jpeg','images/auction2.jpeg','images/auction3.jpeg'], diff --git a/addons/crm/__openerp__.py b/addons/crm/__openerp__.py index fd6c7e6222a..f6a29817846 100644 --- a/addons/crm/__openerp__.py +++ b/addons/crm/__openerp__.py @@ -129,6 +129,7 @@ Creates a dashboard for CRM that includes: 'test/ui/delete_lead.yml' ], 'installable': True, + 'core': True, 'active': False, 'certificate': '0079056041421', 'images': ['images/sale_crm_crm_dashboard.png', 'images/crm_dashboard.jpeg','images/leads.jpeg','images/meetings.jpeg','images/opportunities.jpeg','images/outbound_calls.jpeg','images/stages.jpeg'], diff --git a/addons/crm_claim/__openerp__.py b/addons/crm_claim/__openerp__.py index 8c3854ffd2e..de526f5e5d3 100644 --- a/addons/crm_claim/__openerp__.py +++ b/addons/crm_claim/__openerp__.py @@ -52,6 +52,7 @@ automatically new claims based on incoming emails. 'test/ui/claim_demo.yml' ], 'installable': True, + 'core': True, 'active': False, 'certificate' : '00612027414703404749', 'images': ['images/claim_categories.jpeg','images/claim_stages.jpeg','images/claims.jpeg'], diff --git a/addons/crm_fundraising/__openerp__.py b/addons/crm_fundraising/__openerp__.py index 993b3dc6434..98a1fb393d5 100644 --- a/addons/crm_fundraising/__openerp__.py +++ b/addons/crm_fundraising/__openerp__.py @@ -53,6 +53,7 @@ fund status. ], 'test': ['test/process/fund-rising.yml'], 'installable': True, + 'core': True, 'active': False, 'certificate' : '00871545204231528989', 'images': ['images/fundraising_analysis.jpeg','images/fundraising_categories.jpeg','images/funds.jpeg'], diff --git a/addons/crm_helpdesk/__openerp__.py b/addons/crm_helpdesk/__openerp__.py index 2adf7d26dcc..0eda54228cd 100644 --- a/addons/crm_helpdesk/__openerp__.py +++ b/addons/crm_helpdesk/__openerp__.py @@ -51,6 +51,7 @@ and categorize your interventions with a channel and a priority level. ], 'test': ['test/process/help-desk.yml'], 'installable': True, + 'core': True, 'active': False, 'certificate' : '00830691522781519309', 'images': ['images/helpdesk_analysis.jpeg','images/helpdesk_categories.jpeg','images/helpdesk_requests.jpeg'], diff --git a/addons/document_ftp/__openerp__.py b/addons/document_ftp/__openerp__.py index 499a928c077..d70a14a433c 100644 --- a/addons/document_ftp/__openerp__.py +++ b/addons/document_ftp/__openerp__.py @@ -49,6 +49,7 @@ FTP client. ], 'installable': True, 'active': False, + 'core': True, 'certificate': '00934787762705016005', 'images': ['images/1_configure_ftp.jpeg','images/2_document_browse.jpeg','images/3_document_ftp.jpeg'], 'post_load': 'post_load', diff --git a/addons/event/__openerp__.py b/addons/event/__openerp__.py index 1890ed7bf84..0e8cd891813 100644 --- a/addons/event/__openerp__.py +++ b/addons/event/__openerp__.py @@ -56,6 +56,7 @@ Note that: 'demo_xml': ['event_demo.xml'], 'test': ['test/test_event.yml'], 'installable': True, + 'core': True, 'active': False, 'certificate': '0083059161581', 'images': ['images/1_event_type_list.jpeg','images/2_events.jpeg','images/3_registrations.jpeg'], diff --git a/addons/hr_evaluation/__openerp__.py b/addons/hr_evaluation/__openerp__.py index a834b4020ec..25949b23ea8 100644 --- a/addons/hr_evaluation/__openerp__.py +++ b/addons/hr_evaluation/__openerp__.py @@ -54,6 +54,7 @@ in the form of pdf file. Implements a dashboard for My Current Evaluations "active": False, "installable": True, "certificate" : "00883207679172998429", + 'core': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_expense/__openerp__.py b/addons/hr_expense/__openerp__.py index 4a22f00e076..5224eaacb6b 100644 --- a/addons/hr_expense/__openerp__.py +++ b/addons/hr_expense/__openerp__.py @@ -68,5 +68,6 @@ re-invoice your customer's expenses if your work by project. 'installable': True, 'active': False, 'certificate': '0062479841789', + 'core': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_holidays/__openerp__.py b/addons/hr_holidays/__openerp__.py index ec12b884201..55a6f2eb41f 100644 --- a/addons/hr_holidays/__openerp__.py +++ b/addons/hr_holidays/__openerp__.py @@ -72,6 +72,7 @@ Note that: 'test/hr_holidays_report.yml', ], 'installable': True, + 'core': True, 'active': False, 'certificate': '0086579209325', } diff --git a/addons/hr_payroll/__openerp__.py b/addons/hr_payroll/__openerp__.py index 5c78b80f095..b8287025f9b 100644 --- a/addons/hr_payroll/__openerp__.py +++ b/addons/hr_payroll/__openerp__.py @@ -71,6 +71,7 @@ Generic Payroll system. 'installable': True, 'active': False, 'certificate' : '001046261404562128861', + 'core': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_recruitment/__openerp__.py b/addons/hr_recruitment/__openerp__.py index e41d24cf30b..e7e43d5264f 100644 --- a/addons/hr_recruitment/__openerp__.py +++ b/addons/hr_recruitment/__openerp__.py @@ -60,6 +60,7 @@ system to store and search in your CV base. 'installable': True, 'active': False, 'certificate' : '001073437025460275621', + 'core': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_timesheet_sheet/__openerp__.py b/addons/hr_timesheet_sheet/__openerp__.py index 403d435df71..3948653355b 100644 --- a/addons/hr_timesheet_sheet/__openerp__.py +++ b/addons/hr_timesheet_sheet/__openerp__.py @@ -69,5 +69,6 @@ The validation can be configured in the company: 'installable': True, 'active': False, 'certificate': '0073297700829', + 'core': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/idea/__openerp__.py b/addons/idea/__openerp__.py index 66709824c4a..7d9ecff5d9c 100644 --- a/addons/idea/__openerp__.py +++ b/addons/idea/__openerp__.py @@ -53,6 +53,7 @@ Once installed, check the menu 'Ideas' in the 'Tools' main menu.""", 'test/test_idea.yml' ], 'installable': True, + 'core': True, 'certificate': '0071515601309', 'images': ['images/1_ideas.jpeg','images/2_idea_categories.jpeg','images/3_vote_idea.jpeg'], } diff --git a/addons/lunch/__openerp__.py b/addons/lunch/__openerp__.py index 6d5cd576912..242916339bc 100644 --- a/addons/lunch/__openerp__.py +++ b/addons/lunch/__openerp__.py @@ -55,6 +55,7 @@ "demo_xml": ['lunch_demo.xml'], "test": ['test/test_lunch.yml', 'test/lunch_report.yml'], "installable": True, + 'core': True, "certificate" : "001292377792581874189", 'images': ['images/cash_moves.jpeg','images/lunch_orders.jpeg','images/products.jpeg'], } diff --git a/addons/marketing_campaign/__openerp__.py b/addons/marketing_campaign/__openerp__.py index 44a2f1e30bd..02256d8ffc3 100644 --- a/addons/marketing_campaign/__openerp__.py +++ b/addons/marketing_campaign/__openerp__.py @@ -60,6 +60,7 @@ Note: If you need demo data, you can install the marketing_campaign_crm_demo mod 'demo_xml': [ ], 'installable': True, + 'core': True, 'active': False, 'certificate' : '00421723279617928365', 'images': ['images/campaign.png', 'images/campaigns.jpeg','images/email_account.jpeg','images/email_templates.jpeg','images/segments.jpeg'], diff --git a/addons/mrp/__openerp__.py b/addons/mrp/__openerp__.py index 38c5fa9a9d1..2f132e03ed5 100644 --- a/addons/mrp/__openerp__.py +++ b/addons/mrp/__openerp__.py @@ -101,6 +101,7 @@ Dashboard provided by this module: ], 'installable': True, + 'core': True, 'active': False, 'certificate': '0032052481373', } diff --git a/addons/mrp_repair/__openerp__.py b/addons/mrp_repair/__openerp__.py index a1f060cf7c3..cb21831c1dd 100644 --- a/addons/mrp_repair/__openerp__.py +++ b/addons/mrp_repair/__openerp__.py @@ -51,6 +51,7 @@ The aim is to have a complete module to manage all products repairs. The followi 'demo_xml': [], 'test': ['test/test_mrp_repair.yml', 'test/mrp_repair_report.yml','test/mrp_repair_cancel.yml'], 'installable': True, + 'core': True, 'active': False, 'certificate': '0060814381277', } diff --git a/addons/point_of_sale/__openerp__.py b/addons/point_of_sale/__openerp__.py index 4daeabb9129..751305f05a2 100644 --- a/addons/point_of_sale/__openerp__.py +++ b/addons/point_of_sale/__openerp__.py @@ -79,6 +79,7 @@ Main features : 'test/point_of_sale_report.yml' ], 'installable': True, + 'core': True, 'certificate' : '001156338024966477869', # Web client 'js': ['static/lib/backbone/backbone-0.5.3.js', 'static/src/js/pos.js'], diff --git a/addons/project/__openerp__.py b/addons/project/__openerp__.py index 1913cc62c04..84cde80e0a3 100644 --- a/addons/project/__openerp__.py +++ b/addons/project/__openerp__.py @@ -67,6 +67,7 @@ Dashboard for project members that includes: ], 'installable': True, 'active': False, + 'core': True, 'certificate': '0075116868317', } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project_gtd/__openerp__.py b/addons/project_gtd/__openerp__.py index 761b2b44708..701e0d3ca3b 100644 --- a/addons/project_gtd/__openerp__.py +++ b/addons/project_gtd/__openerp__.py @@ -60,6 +60,7 @@ performing those tasks. 'test/gtd_test.yml' ], 'installable': True, + 'core': True, 'active': False, 'certificate': '0043525236301', } diff --git a/addons/project_issue/__openerp__.py b/addons/project_issue/__openerp__.py index e77499df3d0..4f06222d76c 100644 --- a/addons/project_issue/__openerp__.py +++ b/addons/project_issue/__openerp__.py @@ -59,6 +59,7 @@ and decide on their status as they evolve. ], 'installable': True, 'active': False, + 'core': True, 'certificate' : '001236490750848623845', } diff --git a/addons/project_long_term/__openerp__.py b/addons/project_long_term/__openerp__.py index f4b8ce34ad0..56270266c40 100644 --- a/addons/project_long_term/__openerp__.py +++ b/addons/project_long_term/__openerp__.py @@ -60,6 +60,7 @@ Features "wizard/project_compute_tasks_view.xml", ], 'installable': True, + 'core': True, 'active': False, 'certificate': '001227470751077315069', } diff --git a/addons/purchase/__openerp__.py b/addons/purchase/__openerp__.py index b4f3a9adf30..1a774ceb0ee 100644 --- a/addons/purchase/__openerp__.py +++ b/addons/purchase/__openerp__.py @@ -78,5 +78,6 @@ Dashboard for purchase management that includes: 'installable': True, 'active': False, 'certificate': '0057234283549', + 'core': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/stock/__openerp__.py b/addons/stock/__openerp__.py index 9608aa9d8ad..6ea85face1e 100644 --- a/addons/stock/__openerp__.py +++ b/addons/stock/__openerp__.py @@ -88,6 +88,7 @@ Thanks to the double entry management, the inventory controlling is powerful and 'test/stock_demo_backorder.yml' ], 'installable': True, + 'core': True, 'active': False, 'certificate': '0055421559965', } diff --git a/addons/survey/__openerp__.py b/addons/survey/__openerp__.py index e9bd92f5840..3e2523dc702 100644 --- a/addons/survey/__openerp__.py +++ b/addons/survey/__openerp__.py @@ -52,6 +52,7 @@ Partners are also sent mails with user name and password for the invitation of t 'test/survey_report.yml', ], 'installable': True, + 'core': True, 'active': False, 'certificate' : '001131639736864143245', 'images': ['images/survey_answers.jpeg','images/survey_pages.jpeg','images/surveys.jpeg'], From 41e8b3f92c74a09fbdb524ee7ecaa7c788dfd010 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 6 Dec 2011 12:31:41 +0100 Subject: [PATCH 07/23] [FIX] correctly send context during graph's fields_get lp bug: https://launchpad.net/bugs/898636 fixed bzr revid: xmo@openerp.com-20111206113141-nbfxp0jx4lrgo95g --- addons/web/controllers/main.py | 11 +++++++---- addons/web/static/src/js/data.js | 4 ++-- addons/web_graph/static/src/js/graph.js | 2 +- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index f811f77b34c..d500ad0684e 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -778,12 +778,15 @@ class DataSet(openerpweb.Controller): return Model.unlink(ids, req.session.eval_context(req.context)) def call_common(self, req, model, method, args, domain_id=None, context_id=None): - domain = args[domain_id] if domain_id and len(args) - 1 >= domain_id else [] - context = args[context_id] if context_id and len(args) - 1 >= context_id else {} + has_domain = domain_id is not None and domain_id < len(args) + has_context = context_id is not None and context_id < len(args) + + domain = args[domain_id] if has_domain else [] + context = args[context_id] if has_context else {} c, d = eval_context_and_domain(req.session, context, domain) - if domain_id and len(args) - 1 >= domain_id: + if has_domain: args[domain_id] = d - if context_id and len(args) - 1 >= context_id: + if has_context: args[context_id] = c for i in xrange(len(args)): diff --git a/addons/web/static/src/js/data.js b/addons/web/static/src/js/data.js index d9bb8149ea8..58dcb2ce5af 100644 --- a/addons/web/static/src/js/data.js +++ b/addons/web/static/src/js/data.js @@ -425,8 +425,8 @@ openerp.web.DataSet = openerp.web.Widget.extend( /** @lends openerp.web.DataSet return this.rpc('/web/dataset/call', { model: this.model, method: method, - domain_id: domain_index || null, - context_id: context_index || null, + domain_id: domain_index == undefined ? null : domain_index, + context_id: context_index == undefined ? null : context_index, args: args || [] }, callback, error_callback); }, diff --git a/addons/web_graph/static/src/js/graph.js b/addons/web_graph/static/src/js/graph.js index f940cac8b0b..aa71dd9e25e 100644 --- a/addons/web_graph/static/src/js/graph.js +++ b/addons/web_graph/static/src/js/graph.js @@ -57,7 +57,7 @@ openerp.web_graph.GraphView = openerp.web.View.extend({ }); } return $.when( - this.dataset.call('fields_get', []), + this.dataset.call_and_eval('fields_get', [false, {}], null, 1), loaded) .then(function (fields_result, view_result) { self.fields = fields_result[0]; From e719ba764af32ceb0db8637086148e0f8301c803 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Tue, 6 Dec 2011 12:36:58 +0100 Subject: [PATCH 08/23] [FIX] Fixed view_manager double do_search triggering [REM] Removed autosearch [REM] Removed last search caching bzr revid: fme@openerp.com-20111206113658-ntnl14ezdnqqhe3m --- addons/web/static/src/js/search.js | 3 +-- addons/web/static/src/js/view_editor.js | 1 - addons/web/static/src/js/views.js | 33 +++++++++---------------- addons/web_graph/static/src/js/graph.js | 1 - 4 files changed, 12 insertions(+), 26 deletions(-) diff --git a/addons/web/static/src/js/search.js b/addons/web/static/src/js/search.js index e0700231e60..c3e27fc52be 100644 --- a/addons/web/static/src/js/search.js +++ b/addons/web/static/src/js/search.js @@ -210,8 +210,7 @@ openerp.web.SearchView = openerp.web.Widget.extend(/** @lends openerp.web.Search context: {"search_default_user_id": this.session.uid, "search_default_model_id": this.dataset.model}, target: "current", - limit : 80, - auto_search : true + limit : 80 }); break; case 'save_filter': diff --git a/addons/web/static/src/js/view_editor.js b/addons/web/static/src/js/view_editor.js index 9f649b313df..8b328e32f44 100644 --- a/addons/web/static/src/js/view_editor.js +++ b/addons/web/static/src/js/view_editor.js @@ -26,7 +26,6 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({ type: 'ir.actions.act_window', target: "current", limit: this.dataset.limit || 80, - auto_search: true, flags: { sidebar: false, deletable: false, diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js index 244ec4f5df6..e1d9ee78868 100644 --- a/addons/web/static/src/js/views.js +++ b/addons/web/static/src/js/views.js @@ -188,7 +188,6 @@ session.web.ViewManager = session.web.Widget.extend(/** @lends session.web.View this.model = dataset ? dataset.model : undefined; this.dataset = dataset; this.searchview = null; - this.last_search = false; this.active_view = null; this.views_src = _.map(views, function(x) {return x instanceof Array? {view_id: x[0], view_type: x[1]} : x;}); this.views = {}; @@ -253,11 +252,11 @@ session.web.ViewManager = session.web.Widget.extend(/** @lends session.web.View $.when(view_promise).then(function() { self.on_controller_inited(view_type, controller); if (self.searchview && view.controller.searchable !== false) { - self.do_searchview_search(); + self.searchview.do_search(); } }); } else if (this.searchview && view.controller.searchable !== false) { - self.do_searchview_search(); + this.searchview.do_search(); } if (this.searchview) { @@ -306,20 +305,15 @@ session.web.ViewManager = session.web.Widget.extend(/** @lends session.web.View do_searchview_search: function(domains, contexts, groupbys) { var self = this, controller = this.views[this.active_view].controller; - if (domains || contexts) { - this.rpc('/web/session/eval_domain_and_context', { - domains: [this.action.domain || []].concat(domains || []), - contexts: [this.action.context || {}].concat(contexts || []), - group_by_seq: groupbys || [] - }, function (results) { - self.dataset.context = results.context; - self.dataset.domain = results.domain; - self.last_search = [results.domain, results.context, results.group_by]; - controller.do_search(results.domain, results.context, results.group_by); - }); - } else if (this.last_search) { - controller.do_search.apply(controller, this.last_search); - } + this.rpc('/web/session/eval_domain_and_context', { + domains: [this.action.domain || []].concat(domains || []), + contexts: [this.action.context || {}].concat(contexts || []), + group_by_seq: groupbys || [] + }, function (results) { + self.dataset.context = results.context; + self.dataset.domain = results.domain; + controller.do_search(results.domain, results.context, results.group_by); + }); }, /** * Event launched when a controller has been inited. @@ -413,10 +407,6 @@ session.web.ViewManagerAction = session.web.ViewManager.extend(/** @lends oepner var main_view_loaded = this._super(); var manager_ready = $.when(searchview_loaded, main_view_loaded); - if (searchview_loaded && this.action['auto_search'] !== false) { - // schedule auto_search - manager_ready.then(this.searchview.do_search); - } this.$element.find('.oe_get_xml_view').click(function () { // TODO: add search view? @@ -971,7 +961,6 @@ session.web.View = session.web.Widget.extend(/** @lends session.web.View# */{ domain : [['type', '!=', 'object'], '|', ['name', '=', this.dataset.model], ['name', 'ilike', this.dataset.model + ',']], views: [[false, 'list'], [false, 'form']], type : 'ir.actions.act_window', - auto_search : true, view_type : "list", view_mode : "list" }); diff --git a/addons/web_graph/static/src/js/graph.js b/addons/web_graph/static/src/js/graph.js index aa71dd9e25e..7f8f619a8c9 100644 --- a/addons/web_graph/static/src/js/graph.js +++ b/addons/web_graph/static/src/js/graph.js @@ -391,7 +391,6 @@ openerp.web_graph.GraphView = openerp.web.View.extend({ "domain" : [[record_id, '=', id], ['id','in',this.dataset.ids]], "views" : views, "type" : "ir.actions.act_window", - "auto_search" : true, "view_type" : "list", "view_mode" : "list" }); From 4e0befa1f4d944c3265d780f421a72fd64a878b2 Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Tue, 6 Dec 2011 13:03:55 +0100 Subject: [PATCH 09/23] [IMP] better manifests on modules bzr revid: fp@tinyerp.com-20111206120355-h5vufbibzovtvf0j --- addons/account/__openerp__.py | 5 ++--- addons/account_accountant/__openerp__.py | 4 ++-- addons/account_analytic_default/__openerp__.py | 2 +- addons/account_cancel/__openerp__.py | 2 +- addons/account_chart/__openerp__.py | 4 ++-- addons/account_coda/__openerp__.py | 4 ++-- addons/account_invoice_layout/__openerp__.py | 4 ++-- addons/account_sequence/__openerp__.py | 2 +- addons/account_voucher/__openerp__.py | 5 +++-- addons/analytic/__openerp__.py | 2 +- addons/analytic_journal_billing_rate/__openerp__.py | 4 ++-- addons/analytic_user_function/__openerp__.py | 4 ++-- addons/anonymization/__openerp__.py | 2 +- addons/association/__openerp__.py | 2 +- addons/audittrail/__openerp__.py | 2 +- addons/auth_openid/__openerp__.py | 4 ++-- addons/base_action_rule/__openerp__.py | 2 +- addons/base_calendar/__openerp__.py | 2 +- addons/base_contact/__openerp__.py | 2 +- addons/base_crypt/__openerp__.py | 4 ++-- addons/base_iban/__openerp__.py | 4 ++-- addons/base_module_doc_rst/__openerp__.py | 4 ++-- addons/base_module_quality/__openerp__.py | 4 ++-- addons/base_module_record/__openerp__.py | 2 +- addons/base_setup/__openerp__.py | 4 ++-- addons/base_synchro/__openerp__.py | 4 ++-- addons/base_tools/__openerp__.py | 2 +- addons/base_vat/__openerp__.py | 2 +- addons/board/__openerp__.py | 4 ++-- addons/caldav/__openerp__.py | 2 +- addons/claim_from_delivery/__openerp__.py | 2 +- addons/crm/__openerp__.py | 2 +- addons/crm_partner_assign/__openerp__.py | 2 +- addons/crm_todo/__openerp__.py | 2 +- addons/decimal_precision/__openerp__.py | 2 +- addons/document_ics/__openerp__.py | 4 ++-- addons/event/__openerp__.py | 4 ++-- addons/event_project/__openerp__.py | 4 ++-- addons/fetchmail_crm/__openerp__.py | 4 ++-- addons/fetchmail_crm_claim/__openerp__.py | 4 ++-- addons/fetchmail_hr_recruitment/__openerp__.py | 4 ++-- addons/fetchmail_project_issue/__openerp__.py | 4 ++-- addons/google_base_account/__openerp__.py | 4 ++-- addons/google_map/__openerp__.py | 4 ++-- addons/hr_expense/__openerp__.py | 2 +- addons/hr_holidays/__openerp__.py | 2 +- addons/hr_timesheet/__openerp__.py | 2 +- addons/hr_timesheet_invoice/__openerp__.py | 4 ++-- addons/html_view/__openerp__.py | 2 +- addons/import_base/__openerp__.py | 4 ++-- addons/knowledge/__openerp__.py | 4 ++-- addons/l10n_fr_rib/__openerp__.py | 2 +- addons/lunch/__openerp__.py | 2 +- addons/mail/__openerp__.py | 4 ++-- addons/marketing_campaign_crm_demo/__openerp__.py | 4 ++-- addons/membership/__openerp__.py | 2 +- addons/mrp_repair/__openerp__.py | 2 +- addons/multi_company/__openerp__.py | 2 +- addons/pad/__openerp__.py | 4 ++-- addons/pad_project/__openerp__.py | 4 ++-- addons/plugin/__openerp__.py | 4 ++-- addons/portal/__openerp__.py | 2 +- addons/process/__openerp__.py | 2 +- addons/product/__openerp__.py | 2 +- addons/product_manufacturer/__openerp__.py | 2 +- addons/product_margin/__openerp__.py | 4 ++-- addons/product_visible_discount/__openerp__.py | 4 ++-- addons/profile_tools/__openerp__.py | 4 ++-- addons/project_caldav/__openerp__.py | 2 +- addons/project_gtd/__openerp__.py | 2 +- addons/project_issue_sheet/__openerp__.py | 4 ++-- addons/project_long_term/__openerp__.py | 2 +- addons/project_mailgate/__openerp__.py | 4 ++-- addons/project_messages/__openerp__.py | 2 +- addons/project_mrp/__openerp__.py | 4 ++-- addons/project_planning/__openerp__.py | 2 +- addons/project_retro_planning/__openerp__.py | 4 ++-- addons/purchase_double_validation/__openerp__.py | 4 ++-- addons/report_designer/__openerp__.py | 4 ++-- addons/report_intrastat/__openerp__.py | 2 +- addons/report_webkit/__openerp__.py | 2 +- addons/report_webkit_sample/__openerp__.py | 2 +- addons/resource/__openerp__.py | 2 +- addons/sale_analytic_plans/__openerp__.py | 4 ++-- addons/share/__openerp__.py | 4 ++-- addons/stock_invoice_directly/__openerp__.py | 2 +- addons/stock_no_autopicking/__openerp__.py | 2 +- addons/stock_planning/__openerp__.py | 2 +- addons/subscription/__openerp__.py | 2 +- addons/survey/__openerp__.py | 2 +- addons/users_ldap/__openerp__.py | 4 ++-- addons/warning/__openerp__.py | 4 ++-- addons/web_livechat/__openerp__.py | 2 +- addons/web_uservoice/__openerp__.py | 2 +- 94 files changed, 141 insertions(+), 141 deletions(-) diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py index a2562e8dc42..08122f5af30 100644 --- a/addons/account/__openerp__.py +++ b/addons/account/__openerp__.py @@ -19,11 +19,11 @@ # ############################################################################## { - "name" : "Accounting and Financial Management", + "name" : "eInvoicing", "version" : "1.1", "author" : "OpenERP SA", "category": 'Accounting & Finance', - 'complexity': "normal", + 'complexity': "easy", "description": """ Accounting and Financial Management. ==================================== @@ -152,7 +152,6 @@ module named account_voucher. ], 'installable': True, 'active': False, - 'core': True, 'certificate': '0080331923549', } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_accountant/__openerp__.py b/addons/account_accountant/__openerp__.py index 3230af26257..e1a7deac608 100644 --- a/addons/account_accountant/__openerp__.py +++ b/addons/account_accountant/__openerp__.py @@ -19,10 +19,10 @@ # ############################################################################## { - "name" : "Accountant Access", + "name" : "Accounting and Finance", "version" : "1.1", "author" : "OpenERP SA", - "category": 'Hidden', + "category": 'Accounting & Finance', 'complexity': "normal", "description": """ Accounting Access Rights. diff --git a/addons/account_analytic_default/__openerp__.py b/addons/account_analytic_default/__openerp__.py index e46f285d9c6..a842275cdee 100644 --- a/addons/account_analytic_default/__openerp__.py +++ b/addons/account_analytic_default/__openerp__.py @@ -22,7 +22,7 @@ { 'name' : 'Account Analytic Defaults', 'version' : '1.0', - 'category' : 'Hidden', + "category": 'Accounting & Finance', 'complexity': "normal", 'description': """Set default values for your analytic accounts Allows to automatically select analytic accounts based on criterions: diff --git a/addons/account_cancel/__openerp__.py b/addons/account_cancel/__openerp__.py index ac73a2b8c31..647146f98fb 100644 --- a/addons/account_cancel/__openerp__.py +++ b/addons/account_cancel/__openerp__.py @@ -23,7 +23,7 @@ "name" : "Cancel Entries", "version" : "1.1", "author" : "OpenERP SA", - "category": 'Hidden', + "category": 'Accounting & Finance', 'complexity': "normal", "description": """ Allows cancelling accounting entries. diff --git a/addons/account_chart/__openerp__.py b/addons/account_chart/__openerp__.py index 948f13b5dcb..d476eb1f443 100644 --- a/addons/account_chart/__openerp__.py +++ b/addons/account_chart/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Charts of Accounts', + 'name': 'Template of Charts of Accounts', 'version': '1.1', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'description': """ Remove minimal account chart. ============================= diff --git a/addons/account_coda/__openerp__.py b/addons/account_coda/__openerp__.py index dd604e41aca..a51a9a1ede7 100644 --- a/addons/account_coda/__openerp__.py +++ b/addons/account_coda/__openerp__.py @@ -20,10 +20,10 @@ ############################################################################## { - "name" : "Account CODA - import bank statements from coda file", + "name" : "CODA Bank Statements", "version" : "1.0", "author" : "OpenERP SA", - "category" : "Hidden", + "category": 'Accounting & Finance', 'complexity': "normal", "description": """ Module provides functionality to import bank statements from coda files. diff --git a/addons/account_invoice_layout/__openerp__.py b/addons/account_invoice_layout/__openerp__.py index 557f3c2e02c..cff01fa768b 100644 --- a/addons/account_invoice_layout/__openerp__.py +++ b/addons/account_invoice_layout/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Improve Invoice Layout', + 'name': 'Invoice Layouts', 'version': '1.0', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'complexity': "easy", 'description': """ This module provides some features to improve the layout of the invoices. diff --git a/addons/account_sequence/__openerp__.py b/addons/account_sequence/__openerp__.py index 31d4f373e2f..7ad66a5b428 100644 --- a/addons/account_sequence/__openerp__.py +++ b/addons/account_sequence/__openerp__.py @@ -22,7 +22,7 @@ { 'name': 'Entries Sequence Numbering', 'version': '1.1', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'complexity': "easy", 'description': """ This module maintains internal sequence number for accounting entries. diff --git a/addons/account_voucher/__openerp__.py b/addons/account_voucher/__openerp__.py index 5e6e6ab0513..3e145272a14 100644 --- a/addons/account_voucher/__openerp__.py +++ b/addons/account_voucher/__openerp__.py @@ -20,7 +20,7 @@ ############################################################################## { - "name" : "Accounting Voucher Entries", + "name" : "eInvoicing & Payments", "version" : "1.0", "author" : 'OpenERP SA', 'complexity': "normal", @@ -32,7 +32,7 @@ Account Voucher module includes all the basic requirements of Voucher Entries fo * Voucher Receipt * Cheque Register """, - "category" : "Hidden", + "category": 'Accounting & Finance', "website" : "http://tinyerp.com", "images" : ["images/customer_payment.jpeg","images/journal_voucher.jpeg","images/sales_receipt.jpeg","images/supplier_voucher.jpeg"], "depends" : ["account"], @@ -68,6 +68,7 @@ Account Voucher module includes all the basic requirements of Voucher Entries fo ], 'certificate': '0037580727101', "active": False, + "core": True, "installable": True, } diff --git a/addons/analytic/__openerp__.py b/addons/analytic/__openerp__.py index 65f6588a1e3..4e10e243d61 100644 --- a/addons/analytic/__openerp__.py +++ b/addons/analytic/__openerp__.py @@ -24,7 +24,7 @@ "version": "1.1", "author" : "OpenERP SA", "website" : "http://www.openerp.com", - "category" : "Hidden", + "category": 'Accounting & Finance', "depends" : ["base", "decimal_precision"], "description": """ Module for defining analytic accounting object. diff --git a/addons/analytic_journal_billing_rate/__openerp__.py b/addons/analytic_journal_billing_rate/__openerp__.py index 059e85d9367..f29e19147d1 100644 --- a/addons/analytic_journal_billing_rate/__openerp__.py +++ b/addons/analytic_journal_billing_rate/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Analytic Journal Billing Rate, Define the default invoicing rate for a specific journal', + 'name': 'Billing Rates on Contracts', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'description': """ This module allows you to define what is the default invoicing rate for a specific journal on a given account. ============================================================================================================== diff --git a/addons/analytic_user_function/__openerp__.py b/addons/analytic_user_function/__openerp__.py index bb3ca084be7..d7f97c1b158 100644 --- a/addons/analytic_user_function/__openerp__.py +++ b/addons/analytic_user_function/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Human Resources', + 'name': 'Jobs on Contracts', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'description': """ This module allows you to define what is the default function of a specific user on a given account. ==================================================================================================== diff --git a/addons/anonymization/__openerp__.py b/addons/anonymization/__openerp__.py index ed22530c6bc..91b6686c621 100644 --- a/addons/anonymization/__openerp__.py +++ b/addons/anonymization/__openerp__.py @@ -24,7 +24,7 @@ { 'name': 'Database Anonymization', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ This module allows you to anonymize a database. diff --git a/addons/association/__openerp__.py b/addons/association/__openerp__.py index c191d40a365..c67867d1627 100644 --- a/addons/association/__openerp__.py +++ b/addons/association/__openerp__.py @@ -21,7 +21,7 @@ { - 'name': 'Association profile', + 'name': 'Associations Management', 'version': '0.1', 'category': 'Specific Industry Applications', 'complexity': "normal", diff --git a/addons/audittrail/__openerp__.py b/addons/audittrail/__openerp__.py index 7d2a5955ac0..5bfd023ac39 100644 --- a/addons/audittrail/__openerp__.py +++ b/addons/audittrail/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Audit Trail', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module lets administrator track every user operation on all the objects of the system. =========================================================================================== diff --git a/addons/auth_openid/__openerp__.py b/addons/auth_openid/__openerp__.py index 040a96a3995..6fa802b94e3 100644 --- a/addons/auth_openid/__openerp__.py +++ b/addons/auth_openid/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'OpenID', + 'name': 'OpenID Authentification', 'version': '2.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """Allow users to login through OpenID.""", 'author': 'OpenERP s.a.', 'maintainer': 'OpenERP s.a.', diff --git a/addons/base_action_rule/__openerp__.py b/addons/base_action_rule/__openerp__.py index 18af8d09459..a8788bdddcb 100644 --- a/addons/base_action_rule/__openerp__.py +++ b/addons/base_action_rule/__openerp__.py @@ -22,7 +22,7 @@ { 'name': 'Action Rule', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'description': """ This module allows to implement action rules for any object. ============================================================ diff --git a/addons/base_calendar/__openerp__.py b/addons/base_calendar/__openerp__.py index 0dd72a17038..6edb978301f 100644 --- a/addons/base_calendar/__openerp__.py +++ b/addons/base_calendar/__openerp__.py @@ -34,7 +34,7 @@ It supports: - Recurring events - Invitations to people""", "author" : "OpenERP SA", - 'category': 'Hidden', + 'category': 'Tools', 'website': 'http://www.openerp.com', "init_xml" : [ 'base_calendar_data.xml' diff --git a/addons/base_contact/__openerp__.py b/addons/base_contact/__openerp__.py index 5537d6f91eb..f5969b6e309 100644 --- a/addons/base_contact/__openerp__.py +++ b/addons/base_contact/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Base Contact', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'complexity': "expert", 'description': """ This module allows you to manage your contacts entirely. diff --git a/addons/base_crypt/__openerp__.py b/addons/base_crypt/__openerp__.py index 23e29420036..fc85100b41c 100644 --- a/addons/base_crypt/__openerp__.py +++ b/addons/base_crypt/__openerp__.py @@ -19,12 +19,12 @@ # ############################################################################## { - "name" : "Base - Password Encryption", + "name" : "DB Password Encryption", "version" : "1.1", "author" : ['OpenERP SA', "FS3"], "maintainer" : "OpenERP SA", "website" : "http://www.openerp.com", - "category" : "Hidden", + "category" : "Tools", 'complexity': "easy", "description": """ Replaces cleartext passwords in the database with a secure hash diff --git a/addons/base_iban/__openerp__.py b/addons/base_iban/__openerp__.py index c9bc3866b4f..2692e63e55d 100644 --- a/addons/base_iban/__openerp__.py +++ b/addons/base_iban/__openerp__.py @@ -19,9 +19,9 @@ # ############################################################################## { - 'name': 'Create IBAN bank accounts', + 'name': 'IBAN Bank Accounts', 'version': '1.0', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'complexity': "easy", 'description': """ This module installs the base for IBAN (International Bank Account Number) bank accounts and checks for its validity. diff --git a/addons/base_module_doc_rst/__openerp__.py b/addons/base_module_doc_rst/__openerp__.py index 22a3b39028b..5e3674269d7 100644 --- a/addons/base_module_doc_rst/__openerp__.py +++ b/addons/base_module_doc_rst/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Module Technical Guide in Restructured Text ', + 'name': 'Generate Docs of Modules', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module generates the Technical Guides of selected modules in Restructured Text format (RST). ================================================================================================= diff --git a/addons/base_module_quality/__openerp__.py b/addons/base_module_quality/__openerp__.py index 02d09e0919d..df57b88fcc2 100644 --- a/addons/base_module_quality/__openerp__.py +++ b/addons/base_module_quality/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Base module quality - To check the quality of other modules' , + 'name': 'Analyse Module Quality' , 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ The aim of this module is to check the quality of other modules. ================================================================ diff --git a/addons/base_module_record/__openerp__.py b/addons/base_module_record/__openerp__.py index 3e1cf79792a..fdb576e0ddd 100644 --- a/addons/base_module_record/__openerp__.py +++ b/addons/base_module_record/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Module Record', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module allows you to create a new module without any development. ====================================================================== diff --git a/addons/base_setup/__openerp__.py b/addons/base_setup/__openerp__.py index 4417ebf2439..bd62a097934 100644 --- a/addons/base_setup/__openerp__.py +++ b/addons/base_setup/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Base Setup', + 'name': 'Initial Setup Tools', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ This module helps to configure the system at the installation of a new database. diff --git a/addons/base_synchro/__openerp__.py b/addons/base_synchro/__openerp__.py index fba793e0473..a9fd08bccf6 100644 --- a/addons/base_synchro/__openerp__.py +++ b/addons/base_synchro/__openerp__.py @@ -20,10 +20,10 @@ ############################################################################## { - "name":"Server Object Synchronization", + "name":"Multi-DB Synchronization", "version":"0.1", "author":"OpenERP SA", - "category":"Hidden", + "category":"Tools", "description": """ Synchronization with all objects. ================================= diff --git a/addons/base_tools/__openerp__.py b/addons/base_tools/__openerp__.py index 6fff6c3c207..d3c8a4716e0 100644 --- a/addons/base_tools/__openerp__.py +++ b/addons/base_tools/__openerp__.py @@ -4,7 +4,7 @@ "author": "OpenERP SA", "version": "1.0", "depends": ["base"], - "category" : "Hidden", + "category" : "Tools", 'complexity': "easy", 'description': """ Common base for tools modules. diff --git a/addons/base_vat/__openerp__.py b/addons/base_vat/__openerp__.py index 147eb47b9e2..858b5c2c070 100644 --- a/addons/base_vat/__openerp__.py +++ b/addons/base_vat/__openerp__.py @@ -22,7 +22,7 @@ { 'name': 'VAT Number Validation', 'version': '1.0', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'complexity': "easy", 'description': """ VAT validation for Partners' VAT numbers diff --git a/addons/board/__openerp__.py b/addons/board/__openerp__.py index 6cb0e3ecce7..afb8cc42a95 100644 --- a/addons/board/__openerp__.py +++ b/addons/board/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Dashboard Creator', + 'name': 'Dashboards', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "normal", 'description': """ Lets the user create a custom dashboard. diff --git a/addons/caldav/__openerp__.py b/addons/caldav/__openerp__.py index 53bee3d0e94..edf852e4d5e 100644 --- a/addons/caldav/__openerp__.py +++ b/addons/caldav/__openerp__.py @@ -49,7 +49,7 @@ To access OpenERP Calendar using WebCal to remote site use the URL like: DATABASE_NAME: Name of database on which OpenERP Calendar is created CALENDAR_NAME: Name of calendar to access """, - 'category': 'Hidden', + 'category': 'Tools', "author" : "OpenERP SA", 'website': 'http://www.openerp.com', "init_xml" : ["caldav_data.xml"], diff --git a/addons/claim_from_delivery/__openerp__.py b/addons/claim_from_delivery/__openerp__.py index c3eec37a229..178da7d1913 100644 --- a/addons/claim_from_delivery/__openerp__.py +++ b/addons/claim_from_delivery/__openerp__.py @@ -21,7 +21,7 @@ "name" : "Claim from Delivery", "version" : "1.0", "author" : "OpenERP SA", - "category" : "Hidden", + 'category': 'Sales Management', "depends" : ["base", "crm_claim", "stock"], "init_xml" : [], "demo_xml" : [], diff --git a/addons/crm/__openerp__.py b/addons/crm/__openerp__.py index f6a29817846..5a159998de7 100644 --- a/addons/crm/__openerp__.py +++ b/addons/crm/__openerp__.py @@ -21,7 +21,7 @@ { - 'name': 'Customer & Supplier Relationship Management', + 'name': 'Customer Relationship Management', 'version': '1.0', 'category': 'Customer Relationship Management', 'complexity': "easy", diff --git a/addons/crm_partner_assign/__openerp__.py b/addons/crm_partner_assign/__openerp__.py index 555717899b1..60a51c1a0b9 100644 --- a/addons/crm_partner_assign/__openerp__.py +++ b/addons/crm_partner_assign/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Partner Geo-Localization', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'complexity': "normal", 'description': """ This is the module used by OpenERP SA to redirect customers to its partners, based on geolocalization. diff --git a/addons/crm_todo/__openerp__.py b/addons/crm_todo/__openerp__.py index 641e37e736b..01f66160b0b 100644 --- a/addons/crm_todo/__openerp__.py +++ b/addons/crm_todo/__openerp__.py @@ -21,7 +21,7 @@ { - 'name': 'To Do List', + 'name': 'CRM Todo Lists', 'version': '1.0', "category": 'Hidden/Link', 'complexity': "easy", diff --git a/addons/decimal_precision/__openerp__.py b/addons/decimal_precision/__openerp__.py index 91e7ce57029..303d42558b3 100644 --- a/addons/decimal_precision/__openerp__.py +++ b/addons/decimal_precision/__openerp__.py @@ -30,7 +30,7 @@ The decimal precision is configured per company. "author": "OpenERP SA", "version": "0.1", "depends": ["base"], - "category" : "Hidden", + "category" : "Tools", 'complexity': "easy", "init_xml": [], "update_xml": [ diff --git a/addons/document_ics/__openerp__.py b/addons/document_ics/__openerp__.py index 7d718266d6a..679a6adabb6 100644 --- a/addons/document_ics/__openerp__.py +++ b/addons/document_ics/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Support for iCal based on Document Management System', + 'name': 'iCal Support', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "normal", 'description': """ Allows to synchronise calendars with others applications. diff --git a/addons/event/__openerp__.py b/addons/event/__openerp__.py index 0e8cd891813..c17c097e935 100644 --- a/addons/event/__openerp__.py +++ b/addons/event/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Event', + 'name': 'Events Organisation', 'version': '0.1', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ Organization and management of Events. diff --git a/addons/event_project/__openerp__.py b/addons/event_project/__openerp__.py index e8d110bc4f8..359a5a70ae3 100644 --- a/addons/event_project/__openerp__.py +++ b/addons/event_project/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Event Project - Create Retro-Planning to manage your Events', + 'name': 'Retro-Planning on Events', 'version': '0.1', - 'category': 'Hidden/Link', + 'category': 'Tools', 'complexity': "easy", 'description': """ Organization and management of events. diff --git a/addons/fetchmail_crm/__openerp__.py b/addons/fetchmail_crm/__openerp__.py index 671aad4a871..24eddf235ab 100644 --- a/addons/fetchmail_crm/__openerp__.py +++ b/addons/fetchmail_crm/__openerp__.py @@ -20,11 +20,11 @@ ############################################################################## { - "name" : "Fetchmail for CRM", + "name" : "eMail Gateway for Leads", "version" : "1.0", "depends" : ["fetchmail", "crm"], "author" : "OpenERP SA", - "category": 'Hidden/Link', + "category": 'Tools', "description": """ """, 'website': 'http://www.openerp.com', diff --git a/addons/fetchmail_crm_claim/__openerp__.py b/addons/fetchmail_crm_claim/__openerp__.py index 6b4a346ed51..4fdd1671a28 100644 --- a/addons/fetchmail_crm_claim/__openerp__.py +++ b/addons/fetchmail_crm_claim/__openerp__.py @@ -20,11 +20,11 @@ ############################################################################## { - "name" : "Fetchmail for CRM Claim", + "name" : "eMail Gateway for CRM Claim", "version" : "1.0", "depends" : ["fetchmail", "crm_claim"], "author" : "OpenERP SA", - "category": 'Hidden/Link', + 'category': 'Sales Management', "description": """ """, 'website': 'http://www.openerp.com', diff --git a/addons/fetchmail_hr_recruitment/__openerp__.py b/addons/fetchmail_hr_recruitment/__openerp__.py index 0925f2cbcc9..77d5cb93585 100644 --- a/addons/fetchmail_hr_recruitment/__openerp__.py +++ b/addons/fetchmail_hr_recruitment/__openerp__.py @@ -20,11 +20,11 @@ ############################################################################## { - "name" : "Fetchmail for Applicants", + "name" : "eMail Gateway for Applicants", "version" : "1.0", "depends" : ["fetchmail", "hr_recruitment"], "author" : "OpenERP SA", - "category": 'Hidden/Link', + "category": "Human Resources", "description": """ """, 'website': 'http://www.openerp.com', diff --git a/addons/fetchmail_project_issue/__openerp__.py b/addons/fetchmail_project_issue/__openerp__.py index ca42ed6faaf..043a68def62 100644 --- a/addons/fetchmail_project_issue/__openerp__.py +++ b/addons/fetchmail_project_issue/__openerp__.py @@ -20,11 +20,11 @@ ############################################################################## { - "name" : "Fetchmail for Project Issue", + "name" : "eMail Gateway for Project Issues", "version" : "1.0", "depends" : ["fetchmail", "project_issue"], "author" : "OpenERP SA", - "category": 'Hidden/Link', + "category": "Project Management", "description": """ """, 'website': 'http://www.openerp.com', diff --git a/addons/google_base_account/__openerp__.py b/addons/google_base_account/__openerp__.py index 19afc18bf09..ed5700b3116 100644 --- a/addons/google_base_account/__openerp__.py +++ b/addons/google_base_account/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Google user', + 'name': 'Google Users', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """The module adds google user in res user""", 'author': 'OpenERP SA', 'website': 'http://www.openerp.com', diff --git a/addons/google_map/__openerp__.py b/addons/google_map/__openerp__.py index 48c393409e4..f8001c918c6 100644 --- a/addons/google_map/__openerp__.py +++ b/addons/google_map/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Google Map', + 'name': 'Google Maps on Customers', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ The module adds Google Map field in partner address. ==================================================== diff --git a/addons/hr_expense/__openerp__.py b/addons/hr_expense/__openerp__.py index 5224eaacb6b..f15dbfa38ef 100644 --- a/addons/hr_expense/__openerp__.py +++ b/addons/hr_expense/__openerp__.py @@ -21,7 +21,7 @@ { - 'name': 'Expenses', + 'name': 'Expenses Management', 'version': '1.0', 'category': 'Human Resources', 'complexity': "easy", diff --git a/addons/hr_holidays/__openerp__.py b/addons/hr_holidays/__openerp__.py index 55a6f2eb41f..1d15853366f 100644 --- a/addons/hr_holidays/__openerp__.py +++ b/addons/hr_holidays/__openerp__.py @@ -21,7 +21,7 @@ { - "name": "Leave Management", + "name": "Leaves Management", "version": "1.5", "author": ['OpenERP SA', 'Axelor'], "category": "Human Resources", diff --git a/addons/hr_timesheet/__openerp__.py b/addons/hr_timesheet/__openerp__.py index 76886a45aaf..43f5e62e37c 100644 --- a/addons/hr_timesheet/__openerp__.py +++ b/addons/hr_timesheet/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Human Resources (Timesheet encoding)', 'version': '1.0', - 'category': 'Hidden', + "category": "Human Resources", 'complexity': "easy", 'description': """ This module implements a timesheet system. diff --git a/addons/hr_timesheet_invoice/__openerp__.py b/addons/hr_timesheet_invoice/__openerp__.py index d4237baf36c..bd5c58fde1b 100644 --- a/addons/hr_timesheet_invoice/__openerp__.py +++ b/addons/hr_timesheet_invoice/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Invoice on analytic lines', + 'name': 'Invoice on Analytic Lines', 'version': '1.0', - 'category': 'Hidden/Link', + 'category': 'Sales Management', 'description': """Generate your Invoices from Expenses, Timesheet Entries, ... Module to generate invoices based on costs (human resources, expenses, ...). ============================================================================ diff --git a/addons/html_view/__openerp__.py b/addons/html_view/__openerp__.py index 3deceff9d6f..c4a7f033993 100644 --- a/addons/html_view/__openerp__.py +++ b/addons/html_view/__openerp__.py @@ -2,7 +2,7 @@ "name" : "Html View", "version" : "1.1", "author" : "OpenERP SA", - "category" : "Hidden", + "category" : "Tools", "depends" : ['base'], "init_xml" : ['html_view.xml'], "demo_xml" : [], diff --git a/addons/import_base/__openerp__.py b/addons/import_base/__openerp__.py index 0f65cf166b6..78988d00fec 100644 --- a/addons/import_base/__openerp__.py +++ b/addons/import_base/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Base framework for module that need to import complex data', + 'name': 'Framework for complex import', 'version': '0.9', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module provide a class import_framework to help importing complex data from other software diff --git a/addons/knowledge/__openerp__.py b/addons/knowledge/__openerp__.py index 2ca58e9861f..27333f59c41 100644 --- a/addons/knowledge/__openerp__.py +++ b/addons/knowledge/__openerp__.py @@ -21,11 +21,11 @@ { - "name" : "Knowledge Management System", + "name" : "Document Management System", "version" : "1.0", "depends" : ["base","base_setup"], "author" : "OpenERP SA", - "category": 'Hidden', + 'category': 'Knowledge Management', 'complexity': "easy", "description": """ Installer for knowledge-based Hidden. diff --git a/addons/l10n_fr_rib/__openerp__.py b/addons/l10n_fr_rib/__openerp__.py index 2ef63568a53..16d26995dc4 100644 --- a/addons/l10n_fr_rib/__openerp__.py +++ b/addons/l10n_fr_rib/__openerp__.py @@ -22,7 +22,7 @@ { 'name': 'French RIB Bank Details', 'version': '1.0', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'description': ''' This module lets users enter the banking details of Partners in the RIB format (French standard for bank accounts details). RIB Bank Accounts can be entered in the "Accounting" tab of the Partner form by specifying the account type "RIB". The four standard RIB fields will then become mandatory: diff --git a/addons/lunch/__openerp__.py b/addons/lunch/__openerp__.py index 242916339bc..72f8de686d7 100644 --- a/addons/lunch/__openerp__.py +++ b/addons/lunch/__openerp__.py @@ -20,7 +20,7 @@ ############################################################################## { - "name": "Lunch", + "name": "Lunch Orders", "author": "OpenERP SA", 'complexity': "easy", "Description": """ diff --git a/addons/mail/__openerp__.py b/addons/mail/__openerp__.py index 1cb97ce182e..94f2361d05d 100644 --- a/addons/mail/__openerp__.py +++ b/addons/mail/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Email Subsystem', + 'name': 'Emails Management', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ A generic email subsystem with message storage and queuing diff --git a/addons/marketing_campaign_crm_demo/__openerp__.py b/addons/marketing_campaign_crm_demo/__openerp__.py index 4841cc1a2e8..d394088aca5 100644 --- a/addons/marketing_campaign_crm_demo/__openerp__.py +++ b/addons/marketing_campaign_crm_demo/__openerp__.py @@ -21,13 +21,13 @@ { - "name" : "Demo data for Marketing Campaign", + "name" : "Marketing Campaign, demo data", "version" : "1.0", "depends" : ["marketing_campaign", "crm", ], "author" : "OpenERP SA", - "category": 'Hidden', + "category": 'Marketing', "description": """ Demo data for the module marketing_campaign. ============================================ diff --git a/addons/membership/__openerp__.py b/addons/membership/__openerp__.py index 20d01b6a60e..3e78b4775ab 100644 --- a/addons/membership/__openerp__.py +++ b/addons/membership/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Membership', 'version': '0.1', - 'category': 'Hidden', + 'category': 'Association', 'description': """ This module allows you to manage all operations for managing memberships. ========================================================================= diff --git a/addons/mrp_repair/__openerp__.py b/addons/mrp_repair/__openerp__.py index cb21831c1dd..393b4428c81 100644 --- a/addons/mrp_repair/__openerp__.py +++ b/addons/mrp_repair/__openerp__.py @@ -21,7 +21,7 @@ { - 'name': 'Repairs', + 'name': 'Repairs Management', 'version': '1.0', 'category': 'Manufacturing', 'description': """ diff --git a/addons/multi_company/__openerp__.py b/addons/multi_company/__openerp__.py index 636ff1cac29..d82f0e1eb7c 100644 --- a/addons/multi_company/__openerp__.py +++ b/addons/multi_company/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Multi-Company', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "expert", 'description': """ This module is for managing a multicompany environment. diff --git a/addons/pad/__openerp__.py b/addons/pad/__openerp__.py index 9630e74c27a..14ee68334a8 100644 --- a/addons/pad/__openerp__.py +++ b/addons/pad/__openerp__.py @@ -1,8 +1,8 @@ # -*- coding: utf-8 -*- { - 'name': 'Collaborative Note Pad', + 'name': 'Collaborative Pads', 'version': '2.0', - 'category': 'Hidden', + "category": "Project Management", 'complexity': "easy", 'description': """ Adds enhanced support for (Ether)Pad attachments in the web client. diff --git a/addons/pad_project/__openerp__.py b/addons/pad_project/__openerp__.py index a9ec6282ab7..be7cb82af2e 100644 --- a/addons/pad_project/__openerp__.py +++ b/addons/pad_project/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Project PAD', + 'name': 'Project Specs as PADs', 'version': '1.0', - 'category': 'Hidden/Link', + "category": "Project Management", 'complexity': "easy", 'description': """ This module adds a PAD in all project kanban views diff --git a/addons/plugin/__openerp__.py b/addons/plugin/__openerp__.py index b598690cbf2..2b05305c5ce 100644 --- a/addons/plugin/__openerp__.py +++ b/addons/plugin/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Common interface for CRM plugin (Thunderbird and Outlook)', + 'name': 'CRM Plugins', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ The common interface for pugin. diff --git a/addons/portal/__openerp__.py b/addons/portal/__openerp__.py index 1b3be74c79f..d76917fcf45 100644 --- a/addons/portal/__openerp__.py +++ b/addons/portal/__openerp__.py @@ -24,7 +24,7 @@ 'version' : "1.0", 'depends' : ["base", "share"], 'author' : "OpenERP SA", - 'category': 'Hidden', + 'category': 'Portal', 'description': """ This module defines 'portals' to customize the access to your OpenERP database for external users. diff --git a/addons/process/__openerp__.py b/addons/process/__openerp__.py index e35ae2b06ae..4af045ff6bb 100644 --- a/addons/process/__openerp__.py +++ b/addons/process/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Enterprise Process', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module shows the basic processes involved in the selected modules and in the sequence they occur. ====================================================================================================== diff --git a/addons/product/__openerp__.py b/addons/product/__openerp__.py index 46740140bbe..81ec3a0ae64 100644 --- a/addons/product/__openerp__.py +++ b/addons/product/__openerp__.py @@ -24,7 +24,7 @@ "name" : "Products & Pricelists", "version" : "1.1", "author" : "OpenERP SA", - "category" : "Hidden", + 'category': 'Sales Management', "depends" : ["base", "process", "decimal_precision"], "init_xml" : [], "demo_xml" : ["product_demo.xml"], diff --git a/addons/product_manufacturer/__openerp__.py b/addons/product_manufacturer/__openerp__.py index d04d0724137..3b60b21979c 100644 --- a/addons/product_manufacturer/__openerp__.py +++ b/addons/product_manufacturer/__openerp__.py @@ -21,7 +21,7 @@ "name" : "Products Attributes & Manufacturers", "version" : "1.0", "author" : "OpenERP SA", - "category" : "Hidden", + 'category': 'Purchase Management', 'complexity': "easy", "depends" : ["stock"], "init_xml" : [], diff --git a/addons/product_margin/__openerp__.py b/addons/product_margin/__openerp__.py index b412e8b63eb..e484ddddff2 100644 --- a/addons/product_margin/__openerp__.py +++ b/addons/product_margin/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Margins in Product', + 'name': 'Margins by Products', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'description': """ Adds a reporting menu in products that computes sales, purchases, margins and other interesting indicators based on invoices. ============================================================================================================================= diff --git a/addons/product_visible_discount/__openerp__.py b/addons/product_visible_discount/__openerp__.py index d05c3a82c11..c49565f8e29 100644 --- a/addons/product_visible_discount/__openerp__.py +++ b/addons/product_visible_discount/__openerp__.py @@ -18,10 +18,10 @@ # ############################################################################## { - "name": "Visible Discount", + "name": "Visible Discounts on SO", "version": "1.0", "author": "OpenERP SA", - "category": "Hidden", + 'category': 'Sales Management', 'complexity': "easy", "description": """ This module lets you calculate discounts on Sale Order lines and Invoice lines base on the partner's pricelist. diff --git a/addons/profile_tools/__openerp__.py b/addons/profile_tools/__openerp__.py index bd8790d1496..3036b038d3f 100644 --- a/addons/profile_tools/__openerp__.py +++ b/addons/profile_tools/__openerp__.py @@ -21,11 +21,11 @@ { - "name" : "Miscellaneous Hidden", + "name" : "Miscellaneous Tools", "version" : "1.0", "depends" : ["base", "base_setup"], "author" : "OpenERP SA", - "category" : "Hidden", + "category" : "Tools", 'complexity': "easy", "description": """ Installer for extra Hidden like lunch, survey, idea, share, etc. diff --git a/addons/project_caldav/__openerp__.py b/addons/project_caldav/__openerp__.py index 6e716a2e9d0..6055a1f9f3d 100644 --- a/addons/project_caldav/__openerp__.py +++ b/addons/project_caldav/__openerp__.py @@ -23,7 +23,7 @@ "name": "CalDAV for Task Management", "version": "1.1", "author": "OpenERP SA", - "category": "Hidden", + "category": "Project Management", "description": """ Synchronization between Project Task and Caldav Vtodo. ====================================================== diff --git a/addons/project_gtd/__openerp__.py b/addons/project_gtd/__openerp__.py index 701e0d3ca3b..f0c50dbe553 100644 --- a/addons/project_gtd/__openerp__.py +++ b/addons/project_gtd/__openerp__.py @@ -21,7 +21,7 @@ { - 'name': 'Todo List based on the GTD methodology', + 'name': 'Todo Lists', 'version': '1.0', 'category': 'Project Management', 'complexity': "easy", diff --git a/addons/project_issue_sheet/__openerp__.py b/addons/project_issue_sheet/__openerp__.py index 972245533ad..0914be9d335 100644 --- a/addons/project_issue_sheet/__openerp__.py +++ b/addons/project_issue_sheet/__openerp__.py @@ -21,9 +21,9 @@ ############################################################################## { - 'name': 'Add the Timesheet support for Issue Management in Project Management', + 'name': 'Timesheet on Issues', 'version': '1.0', - 'category': 'Hidden/Link', + "category": "Project Management", 'description': """ This module adds the Timesheet support for the Issues/Bugs Management in Project. ================================================================================= diff --git a/addons/project_long_term/__openerp__.py b/addons/project_long_term/__openerp__.py index 56270266c40..3f4eccfc574 100644 --- a/addons/project_long_term/__openerp__.py +++ b/addons/project_long_term/__openerp__.py @@ -20,7 +20,7 @@ ############################################################################## { - "name": "Long Term Planning", + "name": "Long Term Projects", "version": "1.1", "author": "OpenERP SA", "website": "http://www.openerp.com", diff --git a/addons/project_mailgate/__openerp__.py b/addons/project_mailgate/__openerp__.py index ba3e2e57ba5..7f55c580fb8 100644 --- a/addons/project_mailgate/__openerp__.py +++ b/addons/project_mailgate/__openerp__.py @@ -21,11 +21,11 @@ { - "name": "Project Tasks - Mail Integration", + "name": "Tasks Mail Integration", "version": "1.1", "author": "OpenERP SA", "website": "http://www.openerp.com", - "category": "Hidden", + "category": "Project Management", 'complexity': "easy", "images": ["images/project_mailgate_task.jpeg"], "depends": ["project", "mail"], diff --git a/addons/project_messages/__openerp__.py b/addons/project_messages/__openerp__.py index f7e50110784..a146056e921 100644 --- a/addons/project_messages/__openerp__.py +++ b/addons/project_messages/__openerp__.py @@ -26,7 +26,7 @@ "images": ["images/project_message.jpeg"], "depends": ["project"], "author": "OpenERP SA", - "category": 'Hidden', + "category": "Project Management", 'complexity': "easy", "description": """ This module provides the functionality to send messages within a project. diff --git a/addons/project_mrp/__openerp__.py b/addons/project_mrp/__openerp__.py index 3cb2fb40179..e5722b92da9 100644 --- a/addons/project_mrp/__openerp__.py +++ b/addons/project_mrp/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Automatic task creation from procurement lines', + 'name': 'Create Tasks on SO', 'version': '1.0', - 'category': 'Hidden/Link', + "category": "Project Management", 'complexity': "easy", 'description': """ Automatically creates project tasks from procurement lines diff --git a/addons/project_planning/__openerp__.py b/addons/project_planning/__openerp__.py index 9ce5e8a2d9a..23d900d86ff 100644 --- a/addons/project_planning/__openerp__.py +++ b/addons/project_planning/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Planning Management Module', 'version': '1.0', - 'category': 'Hidden', + "category": "Project Management", 'complexity': "easy", 'description': """Keep track of your planning This module helps you to manage your plannings. diff --git a/addons/project_retro_planning/__openerp__.py b/addons/project_retro_planning/__openerp__.py index 68ea9d5d78e..5ca01a3a0e1 100644 --- a/addons/project_retro_planning/__openerp__.py +++ b/addons/project_retro_planning/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Project Retro planning', + 'name': 'Project Retro-planning', 'version': '0.1', - 'category': 'Hidden', + 'category': 'Project Management', 'description': """ Changes dates according to change in project End Date. ====================================================== diff --git a/addons/purchase_double_validation/__openerp__.py b/addons/purchase_double_validation/__openerp__.py index cd379afdb59..eda89e81aa8 100644 --- a/addons/purchase_double_validation/__openerp__.py +++ b/addons/purchase_double_validation/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - "name" : "Double Validation for Purchase", + "name" : "Double Validation on Purchases", "version" : "1.1", - "category": 'Hidden', + 'category': 'Purchase Management', 'complexity': "easy", "images" : ["images/purchase_validation.jpeg"], "depends" : ["base","purchase"], diff --git a/addons/report_designer/__openerp__.py b/addons/report_designer/__openerp__.py index fd29d2b96ee..77b37fd507b 100644 --- a/addons/report_designer/__openerp__.py +++ b/addons/report_designer/__openerp__.py @@ -21,11 +21,11 @@ { - "name" : "Reporting Hidden Installer", + "name" : "Report Designer", "version" : "1.0", "depends" : ["base", "base_setup"], "author" : "OpenERP SA", - "category": "Hidden", + "category": "Tools", "description": """ Installer for reporting Hidden. ============================== diff --git a/addons/report_intrastat/__openerp__.py b/addons/report_intrastat/__openerp__.py index 6c80e0f2b81..2f0bb6b46d9 100644 --- a/addons/report_intrastat/__openerp__.py +++ b/addons/report_intrastat/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Intrastat Reporting', 'version': '1.0', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'description': """ A module that adds intrastat reports. ===================================== diff --git a/addons/report_webkit/__openerp__.py b/addons/report_webkit/__openerp__.py index 56496a2d130..5db184a8c58 100644 --- a/addons/report_webkit/__openerp__.py +++ b/addons/report_webkit/__openerp__.py @@ -84,7 +84,7 @@ TODO "version" : "0.9", "depends" : ["base"], "author" : "Camptocamp", - "category": "Hidden", # i.e a technical module, not shown in Application install menu + "category": "Tools", # i.e a technical module, not shown in Application install menu "url": "http://http://www.camptocamp.com/", "data": [ "security/ir.model.access.csv", "data.xml", diff --git a/addons/report_webkit_sample/__openerp__.py b/addons/report_webkit_sample/__openerp__.py index 4e144736c24..9fb1f713d24 100644 --- a/addons/report_webkit_sample/__openerp__.py +++ b/addons/report_webkit_sample/__openerp__.py @@ -43,7 +43,7 @@ You have to create the print buttons by calling the wizard. For more details see """, "version" : "0.9", "depends" : ["base", "account", "report_webkit"], - "category": "Hidden", + "category": "Tools", "author" : "Camptocamp SA - NBessi", "url": "http://www.camptocamp.com/", "data": ["report_webkit_html_view.xml", diff --git a/addons/resource/__openerp__.py b/addons/resource/__openerp__.py index f1e020215a6..2b8c27359d8 100644 --- a/addons/resource/__openerp__.py +++ b/addons/resource/__openerp__.py @@ -23,7 +23,7 @@ "name" : "Resource", "version" : "1.1", "author" : "OpenERP SA", - "category" : "Hidden", + "category" : "Tools", "website" : "http://www.openerp.com", "description": """ Module for resource management. diff --git a/addons/sale_analytic_plans/__openerp__.py b/addons/sale_analytic_plans/__openerp__.py index 1850fbf8b2a..453a51fc724 100644 --- a/addons/sale_analytic_plans/__openerp__.py +++ b/addons/sale_analytic_plans/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Sales Analytic Distribution Management', + 'name': 'Sales Analytic Distribution', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ The base module to manage analytic distribution and sales orders. ================================================================= diff --git a/addons/share/__openerp__.py b/addons/share/__openerp__.py index b9077109c3c..7a78783348c 100644 --- a/addons/share/__openerp__.py +++ b/addons/share/__openerp__.py @@ -22,11 +22,11 @@ { - "name" : "Web Share", + "name" : "Share any Document", "version" : "2.0", "depends" : ["base", "mail"], "author" : "OpenERP SA", - "category": 'Hidden', + "category": 'Tools', 'complexity': "easy", "description": """ This module adds generic sharing tools to your current OpenERP database. diff --git a/addons/stock_invoice_directly/__openerp__.py b/addons/stock_invoice_directly/__openerp__.py index 69acadeb8bd..072f7af2aa5 100644 --- a/addons/stock_invoice_directly/__openerp__.py +++ b/addons/stock_invoice_directly/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Invoice Picking Directly', 'version': '1.0', - 'category': 'Hidden', + "category" : "Warehouse Management", 'complexity': "easy", 'description': """ Invoice Wizard for Delivery. diff --git a/addons/stock_no_autopicking/__openerp__.py b/addons/stock_no_autopicking/__openerp__.py index bd5629579cc..8b3458e0f73 100644 --- a/addons/stock_no_autopicking/__openerp__.py +++ b/addons/stock_no_autopicking/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Stock No Auto-Picking', 'version': '1.0', - 'category': 'Hidden', + "category" : "Warehouse Management", 'description': """ This module allows an intermediate picking process to provide raw materials to production orders. ================================================================================================= diff --git a/addons/stock_planning/__openerp__.py b/addons/stock_planning/__openerp__.py index e3043758b94..1ccb8f93e19 100644 --- a/addons/stock_planning/__openerp__.py +++ b/addons/stock_planning/__openerp__.py @@ -23,7 +23,7 @@ "name": "Master Procurement Schedule", "version": "1.2", "author": "OpenERP SA and Grzegorz Grzelak (OpenGLOBE)", - "category": "Hidden", + "category" : "Manufacturing", "images": ["images/master_procurement_schedule.jpeg","images/sales_forecast.jpeg","images/stock_planning_line.jpeg","images/stock_sales_period.jpeg"], "depends": ["crm", "stock","sale"], "complexity": "expert", diff --git a/addons/subscription/__openerp__.py b/addons/subscription/__openerp__.py index 581d54c9c4b..fa55ebf4815 100644 --- a/addons/subscription/__openerp__.py +++ b/addons/subscription/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Recurring Documents', 'version': '1.0', - 'category': 'Hidden', + 'category': 'tools', 'description': """ Create recurring documents. =========================== diff --git a/addons/survey/__openerp__.py b/addons/survey/__openerp__.py index 3e2523dc702..d73ed9c7b33 100644 --- a/addons/survey/__openerp__.py +++ b/addons/survey/__openerp__.py @@ -22,7 +22,7 @@ { 'name': 'Survey', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module is used for surveying. ================================== diff --git a/addons/users_ldap/__openerp__.py b/addons/users_ldap/__openerp__.py index adab3ff892c..1ed4e17ee64 100644 --- a/addons/users_ldap/__openerp__.py +++ b/addons/users_ldap/__openerp__.py @@ -19,7 +19,7 @@ ############################################################################## { - "name" : "Authenticate users with LDAP server", + "name" : "Authentication via LDAP", "version" : "1.0", "depends" : ["base"], "images" : ["images/ldap_configuration.jpeg"], @@ -116,7 +116,7 @@ will disable LDAP authentication if installed at the same time. "website" : "http://www.openerp.com", - "category" : "Hidden", + "category" : "Tools", "data" : [ "users_ldap_view.xml", "user_ldap_installer.xml", diff --git a/addons/warning/__openerp__.py b/addons/warning/__openerp__.py index c299d830ed9..0d462529ced 100644 --- a/addons/warning/__openerp__.py +++ b/addons/warning/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Display Warning Messages', + 'name': 'Warning Messages and Alerts', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ Module to trigger warnings in OpenERP objects. diff --git a/addons/web_livechat/__openerp__.py b/addons/web_livechat/__openerp__.py index 66d365b5636..c8ef0fe0b23 100644 --- a/addons/web_livechat/__openerp__.py +++ b/addons/web_livechat/__openerp__.py @@ -21,7 +21,7 @@ { 'name': 'Live Chat Support', 'version': '2.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ Enable live chat support for those who have a maintenance contract. diff --git a/addons/web_uservoice/__openerp__.py b/addons/web_uservoice/__openerp__.py index 41f80d4f7d1..03e312179af 100644 --- a/addons/web_uservoice/__openerp__.py +++ b/addons/web_uservoice/__openerp__.py @@ -21,7 +21,7 @@ { 'name': 'Receive User Feedback', 'version': '2.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ Add Feedback button in header. From 43a42b95998057afb17cb58555688a7a63e26763 Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Tue, 6 Dec 2011 13:05:11 +0100 Subject: [PATCH 10/23] [IMP] due to rewrite we did some months ago bzr revid: fp@tinyerp.com-20111206120511-gdtg6o9askurv6hy --- addons/hr_holidays/__openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/hr_holidays/__openerp__.py b/addons/hr_holidays/__openerp__.py index 1d15853366f..1c0d64e9da9 100644 --- a/addons/hr_holidays/__openerp__.py +++ b/addons/hr_holidays/__openerp__.py @@ -23,7 +23,7 @@ { "name": "Leaves Management", "version": "1.5", - "author": ['OpenERP SA', 'Axelor'], + "author": "OpenERP SA", "category": "Human Resources", 'complexity': "easy", "website": "http://www.openerp.com", From ee6841e510a14b4889f1695e6f916766ee20025c Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Tue, 6 Dec 2011 13:05:32 +0100 Subject: [PATCH 11/23] [IMP] Set kanban view as default view for project.tasks, hr_recruitment.applicant, project.issues, crm.opportunities and hr.employees bzr revid: fme@openerp.com-20111206120532-sov62f6jxvnyo3nn --- addons/crm/crm_lead_menu.xml | 11 +++++++++-- addons/hr/hr_view.xml | 13 +++++++++---- addons/hr_recruitment/hr_recruitment_menu.xml | 11 +++++++++-- addons/project/project_view.xml | 16 +++++++++++++--- addons/project_issue/project_issue_menu.xml | 12 +++++++++--- 5 files changed, 49 insertions(+), 14 deletions(-) diff --git a/addons/crm/crm_lead_menu.xml b/addons/crm/crm_lead_menu.xml index 9b0581844a5..d0197fd82cd 100644 --- a/addons/crm/crm_lead_menu.xml +++ b/addons/crm/crm_lead_menu.xml @@ -60,16 +60,23 @@ Opportunities crm.lead - tree,form,graph,calendar,kanban + kanban,tree,form,graph,calendar [('type','=','opportunity')] {'search_default_user_id':uid,'search_default_new':1, 'search_default_open':1, 'search_default_section_id':section_id, 'stage_type': 'opportunity', 'default_type': 'opportunity'} - + With opportunities you can manage and keep track of your sales pipeline by creating specific customer- or prospect-related sales documents to follow up potential sales. Information such as expected revenue, opportunity stage, expected closing date, communication history and much more can be stored. Opportunities can be connected to the email gateway: new emails may create opportunities, each of them automatically gets the history of the conversation with the customer. You and your team(s) will be able to plan meetings and phone calls from opportunities, convert them into quotations, manage related documents, track all customer related activities, and much more. + + + kanban + + + + tree diff --git a/addons/hr/hr_view.xml b/addons/hr/hr_view.xml index b888c5adb0a..f51280f4465 100644 --- a/addons/hr/hr_view.xml +++ b/addons/hr/hr_view.xml @@ -202,21 +202,26 @@ Employees hr.employee form - tree,form,kanban + kanban,tree,form [] {"search_default_department_id": department_id,"search_default_active":eval('True')} - + Here you can manage your work force by creating employees and assigning them specific properties in the system. Maintain all employee related information and keep track of anything that needs to be recorded for them. The personal information tab will help you maintain their identity data. The Categories tab gives you the opportunity to assign them related employee categories depending on their position and activities within the company. A category can be a seniority level within the company or a department. The Timesheets tab allows to assign them a specific timesheet and analytic journal where they will be able to enter time through the system. In the note tab, you can enter text data that should be recorded for a specific employee. - + + + + kanban + + tree - + form diff --git a/addons/hr_recruitment/hr_recruitment_menu.xml b/addons/hr_recruitment/hr_recruitment_menu.xml index 7fe746f580b..04d73dcd2a8 100644 --- a/addons/hr_recruitment/hr_recruitment_menu.xml +++ b/addons/hr_recruitment/hr_recruitment_menu.xml @@ -6,13 +6,20 @@ Applicants hr.applicant - tree,form,graph,calendar,kanban - + kanban,tree,form,graph,calendar + {'search_default_filter_inprogress':1,'search_default_filter_new':1,"search_default_department_id": department_id} From this menu you can track applicants in the recruitment process and manage all operations: meetings, interviews, phone calls, etc. If you setup the email gateway, applicants and their attached CV are created automatically when an email is sent to jobs@yourcompany.com. If you install the document management modules, all documents (CV and motivation letters) are indexed automatically, so that you can easily search through their content. + + + kanban + + + + tree diff --git a/addons/project/project_view.xml b/addons/project/project_view.xml index a01f92a8e24..a39661e1b07 100644 --- a/addons/project/project_view.xml +++ b/addons/project/project_view.xml @@ -313,7 +313,7 @@ - + project.task.kanban @@ -526,13 +526,23 @@ Tasks project.task form - tree,form,calendar,gantt,graph,kanban + kanban,tree,form,calendar,gantt,graph - + {"search_default_draft": 1, "search_default_open":1, "search_default_project_id": project_id} A task represents a work that has to be done. Each user works in his own list of tasks where he can record his task work in hours. He can work and close the task itself or delegate it to another user. If you delegate a task to another user, you get a new task in pending state, which will be reopened when you have to review the work achieved. If you install the project_timesheet module, task work can be invoiced based on the project configuration. With the project_mrp module, sales orders can create tasks automatically when they are confirmed. + + + kanban + + + + + tree + + diff --git a/addons/project_issue/project_issue_menu.xml b/addons/project_issue/project_issue_menu.xml index 5830fcb37fb..9d88418720b 100644 --- a/addons/project_issue/project_issue_menu.xml +++ b/addons/project_issue/project_issue_menu.xml @@ -8,13 +8,19 @@ Issues project.issue form - tree,calendar,kanban - + kanban,tree,calendar + {"search_default_user_id": uid, "search_default_draft": 1,"search_default_todo": 1, "search_default_project_id":project_id} Issues such as system bugs, customer complaints, and material breakdowns are collected here. You can define the stages assigned when solving the project issue (analysis, development, done). With the mailgateway module, issues can be integrated through an email address (example: support@mycompany.com) - + + + + + kanban + + From c58ebcfaeddf5b6dfbbd8baed785fa8045919009 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 6 Dec 2011 13:37:35 +0100 Subject: [PATCH 12/23] [FIX] records disappearing from sequenceable list views when dropped onto their original position In the listview's backing Records, a noop set (setting a property to the value it already has) has no visible effect (no even is triggered, it is simply ignored). The listview relies on setting the sequence number to refresh records and re-display them correctly in their table rows, but dropping an already sequenced row onto itself would set its sequence to its current value (barring record removals), yielding to no refresh and the row simply poofing out of view as it gets removed from the collection (and the table), then added back to the collection in its new (and old) position and displayed in a bare-bones empty states waiting for a render_record call. Added a check to sorting management to bail out immediately if a sort is a noop (the row is dropped at the same position it was taken from) lp bug: https://launchpad.net/bugs/900207 fixed bzr revid: xmo@openerp.com-20111206123735-4bfnqh1zl7u4ozm9 --- addons/web/static/src/js/view_list.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/addons/web/static/src/js/view_list.js b/addons/web/static/src/js/view_list.js index 73cf453d4ca..de7dd1a77f5 100644 --- a/addons/web/static/src/js/view_list.js +++ b/addons/web/static/src/js/view_list.js @@ -1281,10 +1281,15 @@ openerp.web.ListView.Groups = openerp.web.Class.extend( /** @lends openerp.web.L items: '> tr[data-id]', stop: function (event, ui) { var to_move = list.records.get(ui.item.data('id')), - target_id = ui.item.prev().data('id'); + target_id = ui.item.prev().data('id'), + from_index = list.records.indexOf(to_move), + target = list.records.get(target_id); + if (list.records.at(from_index - 1) == target) { + return; + } list.records.remove(to_move); - var to = target_id ? list.records.indexOf(list.records.get(target_id)) + 1 : 0; + var to = target_id ? list.records.indexOf(target) + 1 : 0; list.records.add(to_move, { at: to }); // resequencing time! From 7712b81bf1acc068db7ed637f49220819eff599e Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 6 Dec 2011 14:50:45 +0100 Subject: [PATCH 13/23] [FIX] py.js tokenizer: numbers can have a dot in them lp bug: https://launchpad.net/bugs/900699 fixed bzr revid: xmo@openerp.com-20111206135045-df4e3pzzubpwr6l9 --- addons/web/static/lib/py.parse/lib/py.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web/static/lib/py.parse/lib/py.js b/addons/web/static/lib/py.parse/lib/py.js index 0f2415f1252..19f95a870bb 100644 --- a/addons/web/static/lib/py.parse/lib/py.js +++ b/addons/web/static/lib/py.parse/lib/py.js @@ -334,7 +334,7 @@ var py = {}; }, number: function (str, index) { var character = str[index]; - if (!NUMBER.test(character)) { + if (!(character == '.' || NUMBER.test(character))) { this.tokens.push(create(symbols['(number)'], { value: parseFloat(this.builder(true).join('')) })); From c4116cc062a9d895061f9a6cfa6db24bcbe80089 Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Tue, 6 Dec 2011 14:53:10 +0100 Subject: [PATCH 14/23] [IMP] support through livechat by default bzr revid: fp@tinyerp.com-20111206135310-bfhy1kanvk96igz3 --- addons/web_livechat/__openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web_livechat/__openerp__.py b/addons/web_livechat/__openerp__.py index c8ef0fe0b23..4df50e2ad81 100644 --- a/addons/web_livechat/__openerp__.py +++ b/addons/web_livechat/__openerp__.py @@ -43,7 +43,7 @@ Add "Support" button in header from where you can access OpenERP Support. "static/src/xml/*.xml", ], 'installable': True, - 'active': False, + 'active': True, 'certificate': '0013762192410413', 'images': ['static/src/img/web_livechat_support.jpeg'], } From 688a8e6399b2235e029cdf1071844f406b1ac3cd Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Tue, 6 Dec 2011 15:01:27 +0100 Subject: [PATCH 15/23] [FIX] category name bzr revid: fp@tinyerp.com-20111206140127-1qcppz40ale5xifs --- addons/subscription/__openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/subscription/__openerp__.py b/addons/subscription/__openerp__.py index fa55ebf4815..a58d4453665 100644 --- a/addons/subscription/__openerp__.py +++ b/addons/subscription/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Recurring Documents', 'version': '1.0', - 'category': 'tools', + 'category': 'Tools', 'description': """ Create recurring documents. =========================== From b12525e31a225e21c7d13cd6955ec2c9a356e247 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Tue, 6 Dec 2011 15:04:52 +0100 Subject: [PATCH 16/23] [ADD] Added deferred for view manager controllers bzr revid: fme@openerp.com-20111206140452-m17hb2xb6ef3j4bg --- addons/web/static/src/js/views.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js index e1d9ee78868..f681bc78747 100644 --- a/addons/web/static/src/js/views.js +++ b/addons/web/static/src/js/views.js @@ -212,6 +212,7 @@ session.web.ViewManager = session.web.Widget.extend(/** @lends session.web.View var views_ids = {}; _.each(this.views_src, function(view) { self.views[view.view_type] = $.extend({}, view, { + deferred : $.Deferred(), controller : null, options : _.extend({ sidebar_id : self.element_id + '_sidebar_' + view.view_type, @@ -249,6 +250,7 @@ session.web.ViewManager = session.web.Widget.extend(/** @lends session.web.View var container = $("#" + this.element_id + '_view_' + view_type); view_promise = controller.appendTo(container); this.views[view_type].controller = controller; + this.views[view_type].deferred.resolve(); $.when(view_promise).then(function() { self.on_controller_inited(view_type, controller); if (self.searchview && view.controller.searchable !== false) { From 3f93344b84ce23a182bbcaf9fa388dee495f8cb6 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 6 Dec 2011 15:12:04 +0100 Subject: [PATCH 17/23] [FIX] missing view type bzr revid: xmo@openerp.com-20111206141204-i2gu7btahtz805kd --- openerp/addons/base/ir/ir_actions.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/openerp/addons/base/ir/ir_actions.py b/openerp/addons/base/ir/ir_actions.py index e01f23b6cc0..af78f96da17 100644 --- a/openerp/addons/base/ir/ir_actions.py +++ b/openerp/addons/base/ir/ir_actions.py @@ -321,6 +321,13 @@ class act_window(osv.osv): act_window() +VIEW_TYPES = [ + ('tree', 'Tree'), + ('form', 'Form'), + ('graph', 'Graph'), + ('calendar', 'Calendar'), + ('gantt', 'Gantt'), + ('kanban', 'Kanban')] class act_window_view(osv.osv): _name = 'ir.actions.act_window.view' _table = 'ir_act_window_view' @@ -329,12 +336,7 @@ class act_window_view(osv.osv): _columns = { 'sequence': fields.integer('Sequence'), 'view_id': fields.many2one('ir.ui.view', 'View'), - 'view_mode': fields.selection(( - ('tree', 'Tree'), - ('form', 'Form'), - ('graph', 'Graph'), - ('calendar', 'Calendar'), - ('gantt', 'Gantt')), string='View Type', required=True), + 'view_mode': fields.selection(VIEW_TYPES, string='View Type', required=True), 'act_window_id': fields.many2one('ir.actions.act_window', 'Action', ondelete='cascade'), 'multi': fields.boolean('On Multiple Doc.', help="If set to true, the action will not be displayed on the right toolbar of a form view."), From 5610b53b232afcfc911f48398dcb9a7cc92f68c0 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Tue, 6 Dec 2011 15:20:00 +0100 Subject: [PATCH 18/23] [fix] problem with gantt view, can not slide a task bzr revid: nicolas.vanhoren@openerp.com-20111206142000-p11wfpxejj56xjep --- addons/web_gantt/static/src/js/gantt.js | 32 +++++++++++++------------ 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/addons/web_gantt/static/src/js/gantt.js b/addons/web_gantt/static/src/js/gantt.js index 77a2d7a22cb..71dba5da093 100644 --- a/addons/web_gantt/static/src/js/gantt.js +++ b/addons/web_gantt/static/src/js/gantt.js @@ -289,8 +289,8 @@ openerp.web_gantt.GanttView = openerp.web.View.extend({ } } }); - self.ganttChartControl.attachEvent("onTaskEndResize", function(task) {return self.ResizeTask(task);}); - self.ganttChartControl.attachEvent("onTaskEndDrag", function(task) {return self.ResizeTask(task);}); + self.ganttChartControl.attachEvent("onTaskEndResize", function(task) {return self.resizeTask(task);}); + self.ganttChartControl.attachEvent("onTaskEndDrag", function(task) {return self.resizeTask(task);}); var taskdiv = $("div.taskPanel").parent(); taskdiv.addClass('ganttTaskPanel'); @@ -312,24 +312,26 @@ openerp.web_gantt.GanttView = openerp.web.View.extend({ }, 200); }); - var Project = self.ganttChartControl.getProjectById("_1"); - $(Project.projectItem[0]).hide(); - $(Project.projectNameItem).hide(); - $(Project.descrProject).hide(); - - _.each(final_events, function(id) { - var Task = Project.getTaskById(id); - $(Task.cTaskNameItem[0]).click(function() { - self.editTask(Task); - }) - }); + var project = self.ganttChartControl.getProjectById("_1"); + if (project) { + $(project.projectItem[0]).hide(); + $(project.projectNameItem).hide(); + $(project.descrProject).hide(); + + _.each(final_events, function(id) { + var Task = project.getTaskById(id); + $(Task.cTaskNameItem[0]).click(function() { + self.editTask(Task); + }) + }); + } }, - ResizeTask: function(task) { + resizeTask: function(task) { var self = this, event_id = task.getId(); if(task.childTask.length) - return $.when(this.do_warn(_t("Project can not be resized"))).then(this.reloadView()); + return; var data = {}; data[this.date_start] = task.getEST().toString(this.date_format); From b0edc6267100d3e8e7fe1607e9c168d0660668a9 Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 6 Dec 2011 15:58:38 +0100 Subject: [PATCH 19/23] [FIX] dependencies: don't grab dateutil >= 2.0, it's the Python3 version and incompatible with P2 bzr revid: xmo@openerp.com-20111206145838-o6g3o19s0o6ggipi --- README | 64 +++++++++++++++++--------------------------------------- setup.py | 2 +- 2 files changed, 20 insertions(+), 46 deletions(-) diff --git a/README b/README index 5683fa0f84c..e255e3607e1 100644 --- a/README +++ b/README @@ -1,55 +1,29 @@ -About OpenERP +pydot - Python interface to Graphviz's Dot language +Ero Carrera (c) 2004-2007 +ero@dkbza.org + +This code is distributed under the MIT license. + +Requirements: ------------- -OpenERP is an OpenSrouce/Free software Enterprise Resource Planning and -Customer Relationship Management software. More info at: +pyparsing: pydot requires the pyparsing module in order to be + able to load DOT files. - http://www.openerp.com +GraphViz: is needed in order to render the graphs into any of + the plethora of output formats supported. -Installation on Debian Ubuntu ------------------------------ +Installation: +------------- -Add the the apt repository in your source.list and type: +Should suffice with doing: - $ apt-get install openerp + python setup.py install -Installation on RedHat, Fedora, CentOS --------------------------------------- +Needless to say, no installation is needed just to use the module. A mere: -Install the required dependencies: + import pydot - $ yum install python - $ easy_install pip - $ pip install ..... - -Install the openerp rpm - - $ rpm -i openerp-VERSION.rpm - -Installation on Windows ------------------------ - -Installation on MacOSX ------------------------ - -Setuping you first database ---------------------------- - -Point your browser to http://localhost:8069/ and click "Database", the default -master password is "admin". - -Detailed System Requirements ----------------------------- - -You need the following software installed: - -python, postgresql-client, python-dateutil, python-gdata, python-ldap, -python-libxslt1, python-lxml, python-mako, python-openid, python-psycopg2, -python-pybabel, python-pychart, python-pydot, python-pyparsing, -python-reportlab, python-simplejson, python-tz, python-vobject, python-webdav, -python-werkzeug, python-yaml, python-zsi, graphviz, ghostscript, postgresql, -python-imaging, python-matplotlib - -For Luxembourg localization, you also need: -* pdftk (http://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/) +should do it, provided that the directory containing the modules is on Python +module search path. diff --git a/setup.py b/setup.py index 40695bd7c41..7f61d534db0 100755 --- a/setup.py +++ b/setup.py @@ -92,7 +92,7 @@ setuptools.setup( 'mako', 'psycopg2', 'pydot', - 'python-dateutil', + 'python-dateutil < 2', 'python-ldap', 'python-openid', 'pytz', From f34318750e5c3157bdfac9fb84e865cc10ca8d5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roberto=20L=C3=B3pez=20L=C3=B3pez=20=28OpenERP=29?= Date: Tue, 6 Dec 2011 16:47:39 +0100 Subject: [PATCH 20/23] [FIX] web_livechat: fixed clear_cache call. bzr revid: rlo@openerp.com-20111206154739-qsbwpanbf5z0ji7h --- addons/web_livechat/publisher_warranty.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/web_livechat/publisher_warranty.py b/addons/web_livechat/publisher_warranty.py index b0a7e793ecf..57b610500d2 100644 --- a/addons/web_livechat/publisher_warranty.py +++ b/addons/web_livechat/publisher_warranty.py @@ -26,7 +26,7 @@ def _gen_cache_clear(method): def func(self, cr, *args, **kwargs): s = super(publisher_warranty_contract, self) r = getattr(s, method)(cr, *args, **kwargs) - self.is_livechat_enable.clear_cache(cr.dbname) + self.is_livechat_enable.clear_cache(self) return r return func From 89173c80be60c0fd85c96aeaddb0cf3eeef5aefb Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 6 Dec 2011 16:56:22 +0100 Subject: [PATCH 21/23] [FIX] account: incorrect view definition lp bug: https://launchpad.net/bugs/900233 fixed bzr revid: xmo@openerp.com-20111206155622-xahmsw75ooj94ulp --- addons/account/project/project_view.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/account/project/project_view.xml b/addons/account/project/project_view.xml index b495bc1dbca..74f7b55486d 100644 --- a/addons/account/project/project_view.xml +++ b/addons/account/project/project_view.xml @@ -17,6 +17,7 @@ + From fb0b22ecd404e5ce09cc0133940eb47b5b84836e Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Tue, 6 Dec 2011 17:13:11 +0100 Subject: [PATCH 22/23] [IMP] remove add more features wizard -> will be replaced by kanban on modules and homepage bzr revid: fp@tinyerp.com-20111206161311-99dpd7t69c108q6u --- addons/base_setup/base_setup.py | 284 ------------------------- addons/base_setup/base_setup_views.xml | 30 --- 2 files changed, 314 deletions(-) diff --git a/addons/base_setup/base_setup.py b/addons/base_setup/base_setup.py index ecb9b5bf3c4..c10dee7b14b 100644 --- a/addons/base_setup/base_setup.py +++ b/addons/base_setup/base_setup.py @@ -28,290 +28,6 @@ from osv import fields, osv from tools.translate import _ from lxml import etree -#Application and feature chooser, this could be done by introspecting ir.modules -DEFAULT_MODULES = { - 'Customer Relationship Management' : ['crm',], - 'Sales Management' : ['sale',], - 'Project Management' : ['project',], - 'Knowledge Management' : ['document',], - 'Warehouse Management' : ['stock',], - 'Manufacturing' : ['mrp'], - 'Accounting & Finance' : ['account'], - 'Purchase Management' : ['purchase'], - 'Human Resources' : ['hr',], - 'Point of Sale' : ['point_of_sale',], - 'Marketing' : ['marketing',], -} - -class base_setup_installer(osv.osv_memory): - _name = 'base.setup.installer' - _inherit = 'res.config.installer' - - _columns = { - 'selection' : fields.text('Selection'), - } - - def fields_get(self, cr, uid, fields=None, context=None): - if context is None: - context = {} - if fields is None: - fields = {} - - fields = {} - category_proxy = self.pool.get('ir.module.category') - domain = [('parent_id', '=', False), - ('name', '!=', 'Uncategorized'), - ('visible', '=', True)] - category_ids = category_proxy.search(cr, uid, domain, context=context) - for category in category_proxy.browse(cr, uid, category_ids, context=context): - category_name = 'category_%d' % (category.id,) - fields[category_name] = { - 'type' : 'boolean', - 'string' : category.name, - 'name' : category_name, - 'help' : category.description, - } - - module_proxy = self.pool.get('ir.module.module') - module_ids = module_proxy.search(cr, uid, [], context=context) - for module in module_proxy.browse(cr, uid, module_ids, context=context): - module_name = 'module_%d' % (module.id,) - module_is_installed = module.state == 'installed' - - fields[module_name] = { - 'type' : 'boolean', - 'string' : module.shortdesc, - 'name' : module_name, - 'help' : module.description, - } - - return fields - - def default_get(self, cr, uid, fields=None, context=None): - if context is None: - context = {} - if fields is None: - fields = {} - - result = {} - - if 'dont_compute_virtual_attributes' not in context: - module_proxy = self.pool.get('ir.module.module') - module_ids = module_proxy.search(cr, uid, [], context=context) - for module in module_proxy.browse(cr, uid, module_ids, context=context): - result['module_%d' % (module.id,)] = module.state == 'installed' - - cat_proxy = self.pool.get('ir.module.category') - cat_ids = cat_proxy.search(cr, uid, [], context=context) - for cat in cat_proxy.browse(cr, uid, cat_ids, context=context): - m = DEFAULT_MODULES.get(cat.name,[]) - r = module_proxy.search(cr, uid, [('state','=','installed'),('name','in',m)]) - - result['category_%d' % (cat.id,)] = bool(r) and (len(r) == len(m)) - - return result - - def fields_view_get(self, cr, uid, view_id=None, view_type='from', context=None, toolbar=False, submenu=False): - def in_extended_view_group(cr, uid, context=None): - try: - model, group_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'base', 'group_extended') - except ValueError: - return False - return group_id in self.pool.get('res.users').read(cr, uid, uid, ['groups_id'], context=context)['groups_id'] - - result = super(base_setup_installer, self).fields_view_get(cr, uid, view_id, view_type, context, toolbar, submenu) - - module_category_proxy = self.pool.get('ir.module.category') - domain = [('parent_id', '=', False), - ('name', '!=', 'Uncategorized'), - ('visible', '=', True)] - module_category_ids = module_category_proxy.search(cr, uid, domain, context=context, order='sequence asc') - - arch = ['' % _('Automatic Base Setup')] - arch.append('' % _('Install Applications')) - module_proxy = self.pool.get('ir.module.module') - - extended_view = in_extended_view_group(cr, uid, context=context) - - for module_category in module_category_proxy.browse(cr, uid, module_category_ids, context=context): - domain = [('category_id', '=', module_category.id)] - if not extended_view: - domain.append(('complexity', '!=', 'expert')) - - modules = module_proxy.browse(cr, uid, module_proxy.search(cr, uid, domain, context=context), context=context) - if not modules: - continue - - m = DEFAULT_MODULES.get(module_category.name, []) - r = module_proxy.search(cr, uid, [('state', '=', 'installed'),('name', 'in', m)], context=context) - readonly = bool(r) - - attributes = { - 'name' : 'category_%d' % (module_category.id,), - 'on_change' : 'on_change_%s_%d(category_%d)' % ('category', module_category.id, module_category.id,), - } - if readonly: - attributes['modifiers'] = simplejson.dumps({'readonly' : True}) - - arch.append("""""" % (" ".join(["%s='%s'" % (key, value,) - for key, value in attributes.iteritems()]),)) - - # Compute the modules to show - for module_category in module_category_proxy.browse(cr, uid, module_category_ids, context=context): - domain = [('category_id', '=', module_category.id)] - - if not extended_view: - domain.append(('complexity', '!=', 'expert')) - - default_modules = DEFAULT_MODULES.get(module_category.name, False) - if default_modules: - domain.append(('name', 'not in', default_modules)) - - modules = module_proxy.browse(cr, uid, module_proxy.search(cr, uid, domain, context=context), context=context) - - if not modules: - continue - - modifiers = { - 'invisible' : [('category_%d' % (module_category.id), '=', False)], - } - module_modifiers = dict(modifiers) - - arch.append("""""" % ( - cgi.escape(module_category.name), - simplejson.dumps(modifiers)) - ) - - for module in modules: - #module_modifiers['readonly'] = module.state == 'installed' - - arch.append("""""" % ( - module.id, - simplejson.dumps(module_modifiers)) - ) - - arch.append( - '' - '' - '