diff options
| author | Arnaud Pineux <api@openerp.com> | 2012-09-25 11:11:26 +0200 |
|---|---|---|
| committer | Arnaud Pineux <api@openerp.com> | 2012-09-25 11:11:26 +0200 |
| commit | 6733a3f8ec26f359bbc2b9bb25419c6e647282bf (patch) | |
| tree | 7aa6f1c4c18ef3f8bd459e027ef20607c1b501a9 | |
| parent | dfeeca1e8fd702bddd7ace33090d99395c485811 (diff) | |
test academy
bzr revid: api@openerp.com-20120925091126-zdthas0x2exi1bep
| -rw-r--r-- | addons/openacademy/__init__.py | 1 | ||||
| -rw-r--r-- | addons/openacademy/__openerp__.py | 16 | ||||
| -rw-r--r-- | addons/openacademy/openacademy.py | 30 | ||||
| -rw-r--r-- | addons/openacademy/openacademy_view.xml | 33 | ||||
| -rw-r--r-- | addons/openacademy/temporary.py | 64 |
5 files changed, 144 insertions, 0 deletions
diff --git a/addons/openacademy/__init__.py b/addons/openacademy/__init__.py new file mode 100644 index 00000000000..de12070d44b --- /dev/null +++ b/addons/openacademy/__init__.py @@ -0,0 +1 @@ +import openacademy
\ No newline at end of file diff --git a/addons/openacademy/__openerp__.py b/addons/openacademy/__openerp__.py new file mode 100644 index 00000000000..9514efb6df0 --- /dev/null +++ b/addons/openacademy/__openerp__.py @@ -0,0 +1,16 @@ +{ + 'name': 'Open Academy', + 'version': '1.0', + 'depends': ['base'], + 'author': 'Arnaud_Pineux', + 'category': 'Test', + 'description': """ + Open Academy module for managing trainings: + - training courses + - training sessions + - attendees registration """, + 'data': ['openacademy_view.xml'], + 'demo': [], + 'installable': True, + 'application' : True, +} diff --git a/addons/openacademy/openacademy.py b/addons/openacademy/openacademy.py new file mode 100644 index 00000000000..b134ee5b45d --- /dev/null +++ b/addons/openacademy/openacademy.py @@ -0,0 +1,30 @@ +from openerp.osv import osv, fields + +class Course (osv.Model): + _name = "openacademy.course" + _description = "OpenAcademy course" + _column = { + 'name': fields.char('Course Title',size=128,required=True), + 'description': fields.text('Description'), + 'responsible_id': fields.many2one('res.users',string='responsible',ondelete='set null'), + 'session_ids': fields.one2many('openacademy.session','course_id','Session'), + } +class Session(osv.Model): + _name = 'openacademy.session' + _description = "OpenAcademy session" + _columns = { + 'name': fields.char('Session Title', size=128, required=True), + 'start_date': fields.date('Start Date'), + 'duration': fields.float('Duration', digits=(6,2), help="Duration in days"), + 'seats': fields.integer('Number of seats'), + 'instructor_id': fields.many2one('res.partner','Intructor'), + 'course_id': fields.many2one('openacademy.course','course',required=True,ondelete='cascade'), + 'attendee_ids': fields.one2many('openacademy.attendee','session_id','Attendees'), + } +class Attendee(osv.Model): + _name = 'openacademy.attendee' + _description = "OpenAcademy Attendee" + _columns = { + 'partner_id': fields.many2one('res.partner','Partner',required=True,ondelete='cascade'), + 'session_id': fields.many2one('openacademy.session','Session',required=True,ondelete='cascade'), + }
\ No newline at end of file diff --git a/addons/openacademy/openacademy_view.xml b/addons/openacademy/openacademy_view.xml new file mode 100644 index 00000000000..e694788aa69 --- /dev/null +++ b/addons/openacademy/openacademy_view.xml @@ -0,0 +1,33 @@ +<?xml version='1.0' encoding='UTF-8'?> +<openerp> + <data> + <record model='ir.actions.act_window' id='course_list_action'> + <field name='name'>Courses</field> + <field name='res_model'>openacademy.course</field> + <field name='view_type'>form</field> + <field name='view_mode'>tree,form</field> + </record> + + <record model='ir.ui.view' id='course_tree_view'> + <field name='name'>openacadamy.course.tree</field> + <field name='model'>openacademy.course</field> + <field name='arch' type='xml'> + <tree string='Course Tree'> + <field name='name'/> + <field name='responsible_id'/> + </tree> + </field> + </record> + + <record model='ir.actions.act_window' id='session_list_action'> + <field name='name'>Sessions</field> + <field name='res_model'>openacademy.session</field> + <field name='view_type'>form</field> + <field name='view_mode'>tree,form</field> + </record> + + <menuitem id='openacademy_menu' name='openacademy' /> + <menuitem id='course_menu' name='Courses' parent='openacademy_menu' action='course_list_action' /> + <menuitem id='session_menu' name='Sessions' parent='openacademy_menu' action='session_list_action' /> + </data> +</openerp>
\ No newline at end of file diff --git a/addons/openacademy/temporary.py b/addons/openacademy/temporary.py new file mode 100644 index 00000000000..86e482a33e5 --- /dev/null +++ b/addons/openacademy/temporary.py @@ -0,0 +1,64 @@ + +<record model="ir.ui.view" id="course_form_view"> + <field name="name">course.form</field> + <field name="model">openacademy.course</field> + <field name="type">form</field> + <field name="arch" type="xml"> + <form string="Course Form"> + <field name="name" /> + <field name="responsible_id" /> + <notebook colspan="4"> + <page string="Description"> + <field name="description" nolabel="1" colspan="4" /> + </page> + <page string="Sessions"> + <field name="session_ids" nolabel="1" colspan="4" mode="tree,form"> + <tree string="Registered sessions"> + <field name="name"/> + <field name="instructor_id"/> + </tree> + <form string="Registered sessions"> + <field name="name"/> + <field name="instructor_id"/> + </form> + </field> + </page> + </notebook> + </form> + </field> + </record> + + <!-- ======= SESSION ====== --> + <record model="ir.ui.view" id="session_tree_view"> + <field name="name">session.tree</field> + <field name="model">openacademy.session</field> + <field name="type">tree</field> + <field name="arch" type="xml"> + <tree string="Session Tree"> + <field name="name"/> + <field name="course_id"/> + </tree> + </field> + </record> + + <record model="ir.ui.view" id="session_form_view"> + <field name="name">session.form</field> + <field name="model">openacademy.session</field> + <field name="type">form</field> + <field name="arch" type="xml"> + <form string="Session Form"> + <group colspan="2" col="2"> + <separator string="General" colspan="2"/> + <field name="course_id"/> + <field name="name" /> + <field name="instructor_id" /> + </group> + <separator string="Attendees" colspan="4"/> + <field name="attendee_ids" colspan="4" nolabel="1"> + <tree string="Attendees" editable="bottom"> + <field name="partner_id"/> + </tree> + </field> + </form> + </field> + </record>
\ No newline at end of file |
