Mini Kabibi Habibi

Current Path : C:/Program Files/McAfee/WebAdvisor/MFW/packages/webadvisor/
Upload File :
Current File : C:/Program Files/McAfee/WebAdvisor/MFW/packages/webadvisor/wa-ui-sstoast.js

/* SecureSearch Toast UI */
(function (wa, $) {
  var ui = (wa.UI = wa.UI || {}),
    _instrument = wa.Utils.Instrument,
    _settings = wa.Utils.Settings,
    _window = wa.Core.Window,
    _external = wa.Utils.External;

    var TOGGLE_COUNT = "toggle_count";

  ui.SecureSearchToast = function () {
    var $el = {
      header: $("#wa-sstoast-header"),
      logo: $("#wa-sstoast-logo"),
      mainContent: $("#wa-sstoast-content"),
      mainMavContent: $("#wa-sstoast-mav-content"),
      subHeader: $("#wa-sstoast-content-subheader"),
      subHeaderMav: $("#wa-sstoast-mav-content-subheader"),
      caption: $("#wa-sstoast-content-caption"),
      captionMav: $("#wa-sstoast-mav-content-caption"),
      label: $("#wa-sstoast-content-label"),
      labelMav: $("#wa-sstoast-mav-content-label"),
      enable: $("#wa-sstoast-content-check"),
      enableMav: $("#wa-sstoast-mav-content-check"),
      submit: $("#wa-sstoast-content-submit"),      
    },
    addCheckboxClick = function (lang) {
        $el.enable.click(function () {
        _settings.increment_setting(TOGGLE_COUNT, "0");
        var isChecked = $el.enable.is(":checked");

        if (isChecked) {
          $el.submit.val(lang("SEARCH_TOAST_DONE"));
        }
        else {
          $el.submit.val(lang("SEARCH_TOAST_VARIANT_1_BUTTON_UNPROTECTED"));
        }
      });
    },
    show = function () {
        _window.ready(function () {
          //Get settings and determine if we need to show retoast version or not
          var toastData = JSON.parse(_external.getArgument("toast_data"));
          var wssTrialOffer = _settings.get("wss_trial_expiry_offer", "1");
          var isMavOffer = wssTrialOffer.length && (wssTrialOffer === "perpetual" || wssTrialOffer === "60days" || wssTrialOffer === "ss_only");

          var browserCode = _instrument.getBrowserTypeCode();

          var lang = wa.Utils.Lang(wa.Utils.Lang.ResType.SSTOAST).get;
          var productLogoHtml = wa.Core.WebAdvisor.getProductLogoHtmlLegacy();

          $el.logo.append(productLogoHtml);

          _settings.increment_setting("toast_variation_phase_2_show_count", "0");
          // Initialize proper toast and show content.
          if (isMavOffer && browserCode.toLowerCase() === "ch") {
            initMavOffer(lang, "mav", wssTrialOffer);

            _window.show();

            var telType = "";
            if (wssTrialOffer === "ss_only") {
              telType = "_SSOnly";
            }
            else if (wssTrialOffer === "60days") {
              telType = "_60days";
            }
            else {
              telType = "_Perpetual";
            }

            // Send telemetry for mav toast
            var telemetryEvent = new Secure_Search_Toast()
              .action_type("Impression")
              .browser(_instrument.getBrowserTypeCode())
              .provider(_instrument.getSecureSearchProvider())
              .toastType("AntivirusToast" + telType)
              .Serialize();
            _instrument.sendTelemetryEvent(telemetryEvent);

            return;
          }

          // Initialize existing toast.
          init(lang);

          _window.show();

          // Send telemetry for standard toast
          var telemetryEvent = new Secure_Search_Toast()
            .action_type("Impression")
            .browser(_instrument.getBrowserTypeCode())
            .provider(_instrument.getSecureSearchProvider())
            .toastType("RegularToast_Red")
            .Serialize();
          _instrument.sendTelemetryEvent(telemetryEvent);
        });
      },
      init = function (lang) {
        var headerText = lang("SEARCH_TOAST_HEADING_COMPLIANT");
        var subHeaderText = lang("SEARCH_TOAST_SUB_HEADING_COMPLIANT");
        var caption = lang("SEARCH_TOAST_BODY_TEXT_COMPLIANT");

        var search_name_id = _settings.get("SECURE_SEARCH_PROVIDER_NAME_ID", "0");

        var search_engine_name = lang(search_name_id);

        if ("string" != typeof search_engine_name || 0 == search_engine_name.length) {
          search_engine_name = lang("SEARCH_TOAST_ENGINE");
        }

        var label = lang("SEARCH_TOAST_OPTION_COMPLIANT").format(
          search_engine_name
        );
        var btnText = lang("SEARCH_TOAST_DONE");

        var chromeCompliantDisabled = _settings.get(
          "chrome_search_compliance_disabled"
        );

        var extension_push = false;

        var toastData = JSON.parse(_external.getArgument("toast_data"));

        if (toastData.extension_push != undefined) {
          extension_push = toastData.extension_push;
        }

        var search_state_ed = _settings.get("search_state_ed");
        if (_window.getBrowserType() == "CH" && (chromeCompliantDisabled || extension_push) || (_window.getBrowserType() == 'ED' && 2 == search_state_ed))
        {
          headerText = lang("SEARCH_TOAST_HEADING");
          subHeaderText = lang("SEARCH_TOAST_SUB_HEADING");
          caption = lang("SEARCH_TOAST_BODY_TEXT");
          label = lang("SEARCH_TOAST_OPTION");

          var legacyVariantType = Number(toastData["legacy_secure_search_toast_variation"]);
          switch (legacyVariantType)
          {
            case 1:
              addCheckboxClick(lang);
              break;
            default:
              break;
          }
        }

        $el.header.html(headerText);
        $el.subHeader.html(subHeaderText);
        $el.caption.html(caption);
        $el.label.html(label);

        $el.submit
          .click(function () {
            submit(false, null);
          })
          .val(btnText);
      },
      initMavOffer = function (lang, product, type) {
        if (type === "perpetual") {
          var headerText = lang("SEARCH_TOAST_MAV_HEADING");
          $el.header.html(headerText);
  
          var subHeaderText = lang("SEARCH_TOAST_MAV_SUB_HEADING");
          $el.subHeaderMav.html(subHeaderText);
  
          var captionText = lang("SEARCH_TOAST_MAV_CAPTION");
          $el.captionMav.html(captionText);
  
          var mavTypeText = lang("SEARCH_TOAST_MAV_ANTIVIRUS_PERPETUAL");
          var label = "<strong>" + lang("SEARCH_TOAST_MAV_OPTION").format("<span style='padding-left:27px;'>" + mavTypeText + "</span>") + "</strong>";
          $el.labelMav.html(label);
  
          $el.submit
            .click(function () {
              submit(true, type);
            })
            .val(lang("SEARCH_TOAST_DONE"));
          
          $el.mainContent.hide();
          $el.mainMavContent.show();
        }
        else if (type === "60days") {
          var headerText = lang("SEARCH_TOAST_MAV_60_DAYS_HEADING");
          $el.header.html(headerText);
    
          var captionText = lang("SEARCH_TOAST_MAV_60_DAYS_CAPTION");
          $el.captionMav.html(captionText);
  
          var mavTypeText = lang("SEARCH_TOAST_MAV_ANTIVIRUS_60_DAYS");
          var label = "<strong>" + lang("SEARCH_TOAST_MAV_60_DAYS_OPTION").format("<span style='padding-left:27px;'>" + mavTypeText + "</span>") + "</strong>";
          $el.labelMav.html(label);
  
          $el.submit
            .click(function () {
              submit(true, type);
            })
            .val(lang("SEARCH_TOAST_DONE"));
          
          $el.mainContent.hide();
          $el.mainMavContent.show();
        }
        else if (type === "ss_only") {
          var headerText = lang("SEARCH_TOAST_MAV_SS_ONLY_HEADING");
          $el.header.html(headerText);
  
          var captionText = lang("SEARCH_TOAST_MAV_SS_ONLY_CAPTION");
          $el.captionMav.html(captionText);
  
          var mavTypeText = lang("SEARCH_TOAST_MAV_SS_ONLY_ANTIVIRUS_PROTECTION");
          var label = "<strong>" + lang("SEARCH_TOAST_MAV_SS_ONLY_OPTION").format("<span style='padding-left:27px;'>" + mavTypeText + "</span>") + "</strong>";
          $el.labelMav.html(label);
  
          $el.submit
            .click(function () {
              submit(false, type);
            })
            .val(lang("SEARCH_TOAST_DONE"));
  
          $el.mainContent.hide();
          $el.mainMavContent.show();
          $el.subHeaderMav.hide();
        }
        
      },
      submit = function (isMavOffer, mavOfferType) {
        var checkbox = $el.enable;
        if (isMavOffer) {
          checkbox = $el.enableMav;
        }
        var tc = _settings.getSettingScopedWithDefault(-1, "0", TOGGLE_COUNT);
        var tc_str = tc.toString();
        if (checkbox.is(":checked")) {
          if (isMavOffer) {
            var toastType = "";
            var url = "";
            var shouldNavigate = true;

            if (mavOfferType && mavOfferType === "ss_only") {
              toastType = "_SSOnly";
              shouldNavigate = false;
            }
            else if (mavOfferType && mavOfferType === "60days") {
              toastType = "_60days";
              url = "https://www.siteadvisor.com/mav/install?product=mav&type=60days";
            }
            else {
              toastType = "_Perpetual";
              url = "https://www.siteadvisor.com/mav/install?product=mav&type=perpetual";
            }

            // Send telemetry for MAV Offer acceptance
            var telemetryEvent = new Secure_Search_Toast()
              .action_type("Accepted")
              .browser(_instrument.getBrowserTypeCode())
              .provider(_instrument.getSecureSearchProvider())
              .toastType("AntivirusToast" + toastType)
              .toggle_count(tc_str)
              .Serialize();
            _instrument.sendTelemetryEvent(telemetryEvent);

            if (shouldNavigate && url.length) {
              var browser = _window.getBrowserType();
  
              if (browser != undefined) {
                _external.browserNavigate(browser.toUpperCase(), url);
              }
            }
          } else {
            // Send telemetry for Secure Search Acceptance
            var telemetryEvent = new Secure_Search_Toast()
              .action_type("Accepted")
              .browser(_instrument.getBrowserTypeCode())
              .provider(_instrument.getSecureSearchProvider())
              .toastType("RegularToast_Red")
              .toggle_count(tc_str)
              .Serialize();
            _instrument.sendTelemetryEvent(telemetryEvent);
          }

          wa.Core.SecureSearch.enable();
        } else {
          if (isMavOffer) {
            // Send telemetry for MAV Offer declined
            var telemetryEvent = new Secure_Search_Toast()
              .action_type("Declined")
              .browser(_instrument.getBrowserTypeCode())
              .provider(_instrument.getSecureSearchProvider())
              .toastType("AntivirusToast_Perpetual")
              .toggle_count(tc_str)
              .Serialize();
            _instrument.sendTelemetryEvent(telemetryEvent);
          } else {
            // Send telemetry for Secure Search declined
            var telemetryEvent = new Secure_Search_Toast()
              .action_type("Declined")
              .browser(_instrument.getBrowserTypeCode())
              .provider(_instrument.getSecureSearchProvider())
              .toastType("RegularToast_Red")
              .toggle_count(tc_str)
              .Serialize();
            _instrument.sendTelemetryEvent(telemetryEvent);
          }

          wa.Core.SecureSearch.disable();
        }

        _window.close();
      };

    return {
      show: show,
    };
  };
})((window.WebAdvisor = window.WebAdvisor || {}), jQuery);

$(function () {
  var toast = new WebAdvisor.UI.SecureSearchToast();
  toast.show();
});

//A4922110AA9C204BD36B0DFD4428C3E9A6DBB71B3257E8EF085401E073230F1EF886140CDA5575AEF6694B358FCEFE2CF71B3D764C89235B221F40F5ADD52B82++