Для сортировки по наличию и добавления фильтра «В наличии» необходимо внести в вызов сниппета следующие параметры (разметка MODX):
&loadModels=msProductRemains
&leftJoin={ "Remains": { "class":"msprRemains","on":"msProduct.id = Remains.product_id AND Remains.remains > 0" } }
&select={ "msProduct":"*","Remains":"(CASE WHEN SUM(Remains.remains)>0 THEN 1 ELSE 0 END) as remains }
&groupby=msProduct.id
&filters=mspr|remains:availability
&suggestionsRadio=mspr|remains
&tplFilter.row.mspr|value=tpl.mFilter2.filter.checkbox
&sort=mspr|remains:desc