/*************************************************************************** jabbermessage.cpp - description ------------------- begin : Sun Mar 17 2002 copyright : (C) 2002 by Vladimir Shutoff email : vovan@shutoff.ru ***************************************************************************/ /*************************************************************************** * * * 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. * * * ***************************************************************************/ #include "jabbermessage.h" #include "jabber.h" #include "core.h" static DataDef jabberMessageData[] = { { "Subject", DATA_UTF, 1, 0 }, { NULL, 0, 0, 0 } }; JabberMessage::JabberMessage(Buffer *cfg) : Message(MessageJabber, cfg) { load_data(jabberMessageData, &data, cfg); } JabberMessage::~JabberMessage() { free_data(jabberMessageData, &data); } string JabberMessage::save() { string res = Message::save(); string s = save_data(jabberMessageData, &data); if (!s.empty()){ if (!res.empty()) res += "\n"; res += s; } return res; } QString JabberMessage::presentation() { QString res = i18n("
Subject: %1
") .arg(getSubject()); res += Message::presentation(); return res; } static Message *createJabberMessage(Buffer *cfg) { return new JabberMessage(cfg); } static MessageDef defJabber = { NULL, NULL, MESSAGE_DEFAULT, NULL, NULL, createJabberMessage, NULL, NULL }; static DataDef jabberMessageErrorData[] = { { "Error", DATA_UTF, 1, 0 }, { "Code", DATA_ULONG, 1, 0 }, { NULL, 0, 0, 0 } }; JabberMessageError::JabberMessageError(Buffer *cfg) : Message(MessageJabberError, cfg) { load_data(jabberMessageErrorData, &data, cfg); } JabberMessageError::~JabberMessageError() { free_data(jabberMessageErrorData, &data); } string JabberMessageError::save() { string res = Message::save(); string s = save_data(jabberMessageErrorData, &data); if (!s.empty()){ if (!res.empty()) res += "\n"; res += s; } return res; } QString JabberMessageError::presentation() { QString res = "";
res += i18n("Error");
if (getCode()){
res += " ";
res += QString::number(getCode());
}
QString err = getError();
if (!err.isEmpty()){
res += ": ";
res += err;
res += "";
}
res += "
";
res += i18n("Original message:");
res += "