+ if (isset($validatedData['ruleset'])) {
+ $com = isset($validatedData['ruleset']['competitive']) && $validatedData['ruleset']['competitive'];
+ $owg = isset($validatedData['ruleset']['owg']) && $validatedData['ruleset']['owg'];
+ $mg = isset($validatedData['ruleset']['mg']) && $validatedData['ruleset']['mg'];
+ $nl = isset($validatedData['ruleset']['nl']) && $validatedData['ruleset']['nl'];
+ $any = $com || $owg || $mg || $nl;
+ $all = $com && $owg && $mg && $nl;
+ if ($any && !$all) {
+ $techs->where(function(Builder $query) use ($com, $owg, $mg, $nl) {
+ $query->whereNull('rulesets');
+ if ($com) {
+ $query->orWhere('rulesets->competitive', '=', true);
+ }
+ if ($owg) {
+ $query->orWhere('rulesets->owg', '=', true);
+ }
+ if ($mg) {
+ $query->orWhere('rulesets->mg', '=', true);
+ }
+ if ($nl) {
+ $query->orWhere('rulesets->nl', '=', true);
+ }
+ });
+ }
+ }
+