rhymix/modules/analytics/tpl/visit_info_visitTime.html
devjin 94ce97fdb6 Analytics Module 개발
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@7654 201d5d3c-b55e-5fd7-737f-ddc643e51545
2010-08-25 01:54:31 +00:00

152 lines
4.3 KiB
HTML

<!--#include('./visit_info_header.html')-->
<h3 class="xeAdmin"><span class="gray">{$lang->analytics_api_method[$method]}</span></h3>
<p>{$lang->about_analytics_method[$method]}</p>
<!--#include('./date_set_header.html')-->
<script type="text/javascript">
var oAnalyticsMethodDisableField = {
'visitTime':['day'],
'visitDay':['day'],
'visitBack':['site_id','day'],
'visitStayTime':['visit']};
var oAnalyticsMethodMainField = {
'visit':'day',
'visitPageView':'day',
'visitTime':'timezone',
'visitDay':'week',
'visitBack':'freq',
'visitStayTime':'day',
'visitPath':'day'};
</script>
<div>
{@$__url = getNotEncodedFullUrl('', 'module', 'analytics', 'act', 'dispAnalyticsAPIData', 'api_key', $api_key, 'method', $method, 'start_date', $start_date, 'end_date', $end_date)}
<script type="text/javascript">
var analyticsChartSWFURL = '';
var flashVars = '';
<!--@if($chart_type == 'line')-->
flashVars = "designURL=modules/analytics/tpl/images/xml/{$method}.xml&"+
"isScroll=true&"+
"dataURL="+encodeURIComponent("{$__url}");
analyticsChartSWFURL = "modules/analytics/tpl/images/WebLog.swf";
<!--@else if($chart_type == 'pie')-->
flashVars = "baseURL=modules/analytics/tpl/images/smRepoter/&" +
"dSet=01&" +
"gDataXML="+encodeURIComponent("{$__url}");
analyticsChartSWFURL = "modules/analytics/tpl/images/MainContainer.swf";
<!--@end-->
var obj = {};
obj.flashVars = flashVars;
obj.wmode = "transparent";
nhn.FlashObject.show(analyticsChartSWFURL, "{$method}", 700, 315, obj);
</script>
</div>
<div id="dataTable"></div>
{@$_t=$lang->analytics_api_valuname[$method];}
{@$_week_name = $lang->week_name;}
<script type="text/javascript">
var oAnalyticsValueName = {};
<!--@foreach($_t as $key => $val)-->
oAnalyticsValueName['{$key}'] = '{$val}';
<!--@end-->
var oAnalyticsWeekName = {};
<!--@foreach($_week_name as $key => $val)-->
oAnalyticsWeekName['{$key}'] = '{$val}';
<!--@end-->
var sAnalyticsTotal = '{$lang->sum_total}';
var sAnalyticsAfterDay = '{$lang->after_day}';
var sAnalyticsTableCaption = '{$lang->analytics_api_method[$method]} ' + '{$lang->detail_info}';
jQuery.getJSON('{$json_url}'
,function(data){
var aTableData = data.response.data;
if (!aTableData)
return;
var oSumData = {};
var aTableHead = [];
var aTableBody = [];
var table_tag;
var table_head;
var table_body;
var key;
var i;
var dataKey;
var nValue;
// table head생성
for(key in aTableData[0])
{
if (oAnalyticsMethodDisableField['{$method}'] && jQuery.inArray(key , oAnalyticsMethodDisableField['{$method}']) >= 0)
continue;
oSumData[key] = 0;
aTableHead.push(oAnalyticsValueName[key]);
}
table_head = '<thead><tr><th scope="col">' + aTableHead.join('</th><th scope="col">') +'</th></tr></thead>';
// table body생성
table_body = '<tbody>';
for(i = 0; i < aTableData.length; i++)
{
aTableBody = [];
for (dataKey in aTableData[i])
{
if (oAnalyticsMethodDisableField['{$method}'] && jQuery.inArray(dataKey , oAnalyticsMethodDisableField['{$method}']) >= 0)
continue;
nValue = aTableData[i][dataKey];
// 날짜형 데이터의 경우 parseFloat건너 뜀
if (nValue.indexOf('-') < 0)
{
nValue = parseFloat(nValue);
oSumData[dataKey] += nValue;
}
// 요일별 방문 분포의 경우
// 수치별 요일명을 노출하도록 함
if (dataKey == 'week')
{
nValue = oAnalyticsWeekName[nValue];
}
// 재방문 간격의 경우
// 몇일 후 데이터 표현을 위해 postFix를 붙인다.
else if (dataKey == 'freq')
{
nValue = nValue + sAnalyticsAfterDay;
}
aTableBody.push(nValue);
}
table_body += '<tr><td>' + aTableBody.join('</td><td>') + '</td></tr>'
}
aTableBody = [];
for (key in oSumData)
{
if (key == oAnalyticsMethodMainField['{$method}'])
{
aTableBody.push(sAnalyticsTotal);
}
else
{
aTableBody.push(oSumData[key]);
}
}
table_body += '<tr><td>' + aTableBody.join('</td><td>') + '</td></tr></tbody>';
table_tag = '<table cellspacing="0" class="rowTable"><caption>'+sAnalyticsTableCaption + '</caption>' + table_head + table_body + '</table>';
jQuery("#dataTable").html(table_tag);
}
);
</script>