Show Different Facebook Tab App on Page for Different Locales - facebook

Does anyone know whether it's possible to show different Facebook Tab Apps in the left-hand menu of a Page depending on the locale of the user visiting the Page?
For example, I have 3 similar, but subtly different, apps built in three different languages, but only want any one user to see the app in the left-hand menu which correlates to their locale - does anyone know if is this possible?

No but you could make it just one application and use Facebook Translations for you app for the tab name. Then you could look at the signed request that Facebook POST's to your site and then show the best content based on the users country or language. You would need to map different language options to the versions you have.

In the answer of the signed request is not only, if user is fan or admin, you can find his language,too. So you can use do..case with it

Related

Easiest way to create a Facebook application

I need to create a simple tab page with custom content inside. How on earth I can get there the shortest and easiest way? Maybe I want to track the users who liked the page, but that's not compulsory. I just want to create a tab-page, which can integrate into a page and shows some custom content.
I have created an application at Facebook, the thing is, I don't know where to head from here, to include some content in the innards of that page...
I guess you want a static FBML tab. It is hard to find on Facebook, however it is possible to find a link like this. If you are logged in to Facebook then it should take you to a page where you can add a static FBML tab to one of the pages you administer. After that you can customize the tab content from page settings.
A page tab or any application on facebook can be and usualy is considered a normal website. You'll need the same things that you would if you wanted to create a website. You'll need a server, some storage space, possible a database (if you want to store date about/for your users).
There are ways to get started for free - lots of free hosting companies out there. You can start your search here
Facebook also has links to [develop applications in a cloud system].
There are different types of facebook apps, but one of them is just a canevas app.
So you ca include an external web page in a facebook page. It's pretty similar to a frame i think.
You can find inforations here: https://developers.facebook.com/docs/guides/canvas/#canvas

Is it possible to enforce initial configuration of a page app?

I'm attempting to develop my first Facebook app that is designed to allow clients of our website to sell tickets to their events from their Facebook page as well as from our website. So when the administrator of a Facebook page adds our app as a page tab, I need to be able to find out who they are so I can load the relevant event data. There also needs to be additional include/exclude configurations and various other options, which will affect the behaviour of the app.
So my question is how is this situation best handled? When playing around with a basic sandboxed app, I seem to be able to just add the app directly to a page; there is no prompt for configuration, and I can't see any way of defining custom properties.
Is the 'edit_url' property the only way to achieve this? If so, is there a way of automatically directing the page admin to this link upon initial use?
Decoding the signed request recieved in your page will give you more insight.
From this you can retrieve page admins' UID's.
You'll need to manage the rest on your side...
In order to get the user id the user will have to grant your application basic permissions.
I'm currently doing a somewhat similar app and, just like Lix said, I used the signed_request variable to detect the page where the tab is installed. Then, based on the page's ID, I retrieve the proper content.
To also give your users an admin page, add a Page Tab Edit URL in your app configuration where you can redirect your users to a custom panel where they can edit their app.

How do I translate my application name that is shown on the user profile page or in my application profile page?

How do I translate my application name that is shown on the user profile page or in my application profile page?
I have tried to use the facebook translation service, but it does not work.
The documentation makes it seem like you can translate the name of your application and the translations will show through out Facebook. The translation application has been broken since inception.
Here's a bug that's well over a year old about this issue: http://bugs.developers.facebook.net/show_bug.cgi?id=10501
I have seen some application re-publishing under other names (under different languages) to help capture users who use those languages. I have no idea what Facebook's stance is on that practice, though.

How would I go about creating a Facebook Fan Page tab that contains a Poll?

I'm not sure why but creating any kind of integration beyond the use of social widgets and buttons on external sites always confuses me.
What I need to do is create a tab on a particular Fan Page. This tab needs to:
Contain an interface for casting a vote in a Poll.
Handle multiple Polls. Only one will be featured in the tab at a time, but there should be an interface for navigating to previous polls.
All polling data needs to be stored on my servers - 3rd party Polling solutions (facebook apps, or embedable services) are not an option unless the data storage location is configurable.
All those requirements are pretty easy to address. Im just confused about how to integrate with FB.
Do i need full FB App for this, or is there another way? This will only be accessible via the Fan Page tab, so I don't necessarily need an App at apps.facebook.com.
If it is an app... is there a way to hide the app page, and the standalone app canvas from everyone except Fan Page admins?
FBML will be discountinue very soon. You might need to find an alternative way to do it. :-)
Check out the Static FBML app that Facebook provides. You can implement it on any Facebook fan page, change the tab title, and specify the content in HTML/FBML (with some limitations, I believe IFRAMES, password inputs, and some other random things are not allowed, but don't take my word on these until you test them). Hopefully this at least gives you a little head start.
Even Tradablebits platform is an option. They give a good functionality and make it simpler to work with Facebook. http://apps.tradablebits.com/ I analyzed this platform for one of my apps.

How is a Facebook user's language / internationalization preference stored?

I'm developing a Facebook application for a business page. The application can only be accessed as a tab, meaning there is no box or direct access intended.
I've done my share of searching and even though I hate asking for help when I know the information I'm after must be there somewhere, I've reached
the point of exhaustion and beg for a solution.
I've managed to work with my application the way it was intended, it retrieves some data from my databases and users can view that information without
a problem. The issue here is that I'm unable to figure out a way of getting information from the user who is viewing that tab. I don't want any private stuff,
in fact, the only thing I need is to know in which language he/she is viewing FB so I can grab content in that language instead of the default.
I thought that maybe FB stored that information on a cookie, or a session variable, who knows. I'm sure I seen something like en_GB on a cookie from
FB once, but maybe it was a mere delusion from sleep deprivation.
I'm sure there is a pretty solution developed already and I just can't wait to learn about it!
Thank you for you time :)
To translate the application, you should be using facebook translations.
All the text in your app should be inside and other intl tags and the translation for these should be available on facebook translations app. Then facebook shows the translated text to the user based on their locale.
Facebook Translations app: http://www.facebook.com/translations/
You can see the strings to be translated here.
You also have to enable you applications for translations in the Translation app admin panel.
More about translations here : http://wiki.developers.facebook.com/index.php/Internationalization
Here's a method that describes getting the current user's language in a canvas frame even when the user hasn't logged in: http://fbdevwiki.com/wiki/Locales#Getting_the_User.27s_Locale . I suspect that it should also work in a page tab iframe.