Server IP : 185.86.78.101 / Your IP : 216.73.216.124 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/wwwroot/mifepriston.org/node_modules/chardet/ |
Upload File : |
var fs = require('fs'); var utf8 = require('./encoding/utf8'), unicode = require('./encoding/unicode'), mbcs = require('./encoding/mbcs'), sbcs = require('./encoding/sbcs'), iso2022 = require('./encoding/iso2022'); var self = this; var recognisers = [ new utf8, new unicode.UTF_16BE, new unicode.UTF_16LE, new unicode.UTF_32BE, new unicode.UTF_32LE, new mbcs.sjis, new mbcs.big5, new mbcs.euc_jp, new mbcs.euc_kr, new mbcs.gb_18030, new iso2022.ISO_2022_JP, new iso2022.ISO_2022_KR, new iso2022.ISO_2022_CN, new sbcs.ISO_8859_1, new sbcs.ISO_8859_2, new sbcs.ISO_8859_5, new sbcs.ISO_8859_6, new sbcs.ISO_8859_7, new sbcs.ISO_8859_8, new sbcs.ISO_8859_9, new sbcs.windows_1251, new sbcs.windows_1256, new sbcs.KOI8_R ]; module.exports.detect = function(buffer, opts) { // Tally up the byte occurence statistics. var fByteStats = []; for (var i = 0; i < 256; i++) fByteStats[i] = 0; for (var i = buffer.length - 1; i >= 0; i--) fByteStats[buffer[i] & 0x00ff]++; var fC1Bytes = false; for (var i = 0x80; i <= 0x9F; i += 1) { if (fByteStats[i] != 0) { fC1Bytes = true; break; } } var context = { fByteStats: fByteStats, fC1Bytes: fC1Bytes, fRawInput: buffer, fRawLength: buffer.length, fInputBytes: buffer, fInputLen: buffer.length }; var matches = recognisers.map(function(rec) { return rec.match(context); }).filter(function(match) { return !!match; }).sort(function(a, b) { return b.confidence - a.confidence; }); if (opts && opts.returnAllMatches === true) { return matches; } else { return matches.length > 0 ? matches[0].name : null; } }; module.exports.detectFile = function(filepath, opts, cb) { if (typeof opts === 'function') { cb = opts; opts = undefined; } var fd; var handler = function(err, buffer) { if (fd) { fs.closeSync(fd); } if (err) return cb(err, null); cb(null, self.detect(buffer, opts)); }; if (opts && opts.sampleSize) { fd = fs.openSync(filepath, 'r'), sample = Buffer.allocUnsafe(opts.sampleSize); fs.read(fd, sample, 0, opts.sampleSize, null, function(err) { handler(err, sample); }); return; } fs.readFile(filepath, handler); }; module.exports.detectFileSync = function(filepath, opts) { if (opts && opts.sampleSize) { var fd = fs.openSync(filepath, 'r'), sample = Buffer.allocUnsafe(opts.sampleSize); fs.readSync(fd, sample, 0, opts.sampleSize); fs.closeSync(fd); return self.detect(sample, opts); } return self.detect(fs.readFileSync(filepath), opts); }; // Wrappers for the previous functions to return all encodings module.exports.detectAll = function(buffer, opts) { if (typeof opts !== 'object') { opts = {}; } opts.returnAllMatches = true; return self.detect(buffer, opts); } module.exports.detectFileAll = function(filepath, opts, cb) { if (typeof opts === 'function') { cb = opts; opts = undefined; } if (typeof opts !== 'object') { opts = {}; } opts.returnAllMatches = true; self.detectFile(filepath, opts, cb); } module.exports.detectFileAllSync = function(filepath, opts) { if (typeof opts !== 'object') { opts = {}; } opts.returnAllMatches = true; return self.detectFileSync(filepath, opts); }