{
  "meta": {
    "$_GET": [
      {
        "type": "text",
        "name": "offset"
      },
      {
        "type": "text",
        "name": "limit"
      },
      {
        "type": "text",
        "name": "sort"
      },
      {
        "type": "text",
        "name": "dir"
      },
      {
        "type": "text",
        "name": "search"
      },
      {
        "type": "text",
        "name": "vehicle_brand"
      },
      {
        "type": "text",
        "name": "manufacturer_brand"
      },
      {
        "type": "text",
        "name": "series"
      },
      {
        "type": "text",
        "name": "condition"
      },
      {
        "type": "text",
        "name": "photoshot"
      },
      {
        "type": "text",
        "name": "yt_short"
      },
      {
        "type": "text",
        "name": "yt_video"
      }
    ]
  },
  "exec": {
    "steps": [
      {
        "name": "",
        "module": "auth",
        "action": "restrict",
        "options": {
          "provider": "security",
          "permissions": [
            "Active"
          ]
        }
      },
      {
        "name": "list",
        "module": "dbconnector",
        "action": "paged",
        "options": {
          "connection": "db",
          "sql": {
            "type": "SELECT",
            "columns": [
              {
                "table": "diecast_cars",
                "column": "id"
              },
              {
                "table": "diecast_cars",
                "column": "model_name"
              },
              {
                "table": "diecast_cars",
                "column": "release_year"
              },
              {
                "table": "diecast_cars",
                "column": "scale"
              },
              {
                "table": "diecast_cars",
                "column": "has_real_car"
              },
              {
                "table": "diecast_cars",
                "column": "purchase_date"
              },
              {
                "table": "diecast_cars",
                "column": "price"
              },
              {
                "table": "c1",
                "column": "name",
                "alias": "brand"
              },
              {
                "table": "c2",
                "column": "name",
                "alias": "series"
              },
              {
                "table": "diecast_cars",
                "column": "brand_id"
              },
              {
                "table": "diecast_cars",
                "column": "series",
                "alias": "series_id"
              },
              {
                "table": "diecast_cars",
                "column": "case"
              },
              {
                "table": "c3",
                "column": "name",
                "alias": "vehicle_brand_name"
              },
              {
                "table": "diecast_cars",
                "column": "vehicle_brand_id"
              },
              {
                "table": "diecast_cars",
                "column": "condition"
              },
              {
                "table": "diecast_cars",
                "column": "yt_short_created"
              },
              {
                "table": "diecast_cars",
                "column": "yt_video_created"
              },
              {
                "table": "diecast_cars",
                "column": "photoshoot"
              },
              {
                "table": "diecast_cars",
                "column": "overview_created"
              }
            ],
            "params": [
              {
                "operator": "contains",
                "type": "expression",
                "name": ":P1",
                "value": "{{$_GET.search}}",
                "test": ""
              },
              {
                "operator": "equal",
                "type": "expression",
                "name": ":P2",
                "value": "{{$_GET.search}}",
                "test": ""
              },
              {
                "operator": "contains",
                "type": "expression",
                "name": ":P3",
                "value": "{{$_GET.search}}",
                "test": ""
              },
              {
                "operator": "contains",
                "type": "expression",
                "name": ":P4",
                "value": "{{$_GET.search}}",
                "test": ""
              },
              {
                "operator": "equal",
                "type": "expression",
                "name": ":P5",
                "value": "{{$_GET.manufacturer_brand}}",
                "test": ""
              },
              {
                "operator": "equal",
                "type": "expression",
                "name": ":P6",
                "value": "{{$_GET.series}}",
                "test": ""
              },
              {
                "operator": "equal",
                "type": "expression",
                "name": ":P7",
                "value": "{{$_GET.vehicle_brand}}",
                "test": ""
              },
              {
                "operator": "equal",
                "type": "expression",
                "name": ":P8",
                "value": "{{$_GET.condition}}",
                "test": ""
              },
              {
                "operator": "equal",
                "type": "expression",
                "name": ":P9",
                "value": "{{$_GET.yt_short}}",
                "test": ""
              },
              {
                "operator": "equal",
                "type": "expression",
                "name": ":P10",
                "value": "{{$_GET.yt_video}}",
                "test": ""
              },
              {
                "operator": "equal",
                "type": "expression",
                "name": ":P11",
                "value": "{{$_GET.photoshot}}",
                "test": ""
              },
              {
                "operator": "equal",
                "type": "expression",
                "name": ":P12",
                "value": "{{$_GET.overview}}",
                "test": ""
              }
            ],
            "table": {
              "name": "diecast_cars"
            },
            "primary": "id",
            "joins": [
              {
                "table": "collections",
                "column": "*",
                "alias": "c1",
                "type": "LEFT",
                "clauses": {
                  "condition": "AND",
                  "rules": [
                    {
                      "table": "c1",
                      "column": "id",
                      "operator": "equal",
                      "operation": "=",
                      "value": {
                        "table": "diecast_cars",
                        "column": "brand_id",
                        "type": "number"
                      }
                    }
                  ]
                },
                "primary": "id"
              },
              {
                "table": "collections",
                "column": "*",
                "alias": "c2",
                "type": "LEFT",
                "clauses": {
                  "condition": "AND",
                  "rules": [
                    {
                      "table": "c2",
                      "column": "id",
                      "operator": "equal",
                      "operation": "=",
                      "value": {
                        "table": "diecast_cars",
                        "column": "series",
                        "type": "text"
                      }
                    }
                  ]
                },
                "primary": "id"
              },
              {
                "table": "collections",
                "column": "*",
                "alias": "c3",
                "type": "LEFT",
                "clauses": {
                  "condition": "AND",
                  "rules": [
                    {
                      "table": "c3",
                      "column": "id",
                      "operator": "equal",
                      "operation": "=",
                      "value": {
                        "table": "diecast_cars",
                        "column": "vehicle_brand_id",
                        "type": "number"
                      }
                    }
                  ]
                },
                "primary": "id"
              }
            ],
            "sub": {
              "diecast_images": {
                "table": {
                  "name": "diecast_images",
                  "alias": "diecast_images"
                },
                "key": "diecast_id"
              }
            },
            "query": "select `diecast_cars`.`id`, `diecast_cars`.`model_name`, `diecast_cars`.`release_year`, `diecast_cars`.`scale`, `diecast_cars`.`has_real_car`, `diecast_cars`.`purchase_date`, `diecast_cars`.`price`, `c1`.`name` as `brand`, `c2`.`name` as `series`, `diecast_cars`.`brand_id`, `diecast_cars`.`series` as `series_id`, `diecast_cars`.`case`, `c3`.`name` as `vehicle_brand_name`, `diecast_cars`.`vehicle_brand_id`, `diecast_cars`.`condition`, `diecast_cars`.`yt_short_created`, `diecast_cars`.`yt_video_created`, `diecast_cars`.`photoshoot`, `diecast_cars`.`overview_created` from `diecast_cars` left join `collections` as `c1` on `c1`.`id` = `diecast_cars`.`brand_id` left join `collections` as `c2` on `c2`.`id` = `diecast_cars`.`series` left join `collections` as `c3` on `c3`.`id` = `diecast_cars`.`vehicle_brand_id` where (`diecast_cars`.`model_name` like ? or `diecast_cars`.`release_year` = ? or `c1`.`name` like ? or `c2`.`name` like ?) and (`diecast_cars`.`brand_id` = ?) and (`diecast_cars`.`series` = ?) and (`diecast_cars`.`vehicle_brand_id` = ?) and (`diecast_cars`.`condition` = ?) and (`diecast_cars`.`yt_short_created` = ?) and (`diecast_cars`.`yt_video_created` = ?) and (`diecast_cars`.`photoshoot` = ?) and (`diecast_cars`.`overview_created` = ?) order by `diecast_cars`.`id` DESC",
            "wheres": {
              "condition": "AND",
              "rules": [
                {
                  "condition": "OR",
                  "rules": [
                    {
                      "id": "diecast_cars.model_name",
                      "field": "diecast_cars.model_name",
                      "type": "string",
                      "operator": "contains",
                      "value": "{{$_GET.search}}",
                      "data": {
                        "table": "diecast_cars",
                        "column": "model_name",
                        "type": "text",
                        "columnObj": {
                          "type": "string",
                          "maxLength": 150,
                          "primary": false,
                          "nullable": false,
                          "name": "model_name"
                        }
                      },
                      "operation": "LIKE"
                    },
                    {
                      "id": "diecast_cars.release_year",
                      "field": "diecast_cars.release_year",
                      "type": "double",
                      "operator": "equal",
                      "value": "{{$_GET.search}}",
                      "data": {
                        "table": "diecast_cars",
                        "column": "release_year",
                        "type": "number",
                        "columnObj": {
                          "type": "integer",
                          "default": "",
                          "primary": false,
                          "nullable": true,
                          "name": "release_year"
                        }
                      },
                      "operation": "="
                    },
                    {
                      "id": "c1.name",
                      "field": "c1.name",
                      "type": "string",
                      "operator": "contains",
                      "value": "{{$_GET.search}}",
                      "data": {
                        "table": "c1",
                        "column": "name",
                        "type": "text",
                        "columnObj": {
                          "type": "string",
                          "maxLength": 50,
                          "primary": false,
                          "nullable": false,
                          "name": "name"
                        }
                      },
                      "operation": "LIKE"
                    },
                    {
                      "id": "c2.name",
                      "field": "c2.name",
                      "type": "string",
                      "operator": "contains",
                      "value": "{{$_GET.search}}",
                      "data": {
                        "table": "c2",
                        "column": "name",
                        "type": "text",
                        "columnObj": {
                          "type": "string",
                          "maxLength": 50,
                          "primary": false,
                          "nullable": false,
                          "name": "name"
                        }
                      },
                      "operation": "LIKE"
                    }
                  ],
                  "conditional": "{{$_GET.search}}"
                },
                {
                  "condition": "AND",
                  "rules": [
                    {
                      "id": "diecast_cars.brand_id",
                      "field": "diecast_cars.brand_id",
                      "type": "double",
                      "operator": "equal",
                      "value": "{{$_GET.manufacturer_brand}}",
                      "data": {
                        "table": "diecast_cars",
                        "column": "brand_id",
                        "type": "number",
                        "columnObj": {
                          "type": "reference",
                          "default": "",
                          "primary": false,
                          "nullable": true,
                          "references": "id",
                          "inTable": "collections",
                          "referenceType": "integer",
                          "onUpdate": "RESTRICT",
                          "onDelete": "RESTRICT",
                          "name": "brand_id"
                        }
                      },
                      "operation": "="
                    }
                  ],
                  "conditional": "{{$_GET.manufacturer_brand}}"
                },
                {
                  "condition": "AND",
                  "rules": [
                    {
                      "id": "diecast_cars.series",
                      "field": "diecast_cars.series",
                      "type": "double",
                      "operator": "equal",
                      "value": "{{$_GET.series}}",
                      "data": {
                        "table": "diecast_cars",
                        "column": "series",
                        "type": "number",
                        "columnObj": {
                          "type": "reference",
                          "primary": false,
                          "nullable": false,
                          "references": "id",
                          "inTable": "collections",
                          "referenceType": "integer",
                          "onUpdate": "RESTRICT",
                          "onDelete": "RESTRICT",
                          "name": "series"
                        }
                      },
                      "operation": "="
                    }
                  ],
                  "conditional": "{{$_GET.series}}"
                },
                {
                  "condition": "AND",
                  "rules": [
                    {
                      "id": "diecast_cars.vehicle_brand_id",
                      "field": "diecast_cars.vehicle_brand_id",
                      "type": "double",
                      "operator": "equal",
                      "value": "{{$_GET.vehicle_brand}}",
                      "data": {
                        "table": "diecast_cars",
                        "column": "vehicle_brand_id",
                        "type": "number",
                        "columnObj": {
                          "type": "reference",
                          "default": "",
                          "primary": false,
                          "nullable": true,
                          "references": "id",
                          "inTable": "collections",
                          "referenceType": "integer",
                          "onUpdate": "RESTRICT",
                          "onDelete": "RESTRICT",
                          "name": "vehicle_brand_id"
                        }
                      },
                      "operation": "="
                    }
                  ],
                  "conditional": "{{$_GET.vehicle_brand}}"
                },
                {
                  "condition": "AND",
                  "rules": [
                    {
                      "id": "diecast_cars.condition",
                      "field": "diecast_cars.condition",
                      "type": "string",
                      "operator": "equal",
                      "value": "{{$_GET.condition}}",
                      "data": {
                        "table": "diecast_cars",
                        "column": "condition",
                        "type": "text",
                        "columnObj": {
                          "type": "enum",
                          "enumValues": [
                            "Carded",
                            "Uncarded"
                          ],
                          "default": "",
                          "maxLength": 8,
                          "primary": false,
                          "nullable": true,
                          "name": "condition"
                        }
                      },
                      "operation": "="
                    }
                  ],
                  "conditional": "{{$_GET.condition}}"
                },
                {
                  "condition": "AND",
                  "rules": [
                    {
                      "id": "diecast_cars.yt_short_created",
                      "field": "diecast_cars.yt_short_created",
                      "type": "boolean",
                      "operator": "equal",
                      "value": "{{$_GET.yt_short}}",
                      "data": {
                        "table": "diecast_cars",
                        "column": "yt_short_created",
                        "type": "boolean",
                        "columnObj": {
                          "type": "boolean",
                          "default": "'0'",
                          "primary": false,
                          "nullable": true,
                          "name": "yt_short_created"
                        }
                      },
                      "operation": "="
                    }
                  ],
                  "conditional": "{{$_GET.yt_short == 1}}"
                },
                {
                  "condition": "AND",
                  "rules": [
                    {
                      "id": "diecast_cars.yt_video_created",
                      "field": "diecast_cars.yt_video_created",
                      "type": "boolean",
                      "operator": "equal",
                      "value": "{{$_GET.yt_video}}",
                      "data": {
                        "table": "diecast_cars",
                        "column": "yt_video_created",
                        "type": "boolean",
                        "columnObj": {
                          "type": "boolean",
                          "default": "'0'",
                          "primary": false,
                          "nullable": true,
                          "name": "yt_video_created"
                        }
                      },
                      "operation": "="
                    }
                  ],
                  "conditional": "{{$_GET.yt_video == 1}}"
                },
                {
                  "condition": "AND",
                  "rules": [
                    {
                      "id": "diecast_cars.photoshoot",
                      "field": "diecast_cars.photoshoot",
                      "type": "boolean",
                      "operator": "equal",
                      "value": "{{$_GET.photoshot}}",
                      "data": {
                        "table": "diecast_cars",
                        "column": "photoshoot",
                        "type": "boolean",
                        "columnObj": {
                          "type": "boolean",
                          "default": "'0'",
                          "primary": false,
                          "nullable": true,
                          "name": "photoshoot"
                        }
                      },
                      "operation": "="
                    }
                  ],
                  "conditional": "{{$_GET.photoshot == 1}}"
                },
                {
                  "condition": "AND",
                  "rules": [
                    {
                      "id": "diecast_cars.overview_created",
                      "field": "diecast_cars.overview_created",
                      "type": "boolean",
                      "operator": "equal",
                      "value": "{{$_GET.overview}}",
                      "data": {
                        "table": "diecast_cars",
                        "column": "overview_created",
                        "type": "boolean",
                        "columnObj": {
                          "type": "boolean",
                          "default": "'0'",
                          "primary": false,
                          "nullable": true,
                          "name": "overview_created"
                        }
                      },
                      "operation": "="
                    }
                  ],
                  "conditional": "{{$_GET.overview == 1}}"
                }
              ],
              "conditional": null,
              "valid": true
            },
            "orders": [
              {
                "table": "diecast_cars",
                "column": "id",
                "direction": "DESC",
                "recid": 1
              }
            ]
          }
        },
        "output": true,
        "meta": [
          {
            "name": "offset",
            "type": "number"
          },
          {
            "name": "limit",
            "type": "number"
          },
          {
            "name": "total",
            "type": "number"
          },
          {
            "name": "page",
            "type": "object",
            "sub": [
              {
                "name": "offset",
                "type": "object",
                "sub": [
                  {
                    "name": "first",
                    "type": "number"
                  },
                  {
                    "name": "prev",
                    "type": "number"
                  },
                  {
                    "name": "next",
                    "type": "number"
                  },
                  {
                    "name": "last",
                    "type": "number"
                  }
                ]
              },
              {
                "name": "current",
                "type": "number"
              },
              {
                "name": "total",
                "type": "number"
              }
            ]
          },
          {
            "name": "data",
            "type": "array",
            "sub": [
              {
                "type": "number",
                "name": "id"
              },
              {
                "type": "text",
                "name": "model_name"
              },
              {
                "type": "number",
                "name": "release_year"
              },
              {
                "type": "text",
                "name": "scale"
              },
              {
                "type": "boolean",
                "name": "has_real_car"
              },
              {
                "type": "date",
                "name": "purchase_date"
              },
              {
                "type": "number",
                "name": "price"
              },
              {
                "type": "text",
                "name": "brand"
              },
              {
                "type": "text",
                "name": "series"
              },
              {
                "type": "number",
                "name": "brand_id"
              },
              {
                "type": "number",
                "name": "series_id"
              },
              {
                "type": "text",
                "name": "case"
              },
              {
                "type": "text",
                "name": "vehicle_brand_name"
              },
              {
                "type": "number",
                "name": "vehicle_brand_id"
              },
              {
                "type": "text",
                "name": "condition"
              },
              {
                "type": "boolean",
                "name": "yt_short_created"
              },
              {
                "type": "boolean",
                "name": "yt_video_created"
              },
              {
                "type": "boolean",
                "name": "photoshoot"
              },
              {
                "type": "boolean",
                "name": "overview_created"
              },
              {
                "name": "diecast_images",
                "type": "array",
                "sub": [
                  {
                    "type": "number",
                    "name": "id"
                  },
                  {
                    "type": "number",
                    "name": "diecast_id"
                  },
                  {
                    "type": "text",
                    "name": "image_url"
                  }
                ]
              }
            ]
          }
        ],
        "outputType": "object",
        "collapsed": true
      }
    ]
  }
}