/*
 * @Author: lixia
 * @Date: 2020-08-22 17:11:06
 * @Last Modified by: lixia
 * @Last Modified time: 2021-01-15 11:25:40
 */
/**
 * Created by PanJiaChen on 16/11/18.
 */

/**
 * @param {string} path
 * @returns {Boolean}
 */
export function isExternal(path) {
  return /^(https?:|mailto:|tel:)/.test(path)
}

/**
 * @param {string} str
 * @returns {Boolean}
 */
export function validUsername(str) {
  const valid_map = ['admin', 'editor']
  return valid_map.indexOf(str.trim()) >= 0
}
/**
 * @copyright
 * @description 校验密码是否小于6位 (字母，数字，下划线)
 * @param str
 * @returns {boolean}
 */
export function isPassword(str) {
  return /^[a-zA-Z0-9_]{6,16}$/.test(str)
}
/**
 * @copyright
 * @description 校验联系人匹配中文
 * @param str
 * @returns {boolean}
 */
export function isPerson(str) {
  return /^[\u4e00-\u9fa5]{1,20}$/.test(str)
}
/**
 * @copyright
 * @description 校验手机号码和座机号
 * @param str
 * @returns {boolean}
 */
export function isNumber(str) {
  return /^((0\d{2,3}-\d{7,8})|(1[0-9]{10}))$/.test(str)
}
/**
 * @copyright
 * @description 校验手机号码
 * @param str
 * @returns {boolean}
 */
export function isPhone(str) {
  return /^(1[0-9]{10})$/.test(str)
}
/**
 * @copyright
 * @description 校验库存大于等于1的整数
 * @param str
 * @returns {boolean}
 */
export function isGoodsNum(str) {
  return /^[1-9]\d*$/.test(str)
}
/**
 * @param {string} str
* @description 用户名 6到16位（字母，数字，下划线，中文）：
 * @returns {Boolean}
 */
export function isuser(str) {
  return /^[a-zA-Z0-9_\u4e00-\u9fa5]{2,16}$/.test(str)
}
/**
 * @copyright
 * @description 匹配验证价格、金额
 * @param str
 * @returns {boolean}
 */
export function isPrice(str) {
  return /((^[1-9]\d*)|^0)(\.\d{0,2}){0,1}$/.test(str)
}
/**
 * @copyright
 * @description (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
 * @param str
 * @returns {boolean}
 */
export function Format(fmt) {
  var o = {
    "M+": new Date().getMonth() + 1, // 月份
    "d+": new Date().getDate(), // 日
    "h+": new Date().getHours(), // 小时
    "m+": new Date().getMinutes(), // 分
    "s+": new Date().getSeconds(), // 秒
    "q+": Math.floor((new Date().getMonth() + 3) / 3), // 季度
    S: new Date().getMilliseconds(), // 毫秒
  };
  if (/(y+)/.test(fmt))
    fmt = fmt.replace(
      RegExp.$1,
      (new Date().getFullYear() + "").substr(4 - RegExp.$1.length)
    );
  for (var k in o)
    if (new RegExp("(" + k + ")").test(fmt))
      fmt = fmt.replace(
        RegExp.$1,
        RegExp.$1.length == 1
          ? o[k]
          : ("00" + o[k]).substr(("" + o[k]).length)
      );
  return fmt;
}
