bool cPenaltyList::AddPenalty(sPenalty &penal) { SetBaseTo(&mModel); mModel.mNick = penal.mNick; mModel.mOpNick = penal.mOpNick; bool keep = false; if (LoadPK()) { if(penal.mStartChat > mModel.mStartChat) mModel.mStartChat = penal.mStartChat; if(penal.mStartCTM > mModel.mStartCTM) mModel.mStartCTM = penal.mStartCTM; if(penal.mStartPM > mModel.mStartPM) mModel.mStartPM = penal.mStartPM; if(penal.mStartSearch > mModel.mStartSearch) mModel.mStartSearch = penal.mStartSearch; if(penal.mStopKick > mModel.mStopKick) mModel.mStopKick = penal.mStopKick; if(penal.mStopShare0 > mModel.mStopShare0) mModel.mStopShare0 = penal.mStopShare0; if(penal.mStopReg > mModel.mStopReg) mModel.mStopReg = penal.mStopReg; if(penal.mStopOpchat > mModel.mStopOpchat) mModel.mStopOpchat = penal.mStopOpchat; keep = mModel.ToKeepIt(); } else { SetBaseTo(&penal); keep = penal.ToKeepIt(); if (keep) { mCache.Add(penal.mNick); } } DeletePK(); if( keep ) return SavePK(false); else return false; }
/** add registered user */ bool cRegList::AddRegUser(const string &nick, cConnDC *op, int cl, const char *password) { cRegUserInfo ui; if(FindRegInfo(ui, nick)) return false; // Do not register opchat or hub security if(toLower(nick) == toLower(mS->mC.opchat_name) || toLower(nick) == toLower(mS->mC.hub_security)) return false; ui.mNick = nick;//@todo nick2dbkey if ((cl>=1 && cl<=5) || cl==10 || cl==-1) ui.mClass = cl; else ui.mClass = 1; ui.mRegDate = cTime().Sec(); ui.mRegOp = (op && op->mpUser) ? op->mpUser->mNick : string("hub-security"); if(password) ui.SetPass(string(password),mS->mC.default_password_encryption); else ui.SetPass(string(),mS->mC.default_password_encryption); if(cl < 0) ui.mPwdChange = false; if(mCache.IsLoaded()) mCache.Add(nick);//@todo nick2dbkey SetBaseTo(&ui); return SavePK(); }
/** log that user logged in */ bool cIPLog::Log(cConnDC *conn, int action, int info) { sUserStruct entry; entry.mIP = cBanList::Ip2Num(conn->AddrIP()); if(conn->mpUser != NULL) entry.mNick = conn->mpUser->mNick; else entry.mNick = ""; entry.mDate = cTime().Sec(); entry.mType = action; entry.mInfo = info; SetBaseTo(&entry); return SavePK(); }
bool cPenaltyList::RemPenalty(sPenalty &penal) { SetBaseTo(&mModel); mModel.mNick = penal.mNick; mModel.mOpNick = penal.mOpNick; time_t Now = cTime().Sec(); if(LoadPK()) { if(penal.mStartChat < Now) mModel.mStartChat = Now; if(penal.mStartCTM < Now) mModel.mStartCTM = Now; if(penal.mStartPM < Now) mModel.mStartPM = Now; if(penal.mStartSearch < Now) mModel.mStartSearch = Now; if(penal.mStopKick < Now) mModel.mStopKick = Now; if(penal.mStopShare0 < Now) mModel.mStopShare0 = Now; if(penal.mStopReg < Now) mModel.mStopReg = Now; if(penal.mStopOpchat < Now) mModel.mStopOpchat = Now; } if(mModel.ToKeepIt()) return SavePK(); else DeletePK(); return true; }
int cConfMySQL::Save() { SavePK(false); return 0; }
bool cMsgList::AddMessage( sMessage &msg ) { if (mCache.IsLoaded()) mCache.Add(msg.mReceiver); SetBaseTo(&msg); return SavePK(); }