Commit graph

645 commits

Author SHA1 Message Date
oleghasjanov
bfecc3c40e refactor: improve force delete domain status tracking
- Add force_delete_domain_statuses_history_data to store force delete metadata
- Update force delete queries to use new JSON status history
- Refactor force delete tests to use travel_to helper
- Remove direct force_delete_start field usage
- Update status notes to include company identification number
2025-04-01 13:52:43 +03:00
oleghasjanov
917e426d91 feat: Add lifted force delete domains to daily admin notification
- Add tracking of lifted force delete domains with reason and date in json_statuses_history
- Modify ForceDeleteDailyAdminNotifierJob to include both force deleted and lifted domains
- Update admin mailer template to show separate tables for force deleted and lifted domains
- Update tests to reflect new functionality and fix timing issues with yesterday's data

Key changes:
- Store lift reason and date when canceling force delete
- Add new query method for finding lifted force delete domains
- Split email template into two sections
- Fix tests to properly handle the yesterday time window
2025-03-31 16:07:04 +03:00
oleghasjanov
7799727867 feat: add age validation for admin contacts
- Add AgeValidation module for consistent age checks
- Validate admin contacts must be at least 18 years old
- Move age validation logic from Domain to shared module
- Add tests for admin contact age validation
- Fix JSON format for admin_contacts_allowed_ident_type setting

This change ensures that administrative contacts must be adults (18+),
using the same age validation logic as for registrants. The validation
works with both birthday and Estonian ID formats. Settings are now
properly stored as JSON strings for consistent parsing.
2025-03-20 16:37:38 +02:00
Timo Võhmar
38dc5466e9
Merge pull request #2723 from internetee/company-validator-during-creation
feat: restore company validation for Estonian organizations
2025-02-12 10:33:28 +02:00
oleghasjanov
9d036f9af3 added virtual attribute for skip whois update 2025-02-03 14:08:50 +02:00
oleghasjanov
f2978599b4 feat: add admin contact ident type validation
- Add new setting for allowed admin contact ident types
- Add validation for admin contact ident types on domain create/update
- Add UI controls for managing allowed ident types
- Add tests for new validation rules
- Update domain model to respect new settings

The changes allow configuring which identification types (private person,
organization, birthday) are allowed for administrative contacts. This is
enforced when creating new domains or adding new admin contacts.
2025-02-03 13:59:03 +02:00
oleghasjanov
cd5de3bd14 commit
feat: make technical contacts optional for all domains

- Remove automatic tech contact assignment from admin contacts
- Set minimum tech contacts to 0 for all registrant types
- Update tests to reflect optional tech contacts
- Keep max tech contacts limit from settings

This change implements the requirement to make technical contacts optional
for all domain types while maintaining the maximum limit from settings.
Previously tech contacts were required for organizations and automatically
copied from admin contacts.
2025-01-31 15:49:35 +02:00
oleghasjanov
c2affb393f Refactor domain admin contact validation logic
- Remove validate_admin_contact_type validation
- Extract age calculation logic into separate methods
- Add helper methods for Estonian ID and birthday age checks
- Improve code organization and readability
- Split complex require_admin_contacts? method into smaller methods
2025-01-31 13:01:00 +02:00
oleghasjanov
863dcce647 Add admin contact validation rules based on registrant type and age
- Add validation requiring admin contacts for legal entity registrants
- Add validation requiring admin contacts for underage private registrants:
  - Under 18 years old for birthday-based identification
  - Under 18 years old for Estonian ID numbers
- Make admin contacts optional for:
  - Adult private registrants (18+ years)
  - Adult Estonian ID holders
  - Non-Estonian private registrants
- Add tests covering all new validation scenarios
- Add helper methods to calculate age and parse Estonian ID birth dates
2025-01-31 12:49:14 +02:00
oleghasjanov
3c169bb00b Make admin contacts optional for private registrants
This change makes admin contacts optional for private registrants while keeping them mandatory for organizations. The changes include:

- Updated Domain model validations to make admin and tech contacts optional (min=0) for private registrants
- Added validation rules methods to handle different requirements based on registrant type
- Modified EPP domain creation to support domains without admin contacts for private registrants
- Updated attach_default_contacts to skip adding contacts for private registrants
- Added comprehensive test coverage for:
  - Domain model validations with private/org registrants
  - EPP domain creation without admin contacts for private registrants
  - REPP API contact management for private registrants

