Can Elgg do this?

Hey guys,

I have a project which I want to complete finally, I have 500 community organisations that want a website, however what I thought would be good is to have one site like elgg, where the community organisations can each have there own groups, people can join the groups, but no one else can create new groups.

It's strictly only for the community organisations, for them to display the work they do, through images, upload files, documents etc, for them to put contact details, what work they do, etc. And other features like a normal website, also possibly is there a way to have private messaging and then i can private message all of them.

Also they will need the ability to advertise there events they are hosting etc, is this possible?