diff --git a/openerp/addons/base/__openerp__.py b/openerp/addons/base/__openerp__.py
index 354b086879c..3fdb8c6448d 100644
--- a/openerp/addons/base/__openerp__.py
+++ b/openerp/addons/base/__openerp__.py
@@ -25,7 +25,10 @@
'name': 'Base',
'version': '1.3',
'category': 'Hidden',
- 'description': """The kernel of OpenERP, needed for all installation.""",
+ 'description': """
+The kernel of OpenERP, needed for all installation.
+===================================================
+""",
'author': 'OpenERP SA',
'maintainer': 'OpenERP SA',
'website': 'http://www.openerp.com',
diff --git a/openerp/addons/base/module/module.py b/openerp/addons/base/module/module.py
index 5751ed678eb..c5df273ea02 100644
--- a/openerp/addons/base/module/module.py
+++ b/openerp/addons/base/module/module.py
@@ -29,6 +29,7 @@ from openerp import modules, pooler, release, tools, addons
from openerp.tools.parse_version import parse_version
from openerp.tools.translate import _
from openerp.osv import fields, osv, orm
+from docutils.core import publish_string
_logger = logging.getLogger(__name__)
@@ -94,6 +95,15 @@ class module(osv.osv):
'module %s', name, exc_info=True)
return info
+ def _get_desc(self, cr, uid, ids, field_name=None, arg=None, context=None):
+ res = dict.fromkeys(ids, '')
+ for module in self.browse(cr, uid, ids, context=context):
+ desc = self.get_module_info(module.name).get('description', '')
+ overrides = dict(embed_stylesheet=False, doctitle_xform=False, output_encoding='unicode')
+ output = publish_string(source=desc, writer_name='html', settings_overrides=overrides)
+ res[module.id] = output
+ return res
+
def _get_latest_version(self, cr, uid, ids, field_name=None, arg=None, context=None):
res = dict.fromkeys(ids, '')
for m in self.browse(cr, uid, ids):
@@ -182,7 +192,7 @@ class module(osv.osv):
'category_id': fields.many2one('ir.module.category', 'Category', readonly=True, select=True),
'shortdesc': fields.char('Module Name', size=64, readonly=True, translate=True),
'summary': fields.char('Summary', size=64, readonly=True, translate=True),
- 'description': fields.text("Description", readonly=True, translate=True),
+ 'description': fields.function(_get_desc, string='Description', type='html', method=True, readonly=True),
'author': fields.char("Author", size=128, readonly=True),
'maintainer': fields.char('Maintainer', size=128, readonly=True),
'contributors': fields.text('Contributors', readonly=True),
diff --git a/openerp/addons/base/module/module_view.xml b/openerp/addons/base/module/module_view.xml
index 19f9dbdaa44..ec7db50bbe6 100644
--- a/openerp/addons/base/module/module_view.xml
+++ b/openerp/addons/base/module/module_view.xml
@@ -38,7 +38,7 @@
ir.module.module
-