Browse Source

traductions, divers

master
root 3 years ago
parent
commit
b623eb1bec
7 changed files with 570 additions and 151 deletions
  1. +500
    -131
      i18n/fr.po
  2. +28
    -0
      models/donation.py
  3. +1
    -1
      models/operation.py
  4. +15
    -10
      models/partner.py
  5. +4
    -0
      views/donation.xml
  6. +1
    -1
      views/operation.xml
  7. +21
    -8
      views/partner.xml

+ 500
- 131
i18n/fr.po
File diff suppressed because it is too large
View File


+ 28
- 0
models/donation.py View File

@ -15,6 +15,7 @@ class DonationDonation(models.Model):
string='Operation', string='Operation',
track_visibility='onchange', track_visibility='onchange',
ondelete='restrict', ondelete='restrict',
required=True,
domain=[('state', '=', 'exported')] domain=[('state', '=', 'exported')]
) )
@ -24,6 +25,7 @@ class DonationDonation(models.Model):
'opendons.segment', 'opendons.segment',
string='Segment', string='Segment',
track_visibility='onchange', track_visibility='onchange',
required=True,
ondelete='restrict' ondelete='restrict'
) )
@ -57,6 +59,32 @@ class DonationDonation(models.Model):
ondelete='set null' ondelete='set null'
) )
def _default_payment_mode_id(self):
#if self.recurring_template=='active':
sepa_payment_method=self.env['account.payment.method'].search([('code','=','sepa_direct_debit')])
if sepa_payment_method:
id=int(sepa_payment_method.id)
return 4
else:
raise Warning('veuillez configurer la méthode de paiment SEPA')
payment_mode_id = fields.Many2one(
"account.payment.mode",
string="Payment Mode",
domain="[('company_id', '=', company_id), ('donation', '=', True)]",
copy=False,
tracking=True,
check_company=True,
states={"done": [("readonly", True)]}
)
@api.onchange('operation_id') @api.onchange('operation_id')
def _onchange_operation_id(self): def _onchange_operation_id(self):
res = {} res = {}


+ 1
- 1
models/operation.py View File

@ -268,7 +268,7 @@ class opendons_operation(models.Model):
if op : raise Warning('name already exist') if op : raise Warning('name already exist')
res=super(opendons_operation, self).create(vals) res=super(opendons_operation, self).create(vals)
raise Warning(res.company_id)
#création du segment d'exclusion #création du segment d'exclusion
vals2={} vals2={}
vals2['operation_id']=res.id vals2['operation_id']=res.id


+ 15
- 10
models/partner.py View File

