VaKeR CYBER ARMY
Logo of a company Server : Apache/2.4.41 (Ubuntu)
System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : 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_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /var/www/html/tech_preview/hr/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //var/www/html/tech_preview/hr/function_extra.js
var function_extra = {};
function_extra.LEFT = function(st, index){
    if (index === undefined) index = 1;
    return st.substr(0, index);
};

function_extra.LEFT.descriptor = {
    desc: "",
    argNames: ["str", "index"],
    argDescriptors:{
        str: "Chuỗi đầu vào",
        index: "Vị trí kết thúc"
    },
    returns: "Trả về phần đầu"
};

function_extra.LEN = function(st){
    return st.length;
};

function_extra.LEN.descriptor = {
    desc: "",
    argNames: ["str"],
    argDescriptors:{
        str: "Chuỗi đầu vào"
    },
    returns: "Trả về độ dài chuỗi"
};

function_extra.LOWER = function(st){
    return st.toLowerCase();
};

function_extra.LOWER.descriptor = {
    desc: "",
    argNames: ["str"],
    argDescriptors:{
        str: "Chuỗi đầu vào"
    },
    returns: "Trả về chuỗi viết thường"
};

function_extra.MID = function(st, start_num, num_chars){
    if (start_num > st.length) return "";
    if (start_num < 1 || num_chars < 0) return null;
    return st.substr(start_num - 1, num_chars);
};

function_extra.MID.descriptor = {
    desc: "",
    argNames: ["str", "start_index", "num_chars"],
    argDescriptors:{
        str: "Chuỗi đầu vào",
        start_index: "Vị trí bắt đầu",
        num_chars: "Số lượng ký tự"
    },
    returns: "Trả về chuỗi"
};

function_extra.RIGHT = function(st, num_chars){
    if (num_chars === undefined) num_chars = 1;
    if (num_chars > st.length) return st;
    return st.substr(st.length - num_chars, num_chars);
};

function_extra.RIGHT.descriptor = {
    desc: "",
    argNames: ["str", "num_chars"],
    argDescriptors:{
        str: "Chuỗi đầu vào",
        num_chars: "Số lượng ký tự"
    },
    returns: "Trả về chuỗi kết thúc"
};

function_extra.SEARCH = function(find_text, st, start_num){
    st = st.toLowerCase();
    find_text = find_text.toLowerCase();
    if (start_num === undefined) start_num = 1;
    if (start_num <= 0 || start_num > st.length) return null;
    st = st.substr(start_num - 1);
    var x = st.indexOf(find_text);
    if (x < 0) return null;
    return x + start_num;
};

function_extra.SEARCH.descriptor = {
    desc: "",
    argNames: ["find_text", "str", "start_index"],
    argDescriptors:{
        find_text: "Chuỗi cần tìm",
        str: "Chuỗi đầu vào",
        start_index: "Vị trí bắt đầu tìm kiếm"
    },
    returns: "Trả về vị trí bắt đầu của chuỗi cần tìm trong chuỗi ban đầu"
};

function_extra.VSEARCH = function(find_text, st, start_num){
    st = absol.string.nonAccentVietnamese(st.toLowerCase());
    find_text = absol.string.nonAccentVietnamese(find_text.toLowerCase());
    if (start_num === undefined) start_num = 1;
    if (start_num <= 0 || start_num > st.length) return null;
    st = st.substr(start_num - 1);
    function_extra.x = st.indexOf(find_text);
    if (x < 0) return null;
    return x + start_num;
};

function_extra.VSEARCH.descriptor = {
    desc: "Tìm kiếm không tính hoa thường, tiếng việt",
    argNames: ["find_text", "str", "start_index"],
    argDescriptors:{
        find_text: "Chuỗi cần tìm",
        str: "Chuỗi đầu vào",
        start_index: "Vị trí bắt đầu tìm kiếm"
    },
    returns: "Trả về vị trí bắt đầu của chuỗi cần tìm trong chuỗi ban đầu"
};

function_extra.UPPER = function(st){
    return st.toUpperCase();
};

function_extra.UPPER.descriptor = {
    desc: "",
    argNames: ["str"],
    argDescriptors:{
        str: "Chuỗi đầu vào"
    },
    returns: "Chuỗi viết hoa"
};

function_extra.RAND = function(){
    return Math.random();
};

function_extra.RAND.descriptor = {
    desc: "",
    argNames: [],
    argDescriptors: {},
    returns: "Số ngẫu nhiên"
};

function_extra.RANDBETWEEN = function(bottom, top){
    if (top < bottom) return null;
    return parseInt(Math.random()*(top + 1 - bottom) + bottom, 10);
};

