mirror of
https://github.com/stashapp/stash.git
synced 2025-12-17 20:34:37 +03:00
Fix URL encoding (#2899)
* Fix URL encoding * Optimize nullable criterion encoding
This commit is contained in:
@@ -6,15 +6,6 @@ import { SceneListFilterOptions } from "./list-filter/scenes";
|
||||
|
||||
export type QueuedScene = Pick<Scene, "id" | "title" | "paths">;
|
||||
|
||||
interface IQueryParameters {
|
||||
qsort?: string;
|
||||
qsortd?: string;
|
||||
qfq?: string;
|
||||
qfp?: string;
|
||||
qfc?: string[];
|
||||
qs?: string[];
|
||||
}
|
||||
|
||||
export interface IPlaySceneOptions {
|
||||
sceneIndex?: number;
|
||||
newPage?: number;
|
||||
@@ -88,7 +79,7 @@ export class SceneQueue {
|
||||
|
||||
public static fromQueryParameters(params: string) {
|
||||
const ret = new SceneQueue();
|
||||
const parsed = queryString.parse(params) as IQueryParameters;
|
||||
const parsed = queryString.parse(params, { decode: false });
|
||||
const translated = {
|
||||
sortby: parsed.qsort,
|
||||
sortdir: parsed.qsortd,
|
||||
@@ -98,11 +89,12 @@ export class SceneQueue {
|
||||
};
|
||||
|
||||
if (parsed.qfp) {
|
||||
const decoded = ListFilterModel.decodeQueryParameters(translated);
|
||||
const query = new ListFilterModel(
|
||||
FilterMode.Scenes,
|
||||
translated as queryString.ParsedQuery,
|
||||
SceneListFilterOptions.defaultSortBy
|
||||
);
|
||||
query.configureFromQueryParameters(decoded);
|
||||
ret.query = query;
|
||||
} else if (parsed.qs) {
|
||||
// must be scene list
|
||||
|
||||
Reference in New Issue
Block a user