R.Kueny : Développeur web PHP

Expert Facebook – In Web We Trust

By

[Tips - Symfony2] Coloration de la console – app/console sur mac

C’est tout de même plus sympa d’avoir la coloration dans votre console lorsque vous utilisez php app/console avec Symfony2.

Symfony2

Sur mac, rien de bien compliqué, il vous faut le paquet php-posix.

Pour ça :

sudo port install php5-posix

Et voilà, rien d’autre à faire.

By

[Tips] Garder la vue du tab en haut

Un peu de difficulté à nommer ce tips je dois dire. En fait, il répond à un problème tout simple. Lorsque vous développez votre application dans un tab (onglet) facebook, il se peut que vous ayiez plusieurs pages. Imaginons un formulaire assez long. Vous êtes obligé de scroller pour appuyer sur valider. Et bien, après rafraichissement de la page, l’internaute se retrouve bien sur la nouvelle page mais avec la vue située au scroll précédant. Embêtant non ? Il serait bien mieux de le remettre en haut de page.

Pas de panique ! Pour cela, il vous faudra utiliser la méthode « FB.Canvas.scrollTo ». La voici en action :

<div id="fb-root"></div>
<script>
(function(d){
    var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
    if (d.getElementById(id)) {return;}
    js = d.createElement('script'); js.id = id; js.async = true;
    js.src = "//connect.facebook.net/fr_FR/all.js";
    ref.parentNode.insertBefore(js, ref);
}(document));
 
window.fbAsyncInit = function() {
    FB.init({
        appId      : 'myAppID',
        status     : true,
        cookie     : true,
        xfbml      : true
    });
    FB.Canvas.scrollTo(0,0);
}); 
</script>

Seule chose à savoir, il faut mettre une taille en hauteur dans le panel de l’application. Il vous faudra donc généralement lier cette fonction à FB.Canvas.setAutoGrow().

Source : FB.Canvas.scrollTo() Facebook doc

By

Code pour une Like Gate (ou fan gate)

En marge de mes articles sur les créations d’applications Facebook, voici un petit bout de code pour réaliser une Like Gate (ou une fan gate).

Like Gate : Onglet d’une page Facebook nécessitant un Like pour afficher le contenu

Facebook-Like-Button

Trêve de blabla voici le code :

function parse_signed_request($signed_request)
{
    list($encoded_sig, $payload) = explode('.', $signed_request, 2);
 
    $sig = base64_url_decode($encoded_sig);
    return json_decode(base64_url_decode($payload), true);
}
 
function base64_url_decode($input) {
    return base64_decode(strtr($input, '-_', '+/'));
}
 
$datas = parse_signed_request($_REQUEST['signed_request']);
 
if($datas['page']['liked']) {
    // Contenu pour les utilisateurs ayant "likés" la page
} else {
    // Page incitant au "like"
}

SI vous dumpez la variable « $datas » vous vous apercevrez que vous pouvez aussi détecter la langue de l’utilisateur par exemple.

By

Intégrer facilement Facebook Connect et Twitter Connect avec FosUserBundle pour Symfony 2.1

Avertissement : Cet article estime que vous savez travailler avec Symfony2, que vous savez récupérer vos clés d’API pour Twitter et Facebook qui seront nécessaires lors de la configuration.

De plus, j’utiliserai uniquement Doctrine lors de ce tutoriel. La version de Symfony est la 2.1.

Configurer FosUserBundle

Comme à chaque fois que l’on veut installer un nouveau Bundle, il vous faut l’ajouter dans votre composer.json.

{
    "require": {
        "friendsofsymfony/user-bundle": "*"
    }
}

Une fois cette ligne ajoutée, vous pouvez faire tourner votre composer.phar pour télécharger le bundle. Dans votre terminal :

$ php composer.phar update friendsofsymfony/user-bundle

Read More