window.c.ProjectRewardList = (function(m, h, models, _){
  return {
    controller: function(args) {
      var listVM = m.postgrest.paginationVM(models.rewardDetail.getPage),
          filterVM = m.postgrest.filtersVM({project_id: 'eq'}),
          rewardDetails = m.prop([]);

      filterVM.project_id(args.project.id);

      //FIXME: row_order rank
      listVM.firstPage(filterVM.parameters()).then(rewardDetails);

      return {
        rewardDetails: rewardDetails
      };
    },

    view: function(ctrl, args) {
      //FIXME: MISSING ADJUSTS
      // - add draft admin modifications
      var project = args.project;
      return m('#rewards.u-marginbottom-30', _.map(ctrl.rewardDetails(), function(reward) {
        var contributionUrlWithReward = '/projects/' + project.id + '/contributions/new?reward_id=' + reward.id;

        return m('a[class="' + (h.rewardSouldOut(reward) ? "card-gone" : "card-reward " + (project.open_for_contributions ? 'clickable' : '') ) + ' card card-secondary u-marginbottom-10"][href="' + (project.open_for_contributions ? contributionUrlWithReward : 'js:void(0);') + '"]', [
          m('.u-marginbottom-20', [
            m('.fontsize-base.fontweight-semibold', 'Para R$ ' + h.formatNumber(reward.minimum_value) + ' ou mais'),
            m('.fontsize-smaller.fontweight-semibold', h.pluralize(reward.paid_count, ' apoiador', ' apoiadores')),
            (reward.maximum_contributions > 0 ? [
              (reward.waiting_payment_count > 0 ? m('.maximum_contributions.in_time_to_confirm.clearfix', [
                m('.pending.fontsize-smallest.fontcolor-secondary', h.pluralize(reward.waiting_payment_count, ' apoio em prazo de confirmação', ' apoios em prazo de confirmação.'))
              ]) : ''),
              (h.rewardSouldOut(reward) ? m('.u-margintop-10', [
                m('span.badge.badge-gone.fontsize-smaller', 'Esgotada')
              ]) : m('.u-margintop-10', [
                m('span.badge.badge-attention.fontsize-smaller', [
                  m('span.fontweight-bold', 'Limitada'),
                  ' ( ' + h.rewardRemaning(reward) + ' de ' + reward.maximum_contributions + ' disponíveis)'
                ])
              ]))
            ] : ''),
          ]),
          m('.fontsize-smaller.u-margintop-20', m.trust(h.simpleFormat(reward.description))),
          (!_.isEmpty(reward.deliver_at) ?
            m('.fontsize-smaller', [
              m('b', 'Estimativa de Entrega: '),
              h.momentify(reward.deliver_at, 'MMM/YYYY')
            ])
           : ''),
          (project.open_for_contributions ?
            m('.project-reward-box-hover', [
              m('.project-reward-box-select-text.u-text-center', 'Selecione essa recompensa')
            ]) : '' )
        ]);
      }));
    }
  };
}(window.m, window.c.h, window.c.models, window._));

@@ -108,82 +108,8 @@
 var 
-listVM = m.postgrest.paginationVM(models.rewardDetail.getPage),%0A          
 filt
@@ -245,56 +245,70 @@
 d);%0A
-%0A
       
-//FIXME: row_order rank%0A      listVM.firs
+filterVM.order(undefined);%0A%0A      models.rewardDetail.ge
 tPag

use getPage directly