diff --git a/app/controllers/course/forum/index.php b/app/controllers/course/forum/index.php index f2c6de7913d32375e7b597f307bc85e448924a38..bb1b49cb25e43bcea34a7c294798ee687b106f9f 100644 --- a/app/controllers/course/forum/index.php +++ b/app/controllers/course/forum/index.php @@ -334,17 +334,6 @@ class Course_Forum_IndexController extends ForumController /* * * * P O S T I N G - A C T I O N S * * * */ /* * * * * * * * * * * * * * * * * * * * * * * * * */ - /** - * this action renders a preview of the submitted text - */ - function preview_action() { - if (Request::isXhr()) { - $this->render_text(formatReady(Request::get('posting'))); - } else { - $this->render_text(ForumEntry::getContentAsHtml(Request::get('posting'))); - } - } - /** * Add a new entry. Has a simple spambot protection and checks * the parent_id to add the entry to, throwing an exception if missing. diff --git a/app/controllers/messages.php b/app/controllers/messages.php index 417a721c94fe5a8a16e0869d9850585416f463e4..162083b51e8c8152e48f38e906cbd1134a8574a4 100644 --- a/app/controllers/messages.php +++ b/app/controllers/messages.php @@ -438,13 +438,7 @@ class MessagesController extends AuthenticatedController { } } $message .= "\n\n"; - if (Studip\Markup::editorEnabled()) { - $message = Studip\Markup::markupToHtml($message, false) . Studip\Markup::markupToHtml($old_message['message']); - } else if (Studip\Markup::isHtml($old_message['message'])) { - $message .= Studip\Markup::removeHtml($old_message['message']); - } else { - $message .= $old_message['message']; - } + $message = Studip\Markup::markupToHtml($message, false) . Studip\Markup::markupToHtml($old_message['message']); $this->default_message['message'] = $message; } $this->default_message['subject'] = mb_substr($old_message['subject'], 0, 4) === "RE: " ? $old_message['subject'] : "RE: ".$old_message['subject']; @@ -492,13 +486,7 @@ class MessagesController extends AuthenticatedController { } } $message .= "\n\n"; - if (Studip\Markup::editorEnabled()) { - $message = Studip\Markup::markupToHtml($message, false) . Studip\Markup::markupToHtml($old_message['message']); - } else if (Studip\Markup::isHtml($old_message['message'])) { - $message .= Studip\Markup::removeHtml($old_message['message']); - } else { - $message .= $old_message['message']; - } + $message = Studip\Markup::markupToHtml($message, false) . Studip\Markup::markupToHtml($old_message['message']); if ($old_message->getNumAttachments()) { //there is at least one attachment: we must copy it $old_attachment_folder = MessageFolder::findTopFolder($old_message->id); @@ -534,11 +522,7 @@ class MessagesController extends AuthenticatedController { } } if (Request::get('default_body')) { - if (Studip\Markup::editorEnabled()) { - $this->default_message['message'] = Studip\Markup::markupToHtml(Request::get("default_body")); - } else { - $this->default_message['message'] = Studip\Markup::removeHtml(Request::get("default_body")); - } + $this->default_message['message'] = Studip\Markup::markupToHtml(Request::get("default_body")); } if (Request::get('default_subject')) { $this->default_message['subject'] = Request::get("default_subject"); @@ -550,11 +534,8 @@ class MessagesController extends AuthenticatedController { $this->show_adressees = null; } if (trim($settings['sms_sig'])) { - if (Studip\Markup::editorEnabled()) { - $sms_sig = Studip\Markup::markAsHtml('<br><br><hr>' . Studip\Markup::markupToHtml($settings['sms_sig']) . '<br><br>'); - } else { - $sms_sig = "\n\n--\n" . $settings['sms_sig'] . "\n\n"; - } + $sms_sig = Studip\Markup::markAsHtml('<br><br><hr>' . Studip\Markup::markupToHtml($settings['sms_sig']) . '<br><br>'); + if ($forward_message || $quoted_message) { $this->default_message['message'] = $sms_sig . $this->default_message['message']; } else { @@ -909,13 +890,6 @@ class MessagesController extends AuthenticatedController { $this->render_nothing(); } - public function preview_action() - { - if (Request::isXhr()) { - $this->render_text(formatReady(Request::get('text'))); - } - } - public function delete_tag_action() { CSRFProtection::verifyUnsafeRequest(); diff --git a/app/controllers/settings/general.php b/app/controllers/settings/general.php index 8b6ef0edfb9a68f63ee8f0ac063dbbac72153076..734cca1a796cf3661db783cb2aa4cb0022957ba5 100644 --- a/app/controllers/settings/general.php +++ b/app/controllers/settings/general.php @@ -70,10 +70,6 @@ class Settings_GeneralController extends Settings_SettingsController $this->config->store('RESOURCES_CONFIRM_PLAN_DRAG_AND_DROP', Request::int('resources_confirm_plan_drag_and_drop')); } - if (Config::get()->WYSIWYG) { - $this->config->store('WYSIWYG_DISABLED', !Request::int('wysiwyg_enabled')); - } - if (Request::int('personal_notifications_activated')) { PersonalNotifications::activate($this->user->id); } else { diff --git a/app/views/admin/accessibility_info_text/index.php b/app/views/admin/accessibility_info_text/index.php index c236099ccbec1530435c4c2fedb7ea0af30c39e6..f2e46ff103b052715524ac1d5cdd019127536289 100644 --- a/app/views/admin/accessibility_info_text/index.php +++ b/app/views/admin/accessibility_info_text/index.php @@ -8,7 +8,7 @@ <?= _('Die angegebene Information wird im Datei-Hochladen-Dialog unter der Checkbox angezeigt.') ?> </label> <?= I18N::textarea('accessbility_info_text', Config::get()->ACCESSIBILITY_INFO_TEXT, - ['class' => 'add_toolbar wysiwyg', 'data-editor' => 'toolbar=small']) ?> + ['class' => 'wysiwyg', 'data-editor' => 'toolbar=small']) ?> </section> </fieldset> diff --git a/app/views/course/feedback/_new_edit_feedback_form.php b/app/views/course/feedback/_new_edit_feedback_form.php index b5268c0a4678f84bf032315452bb9cf08fe83270..224cd11e3f25cdc028f0e6a2e438078f81f5bd55 100644 --- a/app/views/course/feedback/_new_edit_feedback_form.php +++ b/app/views/course/feedback/_new_edit_feedback_form.php @@ -9,7 +9,7 @@ </label> <label> <?= _('Beschreibung') ?> - <textarea name="description" class="add_toolbar wysiwyg" + <textarea name="description" class="wysiwyg" placeholder="<?= _('Optionale Beschreibung') ?>"><?= wysiwygReady($feedback->description); ?></textarea> </label> <label> diff --git a/app/views/course/forum/index/_new_entry.php b/app/views/course/forum/index/_new_entry.php index 64f1c142c0d5f67927fc9b71014044d67e1b5074..62f0dc46751ab1544dadaa32eac3691934fb54db 100644 --- a/app/views/course/forum/index/_new_entry.php +++ b/app/views/course/forum/index/_new_entry.php @@ -34,7 +34,7 @@ <? endif; ?> <label> - <textarea class="add_toolbar wysiwyg size-l" data-textarea="new_entry" name="content" required tabindex="3" + <textarea class="wysiwyg size-l" data-textarea="new_entry" name="content" required tabindex="3" placeholder="<?= _('Schreiben Sie hier Ihren Beitrag.') ?>"></textarea> </label> @@ -52,16 +52,11 @@ <?= Studip\LinkButton::createCancel(_('Abbrechen'), '', [ 'onClick' => "return STUDIP.Forum.cancelNewEntry();", 'tabindex' => '4']) ?> - - <?= Studip\LinkButton::create(_('Vorschau'), "javascript:STUDIP.Forum.preview('new_entry', 'new_entry_preview');", ['tabindex' => '5', 'class' => 'js']) ?> </footer> <input type="hidden" name="parent" value="<?= $topic_id ?>"> <input type="text" name="nixda" style="display: none;"> <?= CSRFProtection::tokenTag() ?> </form> - - <?= $this->render_partial('course/forum/index/_preview', ['preview_id' => 'new_entry_preview']) ?> - <br> </div> </script> diff --git a/app/views/course/forum/index/_post.php b/app/views/course/forum/index/_post.php index d21b4ef508f2edf2d4ba68876c2fb2291b7a4323..f6e3696293933f94e5948d5a11ccb6684459413a 100644 --- a/app/views/course/forum/index/_post.php +++ b/app/views/course/forum/index/_post.php @@ -86,7 +86,7 @@ <!-- Postinginhalt --> <div class="content"> <span data-edit-topic="<?= $post['topic_id'] ?>" <?= $edit_posting == $post['topic_id'] ? '' : 'style="display: none;"' ?>> - <textarea data-textarea="<?= $post['topic_id'] ?>" data-reset="<?= wysiwygReady($post['content_raw']) ?>" name="content" class="add_toolbar wysiwyg"><?= wysiwygReady($post['content_raw']) ?></textarea> + <textarea data-textarea="<?= $post['topic_id'] ?>" data-reset="<?= wysiwygReady($post['content_raw']) ?>" name="content" class="wysiwyg"><?= wysiwygReady($post['content_raw']) ?></textarea> </span> <span data-show-topic="<?= $post['topic_id'] ?>" data-topic-content="<?= $post['topic_id'] ?>" <?= $edit_posting != $post['topic_id'] ? '' : 'style="display: none;"' ?>> @@ -106,8 +106,6 @@ <?= Studip\LinkButton::createCancel(_('Abbrechen'), $controller->link_for('course/forum/index/index/'. $post['topic_id'] .'#'. $post['topic_id']), ['onClick' => "STUDIP.Forum.cancelEditEntry('". $post['topic_id'] ."'); return false;"]) ?> - - <?= Studip\LinkButton::create(_('Vorschau'), "javascript:STUDIP.Forum.preview('". $post['topic_id'] ."', 'preview_". $post['topic_id'] ."');") ?> </span> <span data-show-topic="<?= $post['topic_id'] ?>" <?= $edit_posting != $post['topic_id'] ? '' : 'style="display: none;"' ?>> @@ -262,5 +260,3 @@ <div class="clear"></div> </div> </form> - -<?= $this->render_partial('course/forum/index/_preview', ['preview_id' => 'preview_' . $post['topic_id']]) ?> diff --git a/app/views/course/forum/index/_preview.php b/app/views/course/forum/index/_preview.php deleted file mode 100644 index e39f621bd215b0af619a1fe719bb7ae91d915cb2..0000000000000000000000000000000000000000 --- a/app/views/course/forum/index/_preview.php +++ /dev/null @@ -1,11 +0,0 @@ -<div class="posting bg2" style="margin-bottom: 20px; display: none; position: relative; text-align: left;"> - <span class="title" style="padding-left: 5px; font-weight: bold"> - <?= _('Vorschau ihres Beitrags:') ?> (<?= _('Vergessen Sie nicht, ihren Beitrag zu speichern!')?>) - <br><br> - </span> - - <?= Icon::create('decline', 'attention', ['title' => _('Vorschaufenster schließen')])->asImg(16, ["style" => 'position: absolute; top: 5px; right: 5px; cursor: pointer;', "onClick" => 'jQuery(this).parent().hide();']) ?> - - <div class="postbody" id="<?= $preview_id ?>"></div> - <br style="clear: both"> -</div> \ No newline at end of file diff --git a/app/views/course/lti/edit.php b/app/views/course/lti/edit.php index 1812bf25397ad282afb5fe9c26123489e9cee126..0131e05eacb32671575d1a9ca2f875c11971970b 100644 --- a/app/views/course/lti/edit.php +++ b/app/views/course/lti/edit.php @@ -21,7 +21,7 @@ <label> <?= _('Beschreibung') ?> - <textarea name="description" class="add_toolbar wysiwyg"><?= wysiwygReady($lti_data->description) ?></textarea> + <textarea name="description" class="wysiwyg"><?= wysiwygReady($lti_data->description) ?></textarea> </label> <label> diff --git a/app/views/course/scm/edit.php b/app/views/course/scm/edit.php index 87ad30f046e6a51628a7cc32c53eb0695eaa0680..3146dffdec735c2293fd005fe1692ec0a218b227 100644 --- a/app/views/course/scm/edit.php +++ b/app/views/course/scm/edit.php @@ -37,7 +37,7 @@ <label> <?= _('Inhalt') ?> <?= I18N::textarea('content', $scm->content, [ - 'class' => 'add_toolbar wysiwyg size-l', + 'class' => 'wysiwyg size-l', ]) ?> </label> </fieldset> diff --git a/app/views/course/topics/edit.php b/app/views/course/topics/edit.php index 0faa486ce71c87f2fcc668cf90634e31475cbdb9..a6b897ea6ae318da5188e58035cb82719ed373d1 100644 --- a/app/views/course/topics/edit.php +++ b/app/views/course/topics/edit.php @@ -18,7 +18,7 @@ <?= _("Beschreibung") ?> <?= I18N::textarea('description', $topic->description, [ - 'class' => 'add_toolbar wysiwyg size-l', + 'class' => 'wysiwyg size-l', ]) ?> </label> diff --git a/app/views/fachabschluss/abschluesse/abschluss.php b/app/views/fachabschluss/abschluesse/abschluss.php index df1a90a9241e6fe20d8dbbc9d63d17b97775b868..40f4fa2ddf8a76d0a7592032bec3b3505bbbfdb0 100644 --- a/app/views/fachabschluss/abschluesse/abschluss.php +++ b/app/views/fachabschluss/abschluesse/abschluss.php @@ -14,7 +14,7 @@ </label> <label> <?= _('Beschreibung') ?> - <?= MvvI18N::textarea('beschreibung', $abschluss->beschreibung, ['class' => 'add_toolbar ui-resizable wysiwyg'])->checkPermission($abschluss) ?> + <?= MvvI18N::textarea('beschreibung', $abschluss->beschreibung, ['class' => 'wysiwyg'])->checkPermission($abschluss) ?> </fieldset> <fieldset> <legend><?= _('Abschluss-Kategorie wählen') ?></legend> diff --git a/app/views/fachabschluss/faecher/fach.php b/app/views/fachabschluss/faecher/fach.php index 40a65aae8b402c6b9d9f343f800592f5919af4f3..448f5659431a7cb4fdca81321f36ea5000c253df 100644 --- a/app/views/fachabschluss/faecher/fach.php +++ b/app/views/fachabschluss/faecher/fach.php @@ -19,7 +19,7 @@ </label> <label> <?= _('Beschreibung') ?> - <?= MvvI18N::textarea('beschreibung', $fach->beschreibung, ['class' => 'add_toolbar ui-resizable wysiwyg'])->checkPermission($fach) ?> + <?= MvvI18N::textarea('beschreibung', $fach->beschreibung, ['class' => 'wysiwyg'])->checkPermission($fach) ?> </label> </fieldset> @@ -86,10 +86,10 @@ <label><?= _('Schlagworte') ?> <? if ($perm->haveFieldPerm('schlagworte')) : ?> <textarea cols="60" rows="5" name="schlagworte" id="schlagworte" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($fach->schlagworte) ?></textarea> + class="wysiwyg"><?= htmlReady($fach->schlagworte) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="schlagworte" id="schlagworte" - class="ui-resizable"><?= htmlReady($fach->schlagworte) ?></textarea> + ><?= htmlReady($fach->schlagworte) ?></textarea> <? endif; ?> <?= _('Hier können zusätzlich Schlagworte angegeben werden, die in der Suche berücksichtigt werden.') ?> </label> diff --git a/app/views/fachabschluss/kategorien/kategorie.php b/app/views/fachabschluss/kategorien/kategorie.php index 2fa9efa846f74ee31a49eca9344311295b205db9..1fb3cf19bd9a9b8d5afe5f0f26c99274d64edba6 100644 --- a/app/views/fachabschluss/kategorien/kategorie.php +++ b/app/views/fachabschluss/kategorien/kategorie.php @@ -30,7 +30,7 @@ <?= _('Beschreibung') ?> <?= MvvI18N::textarea( 'beschreibung', - $abschluss_kategorie->beschreibung, ['class' => 'add_toolbar ui-resizable wysiwyg'] + $abschluss_kategorie->beschreibung, ['class' => 'wysiwyg'] )->checkPermission($abschluss_kategorie) ?> </label> </fieldset> diff --git a/app/views/file/suggest_oer.php b/app/views/file/suggest_oer.php index 2d5a6da321a2b2dde0403a8e6110cd6f90e0ea44..977b93395602b35c654f1b72778ea8a99667022f 100644 --- a/app/views/file/suggest_oer.php +++ b/app/views/file/suggest_oer.php @@ -8,7 +8,7 @@ <p><?= _('Schreiben Sie der Autorin/dem Autoren:') ?></p> <label for="additional_text"> - <textarea class = "add_toolbar wysiwyg" + <textarea class = "wysiwyg" name = "additional_text" id = "additional_text" rows = "3" diff --git a/app/views/lvgruppen/lvgruppen/lvgruppe.php b/app/views/lvgruppen/lvgruppen/lvgruppe.php index 372698742f8729893bd5c59043952b8f2a48c337..b1bee81c3229f0c5489cd6040847cce048f010a0 100644 --- a/app/views/lvgruppen/lvgruppen/lvgruppe.php +++ b/app/views/lvgruppen/lvgruppen/lvgruppe.php @@ -11,7 +11,7 @@ </label> <label> <?= _('Alternativtext') ?> - <?= MvvI18N::textarea('alttext', $lvgruppe->alttext, ['class' => 'add_toolbar ui-resizable wysiwyg'])->checkPermission($lvgruppe) ?> + <?= MvvI18N::textarea('alttext', $lvgruppe->alttext, ['class' => 'wysiwyg'])->checkPermission($lvgruppe) ?> </label> </fieldset> <footer data-dialog-button> diff --git a/app/views/messages/write.php b/app/views/messages/write.php index 2b2d06d2319a131ffd582b9ea16e23e9506e0f21..c170572c532da7e8fcdb7a7bbee373c5e4171b43 100644 --- a/app/views/messages/write.php +++ b/app/views/messages/write.php @@ -60,7 +60,7 @@ <div> <label> <?= _("Nachricht") ?> - <textarea name="message_body" class="add_toolbar wysiwyg"><?= wysiwygReady($default_message['message'],false) ?></textarea> + <textarea name="message_body" class="wysiwyg"><?= wysiwygReady($default_message['message'],false) ?></textarea> </label> </div> <div> @@ -88,15 +88,6 @@ <strong><?= _("Optionen") ?></strong> </a> </li> - <? if (!\Studip\Markup::editorEnabled()) : ?> - <li> - <a href="" onClick="STUDIP.Messages.toggleSetting('preview'); STUDIP.Messages.previewComposedMessage(); return false;"> - <?= Icon::create('visibility-visible', 'clickable')->asImg(40) ?> - <br> - <strong><?= _("Vorschau") ?></strong> - </a> - </li> - <? endif ?> </ul> </div> @@ -165,13 +156,6 @@ </div> </fieldset> - <? if (!\Studip\Markup::editorEnabled()) : ?> - <div id="preview" style="display: none;"> - <?= _("Vorschau") ?> - <p class="message_body"></p> - </div> - <? endif ?> - <footer data-dialog-button> <?= Studip\Button::createAccept(_('Abschicken'), null, ['onclick' => "STUDIP.Messages.checkAdressee();"]) ?> <?= Studip\LinkButton::createCancel(_('Abbrechen'), $controller->url_for('messages')) ?> diff --git a/app/views/module/module/lvgruppe.php b/app/views/module/module/lvgruppe.php index 5dd1d178208eb6bf22ab0c97cf8c22ac1629d4f8..fd6c6ac4d3ec2b9b28a1f1f85c2c219b55124a2a 100644 --- a/app/views/module/module/lvgruppe.php +++ b/app/views/module/module/lvgruppe.php @@ -13,7 +13,7 @@ id="name" type="text" name="name" value="<?= htmlReady($lvgruppe->name) ?>" size="50"> </label> <label><?= _('Alternativtext') ?> - <?= MvvI18N::textarea('alttext', $lvgruppe->alttext, ['class' => 'add_toolbar resizable'])->checkPermission($lvgruppe) ?> + <?= MvvI18N::textarea('alttext', $lvgruppe->alttext, ['class' => 'resizable'])->checkPermission($lvgruppe) ?> </fieldset> <footer data-dialog-button> <? if ($lvgruppe->isNew()) : ?> diff --git a/app/views/module/module/modul.php b/app/views/module/module/modul.php index af6b3e7ab46dbaeb070d51425e471b3514754438..ba76e33eae49522b40460e7c2f84a00c4251bed0 100644 --- a/app/views/module/module/modul.php +++ b/app/views/module/module/modul.php @@ -241,9 +241,9 @@ if ($GLOBALS['MVV_MODUL']['SPRACHE']['default'] != $display_language) { <? endforeach; ?> <label id="mvv-field-modul-kommentar_status"><?= _('Kommentar') ?> <? if ($perm->haveFieldPerm('kommentar_status', MvvPerm::PERM_WRITE)): ?> - <textarea cols="60" rows="5" name="kommentar_status" id="kommentar_status" class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($modul->kommentar_status) ?></textarea> + <textarea cols="60" rows="5" name="kommentar_status" id="kommentar_status" class="wysiwyg"><?= htmlReady($modul->kommentar_status) ?></textarea> <? else : ?> - <textarea readonly cols="60" rows="5" name="kommentar_status" id="kommentar_status" class="ui-resizable"><?= htmlReady($modul->kommentar_status) ?></textarea> + <textarea readonly cols="60" rows="5" name="kommentar_status" id="kommentar_status"><?= htmlReady($modul->kommentar_status) ?></textarea> <? endif; ?> </label> <? else : ?> @@ -430,9 +430,9 @@ if ($GLOBALS['MVV_MODUL']['SPRACHE']['default'] != $display_language) { </section> <label id="mvv-field-modul-kommentar_kapazitaet"><?= _('Kommentar') ?> <? if($perm_d->haveFieldPerm('kommentar_kapazitaet', MvvPerm::PERM_WRITE)): ?> - <textarea cols="60" rows="5" name="kommentar_kapazitaet" id="kommentar_kapazitaet" class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar_kapazitaet) ?></textarea> + <textarea cols="60" rows="5" name="kommentar_kapazitaet" id="kommentar_kapazitaet" class="wysiwyg"><?= htmlReady($deskriptor->kommentar_kapazitaet) ?></textarea> <? else: ?> - <textarea readonly cols="60" rows="5" name="kommentar_kapazitaet" id="kommentar_kapazitaet" class="ui-resizable"><?= htmlReady($deskriptor->kommentar_kapazitaet) ?></textarea> + <textarea readonly cols="60" rows="5" name="kommentar_kapazitaet" id="kommentar_kapazitaet"><?= htmlReady($deskriptor->kommentar_kapazitaet) ?></textarea> <? endif; ?> </label> @@ -475,55 +475,55 @@ if ($GLOBALS['MVV_MODUL']['SPRACHE']['default'] != $display_language) { <label id="mvv-field-modul-voraussetzung"><?= _('Teilnahmevoraussetzung') ?> <? if ($perm_d->haveFieldPerm('voraussetzung', MvvPerm::PERM_WRITE)): ?> <textarea cols="60" rows="5" name="voraussetzung" id="voraussetzung" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->voraussetzung) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->voraussetzung) ?></textarea> <? else: ?> <textarea readonly cols="60" rows="5" name="voraussetzung" id="voraussetzung" - class="ui-resizable"><?= htmlReady($deskriptor->voraussetzung) ?></textarea> + ><?= htmlReady($deskriptor->voraussetzung) ?></textarea> <? endif; ?> </label> <label id="mvv-field-modul-kompetenzziele"><?= _('Kompetenzziele') ?> <? if ($perm_d->haveFieldPerm('kompetenzziele', MvvPerm::PERM_WRITE)): ?> <textarea cols="60" rows="5" name="kompetenzziele" id="kompetenzziele" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kompetenzziele) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->kompetenzziele) ?></textarea> <? else: ?> <textarea readonly cols="60" rows="5" name="kompetenzziele" id="kompetenzziele" - class="ui-resizable"><?= htmlReady($deskriptor->kompetenzziele) ?></textarea> + ><?= htmlReady($deskriptor->kompetenzziele) ?></textarea> <? endif; ?> </label> <label id="mvv-field-modul-inhalte"><?= _('Inhalte') ?> <? if ($perm_d->haveFieldPerm('inhalte', MvvPerm::PERM_WRITE)): ?> <textarea cols="60" rows="5" name="inhalte" id="inhalte" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->inhalte) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->inhalte) ?></textarea> <? else: ?> <textarea readonly cols="60" rows="5" name="inhalte" id="inhalte" - class="ui-resizable"><?= htmlReady($deskriptor->inhalte) ?></textarea> + ><?= htmlReady($deskriptor->inhalte) ?></textarea> <? endif; ?> </label> <label id="mvv-field-modul-literatur"><?= _('Literatur') ?> <? if ($perm_d->haveFieldPerm('literatur', MvvPerm::PERM_WRITE)): ?> <textarea cols="60" rows="5" name="literatur" id="literatur" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->literatur) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->literatur) ?></textarea> <? else: ?> <textarea readonly cols="60" rows="5" name="literatur" id="literatur" - class="ui-resizable"><?= htmlReady($deskriptor->literatur) ?></textarea> + ><?= htmlReady($deskriptor->literatur) ?></textarea> <? endif; ?> </label> <label id="mvv-field-modul-links"><?= _('Links') ?> <? if ($perm_d->haveFieldPerm('links', MvvPerm::PERM_WRITE)): ?> <textarea cols="60" rows="5" name="links" id="links" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->links) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->links) ?></textarea> <? else: ?> <textarea readonly cols="60" rows="5" name="links" id="links" - class="ui-resizable"><?= htmlReady($deskriptor->links) ?></textarea> + ><?= htmlReady($deskriptor->links) ?></textarea> <? endif; ?> </label> <label id="mvv-field-modul-kommentar"><?= _('Kommentar') ?> <? if ($perm_d->haveFieldPerm('kommentar', MvvPerm::PERM_WRITE)): ?> <textarea cols="60" rows="5" name="kommentar" id="kommentar" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->kommentar) ?></textarea> <? else: ?> <textarea readonly cols="60" rows="5" name="kommentar" id="kommentar" - class="ui-resizable"><?= htmlReady($deskriptor->kommentar) ?></textarea> + ><?= htmlReady($deskriptor->kommentar) ?></textarea> <? endif; ?> </label> @@ -544,10 +544,10 @@ if ($GLOBALS['MVV_MODUL']['SPRACHE']['default'] != $display_language) { <label id="mvv-field-modul-kommentar_wl_selbst"><?= _('Kommentar') ?> <? if ($perm_d->haveFieldPerm('kommentar_wl_selbst', MvvPerm::PERM_WRITE)): ?> <textarea cols="60" rows="5" name="kommentar_wl_selbst" id="kommentar_wl_selbst" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_selbst) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_selbst) ?></textarea> <? else: ?> <textarea readonly cols="60" rows="5" name="kommentar_wl_selbst" id="kommentar_wl_selbst" - class="ui-resizable"><?= htmlReady($deskriptor->kommentar_wl_selbst) ?></textarea> + ><?= htmlReady($deskriptor->kommentar_wl_selbst) ?></textarea> <? endif; ?> </label> @@ -562,10 +562,10 @@ if ($GLOBALS['MVV_MODUL']['SPRACHE']['default'] != $display_language) { <label id="mvv-field-modul-kommentar_wl_pruef"><?= _('Kommentar') ?> <? if ($perm_d->haveFieldPerm('kommentar_wl_pruef', MvvPerm::PERM_WRITE)): ?> <textarea cols="60" rows="5" name="kommentar_wl_pruef" id="kommentar_wl_pruef" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_pruef) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_pruef) ?></textarea> <? else: ?> <textarea readonly cols="60" rows="5" name="kommentar_wl_pruef" id="kommentar_wl_pruef" - class="ui-resizable"><?= htmlReady($deskriptor->kommentar_wl_pruef) ?></textarea> + ><?= htmlReady($deskriptor->kommentar_wl_pruef) ?></textarea> <? endif; ?> </label> </fieldset> @@ -594,36 +594,36 @@ if ($GLOBALS['MVV_MODUL']['SPRACHE']['default'] != $display_language) { <label id="mvv-field-modul-pruef_vorleistung"><?= _('Prüfungsvorleistung') ?> <? if ($perm_d->haveFieldPerm('pruef_vorleistung', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="pruef_vorleistung" id="pruef_vorleistung" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->pruef_vorleistung) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->pruef_vorleistung) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="pruef_vorleistung" id="pruef_vorleistung" - class="ui-resizable"><?= htmlReady($deskriptor->pruef_vorleistung) ?></textarea> + ><?= htmlReady($deskriptor->pruef_vorleistung) ?></textarea> <? endif; ?> </label> <label id="mvv-field-modul-pruef_leistung"><?= _('Leistung/Prüfungsform') ?> <? if ($perm_d->haveFieldPerm('pruef_leistung', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="pruef_leistung" id="pruef_leistung" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->pruef_leistung) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->pruef_leistung) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="pruef_leistung" id="pruef_leistung" - class="ui-resizable"><?= htmlReady($deskriptor->pruef_leistung) ?></textarea> + ><?= htmlReady($deskriptor->pruef_leistung) ?></textarea> <? endif; ?> </label> <label id="mvv-field-modul-pruef_wiederholung"><?= _('Wiederholungsprüfung') ?> <? if ($perm_d->haveFieldPerm('pruef_wiederholung', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="pruef_wiederholung" id="pruef_wiederholung" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->pruef_wiederholung) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->pruef_wiederholung) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="pruef_wiederholung" id="pruef_wiederholung" - class="ui-resizable"><?= htmlReady($deskriptor->pruef_wiederholung) ?></textarea> + ><?= htmlReady($deskriptor->pruef_wiederholung) ?></textarea> <? endif; ?> </label> <label><?= _('Kommentar Note') ?> <? if($perm_d->haveFieldPerm('kommentar_note', MvvPerm::PERM_WRITE)): ?> - <textarea cols="60" rows="5" name="kommentar_note" id="kommentar_note" class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar_note) ?></textarea> + <textarea cols="60" rows="5" name="kommentar_note" id="kommentar_note" class="wysiwyg"><?= htmlReady($deskriptor->kommentar_note) ?></textarea> <? else: ?> - <textarea readonly cols="60" rows="5" name="kommentar_note" id="kommentar_note" class="ui-resizable"><?= htmlReady($deskriptor->kommentar_note) ?></textarea> + <textarea readonly cols="60" rows="5" name="kommentar_note" id="kommentar_note"><?= htmlReady($deskriptor->kommentar_note) ?></textarea> <? endif; ?> </label> </fieldset> @@ -643,10 +643,10 @@ if ($GLOBALS['MVV_MODUL']['SPRACHE']['default'] != $display_language) { <label id="mvv-field-modul-ersatztext"><?= _('Ersatztext') ?> <? if ($perm_d->haveFieldPerm('ersatztext', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="ersatztext" id="ersatztext" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->ersatztext) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->ersatztext) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="ersatztext" id="ersatztext" - class="ui-resizable"><?= htmlReady($deskriptor->ersatztext) ?></textarea> + ><?= htmlReady($deskriptor->ersatztext) ?></textarea> <? endif; ?> </label> <? foreach ($deskriptor->datafields as $entry) : ?> diff --git a/app/views/module/module/modulteil.php b/app/views/module/module/modulteil.php index 1dcf8fc81710a541225a46ba84d0a1d71d239466..7290c1df9a285b41d45dceea11ccd7ad361c7623 100644 --- a/app/views/module/module/modulteil.php +++ b/app/views/module/module/modulteil.php @@ -193,10 +193,10 @@ if ($GLOBALS['MVV_MODULTEIL']['SPRACHE']['default'] != $display_language) { <label id="mvv-field-modulteil-kommentar_kapazitaet"><?= _('Kommentar') ?> <? if ($perm_d->haveFieldPerm('kommentar_kapazitaet', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="kommentar_kapazitaet" id="kommentar_kapazitaet" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar_kapazitaet) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->kommentar_kapazitaet) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="kommentar_kapazitaet" id="kommentar_kapazitaet" - class="ui-resizable"><?= htmlReady($deskriptor->kommentar_kapazitaet) ?></textarea> + ><?= htmlReady($deskriptor->kommentar_kapazitaet) ?></textarea> <? endif; ?> </label> @@ -231,9 +231,9 @@ if ($GLOBALS['MVV_MODULTEIL']['SPRACHE']['default'] != $display_language) { </legend> <label><?= _('Teilnahmevoraussetzung') ?> <? if ($perm_d->haveFieldPerm('voraussetzung', MvvPerm::PERM_WRITE)) : ?> - <textarea cols="60" rows="5" name="voraussetzung" id="voraussetzung" class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->voraussetzung) ?></textarea> + <textarea cols="60" rows="5" name="voraussetzung" id="voraussetzung" class="wysiwyg"><?= htmlReady($deskriptor->voraussetzung) ?></textarea> <? else : ?> - <textarea readonly cols="60" rows="5" name="voraussetzung" id="voraussetzung" class="ui-resizable"><?= htmlReady($deskriptor->voraussetzung) ?></textarea> + <textarea readonly cols="60" rows="5" name="voraussetzung" id="voraussetzung"><?= htmlReady($deskriptor->voraussetzung) ?></textarea> <? endif; ?> </label> </fieldset> @@ -244,9 +244,9 @@ if ($GLOBALS['MVV_MODULTEIL']['SPRACHE']['default'] != $display_language) { </legend> <label><?= _('Kommentar') ?> <? if ($perm_d->haveFieldPerm('kommentar', MvvPerm::PERM_WRITE)) : ?> - <textarea cols="60" rows="5" name="kommentar" id="kommentar" class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar) ?></textarea> + <textarea cols="60" rows="5" name="kommentar" id="kommentar" class="wysiwyg"><?= htmlReady($deskriptor->kommentar) ?></textarea> <? else : ?> - <textarea readonly cols="60" rows="5" name="kommentar" id="kommentar" class="ui-resizable"><?= htmlReady($deskriptor->kommentar) ?></textarea> + <textarea readonly cols="60" rows="5" name="kommentar" id="kommentar"><?= htmlReady($deskriptor->kommentar) ?></textarea> <? endif; ?> </label> </fieldset> @@ -271,10 +271,10 @@ if ($GLOBALS['MVV_MODULTEIL']['SPRACHE']['default'] != $display_language) { <label for="kommentar_wl_praesenz" style="vertical-align: top;"><?= _('Kommentar') ?> <? if ($perm_d->haveFieldPerm('kommentar_wl_praesenz', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="kommentar_wl_praesenz" id="kommentar_wl_praesenz" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_praesenz) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_praesenz) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="kommentar_wl_praesenz" id="kommentar_wl_praesenz" - class="ui-resizable"><?= htmlReady($deskriptor->kommentar_wl_praesenz) ?></textarea> + ><?= htmlReady($deskriptor->kommentar_wl_praesenz) ?></textarea> <? endif; ?> </label> @@ -291,10 +291,10 @@ if ($GLOBALS['MVV_MODULTEIL']['SPRACHE']['default'] != $display_language) { <label><?= _('Kommentar') ?> <? if ($perm_d->haveFieldPerm('kommentar_wl_bereitung', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="kommentar_wl_bereitung" id="kommentar_wl_bereitung" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_bereitung) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_bereitung) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="kommentar_wl_bereitung" id="kommentar_wl_bereitung" - class="ui-resizable"><?= htmlReady($deskriptor->kommentar_wl_bereitung) ?></textarea> + ><?= htmlReady($deskriptor->kommentar_wl_bereitung) ?></textarea> <? endif; ?> </label> @@ -311,10 +311,10 @@ if ($GLOBALS['MVV_MODULTEIL']['SPRACHE']['default'] != $display_language) { <label><?= _('Kommentar') ?> <? if ($perm_d->haveFieldPerm('kommentar_wl_selbst', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="kommentar_wl_selbst" id="kommentar_wl_selbst" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_selbst) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_selbst) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="kommentar_wl_selbst" id="kommentar_wl_selbst" - class="ui-resizable"><?= htmlReady($deskriptor->kommentar_wl_selbst) ?></textarea> + ><?= htmlReady($deskriptor->kommentar_wl_selbst) ?></textarea> <? endif; ?> </label> @@ -329,10 +329,10 @@ if ($GLOBALS['MVV_MODULTEIL']['SPRACHE']['default'] != $display_language) { <label><?= _('Kommentar') ?> <? if ($perm_d->haveFieldPerm('kommentar_wl_pruef', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="kommentar_wl_pruef" id="kommentar_wl_pruef" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_pruef) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->kommentar_wl_pruef) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="kommentar_wl_pruef" id="kommentar_wl_pruef" - class="ui-resizable"><?= htmlReady($deskriptor->kommentar_wl_pruef) ?></textarea> + ><?= htmlReady($deskriptor->kommentar_wl_pruef) ?></textarea> <? endif; ?> </label> </fieldset> @@ -344,19 +344,19 @@ if ($GLOBALS['MVV_MODULTEIL']['SPRACHE']['default'] != $display_language) { <label><?= _('Prüfungsvorleistung') ?> <? if ($perm_d->haveFieldPerm('pruef_vorleistung', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="pruef_vorleistung" id="pruef_vorleistung" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->pruef_vorleistung) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->pruef_vorleistung) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="pruef_vorleistung" id="pruef_vorleistung" - class="ui-resizable"><?= htmlReady($deskriptor->pruef_vorleistung) ?></textarea> + ><?= htmlReady($deskriptor->pruef_vorleistung) ?></textarea> <? endif; ?> </label> <label><?= _('Prüfungsleistung Modulteil') ?> <? if ($perm_d->haveFieldPerm('pruef_leistung', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="pruef_leistung" id="pruef_leistung" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->pruef_leistung) ?></textarea> + class="wysiwyg"><?= htmlReady($deskriptor->pruef_leistung) ?></textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="pruef_leistung" id="pruef_leistung" - class="ui-resizable"><?= htmlReady($deskriptor->pruef_leistung) ?></textarea> + ><?= htmlReady($deskriptor->pruef_leistung) ?></textarea> <? endif; ?> </label> <label><?= _('Anteil an Modulnote') ?> @@ -418,11 +418,11 @@ if ($GLOBALS['MVV_MODULTEIL']['SPRACHE']['default'] != $display_language) { <label><?= _('Kommentar') ?> <? if ($perm_d->haveFieldPerm('kommentar_pflicht', MvvPerm::PERM_WRITE)) : ?> <textarea cols="60" rows="5" name="kommentar_pflicht" id="kommentar_pflicht" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($deskriptor->kommentar_pflicht) ?> + class="wysiwyg"><?= htmlReady($deskriptor->kommentar_pflicht) ?> </textarea> <? else : ?> <textarea readonly cols="60" rows="5" name="kommentar_pflicht" id="kommentar_pflicht" - class="ui-resizable"><?= htmlReady($deskriptor->kommentar_pflicht) ?> + ><?= htmlReady($deskriptor->kommentar_pflicht) ?> </textarea> <? endif; ?> </label> diff --git a/app/views/news/_comments.php b/app/views/news/_comments.php index a99238e57bce1f9ef30a9cf1990a62d79e296b42..d09d109bc14b2eb496ec7296b33b258ad3f7ac9e 100644 --- a/app/views/news/_comments.php +++ b/app/views/news/_comments.php @@ -18,7 +18,7 @@ <?= _('Kommentieren') ?> </legend> <label> - <textarea class="add_toolbar wysiwyg" name="comment_content" rows="8" + <textarea class="wysiwyg" name="comment_content" rows="8" cols="38" wrap="virtual" placeholder="<?= _('Geben Sie hier Ihren Kommentar ein!') ?>"></textarea> </label> diff --git a/app/views/resources/admin/configuration.php b/app/views/resources/admin/configuration.php index 5fb3e8916a46bb75d11469fddac16d433b9ae8be..b30d3e81009ae7b0384f376ef6e432ca718af1c5 100644 --- a/app/views/resources/admin/configuration.php +++ b/app/views/resources/admin/configuration.php @@ -122,7 +122,7 @@ </label> <label> <?= _('Zusatztext, der beim Seriendruck unter jedem Raumplan angezeigt werden soll') ?> - <textarea class="add_toolbar wysiwyg" name="additional_text" cols="75" rows="4"> + <textarea class="wysiwyg" name="additional_text" cols="75" rows="4"> <?= wysiwygReady($config->RESOURCES_ADDITIONAL_TEXT_ROOM_EXPORT) ?> </textarea> </label> diff --git a/app/views/settings/categories.php b/app/views/settings/categories.php index 12e9df589708cf68d236581774c37232f8631491..640c81119d8bf3f7e5a451f1668cf630cddc0fbd 100644 --- a/app/views/settings/categories.php +++ b/app/views/settings/categories.php @@ -55,7 +55,7 @@ <?= I18n::textarea("category-content-{$category->id}", $category->content, [ 'aria-label' => _('Inhalt der Kategorie:'), - 'class' => 'resizable add_toolbar wysiwyg size-l', + 'class' => 'resizable wysiwyg size-l', 'id' => "content{$index}", ]) ?> </label> diff --git a/app/views/settings/details.php b/app/views/settings/details.php index a319af7e082275922000255a5dc061a60a450e3a..8315de9cda3b7c47778ecfa95b416d1219e73ea8 100644 --- a/app/views/settings/details.php +++ b/app/views/settings/details.php @@ -48,22 +48,22 @@ </label> <label> <?= _('Hobbys') ?> - <?= I18N::textarea('hobby', $user->hobby, ['class' => 'add_toolbar wysiwyg'] + (!$controller->shallChange('user_info.hobby') ? ['disabled' => true] : [])) ?> + <?= I18N::textarea('hobby', $user->hobby, ['class' => 'wysiwyg'] + (!$controller->shallChange('user_info.hobby') ? ['disabled' => true] : [])) ?> </label> <a name="lebenslauf"></a> <label> <?= _('Lebenslauf') ?> - <?= I18N::textarea('lebenslauf', $user->lebenslauf, ['class' => 'add_toolbar wysiwyg'] + (!$controller->shallChange('user_info.lebenslauf') ? ['disabled' => true] : [])) ?> + <?= I18N::textarea('lebenslauf', $user->lebenslauf, ['class' => 'wysiwyg'] + (!$controller->shallChange('user_info.lebenslauf') ? ['disabled' => true] : [])) ?> </label> <? if ($is_dozent): ?> <a name="schwerpunkte"></a> <label> <?= _('Schwerpunkte') ?> - <?= I18N::textarea('schwerp', $user->schwerp, ['class' => 'add_toolbar wysiwyg'] + (!$controller->shallChange('user_info.schwerp') ? ['disabled' => true] : [])) ?> + <?= I18N::textarea('schwerp', $user->schwerp, ['class' => 'wysiwyg'] + (!$controller->shallChange('user_info.schwerp') ? ['disabled' => true] : [])) ?> <a name="publikationen"></a> <label> <?= _('Publikationen') ?> - <?= I18N::textarea('publi', $user->publi, ['class' => 'add_toolbar wysiwyg'] + (!$controller->shallChange('user_info.publi') ? ['disabled' => true] : [])) ?> + <?= I18N::textarea('publi', $user->publi, ['class' => 'wysiwyg'] + (!$controller->shallChange('user_info.publi') ? ['disabled' => true] : [])) ?> </label> <? endif; ?> <? if (Config::get()->OERCAMPUS_ENABLED) : ?> diff --git a/app/views/settings/general.php b/app/views/settings/general.php index 27cf5c9c85514be35df4fc479f333094bc43bdfb..db1d01d3cc4a903517abf1d351c78f86071eba91 100644 --- a/app/views/settings/general.php +++ b/app/views/settings/general.php @@ -107,17 +107,6 @@ $start_pages = [ </label> </fieldset> -<? if (Config::get()->WYSIWYG): ?> - <fieldset> - <legend><?= _('WYSIWYG-Editor') ?></legend> - - <label> - <input type="checkbox" name="wysiwyg_enabled" value="1" - <? if (!$config->WYSIWYG_DISABLED) echo 'checked'; ?>> - <?= _('WYSIWYG-Editor aktivieren') ?> - </fieldset> -<? endif; ?> - <? if ($show_room_management_autor_config) : ?> <fieldset> <legend><?= _('Raumverwaltung') ?></legend> diff --git a/app/views/shared/form_dokumente.php b/app/views/shared/form_dokumente.php index 35275cd51b73112c904da36e9cae50d7742f23f7..1f3db9e7fa87d0fa476cd4c6e37ee931a8089b6d 100644 --- a/app/views/shared/form_dokumente.php +++ b/app/views/shared/form_dokumente.php @@ -66,7 +66,7 @@ <?= MvvI18N::textarea( 'beschreibung', $dokument->kommentar, - ['class' => 'add_toolbar ui-resizable wysiwyg'] + ['class' => 'wysiwyg'] ) ?> </label> <?= _('Die Änderungen werden erst gespeichert, wenn das Hauptformular gespeichert wurde!') ?> diff --git a/app/views/siteinfo/edit.php b/app/views/siteinfo/edit.php index 00d4d6e4690a90f5f0b45f0bca9f4d29ac43447a..c4a6c5d170610c18fac2cdd90cd998f2f65c4115 100644 --- a/app/views/siteinfo/edit.php +++ b/app/views/siteinfo/edit.php @@ -44,7 +44,7 @@ use Studip\Button, Studip\LinkButton; <label> <?= _('Seiteninhalt')?> - <textarea style="height: 15em;" name="content" id="content" class="add_toolbar size-l wysiwyg"><?= wysiwygReady($content) ?></textarea> + <textarea style="height: 15em;" name="content" id="content" class="size-l wysiwyg"><?= wysiwygReady($content) ?></textarea> </label> <input type="hidden" name="detail_id" value="<?= $currentdetail?>"> diff --git a/app/views/studiengaenge/studiengaenge/studiengang.php b/app/views/studiengaenge/studiengaenge/studiengang.php index 6a2f05afc6bdbf62c511dd96f82b52f5980fe619..091f1085689b7f0301dbed8b9e44354f538f6e32 100644 --- a/app/views/studiengaenge/studiengaenge/studiengang.php +++ b/app/views/studiengaenge/studiengaenge/studiengang.php @@ -206,10 +206,10 @@ use Studip\Button, Studip\LinkButton; <label for="kommentar_status" style="vertical-align: top;"><?= _('Kommentar Bearbeitungsstatus') ?> <? if ($perm->haveFieldPerm('kommentar_status', MvvPerm::PERM_WRITE)): ?> <textarea cols="60" rows="5" name="kommentar_status" id="kommentar_status" - class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($studiengang->kommentar_status) ?></textarea> + class="wysiwyg"><?= htmlReady($studiengang->kommentar_status) ?></textarea> <? else: ?> <textarea readonly cols="60" rows="5" name="kommentar_status" id="kommentar_status" - class="ui-resizable"><?= htmlReady($studiengang->kommentar_status) ?></textarea> + ><?= htmlReady($studiengang->kommentar_status) ?></textarea> <? endif ?> </label> @@ -323,7 +323,7 @@ use Studip\Button, Studip\LinkButton; </legend> <label> <?= _('Beschreibung') ?> - <?= MvvI18N::textarea('beschreibung', $studiengang->beschreibung, ['class' => 'add_toolbar ui-resizable wysiwyg'])->checkPermission($studiengang) ?> + <?= MvvI18N::textarea('beschreibung', $studiengang->beschreibung, ['class' => 'wysiwyg'])->checkPermission($studiengang) ?> </label> <? foreach ($datafields as $df) : ?> <? if (mb_strpos($df->model->object_class, 'info') !== false) : ?> @@ -336,7 +336,7 @@ use Studip\Button, Studip\LinkButton; <? endif ?> <? endforeach ?> <label><?= _('Schlagwörter') ?> - <textarea <?= $perm->disable('schlagworte') ?> cols="60" rows="5" name="schlagworte" id="schlagworte" class="ui-resizable"><?= htmlReady($studiengang->schlagworte) ?></textarea> + <textarea <?= $perm->disable('schlagworte') ?> cols="60" rows="5" name="schlagworte" id="schlagworte"><?= htmlReady($studiengang->schlagworte) ?></textarea> <div><?= _('Hier können zusätzlich Schlagwörter angegeben werden, die in der Suche berücksichtigt werden.') ?></div> </label> </fieldset> diff --git a/app/views/studiengaenge/versionen/abschnitt.php b/app/views/studiengaenge/versionen/abschnitt.php index 41132f627074a97136447cc214bd2eab3ed14d92..e379e35d662e9e3ae1d6a1da446bd60c071f78f3 100644 --- a/app/views/studiengaenge/versionen/abschnitt.php +++ b/app/views/studiengaenge/versionen/abschnitt.php @@ -18,7 +18,7 @@ $perm = MvvPerm::get($abschnitt) </label> <label> <?= _('Kommentar') ?> - <?= MvvI18N::textarea('kommentar', $abschnitt->kommentar, ['class' => 'add_toolbar resizable ui-resizable'])->checkPermission($abschnitt) ?> + <?= MvvI18N::textarea('kommentar', $abschnitt->kommentar, ['class' => 'resizable'])->checkPermission($abschnitt) ?> <label><?= _('Kreditpunkte') ?> <input <?= $perm->disable('kp') ?> type="text" name="kp" id="kp" diff --git a/app/views/studiengaenge/versionen/version.php b/app/views/studiengaenge/versionen/version.php index dcd8608993af3ada0c7bdd3407d1787b3c7cebca..34f87eb6b7c6c9555dcd8678c49cbc3ff5866358 100644 --- a/app/views/studiengaenge/versionen/version.php +++ b/app/views/studiengaenge/versionen/version.php @@ -102,7 +102,7 @@ $perm = MvvPerm::get($version) <legend> <?= _('Beschreibung') ?> </legend> - <?= MvvI18N::textarea('beschreibung', $version->beschreibung, ['class' => 'add_toolbar ui-resizable wysiwyg', 'id' => 'beschreibung'])->checkPermission($version) ?> + <?= MvvI18N::textarea('beschreibung', $version->beschreibung, ['class' => 'wysiwyg', 'id' => 'beschreibung'])->checkPermission($version) ?> </fieldset> <fieldset class="collapsable collapsed"> @@ -133,9 +133,9 @@ $perm = MvvPerm::get($version) <? endforeach; ?> <label for="kommentar_status" style="vertical-align: top;"><?= _('Kommentar:') ?></label> <? if($perm->haveFieldPerm('kommentar_status', MvvPerm::PERM_WRITE)) : ?> - <textarea cols="60" rows="5" name="kommentar_status" id="kommentar_status" class="add_toolbar ui-resizable wysiwyg"><?= htmlReady($version->kommentar_status) ?></textarea> + <textarea cols="60" rows="5" name="kommentar_status" id="kommentar_status" class="wysiwyg"><?= htmlReady($version->kommentar_status) ?></textarea> <? else : ?> - <textarea disabled cols="60" rows="5" name="kommentar_status" id="kommentar_status" class="ui-resizable"><?= htmlReady($version->kommentar_status) ?></textarea> + <textarea disabled cols="60" rows="5" name="kommentar_status" id="kommentar_status"><?= htmlReady($version->kommentar_status) ?></textarea> <? endif; ?> </fieldset> diff --git a/db/migrations/5.5.5_drop_wysiwyg_config.php b/db/migrations/5.5.5_drop_wysiwyg_config.php new file mode 100644 index 0000000000000000000000000000000000000000..ae86e59244b9a3304ea50b09f38d596387b7c7d5 --- /dev/null +++ b/db/migrations/5.5.5_drop_wysiwyg_config.php @@ -0,0 +1,39 @@ +<?php + +class DropWysiwygConfig extends Migration +{ + public function description() + { + return 'Drop config option for disabling the ckeditor'; + } + + public function up() + { + $settings = [ + 'WYSIWYG', + 'WYSIWYG_DISABLED' + ]; + + $query = 'DELETE `config`, `config_values` + FROM `config` LEFT JOIN `config_values` USING (`field`) + WHERE `field` IN (?)'; + DBManager::get()->execute($query, [$settings]); + } + + public function down() + { + $query = 'INSERT INTO `config` (`field`, `value`, `type`, `range`, `section`, `mkdate`, `chdate`, `description`) + VALUES (:name, :value, :type, :range, :section, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), :description)'; + $statement = DBManager::get()->prepare($query); + $statement->execute([ + ':name' => 'WYSIWYG', + ':description' => 'Aktiviert den WYSIWYG Editor im JavaScript.', + ':section' => 'global', + ':range' => 'global', + ':type' => 'boolean', + ':value' => '1' + ]); + + // WYSIWYG_DISABLED did not exist as a setting in the DB + } +} diff --git a/lib/classes/Markup.class.php b/lib/classes/Markup.class.php index 77628ad16282eb1d71c2603b0d356b75c68b1122..a56d15a802a75f6fb7df50ec20599c94f9ebe810 100644 --- a/lib/classes/Markup.class.php +++ b/lib/classes/Markup.class.php @@ -53,12 +53,13 @@ class Markup /** * Return `true` if the WYSIWYG editor is enabled for this user. + * @deprecated since Stud.IP 5.5 * - * @return boolean `true` if the editor is enabled. + * @return boolean always returns `true`. */ public static function editorEnabled() { - return \Config::get()->WYSIWYG && !$GLOBALS['user']->cfg->WYSIWYG_DISABLED; + return true; } /** diff --git a/lib/classes/PageLayout.php b/lib/classes/PageLayout.php index 3921ef008d63ac9e39163b71d3eddbeff775122d..fca69b5ad92b029e9e4b9c7b94913e70b09d37d1 100644 --- a/lib/classes/PageLayout.php +++ b/lib/classes/PageLayout.php @@ -131,12 +131,9 @@ class PageLayout self::addStylesheet('studip-base.css?v=' . $v, ['media' => 'screen']); self::addScript('studip-base.js?v=' . $v); + self::addScript('studip-wysiwyg.js?v=' . $v); self::addStylesheet('print.css?v=' . $v, ['media' => 'print']); - - if (Config::get()->WYSIWYG) { - self::addScript('studip-wysiwyg.js?v=' . $v); - } } /** diff --git a/lib/evaluation/classes/EvaluationTreeEditView.class.php b/lib/evaluation/classes/EvaluationTreeEditView.class.php index c5b8867ebffa727ac160ff2f5606b70a52e32840..3bfe92ac3c62307404192cf500e67a8579e2efdd 100644 --- a/lib/evaluation/classes/EvaluationTreeEditView.class.php +++ b/lib/evaluation/classes/EvaluationTreeEditView.class.php @@ -2304,7 +2304,7 @@ class EvaluationTreeEditView $label->addContent($text_label); $label->addHTMLContent($this->createImage(EVAL_PIC_HELP, $text_info)); - $textarea = "<br><textarea class=\"add_toolbar wysiwyg\" name=\"text\" rows=\"4\" " + $textarea = "<br><textarea class=\"wysiwyg\" name=\"text\" rows=\"4\" " . "style=\"vertical-align:top; width: 100%;\">"; $textarea .= ($text) ? $text diff --git a/lib/include/html_head.inc.php b/lib/include/html_head.inc.php index 7e7bdea9711738398d6ce41d241caeb46aaaae9f..9189031edacb6b6766c1166442ef1445daf8cc10 100644 --- a/lib/include/html_head.inc.php +++ b/lib/include/html_head.inc.php @@ -50,15 +50,12 @@ $lang_attr = str_replace('_', '-', $_SESSION['_language']); is_object($GLOBALS['perm']) && $GLOBALS['perm']->have_perm('autor') && PersonalNotifications::isActivated()) ?>, - wysiwyg_enabled: <?= json_encode((bool) Config::get()->WYSIWYG) ?> + wysiwyg_enabled: true, + editor_enabled: true } </script> <?= PageLayout::getHeadElements() ?> - - <script> - window.STUDIP.editor_enabled = <?= json_encode((bool) Studip\Markup::editorEnabled()) ?>; - </script> </head> <body id="<?= PageLayout::getBodyElementId() ?>"> diff --git a/lib/visual.inc.php b/lib/visual.inc.php index 80133fd7a8f746063c98f9c683bbbfc5bed8c82a..a00205480c921a6e83e1a6e12ce57e2eeaaf4071 100644 --- a/lib/visual.inc.php +++ b/lib/visual.inc.php @@ -59,9 +59,6 @@ function jsReady ($what, $target = 'script-single') { /** * Quote a piece of text, optionally include the author's name. * - * Applies Stud.IP-Markup if WYSIWYG/HTML is disabled and HTML - * if it is enabled. - * * @param string $text Text that is to be quoted. * @param string $author Name of the text's author (optional). * @@ -78,28 +75,14 @@ function quotes_encode($text, $author = '') // - studipQuotePlugin > insertStudipQuote // public/assets/javascripts/ckeditor/plugins/studip-quote/plugin.js - if (Markup::editorEnabled()) { - // quote with HTML markup - $text = Markup::markupToHtml($text); - - if ($author) { - $title = sprintf(_('%s hat geschrieben:'), htmlReady($author)); - $text = '<div class="author">' . $title . '</div>' . $text; - } - $text = sprintf('<blockquote>%s</blockquote><p> </p>', $text); - return Markup::markAsHtml($text); - } - - if (Markup::isHtml($text)) { - // remove HTML before quoting - $text = Markup::removeHtml($text); - } + $text = Markup::markupToHtml($text); - // quote with Stud.IP markup if ($author) { - return "[quote=" . $author . "]\n" . $text . "\n[/quote]\n"; + $title = sprintf(_('%s hat geschrieben:'), htmlReady($author)); + $text = '<div class="author">' . $title . '</div>' . $text; } - return "[quote]\n" . $text . "\n[/quote]\n"; + $text = sprintf('<blockquote>%s</blockquote><p> </p>', $text); + return Markup::markAsHtml($text); } /** diff --git a/resources/assets/javascripts/bootstrap/application.js b/resources/assets/javascripts/bootstrap/application.js index c6ffe3522808be2c8541798cc8dc30a78383d568..1629b9baec47e6d972461069284207cc2e9fd92a 100644 --- a/resources/assets/javascripts/bootstrap/application.js +++ b/resources/assets/javascripts/bootstrap/application.js @@ -97,8 +97,6 @@ STUDIP.domReady(function () { }); STUDIP.ready((event) => { - jQuery('.add_toolbar', event.target).addToolbar(); - STUDIP.Forms.initialize(event.target); STUDIP.Markup.element(event.target); }); diff --git a/resources/assets/javascripts/bootstrap/wiki.js b/resources/assets/javascripts/bootstrap/wiki.js index 24f31190384f8a0e3769f8a7a561470d67320275..25a277b2602f618eb72721dfcd38a2a9eeb5dbbd 100644 --- a/resources/assets/javascripts/bootstrap/wiki.js +++ b/resources/assets/javascripts/bootstrap/wiki.js @@ -16,12 +16,10 @@ $(document).on('click', '#wiki button[name="submit-and-edit"]', function(event) i, wysiwyg_editor = false; - if (STUDIP.editor_enabled) { - const textarea = $('textarea[name="body"]', form).get(0); - if (textarea) { - wysiwyg_editor = STUDIP.wysiwyg.getEditor(textarea); - wysiwyg_editor.sourceElement.value = STUDIP.wysiwyg.markAsHtml(wysiwyg_editor.getData()); - } + const textarea = $('textarea[name="body"]', form).get(0); + if (textarea) { + wysiwyg_editor = STUDIP.wysiwyg.getEditor(textarea); + wysiwyg_editor.sourceElement.value = STUDIP.wysiwyg.markAsHtml(wysiwyg_editor.getData()); } form_data = form.serializeArray(); @@ -115,20 +113,6 @@ $(document).on('click', '#wiki button[name="submit-and-edit"]', function(event) event.preventDefault(); }); -$(document).on('keyup change', '#wiki textarea[name=body]', function() { - // Disable "save and edit" button if text was not changed - $('#wiki button[name="submit-and-edit"]').prop('disabled', this.value === this.defaultValue); -}); - -STUDIP.domReady(() => { - if (!STUDIP.editor_enabled) { - // Trigger above disable mechanism only when not using wysiwyg - $('#wiki textarea[name=body]').change(); - } else { - $(document).off('keyup change', '#wiki textarea[name=body]'); - } -}); - $(document).on('change', '#wiki-config .global-permissions :checkbox', function () { if ($(this).is(':checked')) { return; diff --git a/resources/assets/javascripts/bootstrap/wysiwyg.js b/resources/assets/javascripts/bootstrap/wysiwyg.js index 39eaa713c581eaba7fa82763f650b612015b083b..92479d2be88b479dfd9e13bee16f21f0a940cc8c 100644 --- a/resources/assets/javascripts/bootstrap/wysiwyg.js +++ b/resources/assets/javascripts/bootstrap/wysiwyg.js @@ -1,22 +1,20 @@ STUDIP.domReady(() => { - if (STUDIP.editor_enabled) { - // replace areas visible on page load - replaceVisibleTextareas(); + // replace areas visible on page load + replaceVisibleTextareas(); - // update the height of the editor view on focus changes in dialogs - $(document).on('focus blur', '.studip-dialog .ck-editor__editable_inline', function(event) { - let height = this.clientHeight; - let editor = this.ckeditorInstance; - editor.editing.view.change(writer => { - writer.setStyle('height', height + 'px', editor.editing.view.document.getRoot()); - }); + // update the height of the editor view on focus changes in dialogs + $(document).on('focus blur', '.studip-dialog .ck-editor__editable_inline', function(event) { + let height = this.clientHeight; + let editor = this.ckeditorInstance; + editor.editing.view.change(writer => { + writer.setStyle('height', height + 'px', editor.editing.view.document.getRoot()); }); + }); - // replace areas that are created or shown after page load - // remove editors that become hidden after page load - // show, hide and create do not raise an event, use interval timer - setInterval(replaceVisibleTextareas, 300); - } + // replace areas that are created or shown after page load + // remove editors that become hidden after page load + // show, hide and create do not raise an event, use interval timer + setInterval(replaceVisibleTextareas, 300); // when attaching to hidden textareas, or textareas who's parents are // hidden, the editor does not function properly; therefore attach to diff --git a/resources/assets/javascripts/init.js b/resources/assets/javascripts/init.js index 27039d6fd3a964d87ab85a03bd28cda6a152365e..3ec1960da5d197c3051feb6e2395653de03960f2 100644 --- a/resources/assets/javascripts/init.js +++ b/resources/assets/javascripts/init.js @@ -75,7 +75,6 @@ import Statusgroups from './lib/statusgroups.js'; import study_area_selection from './lib/study_area_selection.js'; import Table from './lib/table.js'; import TableOfContents from './lib/table-of-contents.js'; -import Toolbar from './lib/toolbar.js'; import Tooltip from './lib/tooltip.js'; import Tour from './lib/tour.js'; import * as Gettext from './lib/gettext.js'; @@ -162,7 +161,6 @@ window.STUDIP = _.assign(window.STUDIP || {}, { study_area_selection, Table, TableOfContents, - Toolbar, Tooltip, Tour, URLHelper, diff --git a/resources/assets/javascripts/jquery-bundle.js b/resources/assets/javascripts/jquery-bundle.js index 82053f67431b15fdee30974c065da79e14d0a69c..bdee32de161aef5d3d2e7a105e219ae06fef9a2c 100644 --- a/resources/assets/javascripts/jquery-bundle.js +++ b/resources/assets/javascripts/jquery-bundle.js @@ -77,16 +77,6 @@ import 'blueimp-file-upload/js/jquery.iframe-transport.js'; import './jquery/autoresize.jquery.min.js'; import { $gettext } from './lib/gettext.js'; -import Toolbar from './lib/toolbar.js'; - -$.fn.extend({ - // Adds the toolbar to an element - addToolbar: function(button_set) { - return this.each(function() { - Toolbar.initialize(this, button_set); - }); - } -}); // Create jQuery "plugin" that just reverses the elements' order. This is // neccessary since the navigation is built and afterwards, we need to diff --git a/resources/assets/javascripts/lib/forum.js b/resources/assets/javascripts/lib/forum.js index fb2e4c714f54d7c850d0089b356a43f89a648c17..c2f0d7c0cbf98b7ae10dfcc8fe00b0df9577b998 100644 --- a/resources/assets/javascripts/lib/forum.js +++ b/resources/assets/javascripts/lib/forum.js @@ -308,10 +308,7 @@ const Forum = { // usually the wysiwyg editor does this automatically, // but since there is no submit event the editor does not // get notified - if (STUDIP.editor_enabled) { - // wysiwyg is active, ensure HTML markers are set - textarea.val(STUDIP.wysiwyg.markAsHtml(textarea.val())); - } + textarea.val(STUDIP.wysiwyg.markAsHtml(textarea.val())); // remember current textarea value textarea.data('reset', textarea.val()); @@ -332,7 +329,6 @@ const Forum = { STUDIP.Markup.element('span[data-topic-content=' + topic_id +']'); // hide the other stuff - jQuery('div[id*=preview]').parent().hide(); jQuery('span[data-edit-topic=' + topic_id +']').hide(); jQuery('span[data-show-topic=' + topic_id +']').show(); @@ -349,8 +345,6 @@ const Forum = { }, cancelEditEntry: function (topic_id) { - jQuery('div[id*=preview]').parent().hide(); - jQuery('span[data-edit-topic=' + topic_id +'] input[name=name]').val( jQuery('span[data-edit-topic=' + topic_id +'] input[name=name]').data('reset') ); @@ -457,28 +451,14 @@ const Forum = { // - studipQuotePlugin > insertStudipQuote // public/assets/javascripts/ckeditor/plugins/studip-quote/plugin.js - if (STUDIP.editor_enabled) { - // quote with HTML markup - var author = ''; - if (name) { - var writtenBy = $gettext('%s hat geschrieben:'); - author = '<div class="author">' - + writtenBy.replace('%s', name) - + '</div>'; - } - return '<blockquote>' + author + text + '</blockquote><p> </p>'; - } - - if (STUDIP.wysiwyg.isHtml(text)) { - // remove HTML before quoting - text = jQuery(text).text(); - } - - // quote with Stud.IP markup + var author = ''; if (name) { - return '[quote=' + name + ']\n' + text + '\n[/quote]\n'; + var writtenBy = $gettext('%s hat geschrieben:'); + author = '<div class="author">' + + writtenBy.replace('%s', name) + + '</div>'; } - return '[quote]\n' + text + '\n[/quote]\n'; + return '<blockquote>' + author + text + '</blockquote><p> </p>'; }, forwardEntry: function(topic_id) { @@ -537,25 +517,6 @@ const Forum = { }); }, - preview: function (text_element_id, preview_id) { - var posting = {}; - posting.posting = jQuery('textarea[data-textarea=' + text_element_id + ']').val(); - if (STUDIP.editor_enabled) { - posting.posting = STUDIP.wysiwyg.markAsHtml(posting.posting); - } - - jQuery.ajax(STUDIP.URLHelper.getURL('dispatch.php/course/forum/index/preview?cid=' + STUDIP.Forum.seminar_id), { - type: 'POST', - data: posting, - success: function (html) { - jQuery('div[id*=preview]').parent().hide(); - jQuery('#' + preview_id).html(html); - STUDIP.Markup.element('#' + preview_id); - jQuery('#' + preview_id).parent().show(); - } - }); - }, - loadAction: function(element, action) { jQuery(element).load(STUDIP.URLHelper.getURL('dispatch.php/course/forum/index/' + action + '?cid=' + STUDIP.Forum.seminar_id)) diff --git a/resources/assets/javascripts/lib/messages.js b/resources/assets/javascripts/lib/messages.js index 886d527087a4813afe8ad70b1c010a1a6aba034e..dbb27939607594db6ab3cff6c081fe82870f5a6e 100644 --- a/resources/assets/javascripts/lib/messages.js +++ b/resources/assets/javascripts/lib/messages.js @@ -252,31 +252,6 @@ const Messages = { if (jQuery('#' + name).is(':visible')) { jQuery('#' + name)[0].scrollIntoView(false); } - }, - previewComposedMessage: function() { - var old_written_text = '', - written_text = jQuery('textarea[name=message_body]').val(); - var updatePreview = function() { - written_text = jQuery('textarea[name=message_body]').val(); - if (old_written_text !== written_text) { - jQuery.ajax({ - url: STUDIP.ABSOLUTE_URI_STUDIP + 'dispatch.php/messages/preview', - data: { - text: STUDIP.editor_enabled ? STUDIP.wysiwyg.markAsHtml(written_text) : written_text - }, - type: 'POST', - success: function(html) { - jQuery('#preview .message_body').html(html); - Markup.element('#preview .message_body'); - } - }); - old_written_text = written_text; - } - if (jQuery('#preview .message_body').is(':visible')) { - window.setTimeout(updatePreview, 1000); - } - }; - updatePreview(); } }; diff --git a/resources/assets/javascripts/lib/toolbar.js b/resources/assets/javascripts/lib/toolbar.js deleted file mode 100644 index c707b49df631ca03fe118c654ee5fef331cc6e0e..0000000000000000000000000000000000000000 --- a/resources/assets/javascripts/lib/toolbar.js +++ /dev/null @@ -1,100 +0,0 @@ -import { $gettext } from './gettext.js'; -import ToolbarButtonset from './toolbar_buttonset.js'; -import Dialog from './dialog.js'; - -function getElementWidth(element) { - var proxy = null; - - // Special case: Handle i18n hidden textareas - // - Hidden textareas have no dimensions thus we need to proxy the - // width from the first visible element in the i18n group - if ($(element).is(':hidden') && $(element).closest('.i18n_group').length > 0) { - proxy = $(element) - .closest('.i18n_group') - .find('div.i18n:visible') - .children() - .first(); - if (proxy.length > 0) { - element = proxy; - } - } - - return $(element).css('width') || $(element).outerWidth(true); -} - -const Toolbar = { - buttonSet: ToolbarButtonset, - - // Initializes (adds) a toolbar the passed textarea element - initialize: function(element, button_set) { - var $element = $(element), - wrap, - toolbar; - - // don't initialize toolbar for wysiwyg textareas - if (STUDIP.editor_enabled && $element.hasClass('wysiwyg')) { - return; - } - - // Bail out if the element is not a tetarea or a toolbar has already - // been applied - if (!$element.is('textarea') || $element.data('toolbar-added')) { - return; - } - - button_set = button_set || Toolbar.buttonSet; - - // Add flag so one element will never have more than one toolbar - $element.data('toolbar-added', true); - - // Create toolbar element - toolbar = $('<div class="buttons">'); - - // Assemble toolbar - ['left', 'right'].forEach(function(position) { - var buttons = $('<span>').addClass(position); - $.each(button_set[position], function(name, format) { - var button = $('<span>').addClass(name), - label = format.label || name; - - if (format.icon) { - label = $('<img>', { - alt: format.label || name, - src: STUDIP.ASSETS_URL + 'images/icons/blue/' + format.icon + '.svg' - }); - } - - button - .html(label) - .button() - .click(function() { - var selection = $element.getSelection(), - result = format.evaluate(selection, $element, this) || selection, - replacement = $.isPlainObject(result) - ? result.replacement - : result === undefined - ? selection - : result, - offset = $.isPlainObject(result) ? result.offset : (result || '').length; - $element.replaceSelection(replacement, offset).change(); - return false; - }); - - buttons.append(button); - }); - toolbar.append(buttons); - }); - - // Attach toolbar to the specified element - wrap = $('<div class="editor_toolbar">').css({ - width: getElementWidth($element), - display: $element.css('display') - }); - $element - .css('width', '100%') - .wrap(wrap) - .before(toolbar); - } -}; - -export default Toolbar; diff --git a/resources/assets/javascripts/lib/toolbar_buttonset.js b/resources/assets/javascripts/lib/toolbar_buttonset.js deleted file mode 100644 index cd92f545518c63348d46949d0e05503edddd7da6..0000000000000000000000000000000000000000 --- a/resources/assets/javascripts/lib/toolbar_buttonset.js +++ /dev/null @@ -1,67 +0,0 @@ -// Creates a wrapper function that wraps the passed string using the -// passed prefix and suffix. If the suffix is omitted, it will be replaced -// by the prefix. -// Be aware that the wrap function will not wrap a string twice. -function createWrap(prefix, suffix) { - if (suffix === undefined) { - suffix = prefix; - } - return function(string) { - if (string.substr(0, prefix.length) === prefix && string.substr(-suffix.length) === suffix) { - return string; - } - if (string) { - return prefix + string + suffix; - } - return { - replacement: prefix + suffix, - offset: prefix.length - }; - }; -} - -// Define default stud.ip button set -const buttonSet = { - left: { - bold: { label: '<strong>B</strong>', evaluate: createWrap('**') }, - italic: { label: '<em>i</em>', evaluate: createWrap('%%') }, - underline: { label: '<u>u</u>', evaluate: createWrap('__') }, - strikethrough: { label: '<del>u</del>', evaluate: createWrap('{-', '-}') }, - code: { label: '<code>code</code>', evaluate: createWrap('[code]', '[/code]') }, - larger: { label: 'A+', evaluate: createWrap('++') }, - smaller: { label: 'A-', evaluate: createWrap('--') }, - signature: { label: 'signature', evaluate: createWrap('', '\u2013~~~') }, - link: { - label: 'link', - evaluate: function(string) { - string = string || window.prompt('Text:') || ''; - if (string.length === 0) { - return string; - } - - var url = window.prompt('URL:') || ''; - return url.length === 0 ? string : '[' + string + ']' + url; - } - }, - image: { - label: 'img', - evaluate: function(string) { - var url = window.prompt('URL:') || ''; - return url.length === 0 ? string : '[img]' + url; - } - } - }, - right: { - help: { - label: '?', - evaluate: function() { - var url = $('link[rel=help].text-format').attr('href'), - win; - win = window.open(url, '_blank'); - win.opener = null; - } - } - } -}; - -export default buttonSet; diff --git a/resources/vue/components/I18nTextarea.vue b/resources/vue/components/I18nTextarea.vue index 6d31d7b94643eedf516e82ba55a8b57bd2ff137a..1b103b43044c8bcc6f75cfb44c72b16a1d969e02 100644 --- a/resources/vue/components/I18nTextarea.vue +++ b/resources/vue/components/I18nTextarea.vue @@ -25,14 +25,7 @@ v-bind="$attrs" v-on="$listeners" :required="required && defaultLanguage === selectedLanguage.id" - v-else-if="type === 'wysiwyg' && !wysiwyg_disabled"></studip-wysiwyg> - <textarea-with-toolbar :name="nameOfInput(selectedLanguage.id)" - ref="inputfield" - v-else - v-model="values[selectedLanguage.id]" - v-bind="$attrs" - :required="required && defaultLanguage === selectedLanguage.id" - v-on="$listeners"></textarea-with-toolbar> + v-else></studip-wysiwyg> </div> <input type="hidden" v-for="language in otherLanguages" @@ -72,14 +65,7 @@ v-bind="$attrs" v-on="$listeners" :required="required" - v-else-if="type === 'wysiwyg' && !wysiwyg_disabled"></studip-wysiwyg> - <textarea-with-toolbar :name="name" - ref="inputfield" - v-else - v-model="values[selectedLanguage.id]" - v-bind="$attrs" - :required="required" - v-on="$listeners"></textarea-with-toolbar> + v-else></studip-wysiwyg> </div> </template> @@ -109,11 +95,6 @@ export default { required: false, default: "" }, - wysiwyg_disabled: { - type: Boolean, - required: false, - default: false - }, required: { type: Boolean, required: false, @@ -200,7 +181,7 @@ export default { let name = this.nameOfInput(this.languages[i].id); let value = newValue[this.languages[i].id]; - if (this.type === 'wysiwyg' && STUDIP.editor_enabled && value !== null) { + if (this.type === 'wysiwyg' && value !== null) { value = STUDIP.wysiwyg.markAsHtml(value); } diff --git a/resources/vue/components/StudipWysiwyg.vue b/resources/vue/components/StudipWysiwyg.vue index df58bc22f41246e5f323520a16cacd2d2cf69c64..e343e80bc686f6ff12dc9be4497fa2ba2c3525bb 100644 --- a/resources/vue/components/StudipWysiwyg.vue +++ b/resources/vue/components/StudipWysiwyg.vue @@ -1,24 +1,15 @@ <template> <ckeditor - v-if="enabled" :editor="editor" :config="editorConfig" @ready="prefill" v-model="currentText" @input="onInput" /> - <textarea - v-else - :value="text" - @input="$emit('input', $event.target.value)" - ref="textarea" - class="studip-wysiwyg wysiwyg" - ></textarea> </template> <script> import { ClassicEditor, BalloonEditor } from '../../assets/javascripts/chunks/wysiwyg.js'; -import Toolbar from '../../assets/javascripts/lib/toolbar.js'; export default { name: 'studip-wysiwyg', @@ -55,9 +46,6 @@ export default { } throw new Error('Unknown `editorType`'); }, - enabled() { - return STUDIP.editor_enabled; - }, }, methods: { prefill(editor) { @@ -71,10 +59,5 @@ export default { created() { STUDIP.loadChunk('mathjax'); }, - mounted() { - if (!this.enabled) { - Toolbar.initialize(this.$refs.textarea); - } - }, }; </script> diff --git a/resources/vue/components/TextareaWithToolbar.vue b/resources/vue/components/TextareaWithToolbar.vue index 498c5d18eec610853a6641723919aa13f221d181..7e35602fba52a833b55d689d83686d24c0845e81 100644 --- a/resources/vue/components/TextareaWithToolbar.vue +++ b/resources/vue/components/TextareaWithToolbar.vue @@ -24,9 +24,6 @@ export default { this.$emit('input', newContent); } } - }, - mounted () { - $(this.$refs.textarea).addToolbar(); } } </script> diff --git a/templates/datafields/textmarkup.php b/templates/datafields/textmarkup.php index e876d132f2c029e5470ce35b50199b64d70fc97f..9db4afd5117523c8928fd74c4e9156f44bf7cb19 100644 --- a/templates/datafields/textmarkup.php +++ b/templates/datafields/textmarkup.php @@ -9,7 +9,7 @@ <textarea name="<?= $name ?>[<?= $model->id ?>]" id="<?= $name ?>_<?= $model->id ?>" - class="add_toolbar wysiwyg" + class="wysiwyg" <?= !$entry->isEditable() ? "disabled" : "" ?> <? if ($model->is_required) echo 'required'; ?> ><?= wysiwygReady($value) ?></textarea> diff --git a/templates/datafields/textmarkupi18n.php b/templates/datafields/textmarkupi18n.php index 3e7229a39d6cc5ff665ce7e7d0afadac1ccf9556..11f765e045e4ddb1c9fcbf333925c72a638fe1bb 100644 --- a/templates/datafields/textmarkupi18n.php +++ b/templates/datafields/textmarkupi18n.php @@ -8,7 +8,7 @@ <? endif ?> <? if ($entry->isEditable()) : ?> - <?= I18N::textarea($name, $value, ['class' => 'add_toolbar wysiwyg', 'required' => (bool) $model->is_required, 'locale_names' => $locale_names]) ?> + <?= I18N::textarea($name, $value, ['class' => 'wysiwyg', 'required' => (bool) $model->is_required, 'locale_names' => $locale_names]) ?> <? else : ?> <textarea name="<?= $name ?>[<?= $model->id ?>]" id="<?= $name ?>_<?= $model->id ?>" diff --git a/templates/forms/i18n_formatted_input.php b/templates/forms/i18n_formatted_input.php index 6466731b1a717605510b73e15a872f36b915a820..425b1aebb954f4d405564ef630152fc1bdbbafa8 100644 --- a/templates/forms/i18n_formatted_input.php +++ b/templates/forms/i18n_formatted_input.php @@ -13,6 +13,6 @@ value="<?= htmlReady($value) ?>" @allinputs="setInputs" @selectlanguage="(language_id) => selectLanguage('<?= htmlReady($this->name) ?>', language_id)" - :wysiwyg_disabled="<?= \Config::get()->WYSIWYG ? 'false' : 'true' ?>" <?= $required ? 'required' : '' ?>> + <?= $required ? 'required' : '' ?>> </i18n-textarea> </div> diff --git a/templates/layouts/base.php b/templates/layouts/base.php index 8dc2444c0ca6f711632cd2d926b46fbfd34ad211..3378d881998f48abe4712463f4c5df18e9e0d953 100644 --- a/templates/layouts/base.php +++ b/templates/layouts/base.php @@ -46,7 +46,8 @@ $lang_attr = str_replace('_', '-', $_SESSION['_language']); is_object($GLOBALS['perm']) && $GLOBALS['perm']->have_perm('autor') && PersonalNotifications::isActivated()) ?>, - wysiwyg_enabled: <?= json_encode((bool) Config::get()->WYSIWYG) ?>, + wysiwyg_enabled: true, + editor_enabled: true, server_timestamp: <?= time() ?>, config: <?= json_encode([ 'ACTIONMENU_THRESHOLD' => Config::get()->ACTION_MENU_THRESHOLD, @@ -59,15 +60,13 @@ $lang_attr = str_replace('_', '-', $_SESSION['_language']); <?= PageLayout::getHeadElements() ?> <script> - window.STUDIP.editor_enabled = <?= json_encode((bool) Studip\Markup::editorEnabled()) ?>; - - setTimeout(() => { - // This needs to be put in a timeout since otherwise it will not match - if (STUDIP.Responsive.isResponsive()) { - document.querySelector('html').classList.add('responsive-display'); - } - }, 0); -</script> + setTimeout(() => { + // This needs to be put in a timeout since otherwise it will not match + if (STUDIP.Responsive.isResponsive()) { + document.querySelector('html').classList.add('responsive-display'); + } + }, 0); + </script> </head> <body id="<?= PageLayout::getBodyElementId() ?>" <? if (!PageLayout::isSidebarEnabled()) echo 'class="no-sidebar"'; ?>> diff --git a/templates/wiki/edit.php b/templates/wiki/edit.php index 3e42108a39d5f2ebbce11b9442e6cda1efe94d40..fab85eb0a935b2bfc374a1456520deb12a16ce85 100644 --- a/templates/wiki/edit.php +++ b/templates/wiki/edit.php @@ -12,7 +12,7 @@ <input type="hidden" name="cmd" value="show"> <br> - <textarea name="body" class="wiki-editor add_toolbar wysiwyg size-l" data-editor="extraPlugins=WikiLink" + <textarea name="body" class="wiki-editor wysiwyg size-l" data-editor="extraPlugins=WikiLink" ><?= wysiwygReady($body) ?></textarea> </fieldset> diff --git a/tests/unit/lib/classes/MarkupClassTest.php b/tests/unit/lib/classes/MarkupClassTest.php index 982d15595a2e1f63e71ae53849c18878d8ac6a17..d1c35b199a8651a808bb5c7f4952884e12195e6e 100644 --- a/tests/unit/lib/classes/MarkupClassTest.php +++ b/tests/unit/lib/classes/MarkupClassTest.php @@ -55,8 +55,6 @@ class MarkupClassTest extends \Codeception\Test\Unit */ public function testRemoveHTML(string $input, string $expected): void { - Config::set(new Config(['WYSIWYG' => true])); - $this->assertEquals($expected, Studip\Markup::removeHtml(Studip\Markup::markAsHtml($input))); } @@ -165,7 +163,6 @@ class MarkupClassTest extends \Codeception\Test\Unit # fake Stud.IP web server set-up fakeServer($test['uri'], $test['domains']); Config::get()->LOAD_EXTERNAL_MEDIA = $test['externalMedia']; - //echoWebGlobals(); // call to help with debugging # test getMediaUrl try {