/* $Id: core.js 2011-01-06 9:40:21Z SocialEngineAddOns Copyright 2010-2011 BigStep Technologies Pvt. Ltd. $ */
function runFacebookSdk () {
  window.fbAsyncInit = function() {
	FB.JSON.stringify = function (value) { return JSON.encode(value);};
	FB.init({
		appId: fbappid,
	status : true, // check login status
	cookie : true, // enable cookies to allow the server to access the session
	xfbml  : true  // parse XFBML
		});
		
		if (enable_likemodule == 1 && enable_likeintsetting == 1) {
			FB.Event.subscribe('edge.create', function(response) {
				if (typeof fblike_moduletype != 'undefined' && fblike_moduletype && fblike_moduletype_id ) {
					if (fblike_moduletype == 'forum') {
							fblike_moduletype = 'forum_topic';
					}

					//SENDING AJAX REQUEST TO FIND WETHERE USER HAS ALREADY LIKED THE VIWING CONTENT OR NOT.
					// SENDING REQUEST TO AJAX
					url = en4.core.baseUrl +'facebookse/index/checklike';
					var request = new Request.JSON({
						'url' : url,
						//'method':'get',
						'data' : {
											'format' : 'json',
											'type' : fblike_moduletype,
											'type_id' : fblike_moduletype_id,
											'curr_url' : response,
											'is_ajax' : '1'

										},
						onSuccess : function(responseJSON) {
							if (!responseJSON.like || responseJSON.like == '') {
							  var content_liked = 0;
								if ((fblike_moduletype == 'member' || fblike_moduletype == 'group' || fblike_moduletype == 'event' || fblike_moduletype == 'forum_topic' || fblike_moduletype == 'list_listing' || fblike_moduletype == 'sitepage_page' || fblike_moduletype == 'recipe_recipes')) {
									if (fblike_moduletype == 'member' && window.content_type_likes) {
									  content_liked = 1;
										content_type_likes(fblike_moduletype_id, 'member');
									}
									else if (fblike_moduletype == 'group' && window.content_type_likes) {
									  content_liked = 1;
										content_type_likes(fblike_moduletype_id, 'group');
									}
									else if (fblike_moduletype == 'event' && window.content_type_likes) {
									  content_liked = 1;
										content_type_likes(fblike_moduletype_id, 'event');
									}
									else if (fblike_moduletype == 'forum_topic') {
                     if (window.content_type_likes) {
                      content_liked = 1;
											content_type_likes(fblike_moduletype_id, 'forum_topic', 'forum_topic');
										}
									}
                  else if (fblike_moduletype == 'list_listing') {
                    if (window.lists_likes) {
                      content_liked = 1;
											lists_likes(fblike_moduletype_id, 'list_listing');
										}
									}

									else if (fblike_moduletype == 'sitepage_page') {
                    if (window.sitepages_likes) {
                      content_liked = 1;
											sitepages_likes(fblike_moduletype_id, 'sitepage_page');
										}
									}

                  else if (fblike_moduletype == 'recipe_recipes') {
                    if (window.recipes_likes) {
                      content_liked = 1;
											recipes_likes(fblike_moduletype_id, 'recipe');
										}
                    else {
                      content_liked = 1;
                      en4.core.comments.like('recipe', fblike_moduletype_id);
                    }
									}
								}
								if (content_liked == 0) {
									en4.core.comments.like(fblike_moduletype, fblike_moduletype_id);
								}
							}
						}
					});
					request.send();
				}

			});
		}
		
		//TRACK BACK WHEN COMMENT IS MADE FROM THE FACEBOOK SOCIAL PLUGIN COMMENT BOX WHEN THIS BOX IS ACTIVATED:
			FB.Event.subscribe('comment.create', function(response) {
			   
			  getFbCommentCount (response.href); 
			  
			});
			
			//TRACK BACK WHEN COMMENT IS DELETED FROM THE FACEBOOK SOCIAL PLUGIN COMMENT BOX WHEN THIS BOX IS ACTIVATED:
			FB.Event.subscribe('comment.remove', function(response) {
			   getFbCommentCount (response.href); 

			});
		

		//THESE FUNCTIONS FOR RECENT FACEBOOK USER FEED.
			if (typeof $('facebooksepage_recent_activityfeed') != 'undefined' && $('facebooksepage_recent_activityfeed') != null) {

				showWallStream(userfeed_limit);
				showUserStatus();
			}

  };
  (function() {
	var catarea = $('global_content');
	if (catarea != null && (typeof $('fb-root') == 'undefined' || $('fb-root') == null)) {
		var newdiv = document.createElement('div');
		newdiv.id = 'fb-root';
		catarea.appendChild(newdiv);
		var e = document.createElement('script');
		e.async = true;
		e.src = document.location.protocol + '//connect.facebook.net/'+ local_language +'/all.js';
		document.getElementById('fb-root').appendChild(e);
  } }());
}


