summaryrefslogtreecommitdiff
path: root/extend_partners
diff options
context:
space:
mode:
Diffstat (limited to 'extend_partners')
-rw-r--r--extend_partners/__init__.py4
-rw-r--r--extend_partners/__manifest__.py33
-rw-r--r--extend_partners/__pycache__/__init__.cpython-36.pycbin0 -> 220 bytes
-rw-r--r--extend_partners/__pycache__/__init__.cpython-38.pycbin0 -> 216 bytes
-rw-r--r--extend_partners/controllers/__init__.py3
-rw-r--r--extend_partners/controllers/__pycache__/__init__.cpython-36.pycbin0 -> 203 bytes
-rw-r--r--extend_partners/controllers/__pycache__/__init__.cpython-38.pycbin0 -> 199 bytes
-rw-r--r--extend_partners/controllers/__pycache__/controllers.cpython-36.pycbin0 -> 170 bytes
-rw-r--r--extend_partners/controllers/__pycache__/controllers.cpython-38.pycbin0 -> 166 bytes
-rw-r--r--extend_partners/controllers/controllers.py21
-rw-r--r--extend_partners/demo/demo.xml30
-rw-r--r--extend_partners/models/__init__.py3
-rw-r--r--extend_partners/models/__pycache__/__init__.cpython-36.pycbin0 -> 198 bytes
-rw-r--r--extend_partners/models/__pycache__/__init__.cpython-38.pycbin0 -> 194 bytes
-rw-r--r--extend_partners/models/__pycache__/res_partner.cpython-36.pycbin0 -> 907 bytes
-rw-r--r--extend_partners/models/__pycache__/res_partner.cpython-38.pycbin0 -> 859 bytes
-rw-r--r--extend_partners/models/res_partner.py16
-rw-r--r--extend_partners/security/ir.model.access.csv2
-rw-r--r--extend_partners/views/res_partner_views.xml60
19 files changed, 172 insertions, 0 deletions
diff --git a/extend_partners/__init__.py b/extend_partners/__init__.py
new file mode 100644
index 0000000..511a0ca
--- /dev/null
+++ b/extend_partners/__init__.py
@@ -0,0 +1,4 @@
+# -*- coding: utf-8 -*-
+
+from . import controllers
+from . import models \ No newline at end of file
diff --git a/extend_partners/__manifest__.py b/extend_partners/__manifest__.py
new file mode 100644
index 0000000..1145ade
--- /dev/null
+++ b/extend_partners/__manifest__.py
@@ -0,0 +1,33 @@
+# -*- coding: utf-8 -*-
+{
+ 'name': "Extended Partners",
+
+ 'summary': """
+ This module adds general fields to contacts.
+ """,
+
+ 'description': """
+ This module is intended for adding fields and features which either are
+ used by multiple other modules or are standalone; Therefore it makes
+ sense to put said fields in a standalone module to ease development.
+ """,
+
+ 'author': "Richard Sassine",
+ 'website': "",
+ 'license': "GPL-3 or any later version",
+
+ # Categories can be used to filter modules in modules listing
+ # Check https://github.com/odoo/odoo/blob/14.0/odoo/addons/base/data/ir_module_category_data.xml
+ # for the full list
+ 'category': 'Technical',
+ 'version': '0.1',
+
+ # any module necessary for this one to work correctly
+ 'depends': ['base', 'contacts'],
+
+ # always loaded
+ 'data': [
+ # 'security/ir.model.access.csv',
+ 'views/res_partner_views.xml',
+ ],
+}
diff --git a/extend_partners/__pycache__/__init__.cpython-36.pyc b/extend_partners/__pycache__/__init__.cpython-36.pyc
new file mode 100644
index 0000000..ccc5e00
--- /dev/null
+++ b/extend_partners/__pycache__/__init__.cpython-36.pyc
Binary files differ
diff --git a/extend_partners/__pycache__/__init__.cpython-38.pyc b/extend_partners/__pycache__/__init__.cpython-38.pyc
new file mode 100644
index 0000000..1ef457d
--- /dev/null
+++ b/extend_partners/__pycache__/__init__.cpython-38.pyc
Binary files differ
diff --git a/extend_partners/controllers/__init__.py b/extend_partners/controllers/__init__.py
new file mode 100644
index 0000000..457bae2
--- /dev/null
+++ b/extend_partners/controllers/__init__.py
@@ -0,0 +1,3 @@
+# -*- coding: utf-8 -*-
+
+from . import controllers \ No newline at end of file
diff --git a/extend_partners/controllers/__pycache__/__init__.cpython-36.pyc b/extend_partners/controllers/__pycache__/__init__.cpython-36.pyc
new file mode 100644
index 0000000..22b8957
--- /dev/null
+++ b/extend_partners/controllers/__pycache__/__init__.cpython-36.pyc
Binary files differ
diff --git a/extend_partners/controllers/__pycache__/__init__.cpython-38.pyc b/extend_partners/controllers/__pycache__/__init__.cpython-38.pyc
new file mode 100644
index 0000000..0d34ca4
--- /dev/null
+++ b/extend_partners/controllers/__pycache__/__init__.cpython-38.pyc
Binary files differ
diff --git a/extend_partners/controllers/__pycache__/controllers.cpython-36.pyc b/extend_partners/controllers/__pycache__/controllers.cpython-36.pyc
new file mode 100644
index 0000000..dac7273
--- /dev/null
+++ b/extend_partners/controllers/__pycache__/controllers.cpython-36.pyc
Binary files differ
diff --git a/extend_partners/controllers/__pycache__/controllers.cpython-38.pyc b/extend_partners/controllers/__pycache__/controllers.cpython-38.pyc
new file mode 100644
index 0000000..8e8889e
--- /dev/null
+++ b/extend_partners/controllers/__pycache__/controllers.cpython-38.pyc
Binary files differ
diff --git a/extend_partners/controllers/controllers.py b/extend_partners/controllers/controllers.py
new file mode 100644
index 0000000..fad7b66
--- /dev/null
+++ b/extend_partners/controllers/controllers.py
@@ -0,0 +1,21 @@
+# -*- coding: utf-8 -*-
+# from odoo import http
+
+
+# class ExtendPartners(http.Controller):
+# @http.route('/extend_partners/extend_partners/', auth='public')
+# def index(self, **kw):
+# return "Hello, world"
+
+# @http.route('/extend_partners/extend_partners/objects/', auth='public')
+# def list(self, **kw):
+# return http.request.render('extend_partners.listing', {
+# 'root': '/extend_partners/extend_partners',
+# 'objects': http.request.env['extend_partners.extend_partners'].search([]),
+# })
+
+# @http.route('/extend_partners/extend_partners/objects/<model("extend_partners.extend_partners"):obj>/', auth='public')
+# def object(self, obj, **kw):
+# return http.request.render('extend_partners.object', {
+# 'object': obj
+# })
diff --git a/extend_partners/demo/demo.xml b/extend_partners/demo/demo.xml
new file mode 100644
index 0000000..5ac0076
--- /dev/null
+++ b/extend_partners/demo/demo.xml
@@ -0,0 +1,30 @@
+<odoo>
+ <data>
+<!--
+ <record id="object0" model="extend_partners.extend_partners">
+ <field name="name">Object 0</field>
+ <field name="value">0</field>
+ </record>
+
+ <record id="object1" model="extend_partners.extend_partners">
+ <field name="name">Object 1</field>
+ <field name="value">10</field>
+ </record>
+
+ <record id="object2" model="extend_partners.extend_partners">
+ <field name="name">Object 2</field>
+ <field name="value">20</field>
+ </record>
+
+ <record id="object3" model="extend_partners.extend_partners">
+ <field name="name">Object 3</field>
+ <field name="value">30</field>
+ </record>
+
+ <record id="object4" model="extend_partners.extend_partners">
+ <field name="name">Object 4</field>
+ <field name="value">40</field>
+ </record>
+-->
+ </data>
+</odoo> \ No newline at end of file
diff --git a/extend_partners/models/__init__.py b/extend_partners/models/__init__.py
new file mode 100644
index 0000000..f261da7
--- /dev/null
+++ b/extend_partners/models/__init__.py
@@ -0,0 +1,3 @@
+# -*- coding: utf-8 -*-
+
+from . import res_partner
diff --git a/extend_partners/models/__pycache__/__init__.cpython-36.pyc b/extend_partners/models/__pycache__/__init__.cpython-36.pyc
new file mode 100644
index 0000000..0700b49
--- /dev/null
+++ b/extend_partners/models/__pycache__/__init__.cpython-36.pyc
Binary files differ
diff --git a/extend_partners/models/__pycache__/__init__.cpython-38.pyc b/extend_partners/models/__pycache__/__init__.cpython-38.pyc
new file mode 100644
index 0000000..608e5fa
--- /dev/null
+++ b/extend_partners/models/__pycache__/__init__.cpython-38.pyc
Binary files differ
diff --git a/extend_partners/models/__pycache__/res_partner.cpython-36.pyc b/extend_partners/models/__pycache__/res_partner.cpython-36.pyc
new file mode 100644
index 0000000..66e5bcd
--- /dev/null
+++ b/extend_partners/models/__pycache__/res_partner.cpython-36.pyc
Binary files differ
diff --git a/extend_partners/models/__pycache__/res_partner.cpython-38.pyc b/extend_partners/models/__pycache__/res_partner.cpython-38.pyc
new file mode 100644
index 0000000..38a514e
--- /dev/null
+++ b/extend_partners/models/__pycache__/res_partner.cpython-38.pyc
Binary files differ
diff --git a/extend_partners/models/res_partner.py b/extend_partners/models/res_partner.py
new file mode 100644
index 0000000..8fc5232
--- /dev/null
+++ b/extend_partners/models/res_partner.py
@@ -0,0 +1,16 @@
+# -*- coding: utf-8 -*-
+
+from odoo import models, fields, api
+
+class Client(models.Model):
+ _name = 'res.partner'
+ _inherit = 'res.partner'
+
+ username = fields.Char('Username')
+ is_wifast_customer = fields.Boolean("Wifast Customer", default=True)
+ account_expiry_date = fields.Datetime('Account Expiry Date')
+ account_expiry_date_override = fields.Datetime('Account Expiry Date Override')
+ connection_type = fields.Selection([('wireless_dsl', 'WI-DSL'),
+ ('dsl', 'DSL'), ('fiber', 'Fiber'), ('hotspot', 'Hotspot')],
+ 'Connection Type')
+ account_type = fields.Char('Account Type') # Should be a selection field
diff --git a/extend_partners/security/ir.model.access.csv b/extend_partners/security/ir.model.access.csv
new file mode 100644
index 0000000..35a6a8d
--- /dev/null
+++ b/extend_partners/security/ir.model.access.csv
@@ -0,0 +1,2 @@
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_extend_partners_extend_partners,extend_partners.extend_partners,model_extend_partners_extend_partners,base.group_user,1,1,1,1 \ No newline at end of file
diff --git a/extend_partners/views/res_partner_views.xml b/extend_partners/views/res_partner_views.xml
new file mode 100644
index 0000000..4ac3746
--- /dev/null
+++ b/extend_partners/views/res_partner_views.xml
@@ -0,0 +1,60 @@
+<odoo>
+ <!-- Form View -->
+ <record id="res_partner_view_form" model="ir.ui.view">
+ <field name="name">res.partner.view.form.inherit</field>
+ <field name="model">res.partner</field>
+ <field name="inherit_id" ref="base.view_partner_form"/>
+ <field name="arch" type="xml">
+ <xpath expr="//div[@class='oe_title']/div[@class='o_row']" position="after">
+ <group>
+ <group>
+ <field name='username' label='Username' attrs="{'required': [('is_wifast_customer', '=', True)], 'invisible': [('is_wifast_customer', '=', False)]}"/>
+ <field name='account_expiry_date' attrs="{'invisible': [('is_wifast_customer', '=', False)]}"/>
+ <field name='account_expiry_date_override' attrs="{'invisible': [('is_wifast_customer', '=', False)]}"/>
+ </group>
+ <group>
+ <field name='is_wifast_customer'/>
+ <field name='account_type' attrs="{'invisible': [('is_wifast_customer', '=', False)]}"/>
+ <field name='connection_type' attrs="{'invisible': [('is_wifast_customer', '=', False)]}"/>
+ </group>
+ </group>
+ </xpath>
+ </field>
+ </record>
+ <!-- Tree View -->
+ <record id="res_partner_view_tree" model="ir.ui.view">
+ <field name="name">res.partner.view.tree.inherit</field>
+ <field name="model">res.partner</field>
+ <field name="inherit_id" ref="base.view_partner_tree"/>
+ <field name="arch" type="xml">
+ <xpath expr="//tree//field[@name='display_name']" position="after">
+ <field name="username"/>
+ </xpath>
+ </field>
+ </record>
+ <!-- Kan Ban View -->
+ <record id="res_partner_view_kanban" model="ir.ui.view">
+ <field name="name">res.partner.view.kanban.inherit</field>
+ <field name="model">res.partner</field>
+ <field name="inherit_id" ref="base.res_partner_kanban_view"/>
+ <field name="arch" type="xml">
+ <xpath expr="//span[@class='oe_kanban_partner_links']" position="inside">
+ <strong>
+ <field name="username"/>
+ </strong>
+ </xpath>
+ </field>
+ </record>
+
+ <!-- Add a search term -->
+ <record id="res_partner_view_search" model="ir.ui.view">
+ <field name="name">res.partner.view.search.inherit</field>
+ <field name="model">res.partner</field>
+ <field name="inherit_id" ref="base.view_res_partner_filter"/>
+ <field name="arch" type="xml">
+ <field name="name" position="before">
+ <field name="username" string="Username" filter_domain="[('username','ilike', self)]"/>
+ </field>
+ </field>
+ </record>
+</odoo>