Don't ask to fill vcards when they are not implemented in the server.
I've got ejabberd instance with almost all mods turned off (muc, private storage, and what's important - vcards). Gajim gets:
DEBUG: socket sent \<iq to="liori@localhost" type="get" id="46">
\<vCard xmlns="vcard-temp" />
\</iq>
DEBUG: socket got \<iq from='liori@localhost' to='liori@localhost/Gajim' type='error' id='46'>
\<vCard xmlns='vcard-temp'/>
\<error code='501' type='cancel'>
\<feature-not-implemented xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
\</error>
\</iq>
and then displays dialog to fill the vcard... despite that it won't be stored. Gajim should not ask to fill vcards and should not propose to fill in it the dialog after an account was created.