// Zoe AIM Away Message RSS Feed Generator // // Seth King and Douglas Thrift // // $Id$ #include "Zoe.hpp" ext::String Buddy::getRssLink() const { std::string link(this->link); return link.substr(0, link.rfind('/')) + '/' + rss; } ext::String Buddy::getAtomLink() const { std::string link(this->link); return link.substr(0, link.rfind('/')) + '/' + atom; } ext::String Buddy::getDisplay(const Database& database) const { ext::Handle db(dbi::Connect(database.driver, database.host, database.user, database.password, database.db)); ext::Handle display(db->Execute("SELECT display " "FROM displays WHERE id='" + lexical_cast(id) + "'")); if (display->MoveNext()) return display->GetString("display"); else return login; } void Buddy::setDisplay(const ext::String& display, const Database& database) const { ext::Handle db(dbi::Connect(database.driver, database.host, database.user, database.password, database.db)); ext::Handle update(db->Execute("SELECT * FROM displays " "WHERE id = '" + lexical_cast(id) + "'")); if (update->MoveNext()) db->Execute("UPDATE displays SET display='" + display + "' WHERE id='" + lexical_cast(id) + "'"); else db->Execute("INSERT INTO displays (display, id) VALUES ('" + display + "', '" + lexical_cast(id) + "')"); }