Example #1
0
int cMsgList::DeliverMessagesSinceSync(unsigned sync)
{
	db_iterator it;
	int n = 0;
	cUser *user = NULL;
	nMySQL::cQuery DelQ(mQuery);

	SetBaseTo(&mModel);
	mQuery.Clear();
	SelectFields(mQuery.OStream());
	mQuery.OStream() << "WHERE date_sent >=" << sync;


	for(it = db_begin(); it != db_end(); ++it, ++n ) {
		if (!user || user->mNick != mModel.mReceiver)
			user = mServer->mUserList.GetUserByNick(mModel.mReceiver);

		if(user) {
			DeliverModelToUser(user);
			DelQ.Clear();
			DelQ.OStream() << "DELETE FROM " << mMySQLTable.mName;
			WherePKey(DelQ.OStream());
			DelQ.Query();
		}
	}

	DelQ.Clear();
	mQuery.Clear();
	return n;
}
Example #2
0
bool cConfMySQL::UpdatePK(cQuery &Query)
{
	UpdateFields(Query.OStream());
	WherePKey(Query.OStream());
	bool ret = Query.Query();
	Query.Clear();
	return ret;
}
Example #3
0
void cConfMySQL::DeletePK()
{
	mQuery.Clear();
	mQuery.OStream() << "DELETE FROM " << mMySQLTable.mName << " ";
	WherePKey(mQuery.OStream());
	mQuery.Query();
	mQuery.Clear();
}
Example #4
0
bool cConfMySQL::UpdatePKVar(cConfigItemBase *item)
{
	mQuery.OStream() << "UPDATE " << mMySQLTable.mName << " SET ";
	ufEqual(mQuery.OStream(), string(", "), true, true, true)(item);
	WherePKey(mQuery.OStream());
	bool ret = mQuery.Query();
	mQuery.Clear();
	return ret;
}
Example #5
0
bool cConfMySQL::LoadPK()
{
	ostringstream query;
	SelectFields(query);
	WherePKey(query);

	if (StartQuery(query.str()) == -1)
		return false;

	bool found = (Load() >= 0);
	EndQuery();
	return found;
}