// JavaScript Document


////////////////////////////////////////////////////////////////////////////////
/// 汎用初期設定（グローバル）
////////////////////////////////////////////////////////////////////////////////

/*
出力ブロック
----------------------------------------------------------------------*/
var newsBlk04='.newsArea4Set01';

/*
デフォルトカテゴリ名
----------------------------------------------------------------------*/
var nameCDef04=nameCRec;

/*
デフォルトデータファイルパス
----------------------------------------------------------------------*/
var newsDef04=newsRec;

/*
デフォルトサムネイルパス
----------------------------------------------------------------------*/
var iconDef04=iconRec;


////////////////////////////////////////////////////////////////////////////////
/// 取得
////////////////////////////////////////////////////////////////////////////////

var inputNewsData04=function(path){
	$.ajax({
		url:path,
		type:"post",
		dataType:"json",
		error:iError04,
		success:iSuccess04
	});
}
var iError04=function(){
	//alert('カテゴリ取得エラー');
}
var iSuccess04=function(data){
	outputNewsData04(data);
}


////////////////////////////////////////////////////////////////////////////////
/// 出力
////////////////////////////////////////////////////////////////////////////////

var nInd=0;
arr=[];
arrNew=[];
var outputNewsData04=function(data){
	arr=makeNewsArr04(data);
	switch(nInd){
		case 0:{
			arrNew=arr;
			inputNewsData04(newsBiz);
			nInd++;
			break;
		}
		case 1:{
			arrNew=arrNew.concat(arr);
			inputNewsData04(newsEng);
			nInd++;
			break;
		}
		case 2:{
			arrNew=arrNew.concat(arr);
			inputNewsData04(newsTnk);
			nInd++;
			break;
		}
		case 3:{
			arrNew=arrNew.concat(arr);
			arrNew.sort().reverse();
			var src=makeNewsSrc04(arrNew);
			outputNewsSrc04(src);
			nInd=0;
		}
	}
}

/*
配列
----------------------------------------------------------------------*/
var nAInd=0;
var makeNewsArr04=function(data){
	arr=[];
	$(data.entry).each(function(){
		var i=$(data.entry).index(this);
		var dtStr=this.created;
		var date=dtStr.slice(0,dtStr.indexOf('T')).replace(/-/g,'/');
		var date2=Number(date.slice(date.indexOf('/')+1,date.lastIndexOf('/')))+'/'+Number(date.slice(date.lastIndexOf('/')+1,date.length));
		var time=dtStr.slice(dtStr.indexOf('T')+1,dtStr.indexOf('+'));
		var time2=time.slice(0,time.indexOf(':'))+':'+time.slice(time.indexOf(':')+1,time.lastIndexOf(':'));
		var sortDt=(nUaIE)?date+':'+time:date+'/'+time;
		if( this.user.displayName == "mixi 人事" ){
			arr[i]=[
				Date.parse(sortDt),//0
				this.body,//1
				date2+'&nbsp;&nbsp;'+time2,//2
				this.contentUri,//3
				//this.images[0].small,//4
				"/common/img/icon_feed_rec_pc.gif",//4
				(nAInd)?((nAInd==1)?nameCBiz:((nAInd==2)?nameCEng:nameCTnk)):nameCDef04,//5
				(nAInd)?((nAInd==1)?iconBiz:((nAInd==2)?iconEng:iconTnk)):iconDef04//6
			];
		}else{
			arr[i]=[
				Date.parse(sortDt),//0
				this.user.displayName,//1
				date2+'&nbsp;&nbsp;'+time2,//2
				this.contentUri,//3
				//this.images[0].small,//4
				"/common/img/icon_feed_eng_pc.gif",//4
				(nAInd)?((nAInd==1)?nameCBiz:((nAInd==2)?nameCEng:nameCTnk)):nameCDef04,//5
				(nAInd)?((nAInd==1)?iconBiz:((nAInd==2)?iconEng:iconTnk)):iconDef04//6
			];
		}
	});
	(nAInd>2)?nAInd=0:nAInd++;
	return arr;
}


/*
生成
----------------------------------------------------------------------*/
var makeNewsSrc04=function(arr){
	var src='',i=0;
	src+='\n<div class="topFeedTi">\n';
	src+='<h2><span class="altT">新着フィード</span></h2>\n';
	src+='</div>\n';
	src+='<ul class="topFeedData">\n';
	$(arr).each(function(){
		var obj=this;
		src+='\n';
		src+='<li class="clrF">\n';
		src+='<p class="topFeedDImg"><a href="'+obj[3]+'" target="_blank"><img src="';
		if(obj[4]!='') src+=obj[4];
		else src+=obj[6];
		src+='" alt="'+obj[5]+'" width="38" /></a></p>\n';
		src+='<div class="topFeedDTxt">\n';
		src+='<p><span class="fwBld">'+obj[5]+'：</span>';
		src+='<a href="'+obj[3]+'" class="ml3" target="_blank"><span class="txtCut74">'+obj[1]+'</span></a></p>\n';
		src+='<p>'+obj[2]+'</p>\n</div>\n</li>\n';
		i++;
		if(i>=4) return false;
	});
	src+='</ul><!--/.topFeedData-->\n';
	return src;
}

/*
出力
----------------------------------------------------------------------*/
var outputNewsSrc04=function(src){
	$(newsBlk04).html(src);
	txtCut();
	if(!nUaSPTABIE7) inputNewsData01(newsDef01);
}


////////////////////////////////////////////////////////////////////////////////
/// テキスト長制御
////////////////////////////////////////////////////////////////////////////////

var txtCut=function(){
	var connect='...',tnSpan=$('span');
	strName=new Array();txSpan=new Array();
	tnSpan.each(function(){
		var tItm=$(this),i=tnSpan.index(this);
		if(tItm.attr('class')){
			var cnClass=tItm.attr('class');
			txSpan[i]=tItm.text();strName[i]='';
			if(cnClass.indexOf('txtCut')!=-1){
				var lim=eval(cnClass.slice('txtCut'.length,cnClass.length));
				for(var j=0;j<txSpan[i].length;j++){
					var len=cnLen(strName[i]).length;
					len=(cnLen(strName[i]).flag)?len:len/1.5;
					if(len<lim){strName[i]+=txSpan[i].slice(j,j+1);}
					else{strName[i]+=connect;break;}
				}
				tItm.html(strName[i]);
			}
		}
	});
}
var cnLen=function(str){
	var r=0,f=0;
	for(var i=0;i<str.length;i++){
		var c=str.charCodeAt(i);
		if((c>=0x0&&c<0x81)||(c==0xf8f0)||(c>=0xff61&&c<0xffa0)||(c>=0xf8f1&&c<0xf8f4)){
			r+=1;f=1;
		}
		else r+=2;
	}
	return {length:r,flag:f};
}
























