Fix permissions and prepare admin login for deploy

- Admin-only: list contacts, create/edit campaigns and compositions
- Public: submit contact, mine contacts by email/phone, read campaigns/compositions
- Add admin_response field on ContactUs
- Update Postman base_url to https://zoneco.org/api with token save

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Shayan Azadi
2026-07-22 22:52:44 +03:30
parent 97127d5772
commit 149fb614b0
8 changed files with 425 additions and 220 deletions

View File

@@ -32,11 +32,14 @@ class AdminLoginSerializer(serializers.Serializer):
class ContactUsSerializer(serializers.ModelSerializer):
"""
Serializer for ContactUs model.
Public create cannot set admin_response (enforced in the viewset).
"""
class Meta:
model = ContactUs
fields = ['id', 'name', 'email_or_phone', 'description', 'category',
'created_at', 'updated_at']
fields = [
'id', 'name', 'email_or_phone', 'description', 'category',
'admin_response', 'created_at', 'updated_at',
]
read_only_fields = ['id', 'created_at', 'updated_at']
def validate_email_or_phone(self, value):