Skip to main content

User & Customer Reference for Twig Templates

Overview

This guide shows how to use User objects in your Twig templates to display customer information, account details, and user-related data.

Available User Attributes

Basic User Information

  • user.id - User ID number
  • user.firma - Company name
  • user.yetkili - Contact person name
  • user.name - User name (same as yetkili)
  • user.title - User title (same as yetkili)
  • user.company_name - Company name (same as firma)
  • user.mail - Email address
  • user.bayi_kod - Customer/dealer code
  • user.seller_code - Seller code (same as bayi_kod)
  • user.kullaniciadi - Username

Contact Information

  • user.telefon - Primary phone number
  • user.sabittel - Landline phone
  • user.gsm - Mobile phone
  • user.fax - Fax number
  • user.adres - Address
  • user.sehir - City
  • user.ilce - District
  • user.ulke - Country

Financial & Tax Information

  • user.vergidaire - Tax office
  • user.vergino - Tax number
  • user.tckimlik - Turkish ID number
  • user.iskonto - Discount percentage
  • user.cari_acik_hesap - Open account status
  • user.currency - User's currency code
  • user.min_order_amount - Minimum order amount

Account Status

  • user.durum - Account status (0=inactive, 1=active)
  • user.is_active - Whether account is active (true/false)
  • user.yetki - Authority level (1=user, 2=admin)
  • user.is_admin - Whether user is admin (true/false)
  • user.ozelbayi - Special dealer status

Account Statistics

  • user.toplam_siparis_adet - Total order count
  • user.toplam_siparis_tutar - Total order amount
  • user.order_count - Number of orders
  • user.basket_item_count - Items in basket
  • user.giris_adet - Login count
  • user.siparis_giris_adet - Order entry count

Date Information

  • user.kayit_tarih - Registration date
  • user.register_date - Registration date (formatted)
  • user.son_tarih - Last login date
  • user.last_login_ago - Last login time
  • user.approved_at - Approval date
  • user.last_order_date - Last order date

Groups & Permissions

  • user.company_group_id - Company group ID
  • user.company_group - Company group object
  • user.tax_group_id - Tax group ID
  • user.tax_group - Tax group object
  • user.order_limit_group_id - Order limit group ID
  • user.order_limit_group - Order limit group object
  • user.permission_group_id - Permission group ID
  • user.cargo_region_id - Cargo region ID

Administrative

  • user.yonetici_not - Admin notes
  • user.ser_lang - Language preference
  • user.admin_url - Admin panel URL
  • user.logged_in_today - Logged in today (0/1)
  • user.avatar_character - Avatar initials
  • user.address - Default checkout address
  • user.country - Country object
  • user.region_cargos - Available cargo companies
  • user.fcm_token - Mobile notification token

User Object in Templates

Basic User Information Display

<!-- User Profile Card -->
<div class="user-profile">
<h2>{{ user.name }}</h2>
<p>{{ user.company_name }}</p>
<p>Customer Code: {{ user.bayi_kod }}</p>
<p>Email: {{ user.mail }}</p>
</div>

<!-- User Avatar -->
<div class="user-avatar">
<span class="avatar-text">{{ user.avatar_character }}</span>
</div>

Contact Information

<!-- Contact Details -->
<div class="contact-info">
<h3>Contact Information</h3>
<p>Phone: {{ user.telefon }}</p>
<p>Mobile: {{ user.gsm }}</p>
<p>Fax: {{ user.fax }}</p>

<!-- Address -->
<address>
{{ user.adres }}
<br>{{ user.ilce }}, {{ user.sehir }}
{% if user.ulke %}
<br>{{ user.ulke }}
{% endif %}
</address>
</div>

Tax & Financial Information

<!-- Tax Details -->
<div class="tax-info">
<h3>Tax Information</h3>
<p>Tax Office: {{ user.vergidaire }}</p>
<p>Tax Number: {{ user.vergino }}</p>

