my $slug = lc $ctx->req->header('Slug'); $slug =~ s/[^a-z0-9]/-/; $slug =~ s/[-]{2,}/-/g; while (page_exists($slug)) { $slug++; } $slug = sprintf('uuid-%s', lc $self->uuid_generator->create_str) unless $slug =~ /^[a-z][a-z0-9-]*[a-z0-9]$/;