This app provides monitoring and information features for the common freifunk user and the technical stuff of a freifunk community.
Code base is taken from a TUM Practical Course project and added here to see if Freifunk Altdorf can use it.
https://www.freifunk-altdorf.de
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
912 B
26 lines
912 B
'use strict'; |
|
var hide = require('./$.hide') |
|
, redefine = require('./$.redefine') |
|
, fails = require('./$.fails') |
|
, defined = require('./$.defined') |
|
, wks = require('./$.wks'); |
|
|
|
module.exports = function(KEY, length, exec){ |
|
var SYMBOL = wks(KEY) |
|
, original = ''[KEY]; |
|
if(fails(function(){ |
|
var O = {}; |
|
O[SYMBOL] = function(){ return 7; }; |
|
return ''[KEY](O) != 7; |
|
})){ |
|
redefine(String.prototype, KEY, exec(defined, SYMBOL, original)); |
|
hide(RegExp.prototype, SYMBOL, length == 2 |
|
// 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue) |
|
// 21.2.5.11 RegExp.prototype[@@split](string, limit) |
|
? function(string, arg){ return original.call(string, this, arg); } |
|
// 21.2.5.6 RegExp.prototype[@@match](string) |
|
// 21.2.5.9 RegExp.prototype[@@search](string) |
|
: function(string){ return original.call(string, this); } |
|
); |
|
} |
|
}; |