public function ajaxProcessUpdatePositions() { if ($this->tabAccess['edit'] === '1') { $way = (int) Tools::getValue('way'); $id_feature_value = (int) Tools::getValue('id'); $positions = Tools::getValue('feature_value'); $new_positions = array(); foreach ($positions as $k => $v) { if (!empty($v)) { $new_positions[] = $v; } } foreach ($new_positions as $position => $value) { $pos = explode('_', $value); if (isset($pos[2]) && (int) $pos[2] === $id_feature_value) { if ($feature = new FeatureValue((int) $pos[2])) { if (isset($position) && $feature->updatePosition($way, $position, $id_feature_value)) { echo 'ok position ' . (int) $position . ' for feature value ' . (int) $pos[1] . '\\r\\n'; } else { echo '{"hasError" : true, "errors" : "Can not update feature value ' . (int) $id_feature_value . ' to position ' . (int) $position . ' "}'; } } else { echo '{"hasError" : true, "errors" : "This feature value (' . (int) $id_feature_value . ') can t be loaded"}'; } break; } } } }