Linux anchor 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64
Apache/2.4.18 (Ubuntu)
Server IP : 10.10.100.4 & Your IP : 216.73.217.150
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
www /
wiki.bernardino.org /
includes /
specials /
Delete
Unzip
Name
Size
Permission
Date
Action
helpers
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
pagers
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
SpecialActiveusers.php
3.48
KB
-rw-r--r--
2016-11-28 20:20
SpecialAllMessages.php
1.96
KB
-rw-r--r--
2016-11-28 20:20
SpecialAllPages.php
10.42
KB
-rw-r--r--
2016-11-28 20:20
SpecialAllmessages.php
12.08
KB
-rw-r--r--
2012-01-04 14:32
SpecialAllpages.php
14.84
KB
-rw-r--r--
2011-06-17 18:05
SpecialAncientpages.php
2.12
KB
-rw-r--r--
2016-11-28 20:20
SpecialApiHelp.php
2.62
KB
-rw-r--r--
2016-11-28 20:20
SpecialApiSandbox.php
1.64
KB
-rw-r--r--
2016-11-28 20:20
SpecialBlankpage.php
1.2
KB
-rw-r--r--
2016-11-28 20:20
SpecialBlock.php
30.28
KB
-rw-r--r--
2016-11-28 20:20
SpecialBlockList.php
6.01
KB
-rw-r--r--
2016-11-28 20:20
SpecialBlockme.php
1.67
KB
-rw-r--r--
2011-03-21 20:12
SpecialBooksources.php
5.45
KB
-rw-r--r--
2016-11-28 20:20
SpecialBotPasswords.php
9.29
KB
-rw-r--r--
2016-11-28 20:20
SpecialBrokenRedirects.php
4.38
KB
-rw-r--r--
2016-11-28 20:20
SpecialCachedPage.php
5.51
KB
-rw-r--r--
2016-11-28 20:20
SpecialCategories.php
1.89
KB
-rw-r--r--
2016-11-28 20:20
SpecialChangeContentModel.php
7.91
KB
-rw-r--r--
2016-11-28 20:20
SpecialChangeCredentials.php
6.71
KB
-rw-r--r--
2016-11-28 20:20
SpecialChangeEmail.php
4.78
KB
-rw-r--r--
2016-11-28 20:20
SpecialChangePassword.php
1.18
KB
-rw-r--r--
2016-11-28 20:20
SpecialComparePages.php
4.42
KB
-rw-r--r--
2016-11-28 20:20
SpecialConfirmemail.php
5.16
KB
-rw-r--r--
2016-11-28 20:20
SpecialContributions.php
19.52
KB
-rw-r--r--
2016-11-28 20:20
SpecialCreateAccount.php
5.03
KB
-rw-r--r--
2016-11-28 20:20
SpecialDeadendpages.php
2.11
KB
-rw-r--r--
2016-11-28 20:20
SpecialDeletedContributions.php
7.9
KB
-rw-r--r--
2016-11-28 20:20
SpecialDiff.php
2.29
KB
-rw-r--r--
2016-11-28 20:20
SpecialDisambiguations.php
4.18
KB
-rw-r--r--
2011-07-06 04:26
SpecialDoubleRedirects.php
5.58
KB
-rw-r--r--
2016-11-28 20:20
SpecialEditTags.php
13.97
KB
-rw-r--r--
2016-11-28 20:20
SpecialEditWatchlist.php
21.93
KB
-rw-r--r--
2016-11-28 20:20
SpecialEmailInvalidate.php
2.18
KB
-rw-r--r--
2016-11-28 20:20
SpecialEmailuser.php
12.69
KB
-rw-r--r--
2016-11-28 20:20
SpecialExpandTemplates.php
8.64
KB
-rw-r--r--
2016-11-28 20:20
SpecialExport.php
15.54
KB
-rw-r--r--
2016-11-28 20:20
SpecialFewestrevisions.php
2.9
KB
-rw-r--r--
2016-11-28 20:20
SpecialFileDuplicateSearch.php
7.26
KB
-rw-r--r--
2016-11-28 20:20
SpecialFilepath.php
1.52
KB
-rw-r--r--
2016-11-28 20:20
SpecialImport.php
19.38
KB
-rw-r--r--
2016-11-28 20:20
SpecialJavaScriptTest.php
6.62
KB
-rw-r--r--
2016-11-28 20:20
SpecialLinkAccounts.php
3.14
KB
-rw-r--r--
2016-11-28 20:20
SpecialLinkSearch.php
7.42
KB
-rw-r--r--
2016-11-28 20:20
SpecialListDuplicatedFiles.php
2.93
KB
-rw-r--r--
2016-11-28 20:20
SpecialListfiles.php
2.44
KB
-rw-r--r--
2016-11-28 20:20
SpecialListgrants.php
2.54
KB
-rw-r--r--
2016-11-28 20:20
SpecialListgrouprights.php
9.52
KB
-rw-r--r--
2016-11-28 20:20
SpecialListredirects.php
3.61
KB
-rw-r--r--
2016-11-28 20:20
SpecialListusers.php
2.54
KB
-rw-r--r--
2016-11-28 20:20
SpecialLockdb.php
3.28
KB
-rw-r--r--
2016-11-28 20:20
SpecialLog.php
8.29
KB
-rw-r--r--
2016-11-28 20:20
SpecialLonelypages.php
2.44
KB
-rw-r--r--
2016-11-28 20:20
SpecialLongpages.php
1.09
KB
-rw-r--r--
2016-11-28 20:20
SpecialMIMEsearch.php
5.29
KB
-rw-r--r--
2016-11-28 20:20
SpecialMediaStatistics.php
10.37
KB
-rw-r--r--
2016-11-28 20:20
SpecialMergeHistory.php
10.68
KB
-rw-r--r--
2016-11-28 20:20
SpecialMostcategories.php
2.93
KB
-rw-r--r--
2016-11-28 20:20
SpecialMostimages.php
1.66
KB
-rw-r--r--
2016-11-28 20:20
SpecialMostinterwikis.php
2.95
KB
-rw-r--r--
2016-11-28 20:20
SpecialMostlinked.php
3.31
KB
-rw-r--r--
2016-11-28 20:20
SpecialMostlinkedcategories.php
2.61
KB
-rw-r--r--
2016-11-28 20:20
SpecialMostlinkedtemplates.php
3.2
KB
-rw-r--r--
2016-11-28 20:20
SpecialMostrevisions.php
1.18
KB
-rw-r--r--
2016-11-28 20:20
SpecialMovepage.php
24.66
KB
-rw-r--r--
2016-11-28 20:20
SpecialMyLanguage.php
3.12
KB
-rw-r--r--
2016-11-28 20:20
SpecialMyRedirectPages.php
4.51
KB
-rw-r--r--
2016-11-28 20:20
SpecialNewimages.php
3.4
KB
-rw-r--r--
2016-11-28 20:20
SpecialNewpages.php
12.96
KB
-rwxr-xr-x
2016-11-28 20:20
SpecialPageLanguage.php
5.58
KB
-rw-r--r--
2016-11-28 20:20
SpecialPagesWithProp.php
5.1
KB
-rw-r--r--
2016-11-28 20:20
SpecialPasswordReset.php
6.08
KB
-rw-r--r--
2016-11-28 20:20
SpecialPermanentLink.php
1.47
KB
-rw-r--r--
2016-11-28 20:20
SpecialPopularpages.php
1.91
KB
-rw-r--r--
2011-05-26 21:21
SpecialPreferences.php
4.46
KB
-rw-r--r--
2016-11-28 20:20
SpecialPrefixindex.php
9.27
KB
-rw-r--r--
2016-11-28 20:20
SpecialProtectedpages.php
15.95
KB
-rw-r--r--
2016-11-28 20:20
SpecialProtectedtitles.php
5.5
KB
-rw-r--r--
2016-11-28 20:20
SpecialRandomInCategory.php
8.54
KB
-rw-r--r--
2016-11-28 20:20
SpecialRandompage.php
4.71
KB
-rw-r--r--
2016-11-28 20:20
SpecialRandomredirect.php
1.15
KB
-rw-r--r--
2016-11-28 20:20
SpecialRandomrootpage.php
1.21
KB
-rw-r--r--
2016-11-28 20:20
SpecialRecentchanges.php
22.18
KB
-rw-r--r--
2016-11-28 20:20
SpecialRecentchangeslinked.php
7.9
KB
-rw-r--r--
2016-11-28 20:20
SpecialRedirect.php
9.16
KB
-rw-r--r--
2016-11-28 20:20
SpecialRemoveCredentials.php
642
B
-rw-r--r--
2016-11-28 20:20
SpecialResetTokens.php
3.83
KB
-rw-r--r--
2016-11-28 20:20
SpecialRevisiondelete.php
20.86
KB
-rw-r--r--
2016-11-28 20:20
SpecialRunJobs.php
3.96
KB
-rw-r--r--
2016-11-28 20:20
SpecialSearch.php
38.45
KB
-rw-r--r--
2016-11-28 20:20
SpecialShortpages.php
3.44
KB
-rw-r--r--
2016-11-28 20:20
SpecialSpecialpages.php
3.6
KB
-rw-r--r--
2016-11-28 20:20
SpecialStatistics.php
9.18
KB
-rw-r--r--
2016-11-28 20:20
SpecialTags.php
15.24
KB
-rw-r--r--
2016-11-28 20:20
SpecialTrackingCategories.php
6.31
KB
-rw-r--r--
2016-11-28 20:20
SpecialUnblock.php
8.37
KB
-rw-r--r--
2016-11-28 20:20
SpecialUncategorizedcategories.php
1.47
KB
-rw-r--r--
2016-11-28 20:20
SpecialUncategorizedimages.php
1.75
KB
-rw-r--r--
2016-11-28 20:20
SpecialUncategorizedpages.php
2.3
KB
-rw-r--r--
2016-11-28 20:20
SpecialUncategorizedtemplates.php
1.19
KB
-rw-r--r--
2016-11-28 20:20
SpecialUndelete.php
51.13
KB
-rw-r--r--
2016-11-28 20:20
SpecialUnlinkAccounts.php
2.17
KB
-rw-r--r--
2016-11-28 20:20
SpecialUnlockdb.php
2.44
KB
-rw-r--r--
2016-11-28 20:20
SpecialUnusedcategories.php
1.97
KB
-rw-r--r--
2016-11-28 20:20
SpecialUnusedimages.php
2.23
KB
-rw-r--r--
2016-11-28 20:20
SpecialUnusedtemplates.php
2.42
KB
-rw-r--r--
2016-11-28 20:20
SpecialUnwatchedpages.php
2.85
KB
-rw-r--r--
2016-11-28 20:20
SpecialUpload.php
39.96
KB
-rw-r--r--
2016-11-28 20:20
SpecialUploadStash.php
14.56
KB
-rw-r--r--
2016-11-28 20:20
SpecialUserLogin.php
4.83
KB
-rw-r--r--
2016-11-28 20:20
SpecialUserLogout.php
2.45
KB
-rw-r--r--
2016-11-28 20:20
SpecialUserlogin.php
37.77
KB
-rw-r--r--
2012-03-21 11:43
SpecialUserlogout.php
1.85
KB
-rw-r--r--
2010-08-15 09:16
SpecialUserrights.php
23.31
KB
-rw-r--r--
2016-11-28 20:20
SpecialVersion.php
33.55
KB
-rw-r--r--
2016-11-28 20:20
SpecialWantedcategories.php
3.63
KB
-rw-r--r--
2016-11-28 20:20
SpecialWantedfiles.php
3.94
KB
-rw-r--r--
2016-11-28 20:20
SpecialWantedpages.php
2.36
KB
-rw-r--r--
2016-11-28 20:20
SpecialWantedtemplates.php
1.8
KB
-rw-r--r--
2016-11-28 20:20
SpecialWatchlist.php
18.42
KB
-rw-r--r--
2016-11-28 20:20
SpecialWhatlinkshere.php
15.79
KB
-rw-r--r--
2016-11-28 20:20
SpecialWithoutinterwiki.php
2.7
KB
-rw-r--r--
2016-11-28 20:20
Save
Rename
<?php /** * Implements Special:Redirect * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * http://www.gnu.org/copyleft/gpl.html * * @file * @ingroup SpecialPage */ /** * A special page that redirects to: the user for a numeric user id, * the file for a given filename, or the page for a given revision id. * * @ingroup SpecialPage * @since 1.22 */ class SpecialRedirect extends FormSpecialPage { /** * The type of the redirect (user/file/revision) * * @var string $mType * @example 'user' */ protected $mType; /** * The identifier/value for the redirect (which id, which file) * * @var string $mValue * @example '42' */ protected $mValue; function __construct() { parent::__construct( 'Redirect' ); $this->mType = null; $this->mValue = null; } /** * Set $mType and $mValue based on parsed value of $subpage. * @param string $subpage */ function setParameter( $subpage ) { // parse $subpage to pull out the parts $parts = explode( '/', $subpage, 2 ); $this->mType = count( $parts ) > 0 ? $parts[0] : null; $this->mValue = count( $parts ) > 1 ? $parts[1] : null; } /** * Handle Special:Redirect/user/xxxx (by redirecting to User:YYYY) * * @return string|null Url to redirect to, or null if $mValue is invalid. */ function dispatchUser() { if ( !ctype_digit( $this->mValue ) ) { return null; } $user = User::newFromId( (int)$this->mValue ); $username = $user->getName(); // load User as side-effect if ( $user->isAnon() ) { return null; } $userpage = Title::makeTitle( NS_USER, $username ); return $userpage->getFullURL( '', false, PROTO_CURRENT ); } /** * Handle Special:Redirect/file/xxxx * * @return string|null Url to redirect to, or null if $mValue is not found. */ function dispatchFile() { $title = Title::makeTitleSafe( NS_FILE, $this->mValue ); if ( !$title instanceof Title ) { return null; } $file = wfFindFile( $title ); if ( !$file || !$file->exists() ) { return null; } // Default behavior: Use the direct link to the file. $url = $file->getUrl(); $request = $this->getRequest(); $width = $request->getInt( 'width', -1 ); $height = $request->getInt( 'height', -1 ); // If a width is requested... if ( $width != -1 ) { $mto = $file->transform( [ 'width' => $width, 'height' => $height ] ); // ... and we can if ( $mto && !$mto->isError() ) { // ... change the URL to point to a thumbnail. $url = $mto->getUrl(); } } return $url; } /** * Handle Special:Redirect/revision/xxx * (by redirecting to index.php?oldid=xxx) * * @return string|null Url to redirect to, or null if $mValue is invalid. */ function dispatchRevision() { $oldid = $this->mValue; if ( !ctype_digit( $oldid ) ) { return null; } $oldid = (int)$oldid; if ( $oldid === 0 ) { return null; } return wfAppendQuery( wfScript( 'index' ), [ 'oldid' => $oldid ] ); } /** * Handle Special:Redirect/page/xxx (by redirecting to index.php?curid=xxx) * * @return string|null Url to redirect to, or null if $mValue is invalid. */ function dispatchPage() { $curid = $this->mValue; if ( !ctype_digit( $curid ) ) { return null; } $curid = (int)$curid; if ( $curid === 0 ) { return null; } return wfAppendQuery( wfScript( 'index' ), [ 'curid' => $curid ] ); } /** * Handle Special:Redirect/logid/xxx * (by redirecting to index.php?title=Special:Log) * * @since 1.27 * @return string|null Url to redirect to, or null if $mValue is invalid. */ function dispatchLog() { $logid = $this->mValue; if ( !ctype_digit( $logid ) ) { return null; } $logid = (int)$logid; if ( $logid === 0 ) { return null; } $logparams = [ 'log_id', 'log_timestamp', 'log_type', 'log_user_text', ]; $dbr = wfGetDB( DB_REPLICA ); // Gets the nested SQL statement which // returns timestamp of the log with the given log ID $inner = $dbr->selectSQLText( 'logging', [ 'log_timestamp' ], [ 'log_id' => $logid ] ); // Returns all fields mentioned in $logparams of the logs // with the same timestamp as the one returned by the statement above $logsSameTimestamps = $dbr->select( 'logging', $logparams, [ "log_timestamp = ($inner)" ] ); if ( $logsSameTimestamps->numRows() === 0 ) { return null; } // Stores the row with the same log ID as the one given $rowMain = []; foreach ( $logsSameTimestamps as $row ) { if ( (int)$row->log_id === $logid ) { $rowMain = $row; } } array_shift( $logparams ); // Stores all the rows with the same values in each column // as $rowMain foreach ( $logparams as $cond ) { $matchedRows = []; foreach ( $logsSameTimestamps as $row ) { if ( $row->$cond === $rowMain->$cond ) { $matchedRows[] = $row; } } if ( count( $matchedRows ) === 1 ) { break; } $logsSameTimestamps = $matchedRows; } $query = [ 'title' => 'Special:Log', 'limit' => count( $matchedRows ) ]; // A map of database field names from table 'logging' to the values of $logparams $keys = [ 'log_timestamp' => 'offset', 'log_type' => 'type', 'log_user_text' => 'user' ]; foreach ( $logparams as $logKey ) { $query[$keys[$logKey]] = $matchedRows[0]->$logKey; } $query['offset'] = $query['offset'] + 1; $url = $query; return wfAppendQuery( wfScript( 'index' ), $url ); } /** * Use appropriate dispatch* method to obtain a redirection URL, * and either: redirect, set a 404 error code and error message, * or do nothing (if $mValue wasn't set) allowing the form to be * displayed. * * @return bool True if a redirect was successfully handled. */ function dispatch() { // the various namespaces supported by Special:Redirect switch ( $this->mType ) { case 'user': $url = $this->dispatchUser(); break; case 'file': $url = $this->dispatchFile(); break; case 'revision': $url = $this->dispatchRevision(); break; case 'page': $url = $this->dispatchPage(); break; case 'logid': $url = $this->dispatchLog(); break; default: $url = null; break; } if ( $url ) { $this->getOutput()->redirect( $url ); return true; } if ( !is_null( $this->mValue ) ) { $this->getOutput()->setStatusCode( 404 ); // Message: redirect-not-exists $msg = $this->getMessagePrefix() . '-not-exists'; return Status::newFatal( $msg ); } return false; } protected function getFormFields() { $mp = $this->getMessagePrefix(); $ns = [ // subpage => message // Messages: redirect-user, redirect-page, redirect-revision, // redirect-file, redirect-logid 'user' => $mp . '-user', 'page' => $mp . '-page', 'revision' => $mp . '-revision', 'file' => $mp . '-file', 'logid' => $mp . '-logid', ]; $a = []; $a['type'] = [ 'type' => 'select', 'label-message' => $mp . '-lookup', // Message: redirect-lookup 'options' => [], 'default' => current( array_keys( $ns ) ), ]; foreach ( $ns as $n => $m ) { $m = $this->msg( $m )->text(); $a['type']['options'][$m] = $n; } $a['value'] = [ 'type' => 'text', 'label-message' => $mp . '-value' // Message: redirect-value ]; // set the defaults according to the parsed subpage path if ( !empty( $this->mType ) ) { $a['type']['default'] = $this->mType; } if ( !empty( $this->mValue ) ) { $a['value']['default'] = $this->mValue; } return $a; } public function onSubmit( array $data ) { if ( !empty( $data['type'] ) && !empty( $data['value'] ) ) { $this->setParameter( $data['type'] . '/' . $data['value'] ); } /* if this returns false, will show the form */ return $this->dispatch(); } public function onSuccess() { /* do nothing, we redirect in $this->dispatch if successful. */ } protected function alterForm( HTMLForm $form ) { /* display summary at top of page */ $this->outputHeader(); // tweak label on submit button // Message: redirect-submit $form->setSubmitTextMsg( $this->getMessagePrefix() . '-submit' ); /* submit form every time */ $form->setMethod( 'get' ); } protected function getDisplayFormat() { return 'ooui'; } /** * Return an array of subpages that this special page will accept. * * @return string[] subpages */ protected function getSubpagesForPrefixSearch() { return [ 'file', 'page', 'revision', 'user', 'logid', ]; } /** * @return bool */ public function requiresWrite() { return false; } /** * @return bool */ public function requiresUnblock() { return false; } protected function getGroupName() { return 'redirects'; } }