ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/zoe/trunk/Buddy.cpp
(Generate patch)

Comparing trunk/Buddy.cpp (file contents):
Revision 21 by douglas, 2004-07-16T23:37:41-07:00 vs.
Revision 49 by douglas, 2004-08-19T16:44:47-07:00

# Line 6 | Line 6
6  
7   #include "Zoe.hpp"
8  
9 < std::ostream& operator<<(std::ostream& sout, const Buddy& buddy)
9 > ext::String Buddy::getRssLink() const
10   {
11 <        sout << buddy.login << '(' << buddy.rss << ')';
11 >        std::string link(this->link);
12 >        
13 >        return link.substr(0, link.rfind('/')) + '/' + rss;
14 > }
15 >
16 > ext::String Buddy::getAtomLink() const
17 > {
18 >        std::string link(this->link);
19 >
20 >        return link.substr(0, link.rfind('/')) + '/' + atom;
21 > }
22 >
23 > ext::String Buddy::getDisplay(const Database& database) const
24 > {
25 >        ext::Handle<dbi::Connection> db(dbi::Connect(database.driver, database.host,
26 >                database.user, database.password, database.db));
27 >        ext::Handle<dbi::ResultSet> display(db->Execute("SELECT display "
28 >                "FROM displays WHERE id='" + lexical_cast<ext::String>(id) + "'"));
29 >
30 >        if (display->MoveNext()) return display->GetString("display");
31 >        else return login;
32 > }
33 >
34 > void Buddy::setDisplay(const ext::String& display, const Database& database) const
35 > {
36 >        ext::Handle<dbi::Connection> db(dbi::Connect(database.driver, database.host,
37 >                database.user, database.password, database.db));
38 >        ext::Handle<dbi::ResultSet> update(db->Execute("SELECT * FROM displays "
39 >                "WHERE id = '" + lexical_cast<ext::String>(id) + "'"));
40  
41 <        return sout;
41 >        if (update->MoveNext()) db->Execute("UPDATE displays SET display='"
42 >                + display + "' WHERE id='" + lexical_cast<ext::String>(id) + "'");
43 >        else db->Execute("INSERT INTO displays (display, id) VALUES ('" + display
44 >                + "', '" + lexical_cast<ext::String>(id) + "')");
45   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines