- added new character setting for "auto update location", closed #220
This commit is contained in:
@@ -264,21 +264,9 @@ class User extends Controller\Controller{
|
||||
|
||||
// sharing config -------------------------------------------------------------
|
||||
if(isset($formData['share'])){
|
||||
$privateSharing = 0;
|
||||
$corporationSharing = 0;
|
||||
$allianceSharing = 0;
|
||||
|
||||
if(isset($formData['privateSharing'])){
|
||||
$privateSharing = 1;
|
||||
}
|
||||
|
||||
if(isset($formData['corporationSharing'])){
|
||||
$corporationSharing = 1;
|
||||
}
|
||||
|
||||
if(isset($formData['allianceSharing'])){
|
||||
$allianceSharing = 1;
|
||||
}
|
||||
$privateSharing = (int)$formData['privateSharing'];
|
||||
$corporationSharing = (int)$formData['corporationSharing'];
|
||||
$allianceSharing = (int)$formData['allianceSharing'];
|
||||
|
||||
// update private/corp/ally
|
||||
$corporation = $activeCharacter->getCorporation();
|
||||
@@ -298,6 +286,13 @@ class User extends Controller\Controller{
|
||||
$activeCharacter->save();
|
||||
}
|
||||
|
||||
// character config -----------------------------------------------------------
|
||||
if(isset($formData['character'])){
|
||||
$activeCharacter->logLocation = (int)$formData['logLocation'];
|
||||
|
||||
$activeCharacter->save();
|
||||
}
|
||||
|
||||
// get fresh updated user object
|
||||
$newUserData = $user->getData();
|
||||
}
|
||||
|
||||
@@ -89,6 +89,11 @@ class CharacterModel extends BasicModel {
|
||||
'nullable' => false,
|
||||
'default' => 0
|
||||
],
|
||||
'logLocation' => [
|
||||
'type' => Schema::DT_BOOL,
|
||||
'nullable' => false,
|
||||
'default' => 1
|
||||
],
|
||||
'userCharacter' => [
|
||||
'has-one' => ['Model\UserCharacterModel', 'characterId']
|
||||
],
|
||||
@@ -125,6 +130,7 @@ class CharacterModel extends BasicModel {
|
||||
$characterData->id = $this->id;
|
||||
$characterData->name = $this->name;
|
||||
$characterData->shared = $this->shared;
|
||||
$characterData->logLocation = $this->logLocation;
|
||||
|
||||
if($addCharacterLogData){
|
||||
if($logModel = $this->getLog()){
|
||||
@@ -185,6 +191,19 @@ class CharacterModel extends BasicModel {
|
||||
return $accessToken;
|
||||
}
|
||||
|
||||
public function set_logLocation($logLocation){
|
||||
$logLocation = (bool)$logLocation;
|
||||
if(
|
||||
!$logLocation &&
|
||||
$logLocation !== $this->logLocation &&
|
||||
$this->hasLog()
|
||||
){
|
||||
$this->getLog()->erase();
|
||||
}
|
||||
|
||||
return $logLocation;
|
||||
}
|
||||
|
||||
/**
|
||||
* Event "Hook" function
|
||||
* @param self $self
|
||||
@@ -230,6 +249,14 @@ class CharacterModel extends BasicModel {
|
||||
return is_object($this->userCharacter);
|
||||
}
|
||||
|
||||
/**
|
||||
* check whether this character has an active location log
|
||||
* @return bool
|
||||
*/
|
||||
public function hasLog(){
|
||||
return is_object($this->characterLog);
|
||||
}
|
||||
|
||||
/**
|
||||
* check whether this character has a corporation
|
||||
* @return bool
|
||||
@@ -383,29 +410,32 @@ class CharacterModel extends BasicModel {
|
||||
* @return $this
|
||||
*/
|
||||
public function updateLog($additionalOptions = []){
|
||||
// Try to pull data from CREST
|
||||
$ssoController = new Sso();
|
||||
$logData = $ssoController->getCharacterLocationData($this->getAccessToken(), $additionalOptions);
|
||||
//check if log update is enabled for this user
|
||||
if( $this->logLocation ){
|
||||
// Try to pull data from CREST
|
||||
$ssoController = new Sso();
|
||||
$logData = $ssoController->getCharacterLocationData($this->getAccessToken(), $additionalOptions);
|
||||
|
||||
if($logData['timeout'] === false){
|
||||
if( empty($logData['system']) ){
|
||||
// character is not in-game
|
||||
if(is_object($this->characterLog)){
|
||||
// delete existing log
|
||||
$this->characterLog->erase();
|
||||
$this->save();
|
||||
}
|
||||
}else{
|
||||
// character is currently in-game
|
||||
if( !$characterLog = $this->getLog() ){
|
||||
// create new log
|
||||
$characterLog = $this->rel('characterLog');
|
||||
$characterLog->characterId = $this->_id;
|
||||
}
|
||||
$characterLog->setData($logData);
|
||||
$characterLog->save();
|
||||
if($logData['timeout'] === false){
|
||||
if( empty($logData['system']) ){
|
||||
// character is not in-game
|
||||
if( $this->hasLog() ){
|
||||
// delete existing log
|
||||
$this->characterLog->erase();
|
||||
$this->save();
|
||||
}
|
||||
}else{
|
||||
// character is currently in-game
|
||||
if( !$characterLog = $this->getLog() ){
|
||||
// create new log
|
||||
$characterLog = $this->rel('characterLog');
|
||||
$characterLog->characterId = $this->_id;
|
||||
}
|
||||
$characterLog->setData($logData);
|
||||
$characterLog->save();
|
||||
|
||||
$this->characterLog = $characterLog;
|
||||
$this->characterLog = $characterLog;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -487,7 +517,7 @@ class CharacterModel extends BasicModel {
|
||||
public function getLog(){
|
||||
$characterLog = false;
|
||||
if(
|
||||
is_object($this->characterLog) &&
|
||||
$this->hasLog() &&
|
||||
!$this->characterLog->dry()
|
||||
){
|
||||
$characterLog = &$this->characterLog;
|
||||
|
||||
@@ -53,7 +53,6 @@ define([
|
||||
headActiveUserClass: 'pf-head-active-user', // class for "active user" link
|
||||
headCurrentLocationClass: 'pf-head-current-location', // class for "show current location" link
|
||||
headProgramStatusClass: 'pf-head-program-status', // class for "program status" notification
|
||||
headMapTrackingId: 'pf-head-map-tracking', // id for "map tracking" toggle (checkbox)
|
||||
|
||||
// footer
|
||||
pageFooterId: 'pf-footer', // id for page footer
|
||||
@@ -402,7 +401,7 @@ define([
|
||||
userCharacterImageClass: config.userCharacterImageClass,
|
||||
userShipClass: config.headUserShipClass,
|
||||
userShipImageClass: config.userShipImageClass,
|
||||
mapTrackingId: config.headMapTrackingId
|
||||
mapTrackingId: Util.config.headMapTrackingId
|
||||
};
|
||||
|
||||
var headRendered = Mustache.render(TplHead, moduleData);
|
||||
@@ -447,7 +446,7 @@ define([
|
||||
});
|
||||
|
||||
// tracking toggle
|
||||
var mapTrackingCheckbox = $('#' + config.headMapTrackingId);
|
||||
var mapTrackingCheckbox = $('#' + Util.config.headMapTrackingId);
|
||||
mapTrackingCheckbox.bootstrapToggle({
|
||||
size: 'mini',
|
||||
on: 'on',
|
||||
@@ -494,7 +493,6 @@ define([
|
||||
* load page footer
|
||||
*/
|
||||
$.fn.loadFooter = function(){
|
||||
|
||||
var pageElement = $(this);
|
||||
|
||||
var moduleData = {
|
||||
@@ -727,7 +725,6 @@ define([
|
||||
* updates the header with current user data
|
||||
*/
|
||||
$.fn.updateHeaderUserData = function(){
|
||||
|
||||
var userData = Util.getCurrentUserData();
|
||||
|
||||
var userInfoElement = $('.' + config.headUserCharacterClass);
|
||||
@@ -771,7 +768,7 @@ define([
|
||||
|
||||
};
|
||||
|
||||
// check for changes
|
||||
// check for character/ship changes ---------------------------------------------
|
||||
if(
|
||||
userData &&
|
||||
userData.character
|
||||
@@ -783,6 +780,9 @@ define([
|
||||
newShipId = userData.character.log.ship.typeId;
|
||||
newShipName = userData.character.log.ship.typeName;
|
||||
}
|
||||
|
||||
// en/disable "map tracking" toggle
|
||||
updateMapTrackingToggle(userData.character.logLocation);
|
||||
}
|
||||
|
||||
var newCharactersOptionIds = userData.characters.map(function(data){
|
||||
@@ -831,6 +831,19 @@ define([
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* update "map tracking" toggle in header
|
||||
* @param status
|
||||
*/
|
||||
var updateMapTrackingToggle = function(status){
|
||||
var mapTrackingCheckbox = $('#' + Util.config.headMapTrackingId);
|
||||
if(status === true){
|
||||
mapTrackingCheckbox.bootstrapToggle('enable');
|
||||
}else{
|
||||
mapTrackingCheckbox.bootstrapToggle('off').bootstrapToggle('disable');
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* delete active character log for the current user
|
||||
*/
|
||||
|
||||
@@ -16,6 +16,7 @@ define([
|
||||
settingsDialogId: 'pf-settings-dialog', // id for "settings" dialog
|
||||
settingsAccountContainerId: 'pf-settings-dialog-account', // id for the "account" container
|
||||
settingsShareContainerId: 'pf-settings-dialog-share', // id for the "share" container
|
||||
settingsCharacterContainerId: 'pf-settings-dialog-character', // id for the "character" container
|
||||
|
||||
// captcha
|
||||
captchaKeyUpdateAccount: 'SESSION.CAPTCHA.ACCOUNT.UPDATE', // key for captcha reason
|
||||
@@ -47,6 +48,7 @@ define([
|
||||
id: config.settingsDialogId,
|
||||
settingsAccountContainerId: config.settingsAccountContainerId,
|
||||
settingsShareContainerId: config.settingsShareContainerId,
|
||||
settingsCharacterContainerId: config.settingsCharacterContainerId,
|
||||
userData: Init.currentUserData,
|
||||
captchaImageWrapperId: config.captchaImageWrapperId,
|
||||
captchaImageId: config.captchaImageId,
|
||||
@@ -193,7 +195,7 @@ define([
|
||||
accountSettingsDialog.find('.navbar a').on('shown.bs.tab', function(e){
|
||||
|
||||
// init "toggle" switches on current active tab
|
||||
accountSettingsDialog.find( $(this).attr('href') ).find('input[type="checkbox"]').bootstrapToggle({
|
||||
accountSettingsDialog.find( $(this).attr('href') ).find('input[data-toggle="toggle"][type="checkbox"]').bootstrapToggle({
|
||||
on: '<i class="fa fa-fw fa-check"></i> Enable',
|
||||
off: 'Disable <i class="fa fa-fw fa-ban"></i>',
|
||||
onstyle: 'success',
|
||||
|
||||
@@ -393,22 +393,33 @@ define([
|
||||
*/
|
||||
$.fn.getFormValues = function(){
|
||||
var form = $(this);
|
||||
|
||||
var formData = {};
|
||||
var values = form.serializeArray();
|
||||
|
||||
// add "unchecked" checkboxes as well
|
||||
values = values.concat(
|
||||
form.find('input[type=checkbox]:not(:checked)').map(
|
||||
function() {
|
||||
return {name: this.name, value: 0};
|
||||
}).get()
|
||||
);
|
||||
|
||||
for(let field of values){
|
||||
// check for numeric values -> convert to Int
|
||||
let value = ( /^\d+$/.test(field.value) ) ? parseInt(field.value) : field.value;
|
||||
|
||||
$.each(form.serializeArray(), function(i, field) {
|
||||
if(field.name.indexOf('[]') !== -1){
|
||||
// array field
|
||||
var key = field.name.replace('[]', '');
|
||||
if(! $.isArray(formData[key]) ){
|
||||
if( !$.isArray(formData[key]) ){
|
||||
formData[key] = [];
|
||||
}
|
||||
|
||||
formData[key].push( field.value);
|
||||
formData[key].push( value);
|
||||
}else{
|
||||
formData[field.name] = field.value;
|
||||
formData[field.name] = value;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// get xEditable values
|
||||
var editableValues = form.find('.' + config.formEditableFieldClass).editable('getValue');
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -53,7 +53,6 @@ define([
|
||||
headActiveUserClass: 'pf-head-active-user', // class for "active user" link
|
||||
headCurrentLocationClass: 'pf-head-current-location', // class for "show current location" link
|
||||
headProgramStatusClass: 'pf-head-program-status', // class for "program status" notification
|
||||
headMapTrackingId: 'pf-head-map-tracking', // id for "map tracking" toggle (checkbox)
|
||||
|
||||
// footer
|
||||
pageFooterId: 'pf-footer', // id for page footer
|
||||
@@ -402,7 +401,7 @@ define([
|
||||
userCharacterImageClass: config.userCharacterImageClass,
|
||||
userShipClass: config.headUserShipClass,
|
||||
userShipImageClass: config.userShipImageClass,
|
||||
mapTrackingId: config.headMapTrackingId
|
||||
mapTrackingId: Util.config.headMapTrackingId
|
||||
};
|
||||
|
||||
var headRendered = Mustache.render(TplHead, moduleData);
|
||||
@@ -447,7 +446,7 @@ define([
|
||||
});
|
||||
|
||||
// tracking toggle
|
||||
var mapTrackingCheckbox = $('#' + config.headMapTrackingId);
|
||||
var mapTrackingCheckbox = $('#' + Util.config.headMapTrackingId);
|
||||
mapTrackingCheckbox.bootstrapToggle({
|
||||
size: 'mini',
|
||||
on: 'on',
|
||||
@@ -494,7 +493,6 @@ define([
|
||||
* load page footer
|
||||
*/
|
||||
$.fn.loadFooter = function(){
|
||||
|
||||
var pageElement = $(this);
|
||||
|
||||
var moduleData = {
|
||||
@@ -727,7 +725,6 @@ define([
|
||||
* updates the header with current user data
|
||||
*/
|
||||
$.fn.updateHeaderUserData = function(){
|
||||
|
||||
var userData = Util.getCurrentUserData();
|
||||
|
||||
var userInfoElement = $('.' + config.headUserCharacterClass);
|
||||
@@ -771,7 +768,7 @@ define([
|
||||
|
||||
};
|
||||
|
||||
// check for changes
|
||||
// check for character/ship changes ---------------------------------------------
|
||||
if(
|
||||
userData &&
|
||||
userData.character
|
||||
@@ -783,6 +780,9 @@ define([
|
||||
newShipId = userData.character.log.ship.typeId;
|
||||
newShipName = userData.character.log.ship.typeName;
|
||||
}
|
||||
|
||||
// en/disable "map tracking" toggle
|
||||
updateMapTrackingToggle(userData.character.logLocation);
|
||||
}
|
||||
|
||||
var newCharactersOptionIds = userData.characters.map(function(data){
|
||||
@@ -831,6 +831,19 @@ define([
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* update "map tracking" toggle in header
|
||||
* @param status
|
||||
*/
|
||||
var updateMapTrackingToggle = function(status){
|
||||
var mapTrackingCheckbox = $('#' + Util.config.headMapTrackingId);
|
||||
if(status === true){
|
||||
mapTrackingCheckbox.bootstrapToggle('enable');
|
||||
}else{
|
||||
mapTrackingCheckbox.bootstrapToggle('off').bootstrapToggle('disable');
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* delete active character log for the current user
|
||||
*/
|
||||
|
||||
@@ -16,6 +16,7 @@ define([
|
||||
settingsDialogId: 'pf-settings-dialog', // id for "settings" dialog
|
||||
settingsAccountContainerId: 'pf-settings-dialog-account', // id for the "account" container
|
||||
settingsShareContainerId: 'pf-settings-dialog-share', // id for the "share" container
|
||||
settingsCharacterContainerId: 'pf-settings-dialog-character', // id for the "character" container
|
||||
|
||||
// captcha
|
||||
captchaKeyUpdateAccount: 'SESSION.CAPTCHA.ACCOUNT.UPDATE', // key for captcha reason
|
||||
@@ -47,6 +48,7 @@ define([
|
||||
id: config.settingsDialogId,
|
||||
settingsAccountContainerId: config.settingsAccountContainerId,
|
||||
settingsShareContainerId: config.settingsShareContainerId,
|
||||
settingsCharacterContainerId: config.settingsCharacterContainerId,
|
||||
userData: Init.currentUserData,
|
||||
captchaImageWrapperId: config.captchaImageWrapperId,
|
||||
captchaImageId: config.captchaImageId,
|
||||
@@ -193,7 +195,7 @@ define([
|
||||
accountSettingsDialog.find('.navbar a').on('shown.bs.tab', function(e){
|
||||
|
||||
// init "toggle" switches on current active tab
|
||||
accountSettingsDialog.find( $(this).attr('href') ).find('input[type="checkbox"]').bootstrapToggle({
|
||||
accountSettingsDialog.find( $(this).attr('href') ).find('input[data-toggle="toggle"][type="checkbox"]').bootstrapToggle({
|
||||
on: '<i class="fa fa-fw fa-check"></i> Enable',
|
||||
off: 'Disable <i class="fa fa-fw fa-ban"></i>',
|
||||
onstyle: 'success',
|
||||
|
||||
@@ -393,22 +393,33 @@ define([
|
||||
*/
|
||||
$.fn.getFormValues = function(){
|
||||
var form = $(this);
|
||||
|
||||
var formData = {};
|
||||
var values = form.serializeArray();
|
||||
|
||||
// add "unchecked" checkboxes as well
|
||||
values = values.concat(
|
||||
form.find('input[type=checkbox]:not(:checked)').map(
|
||||
function() {
|
||||
return {name: this.name, value: 0};
|
||||
}).get()
|
||||
);
|
||||
|
||||
for(let field of values){
|
||||
// check for numeric values -> convert to Int
|
||||
let value = ( /^\d+$/.test(field.value) ) ? parseInt(field.value) : field.value;
|
||||
|
||||
$.each(form.serializeArray(), function(i, field) {
|
||||
if(field.name.indexOf('[]') !== -1){
|
||||
// array field
|
||||
var key = field.name.replace('[]', '');
|
||||
if(! $.isArray(formData[key]) ){
|
||||
if( !$.isArray(formData[key]) ){
|
||||
formData[key] = [];
|
||||
}
|
||||
|
||||
formData[key].push( field.value);
|
||||
formData[key].push( value);
|
||||
}else{
|
||||
formData[field.name] = field.value;
|
||||
formData[field.name] = value;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// get xEditable values
|
||||
var editableValues = form.find('.' + config.formEditableFieldClass).editable('getValue');
|
||||
|
||||
@@ -8,18 +8,25 @@
|
||||
<i class="fa fa-user fa-fw"></i> Account
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a role="tab" data-toggle="tab" data-name="share" href="#{{settingsShareContainerId}}">
|
||||
<i class="fa fa-share-alt fa-fw"></i> Share
|
||||
</a>
|
||||
</li>
|
||||
{{#userData.character}}
|
||||
<li>
|
||||
<a role="tab" data-toggle="tab" data-name="share" href="#{{settingsShareContainerId}}">
|
||||
<i class="fa fa-share-alt fa-fw"></i> Share
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a role="tab" data-toggle="tab" data-name="share" href="#{{settingsCharacterContainerId}}">
|
||||
<i class="fa fa-male fa-fw"></i> Character
|
||||
</a>
|
||||
</li>
|
||||
{{/userData.character}}
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="tab-content">
|
||||
<div role="tabpanel" class="tab-pane fade in active" id="{{settingsAccountContainerId}}">
|
||||
{{! account tab ================================================================================================ }}
|
||||
{{! account tab ================================================================================================== }}
|
||||
<form role="form" class="form-horizontal">
|
||||
|
||||
{{! Username }}
|
||||
@@ -147,7 +154,7 @@
|
||||
</form>
|
||||
</div>
|
||||
<div role="tabpanel" class="tab-pane" id="{{settingsShareContainerId}}">
|
||||
{{! sharing tab ================================================================================================ }}
|
||||
{{! sharing tab ================================================================================================== }}
|
||||
|
||||
<form role="form" class="form-horizontal">
|
||||
|
||||
@@ -164,58 +171,44 @@
|
||||
</div>
|
||||
|
||||
{{#userData.character}}
|
||||
<h4 class="pf-dynamic-area"><img src="{{ccpImageServer}}Character/{{id}}_32.jpg"> Private maps "<em class="pf-map-type-private">{{name}}</em>"</h4>
|
||||
|
||||
<h4 class="pf-dynamic-area"><img src="{{ccpImageServer}}Character/{{id}}_64.jpg"> Private maps "<em class="pf-map-type-private">{{name}}</em>"</h4>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-sm-9">
|
||||
<div class="col-sm-10">
|
||||
<label for="privateSharing">
|
||||
<input id="privateSharing" type="checkbox" name="privateSharing" data-toggle="toggle" value="1" {{#shared}}checked{{/shared}}>
|
||||
map invite for private maps
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
|
||||
<label class="control-label" for="privateSharing">
|
||||
<input id="privateSharing" type="checkbox" name="privateSharing" data-toggle="toggle" value="1" {{#shared}}checked{{/shared}}>
|
||||
map invite for private maps
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-sm-3"></div>
|
||||
</div>
|
||||
|
||||
{{#corporation}}
|
||||
<h4 class="pf-dynamic-area"><img src="{{ccpImageServer}}Corporation/{{id}}_32.png"> Corporation maps "<em class="pf-map-type-corporation">{{name}}</em>"</h4>
|
||||
|
||||
<h4 class="pf-dynamic-area"><img src="{{ccpImageServer}}Corporation/{{id}}_64.png"> Corporation maps "<em class="pf-map-type-corporation">{{name}}</em>"</h4>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-sm-9">
|
||||
<div class="col-sm-10">
|
||||
<label for="corporationSharing">
|
||||
<input id="corporationSharing" type="checkbox" name="corporationSharing" data-toggle="toggle" value="1" {{#shared}}checked{{/shared}}>
|
||||
map invite for corporation maps
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
|
||||
<label class="control-label" for="corporationSharing">
|
||||
<input id="corporationSharing" type="checkbox" name="corporationSharing" data-toggle="toggle" value="1" {{#shared}}checked{{/shared}}>
|
||||
map invite for corporation maps
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-sm-3"></div>
|
||||
</div>
|
||||
|
||||
{{/corporation}}
|
||||
|
||||
{{#alliance}}
|
||||
<h4 class="pf-dynamic-area"><img src="{{ccpImageServer}}Alliance/{{id}}_32.png"> Alliance maps "<em class="pf-map-type-alliance">{{name}}</em>"</h4>
|
||||
<h4 class="pf-dynamic-area"><img src="{{ccpImageServer}}Alliance/{{id}}_64.png"> Alliance maps "<em class="pf-map-type-alliance">{{name}}</em>"</h4>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-sm-9">
|
||||
<div class="col-sm-10">
|
||||
<label for="allianceSharing">
|
||||
<input id="allianceSharing" type="checkbox" name="allianceSharing" data-toggle="toggle" value="1" {{#shared}}checked{{/shared}}>
|
||||
map invite for alliance maps
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
|
||||
<label class="control-label" for="allianceSharing">
|
||||
<input id="allianceSharing" type="checkbox" name="allianceSharing" data-toggle="toggle" value="1" {{#shared}}checked{{/shared}}>
|
||||
map invite for alliance maps
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-sm-3"></div>
|
||||
</div>
|
||||
{{/alliance}}
|
||||
|
||||
@@ -225,5 +218,33 @@
|
||||
|
||||
</form>
|
||||
</div>
|
||||
<div role="tabpanel" class="tab-pane" id="{{settingsCharacterContainerId}}">
|
||||
{{! character tab ================================================================================================ }}
|
||||
|
||||
<form role="form" class="form-horizontal">
|
||||
|
||||
{{#userData.character}}
|
||||
<h4 class="pf-dynamic-area"><img src="{{ccpImageServer}}Character/{{id}}_64.jpg"> {{name}}</h4>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-8 col-sm-6">
|
||||
<div class="form-group">
|
||||
<div class="col-sm-offset-1 col-sm-11">
|
||||
<div class="checkbox checkbox-primary" title="show/share current location on map">
|
||||
<input id="logLocation" name="logLocation" value="1" type="checkbox" {{#logLocation}}checked{{/logLocation}}>
|
||||
<label for="logLocation">Auto update current location</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6"></div>
|
||||
</div>
|
||||
|
||||
<input type="hidden" name="character">
|
||||
|
||||
{{/userData.character}}
|
||||
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -40,7 +40,7 @@
|
||||
<i class="fa fa-fw fa-bolt"></i>
|
||||
<span>offline</span>
|
||||
</p>
|
||||
<p class="navbar-text" title="map tracking">
|
||||
<p class="navbar-text" title="map connection tracking">
|
||||
<i class="fa fa-fw fa-location-arrow"></i>
|
||||
<input id="{{mapTrackingId}}" type="checkbox" data-toggle="toggle" value="1" >
|
||||
</p>
|
||||
|
||||
@@ -13,6 +13,11 @@
|
||||
&.pf-dynamic-area{
|
||||
min-height: 0;
|
||||
margin: 10px 0;
|
||||
|
||||
& > img{
|
||||
margin: -10px 5px -10px -10px;
|
||||
width: 35px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user