feat(postcards): auto-fill today date on status change, card_number always uppercase
This commit is contained in:
@@ -536,7 +536,7 @@ def postcard_create(
|
|||||||
|
|
||||||
pc = Postcard(
|
pc = Postcard(
|
||||||
profile_id=profile_id,
|
profile_id=profile_id,
|
||||||
card_number=card_number,
|
card_number=card_number.strip().upper(),
|
||||||
status=status,
|
status=status,
|
||||||
recipient_name=recipient_name or None,
|
recipient_name=recipient_name or None,
|
||||||
country=(country.strip().upper() if country else None),
|
country=(country.strip().upper() if country else None),
|
||||||
@@ -612,7 +612,7 @@ def postcard_update(
|
|||||||
except ValueError:
|
except ValueError:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
pc.card_number = card_number
|
pc.card_number = card_number.strip().upper()
|
||||||
pc.status = status
|
pc.status = status
|
||||||
pc.recipient_name = recipient_name or None
|
pc.recipient_name = recipient_name or None
|
||||||
pc.country = country or None
|
pc.country = country or None
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<form method="post" action="{{ '/postcards/%d/edit' % postcard.id if postcard else '/profiles/%d/postcards' % profile.id }}" class="form-card">
|
<form method="post" action="{{ '/postcards/%d/edit' % postcard.id if postcard else '/profiles/%d/postcards' % profile.id }}" class="form-card">
|
||||||
<label>编号 * <span style="font-weight:400;color:var(--text-muted);font-size:.8rem">格式:AB-1234567</span></label>
|
<label>编号 * <span style="font-weight:400;color:var(--text-muted);font-size:.8rem">格式:AB-1234567</span></label>
|
||||||
<input type="text" name="card_number" value="{{ postcard.card_number if postcard else '' }}" required placeholder="AB-1234567">
|
<input type="text" name="card_number" value="{{ postcard.card_number if postcard else '' }}" required placeholder="AB-1234567" style="text-transform:uppercase" oninput="this.value=this.value.toUpperCase()">
|
||||||
|
|
||||||
<label>状态 *</label>
|
<label>状态 *</label>
|
||||||
<select name="status" id="status-select" onchange="toggleFields()" required>
|
<select name="status" id="status-select" onchange="toggleFields()" required>
|
||||||
@@ -86,5 +86,18 @@ function toggleFields() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
toggleFields();
|
toggleFields();
|
||||||
|
{% if not postcard %}
|
||||||
|
// Auto-fill date fields with today when switching status on new postcards
|
||||||
|
(function() {
|
||||||
|
var today = new Date().toISOString().slice(0, 10);
|
||||||
|
var sendTime = document.getElementById('input-send-time');
|
||||||
|
var receiveTime = document.getElementById('input-receive');
|
||||||
|
var statusSel = document.getElementById('status-select');
|
||||||
|
statusSel.addEventListener('change', function() {
|
||||||
|
if (this.value === 'sent' && !sendTime.value) sendTime.value = today;
|
||||||
|
if (this.value === 'received' && !receiveTime.value) receiveTime.value = today;
|
||||||
|
});
|
||||||
|
})();
|
||||||
|
{% endif %}
|
||||||
</script>
|
</script>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|||||||
Reference in New Issue
Block a user