Uploaded image for project: 'Blesta Core'
  1. Blesta Core
  2. CORE-4628

Domain Manager: Asynchronous TLD Import

    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

      Description

      The Domain Manager registrar TLD import at Packages > Domain Options > Import TLDs can take a long time based on how many TLD are being imported.

      Lets update this to operate via AJAX.

        Activity

        jonathan Jonathan Reissmueller created issue -
        jonathan Jonathan Reissmueller made changes -
        Field Original Value New Value
        Rank Ranked higher
        jonathan Jonathan Reissmueller made changes -
        Fix Version/s 5.6.0-b1 [ 11730 ]
        Fix Version/s Short Term [ 10800 ]
        jonathan Jonathan Reissmueller made changes -
        Rank Ranked higher
        jonathan Jonathan Reissmueller made changes -
        Rank Ranked higher
        jonathan Jonathan Reissmueller made changes -
        Description The import takes a long time for systems with a large amount of tld packages.

        This could cause timeouts. So lets find a way to do this either by an ajax call or cron job or some other asynchronous method
        The import takes a long time for systems with a large amount of tld packages.

        This could cause timeouts.

        Lets find a way to do with an ajax call.
        jonathan Jonathan Reissmueller made changes -
        Description The import takes a long time for systems with a large amount of tld packages.

        This could cause timeouts.

        Lets find a way to do with an ajax call.
        The import takes a long time for systems with a large amount of TLD packages.

        This could cause timeouts.

        Lets find a way to do with an ajax call.
        jonathan Jonathan Reissmueller made changes -
        Story Points 8
        jonathan Jonathan Reissmueller made changes -
        Fix Version/s 5.5.0-b1 [ 11726 ]
        Fix Version/s 5.6.0-b1 [ 11730 ]
        jonathan Jonathan Reissmueller made changes -
        Rank Ranked higher
        jonathan Jonathan Reissmueller made changes -
        Sprint 5.5.0 Sprint 4 [ 157 ]
        jonathan Jonathan Reissmueller made changes -
        Rank Ranked higher
        abdy Abdy Franco made changes -
        Assignee Abdy Franco [ abdy ]
        abdy Abdy Franco made changes -
        Status Open [ 1 ] In Progress [ 3 ]
        abdy Abdy Franco made changes -
        Remaining Estimate 0 minutes [ 0 ]
        Time Spent 34 minutes [ 2040 ]
        Worklog Id 15709 [ 15709 ]
        abdy Abdy Franco made changes -
        Time Spent 34 minutes [ 2040 ] 1 day, 16 minutes [ 29760 ]
        Worklog Id 15711 [ 15711 ]
        abdy Abdy Franco made changes -
        Time Spent 1 day, 16 minutes [ 29760 ] 1 day, 6 hours, 15 minutes [ 51300 ]
        Worklog Id 15712 [ 15712 ]
        abdy Abdy Franco made changes -
        Status In Progress [ 3 ] In Review [ 5 ]
        Resolution Fixed [ 1 ]
        jonathan Jonathan Reissmueller made changes -
        Description The import takes a long time for systems with a large amount of TLD packages.

        This could cause timeouts.

        Lets find a way to do with an ajax call.
        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
        jonathan Jonathan Reissmueller made changes -
        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
        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
        jonathan Jonathan Reissmueller made changes -
        Issue Type New Feature [ 2 ] Improvement [ 4 ]
        Original Estimate 0 minutes [ 0 ]
        jonathan Jonathan Reissmueller made changes -
        Summary Domain Manager: Asynchronous package import Domain Manager: Asynchronous TLD Import
        jonathan Jonathan Reissmueller made changes -
        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
        The Domain Manager registrar TLD import at Packages > Domain Options > Import TLDs can take a long time based on how many TLD are being imported.

        Lets update this to operate via AJAX.
        jonathan Jonathan Reissmueller made changes -
        Sprint 5.5.0 Sprint 4 [ 157 ] 5.5.0 Sprint 4, 5.5.0 Sprint 5 [ 157, 159 ]
        jonathan Jonathan Reissmueller made changes -
        Rank Ranked higher
        jonathan Jonathan Reissmueller made changes -
        Time Spent 1 day, 6 hours, 15 minutes [ 51300 ] 1 day, 6 hours, 36 minutes [ 52560 ]
        Worklog Id 15753 [ 15753 ]
        jonathan Jonathan Reissmueller made changes -
        Time Spent 1 day, 6 hours, 36 minutes [ 52560 ] 2 days, 16 minutes [ 58560 ]
        Worklog Id 15760 [ 15760 ]
        jonathan Jonathan Reissmueller made changes -
        Status In Review [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            abdy Abdy Franco
            Reporter:
            jonathan Jonathan Reissmueller
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:
              Fix Release Date:
              29/Jun/22

              Time Tracking

              Estimated:
              Original Estimate - 0 minutes
              0m
              Remaining:
              Remaining Estimate - 0 minutes
              0m
              Logged:
              Time Spent - 2 days, 16 minutes
              2d 16m

                Agile