start from select2 move to mvc pattern to split this spaggety