Details
-
Type: Improvement
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: 5.5.0-b1
-
Component/s: None
-
Labels:None
-
Epic Link:
Description
The Domain Manager package import at Packages > Domain Options > Configuration > Import Packages can take a long time based on how many packages are being imported.
In some cases this proccess is long enough to cause timeouts.
In order to make the import more usable in these stituations, let's convert this into an ajax process that operates as follows:
- After hitting "Import Packages", disable the form and remove the button.
- After hitting "Import Packages", show a section below the form with the header "Imported TLDs".
- Under the "Imported TLDs" section show the text "Collecting a list of TLDs to import..." with a spinner icon.
- Hitting "Import Packages" should trigger a few ajax calls
- An ajax call to fetch a list of TLDs to be imported
- An ajax call to start the import
- An ajax call that occurs every 5 seconds after the first one returns the TLD list, to check which TLDs have already been imported
- The first ajax call should be used to generate a list of TLD badges with loading icons
- The second ajax call should update a company setting "domains_imported_tlds" each time a package is imported or fails to be imported ['error' => [], 'package_created' => [], 'tld_created']
- The third ajax call should reference "domains_imported_tlds" and should be used to update the TLD background color and badge icon
- error bg-danger <i class="fa-solid fa-circle-xmark"></i>
- package_created bg-info <i class="fa-solid fa-circle-half-stroke"></i>
- tld_created bg-success <i class="fa-solid fa-circle-check"></i>
- The package import ajax call should use set_time_limit(0) to prevent timeout