{% if user.tckimlik %}
<p>ID Number: {{ user.tckimlik }}</p>
{% endif %}

<!-- Financial Info -->
{% if user.iskonto > 0 %}
<p>Discount: {{ user.iskonto }}%</p>
{% endif %}

<p>Currency: {{ user.currency }}</p>
<p>Minimum Order: {{ user.min_order_amount }} {{ user.currency }}</p>
</div>

Account Status Display

<!-- Account Status -->
<div class="account-status">
{% if user.is_active %}
<span class="badge badge-success">Active</span>
{% else %}
<span class="badge badge-danger">Inactive</span>
{% endif %}

{% if user.is_admin %}
<span class="badge badge-info">Administrator</span>
{% endif %}

{% if user.ozelbayi %}
<span class="badge badge-warning">Special Dealer</span>
{% endif %}
</div>

User Statistics

<!-- User Statistics Dashboard -->
<div class="user-stats">
<div class="stat-card">
<h4>Total Orders</h4>
<p class="stat-value">{{ user.order_count }}</p>
</div>

<div class="stat-card">
<h4>Total Amount</h4>
<p class="stat-value">{{ user.toplam_siparis_tutar }} {{ user.currency }}</p>
</div>

<div class="stat-card">
<h4>Items in Basket</h4>
<p class="stat-value">{{ user.basket_item_count }}</p>
</div>

<div class="stat-card">
<h4>Login Count</h4>
<p class="stat-value">{{ user.giris_adet }}</p>
</div>
</div>

Date Information

<!-- Account Dates -->
<div class="account-dates">
<p>Member Since: {{ user.register_date }}</p>
<p>Last Login: {{ user.last_login_ago }}</p>

{% if user.approved_at %}
<p>Approved: {{ user.approved_at }}</p>
{% endif %}

{% if user.last_order_date %}
<p>Last Order: {{ user.last_order_date }}</p>
{% endif %}
</div>

Checkout & Address Forms

User Address Form

<!-- Checkout Address Form -->
<form action="/checkout/save_address" method="post">
<div class="form-group">
<label>Company</label>
<input type="text" name="firma" value="{{ user.address.firma }}" class="form-control" required>
</div>

<div class="form-group">
<label>Contact Person</label>
<input type="text" name="yetkili" value="{{ user.address.yetkili }}" class="form-control" required>
</div>

<div class="form-group">
<label>Phone</label>
<input type="tel" name="telefon" value="{{ user.address.telefon }}" class="form-control" required>
</div>

<div class="form-group">
<label>Address</label>
<textarea name="adres" class="form-control" required>{{ user.address.adres }}</textarea>
</div>

<!-- Cargo Selection -->
{% if user.region_cargos %}
<div class="form-group">
<label>Cargo Company</label>
<select name="cargo_id" class="form-control">
{% for cargo in user.region_cargos %}
<option value="{{ cargo.id }}">{{ cargo.title }}</option>
{% endfor %}
</select>
</div>
{% endif %}
</form>

Conditional Display

User Type Based Content

<!-- Show content based on user type -->
{% if user.is_admin %}
<div class="admin-panel">
<a href="{{ user.admin_url }}" class="btn btn-primary">Admin Panel</a>
<p>Admin Notes: {{ user.yonetici_not }}</p>
</div>
{% endif %}

<!-- Special Dealer Features -->
{% if user.ozelbayi %}
<div class="special-dealer-features">
<h3>Special Dealer Benefits</h3>
<p>You have access to exclusive products and pricing.</p>
</div>
{% endif %}

<!-- Discount Display -->
{% if user.iskonto > 0 %}
<div class="discount-banner">
<p>You have a {{ user.iskonto }}% discount on all orders!</p>
</div>
{% endif %}

Account Status Messages

<!-- Account Status Messages -->
{% if not user.is_active %}
<div class="alert alert-warning">
Your account is pending approval. Please contact support.
</div>
{% endif %}

