You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

179 lines
8.0 KiB

  1. <?xml version="1.0"?>
  2. <odoo>
  3. <record id="mail_activity_type_view_form" model="ir.ui.view">
  4. <field name="name">mail.activity.type.view.form</field>
  5. <field name="model">mail.activity.type</field>
  6. <field name="arch" type="xml">
  7. <form string="Activities">
  8. <sheet>
  9. <div class="oe_title">
  10. <label for="name" class="oe_edit_only"/>
  11. <h1><field name="name"/></h1>
  12. </div>
  13. <group>
  14. <group>
  15. <field name="category" invisible="1"/>
  16. <field name="res_model_id" groups="base.group_no_one"/>
  17. <field name="summary"/>
  18. <field name="icon" groups="base.group_no_one"/>
  19. <field name="days"/>
  20. </group>
  21. <group>
  22. <field name="next_type_ids" widget="many2many_tags"/>
  23. </group>
  24. </group>
  25. </sheet>
  26. </form>
  27. </field>
  28. </record>
  29. <record id="mail_activity_type_view_tree" model="ir.ui.view">
  30. <field name="name">mail.activity.type.view.tree</field>
  31. <field name="model">mail.activity.type</field>
  32. <field name="arch" type="xml">
  33. <tree string="Activities">
  34. <field name="sequence" widget="handle"/>
  35. <field name="name"/>
  36. <field name="summary"/>
  37. <field name="days"/>
  38. <field name="res_model_id" groups="base.group_no_one"/>
  39. <field name="icon" groups="base.group_no_one"/>
  40. </tree>
  41. </field>
  42. </record>
  43. <record id="mail_activity_type_action" model="ir.actions.act_window">
  44. <field name="name">Activity Types</field>
  45. <field name="res_model">mail.activity.type</field>
  46. <field name="view_type">form</field>
  47. <field name="view_mode">tree,form</field>
  48. </record>
  49. <menuitem
  50. id="menu_mail_activity_type"
  51. action="mail_activity_type_action"
  52. parent="base.menu_email"
  53. />
  54. <record id="mail_activity_view_form_popup" model="ir.ui.view">
  55. <field name="name">mail.activity.view.form.popup</field>
  56. <field name="model">mail.activity</field>
  57. <field name="priority">20</field>
  58. <field name="arch" type="xml">
  59. <form string="Log an Activity" create="false">
  60. <sheet string="Activity">
  61. <group invisible="1">
  62. <field name="activity_category" invisible="1" />
  63. <field name="res_model" invisible="1"/>
  64. <field name="res_model_id" invisible="1"/>
  65. <field name="res_id" invisible="1"/>
  66. <field name="previous_activity_type_id"/>
  67. <field name="has_recommended_activities"/>
  68. </group>
  69. <group attrs="{'invisible': [('has_recommended_activities','=',False)]}">
  70. <div>
  71. <p><strong>Recommended Activities</strong></p>
  72. <field name="recommended_activity_type_id" widget="radio"
  73. domain="[('previous_type_ids', '=', previous_activity_type_id)]"
  74. options="{'horizontal':true}"
  75. nolabel="1"/>
  76. </div>
  77. </group>
  78. <group>
  79. <group>
  80. <field name="activity_type_id" required="1" options="{'no_create': True, 'no_open': True}"/>
  81. <field name="summary" placeholder="e.g. Discuss proposal"/>
  82. </group>
  83. <group>
  84. <field name="date_deadline"/>
  85. <field name="user_id"/>
  86. </group>
  87. </group>
  88. <field name="note" placeholder="Log a note..."/>
  89. <footer>
  90. <button string="Schedule" name="action_close_dialog"
  91. type="object" class="btn-primary"/>
  92. <button string="Mark as Done" name="action_done"
  93. type="object" class="btn-primary"/>
  94. <button string="Discard" class="btn-default" special="cancel" />
  95. </footer>
  96. </sheet>
  97. </form>
  98. </field>
  99. </record>
  100. <record id="mail_activity_view_search" model="ir.ui.view">
  101. <field name="name">mail.activity.view.search</field>
  102. <field name="model">mail.activity</field>
  103. <field name="arch" type="xml">
  104. <search string="Activity">
  105. <field name="res_model_id"/>
  106. <field name="summary"/>
  107. <field name="activity_type_id"/>
  108. <separator/>
  109. <filter string="My Activities" name="activities_my"
  110. domain="[('create_uid', '=', uid)]"/>
  111. <separator/>
  112. <filter string="Late Activities" name="activities_overdue"
  113. domain="[('date_deadline', '&lt;', context_today().strftime('%Y-%m-%d'))]"
  114. help="Show all records which has next action date is before today"/>
  115. <filter string="Today Activities" name="activities_today"
  116. domain="[('date_deadline', '=', context_today().strftime('%Y-%m-%d'))]"/>
  117. <filter string="Future Activities" name="activities_upcoming_all"
  118. domain="[('activity_ids.date_deadline', '&gt;', context_today().strftime('%Y-%m-%d'))
  119. ]"/>
  120. <separator/>
  121. <group expand="0" string="Group By">
  122. <filter string="Deadline" context="{'group_by': 'date_deadline'}"/>
  123. <filter string="Created By" context="{'group_by': 'create_uid'}"/>
  124. <filter string="Activity Type" context="{'group_by': 'activity_type_id'}"/>
  125. </group>
  126. </search>
  127. </field>
  128. </record>
  129. <record id="mail_activity_view_tree" model="ir.ui.view">
  130. <field name="name">mail.activity.view.tree</field>
  131. <field name="model">mail.activity</field>
  132. <field name="arch" type="xml">
  133. <tree string="Next Activities"
  134. decoration-danger="date_deadline &lt; current_date"
  135. decoration-success="date_deadline == current_date"
  136. default_order="date_deadline" create="false">
  137. <field name="res_name"/>
  138. <field name="activity_type_id"/>
  139. <field name="summary"/>
  140. <field name="date_deadline"/>
  141. </tree>
  142. </field>
  143. </record>
  144. <record id="mail_activity_view_calendar" model="ir.ui.view">
  145. <field name="name">mail.activity.view.calendar</field>
  146. <field name="model">mail.activity</field>
  147. <field name="priority" eval="2"/>
  148. <field name="arch" type="xml">
  149. <calendar string="Activity" date_start="date_deadline" color="activity_type_id">
  150. <field name="res_name"/>
  151. <field name="create_uid"/>
  152. <field name="summary"/>
  153. </calendar>
  154. </field>
  155. </record>
  156. <template id="message_activity_done">
  157. <div>
  158. <p>
  159. <strong><span t-attf-class="fa #{activity.activity_type_id.icon}"/></strong> <span t-field="activity.activity_type_id.name"/> done
  160. by <span t-field="activity.user_id.name"/>:
  161. <span t-if="activity.summary" t-field="activity.summary"/>
  162. </p>
  163. <div t-field="activity.note" style="margin-left: 8px;"/>
  164. <div t-if="activity.feedback" style="margin-top: 8px;">
  165. <strong> Feedback</strong>
  166. <div t-field="activity.feedback" style="margin-left: 8px;"></div>
  167. </div>
  168. </div>
  169. </template>
  170. </odoo>