	dojo.require("dojo.data.ItemFileReadStore");
		dojo.require("dojox.grid.DataGrid");
		dojo.require("dijit.layout.ContentPane");
        dojo.require("dijit.layout.TabContainer");
        dojo.require("dijit.layout.BorderContainer");
        dojo.require("dijit.form.Button");
        dojo.require("dijit.form.Textarea");
       	dojo.require("dijit.Dialog");
       	dojo.require("dijit.form.TextBox");
       	dojo.require("dijit.form.ComboBox");
       	dojo.require("dojo.parser");
       
       //json stores for each category
		var jsonStore;
		var cricJsonStore;
		var bollyJsonStore;
		var politicsJsonStore;
		var businessJsonStore;
		var jobsJsonStore;
		var techJsonStore;
		var travelJsonStore;
		var userSearchJsonStore;
		var citySearchJsonStore;
		var celebritiesJsonStore;
		var headlinesJsonStore;
		
		//responses for each category
		var responseJ;
		var cricResponseJ;
		var bollyResponseJ;
		var politicsResponseJ;
		var businessResponseJ;
		var jobsResponseJ;
		var techResponseJ;
		var travelResponseJ;
		var userSearchResponseJ;
		var citySearchResponseJ;
		var celebritiesResponseJ;
		var headlinesResponseJ;
		
		//nextPageQuery for each category
		var nextPageQuery = "";
		var cricNextPageQuery="";
		var bollyNextPageQuery="";
		var politicsNextPageQuery="";
		var businessNextPageQuery="";
		var jobsNextPageQuery="";
		var techNextPageQuery="";
		var travelNextPageQuery="";
		var userSearchNextPageQuery="";
		var citySearchNextPageQuery="";
		var celebritiesNextPageQuery="";
		var headlinesNextPageQuery="";
		
		//prevPageQuery for each category
		var prevPageQuery = "";
		var cricPrevPageQuery="";
		var bollyPrevPageQuery="";
		var politicsPrevPageQuery="";
		var businessPrevPageQuery="";
		var jobsPrevPageQuery="";
		var techPrevPageQuery="";
		var travelPrevPageQuery="";
		var userSearchPrevPageQuery="";
		var citySearchPrevPageQuery="";
		var celebritiesPrevPageQuery="";
		var headlinesPrevPageQuery="";
		
		//searchQuery for each category
		var searchQuery = "";
		var cricSearchQuery="";
		var bollySearchQuery="";
		var politicsSearchQuery="";
		var businessSearchQuery="";
		var jobsSearchQuery="";
		var techSearchQuery="";
	    var travelSearchQuery="";
	    var userSearchQuery="";
	    var citySearchQuery="";
	    var celebritiesSearchQuery="";
	    var headlinesSearchQuery="";
		
		var currentGrid;
		var currentGridForUser;
		var page_number = 1;
		 

	
		dojo.addOnLoad(function(){

                dojo.parser.parse();
                init();
                hideLoader();

        });
        
        
 
	function init()
	{	
	
		getHeadlinesTimeLine();
		
		var tabContainer = dijit.byId("mainTabContainer");
	
	   dojo.connect(tabContainer, "selectChild", function() {
			var selected = tabContainer.selectedChildWidget;
			if (selected.id == 'tab1') getIndiaTimeLine();
			else if (selected.id == 'tab2') getCricketTimeLine();
			else if (selected.id == 'tab3') getBollywoodTimeLine();
			else if (selected.id == 'tab1') getIndiaTimeLine();
			else if (selected.id == 'tab4') getPoliticsTimeLine();
			else if (selected.id == 'tab5') getBusinessTimeLine();
			else if (selected.id == 'tab6') getJobsTimeLine();
			else if (selected.id == 'tab7') getTechTimeLine();
			else if (selected.id == 'tab8') getTravelTimeLine();
			else if (selected.id == 'tab9') citySearch("delhi");
			else if (selected.id == 'tab11') getHeadlinesTimeLine();
			else if (selected.id == 'tab12') getCelebritiesTimeLine();
			
		}
		);
		

		
		dojo.connect(dojo.byId("searchBox"), 'onkeypress', function(e) {
		if (e.keyCode == dojo.keys.ENTER) {
			//do whatever you want to do when ENTER key is pressed in the searchBox
			userSearch('');

		}
		});
		
	}
	//if(dojo.isIE)
		//dojo.addOnLoad(init);
		 
		
  var hideLoader = function(){

                dojo.fadeOut({

                        node:"preloader",

                        duration:900,

                        onEnd: function(){

                                dojo.style("preloader", "display", "none");


                        }

                }).play();

        }


	function getObject(obj) {
		  var theObj;
		  if(document.all) {
		    if(typeof obj=="string") {
		      return document.all(obj);
		    } else {
		      return obj.style;
		    }
		  }
		  if(document.getElementById) {
		    if(typeof obj=="string") {
		      return document.getElementById(obj);
		    } else {
		      return obj.style;
		    }
		  }
		  return null;
		}

		function toCount(entrance,exit,text,characters) {
		  var entranceObj=getObject(entrance);
		  var exitObj=getObject(exit);
		  var length=characters - entranceObj.value.length;
		  if(length <= 0) {
		    length=0;
		    text='<span class="disable"> '+text+' </span>';
		    entranceObj.value=entranceObj.value.substr(0,characters);
		  }
		  exitObj.innerHTML = text.replace("{CHAR}",length);
		}

		
		
		function getIndiaTimeLine(searchQuery)
		{
		 //console.debug("Inside getIndiaTimeLine " + searchQuery);
		 document.getElementById("message").value="#india";
		 if(searchQuery == "" || searchQuery == null)
		 		searchQuery = "?q=india+-arie&rpp=17";
           
                                                                                                                                                                                                                                                                                                                                                                                      
		 dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (returnedObj){
         
                responseJ = { 'items' : returnedObj.results };
                nextPageQuery = returnedObj.next_page;
                prevPageQuery = returnedObj.previous_page;
                jsonStore = new dojo.data.ItemFileReadStore({ data: responseJ });
				var grid=dijit.byId("gridNode");
				grid.setStore(jsonStore);
				
				
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[searchQuery] }
        }); 
        }
        
        function getHeadlinesTimeLine(searchQuery)
		{
		// console.debug("Inside getHeadlinesTimeLine " + searchQuery);
		 document.getElementById("message").value="#india";
		 if(searchQuery == "" || searchQuery == null)
		 		searchQuery = "?q=from%3Andtv+OR+from%3Aibnlive+OR+from%3Atimes_of_india+OR+from%3ARtrsIN_TopNews+OR+from%3ATOIIndiaNews+OR+from%3Aheadlinesindia+OR+from%3ADNA&rpp=17";
           
                                                                                                                                                                                                                                                                                                                                                                                      
		 dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (headlinesReturnedObj){
                
                headlinesResponseJ = { 'items' : headlinesReturnedObj.results };
                headlinesNextPageQuery = headlinesReturnedObj.next_page;
                headlinesPrevPageQuery = headlinesReturnedObj.previous_page;
                headlinesJsonStore = new dojo.data.ItemFileReadStore({ data: headlinesResponseJ });
				var grid=dijit.byId("headlinesGridNode");
				grid.setStore(headlinesJsonStore);
			
				
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[searchQuery] }
        }); 
        }
        
        function getCricketTimeLine(cricSearchQuery)
		{
		// console.debug("Inside getCricketTimeLine "  + cricSearchQuery);
		 document.getElementById("message").value="#cricket";
		 if(cricSearchQuery == "" || cricSearchQuery == null)
		 	cricSearchQuery = "?q=india+cricket+OR+ipl+OR+ODI+OR+from%3AIPL&rpp=17";                                                                                                                                                                                                                                                                                                                                                                                              
		 dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (cricReturnedObj){
                cricResponseJ = { 'items' : cricReturnedObj.results };
                cricNextPageQuery = cricReturnedObj.next_page;
                cricPrevPageQuery = cricReturnedObj.previous_page;
                cricJsonStore = new dojo.data.ItemFileReadStore({ data: cricResponseJ });
				
				var grid=dijit.byId("cricGridNode");
				grid.setStore(cricJsonStore);
				
					
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[cricSearchQuery] }
        }); 
        }
        function getBollywoodTimeLine(bollySearchQuery)
		{
		// console.debug("Inside getBollyTimeLine "  + bollySearchQuery);
		 document.getElementById("message").value="#bollywood";
		 if(bollySearchQuery == "" || bollySearchQuery == null)
		 	bollySearchQuery = '?q=bollywood+OR+from%3Aindiafm+OR+from%3ARtrsIN_Bollywd+OR+from%3Abolly_gossip&rpp=17';                                                                                                                                                                                                                                                                                                                                                                                       
		 dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (bollyReturnedObj){
             // debugger;
                bollyResponseJ = { 'items' : bollyReturnedObj.results };
                bollyNextPageQuery = bollyReturnedObj.next_page;
                bollyPrevPageQuery = bollyReturnedObj.previous_page;
                bollyJsonStore = new dojo.data.ItemFileReadStore({ data: bollyResponseJ });
				
				var grid=dijit.byId("bollyGridNode");
				grid.setStore(bollyJsonStore);
				
					
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[bollySearchQuery] }
        }); 
        }
        function getPoliticsTimeLine(politicsSearchQuery)
		{
		// console.debug("Inside getPoliticsTimeLine "  + politicsSearchQuery);
		 document.getElementById("message").value="#india #politics";
		 if(politicsSearchQuery == "" || politicsSearchQuery == null)
		 	politicsSearchQuery = "?q=india+politics+OR+political+OR+indiavotes+OR+politician+OR+elections+OR+BJP+OR+congress+-arie&rpp=17";                                                                                                                                                                                                                                                                                                                                                                                              
		 dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (politicsReturnedObj){
                politicsResponseJ = { 'items' : politicsReturnedObj.results };
                politicsNextPageQuery = politicsReturnedObj.next_page;
                politicsPrevPageQuery = politicsReturnedObj.previous_page;
                politicsJsonStore = new dojo.data.ItemFileReadStore({ data: politicsResponseJ });
				
				var grid=dijit.byId("politicsGridNode");
				grid.setStore(politicsJsonStore);
				
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[politicsSearchQuery] }
        }); 
        }
        
        function getBusinessTimeLine(businessSearchQuery)
        {
        	//console.debug("Inside getBusinessTimeLine");
        	document.getElementById("message").value="#india #business";
		 	if(businessSearchQuery == "" || businessSearchQuery == null)
		 		businessSearchQuery = "?q=india+business+OR+sensex+OR+economy+OR+economic+OR+finance+OR+financial+OR+trade+-arie&rpp=17";       
		 	                                                                                                                                                                                                                                                                                                                                                                               
		     dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (businessReturnedObj){
                businessResponseJ = { 'items' : businessReturnedObj.results };
                businessNextPageQuery = businessReturnedObj.next_page;
                businessPrevPageQuery = businessReturnedObj.previous_page;
                businessJsonStore = new dojo.data.ItemFileReadStore({ data: businessResponseJ });
				
				var grid=dijit.byId("businessGridNode");
				grid.setStore(businessJsonStore);
				
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[businessSearchQuery] }
        }); 
        }
        function getJobsTimeLine(jobsSearchQuery)
        {
        	//console.debug("Inside getJobsTimeLine");
        	document.getElementById("message").value="#india #job";
		 	if(jobsSearchQuery == "" || jobsSearchQuery == null)
		 		jobsSearchQuery = "?q=india+job+OR+jobs+OR+recruit+OR+vacancy+OR+vacancies+OR+hiring+OR+freshers+OR+placement+OR+placements+-arie+-good+-great&rpp=17";                                                                                                                                                                                                                                                                                                                                                                                              
		     dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (jobsReturnedObj){
                jobsResponseJ = { 'items' : jobsReturnedObj.results };
                jobsNextPageQuery = jobsReturnedObj.next_page;
                jobsPrevPageQuery = jobsReturnedObj.previous_page;
                jobsJsonStore = new dojo.data.ItemFileReadStore({ data: jobsResponseJ });
				
				var grid=dijit.byId("jobsGridNode");
				grid.setStore(jobsJsonStore);
				
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[jobsSearchQuery] }
        }); 
        }
        function getTechTimeLine(techSearchQuery)
        {
        	//console.debug("Inside getTechTimeLine");
        	document.getElementById("message").value="#india #tech";
		 	if(techSearchQuery == "" || techSearchQuery == null)
		 		techSearchQuery = "?q=india+tech+OR+software+OR+technology+OR+TEDIndia+OR+science+-arie&rpp=17";                                                                                                                                                                                                                                                                                                                                                                                              
		     dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (techReturnedObj){
                techResponseJ = { 'items' : techReturnedObj.results };
                techNextPageQuery = techReturnedObj.next_page;            
                techPrevPageQuery = techReturnedObj.previous_page;
                techJsonStore = new dojo.data.ItemFileReadStore({ data: techResponseJ });
				
				var grid=dijit.byId("techGridNode");
				grid.setStore(techJsonStore);
				
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[techSearchQuery] }
        }); 
        }
        
         function getTravelTimeLine(travelSearchQuery)
        {
        	//console.debug("Inside getTravelTimeLine");
        	document.getElementById("message").value="#india #travel";
		 	if(travelSearchQuery == "" || travelSearchQuery == null)
		 		travelSearchQuery = "?q=india+travel+OR+tourism+OR+hotel+OR+flight+OR+tourist+-arie&rpp=17";                                                                                                                                                                                                                                                                                                                                                                                              
		     dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (travelReturnedObj){
                travelResponseJ = { 'items' : travelReturnedObj.results };
                travelNextPageQuery = travelReturnedObj.next_page;            
                travelPrevPageQuery = travelReturnedObj.previous_page;
                travelJsonStore = new dojo.data.ItemFileReadStore({ data: travelResponseJ });
				
				var grid=dijit.byId("travelGridNode");
				grid.setStore(travelJsonStore);
				
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[travelSearchQuery] }
        }); 
        }
        
         function getCelebritiesTimeLine(timeline)
        {
          
        	//console.debug("Inside getCelebritiesTimeLine");
        	
        	document.getElementById("message").value="#india";
        	if(timeline != 'refresh')
        	{
        		if(timeline == 'previous')
        			page_number--;
        		else if(timeline == 'next')
        			page_number++;
        	}
        	else page_number = 1;
        	
        	if(page_number <= 0) 
        		page_number = 1;		
        	 	                                                                                                                                                                                                                                                                                                                                                                                       
		     dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (celebritiesReturnedObj){
             	
                
               
                celebritiesResponseJ = celebritiesReturnedObj;
                for ( i=0;i< celebritiesReturnedObj.length ; i++) {
                    
                    
                	celebritiesResponseJ[i].user_screen_name = celebritiesReturnedObj[i].user.screen_name;
                	celebritiesResponseJ[i].user_profile_image_url = celebritiesReturnedObj[i].user.profile_image_url;
                	celebritiesResponseJ[i].user_name = celebritiesReturnedObj[i].user.name;
                }
	          //  debugger;    	
        
               
                celebritiesJsonStore = new dojo.data.ItemFileReadStore({ data: { 'items' : celebritiesResponseJ }});
				
				var grid=dijit.byId("celebritiesGridNode");
				grid.setStore(celebritiesJsonStore);
				
        		
				getRateLimit();
				
             },
             error: handleError,
             content: {methodName: "getListStatus", methodArgs:[page_number] }
        }); 
        }
        
        function userSearch(userSearchQuery)
		{
		 //debugger;
		// console.debug("Inside search "  + userSearchQuery);
		
		dijit.byId('mainTabContainer').selectChild('tab10');
		 
		 if(userSearchQuery.indexOf("page=") < 0) 
		 {
		 	userSearchQuery = document.getElementById("searchBox").value;
		    
		 	if(userSearchQuery != "" && userSearchQuery != null)
			{
		 	
		 	  
		    		searchKey = userSearchQuery;
		    		searchKey = searchKey.replace(/#/g,"%23");
		    		searchKey = searchKey.replace(/:/g, "%3A");
		    		searchKey = searchKey.replace(/ /g, "+");
		    
		    		userSearchQuery = "?q=" + searchKey  +"+-arie&rpp=17"; 
		    		//console.debug("userSearch" + userSearchQuery);  
		 		   
		 		 
		 	} 
		 	else userSearchQuery =  "?q=india+-arie&rpp=17";
		 }                                                                                                                                                                                                                                                                                                                                                                                
		 dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (userSearchReturnedObj){
                userSearchResponseJ = { 'items' : userSearchReturnedObj.results };
                userSearchNextPageQuery = userSearchReturnedObj.next_page;
                userSearchPrevPageQuery = userSearchReturnedObj.previous_page;
                userSearchJsonStore = new dojo.data.ItemFileReadStore({ data: userSearchResponseJ });
				
				var grid=dijit.byId("userSearchGridNode");
				grid.setStore(userSearchJsonStore);
				document.getElementById("message").value="#india";
					
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[userSearchQuery] }
        }); 
        }
       
        function citySearch(value)
		{
	
		// debugger;
	
		// console.debug("Inside city search "  + citySearchQuery);
		 
		 
		 if(value.indexOf("page=") < 0) 
		 {
		 document.getElementById("message").value="#india";
		 
		 city=document.getElementById("City").value;
		 
		 
		 citySearchKey=document.getElementById("CitySearchKey").value;
		 
		 if(citySearchKey=="All")
		 	citySearchKey="";
		 else if(citySearchKey=="Rent")
		    citySearchKey="rent+OR+rental+OR+property";
		 else if(citySearchKey=="Sale")
		    citySearchKey="sale+OR+sell+OR+buy";
		  else if(citySearchKey=="Food")
		    citySearchKey="food+OR+restaurant+OR+eat+OR+eating";
		   else if(citySearchKey=="Entertainment")
		    citySearchKey="entertainment+OR+event+OR+nightlife+OR+party+OR+concert+OR+movie";
		  else if(citySearchKey=="Jobs")
		    citySearchKey="vacancy+OR+job+OR+jobs+OR+hiring+OR+recruit";
		  else if(citySearchKey=="Events")
		    citySearchKey="event+OR+party+OR+concert+OR+tweetup+OR+exhibition+OR+events";
		  else if(citySearchKey=="Tweetups")
		    citySearchKey="tweetup";
		  else if(citySearchKey=="Foursquare Checkins")
		    citySearchKey="at+"+city+"+source%3Afoursquare";
		
		 citySearchQuery = city + "+" + citySearchKey;
		 citySearchQuery = "?q=" + citySearchQuery +"&rpp=16"; 
		 }
		 
		 else citySearchQuery = value;
		
		// console.debug("citySearchQuery: " +  citySearchQuery);
		
		 	                                                                                                                                                                                                                                                                                                                                                                                             
		 dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (citySearchReturnedObj){
                citySearchResponseJ = { 'items' : citySearchReturnedObj.results };
                citySearchNextPageQuery = citySearchReturnedObj.next_page;
                citySearchPrevPageQuery = citySearchReturnedObj.previous_page;
                citySearchJsonStore = new dojo.data.ItemFileReadStore({ data: citySearchResponseJ });
				
				var grid=dijit.byId("citySearchGridNode");
				grid.setStore(citySearchJsonStore);
				
					
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[citySearchQuery] }
        }); 
        }
        
        
       
        function postToTwitter()
        {
            
        	//console.debug("Inside postToTwitter");
        	
           
        	var messageText = dojo.byId("message").value;
        	
		     dojo.xhrPost({
             url: "tweet.php",
             handleAs: "text",
             load: function (responseCode){
              
				if(responseCode == 200)
					document.getElementById('postSuccessful').style.display= '';
				
				
             },
             error: handleError,
             content: {message: messageText }
        }); 
        	
        }
        
        function deleteCookie ( cookie_name )
		{
  			var cookie_date = new Date ( );  // current date & time
  			cookie_date.setTime ( cookie_date.getTime() - 1 );
  			document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
		}
        	
        function logout()
        {
        	
        	deleteCookie("oauth_token");
        	deleteCookie("oauth_token_secret");
        	document.getElementById('signOut').style.display="none";
        	document.getElementById('signIn').style.display="";
        	document.getElementById('tweetBtnForShowLogin').style.display="";
        	document.getElementById('tweetBtnForPost').style.display="none";
       
            	
        	
        }
	   
	   function getRateLimit()
	   {
	      dojo.xhrGet({
	       url: "twitterRequestHandler.php",
	       handleAs: "json",
	       load: function (returnedStr)
	       {
	         
	       },
	       error: handleError,
	       content: {methodName: "rateLimit", methodArgs:["nothing"]}
	       });
	       
	   }
      function getUserInfo()
	  {
		// console.debug("Inside getUserInfo");
		 dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (userReturnedObj){
               user = "<a href=\"http://twitter.com/" + userReturnedObj["name"] + " style=\"text-decoration:none\"\">" + userReturnedObj["name"] + "</a>";
               dojo.byId("userInfo").innerHTML= user;
               userImage = "<img src=\"" + userReturnedObj["profile_image_url"] + "\" alt=\"Profile Image\" width='55' height='55'/>";
               dojo.byId("userImg").innerHTML= userImage;
              
             },
             error: handleError,
             content: {methodName: "showUser", methodArgs:["<?php echo $username ?>"] }
        }); 
        }
        
        function getUserImages()
		{
		// console.debug("Inside getuserimages");
		// debugger;
		 var imgs = "";
	
		 imgQuery = "india+OR+%23india+OR+%40boloindia+OR+%23cric+OR+%23bolly&rpp=40";                                                                                                                                                                                                                                                                                                                                                                                             
		 dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (imgReturnedObj){
               for(i=0;i<imgReturnedObj.results.length;i++) {
                    //check for unique user 
                    
                    img =  "<img src=\"" + imgReturnedObj.results[i].profile_image_url + "\" alt=\""+ imgReturnedObj.results[i].from_user + "\" width='35' height='35'/> ";
              		imgs+= "<a href=\"http://twitter.com/" + imgReturnedObj.results[i].from_user + "\">" + img + "</a>";                  
             		
               } 
               
               
              
                
				
             },
             error: handleError,
             content: {methodName: "search", methodArgs:[imgQuery] }
        }); 
        
        dojo.xhrGet({
             url: "twitterRequestHandler.php",
             handleAs: "json",
             load: function (returnedObj){
             //	debugger;
             	for(i=0;i<returnedObj.length;i++) {
             		//returnedObj[i].user_name = returnedObj[i].name;
                	//returnedObj[i].user_location = returnedObj[i].location;
                	//returnedObj[i].user_profile_image_url = returnedObj[i].profile_image_url;
                	 img =  "<img src=\"" + returnedObj[i].profile_image_url + "\" alt=\""+ returnedObj[i].screen_name + "\" width='35' height='35'/> ";
              		imgs+= "<a href=\"http://twitter.com/" + returnedObj[i].screen_name + "\">" + img + "</a>";                  
             		
               	} 
               	 dojo.byId("otherUsers").innerHTML= imgs;
                
             },
             error: handleError,
             content: {methodName: "friends", methodArgs:["boloindia"] }
        }); 
        }
       
		function handleError()
		{
			
		//	console.debug("handleError");
		}
		
		function formatImage(url){
		
		    
	           return "<div> <img src='" + url + "' alt='Profile Image' class=\"tweetImage\" /> </div>";
	          
		
		}
		
		function formatUserRestAPI(user,rowIndex)
		{
		    
			currentGrid = this.grid;
			userName = currentGrid.getItem(rowIndex).user_name;
			userScreenName = currentGrid.getItem(rowIndex).user_screen_name;
			return "<div class=\"tweetUser\"> <a href=\"http://twitter.com/" + userScreenName + "\" target=\"_blank\" style=\"text-decoration:none;color:#803600\">" + userName + "</a></div>";
		}
		
		
		function formatUser(user)
		{
		  
		  return "<div class=\"tweetUser\"> <a href=\"http://twitter.com/" + user + "\" target=\"_blank\" style=\"text-decoration:none;color:#803600\">" + user + "</a></div>";
		}
		
		function replyToUser(user)
		{ 
			document.getElementById("message").value="#india @" + user;
		
		}
		
		function retweetRestAPI(rowIndex)
		{ 
            
			retweetText = currentGrid.getItem(rowIndex).user_screen_name  + ' ' + currentGrid.getItem(rowIndex).text;
			document.getElementById("message").value="RT @" + retweetText;
			toCount('message','charCount','{CHAR}',140);
		
		}
		
		function retweet(rowIndex)
		{ 
        
			retweetText = currentGrid.getItem(rowIndex).from_user  + ' ' +  currentGrid.getItem(rowIndex).text;
			document.getElementById("message").value="RT @" + retweetText;
			toCount('message','charCount','{CHAR}',140);
		
		}
		function formatReply(user){
			   
		   
	        return "<input type=\"image\" src=\"images/box/arrow.gif\" height=\"28\" title=\"Reply to User\" onClick=\"replyToUser('" + user + "')\"/>";

		
		}
		function formatRetweet(user,rowIndex) {
			
			
		   currentGrid=this.grid;
		   return "<input type=\"image\" src=\"images/box/rt.gif\" height=\"28\" title=\"Retweet\" onClick=\"retweet("+ rowIndex+ ")\"/>";
		}
        function formatRetweetRestAPI(user,rowIndex) {
			
			
		   currentGrid=this.grid;
		   return "<input type=\"image\" src=\"images/box/rt.gif\" height=\"28\" title=\"Retweet\" onClick=\"retweetRestAPI("+ rowIndex+ ")\"/>";
		}
		
		

             function formatTime(timestamp){
             
       	     time=new Date(timestamp);
       	     dt=time.getDate();
       	     month=time.getMonth();
       	     hrs=time.getHours();
       	     mins = time.getMinutes();
       	     now = new Date();
       	     daysago = now.getDate()-dt;
       	     if(month == now.getMonth())
       	     {
       	     	if(daysago <= 7)
       	     		{ if(now.getDate()== dt)
       	     		 	return "<div id=\"timestamp\" class=\"tweetTime\">" + "Today at " + getFormattedTime(hrs,mins) + "</div>";
       	     		  else if(daysago == 1)
       	     		    return "<i> " + "Yesterday at " + getFormattedTime(hrs,mins)+ "</i> ";
       	     		  else return  "<i> " + daysago + " days ago at " + getFormattedTime(hrs,mins)+ "</i> ";
       	     		  
       	     		} else return  "<i> " + daysago + " days ago at " + getFormattedTime(hrs,mins)+ "</i> ";
       	     		
       	     }
       	     else
       	     return "<i> " + getMonthName(month) + " " + dt + " at " + getFormattedTime(hrs,mins) + "</i> " ;
       	     
       }
       function getFormattedTime(hrs,mins)
       {
       	    
       		if (hrs < 12)
   			{
   				a_p = "AM";
   			}
			else
   			{
   				a_p = "PM";
   			}
		 	if (hrs == 0)
   			{
   				hrs = 12;
  			}
			if (hrs > 12)
   			{
   				hrs = hrs - 12;
   			}
         if(mins < 10)
         	mins = "0" + mins;
		 return hrs + ":" + mins + " " + a_p;
       }
       function getMonthName(monthNum)
       {
       	  var m_names = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
          return m_names[monthNum];     	      		 
       	
       }
        
        function formatTweet(tweet)
        {  
        	//return tweet;
        	var formattedTweet = tweet;
        	
        	if(tweet.indexOf("http://")>=0)
        	 	formattedTweet = formatLinks(tweet);
        	//console.log("Inside formatTweet:" + formattedTweet);
        	
        	if(tweet.indexOf("@")>=0)
        	 	formattedTweet = formatUsers(formattedTweet);
        	 
        	return "<div class=\"tweetText\"> " + formattedTweet + "</div>";
        	
        }
        
        function formatLinks(tweet)
        {
        
        	var pos = tweet.indexOf("http://");
			if(pos>=0)
			{
 				var nextSpace = tweet.indexOf(" ",pos);
 				var link = "";
 				var remainingTweet =  "";
 				if(nextSpace<0)
  					link = tweet.substring(pos);
 				else 
 				{ 
   					link = tweet.substring(pos,nextSpace);
   					remainingTweet = tweet.substr(nextSpace);
 				}
			 var formattedTweet = tweet.substring(0,pos-1) + " <a href=\"" + link + "\" target=\"_blank\" style=\"text-decoration:none;color:#803600\">" + link + "</a> " + remainingTweet;
			 //console.log(formattedTweet);
   			 return formattedTweet;
   			 
			}
			else return tweet;
        }
        
        function formatTimeRestAPI(timestamp_str)
        { 
          year_end = timestamp_str.length;
			year_start= timestamp_str.length - 4;
			yr = timestamp_str.substr(year_start);

					//time_start_pos=timestamp_str.indexOf(":");
					time_start = timestamp_str.indexOf(":") - 2;
					
					str_last = timestamp_str.substring(time_start, year_start);
					str_first = timestamp_str.substring(0, time_start);
					
					str_changed= str_first + yr + ' ' +str_last;
					        
					           t = formatTime(str_changed);
					           return t;	
        }
        function formatUsers(tweet)
        {    
        	
        	var pos = tweet.indexOf("@");
			var formattedTweet = "";
			if(pos>=0)
			{
			while(pos>=0)
			{

				nextSpace = tweet.indexOf(" ",pos);
				var link = "";
				var remainingTweet =  "";
				if(nextSpace<0)
    				toUser = tweet.substring(pos+1);
				else 
 				{ 
   					toUser = tweet.substring(pos+1,nextSpace);
   					remainingTweet = tweet.substr(nextSpace);
 				}
 				toUser = toUser.replace(':','');
 				toUser = toUser.replace(')','');
			  	var tweetFrag = tweet.substring(0,pos-1) + " <a href=\"http://twitter.com/" + toUser + "\" target=\"_blank\" style=\"text-decoration:none;color:#803600\">@" + toUser + "</a> ";
				tweet=remainingTweet;
				pos = tweet.indexOf("@");
				formattedTweet+=tweetFrag; 
			}
			return formattedTweet + remainingTweet;
		}
		else return tweet;
        	
        }
        
        
       
