This looks pretty funky...
A page with the title Main Page already exists. Would you like to edit the existing page?
Yes. I want to contribute to the existing page.
Yes. I want to contribute to the existing page.
Lack of interlinking tools means that this would promote creation of orphan pages, and the UI isn't very good. Doesn't seem to be a clear way to disable it in favor of alternate creation methods either.
* Victor Vasiliev
== Patch Contributors ==
-* Adam Mckaig
* Agbad
* Brad Jorsch
* Brent G
* church of emacs
* Daniel Arnold
* Danny B.
-* Evan Wheeler
* FunPika
* Happy-melon
* Jeremy Baron
* Jidanni
* Juliano F. Ravasi
-* Louperivois
* Lucas Garczewski
+* Louperivois
* Luigi Corsaro
* Manuel Menal
* Marcin Cieślak
-* Mark Johnston
* Marooned
* Max Semenik
-* Merrick Schaefer
* Michael De La Rue
* Michael Walsh
* Mike Horvath
* Simon Walker
* Stefano Codari
* Str4nd
-* Travis Derouin
== Translators ==
* Anders Wegge Jakobsen
* (bug 18222) $wgMinimalPasswordLength default is now 1
* $wgSessionHandler can be used to configure session.save_handler
-=== Migrated extensions ===
-The following extensions are migrated into MediaWiki 1.15:
-
-* Special:CreatePage (was extension Uniwiki CreatePage)
-
=== New features in 1.15 ===
* (bug 2242) Add an expiry time to temporary passwords
'ShortPagesPage' => 'includes/specials/SpecialShortpages.php',
'SpecialAllpages' => 'includes/specials/SpecialAllpages.php',
'SpecialBookSources' => 'includes/specials/SpecialBooksources.php',
- 'SpecialCreatePage' => 'includes/specials/SpecialCreatePage.php',
'SpecialExport' => 'includes/specials/SpecialExport.php',
'SpecialImport' => 'includes/specials/SpecialImport.php',
'SpecialListGroupRights' => 'includes/specials/SpecialListgrouprights.php',
'Export' => 'pagetools',
'Import' => 'pagetools',
'Whatlinkshere' => 'pagetools',
- 'CreatePage' => 'pagetools',
'Statistics' => 'wiki',
'Version' => 'wiki',
'Undelete' => array( 'SpecialPage', 'Undelete', 'deletedhistory' ),
'Whatlinkshere' => 'SpecialWhatlinkshere',
'MergeHistory' => array( 'SpecialPage', 'MergeHistory', 'mergehistory' ),
- 'Createpage' => 'SpecialCreatePage',
# Other
'Booksources' => 'SpecialBookSources',
<?php
-
/* This code was adapted from CreatePage.php from: Travis Derouin <travis@wikihow.com> for the Uniwiki extension CreatePage
* Originally licensed as: GNU GPL v2.0 or later
*
* @author Evan Wheeler
* @author Adam Mckaig (at UNICEF)
* @author Siebrand Mazeland (integrated into MediaWiki core)
- * @ingroup SpecialPage
+ * @addtogroup SpecialPage
*/
+
class SpecialCreatePage extends SpecialPage {
function __construct() {
SpecialPage::SpecialPage( 'CreatePage', 'createpage' );
}
- public function execute( $par ) {
+ public function execute( $params ) {
global $wgOut, $wgRequest, $wgUser;
$this->setHeaders();
return;
}
- $this->outputHeader();
+ $wgOut->addWikiMsg( 'createpage-summary' );
// check to see if we are trying to create a page
- $target = $wgRequest->getVal( 'target', $par );
- $title = Title::newFromText( $target );
+ $target = $wgRequest->getVal ( 'target' );
+ $title = Title::newFromText ( $target );
// check for no title
if ( $wgRequest->wasPosted() && $target === '' ) {
$this->error( wfMsg( 'createpage-entertitle' ) );
- } elseif ( $target !== null ) {
- if ( !$title instanceof Title ) {
- // check for invalid title
- $this->error( wfMsg( 'createpage-badtitle', $target ) );
- } else if ( $title->getArticleID() > 0 ) {
+ }
+ // check for invalid title
+ elseif ( $wgRequest->wasPosted() && is_null( $title ) ) {
+ $this->error( wfMsg( 'createpage-badtitle', $target ) );
+ }
+ elseif ( $target != null ) {
+ if ( $title->getArticleID() > 0 ) {
// if the title exists then let the user know and give other options
- $wgOut->addWikiMsg( 'createpage-titleexists', $title->getFullText() );
- $wgOut->addHTML( '<br />' );
+ $wgOut->addWikiText ( wfMsg ( 'createpage-titleexists', $title->getFullText() ) . "<br />" );
$skin = $wgUser->getSkin();
- $editlink = $skin->makeLinkObj( $title, wfMsgHTML( 'createpage-editexisting' ), 'action=edit' );
- $thislink = $skin->makeLinkObj( $this->getTitle(), wfMsgHTML( 'createpage-tryagain' ) );
- $wgOut->addHTML( $editlink . '<br />' . $editlink );
+ $editlink = $skin->makeLinkObj( $title, wfMsg ( 'createpage-editexisting' ), 'action=edit' );
+ $thisPage = Title::newFromText ( 'CreatePage', NS_SPECIAL );
+ $wgOut->addHTML ( $editlink . '<br />'
+ . $skin->makeLinkObj ( $thisPage, wfMsg ( 'createpage-tryagain' ) )
+ );
return;
} else {
/* TODO - may want to search for closely named pages and give
* other options here... */
// otherwise, redirect them to the edit page for their title
- $wgOut->redirect( $title->getEditURL() );
+ $wgOut->redirect ( $title->getEditURL() );
}
}
}
// output the form
- $wgOut->addHTML(
- Xml::openElement( 'fieldset' ) .
+ $form = Xml::openElement( 'fieldset' ) .
Xml::element( 'legend', null, wfMsg( 'createpage' ) ) . # This should really use a different message
wfMsgWikiHtml( 'createpage-instructions' ) .
- Xml::openElement( 'form', array( 'method' => 'post', 'name' => 'createpageform', 'action' => $this->getTitle()->getLocalUrl() ) ) .
+ Xml::openElement( 'form', array( 'method' => 'post', 'name' => 'createpageform', 'action' => '' ) ) .
Xml::element( 'input', array( 'type' => 'text', 'name' => 'target', 'size' => 50, 'value' => $newTitle ) ) .
'<br />' .
- Xml::element( 'input', array( 'type' => 'submit', 'value' => wfMsg( 'createpage-submitbutton' ) ) ) .
+ Xml::element( 'input', array( 'type' => 'submit', 'value' => wfMsgHtml( 'createpage-submitbutton' ) ) ) .
Xml::closeElement( 'form' ) .
- Xml::closeElement( 'fieldset' )
- );
+ Xml::closeElement( 'fieldset' );
+ $wgOut->addHTML( $form );
}
/*
* Function to output an error message
'LinkSearch' => array( 'بحث_الوصلات' ),
'DeletedContributions' => array( 'مساهمات_محذوفة' ),
'Tags' => array( 'وسوم' ),
- 'Createpage' => array( 'إنشاء_صفحة' ),
);
/**
'LinkSearch' => array( 'بحث_الوصلات' ),
'DeletedContributions' => array( 'مساهمات_محذوفة' ),
'Tags' => array( 'وسوم' ),
- 'Createpage' => array( 'إنشاء_صفحة' ),
);
$messages = array(
'LinkSearch' => array( 'Weblink-Suche' ),
'DeletedContributions' => array( 'Gelöschte Beiträge' ),
'Tags' => array( 'Markierungen' ),
- 'Createpage' => array( 'Seite erstellen' ),
);
$datePreferences = array(
'LinkSearch' => array( 'Pytanje wótkazow' ),
'DeletedContributions' => array( 'Wulašowane pśinoski' ),
'Tags' => array( 'Toflicki' ),
- 'Createpage' => array( 'Bok napóraś' ),
);
$messages = array(
'LinkSearch' => array( 'LinkSearch' ),
'DeletedContributions' => array( 'DeletedContributions' ),
'Tags' => array( 'Tags' ),
- 'Createpage' => array( 'CreatePage' ),
);
/**
** currentevents-url|currentevents
** recentchanges-url|recentchanges
** randompage-url|randompage
-** createpage-url|createpage
** helppage|help
* SEARCH
* TOOLBOX
'htmlform-reset' => 'Undo changes',
'htmlform-selectorother-other' => 'Other',
-# Special:CreatePage
-'createpage' => 'Create a page',
-'createpage-url' => 'Special:CreatePage', # do not translate or duplicate this message to other languages
-'createpage-summary' => '', # do not translate or duplicate this message to other languages
-'createpage-submitbutton' => 'Submit',
-'createpage-instructions' => 'Enter the title of the page you wish to create:',
-'createpage-entertitle' => 'Please enter a title for your page.',
-'createpage-titleexists' => 'A page with the title [[$1]] already exists.
-Would you like to edit the existing page?',
-'createpage-tryagain' => 'No. I want to create a new page with a distinct title.',
-'createpage-editexisting' => 'Yes. I want to contribute to the existing page.',
-'createpage-badtitle' => '"$1" cannot be used as a page title',
-
);
'Blankpage' => array( 'BlanquearPágina', 'Blanquear página' ),
'LinkSearch' => array( 'BúsquedaDeEnlaces', 'Búsqueda de enlaces' ),
'DeletedContributions' => array( 'ContribucionesBorradas', 'Contribuciones Borradas' ),
- 'Createpage' => array( 'Crear_página' ),
);
$magicWords = array(
'LinkSearch' => array( 'Recherche de lien', 'Recherche de liens' ),
'DeletedContributions' => array( 'Contributions supprimées', 'ContributionsSupprimées', 'ContributionSupprimees' ),
'Tags' => array( 'Balises' ),
- 'Createpage' => array( 'Créer page', 'CréerPage' ),
);
$separatorTransformTable = array( ',' => "\xc2\xa0", '.' => ',' );
$fallback = 'fr';
+
$bookstoreList = array(
'Amazon.fr' => 'http://www.amazon.fr/exec/obidos/ISBN=$1',
'alapage.fr' => 'http://www.alapage.com/mx/?tp=F&type=101&l_isbn=$1&donnee_appel=ALASQ&devise=&',
NS_CATEGORY_TALK => 'Discussion_Catègorie',
);
-$specialPageAliases = array(
- 'Createpage' => array( 'Fâre una pâge', 'FâreUnaPâge' ),
-);
-
$linkTrail = '/^([a-zàâçéèêîœôû·’æäåāăëēïīòöōùü‘]+)(.*)$/sDu';
$dateFormats = array(
'LinkSearch' => array( 'Buscar ligazóns web' ),
'DeletedContributions' => array( 'Contribucións borradas' ),
'Tags' => array( 'Etiquetas' ),
- 'Createpage' => array( 'Crear a páxina' ),
);
$magicWords = array(
'Blankpage' => array( 'Läärsyte' ),
'LinkSearch' => array( 'Suech no Gleicher' ),
'DeletedContributions' => array( 'Gleschti Byytreeg' ),
- 'Createpage' => array( 'Syte aalege' ),
);
$linkTrail = '/^([äöüßa-z]+)(.*)$/sDu';
'LinkSearch' => array( 'Wotkazowe pytanje' ),
'DeletedContributions' => array( 'Zničene přinoški' ),
'Tags' => array( 'Taflički' ),
- 'Createpage' => array( 'Stronu wutworić' ),
);
$messages = array(
'LinkSearch' => array( 'Hivatkozás keresés' ),
'DeletedContributions' => array( 'Törölt szerkesztések' ),
'Tags' => array( 'Címkék' ),
- 'Createpage' => array( 'Oldalkészítés', 'Oldal készítése' ),
);
$datePreferences = array(
'LinkSearch' => array( 'Recerca de ligamines' ),
'DeletedContributions' => array( 'Contributiones delite' ),
'Tags' => array( 'Etiquettas' ),
- 'Createpage' => array( 'Crear pagina' ),
);
$messages = array(
'Blankpage' => array( 'PaginaVuota' ),
'LinkSearch' => array( 'CercaCollegamenti' ),
'DeletedContributions' => array( 'ContributiCancellati' ),
- 'Createpage' => array( 'CreaPagina' ),
);
$magicWords = array(
'LinkSearch' => array( '外部リンク検索' ),
'DeletedContributions' => array( '削除された投稿記録', '削除された投稿履歴', '削除歴' ),
'Tags' => array( 'タグ一覧' ),
- 'Createpage' => array( 'ページ作成' ),
);
$magicWords = array(
'Blankpage' => array( 'ទំព័រទទេ' ),
'LinkSearch' => array( 'ស្វែងរកតំណភ្ជាប់' ),
'DeletedContributions' => array( 'ការរួមចំណែកដែលត្រូវបានលុបចោល' ),
- 'Createpage' => array( 'បង្កើតទំព័រ' ),
);
$magicWords = array(
'LinkSearch' => array( 'Websigge Söke' ),
'DeletedContributions' => array( 'Fotjeschmeße' ),
'Tags' => array( 'Makeerunge' ),
- 'Createpage' => array( 'Sigge_aanlääje', 'Sigg_aanlääje' ),
);
$magicWords = array(
'Bild_Diskussioun' => NS_FILE_TALK,
);
+
$specialPageAliases = array(
'DoubleRedirects' => array( 'Duebel Viruleedungen' ),
'BrokenRedirects' => array( 'Futtis Viruleedungen' ),
'LinkSearch' => array( 'Weblink-Sich' ),
'DeletedContributions' => array( 'Geläschte Kontributiounen' ),
'Tags' => array( 'Taggen' ),
- 'Createpage' => array( 'Säiten uleeën' ),
);
$messages = array(
'LinkSearch' => array( 'ПребарајВрска' ),
'DeletedContributions' => array( 'ИзбришаниПридонеси' ),
'Tags' => array( 'Приврзоци' ),
- 'Createpage' => array( 'КреирајСтраница' ),
);
$magicWords = array(
'Blankpage' => array( 'PaġnaVojta' ),
'LinkSearch' => array( 'FittexĦolqa' ),
'DeletedContributions' => array( 'KontribuzzjonijietImħassra' ),
- 'Createpage' => array( 'OħloqPaġna' ),
);
$magicWords = array(
'Blankpage' => array( 'Lege_pagina' ),
'LinkSearch' => array( 'Verwiezingen_zeuken' ),
'DeletedContributions' => array( 'Vort-ehaolen gebrukersbiedragen' ),
- 'Createpage' => array( 'Pagina_anmaken' ),
);
$linkTrail = '/^([a-zäöüïëéèà]+)(.*)$/sDu';
'LinkSearch' => array( 'VerwijzingenZoeken', 'LinksZoeken' ),
'DeletedContributions' => array( 'VerwijderdeBijdragen' ),
'Tags' => array( 'Labels' ),
- 'Createpage' => array( 'PaginaAanmaken' ),
);
$linkTrail = '/^([a-zäöüïëéèà]+)(.*)$/sDu';
'LinkSearch' => array( 'Lenkesøk' ),
'DeletedContributions' => array( 'Slettede bidrag' ),
'Tags' => array( 'Tagger' ),
- 'Createpage' => array( 'Opprett side' ),
);
$messages = array(
'Blankpage' => array( 'تش مخ' ),
'LinkSearch' => array( 'د تړنې پلټنه' ),
'DeletedContributions' => array( 'ړنګې شوي ونډې' ),
- 'Createpage' => array( 'مخ جوړول' ),
);
$magicWords = array(
'Blankpage' => array( 'रिक्तपृष्ठ' ),
'LinkSearch' => array( 'सम्बन्धन्शोध' ),
'DeletedContributions' => array( 'परित्यागितयोगदान' ),
- 'Createpage' => array( 'पृष्ठस्यसृजन' ),
);
$magicWords = array(
'Invalidateemail' => array( 'SurelekTeuKaci' ),
'Blankpage' => array( 'KacaKosong' ),
'Tags' => array( 'Tag' ),
- 'Createpage' => array( 'JieunKaca' ),
);
$messages = array(
'LinkSearch' => array( 'Länksökning' ),
'DeletedContributions' => array( 'Raderade bidrag' ),
'Tags' => array( 'Taggar' ),
- 'Createpage' => array( 'Skapa sida' ),
);
$magicWords = array(
'Blankpage' => array( 'KurasaTupu' ),
'LinkSearch' => array( 'TafutaKiungo' ),
'DeletedContributions' => array( 'MichangoIliyofutwa' ),
- 'Createpage' => array( 'AnzishaUkurasa' ),
);
$messages = array(
'LinkSearch' => array( 'ค้นหาเว็บลิงก์' ),
'DeletedContributions' => array( 'การแก้ไขที่ถูกลบ' ),
'Tags' => array( 'ป้ายกำักับ' ),
- 'Createpage' => array( 'สร้างหน้า' ),
);
$magicWords = array(
'LinkSearch' => array( 'Paghahanap ng kawing' ),
'DeletedContributions' => array( 'Naburang mga ambag' ),
'Tags' => array( 'Mga tatak' ),
- 'Createpage' => array( 'Likhain ang pahina', 'LikhaPahina' ),
);
$messages = array(
'LinkSearch' => array( 'SercaLigamenti' ),
'DeletedContributions' => array( 'ContributiScancelà' ),
'Tags' => array( 'Tag' ),
- 'Createpage' => array( 'CreaPàxena' ),
);
$messages = array(
'upload-summary',
'newuserlogentry',
'wantedtemplates-summary',
- 'createpage-summary',
- 'createpage-url',
);
/** Optional messages, which may be translated only if changed in the target language. */
'htmlform-reset',
'htmlform-selectorother-other',
),
- 'createpage' => array(
- 'createpage',
- 'createpage-url',
- 'createpage-summary',
- 'createpage-submitbutton',
- 'createpage-instructions',
- 'createpage-entertitle',
- 'createpage-titleexists',
- 'createpage-tryagain',
- 'createpage-editexisting',
- 'createpage-badtitle',
- ),
);
/** Comments for each block */
'special-tags' => 'Special:Tags',
'db-error-messages' => 'Database error messages',
'html-forms' => 'HTML forms',
- 'createpage' => 'Special:CreatePage',
);