mirror of https://github.com/Hutchy68/pivot.git
Compare commits
44 Commits
Author | SHA1 | Date |
---|---|---|
Tom Hutchison | 0d3d6b03a8 | |
Tom Hutchison | 4bbd644b85 | |
Tom Hutchison | 8ec2264b04 | |
Tom Hutchison | 13bf89300c | |
Tom Hutchison | 8a746f6b82 | |
MW install maintain even with core development | 2df7a85616 | |
MW install maintain even with core development | 79e00892b4 | |
Tom Hutchison | 26162eedee | |
Hutchy68 | 5014428101 | |
Hutchy68 | 46655db803 | |
Hutchy68 | eb144a161f | |
Tom Hutchison | 7ccab05353 | |
Tom Hutchison | e8f075de3f | |
Hutchy68 | 4c66d059b6 | |
Tom Hutchison | 7bc517b271 | |
Tom Hutchison | cd06863d2e | |
Tom Hutchison | 078f9c258c | |
Tom Hutchison | 1cbaa40c03 | |
Tom Hutchison | 1dfbb94a0c | |
Tom Hutchison | 7adb2a5135 | |
Tom Hutchison | cb3906ac5b | |
Tom Hutchison | f586bf4c5c | |
Tom Hutchison | e1acefb9d7 | |
paladox | a128dd152a | |
Tom Hutchison | 15cce18901 | |
Tom Hutchison | 56a6ed08e7 | |
Tom Hutchison | ca91229c90 | |
Tom Hutchison | b4c88e79f3 | |
Tom Hutchison | a53099119a | |
Tom Hutchison | 181b630b30 | |
Tom Hutchison | 25684b30c0 | |
MW install maintain even with core development | 842dfc3fdf | |
Tom Hutchison | 997b8df9b2 | |
Tom Hutchison | b3db964e77 | |
Tom Hutchison | 65964dc883 | |
MW install maintain even with core development | 52aecafbc9 | |
MW install maintain even with core development | 0c6eeceb86 | |
MW install maintain even with core development | aa36556cb9 | |
MW install maintain even with core development | 8ae56081c1 | |
MW install maintain even with core development | cd535df66e | |
MW install maintain even with core development | 25db636961 | |
Tealk | db642cbb53 | |
Tom Hutchison | d47024ebed | |
Peter Grassberger | b188757c3c |
|
@ -0,0 +1,57 @@
|
|||
version: 2.0
|
||||
|
||||
jobs:
|
||||
"PHP 7.3":
|
||||
docker:
|
||||
-
|
||||
auth:
|
||||
password: $DOCKERHUB_PASSWORD
|
||||
username: mydockerhub-user
|
||||
image: "cimg/php:7.3"
|
||||
steps:
|
||||
- checkout
|
||||
- run: "sudo composer install -n --prefer-dist"
|
||||
- run: "sudo composer self-update"
|
||||
- run: "sudo composer update --no-progress --prefer-dist --profile"
|
||||
- run:
|
||||
command: "composer test"
|
||||
name: Test PHP7.3
|
||||
|
||||
"PHP 7.4":
|
||||
docker:
|
||||
-
|
||||
auth:
|
||||
password: $DOCKERHUB_PASSWORD
|
||||
username: mydockerhub-user
|
||||
image: "cimg/php:7.4"
|
||||
steps:
|
||||
- checkout
|
||||
- run: "sudo composer install -n --prefer-dist"
|
||||
- run: "sudo composer self-update"
|
||||
- run: "sudo composer update --no-progress --prefer-dist --profile"
|
||||
- run:
|
||||
command: "composer test"
|
||||
name: Test PHP7.4
|
||||
|
||||
"PHP 8.0":
|
||||
docker:
|
||||
- auth:
|
||||
password: $DOCKERHUB_PASSWORD
|
||||
username: mydockerhub-user
|
||||
image: "cimg/php:8.0"
|
||||
steps:
|
||||
- checkout
|
||||
- run: "sudo composer install -n --prefer-dist"
|
||||
- run: "sudo composer self-update"
|
||||
- run: "sudo composer update --no-progress --prefer-dist --profile"
|
||||
- run:
|
||||
command: "composer test"
|
||||
name: Test PHP8.0
|
||||
|
||||
workflows:
|
||||
version: 2
|
||||
build:
|
||||
jobs:
|
||||
- "PHP 7.3"
|
||||
- "PHP 7.4"
|
||||
- "PHP 8.0"
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
All PR's welcome, even those without an Issue
|
||||
|
||||
* [ ] Have tested this PR and it adds a feature or fixes and issue noted below.
|
||||
* [ ] Have tested this PR and it adds a feature or fixes an issue noted below.
|
||||
|
||||
### Additional Information Below
|
||||
|
||||
|
|
15
.travis.yml
15
.travis.yml
|
@ -1,15 +0,0 @@
|
|||
language: php
|
||||
|
||||
php:
|
||||
- 7
|
||||
- 5.6
|
||||
- hhvm
|
||||
- nightly
|
||||
|
||||
sudo: false
|
||||
|
||||
install:
|
||||
- travis_retry composer update --no-progress --prefer-dist --profile
|
||||
|
||||
script:
|
||||
- composer test
|
48
CHANGELOG.md
48
CHANGELOG.md
|
@ -1,3 +1,51 @@
|
|||
# Version 2.3.0
|
||||
* [compatibility, CSS] Load MW core CSS that was dropped in MW 1.35
|
||||
* [code] Drop Travis-CI and move to CircleCI
|
||||
* [code] Update php-parallel-lint to a supported branch with PHP 8.0
|
||||
* [deprecated, code] Updated deprecated code
|
||||
|
||||
## Version 2.2.2
|
||||
* [bug, enhancement] Fix to allow multiple methods of login such as MW-OAuth2Client - Issue #99
|
||||
* [bug, enhancement] Left-menu search (on mobile widths only) doesn't auto-complete #98
|
||||
|
||||
## Version 2.2.1
|
||||
* [enhancement] Enumeration and Listings #54
|
||||
* [bug] Search results page - limited width #58
|
||||
* [bug] Syntax error in pivot.css Issue #89
|
||||
* [bug] Personal tools menu name not translated into other languages Issue #88
|
||||
* [bug] Search autocomplete not available on small screens Issue #85
|
||||
* [bug] The links in the menu titles on the left seem to be clickable off they should not be. Issue #68
|
||||
|
||||
## Version 2.2.0
|
||||
* [compatibility, deprecated] Fix for deprecated wfSuppressWarnings and wfRestoreWarnings with new Wikimedia\...
|
||||
* [b/c break] Version minor bump, MW >= 1.31.0 now required
|
||||
* [enhancement] Use of requires MW version in skin.json
|
||||
|
||||
|
||||
## Version 2.1.1
|
||||
|
||||
* [CSS, enhancement] Improvements correcting Issues #72 and #69, images the MW way
|
||||
* [CSS] Further improvements found similar to Search Input alignment on other form type pages
|
||||
|
||||
## Version 2.1.0
|
||||
|
||||
* [bug fix, compatibility] Replace wfRunHooks with Hooks::run PR #74 issue #75
|
||||
* [bug fix, enhancement] Always adds the server name to the h1 tag issue #76 SEO related
|
||||
* [CSS] Search Input alignment fix
|
||||
* [CSS] Improvements and fixes after issue #76 was fixed
|
||||
* [bug-fix, compatibility] Code loading changes, $out->addModuleScripts() to $out->addModules() issue #78
|
||||
* [compatibility] Removal of fastclick.js as mobile browsers now deal with touch delay automatically
|
||||
|
||||
## Version 2.0.0
|
||||
|
||||
* [bug fix] Addressed serveral W3C validation errors with HTML output.
|
||||
* [bug fix] update JavaScript of Foundation.js to stop deprecation warnings. Now version matches Foundation branch of Foundation 5.5.3 not released.
|
||||
* [CSS, bug fix] various changes to CSS to fix bugs and address MediaWiki hidden CSS loading
|
||||
* [enhancement] ability to preload Font Awesome and bypass server setup errors, added as a feature setting
|
||||
* [enhancement] move all Font Awesome icons to `::before` CSS from JS pivot.js
|
||||
* [b/c changes] remove feature `'IeEdgeCode'` feature set to send a compatibility header
|
||||
* [b/c changes] removing support for IE 9 and earlier
|
||||
|
||||
## Version 1.0.5
|
||||
|
||||
* [bug fix] Search link was not follow $wgScript path
|
||||
|
|
|
@ -10,9 +10,8 @@
|
|||
|
||||
class SkinPivot extends SkinTemplate {
|
||||
public $skinname = 'pivot', $stylename = 'pivot', $template = 'pivotTemplate', $useHeadElement = true;
|
||||
|
||||
public function setupSkinUserCss(OutputPage $out) {
|
||||
parent::setupSkinUserCss($out);
|
||||
|
||||
public function getDefaultModules() {
|
||||
global $wgPivotFeatures;
|
||||
$wgPivotFeaturesDefaults = array(
|
||||
'showActionsForAnon' => true,
|
||||
|
@ -23,7 +22,7 @@ class SkinPivot extends SkinTemplate {
|
|||
'wikiName' => &$GLOBALS['wgSitename'],
|
||||
'wikiNameDesktop' => &$GLOBALS['wgSitename'],
|
||||
'navbarIcon' => false,
|
||||
'IeEdgeCode' => 1,
|
||||
'preloadFontAwesome' => false,
|
||||
'showFooterIcons' => false,
|
||||
'addThisPUBID' => '',
|
||||
'useAddThisShare' => '',
|
||||
|
@ -34,25 +33,22 @@ class SkinPivot extends SkinTemplate {
|
|||
$wgPivotFeatures[$fgOption] = $fgOptionValue;
|
||||
}
|
||||
}
|
||||
switch ($wgPivotFeatures['IeEdgeCode']) {
|
||||
case 1:
|
||||
$out->addHeadItem('ie-meta', '<meta http-equiv="X-UA-Compatible" content="IE=edge" />');
|
||||
break;
|
||||
case 2:
|
||||
if (isset($_SERVER['HTTP_USER_AGENT']) && (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false))
|
||||
header('X-UA-Compatible: IE=edge');
|
||||
break;
|
||||
|
||||
if ( $wgPivotFeatures['preloadFontAwesome'] ) {
|
||||
$this->getOutput()->addHeadItem('font', '<link rel="preload" href="'.$wgLocalStylePath.'/pivot/assets/fonts/fontawesome-webfont.woff2?v=4.7.0" as="font" type="font/woff2" crossorigin="anonymous" />');
|
||||
}
|
||||
$out->addModuleStyles('skins.pivot.styles');
|
||||
|
||||
$this->getOutput()->addModuleStyles('skins.pivot.styles');
|
||||
return parent::getDefaultModules();
|
||||
}
|
||||
|
||||
|
||||
public function initPage(OutputPage $out) {
|
||||
global $wgLocalStylePath;
|
||||
parent::initPage($out);
|
||||
|
||||
$viewport_meta = 'width=device-width, user-scalable=yes, initial-scale=1.0';
|
||||
$out->addMeta('viewport', $viewport_meta);
|
||||
$out->addModuleScripts('skins.pivot.js');
|
||||
$out->addModules('skins.pivot.js');
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -62,7 +58,7 @@ class pivotTemplate extends BaseTemplate {
|
|||
public function execute() {
|
||||
global $wgUser;
|
||||
global $wgPivotFeatures;
|
||||
wfSuppressWarnings();
|
||||
Wikimedia\suppressWarnings();
|
||||
$this->html('headelement');
|
||||
switch ($wgPivotFeatures['usePivotTabs']) {
|
||||
case true:
|
||||
|
@ -96,21 +92,21 @@ class pivotTemplate extends BaseTemplate {
|
|||
<?php if ($wgPivotFeatures['fixedNavBar'] != false) echo "<div class='fixed'>"; ?>
|
||||
<nav class="tab-bar hide-for-print">
|
||||
<section id="left-nav-aside" class="left-small show-for-small">
|
||||
<a class="left-off-canvas-toggle"><span id="menu-user"><i class="fa fa-navicon fa-lg"></i></span></a>
|
||||
<a href="#" class="left-off-canvas-toggle"><span id="menu-user"><i class="fa fa-navicon fa-lg"></i></span></a>
|
||||
</section>
|
||||
|
||||
<section id="middle-nav" class="middle tab-bar-section">
|
||||
<h1 class="title"><a href="<?php echo $this->data['nav_urls']['mainpage']['href']; ?>">
|
||||
<div class="title"><a href="<?php echo $this->data['nav_urls']['mainpage']['href']; ?>">
|
||||
<span class="show-for-medium-up"><?php echo $wgPivotFeatures['wikiNameDesktop']; ?></span>
|
||||
<span class="show-for-small-only">
|
||||
<?php if ($wgPivotFeatures['navbarIcon'] != false) { ?>
|
||||
<img alt="<?php echo $this->text('sitename'); ?>" src="<?php echo $this->text('logopath'); ?>" style="max-width: 64px;height:auto; max-height:36px; display: inline-block; vertical-align:middle;">
|
||||
<?php } ?>
|
||||
<?php echo $wgPivotFeatures['wikiName']; ?></span></a></h1>
|
||||
<?php echo $wgPivotFeatures['wikiName']; ?></span></a></div>
|
||||
</section>
|
||||
|
||||
<section id="right-nav-aside" class="right-small">
|
||||
<a class="right-off-canvas-toggle"><span id="menu-user"><i class="fa <?php if ($wgUser->isLoggedIn()): ?>fa-user<?php else: ?>fa-navicon<?php endif; ?> fa-lg"></i></span></a>
|
||||
<a href="#" class="right-off-canvas-toggle"><span id="menu-user"><i class="fa <?php if ($wgUser->isLoggedIn()): ?>fa-user<?php else: ?>fa-navicon<?php endif; ?> fa-lg"></i></span></a>
|
||||
</section>
|
||||
</nav>
|
||||
<?php if ($wgPivotFeatures['fixedNavBar'] != false) echo "</div>"; ?>
|
||||
|
@ -118,10 +114,10 @@ class pivotTemplate extends BaseTemplate {
|
|||
<ul class="off-canvas-list">
|
||||
|
||||
<li class="has-form">
|
||||
<form action="<?php $this->text( 'wgScript' ); ?>" id="searchform" class="mw-search">
|
||||
<form action="<?php $this->text( 'wgScript' ); ?>" id="searchform-sidebar" class="mw-search">
|
||||
<div class="row collapse">
|
||||
<div class="small-12 columns">
|
||||
<input type="search" name="search" placeholder="<?php echo wfMessage( 'search' )->text() ?>" title="Search [alt-shift-f]" accesskey="f" id="searchInput-offcanvas" autocomplete="off">
|
||||
<input type="search" name="search" placeholder="<?php echo wfMessage( 'search' )->text() ?>" title="Search [alt-shift-f]" accesskey="f" id="searchInput" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
@ -134,16 +130,10 @@ class pivotTemplate extends BaseTemplate {
|
|||
<aside class="right-off-canvas-menu">
|
||||
<ul class="off-canvas-list">
|
||||
<?php if ($wgUser->isLoggedIn()): ?>
|
||||
<li id="personal-tools"><label>Personal</label></li>
|
||||
<li id="personal-tools"><label><?php echo wfMessage( 'pivot-personal-tools' )->text() ?></label></li>
|
||||
<?php foreach ($this->getPersonalTools() as $key => $item) { echo $this->makeListItem($key, $item); } ?>
|
||||
<?php else: ?>
|
||||
<?php if (isset($this->data['personal_urls']['anonlogin'])): ?>
|
||||
<li><a href="<?php echo $this->data['personal_urls']['anonlogin']['href']; ?>"><?php echo wfMessage( 'login' )->text() ?></a></li>
|
||||
<?php elseif (isset($this->data['personal_urls']['login'])): ?>
|
||||
<li><a href="<?php echo htmlspecialchars($this->data['personal_urls']['login']['href']); ?>"><?php echo wfMessage( 'login' )->text() ?></a></li>
|
||||
<?php else: ?>
|
||||
<li><?php echo Linker::link(Title::newFromText('Special:UserLogin'), wfMessage( 'login' )->text()); ?></li>
|
||||
<?php endif; ?>
|
||||
<?php foreach ($this->getPersonalTools() as $key => $item) { echo $this->makeListItem($key, $item); } ?>
|
||||
<?php endif; ?>
|
||||
</ul>
|
||||
</aside>
|
||||
|
@ -163,10 +153,10 @@ class pivotTemplate extends BaseTemplate {
|
|||
<img alt="<?php echo $this->text('sitename'); ?>" src="<?php echo $this->text('logopath') ?>" style="max-width: 100%;height: auto;display: inline-block; vertical-align: middle;"></a>
|
||||
</li>
|
||||
<li class="has-form">
|
||||
<form action="<?php $this->text( 'wgScript' ); ?>" id="searchform" class="mw-search">
|
||||
<form action="<?php $this->text( 'wgScript' ); ?>" id="searchform-offCanvas" class="mw-search">
|
||||
<div class="row collapse">
|
||||
<div class="small-12 columns">
|
||||
<input type="search" name="search" placeholder="<?php echo wfMessage( 'search' )->text() ?>" title="Search [alt-shift-f]" accesskey="f" id="searchInput" autocomplete="off">
|
||||
<input type="search" name="search" placeholder="<?php echo wfMessage( 'search' )->text() ?>" title="Search [alt-shift-f]" accesskey="f" class="mw-searchInput" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
@ -203,7 +193,7 @@ class pivotTemplate extends BaseTemplate {
|
|||
<a href="#" data-options="align:left" data-dropdown="drop1" class="button secondary small radius pull-right hide-for-print" id="drop"><i class="fa fa-navicon fa-lg"><span id="page-actions" class="show-for-medium-up"> <?php echo wfMessage( 'actions' )->text() ?></span></i></a>
|
||||
<ul id="drop1" class="tiny content f-dropdown" data-dropdown-content>
|
||||
<?php foreach($this->data['content_actions'] as $key => $tab) { echo preg_replace(array('/\sprimary="1"/', '/\scontext="[a-z]+"/', '/\srel="archives"/'),'',$this->makeListItem($key, $tab)); } ?>
|
||||
<?php wfRunHooks( 'SkinTemplateToolboxEnd', array( &$this, true )); ?>
|
||||
<?php Hooks::run( 'SkinTemplateToolboxEnd', array( &$this, true )); ?>
|
||||
</ul>
|
||||
|
||||
<?php endif;
|
||||
|
@ -215,14 +205,14 @@ class pivotTemplate extends BaseTemplate {
|
|||
$displaytitle = str_replace($pagetitle, $newtitle, $displaytitle);
|
||||
?><h4 class="namespace label"><?php print $namespace; ?></h4><?php } ?>
|
||||
<div id="content">
|
||||
<h2 class="title"><?php print $displaytitle; ?></h2>
|
||||
<h1 class="title"><?php print $displaytitle; ?></h1>
|
||||
<?php if ($wgPivotFeatures['useAddThisShare'] !== '') { ?>
|
||||
<!-- Go to www.addthis.com/dashboard to customize your tools -->
|
||||
<div class="<?php echo $wgPivotFeatures['useAddThisShare']; ?> hide-for-print"></div>
|
||||
<!-- Go to www.addthis.com/dashboard to customize your tools -->
|
||||
<?php } ?>
|
||||
<?php if ( $this->data['isarticle'] ) { ?><h3 id="tagline"><?php $this->msg( 'tagline' ) ?></h3><?php } ?>
|
||||
<h5 id="sitesub" class="subtitle"><?php $this->html('subtitle') ?></h5>
|
||||
<?php if ( $this->html('subtitle') ) { ?><h5 id="sitesub" class="subtitle"><?php $this->html('subtitle') ?></h5><?php } ?>
|
||||
<div id="contentSub" class="clear_both"></div>
|
||||
<div id="bodyContent" class="mw-bodytext">
|
||||
<?php
|
||||
|
@ -248,7 +238,7 @@ class pivotTemplate extends BaseTemplate {
|
|||
<footer class="row">
|
||||
|
||||
<div id="footer">
|
||||
<div id="footer-left" class="small-12 medium-8 large-9 columns">
|
||||
<div id="div-footer-left" class="small-12 medium-8 large-9 columns">
|
||||
<ul id="footer-left">
|
||||
<?php foreach ($this->getFooterLinks("flat") as $key) { ?>
|
||||
<li id="footer-<?php echo $key ?>"><?php $this->html($key) ?></li>
|
||||
|
@ -283,36 +273,33 @@ class pivotTemplate extends BaseTemplate {
|
|||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<a class="exit-off-canvas"></a>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<?php $this->printTrail(); ?>
|
||||
|
||||
<?php if ($this->data['isarticle'] && $wgPivotFeatures['addThisPUBID'] !== '') { ?>
|
||||
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=<?php echo $wgPivotFeatures['addThisPUBID']; ?>" async="async">></script>
|
||||
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=<?php echo $wgPivotFeatures['addThisPUBID']; ?>" async="async"></script>
|
||||
<?php } ?>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<?php
|
||||
wfRestoreWarnings();
|
||||
Wikimedia\restoreWarnings();
|
||||
|
||||
}
|
||||
|
||||
function renderSidebar() {
|
||||
$sidebar = $this->getSidebar();
|
||||
$toolbox = $this->getToolbox();
|
||||
foreach ($sidebar as $boxName => $box) { if ( ($box['header'] != wfMessage( 'toolbox' )->text()) ) {
|
||||
echo '<li id='.Sanitizer::escapeId( $box['id'] ); Linker::tooltip( $box['id'] ).'>';
|
||||
echo '<li><label>'.htmlspecialchars( $box['header'] ).'</label></li>';
|
||||
foreach ($sidebar as $boxName => $box) {
|
||||
echo '<li><label class="sidebar" id="'.Sanitizer::escapeIdForAttribute( $box['id'] ).'"';echo Linker::tooltip( $box['id'] ).'>'.htmlspecialchars( $box['header'] ).'</label></li>';
|
||||
if ( is_array( $box['content'] ) ) {
|
||||
foreach ($box['content'] as $key => $item) { echo $this->makeListItem($key, $item); }
|
||||
} }
|
||||
}
|
||||
echo '<li><label>Toolbox</label></li>';
|
||||
foreach ($toolbox as $key => $tbitem) { echo $this->makeListItem($key, $tbitem); }
|
||||
}
|
||||
}
|
||||
}
|
||||
return; }
|
||||
}
|
||||
?>
|
||||
|
|
20
README.md
20
README.md
|
@ -1,10 +1,12 @@
|
|||
# MediaWiki Pivot Skin
|
||||
|
||||
[![Build Status](https://travis-ci.org/Hutchy68/pivot.svg?branch=master)](https://travis-ci.org/Hutchy68/pivot)
|
||||
[![CircleCI](https://circleci.com/gh/Hutchy68/pivot.svg?style=shield)](https://circleci.com/gh/Hutchy68/pivot)
|
||||
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/Hutchy68/pivot/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/Hutchy68/pivot/?branch=master)
|
||||
|
||||
A [MediaWiki](http://www.mediawiki.org) skin that focuses on mobile first but will pivot to all viewports with elegance. Supports responsive layouts and has classes predefined for [Semantic MediaWiki](http://semantic-mediawiki.org/wiki/Semantic_MediaWiki). Built on the [Zurb Foundation 5](http://foundation.zurb.com) CSS framework.
|
||||
|
||||
Read the docs below (short version) or see [pivot.wikiproject.net](https://pivot.wikiproject.net) for more detailed docs with FAQs and examples of use.
|
||||
|
||||
## Download
|
||||
|
||||
First, copy the Pivot source files into your MediaWiki skins directory (see [skinning](https://www.mediawiki.org/wiki/Manual:Skinning) for general information on MediaWiki skins). You can either download the files and extract them from:
|
||||
|
@ -36,11 +38,14 @@ To activate Pivot for all users and anonymous visitors, you need to set the `$wg
|
|||
Use following features in `LocalSettings.php` to change the behavior.
|
||||
|
||||
- `'showActionsForAnon' => true` displays page actions for non-logged-in visitors.
|
||||
- `'fixedNavBar' => false` will allow the NavBar to scroll with the content, `true` will lock the NavBar.
|
||||
- `'usePivotTabs' => false` set to true to enable Foundation tabs markup in wiki pages.
|
||||
- `'showHelpUnderTools' => true` a Link to "Help" will be created under "Tools".
|
||||
- `'showRecentChangesUnderTool's => true` a Link to "recent changes" will be created under "Tools".
|
||||
- `'IeEdgeCode' => 1` will produce a meta tag with "X-UA-Compatible" content="IE=edge", `2` will sent a header, `0` nothing will be done
|
||||
- `'fixedNavBar' => false` will allow the NavBar to scroll with the content, `true` will lock the NavBar.
|
||||
- `'wikiName' => &$GLOBALS['wgSitename']` default is the sitename. Set to display a short version without changing the systems wikiname.
|
||||
- `'wikiNameDesktop' => &$GLOBALS['wgSitename']` default sitename. Set to display a longer name in desktop view.
|
||||
- `'navbarIcon' => false` no icon in mobile view, `true` to use the global set logopath image of the wiki.
|
||||
- `'preloadFontAwesome' => false` set to true to preload Font Awesome as a `<head>` element. Useful to overcome MIME type server configurations not set correctly.
|
||||
- `'showFooterIcons' => false` will show text in place of footer icons, `true` will output the icons as globally set.
|
||||
- `'addThisPUBID' => ''` empty string will not fire the AddThis script, `'ra-##-#######'` publisher ID will allow the run the AddThis script in async on content pages only.
|
||||
- `'useAddThisShare' => ''` default empty string, do not use AddThis share, `your_addthis_specific_div_class_string` will insert the share toolbox div directly under page title, but before the tagline with your custom div class.
|
||||
|
@ -51,17 +56,18 @@ These are the default values and the example of the array to change the defaults
|
|||
$wgPivotFeatures = array(
|
||||
'showActionsForAnon' => true,
|
||||
'fixedNavBar' => false,
|
||||
'usePivotTabs' => false,
|
||||
'showHelpUnderTools' => true,
|
||||
'showRecentChangesUnderTools' => true,
|
||||
'wikiName' => &$GLOBALS['wgSitename'],
|
||||
'wikiNameDesktop' => &$GLOBALS['wgSitename'],
|
||||
'navbarIcon' => false,
|
||||
'IeEdgeCode' => 1,
|
||||
'showFooterIcons' => false,
|
||||
'preloadFontAwesome' => false,
|
||||
'showFooterIcons' => true,
|
||||
'addThisPUBID' => '',
|
||||
'useAddThisShare' => '',
|
||||
'useAddThisFollow' => ''
|
||||
);
|
||||
);
|
||||
|
||||
|
||||
### Notes on other skins
|
||||
|
@ -80,4 +86,4 @@ You may also want to allow users to set a User CSS if they want to tweak things
|
|||
|
||||
## Using Pivot
|
||||
|
||||
Questions, open an issue in this repo on Github.
|
||||
Questions, open an issue in this repo on Github.
|
File diff suppressed because one or more lines are too long
|
@ -4,15 +4,18 @@
|
|||
Foundation.libs.abide = {
|
||||
name : 'abide',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
live_validate : true,
|
||||
validate_on_blur : true,
|
||||
// validate_on: 'tab', // tab (when user tabs between fields), change (input changes), manual (call custom events)
|
||||
focus_on_invalid : true,
|
||||
error_labels : true, // labels with a for="inputId" will recieve an `error` class
|
||||
error_class : 'error',
|
||||
live_validate : true, // validate the form as you go
|
||||
validate_on_blur : true, // validate whenever you focus/blur on an input field
|
||||
// validate_on: 'tab', // tab (when user tabs between fields), change (input changes), manual (call custom events)
|
||||
|
||||
focus_on_invalid : true, // automatically bring the focus to an invalid input field
|
||||
error_labels : true, // labels with a for="inputId" will receive an `error` class
|
||||
error_class : 'error', // labels with a for="inputId" will receive an `error` class
|
||||
// the amount of time Abide will take before it validates the form (in ms).
|
||||
// smaller time will result in faster validation
|
||||
timeout : 1000,
|
||||
patterns : {
|
||||
alpha : /^[a-zA-Z]+$/,
|
||||
|
@ -77,7 +80,6 @@
|
|||
}.bind(originalSelf), settings.timeout);
|
||||
}
|
||||
|
||||
|
||||
form
|
||||
.off('.abide')
|
||||
.on('submit.fndtn.abide', function (e) {
|
||||
|
@ -90,27 +92,39 @@
|
|||
}
|
||||
})
|
||||
.on('reset', function (e) {
|
||||
return self.reset($(this), e);
|
||||
return self.reset($(this), e);
|
||||
})
|
||||
.find('input, textarea, select').not(":hidden, [data-abide-ignore]")
|
||||
.off('.abide')
|
||||
.on('blur.fndtn.abide change.fndtn.abide', function (e) {
|
||||
var id = this.getAttribute('id'),
|
||||
eqTo = form.find('[data-equalto="'+ id +'"]');
|
||||
// old settings fallback
|
||||
// will be deprecated with F6 release
|
||||
if (settings.validate_on_blur && settings.validate_on_blur === true) {
|
||||
validate(this, e);
|
||||
}
|
||||
// checks if there is an equalTo equivalent related by id
|
||||
if(typeof eqTo.get(0) !== "undefined" && eqTo.val().length){
|
||||
validate(eqTo.get(0),e);
|
||||
}
|
||||
// new settings combining validate options into one setting
|
||||
if (settings.validate_on === 'change') {
|
||||
validate(this, e);
|
||||
}
|
||||
})
|
||||
.on('keydown.fndtn.abide', function (e) {
|
||||
var id = this.getAttribute('id'),
|
||||
eqTo = form.find('[data-equalto="'+ id +'"]');
|
||||
// old settings fallback
|
||||
// will be deprecated with F6 release
|
||||
if (settings.live_validate && settings.live_validate === true && e.which != 9) {
|
||||
validate(this, e);
|
||||
}
|
||||
// checks if there is an equalTo equivalent related by id
|
||||
if(typeof eqTo.get(0) !== "undefined" && eqTo.val().length){
|
||||
validate(eqTo.get(0),e);
|
||||
}
|
||||
// new settings combining validate options into one setting
|
||||
if (settings.validate_on === 'tab' && e.which === 9) {
|
||||
validate(this, e);
|
||||
|
@ -124,7 +138,7 @@
|
|||
$('html, body').animate({
|
||||
scrollTop: $(e.target).offset().top
|
||||
}, 100);
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
|
@ -140,7 +154,7 @@
|
|||
validate : function (els, e, is_ajax) {
|
||||
var validations = this.parse_patterns(els),
|
||||
validation_count = validations.length,
|
||||
form = this.S(els[0]).closest('form'),
|
||||
form = this.S(els.length ? els[0] : e.target).closest('form'),
|
||||
submit_event = /submit/.test(e.type);
|
||||
|
||||
// Has to count up to make sure the focus gets applied to the top error
|
||||
|
@ -203,8 +217,11 @@
|
|||
// TODO: Break this up into smaller methods, getting hard to read.
|
||||
check_validation_and_apply_styles : function (el_patterns) {
|
||||
var i = el_patterns.length,
|
||||
validations = [],
|
||||
form = this.S(el_patterns[0][0]).closest('[data-' + this.attr_name(true) + ']'),
|
||||
validations = [];
|
||||
if (i == 0) {
|
||||
return validations;
|
||||
}
|
||||
var form = this.S(el_patterns[0][0]).closest('[data-' + this.attr_name(true) + ']'),
|
||||
settings = form.data(this.attr_name(true) + '-init') || {};
|
||||
while (i--) {
|
||||
var el = el_patterns[i][0],
|
||||
|
@ -299,6 +316,7 @@
|
|||
}
|
||||
validations = validations.concat(el_validations);
|
||||
}
|
||||
|
||||
return validations;
|
||||
},
|
||||
|
||||
|
@ -325,20 +343,20 @@
|
|||
disabled = false;
|
||||
|
||||
// Has to count up to make sure the focus gets applied to the top error
|
||||
for (var i=0; i < count; i++) {
|
||||
if( group[i].getAttribute('disabled') ){
|
||||
disabled=true;
|
||||
valid=true;
|
||||
} else {
|
||||
if (group[i].checked){
|
||||
valid = true;
|
||||
} else {
|
||||
if( disabled ){
|
||||
valid = false;
|
||||
}
|
||||
}
|
||||
for (var i=0; i < count; i++) {
|
||||
if( group[i].getAttribute('disabled') ){
|
||||
disabled=true;
|
||||
valid=true;
|
||||
} else {
|
||||
if (group[i].checked){
|
||||
valid = true;
|
||||
} else {
|
||||
if( disabled ){
|
||||
valid = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Has to count up to make sure the focus gets applied to the top error
|
||||
for (var i = 0; i < count; i++) {
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
Foundation.libs.accordion = {
|
||||
name : 'accordion',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
content_class : 'content',
|
||||
|
@ -25,16 +25,18 @@
|
|||
|
||||
S(this.scope)
|
||||
.off('.fndtn.accordion')
|
||||
.on('click.fndtn.accordion', '[' + this.attr_name() + '] > dd > a, [' + this.attr_name() + '] > li > a', function (e) {
|
||||
.on('click.fndtn.accordion', '[' + this.attr_name() + '] > dd > a:not(.follow), [' + this.attr_name() + '] > li > a:not(.follow)', function (e) {
|
||||
var accordion = S(this).closest('[' + self.attr_name() + ']'),
|
||||
groupSelector = self.attr_name() + '=' + accordion.attr(self.attr_name()),
|
||||
settings = accordion.data(self.attr_name(true) + '-init') || self.settings,
|
||||
target = S('#' + this.href.split('#')[1]),
|
||||
contentAttr = S(this).context.attributes['data-content'],
|
||||
target = S('#' + (contentAttr ? contentAttr.value : this.href.split('#')[1])),
|
||||
aunts = $('> dd, > li', accordion),
|
||||
siblings = aunts.children('.' + settings.content_class),
|
||||
active_content = siblings.filter('.' + settings.active_class);
|
||||
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
|
||||
if (accordion.attr(self.attr_name())) {
|
||||
siblings = siblings.add('[' + groupSelector + '] dd > ' + '.' + settings.content_class + ', [' + groupSelector + '] li > ' + '.' + settings.content_class);
|
||||
|
@ -74,12 +76,49 @@
|
|||
settings = accordion.data(self.attr_name(true) + '-init') || self.settings;
|
||||
|
||||
aunts.children('a').attr('aria-expanded','false');
|
||||
aunts.has('.' + settings.content_class + '.' + settings.active_class).children('a').attr('aria-expanded','true');
|
||||
aunts.has('.' + settings.content_class + '.' + settings.active_class).addClass(settings.active_class).children('a').attr('aria-expanded','true');
|
||||
|
||||
if (settings.multi_expand) {
|
||||
$instance.attr('aria-multiselectable','true');
|
||||
}
|
||||
},
|
||||
|
||||
toggle : function(options) {
|
||||
var options = typeof options !== 'undefined' ? options : {};
|
||||
var selector = typeof options.selector !== 'undefined' ? options.selector : '';
|
||||
var toggle_state = typeof options.toggle_state !== 'undefined' ? options.toggle_state : '';
|
||||
var $accordion = typeof options.$accordion !== 'undefined' ? options.$accordion : this.S(this.scope).closest('[' + this.attr_name() + ']');
|
||||
|
||||
var $items = $accordion.find('> dd' + selector + ', > li' + selector);
|
||||
if ( $items.length < 1 ) {
|
||||
if ( window.console ) {
|
||||
console.error('Selection not found.', selector);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
var S = this.S;
|
||||
var active_class = this.settings.active_class;
|
||||
$items.each(function() {
|
||||
var $item = S(this);
|
||||
var is_active = $item.hasClass(active_class);
|
||||
if ( ( is_active && toggle_state === 'close' ) || ( !is_active && toggle_state === 'open' ) || toggle_state === '' ) {
|
||||
$item.find('> a').trigger('click.fndtn.accordion');
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
open : function(options) {
|
||||
var options = typeof options !== 'undefined' ? options : {};
|
||||
options.toggle_state = 'open';
|
||||
this.toggle(options);
|
||||
},
|
||||
|
||||
close : function(options) {
|
||||
var options = typeof options !== 'undefined' ? options : {};
|
||||
options.toggle_state = 'close';
|
||||
this.toggle(options);
|
||||
},
|
||||
|
||||
off : function () {},
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
Foundation.libs.alert = {
|
||||
name : 'alert',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
callback : function () {}
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
Foundation.libs.clearing = {
|
||||
name : 'clearing',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
templates : {
|
||||
|
@ -28,7 +28,7 @@
|
|||
|
||||
touch_label : '',
|
||||
|
||||
// event initializers and locks
|
||||
// event initializer and locks
|
||||
init : false,
|
||||
locked : false
|
||||
},
|
||||
|
@ -453,9 +453,9 @@
|
|||
var caption = $image.attr('data-caption');
|
||||
|
||||
if (caption) {
|
||||
container
|
||||
.html(caption)
|
||||
.show();
|
||||
var containerPlain = container.get(0);
|
||||
containerPlain.innerHTML = caption;
|
||||
container.show();
|
||||
} else {
|
||||
container
|
||||
.text('')
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
Foundation.libs.dropdown = {
|
||||
name : 'dropdown',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
active_class : 'open',
|
||||
|
@ -13,6 +13,7 @@
|
|||
align : 'bottom',
|
||||
is_hover : false,
|
||||
hover_timeout : 150,
|
||||
no_pip : false,
|
||||
opened : function () {},
|
||||
closed : function () {}
|
||||
},
|
||||
|
@ -258,7 +259,7 @@
|
|||
// `this` is the dropdown
|
||||
dirs : {
|
||||
// Calculate target offset
|
||||
_base : function (t) {
|
||||
_base : function (t, s) {
|
||||
var o_p = this.offsetParent(),
|
||||
o = o_p.offset(),
|
||||
p = t.offset();
|
||||
|
@ -275,33 +276,36 @@
|
|||
//lets see if the panel will be off the screen
|
||||
//get the actual width of the page and store it
|
||||
var actualBodyWidth;
|
||||
var windowWidth = window.innerWidth;
|
||||
|
||||
if (document.getElementsByClassName('row')[0]) {
|
||||
actualBodyWidth = document.getElementsByClassName('row')[0].clientWidth;
|
||||
} else {
|
||||
actualBodyWidth = window.innerWidth;
|
||||
actualBodyWidth = windowWidth;
|
||||
}
|
||||
|
||||
var actualMarginWidth = (window.innerWidth - actualBodyWidth) / 2;
|
||||
var actualMarginWidth = (windowWidth - actualBodyWidth) / 2;
|
||||
var actualBoundary = actualBodyWidth;
|
||||
|
||||
if (!this.hasClass('mega')) {
|
||||
if (!this.hasClass('mega') && !s.ignore_repositioning) {
|
||||
var outerWidth = this.outerWidth();
|
||||
var o_left = t.offset().left;
|
||||
|
||||
//miss top
|
||||
if (t.offset().top <= this.outerHeight()) {
|
||||
p.missTop = true;
|
||||
actualBoundary = window.innerWidth - actualMarginWidth;
|
||||
actualBoundary = windowWidth - actualMarginWidth;
|
||||
p.leftRightFlag = true;
|
||||
}
|
||||
|
||||
//miss right
|
||||
if (t.offset().left + this.outerWidth() > t.offset().left + actualMarginWidth && t.offset().left - actualMarginWidth > this.outerWidth()) {
|
||||
if (o_left + outerWidth > o_left + actualMarginWidth && o_left - actualMarginWidth > outerWidth - o_left) {
|
||||
p.missRight = true;
|
||||
p.missLeft = false;
|
||||
}
|
||||
|
||||
//miss left
|
||||
if (t.offset().left - this.outerWidth() <= 0) {
|
||||
if (o_left - outerWidth <= 0) {
|
||||
p.missLeft = true;
|
||||
p.missRight = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -310,89 +314,121 @@
|
|||
|
||||
top : function (t, s) {
|
||||
var self = Foundation.libs.dropdown,
|
||||
p = self.dirs._base.call(this, t);
|
||||
p = self.dirs._base.call(this, t, s),
|
||||
tOuterHeight = t.outerHeight(),
|
||||
tOuterWidth = t.outerWidth(),
|
||||
thisOuterHeight = this.outerHeight(),
|
||||
thisOuterWidth = this.outerWidth();
|
||||
|
||||
this.addClass('drop-top');
|
||||
|
||||
if (p.missTop == true) {
|
||||
p.top = p.top + t.outerHeight() + this.outerHeight();
|
||||
p.top = p.top + tOuterHeight + thisOuterHeight;
|
||||
this.removeClass('drop-top');
|
||||
}
|
||||
|
||||
if (p.missRight == true) {
|
||||
p.left = p.left - this.outerWidth() + t.outerWidth();
|
||||
p.left = p.left - thisOuterWidth + tOuterWidth;
|
||||
}
|
||||
|
||||
if (t.outerWidth() < this.outerWidth() || self.small() || this.hasClass(s.mega_menu)) {
|
||||
if (!s.no_pip && tOuterWidth < thisOuterWidth || self.small() || this.hasClass(s.mega_menu)) {
|
||||
self.adjust_pip(this, t, s, p);
|
||||
}
|
||||
|
||||
if (Foundation.rtl) {
|
||||
return {left : p.left - this.outerWidth() + t.outerWidth(),
|
||||
top : p.top - this.outerHeight()};
|
||||
return {left : p.left - thisOuterWidth + tOuterWidth,
|
||||
top : p.top - thisOuterHeight};
|
||||
}
|
||||
|
||||
return {left : p.left, top : p.top - this.outerHeight()};
|
||||
return {left : p.left, top : p.top - thisOuterHeight};
|
||||
},
|
||||
|
||||
bottom : function (t, s) {
|
||||
var self = Foundation.libs.dropdown,
|
||||
p = self.dirs._base.call(this, t);
|
||||
p = self.dirs._base.call(this, t, s),
|
||||
tOuterHeight = t.outerHeight(),
|
||||
tOuterWidth = t.outerWidth(),
|
||||
thisOuterHeight = this.outerHeight(),
|
||||
thisOuterWidth = this.outerWidth();;
|
||||
|
||||
if (p.missRight == true) {
|
||||
p.left = p.left - this.outerWidth() + t.outerWidth();
|
||||
p.left = p.left - thisOuterWidth + tOuterWidth;
|
||||
}
|
||||
|
||||
if (t.outerWidth() < this.outerWidth() || self.small() || this.hasClass(s.mega_menu)) {
|
||||
if (!s.no_pip && tOuterWidth < thisOuterWidth || self.small() || this.hasClass(s.mega_menu)) {
|
||||
self.adjust_pip(this, t, s, p);
|
||||
}
|
||||
|
||||
if (self.rtl) {
|
||||
return {left : p.left - this.outerWidth() + t.outerWidth(), top : p.top + t.outerHeight()};
|
||||
return {left : p.left - thisOuterWidth + tOuterWidth, top : p.top + tOuterHeight};
|
||||
}
|
||||
|
||||
return {left : p.left, top : p.top + t.outerHeight()};
|
||||
return {left : p.left, top : p.top + tOuterHeight};
|
||||
},
|
||||
|
||||
left : function (t, s) {
|
||||
var p = Foundation.libs.dropdown.dirs._base.call(this, t);
|
||||
var p = Foundation.libs.dropdown.dirs._base.call(this, t, s);
|
||||
var self = Foundation.libs.dropdown,
|
||||
tOuterHeight = t.outerHeight(),
|
||||
tOuterWidth = t.outerWidth(),
|
||||
thisOuterHeight = this.outerHeight(),
|
||||
thisOuterWidth = this.outerWidth();
|
||||
|
||||
this.addClass('drop-left');
|
||||
|
||||
if (p.missLeft == true) {
|
||||
p.left = p.left + this.outerWidth();
|
||||
p.top = p.top + t.outerHeight();
|
||||
if (p.missLeft === true) {
|
||||
p.left = p.left + thisOuterWidth;
|
||||
p.top = p.top + tOuterHeight;
|
||||
this.removeClass('drop-left');
|
||||
}
|
||||
|
||||
return {left : p.left - this.outerWidth(), top : p.top};
|
||||
if (p.missRight === true && p.missLeft === true && p.leftRightFlag == false) {
|
||||
p.left = p.left - tOuterWidth;
|
||||
|
||||
this.removeClass('drop-left');
|
||||
self.adjust_pip(this,t,s,p);
|
||||
}
|
||||
|
||||
return {left : p.left - thisOuterWidth, top : p.top};
|
||||
},
|
||||
|
||||
right : function (t, s) {
|
||||
var p = Foundation.libs.dropdown.dirs._base.call(this, t);
|
||||
var p = Foundation.libs.dropdown.dirs._base.call(this, t, s);
|
||||
var self = Foundation.libs.dropdown,
|
||||
tOuterHeight = t.outerHeight(),
|
||||
tOuterWidth = t.outerWidth(),
|
||||
thisOuterHeight = this.outerHeight(),
|
||||
thisOuterWidth = this.outerWidth();
|
||||
|
||||
this.addClass('drop-right');
|
||||
|
||||
if (p.missRight == true) {
|
||||
p.left = p.left - this.outerWidth();
|
||||
p.top = p.top + t.outerHeight();
|
||||
this.removeClass('drop-right');
|
||||
if (p.missRight === true && p.missLeft == false) {
|
||||
p.left = p.left - thisOuterWidth;
|
||||
p.top = p.top + tOuterHeight;
|
||||
this.removeClass('drop-right');
|
||||
} else {
|
||||
p.triggeredRight = true;
|
||||
p.triggeredRight = true;
|
||||
}
|
||||
|
||||
var self = Foundation.libs.dropdown;
|
||||
|
||||
if (t.outerWidth() < this.outerWidth() || self.small() || this.hasClass(s.mega_menu)) {
|
||||
self.adjust_pip(this, t, s, p);
|
||||
if (p.missLeft === true && p.missRight === true && p.leftRightFlag === false) {
|
||||
p.left = p.left - thisOuterWidth;
|
||||
p.top = p.top + tOuterHeight;
|
||||
this.removeClass('drop-right');
|
||||
p.triggeredRight = false;
|
||||
}
|
||||
|
||||
return {left : p.left + t.outerWidth(), top : p.top};
|
||||
|
||||
if (tOuterWidth < thisOuterWidth || self.small() || this.hasClass(s.mega_menu)) {
|
||||
self.adjust_pip(this,t,s,p);
|
||||
}
|
||||
|
||||
return {left : p.left + tOuterWidth, top : p.top};
|
||||
}
|
||||
},
|
||||
|
||||
// Insert rule to style psuedo elements
|
||||
adjust_pip : function (dropdown, target, settings, position) {
|
||||
if (settings.no_pip === true) return;
|
||||
|
||||
var sheet = Foundation.stylesheet,
|
||||
pip_offset_base = 8;
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
Foundation.libs.equalizer = {
|
||||
name : 'equalizer',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
use_tallest : true,
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
Foundation.libs.interchange = {
|
||||
name : 'interchange',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
cache : {},
|
||||
|
||||
|
@ -49,7 +49,8 @@
|
|||
// });
|
||||
|
||||
if (el !== null && /IMG/.test(el[0].nodeName)) {
|
||||
var orig_path = el[0].src;
|
||||
var orig_path = $.each(el, function(){this.src = path;});
|
||||
// var orig_path = el[0].src;
|
||||
|
||||
if (new RegExp(path, 'i').test(orig_path)) {
|
||||
return;
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
Foundation.libs.joyride = {
|
||||
name : 'joyride',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
defaults : {
|
||||
expose : false, // turn on or off the expose feature
|
||||
modal : true, // Whether to cover page with modal during the tour
|
||||
keyboard : true, // enable left, right and esc keystrokes
|
||||
tip_location : 'bottom', // 'top' or 'bottom' in relation to parent
|
||||
tip_location : 'bottom', // 'top', 'bottom', 'left' or 'right' in relation to parent
|
||||
nub_position : 'auto', // override on a per tooltip bases
|
||||
scroll_speed : 1500, // Page scrolling speed in milliseconds, 0 = no scroll animation
|
||||
scroll_animation : 'linear', // supports 'swing' and 'linear', extend with jQuery UI.
|
||||
|
@ -323,8 +323,8 @@
|
|||
|
||||
this.settings.tip_settings.tip_location_pattern = this.settings.tip_location_patterns[this.settings.tip_settings.tip_location];
|
||||
|
||||
// scroll and hide bg if not modal
|
||||
if (!/body/i.test(this.settings.$target.selector)) {
|
||||
// scroll and hide bg if not modal and not expose
|
||||
if (!/body/i.test(this.settings.$target.selector) && !this.settings.expose) {
|
||||
var joyridemodalbg = $('.joyride-modal-bg');
|
||||
if (/pop/i.test(this.settings.tipAnimation)) {
|
||||
joyridemodalbg.hide();
|
||||
|
@ -500,68 +500,68 @@
|
|||
}
|
||||
|
||||
if (!/body/i.test(this.settings.$target.selector)) {
|
||||
var topAdjustment = this.settings.tip_settings.tipAdjustmentY ? parseInt(this.settings.tip_settings.tipAdjustmentY) : 0,
|
||||
leftAdjustment = this.settings.tip_settings.tipAdjustmentX ? parseInt(this.settings.tip_settings.tipAdjustmentX) : 0;
|
||||
|
||||
if (this.bottom()) {
|
||||
if (this.rtl) {
|
||||
this.settings.$next_tip.css({
|
||||
top : (this.settings.$target.offset().top + nub_height + this.settings.$target.outerHeight() + topAdjustment),
|
||||
left : this.settings.$target.offset().left + this.settings.$target.outerWidth() - this.settings.$next_tip.outerWidth() + leftAdjustment});
|
||||
} else {
|
||||
this.settings.$next_tip.css({
|
||||
top : (this.settings.$target.offset().top + nub_height + this.settings.$target.outerHeight() + topAdjustment),
|
||||
left : this.settings.$target.offset().left + leftAdjustment});
|
||||
}
|
||||
|
||||
this.nub_position($nub, this.settings.tip_settings.nub_position, 'top');
|
||||
|
||||
} else if (this.top()) {
|
||||
if (this.rtl) {
|
||||
this.settings.$next_tip.css({
|
||||
top : (this.settings.$target.offset().top - this.settings.$next_tip.outerHeight() - nub_height + topAdjustment),
|
||||
left : this.settings.$target.offset().left + this.settings.$target.outerWidth() - this.settings.$next_tip.outerWidth()});
|
||||
} else {
|
||||
this.settings.$next_tip.css({
|
||||
top : (this.settings.$target.offset().top - this.settings.$next_tip.outerHeight() - nub_height + topAdjustment),
|
||||
left : this.settings.$target.offset().left + leftAdjustment});
|
||||
}
|
||||
|
||||
this.nub_position($nub, this.settings.tip_settings.nub_position, 'bottom');
|
||||
|
||||
} else if (this.right()) {
|
||||
var topAdjustment = this.settings.tip_settings.tipAdjustmentY ? parseInt(this.settings.tip_settings.tipAdjustmentY) : 0,
|
||||
leftAdjustment = this.settings.tip_settings.tipAdjustmentX ? parseInt(this.settings.tip_settings.tipAdjustmentX) : 0;
|
||||
|
||||
if (this.bottom()) {
|
||||
if (this.rtl) {
|
||||
this.settings.$next_tip.css({
|
||||
top : this.settings.$target.offset().top + topAdjustment,
|
||||
left : (this.settings.$target.outerWidth() + this.settings.$target.offset().left + nub_width + leftAdjustment)});
|
||||
|
||||
this.nub_position($nub, this.settings.tip_settings.nub_position, 'left');
|
||||
|
||||
} else if (this.left()) {
|
||||
|
||||
top : (this.settings.$target.offset().top + nub_height + this.settings.$target.outerHeight() + topAdjustment),
|
||||
left : this.settings.$target.offset().left + this.settings.$target.outerWidth() - this.settings.$next_tip.outerWidth() + leftAdjustment});
|
||||
} else {
|
||||
this.settings.$next_tip.css({
|
||||
top : this.settings.$target.offset().top + topAdjustment,
|
||||
left : (this.settings.$target.offset().left - this.settings.$next_tip.outerWidth() - nub_width + leftAdjustment)});
|
||||
|
||||
this.nub_position($nub, this.settings.tip_settings.nub_position, 'right');
|
||||
|
||||
top : (this.settings.$target.offset().top + nub_height + this.settings.$target.outerHeight() + topAdjustment),
|
||||
left : this.settings.$target.offset().left + leftAdjustment});
|
||||
}
|
||||
|
||||
if (!this.visible(this.corners(this.settings.$next_tip)) && this.settings.attempts < this.settings.tip_settings.tip_location_pattern.length) {
|
||||
|
||||
$nub.removeClass('bottom')
|
||||
.removeClass('top')
|
||||
.removeClass('right')
|
||||
.removeClass('left');
|
||||
|
||||
this.settings.tip_settings.tip_location = this.settings.tip_settings.tip_location_pattern[this.settings.attempts];
|
||||
|
||||
this.settings.attempts++;
|
||||
|
||||
this.pos_default();
|
||||
this.nub_position($nub, this.settings.tip_settings.nub_position, 'top');
|
||||
|
||||
} else if (this.top()) {
|
||||
if (this.rtl) {
|
||||
this.settings.$next_tip.css({
|
||||
top : (this.settings.$target.offset().top - this.settings.$next_tip.outerHeight() - nub_height + topAdjustment),
|
||||
left : this.settings.$target.offset().left + this.settings.$target.outerWidth() - this.settings.$next_tip.outerWidth()});
|
||||
} else {
|
||||
this.settings.$next_tip.css({
|
||||
top : (this.settings.$target.offset().top - this.settings.$next_tip.outerHeight() - nub_height + topAdjustment),
|
||||
left : this.settings.$target.offset().left + leftAdjustment});
|
||||
}
|
||||
|
||||
this.nub_position($nub, this.settings.tip_settings.nub_position, 'bottom');
|
||||
|
||||
} else if (this.right()) {
|
||||
|
||||
this.settings.$next_tip.css({
|
||||
top : this.settings.$target.offset().top + topAdjustment,
|
||||
left : (this.settings.$target.outerWidth() + this.settings.$target.offset().left + nub_width + leftAdjustment)});
|
||||
|
||||
this.nub_position($nub, this.settings.tip_settings.nub_position, 'left');
|
||||
|
||||
} else if (this.left()) {
|
||||
|
||||
this.settings.$next_tip.css({
|
||||
top : this.settings.$target.offset().top + topAdjustment,
|
||||
left : (this.settings.$target.offset().left - this.settings.$next_tip.outerWidth() - nub_width + leftAdjustment)});
|
||||
|
||||
this.nub_position($nub, this.settings.tip_settings.nub_position, 'right');
|
||||
|
||||
}
|
||||
|
||||
if (!this.visible(this.corners(this.settings.$next_tip)) && this.settings.attempts < this.settings.tip_settings.tip_location_pattern.length) {
|
||||
|
||||
$nub.removeClass('bottom')
|
||||
.removeClass('top')
|
||||
.removeClass('right')
|
||||
.removeClass('left');
|
||||
|
||||
this.settings.tip_settings.tip_location = this.settings.tip_settings.tip_location_pattern[this.settings.attempts];
|
||||
|
||||
this.settings.attempts++;
|
||||
|
||||
this.pos_default();
|
||||
|
||||
}
|
||||
|
||||
} else if (this.settings.$li.length) {
|
||||
|
||||
this.pos_modal($nub);
|
||||
|
@ -668,8 +668,8 @@
|
|||
expose.css({
|
||||
top : el.offset().top,
|
||||
left : el.offset().left,
|
||||
width : el.outerWidth(true),
|
||||
height : el.outerHeight(true)
|
||||
width : el.outerWidth(),
|
||||
height : el.outerHeight()
|
||||
});
|
||||
|
||||
exposeCover = $(this.settings.template.expose_cover);
|
||||
|
@ -827,6 +827,10 @@
|
|||
},
|
||||
|
||||
corners : function (el) {
|
||||
if (el.length === 0) {
|
||||
return [false, false, false, false];
|
||||
}
|
||||
|
||||
var w = $(window),
|
||||
window_half = w.height() / 2,
|
||||
//using this to calculate since scroll may not have finished yet.
|
||||
|
@ -924,7 +928,6 @@
|
|||
$('.joyride-close-tip, .joyride-next-tip, .joyride-modal-bg').off('.joyride');
|
||||
$('.joyride-tip-guide, .joyride-modal-bg').remove();
|
||||
clearTimeout(this.settings.automate);
|
||||
this.settings = {};
|
||||
},
|
||||
|
||||
reflow : function () {}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Foundation Responsive Library
|
||||
* http://foundation.zurb.com
|
||||
* Copyright 2014, ZURB
|
||||
* Copyright 2015, ZURB
|
||||
* Free to use under the MIT license.
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
*/
|
||||
|
@ -10,14 +10,12 @@
|
|||
'use strict';
|
||||
|
||||
var header_helpers = function (class_array) {
|
||||
var i = class_array.length;
|
||||
var head = $('head');
|
||||
|
||||
while (i--) {
|
||||
if (head.has('.' + class_array[i]).length === 0) {
|
||||
head.append('<meta class="' + class_array[i] + '" />');
|
||||
head.prepend($.map(class_array, function (class_name) {
|
||||
if (head.has('.' + class_name).length === 0) {
|
||||
return '<meta class="' + class_name + '" />';
|
||||
}
|
||||
}
|
||||
}));
|
||||
};
|
||||
|
||||
header_helpers([
|
||||
|
@ -108,7 +106,7 @@
|
|||
var self = this,
|
||||
bind = function(){
|
||||
var $this = S(this),
|
||||
should_bind_events = !$this.data(self.attr_name(true) + '-init');
|
||||
should_bind_events = !S(self).data(self.attr_name(true) + '-init');
|
||||
$this.data(self.attr_name(true) + '-init', $.extend({}, self.settings, (options || method), self.data_options($this)));
|
||||
|
||||
if (should_bind_events) {
|
||||
|
@ -290,21 +288,30 @@
|
|||
return string;
|
||||
}
|
||||
|
||||
function MediaQuery(selector) {
|
||||
this.selector = selector;
|
||||
this.query = '';
|
||||
}
|
||||
|
||||
MediaQuery.prototype.toString = function () {
|
||||
return this.query || (this.query = S(this.selector).css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''));
|
||||
};
|
||||
|
||||
window.Foundation = {
|
||||
name : 'Foundation',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
media_queries : {
|
||||
'small' : S('.foundation-mq-small').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
|
||||
'small-only' : S('.foundation-mq-small-only').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
|
||||
'medium' : S('.foundation-mq-medium').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
|
||||
'medium-only' : S('.foundation-mq-medium-only').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
|
||||
'large' : S('.foundation-mq-large').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
|
||||
'large-only' : S('.foundation-mq-large-only').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
|
||||
'xlarge' : S('.foundation-mq-xlarge').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
|
||||
'xlarge-only' : S('.foundation-mq-xlarge-only').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, ''),
|
||||
'xxlarge' : S('.foundation-mq-xxlarge').css('font-family').replace(/^[\/\\'"]+|(;\s?})+|[\/\\'"]+$/g, '')
|
||||
'small' : new MediaQuery('.foundation-mq-small'),
|
||||
'small-only' : new MediaQuery('.foundation-mq-small-only'),
|
||||
'medium' : new MediaQuery('.foundation-mq-medium'),
|
||||
'medium-only' : new MediaQuery('.foundation-mq-medium-only'),
|
||||
'large' : new MediaQuery('.foundation-mq-large'),
|
||||
'large-only' : new MediaQuery('.foundation-mq-large-only'),
|
||||
'xlarge' : new MediaQuery('.foundation-mq-xlarge'),
|
||||
'xlarge-only' : new MediaQuery('.foundation-mq-xlarge-only'),
|
||||
'xxlarge' : new MediaQuery('.foundation-mq-xxlarge')
|
||||
},
|
||||
|
||||
stylesheet : $('<style></style>').appendTo('head')[0].sheet,
|
||||
|
@ -335,7 +342,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
S(window).load(function () {
|
||||
S(window).on('load', function () {
|
||||
S(window)
|
||||
.trigger('resize.fndtn.clearing')
|
||||
.trigger('resize.fndtn.dropdown')
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
Foundation.libs['magellan-expedition'] = {
|
||||
name : 'magellan-expedition',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
active_class : 'active',
|
||||
|
@ -32,7 +32,7 @@
|
|||
|
||||
S(self.scope)
|
||||
.off('.magellan')
|
||||
.on('click.fndtn.magellan', '[' + self.add_namespace('data-magellan-arrival') + '] a[href*=#]', function (e) {
|
||||
.on('click.fndtn.magellan', '[' + self.add_namespace('data-magellan-arrival') + '] a[href^="#"]', function (e) {
|
||||
var sameHost = ((this.hostname === location.hostname) || !this.hostname),
|
||||
samePath = self.filterPathname(location.pathname) === self.filterPathname(this.pathname),
|
||||
testHash = this.hash.replace(/(:|\.|\/)/g, '\\$1'),
|
||||
|
@ -59,11 +59,10 @@
|
|||
'scrollTop' : scroll_top
|
||||
}, settings.duration, settings.easing, function () {
|
||||
if (history.pushState) {
|
||||
history.pushState(null, null, anchor.pathname + '#' + hash);
|
||||
history.pushState(null, null, anchor.pathname + anchor.search + '#' + hash);
|
||||
} else {
|
||||
location.hash = anchor.pathname + anchor.search + '#' + hash;
|
||||
}
|
||||
else {
|
||||
location.hash = anchor.pathname + '#' + hash;
|
||||
}
|
||||
});
|
||||
}
|
||||
})
|
||||
|
@ -81,7 +80,7 @@
|
|||
$('[' + this.attr_name() + '=fixed]', self.scope).each(function (idx, el) {
|
||||
var expedition = $(this),
|
||||
settings = expedition.data('magellan-expedition-init'),
|
||||
styles = expedition.attr('styles'), // save styles
|
||||
styles = expedition.attr('style'), // save styles
|
||||
top_offset, fixed_top;
|
||||
|
||||
expedition.attr('style', '');
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
Foundation.libs.offcanvas = {
|
||||
name : 'offcanvas',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
open_method : 'move',
|
||||
|
@ -20,16 +20,22 @@
|
|||
S = self.S,
|
||||
move_class = '',
|
||||
right_postfix = '',
|
||||
left_postfix = '';
|
||||
left_postfix = '',
|
||||
top_postfix = '',
|
||||
bottom_postfix = '';
|
||||
|
||||
if (this.settings.open_method === 'move') {
|
||||
move_class = 'move-';
|
||||
right_postfix = 'right';
|
||||
left_postfix = 'left';
|
||||
top_postfix = 'top';
|
||||
bottom_postfix = 'bottom';
|
||||
} else if (this.settings.open_method === 'overlap_single') {
|
||||
move_class = 'offcanvas-overlap-';
|
||||
right_postfix = 'right';
|
||||
left_postfix = 'left';
|
||||
top_postfix = 'top';
|
||||
bottom_postfix = 'bottom';
|
||||
} else if (this.settings.open_method === 'overlap') {
|
||||
move_class = 'offcanvas-overlap';
|
||||
}
|
||||
|
@ -58,6 +64,7 @@
|
|||
}
|
||||
$('.left-off-canvas-toggle').attr('aria-expanded', 'true');
|
||||
})
|
||||
//end of left canvas
|
||||
.on('click.fndtn.offcanvas', '.right-off-canvas-toggle', function (e) {
|
||||
self.click_toggle_class(e, move_class + left_postfix);
|
||||
if (self.settings.open_method !== 'overlap') {
|
||||
|
@ -81,6 +88,55 @@
|
|||
}
|
||||
$('.right-off-canvas-toggle').attr('aria-expanded', 'true');
|
||||
})
|
||||
//end of right canvas
|
||||
.on('click.fndtn.offcanvas', '.top-off-canvas-toggle', function (e) {
|
||||
self.click_toggle_class(e, move_class + bottom_postfix);
|
||||
if (self.settings.open_method !== 'overlap') {
|
||||
S('.top-submenu').removeClass(move_class + bottom_postfix);
|
||||
}
|
||||
$('.top-off-canvas-toggle').attr('aria-expanded', 'true');
|
||||
})
|
||||
.on('click.fndtn.offcanvas', '.top-off-canvas-menu a', function (e) {
|
||||
var settings = self.get_settings(e);
|
||||
var parent = S(this).parent();
|
||||
|
||||
if (settings.close_on_click && !parent.hasClass('has-submenu') && !parent.hasClass('back')) {
|
||||
self.hide.call(self, move_class + bottom_postfix, self.get_wrapper(e));
|
||||
parent.parent().removeClass(move_class + bottom_postfix);
|
||||
} else if (S(this).parent().hasClass('has-submenu')) {
|
||||
e.preventDefault();
|
||||
S(this).siblings('.top-submenu').toggleClass(move_class + bottom_postfix);
|
||||
} else if (parent.hasClass('back')) {
|
||||
e.preventDefault();
|
||||
parent.parent().removeClass(move_class + bottom_postfix);
|
||||
}
|
||||
$('.top-off-canvas-toggle').attr('aria-expanded', 'true');
|
||||
})
|
||||
//end of top canvas
|
||||
.on('click.fndtn.offcanvas', '.bottom-off-canvas-toggle', function (e) {
|
||||
self.click_toggle_class(e, move_class + top_postfix);
|
||||
if (self.settings.open_method !== 'overlap') {
|
||||
S('.bottom-submenu').removeClass(move_class + top_postfix);
|
||||
}
|
||||
$('.bottom-off-canvas-toggle').attr('aria-expanded', 'true');
|
||||
})
|
||||
.on('click.fndtn.offcanvas', '.bottom-off-canvas-menu a', function (e) {
|
||||
var settings = self.get_settings(e);
|
||||
var parent = S(this).parent();
|
||||
|
||||
if (settings.close_on_click && !parent.hasClass('has-submenu') && !parent.hasClass('back')) {
|
||||
self.hide.call(self, move_class + top_postfix, self.get_wrapper(e));
|
||||
parent.parent().removeClass(move_class + top_postfix);
|
||||
} else if (S(this).parent().hasClass('has-submenu')) {
|
||||
e.preventDefault();
|
||||
S(this).siblings('.bottom-submenu').toggleClass(move_class + top_postfix);
|
||||
} else if (parent.hasClass('back')) {
|
||||
e.preventDefault();
|
||||
parent.parent().removeClass(move_class + top_postfix);
|
||||
}
|
||||
$('.bottom-off-canvas-toggle').attr('aria-expanded', 'true');
|
||||
})
|
||||
//end of bottom
|
||||
.on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) {
|
||||
self.click_remove_class(e, move_class + left_postfix);
|
||||
S('.right-submenu').removeClass(move_class + left_postfix);
|
||||
|
@ -97,6 +153,23 @@
|
|||
self.click_remove_class(e, move_class + right_postfix);
|
||||
$('.right-off-canvas-toggle').attr('aria-expanded', 'false');
|
||||
}
|
||||
})
|
||||
.on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) {
|
||||
self.click_remove_class(e, move_class + top_postfix);
|
||||
S('.bottom-submenu').removeClass(move_class + top_postfix);
|
||||
if (bottom_postfix) {
|
||||
self.click_remove_class(e, move_class + bottom_postfix);
|
||||
S('.top-submenu').removeClass(move_class + top_postfix);
|
||||
}
|
||||
$('.bottom-off-canvas-toggle').attr('aria-expanded', 'true');
|
||||
})
|
||||
.on('click.fndtn.offcanvas', '.exit-off-canvas', function (e) {
|
||||
self.click_remove_class(e, move_class + top_postfix);
|
||||
$('.top-off-canvas-toggle').attr('aria-expanded', 'false');
|
||||
if (bottom_postfix) {
|
||||
self.click_remove_class(e, move_class + bottom_postfix);
|
||||
$('.bottom-off-canvas-toggle').attr('aria-expanded', 'false');
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
|
|
|
@ -407,7 +407,7 @@
|
|||
Foundation.libs.orbit = {
|
||||
name : 'orbit',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
animation : 'slide',
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
;(function ($, window, document, undefined) {
|
||||
'use strict';
|
||||
|
||||
var openModals = [];
|
||||
|
||||
Foundation.libs.reveal = {
|
||||
name : 'reveal',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
locked : false,
|
||||
|
||||
|
@ -17,6 +19,7 @@
|
|||
multiple_opened : false,
|
||||
bg_class : 'reveal-modal-bg',
|
||||
root_element : 'body',
|
||||
no_scroll: false,
|
||||
open : function(){},
|
||||
opened : function(){},
|
||||
close : function(){},
|
||||
|
@ -47,7 +50,7 @@
|
|||
S = self.S;
|
||||
|
||||
S(this.scope)
|
||||
.off('.reveal')
|
||||
.off('.fndtn.reveal')
|
||||
.on('click.fndtn.reveal', '[' + this.add_namespace('data-reveal-id') + ']:not([disabled])', function (e) {
|
||||
e.preventDefault();
|
||||
|
||||
|
@ -155,7 +158,7 @@
|
|||
settings = settings || this.settings;
|
||||
|
||||
|
||||
if (modal.hasClass('open') && target.attr('data-reveal-id') == modal.attr('id')) {
|
||||
if (modal.hasClass('open') && target !== undefined && target.attr('data-reveal-id') == modal.attr('id')) {
|
||||
return self.close(modal);
|
||||
}
|
||||
|
||||
|
@ -169,6 +172,14 @@
|
|||
|
||||
modal.attr('tabindex','0').attr('aria-hidden','false');
|
||||
|
||||
if(settings.no_scroll){//added 10/9/15, prevents annoying scroll positioning bug with position: absolute; reveals
|
||||
var $body = $('body');
|
||||
$body.on('open.fndtn.reveal', function(){
|
||||
$body.css('overflow', 'hidden')
|
||||
.off('open.fndtn.reveal');
|
||||
});
|
||||
}
|
||||
|
||||
this.key_up_on(modal); // PATCH #3: turning on key up capture only when a reveal window is open
|
||||
|
||||
// Prevent namespace event from triggering twice
|
||||
|
@ -176,7 +187,8 @@
|
|||
if (e.namespace !== 'fndtn.reveal') return;
|
||||
});
|
||||
|
||||
modal.on('open.fndtn.reveal').trigger('open.fndtn.reveal');
|
||||
modal.trigger('open.fndtn.reveal');
|
||||
|
||||
|
||||
if (open_modal.length < 1) {
|
||||
this.toggle_bg(modal, true);
|
||||
|
@ -188,16 +200,25 @@
|
|||
};
|
||||
}
|
||||
|
||||
if (typeof ajax_settings === 'undefined' || !ajax_settings.url) {
|
||||
if (open_modal.length > 0) {
|
||||
if (settings.multiple_opened) {
|
||||
var openModal = function() {
|
||||
if(open_modal.length > 0) {
|
||||
if(settings.multiple_opened) {
|
||||
self.to_back(open_modal);
|
||||
} else {
|
||||
self.hide(open_modal, settings.css.close);
|
||||
}
|
||||
}
|
||||
|
||||
this.show(modal, settings.css.open);
|
||||
// bl: add the open_modal that isn't already in the background to the openModals array
|
||||
if(settings.multiple_opened) {
|
||||
openModals.push(modal);
|
||||
}
|
||||
|
||||
self.show(modal, settings.css.open);
|
||||
};
|
||||
|
||||
if (typeof ajax_settings === 'undefined' || !ajax_settings.url) {
|
||||
openModal();
|
||||
} else {
|
||||
var old_success = typeof ajax_settings.success !== 'undefined' ? ajax_settings.success : null;
|
||||
$.extend(ajax_settings, {
|
||||
|
@ -218,14 +239,7 @@
|
|||
self.S(modal).foundation('section', 'reflow');
|
||||
self.S(modal).children().foundation();
|
||||
|
||||
if (open_modal.length > 0) {
|
||||
if (settings.multiple_opened) {
|
||||
self.to_back(open_modal);
|
||||
} else {
|
||||
self.hide(open_modal, settings.css.close);
|
||||
}
|
||||
}
|
||||
self.show(modal, settings.css.open);
|
||||
openModal();
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -252,6 +266,14 @@
|
|||
|
||||
modal.removeAttr('tabindex','0').attr('aria-hidden','true');
|
||||
|
||||
if(settings.no_scroll){//added 10/9/15, prevents annoying scroll positioning bug with position: absolute; reveals
|
||||
var $body = $('body');
|
||||
$body.on('close.fndtn.reveal', function(){
|
||||
$body.css('overflow', 'auto')
|
||||
.off('close.fndtn.reveal');
|
||||
});
|
||||
}
|
||||
|
||||
this.locked = true;
|
||||
this.key_up_off(modal); // PATCH #3: turning on key up capture only when a reveal window is open
|
||||
|
||||
|
@ -263,8 +285,27 @@
|
|||
}
|
||||
|
||||
if (settings.multiple_opened) {
|
||||
var isCurrent = modal.is(':not(.toback)');
|
||||
self.hide(modal, settings.css.close, settings);
|
||||
self.to_front($($.makeArray(open_modals).reverse()[1]));
|
||||
if(isCurrent) {
|
||||
// remove the last modal since it is now closed
|
||||
openModals.pop();
|
||||
} else {
|
||||
// if this isn't the current modal, then find it in the array and remove it
|
||||
openModals = $.grep(openModals, function(elt) {
|
||||
var isThis = elt[0]===modal[0];
|
||||
if(isThis) {
|
||||
// since it's not currently in the front, put it in the front now that it is hidden
|
||||
// so that if it's re-opened, it won't be .toback
|
||||
self.to_front(modal);
|
||||
}
|
||||
return !isThis;
|
||||
});
|
||||
}
|
||||
// finally, show the next modal in the stack, if there is one
|
||||
if(openModals.length>0) {
|
||||
self.to_front(openModals[openModals.length - 1]);
|
||||
}
|
||||
} else {
|
||||
self.hide(open_modals, settings.css.close, settings);
|
||||
}
|
||||
|
@ -337,8 +378,9 @@
|
|||
}, settings.animation_speed / 2);
|
||||
}
|
||||
|
||||
css.top = $(window).scrollTop() + el.data('css-top') + 'px';
|
||||
|
||||
if (animData.fade) {
|
||||
css.top = $(window).scrollTop() + el.data('css-top') + 'px';
|
||||
var end_css = {opacity: 1};
|
||||
|
||||
return setTimeout(function () {
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
Foundation.libs.slider = {
|
||||
name : 'slider',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
start : 0,
|
||||
end : 100,
|
||||
step : 1,
|
||||
precision : null,
|
||||
precision : 0,
|
||||
initial : null,
|
||||
display_selector : '',
|
||||
vertical : false,
|
||||
|
@ -28,7 +28,6 @@
|
|||
|
||||
events : function () {
|
||||
var self = this;
|
||||
|
||||
$(this.scope)
|
||||
.off('.slider')
|
||||
.on('mousedown.fndtn.slider touchstart.fndtn.slider pointerdown.fndtn.slider',
|
||||
|
@ -53,6 +52,23 @@
|
|||
}
|
||||
})
|
||||
.on('mouseup.fndtn.slider touchend.fndtn.slider pointerup.fndtn.slider', function (e) {
|
||||
if(!self.cache.active) {
|
||||
// if the user has just clicked into the slider without starting to drag the handle
|
||||
var slider = $(e.target).attr('role') === 'slider' ? $(e.target) : $(e.target).closest('.range-slider').find("[role='slider']");
|
||||
|
||||
if (slider.length && (!slider.parent().hasClass('disabled') && !slider.parent().attr('disabled'))) {
|
||||
self.set_active_slider(slider);
|
||||
if ($.data(self.cache.active[0], 'settings').vertical) {
|
||||
var scroll_offset = 0;
|
||||
if (!e.pageY) {
|
||||
scroll_offset = window.scrollY;
|
||||
}
|
||||
self.calculate_position(self.cache.active, self.get_cursor_position(e, 'y') + scroll_offset);
|
||||
} else {
|
||||
self.calculate_position(self.cache.active, self.get_cursor_position(e, 'x'));
|
||||
}
|
||||
}
|
||||
}
|
||||
self.remove_active_slider();
|
||||
})
|
||||
.on('change.fndtn.slider', function (e) {
|
||||
|
@ -72,9 +88,8 @@
|
|||
|
||||
if (settings.display_selector != '') {
|
||||
$(settings.display_selector).each(function(){
|
||||
if (this.hasOwnProperty('value')) {
|
||||
$(this).change(function(){
|
||||
// is there a better way to do this?
|
||||
if ($(this).attr('value')) {
|
||||
$(this).off('change').on('change', function () {
|
||||
slider.foundation("slider", "set_value", $(this).val());
|
||||
});
|
||||
}
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
Foundation.libs.tab = {
|
||||
name : 'tab',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
active_class : 'active',
|
||||
|
@ -20,16 +20,12 @@
|
|||
var self = this,
|
||||
S = this.S;
|
||||
|
||||
// Store the default active tabs which will be referenced when the
|
||||
// location hash is absent, as in the case of navigating the tabs and
|
||||
// returning to the first viewing via the browser Back button.
|
||||
S('[' + this.attr_name() + '] > .active > a', this.scope).each(function () {
|
||||
self.default_tab_hashes.push(this.hash);
|
||||
});
|
||||
|
||||
// store the initial href, which is used to allow correct behaviour of the
|
||||
// browser back button when deep linking is turned on.
|
||||
self.entry_location = window.location.href;
|
||||
// Store the default active tabs which will be referenced when the
|
||||
// location hash is absent, as in the case of navigating the tabs and
|
||||
// returning to the first viewing via the browser Back button.
|
||||
S('[' + this.attr_name() + '] > .active > a', this.scope).each(function () {
|
||||
self.default_tab_hashes.push(this.hash);
|
||||
});
|
||||
|
||||
this.bindings(method, options);
|
||||
this.handle_location_hash_change();
|
||||
|
@ -40,26 +36,29 @@
|
|||
S = this.S;
|
||||
|
||||
var usual_tab_behavior = function (e, target) {
|
||||
var settings = S(target).closest('[' + self.attr_name() + ']').data(self.attr_name(true) + '-init');
|
||||
if (!settings.is_hover || Modernizr.touch) {
|
||||
var settings = S(target).closest('[' + self.attr_name() + ']').data(self.attr_name(true) + '-init');
|
||||
if (!settings.is_hover || Modernizr.touch) {
|
||||
// if user did not pressed tab key, prevent default action
|
||||
var keyCode = e.keyCode || e.which;
|
||||
if (keyCode !== 9) {
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
self.toggle_active_tab(S(target).parent());
|
||||
}
|
||||
};
|
||||
self.toggle_active_tab(S(target).parent());
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
S(this.scope)
|
||||
.off('.tab')
|
||||
// Key event: focus/tab key
|
||||
.on('keydown.fndtn.tab', '[' + this.attr_name() + '] > * > a', function(e) {
|
||||
var el = this;
|
||||
var keyCode = e.keyCode || e.which;
|
||||
// if user pressed tab key
|
||||
if (keyCode == 9) {
|
||||
e.preventDefault();
|
||||
// TODO: Change usual_tab_behavior into accessibility function?
|
||||
usual_tab_behavior(e, el);
|
||||
}
|
||||
// if user pressed tab key
|
||||
if (keyCode === 13 || keyCode === 32) { // enter or space
|
||||
var el = this;
|
||||
usual_tab_behavior(e, el);
|
||||
}
|
||||
})
|
||||
// Click event: tab title
|
||||
.on('click.fndtn.tab', '[' + this.attr_name() + '] > * > a', function(e) {
|
||||
|
@ -103,19 +102,19 @@
|
|||
var hash_element = S(hash);
|
||||
if (hash_element.hasClass('content') && hash_element.parent().hasClass('tabs-content')) {
|
||||
// Tab content div
|
||||
self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=' + hash + ']').parent());
|
||||
self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=\\' + hash + ']').parent());
|
||||
} else {
|
||||
// Not the tab content div. If inside the tab content, find the
|
||||
// containing tab and toggle it as active.
|
||||
var hash_tab_container_id = hash_element.closest('.content').attr('id');
|
||||
if (hash_tab_container_id != undefined) {
|
||||
self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=#' + hash_tab_container_id + ']').parent(), hash);
|
||||
self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=\\#' + hash_tab_container_id + ']').parent(), hash);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// Reference the default tab hashes which were initialized in the init function
|
||||
for (var ind = 0; ind < self.default_tab_hashes.length; ind++) {
|
||||
self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=' + self.default_tab_hashes[ind] + ']').parent());
|
||||
self.toggle_active_tab($('[' + self.attr_name() + '] > * > a[href=\\' + self.default_tab_hashes[ind] + ']').parent());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -181,10 +180,9 @@
|
|||
go_to_hash = function(hash) {
|
||||
// This function allows correct behaviour of the browser's back button when deep linking is enabled. Without it
|
||||
// the user would get continually redirected to the default hash.
|
||||
var is_entry_location = window.location.href === self.entry_location,
|
||||
default_hash = settings.scroll_to_content ? self.default_tab_hashes[0] : is_entry_location ? window.location.hash :'fndtn-' + self.default_tab_hashes[0].replace('#', '')
|
||||
var default_hash = settings.scroll_to_content ? self.default_tab_hashes[0] : 'fndtn-' + self.default_tab_hashes[0].replace('#', '');
|
||||
|
||||
if (!(is_entry_location && hash === default_hash)) {
|
||||
if (hash !== default_hash || window.location.hash) {
|
||||
window.location.hash = hash;
|
||||
}
|
||||
};
|
||||
|
@ -224,8 +222,8 @@
|
|||
tab.addClass(settings.active_class).triggerHandler('opened');
|
||||
tab_link.attr({'aria-selected' : 'true', tabindex : 0});
|
||||
siblings.removeClass(settings.active_class)
|
||||
siblings.find('a').attr({'aria-selected' : 'false', tabindex : -1});
|
||||
target.siblings().removeClass(settings.active_class).attr({'aria-hidden' : 'true', tabindex : -1});
|
||||
siblings.find('a').attr({'aria-selected' : 'false'/*, tabindex : -1*/});
|
||||
target.siblings().removeClass(settings.active_class).attr({'aria-hidden' : 'true'/*, tabindex : -1*/});
|
||||
target.addClass(settings.active_class).attr('aria-hidden', 'false').removeAttr('tabindex');
|
||||
settings.callback(tab);
|
||||
target.triggerHandler('toggled', [target]);
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
Foundation.libs.tooltip = {
|
||||
name : 'tooltip',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
additional_inheritable_classes : [],
|
||||
|
@ -13,6 +13,8 @@
|
|||
touch_close_text : 'Tap To Close',
|
||||
disable_for_touch : false,
|
||||
hover_delay : 200,
|
||||
fade_in_duration : 150,
|
||||
fade_out_duration : 150,
|
||||
show_on : 'all',
|
||||
tip_template : function (selector, content) {
|
||||
return '<span data-selector="' + selector + '" id="' + selector + '" class="'
|
||||
|
@ -192,7 +194,7 @@
|
|||
tip_template = window[settings.tip_template];
|
||||
}
|
||||
|
||||
var $tip = $(tip_template(this.selector($target), $('<div></div>').html($target.attr('title')).html())),
|
||||
var $tip = $(tip_template(this.selector($target), $('<div></div>').html($target.attr('title')).text())),
|
||||
classes = this.inheritable_classes($target);
|
||||
|
||||
$tip.addClass(classes).appendTo(settings.append_to);
|
||||
|
@ -208,14 +210,14 @@
|
|||
},
|
||||
|
||||
reposition : function (target, tip, classes) {
|
||||
var width, nub, nubHeight, nubWidth, column, objPos;
|
||||
var width, nub, nubHeight, nubWidth, objPos;
|
||||
|
||||
tip.css('visibility', 'hidden').show();
|
||||
|
||||
width = target.data('width');
|
||||
nub = tip.children('.nub');
|
||||
nubHeight = nub.outerHeight();
|
||||
nubWidth = nub.outerHeight();
|
||||
nubWidth = nub.outerWidth();
|
||||
|
||||
if (this.small()) {
|
||||
tip.css({'width' : '100%'});
|
||||
|
@ -231,39 +233,46 @@
|
|||
'right' : (right) ? right : 'auto'
|
||||
}).end();
|
||||
};
|
||||
|
||||
var o_top = target.offset().top;
|
||||
var o_left = target.offset().left;
|
||||
var outerHeight = target.outerHeight();
|
||||
|
||||
objPos(tip, (target.offset().top + target.outerHeight() + 10), 'auto', 'auto', target.offset().left);
|
||||
objPos(tip, (o_top + outerHeight + 10), 'auto', 'auto', o_left);
|
||||
|
||||
if (this.small()) {
|
||||
objPos(tip, (target.offset().top + target.outerHeight() + 10), 'auto', 'auto', 12.5, $(this.scope).width());
|
||||
objPos(tip, (o_top + outerHeight + 10), 'auto', 'auto', 12.5, $(this.scope).width());
|
||||
tip.addClass('tip-override');
|
||||
objPos(nub, -nubHeight, 'auto', 'auto', target.offset().left);
|
||||
objPos(nub, -nubHeight, 'auto', 'auto', o_left);
|
||||
} else {
|
||||
var left = target.offset().left;
|
||||
|
||||
if (Foundation.rtl) {
|
||||
nub.addClass('rtl');
|
||||
left = target.offset().left + target.outerWidth() - tip.outerWidth();
|
||||
o_left = o_left + target.outerWidth() - tip.outerWidth();
|
||||
}
|
||||
|
||||
objPos(tip, (target.offset().top + target.outerHeight() + 10), 'auto', 'auto', left);
|
||||
objPos(tip, (o_top + outerHeight + 10), 'auto', 'auto', o_left);
|
||||
// reset nub from small styles, if they've been applied
|
||||
if (nub.attr('style')) {
|
||||
nub.removeAttr('style');
|
||||
}
|
||||
|
||||
tip.removeClass('tip-override');
|
||||
|
||||
var tip_outerHeight = tip.outerHeight();
|
||||
|
||||
if (classes && classes.indexOf('tip-top') > -1) {
|
||||
if (Foundation.rtl) {
|
||||
nub.addClass('rtl');
|
||||
}
|
||||
objPos(tip, (target.offset().top - tip.outerHeight()), 'auto', 'auto', left)
|
||||
objPos(tip, (o_top - tip_outerHeight), 'auto', 'auto', o_left)
|
||||
.removeClass('tip-override');
|
||||
} else if (classes && classes.indexOf('tip-left') > -1) {
|
||||
objPos(tip, (target.offset().top + (target.outerHeight() / 2) - (tip.outerHeight() / 2)), 'auto', 'auto', (target.offset().left - tip.outerWidth() - nubHeight))
|
||||
objPos(tip, (o_top + (outerHeight / 2) - (tip_outerHeight / 2)), 'auto', 'auto', (o_left - tip.outerWidth() - nubHeight))
|
||||
.removeClass('tip-override');
|
||||
nub.removeClass('rtl');
|
||||
} else if (classes && classes.indexOf('tip-right') > -1) {
|
||||
objPos(tip, (target.offset().top + (target.outerHeight() / 2) - (tip.outerHeight() / 2)), 'auto', 'auto', (target.offset().left + target.outerWidth() + nubHeight))
|
||||
objPos(tip, (o_top + (outerHeight / 2) - (tip_outerHeight / 2)), 'auto', 'auto', (o_left + target.outerWidth() + nubHeight))
|
||||
.removeClass('tip-override');
|
||||
nub.removeClass('rtl');
|
||||
}
|
||||
|
@ -307,19 +316,19 @@
|
|||
|
||||
show : function ($target) {
|
||||
var $tip = this.getTip($target);
|
||||
|
||||
if ($target.data('tooltip-open-event-type') == 'touch') {
|
||||
this.convert_to_touch($target);
|
||||
}
|
||||
|
||||
this.reposition($target, $tip, $target.attr('class'));
|
||||
$target.addClass('open');
|
||||
$tip.fadeIn(150);
|
||||
$tip.fadeIn(this.settings.fade_in_duration);
|
||||
},
|
||||
|
||||
hide : function ($target) {
|
||||
var $tip = this.getTip($target);
|
||||
$tip.fadeOut(150, function () {
|
||||
|
||||
$tip.fadeOut(this.settings.fade_out_duration, function () {
|
||||
$tip.find('.tap-to-close').remove();
|
||||
$tip.off('click.fndtn.tooltip.tapclose MSPointerDown.fndtn.tapclose');
|
||||
$target.removeClass('open');
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
Foundation.libs.topbar = {
|
||||
name : 'topbar',
|
||||
|
||||
version : '5.5.2',
|
||||
version : '5.5.3master',
|
||||
|
||||
settings : {
|
||||
index : 0,
|
||||
|
@ -134,7 +134,7 @@
|
|||
}
|
||||
}
|
||||
} else {
|
||||
if (self.is_sticky(topbar, topbar.parent(), settings)) {
|
||||
if (self.is_sticky(topbar, topbar.parent(), settings) && topbar.parent().offset().top === 0) {
|
||||
topbar.parent().addClass('fixed');
|
||||
}
|
||||
|
||||
|
@ -165,17 +165,17 @@
|
|||
self.toggle(this);
|
||||
})
|
||||
.on('click.fndtn.topbar contextmenu.fndtn.topbar', '.top-bar .top-bar-section li a[href^="#"],[' + this.attr_name() + '] .top-bar-section li a[href^="#"]', function (e) {
|
||||
var li = $(this).closest('li'),
|
||||
topbar = li.closest('[' + self.attr_name() + ']'),
|
||||
settings = topbar.data(self.attr_name(true) + '-init');
|
||||
var li = $(this).closest('li'),
|
||||
topbar = li.closest('[' + self.attr_name() + ']'),
|
||||
settings = topbar.data(self.attr_name(true) + '-init');
|
||||
|
||||
if (settings.dropdown_autoclose && settings.is_hover) {
|
||||
var hoverLi = $(this).closest('.hover');
|
||||
hoverLi.removeClass('hover');
|
||||
}
|
||||
if (self.breakpoint() && !li.hasClass('back') && !li.hasClass('has-dropdown')) {
|
||||
self.toggle();
|
||||
}
|
||||
if (settings.dropdown_autoclose && settings.is_hover) {
|
||||
var hoverLi = $(this).closest('.hover');
|
||||
hoverLi.removeClass('hover');
|
||||
}
|
||||
if (self.breakpoint() && !li.hasClass('back') && !li.hasClass('has-dropdown')) {
|
||||
self.toggle();
|
||||
}
|
||||
|
||||
})
|
||||
.on('click.fndtn.topbar', '[' + this.attr_name() + '] li.has-dropdown', function (e) {
|
||||
|
@ -199,7 +199,7 @@
|
|||
|
||||
e.stopImmediatePropagation();
|
||||
|
||||
if (li.hasClass('hover')) {
|
||||
if (li.hasClass('hover') && (settings.is_hover || li.children('a').first().hasClass('last-clicked'))) {
|
||||
li
|
||||
.removeClass('hover')
|
||||
.find('li')
|
||||
|
@ -214,6 +214,10 @@
|
|||
|
||||
if (target[0].nodeName === 'A' && target.parent().hasClass('has-dropdown')) {
|
||||
e.preventDefault();
|
||||
if(!settings.is_hover){
|
||||
topbar.find('.last-clicked').removeClass('last-clicked');
|
||||
target.addClass('last-clicked');
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
@ -245,19 +249,25 @@
|
|||
|
||||
S(window).off('.topbar').on('resize.fndtn.topbar', self.throttle(function () {
|
||||
self.resize.call(self);
|
||||
}, 50)).trigger('resize.fndtn.topbar').load(function () {
|
||||
}, 50)).trigger('resize.fndtn.topbar').on('load', function () {
|
||||
// Ensure that the offset is calculated after all of the pages resources have loaded
|
||||
S(this).trigger('resize.fndtn.topbar');
|
||||
});
|
||||
|
||||
S('body').off('.topbar').on('click.fndtn.topbar', function (e) {
|
||||
var parent = S(e.target).closest('li').closest('li.hover');
|
||||
var parent = S(e.target).closest('li').closest('li.hover'),
|
||||
topbar = S(e.target).closest('[' + self.attr_name() + ']'),
|
||||
settings = topbar.data(self.attr_name(true) + '-init');
|
||||
|
||||
if (parent.length > 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
S('[' + self.attr_name() + '] li.hover').removeClass('hover');
|
||||
|
||||
if(settings && !settings.is_hover){
|
||||
S('[' + self.attr_name() + '] a.last-clicked').removeClass('last-clicked');
|
||||
}
|
||||
});
|
||||
|
||||
// Go up a level on Click
|
||||
|
@ -298,15 +308,14 @@
|
|||
$(this).parents('.has-dropdown').addClass('hover');
|
||||
})
|
||||
.blur(function () {
|
||||
$(this).parents('.has-dropdown').removeClass('hover');
|
||||
$(this).removeClass('last-clicked').parents('.has-dropdown').removeClass('hover');
|
||||
});
|
||||
},
|
||||
|
||||
resize : function () {
|
||||
var self = this;
|
||||
self.S('[' + this.attr_name() + ']').each(function () {
|
||||
var topbar = self.S(this),
|
||||
settings = topbar.data(self.attr_name(true) + '-init');
|
||||
var topbar = self.S(this);
|
||||
|
||||
var stickyContainer = topbar.parent('.' + self.settings.sticky_class);
|
||||
var stickyOffset;
|
||||
|
@ -324,7 +333,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
if (self.is_sticky(topbar, stickyContainer, settings)) {
|
||||
if (self.is_sticky(topbar, stickyContainer, self.settings)) {
|
||||
if (stickyContainer.hasClass('fixed')) {
|
||||
// Remove the fixed to allow for correct calculation of the offset.
|
||||
stickyContainer.removeClass('fixed');
|
||||
|
@ -377,14 +386,14 @@
|
|||
|
||||
if (!$dropdown.find('.title.back').length) {
|
||||
|
||||
if (settings.mobile_show_parent_link == true && url) {
|
||||
if (settings.mobile_show_parent_link === true && url) {
|
||||
$titleLi = $('<li class="title back js-generated"><h5><a href="javascript:void(0)"></a></h5></li><li class="parent-link hide-for-medium-up"><a class="parent-link js-generated" href="' + url + '">' + $link.html() +'</a></li>');
|
||||
} else {
|
||||
$titleLi = $('<li class="title back js-generated"><h5><a href="javascript:void(0)"></a></h5>');
|
||||
}
|
||||
|
||||
// Copy link to subnav
|
||||
if (settings.custom_back_text == true) {
|
||||
if (settings.custom_back_text === true) {
|
||||
$('h5>a', $titleLi).html(settings.back_text);
|
||||
} else {
|
||||
$('h5>a', $titleLi).html('« ' + $link.html());
|
||||
|
|
|
@ -1,11 +1,6 @@
|
|||
|
||||
jQuery(document).ready(function() {
|
||||
// Add the 'less than IE9' class to appropriate version of IE by checking for their support of cssFloat (true in v9)
|
||||
if (!jQuery.support.cssFloat) { jQuery('html').addClass('lt-ie9').addClass('no-js'); }
|
||||
|
||||
|
||||
jQuery(document).foundation(function (response) {
|
||||
// console.log(response.errors); < this line will produce error in ie9!
|
||||
if (window.console) console.log(response.errors);
|
||||
});
|
||||
|
||||
|
@ -16,63 +11,4 @@ jQuery(document).ready(function() {
|
|||
jQuery("#pt-notifications-alert").prependTo("#echo-notifications-alerts");
|
||||
jQuery("#pt-notifications-notice").prependTo("#echo-notifications-notice");
|
||||
|
||||
// Append font-awesome icons
|
||||
jQuery('[id^=ca-nstab] a').prepend('<div id="drop-icon"><i class="fa fa-file fa-fw"></i></div>')
|
||||
jQuery('li#ca-talk a').prepend('<div id="drop-icon"><i class="fa fa-comments-o fa-fw"></i></div>')
|
||||
jQuery('li#ca-form_edit a').prepend('<div id="drop-icon"><i class="fa fa-pencil-square fa-fw"></i></div>')
|
||||
jQuery('li#ca-history a').prepend('<div id="drop-icon"><i class="fa fa-archive fa-fw"></i></div>')
|
||||
jQuery('li#ca-delete a').prepend('<div id="drop-icon"><i class="fa fa-trash-o fa-fw"></i></div>')
|
||||
jQuery('li#ca-move a').prepend('<div id="drop-icon"><i class="fa fa-truck fa-fw"></i></div>')
|
||||
jQuery('li#ca-protect a').prepend('<div id="drop-icon"><i class="fa fa-shield fa-fw"></i></div>')
|
||||
jQuery('li#ca-unprotect a').prepend('<div id="drop-icon"><i class="fa fa-shield fa-fw"></i></div>')
|
||||
jQuery('li#ca-watch a').prepend('<div id="drop-icon"><i class="fa fa-star-o fa-fw"></i></div>')
|
||||
jQuery('li#ca-unwatch a').prepend('<div id="drop-icon"><i class="fa fa-star fa-fw"></i></div>')
|
||||
jQuery('li#ca-purge a').prepend('<div id="drop-icon"><i class="fa fa-refresh fa-fw"></i></div>')
|
||||
jQuery('li#ca-undelete a').prepend('<div id="drop-icon"><i class="fa fa-undo fa-fw"></i></div>')
|
||||
jQuery('li#ca-ask_delete_permanently a').prepend('<div id="drop-icon"><i class="fa fa-cut fa-fw"></i></div>')
|
||||
|
||||
if ( jQuery( '#ca-addsection' ).length ) {
|
||||
jQuery('li#ca-addsection a').html('<div id="drop-icon"><i class="fa fa-plus fa-fw"></i></div>' + jQuery('li#ca-addsection a').attr('title').replace(/\[.+/g,""))
|
||||
}
|
||||
|
||||
jQuery('li#pt-uls a').prepend('<div id="drop-icon"><i class="fa fa-book fa-fw"></i></div>')
|
||||
jQuery('li#pt-userpage a').prepend('<div id="drop-icon"><i class="fa fa-user fa-fw"></i></div>')
|
||||
jQuery('li#pt-mytalk a').prepend('<div id="drop-icon"><i class="fa fa-comments fa-fw"></i></div>')
|
||||
jQuery('li#pt-adminlinks a').prepend('<div id="drop-icon"><i class="fa fa-bolt fa-fw"></i></div>')
|
||||
jQuery('li#pt-preferences a').prepend('<div id="drop-icon"><i class="fa fa-ellipsis-h fa-fw"></i></div>')
|
||||
jQuery('li#pt-watchlist a').prepend('<div id="drop-icon"><i class="fa fa-th-list fa-fw"></i></div>')
|
||||
jQuery('li#pt-mycontris a').prepend('<div id="drop-icon"><i class="fa fa-smile-o fa-fw"></i></div>')
|
||||
jQuery('li#pt-logout a').prepend('<div id="drop-icon"><i class="fa fa-power-off fa-fw"></i></div>')
|
||||
|
||||
jQuery('li#t-smwbrowselink a').prepend('<div id="drop-icon"><i class="fa fa-eye fa-fw"></i></div>')
|
||||
jQuery('li#t-whatlinkshere a').prepend('<div id="drop-icon"><i class="fa fa-arrows fa-fw"></i></div>')
|
||||
jQuery('li#t-blockip a').prepend('<div id="drop-icon"><i class="fa fa-ban fa-fw"></i></div>')
|
||||
jQuery('li#t-recentchangeslinked a').prepend('<div id="drop-icon"><i class="fa fa-bars fa-fw"></i></div>')
|
||||
jQuery('li#t-contributions a').prepend('<div id="drop-icon"><i class="fa fa-smile-o fa-fw"></i></div>')
|
||||
jQuery('li#t-log a').prepend('<div id="drop-icon"><i class="fa fa-bars fa-fw"></i></div>')
|
||||
jQuery('li#t-emailuser a').prepend('<div id="drop-icon"><i class="fa fa-envelope fa-fw"></i></div>')
|
||||
jQuery('li#t-userrights a').prepend('<div id="drop-icon"><i class="fa fa-gavel fa-fw"></i></div>')
|
||||
jQuery('li#t-upload a').prepend('<div id="drop-icon"><i class="fa fa-upload fa-fw"></i></div>')
|
||||
jQuery('li#t-specialpages a').prepend('<div id="drop-icon"><i class="fa fa-magic fa-fw"></i></div>')
|
||||
jQuery('li#t-print a').prepend('<div id="drop-icon"><i class="fa fa-print fa-fw"></i></div>')
|
||||
jQuery('li#t-permalink a').prepend('<div id="drop-icon"><i class="fa fa-dot-circle-o fa-fw"></i></div>')
|
||||
jQuery('li#t-info a').prepend('<div id="drop-icon"><i class="fa fa-info fa-fw"></i></div>')
|
||||
jQuery('li#t-cite a').prepend('<div id="drop-icon"><i class="fa fa-quote-left fa-fw"></i></div>')
|
||||
jQuery('li#feedlinks a').prepend('<div id="drop-icon"><i class="fa fa-rss fa-fw"></i></div>')
|
||||
|
||||
jQuery('li#n-recentchanges a').prepend('<div id="drop-icon"><i class="fa fa-tasks fa-fw"></i></div>')
|
||||
jQuery('li#n-help a').prepend('<div id="drop-icon"><i class="fa fa-question fa-fw"></i></div>')
|
||||
jQuery('li#n-randompage a').prepend('<div id="drop-icon"><i class="fa fa-random fa-fw"></i></div>')
|
||||
|
||||
|
||||
// Turn categories into labels
|
||||
jQuery('#mw-normal-catlinks ul li a').addClass('label');
|
||||
|
||||
});
|
||||
|
||||
// Have to wait until the window is fully loaded because of Visual Editor to prepend icons for editing
|
||||
jQuery(window).load(function() {
|
||||
jQuery('li#ca-ve-edit a').prepend('<div id="drop-icon"><i class="fa fa-pencil fa-fw"></i></div>')
|
||||
jQuery('li#ca-viewsource a').prepend('<div id="drop-icon"><i class="fa fa-book fa-fw"></i></div>')
|
||||
jQuery('li#ca-edit a').prepend('<div id="drop-icon"><i class="fa fa-pencil-square-o fa-fw"></i></div>')
|
||||
});
|
|
@ -1,8 +0,0 @@
|
|||
/*!
|
||||
* jQuery Cookie Plugin v1.4.1
|
||||
* https://github.com/carhartl/jquery-cookie
|
||||
*
|
||||
* Copyright 2013 Klaus Hartl
|
||||
* Released under the MIT license
|
||||
*/
|
||||
!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports?require("jquery"):jQuery)}(function(a){function b(a){return h.raw?a:encodeURIComponent(a)}function c(a){return h.raw?a:decodeURIComponent(a)}function d(a){return b(h.json?JSON.stringify(a):String(a))}function e(a){0===a.indexOf('"')&&(a=a.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return a=decodeURIComponent(a.replace(g," ")),h.json?JSON.parse(a):a}catch(b){}}function f(b,c){var d=h.raw?b:e(b);return a.isFunction(c)?c(d):d}var g=/\+/g,h=a.cookie=function(e,g,i){if(void 0!==g&&!a.isFunction(g)){if(i=a.extend({},h.defaults,i),"number"==typeof i.expires){var j=i.expires,k=i.expires=new Date;k.setTime(+k+864e5*j)}return document.cookie=[b(e),"=",d(g),i.expires?"; expires="+i.expires.toUTCString():"",i.path?"; path="+i.path:"",i.domain?"; domain="+i.domain:"",i.secure?"; secure":""].join("")}for(var l=e?void 0:{},m=document.cookie?document.cookie.split("; "):[],n=0,o=m.length;o>n;n++){var p=m[n].split("="),q=c(p.shift()),r=p.join("=");if(e&&e===q){l=f(r,g);break}e||void 0===(r=f(r))||(l[q]=r)}return l};h.defaults={},a.removeCookie=function(b,c){return void 0===a.cookie(b)?!1:(a.cookie(b,"",a.extend({},c,{expires:-1})),!a.cookie(b))}});
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,70 @@
|
|||
.side-nav li a:before,
|
||||
#drop1 li a:before,
|
||||
.right-off-canvas-menu li a:before,
|
||||
.left-off-canvas-menu li a:before {
|
||||
font: normal normal normal 14px/1 FontAwesome;
|
||||
font-size: inherit;
|
||||
text-rendering: auto;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
margin-right: 5px;
|
||||
display: inline-block;
|
||||
width: 1em;
|
||||
|
||||
}
|
||||
/* -- Navigation -- */
|
||||
#n-mainpage-description a:before {content: "\f015";}
|
||||
#n-recentchanges a:before {content: "\f0ae";}
|
||||
#n-randompage a:before {content: "\f074";}
|
||||
#n-help a:before {content: "\f128";}
|
||||
|
||||
/* -- Toolbox -- */
|
||||
#t-whatlinkshere a:before {content: "\f047";}
|
||||
#t-recentchangeslinked a:before {content: "\f0c9";}
|
||||
#t-specialpages a:before {content: "\f0d0";}
|
||||
#t-print a:before {content: "\f02f";}
|
||||
#t-permalink a:before {content: "\f192";}
|
||||
#t-info a:before {content: "\f129";}
|
||||
|
||||
/* -- Actions -- */
|
||||
#ca-nstab-main a:before {content: "\f015";}
|
||||
#ca-talk a:before {content: "\f0e6";}
|
||||
#ca-edit a:before {content: "\f044";}
|
||||
#ca-formedit a:before {content: "\f0f6";}
|
||||
#ca-history a:before {content: "\f187";}
|
||||
#ca-delete a:before {content: "\f014";}
|
||||
#ca-move a:before {content: "\f0d1";}
|
||||
#ca-protect a:before {content: "\f132";}
|
||||
#ca-unprotect a:before {content: "\f132";}
|
||||
#ca-watch a:before {content: "\f006";}
|
||||
#ca-unwatch a:before {content: "\f005";}
|
||||
|
||||
#ca-ve-edit a:before {content: "\f040";}
|
||||
#ca-viewsource a:before {content: "\f02d";}
|
||||
#ca-form_edit a:before {content: "\f14b";}
|
||||
#ca-purge a:before {content: "\f021";}
|
||||
#ca-undelete a:before {content: "\f0e2";}
|
||||
#ca-ask_delete_permanently a:before {content: "\f0c4";}
|
||||
#ca-addsection a:before {content: "\f067";}
|
||||
|
||||
/* -- Usermenu -- */
|
||||
#pt-userpage a:before {content: "\f007";}
|
||||
#pt-mytalk a:before {content: "\f086";}
|
||||
#pt-adminlinks a:before {content: "\f0e7";}
|
||||
#pt-preferences a:before {content: "\f141";}
|
||||
#pt-watchlist a:before {content: "\f00b";}
|
||||
#pt-mycontris a:before {content: "\f118";}
|
||||
#pt-logout a:before {content: "\f011";}
|
||||
|
||||
#pt-uls a:before {content: "\f02d";}
|
||||
|
||||
|
||||
|
||||
#t-smwbrowselink a:before {content: "\f06e";}
|
||||
#t-blockip a:before {content: "\f05e";}
|
||||
#t-contributions a:before {content: "\f118";}
|
||||
#t-log a:before {content: "\f0c9";}
|
||||
#t-emailuser a:before {content: "\f0e0";}
|
||||
#t-userrights a:before {content: "\f0e3";}
|
||||
#t-upload a:before {content: "\f093";}
|
||||
#t-cite a:before {content: "\f10d";}
|
||||
#feedlinks a:before {content: "\f09e";}
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,756 @@
|
|||
@media screen {
|
||||
/**
|
||||
* CSS in this file is used by *all* skins (that have any CSS at all). Be
|
||||
* careful what you put in here, since what looks good in one skin may not in
|
||||
* another, but don't ignore the poor pre-Monobook users either.
|
||||
*
|
||||
* NOTE: The images which are referenced in this file are no longer in use in
|
||||
* essential interface components. They should NOT be embedded, because that
|
||||
* optimizes for the uncommon case at the cost of bloating the size of render-
|
||||
* blocking CSS common to all pages.
|
||||
*/
|
||||
|
||||
/* GENERAL CLASSES FOR DIRECTIONALITY SUPPORT */
|
||||
|
||||
/**
|
||||
* These classes should be used for text depending on the content direction.
|
||||
* Content stuff like editsection, ul/ol and TOC depend on this.
|
||||
*/
|
||||
.mw-content-ltr {
|
||||
/* @noflip */
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
.mw-content-rtl {
|
||||
/* @noflip */
|
||||
direction: rtl;
|
||||
}
|
||||
|
||||
/* Most input fields should be in site direction */
|
||||
.sitedir-ltr textarea,
|
||||
.sitedir-ltr input {
|
||||
/* @noflip */
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
.sitedir-rtl textarea,
|
||||
.sitedir-rtl input {
|
||||
/* @noflip */
|
||||
direction: rtl;
|
||||
}
|
||||
|
||||
.mw-userlink {
|
||||
unicode-bidi: embed;
|
||||
}
|
||||
|
||||
/* User-Agent styles for new HTML5 elements */
|
||||
mark {
|
||||
background-color: #ff0;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
/* Helper for wbr element on IE 8+; in HTML5, but not supported by default as of IE 11. */
|
||||
/* Note canonical HTML5 styles recommend "content: \u200B", but this doesn't work as of IE 11. */
|
||||
wbr {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
/* Input types that should follow user direction, like buttons */
|
||||
/* TODO: What about buttons in wikipage content ? */
|
||||
input[ type='submit' ],
|
||||
input[ type='button' ],
|
||||
input[ type='reset' ],
|
||||
input[ type='file' ] {
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
/* Override default values */
|
||||
textarea[ dir='ltr' ],
|
||||
input[ dir='ltr' ] {
|
||||
/* @noflip */
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
textarea[ dir='rtl' ],
|
||||
input[ dir='rtl' ] {
|
||||
/* @noflip */
|
||||
direction: rtl;
|
||||
}
|
||||
|
||||
/* Default style for semantic tags */
|
||||
abbr[ title ],
|
||||
.explain[ title ] {
|
||||
border-bottom: 1px dotted;
|
||||
cursor: help;
|
||||
}
|
||||
|
||||
@supports ( text-decoration: underline dotted ) {
|
||||
abbr[ title ],
|
||||
.explain[ title ] {
|
||||
border-bottom: 0;
|
||||
text-decoration: underline dotted;
|
||||
}
|
||||
}
|
||||
|
||||
/* Comment portions of RC entries */
|
||||
span.comment {
|
||||
font-style: italic;
|
||||
unicode-bidi: -moz-isolate;
|
||||
unicode-bidi: isolate;
|
||||
}
|
||||
|
||||
/* Stop floats from intruding into edit area in previews */
|
||||
#editform,
|
||||
#toolbar,
|
||||
#wpTextbox1 {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
/* Prevent editing textarea from jumping when toolbar is loaded */
|
||||
#toolbar {
|
||||
height: 22px;
|
||||
}
|
||||
|
||||
/* Underline preference */
|
||||
|
||||
.mw-underline-always a {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.mw-underline-never a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* rev_deleted stuff
|
||||
*/
|
||||
li span.deleted,
|
||||
span.history-deleted {
|
||||
text-decoration: line-through;
|
||||
color: #72777d;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
/**
|
||||
* Patrol stuff
|
||||
*/
|
||||
.not-patrolled {
|
||||
background-color: #ffa;
|
||||
}
|
||||
|
||||
.unpatrolled {
|
||||
font-weight: bold;
|
||||
color: #d33;
|
||||
}
|
||||
|
||||
div.patrollink {
|
||||
font-size: 75%;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/**
|
||||
* Forms
|
||||
*/
|
||||
td.mw-label {
|
||||
text-align: right;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
td.mw-input {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
td.mw-submit {
|
||||
text-align: left;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.mw-input-with-label {
|
||||
white-space: nowrap;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
/**
|
||||
* Image captions.
|
||||
*
|
||||
* This is only meant to provide the most basic of styles, visual settings shouldn't be added here.
|
||||
*/
|
||||
|
||||
/* @noflip */
|
||||
.mw-content-ltr .thumbcaption {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
/* @noflip */
|
||||
.mw-content-ltr .magnify {
|
||||
float: right;
|
||||
}
|
||||
|
||||
/* @noflip */
|
||||
.mw-content-rtl .thumbcaption {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/* @noflip */
|
||||
.mw-content-rtl .magnify {
|
||||
float: left;
|
||||
}
|
||||
|
||||
/**
|
||||
* Categories
|
||||
*/
|
||||
#catlinks {
|
||||
/**
|
||||
* Overrides text justification (user preference)
|
||||
* See T33990
|
||||
*/
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.catlinks ul {
|
||||
display: inline;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
list-style-type: none;
|
||||
list-style-image: none;
|
||||
vertical-align: middle !ie;
|
||||
}
|
||||
|
||||
.catlinks li {
|
||||
display: inline-block;
|
||||
line-height: 1.25em;
|
||||
border-left: 1px solid #a2a9b1;
|
||||
margin: 0.125em 0;
|
||||
padding: 0 0.5em;
|
||||
zoom: 1;
|
||||
display: inline !ie; /* stylelint-disable-line declaration-block-no-duplicate-properties */
|
||||
}
|
||||
|
||||
.catlinks li:first-child {
|
||||
padding-left: 0.25em;
|
||||
border-left: 0;
|
||||
}
|
||||
|
||||
/* (T7346) make category redirects italic */
|
||||
.catlinks li a.mw-redirect {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hidden categories
|
||||
*/
|
||||
.mw-hidden-cats-hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.catlinks-allhidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* Convenience links to edit delete and protect reasons
|
||||
*/
|
||||
p.mw-protect-editreasons,
|
||||
p.mw-filedelete-editreasons,
|
||||
p.mw-delete-editreasons {
|
||||
font-size: 90%;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/* The auto-generated edit comments */
|
||||
.autocomment {
|
||||
color: #72777d;
|
||||
}
|
||||
|
||||
/** Generic minor/bot/newpage styling (recent changes) */
|
||||
.newpage,
|
||||
.minoredit,
|
||||
.botedit {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/**
|
||||
* Recreating deleted page warning
|
||||
* Reupload file warning
|
||||
* Page protection warning
|
||||
* incl. log entries for these warnings
|
||||
*/
|
||||
div.mw-warning-with-logexcerpt {
|
||||
padding: 3px;
|
||||
margin-bottom: 3px;
|
||||
border: 2px solid #2a4b8d;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
div.mw-warning-with-logexcerpt ul li {
|
||||
font-size: 90%;
|
||||
}
|
||||
|
||||
/* (show/hide) revision deletion links */
|
||||
span.mw-revdelundel-link,
|
||||
strong.mw-revdelundel-link {
|
||||
font-size: 90%;
|
||||
}
|
||||
|
||||
span.mw-revdelundel-hidden,
|
||||
input.mw-revdelundel-hidden {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
td.mw-revdel-checkbox,
|
||||
th.mw-revdel-checkbox {
|
||||
padding-right: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* red links; see T38276 */
|
||||
a.new {
|
||||
color: #ba0000;
|
||||
}
|
||||
|
||||
/* Plainlinks - this can be used to switch
|
||||
* off special external link styling */
|
||||
.plainlinks a.external {
|
||||
background: none !important; /* stylelint-disable-line declaration-no-important */
|
||||
padding: 0 !important; /* stylelint-disable-line declaration-no-important */
|
||||
}
|
||||
|
||||
/* External URLs should always be treated as LTR (T6330) */
|
||||
/* @noflip */ .rtl a.external.free,
|
||||
.rtl a.external.autonumber {
|
||||
direction: ltr;
|
||||
unicode-bidi: embed;
|
||||
}
|
||||
|
||||
/**
|
||||
* wikitable class for skinning normal tables
|
||||
* keep in sync with commonPrint.css
|
||||
*/
|
||||
table.wikitable {
|
||||
background-color: #f8f9fa;
|
||||
color: #222;
|
||||
margin: 1em 0;
|
||||
border: 1px solid #a2a9b1;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
table.wikitable > tr > th,
|
||||
table.wikitable > tr > td,
|
||||
table.wikitable > * > tr > th,
|
||||
table.wikitable > * > tr > td {
|
||||
border: 1px solid #a2a9b1;
|
||||
padding: 0.2em 0.4em;
|
||||
}
|
||||
|
||||
table.wikitable > tr > th,
|
||||
table.wikitable > * > tr > th {
|
||||
background-color: #eaecf0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
table.wikitable > caption {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/* success and error messages */
|
||||
.error,
|
||||
.warning,
|
||||
.success {
|
||||
font-size: larger;
|
||||
}
|
||||
|
||||
.error {
|
||||
color: #d33;
|
||||
}
|
||||
|
||||
.warning {
|
||||
color: #705000;
|
||||
}
|
||||
|
||||
.success {
|
||||
color: #009000;
|
||||
}
|
||||
|
||||
.errorbox,
|
||||
.warningbox,
|
||||
.successbox {
|
||||
border: 1px solid;
|
||||
padding: 0.5em 1em;
|
||||
margin-bottom: 1em;
|
||||
display: inline-block;
|
||||
zoom: 1;
|
||||
*display: inline; /* stylelint-disable-line declaration-block-no-duplicate-properties */
|
||||
}
|
||||
|
||||
.errorbox h2,
|
||||
.warningbox h2,
|
||||
.successbox h2 {
|
||||
font-size: 1em;
|
||||
color: inherit;
|
||||
font-weight: bold;
|
||||
display: inline;
|
||||
margin: 0 0.5em 0 0;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
.errorbox {
|
||||
color: #d33;
|
||||
border-color: #fac5c5;
|
||||
background-color: #fae3e3;
|
||||
}
|
||||
|
||||
.warningbox {
|
||||
color: #705000;
|
||||
border-color: #fde29b;
|
||||
background-color: #fdf1d1;
|
||||
}
|
||||
|
||||
.successbox {
|
||||
color: #008000;
|
||||
border-color: #b7fdb5;
|
||||
background-color: #e1fddf;
|
||||
}
|
||||
|
||||
/* general info/warning box for SP */
|
||||
.mw-infobox {
|
||||
border: 2px solid #ff7f00;
|
||||
margin: 0.5em;
|
||||
clear: left;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.mw-infobox-left {
|
||||
margin: 7px;
|
||||
float: left;
|
||||
width: 35px;
|
||||
}
|
||||
|
||||
.mw-infobox-right {
|
||||
margin: 0.5em 0.5em 0.5em 49px;
|
||||
}
|
||||
|
||||
/* Note on preview page */
|
||||
.previewnote {
|
||||
color: #d33;
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
.previewnote p {
|
||||
text-indent: 3em;
|
||||
margin: 0.8em 0;
|
||||
}
|
||||
|
||||
.visualClear {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
/**
|
||||
* Data table style
|
||||
*
|
||||
* Transparent table with suddle borders
|
||||
* and blue row-highlighting.
|
||||
*/
|
||||
.mw-datatable {
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
.mw-datatable,
|
||||
.mw-datatable td,
|
||||
.mw-datatable th {
|
||||
border: 1px solid #a2a9b1;
|
||||
padding: 0 0.15em 0 0.15em;
|
||||
}
|
||||
|
||||
.mw-datatable th {
|
||||
background-color: #ddf;
|
||||
}
|
||||
|
||||
.mw-datatable td {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.mw-datatable tr:hover td {
|
||||
background-color: #eaf3ff;
|
||||
}
|
||||
|
||||
/* Correct directionality when page dir is different from site/user dir */
|
||||
.mw-content-ltr ul,
|
||||
.mw-content-rtl .mw-content-ltr ul {
|
||||
/* @noflip */
|
||||
margin: 0.3em 0 0 1.6em;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.mw-content-rtl ul,
|
||||
.mw-content-ltr .mw-content-rtl ul {
|
||||
/* @noflip */
|
||||
margin: 0.3em 1.6em 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.mw-content-ltr ol,
|
||||
.mw-content-rtl .mw-content-ltr ol {
|
||||
/* @noflip */
|
||||
margin: 0.3em 0 0 3.2em;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.mw-content-rtl ol,
|
||||
.mw-content-ltr .mw-content-rtl ol {
|
||||
/* @noflip */
|
||||
margin: 0.3em 3.2em 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/* @noflip */
|
||||
.mw-content-ltr dd,
|
||||
.mw-content-rtl .mw-content-ltr dd {
|
||||
margin-left: 1.6em;
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
/* @noflip */
|
||||
.mw-content-rtl dd,
|
||||
.mw-content-ltr .mw-content-rtl dd {
|
||||
margin-right: 1.6em;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.mw-ajax-loader {
|
||||
background-image: url(/w/resources/src/mediawiki.legacy/images/ajax-loader.gif?57f34);
|
||||
background-position: center center;
|
||||
background-repeat: no-repeat;
|
||||
padding: 16px;
|
||||
position: relative;
|
||||
top: -16px;
|
||||
}
|
||||
|
||||
.mw-small-spinner {
|
||||
padding: 10px !important; /* stylelint-disable-line declaration-no-important */
|
||||
margin-right: 0.6em;
|
||||
background-image: url(/w/resources/src/mediawiki.legacy/images/spinner.gif?ca65b);
|
||||
background-position: center center;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
/* Language specific height correction for titles. Ref T31405 and T32809 */
|
||||
/* Languages like hi or ml require slightly more vertical space to show diacritics properly */
|
||||
h1:lang( anp ),
|
||||
h1:lang( as ),
|
||||
h1:lang( bh ), /* Macrolanguage, used on bh.wikipedia.org, should be removed one day */
|
||||
h1:lang( bho ),
|
||||
h1:lang( bn ),
|
||||
h1:lang( gu ),
|
||||
h1:lang( hi ),
|
||||
h1:lang( kn ),
|
||||
h1:lang( ks ),
|
||||
h1:lang( ml ),
|
||||
h1:lang( mr ),
|
||||
h1:lang( my ),
|
||||
h1:lang( mai ),
|
||||
h1:lang( ne ),
|
||||
h1:lang( new ),
|
||||
h1:lang( or ),
|
||||
h1:lang( pa ),
|
||||
h1:lang( pi ),
|
||||
h1:lang( sa ),
|
||||
h1:lang( ta ),
|
||||
h1:lang( te ) {
|
||||
line-height: 1.6em !important; /* stylelint-disable-line declaration-no-important */
|
||||
}
|
||||
|
||||
/* stylelint-disable selector-list-comma-newline-after */
|
||||
h2:lang( anp ), h3:lang( anp ), h4:lang( anp ), h5:lang( anp ), h6:lang( anp ),
|
||||
h2:lang( as ), h3:lang( as ), h4:lang( as ), h5:lang( as ), h6:lang( as ),
|
||||
h2:lang( bho ), h3:lang( bho ), h4:lang( bho ), h5:lang( bho ), h6:lang( bho ),
|
||||
h2:lang( bh ), h3:lang( bh ), h4:lang( bh ), h5:lang( bh ), h6:lang( bh ),
|
||||
h2:lang( bn ), h3:lang( bn ), h4:lang( bn ), h5:lang( bn ), h6:lang( bn ),
|
||||
h2:lang( gu ), h3:lang( gu ), h4:lang( gu ), h5:lang( gu ), h6:lang( gu ),
|
||||
h2:lang( hi ), h3:lang( hi ), h4:lang( hi ), h5:lang( hi ), h6:lang( hi ),
|
||||
h2:lang( kn ), h3:lang( kn ), h4:lang( kn ), h5:lang( kn ), h6:lang( kn ),
|
||||
h2:lang( ks ), h3:lang( ks ), h4:lang( ks ), h5:lang( ks ), h6:lang( ks ),
|
||||
h2:lang( ml ), h3:lang( ml ), h4:lang( ml ), h5:lang( ml ), h6:lang( ml ),
|
||||
h2:lang( mr ), h3:lang( mr ), h4:lang( mr ), h5:lang( mr ), h6:lang( mr ),
|
||||
h2:lang( my ), h3:lang( my ), h4:lang( my ), h5:lang( my ), h6:lang( my ),
|
||||
h2:lang( mai ), h3:lang( mai ), h4:lang( mai ), h5:lang( mai ), h6:lang( mai ),
|
||||
h2:lang( ne ), h3:lang( ne ), h4:lang( ne ), h5:lang( ne ), h6:lang( ne ),
|
||||
h2:lang( new ), h3:lang( new ), h4:lang( new ), h5:lang( new ), h6:lang( new ),
|
||||
h2:lang( or ), h3:lang( or ), h4:lang( or ), h5:lang( or ), h6:lang( or ),
|
||||
h2:lang( pa ), h3:lang( pa ), h4:lang( pa ), h5:lang( pa ), h6:lang( pa ),
|
||||
h2:lang( pi ), h3:lang( pi ), h4:lang( pi ), h5:lang( pi ), h6:lang( pi ),
|
||||
h2:lang( sa ), h3:lang( sa ), h4:lang( sa ), h5:lang( sa ), h6:lang( sa ),
|
||||
h2:lang( ta ), h3:lang( ta ), h4:lang( ta ), h5:lang( ta ), h6:lang( ta ),
|
||||
h2:lang( te ), h3:lang( te ), h4:lang( te ), h5:lang( te ), h6:lang( te ) {
|
||||
line-height: 1.2em;
|
||||
}
|
||||
/* stylelint-enable selector-list-comma-newline-after */
|
||||
|
||||
/* Localised ordered list numbering for some languages */
|
||||
ol:lang( azb ) li,
|
||||
ol:lang( bcc ) li,
|
||||
ol:lang( bgn ) li,
|
||||
ol:lang( bqi ) li,
|
||||
ol:lang( fa ) li,
|
||||
ol:lang( glk ) li,
|
||||
ol:lang( kk-arab ) li,
|
||||
ol:lang( lrc ) li,
|
||||
ol:lang( luz ) li,
|
||||
ol:lang( mzn ) li {
|
||||
list-style-type: -moz-persian;
|
||||
list-style-type: persian;
|
||||
}
|
||||
|
||||
ol:lang( ckb ) li,
|
||||
ol:lang( sdh ) li {
|
||||
list-style-type: -moz-arabic-indic;
|
||||
list-style-type: arabic-indic;
|
||||
}
|
||||
|
||||
ol:lang( hi ) li,
|
||||
ol:lang( mai ) li,
|
||||
ol:lang( mr ) li,
|
||||
ol:lang( ne ) li {
|
||||
list-style-type: -moz-devanagari;
|
||||
list-style-type: devanagari;
|
||||
}
|
||||
|
||||
ol:lang( as ) li,
|
||||
ol:lang( bn ) li {
|
||||
list-style-type: -moz-bengali;
|
||||
list-style-type: bengali;
|
||||
}
|
||||
|
||||
ol:lang( or ) li {
|
||||
list-style-type: -moz-oriya;
|
||||
list-style-type: oriya;
|
||||
}
|
||||
|
||||
.toc ul {
|
||||
margin: 0.3em 0;
|
||||
}
|
||||
|
||||
/* Correct directionality when page dir is different from site/user dir */
|
||||
/* @noflip */ .mw-content-ltr .toc ul,
|
||||
.mw-content-rtl .mw-content-ltr .toc ul {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
/* @noflip */ .mw-content-rtl .toc ul,
|
||||
.mw-content-ltr .mw-content-rtl .toc ul {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
/* @noflip */ .mw-content-ltr .toc ul ul,
|
||||
.mw-content-rtl .mw-content-ltr .toc ul ul {
|
||||
margin: 0 0 0 2em;
|
||||
}
|
||||
|
||||
/* @noflip */ .mw-content-rtl .toc ul ul,
|
||||
.mw-content-ltr .mw-content-rtl .toc ul ul {
|
||||
margin: 0 2em 0 0;
|
||||
}
|
||||
|
||||
.toc .toctitle {
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
#mw-clearyourcache,
|
||||
#mw-sitecsspreview,
|
||||
#mw-sitejspreview,
|
||||
#mw-usercsspreview,
|
||||
#mw-userjspreview {
|
||||
direction: ltr;
|
||||
unicode-bidi: embed;
|
||||
}
|
||||
|
||||
#mw-revision-info,
|
||||
#mw-revision-info-current,
|
||||
#mw-revision-nav {
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
/* Images */
|
||||
|
||||
/* @noflip */ div.tright,
|
||||
div.floatright,
|
||||
table.floatright {
|
||||
clear: right;
|
||||
float: right;
|
||||
}
|
||||
|
||||
/* @noflip */ div.tleft,
|
||||
div.floatleft,
|
||||
table.floatleft {
|
||||
float: left;
|
||||
clear: left;
|
||||
}
|
||||
|
||||
div.floatright,
|
||||
table.floatright,
|
||||
div.floatleft,
|
||||
table.floatleft {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/* T14205 */
|
||||
#mw-credits a {
|
||||
unicode-bidi: embed;
|
||||
}
|
||||
|
||||
/* Accessibility */
|
||||
.mw-jump,
|
||||
#jump-to-nav {
|
||||
overflow: hidden;
|
||||
height: 0;
|
||||
zoom: 1; /* http://webaim.org/techniques/skipnav/#iequirk */
|
||||
}
|
||||
|
||||
/* Print footer should be hidden by default in screen. */
|
||||
.printfooter {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* For developers */
|
||||
.xdebug-error {
|
||||
position: absolute;
|
||||
z-index: 99;
|
||||
}
|
||||
|
||||
.mw-editsection,
|
||||
#jump-to-nav {
|
||||
-moz-user-select: none;
|
||||
-webkit-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
/* Display editsection links smaller and next to headings */
|
||||
.mw-editsection,
|
||||
.mw-editsection-like {
|
||||
font-size: small;
|
||||
font-weight: normal;
|
||||
margin-left: 1em;
|
||||
vertical-align: baseline;
|
||||
/* Reset line-height; headings tend to have it set to larger values */
|
||||
line-height: 1em;
|
||||
}
|
||||
|
||||
/* Correct directionality when page dir is different from site/user dir */
|
||||
/* @noflip */
|
||||
.mw-content-ltr .mw-editsection,
|
||||
.mw-content-rtl .mw-content-ltr .mw-editsection {
|
||||
margin-left: 1em;
|
||||
}
|
||||
|
||||
/* @noflip */
|
||||
.mw-content-rtl .mw-editsection,
|
||||
.mw-content-ltr .mw-content-rtl .mw-editsection {
|
||||
margin-right: 1em;
|
||||
}
|
||||
|
||||
/* Prevent citations and subscripts from interfering with the line-height */
|
||||
sup,
|
||||
sub {
|
||||
line-height: 1;
|
||||
}}
|
|
@ -1,16 +1,16 @@
|
|||
body { line-height: 1.6em; font-size: 16px; }
|
||||
body { line-height: 1.6em; font-size: 1rem;
|
||||
font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"; }
|
||||
|
||||
p, ul, ol, dl { font-size: 16px; }
|
||||
p, ul, ol, dl { font-size: 1rem; }
|
||||
|
||||
h4,h5,h6 {color: 2e2e2e;}
|
||||
h4,h5,h6 {color: #2e2e2e;}
|
||||
|
||||
#toc ul, .toc ul { font-size: 16px; }
|
||||
|
||||
#toc { margin: 1em 0; }
|
||||
|
||||
@media only screen and (min-width: 40.0625em) {
|
||||
body { line-height: 1.6em; font-size: 14px; }
|
||||
p, ul, ol, dl { font-size: 14px; }
|
||||
body { line-height: 1.6em; font-size: 1rem; }
|
||||
#toc ul, .toc ul { font-size: 13.3px; }
|
||||
}
|
||||
|
||||
|
@ -43,9 +43,6 @@ a:hover {
|
|||
text-decoration: underline;
|
||||
}
|
||||
|
||||
h1.title a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* ULS Override to force no display of background image */
|
||||
.uls-trigger {
|
||||
|
@ -69,11 +66,14 @@ body.action-formedit .row.hide-on-form-edit { display: none;}
|
|||
.mw-notification-area {
|
||||
margin-top: 2em;
|
||||
}
|
||||
/* MediaWiki Search Results */
|
||||
.mw-search-results {
|
||||
max-width: 100%;
|
||||
}
|
||||
/* Also adjust z-index of action menu to force it on top */
|
||||
#p-cactions #drop1 {
|
||||
z-index: 1000;
|
||||
white-space: nowrap;
|
||||
border: 1px solid cyan;
|
||||
}
|
||||
#p-cactions #drop1 a {
|
||||
width: 100%;
|
||||
|
@ -163,10 +163,6 @@ h2 span {
|
|||
display: inline;
|
||||
}
|
||||
|
||||
h2.title {
|
||||
margin-bottom: 0.1em;
|
||||
}
|
||||
|
||||
h3#tagline {
|
||||
font-style: italic;
|
||||
font-size: small;
|
||||
|
@ -226,9 +222,22 @@ ul#drop1.f-dropdown {
|
|||
color: #222;
|
||||
border-bottom: 1px solid #eee;
|
||||
}
|
||||
.mw-content-ltr ul {
|
||||
.mw-content-ltr ol, .mw-content-rtl .mw-content-ltr ol {
|
||||
margin: .5em 0 1em 2em;
|
||||
}
|
||||
.mw-content-ltr ul, .mw-content-rtl .mw-content-ltr ul {
|
||||
margin: .5em 0 1em 2em;
|
||||
}
|
||||
.mw-content-ltr ul li > ul,
|
||||
.mw-content-rtl .mw-content-ltr ul li > ul {
|
||||
margin-bottom: .5em;
|
||||
margin-left: 1em;
|
||||
}
|
||||
.mw-content-ltr ol li > ol,
|
||||
.mw-content-rtl .mw-content-ltr ol li > ol {
|
||||
margin-bottom: .5em;
|
||||
margin-left: 1em;
|
||||
}
|
||||
ul.accordion {
|
||||
margin: 0;
|
||||
}
|
||||
|
@ -528,7 +537,6 @@ button.ui-button-icon-only {
|
|||
|
||||
select {width:auto;}
|
||||
|
||||
|
||||
input[type="checkbox"].createboxInput {
|
||||
width: auto;
|
||||
}
|
||||
|
@ -598,6 +606,30 @@ button, .button {
|
|||
z-index: 100;
|
||||
}
|
||||
|
||||
input[type="search"] {
|
||||
margin: 0;
|
||||
}
|
||||
input[type="date"] {
|
||||
margin: .5rem 0;
|
||||
}
|
||||
input[type="date"] {
|
||||
width: auto;
|
||||
}
|
||||
input[type="file"] {
|
||||
margin: .5rem 0;
|
||||
}
|
||||
input:not([type]), textarea, p.meta {
|
||||
margin: .5rem 0;
|
||||
}
|
||||
input[type="text"] {
|
||||
margin: .5rem 0;
|
||||
}
|
||||
select {
|
||||
padding: 5px 20px 5px 5px;
|
||||
margin: .5rem 0;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
input[type="submit"] {
|
||||
background-color: #5da423;
|
||||
border-color: #457a1a;
|
||||
|
@ -643,117 +675,8 @@ span.smwttactiveinline span.smwbuiltin {
|
|||
font-style: normal;
|
||||
}
|
||||
|
||||
|
||||
/* MW still generates a label column for checkboxes, this minimizes is */
|
||||
div.mw-htmlform-field-HTMLCheckField div.mw-label { height:0; }
|
||||
|
||||
|
||||
/* ZUBR IE8 FIXES */
|
||||
/* GRID: https://gist.github.com/zurbchris/5068210 */
|
||||
.lt-ie9 .row { width: 940px; max-width: 100%; min-width: 768px; margin: 0 auto; }
|
||||
.lt-ie9 .row .row { width: auto; max-width: none; min-width: 0; margin: 0 -15px; }
|
||||
.lt-ie9 .row.large-collapse .column,
|
||||
.lt-ie9 .row.large-collapse .columns { padding: 0; }
|
||||
.lt-ie9 .row .row { width: auto; max-width: none; min-width: 0; margin: 0 -15px; }
|
||||
.lt-ie9 .row .row.large-collapse { margin: 0; }
|
||||
|
||||
.lt-ie9 .column, .lt-ie9 .columns { float: left; min-height: 1px; padding: 0 15px; position: relative; }
|
||||
.lt-ie9 .column.large-centered, .columns.large-centered { float: none; margin: 0 auto; }
|
||||
|
||||
.lt-ie9 [class*="column"] + [class*="column"]:last-child { float: right; }
|
||||
.lt-ie9 [class*="column"] + [class*="column"].end { float: left; }
|
||||
|
||||
.lt-ie9 .large-1,
|
||||
.lt-ie9 .row .large-1 { width: 8.33333%; }
|
||||
|
||||
.lt-ie9 .large-2,
|
||||
.lt-ie9 .row .large-2 { width: 16.66667%; }
|
||||
|
||||
.lt-ie9 .large-3,
|
||||
.lt-ie9 .row .large-3 { width: 25%; }
|
||||
|
||||
.lt-ie9 .large-4,
|
||||
.lt-ie9 .row .large-4 { width: 33.33333%; }
|
||||
|
||||
.lt-ie9 .large-5,
|
||||
.lt-ie9 .row .large-5 { width: 41.66667%; }
|
||||
|
||||
.lt-ie9 .large-6,
|
||||
.lt-ie9 .row .large-6 { width: 50%; }
|
||||
|
||||
.lt-ie9 .large-7,
|
||||
.lt-ie9 .row .large-7 { width: 58.33333%; }
|
||||
|
||||
.lt-ie9 .large-8,
|
||||
.lt-ie9 .row .large-8 { width: 66.66667%; }
|
||||
|
||||
.lt-ie9 .large-9,
|
||||
.lt-ie9 .row .large-9 { width: 75%; }
|
||||
|
||||
.lt-ie9 .large-10,
|
||||
.lt-ie9 .row .large-10 { width: 83.33333%; }
|
||||
|
||||
.lt-ie9 .large-11,
|
||||
.lt-ie9 .row .large-11 { width: 91.66667%; }
|
||||
|
||||
.lt-ie9 .large-12,
|
||||
.lt-ie9 .row .large-12 { width: 100%; }
|
||||
|
||||
.lt-ie9 .row .large-offset-1 { margin-left: 8.33333%; }
|
||||
.lt-ie9 .row .large-offset-2 { margin-left: 16.66667%; }
|
||||
.lt-ie9 .row .large-offset-3 { margin-left: 25%; }
|
||||
.lt-ie9 .row .large-offset-4 { margin-left: 33.33333%; }
|
||||
.lt-ie9 .row .large-offset-5 { margin-left: 41.66667%; }
|
||||
.lt-ie9 .row .large-offset-6 { margin-left: 50%; }
|
||||
.lt-ie9 .row .large-offset-7 { margin-left: 58.33333%; }
|
||||
.lt-ie9 .row .large-offset-8 { margin-left: 66.66667%; }
|
||||
.lt-ie9 .row .large-offset-9 { margin-left: 75%; }
|
||||
.lt-ie9 .row .large-offset-10 { margin-left: 83.33333%; }
|
||||
|
||||
.lt-ie9 .pull-2 { right: 16.66667%; }
|
||||
.lt-ie9 .pull-3 { right: 25%; }
|
||||
.lt-ie9 .pull-4 { right: 33.33333%; }
|
||||
.lt-ie9 .pull-5 { right: 41.66667%; }
|
||||
.lt-ie9 .pull-6 { right: 50%; }
|
||||
.lt-ie9 .pull-7 { right: 58.33333%; }
|
||||
.lt-ie9 .pull-8 { right: 66.66667%; }
|
||||
.lt-ie9 .pull-9 { right: 75%; }
|
||||
.lt-ie9 .pull-10 { right: 83.33333%; }
|
||||
|
||||
.lt-ie9 .push-2 { left: 16.66667%; }
|
||||
.lt-ie9 .push-3 { left: 25%; }
|
||||
.lt-ie9 .push-4 { left: 33.33333%; }
|
||||
.lt-ie9 .push-5 { left: 41.66667%; }
|
||||
.lt-ie9 .push-6 { left: 50%; }
|
||||
.lt-ie9 .push-7 { left: 58.33333%; }
|
||||
.lt-ie9 .push-8 { left: 66.66667%; }
|
||||
.lt-ie9 .push-9 { left: 75%; }
|
||||
.lt-ie9 .push-10 { left: 83.33333%; }
|
||||
|
||||
/* Nicolas Gallagher's micro clearfix */
|
||||
.lt-ie9 .row { *zoom: 1; }
|
||||
.lt-ie9 .row:before, .row:after { content: " "; display: table; }
|
||||
.lt-ie9 .row:after { clear: both; }
|
||||
/* END IE8 GRID */
|
||||
|
||||
.lt-ie9 .hide-for-small { display: block !important; }
|
||||
|
||||
/* TOP NAV */
|
||||
.lt-ie9 .top-bar-section {
|
||||
display:block;
|
||||
}
|
||||
|
||||
.lt-ie9 .top-bar-section ul {
|
||||
height: auto;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.lt-ie9 .top-bar .top-bar-section ul,
|
||||
.lt-ie9 .top-bar .top-bar-section ul li {
|
||||
float: left;
|
||||
display: inline;
|
||||
}
|
||||
/* END OTHER IE8 FIXES */
|
||||
.mw-htmlform-field-HTMLCheckField .mw-label { height:0; }
|
||||
|
||||
/* UNTIL I CAN DETERMINE WHY toolboxend GENERATES AN EMPTY <li> IN THE MENU, I'M HIDING IT */
|
||||
#p-toolboxend { display:none;}
|
||||
|
@ -892,6 +815,7 @@ ul.side-nav label {
|
|||
background: #517398;
|
||||
color: #fff;
|
||||
padding: .25em .5em;
|
||||
pointer-events: none;
|
||||
}
|
||||
body {
|
||||
background-color: #DCEAEA;
|
||||
|
@ -955,7 +879,6 @@ span#nav-main {
|
|||
.tab-bar h1, .tab-bar h2, .tab-bar h3, .tab-bar h4 {
|
||||
font-size: 1.5em;
|
||||
font-weight: 400;
|
||||
line-height: 1.8em;
|
||||
}
|
||||
section.right-small {
|
||||
border-left: none;
|
||||
|
@ -980,10 +903,29 @@ h4.namespace.label {
|
|||
overflow: hidden;
|
||||
}
|
||||
|
||||
h2.title {
|
||||
font-size:1.65em;
|
||||
padding-bottom: 0em;
|
||||
margin-top:.5em;
|
||||
.tab-bar .title {
|
||||
color: #FFFFFF;
|
||||
line-height: 2.8125rem;
|
||||
margin: 0;
|
||||
font-weight:400;
|
||||
font-size:1.5rem;
|
||||
}
|
||||
|
||||
h1.title {
|
||||
font-size: 1.8rem;
|
||||
padding-bottom: 0em;
|
||||
margin-top: .5em;
|
||||
margin-bottom: 0.1rem;
|
||||
}
|
||||
|
||||
section#middle-nav .title a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
@media only screen and (min-width: 40.0625em){
|
||||
h1.title {
|
||||
font-size: 1.9rem;
|
||||
}
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 { line-height: 1.4; }
|
||||
|
@ -1009,7 +951,6 @@ h2 { font-size: 1.55em; }
|
|||
h3 { font-size: 1.40em; }
|
||||
h4 { font-size: 1.24em; }
|
||||
h5 { font-size: 1.16em; }
|
||||
h2.title { font-size:1.8em; }
|
||||
}
|
||||
|
||||
/* Preferences Fixes */
|
||||
|
@ -1167,6 +1108,7 @@ ul[class*="block-grid"] {
|
|||
|
||||
.mw-indicators {
|
||||
float: right;
|
||||
font-family: "Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;
|
||||
line-height: 1.6;
|
||||
font-size: 0.875em;
|
||||
position: relative;
|
||||
|
@ -1177,4 +1119,77 @@ ul[class*="block-grid"] {
|
|||
}
|
||||
.mw-indicator {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
/* Images the MediaWiki way */
|
||||
|
||||
/* Images, Thumbs and Captions */
|
||||
.thumbinner {
|
||||
border: 1px solid #c8ccd1;
|
||||
padding: 3px;
|
||||
background-color: #f8f9fa;
|
||||
font-size: 94%;
|
||||
text-align: center;
|
||||
overflow: hidden;
|
||||
margin: auto;
|
||||
max-width: 100%;
|
||||
}
|
||||
.thumb.tright, .thumb.left {
|
||||
max-width: 100%;
|
||||
}
|
||||
.thumbcaption {
|
||||
border: 0;
|
||||
line-height: 1.4em;
|
||||
padding: 3px;
|
||||
font-size: 94%;
|
||||
text-align: left;
|
||||
}
|
||||
.magnify a {
|
||||
display: block;
|
||||
text-indent: 15px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
width: 15px;
|
||||
height: 11px;
|
||||
}
|
||||
.mw-content-ltr .magnify a {
|
||||
background-image: url(/w/resources/src/mediawiki.skinning/images/magnify-clip-ltr.png);
|
||||
}
|
||||
|
||||
/* Float right and left styles - Make all MW images responsive for mobile when floated */
|
||||
|
||||
.floatright, .tright,
|
||||
table.floatright {
|
||||
margin: 0 0 .5em .5em;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
.floatleft,.tleft
|
||||
table.floatleft {
|
||||
margin: 0 .5em .5em 0;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
.tnone {
|
||||
margin: .5rem 0;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
.floatnone img {
|
||||
margin: .5rem 0;
|
||||
}
|
||||
|
||||
/* Kill the float for smaller screens and make them align center. */
|
||||
|
||||
@media only screen and (max-width: 640px) {
|
||||
.floatright,
|
||||
table.floatright,
|
||||
.floatleft,
|
||||
table.floatleft,
|
||||
.thumb.tleft,
|
||||
.thumb.tright {
|
||||
text-align: center;
|
||||
float: none !important;
|
||||
margin: .5em auto;
|
||||
}
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"require-dev": {
|
||||
"jakub-onderka/php-parallel-lint": "0.9"
|
||||
"php-parallel-lint/php-parallel-lint": "1.2.0"
|
||||
},
|
||||
"scripts": {
|
||||
"test": [
|
||||
|
|
|
@ -7,5 +7,6 @@
|
|||
"skinname-pivot": "Pivot",
|
||||
"pivot-desc": "A mobile skin which \"Pivots\" seamlessly to any size display.",
|
||||
"pivot-browsermsg": "may not look as expected in this version of Internet Explorer. We recommend you upgrade to a newer version of Internet Explorer or switch to a browser like Firefox or Chrome.",
|
||||
"pivot-menutitle": "Menu"
|
||||
"pivot-menutitle": "Menu",
|
||||
"pivot-personal-tools": "Personal Tools"
|
||||
}
|
||||
|
|
|
@ -7,5 +7,6 @@
|
|||
"skinname-pivot": "name of skin",
|
||||
"pivot-desc": "description of skin",
|
||||
"pivot-browsermsg": "old versions of IE not supported message",
|
||||
"pivot-menutitle": "menu title"
|
||||
"pivot-menutitle": "menu title",
|
||||
"pivot-personal-tools": "logged in title for personal tools"
|
||||
}
|
11
skin.json
11
skin.json
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "Pivot",
|
||||
"version": "1.0.5",
|
||||
"version": "2.3.0",
|
||||
"author": [
|
||||
"Tom Hutchison",
|
||||
"..."
|
||||
|
@ -12,6 +12,9 @@
|
|||
"ValidSkinNames": {
|
||||
"pivot": "Pivot"
|
||||
},
|
||||
"requires": {
|
||||
"MediaWiki": ">= 1.35.0"
|
||||
},
|
||||
"MessagesDirs": {
|
||||
"Skinpivot": [
|
||||
"i18n"
|
||||
|
@ -26,13 +29,15 @@
|
|||
"styles": [
|
||||
"assets/stylesheets/normalize.css",
|
||||
"assets/stylesheets/font-awesome.css",
|
||||
"assets/stylesheets/legacy.css",
|
||||
"assets/stylesheets/foundation.css",
|
||||
"assets/stylesheets/pivot.css",
|
||||
"assets/stylesheets/fontawsome.css",
|
||||
"assets/stylesheets/pivot-print.css"
|
||||
]
|
||||
},
|
||||
"skins.pivot.modernizr": {
|
||||
"position": "bottom",
|
||||
"position": "top",
|
||||
"scripts": [
|
||||
"assets/scripts/vendor/modernizr.js"
|
||||
]
|
||||
|
@ -40,8 +45,6 @@
|
|||
"skins.pivot.js": {
|
||||
"position": "bottom",
|
||||
"scripts": [
|
||||
"assets/scripts/vendor/jquery.cookie.js",
|
||||
"assets/scripts/vendor/fastclick.js",
|
||||
"assets/scripts/vendor/placeholder.js",
|
||||
"assets/scripts/foundation/foundation.js",
|
||||
"assets/scripts/foundation/foundation.topbar.js",
|
||||
|
|
Loading…
Reference in New Issue