|
|
|
@ -485,6 +485,71 @@ func (c *CompanionApp) Retrieve() error {
@@ -485,6 +485,71 @@ func (c *CompanionApp) Retrieve() error {
|
|
|
|
|
return nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (c *CompanionApp) RetrievePage(pageSize int32, page int32) ([]CompanionApp, error) { |
|
|
|
|
db := openDB() |
|
|
|
|
defer db.Close() |
|
|
|
|
var parms []interface{} |
|
|
|
|
statement := "SELECT * FROM companionapp WHERE" |
|
|
|
|
first := true |
|
|
|
|
|
|
|
|
|
if c.AppName != "" { |
|
|
|
|
parms = append(parms, c.AppName) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " AppName = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if c.APKLink != "" { |
|
|
|
|
parms = append(parms, c.APKLink) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " APKLink = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if c.GlassAppID != "" { |
|
|
|
|
parms = append(parms, c.GlassAppID) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " GlassAppID = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if c.AppID != "" { |
|
|
|
|
parms = append(parms, c.AppID) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " AppID = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
statement += fmt.Sprintf(" LIMIT %+v OFFSET %+v", pageSize, pageSize * page) |
|
|
|
|
LogMsg("Attempting to query using the following statement: %+v\nParams: %+v", statement, parms) |
|
|
|
|
rows, err := db.Query(statement, parms...) |
|
|
|
|
if err != nil { |
|
|
|
|
return nil, err |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
var ret []CompanionApp |
|
|
|
|
for rows.Next() { |
|
|
|
|
var c2 CompanionApp |
|
|
|
|
rows.Scan(&c2.AppName, &c2.APKLink, &c2.GlassAppID, &c2.AppID) |
|
|
|
|
ret = append(ret, c2) |
|
|
|
|
} |
|
|
|
|
LogMsg("DB Returned: %+v", c) |
|
|
|
|
return ret, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func (d *DownloadStats) Retrieve() error { |
|
|
|
|
db := openDB() |
|
|
|
|
defer db.Close() |
|
|
|
@ -544,6 +609,69 @@ func (d *DownloadStats) Retrieve() error {
@@ -544,6 +609,69 @@ func (d *DownloadStats) Retrieve() error {
|
|
|
|
|
return nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (d *DownloadStats) RetrievePage(pageSize int32, page int32) ([]DownloadStats, error) { |
|
|
|
|
db := openDB() |
|
|
|
|
defer db.Close() |
|
|
|
|
var parms []interface{} |
|
|
|
|
statement := "SELECT * FROM downloadstats WHERE" |
|
|
|
|
first := true |
|
|
|
|
|
|
|
|
|
if d.Identifier != "" { |
|
|
|
|
parms = append(parms, d.Identifier) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " Identifier = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if d.Rating != "" { |
|
|
|
|
parms = append(parms, d.Rating) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " Rating = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if d.Review != "" { |
|
|
|
|
parms = append(parms, d.Review) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " Review = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if d.GlassAppID != "" { |
|
|
|
|
parms = append(parms, d.GlassAppID) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " GlassAppID = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
statement += fmt.Sprintf(" LIMIT %+v OFFSET %+v", pageSize, pageSize * page) |
|
|
|
|
LogMsg("Attempting to query using the following statement: %+v\nParams: %+v", statement, parms) |
|
|
|
|
rows, err := db.Query(statement, parms...) |
|
|
|
|
if err != nil { |
|
|
|
|
return nil, err |
|
|
|
|
} |
|
|
|
|
var ret []DownloadStats |
|
|
|
|
for rows.Next() { |
|
|
|
|
var d2 DownloadStats |
|
|
|
|
rows.Scan(&d2.Identifier, &d2.Rating, &d2.Review, &d2.GlassAppID) |
|
|
|
|
ret = append(ret, d2) |
|
|
|
|
} |
|
|
|
|
LogMsg("DB Returned: %+v", d) |
|
|
|
|
return ret, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (a *AuthToken) Retrieve() error { |
|
|
|
|
db := openDB() |
|
|
|
|
defer db.Close() |
|
|
|
@ -640,6 +768,106 @@ func (a *AuthToken) Retrieve() error {
@@ -640,6 +768,106 @@ func (a *AuthToken) Retrieve() error {
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (a *AuthToken) RetrievePage(pageSize int32, page int32) ([]AuthToken, error) { |
|
|
|
|
db := openDB() |
|
|
|
|
defer db.Close() |
|
|
|
|
var parms []interface{} |
|
|
|
|
statement := "SELECT * FROM authtoken WHERE" |
|
|
|
|
first := true |
|
|
|
|
if a.Identifier != "" { |
|
|
|
|
parms = append(parms, a.Identifier) |
|
|
|
|
statement += " Identifier = ? " |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
if a.Email != "" { |
|
|
|
|
parms = append(parms, a.Email) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " Email = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if a.Username != "" { |
|
|
|
|
parms = append(parms, a.Username) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " Username = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if a.PasswordHash != "" { |
|
|
|
|
parms = append(parms, a.PasswordHash) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " PasswordHash = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if a.LastIP != "" { |
|
|
|
|
parms = append(parms, a.LastIP) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " LastIP = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if a.AuthToken != "" { |
|
|
|
|
parms = append(parms, a.AuthToken) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " AuthToken = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if a.PreviousHash != "" { |
|
|
|
|
parms = append(parms, a.PreviousHash) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " PreviousHash = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
if a.Current != "" { |
|
|
|
|
parms = append(parms, a.Current) |
|
|
|
|
if !first { |
|
|
|
|
statement += " AND " |
|
|
|
|
} else { |
|
|
|
|
first = false |
|
|
|
|
} |
|
|
|
|
statement += " Current = ? " |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
statement += fmt.Sprintf(" LIMIT %+v OFFSET %+v", pageSize, pageSize * page) |
|
|
|
|
LogMsg("Attempting to query using the following statement: %+v\nParams: %+v", statement, parms) |
|
|
|
|
rows, err := db.Query(statement, parms...) |
|
|
|
|
if err != nil { |
|
|
|
|
return nil, err |
|
|
|
|
} |
|
|
|
|
var ret []AuthToken |
|
|
|
|
for rows.Next() { |
|
|
|
|
var a2 AuthToken |
|
|
|
|
rows.Scan(&a2.Identifier, &a2.Email, &a2.Username, &a2.PasswordHash, &a2.LastIP, &a2.AuthToken, |
|
|
|
|
&a2.PreviousHash, &a2.Current) |
|
|
|
|
ret = append(ret, a2) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
LogMsg("DB Returned: %+v", a) |
|
|
|
|
return ret, nil |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (u *User) Delete() { |
|
|
|
|
db := openDB() |
|
|
|
|
defer db.Close() |
|
|
|
|