/*
 * This file is part of KMyMoney, A Personal Finance Manager for KDE
 * Copyright (C) 2014 Christian Dávid <christian-david@web.de>
 *
 * 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, see <http://www.gnu.org/licenses/>.
 */

#include "unavailabletask.h"
#include <KLocalizedString>

unavailableTask::unavailableTask(const QDomElement& element)
    : m_data(element)
{
}

QString unavailableTask::jobTypeName() const
{
  return i18n("Could not load responsible plugin to view this task.");
}

QString unavailableTask::storagePluginIid() const
{
  return QString();
}

bool unavailableTask::sqlSave(QSqlDatabase databaseConnection, const QString& onlineJobId) const
{
  Q_UNUSED(databaseConnection);
  Q_UNUSED(onlineJobId);
  Q_ASSERT(false);
  return false;
}

bool unavailableTask::sqlModify(QSqlDatabase databaseConnection, const QString& onlineJobId) const
{
  Q_UNUSED(databaseConnection);
  Q_UNUSED(onlineJobId);
  Q_ASSERT(false);
  return false;
}

bool unavailableTask::sqlRemove(QSqlDatabase databaseConnection, const QString& onlineJobId) const
{
  Q_UNUSED(databaseConnection);
  Q_UNUSED(onlineJobId);
  Q_ASSERT(false);
  return false;
}

onlineTask* unavailableTask::createFromSqlDatabase(QSqlDatabase connection, const QString& onlineJobId) const
{
  Q_UNUSED(connection);
  Q_UNUSED(onlineJobId);
  return 0;
}

QString unavailableTask::responsibleAccount() const
{
  return QString();
}

unavailableTask* unavailableTask::createFromXml(const QDomElement& element) const
{
  return new unavailableTask(element);
}

void unavailableTask::writeXML(QDomDocument& document, QDomElement& parent) const
{
  Q_UNUSED(document);
  parent = m_data;
}

bool unavailableTask::hasReferenceTo(const QString& id) const
{
  Q_UNUSED(id);
  return false;
}

unavailableTask* unavailableTask::clone() const
{
  return new unavailableTask(m_data);
}

bool unavailableTask::isValid() const
{
  return true;
}
