"use strict";define(["jquery","element-blocker","replace!facebook_sdk"],function($,ElementBlocker){var Facebook=function(){var $body=$(document.body);FB.init({appId:$body.data("fb-app-id"),cookie:!0,xfbml:!0,version:"v2.7"}),$(document).on("click","[data-fb-login]",$.proxy(function(e){var config=$(e.currentTarget).data("fb-login"),callback=$.noop(),$form=$(e.currentTarget).closest("form");"string"==typeof config.url&&($form.length&&ElementBlocker.block($form),callback=function(response){"connected"===response.status?$.post(config.url,{ref:config.ref||null}):$form.length&&ElementBlocker.unBlock($form)}),this.login(callback,config.scope)},this))};return Facebook.prototype.status=function(responseHandler){FB.getLoginStatus($.proxy(responseHandler,this))},Facebook.prototype.getEventById=function(eventId,responseHandler){FB.api(eventId+"?fields=id,name,description,start_time,end_time,place,cover",$.proxy(responseHandler,this))},Facebook.prototype.login=function(responseHandler,permissions,rerequest){var _responseHandler=responseHandler||$.noop,params={scope:permissions||""};rerequest&&(params.auth_type="rerequest"),FB.login(_responseHandler,params)},new Facebook});