My logic is different. I want the user to validate their emails by clicking on the link but I want to know what's happen to the account created by users that don't click on it.
Such account remains in an 'disabled' state (which is fine), but over time, you can have a lot of such accounts.
I thought they will be 'disabled' and in draft mode, so I could clear them as object in draft mode or list them under the admin drafts. But they are object in a published state.
SO, is there a built in process in eZ that clean up unvalidated account or shoul I write a cron that delete all users with a status 'disabled' that are older than x days?
No,there is no built in process in eZ that clean up unvalidated account. So a contribution which would do that could maybe be useful for others as well.
But please note that if an account is disabled doesn't necessary mean that it never has been validated/activated. It could also be that an administrator has disabled it afterwards for various reasons, and intended not to delete it.