split fetch and select community

Split fetch community and user interaction into two methods. Fetched communities are needed when user sets a community id as parameter too.