var msCreatedOpid = -1;
var inviteOpid = 2792;
var inviteOpStatement = 'Music has a magical way of bringing back memories';

function sendMSBulletinAutoFollow(touserid,foruserid,opinionid, statement , response)
{
  var os_token = MyOpenSpace.MySpaceContainer.OSToken;
  var osContainer = opensocial.Container.get();

  var viewerName = msGlobalViewerInfo.getDisplayName();
  var viewerId = msGlobalViewerInfo.getField(opensocial.Person.Field.ID);

  var applicationLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId;
  var profileParams = { creatorid : ''+viewerId, layout : 'userprofile' };
  var profileLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId + "&appParams=" + encodeURIComponent(gadgets.json.stringify(profileParams));

  var subject = msRemoveSpecialChars(viewerName) +" is following your thoughts on Minekey.";
  var content = msRemoveSpecialChars(viewerName) +" is following your thoughts on Minekey.";
  var message = opensocial.newMessage(content);
  message.setField(opensocial.Message.Field.TITLE, subject);
  message.setField(opensocial.Message.Field.TYPE, MyOpenSpace.PostTo.Targets.BULLETINS);
  osContainer.postTo(os_token, message);
}

function sendMSBulletinOnOpinionResponse(opinionid, statement , response)
{
  var os_token = MyOpenSpace.MySpaceContainer.OSToken;
  var osContainer = opensocial.Container.get();

  var viewerId = msGlobalViewerInfo.getField(opensocial.Person.Field.ID);
  var viewerName = msGlobalViewerInfo.getDisplayName();
  var userResponse = '';
  if(response == 'disagree')
  {
    userResponse = 'disagreed';
  }
  else if(response == 'agree')
  {
    userResponse = 'agreed';
  }
  var opinionParams = { layout : 'theopinion', opinionid : ''+opinionid};
  var opinionLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId + "&appParams=" + encodeURIComponent(gadgets.json.stringify(opinionParams));
  var applicationLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId;
  var profileParams = { layout : 'userprofile', creatorid : ''+viewerId};
  var profileLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId + "&appParams=" + encodeURIComponent(gadgets.json.stringify(profileParams));

  var subject =   msRemoveSpecialChars(viewerName) + ' ' + userResponse +' on an Opinion on Minekey: "' +msRemoveSpecialChars(statement)+ '"';
  var content = '<a href="'+opinionLink+'"><img src="'+msMinekeyHtmlBase+'images/feed/agree50.gif"/></a>&nbsp;&nbsp;<a href="'+opinionLink+'"><img src="'+msMinekeyHtmlBase+'images/feed/disagree50.gif"/></a><br/><br/>Do you <a href="'+opinionLink+'">Agree </a> or <a href="'+opinionLink+'">Disagree </a> ? Vote on this opinion on <a href="'+applicationLink+'">Minekey</a>.';
  var message = opensocial.newMessage(content);
  message.setField(opensocial.Message.Field.TITLE, subject);
  message.setField(opensocial.Message.Field.TYPE, MyOpenSpace.PostTo.Targets.BULLETINS);
  osContainer.postTo(os_token, message);
}

function sendMSMessageOnShareOpinion(opid,currentOpinionStatement,selectedIndex)
{

  var os_token = MyOpenSpace.MySpaceContainer.OSToken;
  var osContainer = opensocial.Container.get();
  var viewerId = msGlobalViewerInfo.getField(opensocial.Person.Field.ID);
  var viewerName = msGlobalViewerInfo.getDisplayName();
  var opinionid = opid;
  var opinionParams = { opinionid : ''+opinionid, layout : 'theopinion' };
  var applicationLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId;
  var opinionLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId + "&appParams=" + encodeURIComponent(gadgets.json.stringify(opinionParams));
  var subject =   msRemoveSpecialChars(viewerName) + ' shared an Opinion  "'+msRemoveSpecialChars(currentOpinionStatement)+'"  with you.';
  var content = msRemoveSpecialChars(viewerName) + ' has shared an Opinion with you:<br/><br/><b>"'+msRemoveSpecialChars(currentOpinionStatement)+'"</b><br/><br/><a href="'+opinionLink+'"><img border="0" src="'+msMinekeyHtmlBase+'images/feed/agree50.gif"/></a>&nbsp;&nbsp;<a href="'+opinionLink+'"><img border="0" src="'+msMinekeyHtmlBase+'images/feed/disagree50.gif"/></a><br/><br/>Do you <a href="'+opinionLink+'">Agree</a> or <a href="'+opinionLink+'">Disagree</a> ? Vote on this opinion on <a href="'+opinionLink+'">Minekey</a>.';
  var message = opensocial.newMessage(content);
  message.setField(opensocial.Message.Field.TITLE, subject);
  message.setField(opensocial.Message.Field.TYPE, MyOpenSpace.PostTo.Targets.COMMENTS);
  osContainer.postTo(os_token, message, friendsObject[selectedIndex],handleMSShareOpinion);
}

