* Prettify input form for RTL wikis
authorRaimond Spekking <raymond@users.mediawiki.org>
Tue, 29 Jan 2008 16:32:49 +0000 (16:32 +0000)
committerRaimond Spekking <raymond@users.mediawiki.org>
Tue, 29 Jan 2008 16:32:49 +0000 (16:32 +0000)
* Consistent appearance to the file deletion form
* Consistent usage of Xml::functions, code cleanup

includes/Article.php
languages/messages/MessagesDe.php
languages/messages/MessagesDe_formal.php
languages/messages/MessagesEn.php
maintenance/language/messageTypes.inc
maintenance/language/messages.inc

index 5840afa..626d59c 100644 (file)
@@ -1954,8 +1954,8 @@ class Article {
                        return;
                }
 
-               $wgOut->setPagetitle( wfMsg( 'confirmdelete' ) );
-               
+               $wgOut->setPagetitle( wfMsg( 'delete-confirm', $this->mTitle->getPrefixedText() ) );
+
                # Better double-check that it hasn't been deleted yet!
                $dbw = wfGetDB( DB_MASTER );
                $conds = $this->mTitle->pageCond();
@@ -2078,64 +2078,60 @@ class Article {
 
        /**
         * Output deletion confirmation dialog
+        * @param $par string FIXME: do we need this parameter? One Call from Article::delete with '' only.
+        * @param $reason string Prefilled reason
         */
        function confirmDelete( $par, $reason ) {
-               global $wgOut, $wgUser;
+               global $wgOut, $wgUser, $wgContLang;
+               $align = $wgContLang->isRtl() ? 'left' : 'right';
 
                wfDebug( "Article::confirmDelete\n" );
 
-               $sub = htmlspecialchars( $this->mTitle->getPrefixedText() );
-               $wgOut->setSubtitle( wfMsg( 'deletesub', $sub ) );
+               $wgOut->setSubtitle( wfMsg( 'delete-backlink', $wgUser->getSkin()->makeKnownLinkObj( $this->mTitle ) ) );
                $wgOut->setRobotpolicy( 'noindex,nofollow' );
                $wgOut->addWikiText( wfMsg( 'confirmdeletetext' ) );
 
-               $formaction = $this->mTitle->escapeLocalURL( 'action=delete' . $par );
-
-               $confirm = htmlspecialchars( wfMsg( 'deletepage' ) );
-               $delcom = Xml::label( wfMsg( 'deletecomment' ), 'wpDeleteReasonList' );
-               $token = htmlspecialchars( $wgUser->editToken() );
-               $watch = Xml::checkLabel( wfMsg( 'watchthis' ), 'wpWatch', 'wpWatch', $wgUser->getBoolOption( 'watchdeletion' ) || $this->mTitle->userIsWatching(), array( 'tabindex' => '2' ) );
-               
-               $deletereasonother = Xml::label( wfMsg( 'deleteotherreason' ), 'wpReason' );
-               $reasonDropDown = Xml::listDropDown( 'wpDeleteReasonList',
-                       wfMsgForContent( 'deletereason-dropdown' ), 
-                       wfMsgForContent( 'deletereasonotherlist' ), '', 'wpReasonDropDown', 1 );
-
-               $wgOut->addHTML( "
-<form id='deleteconfirm' method='post' action=\"{$formaction}\">
-       <table border='0'>
-               <tr id=\"wpDeleteReasonListRow\" name=\"wpDeleteReasonListRow\">
-                       <td align='right'>
-                               $delcom:
-                       </td>
-                       <td align='left'>
-                               $reasonDropDown
-                       </td>
-               </tr>
-               <tr id=\"wpDeleteReasonRow\" name=\"wpDeleteReasonRow\">
-                       <td>
-                               $deletereasonother
-                       </td>
-                       <td align='left'>
-                               <input type='text' maxlength='255' size='60' name='wpReason' id='wpReason' value=\"" . htmlspecialchars( $reason ) . "\" tabindex=\"2\" />
-                       </td>
-               </tr>
-               <tr>
-                       <td>&nbsp;</td>
-                       <td>$watch</td>
-               </tr>
-               <tr>
-                       <td>&nbsp;</td>
-                       <td>
-                               <input type='submit' name='wpConfirmB' id='wpConfirmB' value=\"{$confirm}\" tabindex=\"3\" />
-                       </td>
-               </tr>
-       </table>
-       <input type='hidden' name='wpEditToken' value=\"{$token}\" />
-</form>\n" );
-
-               $wgOut->returnToMain( false, $this->mTitle );
-
+               $form = Xml::openElement( 'form', array( 'method' => 'post', 'action' => $this->mTitle->getLocalURL( 'action=delete' . $par ), 'id' => 'deleteconfirm' ) ) .
+                       Xml::openElement( 'fieldset' ) .
+                       Xml::element( 'legend', array(), wfMsg( 'delete-legend' ) ) .
+                       Xml::openElement( 'table' ) .
+                       "<tr id=\"wpDeleteReasonListRow\" name=\"wpDeleteReasonListRow\">
+                               <td align=$align>" .
+                                       Xml::label( wfMsg( 'deletecomment' ), 'wpDeleteReasonList' ) .
+                               "</td>
+                               <td>" .
+                                       Xml::listDropDown( 'wpDeleteReasonList',
+                                               wfMsgForContent( 'deletereason-dropdown' ), 
+                                               wfMsgForContent( 'deletereasonotherlist' ), '', 'wpReasonDropDown', 1 ) .
+                               "</td>
+                       </tr>
+                       <tr id=\"wpDeleteReasonRow\" name=\"wpDeleteReasonRow\">
+                               <td align=$align>" .
+                                       Xml::label( wfMsg( 'deleteotherreason' ), 'wpReason' ) .
+                               "</td>
+                               <td>" .
+                                       Xml::input( 'wpReason', 60, $reason, array( 'type' => 'text', 'maxlength' => '255', 'tabindex' => '2' ) ) .
+                               "</td>
+                       </tr>
+                       <tr>
+                               <td></td>
+                               <td>" .
+                                       Xml::checkLabel( wfMsg( 'watchthis' ), 'wpWatch', 'wpWatch', $wgUser->getBoolOption( 'watchdeletion' ) || $this->mTitle->userIsWatching(), array( 'tabindex' => '3' ) ) .
+                               "</td>
+                       </tr>
+                       <tr>
+                               <td></td>
+                               <td>" .
+                                       Xml::submitButton( wfMsg( 'deletepage' ), array( 'name' => 'wpConfirmB', 'id' => 'wpConfirmB', 'tabindex' => '4' ) ) .
+                               "</td>
+                       </tr>" .
+                       Xml::closeElement( 'table' ) .
+                       Xml::closeElement( 'fieldset' ) .
+                       Xml::hidden( 'wpEditToken', $wgUser->editToken() ) .
+                       Xml::closeElement( 'fieldset' ) .
+                       Xml::closeElement( 'form' );
+
+               $wgOut->addHTML( $form );
                $this->showLogExtract( $wgOut );
        }
 
index 61d4be4..3a5d53f 100644 (file)
@@ -1521,10 +1521,10 @@ Um die Einstellungen deiner Beobachtungsliste anzupassen, besuche: {{fullurl:Spe
 'excontentauthor'             => "Inhalt war: '$1' (einziger Bearbeiter: [[{{ns:User}}:$2|$2]] – [[{{ns:User talk}}:$2|Diskussion]])",
 'exbeforeblank'               => "Inhalt vor dem Leeren der Seite: '$1'",
 'exblank'                     => 'Seite war leer',
-'confirmdelete'               => 'Löschen bestätigen',
-'deletesub'                   => '(Lösche „$1“)',
+'delete-confirm'              => 'Löschen von „$1“',
+'delete-legend'               => 'Löschen',
 'historywarning'              => 'Achtung, die Seite, die du löschen möchtest, hat eine Versionsgeschichte:',
-'confirmdeletetext'           => 'Du bist dabei, eine Seite oder eine Datei und alle zugehörigen älteren Versionen zu löschen. Bitte bestätige dazu, dass du dir der Konsequenzen bewusst bist, und dass du in Übereinstimmung mit den [[{{MediaWiki:Policy-url}}|Richtlinien]] handelst.',
+'confirmdeletetext'           => 'Du bist dabei, eine Seite mit allen zugehörigen älteren Versionen zu löschen. Bitte bestätige dazu, dass du dir der Konsequenzen bewusst bist, und dass du in Übereinstimmung mit den [[{{MediaWiki:Policy-url}}|Richtlinien]] handelst.',
 'actioncomplete'              => 'Aktion beendet',
 'deletedtext'                 => '„$1“ wurde gelöscht. Im $2 findest du eine Liste der letzten Löschungen.',
 'deletedarticle'              => 'hat „[[$1]]“ gelöscht',
@@ -1532,7 +1532,7 @@ Um die Einstellungen deiner Beobachtungsliste anzupassen, besuche: {{fullurl:Spe
 'dellogpagetext'              => 'Dies ist das Logbuch der gelöschten Seiten und Dateien.',
 'deletionlog'                 => 'Lösch-Logbuch',
 'reverted'                    => 'Auf eine alte Version zurückgesetzt',
-'deletecomment'               => 'Grund der Löschung',
+'deletecomment'               => 'Grund der Löschung:',
 'deleteotherreason'           => 'Anderer/ergänzender Grund:',
 'deletereasonotherlist'       => 'Anderer Grund',
 'deletereason-dropdown'       => '
index ae539be..088dc32 100644 (file)
@@ -360,7 +360,7 @@ Um die Einstellungen Ihrer Beobachtungsliste anzupassen, besuchen Sie: {{fullurl
 
 # Delete/protect/revert
 'historywarning'         => 'Achtung, die Seite, die Sie löschen möchten, hat eine Versionsgeschichte:',
-'confirmdeletetext'      => 'Sie sind dabei, eine Seite oder eine Datei und alle zugehörigen älteren Versionen zu löschen. Bitte bestätigen Sie, dass Sie sich der Konsequenzen bewusst sind, und dass Sie in Übereinstimmung mit den [[{{MediaWiki:Policy-url}}|Richtlinien]] handeln.',
+'confirmdeletetext'      => 'Sie sind dabei, eine Seite mit allen zugehörigen älteren Versionen zu löschen. Bitte bestätigen Sie, dass Sie sich der Konsequenzen bewusst sind, und dass Sie in Übereinstimmung mit den [[{{MediaWiki:Policy-url}}|Richtlinien]] handeln.',
 'deletedtext'            => '„$1“ wurde gelöscht. Im $2 finden Sie eine Liste der letzten Löschungen.',
 'sessionfailure'         => 'Es gab ein Problem mit Ihrer Benutzersitzung.
 Diese Aktion wurde aus Sicherheitsgründen abgebrochen, um eine falsche Zuordnung Ihrer Änderungen zu einem anderen Benutzer zu verhindern.
index 98d8351..07e0db3 100644 (file)
@@ -1906,20 +1906,20 @@ Feedback and further assistance:
 'excontentauthor'             => "content was: '$1' (and the only contributor was '[[Special:Contributions/$2|$2]]')",
 'exbeforeblank'               => "content before blanking was: '$1'",
 'exblank'                     => 'page was empty',
-'confirmdelete'               => 'Confirm delete',
-'deletesub'                   => '(Deleting "$1")',
+'delete-confirm'              => 'Delete "$1"',
+'delete-backlink'             => '← $1', # only translate this message to other languages if you have to change it
+'delete-legend'               => 'Delete',
 'historywarning'              => 'Warning: The page you are about to delete has a history:',
 'confirmdeletetext'           => 'You are about to delete a page along with all of its history.
 Please confirm that you intend to do this, that you understand the consequences, and that you are doing this in accordance with [[{{MediaWiki:Policy-url}}|the policy]].',
 'actioncomplete'              => 'Action complete',
-'deletedtext'                 => '"$1" has been deleted.
-See $2 for a record of recent deletions.',
+'deletedtext'                 => '"$1" has been deleted. See $2 for a record of recent deletions.',
 'deletedarticle'              => 'deleted "[[$1]]"',
 'dellogpage'                  => 'Deletion log',
 'dellogpagetext'              => 'Below is a list of the most recent deletions.',
 'deletionlog'                 => 'deletion log',
 'reverted'                    => 'Reverted to earlier revision',
-'deletecomment'               => 'Reason for deletion',
+'deletecomment'               => 'Reason for deletion:',
 'deleteotherreason'           => 'Other/additional reason:',
 'deletereasonotherlist'       => 'Other reason',
 'deletereason-dropdown'       => '
index ab2ddab..43ca41c 100644 (file)
@@ -223,6 +223,7 @@ $wgOptionalMessages = array(
        'hours-abbrev',
        'filerevert-backlink',
        'filedelete-backlink',
+       'delete-backlink',
        'pagetitle',
        'filename-prefix-blacklist',
        'edittools',
index 804fbdf..d06d671 100644 (file)
@@ -1241,8 +1241,9 @@ $wgMessageStructure = array(
                'excontentauthor',
                'exbeforeblank',
                'exblank',
-               'confirmdelete',
-               'deletesub',
+               'delete-confirm',
+               'delete-backlink',
+               'delete-legend',
                'historywarning',
                'confirmdeletetext',
                'actioncomplete',