User create functionality finished