@@ 358-376 (lines=19) @@ | ||
355 | * |
|
356 | * @return string |
|
357 | */ |
|
358 | protected function generateSuffix(string $slug, string $separator, Collection $list): string |
|
359 | { |
|
360 | $len = strlen($slug . $separator); |
|
361 | ||
362 | // If the slug already exists, but belongs to |
|
363 | // our model, return the current suffix. |
|
364 | if ($list->search($slug) === $this->model->getKey()) { |
|
365 | $suffix = explode($separator, $slug); |
|
366 | ||
367 | return end($suffix); |
|
368 | } |
|
369 | ||
370 | $list->transform(function ($value, $key) use ($len) { |
|
371 | return (int) substr($value, $len); |
|
372 | }); |
|
373 | ||
374 | // find the highest value and return one greater. |
|
375 | return $list->max() + 1; |
|
376 | } |
|
377 | ||
378 | /** |
|
379 | * Get all existing slugs that are similar to the given slug. |
@@ 344-362 (lines=19) @@ | ||
341 | * |
|
342 | * @return string |
|
343 | */ |
|
344 | protected function generateSuffix(string $slug, string $separator, Collection $list): string |
|
345 | { |
|
346 | $len = strlen($slug . $separator); |
|
347 | ||
348 | // If the slug already exists, but belongs to |
|
349 | // our model, return the current suffix. |
|
350 | if ($list->search($slug) === $this->model->getKey()) { |
|
351 | $suffix = explode($separator, $slug); |
|
352 | ||
353 | return end($suffix); |
|
354 | } |
|
355 | ||
356 | $list->transform(function ($value, $key) use ($len) { |
|
357 | return (int) substr($value, $len); |
|
358 | }); |
|
359 | ||
360 | // find the highest value and return one greater. |
|
361 | return $list->max() + 1; |
|
362 | } |
|
363 | ||
364 | /** |
|
365 | * Get all existing slugs that are similar to the given slug. |