•  


GitHub - kl3ryk/symfony-facebook-bundle: This bundle provides ready to use official Facebook SDK and common Facebook configuration for any Symfony bundle.
Skip to content

kl3ryk/symfony-facebook-bundle

Repository files navigation

Symfony Facebook Bundle Build Status

This bundle provides ready to use official Facebook SDK client and common Facebook configuration (implements PrependExtensionInterface , see: http://symfony.com/doc/current/cookbook/bundles/prepend_extension.html ) for any Symfony bundle.

Facebook SDK client:

  • is integrated with Symfony session storage (unlike vanilla client which uses native PHP sessions)
  • is integrated with Symfony logger
  • uses Symfony "Request" object internally

Bundles Using This Bundle

If you are using this bundle, contact me or update README in your pull request.

For Facebook SDK Users

Using Facebook SDK

#
 config.yml


facebook
:
    
application_id
: 
"
your_application_id
"

    secret
: 
"
your_application_secret
"
// Controllers/YourSymfonyController.php


class
 YourSymfonyController
 extends
 Controller

{
    
function
 indexAction
()
    {
        
$
readyToUseFacebookSdk
 = 
$
this
->
get
(
'facebook'
);
        
// ... done

    }
}

Using Extended Facebook SDK Configuration

#
 config.yml


facebook
:
    
application_id
: 
"
your_application_id
"

    secret
: 
"
your_application_secret
"

    file_upload
: 
true 
#
 indicate if your server configuration allows CURL @ file uploads

    permissions
: 
#
 see: https://developers.facebook.com/docs/reference/login/#permissions

        - 
publish_actions

        - 
user_games_activity

        - 
... etc

    trust_proxy_headers
: 
true 
#
 Facebook SDK now trusts EVERY HTTP_X_FORWARDED_* header

For Symfony Bundle Developers

Automating Your Bundle Facebook Configuration With Laelaps Bundle

// Appkernel.php


class
 AppKernel

{
    
public
 function
 registerBundles
()
    {
        
return
 [
            
// ...

            new
 \
Laelaps
\
Bundle
\
Facebook
\
FacebookBundle
,
            
// ...

        ];
    }
}
#
 config.yml


facebook
:
    
application_id
: 
"
your_application_id
"

    secret
: 
"
your_application_secret
"
// DependencyInjection/YourExtension.php


use
 Laelaps
\
Bundle
\
Facebook
\
FacebookExtensionInterface
;
use
 Laelaps
\
Bundle
\
Facebook
\
FacebookExtensionTrait
;
use
 Symfony
\
Component
\
DependencyInjection
\
ContainerBuilder
;
use
 Symfony
\
Component
\
HttpKernel
\
DependencyInjection
\
Extension
;

class
 YourExtension
 extends
 Extension
 implements
 FacebookExtensionInterface

{
    
use
 FacebookExtensionTrait
;

    
public
 function
 load
(
array
 $
configs
, 
ContainerBuilder
 $
container
)
    {
        print_r(
$
configs
);
        
/*

            (

                [application_id] => example_application_id

                [secret] => example_secret

                [file_upload] =>

                [permissions] => Array

                    (

                    )


                [trust_proxy_headers] =>

            )

        */

    }
}

Prefixing Configuration

// DependencyInjection/YourExtension.php


use
 Laelaps
\
Bundle
\
Facebook
\
FacebookExtensionInterface
;
use
 Laelaps
\
Bundle
\
Facebook
\
FacebookExtensionTrait
;
use
 Symfony
\
Component
\
DependencyInjection
\
ContainerBuilder
;
use
 Symfony
\
Component
\
HttpKernel
\
DependencyInjection
\
Extension
;

class
 YourExtension
 extends
 Extension
 implements
 FacebookExtensionInterface

{
    
use
 FacebookExtensionTrait
;

    
public
 function
 getFacebookConfigurationPrefix
(
array
 $
config
, 
ContainerBuilder
 $
container
)
    {
        
return
 'facebook_'
;
    }

    
public
 function
 load
(
array
 $
configs
, 
ContainerBuilder
 $
container
)
    {
        print_r(
$
configs
[
0
]);
        
/*

            (

                [facebook_application_id] => example_application_id

                [facebook_secret] => example_secret

                [facebook_file_upload] =>

                [facebook_permissions] => Array

                    (

                    )


                [facebook_trust_proxy_headers] =>


            )

        */

    }
}

Semantic Versioning

This repository follows Semantic Versioning 2.0.0 .

About

This bundle provides ready to use official Facebook SDK and common Facebook configuration for any Symfony bundle.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

- "漢字路" 한글한자자동변환 서비스는 교육부 고전문헌국역지원사업의 지원으로 구축되었습니다.
- "漢字路" 한글한자자동변환 서비스는 전통문화연구회 "울산대학교한국어처리연구실 옥철영(IT융합전공)교수팀"에서 개발한 한글한자자동변환기를 바탕하여 지속적으로 공동 연구 개발하고 있는 서비스입니다.
- 현재 고유명사(인명, 지명등)을 비롯한 여러 변환오류가 있으며 이를 해결하고자 많은 연구 개발을 진행하고자 하고 있습니다. 이를 인지하시고 다른 곳에서 인용시 한자 변환 결과를 한번 더 검토하시고 사용해 주시기 바랍니다.
- 변환오류 및 건의,문의사항은 juntong@juntong.or.kr로 메일로 보내주시면 감사하겠습니다. .
Copyright ⓒ 2020 By '전통문화연구회(傳統文化硏究會)' All Rights reserved.
 한국   대만   중국   일본