- updated release notes panel
- improved /admin login page - UI fixes
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -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'
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
@@ -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
BIN
public/img/landing/admin_1.jpg
Normal file
BIN
public/img/landing/admin_1.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 40 KiB |
BIN
public/img/landing/thumbs/admin_1.jpg
Normal file
BIN
public/img/landing/thumbs/admin_1.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.4 KiB |
BIN
public/img/landing/thumbs/wip.jpg
Normal file
BIN
public/img/landing/thumbs/wip.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.4 KiB |
@@ -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'
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
@@ -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();
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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}}"> </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>
|
||||
|
||||
@@ -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 login</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
10
public/templates/ui/footer.html
Normal file
10
public/templates/ui/footer.html
Normal 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>
|
||||
@@ -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>
|
||||
|
||||
@@ -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> Settings</a></li>
|
||||
<li class="{{ @tplPage == 'settings' ? 'active' : '' }} disabled"><a href="javascript:void(0);"><i class="fa fa-fw fa-gears"></i> Settings</a></li>
|
||||
<li class="{{ @tplPage == 'members' ? 'active' : '' }}"><a href="/admin/members"><i class="fa fa-fw fa-users"></i> Members</a></li>
|
||||
<li class="{{ @tplPage == 'maps' ? 'active' : '' }} disabled"><a href="/admin/maps"><i class="fa fa-fw fa-code-fork"></i> Maps</a></li>
|
||||
<li class="{{ @tplPage == 'activity' ? 'active' : '' }} disabled"><a href="/admin/activity"><i class="fa fa-fw fa-line-chart"></i> Activity</a></li>
|
||||
<li class="{{ @tplPage == 'maps' ? 'active' : '' }} disabled"><a href="javascript:void(0);"><i class="fa fa-fw fa-code-fork"></i> Maps</a></li>
|
||||
<li class="{{ @tplPage == 'activity' ? 'active' : '' }} disabled"><a href="javascript:void(0);"><i class="fa fa-fw fa-line-chart"></i> Activity</a></li>
|
||||
<li class="{{ @tplPage == 'login' ? 'active' : '' }}"><a href="/admin/login"><i class="fa fa-fw fa-sign-in"></i> SSO</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
@@ -29,4 +29,7 @@
|
||||
|
||||
<include if="{{ @tplPage }}" href="{{ 'templates/admin/' . @tplPage . '.html' }}" />
|
||||
|
||||
{* footer *}
|
||||
<include href="templates/ui/footer.html"/>
|
||||
|
||||
|
||||
|
||||
@@ -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 <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> admin SSO 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>
|
||||
|
||||
|
||||
@@ -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"/>
|
||||
@@ -1538,6 +1538,7 @@ input[type="email"]{
|
||||
.btn-labeled {
|
||||
padding-top: 0;
|
||||
padding-bottom: 0;
|
||||
padding-left: 8px;
|
||||
}
|
||||
|
||||
.btn-link {
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -27,6 +27,6 @@
|
||||
}
|
||||
|
||||
#pf-landing-admin-panel{
|
||||
bottom: 45px;
|
||||
bottom: 10px;
|
||||
right: 10px;
|
||||
}
|
||||
Reference in New Issue
Block a user