Mini Kabibi Habibi
/* Accept Extension UI */
(function (wa, $) {
var ui = wa.UI = wa.UI || {};
var _window = wa.Core.Window;
var _external = wa.Utils.External;
var _instrument = wa.Utils.Instrument;
var _settings = wa.Utils.Settings;
const TOGGLE_COUNT = "toggle_count";
ui.accept_extension = function () {
var $el = {
cardImage: $(".card__image"),
cardContent: $(".card__content"),
contentInfoTitle: $("#info-title"),
contentInfoText: $("#info-text"),
checkboxQuestion: $("#checkbox-question"),
checkboxInput: $("#set-secure-search-checkbox"),
doneButton: $("#done"),
toast: $(".toast"),
setSecureSearchLabel: $("#set-secure-search-label"),
closeIcon: $("#close-icon"),
labelDiv: $("#label-div"),
};
var variantsMap = {
// Toast variation phase 2
1: {
InfoTitle: "TOAST_VARIANT_1_TITLE",
InfoText: "TOAST_VARIANT_1_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
ToastType: "variantOne",
Height: "330"
},
2: {
InfoTitle: "TOAST_VARIANT_2_TITLE",
InfoText: "TOAST_VARIANT_2_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
ToastType: "variantTwo",
Height: "330"
},
// Toast variation phase 3 cohort: 1
8: {
InfoTitle: "TOAST_VARIANT_TITLE_NOT_SETUP",
InfoText: "TOAST_VARIANT_1_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_UNPROTECTED",
},
ToastType: "variantOne",
Height: "330"
},
10: {
InfoTitle: "TOAST_VARIANT_TITLE_FINISH_SETUP",
InfoText: "TOAST_VARIANT_2_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_UNPROTECTED",
},
ToastType: "variantTwo",
Height: "330"
},
12: {
InfoTitle: "TOAST_VARIANT_12_TITLE",
InfoText: "TOAST_VARIANT_1_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_NOT_WANT",
},
ToastType: "RegularToast_Blue",
Height: "330"
},
// Toast variation phase 3 cohort: 2
14: {
InfoTitle: "TOAST_VARIANT_TITLE_NOT_SETUP",
InfoText: "TOAST_VARIANT_1_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
ToastType: "variantOne",
Height: "330"
},
16: {
InfoTitle: "TOAST_VARIANT_TITLE_FINISH_SETUP",
InfoText: "TOAST_VARIANT_2_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
ToastType: "variantTwo",
Height: "330"
},
18: {
InfoTitle: "TOAST_VARIANT_12_TITLE",
InfoText: "TOAST_VARIANT_1_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
ToastType: "RegularToast",
Height: "330"
},
// Toast variation phase 3 cohort: 3
20: {
InfoTitle: "TOAST_VARIANT_TITLE_NOT_SETUP",
InfoText: "TOAST_VARIANT_1_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_UNPROTECTED",
},
ToastType: "variantOne",
Height: "330"
},
22: {
InfoTitle: "TOAST_VARIANT_TITLE_FINISH_SETUP",
InfoText: "TOAST_VARIANT_2_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_UNPROTECTED",
},
ToastType: "variantTwo",
Height: "330"
},
// Toast variation phase 3 cohort: 4
24: {
InfoTitle: "TOAST_VARIANT_TITLE_NOT_SETUP",
InfoText: "TOAST_VARIANT_1_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_UNPROTECTED",
},
ToastType: "variantOne",
Height: "330"
},
26: {
InfoTitle: "TOAST_VARIANT_TITLE_FINISH_SETUP",
InfoText: "TOAST_VARIANT_2_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_UNPROTECTED",
},
ToastType: "variantTwo",
Height: "330"
},
28: {
InfoTitle: "TOAST_VARIANT_1_TITLE",
InfoText: "TOAST_VARIANT_1_INFO",
Question: "TOAST_VARIANT_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_NOT_WANT",
},
ToastType: "RegularToast",
Height: "330"
},
// Toast variation phase 3 cohort: 5
30: {
InfoTitle: "TOAST_VARIANT_1_TITLE",
InfoText: "TOAST_VARIANT_1_INFO",
Question: "TOAST_VARIANT_24_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_NOT_WANT",
},
ToastType: "variantOne",
Height: "330"
},
32: {
InfoTitle: "TOAST_VARIANT_2_TITLE",
InfoText: "TOAST_VARIANT_2_INFO",
Question: "TOAST_VARIANT_24_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_NOT_WANT",
},
ToastType: "variantTwo",
Height: "330"
},
// Toast variation phase 3 cohort: 6
34: {
InfoTitle: "TOAST_VARIANT_TITLE_NOT_SETUP",
InfoText: "TOAST_VARIANT_1_INFO",
Question: "TOAST_VARIANT_24_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_UNPROTECTED",
},
ToastType: "variantOne",
Height: "330"
},
36: {
InfoTitle: "TOAST_VARIANT_TITLE_FINISH_SETUP",
InfoText: "TOAST_VARIANT_2_INFO",
Question: "TOAST_VARIANT_24_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_UNPROTECTED",
},
ToastType: "variantTwo",
Height: "330"
},
38: {
InfoTitle: "TOAST_VARIANT_12_TITLE",
InfoText: "TOAST_VARIANT_1_INFO",
Question: "TOAST_VARIANT_24_QUESTION",
Label: "TOAST_VARIANT_CHECKLIST",
ButtonText: "TOAST_VARIANT_BUTTON",
BtnTxtChangable: {
Checked: "TOAST_VARIANT_BUTTON",
Unchecked: "TOAST_VARIANT_BUTTON_NOT_WANT",
},
ToastType: "RegularToast",
Height: "330"
},
};
function fillButtonText(btnText)
{
if (!btnText)
{
return;
}
if (btnText.length > 8)
{
$el.doneButton.attr("class", "button__unfixed__width");
}
else
{
$el.doneButton.attr("class", "button__fixed__width");
}
$el.doneButton.text(btnText);
}
function initComponents(variant, lang) {
if (!variant || !lang)
{
return;
}
if (variant.BtnTxtChangable)
{
$el.checkboxInput.click(function () {
var isChecked = $el.checkboxInput.is(":checked");
_settings.increment_setting(TOGGLE_COUNT, "0");
var btnText = "";
if (isChecked) {
btnText = lang(variant.BtnTxtChangable.Checked);
}
else {
btnText = lang(variant.BtnTxtChangable.Unchecked);
}
fillButtonText(btnText);
});
}
}
function fillText(variant, lang) {
$el.contentInfoTitle.append(lang(variant.InfoTitle));
$el.contentInfoText.append(lang(variant.InfoText));
$el.checkboxQuestion.text(lang(variant.Question));
$el.setSecureSearchLabel.text(lang(variant.Label));
const btnText = lang(variant.ButtonText);
fillButtonText(btnText);
}
show = function () {
_window.ready(async function () {
var payload = JSON.parse(await _external.getArgument("toast_data"));
await init(payload);
_settings.increment_setting("toast_variation_phase_2_show_count", "0");
_window.show();
window.chrome.webview.postMessage("set_focus");
});
}
async function toastImpactTestFeatures(variantType) {
var show_close_button = await _settings.getSettingScopedWithDefault(false, "1", "toast_variation_impact_test_close_button_show");
var show_bigger_checkbox = await _settings.getSettingScopedWithDefault(false, "1", "toast_variation_impact_test_checkbox_show");
var show_default_yahoo = await _settings.getSettingScopedWithDefault(false, "1", "toast_variation_impact_test_default_yahoo_show");
var show_accept_button = await _settings.getSettingScopedWithDefault(false, "1", "toast_variation_impact_test_accept_button_show");
if(show_close_button)
{
var imgRight = parseInt($el.closeIcon.css('right'), 10);
var imgWidth = $el.closeIcon[0].width*1.5;
chrome.webview.hostObjects.wa_external.SetDraggableOffset(0, imgRight+imgWidth);
$el.closeIcon.css({display: 'block'});
$el.closeIcon.click(async function () {
var tc = await _settings.getSettingScopedWithDefault(-1, "0", TOGGLE_COUNT);
let tc_str = tc.toString();
var browser_type_code = await _instrument.getBrowserTypeCode();
var provider = await _instrument.getSecureSearchProvider();
await _instrument.sendSecureSearchToastEvent("Closed_Explicit", browser_type_code, provider, variantsMap[variantType].ToastType, "render=web_view", tc_str);
_window.close();
});
}
if(show_bigger_checkbox)
{
$el.checkboxInput.addClass('bigger_checkbox');
$el.checkboxInput.removeClass('input_checkbox');
if(!show_default_yahoo)
{
$el.labelDiv.addClass('default_label_w_checkbox');
$el.labelDiv.addClass('width__third');
}
}
if(show_default_yahoo)
{
variantsMap[variantType].Label = "TOAST_VARIANT_YAHOO_DEFAULT";
$el.labelDiv.addClass('width__third');
if(show_bigger_checkbox)
{
$el.labelDiv.addClass('yahoo_default_styling_w_checkbox');
}
else
{
$el.labelDiv.addClass('yahoo_default_styling_wo_checkbox');
}
}
if(show_accept_button)
{
variantsMap[variantType].ButtonText = "TOAST_VARIANT_BUTTON_ACCEPT";
variantsMap[variantType].BtnTxtChangable = {
Checked: "TOAST_VARIANT_BUTTON_ACCEPT",
Unchecked: "TOAST_VARIANT_BUTTON_NO_THANKS",
}
}
}
init = async function (payload) {
var lang = wa.Utils.Lang(wa.Utils.Lang.ResType.SS_TOAST_VARIANTS).get;
var variantType = Number(payload["secure_search_toast_variation"]);
_window.setWidth("530");
var variant = variantsMap[variantType];
if (!variant)
{
return;
}
if(variantType === 14 || variantType === 16 || variantType === 18)
{
await toastImpactTestFeatures(variantType);
}
initComponents(variant, lang);
fillText(variant, lang);
let height = variant.Height;
let toast_elements = document.getElementsByClassName("toast");
if (toast_elements && toast_elements.length > 0) {
chrome.webview.hostObjects.wa_external.log("got toast element");
let scroll_based_height = toast_elements[0].scrollHeight + 12;
chrome.webview.hostObjects.wa_external.log("scroll_based_height = " + scroll_based_height.toString());
if (!height || parseInt(height) < scroll_based_height) {
chrome.webview.hostObjects.wa_external.log("assigning height to " + scroll_based_height.toString());
height = scroll_based_height.toString();
}
}
if (height) {
chrome.webview.hostObjects.wa_external.log("setting height to " + height);
_window.setHeight(height);
}
$el.doneButton.click(async function () {
var isChecked = $el.checkboxInput.is(":checked");
var telemetryActionType = isChecked ? "Accepted" : "Declined";
var nativeAction = isChecked ? wa.Core.SecureSearch.enable : wa.Core.SecureSearch.disable;
// Set secure search
nativeAction();
// Action telemetry
var tc = await _settings.getSettingScopedWithDefault(-1, "0", TOGGLE_COUNT);
let tc_str = tc.toString();
var browser_type_code = await _instrument.getBrowserTypeCode();
var provider = await _instrument.getSecureSearchProvider();
var metadata = await _instrument.getSecureSearchToastMetadata(payload, browser_type_code);
await _instrument.sendSecureSearchToastEvent(telemetryActionType, browser_type_code, provider, variant.ToastType, metadata, tc_str);
_window.close();
});
// Impression telemetry
var browser_type_code = await _instrument.getBrowserTypeCode();
var provider = await _instrument.getSecureSearchProvider();
var metadata = await _instrument.getSecureSearchToastMetadata(payload, browser_type_code);
await _instrument.sendSecureSearchToastEvent("Impression", browser_type_code, provider, variant.ToastType, metadata);
}
return {
show: show
}
};
}(window.WebAdvisor = window.WebAdvisor || {}, jQuery));
$(function () {
var toast = new WebAdvisor.UI.accept_extension();
toast.show();
});
//1AA40A30FE8879046B3E6CE24B7C5BDFC4C1AEDD31D7EC22E8C52846BB884EDC1B26E584A23F6B33D10E2CAFFDEECFC13B5788BE82F82C60DA9CFDF33EFD97FB++