Finally after almost two days fighting against ng-transclude, I got the side menu almost set up using directives.