

/*
	削除する
*/
function callbackDelete(json){
	if(! json["screen_name"]){ return; }
	$.cookie("TWTV_SCREEN_NAME",json["screen_name"],{path:'/'});
	$.cookie("TWTV_PROFILE_IMAGE_URL",json["profile_image_url"],{path:'/'});

	deleteTweet(json);
}


/*
	ログイン後
*/
function callbackLogin(json){
	if(! json["screen_name"]){ return; }
	$.cookie("TWTV_SCREEN_NAME",json["screen_name"],{path:'/'});
	$.cookie("TWTV_PROFILE_IMAGE_URL",json["profile_image_url"],{path:'/'});

	var boxName = 'boxLogin';
	$('#'+boxName+' .boxInner').eq(0).css("display","none");
	$('#'+boxName+' .boxInner').eq(1).css("display","block");
}

/*
	オフィシャルアカウントをフォローする
*/
function callbackOfficialFollow(json){
	if(isNgAccount){ return; }
	if(! json["screen_name"]){ return; }
	$.cookie("TWTV_SCREEN_NAME",json["screen_name"],{path:'/'});
	$.cookie("TWTV_PROFILE_IMAGE_URL",json["profile_image_url"],{path:'/'});

	var officialAccountName = 'twtv_info';
	TwitterAPI.base = 'https://twitter.com/';
	TwitterAPI.friendships.create('',officialAccountName);



	// フォローとは時間差でつぶやき送信

	$.timer(1800, function (timer) {
    	timer.stop();
	　　var status = 'ツイテレオフィシャルアカウントをフォローしました。http://twtv.jp/';
		TwitterAPI.base = 'https://twitter.com/';
		TwitterAPI.statuses.update(status);
	});

	var boxName = 'boxOfficialFollow';
	$('#'+boxName+' .boxInner').eq(0).css("display","none");
	$('#'+boxName+' .boxInner').eq(1).css("display","block");

}




/*
	チャンネルアカウントをフォローする
*/
function callbackFollow(json){
	if(isNgAccount){ return; }
	if(! json["screen_name"]){ return; }
	$.cookie("TWTV_SCREEN_NAME",json["screen_name"],{path:'/'});
	$.cookie("TWTV_PROFILE_IMAGE_URL",json["profile_image_url"],{path:'/'});

	var chAccountName = $("body").attr("id");
	TwitterAPI.base = 'https://twitter.com/';
	TwitterAPI.friendships.create('',chAccountName);

	var chName;

	switch(chAccountName){
	case 'nhk_twtv':
		chName = 'ＮＨＫ総合';
		break;
	case 'etv_twtv':
		chName = 'ＮＨＫ教育';
		break;
	case 'ntv_twtv':
		chName = '日本テレビ';
		break;
	case 'tv_asahi_twtv':
		chName = 'テレビ朝日';
		break;
	case 'tbs_twtv':
		chName = 'ＴＢＳ';
		break;
	case 'tv_tokyo_twtv':
		chName = 'テレビ東京';
		break;
	case 'fujitv_twtv':
		chName = 'フジテレビ';
		break;
	}

	// フォローとは時間差でつぶやき送信

	$.timer(1800, function (timer) {
    	timer.stop();
	　　var status = 'ツイテレ '+chName+' をフォローしました。http://twtv.jp/';
		TwitterAPI.base = 'https://twitter.com/';
		TwitterAPI.statuses.update(status);
		//placeOnTwtvTimeline(json,status);
	});

	var boxName = 'boxFollow';
	$('#'+boxName+' .boxInner').eq(0).css("display","none");
	$('#'+boxName+' .boxInner').eq(1).css("display","block");

}


/*
	友達に教える つぶやく
*/
function callbackTellFriend(json){
	if(isNgAccount){ return; }
	if(! json["screen_name"]){ return; }
	$.cookie("TWTV_SCREEN_NAME",json["screen_name"],{path:'/'});
	$.cookie("TWTV_PROFILE_IMAGE_URL",json["profile_image_url"],{path:'/'});

	var chAccountName = $("body").attr("id");
	var chName;

	switch(chAccountName){
	case 'nhk_twtv':
		chName = 'ＮＨＫ総合';
		break;
	case 'etv_twtv':
		chName = 'ＮＨＫ教育';
		break;
	case 'ntv_twtv':
		chName = '日本テレビ';
		break;
	case 'tv_asahi_twtv':
		chName = 'テレビ朝日';
		break;
	case 'tbs_twtv':
		chName = 'ＴＢＳ';
		break;
	case 'tv_tokyo_twtv':
		chName = 'テレビ東京';
		break;
	case 'fujitv_twtv':
		chName = 'フジテレビ';
		break;
	}

	var status = '今、'+chName+'観てる、なう。　 http://twtv.jp/';
	TwitterAPI.base = 'https://twitter.com/';
	TwitterAPI.statuses.update(status);

	placeOnTwtvTimeline(json,status);

	var boxName = 'boxTellFriend';
	$('#'+boxName+' .boxInner').eq(0).css("display","none");
	$('#'+boxName+' .boxInner').eq(1).css("display","block");

}