function feedback()
        { 
         dijit.byId('feedbackDialog').show();
        }
	   
	  function about()
        { 
        aboutHTML = '<p><b>IndiaTweetz - Tweets and News about India powered by Twitter. </b> IndiaTweetz is a one stop portal for tapping the buzz in India by leveraging <a href="http://twitter.com"> Twitter </a> </p> <p>Twitter, the exponentially growing micro-blogging/social networking platform has more than 6 million unique monthly visitors ';
        aboutHTML += ' and 55 million monthly visits (via Wikipedia). In addition, India is in the top 5 countries by sheer number of twitter users, behind US, UK, Canada and Australia. <br/>';
        aboutHTML += ' Hence a lot of real time information and news about India is being tweeted and there are a lot of users who would want to tap that information from Twitter. ';
        aboutHTML += 'With a bunch of Indian celebrities and media jumping on to the Twitter bandwagon, <br/> conversations centered around India are becoming more and more interesting. <br/>';
        aboutHTML += 'We decided to leverage this wealth of tweets and present it in one place in an organized way. The tweets are grouped in different categories like Headlines, Cricket, Bollywood, Business, Politics, Technology, Jobs and Travel.';
        aboutHTML += 'You can also filter tweets by Cities and search for specific topics related to India. Additionally you can retweet or reply or even tweet from IndiaTweetz by signing in with Twitter.</br> </p>';
         aboutDialog = new dijit.Dialog({
      			title: "About",
      			content: aboutHTML,
      			style: "height:410px;width:500px"            
                
  			});
         aboutDialog.show();
        
        }
        function faq()
        { 
         dijit.byId('faqDialog').show();
        }
        function advertise()
        { 
         dijit.byId('advertiseDialog').show();
        }
        function volunteer()
        { 
         dijit.byId('volunteerDialog').show();
        }
	   
function showSubscriptionDialog()
{
	
	dijit.byId('emailSubscriptionDialog').show();
}

function showLoginDialog()
{
 dijit.byId('loginDialog').show();
}


function showFeedback()
{
 
 dijit.byId('feedbackDialog').show();
} 
function showFeedbackHideAd()
{
 dijit.byId('advertiseDialog').hide();
 dijit.byId('feedbackDialog').show();
}

function showFeedbackHideVol()
{
 dijit.byId('volunteerDialog').hide();
 dijit.byId('feedbackDialog').show();
}
