blob: c32d9b8b5ea7179c48d2d4da8e87b3e7209c15cf [file] [log] [blame]
// In order to pass i18n strings and settings values to the injected scripts,
// which don't have access to the chrome.* APIs, we use event listeners.
window.addEventListener('TWPT_sendRequest', evt => {
var request = evt.detail;
switch (request.data.action) {
case 'geti18nMessage':
var data = chrome.i18n.getMessage(
request.data.msg,
(Array.isArray(request.data.placeholders) ?
request.data.placeholders :
[]));
break;
case 'getProfileIndicatorOptions':
var data = {
'indicatorDot': options.profileindicator,
'numPosts': options.profileindicatoralt
};
break;
case 'getNumPostMonths':
var data = options.profileindicatoralt_months;
break;
default:
var data = 'unknownAction';
console.warn('Unknown action ' + request.data.action + '.');
break;
}
var response = {
data,
requestId: request.id,
prefix: (request.prefix || 'TWPT'),
};
window.postMessage(response, '*');
});