Publish Newsfeed - Basic Demo

Skip to end of metadata
Go to start of metadata

 

See it in Action

 

Step 1: Connect


Step 2: Post Newsfeed item
Click the button below to post a Newsfeed item

 

 

Read More

The UserAction Object

API Reference

Check Out the Code

<html>
<head>
    <title></title>
	<SCRIPT type="text/javascript" lang="javascript" 
	  src="https://cdns.gigya.com/js/gigya.js?apikey=2_Y82PzwJ_chSFImHXaIDJClnLyJzmk-VFOavSsaNTzl6m901s_NNxRAS0xJ3bd3_N"></SCRIPT>

</head>
<body>
<div id="runningCodeExample" style="border: 1px solid skyblue; padding: 15px; width: 400px; display: block; height: auto;">
	<script>
        function onLoad()
        {
            // get user info
            gigya.socialize.getUserInfo({callback:renderUI});	    
            
            // register for connect status changes
            gigya.socialize.addEventHandlers({ onConnectionAdded: renderUI, onConnectionRemoved: renderUI }); 
            
        }
		function renderUI(res)
		{
		    document.getElementById('btnPublishAction').disabled = 
					(res.user == null || !res.user.isConnected);		    
		}
		// Create and Publish User's Action
		// This method is associated with the "btnPublishAction" click
		function publishAction() {
		    // Constructing a UserAction Object
		    var act = new gigya.socialize.UserAction();
		    
		    // Adding Action Link
		    act.addActionLink("Watch the movie", 
					"https://www.youtube.com/watch?v=jqxENMKaeCU&feature=channel_page");
			
			// Setting the Title and subtitle
            act.setTitle("This is my title");
            act.setSubtitle("This is my subtitle");
            // Setting Link Back
            act.setLinkBack("http://bit.ly/5MFb2V");
			act.setUserMessage("This is my message to you");
		    // Parameters for the publishUserAction method, 
			// including the UserAction object
			var params = 
			{
			    userAction:act,
			    callback:publishAction_callback
			};
			
            // Publish the User Action
			gigya.socialize.publishUserAction(params);
		}
		// Display a status message according to the response from publishUserAction.
		function publishAction_callback(response)
		{
			switch (response.errorCode )
			{
				case 0:
					document.getElementById('status').style.color = "green";
					document.getElementById('status').innerHTML = "Newsfeed item sent.";
					break;
				default:
					document.getElementById('status').style.color = "red";
					document.getElementById('status').innerHTML = 
							"Unable to send newsfeed item. Error Code:" 
					        + response.errorCode + "; " + response.errorMessage;
			}
		}
		onLoad();
    </script>
	<b>Step 1: Connect</b>
	<div id="divConnect"></div>
        <script type="text/javascript">
	        // show 'Add Connections' Plugin in "divConnect"
	        gigya.socialize.showAddConnectionsUI({ 
				height:65
				, width:175
				, showTermsLink:false // remove 'Terms' link
                , disabledProviders: "yahoo" //Yahoo does not support sharing
				, containerID: "divConnect" // The component will embed itself inside the divConnect Div 
			});
        </script>    
    <br />
    <br />
    <b>Step 2: Post Newsfeed item</b><br />
    Click the button below to post a Newsfeed item<br />
    <input type=button id="btnPublishAction" onclick="javascript:publishAction()" value="Post" />
    <div id="status"></div>
</div>
</body>
</html>

 

Notes:

In order to make the above code work in your environment, please note:

  • The API key in the sample will only work on http://localhost/...
  • To load the page from your domain, modify the value of the "APIKey" field in the code to your own Gigya API Key. A Gigya API Key can be obtained from the Site Dashboard page on Gigya's website. Please make sure that the domain from which you are loading the page is the same domain name that you used for generating the API Key.
  • If you are using https, be sure to further adjust the JS API url to: https://cdns.gigya.com/js/gigya.js?apikey=<Your_API_Key>.