This implements the requirement to make admin contacts optional for private registrations of .ee domains while maintaining the existing validation rules for organizations.
2025-01-07 12:24:57 +02:00
Timo Võhmar
1a063fb1ae
Merge pull request #2666 from internetee/2665-fix-expired-status
Manage domain auto expiry status
2024-12-31 10:52:11 +02:00
oleghasjanov
ba9aeb437d remove logs, fixed company register status job 2024-11-08 12:46:17 +02:00
tsoganov
8f878c3573 Manage domain auto expiry status 2024-06-11 14:01:02 +03:00
Sergei Tsoganov
b71a8ccf9f Modified csv export file for admin domains 2023-04-14 10:56:12 +03:00
Sergei Tsoganov
7f0787b27f Fixed codeclimate issues 2023-04-06 21:53:25 +03:00
Sergei Tsoganov
cc4d4d0e1f Corrected tests 2023-04-06 21:24:55 +03:00
Sergei Tsoganov
33175eea88 Fixed ransack attributes 2023-04-06 14:15:05 +03:00
Sergei Tsoganov
aa8d8c35e8 Fixed ransack admin search 2023-04-06 13:54:03 +03:00
Sergei Tsoganov
95281b7007 Updated pdf generator for domain 2023-03-16 14:02:27 +02:00
Sergei Tsoganov
37c16a067d Updated dependency ransack to v4 2023-03-16 11:28:25 +02:00
Sergei Tsoganov
aaa0e89cfe Added xml epp console required endpoints and sample xml files 2022-11-23 12:41:00 +02:00
Sergei Tsõganov
04b55068df Removed and updated additional files 2022-10-13 14:06:33 +03:00
Timo Võhmar
c488085cb3
Merge pull request #2396 from internetee/2391-domain-pdf
Admin: download pdf with domain data on show
2022-09-29 15:32:30 +03:00
olegphenomenon
6c66ba7383 returned back missing peace of code from #2349 branch 2022-09-02 12:39:00 +03:00
Thiago Youssef
318dec4f52 Download pdf with domain data 2022-06-28 10:24:35 -03:00
Thiago Youssef
943dedd194 Remove deprecated statuses_before_force_delete field 2022-05-24 16:36:21 +03:00
Thiago Youssef
750bf0821c Remove contact code cache from domain contacts table 2022-05-04 14:38:14 +03:00
Thiago Youssef
f8612d687f Remove email verification legacy code 2022-04-13 11:51:08 +03:00
Thiago Youssef
b6a5bc73ca Code climate refactor 2022-04-01 13:20:13 +03:00
Thiago Youssef
aef30eeb4d Improve default csv generation 2022-04-01 11:50:35 +03:00
Thiago Youssef
e50501f13f Migrate ToCsv module to CsvGenerator service 2022-04-01 10:59:04 +03:00
Thiago Youssef
dd513b6313 Remove freeze method call at csv_header 2022-03-14 12:43:53 +02:00
Thiago Youssef
6263ded68f Fix admin domains CSV output 2022-03-11 14:37:46 +02:00
Sergei Tsõganov
c83b99b6de Did small refactoring 2022-01-12 10:41:56 +02:00
Sergei Tsõganov
1f4733bdde Disabled PaperTrail request for admin_store_statuses_history 2022-01-11 20:15:00 +02:00
dinsmol
fa5203d0a1 Fix domain statuses logic 2021-12-15 17:31:53 +03:00
dinsmol
77b9d02b5d Add tests 2021-12-08 23:03:25 +03:00
olegphenomenon
09eab21d2b added test and saving statuses into histroy field 2021-09-23 11:05:02 +03:00
OlegPhenomenon
4b80ed5699
Merge branch 'master' into 2143-add-an-exception-for-DNSSEC-in-the-registry-lock 2021-09-14 11:49:19 +03:00
dinsmol
788af6cc5f fixed codeclimate errors 2021-09-09 21:34:56 +03:00
dinsmol
e7e3278267 fixed codeclimate errors 2021-09-09 13:06:51 +03:00
dinsmol
f4e0084895 fixed codeclimate errors (partically) 2021-09-09 09:19:09 +03:00
olegphenomenon
49fc79244f updated schemas 2021-09-08 13:52:28 +03:00
Oleg Hasjanov
9bffb09e34 added dnskey update prohibited status 2021-09-07 16:45:16 +03:00
dinsmol
b742bb7576 fixed error 2021-08-18 16:22:52 +03:00
dinsmol
2ffa28692f reordered csv columns 2021-08-16 15:05:13 +03:00
dinsmol
d2d31c049c refactored 2021-08-12 12:02:34 +03:00
dinsmol
7f8eee52f4 added csv download 2021-08-11 22:28:20 +03:00
Oleg Hasjanov
96bc237484 implement mechanism of save statuses for force delete and lock 2021-07-14 12:04:55 +03:00
Oleg Hasjanov
d260eacc1a added tasks for migrate data and tests 2021-07-09 12:19:49 +03:00