﻿var globalMyProfileTabLoaded;

function KGMyProfileTab_Activate()
{
  if (!globalMyProfileTabLoaded)
  {
    var args = "Action=Load";
    Pfl_KGMemberControl_CallbackTrigger(args);
    globalMyProfileTabLoaded = true; // doesn't need resetting until the page reloads
  }
}

function ShowUser_Wrapped(_personId, _pageLoad, _currentUserPersonId)
{
  if (_currentUserPersonId > 0 && _currentUserPersonId == _personId)
  {
    //if(globalVisibleTab != 'TSC_myprofile')
      ChangeTab('myprofile');
  }
  else
  {
    if(globalVisibleTab != 'TSC_communities')
      ChangeTab('communities', 'Communities', false);
    
    // if this is from a page load, we need to setup the tab tool strip
    if(_pageLoad)
      ChangeTabToolStrip('communities');
    
    var extraRepopArgs = "PersonId=" + _personId;
    LoadCommunityTab("User", extraRepopArgs);
  }
}

function KGMemberControl_CallbackError(_args, _context)
{
  var alertMessage = "The KGMemberControl encountered an error. \n\n" + _args;
  alert(alertMessage);
}

function KGMemberControl_CallbackDone(_args, _context)
{
  // check for exceptions
  if (_args.indexOf("Exception") == 0 || _args.length == 0)
  {
    KGMemberControl_CallbackError(_args, _context);
    return;
    // looking for indexOf == 0 instead of > -1 incase it's genuine html that happens to contain 'Exception' in there
    // e.g. a user called "... Exceptional ..." 
  }

  // get the parameters
  var argsSplit = _args.split('[@|@]');
  var holderId = argsSplit[0];
  var javascripts = argsSplit[1];
  var htmlContent = argsSplit[2];
  
  //var retMsg = eval( '(' + json + ')' );
  //var holderId = retMsg.HolderId;
  
  var holder = document.getElementById(holderId);
  if (!holder)
  {
    KGCommunityControl_CallbackError('The holder doesn\'t exist ' + holderId);
    return;
  }
  
  // fill the control
  SetOuterHtml(holder, htmlContent);
  
  // eval any javascripts
  if (javascripts)
    eval(javascripts);
}
