
/*
 iNum 070716, dcinside corp.
 Mylog Manager
*/


function MylogManager(cName){

	if(cName==null || cName=="") return errorStr("클래스 초기화 오류입니다.");
	this._AJC = new AjaxClass(cName+"._AJC");

	var Status = {
		fileUpload : false,
		cid : null,
		page : null,
		listLoaded : false
	};
	var MCC; // MylogChildClass 
	var Obj = {
		mylogListObj : null,
		mylogListPagingObj : null
	};

	this.fileUpload = function(){
		if(Status.fileUpload) {
			alert("파일업로드 중입니다. 잠시만 기다려 주십시오.");
			//return true;
		}else{
//			ImgV.S_shadowOn();
			Status.fileUpload = true;
			return true;
		}

	}

	this.fileUploadDone = function(){
		if(Status.fileUpload) Status.fileUpload = false;
	}

	this.getMylogList = function(_MCC, cid, page){
		MCC = _MCC;

		if(MCC.Status.loaded && MCC.Status.page == page) {
			//alert(page + " / " +   MCC.Status.page);
			var GOBJ = MCC.getGEIDObj();
			disOn(GOBJ.vml);
			disOn(GOBJ.mlp);
			GOBJ.mlob.innerHTML = "<span style='cursor:pointer;' onClick='if(parent.Mlog!=null) parent.Mlog.closeMList();'>목록닫기</span>";
			return;
		}else{
			MCC.Status.loaded = false;
		}

		if(Status.cid == cid && page == '') {
//			cid = Status.cid;
			page = Status.page;
		}
		var query=[];
		query.push({name: "gid", value : G_ID});
		query.push({name: "mode", value:"MLOGLST"});
		query.push({name: "cid", value : cid});
		query.push({name: "page", value : page});
		this._AJC.getAHAHData("/ajdb.php", new Function(cName+".receive_getMylogList();"), query);
	}

	this.receive_getMylogList = function(){
		var dObj = convertFunc(this._AJC.getAHAH());
		var GOBJ = MCC.getGEIDObj();
		var str = [];
		var wd = 50;
		str.push("<table width=738 cellpadding=0 cellspacing=0 border=0>");
		var addHeight=0;
		if(dObj.result) {

			for(var i=0; i < dObj.data.data.length;i++) {
				var p = Number(dObj.data.total) - Number(URLdecode(dObj.data.data[i].seq, "URI")) +1;
				str.push("<tr onMouseOver='this.style.backgroundColor=\"#EEEEEE\";' onMouseOut='this.style.backgroundColor=\"#FFFFFF\";'>");
				if(i==0) wd = parseInt(dObj.data.data[i].seq.length) * 5;
				str.push("<td width="+wd+" height=23 style='padding-right:10px;' align=right>" + dObj.data.data[i].seq + "</td>");
				str.push("<td><span onClick='document.location.href=\"_mylog.php?gid="+G_ID+"&oneview=Y&cid="+dObj.data.cid+"&page="+p+"\";' style='cursor:pointer;'>" + URLdecode(dObj.data.data[i].subject, "URI") + "</span></td>");
				str.push("<td width=100>" + URLdecode(dObj.data.data[i].write_time, "URI").substring(0, 10) + "</td>");
				str.push("</tr>");
				addHeight+=23;

			}
		}
		str.push("</table>");

		//Paging
		var start  = dObj.data.start;
		var last   = dObj.data.last;
		var listView = dObj.data.listView;
		var total  = dObj.data.total;
		var maxPage = dObj.data.maxPage;
		var curPage = dObj.data.curPage;
		//startPage

		var startPage = parseInt(curPage / 10) + 1;
		var lastPage=startPage;
		if(maxPage > parseInt(startPage+9)) lastPage = parseInt(startPage+9);
		else lastPage = maxPage;

		var cid = dObj.data.cid;
		Status.cid = cid;
		Status.page = curPage;
		MCC.Status.cid = cid;
		MCC.Status.page = curPage;
		var lstStr = [];
		//var curPage = start +1;
		//alert( maxPage);
		for(var i=startPage; i <= lastPage; i++) {
			if(i==startPage && i > listView) lstStr.push("<b><span style='cursor:pointer;' onClick='parent.Mlog.getMylogList(MCC, \""+cid+"\", \""+(i-1)+"\");'>◀</span></b>");
			if(i == curPage) lstStr.push("<b>" + i + "</b>");
			else lstStr.push("<span style='cursor:pointer;' onClick='parent.Mlog.getMylogList(MCC, \""+cid+"\", \""+i+"\");'>" + i + "</span>");
			if(i==lastPage && i < maxPage) lstStr.push("<b><span style='cursor:pointer;' onClick='parent.Mlog.getMylogList(MCC, \""+cid+"\", \""+(i+1)+"\");'>▶</span></b>");
		}

		if(lstStr.length > 0 ) GOBJ.mlp.innerHTML = lstStr.join("&nbsp;");
		else  GOBJ.mlp.innerHTML = "";

		GOBJ.vml.innerHTML = str.join("");
		disOn(GOBJ.vml);
		MCC.resetHeight();
		GOBJ.mlob.innerHTML = "<span style='cursor:pointer;' onClick='if(parent.Mlog!=null) parent.Mlog.closeMList();'>목록닫기</span>";
		MCC.Status.loaded=true;
	}

	this.closeMList = function(){
		var GOBJ = MCC.getGEIDObj();
		disOff(GOBJ.mlp);
		disOff(GOBJ.vml);
		GOBJ.mlob.innerHTML = "<span id='mylogListOpenBut' style='cursor:pointer;' onClick=\"if(parent.Mlog!=null) parent.Mlog.getMylogList(MCC, '"+MCC.Status.cid+"', '"+MCC.Status.page+"');\">목록열기</span>";
	};


}
