Tastaturbedienbarkeit des CPO-Backends

Fragen zur Implementierung und/oder Anpassung von ConPresso 4 werden in diesem Forum diskutiert.
Antworten
Benutzeravatar
hscha
ConPresso-Experte
Beiträge: 712
Registriert: 22.02.2006 22:00
Wohnort: Berlin
Hat sich bedankt: 216 Mal
Danksagung erhalten: 25 Mal
Kontaktdaten:

Tastaturbedienbarkeit des CPO-Backends

Beitrag von hscha »

Bei der täglichen Arbeit mit dem CPO-Backend hat mich die Klickerei mit der Maus so genervt, dass ich einige Accesskeys eingebaut habe, die mir das Leben mit CPO erleichtern. Die Kombination von Tastatur-Shortcuts und Mausklicks macht das Arbeiten erheblich leichter (in Firefox zumindest, wo das Eintippen des Shortcuts verbunden mit der [alt]-Taste schon zum Link führt...).

Mein Vorschlag stellt folgende Accesskeys bereit:

Für Redakteure:
r -> Rubriken auflisten
a -> Artikel bearbeiten
f -> toggle filter
b -> Bilder bearbeiten
d -> Dateien bearbeiten
h -> Dateien hochladen
u -> Benutzer
x -> Logout
für Chefredakteure zusätzlich:
s -> System
für Superuser und Admins zusätzlich:
t -> Templates
m -> Module

Folgende Ergänzungen sind erforderlich:

_admin/frame_navigation.php

Code: Alles auswählen

suche (ca. Zeile 32): 
<body class="navigation_body">

einfügen:
<?php // -------- tastaturbedienung start -------------
      if ($_SESSION['SID_user']['admin']>=ROLE_EDITOR) { // tastatur-shortcuts für redakteure... ?>
	<a href="upload_files.php" accesskey="h" target="cpo_content"></a>
	<a href="manage_files.php" accesskey="d" target="cpo_content"></a>
	<a href="manage_images.php" accesskey="b" target="cpo_content"></a>
	<a href="articles.php" accesskey="a" target="cpo_content"></a>
	<a href="frame_navigation.php?switch=Users" accesskey="u"></a>
	<a href="rubrics.php" accesskey="r" target="cpo_content"></a>
	<a href="index.php?action=logout" accesskey="x"></a>
<?php }
      if ($_SESSION['SID_user']['admin']>=ROLE_CHIEFEDITOR) { // tastatur-shortcuts für chefredakteure... ?>
	<a href="frame_navigation.php?switch=System" accesskey="s"></a>	
<?php }
      if ($_SESSION['SID_user']['admin']>=ROLE_SUPERUSER) { // tastatur-shortcuts für superuser und admins... ?>
<a href="frame_navigation.php?switch=Templates" accesskey="t"></a>
<a href="frame_navigation.php?switch=Modules" accesskey="m"></a>
<?php } // ------- tastaturbedienung ende ------------- ?>
Damit man auch den Artikel- und Dateifilter per Shortcut aufklappen kann:
_admin/articles.php

Code: Alles auswählen

suche (ca. Zeile 1133):

if (!$_SESSION['filter_articles']['enabled']) {
            echo '<table style="width: 100%;" class="colored filter"><thead>';
            echo '<tr>';
            printf('<th><span><a href="%1$s">
ergänze die letzte zeile zu
	    printf('<th><span><a href="%1$s" accesskey="f">' // accesskey ergänzt --- 1 von 2 ---

suche etwa 10 zeilen tiefer:

} else {
            echo '<table style="width: 100%;" class="colored"><thead>';
            echo '<tr>';
            printf('<th colspan="3"><span><a href="%1$s">

ergänze die letzte zeile zu
	    printf('<th colspan="3"><span><a href="%1$s" accesskey="f">' // accesskey ergänzt --- 2 von 2 ---
_include/tab_files.php

Code: Alles auswählen

suche (ca zeile 128):
if (!$_SESSION['filter_files']['enabled']) {
    print('<table style="width: 100%;" class="colored filter"><thead>');
    print('<tr>');
    printf('<th><span><a href="%1$s"

ergänze die letzte Zeile so:
    printf('<th><span><a href="%1$s" accesskey="f">' // accesskey ergänzt --- 1 von 2 ---

suche (ca 13 zeilen tiefer):
} else {
    print('<table style="width: 100%;" class="colored"><thead>');
    print('<tr>');
    printf('<th colspan="3"><span><a href="%1$s">

ergänze die letzte Zeile:
    printf('<th colspan="3"><span><a href="%1$s" accesskey="f">' // accesskey ergänzt --- 2 von 2 ---
Ich find's sehr nützlich!
Grüße von
Horst
Antworten