301 lines
11 KiB
Plaintext
301 lines
11 KiB
Plaintext
# HG changeset patch
|
|
# Parent ade038cd6dfd855f1d423cffb3d4e242404c28f0
|
|
|
|
diff --git a/__init__.py b/__init__.py
|
|
--- a/__init__.py
|
|
+++ b/__init__.py
|
|
@@ -1,4 +1,3 @@
|
|
# -*- coding: utf-8 -*-
|
|
import controllers
|
|
import models
|
|
-
|
|
diff --git a/__openerp__.py b/__openerp__.py
|
|
--- a/__openerp__.py
|
|
+++ b/__openerp__.py
|
|
@@ -17,10 +17,8 @@
|
|
# any module necessary for this one to work correctly
|
|
'depends': ['website', 'website_event'],
|
|
'data': [
|
|
- 'security/ir.model.access.csv',
|
|
'views/templates.xml',
|
|
'data/records.xml',
|
|
- 'data/views.xml',
|
|
],
|
|
'demo': [
|
|
'demo/teaching_assistants.xml',
|
|
diff --git a/controllers/academy.py b/controllers/academy.py
|
|
--- a/controllers/academy.py
|
|
+++ b/controllers/academy.py
|
|
@@ -6,18 +6,29 @@ from openerp.addons.web.controllers impo
|
|
class academy(main.Home):
|
|
@http.route('/', auth='public', website=True)
|
|
def index(self):
|
|
+ registry = http.request.registry
|
|
cr, uid, context = http.request.cr, http.request.uid, http.request.context
|
|
- Lectures = http.request.registry['academy.lectures']
|
|
- tas = http.request.registry['academy.tas'].search_read(
|
|
- http.request.cr, http.request.uid, context=http.request.context)
|
|
+
|
|
+ Data = registry['ir.model.data']
|
|
+ _, ta_group_id = Data.get_object_reference(cr, uid, 'academy', 'tas')
|
|
+ tas = registry['res.users'].search_read(
|
|
+ http.request.cr, http.request.uid,
|
|
+ [('groups_id', '=', [ta_group_id])],
|
|
+ context=http.request.context)
|
|
+
|
|
+ Lectures = registry['event.event']
|
|
+ _, lecture_type_id = Data.get_object_reference(cr, uid, 'academy', 'lecture_type')
|
|
lectures = Lectures.browse(
|
|
- cr, uid, Lectures.search(cr, uid, [], context=context), context=context)
|
|
+ cr, uid,
|
|
+ Lectures.search(cr, uid, [('type', '=', lecture_type_id),], context=context),
|
|
+ context=context)
|
|
+
|
|
return http.request.website.render('academy.index', {
|
|
'tas': tas,
|
|
'lectures': lectures,
|
|
})
|
|
|
|
- @http.route('/tas/<model("academy.tas"):ta>/', auth='public', website=True)
|
|
+ @http.route('/tas/<model("res.users"):ta>/', auth='public', website=True)
|
|
def ta(self, ta):
|
|
return http.request.website.render('academy.ta', {
|
|
'ta': ta,
|
|
diff --git a/data/views.xml b/data/views.xml
|
|
deleted file mode 100644
|
|
--- a/data/views.xml
|
|
+++ /dev/null
|
|
@@ -1,25 +0,0 @@
|
|
-<openerp>
|
|
- <data>
|
|
- <record id="list_academy_lecture" model="ir.ui.view">
|
|
- <field name="model">academy.lectures</field>
|
|
- <field name="arch" type="xml">
|
|
- <tree string="Lectures">
|
|
- <field name="name"/>
|
|
- <field name="date"/>
|
|
- </tree>
|
|
- </field>
|
|
- </record>
|
|
-
|
|
- <record id="action_academy_lecture" model="ir.actions.act_window">
|
|
- <field name="name">Academy lectures</field>
|
|
- <field name="res_model">academy.lectures</field>
|
|
- </record>
|
|
-
|
|
- <menuitem sequence="0" id="menu_academy" name="Academy"/>
|
|
- <menuitem id="menu_academy_content" parent="menu_academy"
|
|
- name="Academy Content"/>
|
|
- <menuitem id="menu_academy_content_lectures"
|
|
- parent="menu_academy_content"
|
|
- action="action_academy_lecture"/>
|
|
- </data>
|
|
-</openerp>
|
|
diff --git a/demo/lectures.xml b/demo/lectures.xml
|
|
--- a/demo/lectures.xml
|
|
+++ b/demo/lectures.xml
|
|
@@ -1,24 +1,47 @@
|
|
<openerp>
|
|
<data>
|
|
- <record model="academy.lectures" id="lecture1">
|
|
+ <delete model="event.registration" search="[]"/>
|
|
+ <delete model="event.event" search="[]"/>
|
|
+ <delete model="event.type" search="[]"/>
|
|
+
|
|
+ <record model="event.type" id="lecture_type">
|
|
+ <field name="name">Lecture</field>
|
|
+ </record>
|
|
+
|
|
+ <record model="event.event" id="lecture1">
|
|
<field name="name">Lecture 1</field>
|
|
- <field name="date">2014-01-06</field>
|
|
+ <field name="date_begin">2015-01-06 10:00:00</field>
|
|
+ <field name="date_end">2015-01-06 12:00:00</field>
|
|
+ <field name="type" ref="lecture_type"/>
|
|
+ <field name="website_published" eval="True"/>
|
|
</record>
|
|
- <record model="academy.lectures" id="lecture2">
|
|
+ <record model="event.event" id="lecture2">
|
|
<field name="name">Lecture 2</field>
|
|
- <field name="date">2014-01-08</field>
|
|
+ <field name="date_begin">2015-01-08 10:00:00</field>
|
|
+ <field name="date_end">2015-01-08 12:00:00</field>
|
|
+ <field name="type" ref="lecture_type"/>
|
|
+ <field name="website_published" eval="True"/>
|
|
</record>
|
|
- <record model="academy.lectures" id="lecture3">
|
|
+ <record model="event.event" id="lecture3">
|
|
<field name="name">Lecture 3</field>
|
|
- <field name="date">2014-01-10</field>
|
|
+ <field name="date_begin">2015-01-10 10:00:00</field>
|
|
+ <field name="date_end">2015-01-10 12:00:00</field>
|
|
+ <field name="type" ref="lecture_type"/>
|
|
+ <field name="website_published" eval="True"/>
|
|
</record>
|
|
- <record model="academy.lectures" id="lecture4">
|
|
+ <record model="event.event" id="lecture4">
|
|
<field name="name">Lecture 4</field>
|
|
- <field name="date">2014-01-13</field>
|
|
+ <field name="date_begin">2015-01-13 10:00:00</field>
|
|
+ <field name="date_end">2015-01-13 12:00:00</field>
|
|
+ <field name="type" ref="lecture_type"/>
|
|
+ <field name="website_published" eval="True"/>
|
|
</record>
|
|
- <record model="academy.lectures" id="lecture5">
|
|
+ <record model="event.event" id="lecture5">
|
|
<field name="name">Lecture 5</field>
|
|
- <field name="date">2014-01-15</field>
|
|
+ <field name="date_begin">2015-01-15 10:00:00</field>
|
|
+ <field name="date_end">2015-01-15 12:00:00</field>
|
|
+ <field name="type" ref="lecture_type"/>
|
|
+ <field name="website_published" eval="True"/>
|
|
</record>
|
|
</data>
|
|
</openerp>
|
|
diff --git a/demo/teaching_assistants.xml b/demo/teaching_assistants.xml
|
|
--- a/demo/teaching_assistants.xml
|
|
+++ b/demo/teaching_assistants.xml
|
|
@@ -1,19 +1,54 @@
|
|
<openerp>
|
|
<data>
|
|
- <record id="padilla" model="academy.tas">
|
|
+ <record id="padilla_p" model="res.partner">
|
|
<field name="name">Diana Padilla</field>
|
|
</record>
|
|
- <record id="carroll" model="academy.tas">
|
|
+ <record id="padilla" model="res.users">
|
|
+ <field name="login">padilla</field>
|
|
+ <field name="partner_id" ref="padilla_p"/>
|
|
+ </record>
|
|
+
|
|
+ <record id="carroll_p" model="res.partner">
|
|
<field name="name">Jody Carroll</field>
|
|
</record>
|
|
- <record id="vaughn" model="academy.tas">
|
|
+ <record id="carroll" model="res.users">
|
|
+ <field name="login">carroll</field>
|
|
+ <field name="partner_id" ref="carroll_p"/>
|
|
+ </record>
|
|
+
|
|
+ <record id="vaughn_p" model="res.partner">
|
|
<field name="name">Lester Vaughn</field>
|
|
</record>
|
|
- <record id="jimenez" model="academy.tas">
|
|
+ <record id="vaughn" model="res.users">
|
|
+ <field name="login">vaughn</field>
|
|
+ <field name="partner_id" ref="vaughn_p"/>
|
|
+ </record>
|
|
+
|
|
+ <record id="jimenez_p" model="res.partner">
|
|
<field name="name">Paul Jimenez</field>
|
|
</record>
|
|
- <record id="harris" model="academy.tas">
|
|
+ <record id="jimenez" model="res.users">
|
|
+ <field name="login">jimenez</field>
|
|
+ <field name="partner_id" ref="jimenez_p"/>
|
|
+ </record>
|
|
+
|
|
+ <record id="harris_p" model="res.partner">
|
|
<field name="name">Tanya Harris</field>
|
|
</record>
|
|
+ <record id="harris" model="res.users">
|
|
+ <field name="login">harris</field>
|
|
+ <field name="partner_id" ref="harris_p"/>
|
|
+ </record>
|
|
+
|
|
+ <record id="tas" model="res.groups">
|
|
+ <field name="name">Teaching Assistants</field>
|
|
+ <field name="users" eval="[
|
|
+ (4, ref('padilla')),
|
|
+ (4, ref('carroll')),
|
|
+ (4, ref('vaughn')),
|
|
+ (4, ref('jimenez')),
|
|
+ (4, ref('harris')),
|
|
+ ]"/>
|
|
+ </record>
|
|
</data>
|
|
</openerp>
|
|
diff --git a/models/__init__.py b/models/__init__.py
|
|
--- a/models/__init__.py
|
|
+++ b/models/__init__.py
|
|
@@ -1,3 +1,3 @@
|
|
# -*- coding: utf-8 -*-
|
|
-import academy
|
|
+import res_partner
|
|
|
|
diff --git a/models/academy.py b/models/academy.py
|
|
deleted file mode 100644
|
|
--- a/models/academy.py
|
|
+++ /dev/null
|
|
@@ -1,19 +0,0 @@
|
|
-# -*- coding: utf-8 -*-
|
|
-from openerp.osv import orm, fields
|
|
-
|
|
-class TeachingAssistants(orm.Model):
|
|
- _name = "academy.tas"
|
|
-
|
|
- _columns = {
|
|
- 'name': fields.char(),
|
|
- 'biography': fields.html(),
|
|
- }
|
|
-
|
|
-class Lectures(orm.Model):
|
|
- _name = 'academy.lectures'
|
|
- _order = 'date ASC'
|
|
-
|
|
- _columns = {
|
|
- 'name': fields.char(required=True, string="Name"),
|
|
- 'date': fields.date(required=True, string="Date"),
|
|
- }
|
|
diff --git a/models/res_partner.py b/models/res_partner.py
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/models/res_partner.py
|
|
@@ -0,0 +1,8 @@
|
|
+from openerp.osv import orm, fields
|
|
+
|
|
+class Partner(orm.Model):
|
|
+ _inherit = 'res.partner'
|
|
+
|
|
+ _columns = {
|
|
+ 'biography': fields.html(),
|
|
+ }
|
|
diff --git a/security/ir.model.access.csv b/security/ir.model.access.csv
|
|
deleted file mode 100644
|
|
--- a/security/ir.model.access.csv
|
|
+++ /dev/null
|
|
@@ -1,3 +0,0 @@
|
|
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
|
|
-access_academy_tas,access_academy_tas,model_academy_tas,,1,0,0,0
|
|
-access_academy_lectures,access_academy_lectures,model_academy_lectures,,1,0,0,0
|
|
\ No newline at end of file
|
|
diff --git a/views/templates.xml b/views/templates.xml
|
|
--- a/views/templates.xml
|
|
+++ b/views/templates.xml
|
|
@@ -31,11 +31,11 @@
|
|
</tr>
|
|
<tr t-foreach="lectures" t-as="lecture">
|
|
<td>
|
|
- <span t-field="lecture.date"
|
|
+ <span t-field="lecture.date_begin"
|
|
t-field-options='{"format": "long"}'/>
|
|
</td>
|
|
<td>
|
|
- <span t-field="lecture.date"
|
|
+ <span t-field="lecture.date_begin"
|
|
t-field-options='{"format": "EEE"}'/>
|
|
</td>
|
|
<td>
|
|
@@ -56,9 +56,9 @@
|
|
<div class="oe_structure"/>
|
|
<div class="oe_structure">
|
|
<div class="container">
|
|
- <h1 t-field="ta.name"/>
|
|
+ <h1 t-field="ta.partner_id.name"/>
|
|
<h2>Biography</h2>
|
|
- <div t-field="ta.biography"/>
|
|
+ <div t-field="ta.partner_id.biography"/>
|
|
</div>
|
|
</div>
|
|
<div class="oe_structure"/>
|