Started code review + some fixes (unfinished)
[vchess.git] / client / src / utils / timeControl.js
index 72d5557..9106b96 100644 (file)
@@ -1,49 +1,46 @@
-function timeUnitToSeconds(value, unit)
-{
+function timeUnitToSeconds(value, unit) {
   let seconds = value;
-  switch (unit)
-  {
-    case 'd':
-      seconds *= 24;
-    case 'h':
-      seconds *= 60;
-    case 'm':
+  switch (unit) {
+    case "d":
+      seconds *= 86400; //24*60*60
+      break;
+    case "h":
+      seconds *= 3600;
+      break;
+    case "m":
       seconds *= 60;
+      break;
   }
   return seconds;
 }
 
-function isLargerUnit(unit1, unit2)
-{
-  return (unit1 == 'd' && unit2 != 'd')
-    || (unit1 == 'h' && ['s','m'].includes(unit2))
-    || (unit1 == 'm' && unit2 == 's');
+function isLargerUnit(unit1, unit2) {
+  return (
+    (unit1 == "d" && unit2 != "d") ||
+    (unit1 == "h" && ["s", "m"].includes(unit2)) ||
+    (unit1 == "m" && unit2 == "s")
+  );
 }
 
-export function extractTime(cadence)
-{
-  let tcParts = cadence.replace(/ /g,"").split('+');
+export function extractTime(cadence) {
+  let tcParts = cadence.replace(/ /g, "").split("+");
   // Concatenate usual time control suffixes, in case of none is provided
   tcParts[0] += "m";
   tcParts[1] += "s";
   const mainTimeArray = tcParts[0].match(/^([0-9]+)([smhd]+)$/);
-  if (!mainTimeArray)
-    return null;
+  if (!mainTimeArray) return null;
   const mainTimeValue = parseInt(mainTimeArray[1]);
   const mainTimeUnit = mainTimeArray[2][0];
   const mainTime = timeUnitToSeconds(mainTimeValue, mainTimeUnit);
   let increment = 0;
-  if (tcParts.length >= 2)
-  {
+  if (tcParts.length >= 2) {
     const incrementArray = tcParts[1].match(/^([0-9]+)([smhd]+)$/);
-    if (!incrementArray)
-      return null;
+    if (!incrementArray) return null;
     const incrementValue = parseInt(incrementArray[1]);
     const incrementUnit = incrementArray[2][0];
     // Increment unit cannot be larger than main unit:
-    if (isLargerUnit(incrementUnit, mainTimeUnit))
-      return null;
+    if (isLargerUnit(incrementUnit, mainTimeUnit)) return null;
     increment = timeUnitToSeconds(incrementValue, incrementUnit);
   }
-  return {mainTime:mainTime, increment:increment};
+  return { mainTime: mainTime, increment: increment };
 }