- updated release notes panel

- improved /admin login page
- UI fixes
This commit is contained in:
Exodus4D
2017-06-10 12:28:55 +02:00
parent a3d89b9d77
commit a95f25524a
24 changed files with 242 additions and 149 deletions

View File

@@ -8,6 +8,7 @@
namespace data\mapper;
use Lib\Util;
class AbstractIterator extends \RecursiveArrayIterator {
@@ -40,6 +41,15 @@ class AbstractIterator extends \RecursiveArrayIterator {
return iterator_to_array($this, true);
}
/**
* convert array keys to camelCase
* @param $array
* @return array
*/
protected function camelCaseKeys($array){
return Util::arrayChangeKeys($array, [\Base::instance(), 'camelcase']);
}
/**
* recursive iterator function called on every node
* @param $iterator

View File

@@ -22,6 +22,20 @@ class Util {
if( is_array($item) )
$item = self::arrayChangeKeyCaseRecursive($item);
return $item;
},array_change_key_case($arr, $case));
}, array_change_key_case($arr, $case));
}
/**
* convert array keys by a custom callback
* @param $arr
* @param $callback
* @return array
*/
static function arrayChangeKeys($arr, $callback){
return array_combine(
array_map(function ($key) use ($callback){
return $callback($key);
}, array_keys($arr)), $arr
);
}
}

View File

