var kc;

var entry_tmpl = '<div class="section kuchikomiDetail"><div class="status">';
entry_tmpl += '<div class="author">{$T[0]}</div>';
entry_tmpl += '<div class="evaluation">総合評価 ：<span class="p-hoshi">{$P.star}</span><span class="p-tensu">{$P.avg}</span></div>';
entry_tmpl += '<div class="evaluationDetail">（ 説明{$P.estimate[0]}／回答{$P.estimate[1]}／資料{$P.estimate[2]}／知識{$P.estimate[3]}／心遣い{$P.estimate[4]} ）</div>';
entry_tmpl += '</div>';
entry_tmpl += '<p>{$T[3]}</p>';
entry_tmpl += '</div><!-- END:section -->';

//もっと見るボタン
btn_more_tmpl = '<a onclick="kc.pulldownRun();" href="javascript:void(0)"><img src="img/btn_more_off.gif" alt="もっとクチコミを見る" /></a>';

//トップへ戻るボタン
btn_top_tmpl = '';


kc_start_num = 5;
//初期設定
function createModelData(arr){
	
	//alert(entryArr)
	var obj = {
		kc_name : "保賢人",
		kc_words : "",
		kc_pulldown: 1,
		kc_pulldown_entry_num : 5,
		kc_pulldown_entry_num_start: kc_start_num,
		kc_entries : arr
	}
	
	kc = new CommentPublish({
		model: new KcModel(obj),
		entry_area: "box-kutikomi",
		btn_more: "kutikomi-btn",
		tmpls : getTmpl()
	});
	
	kc.setKC();
	$('body').trigger('updateKc');
}

//クチコミ用テンプレート（変更可）
function getTmpl() {
	return {
		kc_entry_tmpl : $.createTemplate(entry_tmpl),
		kc_entry_date_tmpl : $.createTemplate('{$T[1]}.{$T[2]}.{$T[3]}'),
		kc_pulldown_addHTML_more : btn_more_tmpl,
		kc_pulldown_addHTML_top : btn_top_tmpl
	}
}

function kuchikomiInit(json) {
	var totalEstimate = [0,0,0,0,0];
	
	
	
	if(!Boolean(json.comments)){
		$('.kuti').remove();
		return;
	}
	//json.comments.pop();
    var entryArr = new Array();
    for(var i = 0; i < json.comments.length; i++){
      var com = json.comments[i];
      entryArr.push(createEntryData(com));
    }
    createModelData(entryArr);
}

function createEntryData(com) {
	//kc_entryの作成
    var tit = com.name + " | " + com.age + " | " + com.sex;
    var date = com.date.replace(/(\/|\.)/g, "-") + "T00:00:00Z";
    var avg = 0;
    for(var h = 0; h < com.estimate.length; h++){
        avg += Number(com.estimate[h]);
    }
    avg = Math.round(avg / com.estimate.length * 10) / 10;
    
    var star = getStar(avg);
    avg = Math.round(avg) == avg ? avg + ".0" : avg;
    
    return [tit, "#", date, com.body, 1, {star:star, avg:avg, estimate:com.estimate}, com.adviser];
}


//KcPublishの拡張クラス
function CommentPublish(obj) {
	KcPublish.call(this, obj);
	
	this.attachOldEntryTmpl = this.attachEntryTmpl;
	
	this.attachEntryTmpl = function (entry, id){
		var dat = this.attachOldEntryTmpl(entry, id);
		
		dat[1].star = entry[5].star;
		dat[1].avg = entry[5].avg;
		dat[1].estimate = entry[5].estimate;
		return dat;
	};
	
	this.prePulldownRun = this.pulldownRun;
	this.pulldownRun = function(){
		this.prePulldownRun();
		$('body').trigger('updateKc');
	}
}

//★獲得
function getStar(n){
	var star = ["☆","☆","☆","☆","☆"];
	for(var h = 0; h < Math.floor(n); h++){
		star[h] = "★";
	}
	return star.join("");
}

//都道府県画像
function getPrefecturesImage(str) {
	
	str = str.replace(/(県|府)/,'')
	var a = '';
	switch(str){
	
	case '北海道':
	  a = 'hokkaido';
	  break;
	case '青森':
	  a = 'aomori';
	  break;
	case '岩手':
	  a = 'iwate';
	  break;
	case '宮城':
	  a = 'miyagi';
	  break;
	case '秋田':
	  a = 'akita';
	  break;
	case '山形':
	  a = 'yamagata';
	  break;
	case '福島':
	  a = 'fukushima';
	  break;
	case '茨城':
	  a = 'ibaraki';
	  break;
	case '栃木':
	  a = 'tochigi';
	  break;
	case '群馬':
	  a = 'gunma';
	  break;
	case '埼玉':
	  a = 'saitama';
	  break;
	case '千葉':
	  a = 'chiba';
	  break;
	case '東京':
	  a = 'tokyo';
	  break;
	case '神奈川':
	  a = 'kanagawa';
	  break;
	case '新潟':
	  a = 'niigata';
	  break;
	case '富山':
	  a = 'toyama';
	  break;
	case '石川':
	  a = 'ishikawa';
	  break;
	case '福井':
	  a = 'fukui';
	  break;
	case '山梨':
	  a = 'yamanashi';
	  break;
	case '長野':
	  a = 'nagano';
	  break;
	case '岐阜':
	  a = 'gifu';
	  break;
	case '静岡':
	  a = 'shizuoka';
	  break;
	case '愛知':
	  a = 'aichi';
	  break;
	case '三重':
	  a = 'mie';
	  break;
	case '滋賀':
	  a = 'shiga';
	  break;
	case '京都':
	  a = 'kyoto';
	  break;
	case '大阪':
	  a = 'osaka';
	  break;
	case '兵庫':
	  a = 'hyogo';
	  break;
	case '奈良':
	  a = 'nara';
	  break;
	case '和歌山':
	  a = 'wakayama';
	  break;
	case '鳥取':
	  a = 'tottori';
	  break;
	case '島根':
	  a = 'shimane';
	  break;
	case '岡山':
	  a = 'okayama';
	  break;
	case '広島':
	  a = 'hiroshima';
	  break;
	case '山口':
	  a = 'yamaguchi';
	  break;
	case '徳島':
	  a = 'tokushima';
	  break;
	case '香川':
	  a = 'kagawa';
	  break;
	case '愛媛':
	  a = 'ehime';
	  break;
	case '高知':
	  a = 'kochi';
	  break;
	case '福岡':
	  a = 'fukuoka';
	  break;
	case '佐賀':
	  a = 'saga';
	  break;
	case '長崎':
	  a = 'nagasaki';
	  break;
	case '熊本':
	  a = 'kumamoto';
	  break;
	case '大分':
	  a = 'oita';
	  break;
	case '宮崎':
	  a = 'miyazaki';
	  break;
	case '鹿児島':
	  a = 'kagoshima';
	  break;
	case '沖縄':
	  a = 'okinawa';
	  break;
	};
	
	return '<img src="'+ROOT+'images/icon_'+a+'.gif" width="45" height="20" alt="'+str+'" />';
}
