// Find the right prefix
global $wgUrlProtocols;
- if(!is_null($protocol) && !empty($protocol) && !in_array($protocol, $wgUrlProtocols))
+ if(!is_null($protocol) && $protocol != '' && !in_array($protocol, $wgUrlProtocols))
{
foreach ($wgUrlProtocols as $p) {
if( substr( $p, 0, strlen( $protocol ) ) === $protocol ) {
}
}
}
- else
- $protocol = null;
$db = $this->getDb();
$this->addTables(array('page','externallinks')); // must be in this order for 'USE INDEX'
if(!is_null($query) || $query != '')
{
- if(is_null($protocol))
- $protocol = 'http';
-
- $likeQuery = LinkFilter::makeLike($query, $protocol);
+ $likeQuery = LinkFilter::makeLike($query , $protocol);
if (!$likeQuery)
$this->dieUsage('Invalid query', 'bad_query');
$likeQuery = substr($likeQuery, 0, strpos($likeQuery,'%')+1);
$this->addWhere('el_index LIKE ' . $db->addQuotes( $likeQuery ));
}
- else if(!is_null($protocol))
- $this->addWhere('el_index LIKE ' . $db->addQuotes( "$protocol%" ));
$prop = array_flip($params['prop']);
$fld_ids = isset($prop['ids']);
public function getAllowedParams() {
global $wgUrlProtocols;
- $protocols = array('');
+ $protocols = array();
foreach ($wgUrlProtocols as $p) {
$protocols[] = substr($p, 0, strpos($p,':'));
}
),
'protocol' => array (
ApiBase :: PARAM_TYPE => $protocols,
- ApiBase :: PARAM_DFLT => '',
+ ApiBase :: PARAM_DFLT => 'http',
),
'query' => null,
'namespace' => array (
return array (
'prop' => 'What pieces of information to include',
'offset' => 'Used for paging. Use the value returned for "continue"',
- 'protocol' => array( 'Protocol of the url. If empty and euquery set, the protocol is http.',
- 'Leave both this and euquery empty to list all external links'),
- 'query' => 'Search string without protocol. See [[Special:LinkSearch]]. Leave empty to list all external links',
+ 'protocol' => 'Protocol of the url',
+ 'query' => 'Search string without protocol. See [[Special:LinkSearch]]. Leave empty to list all external links (euprotocol will be ignored)',
'namespace' => 'The page namespace(s) to enumerate.',
'limit' => 'How many entries to return.'
);