HTML5 Application Cache von Eduonix Learning Solutions

(1)

video locked

Über den Vortrag

Der Vortrag „HTML5 Application Cache“ von Eduonix Learning Solutions ist Bestandteil des Kurses „HTML 5 Advanced Features“. Der Vortrag ist dabei in folgende Kapitel unterteilt:

  • What is Application Cache?
  • Cache Manifest
  • Info page
  • Upload to Server
  • Web Developer Tools

Quiz zum Vortrag

  1. Internet Explorer
  2. Mozilla Firefox
  3. Chrome
  4. Safari
  1. Browse websites offline
  2. Pages load fast
  3. There is less load for the server
  4. None of these
  1. Manifest File
  2. Cache File
  3. Memory File
  4. Global File
  1. </li> </ol> </div> </div> </div> <div class="panel panel-default "> <div id="heading-15450" class="panel-heading button-heading quiz-lecture-link" role="tab" data-toggle="collapse" data-parent="#questions-accordion" data-target="#collapse-15450" aria-expanded="false" aria-controls="collapse-15450"> <p class="panel-title"> When an application is cached, it will remain until... </p> </div> <div id="collapse-15450" class="panel-collapse collapse out" role="tabpanel" aria-labelledby="heading-15450"> <div class="panel-body"> <ol class="panel-list list-lower-latin"> <li>all of the above</li> <li>it is cleared by the user</li> <li>it is modified</li> <li>the cache is updated</li> </ol> </div> </div> </div> </div> </div> </div> </div> <div id="eauthors-container" class="container-fluid" data-order='{ "xs": { "col": "left", "order": 9 }, "default": { "col": "left", "order": 5 } }'> <hr/> <div class="row"> <div class="col-xs-12"> <h3>Dozent <small>des Vortrages HTML5 Application Cache</small></h3> <div class="media eauthor"> <img alt=" Eduonix Learning Solutions" class="media-object img-circle pull-left" width="64" height="64" src="https://d3uigcfkiiww0g.cloudfront.net/profile/70734_1393324367_n.png" /> <div class="media-body"> <h3 class="h4 media-heading"> Eduonix Learning Solutions</h3> <b>Eduonix Learning Solutions</b> - The Knowledge Edge <br> <br> Eduonix creates and distributes high quality technology training content. The team of industry professionals have been training manpower for more than a decade. Eduonix aims to teach technology the way it is used in industry and professional world. The expertness of the professional team of trainers ranges from Mobility, Web to Enterprise as well as Database and Server Administration. </div> </div> </div> </div> </div> <div id="comments-card" class="panel panel-default panel-card comments-card" data-order='{ "xs": { "col": "left", "order": 5 }, "default": { "col": "left", "order": 2 } }'> <div id="lecture_comments"></div> <div class="brick-controls panel-footer"> <a href="javascript:void(0);" class="show-all-bricks panel-action">alle anzeigen</a> <a href="javascript:void(0);" class="show-part-bricks panel-action">Weniger anzeigen</a> </div> </div> <script type="text/javascript"> var inputLectureCommentsBootstrap = atob('L2RlL2lucHV0L2xpc3QtbGVjdHVyZS1jb21tZW50cy9odG1sNS1hcHBsaWNhdGlvbi1jYWNoZT9yc2s9bGVjdHVyZV9zaW1wbGlmaWVkJnJza0RhdGElNUJwbGF0Zm9ybSU1RD1zaG9wJnJza0RhdGElNUJzcF9udCU1RD1zb2Z0d2FyZSZjYT1odHRwcyUzQSUyRiUyRnd3dy5sZWN0dXJpby5kZSUyRnNvZnR3YXJlJTJGaHRtbDUtYXBwbGljYXRpb24tY2FjaGUudm9ydHJhZw=='); // init translation object var translatorComments = new Lecturio.Translator($); translatorComments.addMessages({ "showMore": "Mehr anzeigen" }); </script> <!-- Ratings and Reviews --> <div class="container-fluid" data-order='{ "xs": { "col": "left", "order": 10 }, "default": { "col": "left", "order": 6 } }'> <hr/> <div class="row"> <div class="col-xs-12"> <h3>Kundenrezensionen</h3> <span class="rating_container ratings_histogram"> <span class="icon-rating icon-rating-star text-orange"></span><span class="icon-rating icon-rating-star text-orange"></span><span class="icon-rating icon-rating-star text-orange"></span><span class="icon-rating icon-rating-star text-orange"></span><span class="icon-rating icon-rating-star text-orange"></span> <span class="rating-number">(1)</span> </span> <br class="clearfix" /> <span class="text-muted clearfix"> 5,0 von 5 Sternen</span> <table class="reviews-histogram table"> <tr> <td class="dimension text-muted">5 Sterne</td> <td> <div class="progress"> <div class="progress-bar progress-bar-orange" style="width: 500%"></div> </div> </td> <td class="count text-muted">5</td> </tr> <tr> <td class="dimension text-muted">4 Sterne</td> <td> <div class="progress"> <div class="progress-bar progress-bar-orange" style="width: 0%"></div> </div> </td> <td class="count text-muted">0</td> </tr> <tr> <td class="dimension text-muted">3 Sterne</td> <td> <div class="progress"> <div class="progress-bar progress-bar-orange" style="width: 0%"></div> </div> </td> <td class="count text-muted">0</td> </tr> <tr> <td class="dimension text-muted">2 Sterne</td> <td> <div class="progress"> <div class="progress-bar progress-bar-orange" style="width: 0%"></div> </div> </td> <td class="count text-muted">0</td> </tr> <tr> <td class="dimension text-muted">1  Stern</td> <td> <div class="progress"> <div class="progress-bar progress-bar-orange" style="width: 0%"></div> </div> </td> <td class="count text-muted">0</td> </tr> </table> </div> </div> <hr/> </div> <!-- Review-Modal start --> <div class="modal fade" id="review_modal" tabindex="-1"> <div class="modal-dialog modal-lg"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <p class="modal-title" id="myModalLabel">Kundenrezensionen</p> </div> <div class="modal-body" style="overflow:hidden;"> </div> </div> </div> </div> <script type="text/javascript"> var reviewsNotLoaded = true; $('#review_modal').on('show.bs.modal', function () { if (reviewsNotLoaded) { $('#review_modal .modal-body').load('/popup-reviews/lecture/10278', function () { var hint = ''; $("#review_modal .modal-body").append(hint); }); reviewsNotLoaded = false; } $('.modal .modal-body').css('overflow-y', 'scroll !important'); $('.modal .modal-body').css('min-height', $(window).height() * 0.3); $('.modal .modal-body').css('max-height', $(window).height() * 0.85); }); $(document).ready(function () { $("a.register-link, a.login-link").click(function (e) { e.preventDefault(); window.parent.$("body").trigger("start-registration", [$(this).attr("href")]); }); $("body").on("start-registration", function (e, currentUrl) { if (typeof lecturioJwplayer != "undefined") { currentUrl += "&pp=" + lecturioJwplayer.currentPlayerTime; } window.location.href = currentUrl; }); }); </script> <!-- Review-Modal end --> <!-- Ratings and Reviews end --> <!-- SEO Extracts --> <div class="container-fluid" data-order='{ "xs": { "col": "left", "order": 7 }, "default": { "col": "left", "order": 3 } }'> <hr/> <div class="row"> <div id="lecture-details" class="col-xs-12"> <h3>Auszüge aus dem Begleitmaterial</h3> <p>... web application work offline without an Internet connection. All browsers aside from IE can use AppCache ...</p> <p>... on the document's html tag: ... Should be on all pages you want to cache ...</p> <p>... Series This is a very simple and minimal example: CACHE MANIFEST index.html style.css ...</p> <p>... text/cache-manifest; it’s really simple to do this with an .htaccess file: This will serve all ...</p> <p>... remain unless 1. The user clears it out 2. The manifest has ...</p> </div> </div> </div> <!-- SEO Extracts end --> <div style="z-index: 9999999" class="modal" id="explanation_modal"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal"> <span aria-hidden="true">×</span> <span class="sr-only">Schließen</span> </button> <span class="modal-title"><span class="title-placeholder"></span></span> </div> <div class="modal-body"> <iframe src="about:blank" class="embed-responsive" style="width: 100%; height: 100%; border: none;"></iframe> </div> </div> </div> </div> <script type="text/javascript"> function resizeIframe() { var explanation_modal = $('#explanation_modal'), explanation_modal_frame = explanation_modal.find('iframe'); explanation_modal.find('.modal-dialog').width(332); explanation_modal_frame.width(302); explanation_modal_frame.height(170); } </script> <div id="left_col"></div> </div> <div class="col-xs-12 col-md-5 col-lg-4 action-box"> <div class="sticky-container" id="right_col"> <div class="panel panel-default panel-card panel-cta-card" data-order='{ "xs": { "col": "left", "order": 2 }, "default": { "col": "right", "order": 1 } }'> <a id="cta-lecture" class="btn btn-lg btn-success btn-block btn-login lecture-cta text-uppercase lecture-available" href="/software/html-5-advanced-features.kurs">Zum Kurs</a> <!--<hr />--> <div class="choice-delimiter text-muted"> <div class="line-background text-center"> <span>oder</span> </div> </div> <a class="btn btn-buy btn-block buffer-top-20-md btn-default" id="checkout-btn" rel="nofollow" href="https://www.lecturio.de/de/payment/buy/abo/lecture/html5-application-cache">Vortrag freischalten <span class="price"><span class="price-with-currency">4,90 <span class="currency-symbol">€</span></span></span></a><div class="text-center trustedshops-container"> <a href="https://www.trustedshops.de/bewertung/info_X9B6ACED00D6B58B0C1B69F7C1E4A84A2.html" class="trustedshops-logo" target="_blank"></a>   <a href="javascript:void(0);" data-toggle="modal" data-target="#popup-geld-zuruck-garantie" class="trustedshops-guarantee-de" target="_blank"></a>   </div> </div> </div> </div> <script id="lecture-nav-buttons-template" type="text/x-handlebars-template"> <div id="lecture-nav-buttons" class="text-center hidden"> <div class="js-lecture-link repeat-button"> <span class="glyphicon glyphicon-repeat"></span> </div> <div class="lecture-nav-buttons-container"> {{#if hasOpenQuestions}} <p class="lecture-completion-text">Vortrag fast abgeschlossen</p> <p class="quiz-questions-remaining-text">Beantworten Sie jetzt noch alle offenen Quizfragen</p> {{else}} <p class="lecture-completion-text">Vortrag abgeschlossen</p> {{/if}} <div class="buttons-container"> {{#if hasOpenQuestions}} {{#if isMedicalFlatrate}} {{#if hasNextLecture}} <a class="btn btn-default btn-lg js-quiz-resume">Zum Quiz</a> {{else}} <a class="btn btn-success btn-lg js-quiz-resume">Zum Quiz</a> {{/if}} {{else}} <a class="btn btn-success btn-lg js-quiz-resume">Zum Quiz</a> {{/if}} {{/if}} {{#if hasNextLecture}} {{#if isMedicalFlatrate}} <a class="btn btn-default btn-lg js-next-lecture"> Nächster Vortrag <span class="autostart-timing-prep"> in</span> <span class="js-autostart-timing autostart-timing"></span> </a> {{else}} {{#if hasOpenQuestions}} <a class="btn btn-default btn-lg js-next-lecture"> Nächster Vortrag <span class="autostart-timing-prep"> in</span> <span class="js-autostart-timing autostart-timing"></span> </a> {{else}} <a class="btn btn-success btn-lg js-next-lecture"> Nächster Vortrag <span class="autostart-timing-prep"> in</span> <span class="js-autostart-timing autostart-timing"></span> </a> {{/if}} {{/if}} {{else}} {{#if isNotScorm}} {{#if hasOpenQuestions}} <a class="btn btn-default btn-lg js-course-overview" href="/software/html-5-advanced-features.kurs"> Zur Kursübersicht </a> {{else}} <a class="btn btn-success btn-lg js-course-overview" href="/software/html-5-advanced-features.kurs"> Zur Kursübersicht </a> {{/if}} {{/if}} {{/if}} </div> </div> </div> </script> <script id="video-feedback-template" type="text/x-handlebars-template"> <div id="ticket-submit" class="panel-section ticket-form-container no-top-border hidden"> <form id="ticket-form" class="js-submit-form" action="post"> <label for="ticket-text">What's the issue?</label> <textarea name="ticket-text" class="gray-border" cols="50" rows="5" placeholder="Example: At minute 3:32 the lecturer says microliters but the slide shows milliliters" required></textarea> <div class="error-message hidden"> <span>Please provide some details about the issue</span> </div> <input class="btn btn-lg btn-success" type="button" name="submit" value="Senden" /> </form> <div class="successful-ticket-submit hidden"> <div>Thank you for submitting your report.</div> <div> <a class="js-new-ticket-link new-ticket-link" href="javascript:void(0);">Did you find another mistake?</a> </div> </div> </div> </script> <script type="text/javascript"> $(document).ready(function () { var domOrder = new Lecturio.Dom.Order.Resolution({ "cols": { "left": $("#left_col"), "right": $("#right_col") }, "elements": $('[data-order]') }); domOrder.order($(window).width()); $(window).resize(function () { domOrder.order($(window).width()); }); var hasQuiz = '5' || 0; var quizCollection = null; var quizApp = quizApp || null; if(hasQuiz > 0 && quizApp != null) { quizCollection = quizApp.collection; } function initLectureScreens() { var lectureScreens = new Lecturio.LectureScreens( quizCollection, new Lecturio.Templates(Handlebars), lecturioJwplayer, false, false, new Lecturio.Timers.SecondsCountdown() ); var isPlayerComplete = false; $(document).on("LecturioPlayer.complete", function () { isPlayerComplete = true; lectureScreens.setHasOpenedQuestions(); lectureScreens.generateScreenFlow(); }); $(document).on("quiz.overview.closed", function () { $("#lecture-nav-buttons").remove(); if(isPlayerComplete === true) { lectureScreens.setHasOpenedQuestions(); lectureScreens.generateScreenFlow(); } }); } function showLecturesBar () { var hasPlayerLecturesBar = $('#lecture-list-button').length; if (hasPlayerLecturesBar >= 1){ var iconDown = '<span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"> </span>'; var iconUp = '<span class="glyphicon glyphicon-triangle-top hidden" aria-hidden="true"> </span>'; var lecturesList = $('.lecture-list'); var lecturesListButton = $('#lecture-list-button'); var lecturesListButtonIcons = $('#lecture-list-button > span:nth-child(2)'); lecturesList.removeClass('icon').append(iconDown).append(iconUp); lecturesListButtonIcons.removeClass('hidden-xs').css("padding-left", "4px"); lecturesListButton.removeClass('col-xs-12'); $('#right_col').css('margin-top','32px'); //Adjust open behaviour lecturesListButton.on('click',function(){ $('.lecture-list span.glyphicon:nth-child(2)').toggleClass('hidden'); $('.lecture-list span.glyphicon:nth-child(1)').toggleClass('hidden'); }); } } // Video feedback feature var showFeedbackCard = ''; if (showFeedbackCard == true) { var commentsCard = $('#comments-card'); var feedbackTemplate = Handlebars.compile($('#video-feedback-template').html()); var feedbackHtml = feedbackTemplate(); $('#comments_container .panel-heading').css('display', 'none'); commentsCard.append(feedbackHtml); $('#comments-card .tabs-container').addClass('top-margin'); commentsCard.on('click', '.js-report-mistake', function () { $(this).addClass('active'); $('.js-lecture-questions').removeClass('active'); $('#comments_list_container').addClass('hidden'); $('.add-comment').addClass('hidden'); $('#ticket-submit').removeClass('hidden'); $('#comments-card .panel-footer').addClass('hidden'); $("#comments-card .close_new_comment_form").click(); }); commentsCard.on('click', '.js-lecture-questions', function () { $(this).addClass('active'); $('.js-report-mistake').removeClass('active'); $('#comments_list_container').removeClass('hidden'); $('.add-comment').removeClass('hidden'); $('#ticket-submit').addClass('hidden'); $('#comments-card .panel-footer').removeClass('hidden'); }); commentsCard.on('click', '.js-new-ticket-link', function () { $('#ticket-form textarea').val(''); $('.successful-ticket-submit').addClass('hidden'); $('.js-submit-form').removeClass('hidden'); }); commetsCardToggles(); $("#ticket-form").on('click', '.btn-success', function () { // Google tag manager var gtmDataLayer = dataLayer || []; gtmDataLayer.push({ "event": "trigger", "eventCategory": "QA Feedback", "eventAction": "report_form_video", "eventValue": "1" }); if ($('#ticket-form textarea').val().trim() != '') { $('#ticket-form textarea').removeClass('red-border').addClass('gray-border'); $('.successful-ticket-submit').removeClass('hidden'); $('.js-submit-form').addClass('hidden'); $('#ticket-form .error-message').addClass('hidden'); var position = (typeof lecturioJwplayer != "undefined") ? lecturioJwplayer.currentPlayerTime : 0; var ticket = { "url": window.location.href, "tag": "report_form_video", "position": position, "content": $("#ticket-form textarea").val() }; $.ajax({ type: "POST", url: "/api/en/latest/html5/zendesk/tickets.json", data: JSON.stringify(ticket), contentType: "application/json; charset=utf-8", success: function (data) { $('.successful-ticket-submit').removeClass('hidden'); $('.js-submit-form').addClass('hidden'); }, error: function (data, status) { } }); } else { $('#ticket-form .error-message').removeClass('hidden'); $('#ticket-form textarea').removeClass('gray-border').addClass('red-border'); } }); } }); </script> <script type="text/javascript"> /* <![CDATA[ */ $(window).load(function () { // init sticky menu $(".action-box .sticky-container").on("affix.bs.affix", function () { $(".action-box .sticky-container").outerWidth($(".action-box").outerWidth() - 30); }); $(".action-box .sticky-container").affix({ "offset": { "top": function () { this.top = $(".action-box").offset().top - 30; return this.top; }, "bottom": function () { this.bottom = $(".footer").outerHeight(true); return this.bottom; } } }); $(window).on("resize", function () { $(".action-box .sticky-container").trigger("affix.bs.affix"); }); }); /* ]]> */ </script> </div> </div> </div> <script type="text/javascript"> /* <![CDATA[ */ globalVars.pageEnvironment = "shop"; vwoVars.isShoppingEnv = true; /* ]]> */ </script> <!-- content: end --> <!-- footer tabs: begin --> <!-- footer tabs: end --> <!-- footer: begin --> <div class="footer"> <div class="footer-bg"> <div class="container footer-conteiner"> <div class="row"> <div class="col-sm-12 footer-top" id="footer"> <div class="col-lg-2 col-md-3 col-sm-3 col-xs-12 footer-group"> <div class="group-title">Lecturio</div> <ul> <li><a href="/elearning/weitere-infos/ueber-uns">Über uns</a></li> <li><a href="/presse">Presse</a></li> <li><a href="/elearning/weitere-infos/jobs">Jobangebote</a></li> <li><a onclick="return overlay(this, "", 420, 180);" href="/de/feedback/subscribe/mail?lf=lecturio.de">Newsletter</a></li> <li><a target="_blank" href="https://www.lecturio.de/magazin/e-learning/">Magazin</a></li> </ul> </div> <div class="col-lg-2 col-md-3 col-sm-3 col-xs-12 footer-group"> <div class="group-title">Kurse</div> <ul> <li><a href="/themen/alle">nach Themen</a></li> <li><a href="/institutionen">nach Institutionen</a></li> <li><a href="/dozenten">nach Dozenten</a></li> </ul> </div> <div class="col-lg-2 col-md-3 col-sm-3 col-xs-12 footer-group"> <div class="group-title">B2B</div> <ul> <li><a href="/unternehmen">Für Unternehmen</a></li> <li><a href="/elearning/b2b/fuer-inhaltsanbieter">Für Inhaltsanbieter</a></li> <li><a href="/elearning/b2b/fuer-konferenzanbieter">Für Konferenzanbieter</a></li> <li><a href="/elearning/weitere-infos/lecturio-partnerprogramm">Für Webseitenbesitzer</a></li> </ul> </div> <div class="col-lg-2 col-md-3 col-sm-3 col-xs-12 footer-group"> <div class="group-title">Support</div> <ul> <li><a target="_blank" href="https://lecturio.zendesk.com/">Hilfe</a></li> <li><a href="/elearning/weitere-infos/kontakt">Kontakt</a></li> <li><a target="_blank" href="/elearning/lecturio-mobil">Mobil</a></li> </ul> </div> <div class="col-lg-4 col-md-12 col-sm-12 col-xs-12 social-media pull-left-sm"> <a href="https://www.facebook.com/lecturio" class="facebook_icon" target="_blank"></a> <a href="https://twitter.com/lecturio" class="twitter_icon" target="_blank"></a> <a href="http://pinterest.com/lecturio/" class="pinterest_icon" target="_blank"></a> <a href="http://www.youtube.com/user/Lecturio" class="youtube_icon" target="_blank"></a> <a href="http://www.xing.com/companies/elearning%7Clecturiogmbh" class="xing_icon" target="_blank"></a> <a href="https://plus.google.com/+lecturio" class="google_icon" target="_blank"></a> <div class="appstores"> <a href="https://itunes.apple.com/de/app/lecturio-e-learning/id667474925?mt=8" class="badges-appstore-de" target="_blank"></a> <a href="https://play.google.com/store/apps/details?id=de.lecturio.android" class="badges-playstore-de" target="_blank"></a> </div> </div> </div> </div> </div> </div> <div class="footer-bottom-bg"> <div class="container footer-bottom-conteiner"> <div class="row"> <div class="col-sm-12 footer-bottom"> <p> © 2017 Lecturio GmbH. Alle Rechte vorbehalten. </p> <ul> <li><a href="/elearning/rechtliches/datenschutzerklaerung">Datenschutzerklärung</a></li> <li><a href="/elearning/rechtliches/nutzungsbedingungen">Nutzungsbedingungen</a></li> <li><a href="/elearning/rechtliches/widerrufsbelehrung">Widerrufsbelehrung</a></li> <li><a href="/elearning/rechtliches/steuerliche-absetzbarkeit-e-seminare">Steuerliche Absetzbarkeit</a></li> <li><a href="/elearning/rechtliches/impressum">Impressum</a></li> <li class="dropup"> <a href="#" class="dropdown-toggle" id="dropup-lng" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <span class="glyphicon glyphicon-globe"></span> Deutsch <span class="caret"></span> </a> <ul class="dropdown-menu dropup-lng" aria-labelledby="dropup-lng"> <li><a href="/change/language/de">Deutsch</a></li> <li><a href="/change/language/en">English</a></li> </ul> </li> </ul> </div> </div> </div> </div> </div> <!-- footer: end --> <div class="modal fade" id="popup-geld-zuruck-garantie" tabindex="-2"> <div class="modal-dialog modal-sm-fixed modal-login"> <div class="modal-content"> <div class="modal-body"> <!-- SA popup-geld-zuruck-garantie start --> <p style="text-align:center;"><img src="https://d4677zvkwleqj.cloudfront.net/lecturio/images/geld-zurueck-garantie_icon.png" alt="" /></p> <p>Die besten Dozenten, die besten Inhalte, das beste Lernergebnis. Davon sind wir 100%ig überzeugt. Daher auch unsere 100% Geld-zurück-Garantie. Sind Sie wirklich nicht zufrieden? Schreiben Sie uns. Bis fünf Tage nach dem Kauf erstatten wir Ihnen den vollen Preis zurück - ohne Wenn und Aber.</p> <!-- SA popup-geld-zuruck-garantie end --> </div> </div> </div> </div> <!-- Start of Async HubSpot Analytics Code --> <script type="text/javascript"> $(window).load(function() { (function (d, s, i, r) { if (d.getElementById(i)) { return; } var n = d.createElement(s), e = d.getElementsByTagName(s)[0]; n.id = i; n.src = '//js.hs-analytics.net/analytics/' + (Math.ceil(new Date() / r) * r) + '/413791.js'; e.parentNode.insertBefore(n, e); })(document, "script", "hs-analytics", 300000); }); </script> <!-- End of Async HubSpot Analytics Code --> <!-- begin SnapEngage code --> <script type="text/javascript"> var dataLayer = dataLayer || []; (function() { var se = document.createElement('script'); se.type = 'text/javascript'; se.async = true; se.src = '//storage.googleapis.com/code.snapengage.com/js/9d9e83be-a74f-453d-a0a6-b08f625ef84d.js'; var done = false; se.onload = se.onreadystatechange = function() { if (!done&&(!this.readyState||this.readyState==='loaded'||this.readyState==='complete')) { done = true; /* Place your SnapEngage JS API code below */ var seAgent; SnapABug.setCallback( 'OpenProactive', function (agent, msg) { seAgent = agent; dataLayer.push({ 'event': 'snapEngageEvent', 'eventCategory': 'SnapEngage', 'eventAction': 'proactivePrompt', 'eventLabel': agent }); } ); SnapABug.setCallback( 'StartChat', function (email, msg, type) { if (type == 'proactive') { dataLayer.push({ 'event': 'snapEngageEvent', 'eventCategory': 'SnapEngage', 'eventAction': 'proactiveEngaged', 'eventLabel': seAgent }); } } ); SnapABug.setCallback( 'Close', function (type, status) { if (type == 'proactive') { ga('send', 'event', 'SnapEngage', 'closed', 'seAgent'); dataLayer.push({ 'event': 'snapEngageEvent', 'eventCategory': 'SnapEngage', 'eventAction': 'closed', 'eventLabel': seAgent }); } } ); /* SnapEngage.allowChatSound(true); Example JS API: Enable sounds for Visitors. */ } }; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(se, s); })(); </script> <!-- end SnapEngage code --> <div id="last_cart_abandonment_product_wrapper" class="fade in hide"> <div class="alert-dialog"> <div id="last_cart_abandonment_product_container" class="modal-content"> <button type="button" class="close" id="close-alert"><span aria-hidden="true">×</span></button> <div id="last_cart_abandonment_title" class="modal-header"> Sie haben noch einen <span id="last_cart_abandonment_product_type"></span> im Warenkorb. </div> <div id="last_cart_abandonment_product" class="alert-body"> <div id="last_cart_abandonment_product_left_container" class="pull-left"></div> <div id="last_cart_abandonment_product_right"> <div id="last_cart_abandonment_product_title"></div> <div id="last_cart_abandonment_product_duration" class="last_cart_abandonment_product_row checked_green_bullet">Betreuung durch Dozenten</div> <div id="last_cart_abandonment_product_lkf_count" class="last_cart_abandonment_product_row checked_green_bullet">Auch unterwegs auf Tablet und Smartphone lernen</div> <div class="last_cart_abandonment_product_row checked_green_bullet">100% Geld-zurück-Garantie</div> </div> <div class="clr clearfix"></div> </div> <div id="last_cart_abandonment_product_buttons"> <a id="last_cart_abandonment_product_button_close" class="flex_btn btn btn-default" rel="nofollow" href="javascript: void(0);"><span class="">Endgültig löschen</span></a> <a id="last_cart_abandonment_product_button_later" class="flex_btn btn btn-default" rel="nofollow" href="javascript: void(0);"><span class="">Später</span></a> <a id="last_cart_abandonment_product_button_buy" class="flex_btn green_cta btn btn-success" rel="nofollow" href="#"><span class="">Zum Warenkorb</span></a> <div class="clr clearfix"></div> </div> </div> </div> </div> <script type="text/javascript"> function hideCartAbandonmentPopupForCurrentSession() { $.post(atob("L2RlL2hpZGUtY2FydC1hYmFuZG9ubWVudC1wb3B1cC1mb3ItY3VycmVudC1zZXNzaW9u")); } $(document).ready(function () { // Check if distractor was closed before or page is a payment funnel page. var shoppingCartProduct = $.cookie('shopping_cart_product'); if (shoppingCartProduct !== null) { shoppingCartProduct = $.parseJSON(shoppingCartProduct); if (typeof shoppingCartProduct.version !== "undefined") { if (shoppingCartProduct.version == '2') { $('#last_cart_abandonment_product_title').html(shoppingCartProduct.title); var imageRegExMatches = shoppingCartProduct.image_url.match(/:\/\/(.[^/]+)/); if (imageRegExMatches !== null && imageRegExMatches.length >= 2) { var imgDomain = imageRegExMatches[1]; shoppingCartProduct.image_url = shoppingCartProduct.image_url.replace('http:\/\/' + imgDomain, 'https://d3uigcfkiiww0g.cloudfront.net'); $('#last_cart_abandonment_product_left_container').html('<img class="img-responsive" id="last_cart_abandonment_product_left" src="' + shoppingCartProduct.image_url + '" alt="" />'); $('#last_cart_abandonment_product_button_buy').attr('href', shoppingCartProduct.payment_url); var questionsTitle = shoppingCartProduct.lkf_count > 1 ? 'Quizfragen' : 'Quizfrage'; if (shoppingCartProduct.product_type == 'course') { $('#last_cart_abandonment_product_type').html('Kurs'); var lecturesTitle = shoppingCartProduct.number_of_lectures > 1 ? 'Vorträge' : 'Vortrag'; } else { $('#last_cart_abandonment_product_type').html('Vortrag'); } $("#last_cart_abandonment_product_wrapper").removeClass("hide"); $("#close-alert").click(function () { $("#last_cart_abandonment_product_wrapper").addClass("hide"); }); } else { $.removeCookie('shopping_cart_product', { path: '/' }); } } else { $.removeCookie('shopping_cart_product', { path: '/' }); } } else { $.removeCookie('shopping_cart_product', { path: '/' }); } } $('#last_cart_abandonment_product_button_close').click(function () { $.removeCookie('shopping_cart_product', { path: '/' }); $.fancybox.close(); $("#last_cart_abandonment_product_wrapper").addClass("hide"); }); $('#last_cart_abandonment_product_button_later').click(function() { hideCartAbandonmentPopupForCurrentSession(); $.fancybox.close(); $("#last_cart_abandonment_product_wrapper").addClass("hide"); }); }); </script> <!-- This workaround of the problem described in PMSHOP-442 --> </body> </html>