{% if user.logged_in_today %}
<div class="welcome-back">
Welcome back, {{ user.name }}!
</div>
{% endif %}

<!-- Minimum Order Warning -->
{% if user.min_order_amount > 0 %}
<div class="alert alert-info">
Minimum order amount: {{ user.min_order_amount }} {{ user.currency }}
</div>
{% endif %}

User Dashboard Components

User Profile Summary

<!-- User Profile Summary -->
<div class="profile-summary">
<div class="profile-header">
<div class="avatar">{{ user.avatar_character }}</div>
<div class="profile-info">
<h3>{{ user.name }}</h3>
<p>{{ user.company_name }}</p>
<p>{{ user.mail }}</p>
</div>
</div>

<div class="profile-stats">
<div class="stat">
<span class="label">Customer Code</span>
<span class="value">{{ user.bayi_kod }}</span>
</div>
<div class="stat">
<span class="label">Member Since</span>
<span class="value">{{ user.register_date }}</span>
</div>
<div class="stat">
<span class="label">Total Orders</span>
<span class="value">{{ user.order_count }}</span>
</div>
</div>
</div>

Quick Actions

<!-- User Quick Actions -->
<div class="quick-actions">
<a href="/orders" class="action-card">
<i class="icon-orders"></i>
<span>My Orders ({{ user.order_count }})</span>
</a>

<a href="/cart" class="action-card">
<i class="icon-cart"></i>
<span>Shopping Cart ({{ user.basket_item_count }})</span>
</a>

<a href="/profile" class="action-card">
<i class="icon-profile"></i>
<span>Edit Profile</span>
</a>

{% if user.is_admin %}
<a href="{{ user.admin_url }}" class="action-card">
<i class="icon-admin"></i>
<span>Admin Panel</span>
</a>
{% endif %}
</div>

Common Use Cases

User Welcome Message

<!-- Personalized Welcome -->
<div class="welcome-section">
<h1>Welcome, {{ user.name }}!</h1>

{% if user.last_order_date %}
<p>Your last order was on {{ user.last_order_date }}</p>
{% else %}
<p>Ready to place your first order?</p>
{% endif %}

{% if user.basket_item_count > 0 %}
<div class="cart-reminder">
You have {{ user.basket_item_count }} items in your cart.
<a href="/cart">Continue Shopping</a>
</div>
{% endif %}
</div>

Account Settings Form

<!-- Account Settings -->
<form action="/profile/update" method="post">
<h2>Account Settings</h2>

<div class="form-section">
<h3>Personal Information</h3>
<input type="text" name="yetkili" value="{{ user.yetkili }}" placeholder="Contact Name">
<input type="email" name="mail" value="{{ user.mail }}" placeholder="Email" readonly>
<input type="text" name="kullaniciadi" value="{{ user.kullaniciadi }}" placeholder="Username">
</div>

<div class="form-section">
<h3>Company Information</h3>
<input type="text" name="firma" value="{{ user.firma }}" placeholder="Company Name">
<input type="text" name="vergidaire" value="{{ user.vergidaire }}" placeholder="Tax Office">
<input type="text" name="vergino" value="{{ user.vergino }}" placeholder="Tax Number">
</div>

<div class="form-section">
<h3>Contact Details</h3>
<input type="tel" name="sabittel" value="{{ user.sabittel }}" placeholder="Phone">
<input type="tel" name="gsm" value="{{ user.gsm }}" placeholder="Mobile">
<textarea name="adres" placeholder="Address">{{ user.adres }}</textarea>
</div>

<div class="form-section">
<h3>Preferences</h3>
<select name="ser_lang">
<option value="tr" {% if user.ser_lang == 'tr' %}selected{% endif %}>Turkish</option>
<option value="en" {% if user.ser_lang == 'en' %}selected{% endif %}>English</option>
</select>
</div>

<button type="submit">Update Profile</button>
</form>

This reference provides practical examples for frontend developers working with Twig templates to display user information without exposing technical implementation details.