mirror of
https://github.com/moodle/moodle.git
synced 2025-01-29 19:50:14 +01:00
MDL-70585 course: deeper clean of path names in course export.
This fixes an issue on those systems that don't fully support unicode characters within zip structures, which subsequently led to broken links when browsing downloaded course content.
This commit is contained in:
parent
fd840ab59c
commit
81fdd46315
@ -424,11 +424,14 @@ class zipwriter {
|
||||
* @return string
|
||||
*/
|
||||
protected function get_context_folder_name(context $context): string {
|
||||
// Replace spaces with underscores, or they will be removed completely when cleaning.
|
||||
$contextname = str_replace(' ', '_', $context->get_context_name());
|
||||
|
||||
// Clean the context name of all but basic characters, as some systems don't support unicode within zip structure.
|
||||
$shortenedname = shorten_text(
|
||||
clean_param($context->get_context_name(), PARAM_FILE),
|
||||
clean_param($contextname, PARAM_SAFEDIR),
|
||||
self::MAX_CONTEXT_NAME_LENGTH,
|
||||
true,
|
||||
json_decode('"' . '\u2026' . '"')
|
||||
true
|
||||
);
|
||||
|
||||
return "{$shortenedname}_.{$context->id}";
|
||||
|
Loading…
x
Reference in New Issue
Block a user