summaryrefslogtreecommitdiff
path: root/addons/event
diff options
context:
space:
mode:
Diffstat (limited to 'addons/event')
-rw-r--r--addons/event/__openerp__.py2
-rw-r--r--addons/event/event.py14
-rw-r--r--addons/event/event_view.xml133
-rw-r--r--addons/event/security/event_security.xml2
-rw-r--r--addons/event/wizard/event_confirm_view.xml5
5 files changed, 108 insertions, 48 deletions
diff --git a/addons/event/__openerp__.py b/addons/event/__openerp__.py
index f1a9769f803..040df5ce987 100644
--- a/addons/event/__openerp__.py
+++ b/addons/event/__openerp__.py
@@ -39,7 +39,7 @@ Note that:
Association / Configuration / Types of Events
""",
'author': 'OpenERP SA',
- 'depends': ['email_template','google_map'],
+ 'depends': ['base_setup', 'board', 'email_template', 'google_map'],
'init_xml': [],
'update_xml': [
'security/event_security.xml',
diff --git a/addons/event/event.py b/addons/event/event.py
index a348e005d06..26fef61d2b5 100644
--- a/addons/event/event.py
+++ b/addons/event/event.py
@@ -271,13 +271,6 @@ class event_event(osv.osv):
# OpenChatter methods and notifications
# ----------------------------------------
- def get_needaction_user_ids(self, cr, uid, ids, context=None):
- result = dict.fromkeys(ids, [])
- for obj in self.browse(cr, uid, ids, context=context):
- if obj.state == 'draft' and obj.user_id:
- result[obj.id] = [obj.user_id.id]
- return result
-
def create_send_note(self, cr, uid, ids, context=None):
message = _("Event has been <b>created</b>.")
self.message_append_note(cr, uid, ids, body=message, context=context)
@@ -451,13 +444,6 @@ class event_registration(osv.osv):
# OpenChatter methods and notifications
# ----------------------------------------
- def get_needaction_user_ids(self, cr, uid, ids, context=None):
- result = dict.fromkeys(ids, [])
- for obj in self.browse(cr, uid, ids, context=context):
- if obj.state == 'draft' and obj.user_id:
- result[obj.id] = [obj.user_id.id]
- return result
-
def create_send_note(self, cr, uid, ids, context=None):
message = _("Registration has been <b>created</b>.")
self.message_append_note(cr, uid, ids, body=message, context=context)
diff --git a/addons/event/event_view.xml b/addons/event/event_view.xml
index ed539e7bf39..ea2788594b7 100644
--- a/addons/event/event_view.xml
+++ b/addons/event/event_view.xml
@@ -47,6 +47,43 @@
<!-- Events Organisation/CONFIGURATION/EVENTS -->
+ <!-- Event Read/Unread actions -->
+ <record id="actions_server_event_event_unread" model="ir.actions.server">
+ <field name="name">Mark unread</field>
+ <field name="condition">True</field>
+ <field name="type">ir.actions.server</field>
+ <field name="model_id" ref="model_event_event"/>
+ <field name="state">code</field>
+ <field name="code">self.message_check_and_set_unread(cr, uid, context.get('active_ids'), context=context)</field>
+ </record>
+ <record id="action_event_event_unread" model="ir.values">
+ <field name="name">action_event_event_unread</field>
+ <field name="action_id" ref="actions_server_event_event_unread"/>
+ <field name="value" eval="'ir.actions.server,' + str(ref('actions_server_event_event_unread'))" />
+ <field name="key">action</field>
+ <field name="model_id" ref="model_event_event" />
+ <field name="model">event.event</field>
+ <field name="key2">client_action_multi</field>
+ </record>
+
+ <record id="actions_server_event_event_read" model="ir.actions.server">
+ <field name="name">Mark read</field>
+ <field name="condition">True</field>
+ <field name="type">ir.actions.server</field>
+ <field name="model_id" ref="model_event_event"/>
+ <field name="state">code</field>
+ <field name="code">self.message_check_and_set_read(cr, uid, context.get('active_ids'), context=context)</field>
+ </record>
+ <record id="action_event_event_read" model="ir.values">
+ <field name="name">action_event_event_read</field>
+ <field name="action_id" ref="actions_server_event_event_read"/>
+ <field name="value" eval="'ir.actions.server,' + str(ref('actions_server_event_event_read'))" />
+ <field name="key">action</field>
+ <field name="model_id" ref="model_event_event" />
+ <field name="model">event.event</field>
+ <field name="key2">client_action_multi</field>
+ </record>
+
<record model="ir.ui.view" id="view_event_form">
<field name="name">Events</field>
<field name="model">event.event</field>
@@ -54,9 +91,9 @@
<field name="arch" type="xml">
<form string="Events" version="7.0">
<header>
- <button string="Confirm Event" name="button_confirm" states="draft" type="object"/>
- <button string="Event Ended" name="button_done" states="confirm" type="object"/>
- <button string="Set To Draft" name="button_draft" states="cancel,done" type="object"/>
+ <button string="Confirm Event" name="button_confirm" states="draft" type="object" class="oe_highlight"/>
+ <button string="Event Ended" name="button_done" states="confirm" type="object" class="oe_highlight"/>
+ <button string="Set To Draft" name="button_draft" states="cancel,done" type="object" />
<button string="Cancel Event" name="button_cancel" states="draft,confirm" type="object"/>
<field name="state" widget="statusbar" statusbar_visible="draft,confirm,done"/>
</header>
@@ -120,7 +157,7 @@
<group col="8" colspan="4">
<separator string="" colspan="4"/>
<newline/>
- <field name="state" select="1" colspan="2"/>
+ <field name="state" colspan="2"/>
<button name="registration_open" string="Confirm Registration" states="draft" type="object" icon="gtk-apply"/>
<button name="button_reg_close" string="Attended the Event" states="open" type="object" icon="gtk-jump-to"/>
<button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object" icon="gtk-cancel"/>
@@ -130,9 +167,9 @@
</page>
</notebook>
</sheet>
- <div class="oe_sheet_width">
- <field name="message_ids" colspan="4" widget="ThreadView" nolabel="1"/>
- </div>
+ <footer>
+ <field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
+ </footer>
</form>
</field>
</record>
@@ -144,7 +181,7 @@
<field name="model">event.event</field>
<field name="type">tree</field>
<field name="arch" type="xml">
- <tree string="Events" colors="red:(register_min and register_min&gt;register_current) or (register_max and register_max&lt;register_current);grey:state=='cancel'">
+ <tree string="Events" fonts="bold:needaction_pending==True" colors="red:(register_min and register_min&gt;register_current) or (register_max and register_max&lt;register_current);grey:state=='cancel'">
<field name="name" string="Name"/>
<field name="type"/>
<field name="date_begin"/>
@@ -155,6 +192,7 @@
<field name="main_speaker_id" groups="base.extended"/>
<field name="user_id"/>
<field name="state"/>
+ <field name="needaction_pending" invisible="1"/>
</tree>
</field>
</record>
@@ -264,6 +302,11 @@
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Events">
+ <filter icon="terp-mail-message-new"
+ string="Inbox" help="Unread messages"
+ name="needaction_pending"
+ domain="[('needaction_pending','=',True)]"/>
+ <separator orientation="vertical"/>
<group>
<field name="name" string="Events"/>
<separator orientation="vertical"/>
@@ -330,12 +373,49 @@
<!-- EVENTS/REGISTRATIONS/EVENTS -->
+ <!-- Registration Read/Unread actions -->
+ <record id="actions_server_event_registration_unread" model="ir.actions.server">
+ <field name="name">Mark unread</field>
+ <field name="condition">True</field>
+ <field name="type">ir.actions.server</field>
+ <field name="model_id" ref="model_event_registration"/>
+ <field name="state">code</field>
+ <field name="code">self.message_check_and_set_unread(cr, uid, context.get('active_ids'), context=context)</field>
+ </record>
+ <record id="action_event_registration_unread" model="ir.values">
+ <field name="name">action_event_registration_unread</field>
+ <field name="action_id" ref="actions_server_event_registration_unread"/>
+ <field name="value" eval="'ir.actions.server,' + str(ref('actions_server_event_registration_unread'))" />
+ <field name="key">action</field>
+ <field name="model_id" ref="model_event_registration" />
+ <field name="model">event.registration</field>
+ <field name="key2">client_action_multi</field>
+ </record>
+
+ <record id="actions_server_event_registration_read" model="ir.actions.server">
+ <field name="name">Mark read</field>
+ <field name="condition">True</field>
+ <field name="type">ir.actions.server</field>
+ <field name="model_id" ref="model_event_registration"/>
+ <field name="state">code</field>
+ <field name="code">self.message_check_and_set_read(cr, uid, context.get('active_ids'), context=context)</field>
+ </record>
+ <record id="action_event_registration_read" model="ir.values">
+ <field name="name">action_event_registration_read</field>
+ <field name="action_id" ref="actions_server_event_registration_read"/>
+ <field name="value" eval="'ir.actions.server,' + str(ref('actions_server_event_registration_read'))" />
+ <field name="key">action</field>
+ <field name="model_id" ref="model_event_registration" />
+ <field name="model">event.registration</field>
+ <field name="key2">client_action_multi</field>
+ </record>
+
<record model="ir.ui.view" id="view_event_registration_tree">
<field name="name">event.registration.tree</field>
<field name="model">event.registration</field>
<field name="type">tree</field>
<field name="arch" type="xml">
- <tree string="Registration" >
+ <tree string="Registration" fonts="bold:needaction_pending==True">
<field name="create_date"/>
<field name="partner_id"/>
<field name="name"/>
@@ -345,6 +425,7 @@
<field name="user_id"/>
<field name="origin"/>
<field name="state"/>
+ <field name="needaction_pending" invisible="1"/>
</tree>
</field>
</record>
@@ -356,13 +437,13 @@
<field name="arch" type="xml">
<form version="7.0">
<header>
- <button name="registration_open" string="Confirm" states="draft" type="object"/>
- <button name="button_reg_close" string="Attended" states="open" type="object"/>
- <button string="Set To Unconfirmed" name="do_draft" states="cancel,done" type="object"/>
+ <button name="registration_open" string="Confirm" states="draft" type="object" class="oe_highlight"/>
+ <button name="button_reg_close" string="Attended" states="open" type="object" class="oe_highlight"/>
+ <button string="Set To Unconfirmed" name="do_draft" states="cancel,done" type="object" />
<button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object"/>
- <field name="state" select="1" nolabel="1" colspan="2" widget="statusbar" statusbar_visible="draft,open,done"/>
+ <field name="state" nolabel="1" colspan="2" widget="statusbar" statusbar_visible="draft,open,done"/>
</header>
- <sheet string="Registration" layout="auto">
+ <sheet string="Registration">
<group col="6" colspan="4">
<field name="event_id" on_change="onchange_event(event_id, context)" domain="[('state','in',('draft','confirm'))]"/>
<field name="partner_id" attrs="{'readonly':[('state','!=', 'draft')]}" on_change="onchange_partner_id(partner_id, context)"/>
@@ -387,19 +468,6 @@
</group>
</page>
<page string="Emails">
-<!--
- <field name="message_ids" colspan="4" nolabel="1" mode="tree">
- <tree string="History">
- <field name="display_text" string="History Information"/>
- <field name="reply_to" invisible="1"/>
- <button
- string="Reply" attrs="{'invisible': [('reply_to', '=', False)]}"
- name="%(mail.action_email_compose_message_wizard)d"
- context="{'mail.compose.message.mode':'reply', 'message_id':active_id}"
- icon="terp-mail-replied" type="action" />
- </tree>
- </field>
--->
<button string="Send New Email"
name="%(mail.action_email_compose_message_wizard)d"
icon="terp-mail-message-new" context= '{"default_email_to":email}' type="action"/>
@@ -407,9 +475,9 @@
</notebook>
</sheet>
- <div class="oe_sheet_width">
- <field name="message_ids" colspan="4" widget="ThreadView" nolabel="1"/>
- </div>
+ <footer>
+ <field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
+ </footer>
</form>
</field>
</record>
@@ -449,6 +517,11 @@
<field name="arch" type="xml">
<search string="Event Registration">
<group>
+ <filter icon="terp-mail-message-new"
+ string="Inbox" help="Unread messages"
+ name="needaction_pending"
+ domain="[('needaction_pending','=',True)]"/>
+ <separator orientation="vertical"/>
<field name="name" string="Participant"
filter_domain="['|','|','|',('name','ilike',self),('partner_id','ilike',self),('email','ilike',self),('origin','ilike',self)]"/>
<separator orientation="vertical"/>
diff --git a/addons/event/security/event_security.xml b/addons/event/security/event_security.xml
index 5055d517bd5..e0d17c3bacb 100644
--- a/addons/event/security/event_security.xml
+++ b/addons/event/security/event_security.xml
@@ -8,7 +8,7 @@
<field name="sequence">3</field>
</record>
- <record id="group_event_user" model="res.groups">
+ <record id="group_event_user" model="res.groups">
<field name="name">User</field>
<field name="category_id" ref="module_category_event_management"/>
</record>
diff --git a/addons/event/wizard/event_confirm_view.xml b/addons/event/wizard/event_confirm_view.xml
index b79cae03723..93b9830ef82 100644
--- a/addons/event/wizard/event_confirm_view.xml
+++ b/addons/event/wizard/event_confirm_view.xml
@@ -9,8 +9,9 @@
<field name="arch" type="xml">
<form string="Event Confirmation" version="7.0">
<header>
- <button icon="gtk-ok" name="confirm" string="Confirm Anyway" type="object"/>
- <button icon="gtk-close" special="cancel" string="Close"/>
+ <button name="confirm" string="Confirm Anyway" type="object" class="oe_highlight"/>
+ or
+ <button string="Cancel" class="oe_link" special="cancel" />
</header>
<label string="Warning: This Event has not reached its Minimum Registration Limit. Are you sure you want to confirm it?"/>
</form>