@@ -58,15 +58,17 @@
#include "JsonDataMark.h"
#include "JsonSession.h"
//#include <syslog.h>
SubscribedChannelsRequestJSON::SubscribedChannelsRequestJSON()
SubscribedChannelsRequestJSON::SubscribedChannelsRequestJSON(QObject *parent)
: JsonSerializer(parent)
{
// syslog(LOG_INFO,"SubscribedChannelsRequestJSON::SubscribedChannelsRequestJSON()");
}


SubscribedChannelsRequestJSON::SubscribedChannelsRequestJSON(const QSharedPointer<common::User> &user)
SubscribedChannelsRequestJSON::SubscribedChannelsRequestJSON(const QSharedPointer<Session> &session, QObject *parent)
: JsonSerializer(parent)
{
m_usersContainer->push_back(user);
m_sessionsContainer->push_back(session);
}


@@ -50,6 +50,17 @@ WriteTagRequestJSON::WriteTagRequestJSON(QObject *parent) : JsonSerializer(paren
{
}

WriteTagRequestJSON::WriteTagRequestJSON(const QSharedPointer<Session> &session,
const QSharedPointer<Channel> &channel,
const QSharedPointer<DataMark> &tag,
QObject *parent)
: JsonSerializer(parent)
{
m_sessionsContainer->push_back(session);
m_channelsContainer->push_back(channel);
m_tagsContainer->push_back(tag);
}


bool WriteTagRequestJSON::parseJson(const QByteArray &data)
{
@@ -78,8 +89,10 @@ bool WriteTagRequestJSON::parseJson(const QByteArray &data)
QSharedPointer<Channel> channel(new JsonChannel(channel_name, "unknown"));

QSharedPointer<DataMark> tag(new JsonDataMark(altitude, latitude, longitude, title, description, link, time));
tag->setChannel(channel);
tag->setSession(session);
//tag->setChannel(channel);
//tag->setSession(session);
m_channelsContainer->push_back(channel);
m_sessionsContainer->push_back(session);
m_tagsContainer->push_back(tag);

return true;
@@ -91,8 +104,10 @@ QByteArray WriteTagRequestJSON::getJson() const
QJson::Serializer serializer;
QVariantMap request;
QSharedPointer<DataMark> mark = m_tagsContainer->at(0);
request.insert("auth_token", mark->getSession()->getSessionToken());
request.insert("channel", mark->getChannel()->getName());
QSharedPointer<Session> session = m_sessionsContainer->at(0);
QSharedPointer<Channel> channel = m_channelsContainer->at(0);
request.insert("auth_token", session->getSessionToken());
request.insert("channel", channel->getName());
request.insert("title", mark->getLabel().isEmpty()? "New mark":mark->getLabel());
request.insert("link", mark->getUrl());
request.insert("description", mark->getDescription());
@@ -506,8 +506,8 @@ namespace common
QSharedPointer<DataMark> dummyTag = request.getTags()->at(0);
syslog(LOG_INFO,"Adding mark with altitude = %f",dummyTag->getAltitude());

syslog(LOG_INFO,"Checking for sessions with token = %s",dummyTag->getSession()->getSessionToken().toStdString().c_str());
QSharedPointer<Session> dummySession = dummyTag->getSession();
QSharedPointer<Session> dummySession = request.getSessions()->at(0);
syslog(LOG_INFO,"Checking for sessions with token = %s",dummySession->getSessionToken().toStdString().c_str());
QSharedPointer<Session> realSession = findSession(dummySession);
if(realSession.isNull())
{
@@ -518,7 +518,7 @@ namespace common

QSharedPointer<User> realUser = realSession->getUser();

QSharedPointer<Channel> dummyChannel = dummyTag->getChannel();
QSharedPointer<Channel> dummyChannel = request.getChannels()->at(0);
QSharedPointer<Channel> realChannel;// Null pointer
QVector<QSharedPointer<Channel> > currentChannels = realUser->getSubscribedChannels()->vector();