Ignore:
Timestamp:
08/22/12 00:11:58 (10 years ago)
Author:
Philipp Spitzer <philipp@…>
Branches:
master, qt5
Children:
7680536
Parents:
ca20842
Message:

On the way to fix #45.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/sql/schedulexmlparser.cpp

    rca20842 r2dffed3  
    3333}
    3434
    35 void ScheduleXmlParser::parseData(const QByteArray &aData, const QString& url)
     35void ScheduleXmlParser::parseData(const QByteArray &aData, const QString& url, int conferenceId)
    3636{
    3737    QDomDocument document;
     
    4848    SqlEngine::beginTransaction();
    4949
    50     int confId = 0;
    5150    QString conference_title;
    5251    if (!scheduleElement.isNull())
     
    5756            emit(parsingScheduleBegin());
    5857            QHash<QString,QString> conference;
    59             conference["id"] = QString::number(0); // conference ID is assigned automatically, or obtained from the DB
     58            conference["id"] = conferenceId; // conference ID is assigned automatically if 0
    6059            conference["title"] = conferenceElement.firstChildElement("title").text();
    6160            conference["subtitle"] = conferenceElement.firstChildElement("subtitle").text();
     
    6867            conference["timeslot_duration"] = conferenceElement.firstChildElement("timeslot_duration").text(); // time
    6968            conference["url"] = url;
    70             SqlEngine::addConferenceToDB(conference);
    71             confId = conference["id"].toInt();
     69            SqlEngine::addConferenceToDB(conference, conferenceId);
     70            conferenceId = conference["id"].toInt();
    7271            conference_title = conference["title"];
    7372        }
     
    105104                        room["name"] = roomElement.attribute("name");
    106105                        room["event_id"] = eventElement.attribute("id");
    107                         room["conference_id"] = QString::number(confId,10);
     106                        room["conference_id"] = QString::number(conferenceId,10);
    108107                        SqlEngine::addRoomToDB(room);
    109108
     
    111110                        QHash<QString,QString> event;
    112111                        event["id"] = eventElement.attribute("id");;
    113                         event["conference_id"] = QString::number(confId, 10);
     112                        event["conference_id"] = QString::number(conferenceId, 10);
    114113                        event["start"] = eventElement.firstChildElement("start").text(); // time eg. 10:00
    115114                        event["date"] = dayElement.attribute("date"); // date eg. 2009-02-07
     
    126125                        SqlEngine::addEventToDB(event);
    127126                        // process persons' nodes
    128                         QList<QString> persons;
    129127                        QDomElement personsElement = eventElement.firstChildElement("persons");
    130128                        QDomNodeList personList = personsElement.elementsByTagName("person");
     
    134132                            person["name"] = personList.at(i).toElement().text();
    135133                            person["event_id"] = eventElement.attribute("id");
    136                             person["conference_id"] = QString::number(confId, 10);
    137                             //qDebug() << "adding Person: " << person["name"];
     134                            person["conference_id"] = QString::number(conferenceId, 10);
    138135                            SqlEngine::addPersonToDB(person);
    139136                        }
     
    146143                            link["url"] = linkList.at(i).toElement().attribute("href");
    147144                            link["event_id"] = eventElement.attribute("id");
    148                             link["conference_id"] = QString::number(confId, 10);
     145                            link["conference_id"] = QString::number(conferenceId, 10);
    149146                            SqlEngine::addLinkToDB(link);
    150147                        }
Note: See TracChangeset for help on using the changeset viewer.