hunk.code_window:     def _compute_statistics(self):
           """ Compute statistics of the mass mailing """
           self.env.cr.execute("""
               SELECT
                   m.id as mailing_id,
                   COUNT(s.id) AS total,
                   COUNT(CASE WHEN s.sent is not null THEN 1 ELSE null END) AS sent,
                   COUNT(CASE WHEN s.scheduled is not null AND s.sent is null AND s.exception is null THEN 1 ELSE null END) AS scheduled,
                   COUNT(CASE WHEN s.scheduled is not null AND s.sent is null AND s.exception is not null THEN 1 ELSE null END) AS failed,
  
hunk.labels: keep keep keep keep keep replace keep keep keep
hunk.after_edit:                 COUNT(s.id) AS expected,
  
hunk.file_path: addons/mass_mailing/models/mass_mailing.py
hunk.type: replace
file: # HG changeset patch
  # Parent 643813940cbea07bec792f9e1c60022a9292fa90
  
  Index: addons/openacademy/__manifest__.py
  ===================================================================
  --- addons.orig/openacademy/__manifest__.py	2014-08-26 17:26:21.535783052 +0200
  +++ addons/openacademy/__manifest__.py	2014-08-26 17:26:21.531783052 +0200
  @@ -21,7 +21,7 @@
       'version': '0.1',
   
       # any module necessary for this one to work correctly
  -    'depends': ['base'],
  +    'depends': ['base', 'board'],
   
       # always loaded
       'data': [
  @@ -30,6 +30,7 @@
           'templates.xml',
           'views/openacademy.xml',
           'views/partner.xml',
  +        'views/session_board.xml',
           'reports.xml',
       ],
       # only loaded in demonstration mode
  Index: addons/openacademy/views/session_board.xml
  ===================================================================
  --- /dev/null	1970-01-01 00:00:00.000000000 +0000
  +++ addons/openacademy/views/session_board.xml	2014-08-26 17:26:21.531783052 +0200
  @@ -0,0 +1,66 @@
  +<?xml version="1.0"?>
  +<odoo>
  +
  +        <record model="ir.actions.act_window" id="act_session_graph">
  +            <field name="name">Attendees by course</field>
  +            <field name="res_model">openacademy.session</field>
  +            <field name="view_type">form</field>
  +            <field name="view_mode">graph</field>
  +            <field name="view_id"
  +                   ref="openacademy.openacademy_session_graph_view"/>
  +        </record>
  +        <record model="ir.actions.act_window" id="act_session_calendar">
  +            <field name="name">Sessions</field>
  +            <field name="res_model">openacademy.session</field>
  +            <field name="view_type">form</field>
  +            <field name="view_mode">calendar</field>
  +            <field name="view_id" ref="openacademy.session_calendar_view"/>
  +        </record>
  +        <record model="ir.actions.act_window" id="act_course_list">
  +            <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="board_session_form">
  +            <field name="name">Session Dashboard Form</field>
  +            <field name="model">board.board</field>
  +            <field name="type">form</field>
  +            <field name="arch" type="xml">
  +                <form string="Session Dashboard">
  +                    <board style="2-1">
  +                        <column>
  +                            <action
  +                                string="Attendees by course"
  +                                name="%(act_session_graph)d"
  +                                height="150"
  +                                width="510"/>
  +                            <action
  +                                string="Sessions"
  +                                name="%(act_session_calendar)d"/>
  +                        </column>
  +                        <column>
  +                            <action
  +                                string="Courses"
  +                                name="%(act_course_list)d"/>
  +                        </column>
  +                    </board>
  +                </form>
  +            </field>
  +        </record>
  +        <record model="ir.actions.act_window" id="open_board_session">
  +          <field name="name">Session Dashboard</field>
  +          <field name="res_model">board.board</field>
  +          <field name="view_type">form</field>
  +          <field name="view_mode">form</field>
  +          <field name="usage">menu</field>
  +          <field name="view_id" ref="board_session_form"/>
  +        </record>
  +
  +        <menuitem
  +            name="Session Dashboard" parent="base.menu_reporting_dashboard"
  +            action="open_board_session"
  +            sequence="1"
  +            id="menu_board_session"/>
  +
  +</odoo>
  