@@ -68,6 +68,7 @@ define([
// sticky panel
stickyPanelClass: 'pf-landing-sticky-panel', // class for sticky panels
stickyPanelServerId: 'pf-landing-server-panel', // id for EVE Online server status panel
stickyPanelAdminId: 'pf-landing-admin-panel', // id for admin login panel
// animation
animateElementClass: 'pf-animate-on-visible', // class for elements that will be animated to show
@@ -120,15 +121,34 @@ define([
});
};
/**
* move panel out of "cookie" accept hint
* @param direction
*/
let moveAdminPanel = (direction) => {
let adminPanel = $('#' + config.stickyPanelAdminId);
adminPanel.css({bottom: ((direction === 'up') ? '+' : '-') + '=35px'});
};
/**
* set page observer
*/
let setPageObserver = function(){
let cookieHintElement = $('#' + config.cookieHintId);
// cookie hint --------------------------------------------------------
cookieHintElement.on('show.bs.collapse', function () {
// move admin panel upwards (prevents overlapping with cookie notice)
moveAdminPanel('up');
});
cookieHintElement.on('hidden.bs.collapse', function () {
moveAdminPanel('down');
});
if(getCookie('cookie') !== '1'){
// hint not excepted
$('#' + config.cookieHintId).collapse('show');
cookieHintElement.collapse('show');
// show Cookie accept hint on SSO login button
let confirmationSettings = {
@@ -160,8 +180,8 @@ define([
$('.' + config.ssoButtonClass).confirmation(confirmationSettings);
}
$('#' + config.cookieHintId + ' .btn-success').on('click', function(){
setCookie('cookie', 1, config.defaultAcceptCookieExpire);
cookieHintElement.find('.btn-success').on('click', function(){
setCookie('cookie', 1, config.defaultAcceptCookieExpire);
});
// manual -------------------------------------------------------------
@@ -182,11 +202,14 @@ define([
// tooltips -----------------------------------------------------------
let mapTooltipOptions = {
toggle: 'tooltip',
container: 'body',
delay: 150
};
$('[title]').not('.slide img').tooltip(mapTooltipOptions);
let tooltipElements = $('[title]').not('.slide img');
tooltipElements.tooltip(mapTooltipOptions);
// initial show some tooltips
tooltipElements.filter('[data-show="1"]').tooltip('show');
};
/**
@@ -327,7 +350,7 @@ define([
* @returns {*|jQuery|HTMLElement}
*/
let getThumbnailElements = function(){
return $('a[data-gallery="#' + config.galleryId + '"]');
return $('a[data-gallery="#' + config.galleryId + '"]').not('.disabled');
};
/**
@@ -406,9 +429,9 @@ define([
/**
* init scrollspy for navigation bar
* init scrollSpy for navigation bar
*/
let initScrollspy = function(){
let initScrollSpy = function(){
// init scrollspy
// show elements that are currently in the viewport
@@ -812,7 +835,7 @@ define([
// init scrollspy
// -> after "Carousel"! required for correct "viewport" calculation (Gallery)!
initScrollspy();
initScrollSpy();
// init youtube videos
initYoutube();
@@ -825,39 +848,6 @@ define([
});
}, false);
require([
'datatables.net',
'datatables.net-buttons',
'datatables.net-buttons-html',
'datatables.net-responsive',
'datatables.net-select'
], function (startup) {
let systemsDataTable = $('.dataTable').dataTable( {
pageLength: 100,
paging: true,
// lengthMenu: [[5, 10, 20, 50, -1], [5, 10, 20, 50, 'All']],
ordering: true,
// order: [[ 9, 'desc' ], [ 3, 'asc' ]],
autoWidth: false,
// responsive: {
// breakpoints: Init.breakpoints,
// details: false
// },
hover: false,
//data: systemsData,
columnDefs: [],
language: {
emptyTable: 'No members',
zeroRecords: 'No members found',
lengthMenu: 'Show _MENU_ members',
info: 'Showing _START_ to _END_ of _TOTAL_ members'
}
});
});
});
});

View File

@@ -111,7 +111,7 @@ define([
)
);
// load header / footer
// load footer
$('.' + config.pageClass).loadHeader().loadFooter();
// load left menu
@@ -405,11 +405,6 @@ define([
$('<i>',{
class: 'fa fa-keyboard-o fa-fw'
})
).append(
$('<span>',{
class: 'badge bg-color bg-color-gray txt-color txt-color-warning',
text: 'beta'
})
).on('click', function(){
$(document).triggerMenuEvent('Shortcuts');
})
@@ -572,12 +567,11 @@ define([
currentYear: new Date().getFullYear()
};
let headRendered = Mustache.render(TplFooter, moduleData);
let footerElement = Mustache.render(TplFooter, moduleData);
pageElement.prepend(headRendered);
pageElement.prepend(footerElement);
// init footer ==================================================
pageElement.find('.' + config.footerLicenceLinkClass).on('click', function(){
//show credits info dialog
$.fn.showCreditsDialog();

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

@@ -68,6 +68,7 @@ define([
// sticky panel
stickyPanelClass: 'pf-landing-sticky-panel', // class for sticky panels
stickyPanelServerId: 'pf-landing-server-panel', // id for EVE Online server status panel
stickyPanelAdminId: 'pf-landing-admin-panel', // id for admin login panel
// animation
animateElementClass: 'pf-animate-on-visible', // class for elements that will be animated to show
@@ -120,15 +121,30 @@ define([
});
};
let moveAdminPanel = (direction) => {
let adminPanel = $('#' + config.stickyPanelAdminId);
adminPanel.css({bottom: ((direction === 'up') ? '+' : '-') + '=35px'});
};
/**
* set page observer
*/
let setPageObserver = function(){
let cookieHintElement = $('#' + config.cookieHintId);
// cookie hint --------------------------------------------------------
cookieHintElement.on('show.bs.collapse', function () {
// move admin panel upwards (prevents overlapping with cookie notice)
moveAdminPanel('up');
});
cookieHintElement.on('hidden.bs.collapse', function () {
moveAdminPanel('down');
});
if(getCookie('cookie') !== '1'){
// hint not excepted
$('#' + config.cookieHintId).collapse('show');
cookieHintElement.collapse('show');
// show Cookie accept hint on SSO login button
let confirmationSettings = {
@@ -160,8 +176,8 @@ define([
$('.' + config.ssoButtonClass).confirmation(confirmationSettings);
}
$('#' + config.cookieHintId + ' .btn-success').on('click', function(){
setCookie('cookie', 1, config.defaultAcceptCookieExpire);
cookieHintElement.find('.btn-success').on('click', function(){
setCookie('cookie', 1, config.defaultAcceptCookieExpire);
});
// manual -------------------------------------------------------------
@@ -182,11 +198,14 @@ define([
// tooltips -----------------------------------------------------------
let mapTooltipOptions = {
toggle: 'tooltip',
container: 'body',
delay: 150
};
$('[title]').not('.slide img').tooltip(mapTooltipOptions);
let tooltipElements = $('[title]').not('.slide img');
tooltipElements.tooltip(mapTooltipOptions);
// initial show some tooltips
tooltipElements.filter('[data-show="1"]').tooltip('show');
};
/**
@@ -327,7 +346,7 @@ define([
* @returns {*|jQuery|HTMLElement}
*/
let getThumbnailElements = function(){
return $('a[data-gallery="#' + config.galleryId + '"]');
return $('a[data-gallery="#' + config.galleryId + '"]').not('.disabled');
};
/**
@@ -406,9 +425,9 @@ define([
/**
* init scrollspy for navigation bar
* init scrollSpy for navigation bar
*/
let initScrollspy = function(){
let initScrollSpy = function(){
// init scrollspy
// show elements that are currently in the viewport
@@ -812,7 +831,7 @@ define([
// init scrollspy
// -> after "Carousel"! required for correct "viewport" calculation (Gallery)!
initScrollspy();
initScrollSpy();
// init youtube videos
initYoutube();
@@ -825,39 +844,6 @@ define([
});
}, false);
require([
'datatables.net',
'datatables.net-buttons',
'datatables.net-buttons-html',
'datatables.net-responsive',
'datatables.net-select'
], function (startup) {
let systemsDataTable = $('.dataTable').dataTable( {
pageLength: 100,
paging: true,
// lengthMenu: [[5, 10, 20, 50, -1], [5, 10, 20, 50, 'All']],
ordering: true,
// order: [[ 9, 'desc' ], [ 3, 'asc' ]],
autoWidth: false,
// responsive: {
// breakpoints: Init.breakpoints,
// details: false
// },
hover: false,
//data: systemsData,
columnDefs: [],
language: {
emptyTable: 'No members',
zeroRecords: 'No members found',
lengthMenu: 'Show _MENU_ members',
info: 'Showing _START_ to _END_ of _TOTAL_ members'
}
});
});
});
});

View File

@@ -111,7 +111,7 @@ define([
)
);
// load header / footer
// load footer
$('.' + config.pageClass).loadHeader().loadFooter();
// load left menu
@@ -405,11 +405,6 @@ define([
$('<i>',{
class: 'fa fa-keyboard-o fa-fw'
})
).append(
$('<span>',{
class: 'badge bg-color bg-color-gray txt-color txt-color-warning',
text: 'beta'
})
).on('click', function(){
$(document).triggerMenuEvent('Shortcuts');
})
@@ -572,12 +567,11 @@ define([
currentYear: new Date().getFullYear()
};
let headRendered = Mustache.render(TplFooter, moduleData);
let footerElement = Mustache.render(TplFooter, moduleData);
pageElement.prepend(headRendered);
pageElement.prepend(footerElement);
// init footer ==================================================
pageElement.find('.' + config.footerLicenceLinkClass).on('click', function(){
//show credits info dialog
$.fn.showCreditsDialog();

View File

@@ -1,10 +1,27 @@
<section id="pf-landing-login">
<div class="container col-xs-12">
<div class="row text-center">
<div class="col-md-6 col-md-offset-3">
<check if="{{ @tplLogged }}">
<true>
{* Logged IN *}
<h2>Admin <span class="txt-color txt-color-warning">{{ @character->name }}</span></h2>
<p class="lead">
You have already admin privileges. Switch character?
</p>
</true>
<false>
{* Logged OUT *}
<h2><span class="txt-color txt-color-primary">Admin login</span></h2>
</false>
</check>
</div>
</div>
<div class="row text-center">
<div class="col-xs-12 col-sm-10 col-sm-offset-1 col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 pf-landing-pricing-panel">
<div class="panel panel-default pricing-big pf-animate-on-visible pf-animate">
<div class="ribbon-wrapper"><div class="ribbon ribbon-orange">BETA</div></div>
<div class="panel panel-default pricing-big">
<div class="panel-heading text-left">
<h3 class="panel-title">Admin access</h3>
</div>
@@ -12,7 +29,7 @@
<div class="price-features price-features-fluid">
<ul class="list-unstyled text-left">
<li><i class="fa fa-fw fa-caret-right"></i> Click the SSO button below for <em>PATHFINDER</em> access with admin roles</li>
<li><i class="fa fa-fw fa-caret-right"></i> Admin roles require at least on of these in-game corporation roles granted to your character</li>
<li><i class="fa fa-fw fa-caret-right"></i> Admin roles require at least one of these in-game corporation roles granted to your character</li>
<li>
<ul>
<li><i class="fa fa-fw fa-angle-right"></i> <kbd>director</kbd>, <kbd>personnel_manager</kbd> or <kbd>security_officer</kbd></li>

View File

@@ -41,7 +41,7 @@
<div role="tabpanel" class="tab-pane fade {{#openTabSettings}}in active{{/openTabSettings}}" id="{{dialogMapSettingsContainerId}}">
<form role="form" class="form-horizontal">
<h4 class="pf-dynamic-area">Configuration</h4>
<h4 class="pf-dynamic-area">Map settings</h4>
<div class="row">
<div class="col-sm-6">
@@ -64,6 +64,20 @@
</div>
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<div class="col-sm-offset-1 col-sm-11">
<div class="col-sm-12 col-xs-6 checkbox" title="Keep custom aliases after delete">
<input id="{{persistentAliasesId}}" name="persistentAliases" value="1" type="checkbox" {{#persistentAliases}}checked{{/persistentAliases}}>
<label for="{{persistentAliasesId}}">Persistent system aliases</label>
</div>
</div>
</div>
</div>
<div class="col-sm-6">
</div>
</div>
<h4 class="pf-dynamic-area">Share settings</h4>

View File

@@ -16,7 +16,7 @@
<div class="row text-center">
<div class="col-xs-12">
<a class="pf-sso-login-button {{@registrationStatusButton}}" target="_self" href="{{ @tplAuthType }}" type="button" tabindex="3" title="{{@registrationStatusTitle}}">&nbsp;</a><br>
<a class="font-lg" target="_blank" href="http://community.eveonline.com/news/dev-blogs/eve-online-sso-and-what-you-need-to-know">What is this?</a>
<a target="_blank" href="http://community.eveonline.com/news/dev-blogs/eve-online-sso-and-what-you-need-to-know">What is this?</a>
</div>
</div>
</div>

View File

@@ -1,6 +1,6 @@
<div id="pf-landing-admin-panel" class="hidden-xs pf-landing-sticky-panel">
<h4 class="text-center">Admin</h4>
<ul class="fa-ul">
<li><i class="fa-li fa fa-sign-in"></i><a href="{{ 'admin', ['*' => ''] | alias }}">login</a></li>
<li><i class="fa-li fa fa-sign-in"></i><a href="{{ 'admin', ['*' => ''] | alias }}">SSO&nbsp;login</a></li>
</ul>
</div>

View File

@@ -0,0 +1,10 @@
<footer class="navbar-default navbar-fixed-bottom">
<div class="container-fluid">
<a href="{{ 'login' | alias }}" class="btn btn-default navbar-btn btn-default">
<i class="fa fa-arrow-left"></i> back
</a>
<a href="#pf-setup" class="btn btn-default navbar-btn btn-default pull-right">
<i class="fa fa-arrow-up"></i> top
</a>
</div>
</footer>

View File

@@ -7,10 +7,11 @@
<div class="panel-body no-padding text-align-center">
<div class="price-features" style="min-height: inherit;">
<ul class="list-unstyled text-left">
<li><i class="fa fa-fw fa-angle-right"></i>New "<em><a target="_blank" href="https://github.com/exodus4d/pathfinder/issues/481#issue-223584078">Nearby</a></em>" map overlay shows active pilots within 3 jumps around your current location</li>
<li><i class="fa fa-fw fa-angle-right"></i>Switch to <em>CCPs</em> new <a target="_blank" href="https://community.eveonline.com/news/dev-blogs/introducing-esi/">ESI API</a>. Replaces CREST API.</li>
<li><i class="fa fa-fw fa-angle-right"></i>New UI options added. E.g. Remote open inGame information windows</li>
<li><i class="fa fa-fw fa-angle-right"></i>Added new filter option for "<em>Frigat wormholes</em>" to route finder</li>
<li><i class="fa fa-fw fa-angle-right"></i>New "<a href="#pf-landing-admin">Admin interface</a>" for corporation administration (e.g. kick/ban members)
<span class="txt-color txt-color-warning">[BETA]</span>
<a target="_blank" href="https://github.com/exodus4d/pathfinder/issues/494">#494</a>
</li>
<li><i class="fa fa-fw fa-angle-right"></i>New <em>ESI</em> based, in-game <a target="_blank" href="https://github.com/exodus4d/pathfinder/issues/495">online status #495</a> tracking for characters </li>
<li><i class="fa fa-fw fa-angle-double-right"></i>Complete <a href="javascript:void(0)" class="pf-navbar-version-info">changelog</a></li>
</ul>
</div>

View File

@@ -3,7 +3,7 @@
<nav id="pf-navbar" class="navbar navbar-default navbar-fixed-top pf-head">
<div class="container col-sm-12">
{* Logged in *}
{* Logged IN *}
<check if="{{ @tplLogged }}">
<div id="pf-head" class="navbar-header">
<span class="navbar-brand">
@@ -16,10 +16,10 @@
</div>
<div class="navbar-collapse">
<ul class="nav navbar-nav navbar-right" role="tablist">
<li class="{{ @tplPage == 'settings' ? 'active' : '' }}"><a href="/admin/settings"><i class="fa fa-fw fa-gears"></i>&nbsp;Settings</a></li>
<li class="{{ @tplPage == 'settings' ? 'active' : '' }} disabled"><a href="javascript:void(0);"><i class="fa fa-fw fa-gears"></i>&nbsp;Settings</a></li>
<li class="{{ @tplPage == 'members' ? 'active' : '' }}"><a href="/admin/members"><i class="fa fa-fw fa-users"></i>&nbsp;Members</a></li>
<li class="{{ @tplPage == 'maps' ? 'active' : '' }} disabled"><a href="/admin/maps"><i class="fa fa-fw fa-code-fork"></i>&nbsp;Maps</a></li>
<li class="{{ @tplPage == 'activity' ? 'active' : '' }} disabled"><a href="/admin/activity"><i class="fa fa-fw fa-line-chart"></i>&nbsp;Activity</a></li>
<li class="{{ @tplPage == 'maps' ? 'active' : '' }} disabled"><a href="javascript:void(0);"><i class="fa fa-fw fa-code-fork"></i>&nbsp;Maps</a></li>
<li class="{{ @tplPage == 'activity' ? 'active' : '' }} disabled"><a href="javascript:void(0);"><i class="fa fa-fw fa-line-chart"></i>&nbsp;Activity</a></li>
<li class="{{ @tplPage == 'login' ? 'active' : '' }}"><a href="/admin/login"><i class="fa fa-fw fa-sign-in"></i>&nbsp;SSO</a></li>
</ul>
</div>
@@ -29,4 +29,7 @@
<include if="{{ @tplPage }}" href="{{ 'templates/admin/' . @tplPage . '.html' }}" />
{* footer *}
<include href="templates/ui/footer.html"/>

View File

@@ -1,7 +1,7 @@
{* config *}
<check if="{{ @PATHFINDER.REGISTRATION.STATUS != '1' }}">
<set registrationStatusButton="disabled" />
<set registrationStatusTitle= "User registration is currently not allowed" />
<set registrationStatusTitle= "User registration is currently disabled" />
</check>
{* splash page *}
@@ -30,6 +30,7 @@
<li><a class="page-scroll" data-anchor="#pf-landing-top" href="#">Login</a></li>
<li> <a class="page-scroll" data-anchor="#pf-landing-gallery" href="#">Features</a></li>
<li> <a class="page-scroll" data-anchor="#pf-landing-maps" href="#">Maps</a></li>
<li> <a class="page-scroll" data-anchor="#pf-landing-admin" href="#" title="new" data-placement="bottom" data-show="1">Admin&nbsp;<span class="badge txt-color txt-color-orange">beta</span></a></li>
<li> <a class="page-scroll" data-anchor="#pf-landing-install" href="#">Install</a></li>
<li> <a class="page-scroll" data-anchor="#pf-landing-about" href="#">About</a></li>
<li> <a class="page-scroll" data-anchor="#pf-landing-faq" href="#">FAQ</a></li>
@@ -154,8 +155,6 @@
</div>
<div class="row">
<div class="col-xs-12 col-sm-3 col-lg-2">
<a class="pf-animate-on-visible pf-animate" href="public/img/landing/login_1.jpg" data-description="Character login" data-gallery="#pf-gallery">
@@ -181,12 +180,7 @@
</li>
<li><i></i><em>CCP</em> s <em>SSO</em> login</li>
<li><i></i>Cookie based <a target="_blank" href="https://github.com/exodus4d/pathfinder/issues/138#issuecomment-216036606">login system</a></li>
<li><i></i><a target="_blank" href="{{ @PATHFINDER.REPO }}/issues/84"><em>CREST</em> API support</a></li>
<li>
<ul class="fa-ul">
<li><i></i>Character/Location data is pulled from CREST</li>
</ul>
</li>
<li><i></i><em>ESI</em> API support</a></li>
<li><i></i>HTML5 features</li>
<li>
<ul class="fa-ul">
@@ -254,7 +248,7 @@
<ul class="fa-ul">
<li><i></i>Pilot/Ship names</li>
<li><i></i>In-/decreasing pilot count per system</li>
<li><i></i>Location tracking (<em>CREST</em>)</li>
<li><i></i>Location tracking (<em>ESI</em>)</li>
</ul>
</li>
<li><i></i>System status</li>
@@ -269,7 +263,7 @@
<li><i></i>'Stargate', 'Wormhole', 'Jumpbridge'</li>
</ul>
</li>
<li><i></i>In game actions (<em>CREST</em>)</li>
<li><i></i>In game actions (<em>ESI</em>)</li>
<li>
<ul class="fa-ul">
<li><i></i>'Set destination', 'add waypoint'</li>
@@ -624,6 +618,67 @@
</div>
</section>
{* admin *}
<section id="pf-landing-admin">
<div class="container">
<div class="row text-center">
<div class="col-md-6 col-md-offset-3">
<h2><span class="text-primary">Admin</span> interface <small class="txt-color txt-color-warning">[BETA]</small></h2>
<p class="lead">
Characters with in-game corporation roles can grant acces to <em>PATHFINDER</em> corporation admin interface.
</p>
</div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-3 col-lg-2">
<a class="pf-animate-on-visible pf-animate" href="public/img/landing/admin_1.jpg" data-description="Member administration" data-gallery="#pf-gallery">
<img class="pf-landing-image-preview pf-landing-image-preview-small" data-original="public/img/landing/thumbs/admin_1.jpg" width="160" height="160" alt="Member administration">
</a>
</div>
<div class="col-xs-12 col-sm-9 col-lg-4">
<h4><i class="fa fa-fw fa-users"></i> Member administration</h4>
<ul class="fa-ul pf-landing-list">
<li><i></i>Manage your corporation members</li>
<li><i></i>View member information</li>
<li><i></i>Kick members temporary or forever</li>
<li><i></i>Ban members from installation</li>
</ul>
</div>
<div class="clearfix visible-xs visible-sm visible-md"></div>
<div class="col-xs-12 col-sm-3 col-lg-2">
<a class="pf-animate-on-visible pf-animate disabled" href="javascript:void(0);" data-description="Database settings" data-gallery="#pf-gallery">
<img class="pf-landing-image-preview pf-landing-image-preview-small" data-original="public/img/landing/thumbs/wip.jpg" width="160" height="160" alt="WIP">
</a>
</div>
<div class="col-xs-12 col-sm-9 col-lg-4">
<h4><i class="fa fa-fw fa-code-fork"></i> Map settings</h4>
<ul class="fa-ul pf-landing-list">
<li><i></i>Manage global corporation map settings</li>
<li><i></i>Set default map settings</li>
<li><i></i>Disable some sensitive map settings (e.g. im/export maps)</li>
</ul>
</div>
</div>
<div class="row text-center pf-landing-admin-login">
<i class="fa fa-fw fa-chevron-right"></i>
<a class="btn btn-labeled btn-primary" href="{{ 'admin', ['*' => ''] | alias }}">
<span class="btn-label">
<i class="fa fa-sign-in fa-fw"></i>
</span>&nbsp;admin&nbsp;SSO&nbsp;login
</a>
<i class="fa fa-fw fa-chevron-left"></i>
</div>
</div>
</section>
{* install *}
<section id="pf-landing-install">
<div class="container">
@@ -682,10 +737,8 @@
</li>
</ul>
</div>
</div>
</div>
</section>

View File

@@ -1013,13 +1013,4 @@
</section>
{* footer *}
<footer class="navbar-default navbar-fixed-bottom">
<div class="container-fluid">
<a href="{{ 'login' | alias }}" class="btn btn-default navbar-btn btn-default">
<i class="fa fa-arrow-left"></i> back
</a>
<a href="#pf-setup" class="btn btn-default navbar-btn btn-default pull-right">
<i class="fa fa-arrow-up"></i> top
</a>
</div>
</footer>
<include href="templates/ui/footer.html"/>

View File

@@ -1538,6 +1538,7 @@ input[type="email"]{
.btn-labeled {
padding-top: 0;
padding-bottom: 0;
padding-left: 8px;
}
.btn-link {

View File

@@ -155,6 +155,7 @@
.pf-credits-logo-background{
overflow: visible;
background: url("#{$base-url}/logo_bg.png");
background-size: cover;
padding: 20px;
margin-bottom: 20px;
}

View File

@@ -413,6 +413,10 @@
opacity: 0;
}
}
&.disabled{
pointer-events: auto; // required for tooltips to be shown on "disabled" links
}
}
#pf-notification-panel{
@@ -569,6 +573,13 @@
}
}
// admin ----------------------------------------------------------------------
#pf-landing-admin{
.pf-landing-admin-login{
margin-bottom: 0;
}
}
// about ----------------------------------------------------------------------
#pf-landing-about{
@@ -584,7 +595,11 @@
.pf-landing-footer{
padding: 30px 0;
font-family: $font-family-bold;
background-color: darken($gray-darker, 8%);
background-color: darken($gray-darker, 8%) ;
.row{
margin-bottom: 0 !important; // overwrite default
}
.pf-social-networks > li{
display: inline-block;

View File

@@ -1056,12 +1056,6 @@ td.pf-popover-trigger{
}
.badge{
background-color: $gray;
color: $gray-lighter;
}
.pf-head-user-character, .pf-head-user-ship{
opacity: 0; // triggered by js
visibility: hidden;
@@ -1105,6 +1099,11 @@ td.pf-popover-trigger{
.pf-head{
@include box-shadow(0 6px 12px rgba(0,0,0,.4));
.badge{
background-color: $gray;
color: $gray-lighter;
}
}
// character switch popover

View File

@@ -27,6 +27,6 @@
}
#pf-landing-admin-panel{
bottom: 45px;
bottom: 10px;
right: 10px;
}