mirror of
https://github.com/stashapp/stash.git
synced 2025-12-17 04:14:39 +03:00
Various bug fixes (#2935)
* Sort scene/image/gallery tags by name * Calculate md5 if missing * Prevent multiple folder create logs
This commit is contained in:
@@ -303,10 +303,24 @@ type joiner interface {
|
||||
type joinRepository struct {
|
||||
repository
|
||||
fkColumn string
|
||||
|
||||
// fields for ordering
|
||||
foreignTable string
|
||||
orderBy string
|
||||
}
|
||||
|
||||
func (r *joinRepository) getIDs(ctx context.Context, id int) ([]int, error) {
|
||||
query := fmt.Sprintf(`SELECT %s as id from %s WHERE %s = ?`, r.fkColumn, r.tableName, r.idColumn)
|
||||
var joinStr string
|
||||
if r.foreignTable != "" {
|
||||
joinStr = fmt.Sprintf(" INNER JOIN %s ON %[1]s.id = %s.%s", r.foreignTable, r.tableName, r.fkColumn)
|
||||
}
|
||||
|
||||
query := fmt.Sprintf(`SELECT %[2]s.%[1]s as id from %s%s WHERE %s = ?`, r.fkColumn, r.tableName, joinStr, r.idColumn)
|
||||
|
||||
if r.orderBy != "" {
|
||||
query += " ORDER BY " + r.orderBy
|
||||
}
|
||||
|
||||
return r.runIdsQuery(ctx, query, []interface{}{id})
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user