# includes/templates
'UserloginTemplate' => 'includes/templates/Userlogin.php',
- 'AgoraTemplate' => 'includes/templates/UserloginAgora.php',
- 'UserloginTemplateAgora' => 'includes/templates/UserloginAgora.php',
'UsercreateTemplate' => 'includes/templates/Usercreate.php',
- 'UsercreateTemplateAgora' => 'includes/templates/UsercreateAgora.php',
# includes/upload
'UploadBase' => 'includes/upload/UploadBase.php',
*/
$wgVectorUseIconWatch = false;
-/**
- * Use "Agora" design for Special:Userlogin.
- */
-$wgUseAgoraUserLogin = false;
-
-/**
- * Use "Agora" design for account creation (Special:Userlogin?type=signup).
- */
-$wgUseAgoraCreateAccount = false;
-
/**
* Display user edit counts in various prominent places.
*/
var $mSkipCookieCheck, $mReturnToQuery, $mToken, $mStickHTTPS;
var $mType, $mReason, $mRealName;
var $mAbortLoginErrorMsg = 'login-abort-generic';
- private $mLoaded = false, $mSecureLoginUrl;
- // TODO (spage 2013-02-13) Remove old forms by, say, release 1.22.
- private $mShowAgora;
+ private $mLoaded = false;
/**
* @var ExternalUser
$this->mReturnTo = '';
$this->mReturnToQuery = '';
}
-
- $this->mShowAgora = $this->shouldShowAgora();
}
function getDescription() {
- if ( !$this->getUser()->isAllowed( 'createaccount' ) ) {
- return $this->msg( 'userloginnocreate' )->text();
- }
- if ( $this->mShowAgora ) {
- return $this->msg( $this->mType === 'signup' ?
- 'createaccount' : 'login'
- )->text();
- } else {
- return $this->msg( 'userlogin' )->text();
- }
+ return $this->msg( $this->getUser()->isAllowed( 'createaccount' ) ?
+ 'userlogin' : 'userloginnocreate' )->text();
}
public function execute( $par ) {
$this->load();
$this->setHeaders();
- // If logging in and not on HTTPS, either redirect to it or offer a link.
global $wgSecureLogin;
if (
$this->mType !== 'signup' &&
+ $wgSecureLogin &&
WebRequest::detectProtocol() !== 'https'
) {
$title = $this->getFullTitle();
'wpStickHTTPS' => $this->mStickHTTPS
);
$url = $title->getFullURL( $query, false, PROTO_HTTPS );
- if ( $wgSecureLogin ) {
- $this->getOutput()->redirect( $url );
- return;
- } else {
- // A wiki without https login support should set wgServer to
- // http://somehost, in which case the secure URL generated
- // above actually won't be PROTO_HTTPS.
- if ( strncmp($url, PROTO_HTTPS, strlen( PROTO_HTTPS ) ) === 0 ) {
- $this->mSecureLoginUrl = $url;
- }
- }
+ $this->getOutput()->redirect( $url );
+ return;
}
if ( $par == 'signup' ) { # Check for [[Special:Userlogin/signup]]
}
}
- /**
- * Whether to show "Agora"-style forms.
- * ?useAgora=1 forces Agora style, ?useAgora=0 forces old-style,
- * otherwise consult $wgAgoraUserLogin or $wgAgoraCreateAccount.
- * @return Boolean
- */
- private function shouldShowAgora() {
- global $wgRequest, $wgAgoraUserLogin, $wgAgoraCreateAccount;
- $override = $wgRequest->getBool( 'useAgora' );
- if ( $override !== null ) {
- return $override;
- }
- if ( $this->mType == 'signup' ) {
- return (boolean) $wgAgoraCreateAccount;
- } else {
- return (boolean) $wgAgoraUserLogin;
- }
- }
-
- /**
- */
- private function isAgoraExtensionCSSAvailable() {
- global $wgResourceModules;
- return array_key_exists( 'ext.agora.base', $wgResourceModules );
- }
-
/**
* @private
*/
$titleObj = $this->getTitle();
$user = $this->getUser();
- $out = $this->getOutput();
if ( $this->mType == 'signup' ) {
// Block signup here if in readonly. Keeps user from
}
if ( $this->mType == 'signup' ) {
- $template = $this->mShowAgora
- ? new UsercreateTemplateAgora() : new UsercreateTemplate();
+ $template = new UsercreateTemplate();
$q = 'action=submitlogin&type=signup';
$linkq = 'type=login';
$linkmsg = 'gotaccount';
- $out->addModules( 'mediawiki.special.userlogin.signup' );
+ $this->getOutput()->addModules( 'mediawiki.special.userlogin.signup' );
} else {
- $template = $this->mShowAgora
- ? new UserloginTemplateAgora() : new UserloginTemplate();
+ $template = new UserloginTemplate();
$q = 'action=submitlogin&type=login';
$linkq = 'type=signup';
$linkmsg = 'nologin';
}
- if ( $this->mShowAgora ) {
- $out->addModules( array(
- // core Agora look, what gets loaded is dependent on skin.
- 'mediawiki.ui',
- $this->mType === 'signup' ?
- 'mediawiki.special.createaccount.agora' :
- 'mediawiki.special.userlogin.agora'
- ) );
- }
if ( $this->mReturnTo !== '' ) {
$returnto = '&returnto=' . wfUrlencode( $this->mReturnTo );
$linkq .= $returnto;
}
- # Don't show a "create account" link if the user can't.
+ # Don't show a "create account" link if the user can't
if( $this->showCreateOrLoginLink( $user ) ) {
# Pass any language selection on to the mode switch link
if( $wgLoginLanguageSelector && $this->mLanguage ) {
$linkq .= '&uselang=' . $this->mLanguage;
}
- if ( !$this->mShowAgora ) {
- $link = Html::element( 'a', array( 'href' => $titleObj->getLocalURL( $linkq ) ),
- $this->msg( $linkmsg . 'link' )->text() ); # Calling either 'gotaccountlink' or 'nologinlink'
-
- $template->set( 'link', $this->msg( $linkmsg )->rawParams( $link )->parse() );
+ $link = Html::element( 'a', array( 'href' => $titleObj->getLocalURL( $linkq ) ),
+ $this->msg( $linkmsg . 'link' )->text() ); # Calling either 'gotaccountlink' or 'nologinlink'
- } else {
- // Supply hyperlink, login template creates the button.
- // (The template 'link' key is obsolete in the Agora design.)
- $template->set( 'createOrLoginHref', $titleObj->getLocalURL( $linkq ) );
- }
+ $template->set( 'link', $this->msg( $linkmsg )->rawParams( $link )->parse() );
} else {
$template->set( 'link', '' );
}
}
}
- $template->set( 'secureLoginUrl', $this->mSecureLoginUrl );
// Use loginend-https for HTTPS requests if it's not blank, loginend otherwise
- // Ditto for signupend. Agora forms use neither.
+ // Ditto for signupend
$usingHTTPS = WebRequest::detectProtocol() == 'https';
$loginendHTTPS = $this->msg( 'loginend-https' );
$signupendHTTPS = $this->msg( 'signupend-https' );
wfRunHooks( 'UserLoginForm', array( &$template ) );
}
+ $out = $this->getOutput();
$out->disallowUserJs(); // just in case...
$out->addTemplate( $template );
}
+++ /dev/null
-<?php
-/**
- * Html form for account creation with new Agora appearance.
- *
- * 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 Templates
- */
-
-/**
- * @defgroup Templates Templates
- */
-
-if( !defined( 'MEDIAWIKI' ) ) die( -1 );
-
-/**
- * @ingroup Templates
- */
-class UsercreateTemplateAgora extends AgoraTemplate {
- function addInputItem( $name, $value, $type, $msg, $helptext = false ) {
- $this->data['extraInput'][] = array(
- 'name' => $name,
- 'value' => $value,
- 'type' => $type,
- 'msg' => $msg,
- 'helptext' => $helptext,
- );
- }
-
- function execute() {
-?>
-<div class="mw-ui-container">
-<div id="userloginForm">
-<h2 class="createaccount-join"><?php $this->msg('createacct-join') ?></h2>
-<form name="userlogin2" id="userlogin2" method="post" action="<?php $this->text('action') ?>">
- <?php $this->html('header'); /* pre-table point for form plugins... */ ?>
- <?php if( $this->haveData( 'languages' ) ) { ?><div id="languagelinks"><p><?php $this->html( 'languages' ); ?></p></div><?php } ?>
- <ul class="mw-ui-formlist">
- <?php
- if( $this->data['message'] ) {
-?>
- <li>
- <div class="<?php $this->text('messagetype') ?>box">
- <?php if ( $this->data['messagetype'] == 'error' ) { ?>
- <strong><?php $this->msg( 'loginerror' )?></strong><br />
- <?php } ?>
- <?php $this->html('message') ?>
- </div>
- <div class="visualClear"></div>
- </li>
- <?php } ?>
- <li>
- <label for='wpName2'>
- <?php $this->msg('userlogin-yourname') ?>
-
- <span class="mw-ui-flush-right"><?php echo wfMessage( 'createacct-helpusername-link' )->parse() ?></span>
- </label>
- <?php echo Html::input( 'wpName', $this->data['name'], 'text', array(
- 'class' => 'mw-input loginText',
- 'id' => 'wpName2',
- 'tabindex' => '1',
- 'size' => '20',
- 'required',
- 'placeholder' => wfMessage( 'userlogin-yourname-ph' )->text(),
- 'autofocus'
- ) ); ?>
- </li>
- <li>
- <?php if( $this->data['createemail'] ) {
- echo UserloginTemplateAgora::labelledCheck(
- wfMessage( 'createaccountmail' )->text(),
- 'wpCreateaccountMail',
- 'wpCreateaccountMail',
- $this->data['createemailset'],
- array( 'tabindex' => '2' )
- );
- } ?>
- </li>
- <li class="mw-row-password">
- <label for='wpPassword2'><?php $this->msg('userlogin-yourpassword') ?></label>
- <?php echo Html::input( 'wpPassword', null, 'password', array(
- 'class' => 'mw-input loginPassword',
- 'id' => 'wpPassword2',
- 'tabindex' => '3',
- 'size' => '20',
- 'required',
- 'placeholder' => wfMessage( 'createacct-yourpassword-ph' )->text()
- ) + User::passwordChangeInputAttribs() ); ?>
- </li>
- <?php if( $this->data['usedomain'] ) {
- $doms = "";
- foreach( $this->data['domainnames'] as $dom ) {
- $doms .= "<option>" . htmlspecialchars( $dom ) . "</option>";
- }
- ?>
- <li>
- <!-- TODO (spage 2013-02-13) what replaces td class="mw-label" ? -->
- <label><?php $this->msg( 'yourdomainname' ) ?></label>
- <div class="mw-input">
- <select name="wpDomain" value="<?php $this->text( 'domain' ) ?>"
- tabindex="4">
- <?php echo $doms ?>
- </select>
- </div>
- </li>
- <?php } ?>
- <li class="mw-row-password">
- <label for='wpRetype'><?php $this->msg('createacct-yourpasswordagain') ?></label>
- <?php
- echo Html::input( 'wpRetype', null, 'password', array(
- 'class' => 'mw-input loginPassword',
- 'id' => 'wpRetype',
- 'tabindex' => '5',
- 'size' => '20',
- 'required',
- 'placeholder' => wfMessage( 'createacct-yourpasswordagain-ph' )->text()
- ) + User::passwordChangeInputAttribs() );
- ?>
- </li>
- <li>
- <?php if( $this->data['useemail'] ) { ?>
- <label for='wpEmail'><?php $this->msg('createacct-emailoptional') // FIXME required/optional message
- // FIXME $this->data['emailrequired'] ? createacct-emailrequired / optional.
- ?></label>
- <?php
- echo Html::input( 'wpEmail', $this->data['email'], 'email', array(
- 'class' => 'mw-input loginText',
- 'id' => 'wpEmail',
- 'tabindex' => '6',
- 'size' => '20',
- 'placeholder' => wfMessage( 'createacct-email-ph' )->text()
- # Can't do + array( 'autofocus' ) because + for arrays in PHP
- # only works right for associative arrays! Thanks, PHP.
- ) + ( $this->data['emailrequired'] ? array() : array( 'required' => '' ) ) );
- ?>
- <?php
- // Agora eliminate the prefsectiontip div tip:
- // prefs-help-email-required is redundant with the placeholder text
- // Doesn't show the wordy prefs-help-email
- // Doesn't show the wordy prefs-help-email-others
- ?>
- <?php } ?>
- </li>
- <?php if( $this->data['userealname'] ) { ?>
- <li>
- <label for='wpRealName'><?php $this->msg('yourrealname') ?></label>
- <input type='text' class='mw-input loginText' name="wpRealName" id="wpRealName"
- tabindex="7"
- value="<?php $this->text('realname') ?>" size='20' />
- <div class="prefsectiontip">
- <?php $this->msgWiki('prefs-help-realname'); ?>
- </div>
- </li>
- <?php } ?>
- <?php if( $this->data['usereason'] ) { ?>
- <li>
- <label for='wpReason'><?php $this->msg('createacct-reason') ?></label>
- <input type='text' class='mw-input loginText' name="wpReason" id="wpReason"
- tabindex="8"
- value="<?php $this->text('reason') ?>" size='20' />
- </li>
- <?php } ?>
- <?php if( $this->data['canremember'] ) { ?>
- <li>
- <?php
- global $wgCookieExpiration;
- $expirationDays = ceil( $wgCookieExpiration / ( 3600 * 24 ) );
- echo UserloginTemplateAgora::labelledCheck(
- wfMessage( 'remembermypassword' )->numParams( $expirationDays )->text(),
- 'wpRemember',
- 'wpRemember',
- $this->data['remember'],
- array( 'tabindex' => '9' )
- )
- ?>
- </li>
- <?php }
-
- $tabIndex = 10;
- if ( isset( $this->data['extraInput'] ) && is_array( $this->data['extraInput'] ) ) {
- foreach ( $this->data['extraInput'] as $inputItem ) { ?>
- <li>
- <?php
- // Output the message label, unless it's a checkbox.
- if ( !empty( $inputItem['msg'] ) && $inputItem['type'] != 'checkbox' ) {
- ?><label for="<?php
- echo htmlspecialchars( $inputItem['name'] ); ?>"><?php
- $this->msgWiki( $inputItem['msg'] ) ?></label><?php
- } else {
- ## Lost in table rows here...
- ?><!-- do I need to output a label to v-align these optional checkboxes? --><?php
- }
- ?>
- <input type="<?php echo htmlspecialchars( $inputItem['type'] ) ?>" class="mw-input" name="<?php
- echo htmlspecialchars( $inputItem['name'] ); ?>"
- tabindex="<?php echo $tabIndex++; ?>"
- value="<?php
- if ( $inputItem['type'] != 'checkbox' ) {
- echo htmlspecialchars( $inputItem['value'] );
- } else {
- echo '1';
- }
- ?>" id="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"
- <?php
- if ( $inputItem['type'] == 'checkbox' && !empty( $inputItem['value'] ) )
- echo 'checked="checked"';
- ?> /> <?php
- if ( $inputItem['type'] == 'checkbox' && !empty( $inputItem['msg'] ) ) {
- ?>
- <label for="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"><?php
- $this->msgHtml( $inputItem['msg'] ) ?></label><?php
- }
- if( $inputItem['helptext'] !== false ) {
- ?>
- <div class="prefsectiontip">
- <?php $this->msgWiki( $inputItem['helptext'] ); ?>
- </div>
- <?php } ?>
- </li>
-<?php
- }
- }
-?>
- <li>
- <div class="mw-submit">
- <input type='submit' class="mw-ui-button big block primary" name="wpCreateaccount" id="wpCreateaccount"
- tabindex="<?php echo $tabIndex++; ?>"
- value="<?php $this->msg('createaccount') ?>" />
- </div>
- </li>
- </ul>
- <input type="hidden" id="useAgora" name="useAgora" value="1" />
-<?php if( $this->haveData( 'uselang' ) ) { ?><input type="hidden" name="uselang" value="<?php $this->text( 'uselang' ); ?>" /><?php } ?>
-<?php if( $this->haveData( 'token' ) ) { ?><input type="hidden" name="wpCreateaccountToken" value="<?php $this->text( 'token' ); ?>" /><?php } ?>
-</form>
-</div>
-<div class="createacct-benefits-container hidden-phone visible-desktop visible-tablet">
- <h2><?php echo wfMessage( 'createacct-benefit-heading' )->text() ?></h2>
- <ul class="createacct-benefits-list">
- <li>
- <div class="benefits-icon <?php echo wfMessage( 'createacct-benefit-icon1' )->text() ?>"></div>
- <div class="number-text">
- <h3><?php echo wfMessage( 'createacct-benefit-head1' )->text() ?></h3>
- <p><?php echo wfMessage( 'createacct-benefit-body1' )->text() ?></p>
- </div>
- </li>
- <li>
- <div class="benefits-icon <?php echo wfMessage( 'createacct-benefit-icon2' )->text() ?>"></div>
- <div class="number-text">
- <h3><?php echo wfMessage( 'createacct-benefit-head2' )->text() ?></h3>
- <p><?php echo wfMessage( 'createacct-benefit-body2' )->text() ?></p>
- </div>
- </li>
- <li>
- <div class="benefits-icon <?php echo wfMessage( 'createacct-benefit-icon3' )->text() ?>"></div>
- <div class="number-text">
- <h3><?php echo wfMessage( 'createacct-benefit-head3' )->text() ?></h3>
- <p><?php echo wfMessage( 'createacct-benefit-body3' )->text() ?></p>
- </div>
- </li>
- </ul>
-</div>
-</div>
-<?php
-
- }
-}
+++ /dev/null
-<?php
-/**
- * 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 Templates
- */
-
-/**
- * @defgroup Templates Templates
- */
-
-/**
- * New base template for Agora-look templates that provides helper methods for
- * some Agora-specific layouts.
- */
-abstract class AgoraTemplate extends QuickTemplate {
-
- /**
- * Convenience function to build an Agora HTML checkbox nested inside a
- * label. This arguably belongs in class Html, but then Agora clients
- * would have to apply an Agora class to the label as well as attrs for the
- * checkbox.
- *
- * @param $label string text for label
- * @param $name string form element name
- * @param $id
- * @param $checked bool (default: false)
- * @param $attribs array additional attributes for the input checkbox
- *
- * @return string HTML
- * @see Xml:checkLabel
- */
- public static function labelledCheck( $label, $name, $id, $checked = false, $attribs = array() ) {
- return Html::rawElement(
- 'label',
- array(
- 'for' => $id,
- 'class' => 'mw-ui-checkbox-label'
- ),
- Xml::check(
- $id,
- $checked,
- array( 'id' => $id ) + $attribs
- ) .
- $label
- );
- }
-
-}
-
-/**
- * Html form for user login with new Agora appearance.
- */
-
-class UserloginTemplateAgora extends AgoraTemplate {
-
- function execute() {
-?>
-<div class="mw-ui-container">
-<div id="userloginForm">
-<form name="userlogin" method="post" action="<?php $this->text('action') ?>">
- <?php $this->html('header'); /* pre-table point for form plugins... */ ?>
- <?php if( $this->haveData( 'languages' ) ) { ?><div id="languagelinks"><p><?php $this->html('languages' ); ?></p></div><?php } ?>
- <ul class="mw-ui-formlist">
- <?php
- // TODO is inside the form the right place for this?
- if( $this->data['message'] ) {
-?>
- <div class="<?php $this->text('messagetype') ?>box">
- <?php if ( $this->data['messagetype'] == 'error' ) { ?>
- <strong><?php $this->msg( 'loginerror' )?></strong><br />
- <?php } ?>
- <?php $this->html('message') ?>
- </div>
- <div class="visualClear"></div>
-<?php } ?>
-
- <li>
- <label for='wpName1'>
- <?php
- $this->msg('userlogin-yourname');
- if ( $this->data['secureLoginUrl'] ) {
- echo Html::element( 'a', array(
- 'href' => $this->data['secureLoginUrl'],
- 'class' => 'mw-ui-flush-right mw-secure',
- ), wfMessage( 'userlogin-signwithsecure' )->text() );
- } ?>
- </label>
- <?php
- echo Html::input( 'wpName', $this->data['name'], 'text', array(
- 'class' => 'loginText',
- 'id' => 'wpName1',
- 'tabindex' => '1',
- 'size' => '20',
- 'required',
- 'placeholder' => wfMessage( 'userlogin-yourname-ph' )->text()
- # Can't do + array( 'autofocus' ) because + for arrays in PHP
- # only works right for associative arrays! Thanks, PHP.
- ) + ( $this->data['name'] ? array() : array( 'autofocus' => '' ) ) );
- ?>
- </li>
- <li>
- <label for='wpPassword1'>
- <?php
- $this->msg('userlogin-yourpassword');
-
- if ( $this->data['useemail'] && $this->data['canreset'] ) {
- if( $this->data['resetlink'] === true ){
- echo Linker::link(
- SpecialPage::getTitleFor( 'PasswordReset' ),
- wfMessage( 'userlogin-resetlink' )->parse(),
- array( 'class' => 'mw-ui-flush-right' )
- );
- } elseif( $this->data['resetlink'] === null ) {
- /* TODO (spage 2013-02-26) no idea what class to use for this,
- * it doesn't belong in the label.
- */
- echo Html::input(
- 'wpMailmypassword',
- wfMessage( 'mailmypassword' )->text(),
- 'submit', array(
- 'id' => 'wpMailmypassword',
- 'tabindex' => '10'
- )
- );
- }
- } ?>
- </label>
- <?php
- echo Html::input( 'wpPassword', null, 'password', array(
- 'class' => 'loginPassword',
- 'id' => 'wpPassword1',
- 'tabindex' => '2',
- 'size' => '20',
- 'placeholder' => wfMessage( 'userlogin-yourpassword-ph' )->text()
- ) + ( $this->data['name'] ? array( 'autofocus' ) : array() ) ); ?>
- </li>
- <?php if( isset( $this->data['usedomain'] ) && $this->data['usedomain'] ) {
- $doms = "";
- foreach( $this->data['domainnames'] as $dom ) {
- $doms .= "<option>" . htmlspecialchars( $dom ) . "</option>";
- }
- ?>
- <li id="mw-user-domain-section">
- <label for='wpDomain' class="pos-above"><?php $this->msg( 'yourdomain' ) ?></label>
- <select name="wpDomain" value="<?php $this->text( 'domain' ) ?>"
- tabindex="3">
- <?php echo $doms ?>
- </select>
- </li>
- <?php }
-
- if( $this->haveData( 'extrafields' ) ) {
- echo $this->data['extrafields'];
- } ?>
-
- <li>
- <?php if( $this->data['canremember'] ) {
- global $wgCookieExpiration;
- $expirationDays = ceil( $wgCookieExpiration / ( 3600 * 24 ) );
- echo $this->labelledCheck(
- wfMessage( 'userlogin-remembermypassword' )->numParams( $expirationDays )->text(),
- 'wpRemember',
- 'wpRemember',
- $this->data['remember']
- );
- } ?>
- </li>
-<?php if( $this->data['cansecurelogin'] ) { ?>
- <li>
- <?php
- echo Xml::checkLabel(
- wfMessage( 'securelogin-stick-https' )->text(),
- 'wpStickHTTPS',
- 'wpStickHTTPS',
- $this->data['stickHTTPS'],
- array( 'tabindex' => '9' )
- );
- ?>
- </li>
-<?php } ?>
- <li>
- <?php
- echo Html::input( 'wpLoginAttempt', wfMessage( 'login' )->text(), 'submit', array(
- 'id' => 'wpLoginAttempt',
- 'tabindex' => '9',
- 'class' => 'mw-ui-button big block primary'
- ) );
- ?>
- </li>
- <li style="text-align: center;">
- <?php echo wfMessage( 'userlogin-helplink' )->parse() ?>
- </li>
- <li>
- <?php if( $this->haveData( 'createOrLoginHref' ) ) { ?>
- <div id="createaccount-cta">
- <h3 id="userloginlink"><?php $this->msg( 'userlogin-noaccount' ) ?><a href="<?php $this->text( 'createOrLoginHref' ) ?>" id="mw-joinproject" class="mw-ui-button constructive" style="width: auto; display: inline-block;"><?php $this->msg( 'userlogin-joinproject' ) ?></a></h3>
- </div>
- <?php } ?>
- </li>
- </ul>
- <input type="hidden" id="useAgora" name="useAgora" value="1" />
-<?php if( $this->haveData( 'uselang' ) ) { ?><input type="hidden" name="uselang" value="<?php $this->text( 'uselang' ); ?>" /><?php } ?>
-<?php if( $this->haveData( 'token' ) ) { ?><input type="hidden" name="wpLoginToken" value="<?php $this->text( 'token' ); ?>" /><?php } ?>
-</form>
-</div>
-</div>
-<?php
-
-} // end execute()
-}
'welcomecreation-msg' => 'Your account has been created.
Do not forget to change your [[Special:Preferences|{{SITENAME}} preferences]].',
'yourname' => 'Username:',
-'userlogin-yourname' => 'Username',
-'userlogin-yourname-ph' => 'Enter your username',
-'createacct-helpusername-url' => '{{ns:Project}}:Username_policy',
-'createacct-helpusername-link' => '[[{{MediaWiki:createacct-helpusername-url}}|(help me choose)]]',
'yourpassword' => 'Password:',
-'userlogin-yourpassword' => 'Password',
-'userlogin-yourpassword-ph' => 'Enter your password',
-'createacct-yourpassword-ph' => 'Enter a password',
'yourpasswordagain' => 'Retype password:',
-'createacct-yourpasswordagain' => 'Confirm password',
-'createacct-yourpasswordagain-ph' => 'Enter password again',
'remembermypassword' => 'Remember my login on this browser (for a maximum of $1 {{PLURAL:$1|day|days}})',
-'userlogin-remembermypassword' => 'Remember me',
-'userlogin-signwithsecure' => 'Sign in with secure server',
'securelogin-stick-https' => 'Stay connected to HTTPS after login',
'yourdomainname' => 'Your domain:',
'password-change-forbidden' => 'You cannot change passwords on this wiki.',
'userlogout' => 'Log out',
'userlogout-summary' => '', # do not translate or duplicate this message to other languages
'notloggedin' => 'Not logged in',
-'userlogin-noaccount' => "Don't have an account?",
-'userlogin-joinproject' => 'Join {{SITENAME}}',
'nologin' => "Don't have an account? $1.",
'nologinlink' => 'Create an account',
'createaccount' => 'Create account',
'gotaccount' => 'Already have an account? $1.',
'gotaccountlink' => 'Log in',
'userlogin-resetlink' => 'Forgotten your login details?',
-'helplogin-url' => 'Help:Logging in',
-'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Help with logging in]]',
-'createacct-join' => 'Enter your information below.',
-'createacct-emailrequired' => 'Email address',
-'createacct-emailoptional' => 'Email address (optional)',
-'createacct-email-ph' => 'Enter your email address',
'createaccountmail' => 'Use a temporary random password and send it to the email address specified below',
'createaccountreason' => 'Reason:',
-'createacct-reason' => 'Reason',
-'createacct-benefit-heading' => '{{SITENAME}} is made by people like you.',
-'createacct-benefit-icon1' => 'icon-edits',
-'createacct-benefit-head1' => '{{NUMBEROFEDITS}}',
-'createacct-benefit-body1' => 'edits',
-'createacct-benefit-icon2' => 'icon-pages',
-'createacct-benefit-head2' => '{{NUMBEROFARTICLES}}',
-'createacct-benefit-body2' => 'pages',
-'createacct-benefit-icon3' => 'icon-contributors',
-'createacct-benefit-head3' => '{{NUMBEROFUSERS}}',
-'createacct-benefit-body3' => 'contributors this month',
'badretype' => 'The passwords you entered do not match.',
'userexists' => 'Username entered already in use.
Please choose a different name.',
'yourname' => "{{doc-important|<nowiki>{{</nowiki>[[Gender|GENDER]]<nowiki>}}</nowiki> is '''NOT''' supported.}}
In user preferences.
{{Identical|Username}}",
-'userlogin-yourname' => "In Agora user login & create account forms, label for username field",
-'userlogin-yourname-ph' => "Placeholder text in Agora userlogin/create account form field.",
'yourpassword' => 'In user preferences
{{Identical|Password}}',
-'createacct-helpusername-url' => 'The URL of a page providing username guidance for the wiki.',
-'createacct-helpusername-link' => 'Message in Agora create account form providing guidance for username.',
-'userlogin-yourpassword' => "In Agora user login & create account forms, label for password field",
-'userlogin-yourpassword-ph' => "Placeholder text in Agora userlogin form for password field.",
-'createacct-yourpassword-ph' => "Placeholder text in Agora create account form for password field.",
'yourpasswordagain' => 'In user preferences',
-'createacct-yourpasswordagain' => 'In Agora create account form, label for field to re-enter password',
-'createacct-yourpasswordagain-ph' => 'Placeholder text in Agora create account form for re-enter password field.',
'remembermypassword' => 'A check box in [[Special:UserLogin]]
{{Identical|Remember my login on this computer}}',
-'userlogin-remembermypassword' => 'The text for a check box in the Agora-style [[Special:UserLogin]]',
-'userlogin-signwithsecure' => 'Text of link to HTTPS login form',
'securelogin-stick-https' => 'Used as label for checkbox.',
'yourdomainname' => 'Used as label for listbox.',
'password-change-forbidden' => 'Error message shown when an external authentication source does not allow the password to be changed.',
'externaldberror' => 'This message is thrown when a valid attempt to change the wiki password for a user fails because of a database error or an error from an external system.',
-'login' => "Shown as the caption of the button at [[Special:UserLogin]], and also to anonymous users in the upper right corner of the page when they can't create an account (otherwise the message {{msg-mw|nav-login-createaccount}} is shown there). Also the title of the Agora login special page, which does not combine Log in & Create account.
+'login' => "Shown as the caption of the button at [[Special:UserLogin]], and also to anonymous users in the upper right corner of the page when they can't create an account (otherwise the message {{msg-mw|nav-login-createaccount}} is shown there).
See also:
* {{msg-mw|Login}}
'notloggedin' => 'This message is displayed in the standard skin when not logged in. The message is placed above the login link in the top right corner of pages.
{{Identical|Not logged in}}',
-'userlogin-noaccount' => 'In the Agora-style [[Special:Userlogin]] form, this is the text prior to button inviting user to join project',
-'userlogin-joinproject' => 'Text of button inviting user to create an account',
'nologin' => 'A message shown in the log in form. Parameters:
* $1 - a link to the account creation form, and the text of it is {{msg-mw|Nologinlink}}',
'nologinlink' => 'Text of the link to the account creation form. Before that link, the message {{msg-mw|Nologin}} appears.
'gotaccountlink' => 'Text of the link to the log in form. Before that link, the message {{msg-mw|Gotaccount}} appears.
{{Identical|Log in}}',
'userlogin-resetlink' => 'Used on the login page.',
-'helplogin-url' => 'Description: The URL the provides information on logging in to the wiki.',
-'userlogin-helplink' => 'Wiki text linking to login help',
-'createacct-join' => 'Subheading of create account form encouraging user to join the wiki.',
-'createacct-emailrequired' => 'Label in Agora create account form for email field when it is required.',
-'createacct-emailoptional' => 'Label in Agora create account form for email field when it is optional.',
-'createacct-email-ph' => 'Placeholder in Agora create account form for email field.',
'createaccountmail' => 'Button text for creating a new account and sending the new password to the specified e-mail address directly, as used on [[Special:UserLogin/signup]] if creating accounts by e-mail is allowed.',
'createaccountreason' => '{{Identical|Reason}}',
-'createacct-reason' => 'In Agora create account form, label for field to enter reason to create an account when already logged-in.',
-'createacct-benefit-heading' => 'In Agora create account form, the heading for the section describing the benefits of creating an account.',
-'createacct-benefit-icon1' => 'In Agora create account form, the CSS style for the div next to the first benefit. If you replace this you will need probably need to adjust CSS.',
-'createacct-benefit-head1' => 'In Agora create account form, the text in the heading for the first benefit. Do not edit the magic word; if you replace it you will probably need to adjust CSS.',
-'createacct-benefit-body1' => 'In Agora create account form, the text for the first benefit.',
-'createacct-benefit-icon2' => 'In Agora create account form, the CSS style for the div next to the second benefit. If you replace this you will need probably need to adjust CSS.',
-'createacct-benefit-head2' => 'In Agora create account form, the text in the heading for the second benefit. Do not edit the magic word; if you replace it you will probably need to adjust CSS.',
-'createacct-benefit-body2' => 'In Agora create account form, the text for the second benefit.',
-'createacct-benefit-icon3' => 'In Agora create account form, the CSS style for the div next to the third benefit. If you replace this you will need probably need to adjust CSS.',
-'createacct-benefit-head3' => 'In Agora create account form, the text in the heading for the third benefit. Do not edit the magic word; if you replace it you will probably need to adjust CSS.',
-'createacct-benefit-body3' => 'In Agora create account form, the text for the third benefit.',
'badretype' => 'Used as error message when the new password and its retype do not match.',
'userexists' => 'Used as error message in creating a user account.',
'loginerror' => 'Used as title of error message.
'prefs-emailconfirm-label' => 'Sub-heading in [[Special:Preferences]] > {{int:prefs-personal}} > {{int:email}}.',
'prefs-textboxsize' => "Header for the box specifying the size of the editing window, displayed on the 'editing' tab of the [[Special:Preferences|user preferences]] special page.",
'youremail' => 'Label of the e-mail text box of the "E-mail options" section of [[Special:Preferences]].
-Also used on create account form.
-
{{Identical|E-mail}}',
'username' => 'Username field in [[Special:Preferences]]. $1 is the current user name for GENDER distinction (depends on sex setting).
'welcomeuser',
'welcomecreation-msg',
'yourname',
- 'userlogin-yourname',
- 'userlogin-yourname-ph',
- 'createacct-helpusername-url',
- 'createacct-helpusername-link',
'yourpassword',
- 'userlogin-yourpassword',
- 'userlogin-yourpassword-ph',
- 'createacct-yourpassword-ph',
'yourpasswordagain',
- 'createacct-yourpasswordagain',
- 'createacct-yourpasswordagain-ph',
'remembermypassword',
- 'userlogin-remembermypassword',
- 'userlogin-signwithsecure',
'securelogin-stick-https',
'yourdomainname',
'password-change-forbidden',
'userlogout',
'userlogout-summary',
'notloggedin',
- 'userlogin-noaccount',
- 'userlogin-joinproject',
'nologin',
'nologinlink',
'createaccount',
'gotaccount',
'gotaccountlink',
'userlogin-resetlink',
- 'helplogin-url',
- 'userlogin-helplink',
- 'createacct-join',
- 'createacct-emailrequired',
- 'createacct-emailoptional',
- 'createacct-email-ph',
'createaccountmail',
'createaccountreason',
- 'createacct-reason',
- 'createacct-benefit-heading',
- 'createacct-benefit-icon1',
- 'createacct-benefit-head1',
- 'createacct-benefit-body1',
- 'createacct-benefit-icon2',
- 'createacct-benefit-head2',
- 'createacct-benefit-body2',
- 'createacct-benefit-icon3',
- 'createacct-benefit-head3',
- 'createacct-benefit-body3',
'badretype',
'userexists',
'loginerror',
'mediawiki.special.userlogin.signup' => array(
'scripts' => 'resources/mediawiki.special/mediawiki.special.userLogin.signup.js',
),
- 'mediawiki.special.userlogin.agora' => array(
- 'styles' => array(
- 'resources/mediawiki.special/mediawiki.special.forms.agora.css',
- 'resources/mediawiki.special/mediawiki.special.userlogin.agora.css',
- ),
- 'position' => 'top',
- ),
- 'mediawiki.special.createaccount.agora' => array(
- 'scripts' => 'resources/mediawiki.special/mediawiki.special.createaccount.agora.js',
- 'styles' => array(
- 'resources/mediawiki.special/mediawiki.special.forms.agora.css',
- 'resources/mediawiki.special/mediawiki.special.createaccount.agora.css',
- ),
- 'position' => 'top',
- ),
'mediawiki.special.javaScriptTest' => array(
'scripts' => 'resources/mediawiki.special/mediawiki.special.javaScriptTest.js',
'messages' => array_merge( Skin::getSkinNameMessages(), array(
'remoteBasePath' => $GLOBALS['wgStylePath'],
'localBasePath' => $GLOBALS['wgStyleDirectory'],
),
- 'mediawiki.ui' => array(
- 'skinStyles' => array(
- 'default' => 'resources/mediawiki.ui/mediawiki.ui.default.css',
- 'vector' => 'resources/mediawiki.ui/mediawiki.ui.vector.css',
- ),
- 'position' => 'top',
- ),
);
+++ /dev/null
-/* Benefits column CSS */
-div.createacct-benefits-container {
- margin-left: 100px;
- float: left }
-
-div.createacct-benefits-container h2 {
- margin-bottom: 30px;
-}
-
-ul.createacct-benefits-list {
- list-style: none;
- margin-left: 0;
-}
-
-ul.createacct-benefits-list li {
- display: block;
- padding: 0;
- margin-bottom: 40px; }
-
-div.benefits-icon {
- display: inline-block;
- padding: 0;
- float: left;
- width: 80px;
- height: 75px;
- margin-right: 15px;
- border: 0; }
-
-.benefits-icon.icon-edits {
- /* @embed */
- background: url(images/icon-edits.png) no-repeat right;
-}
-
-.benefits-icon.icon-pages {
- /* @embed */
- background: url(images/icon-pages.png) no-repeat right;
-}
-
-.benefits-icon.icon-contributors {
- /* @embed */
- background: url(images/icon-contributors.png) no-repeat right;
-}
-
-/* General alignment of benefits */
-.benefits-text {
- display: inline-block;
- min-width: 200px;
- height: 75px;
- vertical-align: middle;
- max-width: 450px;
- padding: 0;
-}
-
-/* Special font for numbers in benefits*/
-div.number-text h3 {
- top: 0;
- margin: 0;
- padding: 0;
- color: #252525;
- font-family: 'Georgia', serif;
- font-weight: normal;
- font-size: 2.2em;
- line-height: 1.2;
- text-align: center;
-}
-
-div.number-text {
- display: block;
- font-size: 1.2em;
- font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
- color: #444;
- margin-top: 1em;
- text-align: center;
-}
+++ /dev/null
-/* JavaScript for Special:Userlogin */
-
-jQuery( function( $ ) {
- var $content = $( '#mw-content-text' ),
- $captchaStuff;
-
- /**
- * CAPTCHA
- * The CAPTCHA is in a div style="captcha" along with a ton of
- * irrelevant text from MediaWiki:fancycaptcha-create-account
- * Strategy: remove it, then repopulate just what we need.
- * Adds an empty Security check if there's no CAPTCHA.
- */
- $captchaStuff = $content.find ( '.captcha' ).remove();
- if ( $captchaStuff.length ) {
- // insert another li before the submit button.
- $content.find( '#wpCreateaccount' ).closest( 'li' )
- .before( [
- '<li>',
- '<label class="acux-label" for="wpCaptchaWord">Security check</label>',
- '<div class="acux-captcha-container">',
- '<img id="acux-captcha" alt="PLACEHOLDER">',
- // arguably mw.util.wikiGetLink() here...
- '<small>Can\'t see the image? <a href="/wiki/Wikipedia:Request_an_account" title="Wikipedia:Request an account" tabindex="-1">We can create an account for you!</a></small>',
- // Same tabindex as Remember me checkbox , but we removed that.
- '<input id="wpCaptchaWord" name="wpCaptchaWord" type="text" placeholder="Enter the text you see above" name="captcha-text" tabindex="8" autocapitalize="off" autocorrect="off">',
- '</div>',
- '</li>'
- ].join('') );
-
- // There are only a few only things we want from the old CAPTCHA.
- // Get the img (we hope only one!) out of the old CAPTCHA,
- // and replace the placeholder img with it, and style it.
- $captchaStuff.find( 'img' )
- .replaceAll( $content.find( '#acux-captcha' ) )
- .addClass( 'acux-captcha');
-
- // Find the input field, add the text (if any) of the existing CAPTCHA
- // field (although usually it's blanked out on every redisplay),
- // and after it move over the hidden field that tells the CAPTCHA
- // what to do.
- $content.find( '#wpCaptchaWord' )
- .val( $captchaStuff.find( '#wpCaptchaWord' ).val() )
- .after( $captchaStuff.find( '#wpCaptchaId' ) );
- }
-
-});
+++ /dev/null
-/***************** some of this stuff should move to Agora core CSS *****************/
-/* Style elements in a mw-ui-container.
-DISABLED
-div.mw-ui-container {
- font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
- font-size: 1.0em;
- border: 0;
-}
-*/
-
-.mw-ui-container h2 {
- border: 0;
- font-weight: bold;
-}
-
-/*
- * When inside the Agora style, disable the border that Vector puts on the div
- * surrounding a form.
- */
-.mw-ui-container #userloginForm, .mw-ui-container #userlogin {
- border: 0;
- margin: 0;
- padding: 0;
-}
-
-/* Note MediaWiki HTML::input drops default type="text" if $wgHtml5 */
-
-/* Similar to .acux-errorbox */
-/*
- * In theory besides errorbox there could be warningbox, successbox, msgbox,
- * spage has never seen these in practice.
- * Vector has styles coloring warningbox cream and successbox green.
- */
-.mw-ui-formlist .errorbox, .mw-ui-formlist .warningbox, .mw-ui-formlist .successbox {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- width: 100%;
- /* munaf, need some font-size to disable vector's font-size: larger for errorbox
- * munaf, this leaves error text bigger than label text which has
- * .mw-ui-formlist li label shrinking an addition 0.9em on top of Vector's
- * #bodyContent 0.8em
- */
- font-size: 0.9em;
- margin: 0 0 1em 0;
- padding: 0.5em;
- color: #cc0000;
- border: 1px solid #fac5c5;
- background-color: #fae3e3;
- text-shadow: 0 1px #fae3e3;
-}
+++ /dev/null
-/***************** stuff just for userlogin Agora *****************/
-.mw-ui-formlist .mw-secure {
- /* @embed */
- background: url(images/icon-lock.png) no-repeat scroll left center transparent;
- margin: 0 0 0 1px;
- padding: 0 0 0 11px;
-}
-
-#createaccount-cta {
- width: 20em;
- height: 10em;
- text-align: center;
- /* @embed */
- background: url(images/glyph-people-large.png) no-repeat 50%;
- font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
-}
-
-#createaccount-cta h3 {
- width: 100%;
- font-size: 0.9em;
- font-weight: normal;
- text-align: center;
- padding-top: 4em;
-}
-
-#mw-joinproject {
- display: inline-block;
- font-size: 1em;
- margin-left: 0.75em;
-
- -webkit-box-shadow: 4px 4px 4px 4px rgba(255, 255, 255, 1);
- -moz-box-shadow: 4px 4px 4px 4px rgba(255, 255, 255, 1);
- box-shadow: 4px 4px 4px 4px rgba(255, 255, 255, 1);
-}
+++ /dev/null
-/* Agora styles, default with vector stuff removed. */
-/* _effects.scss */
-/* Mixins for visual effects in CSS3 */
-/* line 7, ../scss/components/_utilities.scss */
-.mw-ui-flush-left {
- float: left;
- margin-left: 0;
- padding-left: 0;
-}
-
-/* line 11, ../scss/components/_utilities.scss */
-.mw-ui-flush-right {
- float: right;
- margin-right: 0;
- padding-right: 0;
-}
-
-/* line 15, ../scss/components/_utilities.scss */
-.mw-ui-center-block {
- display: block;
- margin-left: auto;
- margin-right: auto;
-}
-
-/* no buttons?
-button.mw-ui-button, input[type="submit"].mw-ui-button, a.mw-ui-button
-button.mw-ui-button:hover, button.mw-ui-button.hover, input[type="submit"].mw-ui-button:hover, input[type="submit"].mw-ui-button.hover, a.mw-ui-button:hover, a.mw-ui-button.hover
-*/
-
-/* line 7, ../scss/components/_forms.scss */
-ul.mw-ui-formlist {
- list-style: none;
- list-style-image: none;
-}
-/* line 16, ../scss/components/_forms.scss */
-ul.mw-ui-formlist li {
- display: block;
- width: 100%;
-}
-/* line 25, ../scss/components/_forms.scss */
-ul.mw-ui-formlist li input,
-ul.mw-ui-formlist li label,
-ul.mw-ui-formlist li .mw-ui-button {
- margin: 0;
- width: 100%;
-}
-/* nothing about labels or checkboxes
-ul.mw-ui-formlist li label
-ul.mw-ui-formlist li label.mw-ui-checkbox-label > input[type="checkbox"], ul.mw-ui-formlist li label.mw-ui-checkbox-label > input[type="radio"], ul.mw-ui-formlist li label.mw-ui-radio-label > input[type="checkbox"], ul.mw-ui-formlist li label.mw-ui-radio-label > input[type="radio"]
-*/
+++ /dev/null
-/* Agora styles */
-/* _effects.scss */
-/* Mixins for visual effects in CSS3 */
-/* line 7, ../scss/components/_utilities.scss */
-.mw-ui-flush-left {
- float: left;
- margin-left: 0;
- padding-left: 0;
-}
-
-/* line 11, ../scss/components/_utilities.scss */
-.mw-ui-flush-right {
- float: right;
- margin-right: 0;
- padding-right: 0;
-}
-
-/* line 15, ../scss/components/_utilities.scss */
-.mw-ui-center-block {
- display: block;
- margin-left: auto;
- margin-right: auto;
-}
-
-/* line 8, ../scss/components/_buttons.scss */
-button.mw-ui-button, input[type="submit"].mw-ui-button, a.mw-ui-button {
- display: -moz-inline-stack;
- display: inline-block;
- vertical-align: middle;
- *vertical-align: auto;
- zoom: 1;
- *display: inline;
- padding: 0.4em 1em 0.4em 1em;
- margin: 0;
- background-color: #c9c9c9;
- *background-color: #c9c9c9;
- *zoom: 1;
- filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FFDCDCDC', endColorstr='#FFC9C9C9');
- background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #dcdcdc), color-stop(100%, #c9c9c9));
- background-image: -webkit-linear-gradient(top, #dcdcdc, #c9c9c9);
- background-image: -moz-linear-gradient(top, #dcdcdc, #c9c9c9);
- background-image: -o-linear-gradient(top, #dcdcdc, #c9c9c9);
- background-image: linear-gradient(top, #dcdcdc, #c9c9c9);
- color: #4a4a4a;
- text-shadow: 0 1px 1px rgba(201, 201, 201, 0.3);
- border: 1px solid #c4c4c4;
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- -ms-border-radius: 3px;
- -o-border-radius: 3px;
- border-radius: 3px;
- line-height: 1.4em;
- vertical-align: middle;
- text-align: center;
- text-decoration: none;
- font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
- font-size: 1em;
- font-weight: bold;
- cursor: pointer;
-}
-/* line 38, ../scss/mixins/_effects.scss */
-button.mw-ui-button:hover, button.mw-ui-button.hover, input[type="submit"].mw-ui-button:hover, input[type="submit"].mw-ui-button.hover, a.mw-ui-button:hover, a.mw-ui-button.hover {
- background-color: gainsboro;
- *background-color: gainsboro;
- *zoom: 1;
- filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FFE9E9E9', endColorstr='#FFDCDCDC');
- background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e9e9e9), color-stop(100%, #dcdcdc));
- background-image: -webkit-linear-gradient(top, #e9e9e9, #dcdcdc);
- background-image: -moz-linear-gradient(top, #e9e9e9, #dcdcdc);
- background-image: -o-linear-gradient(top, #e9e9e9, #dcdcdc);
- background-image: linear-gradient(top, #e9e9e9, #dcdcdc);
-}
-/* line 43, ../scss/mixins/_effects.scss */
-button.mw-ui-button:active, button.mw-ui-button.active, input[type="submit"].mw-ui-button:active, input[type="submit"].mw-ui-button.active, a.mw-ui-button:active, a.mw-ui-button.active {
- background-image: none;
- background-color: #c1c1c1;
- text-shadow: none;
-}
-/* line 53, ../scss/mixins/_effects.scss */
-button.mw-ui-button:disabled, button.mw-ui-button.disabled, input[type="submit"].mw-ui-button:disabled, input[type="submit"].mw-ui-button.disabled, a.mw-ui-button:disabled, a.mw-ui-button.disabled {
- background-image: none;
- background-color: #c9c9c9;
- opacity: 0.5;
- text-shadow: none;
-}
-/* line 37, ../scss/components/_buttons.scss */
-button.mw-ui-button:disabled, button.mw-ui-button.disabled, input[type="submit"].mw-ui-button:disabled, input[type="submit"].mw-ui-button.disabled, a.mw-ui-button:disabled, a.mw-ui-button.disabled {
- cursor: default;
-}
-/* line 44, ../scss/components/_buttons.scss */
-button.mw-ui-button.blue, button.mw-ui-button.primary, input[type="submit"].mw-ui-button.blue, input[type="submit"].mw-ui-button.primary, a.mw-ui-button.blue, a.mw-ui-button.primary {
- background-color: #3366bb;
- *background-color: #3366bb;
- *zoom: 1;
- filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FF4779CD', endColorstr='#FF3366BB');
- background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #4779cd), color-stop(100%, #3366bb));
- background-image: -webkit-linear-gradient(top, #4779cd, #3366bb);
- background-image: -moz-linear-gradient(top, #4779cd, #3366bb);
- background-image: -o-linear-gradient(top, #4779cd, #3366bb);
- background-image: linear-gradient(top, #4779cd, #3366bb);
- color: white;
- text-shadow: 0 1px 1px rgba(51, 102, 187, 0.75);
- border: 1px solid #3162b3;
-}
-/* line 38, ../scss/mixins/_effects.scss */
-button.mw-ui-button.blue:hover, button.mw-ui-button.blue.hover, button.mw-ui-button.primary:hover, button.mw-ui-button.primary.hover, input[type="submit"].mw-ui-button.blue:hover, input[type="submit"].mw-ui-button.blue.hover, input[type="submit"].mw-ui-button.primary:hover, input[type="submit"].mw-ui-button.primary.hover, a.mw-ui-button.blue:hover, a.mw-ui-button.blue.hover, a.mw-ui-button.primary:hover, a.mw-ui-button.primary.hover {
- background-color: #4779cd;
- *background-color: #4779cd;
- *zoom: 1;
- filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FF5B88D2', endColorstr='#FF4779CD');
- background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5b88d2), color-stop(100%, #4779cd));
- background-image: -webkit-linear-gradient(top, #5b88d2, #4779cd);
- background-image: -moz-linear-gradient(top, #5b88d2, #4779cd);
- background-image: -o-linear-gradient(top, #5b88d2, #4779cd);
- background-image: linear-gradient(top, #5b88d2, #4779cd);
-}
-/* line 43, ../scss/mixins/_effects.scss */
-button.mw-ui-button.blue:active, button.mw-ui-button.blue.active, button.mw-ui-button.primary:active, button.mw-ui-button.primary.active, input[type="submit"].mw-ui-button.blue:active, input[type="submit"].mw-ui-button.blue.active, input[type="submit"].mw-ui-button.primary:active, input[type="submit"].mw-ui-button.primary.active, a.mw-ui-button.blue:active, a.mw-ui-button.blue.active, a.mw-ui-button.primary:active, a.mw-ui-button.primary.active {
- background-image: none;
- background-color: #305faf;
- text-shadow: none;
-}
-/* line 53, ../scss/mixins/_effects.scss */
-button.mw-ui-button.blue:disabled, button.mw-ui-button.blue.disabled, button.mw-ui-button.primary:disabled, button.mw-ui-button.primary.disabled, input[type="submit"].mw-ui-button.blue:disabled, input[type="submit"].mw-ui-button.blue.disabled, input[type="submit"].mw-ui-button.primary:disabled, input[type="submit"].mw-ui-button.primary.disabled, a.mw-ui-button.blue:disabled, a.mw-ui-button.blue.disabled, a.mw-ui-button.primary:disabled, a.mw-ui-button.primary.disabled {
- background-image: none;
- background-color: #3366bb;
- opacity: 0.5;
- text-shadow: none;
-}
-/* line 49, ../scss/components/_buttons.scss */
-button.mw-ui-button.green, button.mw-ui-button.constructive, input[type="submit"].mw-ui-button.green, input[type="submit"].mw-ui-button.constructive, a.mw-ui-button.green, a.mw-ui-button.constructive {
- background-color: #27aa65;
- *background-color: #27aa65;
- *zoom: 1;
- filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FF2EC977', endColorstr='#FF27AA65');
- background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #2ec977), color-stop(100%, #27aa65));
- background-image: -webkit-linear-gradient(top, #2ec977, #27aa65);
- background-image: -moz-linear-gradient(top, #2ec977, #27aa65);
- background-image: -o-linear-gradient(top, #2ec977, #27aa65);
- background-image: linear-gradient(top, #2ec977, #27aa65);
- color: white;
- text-shadow: 0 1px 1px rgba(39, 170, 101, 0.75);
- border: 1px solid #25a260;
-}
-/* line 38, ../scss/mixins/_effects.scss */
-button.mw-ui-button.green:hover, button.mw-ui-button.green.hover, button.mw-ui-button.constructive:hover, button.mw-ui-button.constructive.hover, input[type="submit"].mw-ui-button.green:hover, input[type="submit"].mw-ui-button.green.hover, input[type="submit"].mw-ui-button.constructive:hover, input[type="submit"].mw-ui-button.constructive.hover, a.mw-ui-button.green:hover, a.mw-ui-button.green.hover, a.mw-ui-button.constructive:hover, a.mw-ui-button.constructive.hover {
- background-color: #2ec977;
- *background-color: #2ec977;
- *zoom: 1;
- filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FF3ED384', endColorstr='#FF2EC977');
- background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #3ed384), color-stop(100%, #2ec977));
- background-image: -webkit-linear-gradient(top, #3ed384, #2ec977);
- background-image: -moz-linear-gradient(top, #3ed384, #2ec977);
- background-image: -o-linear-gradient(top, #3ed384, #2ec977);
- background-image: linear-gradient(top, #3ed384, #2ec977);
-}
-/* line 43, ../scss/mixins/_effects.scss */
-button.mw-ui-button.green:active, button.mw-ui-button.green.active, button.mw-ui-button.constructive:active, button.mw-ui-button.constructive.active, input[type="submit"].mw-ui-button.green:active, input[type="submit"].mw-ui-button.green.active, input[type="submit"].mw-ui-button.constructive:active, input[type="submit"].mw-ui-button.constructive.active, a.mw-ui-button.green:active, a.mw-ui-button.green.active, a.mw-ui-button.constructive:active, a.mw-ui-button.constructive.active {
- background-image: none;
- background-color: #249e5e;
- text-shadow: none;
-}
-/* line 53, ../scss/mixins/_effects.scss */
-button.mw-ui-button.green:disabled, button.mw-ui-button.green.disabled, button.mw-ui-button.constructive:disabled, button.mw-ui-button.constructive.disabled, input[type="submit"].mw-ui-button.green:disabled, input[type="submit"].mw-ui-button.green.disabled, input[type="submit"].mw-ui-button.constructive:disabled, input[type="submit"].mw-ui-button.constructive.disabled, a.mw-ui-button.green:disabled, a.mw-ui-button.green.disabled, a.mw-ui-button.constructive:disabled, a.mw-ui-button.constructive.disabled {
- background-image: none;
- background-color: #27aa65;
- opacity: 0.5;
- text-shadow: none;
-}
-/* line 54, ../scss/components/_buttons.scss */
-button.mw-ui-button.red, button.mw-ui-button.destructive, input[type="submit"].mw-ui-button.red, input[type="submit"].mw-ui-button.destructive, a.mw-ui-button.red, a.mw-ui-button.destructive {
- background-color: #cc0000;
- *background-color: #cc0000;
- *zoom: 1;
- filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FFF20000', endColorstr='#FFCC0000');
- background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #f20000), color-stop(100%, #cc0000));
- background-image: -webkit-linear-gradient(top, #f20000, #cc0000);
- background-image: -moz-linear-gradient(top, #f20000, #cc0000);
- background-image: -o-linear-gradient(top, #f20000, #cc0000);
- background-image: linear-gradient(top, #f20000, #cc0000);
- color: white;
- text-shadow: 0 1px 1px rgba(204, 0, 0, 0.75);
- border: 1px solid #c20000;
-}
-/* line 38, ../scss/mixins/_effects.scss */
-button.mw-ui-button.red:hover, button.mw-ui-button.red.hover, button.mw-ui-button.destructive:hover, button.mw-ui-button.destructive.hover, input[type="submit"].mw-ui-button.red:hover, input[type="submit"].mw-ui-button.red.hover, input[type="submit"].mw-ui-button.destructive:hover, input[type="submit"].mw-ui-button.destructive.hover, a.mw-ui-button.red:hover, a.mw-ui-button.red.hover, a.mw-ui-button.destructive:hover, a.mw-ui-button.destructive.hover {
- background-color: #f20000;
- *background-color: #f20000;
- *zoom: 1;
- filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FFFF0D0D', endColorstr='#FFF20000');
- background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ff0d0d), color-stop(100%, #f20000));
- background-image: -webkit-linear-gradient(top, #ff0d0d, #f20000);
- background-image: -moz-linear-gradient(top, #ff0d0d, #f20000);
- background-image: -o-linear-gradient(top, #ff0d0d, #f20000);
- background-image: linear-gradient(top, #ff0d0d, #f20000);
-}
-/* line 43, ../scss/mixins/_effects.scss */
-button.mw-ui-button.red:active, button.mw-ui-button.red.active, button.mw-ui-button.destructive:active, button.mw-ui-button.destructive.active, input[type="submit"].mw-ui-button.red:active, input[type="submit"].mw-ui-button.red.active, input[type="submit"].mw-ui-button.destructive:active, input[type="submit"].mw-ui-button.destructive.active, a.mw-ui-button.red:active, a.mw-ui-button.red.active, a.mw-ui-button.destructive:active, a.mw-ui-button.destructive.active {
- background-image: none;
- background-color: #bd0000;
- text-shadow: none;
-}
-/* line 53, ../scss/mixins/_effects.scss */
-button.mw-ui-button.red:disabled, button.mw-ui-button.red.disabled, button.mw-ui-button.destructive:disabled, button.mw-ui-button.destructive.disabled, input[type="submit"].mw-ui-button.red:disabled, input[type="submit"].mw-ui-button.red.disabled, input[type="submit"].mw-ui-button.destructive:disabled, input[type="submit"].mw-ui-button.destructive.disabled, a.mw-ui-button.red:disabled, a.mw-ui-button.red.disabled, a.mw-ui-button.destructive:disabled, a.mw-ui-button.destructive.disabled {
- background-image: none;
- background-color: #cc0000;
- opacity: 0.5;
- text-shadow: none;
-}
-/* line 60, ../scss/components/_buttons.scss */
-button.mw-ui-button.big, input[type="submit"].mw-ui-button.big, a.mw-ui-button.big {
- font-size: 1.3em;
-}
-/* line 65, ../scss/components/_buttons.scss */
-button.mw-ui-button.block, input[type="submit"].mw-ui-button.block, a.mw-ui-button.block {
- display: block;
- width: 100%;
-}
-
-/* line 7, ../scss/components/_forms.scss */
-ul.mw-ui-formlist {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
- font-size: 1em;
- line-height: 1.4em;
- list-style: none;
- list-style-image: none;
- width: 20em;
-}
-/* line 16, ../scss/components/_forms.scss */
-ul.mw-ui-formlist li {
- display: block;
- margin: 0 0 15px 0;
- padding: 0;
- width: 100%;
-}
-/* line 25, ../scss/components/_forms.scss */
-ul.mw-ui-formlist li input,
-ul.mw-ui-formlist li label,
-ul.mw-ui-formlist li .mw-ui-button {
- display: block;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- margin: 0;
- width: 100%;
-}
-/* line 32, ../scss/components/_forms.scss */
-ul.mw-ui-formlist li label {
- width: auto;
- margin: 0 0 0.2em 0;
- padding: 0;
-}
-/* line 38, ../scss/components/_forms.scss */
-ul.mw-ui-formlist li label.mw-ui-checkbox-label, ul.mw-ui-formlist li label.mw-ui-radio-label {
- cursor: pointer;
- vertical-align: bottom;
- line-height: normal;
- height: 1em;
- font-weight: normal;
-}
-/* line 50, ../scss/mixins/_forms.scss */
-ul.mw-ui-formlist li label.mw-ui-checkbox-label > input[type="checkbox"], ul.mw-ui-formlist li label.mw-ui-checkbox-label > input[type="radio"], ul.mw-ui-formlist li label.mw-ui-radio-label > input[type="checkbox"], ul.mw-ui-formlist li label.mw-ui-radio-label > input[type="radio"] {
- width: auto;
- height: auto;
- margin: 0 0.3em 0 0;
- padding: 0;
- border-style: solid;
- border-width: 1px;
- border-color: #c9c9c9;
- cursor: pointer;
-}
-/* line 45, ../scss/components/_forms.scss */
-ul.mw-ui-formlist li input[type="checkbox"],
-ul.mw-ui-formlist li input[type="radio"] {
- display: inline;
- -webkit-box-sizing: content-box;
- -moz-box-sizing: content-box;
- box-sizing: content-box;
- width: auto;
-}
-
-/* line 60, ../scss/components/_forms.scss */
-.mw-ui-input, .mw-ui-formlist li input {
- outline: 0;
- font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
- font-size: 1em;
- line-height: 1.4em;
- font-size: 1em;
- border-style: solid;
- border-width: 1px;
- border-color: #c9c9c9;
- color: #252525;
- padding: 0.25em 0 0.2em 0.5em;
-}
-/* line 15, ../scss/mixins/_forms.scss */
-.mw-ui-input:focus, .mw-ui-formlist li input:focus {
- -webkit-box-shadow: #4091ed 0px 0px 5px;
- -moz-box-shadow: #4091ed 0px 0px 5px;
- box-shadow: #4091ed 0px 0px 5px;
- border-color: #4091ed;
-}
-
-/* line 65, ../scss/components/_forms.scss */
-.mw-ui-block-label, .mw-ui-formlist li label {
- font-weight: bold;
- font-size: 0.9em;
- color: #7d7d7d;
-}
-/* line 34, ../scss/mixins/_forms.scss */
-.mw-ui-block-label *, .mw-ui-formlist li label * {
- font-weight: normal;
-}
-
-/* line 74, ../scss/components/_forms.scss */
-.mw-ui-checkbox-label, .mw-ui-radio-label {
- cursor: pointer;
- vertical-align: bottom;
- line-height: normal;
- height: 1em;
- font-weight: normal;
-}
-/* line 50, ../scss/mixins/_forms.scss */
-.mw-ui-checkbox-label > input[type="checkbox"], .mw-ui-checkbox-label > input[type="radio"], .mw-ui-radio-label > input[type="checkbox"], .mw-ui-radio-label > input[type="radio"] {
- width: auto;
- height: auto;
- margin: 0 0.3em 0 0;
- padding: 0;
- border-style: solid;
- border-width: 1px;
- border-color: #c9c9c9;
- cursor: pointer;
-}