Difference between revisions of "Integration/ContentConnector"
Jump to navigation
Jump to search
old>Admin |
old>Admin |
||
Line 31: | Line 31: | ||
* http://myserver.dk/TS/'''cmsinterface?q='''<CONNECTOR_NAME> | * http://myserver.dk/TS/'''cmsinterface?q='''<CONNECTOR_NAME> | ||
* http://myserver.dk/TS/'''cmsinterface?q='''<CONNECTOR_NAME>'''&v='''<OPTIONAL_VARIABLE> | * http://myserver.dk/TS/'''cmsinterface?q='''<CONNECTOR_NAME>'''&v='''<OPTIONAL_VARIABLE> | ||
Example URL's | Example URL's |
Revision as of 20:20, 21 January 2014
CMS content provider
The CMS connector will allow CMS systems to extract information from a TempusServa system, and display it inline in other pages.
Tempus Serva setup (provider)
Frontend
- Make the request that suits youre needs
- Filters and parameters
- Sorting / grouping
- Fields to display
- Fields to display
- Page size
- Save the view
- Click on the view and copy the parameters
Backend
- Check that anonumous users have the right permissions
- Note the interface will only allow READ operations
- Go to "Integration" > "Content connector"
- Add new element
- Give the connector a unique name (CONNECTOR_NAME>)
- Choose solution and set command type (as seen in the "command" parameter in the URL)
- Paste alle parameters from the URL above
- Optionally add other settings like Language and Stylesheet
- Optionally define a variable that the "v" parameter will be mapped to (page number or DataID)
- Test the new connector
URL format
- http://myserver.dk/TS/cmsinterface?q=<CONNECTOR_NAME>
- http://myserver.dk/TS/cmsinterface?q=<CONNECTOR_NAME>&v=<OPTIONAL_VARIABLE>
Example URL's
http://myserver.dk/TS/cmsinterface?q=customerList&v=3 http://myserver.dk/TS/cmsinterface?q=longActivityList&v=3 http://myserver.dk/TS/cmsinterface?q=singleActivityById&v=782382386
CMS system setup (consumer)
Option: Client rendering
The following procedure
- Make sure JQuery is available (normal JS can do the job)
- Insert content placeholder and Javascript code
<script> jQuery.ajax( { url: 'http://www.lsvgroup.com/TempusServaProxy.php?q=examdates', success: function(data) { jQuery('#tsContent').html(data); } }); </script>
Note: The URL above should possibly be exchanged by the URL to a proxy script (see below).
Option: Server side include
Insert code that fetches the content
echo file_get_contents("http://www.lsvgroup.com/TempusServaProxy.php?q=examdates")
Overcoming XSS protection
I cases where the TempusServa server and the CMS system is on different domains (ex. acme.shared.com and cms.acme.com), browsers will prevent pages from accessing content from other servers.
Three options exist
- Set up server to allow XSS (not recommended)
- Use server side includes (ok, but not supported everywhere)
- Set up a mini proxyserver
A mini proxyserver written i PHP is very simple (aspx/jsp will have similar features).
<?php echo file_get_contents("http://myserver.dk/TS/cmsinterface?q=".$_GET["q"]."&v=".$_GET["v"]);
Afterwards you just make the calls through the proxy using exact same parameters.