//不要領域(高) var marginHeight = window.outerHeight - window.innerHeight; //不要領域(幅) var marginWidth = window.outerWidth - window.innerWidth; function getRecData(){ if(play_unique_id != null){ jikan = 0; console.log("取得"); //再生用 $.ajax({ type: "get", url: "https://reliable-c.net/web_analyze/admin/movie?play_unique_id=" + play_unique_id + "&keika_idx=" + play_start_idx + "&callback=getsavedata", dataType: "jsonp", crossDomain: true, success:function(data){ console.log("取得成功"); play_start_idx = data.recdata[play_unique_id].finish_idx; fStart(data.recdata[play_unique_id]); } , error:function(){ alert("失敗"); allFinish(); } }); } } if(realtime == false){ play_start_idx = 0; getRecData(); //最初から再生 }else{ timing = 100; getRecData(); //本スクリプト表示時点における時間の5秒前のインデックス } function fStart(data){ if(typeof data === "undefined"){ alert("データがなかった"); return; } saveData = data.savedata; if(saveData != ""){ console.log(saveData); $("#saveData").val(saveData); //alert(saveData); } var splitData = saveData.split(":"); source = []; source[-1] = []; source[-1].Jikan = 0; source[-1].ScrollPosition = 0; source[-1].windowHeight = 0; source[-1].windowWidth = 0; source[-1].mouseX = 0; source[-1].mouseY = 0; source[-1].height = 0; idx[0]=0; setRecData(splitData); if(maxIdx[0] == -1){ allFinish(); return; } totalJikan = source[maxIdx[0]].Jikan; //最後の時間 現在時間がこれを超えたら再生終了。「最後まで」ボタンだと即時代入。 setMaxJikan(); //コントロールパネルに、最後の時間を表示 console.log("タイマースタート"); timecount(); //タイマースタート } function move(){ //ウィンドウ、マウス、スクロールの描画 if(typeof source[idx[0]] === "undefined"){ return false; }else{ data = source[idx[0]]; $("html,body").animate({scrollTop:data.ScrollPosition},{duration: timing,easing:"linear"}); //不要領域(高) //不要領域(幅) console.log(parseInt(data.windowWidth) + "/" + parseInt(data.windowHeight)); console.log(parseInt(data.windowWidth) + parseInt(marginWidth) + "/" + parseInt(data.windowHeight) + parseInt(marginHeight)); window.resizeTo(parseInt(data.windowWidth) + parseInt(marginWidth),parseInt(data.windowHeight) + parseInt(marginHeight)); if($("#pointer").attr("id") == undefined){ $("body").append(''); } $("#pointer").animate({top:(data.mouseY + data.ScrollPosition),left:data.mouseX},{duration: timing,easing:"linear"}); } } function setRecData(splitData){ maxIdx[0] = -1; $.each(splitData , function(i , val){ //iはsplitDataの添字そのもの。リアル再生の場合にもこの仕様を採用する。つまり新規データ取得ごとに添え字は0から始まりインクリメントしていく。 if(val == ""){ }else{ var splitValues = val.split("0"); source[i] = []; source[i].Jikan = source[i-1].Jikan + cipher(splitValues[0]); source[i].ScrollPosition = cipher(splitValues[1]); if(splitValues[1] == "") source[i].ScrollPosition = source[i-1].ScrollPosition; source[i].windowHeight = cipher(splitValues[2]); if(splitValues[2] == "") source[i].windowHeight = source[i-1].windowHeight; source[i].windowWidth = cipher(splitValues[3]); if(splitValues[3] == "") source[i].windowWidth = source[i-1].windowWidth; source[i].mouseX = cipher(splitValues[4]); if(splitValues[4] == "") source[i].mouseX = source[i-1].mouseX; source[i].mouseY = cipher(splitValues[5]); if(splitValues[5] == "") source[i].mouseY = source[i-1].mouseY; source[i].height = cipher(splitValues[6]); if(splitValues[6] == "") source[i].height = source[i-1].height; console.log(source[i]); maxIdx[0] = i; } }) } function timecount(){ console.log("timecount()の前"); if(pause == false){ console.log("timecount()の中"); ret = true; if(playMode == "front"){ if(jikan >= totalJikan){ // setTimeout(timecount,1 * timing); allFinish(); return; }else{ jikan = jikan + 5; $("#console_jikan").val(jikan); } } if(playMode == "back"){ if(jikan <= 0){ // setTimeout(timecount,1 * timing); allFinish(); return; }else{ jikan = jikan - 5; $("#console_jikan").val(jikan); } } setDigital(); if(source[idx[0]]){ //存在したら if(playMode == "front"){ if(idx[0] <= maxIdx[0]){ $("#next_jikan").val(source[idx[0]].Jikan); if(source[idx[0]].Jikan <= jikan){ ret = move(); if(idx[0] < maxIdx[0]) idx[0]++; } } }else{ if(idx[0] >= -1){ if(source[idx[0]].Jikan + 5 >= jikan){ ret = move(); if(idx[0] >= 0) idx[0]--; } } } }else{ //すべての再生が完了した allFinish(); return; } if(step){ pause = true; step = false } if(jikan <= 0 || jikan > totalJikan){ allFinish(); return; } } setTimeout(timecount,1 * timing); } function allFinish(){ if(realtime){ //3秒ごとに console.log("終了"); setTimeout(getRecData,3000); }else{ pause = true; } } function controlbutton_click(kubun){ if(kubun == "step"){ pause = false; step = true; } if(kubun == "rewind"){ $.each(idx , function(i , val){ idx[i]--; }) pause = false; if(playMode == "front"){ timing = 500; }else{ if(timing == 500){ timing = 100; }else{ if(timing == 100){ timing = 50; }else{ if(timing == 50){ timing = 1000; }else{ if(timing == 1000){ timing = 500; } } } } } playMode = "back"; } if(kubun == "pause"){ pause = true; } if(kubun == "play"){ pause = false; timing = 500; playMode = "front"; } if(kubun == "start"){ $.each(idx , function(i , val){ idx[i] = -1; }) if(rec_id_data != null && rec_id == null){ $.each(idx , function(i , val){ move_multi(i); }) }else{ move(); } jikan = 0; setDigital(); } if(kubun == "end"){ $.each(idx , function(i , val){ idx[i] = maxIdx[i]; }) if(rec_id_data != null && rec_id == null){ $.each(idx , function(i , val){ move_multi(i); }) }else{ move(); } jikan = totalJikan; setDigital(); } if(kubun == "fast"){ pause = false; if(timing == 500){ timing = 100; }else{ if(timing == 100){ timing = 50; }else{ if(timing == 50){ timing = 1000; }else{ if(timing == 1000){ timing = 500; } } } } playMode = "front"; } } function setMaxJikan(){ ms = secondTOhms(Math.floor((totalJikan + 1) / 10)); var number1 = ms.substring(0,1); var number2 = ms.substring(1,2); var number3 = ms.substring(2,3); var number4 = ms.substring(3,4); $("#max_digital_1").attr("src","https://reliable-c.net/web_analyze/resource/images/digital" + number1 + ".gif"); $("#max_digital_2").attr("src","https://reliable-c.net/web_analyze/resource/images/digital" + number2 + ".gif"); $("#max_digital_3").attr("src","https://reliable-c.net/web_analyze/resource/images/digital" + number3 + ".gif"); $("#max_digital_4").attr("src","https://reliable-c.net/web_analyze/resource/images/digital" + number4 + ".gif"); } function setDigital(){ if(playMode == "front"){ ms = secondTOhms(Math.floor(jikan / 10)); }else{ ms = secondTOhms(Math.ceil(jikan / 10)); } var number1 = ms.substring(0,1); var number2 = ms.substring(1,2); var number3 = ms.substring(2,3); var number4 = ms.substring(3,4); $("#digital_1").attr("src","https://reliable-c.net/web_analyze/resource/images/digital" + number1 + ".gif"); $("#digital_2").attr("src","https://reliable-c.net/web_analyze/resource/images/digital" + number2 + ".gif"); $("#digital_3").attr("src","https://reliable-c.net/web_analyze/resource/images/digital" + number3 + ".gif"); $("#digital_4").attr("src","https://reliable-c.net/web_analyze/resource/images/digital" + number4 + ".gif"); } if(mode == "play"){ if(realtime == false){ controlpanel_source = ''; controlpanel_source += '
'; controlpanel_source += ''; controlpanel_source += ''; controlpanel_source += ''; controlpanel_source += ''; controlpanel_source += '
'; controlpanel_source += ' '; controlpanel_source += ' '; controlpanel_source += ' '; controlpanel_source += ' '; controlpanel_source += ' '; controlpanel_source += ' '; controlpanel_source += ' '; controlpanel_source += ' '; controlpanel_source += ' '; controlpanel_source += ' '; controlpanel_source += ' '; controlpanel_source += '
'; controlpanel_source += '
'; controlpanel_source += '
'; controlpanel_source += '
'; controlpanel_source += '
'; $(document.body).append(controlpanel_source); } } if(mode == "setting" && false){ $.post("https://reliable-c.net/web_analyze/page_update", {url:location.href , mode:"get"}, function(data) { if(data.error){ }else{ if(data.important_page == "1"){ important_page_text = "重 要"; }else{ important_page_text = "一 般"; } if(data.landing_page == "1"){ landing_page_text = "販売ページ"; }else{ landing_page_text = "一 般"; } if(data.order_thanks_page == "1"){ order_thanks_page_text = "成 約"; }else{ order_thanks_page_text = "一 般"; } $(document.body).append('
重要:' + important_page_text + ' 販売:' + landing_page_text + ' 成約:' + order_thanks_page_text + '
'); $("#access_important_change").click(function(){ $.post("https://reliable-c.net/web_analyze/page_update", {url:location.href , mode:"important_page"}, function(data) { if(data.error){ }else{ if(data.important_page == "1"){ important_page_text = "重 要"; } if(data.important_page == "0"){ important_page_text = "一 般"; } $('#access_important_change').html(important_page_text) } }, 'json') }) $("#access_landing_change").click(function(){ $.post("https://reliable-c.net/web_analyze/page_update", {url:location.href , mode:"landing_page"}, function(data) { if(data.error){ }else{ if(data.landing_page == "1"){ landing_page_text = "販 売"; } if(data.landing_page == "0"){ landing_page_text = "一 般"; } $('#access_landing_change').html(landing_page_text) } }, 'json') }) $("#access_thanks_change").click(function(){ $.post("https://reliable-c.net/web_analyze/page_update", {url:location.href , mode:"order_thanks_page"}, function(data) { if(data.error){ }else{ if(data.order_thanks_page == "1"){ order_thanks_page_text = "成 約"; } if(data.order_thanks_page == "0"){ order_thanks_page_text = "一 般"; } $('#access_thanks_change').html(order_thanks_page_text) } }, 'json') }) } }, 'json') } $("#analyze_rec_play").click(function(){ var w = window.open(document.location + "?unique_id=" + uniqueID,"_blank","toolbar=no,titlebar=yes,status=no,scrollbars=yes,resizable=yes,menubar=no,location=no"); w.moveTo(0,0); w.resizeTo(screen.width,screen.height); }) function viewRealRec(){ var w = window.open(document.location + "?play_unique_id=" + uniqueID,"_blank","toolbar=no,titlebar=yes,status=no,scrollbars=yes,resizable=yes,menubar=no,location=no"); w.moveTo(0,0); w.resizeTo(screen.width,screen.height); } controlpanel_source = '
'; controlpanel_source += ''; controlpanel_source += ''; controlpanel_source += ''; controlpanel_source += '時間:'; controlpanel_source += '時間:'; controlpanel_source += '次:'; controlpanel_source += 'スクロール:'; controlpanel_source += 'マウスX:'; controlpanel_source += 'マウスY:'; controlpanel_source += '取得:'; controlpanel_source += '送信:'; controlpanel_source += '送信:'; controlpanel_source += ''; controlpanel_source += ''; controlpanel_source += '
'; $(document.body).append(controlpanel_source);