@ -144,12 +144,14 @@ class partner(models.Model):
npai_count=fields.Integer(String="NPAI count", readonly=True) npai_count=fields.Integer(String="NPAI count", readonly=True)
source=fields.Char(String="source") source=fields.Char(String="source")
donor_id=fields.Char('Donor id',compute="_compute_donor_id")
donor_id=fields.Char('Donor id',compute="_compute_donor_id",store=True)
def _compute_donor_id(self): def _compute_donor_id(self):
for rec in self: for rec in self:
rec.donor_id=str(rec.id)+rec.key
if rec.key:
rec.donor_id=str(rec.id)+rec.key
else :
rec.donor_id=""
@ -204,7 +206,11 @@ class partner(models.Model):
for rec in self.env['res.partner'].search([]): for rec in self.env['res.partner'].search([]):
rec.key=self._alpha(int(rec.id)) rec.key=self._alpha(int(rec.id))
def _compute_all_donor_id(self):
for rec in self.env['res.partner'].search([]):
rec.donor_id=str(rec.id)+rec.key
def _update_source(self): def _update_source(self):
@ -290,9 +296,8 @@ class partner(models.Model):
regex = re.compile(r'(^(?:(?:IT|SM)\d{2}[A-Z]\d{22}|CY\d{2}[A-Z]\d{23}|NL\d{2}[A-Z]{4}\d{10}|LV\d{2}[A-Z]{4}\d{13}|(?:BG|BH|GB|IE)\d{2}[A-Z]{4}\d{14}|GI\d{2}[A-Z]{4}\d{15}|RO\d{2}[A-Z]{4}\d{16}|KW\d{2}[A-Z]{4}\d{22}|MT\d{2}[A-Z]{4}\d{23}|NO\d{13}|(?:DK|FI|GL|FO)\d{16}|MK\d{17}|(?:AT|EE|KZ|LU|XK)\d{18}|(?:BA|HR|LI|CH|CR)\d{19}|(?:GE|DE|LT|ME|RS)\d{20}|IL\d{21}|(?:AD|CZ|ES|MD|SA)\d{22}|PT\d{23}|(?:BE|IS)\d{24}|(?:FR|MR|MC)\d{25}|(?:AL|DO|LB|PL)\d{26}|(?:AZ|HU)\d{27}|(?:GR|MU)\d{28})$)+') regex = re.compile(r'(^(?:(?:IT|SM)\d{2}[A-Z]\d{22}|CY\d{2}[A-Z]\d{23}|NL\d{2}[A-Z]{4}\d{10}|LV\d{2}[A-Z]{4}\d{13}|(?:BG|BH|GB|IE)\d{2}[A-Z]{4}\d{14}|GI\d{2}[A-Z]{4}\d{15}|RO\d{2}[A-Z]{4}\d{16}|KW\d{2}[A-Z]{4}\d{22}|MT\d{2}[A-Z]{4}\d{23}|NO\d{13}|(?:DK|FI|GL|FO)\d{16}|MK\d{17}|(?:AT|EE|KZ|LU|XK)\d{18}|(?:BA|HR|LI|CH|CR)\d{19}|(?:GE|DE|LT|ME|RS)\d{20}|IL\d{21}|(?:AD|CZ|ES|MD|SA)\d{22}|PT\d{23}|(?:BE|IS)\d{24}|(?:FR|MR|MC)\d{25}|(?:AL|DO|LB|PL)\d{26}|(?:AZ|HU)\d{27}|(?:GR|MU)\d{28})$)+')
#if not re.fullmatch(regex, self.acc_number):
# raise Warning('Invalid IBAN')
if not re.fullmatch(regex, self.acc_number):
raise Warning('Invalid IBAN')
@api.constrains('acc_number') @api.constrains('acc_number')
def _onchange_acc_number(self): def _onchange_acc_number(self):
@ -300,8 +305,8 @@ class partner(models.Model):
#https://www.regextester.com/115565 #https://www.regextester.com/115565
if self.acc_number: if self.acc_number:
regex = re.compile(r'(/^(?:(?:IT|SM)\d{2}[A-Z]\d{22}|CY\d{2}[A-Z]\d{23}|NL\d{2}[A-Z]{4}\d{10}|LV\d{2}[A-Z]{4}\d{13}|(?:BG|BH|GB|IE)\d{2}[A-Z]{4}\d{14}|GI\d{2}[A-Z]{4}\d{15}|RO\d{2}[A-Z]{4}\d{16}|KW\d{2}[A-Z]{4}\d{22}|MT\d{2}[A-Z]{4}\d{23}|NO\d{13}|(?:DK|FI|GL|FO)\d{16}|MK\d{17}|(?:AT|EE|KZ|LU|XK)\d{18}|(?:BA|HR|LI|CH|CR)\d{19}|(?:GE|DE|LT|ME|RS)\d{20}|IL\d{21}|(?:AD|CZ|ES|MD|SA)\d{22}|PT\d{23}|(?:BE|IS)\d{24}|(?:FR|MR|MC)\d{25}|(?:AL|DO|LB|PL)\d{26}|(?:AZ|HU)\d{27}|(?:GR|MU)\d{28})$)+')
regex = re.compile(r'(^(?:(?:IT|SM)\d{2}[A-Z]\d{22}|CY\d{2}[A-Z]\d{23}|NL\d{2}[A-Z]{4}\d{10}|LV\d{2}[A-Z]{4}\d{13}|(?:BG|BH|GB|IE)\d{2}[A-Z]{4}\d{14}|GI\d{2}[A-Z]{4}\d{15}|RO\d{2}[A-Z]{4}\d{16}|KW\d{2}[A-Z]{4}\d{22}|MT\d{2}[A-Z]{4}\d{23}|NO\d{13}|(?:DK|FI|GL|FO)\d{16}|MK\d{17}|(?:AT|EE|KZ|LU|XK)\d{18}|(?:BA|HR|LI|CH|CR)\d{19}|(?:GE|DE|LT|ME|RS)\d{20}|IL\d{21}|(?:AD|CZ|ES|MD|SA)\d{22}|PT\d{23}|(?:BE|IS)\d{24}|(?:FR|MR|MC)\d{25}|(?:AL|DO|LB|PL)\d{26}|(?:AZ|HU)\d{27}|(?:GR|MU)\d{28})$)+')
#if not re.fullmatch(regex, self.acc_number):
if not re.fullmatch(regex, self.acc_number):
# raise Warning('Invalid IBAN')
raise Warning('Invalid IBAN')

+ 4
- 0
views/donation.xml View File

@ -35,8 +35,12 @@
</xpath> </xpath>
</field> </field>
</record> </record>
<!-- <record id="view_opendons_donation_recurring_form" model="ir.ui.view"> <!-- <record id="view_opendons_donation_recurring_form" model="ir.ui.view">
<field name="name">opendons.donation.recurring.form</field> <field name="name">opendons.donation.recurring.form</field>
<field name="model">donation.donation</field> <field name="model">donation.donation</field>


+ 1
- 1
views/operation.xml View File

@ -153,7 +153,7 @@
<field name="csv_export" filename="document_fname" widget="binary"/> <field name="csv_export" filename="document_fname" widget="binary"/>
<field name="document_fname" invisible="1"/> <field name="document_fname" invisible="1"/>
<field name="exported_date">%b-%d-%Y</field> <field name="exported_date">%b-%d-%Y</field>
<field name="cost"/>
</group> </group>
<group name="segment"> <group name="segment">


