コード例 #1
0
 /**
  * Reorder modules positions (without holes)
  *
  * @return array Maximum position by type
  */
 protected function cleanPosition()
 {
     $modulesType = [];
     $this->moduleQuery->clear();
     $modules = $this->moduleQuery->orderByPosition(Criteria::ASC);
     /** @var \Thelia\Model\Module $module */
     foreach ($modules as $module) {
         if (!isset($modulesType[$module->getType()])) {
             $modulesType[$module->getType()] = 0;
         }
         $module->setPosition(++$modulesType[$module->getType()])->save();
     }
     return $modulesType;
 }