window.addEvent('load', function() {
		var call_userfeed = 0;
    if (typeof enable_fboldversion != 'undefined' && (enable_fboldversion == 0 || enable_fboldversion == '') ) {
      //if (typeof $('fb-root') == 'undefined' || $('fb-root') == null ) {
        call_userfeed = 1;
        runFacebookSdk ();
      //}


    }
    else if (typeof enable_fbpagemodule != 'undefined' && enable_fbpagemodule == 1 && typeof facebooksepage_fbinvite != 'undefined' && facebooksepage_fbinvite == 3) {
      call_userfeed = 1;
			showWallStream(userfeed_limit);
    }
    if (typeof $('facebooksepage_recent_activityfeed') != 'undefined' && $('facebooksepage_recent_activityfeed') != null && call_userfeed == 0) {

				showWallStream(userfeed_limit);
				showUserStatus();
			}
			
			
  });
  
  function  getFbCommentCount (fbcomment_url) {
    
    //SENDING AJAX REQUEST TO FIND WETHERE USER HAS ALREADY LIKED THE VIWING CONTENT OR NOT.
		
		url = en4.core.baseUrl +'facebookse/index/getfbcommentcount'; 
		var request = new Request.JSON({
			'url' : url,
			'method':'get',
			'data' : {
								'format' : 'json',
								'curr_url' : fbcomment_url,
								'is_ajax' : '1'
      },
			'onSuccess' :  function(responseJSON) { 
				  
			  if (responseJSON) { 
			    $('fb_totalcomments').innerHTML = responseJSON.totalFbComments + ' comments';
			    
			  }
			 }
	  });
    request.send();
  }
  
  
  function FB_like (type, id) { 
    en4.core.request.send(new Request.HTML({
      url : en4.core.baseUrl + 'widget/index/mod/facebookse/name/facebookse-comments',
      data : {
        format : 'html',
        subject : en4.core.subject.guid,
        type : type,
        id : id,
        like_unlike: 'like'
        
      },
      onSuccess : function(responseTree, responseElements, responseHTML, responseJavaScript) { 
        $('temp_postcontent').innerHTML = responseHTML;
        var Comments_Likes = $('temp_postcontent').getElementById('FB_comments_options').innerHTML;
        $('temp_postcontent').innerHTML = '';
        $('FB_comments_options').innerHTML = Comments_Likes;
      }
    }));
  }

  function FB_unlike(type, id) { 
    en4.core.request.send(new Request.HTML({
      url : en4.core.baseUrl + 'widget/index/mod/facebookse/name/facebookse-comments',
      data : {
        format : 'html',
        subject : en4.core.subject.guid,
        type : type,
        id : id,
        like_unlike: 'unlike'
      },
      onSuccess : function(responseTree, responseElements, responseHTML, responseJavaScript) { 
        $('temp_postcontent').innerHTML = responseHTML; 
        var Comments_Likes = $('temp_postcontent').getElementById('FB_comments_options').innerHTML;
        $('temp_postcontent').innerHTML = '';
        $('FB_comments_options').innerHTML = Comments_Likes;
       
      }
    }));
  }
  
  //SHOWING ALL THE MEMBERS WHO HAS LIKED THE PARTICULAR POST.
  function FB_showLikes(type, id) {
    en4.core.request.send(new Request.HTML({
      url : en4.core.baseUrl + 'widget/index/mod/facebookse/name/facebookse-comments',
      data : {
        format : 'html',
        subject : en4.core.subject.guid,
        type : type,
        id : id,
        viewAllLikes : true,
        like_unlike: 'like_unlike'
      },
      onSuccess : function(responseTree, responseElements, responseHTML, responseJavaScript) {
        $('temp_postcontent').innerHTML = responseHTML; 
        var Comments_Likes = $('temp_postcontent').getElementById('FB_comments_options').innerHTML;
        $('temp_postcontent').innerHTML = '';
        $('FB_comments_options').innerHTML = Comments_Likes;
      }
    }));
  }
  
  ;
