diff --git a/odex25_benefit/odex_benefit/models/benefit.py b/odex25_benefit/odex_benefit/models/benefit.py
index a9f881e52..3c027e81d 100644
--- a/odex25_benefit/odex_benefit/models/benefit.py
+++ b/odex25_benefit/odex_benefit/models/benefit.py
@@ -2349,7 +2349,7 @@ class GrantBenefitProfile(models.Model):
@api.constrains('phone', 'phone2','sms_phone')
def _onchange_phone_numbers(self):
phone_numbers = {
- 'الهاتف': self.phone,
+ #'الهاتف': self.phone,
'رقم الجوال الثاني': self.phone2,
'رقم الجوال للتواصل': self.sms_phone,
}
@@ -2373,7 +2373,7 @@ class GrantBenefitProfile(models.Model):
# Check for duplicate IDs across records in the database
for phone_number in unique_ids:
duplicate_record_family = self.env['grant.benefit'].search([
- '|', '|', ('phone', '=', phone_number), ('phone2', '=', phone_number),
+ '|', ('phone2', '=', phone_number),
('sms_phone', '=', phone_number), ('id', '!=', self._origin.id)
], limit=1)
duplicate_record_member = self.env['family.member'].search([('member_phone', '=', phone_number)], limit=1)
diff --git a/odex25_benefit/odex_benefit/models/benefit_config.py b/odex25_benefit/odex_benefit/models/benefit_config.py
index 91b03ece2..091946b64 100644
--- a/odex25_benefit/odex_benefit/models/benefit_config.py
+++ b/odex25_benefit/odex_benefit/models/benefit_config.py
@@ -6,7 +6,8 @@ from random import randint
from datetime import date
import logging
import os
-
+import re
+SAUDI_MOBILE_PATTERN = "(^(05|5)(5|0|3|6|4|9|1|8|7)([0-9]{7})$)"
_logger = logging.getLogger(__name__)
@@ -633,6 +634,15 @@ class Committees(models.Model):
branch_custom_id = fields.Many2one("branch.settings", string="Branch")
active = fields.Boolean('Active', default=True)
benefit_count = fields.Integer(compute="get_benefit_count")
+ mobile = fields.Char(string="Mobile Number")
+
+ @api.constrains('mobile')
+ def _check_mobile(self):
+ for rec in self:
+ if rec.mobile and not re.match(SAUDI_MOBILE_PATTERN, rec.mobile):
+ raise ValidationError(
+ _("Please enter a valid Saudi mobile number (example: 05XXXXXXXX).")
+ )
def get_benefit_count(self):
for record in self:
diff --git a/odex25_benefit/odex_benefit/views/benefit_view.xml b/odex25_benefit/odex_benefit/views/benefit_view.xml
index 8ad2294ff..932530f08 100644
--- a/odex25_benefit/odex_benefit/views/benefit_view.xml
+++ b/odex25_benefit/odex_benefit/views/benefit_view.xml
@@ -1646,7 +1646,6 @@