function handleMSShareOpinion(successStatus)
{
  if (successStatus == MyOpenSpace.PostTo.Result.SUCCESS)
  {
    gotoOpinionWithMessage(shareOpinionId,4);
  }
  else
  {
    gotoOpinionWithMessage(shareOpinionId,null);
  }
}

function sendMSBulletinOnCreateOpinion(opinionid, statement)
{
  msCreatedOpid = opinionid;
  var os_token = MyOpenSpace.MySpaceContainer.OSToken;
  var osContainer = opensocial.Container.get();

  var viewerId = msGlobalViewerInfo.getField(opensocial.Person.Field.ID);
  var viewerName = msGlobalViewerInfo.getDisplayName();

  var opinionParams = { layout : 'theopinion', opinionid : ''+opinionid};
  var opinionLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId + "&appParams=" + encodeURIComponent(gadgets.json.stringify(opinionParams));
  var applicationLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId;
  var profileParams = { layout : 'userprofile', creatorid : ''+viewerId};
  var profileLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId + "&appParams=" + encodeURIComponent(gadgets.json.stringify(profileParams));
  var subject =  '"' +msRemoveSpecialChars(statement)+ '" Agree or Disagree?';
  var content = msRemoveSpecialChars(viewerName) + ' has expressed an Opinion on Minekey:<br/><br/><b>"'+msRemoveSpecialChars(statement)+'"</b><br/><br/><a href="'+opinionLink+'"><img border="0" src="'+msMinekeyHtmlBase+'images/feed/agree50.gif"/></a>&nbsp;&nbsp;<a href="'+opinionLink+'"><img border="0" src="'+msMinekeyHtmlBase+'images/feed/disagree50.gif"/></a><br/><br/>Do you <a href="'+opinionLink+'">Agree</a> or <a href="'+opinionLink+'">Disagree</a> ? Vote on this opinion on <a href="'+opinionLink+'">Minekey</a>.';
  var message = opensocial.newMessage(content);
  message.setField(opensocial.Message.Field.TITLE, subject);
  message.setField(opensocial.Message.Field.TYPE, MyOpenSpace.PostTo.Targets.BULLETINS);
  osContainer.postTo(os_token, message,null,handleMSBulletinCreateOpinion);
}

function handleMSBulletinCreateOpinion(successStatus)
{
  if (successStatus == MyOpenSpace.PostTo.Result.SUCCESS)
  {
       gotoOpinionWithMessage(msCreatedOpid,4);
  }
  else
  {
      gotoOpinionWithMessage(msCreatedOpid,null);
  }
}

function sendMSMessageOnInvite(selectedIndex)
{
  var os_token = MyOpenSpace.MySpaceContainer.OSToken;
  var osContainer = opensocial.Container.get();
  var viewerId = msGlobalViewerInfo.getField(opensocial.Person.Field.ID);
  var viewerName = msGlobalViewerInfo.getDisplayName();
  var opinionid = inviteOpid;
  var currentOpinionStatement = inviteOpStatement;
  var opinionParams = { opinionid : ''+opinionid, layout : 'theopinion' };
  var applicationLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId;
  var opinionLink = "http://profile.myspace.com/Modules/Applications/Pages/Canvas.aspx?appId="+osApplicationId+"&userId=" + viewerId + "&appParams=" + encodeURIComponent(gadgets.json.stringify(opinionParams));
  var subject = msRemoveSpecialChars(viewerName) + ' sent a request using Minekey';
  var content = '"'+ msRemoveSpecialChars(currentOpinionStatement) + '"<br/>'+'<a href="'+opinionLink+'"><img src="'+msMinekeyHtmlBase+'images/feed/agree50.gif"/></a>&nbsp;&nbsp;<a href="'+opinionLink+'"><img src="'+msMinekeyHtmlBase+'images/feed/disagree50.gif"/></a><br/><br/>Do you <a href="'+opinionLink+'">Agree</a> or <a href="'+opinionLink+'">Disagree</a> ? Add <a href="'+applicationLink+'">Minekey</a> and vote on this opinion to let me know what you think.';
  var message = opensocial.newMessage(content);
  message.setField(opensocial.Message.Field.TITLE, subject);
  message.setField(opensocial.Message.Field.TYPE, MyOpenSpace.PostTo.Targets.SEND_MESSAGE);
  osContainer.postTo(os_token, message, friendsObject[selectedIndex],handleMSInviteOpinion);
}

function handleMSInviteOpinion(successStatus)
{
  gotoHomePageUrl();
}

