summaryrefslogtreecommitdiffstats
path: root/kioslaves/imap4/mailaddress.cc
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-01-27 01:05:15 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-01-27 01:05:15 -0600
commit64df902cf71a8ee258fb85f6be26248f399aa01f (patch)
treedba58f705042c22cea26b678d5b0e4e9a34bf202 /kioslaves/imap4/mailaddress.cc
parentde53c98cab07e9c4b0f5e25dab82830fb6fc67ec (diff)
downloadtdepim-64df902cf71a8ee258fb85f6be26248f399aa01f.tar.gz
tdepim-64df902cf71a8ee258fb85f6be26248f399aa01f.zip
Rename a number of libraries and executables to avoid conflicts with KDE4
Diffstat (limited to 'kioslaves/imap4/mailaddress.cc')
-rw-r--r--kioslaves/imap4/mailaddress.cc323
1 files changed, 0 insertions, 323 deletions
diff --git a/kioslaves/imap4/mailaddress.cc b/kioslaves/imap4/mailaddress.cc
deleted file mode 100644
index 0ddd2ff04..000000000
--- a/kioslaves/imap4/mailaddress.cc
+++ /dev/null
@@ -1,323 +0,0 @@
-/**********************************************************************
- *
- * mailaddress.cc - mail address parser
- * Copyright (C) 2000 Sven Carstens
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * Send comments and bug fixes to
- *
- *********************************************************************/
-
-
-#include "mailaddress.h"
-#include "rfcdecoder.h"
-#include "mimehdrline.h"
-#include <kmime_util.h>
-
-mailAddress::mailAddress ()
-{
-}
-
-mailAddress::mailAddress (const mailAddress & lr):
-user (lr.user),
-host (lr.host),
-rawFullName (lr.rawFullName),
-rawComment (lr.rawComment)
-{
-// kdDebug(7116) << "mailAddress::mailAddress - " << getStr() << endl;
-}
-
-mailAddress & mailAddress::operator = (const mailAddress & lr)
-{
- // Avoid a = a.
- if (this == &lr)
- return *this;
-
- user = lr.user;
- host = lr.host;
- rawFullName = lr.rawFullName;
- rawComment = lr.rawComment;
-
-// kdDebug(7116) << "mailAddress::operator= - " << getStr() << endl;
-
- return *this;
-}
-
-
-
-
-mailAddress::~mailAddress ()
-{
-}
-
-mailAddress::mailAddress (char *aCStr)
-{
- parseAddress (aCStr);
-}
-
-int
-mailAddress::parseAddress (char *aCStr)
-{
- int retVal = 0;
- int skip;
- uint len;
- int pt;
-
- if (aCStr)
- {
- //skip leading white space
- skip = mimeHdrLine::skipWS ((const char *) aCStr);
- if (skip > 0)
- {
- aCStr += skip;
- retVal += skip;
- }
- while (*aCStr)
- {
- int advance;
-
- switch (*aCStr)
- {
- case '"':
- advance = mimeHdrLine::parseQuoted ('"', '"', aCStr);
- rawFullName += TQCString (aCStr, advance + 1);
- break;
- case '(':
- advance = mimeHdrLine::parseQuoted ('(', ')', aCStr);
- rawComment += TQCString (aCStr, advance + 1);
- break;
- case '<':
- advance = mimeHdrLine::parseQuoted ('<', '>', aCStr);
- user = TQCString (aCStr, advance + 1); // copy it
- len = advance;
- user = user.mid (1, len - 2); // strip <>
- len -= 2;
- pt = user.find('@');
- host = user.right (len - pt - 1); // split it into host
- user.truncate(pt); // and user
- break;
- default:
- advance = mimeHdrLine::parseWord ((const char *) aCStr);
- //if we've seen a FQ mailname the rest must be quoted or is just junk
- if (user.isEmpty ())
- {
- if (*aCStr != ',')
- {
- rawFullName += TQCString (aCStr, advance + 1);
- if (mimeHdrLine::skipWS ((const char *) &aCStr[advance]) > 0)
- {
- rawFullName += ' ';
- }
- }
- }
- break;
- }
- if (advance)
- {
- retVal += advance;
- aCStr += advance;
- }
- else
- break;
- advance = mimeHdrLine::skipWS ((const char *) aCStr);
- if (advance > 0)
- {
- retVal += advance;
- aCStr += advance;
- }
- //reached end of current address
- if (*aCStr == ',')
- {
- advance++;
- break;
- }
- }
- //let's see what we've got
- if (rawFullName.isEmpty ())
- {
- if (user.isEmpty ())
- retVal = 0;
- else
- {
- if (host.isEmpty ())
- {
- rawFullName = user;
- user.truncate(0);
- }
- }
- }
- else if (user.isEmpty ())
- {
- pt = rawFullName.find ('@');
- if (pt >= 0)
- {
- user = rawFullName;
- host = user.right (user.length () - pt - 1);
- user.truncate(pt);
- rawFullName.truncate(0);
- }
- }
-
-#if 0
-// dead
- if (!rawFullName.isEmpty ())
- {
-// if(fullName[0] == '"')
-// fullName = fullName.mid(1,fullName.length()-2);
-// fullName = fullName.simplifyWhiteSpace().stripWhiteSpace();
-// fullName = rfcDecoder::decodeRFC2047String(fullName.ascii());
- }
-#endif
- if (!rawComment.isEmpty ())
- {
- if (rawComment[0] == '(')
- rawComment = rawComment.mid (1, rawComment.length () - 2);
- rawComment = rawComment.stripWhiteSpace ();
-// comment = rfcDecoder::decodeRFC2047String(comment.ascii());
- }
- }
- else
- {
- //debug();
- }
- return retVal;
-}
-
-const TQCString
-mailAddress::getStr ()
-{
- TQCString retVal(128); // Should be generally big enough
-
- if (!rawFullName.isEmpty ())
- {
- KMime::addQuotes( rawFullName, false );
- retVal = rawFullName + " ";
- }
- if (!user.isEmpty ())
- {
- retVal += '<';
- retVal += user;
- if (!host.isEmpty ()) {
- retVal += '@';
- retVal += host;
- }
- retVal += '>';
- }
- if (!rawComment.isEmpty ())
- {
- retVal = '(' + rawComment + ')';
- }
-// kdDebug(7116) << "mailAddress::getStr - '" << retVal << "'" << endl;
- return retVal;
-}
-
-bool
-mailAddress::isEmpty () const
-{
- return user.isEmpty ();
-}
-
-void
-mailAddress::setFullName (const TQString & _str)
-{
- rawFullName = rfcDecoder::encodeRFC2047String (_str).latin1 ();
-}
-const TQString
-mailAddress::getFullName () const
-{
- return rfcDecoder::decodeRFC2047String (rawFullName);
-}
-
-void
-mailAddress::setCommentRaw (const TQCString & _str)
-{
- rawComment = _str;
-}
-
-void
-mailAddress::setComment (const TQString & _str)
-{
- rawComment = rfcDecoder::encodeRFC2047String (_str).latin1 ();
-}
-const TQString
-mailAddress::getComment () const
-{
- return rfcDecoder::decodeRFC2047String (rawComment);
-}
-
-const TQCString &
-mailAddress::getCommentRaw () const
-{
- return rawComment;
-}
-
-TQString
-mailAddress::emailAddrAsAnchor (const mailAddress & adr, bool shortAdr)
-{
- TQString retVal;
- if (!adr.getFullName ().isEmpty ())
- {
- // should do some umlaut escaping
- retVal += adr.getFullName () + " ";
- }
- if (!adr.getUser ().isEmpty () && !shortAdr)
- {
- retVal += "&lt;" + adr.getUser ();
- if (!adr.getHost ().isEmpty ())
- retVal += "@" + adr.getHost ();
- retVal += "&gt; ";
- }
- if (!adr.getComment ().isEmpty ())
- {
- // should do some umlaut escaping
- retVal = '(' + adr.getComment () + ')';
- }
-
- if (!adr.getUser ().isEmpty ())
- {
- TQString mail;
- mail = adr.getUser ();
- if (!mail.isEmpty () && !adr.getHost ().isEmpty ())
- mail += "@" + adr.getHost ();
- if (!mail.isEmpty ())
- retVal = "<A HREF=\"mailto:" + mail + "\">" + retVal + "</A>";
- }
- return retVal;
-}
-
-TQString
-mailAddress::emailAddrAsAnchor (const TQPtrList < mailAddress > &list, bool value)
-{
- TQString retVal;
- TQPtrListIterator < mailAddress > it (list);
-
- while (it.current ())
- {
- retVal += emailAddrAsAnchor ((*it.current ()), value) + "<BR></BR>\n";
- ++it;
- }
-
- return retVal;
-}
-
-
-void mailAddress::clear() {
- user.truncate(0);
- host.truncate(0);
- rawFullName.truncate(0);
- rawComment.truncate(0);
-}
-