XWIKI Tags integration - xwiki

we are using our own application for tags management. We would like to integrate it with XWIKI Tag application so it would show our tags.
Is it possible to change a source of tags? To use REST endpoint, our DB, etc.
I checked XWIKI REST API, but it allows page tagging only, there is no way to create a tag (without tagging a page). Our use case is:
1. users create tags in our application
2. user opens XWIKI
3. our tags should be available in auto suggestion when tagging a page.
Any ideas?
Thank You

I have not found a way to do this via existing plugin/extension.
As all requests to our app. go via proxy, I routed all requests that XWIKI uses to load tags
/xwiki/bin/view/Main/?xpage=suggest&classname=XWiki.TagClass&fieldname=tags&input=tag-name
to our endpoint and it works.

Related

TYPO3 - Insert api medipim

I want to call products on a web page via the api of Medipim. I have never done this before and I have never worked with TYPO3.
Therefore two questions.
In which (config) file do I place the authentication (I have an ID and secret key) and what exactly does that code look like?
When I want to call up the products, how do I use this in the TYPO3 page environment? Do I have to choose a html page or can I just enter it in the TYPO3 editor on a page?
Documentation: watch
You probably need an extension which converts the data you get from medipim to HTML. I Expect you get information as JSON, XML, or CSV.
As you won't publish your access code you probably will not use a javascript call from the browser to access the API, then you need some PHP.
Using PHP in TYPO3 is done in extensions. You should learn about building extensions in TYPO3. As a healper you might use the TYPO3 extension "Extension Builder" (=EB). As you have no local records you only need the extension frame with just one plugin from the EB.
Depending on your usage (will an editor select products from Medipim (option A) or should the visitor be able to select products (option B)?) you need a plugin with an option to insert desired product identification for BackEnd editors or just an input mask.
you can configure your plugin with typoscript so an integrator can enter the authentification information just once.
For option A you need to enhance your plugin with a field for the product ids.
keyword: flexform
for Option B you need a form.
Then you need to display the product information you get from the API. provide the returned data in variables and use Fluid templates to get a nice display.
Without any knowledge of TYPO3 this will be hard work and a lot to learn. The other possibility: hire an experienced TYPO3 developer and let him build this extension for you.

WHMCS Modifying Clients Table

How can you add a custom field to the table under View/Search Clients in the admin portal.
I have seen a lot of examples for ClientArea but nothing for the ADMIN Area.
Any light shed on this would be truly helpful.
Thanks.
You can do that with Javascript + AJAX:
1- write script to monitor current page is Clients page.
2- then add column header for the custom field,
3- Ajax script will send a request to php file (you need to write that as well) to get that custom field value and add it to the client row.
Best approach is to write addon module for this and use WHMCS hooks to add scripts to footer.

How to retrieve Salesforce Page Layout Field Properties via API?

