#!/usr/bin/awk -f


function anonymize_word(w) {
  l=length(w);
  if (l==1) printf("."); 
  else if (l==2) printf("..");
  else if (l>2)
  {
    printf("%s", substr(w,1,1));
    for(j=2; j<=l-1;j++) printf(".");
    printf("%s", substr(w,l,1));
  }
}

function anonymize_string(str) {
  n2=split(str,arr2," ");
  anonymize_word(arr2[1])
  for(i2=2;i2<=n2;i2++)
  {
    printf(" ");
    anonymize_word(arr2[i2]);
  }
}

function patch() {
#  print($0);
  line=gensub("\\\\.", "", "g");
#  print(line);
  n=split(line,arr,"'");
  printf("%s", arr[1]);
  for(i=2; i<=n; i+=2)
  {
    printf("'");

    if (  match(arr[i], "^[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]([ tT][0-9][0-9]:[0-9][0-9]:[0-9][0-9])?$")>0 \
       || match(arr[i], "^[0-9]+(/[^ ]+)?$")>0 && match(arr[i], "^[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]")==0  \
       ) 
    {
      printf("%s", arr[i]);
    }
    else 
    {
      anonymize_string(arr[i]);
    }
    printf("'%s", arr[i+1]);
  }
  printf("\n");
  next;
}

/INSERT INTO `?customer_invoices/ { patch() }
/INSERT INTO `?clients/ { patch() }
{print}



