Changeset 90 in code for trunk/db.go


Ignore:
Timestamp:
Mar 12, 2020, 6:17:06 PM (5 years ago)
Author:
contact
Message:

Store NICK changes in the DB

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/db.go

    r89 r90  
    118118}
    119119
     120func (db *DB) StoreNetwork(username string, network *Network) error {
     121        db.lock.Lock()
     122        defer db.lock.Unlock()
     123
     124        var netUsername, netRealname *string
     125        if network.Username != "" {
     126                netUsername = &network.Username
     127        }
     128        if network.Realname != "" {
     129                netRealname = &network.Realname
     130        }
     131
     132        var err error
     133        if network.ID != 0 {
     134                _, err = db.db.Exec("UPDATE Network SET addr = ?, nick = ?, username = ?, realname = ? WHERE id = ?", network.Addr, network.Nick, netUsername, netRealname, network.ID)
     135        } else {
     136                var res sql.Result
     137                res, err = db.db.Exec("INSERT INTO Network(user, addr, nick, username, realname) VALUES (?, ?, ?, ?, ?)", username, network.Addr, network.Nick, netUsername, netRealname)
     138                if err != nil {
     139                        return err
     140                }
     141                network.ID, err = res.LastInsertId()
     142        }
     143        return err
     144}
     145
    120146func (db *DB) ListChannels(networkID int64) ([]Channel, error) {
    121147        db.lock.RLock()
Note: See TracChangeset for help on using the changeset viewer.