void XTelepathyPasswordAuthOperation::storeCredentials(const QString &secret) { QString username = m_account->parameters().value(QStringLiteral("account")).toString(); Accounts::Manager *manager = KAccounts::accountsManager(); Accounts::Account *account = manager->account(m_accountStorageId); SignOn::Identity *identity; if (account) { Accounts::AccountService *service = new Accounts::AccountService(account, manager->service(QString()), this); Accounts::AuthData authData = service->authData(); identity = SignOn::Identity::existingIdentity(authData.credentialsId(), this); } else { // there's no valid KAccounts account, so let's try creating one QString providerName = QStringLiteral("ktp-"); providerName.append(m_account->serviceName()); qDebug() << "Creating account with providerName" << providerName; account = manager->createAccount(providerName); account->setDisplayName(m_account->displayName()); account->setValue("uid", m_account->objectPath()); account->setValue("username", username); account->setValue(QStringLiteral("auth/mechanism"), QStringLiteral("password")); account->setValue(QStringLiteral("auth/method"), QStringLiteral("password")); account->setEnabled(true); Accounts::ServiceList services = account->services(); Q_FOREACH(const Accounts::Service &service, services) { account->selectService(service); account->setEnabled(true); } }
bool accountExists(){ Accounts::Manager *manager; manager = new Accounts::Manager(); Accounts::AccountIdList accl = manager->accountList(); Accounts::Account *a; Accounts::ServiceList ss; for(int i =0; i<accl.length(); i++) { a = manager->account(accl[i]); ss = a->services(); for (int j=0; j<ss.length(); j++){ if(ss[j]->name()=="waxmpp"){ if(a->valueAsString("imsi") == Utilities::getImsi()){ return true; } } } } return false; }
Accounts::Account* AccountsModelPrivate::accountById(int id) { if (m_accHash.contains(id)) { return m_accHash.value(id); } Accounts::Account* account = m_manager->account(id); if (!account) { qDebug() << "\t Failed to get the account from manager"; return 0; } connect(account, SIGNAL(displayNameChanged(QString)), q, SLOT(accountUpdated())); m_accHash[id] = account; return account; }
AppletAvialabilityWidget::AppletAvialabilityWidget(QGraphicsItem *parent, Tp::AccountPtr account): MWidget(parent), m_account(account) { setMaximumSize(64,64); setMinimumSize(64,64); MFeedback* feedback1 = new MFeedback("priority2_static_press", this); connect(this, SIGNAL(pressed()), feedback1, SLOT(play())); MFeedback* feedback2 = new MFeedback("priority2_static_release", this); connect(this, SIGNAL(released()), feedback2, SLOT(play())); MFeedback* feedback3 = new MFeedback("priority2_grab", this); connect(this, SIGNAL(longpressed()), feedback3, SLOT(play())); m_iconService = new MImageWidget("icon-m-common-presence-unknown", this); m_iconService->setAspectRatioMode(Qt::KeepAspectRatio); m_iconService->setMaximumSize(64,64); m_iconService->setMinimumSize(64,64); m_iconService->setPos(0,0); m_iconPresence = new MImageWidget("icon-m-common-presence-unknown", this); m_iconPresence->setAspectRatioMode(Qt::KeepAspectRatio); m_iconPresence->setMaximumSize(24,24); m_iconPresence->setPos(40, 0); currentIconId = presenceToIconId(m_account->currentPresence()); requestedIconId = presenceToIconId(m_account->requestedPresence()); if (m_account->currentPresence().type() == Tp::ConnectionPresenceTypeOffline) nextPresence = Tp::Presence(Tp::ConnectionPresenceTypeAvailable, "", ""); else nextPresence = Tp::Presence(Tp::ConnectionPresenceTypeOffline, "", ""); m_iconPresence->setImage(currentIconId); isFakePresence = false; m_account->setConnectsAutomatically(false); QString serviceName = m_account->serviceName(); Accounts::Manager *manager = new Accounts::Manager(); Accounts::Service *service = manager->service(serviceName); QString serviceIconId = service->iconName(); m_iconService->setImage(serviceIconId); connect(m_account.data(), SIGNAL(changingPresence(bool)), SLOT(onChangingPresence(bool))); connect(m_account.data(), SIGNAL(currentPresenceChanged(Tp::Presence)), SLOT(onCurrentPresenceChanged(Tp::Presence))); connect(m_account.data(), SIGNAL(requestedPresenceChanged(Tp::Presence)), SLOT(onRequestedPresenceChanged(Tp::Presence))); connect(m_account.data(), SIGNAL(removed()), SLOT(onRemoved())); connect(m_account.data(), SIGNAL(stateChanged(bool)), SLOT(onStateChanged(bool))); presenceFaker = new QTimer(this); connect(presenceFaker, SIGNAL(timeout()), this, SLOT(fakerupdate())); grabGesture(Qt::TapAndHoldGesture); // pressTime = new QTimer(this); // pressTime->setSingleShot(true); // pressTime->setInterval(800); // connect(pressTime, SIGNAL(timeout()), this, SLOT(openPresence())); }