示例#1
0
 /**
  * @param \yii\db\ActiveRecordInterface|\yii2tech\ar\position\PositionBehavior $model
  * @param $position
  * @throws BadRequestHttpException
  */
 protected function positionModel($model, $position)
 {
     switch (strtolower($position)) {
         case 'up':
         case 'prev':
             $model->movePrev();
             break;
         case 'down':
         case 'next':
             $model->moveNext();
             break;
         case 'top':
         case 'first':
             $model->moveFirst();
             break;
         case 'bottom':
         case 'last':
             $model->moveLast();
             break;
         default:
             if (is_numeric($position)) {
                 $model->moveToPosition($position);
             } else {
                 throw new BadRequestHttpException(Yii::t('yii', '{attribute} is invalid.', ['attribute' => $this->positionParam]));
             }
     }
 }