+ 21
- 8
views/partner.xml View File

@ -75,7 +75,7 @@
<field name="name">Recurring_donation</field> <field name="name">Recurring_donation</field>
<field name="res_model">donation.donation</field> <field name="res_model">donation.donation</field>
<field name="view_mode">tree,form,graph</field> <field name="view_mode">tree,form,graph</field>
<field name="context">{'default_recurring_template': 'active', 'recurring_view': True,'partner_id': active_id}</field>
<field name="context">{'default_recurring_template': 'active', 'recurring_view': True,'search_default_partner_id': active_id}</field>
<field name="domain">[('recurring_template', '!=', False)]</field> <field name="domain">[('recurring_template', '!=', False)]</field>
</record> </record>
@ -112,6 +112,19 @@
</record> </record>
<record id="view_res_partner_filter" model="ir.ui.view">
<field name="name">opendons.res.partner.filter</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_res_partner_filter" />
<field name="arch" type="xml">
<xpath expr="//field[@name='name']" position="before">
<field name="donor_id" filter_domain="[('donor_id', 'ilike', self)]"/>
</xpath>
</field>
</record>
<record id="view_partner_form" model="ir.ui.view"> <record id="view_partner_form" model="ir.ui.view">
<field name="name">opendons.res.partner.form</field> <field name="name">opendons.res.partner.form</field>
<field name="model">res.partner</field> <field name="model">res.partner</field>
@ -144,8 +157,8 @@
<field name="tax_street" placeholder="Street..." class="o_address_street" /> <field name="tax_street" placeholder="Street..." class="o_address_street" />
<field name="tax_street2" placeholder="Street 2..." class="o_address_street"/> <field name="tax_street2" placeholder="Street 2..." class="o_address_street"/>
<field name="tax_locality" placeholder="Locality" class="o_address_street"/> <field name="tax_locality" placeholder="Locality" class="o_address_street"/>
<field name="tax_city" placeholder="City" class="o_address_city" />
<field name="tax_zip" placeholder="ZIP" class="o_address_zip"/> <field name="tax_zip" placeholder="ZIP" class="o_address_zip"/>
<field name="tax_city" placeholder="City" class="o_address_city" />
<field name="tax_country_id" placeholder="Country" class="o_address_country" options="{&quot;no_open&quot;: True, &quot;no_create&quot;: True}"/> <field name="tax_country_id" placeholder="Country" class="o_address_country" options="{&quot;no_open&quot;: True, &quot;no_create&quot;: True}"/>
</div> </div>
</group> </group>
@ -158,10 +171,10 @@
<group> <group>
<field name="donor_id"/> <field name="donor_id"/>
<field name="title" options="{&quot;no_open&quot;: True}" placeholder="e.g. Mister" attrs="{'invisible': [('is_company', '=', True)]}"/>
<field id="individual" class="o_text_overflow" name="name" default_focus="1" placeholder="e.g. Brandom Freeman" attrs="{'required' : [('type', '=', 'contact'), ('is_company', '=', False)], 'invisible': [('is_company','=', True)]}"/>
<field name="firstname" attrs="{'invisible':[('is_company','=',True)]}"/>
<field id="company" class="o_text_overflow" name="name" default_focus="1" placeholder="e.g. Lumber Inc" attrs="{'required' : [('type', '=', 'contact'),('is_company', '=', True)], 'invisible': [('is_company','=', False)]}"/>
<field name="title" options="{&quot;no_open&quot;: True}" placeholder="" attrs="{'invisible': [('is_company', '=', True)],'required' : [('is_company', '=', False)]}"/>
<field id="individual" class="o_text_overflow" name="name" default_focus="1" placeholder="" attrs="{'required' : [('is_company', '=', False)], 'invisible': [('is_company','=', True)]}"/>
<field name="firstname" attrs="{'invisible':[('is_company','=',True)],'required' : [('is_company', '=', False)]}"/>
<field id="company" class="o_text_overflow" name="name" string="Raison sociale" default_focus="1" placeholder="" attrs="{'required' : [('is_company', '=', True)], 'invisible': [('is_company','=', False)]}"/>
<!-- <field name="source"/> --> <!-- <field name="source"/> -->
@ -209,7 +222,7 @@
<span>Bool Qualifiers</span> <span>Bool Qualifiers</span>
</button> </button>
<button class="oe_stat_button" type="action"
<!-- <button class="oe_stat_button" type="action"
name="%(act_partner_email)d" name="%(act_partner_email)d"
icon="fa-envelope"> icon="fa-envelope">
@ -220,7 +233,7 @@
icon="fa-phone"> icon="fa-phone">
<field string="Phone" name="phone_count" widget="statinfo"/> <field string="Phone" name="phone_count" widget="statinfo"/>
</button>
</button> -->
<button class="oe_stat_button" type="action" <button class="oe_stat_button" type="action"
name="%(act_partner_relationship)d" name="%(act_partner_relationship)d"


Loading…
Cancel
Save