function_extra.RANDBETWEEN .descriptor = {
    desc: "",
    argNames: ["bottom", "top"],
    argDescriptors:{
        bottom: "Số chặn dưới",
        top: "Số chặn trên"
    },
    returns: "Số nguyên ngẫu nhiên trong khoảng"
};

function_extra.ROUND = function (number, num_digits) {
    if (!EncodingClass.type.isNumber(number)) return null;
	if (number < 0) return - function_extra.ROUND(-number, num_digits);
    number = number*Math.pow(10, num_digits);
    number = Math.round(number);
    number = number/Math.pow(10, num_digits);
    return number;
};

function_extra.ROUND.descriptor = {
    desc: "Làm tròn số thập phân",
    argNames: ["number", "num_digits"],
    argDescriptors:{
        number: "Số đầu vào",
        num_digits: "Số chữ số cần làm tròn"
    },
    returns: "Số đã làm tròn"
};

function_extra.SUM = function(arr){
    if (!EncodingClass.type.isArray(arr)) return null;
    var res = 0;
    for (var i = 0; i < arr.length; i++){
        if (!EncodingClass.type.isNumber(arr[i])) return null;
        res += arr[i];
    }
    return res;
};

function_extra.SUM.descriptor = {
    desc: "Tính tổng",
    argNames: ["...args"],
    argDescriptors: {
        "...args": {
            type: "number[]"
        }
    },
    returns: "Trả về tổng các số"
};

function_extra.AVERAGE = function(arr){
    if (!EncodingClass.type.isArray(arr)) return null;
    var res = 0;
    for (var i = 0; i < arr.length; i++){
        if (!EncodingClass.type.isNumber(arr[i])) return null;
        res += arr[i];
    }
    return res/arr.length;
};

function_extra.AVERAGE.descriptor = {
    desc: "Tính trung bình",
    argNames: ["...args"],
    argDescriptors: {
        "...args": {
            type: "number[]"
        }
    },
    returns: "Trả về trung bình các số"
};

function_extra.COUNT = function(arr){
    var res = 0;
    for (var i = 0; i < arr.length; i++){
        if (arr[i] === null) continue; //coi lai undefined thi co tinh ko?
        res++;
    }
    return res;
};

function_extra.COUNT.descriptor = {
    desc: "Tính số lượng phân tử",
    argNames: ["...args"],
    argDescriptors: {
        "...args": {
            type: "number[]"
        }
    },
    returns: "Trả về số lượng phần tử"
};

function_extra.MAX = function(arr){
    var res = Number.NEGATIVE_INFINITY;
    for (var i = 0; i < arr.length; i++){
        if (isNaN(arr[i])) return null;
        if (arr[i] > res) res = arr[i];
    }
    return res;
};

function_extra.MAX.descriptor = {
    desc: "Tìm số lớn nhất",
    argNames: ["...args"],
    argDescriptors: {
        "...args": {
            type: "number[]"
        }
    },
    returns: "Trả về số lớn nhất"
};

function_extra.MIN = function(arr){
    var res = Number.POSITIVE_INFINITY;
    for (var i = 0; i < arr.length; i++){
        if (isNaN(arr[i])) return null;
        if (arr[i] < res) res = arr[i];
    }
    return res;
};

function_extra.MIN.descriptor = {
    desc: "Tìm số nhỏ nhất",
    argNames: ["...args"],
    argDescriptors: {
        "...args": {
            type: "number[]"
        }
    },
    returns: "Trả về số nhỏ nhất"
};

function_extra.FNAME = function(st){
    var s = st.split(" ");
    return s[0];
};

function_extra.FNAME.descriptor = {
    desc: "",
    argNames: ["str"],
    argDescriptors: {},
    returns: ""
};

function_extra.LNAME = function(st){
    var s = st.split(" ");
    return s[s.length - 1];
};

function_extra.LNAME.descriptor = {
    desc: "",
    argNames: ["str"],
    argDescriptors: {},
    returns: ""
};

function_extra.AND = function(arr){
    for (var i = 0; i < arr.length; i++){
        if (!arr[i]) return false;
    }
    return true;
};

function_extra.AND.descriptor = {
    desc: "",
    argNames: ["...args"],
    argDescriptors: {},
    returns: ""
};

function_extra.OR = function(arr){
    for (var i = 0; i < arr.length; i++){
        if (arr[i]) return true;
    }
    return false;
};

function_extra.OR.descriptor = {
    desc: "",
    argNames: ["...args"],
    argDescriptors: {},
    returns: ""
};

function_extra.NOT = function(x){
    return !x;
};

function_extra.NOT.descriptor = {
    desc: "",
    argNames: ["x"],
    argDescriptors: {},
    returns: ""
};

function_extra.TODAY = function(){
    return new Date();
};

function_extra.TODAY.descriptor = {
    desc: "",
    argNames: [],
    argDescriptors: {},
    returns: ""
};

VaKeR 2022