9 <!-- MEMBERSHIP/MEMBERSHIP PRODUCTS -->
11 <record model="ir.ui.view" id="membership_product_search_form_view">
12 <field name="name">membership.product.search.form</field>
13 <field name="model">product.product</field>
14 <field name="type">search</field>
15 <field name="arch" type="xml">
16 <search string="Membership Products">
17 <filter string="Inactive" icon="terp-gdu-smart-failing" domain="[('active','=',0)]"/>
18 <separator orientation="vertical"/>
21 <field name="categ_id" widget="selection" operator="child_of"/>
23 <group expand='0' string='Group by...' groups="base.group_extended">
24 <filter string='Category' icon="terp-stock_symbol-selection" domain="[]" context="{'group_by' : 'categ_id'}" />
25 <separator orientation="vertical"/>
26 <filter string='Date From' icon="terp-go-month" domain="[]" context="{'group_by' : 'membership_date_from'}" />
32 <record model="ir.ui.view" id="membership_products_tree">
33 <field name="name">Membership products</field>
34 <field name="model">product.product</field>
35 <field name="type">tree</field>
36 <field name="arch" type="xml">
37 <tree string="Membership products">
40 <field name="membership_date_from"/>
41 <field name="membership_date_to"/>
42 <field name="list_price" string="Membership Fee"/>
43 <field name="categ_id" invisible="1"/>
44 <field name="uom_id" invisible="1"/>
45 <field name="type" invisible="1"/>
50 <record model="ir.ui.view" id="membership_products_form">
51 <field name="name">Membership Products</field>
52 <field name="model">product.product</field>
53 <field name="type">form</field>
54 <field name="arch" type="xml">
55 <form string="Membership products">
58 <field name="default_code"/>
59 <field name="active"/>
60 <field name="membership" invisible="1"/>
61 <field name="membership_date_from" required="1"/>
62 <field name="membership_date_to" required="1"/>
63 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
65 <notebook colspan="4">
66 <page string="General">
67 <separator string="Accounting Info" colspan="2"/>
68 <separator string="Categorization" colspan="2"/>
69 <field name="list_price" string="Membership Fee"/>
71 <field name="property_account_income" domain="[('type', '!=', 'view')]"/>
72 <field name="categ_id"/>
73 <separator string="Sale Taxes" colspan="2"/>
75 <field name="taxes_id" nolabel="1" colspan="4"/>
77 <page string="Description">
78 <separator string="Description"/>
79 <field colspan="4" name="description" nolabel="1"/>
80 <separator string="Sale Description"/>
81 <field colspan="4" name="description_sale" nolabel="1"/>
82 <separator string="Purchase Description"/>
83 <field colspan="4" name="description_purchase" nolabel="1"/>
90 <record model="ir.ui.view" id="product_normal_form_view">
91 <field name="name">Membership Products</field>
92 <field name="model">product.product</field>
93 <field name="inherit_id" ref="product.product_normal_form_view"/>
94 <field name="arch" type="xml">
95 <page string="Information" position="after">
96 <page string="Membership">
97 <field name="membership" readonly="0"/>
99 <field name="membership_date_from" readonly="0" attrs="{'required':[('membership','=',True)]}"/>
100 <field name="membership_date_to" readonly="0" attrs="{'required':[('membership','=',True)]}"/>
106 <record model="ir.actions.act_window" id="action_membership_products">
107 <field name="name">Membership Products</field>
108 <field name="res_model">product.product</field>
109 <field name="domain">[('membership','=',True), ('type', '=', 'service')]</field>
110 <field name="context">{'membership':True, 'type':'service', 'default_membership': True, 'default_type': 'service'}</field>
111 <field name="search_view_id" ref="membership_product_search_form_view"/>
114 <record model="ir.actions.act_window.view" id="action_membership_product_view_tree">
115 <field name="sequence" eval="1"/>
116 <field name="view_mode">tree</field>
117 <field name="view_id" ref="membership_products_tree"/>
118 <field name="act_window_id" ref="action_membership_products"/>
121 <record model="ir.actions.act_window.view" id="action_membership_product_view_form">
122 <field name="sequence" eval="2"/>
123 <field name="view_mode">form</field>
124 <field name="view_id" ref="membership_products_form"/>
125 <field name="act_window_id" ref="action_membership_products"/>
128 <menuitem name="Association" id="base.menu_association" icon="terp-calendar" sequence="9"/>
129 <menuitem name="Membership" id="menu_membership" sequence="0" parent="base.menu_association"/>
130 <menuitem name="Configuration" id="base.menu_marketing_config_association"
131 parent="base.menu_association" sequence="30" groups="base.group_extended"/>
134 <menuitem name="Membership Products"
135 parent="base.menu_marketing_config_association"
136 id="menu_membership_products"
137 action="action_membership_products"
139 groups="base.group_partner_manager"/>
142 <!-- MEMBERSHIP/CURRENT MEMBERS -->
144 <record model="ir.ui.view" id="membership_members_tree">
145 <field name="name">Members</field>
146 <field name="model">res.partner</field>
147 <field name="type">tree</field>
148 <field name="arch" type="xml">
149 <tree string="Members">
151 <field name="membership_state"/>
152 <field name="associate_member" attrs="{'invisible':[('membership_state', '!=', 'none')]}"/>
153 <field name="membership_start"/>
154 <field name="membership_stop"/>
155 <field name="user_id" invisible="1"/>
160 <record id="view_res_partner_member_filter" model="ir.ui.view">
161 <field name="name">res.partner.select</field>
162 <field name="model">res.partner</field>
163 <field name="type">search</field>
164 <field name="arch" type="xml">
165 <search string="Membership Partners">
166 <filter string="Customers" name="customer" icon="terp-personal" domain="[('customer','=',1)]" help="Customer Partners"/>
167 <filter string="Suppliers" name="supplier" icon="terp-personal" domain="[('supplier','=',1)]" help="Supplier Partners"/>
168 <separator orientation="vertical"/>
169 <filter icon="terp-personal" name="all_non_members" domain="[('membership_state', 'in', ['none','canceled','old','waiting'])]" string="All non Members" help="None/Canceled/Old/Waiting"/>
170 <filter icon="terp-personal" name="all_members" domain="[('membership_state', 'in', ['invoiced','paid','free'])]" string="All Members" help="Invoiced/Paid/Free"/>
171 <separator orientation="vertical"/>
172 <field name="membership_stop" string="End Membership Date"/>
173 <field name="membership_start" invisible="1"/>
175 <group expand="0" string="Group By..." colspan="10" col="8">
176 <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by' : 'user_id'}" />
177 <filter string="Associate Member" name = "associate" icon="terp-partner" domain="[]" context="{'group_by':'associate_member'}"/>
178 <separator orientation="vertical"/>
179 <filter string=" Membership State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'membership_state'}"/>
180 <separator orientation="vertical"/>
181 <filter string="Start Date" help="Starting Date Of Membership" icon="terp-go-month" domain="[]" context="{'group_by':'membership_start'}"/>
182 <filter string="End Date" help="Ending Date Of Membership" icon="terp-go-month" domain="[]" context="{'group_by':'membership_stop'}"/>
188 <record model="ir.actions.act_window" id="action_membership_members">
189 <field name="name">Members</field>
190 <field name="res_model">res.partner</field>
191 <field name="search_view_id" ref="view_res_partner_member_filter"/>
192 <field name="context">{"search_default_all_members": 1}</field>
195 <record model="ir.actions.act_window.view" id="action_membership_members_view_tree">
196 <field name="sequence" eval="1"/>
197 <field name="view_mode">tree</field>
198 <field name="view_id" ref="membership_members_tree"/>
199 <field name="act_window_id" ref="action_membership_members"/>
202 <record model="ir.actions.act_window.view" id="action_membership_members_view_form">
203 <field name="sequence" eval="2"/>
204 <field name="view_mode">form</field>
205 <field name="view_id" ref="base.view_partner_form"/>
206 <field name="act_window_id" ref="action_membership_members"/>
209 <menuitem name="Members" parent="menu_membership" id="menu_members" sequence="2" action="action_membership_members"/>
213 <record model="ir.ui.view" id="view_partner_tree">
214 <field name="name">res.partner.tree.form.inherit</field>
215 <field name="model">res.partner</field>
216 <field name="inherit_id" ref="base.view_partner_tree"/>
217 <field name="arch" type="xml">
218 <tree string="Partners">
219 <field name="category_id" position="after"/>
220 <field name="membership_state"/>
225 <record model="ir.ui.view" id="view_partner_form">
226 <field name="name">res.partner.form.inherit</field>
227 <field name="model">res.partner</field>
228 <field name="inherit_id" ref="base.view_partner_form"/>
229 <field name="arch" type="xml">
230 <notebook position="inside">
231 <page string="Membership">
232 <group colspan="2" col="2">
233 <group colspan="4" col="3">
234 <field name="free_member"/>
235 <button name="%(action_membership_invoice_view)d" type="action" string="Join Membership" attrs="{'readonly':[('free_member','=',True)]}" icon="gtk-apply"/>
236 <field colspan="4" name="associate_member" attrs="{'readonly':[('membership_state','!=', 'none')]}"/>
237 <field colspan="4" name="membership_state"/>
240 <group colspan="2" col="2">
241 <field name="membership_start"/>
242 <field name="membership_stop"/>
243 <field name="membership_cancel"/>
245 <field name="member_lines" nolabel="1" colspan="4" readonly="1">
246 <tree string="Memberships">
248 <field name="membership_id"/>
249 <field name="member_price"/>
250 <field name="account_invoice_id"/>
251 <field name="state"/>
253 <form string="Memberships">
255 <field name="member_price"/>
256 <field name="membership_id"/>
257 <field name="account_invoice_id"/>
258 <field name="state" colspan="4"/>
267 <!-- MEMBERSHIP/REPORTING -->
268 <menuitem name="Reporting" id="base.menu_report_association" parent="base.menu_association" sequence="20"/>
270 <!-- View for product.product object inherited from product module................ -->
271 <record model="ir.ui.view" id="view_product_form_inherit1">
272 <field name="name">product.normal.form</field>
273 <field name="type">form</field>
274 <field name="model">product.product</field>
275 <field name="inherit_id" ref="product.product_normal_form_view"/>
276 <field name="arch" type="xml">
277 <field name="list_price" position="after">
278 <field name="member_price"/>