94 lines
		
	
	
	
		
			3.8 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			94 lines
		
	
	
	
		
			3.8 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| {% extends "base.html" %}
 | |
| {% block content %}
 | |
| <div class="card p-4 shadow-sm">
 | |
|   <h2 class="mb-4">{{ _('Add Game') }}</h2>
 | |
|   {% with messages = get_flashed_messages(with_categories=true) %}
 | |
|     {% if messages %}
 | |
|       <div class="mb-3">
 | |
|         {% for category, message in messages %}
 | |
|           <div class="alert alert-{{ 'danger' if category == 'error' else category }}">
 | |
|             {{ message|safe }}
 | |
|           </div>
 | |
|         {% endfor %}
 | |
|       </div>
 | |
|     {% endif %}
 | |
|   {% endwith %}
 | |
|   <form method="POST" aria-label="{{ _('Add Game') }}">
 | |
|     <input type="hidden" name="csrf_token" value="{{ csrf_token() }}">
 | |
|     <div class="row g-3">
 | |
|       <!-- Name -->
 | |
|       <div class="col-md-6">
 | |
|         <label for="game_name" class="form-label">{{ _('Name') }} <span class="text-danger">*</span></label>
 | |
|         <input type="text" id="game_name" name="name" class="form-control" value="{{ request.form.name or '' }}" required>
 | |
|       </div>
 | |
| 
 | |
|       <!-- Steam Key -->
 | |
|       <div class="col-md-6">
 | |
|         <label for="game_key" class="form-label">{{ _('Game Key') }} <span class="text-danger">*</span></label>
 | |
|         <input type="text" id="game_key" name="steam_key" class="form-control" value="{{ request.form.steam_key or '' }}" required>
 | |
|       </div>
 | |
| 
 | |
|       <!-- Platform Dropdown -->
 | |
|       <div class="col-md-6">
 | |
|         <label for="game_platform" class="form-label">{{ _('Platform') }} <span class="text-danger">*</span></label>
 | |
|         <select id="game_platform" name="platform" class="form-select" required>
 | |
|           {% for value, label in platforms %}
 | |
|             <option value="{{ value }}" {% if request.form.platform == value %}selected{% endif %}>
 | |
|               {{ _(label) }}
 | |
|             </option>
 | |
|           {% endfor %}
 | |
|         </select>
 | |
|       </div>
 | |
| 
 | |
|       <!-- Status Dropdown -->
 | |
|       <div class="col-md-6">
 | |
|         <label for="game_status" class="form-label">{{ _('Status') }} <span class="text-danger">*</span></label>
 | |
|         <select id="game_status" name="status" class="form-select" required>
 | |
|           {% for value, label in statuses %}
 | |
|             <option value="{{ value }}" {% if request.form.status == value %}selected{% endif %}>
 | |
|               {{ _(label) }}
 | |
|             </option>
 | |
|           {% endfor %}
 | |
|         </select>
 | |
|       </div>
 | |
| 
 | |
|       <!-- Steam AppID -->
 | |
|       <div class="col-md-6">
 | |
|         <label for="game_appid" class="form-label">{{ _('Steam AppID (optional)') }}</label>
 | |
|         <input type="text" id="game_appid" name="steam_appid" class="form-control" value="{{ request.form.steam_appid or '' }}">
 | |
|       </div>
 | |
| 
 | |
|       <!-- Redeem Date -->
 | |
|       <div class="col-md-6">
 | |
|         <label for="game_redeem_date" class="form-label">{{ _('Redeem by') }}</label>
 | |
|         <input type="date" id="game_redeem_date" name="redeem_date" class="form-control" value="{{ request.form.redeem_date or '' }}">
 | |
|       </div>
 | |
| 
 | |
|       <!-- Recipient -->
 | |
|       <div class="col-12">
 | |
|         <label for="game_recipient" class="form-label">{{ _('Recipient') }}</label>
 | |
|         <input type="text" id="game_recipient" name="recipient" class="form-control" value="{{ request.form.recipient or '' }}">
 | |
|       </div>
 | |
| 
 | |
|       <!-- Shop URL -->
 | |
|       <div class="col-12">
 | |
|         <label for="game_url" class="form-label">{{ _('Shop URL') }}</label>
 | |
|         <input type="url" id="game_url" name="url" class="form-control" value="{{ request.form.url or '' }}">
 | |
|       </div>
 | |
| 
 | |
|       <!-- Notes -->
 | |
|       <div class="col-12">
 | |
|         <label for="game_notes" class="form-label">{{ _('Notes') }}</label>
 | |
|         <textarea id="game_notes" name="notes" class="form-control" rows="3">{{ request.form.notes or '' }}</textarea>
 | |
|       </div>
 | |
| 
 | |
|       <!-- Buttons -->
 | |
|       <div class="col-12">
 | |
|         <button type="submit" class="btn btn-primary">{{ _('Save') }}</button>
 | |
|         <a href="{{ url_for('index') }}" class="btn btn-outline-secondary ms-2">{{ _('Cancel') }}</a>
 | |
|       </div>
 | |
|     </div>
 | |
|   </form>
 | |
| </div>
 | |
| {% endblock %}
 | |
| 
 |