author | skyhusker <skyhusker> | 2005-06-09 17:16:59 (UTC) |
---|---|---|
committer | skyhusker <skyhusker> | 2005-06-09 17:16:59 (UTC) |
commit | 6be140832d97bb485ba98bc9ea0f5cf622330595 (patch) (side-by-side diff) | |
tree | 48419a2990ea7f4ad815f0b113b92cff9137dddf /noncore | |
parent | 855e272549619c02efac516b2cd17828d7a3ad68 (diff) | |
download | opie-6be140832d97bb485ba98bc9ea0f5cf622330595.zip opie-6be140832d97bb485ba98bc9ea0f5cf622330595.tar.gz opie-6be140832d97bb485ba98bc9ea0f5cf622330595.tar.bz2 |
Fix bug 1666
-rw-r--r-- | noncore/net/opieirc/ircchannel.cpp | 6 | ||||
-rw-r--r-- | noncore/net/opieirc/ircchannel.h | 1 | ||||
-rw-r--r-- | noncore/net/opieirc/ircservereditor.cpp | 7 |
3 files changed, 12 insertions, 2 deletions
diff --git a/noncore/net/opieirc/ircchannel.cpp b/noncore/net/opieirc/ircchannel.cpp index 5d81596..b9e377d 100644 --- a/noncore/net/opieirc/ircchannel.cpp +++ b/noncore/net/opieirc/ircchannel.cpp @@ -45,4 +45,10 @@ IRCChannelPerson *IRCChannel::getPerson(QString nickname) { } return 0; } +bool IRCChannel::isValid(const QString &channel) +{ + return ( channel.startsWith("#") || channel.startsWith("&") + || channel.startsWith("+") || channel.startsWith("!")); +} + diff --git a/noncore/net/opieirc/ircchannel.h b/noncore/net/opieirc/ircchannel.h index a276f10..001f5bb 100644 --- a/noncore/net/opieirc/ircchannel.h +++ b/noncore/net/opieirc/ircchannel.h @@ -48,8 +48,9 @@ public: this is only relevant when joining a channel */ void setHasPeople(bool hasPeople); QString channelname(); bool hasPeople(); + static bool isValid(const QString &channel); protected: QList<IRCChannelPerson> m_people; QString m_channelname; bool m_hasPeople; diff --git a/noncore/net/opieirc/ircservereditor.cpp b/noncore/net/opieirc/ircservereditor.cpp index 1fda868..e5c9ab5 100644 --- a/noncore/net/opieirc/ircservereditor.cpp +++ b/noncore/net/opieirc/ircservereditor.cpp @@ -1,5 +1,6 @@ #include "ircservereditor.h" +#include "ircchannel.h" /* OPIE */ #include <qpe/qpeapplication.h> @@ -68,10 +69,12 @@ void IRCServerEditor::accept() { /* Now verify whether the channel list has a valid format */ QStringList channels = QStringList::split(QChar(','), m_channels->text()); for (QStringList::Iterator it = channels.begin(); it != channels.end(); ++it) { QString channelName = (*it).stripWhiteSpace(); - if (!channelName.startsWith("#") && !channelName.startsWith("+")) { - QMessageBox::critical(this, tr("Error"), tr("The channel list needs to contain a\ncomma separated list of channel\n names which start with either '#' or '+'")); + if (!IRCChannel::isValid(channelName)) { + QMessageBox::critical(this, tr("Error"), tr("The channel list needs to contain a\ncomma " + "separated list of valid\n channel names (starting \n" + "with one of '#' '+' '&' '!'")); return; } } QDialog::accept(); |