VulpesOS/gaia/apps/wappush/js/whitelist.js
OverSu b38dea0597 Publish Vulpes Preview 15 sources for desktop, Android and Tundra
Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
2026-09-30 23:13:03 +02:00

51 lines
1.5 KiB
JavaScript
Executable file

/* -*- Mode: js; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- /
/* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */
/* global LazyLoader */
/* exported WhiteList */
'use strict';
/**
* MSISDN whitelist, if not empty only the messages sent from the MSISDNs
* present in the list will be shown to the user, others will be discarded.
*/
var WhiteList = {
/** An array holding the list of MSISDNs */
_whiteList: [],
/**
* Read the whitelist.json file from disk and initialize the whitelist with
* it. If the file is not present or empty the whitelist will be empty.
*/
init: function wl_init() {
return LazyLoader.getJSON('js/whitelist.json')
.then(
(function wl_load(list) {
this._whiteList = list;
}).bind(this),
function () {
/**
* This reject handler is important here because in case of
* whitelist json file missing or empty, getJSON rejects the promise.
* If this handler is not present here, the returned promise from
* this function will fail for the outside code
*/
}
);
},
/**
* Checks if the element is in the whitelist.
*
* @return {Boolean} true if the element is in the whitelist, always return
* true if the whitelist is empty.
*/
has: function wl_has(value) {
if (this._whiteList.length === 0) {
return true;
}
return (this._whiteList.indexOf(value) !== -1);
}
};