Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.0.0
    • Fix Version/s: 5.4.0-b1
    • Component/s: Staff Interface
    • Labels:
      None

      Description

      Add support for Javascript Data Feeds. Data feeds allow package pricing, names, descriptions, and possibly other data to be easily embedded in an external website.

      Staff UI

      A feed should be enabled in the settings. Under Settings > Company add a new section called "Data Feeds" using the FontAwesome icon "fas fa-rss fa-fw"

      There should be 1 links under Feeds, "Feed Settings". On this page, we should have a checkbox to enable or disable each feed, and an example of the code required to embed the feed that a user can copy/paste into their website.

      I think we should default to no permissions for the feed, and if a feed is called we would return a message that says "This data feed is disabled, to enable visit Settings > Company > Feeds in the staff area."

      We would actually return this from the URL called though, so that with the embed code it is actually output to the browser:

      document.write('This data feed is disabled, to enable visit Settings > Company > Feeds in the staff area.');

      URLs

      This doesn't matter so much, but it would be ideal if feeds started with /feed/ in the URI, and good if this route can be changed if desired. So a feed URL would look something like

      /feed/feedtype/?parameter1=value&parameter2=value

      Feeds

      • Package Name
      • Package Description
      • Package Pricing
      • Client Count
      • Domain Pricing (HTML table including all configured TLDs and their new, renew, transfer prices)

      Example URLs for each with possible parameters

      Package Name
      Get the name of Package ID 1, in English
      /feed/packages/packageid=1&lang=en_us&get=name

      Package Description
      Get the description of Package ID 1, in English, return HTML version
      /feed/packages/packageid=1&lang=en_us&format=html&get=description

      Package Pricing
      Get the price of Pricing ID 1. Price is the normal price, Renewal Price, Transfer Price, Setup Fee, and Cancellation Fee should also be options, as well as currency, term, and period
      /feed/packages/pricingid=1&get=price

      Client Count
      Return the number of clients of a particular status, default to "Active".

      Domain Pricing
      This one would require a little more work and be output in a table form that could be styled. I don't think we would necessarily have to use the domain manager, but it's possible that the domain manager would need to implement this feed. Requires more details.

      Calling these URLs should return the value inside document.write(); and would be embedded into an HTML page like so:

      <script language="javascript" src="http://account.domain.com/feed/packages/packageid=1&lang=en_us&format=html&get=description"></script>

        Activity

        admin Paul Phillips created issue -
        admin Paul Phillips made changes -
        Field Original Value New Value
        Rank Ranked higher
        admin Paul Phillips made changes -
        Rank Ranked lower
        admin Paul Phillips made changes -
        Description Add support for Javascript Data Feeds. Data feeds allow package pricing, names, descriptions, and possibly other data to be easily embedded in an external website.

        *Staff UI*

        A feed should be enabled in the settings. Under Settings > Company add a new section called "Data Feeds" using the FontAwesome icon "fas fa-rss fa-fw"

        There should be 1 links under Feeds, "Feed Settings". On this page, we should have a checkbox to enable or disable each feed, and an example of the code required to embed the feed that a user can copy/paste into their website.

        I think we should default to no permissions for the feed, and if a feed is called we would return a message that says "This data feed is disabled, to enable visit Settings > Company > Feeds in the staff area."

        We would actually return this from the URL called though, so that with the embed code it is actually output to the browser:

        document.write('This data feed is disabled, to enable visit Settings > Company > Feeds in the staff area.');

        *URLs*

        This doesn't matter so much, but it would be ideal if feeds started with /feed/ in the URI, and good if this route can be changed if desired. So a feed URL would look something like

        /feed/feedtype/?parameter1=value&parameter2=value

        *Feeds*

        * Package Name
        * Package Description
        * Package Pricing

        Example URLs for each with possible parameters

        *Package Name*
        Get the name of Package ID 1, in English
        /feed/packages/packageid=1&lang=en_us&get=name

        *Package Description*
        Get the description of Package ID 1, in English, return HTML version
        /feed/packages/packageid=1&lang=en_us&format=html&get=description

        *Package Pricing*
        Get the price of Pricing ID 1. Price is the normal price, Renewal Price, Transfer Price, Setup Fee, and Cancellation Fee should also be options, as well as currency, term, and period
        /feed/packages/pricingid=1&get=price

        Calling these URLs should return the value inside document.write(); and would be embedded into an HTML page like so:

        <script language="javascript" src="http://account.domain.com/feed/packages/packageid=1&lang=en_us&format=html&get=description"></script>
        Add support for Javascript Data Feeds. Data feeds allow package pricing, names, descriptions, and possibly other data to be easily embedded in an external website.

        *Staff UI*

        A feed should be enabled in the settings. Under Settings > Company add a new section called "Data Feeds" using the FontAwesome icon "fas fa-rss fa-fw"

        There should be 1 links under Feeds, "Feed Settings". On this page, we should have a checkbox to enable or disable each feed, and an example of the code required to embed the feed that a user can copy/paste into their website.

        I think we should default to no permissions for the feed, and if a feed is called we would return a message that says "This data feed is disabled, to enable visit Settings > Company > Feeds in the staff area."

        We would actually return this from the URL called though, so that with the embed code it is actually output to the browser:

        document.write('This data feed is disabled, to enable visit Settings > Company > Feeds in the staff area.');

        *URLs*

        This doesn't matter so much, but it would be ideal if feeds started with /feed/ in the URI, and good if this route can be changed if desired. So a feed URL would look something like

        /feed/feedtype/?parameter1=value&parameter2=value

        *Feeds*

        * Package Name
        * Package Description
        * Package Pricing
        * Domain Pricing (HTML table including all configured TLDs and their new, renew, transfer prices)

        Example URLs for each with possible parameters

        *Package Name*
        Get the name of Package ID 1, in English
        /feed/packages/packageid=1&lang=en_us&get=name

        *Package Description*
        Get the description of Package ID 1, in English, return HTML version
        /feed/packages/packageid=1&lang=en_us&format=html&get=description

        *Package Pricing*
        Get the price of Pricing ID 1. Price is the normal price, Renewal Price, Transfer Price, Setup Fee, and Cancellation Fee should also be options, as well as currency, term, and period
        /feed/packages/pricingid=1&get=price

        *Domain Pricing*
        This one would require a little more work and be output in a table form that could be styled. I don't think we would necessarily have to use the domain manager, but it's possible that the domain manager would need to implement this feed. Requires more details.

        Calling these URLs should return the value inside document.write(); and would be embedded into an HTML page like so:

        <script language="javascript" src="http://account.domain.com/feed/packages/packageid=1&lang=en_us&format=html&get=description"></script>
        Hide
        admin Paul Phillips added a comment -

        We may want to consider some caching mechanism for this, as it could generate a large number of requests to Blesta and overwhelm MySQL.

        Show
        admin Paul Phillips added a comment - We may want to consider some caching mechanism for this, as it could generate a large number of requests to Blesta and overwhelm MySQL.
        admin Paul Phillips made changes -
        Description Add support for Javascript Data Feeds. Data feeds allow package pricing, names, descriptions, and possibly other data to be easily embedded in an external website.

        *Staff UI*

        A feed should be enabled in the settings. Under Settings > Company add a new section called "Data Feeds" using the FontAwesome icon "fas fa-rss fa-fw"

        There should be 1 links under Feeds, "Feed Settings". On this page, we should have a checkbox to enable or disable each feed, and an example of the code required to embed the feed that a user can copy/paste into their website.

        I think we should default to no permissions for the feed, and if a feed is called we would return a message that says "This data feed is disabled, to enable visit Settings > Company > Feeds in the staff area."

        We would actually return this from the URL called though, so that with the embed code it is actually output to the browser:

        document.write('This data feed is disabled, to enable visit Settings > Company > Feeds in the staff area.');

        *URLs*

        This doesn't matter so much, but it would be ideal if feeds started with /feed/ in the URI, and good if this route can be changed if desired. So a feed URL would look something like

        /feed/feedtype/?parameter1=value&parameter2=value

        *Feeds*

        * Package Name
        * Package Description
        * Package Pricing
        * Domain Pricing (HTML table including all configured TLDs and their new, renew, transfer prices)

        Example URLs for each with possible parameters

        *Package Name*
        Get the name of Package ID 1, in English
        /feed/packages/packageid=1&lang=en_us&get=name

        *Package Description*
        Get the description of Package ID 1, in English, return HTML version
        /feed/packages/packageid=1&lang=en_us&format=html&get=description

        *Package Pricing*
        Get the price of Pricing ID 1. Price is the normal price, Renewal Price, Transfer Price, Setup Fee, and Cancellation Fee should also be options, as well as currency, term, and period
        /feed/packages/pricingid=1&get=price

        *Domain Pricing*
        This one would require a little more work and be output in a table form that could be styled. I don't think we would necessarily have to use the domain manager, but it's possible that the domain manager would need to implement this feed. Requires more details.

        Calling these URLs should return the value inside document.write(); and would be embedded into an HTML page like so:

        <script language="javascript" src="http://account.domain.com/feed/packages/packageid=1&lang=en_us&format=html&get=description"></script>
        Add support for Javascript Data Feeds. Data feeds allow package pricing, names, descriptions, and possibly other data to be easily embedded in an external website.

        *Staff UI*

        A feed should be enabled in the settings. Under Settings > Company add a new section called "Data Feeds" using the FontAwesome icon "fas fa-rss fa-fw"

        There should be 1 links under Feeds, "Feed Settings". On this page, we should have a checkbox to enable or disable each feed, and an example of the code required to embed the feed that a user can copy/paste into their website.

        I think we should default to no permissions for the feed, and if a feed is called we would return a message that says "This data feed is disabled, to enable visit Settings > Company > Feeds in the staff area."

        We would actually return this from the URL called though, so that with the embed code it is actually output to the browser:

        document.write('This data feed is disabled, to enable visit Settings > Company > Feeds in the staff area.');

        *URLs*

        This doesn't matter so much, but it would be ideal if feeds started with /feed/ in the URI, and good if this route can be changed if desired. So a feed URL would look something like

        /feed/feedtype/?parameter1=value&parameter2=value

        *Feeds*

        * Package Name
        * Package Description
        * Package Pricing
        * Client Count
        * Domain Pricing (HTML table including all configured TLDs and their new, renew, transfer prices)

        Example URLs for each with possible parameters

        *Package Name*
        Get the name of Package ID 1, in English
        /feed/packages/packageid=1&lang=en_us&get=name

        *Package Description*
        Get the description of Package ID 1, in English, return HTML version
        /feed/packages/packageid=1&lang=en_us&format=html&get=description

        *Package Pricing*
        Get the price of Pricing ID 1. Price is the normal price, Renewal Price, Transfer Price, Setup Fee, and Cancellation Fee should also be options, as well as currency, term, and period
        /feed/packages/pricingid=1&get=price

        *Client Count*
        Return the number of clients of a particular status, default to "Active".

        *Domain Pricing*
        This one would require a little more work and be output in a table form that could be styled. I don't think we would necessarily have to use the domain manager, but it's possible that the domain manager would need to implement this feed. Requires more details.

        Calling these URLs should return the value inside document.write(); and would be embedded into an HTML page like so:

        <script language="javascript" src="http://account.domain.com/feed/packages/packageid=1&lang=en_us&format=html&get=description"></script>
        jonathan Jonathan Reissmueller made changes -
        Rank Ranked higher
        jonathan Jonathan Reissmueller made changes -
        Fix Version/s 5.3.0-b1 [ 11711 ]
        Fix Version/s Short Term [ 10800 ]
        jonathan Jonathan Reissmueller made changes -
        Rank Ranked higher
        admin Paul Phillips made changes -
        Fix Version/s 5.4.0-b1 [ 11719 ]
        Fix Version/s 5.3.0-b1 [ 11711 ]
        jonathan Jonathan Reissmueller made changes -
        Rank Ranked higher
        jonathan Jonathan Reissmueller made changes -
        Story Points 8
        jonathan Jonathan Reissmueller made changes -
        Sprint 5.4.0 Sprint 2 [ 149 ]
        jonathan Jonathan Reissmueller made changes -
        Rank Ranked higher
        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 1 hour, 46 minutes [ 6360 ]
        Worklog Id 15538 [ 15538 ]
        abdy Abdy Franco made changes -
        Time Spent 1 hour, 46 minutes [ 6360 ] 1 day, 1 hour, 42 minutes [ 34920 ]
        Worklog Id 15539 [ 15539 ]
        abdy Abdy Franco made changes -
        Time Spent 1 day, 1 hour, 42 minutes [ 34920 ] 2 days, 1 hour, 41 minutes [ 63660 ]
        Worklog Id 15541 [ 15541 ]
        abdy Abdy Franco made changes -
        Time Spent 2 days, 1 hour, 41 minutes [ 63660 ] 3 days, 1 hour, 33 minutes [ 91980 ]
        Worklog Id 15542 [ 15542 ]
        abdy Abdy Franco made changes -
        Time Spent 3 days, 1 hour, 33 minutes [ 91980 ] 4 days, 1 hour, 29 minutes [ 120540 ]
        Worklog Id 15543 [ 15543 ]
        abdy Abdy Franco made changes -
        Time Spent 4 days, 1 hour, 29 minutes [ 120540 ] 1 week, 1 hour, 21 minutes [ 148860 ]
        Worklog Id 15544 [ 15544 ]
        abdy Abdy Franco made changes -
        Time Spent 1 week, 1 hour, 21 minutes [ 148860 ] 1 week, 1 day, 1 hour, 16 minutes [ 177360 ]
        Worklog Id 15545 [ 15545 ]
        abdy Abdy Franco made changes -
        Time Spent 1 week, 1 day, 1 hour, 16 minutes [ 177360 ] 1 week, 2 days, 1 hour, 7 minutes [ 205620 ]
        Worklog Id 15546 [ 15546 ]
        abdy Abdy Franco made changes -
        Time Spent 1 week, 2 days, 1 hour, 7 minutes [ 205620 ] 1 week, 3 days, 56 minutes [ 233760 ]
        Worklog Id 15547 [ 15547 ]
        abdy Abdy Franco made changes -
        Time Spent 1 week, 3 days, 56 minutes [ 233760 ] 1 week, 4 days, 55 minutes [ 262500 ]
        Worklog Id 15548 [ 15548 ]
        abdy Abdy Franco made changes -
        Time Spent 1 week, 4 days, 55 minutes [ 262500 ] 2 weeks, 54 minutes [ 291240 ]
        Worklog Id 15549 [ 15549 ]
        abdy Abdy Franco made changes -
        Time Spent 2 weeks, 54 minutes [ 291240 ] 2 weeks, 1 day, 39 minutes [ 319140 ]
        Worklog Id 15550 [ 15550 ]
        abdy Abdy Franco made changes -
        Time Spent 2 weeks, 1 day, 39 minutes [ 319140 ] 2 weeks, 2 days, 20 minutes [ 346800 ]
        Worklog Id 15551 [ 15551 ]
        abdy Abdy Franco made changes -
        Time Spent 2 weeks, 2 days, 20 minutes [ 346800 ] 2 weeks, 2 days, 6 hours, 44 minutes [ 369840 ]
        Worklog Id 15552 [ 15552 ]
        abdy Abdy Franco made changes -
        Status In Progress [ 3 ] In Review [ 5 ]
        Resolution Fixed [ 1 ]
        jonathan Jonathan Reissmueller made changes -
        Time Spent 2 weeks, 2 days, 6 hours, 44 minutes [ 369840 ] 2 weeks, 3 days, 1 hour, 47 minutes [ 380820 ]
        Worklog Id 15556 [ 15556 ]
        abdy Abdy Franco made changes -
        Time Spent 2 weeks, 3 days, 1 hour, 47 minutes [ 380820 ] 2 weeks, 3 days, 3 hours, 39 minutes [ 387540 ]
        Worklog Id 15557 [ 15557 ]
        abdy Abdy Franco made changes -
        Time Spent 2 weeks, 3 days, 3 hours, 39 minutes [ 387540 ] 2 weeks, 3 days, 3 hours, 43 minutes [ 387780 ]
        Worklog Id 15583 [ 15583 ]
        jonathan Jonathan Reissmueller made changes -
        Status In Review [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            abdy Abdy Franco
            Reporter:
            admin Paul Phillips
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:
              Fix Release Date:
              13/Apr/22

              Time Tracking

              Estimated:
              Original Estimate - Not Specified
              Not Specified
              Remaining:
              Remaining Estimate - 0 minutes
              0m
              Logged:
              Time Spent - 2 weeks, 3 days, 3 hours, 43 minutes
              2w 3d 3h 43m

                Agile