Beispiel #1
0
bool ICQClient::load(istream &s, string &nextPart)
{
    ICQUser::load(s, nextPart);
    for (;;){
        if (!strcmp(nextPart.c_str(), "[ContactList]")){
            contacts.load(s, nextPart);
            continue;
        }
        if (!strcmp(nextPart.c_str(), "[Group]")){
            ICQGroup *grp = new ICQGroup;
            if (grp->load(s, nextPart)){
                contacts.groups.push_back(grp);
            }else{
                delete grp;
            }
            continue;
        }
        if (!strcmp(nextPart.c_str(), "[User]")){
            ICQUser *u = new ICQUser;
            if (u->load(s, nextPart) && u->Uin() && (u->Uin() != Uin())){
                contacts.users.push_back(u);
            }else{
                delete u;
            }
            continue;
        }
        break;
    }
    if (*EncryptedPassword.c_str() == 0)
        storePassword(DecryptedPassword.c_str());
    setupProxy();
    ICQEvent e(EVENT_INFO_CHANGED);
    process_event(&e);
    return true;
}
Beispiel #2
0
QVariantMap CoreAccount::toVariantMap(bool forcePassword) const
{
    QVariantMap v;
    v["AccountId"] = accountId().toInt(); // can't use AccountId because then comparison fails
    v["AccountName"] = accountName();
    v["Uuid"] = uuid().toString();
    v["Internal"] = isInternal();
    v["User"] = user();
    if (_storePassword || forcePassword)
        v["Password"] = password();
    else
        v["Password"] = QString();
    v["StorePassword"] = storePassword();
    v["HostName"] = hostName();
    v["Port"] = port();
    v["UseSSL"] = useSsl();
    v["ProxyType"] = proxyType();
    v["ProxyUser"] = proxyUser();
    v["ProxyPassword"] = proxyPassword();
    v["ProxyHostName"] = proxyHostName();
    v["ProxyPort"] = proxyPort();
    return v;
}