147 lines
6.3 KiB
Plaintext
147 lines
6.3 KiB
Plaintext
{% extends "layouts/base.html" %}
|
|
{% block title %}My Profile - TryoutPro{% endblock %}
|
|
{% block page_title %}My Profile{% endblock %}
|
|
{% block breadcrumb %}<span class="breadcrumb">Home / Profile</span>{% endblock %}
|
|
|
|
{% block header_actions %}
|
|
<div class="header-actions">
|
|
<a href="{{ url_for('users.edit_profile') }}" class="btn btn-sm btn-primary">
|
|
<i class="fas fa-edit"></i> Edit Profile
|
|
</a>
|
|
</div>
|
|
{% endblock %}
|
|
|
|
{% block content %}
|
|
<div class="dashboard-grid">
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h3><i class="fas fa-user-circle"></i> Account Information</h3>
|
|
</div>
|
|
<div class="card-body">
|
|
<div class="profile-header">
|
|
<div class="user-avatar avatar-xl">{{ user.full_name[:2] | upper }}</div>
|
|
<div class="profile-info">
|
|
<h2>{{ user.full_name }}</h2>
|
|
<span class="badge badge-{{ user.role }} badge-lg">{{ user.role | capitalize }}</span>
|
|
<p class="text-muted">Member since {% if user.created_at %}{{ user.created_at.strftime('%B %Y') }}{% else %}Unknown{% endif %}</p>
|
|
</div>
|
|
</div>
|
|
<div class="detail-grid mt-4">
|
|
<div class="detail-item">
|
|
<span class="detail-label">Username</span>
|
|
<span class="detail-value">{{ user.username }}</span>
|
|
</div>
|
|
<div class="detail-item">
|
|
<span class="detail-label">Email</span>
|
|
<span class="detail-value">{{ user.email }}</span>
|
|
</div>
|
|
<div class="detail-item">
|
|
<span class="detail-label">Phone</span>
|
|
<span class="detail-value">{{ user.phone or 'Not provided' }}</span>
|
|
</div>
|
|
<div class="detail-item">
|
|
<span class="detail-label">Account Status</span>
|
|
<span class="detail-value">
|
|
{% if user.is_active_account %}
|
|
<span class="badge badge-success">Active</span>
|
|
{% else %}
|
|
<span class="badge badge-danger">Inactive</span>
|
|
{% endif %}
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- E-Sports Profile Card -->
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h3><i class="fas fa-gamepad"></i> E-Sports Profile</h3>
|
|
</div>
|
|
<div class="card-body">
|
|
<div class="detail-grid">
|
|
<div class="detail-item">
|
|
<span class="detail-label"><i class="fas fa-headset"></i> Games</span>
|
|
<span class="detail-value">
|
|
{% set games_list = user.get_games_list() %}
|
|
{% if games_list %}
|
|
{% for game in games_list %}
|
|
<span class="badge badge-esport">{{ game }}</span>
|
|
{% endfor %}
|
|
{% else %}
|
|
<span class="text-muted">Not specified</span>
|
|
{% endif %}
|
|
</span>
|
|
</div>
|
|
<div class="detail-item">
|
|
<span class="detail-label"><i class="fas fa-chart-line"></i> TRN (Tracker Network)</span>
|
|
<span class="detail-value">
|
|
{% if user.trn_username %}
|
|
<a href="https://tracker.gg" target="_blank" rel="noopener noreferrer" class="trn-link">
|
|
<i class="fas fa-external-link-alt"></i> {{ user.trn_username }}
|
|
</a>
|
|
{% else %}
|
|
<span class="text-muted">Not connected</span>
|
|
{% endif %}
|
|
</span>
|
|
</div>
|
|
<div class="detail-item">
|
|
<span class="detail-label"><i class="fab fa-discord"></i> Discord</span>
|
|
<span class="detail-value">
|
|
{% if user.discord_username %}
|
|
{{ user.discord_username }}
|
|
{% else %}
|
|
<span class="text-muted">Not connected</span>
|
|
{% endif %}
|
|
</span>
|
|
</div>
|
|
<div class="detail-item">
|
|
<span class="detail-label"><i class="fas fa-link"></i> League OS</span>
|
|
<span class="detail-value">
|
|
{% if user.league_os_profile %}
|
|
<a href="{{ user.league_os_profile }}" target="_blank" rel="noopener noreferrer" class="trn-link">
|
|
<i class="fas fa-external-link-alt"></i> {{ user.league_os_profile }}
|
|
</a>
|
|
{% else %}
|
|
<span class="text-muted">Not connected</span>
|
|
{% endif %}
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h3><i class="fas fa-chart-bar"></i> My Statistics</h3>
|
|
</div>
|
|
<div class="card-body">
|
|
{% if user.role == 'player' %}
|
|
<div class="profile-stats">
|
|
<div class="stat-item">
|
|
<h4>{{ user.tryout_registrations.count() }}</h4>
|
|
<p>Tryouts Registered</p>
|
|
</div>
|
|
<div class="stat-item">
|
|
<h4>{{ user.evaluations_received.count() }}</h4>
|
|
<p>Evaluations Received</p>
|
|
</div>
|
|
<div class="stat-item">
|
|
<h4>{{ user.team_assignments.count() }}</h4>
|
|
<p>Team Assignments</p>
|
|
</div>
|
|
</div>
|
|
{% elif user.can_evaluate() %}
|
|
<div class="profile-stats">
|
|
<div class="stat-item">
|
|
<h4>{{ user.evaluations_given.count() }}</h4>
|
|
<p>Evaluations Given</p>
|
|
</div>
|
|
</div>
|
|
{% else %}
|
|
<p class="text-muted">No statistics available for this role.</p>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock %} |