/*
	友達に教える メール
*/
function callbackMail(json){
	if(isNgAccount){ return; }
	if(! json["screen_name"]){ return; }
	$.cookie("TWTV_SCREEN_NAME",json["screen_name"],{path:'/'});
	$.cookie("TWTV_PROFILE_IMAGE_URL",json["profile_image_url"],{path:'/'});

	var chAccountName = $("body").attr("id");
	$("#boxMail form input[name='chAccountName']").val(chAccountName);
	$("#boxMail form input[name='username']").val(json["screen_name"]);

	var formData = $("#boxMail form").serialize();

 	var httpObj = $.post('/system/mailto.php', formData, function(data,status) {
		var boxName = 'boxMail';
		$('#'+boxName+' .boxInner').eq(0).css("display","none");
		$('#'+boxName+' .boxInner').eq(1).css("display","block");

		$("#boxMail form input[name='chAccountName']").val("");
		$("#boxMail form input[name='username']").val("");
		$("#boxMail form input[name='email']").val("");
    });
}


/*
	つぶやきをタイムライン上に配置する。
*/
function placeOnTwtvTimeline(json,status){
	status = status.replace(/</g,"&lt;");
	status = status.replace(/>/g,"&gt;");

	var d = new Date();
	var created_at = convert_tweet_created_at(d.getTime()-1000);
	var tw = [];
	tw["id"] = '';
	tw["from_user"] = json["screen_name"];
	tw["profile_image_url"] = (json["profile_image_url"])? json["profile_image_url"]:'/assets/images/default_profile_3_normal.png';
	tw["timestamp"] = d.getTime();
	tw["created_at"] = created_at;
	tw["text"] = status;
	tw["source"] = '<a href="http://twtv.jp/" target="_blank">ツイテレ</a>';

	var liTag = getTweetLiTag(tw);
	$('#scrollList').prepend(liTag);
	$(liTag).show("slow",function(){
	});
}


/*
	つぶやく
*/
function callbackPost(json){
	if(isNgAccount){ return; }

	if(! json["screen_name"]){ return; }
	$.cookie("TWTV_SCREEN_NAME",json["screen_name"],{path:'/'});
	$.cookie("TWTV_PROFILE_IMAGE_URL",json["profile_image_url"],{path:'/'});

	var chAccountName = $("body").attr("id");
	var maxLen = 115;
	var status   = $("#tweetPost textarea").val();
	if(maxLen < status.length){
		status = status.substr(0,maxLen);
	}
	
	status += ' @'+chAccountName+' #'+chAccountName.replace(/_twtv/,"");

	var i;
	for(i=0;i<ngWords.length;i++){
		var re = new RegExp(ngWords[i],"");
		status = status.replace(re,"****");
	}

	TwitterAPI.base = 'https://twitter.com/';
	TwitterAPI.statuses.update(status);
	$('#TwiterAPIForm').attr("action",'http://twitter.com/statuses/update.xml');

	// 投稿内容を即反映
	placeOnTwtvTimeline(json,$("#tweetPost textarea").val());
	$("#tweetPost textarea").val("");
	$('#charCounter').html(115);

	var boxName = 'boxPost';
	$('#'+boxName+' .boxInner').eq(0).css("display","none");
	$('#'+boxName+' .boxInner').eq(1).css("display","block");

	// 完了画面
	if('block' == $('#'+boxName+'').css("display")){
		showOverlay();
		setBox(boxName);
	}
}



/*
	各ログインフォームからの処理時に、
　　verify_credentialsでアカウントを確認する
*/
function verifyCredentialsTwitter(boxName,callbackFunc){
	if(boxName != 'boxLogin'){
		if($.cookie("TWTV_SCREEN_NAME") && $.cookie("TWTV_PROFILE_IMAGE_URL")){
			var json = {screen_name:$.cookie("TWTV_SCREEN_NAME"),profile_image_url:$.cookie("TWTV_PROFILE_IMAGE_URL")};
			callbackFunc(json);
			return;
		}
	}


	var url = '';
	if((! ((navigator.userAgent.indexOf("MSIE") != -1)||(navigator.userAgent.indexOf("Safari") != -1)))||(navigator.userAgent.indexOf("Chrome") != -1)){
		var username = $("#"+boxName+" input[name='username']").val(); // username or email
		var password = $("#"+boxName+" input[name='password']").val();
		username = encodeURIComponent(username);
		password = encodeURIComponent(password);
		url = 'https://'+username+':'+password+'@twitter.com/account/verify_credentials.json?callback=?';
	}else{
		url = 'https://twitter.com/account/verify_credentials.json?callback=?';
	}

	$.getJSON(url, callbackFunc);

	return false;
}