Context:
The Web interface coded in .NET (Grantee Portal for nonprofits applying for grants) is pulling information from the Salesforce Page Layout.
The Salesforce user we use to connect the Web interface with Salesforce via API has 'view all and edit all' rights
Issue:
As it is now, if a field is defined as Read-Only on the Page Layout in Salesforce, it is still editable on the web page (the Salesforce User we use has to have 'view all and edit all' rights)
What we are trying to achieve:
IF a field is defined as Read-Only on the Salesforce Page Layout
THEN the same field should be Read-Only on the Web interface page
Question:
To achieve the above, I guess that I need to fetch the field property for the Page Layout via API. Any ideas on how to do so?
Thank you!
Izumi.
You'll need Metadata API (the set of webservices that let you add new objects, fields, picklist values or even create classes & run unit tests).
Here's the API Guide: http://www.salesforce.com/us/developer/docs/api_meta/index.htm
Depending on how often you modify layouts you might decide "screw it, I'll just use Eclipse IDE". In that case you'd download all page layouts (they're XML files), point your C# app to them and let the magic happen.
Slightly more advanced is to use Migration Tool (Ant / Java based application that can be scripted for periodic download of same stuff).
Super advanced would be to use this API guide to write it in C#. It's not rocket science (here's the specification for Page Layout object and here's the Java sample code for the operation that retrieves the metadata... sorry, no C#). Actually you might be better off looking at this example though: http://www.salesforce.com/us/developer/docs/api/Content/sforce_api_calls_describelayout.htm
Seeing that you'll probably want to cache this info somewhere anyway (I can't imagine your user coming to your page, having to wait for the webservice callout to complete, then having his UI rendered) - pick your poison.
Or share the work within the team (1 person kicks off with files downloaded with Eclipse, other tries to figure out the C# code to retrieve them on demand).

Dynamic landing page in Alfresco Share

I'm trying to figure out how to implement a mechanism that decides dynamically what's the landing page for a user.
I know that the default landing page is relatively easy to customize, as you can see in the following link:
http://blogs.alfresco.com/wp/ddraper/2011/11/01/advanced-share-customization-part-1/
http://zscribble.wordpress.com/2012/02/13/how-to-change-user-landing-page-in-alfresco-share/
But it is not enough because I need go a little further; after the successful authentication of any user, I need to retrieve the site/s that a user belongs to and then redirect to the dashboard of any of the sites.
I guess there is any authentication service that redirects to TOMCAT/webapps/share/site-index.jsp, and from here to either the user dashboard or a site dashboard, depending on the parameters received. If I'm right with my assumption, I understand I just should customize such supposed authentication service in order to get the user's sites and then redirect to the appropriate site dashboard's URL.
Am I in the right way? If not, any idea on how to proceed?
Thanks.
There are two possible approach in order to implement a mechanism which dynamically redirects to a page after a successful authentication in Alfresco Share.
The easiest way consists in the next steps:
Change the default landing page by updating the value of the tag <root-page> in the file alfresco\site-data\configurations\slingshot.site.configuration.xml (the default value is site-index).
Create a custom Surf page according to the value defined before.
Create a custom template-instance
Create a custom FreeMarker template, exclusively containing a region that loads a webscript (will be created in the next step).
Implement a webscript that decides whatever a URL to redirect to (in my case I have to retrieve the user's sites via RESTful API and then redirect to a site's dashboard)
Perform the redirection similarly to the accept-invite component is doing
The other possible way is to override the classes PageView and PageViewResolver, this way you can perform the redirection to the landing page in a single step rather than two steps, what is more efficient as a consequence. I didn't developed this solution so I cannot give more details but according to what an Alfresco Engineer says, it is viable to achieve.
If you want to know more about this, read this thread.

redirect google users from indexed html snapshot to my site main page

i have business listing site (www.brate.com) where people can search for local businesses and rate them.
the entire site is build using GWT (i.e. Ajax) and the all content is generated dynamically. Now i am in a phase where i want the site to be SEO friendly, below is my approach and please advise me if its the best way to implement it.
1- create static HTML snapshot of each business and its related data (site, address, phone number, user reviews...etc) and put all the generated HTML files under a single directory
2- create a sitemap xml file that contains all the above HTML links
3- configure webmaster to crawl and index all generated HTML snapshots
now my logic is that when google search query list one of the above generated html files in its search results i want to redirect the user to the site main page (www.brate.com) not the html snapshot.
can i use a redirect like "" in the generated snapshots?
if not what is the best way to achieve the above mentioned logic?
Thanks
Sameeh, one suggested approach for GWT
Ensure that you have correctly handled history tokens for all your pages in GWT. Let the tokens start with exclamation (!).
Associate GWT history tokens with generated pages using #! notation
Let tokens be keyword rich as we do for any URL optimization in SEO
Read through https://developers.google.com/webmasters/ajax-crawling/ for understanding #! notation.
Details on support by Bing: http://searchengineland.com/bing-now-supports-googles-crawlable-ajax-standard-84149