first implementation of a custom directives - still some works