From 2dd7667489021341267d316472d375e8c89c79c0 Mon Sep 17 00:00:00 2001 From: Manuel Nickschas Date: Wed, 13 Feb 2008 00:42:59 +0000 Subject: [PATCH 1/1] Auto Identify works now. Also newly created networks will have sane defaults as well :) --- src/core/coresession.cpp | 1 + src/core/networkconnection.cpp | 8 +++++++- src/qtui/settingspages/networkssettingspage.cpp | 10 ++++++++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/core/coresession.cpp b/src/core/coresession.cpp index 54457c74..bce4cf70 100644 --- a/src/core/coresession.cpp +++ b/src/core/coresession.cpp @@ -142,6 +142,7 @@ void CoreSession::loadSettings() { info.autoReconnectInterval = 60; info.autoReconnectRetries = 20; info.useAutoIdentify = false; + info.autoIdentifyService = "NickServ"; info.rejoinChannels = true; Core::updateNetwork(user(), info); diff --git a/src/core/networkconnection.cpp b/src/core/networkconnection.cpp index a8b8e157..912c2c0f 100644 --- a/src/core/networkconnection.cpp +++ b/src/core/networkconnection.cpp @@ -174,8 +174,14 @@ void NetworkConnection::networkInitialized() { } void NetworkConnection::sendPerform() { + BufferInfo statusBuf = Core::bufferInfo(coreSession()->user(), network()->networkId(), BufferInfo::StatusBuffer); + // do auto identify + if(network()->useAutoIdentify() && !network()->autoIdentifyService().isEmpty() && !network()->autoIdentifyPassword().isEmpty()) { + userInputHandler()->handleMsg(statusBuf, QString("%1 IDENTIFY %2").arg(network()->autoIdentifyService(), network()->autoIdentifyPassword())); + } + // send perform list foreach(QString line, network()->perform()) { - if(!line.isEmpty()) userInput(Core::bufferInfo(coreSession()->user(), network()->networkId(), BufferInfo::StatusBuffer), line); + if(!line.isEmpty()) userInput(statusBuf, line); } } diff --git a/src/qtui/settingspages/networkssettingspage.cpp b/src/qtui/settingspages/networkssettingspage.cpp index 16aa61be..e7c35123 100644 --- a/src/qtui/settingspages/networkssettingspage.cpp +++ b/src/qtui/settingspages/networkssettingspage.cpp @@ -468,6 +468,16 @@ void NetworksSettingsPage::on_addNetwork_clicked() { info.networkId = id; info.networkName = dlg.networkName(); info.identity = 1; + + // defaults + info.useRandomServer = false; + info.useAutoReconnect = true; + info.autoReconnectInterval = 60; + info.autoReconnectRetries = 20; + info.useAutoIdentify = false; + info.autoIdentifyService = "NickServ"; + info.rejoinChannels = true; + networkInfos[id] = info; QListWidgetItem *item = insertNetwork(info); ui.networkList->setCurrentItem(item); -- 2.20.1