App for transporting SAP Commerce content between environments - e-commerce

We have a request from our business to create a custom application capable of extracting CMS content out of one SAP Commerce environment and loading it up into another SAP Commerce environment. The idea is that our content admins could "transport" a new page from QA to production without having to manually recreate it. Also, such a tool could be used in "refreshing" certain parts of one environment with the content of another.
I believe that we could write such a tool ourselves, and I found one other stackoverflow post mentioning a technique to do this:
Can SAP commerce cloud (Hybris) export content?
We could create an OCC endpoint for both retrieving cms content and putting cms content.
My question to you all is does there exist a third party application that could do this for us already? It would be beneficial to our organization if we could purchase a solution that did this for us rather than writing and maintaining the app ourselves.

SAP just released an extension for db sync, check here.

Related

Tendermint web application - customize

I am new to blockchain development and to tendermint as well.
I already have a blockchain running locally.
Using this command starport scaffold vue I could mount a local web application. Inspecting a bit I could replicate some network requests (localhost) and I can get the ballance of current wallet (hard-coded on the request), get the current wallet from the localstorage. I'm struggling on authentication (mnemonic, wallet name and password).
However I also would like to costumize it according to my needs and I thought I could start a web application from scratch. I can see that the generated web project is importing this project https://github.com/tendermint/vue which is making a lot of "magic behind the scenes" and importing UI elements as well and I would like to have my own elements.
I don't want to re-invent the wheel and I can make some imports to help me on connection to wallet, validate authentication (mnemonic, wallet name and password), create wallet and so on.
I am trying to build a web application to connect to wallet, make transations.... but I would like to control the styles and the connections (and if possible using reactjs instead of vuejs, otherwise I dont mind learn vuejs as well).
Is this possible or reasonable? Where I can find good documentation or tutorial to guide me on customize a web application using tendermint. Honestly I searched but I am kind of lost.
Thanks
UPDATE: I found good examples and here and here. It helped me to validate mnemonics and make transactions, with my stack tech.
Because Starport generates both plain Javascript and VUE controllers, you have few options:
Create your own site re-using VUE components
Take plain JS part and build a website using whatever technology you like
Use a plain JS client for standard cosmos modules you can find on GitHub
Use Protobuf generator to generate light client code yourself
If you only need wallet functionality, #2 and #3 may work best for you because the bank module is stable and hasn't changed much in a long time.
You can find plain JS file for bank in your project:
vue/src/store/generated/cosmos/cosmos-sdk/cosmos.bank.v1beta1/module/index.ts
There is a link to starport discord channel related to frontend: https://discord.gg/CvbdYh9AWQ

Install an App in unpublished theme in shopify store

I want to install some Apps in my unpublished theme (development theme) without impacting published (live) theme.
I have searched in google but couldn't find any solution. If anybody have done this type of task then please help me. Thanks in advance!
If the app provides an option for choosing a theme then yes you can, but otherwhise you can't.
Most APPs now install scripts that inject some content. Those scripts are tied directly to the live theme and if there is no option to choose a specific theme you can't change that functionality.
So you don't have a lot of options, if the APPs are not paid you can create a separate dev store where you can do your testing or styling and transfer the theme to the live store once you are done. But if the APPs are paid you will need to communicate with your client that there is a chance that the app may modify some of the current theme functionality and this may be visible on the live site.
The different apps are as follow:
Has an option for choosing a theme
Modify the theme files directly
Includes a script that will inject content and functionality to the front-end
Mash up of the above
Have in mind that all of the above indicates that these apps will modify the front-end in some way, there are APPs that extend the back-end and doesn't modify the front-end.

