diff options
| author | Philipp Schüttlöffel <schuettloeffel@zqs.uni-hannover.de> | 2024-02-26 10:57:47 +0000 |
|---|---|---|
| committer | Jan-Hendrik Willms <tleilax+studip@gmail.com> | 2024-02-26 10:57:47 +0000 |
| commit | 6e456bc63a039905abc6677f1adaa8aff774f8a6 (patch) | |
| tree | 4418ddc7de73b91a7f8ad88233d21e8e1ce4d712 | |
| parent | b4cae932cbca495ee266cfddec7fb0da6b66b2e8 (diff) | |
Resolve "/shared/modul/description/ verwendet falschen Sprachicon Pfad"
Closes #2757
Merge request studip/studip!1869
| -rw-r--r-- | app/views/materialien/files/add_dokument.php | 2 | ||||
| -rw-r--r-- | app/views/materialien/files/details.php | 164 | ||||
| -rw-r--r-- | app/views/materialien/files/index.php | 2 | ||||
| -rw-r--r-- | app/views/materialien/files/range.php | 2 | ||||
| -rw-r--r-- | app/views/module/module/details.php | 3 | ||||
| -rw-r--r-- | app/views/module/module/modul.php | 2 | ||||
| -rw-r--r-- | app/views/module/module/module.php | 3 | ||||
| -rw-r--r-- | app/views/module/module/modulteil.php | 2 | ||||
| -rw-r--r-- | app/views/shared/deskriptor_language.php | 2 | ||||
| -rw-r--r-- | app/views/shared/modul/description.php | 2 | ||||
| -rw-r--r-- | lib/classes/MVV.class.php | 13 |
11 files changed, 104 insertions, 93 deletions
diff --git a/app/views/materialien/files/add_dokument.php b/app/views/materialien/files/add_dokument.php index effdde9..e53d917 100644 --- a/app/views/materialien/files/add_dokument.php +++ b/app/views/materialien/files/add_dokument.php @@ -24,7 +24,7 @@ <? foreach($GLOBALS['MVV_LANGUAGES']['values'] as $key => $entry) : ?> <tr> <td rowspan="2"> - <?= Assets::img('languages/lang_' . mb_strtolower($key) . '.gif') ?> + <?= Assets::img(MVV::getContentLanguageImagePath($key), ['alt' => $entry['name'], 'size' => 24]) ?> </td> <td> <label> diff --git a/app/views/materialien/files/details.php b/app/views/materialien/files/details.php index af72b0a..c3954a8 100644 --- a/app/views/materialien/files/details.php +++ b/app/views/materialien/files/details.php @@ -1,82 +1,82 @@ -<td colspan="10">
- <table class="default nohover">
- <tr>
- <td><?= _('Jahr'); ?></td>
- <td><?= htmlReady($doc_year); ?></td>
- </tr>
-
- <tr>
- <td><?= _('Art der Datei '); ?></td>
- <td><?= htmlReady($GLOBALS['MVV_DOCUMENTS']['TYPE']['values'][$doc_type]['name']); ?></td>
- </tr>
-
- <tr>
- <td><?= _('Dokumente'); ?></td>
- <td>
- <ul class="list-unstyled">
- <? foreach($documents as $key => $document): ?>
- <li>
- <?= Assets::img('languages/lang_' . mb_strtolower($key) . '.gif') ?>
- <b><?= htmlReady($document->getDisplayName()); ?></b>
- <? if($document->file_ref->isLink()): ?>
- <a href="<?= htmlReady($document->getFilename()); ?>" target="_blank"><?= htmlReady($document->getFilename()); ?></a>
- <? else: ?>
- <?= htmlReady($document->getFilename()); ?>
- <? endif; ?>
- </li>
- <? endforeach; ?>
- </ul>
- </td>
- </tr>
-
- <tr>
- <td><?= _('Kategoriezuordnung'); ?></td>
- <td><?= htmlReady($GLOBALS['MVV_DOCUMENTS']['CATEGORY']['values'][$doc_cat]['name']); ?></td>
- </tr>
-
- <tr>
- <td><?= _('Schlagwörter'); ?></td>
- <td>
- <? if ($doc_tags): ?>
- <ul>
- <? foreach(explode(';', $doc_tags) as $tag): ?>
- <li><?= htmlReady($GLOBALS['MVV_DOCUMENTS']['TAG']['values'][$tag]['name']); ?></li>
- <? endforeach; ?>
- </ul>
- <? endif; ?>
- </td>
- </tr>
-
- <tr>
- <td><?= _('Sichtbarkeit nach außen'); ?></td>
- <td><?= $doc_extvisible?_('sichtbar'):_('unsichtbar'); ?></td>
- </tr>
-
- <tr>
- <td><?= _('Zuordnungen'); ?></td>
- <td>
-
-
- <? if (!sizeof($relations)) : ?>
- <?= _('Das Dokument wurde noch nicht referenziert.') ?>
- <? else : ?>
- <? foreach ($relations as $object_type => $relation) : ?>
- <strong><?= htmlReady($object_type::getClassDisplayName()) ?></strong>
- <ul class="default">
- <? foreach ($relation as $rel) : ?>
- <? $related_object = $object_type::find($rel['range_id']) ?>
- <li>
- <a href="<?= $this->controller->url_for('materialien/files/dispatch', mb_strtolower($object_type), $rel['range_id']) ?>">
- <?= $related_object->getDisplayName() ?>
- </a>
- </li>
- <? endforeach; ?>
- </ul>
- <? endforeach; ?>
- <? endif; ?>
-
- </td>
- </tr>
-
- </table>
-</td>
+<td colspan="10"> + <table class="default nohover"> + <tr> + <td><?= _('Jahr'); ?></td> + <td><?= htmlReady($doc_year); ?></td> + </tr> + + <tr> + <td><?= _('Art der Datei '); ?></td> + <td><?= htmlReady($GLOBALS['MVV_DOCUMENTS']['TYPE']['values'][$doc_type]['name']); ?></td> + </tr> + + <tr> + <td><?= _('Dokumente'); ?></td> + <td> + <ul class="list-unstyled"> + <? foreach($documents as $key => $document): ?> + <li> + <?= Assets::img(MVV::getContentLanguageImagePath($key), ['size' => 24]) ?> + <b><?= htmlReady($document->getDisplayName()); ?></b> + <? if($document->file_ref->isLink()): ?> + <a href="<?= htmlReady($document->getFilename()); ?>" target="_blank"><?= htmlReady($document->getFilename()); ?></a> + <? else: ?> + <?= htmlReady($document->getFilename()); ?> + <? endif; ?> + </li> + <? endforeach; ?> + </ul> + </td> + </tr> + + <tr> + <td><?= _('Kategoriezuordnung'); ?></td> + <td><?= htmlReady($GLOBALS['MVV_DOCUMENTS']['CATEGORY']['values'][$doc_cat]['name']); ?></td> + </tr> + + <tr> + <td><?= _('Schlagwörter'); ?></td> + <td> + <? if ($doc_tags): ?> + <ul> + <? foreach(explode(';', $doc_tags) as $tag): ?> + <li><?= htmlReady($GLOBALS['MVV_DOCUMENTS']['TAG']['values'][$tag]['name']); ?></li> + <? endforeach; ?> + </ul> + <? endif; ?> + </td> + </tr> + + <tr> + <td><?= _('Sichtbarkeit nach außen'); ?></td> + <td><?= $doc_extvisible?_('sichtbar'):_('unsichtbar'); ?></td> + </tr> + + <tr> + <td><?= _('Zuordnungen'); ?></td> + <td> + + + <? if (!sizeof($relations)) : ?> + <?= _('Das Dokument wurde noch nicht referenziert.') ?> + <? else : ?> + <? foreach ($relations as $object_type => $relation) : ?> + <strong><?= htmlReady($object_type::getClassDisplayName()) ?></strong> + <ul class="default"> + <? foreach ($relation as $rel) : ?> + <? $related_object = $object_type::find($rel['range_id']) ?> + <li> + <a href="<?= $this->controller->url_for('materialien/files/dispatch', mb_strtolower($object_type), $rel['range_id']) ?>"> + <?= $related_object->getDisplayName() ?> + </a> + </li> + <? endforeach; ?> + </ul> + <? endforeach; ?> + <? endif; ?> + + </td> + </tr> + + </table> +</td> diff --git a/app/views/materialien/files/index.php b/app/views/materialien/files/index.php index 10f8d7a..1b00cec 100644 --- a/app/views/materialien/files/index.php +++ b/app/views/materialien/files/index.php @@ -47,7 +47,7 @@ </td> <td class="dont-hide"> <? foreach ($mvv_file->file_refs as $fileref) : ?> - <?= Assets::img('languages/lang_' . mb_strtolower($fileref->file_language) . '.gif') ?> + <?= Assets::img(MVV::getContentLanguageImagePath($fileref->file_language), ['size' => '24']) ?> <? endforeach; ?> </td> <td class="dont-hide"><?= htmlReady($GLOBALS['MVV_DOCUMENTS']['TYPE']['values'][$mvv_file->type]['name']) ?></td> diff --git a/app/views/materialien/files/range.php b/app/views/materialien/files/range.php index 8044b7a..bbf2475 100644 --- a/app/views/materialien/files/range.php +++ b/app/views/materialien/files/range.php @@ -63,7 +63,7 @@ </td> <td> <? foreach ($mvv_file->file_refs as $fileref) : ?> - <?= Assets::img('languages/lang_' . mb_strtolower($fileref->file_language) . '.gif') ?> + <?= Assets::img(MVV::getContentLanguageImagePath($fileref->file_language), ['size' => 24]) ?> <? endforeach; ?> </td> <td><?= htmlReady($GLOBALS['MVV_DOCUMENTS']['TYPE']['values'][$mvv_file->type]['name']); ?></td> diff --git a/app/views/module/module/details.php b/app/views/module/module/details.php index 694d8af..4509d52 100644 --- a/app/views/module/module/details.php +++ b/app/views/module/module/details.php @@ -23,8 +23,7 @@ <? foreach ($modulteil->deskriptoren->getAvailableTranslations() as $language) : ?> <? $lang = $GLOBALS['MVV_MODUL_DESKRIPTOR']['SPRACHE']['values'][$language]; ?> <a href="<?= $controller->action_link('modulteil/' . join('/', [$modulteil->id, $institut_id]), ['display_language' => $language]) ?>"> - <img src="<?= Assets::image_path('languages/lang_' . mb_strtolower($language) . '.gif') ?>" - alt="<?= $lang['name'] ?>" title="<?= $lang['name'] ?>"> + <?= Assets::img(MVV::getContentLanguageImagePath($language), ['alt' => $lang['name'], 'size' => 24]) ?> </a> <? endforeach; ?> <? endif; ?> diff --git a/app/views/module/module/modul.php b/app/views/module/module/modul.php index ba76e33..e209a18 100644 --- a/app/views/module/module/modul.php +++ b/app/views/module/module/modul.php @@ -694,6 +694,6 @@ if ($GLOBALS['MVV_MODUL']['SPRACHE']['default'] != $display_language) { </form> <? if (!$def_lang) : ?> <script> - jQuery('#modul_form').find('textarea, input[type=text]').after('<div style="padding-top:10px;"><a href="#" title="<?= _('Originalfassung anzeigen') ?>" class="mvv-show-original" data-type="modul"><img src="<?= Assets::image_path('languages/lang_' . mb_strtolower($modul->getDefaultLanguage()) . '.gif') ?>" alt="<?= _('Originalfassung') ?>"></a></div>'); + jQuery('#modul_form').find('textarea, input[type=text]').after('<div style="padding-top:10px;"><a href="#" title="<?= _('Originalfassung anzeigen') ?>" class="mvv-show-original" data-type="modul"><?= Assets::img(MVV::getContentLanguageImagePath($modul->getDefaultLanguage()), ['alt' => _('Originalfassung'), 'size' => 24]) ?></a></div>'); </script> <? endif; ?> diff --git a/app/views/module/module/module.php b/app/views/module/module/module.php index 09cd3f3..271e3f9 100644 --- a/app/views/module/module/module.php +++ b/app/views/module/module/module.php @@ -47,8 +47,7 @@ <? foreach ($languages as $language) : ?> <? $lang = $GLOBALS['MVV_MODUL_DESKRIPTOR']['SPRACHE']['values'][$language]; ?> <a href="<?= $controller->action_link('modul/' . $modul->id . '/', ['display_language' => $language]) ?>"> - <img src="<?= Assets::image_path('languages/lang_' . mb_strtolower($language) . '.gif') ?>" - alt="<?= $lang['name'] ?>" title="<?= $lang['name'] ?>"> + <?= Assets::img(MVV::getContentLanguageImagePath($language), ['alt' => $lang['name'], 'size' => 24]) ?> </a> <? endforeach; ?> <? endif; ?> diff --git a/app/views/module/module/modulteil.php b/app/views/module/module/modulteil.php index cbd1279..ad68ede 100644 --- a/app/views/module/module/modulteil.php +++ b/app/views/module/module/modulteil.php @@ -478,6 +478,6 @@ if ($GLOBALS['MVV_MODULTEIL']['SPRACHE']['default'] != $display_language) { </form> <? if (!$def_lang) : ?> <script> - jQuery('#modulteil_form').find('textarea, input[type=text]').after('<div style="padding-top:10px;"><a href="#" title="<?= _('Originalfassung anzeigen') ?>" class="mvv-show-original" data-type="modulteil"><img src="<?= Assets::image_path('languages/lang_' . mb_strtolower($modul->getDefaultLanguage()) . '.gif') ?>" alt="<?= _('Originalfassung') ?>"></a></div>'); + jQuery('#modulteil_form').find('textarea, input[type=text]').after('<div style="padding-top:10px;"><a href="#" title="<?= _('Originalfassung anzeigen') ?>" class="mvv-show-original" data-type="modulteil"><?= Assets::img(MVV::getContentLanguageImagePath($modul->getDefaultLanguage()), ['alt' => _('Originalfassung'), 'size' => 24]) ?></a></div>'); </script> <? endif; ?> diff --git a/app/views/shared/deskriptor_language.php b/app/views/shared/deskriptor_language.php index ff2a433..44cdb65 100644 --- a/app/views/shared/deskriptor_language.php +++ b/app/views/shared/deskriptor_language.php @@ -3,7 +3,7 @@ <? foreach ($GLOBALS[strtoupper($table)]['SPRACHE']['values'] as $lang => $value) : ?> <div style="padding-top:10px;"> <a href="<?= URLHelper::getLink($link, ['display_language' => $lang]) ?>"> - <img src="<?= Assets::image_path('languages/lang_' . mb_strtolower($lang) . '.gif') ?>" alt="<?= $value['name'] ?>"> + <?= Assets::img(MVV::getContentLanguageImagePath($lang), ['alt' => $value['name'], 'size' => 24]) ?> <?= $value['name'] ?> (<?= in_array($lang, $languages) ? 'bearbeiten' : 'neu anlegen' ?>) <?= $lang == $sprache ? Icon::create('accept', 'accept', [])->asImg() : '' ?> </a> diff --git a/app/views/shared/modul/description.php b/app/views/shared/modul/description.php index df6425f..59512bd 100644 --- a/app/views/shared/modul/description.php +++ b/app/views/shared/modul/description.php @@ -3,7 +3,7 @@ <? foreach ($modul->deskriptoren->getAvailableTranslations() as $language) : ?> <? $lang = $GLOBALS['MVV_MODUL_DESKRIPTOR']['SPRACHE']['values'][$language]; ?> <a data-dialog="size=auto;title='<?= htmlReady($modul->getDisplayName()) ?>'" href="<?= $controller->action_link('description/' . $modul->id . '/', ['display_language' => $language]) ?>"> - <img src="<?= Assets::image_path('languages/lang_' . mb_strtolower($language) . '.gif') ?>" alt="<?= $lang['name'] ?>" title="<?= $lang['name'] ?>"> + <?= Assets::img(MVV::getContentLanguageImagePath($language), ['alt' => $lang['name'], 'size' => 24]) ?> </a> <? endforeach; ?> </div> diff --git a/lib/classes/MVV.class.php b/lib/classes/MVV.class.php index a927498..67bbbeb 100644 --- a/lib/classes/MVV.class.php +++ b/lib/classes/MVV.class.php @@ -833,4 +833,17 @@ class MVV implements Loggable { return $result; } + /** + * Returns imagepath for given language, used by MVV + * First tries $GLOBALS['CONTENT_LANGUAGES'], if not defined returns hardcoded path + * + * @param string $language e.g. 'DE' + * @return string path to language icon + */ + public static function getContentLanguageImagePath($language): string + { + $content_language = $GLOBALS['MVV_MODUL_DESKRIPTOR']['SPRACHE']['values'][$language]['content_language']; + return 'languages/' . ($GLOBALS['CONTENT_LANGUAGES'][$content_language]?$GLOBALS['CONTENT_LANGUAGES'][$content_language]['picture']:'lang_' . mb_strtolower($language) . '.gif'); + } + } |
