http://www.mediawiki.org/wiki/Special:Code/MediaWiki/90691
Revision: 90691
Author: kbrown
Date: 2011-06-24 06:11:36 +0000 (Fri, 24 Jun 2011)
Log Message:
-----------
Fix problems in r90526. Started adding proper i18n support as well as replaced
individual global config with one array of config options.
Modified Paths:
--------------
trunk/extensions/ArchiveLinks/ArchiveLinks.php
Added Paths:
-----------
trunk/extensions/ArchiveLinks/ArchiveLinks.i18n.php
Added: trunk/extensions/ArchiveLinks/ArchiveLinks.i18n.php
===================================================================
--- trunk/extensions/ArchiveLinks/ArchiveLinks.i18n.php
(rev 0)
+++ trunk/extensions/ArchiveLinks/ArchiveLinks.i18n.php 2011-06-24 06:11:36 UTC
(rev 90691)
@@ -0,0 +1,11 @@
+<?php
+/**
+ * Internationalization File for Archive Links
+ */
+
+$messages = array();
+
+//English
+$messages['en'] = array (
+ 'archive-links-cache-title' => '[cache]',
+);
\ No newline at end of file
Property changes on: trunk/extensions/ArchiveLinks/ArchiveLinks.i18n.php
___________________________________________________________________
Added: svn:eol-style
+ native
Modified: trunk/extensions/ArchiveLinks/ArchiveLinks.php
===================================================================
--- trunk/extensions/ArchiveLinks/ArchiveLinks.php 2011-06-24 01:58:52 UTC
(rev 90690)
+++ trunk/extensions/ArchiveLinks/ArchiveLinks.php 2011-06-24 06:11:36 UTC
(rev 90691)
@@ -46,12 +46,15 @@
//$wgHooks['LinkerMakeExternalLink'][] = 'getExternalLinks';
//$wgHooks['EditPage::attemptSave'][] = 'getExternalLinks';
+$wgExtensionMessagesFiles['ArchiveLinks'] = dirname( __FILE__ ) .
'/ArchiveLinks.i18n.php';
+
$wgHooks['ArticleSaveComplete'][] = 'ArchiveLinks::queueExternalLinks';
$wgHooks['LinkerMakeExternalLink'][] = 'ArchiveLinks::rewriteLinks';
-$wgArchiveService = 'wikiwix';
-$wgUseMultipleArchives = false;
-$wgWhatToCallArchive = '[cache]';
+$wgArchiveLinksConfig = array (
+ 'archive_service' => 'wikiwix',
+ 'use_multiple_archives' => false,
+);
class ArchiveLinks {
public static function queueExternalLinks ( &$article ) {
@@ -70,9 +73,7 @@
foreach ( $external_links as $link => $unused_value ) {
//$db_result['resource'] = $db_slave->select(
'el_archive_resource', '*', '`el_archive_resource`.`resource_url` = "' .
$db_slave->strencode( $link ) . '"');
$db_result['blacklist'] = $db_slave->select(
'el_archive_blacklist', '*', '`el_archive_blacklist`.`bl_url` = "' .
$db_slave->strencode( $link ) . '"');
-
- //we need to know if the URL is already in the queue to prevent a
page from being archived twice, so we will query the master
- $db_result['queue'] = $db_master->select( 'el_archive_queue', '*',
'`el_archive_queue`.`url` = "' . $db_slave->strencode( $link ) . '"' );
+ $db_result['queue'] = $db_slave->select( 'el_archive_queue', '*',
'`el_archive_queue`.`url` = "' . $db_slave->strencode( $link ) . '"' );
if ( $db_result['blacklist']->numRows() === 0 ) {
if ( $db_result['queue']->numRows() === 0 ) {
@@ -107,31 +108,30 @@
public static function rewriteLinks ( &$url, &$text, &$link, &$attributes
) {
if ( array_key_exists('rel', $attributes) && $attributes['rel'] ===
'nofollow' ) {
- global $wgArchiveService;
- global $wgUseMultipleArchives;
- global $wgWhatToCallArchive;
- if ( $wgUseMultipleArchives ) {
- //add support for more than one archival service at once
- // (a page where you can select more than one)
+ global $wgArchiveLinksConfig;
+ if ( $wgArchiveLinksConfig['use_multiple_archives'] ) {
+ //need to add support for more than one archival service at once
+ // (a page where you can select one from a list of choices)
} else {
- switch ( $wgArchiveService ) {
+ switch ( $wgArchiveLinksConfig['archive_service'] ) {
case 'local':
//We need to have something to figure out where the
filestore is...
$link_to_archive = urlencode( substr_replace( $url, '',
0, 7 ) );
break;
case 'wikiwix':
- $link_to_archive =
'http://archive.wikiwix.org/cache/?url=' . $link;
+ $link_to_archive =
'http://archive.wikiwix.com/cache/?url=' . $url;
break;
case 'internet_archive':
- $link_to_archive = 'http://wayback.archive.org/web/*/'
. $link;
+ $link_to_archive = 'http://wayback.archive.org/web/*/'
. $url;
break;
case 'webcitation':
- $link_to_archive = 'http://webcitation.org/query?url='
. $link;
+ $link_to_archive = 'http://webcitation.org/query?url='
. $url;
break;
}
}
- $link = "<a rel=\"nofollow\" class=\"{$attributes['class']}\"
href=\"{$url}\">{$text}</a> <sup><small><a href=\""
- . $link_to_archive .
"\">{$wgWhatToCallArchive}</a></small></sup> ";
+ //Note to self: need to fix this to use Html.php instead of direct
html
+ $link = "<a rel=\"nofollow\" class=\"{$attributes['class']}\"
href=\"{$url}\">{$text}</a> <sup><small><a href=\""
+ . "{$link_to_archive}\">" . wfMsg( 'archive-links-cache-title' ) .
'</a></small></sup> ';
return false;
} else {
return true;
@@ -160,7 +160,7 @@
//$db_slave = wfGetDB( DB_SLAVE );
- /*$db_result = $db_slave->select( 'el_archive_blacklist', '*',
+ /*db_result = $db_slave->select( 'el_archive_blacklist', '*',
'`el_archive_blacklist`.`bl_url` = "' . $db_slave->strencode(
'http://example.com' ) . '"');
*/
//$db_result['queue'] = $db_slave->select( 'el_archive_queue', '*',
'`el_archive_queue`.`url` = "' . $db_slave->strencode( 'http://example.com' ) .
'"' );
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs