You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
89 lines
3.8 KiB
HTML
89 lines
3.8 KiB
HTML
<!--
|
|
TerranQuest - Augmented Reality fantasy game
|
|
|
|
Copyright 2016 Netsyms Technologies
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
<div class="h4" id="player-name"></div>
|
|
<div id="player-level"></div>
|
|
<div class="h5" id="badge-header">Badges</div>
|
|
<div id="loading-badges">
|
|
<i class="fa fa-spinner fa-pulse"></i> Loading...
|
|
</div>
|
|
<div class="container" id="badge-container">
|
|
<div class="row" id="badges">
|
|
|
|
</div>
|
|
</div>
|
|
<script>
|
|
function popBadge(name, desc) {
|
|
navigator.notification.alert(desc, null, name, "Close");
|
|
}
|
|
|
|
function loadProfile(user) {
|
|
$('#player-name').text(user);
|
|
loadBadges(user);
|
|
loadPlayerStats(user);
|
|
}
|
|
|
|
function loadPlayerStats(user) {
|
|
$.getJSON(mkApiUrl('getstats'), {
|
|
user: user
|
|
}, function (data) {
|
|
if (data.status === 'OK' && data.stats != null) {
|
|
if (data.stats.level != null) {
|
|
$('#player-level').text('Level ' + Math.floor(data.stats.level));
|
|
} else {
|
|
$('#player-level').text('Player does not exist.');
|
|
}
|
|
$('#player-name').css('border-color', '#' + getTeamColorFromId(data.stats.teamid));
|
|
$('#player-name').css('color', '#' + getTeamColorFromId(data.stats.teamid));
|
|
$('#player-level').css('border-color', '#' + getTeamColorFromId(data.stats.teamid));
|
|
$('#badge-header').css('border-color', '#' + getTeamColorFromId(data.stats.teamid));
|
|
$('#badges').css('border-color', '#' + getTeamColorFromId(data.stats.teamid));
|
|
$('.badge-img').css('border-color', '#' + getTeamColorFromId(data.stats.teamid));
|
|
} else {
|
|
$('#player-level').text('Cannot load player stats.');
|
|
}
|
|
}).fail(function () {
|
|
$('#player-level').text('Loading failed. <a onclick="loadProfile(\'' + user + '\')">Reload</a>"');
|
|
});
|
|
}
|
|
|
|
function loadBadges(user) {
|
|
$('#loading-badges').html('<i class="fa fa-spinner fa-pulse"></i> Loading...');
|
|
$('#loading-badges').css('display', 'block');
|
|
$.getJSON(
|
|
mkApiUrl('getbadges') + '?user=' + user,
|
|
function (data) {
|
|
if (data.status === 'OK') {
|
|
data.badges.forEach(function (item) {
|
|
var badgehtml = '<div class="col col-xs-3 col-md-2 col-lg-1" '
|
|
+ 'onclick="popBadge(\'' + item.badgename + '\', \'' + item.badgedesc + '\')">'
|
|
+ '<img class="badge-img img-circle img-responsive" alt="" src="assets/badges/' + item.badgesid + '.png" onerror="this.src=\'assets/badges/badge.png\'"/>'
|
|
+ '</div>'
|
|
$('#badges').append(badgehtml);
|
|
});
|
|
$('#loading-badges').css('display', 'none');
|
|
} else {
|
|
$('#loading-badges').html('Loading failed. <a onclick="loadAchievements(\'' + user + '\')">Reload</a>"');
|
|
}
|
|
}
|
|
).fail(
|
|
function (err) {
|
|
$('#loading-badges').html('Loading failed. <a onclick="loadProfile(\'' + user + '\')">Reload</a>"');
|
|
}
|
|
);
|
|
}
|
|
</script> |