REST API for Joomla 3.0 [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed last year.
Improve this question
I'm currently using the Joomla 3.3.6 and need to find a REST API to access the content information, user information and etc. I already tried to use the following REST API, which is developed by TechJoomla, but unable to find a proper documentation about the sample requests, authentication process and so on.
https://techjoomla.com/rest-api-for-joomla
And also i considered the jbackend REST API which is developed as an extension for joomla which seems to be a paid extension.
After lot of googling i'm still struggling to find a REST API to access the Joomla content. Please help me with this issue.
Thank you in advance.
I ran into the same issue as well which is why I ended up developing a RESTful API for Joomla 3.4.x, powered by the Slim PHP micro-framework. Please note that this is a commercial Joomla package.
The package includes the following:
Services Control Panel component
Joomla "services" add-on library which includes a version of Slim v2.6.2 (along with several other libraries) obtain via composer and normally found in the vendor folder. More on this later...
Services Joomla Plugin
Services REST Plugin
Services Slim Configuration Plugin
Slim JSON API View plugin
Slim JSON API Middleware plugin
You might ask, "What is the point of all these plugins?"
The answer is that it allows for compartmentalization of functionality of the core components and opens the door for an easily extensible services routes architecture. Note that new plugins could easily be added with Joomla ACL restricting access to those new routes, for example.
The Services Control Panel allows for creation of tokens on a per-user basis (or even multiple tokens per Joomla user). It also allows the end user to configure the Slim micro-framework parameters and even include a threshold for the API rate-limiting functionality (currently based on requests-per-minute). Actually, that part is totally awesome as it provides live feedback on the state of the API rate threshold within the response header.
The cAPI Core package ("cAPI", short for "Constant API" because everything needs a product name...) is just that - a core package. There is a host of add-ons currently in development, the first one being a secure LDAP JSON API (which connects to Microsoft Active Directory), with lots more cool add-ons to come.
The whole point of all this is to say that, basically, your request has been answered and now a commercially supported solution has finally arrived. Plus, instead of reinventing the wheel, I based the extension on a popular, existing micro-framework (Slim), making it easier for developers to work with or develop on the core, pluggable, framework.
So, you get the best of Joomla (robust ACL, advanced plugin architecture, wealth of extensions) and Sim (proven, standards-compliant, mature RESTful PHP micro-framework), all in one easy to install package.
Exposing a website via an easily queryable API should not be taken lightly. I would hope anyone choosing to do this would implement 100% HTTPS access and security-harden their server(s).
You can find more information here: http://getcapi.org
Hope this gets you going in the right direction.
One more thing:
I read over your question again and read that part about your need to access users and content. These were actually the first service endpoints I worked on:
/api/v1/user/
- Can be used to log a user in and out and returns the activated Joomla session in the response
- This also provides for multimodal authentication (both via token in header or username & password in URL string). Basically, it works with your needs.
- You force a user logout like this:
/api/v1/user/logout/username/joomlasessionid
Basically, this is tailor-made for driving remote services or, say iOS or Android apps.
(GET,POST,PUT,DELETE) /api/v1/content/...
- Provides ability to create, retrieve, update and delete content
(GET,POST,PUT,DELETE) /api/v1/category/...
- Provides ability to create, retrieve, update and delete categories
Also,
/api/v1/user/login/(username)/(password)
/api/v1/user/logout/(username)/(joomlasessionid)
/api/v1/user/profile
/api/slim/routes
and more...
Additional information on available methods can be found here:
http://learn.getcapi.org/api-methods
It should go without saying that all cAPI Core package improves are included in the annual subscription fee. Add-ons are (will be) billed and supported separately. Now listed in the Joomla Extensions Directory (JED) https://extensions.joomla.org/extensions/extension/capi-core-rest-api.
Update 2016-03-28
As of cAPI v1.2.1 new methods have been added to allow CRUD for Joomla user and group management. In addition, I am working on a sandbox cluster at http://getcapi.io to allow potential customers to fully test out the APIs capabilities before subscribing.
Update 2016-09-18
As of cAPI v1.2.5 new methods have been added to allow CRUD actions on API tokens. The API has also been updated with doc-blocks which can auto-generate a Swagger.json. cAPI includes both a back-end and front-end view for accessing the complete API docs generated by Swagger UI.
Finally, https://getcapi.io along with demo1.getcapi.io and demo2.getcapi.io are now live and allow visitors to test the API docs. Soon, they will be configured to auto-reset so that accounts can be distributed to customers so they may fully test the API on their own.
I would recommend jBackend for this.
Further details are discussed at https://joomla.stackexchange.com/questions/10306/creating-an-api-for-a-joomla-extension/10307#10307
You might find this helpful Create Your First RESTful Web Service For Joomla! 3 With Lumen - Introduction

Best Practise for building mobile site

I am about to start building a mobile site which is dynamic, working from a lot of dynamic content which must come from the database.
I have already written a REST API for the site which the IOS and Android applications are using to interact with the information.
My question is what would be the absolute best practise for building this site, would it be:
1- Make the mobile classes an extension of the existing site functions
(The downside I see here is that the mobile site would be dependant on the main site library meaning that any bad heat on the main site would also affect the mobile site)
2- Make the mobile site a completely stand alone site running from itself
(The downside I see here is that any change to the main site library will need to be reflected here so in essence we would almost be writing code twice)
3- Make the mobile site run from the REST API and standalone
(The downside i see here is just increased number of HTTP requests for the information rather than communicating with the server directly)
Each one would function normally and there wouldn't really be any problem there, coding is really not too difficult, though if I make it standalone I would need to recreate a lot of the functions from the main site and adapt them for the mobile site which isn't ideal.
Look forward to your comments! Thanks
I would go with 3rd point, but that needs to be architect well.
We will prioritize standalone application after that API, also we can have 2 way communication, any content changed on server it will coordinate with clients to get that updated.
Also I would also suggest go with Bootstrap framework, its an awesome framework and have responsive and adaptive design

To build an App for an Internet site without its API and Schema

I was asked to build a control-system for a Ebay-like Finnish auction-site huuto.net.
The system would reopen closed auctions by a specific rules. It would be completely external from the main site, running at an external website.
The site is however unwilling to release its API and Schema. I know no way to build such a system without knowing its API.
How do you build an internet site without its API and Schema?
You could try some form of automatic browsing: mechanize
Edit:
Examples here.
I think you're asking about building a site that interacts with another site without using a well-defined API. Is that right?
You can interact with an external site without using an official API - in order to do so, you need to imitate a normal site visitor and send your requests to the site frontend (in much the same way as a web crawler does). Tools like hpricot, mechanize and curl can help you parse the content of pages and send requests, but in doing so your system may be quite brittle. Any change to the target site might mean you have to rewrite portions of your system.
It might be possible to get the data you need by screen scraping the site. You could perform the operations you want to do by POSTing data into their forms or using a WebClient type API to make your program act like a web browser but that's likely to be an extremely brittle solution.
Honestly though, without an API, there really is no good solution.
you either need access to the database or an API, otherwise no point in even trying.