Untitled
unknown
html
2 years ago
19 kB
7
Indexable
<script> $(document).ready(function() { var videoInterval = 10; var videoStatus = {}; function gtmEventCall(e, c, a, l, v, i, s) { dataLayer.push({ event: e, //category: c, //action: a, video_name: l, video_elapsed_time: v, video_link: i, videoSource: s, }); } function getTitles(videoSrc, videoLoc) { if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/635983894/rendition/1080p/file.mp4?loc=external&signature=9652911bd6ce7ad4ac7f48720f5ef59d9d94b4969e49b735b246314e822d659b" && videoLoc == "/myelofibrosis-mf") return "performs spleen assessment at baseline and consistently throughout management as part of his patient care"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/635983894/rendition/1080p/file.mp4?loc=external&signature=9652911bd6ce7ad4ac7f48720f5ef59d9d94b4969e49b735b246314e822d659b" && videoLoc == "/myelofibrosis-mf/spleen-assessment") return "on how spleen assessment is a marker of disease progression in patients with myelofibrosis and see his technique for assessment"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/635983894/rendition/1080p/file.mp4?loc=external&signature=9652911bd6ce7ad4ac7f48720f5ef59d9d94b4969e49b735b246314e822d659b" && videoLoc == "/myelofibrosis-mf/resources") return "proactive spleen assessment in patients with myelofibrosis"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/659335151/rendition/1080p/file.mp4?loc=external&signature=a0840a4eb37fc80dac0fcc56c54e1fd3ac25db00c9ffa5843bd9bcb61dc29433" && videoLoc == "/polycythemia-vera-pv") return "characteristics that indicate advanced polycythemia vera (pv)"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/659335151/rendition/1080p/file.mp4?loc=external&signature=a0840a4eb37fc80dac0fcc56c54e1fd3ac25db00c9ffa5843bd9bcb61dc29433" && videoLoc == "/polycythemia-vera-pv/resources") return "identifying patients with advanced pv"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/662520193/rendition/1080p/file.mp4?loc=external&signature=8efe6d9fb1ae9ae020111711fe90bead6901183971091b855c8c3888ad23f26b" && videoLoc == "/polycythemia-vera-pv/symptoms") return "30 nights spent sweating since dave's last pv appointment"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/680290801/rendition/1080p?loc=external&signature=fdbb568d69cbe71bb0bff55e9605f95a3ba44c765c58078030b6bd51722a1b9f" && videoLoc == "/polycythemia-vera-pv/symptoms") return "36 days of itching since julie's last pv appointment"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/664120868/rendition/1080p/file.mp4?loc=external&signature=27a0637a03047549183fed5ff59f4ca9aef51480fd4a52865eb6fc7cdb438773" && videoLoc == "/polycythemia-vera-pv/symptoms") return "40 days lost to fatigue since nick's last pv appointment"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/659338062/rendition/1080p/file.mp4?loc=external&signature=91235a6f79485f5ffa77137b624bb5361af319aca258ad989bd57793e5c23e73" && videoLoc == "/polycythemia-vera-pv/symptoms") return "about the importance of looking beyond blood counts and actively monitoring pv symptoms"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/659339141/rendition/1080p/file.mp4?loc=external&signature=0a20f2e5beb8d2460a9ae1ddd85ada13361eddd5a2fe6d6648b34b03fe83cc72" && videoLoc == "/polycythemia-vera-pv/symptoms") return "investigating the causes of increased symptom burden in patient with pv, including looking at blood counts and current treatment"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/664120352/rendition/1080p/file.mp4?loc=external&signature=459ede07f2117f519d3838a134dc7067851d744bdd41016fed6244f69df6dae1" && videoLoc == "/polycythemia-vera-pv/resources") return "managing white blood cell counts in patients with pv"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/771450901/rendition/1080p/file.mp4?loc=external&signature=f3e403d7c64339174600500eecc18a0020818ac1006acaecf57229a33159869f" && videoLoc == "/polycythemia-vera-pv/resources") return "symptoms of pv: identification and classification"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/656960026/rendition/1080p/file.mp4?loc=external&signature=8cbfad2c756d09e88d3db6274f58bb70d4cdc9695ba462d02d24ca919060c6aa" && videoLoc == "/polycythemia-vera-pv/resources") return "why we need to assess symptoms in our patients"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/664120997/rendition/1080p/file.mp4?loc=external&signature=65691e71db44ca80bcdefcf84bdec526c72c5639d88fe03569971c276a6fadcf" && videoLoc == "/polycythemia-vera-pv/resources") return "hematocrit control <45% and risk of thrombosis in patients with pv"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/664120713/rendition/1080p/file.mp4?loc=external&signature=3a9787b74451d7f9da595598ddc2e2bed65f78b47ee2becefb1f0c50bfdac0e6" && videoLoc == "/polycythemia-vera-pv/resources") return "what is our role in improving patients care in pv"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/664120595/rendition/1080p/file.mp4?loc=external&signature=3543bd5c921cb35f0b3568fba114ab7b0c5297f62706991cf09118bec331fd19" && videoLoc == "/polycythemia-vera-pv/resources") return "assessing and managing disease related symptoms in patients with pv"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/656958128/rendition/1080p/file.mp4?loc=external&signature=ef16dba9cf3a7e86dbf2a1c01aef0ee4b62933df1ae70a6192263e4775a00413" && videoLoc == "/polycythemia-vera-pv/resources") return "why blood counts may be a sign that it is time for a change in clinical management"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/662520193/rendition/1080p/file.mp4?loc=external&signature=8efe6d9fb1ae9ae020111711fe90bead6901183971091b855c8c3888ad23f26b" && videoLoc == "/polycythemia-vera-pv/resources") return "30 days spent sweating since dave's last pv appointment"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/664120868/rendition/1080p/file.mp4?loc=external&signature=27a0637a03047549183fed5ff59f4ca9aef51480fd4a52865eb6fc7cdb438773" && videoLoc == "/polycythemia-vera-pv/resources") return "40 days lost to fatigue since nick's last pv appointment"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/659336590/rendition/1080p/file.mp4?loc=external&signature=ccb44e7698620f2695d3573df852bf70ee93c14a5e2fe8f68209d4b66650a20a" && videoLoc == "/polycythemia-vera-pv/resources") return "elevated hematocrit and thrombotic risk"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/639036140/rendition/1080p/file.mp4?loc=external&signature=55bfee84e2bdd0305cf6acf19c486009772fe929c00ff58c6db7363296e7fd72" && videoLoc == "/polycythemia-vera-pv/resources") return "what contributes to thrombotic risk in pv"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/771450996/rendition/1080p/file.mp4?loc=external&signature=787bbab484a3fc1f3f5f2117a9395cf70f5a131a9fa1c9f5637d93cb76f3a704" && videoLoc == "/polycythemia-vera-pv/resources") return "progressive symptoms in pv: monitoring for signs of advanced disease"; else if (videoSrc == "https://player.vimeo.com/progressive_redirect/playback/680290801/rendition/1080p?loc=external&signature=fdbb568d69cbe71bb0bff55e9605f95a3ba44c765c58078030b6bd51722a1b9f" && videoLoc == "/polycythemia-vera-pv/resources") return "36 days of itching since julies last pv"; else return "Failed to get video title"; } function analyticsTimeUpdate(videoId, event) { var currentVideo = document.getElementById(videoId); var videoData = videoStatus[videoId]; titleTemp = jQuery(event).attr("poster"); videoSrc = jQuery(event).find('source').attr("src"); videoLoc = window.location.pathname; mainTitle = getTitles(videoSrc, videoLoc); videoData.current = Math.round(currentVideo.currentTime); var pct = Math.floor(100 * videoData.current / currentVideo.duration); for (var marker in videoData._progressMarkers) { if (pct >= marker && marker > videoData.greatestWatchedPosition) { videoData.greatestWatchedPosition = marker; } } if (videoData.current >= 60 && !videoData.watched60 ) { eventName = "video_progression_30s"; categoryVal = "Video"; actionVal = "video_progression_30s"; videoName = mainTitle; videoLink1 = videoSrc; videoSource = "vimeo"; videoElapsedTime1 = "30"; console.log({ 'video ID': videoId, 'event Name': eventName, 'cat': categoryVal, 'action': actionVal, 'video name': videoName, 'video elapsed': videoElapsedTime1, 'video link': videoLink1, 'video source': videoSource }) videoData.watched60 = true } if (videoData.current >= 30 && !videoData.watched30 ) { eventName = "video_progression_60s"; categoryVal = "Video"; actionVal = "video_progression_60s"; videoName = mainTitle; videoLink1 = videoSrc; videoSource = "vimeo"; videoElapsedTime1 = "60"; videoData.watched30 = true } if (pct >= 25 && !videoData._progressMarkers[25]) { eventName = "video_progression_25%"; categoryVal = "Video Milestones"; actionVal = "video_progression_25%"; videoLink1 = videoSrc; videoSource = "vimeo"; videoElapsedTime1 = Math.round(currentVideo.duration) * (25 / 100); videoName = mainTitle; console.log({ 'video ID': videoId, 'event Name': eventName, 'cat': categoryVal, 'action': actionVal, 'video name': videoName, 'video elapsed': videoElapsedTime1, 'video link': videoLink1, 'video source': videoSource }) videoData._progressMarkers[25] = true; } if (pct >= 50 && !videoData._progressMarkers[50]) { eventName = "video_progression_50%"; categoryVal = "Video Milestones"; actionVal = "video_progression_50%"; videoLink1 = videoSrc; videoSource = "vimeo"; videoElapsedTime1 = Math.round(currentVideo.duration) * (50 / 100); videoName = mainTitle; console.log({ 'video ID': videoId, 'event Name': eventName, 'cat': categoryVal, 'action': actionVal, 'video name': videoName, 'video elapsed': videoElapsedTime1, 'video link': videoLink1, 'video source': videoSource }) videoData._progressMarkers[50] = true; } if (pct >= 75 && !videoData._progressMarkers[75]) { eventName = "video_progression_75%"; categoryVal = "Video Milestones"; actionVal = "video_progression_75%"; videoLink1 = videoSrc; videoSource = "vimeo"; videoElapsedTime1 = Math.round(currentVideo.duration) * (75 / 100); videoName = mainTitle; console.log({ 'video ID': videoId, 'event Name': eventName, 'cat': categoryVal, 'action': actionVal, 'video name': videoName, 'video elapsed': videoElapsedTime1, 'video link': videoLink1, 'video source': videoSource }) videoData._progressMarkers[75] = true; } } function analyticsPlay(videoId, event) { var currentVideo = document.getElementById(videoId); var videoData = videoStatus[videoId]; videoData.current = Math.round(currentVideo.currentTime); titleTemp = jQuery(event).attr("poster"); videoSrc = jQuery(event).find('source').attr("src"); videoLoc = window.location.pathname; videoTitle = getTitles(videoSrc, videoLoc); if (videoData.current >= 0 && videoData.current <= 2) { var ct = document.getElementsByTagName("video").currentTime; eventName = "video_begins"; categoryVal = "Video"; actionVal = "video_begins"; videoName = mainTitle; videoLink1 = videoSrc; videoSource = "vimeo"; videoElapsedTime1 = "1"; console.log({ 'video ID': videoId, 'event Name': eventName, 'cat': categoryVal, 'action': actionVal, 'video name': videoName, 'video elapsed': videoElapsedTime1, 'video link': videoLink1, 'video source': videoSource }) } } function analyticspause(videoId, event) { var currentVideo = document.getElementById(videoId); var videoData = videoStatus[videoId]; videoData.current = Math.round(currentVideo.currentTime); var pct = Math.floor(100 * videoData.current / currentVideo.duration); if (pct > 1 && pct <= 99) { var titleTemp = jQuery(event).attr("poster"); var videoSrc = jQuery(event).find('source').attr("src"); var videoLoc = window.location.pathname; var mainTitle = getTitles(videoSrc, videoLoc); video_elapsed = Math.round(currentVideo.currentTime); eventName = "video_paused"; categoryVal = "Video"; actionVal = "video_paused"; videoName = mainTitle; videoLink1 = videoSrc; videoSource = "vimeo"; videoElapsedTime1 = video_elapsed; console.log({ 'video ID': videoId, 'event Name': eventName, 'cat': categoryVal, 'action': actionVal, 'video name': videoName, 'video elapsed': videoElapsedTime1, 'video link': videoLink1, 'video source': videoSource }) } } function analyticsEnd(videoId, event) { var currentVideo = document.getElementById(videoId); var videoData = videoStatus[videoId]; videoData.current = Math.round(currentVideo.currentTime); var pct = Math.floor(100 * videoData.current / currentVideo.duration); titleTemp = jQuery(event).attr("poster"); videoSrc = jQuery(event).find('source').attr("src"); videoLoc = window.location.pathname; mainTitle = getTitles(videoSrc, videoLoc); eventName = "video_ends"; categoryVal = "Video"; actionVal = "video_ends"; videoName = mainTitle; videoLink1 = videoSrc; videoElapsedTime1 = video_elapsed; videoSource = "vimeo"; paused_status = false; console.log({ 'video ID': videoId, 'event Name': eventName, 'cat': categoryVal, 'action': actionVal, 'video name': videoName, 'video elapsed': videoElapsedTime1, 'video link': videoLink1, 'video source': videoSource }) } function eventHandler(e) { var videoId = $(this).attr('id'); switch (e.type) { case 'timeupdate': handleTimeUpdate(videoId, e); break; case 'play': analyticsPlay(videoId, e); break; case 'pause': analyticspause(videoId, e); break; case 'ended': analyticsEnd(videoId, e) break; default: break; } } $('video').each(function() { var videoTagId = $(this).attr('id'); if (!videoTagId) { videoTagId = 'gtm_video_' + Math.random().toString(36).slice(2); $(this).attr('id', videoTagId); } videoStatus[videoTagId] = { greatestWatchedPosition: 0, _progressMarkers: {}, watched30: false, watched60: false }; for (var marker = 0; marker < 100; marker += videoInterval) { videoStatus[videoTagId]._progressMarkers[marker] = false; } videoStatus[videoTagId].current = 0; $(this).on("play pause ended timeupdate", eventHandler); }); }); </script>
Editor is loading...
Leave a Comment