# خلاصه پروژه - سیستم مدیریت نمایندگان 3x-ui

## آنچه ساخته شد

یک سیستم کامل مدیریت نمایندگان برای پنل 3x-ui که شامل موارد زیر است:

### ✅ پنل ادمین
- **داشبورد**: نمایش آمار کلی (پنل‌ها، نمایندگان، کاربران، ترافیک)
- **مدیریت پنل‌ها**: افزودن، حذف و مدیریت پنل‌های 3x-ui
- **مدیریت نمایندگان**: افزودن، حذف و مدیریت نمایندگان
- **تغییر رمز عبور**: امکان تغییر رمز عبور ادمین

### ✅ پنل نماینده
- **داشبورد**: نمایش آمار کاربران نماینده
- **مدیریت کاربران**: 
  - افزودن کاربر جدید به پنل 3x-ui
  - ویرایش کاربر (ترافیک و تاریخ انقضا)
  - حذف کاربر
  - مشاهده وضعیت کاربران (فعال، منقضی شده، محدود شده)

### ✅ سیستم احراز هویت
- صفحه لاگین با انتخاب نوع کاربر (ادمین/نماینده)
- مدیریت جلسه (Session)
- محافظت از صفحات با بررسی دسترسی

### ✅ اتصال به API پنل 3x-ui
- کلاس `XrayAPI` برای ارتباط با پنل
- پشتیبانی از عملیات:
  - ورود به پنل
  - دریافت لیست Inbound ها
  - افزودن کاربر
  - ویرایش کاربر
  - حذف کاربر
  - دریافت آمار ترافیک

### ✅ ویژگی‌های اضافی
- همگام‌سازی ترافیک (`sync_traffic.php`)
- اسکریپت تست API (`test_api.php`)
- اسکریپت نصب (`setup.php`)
- فایل‌های امنیتی (`.htaccess`)

## ساختار فایل‌ها

```
sit/
├── admin/                      # پنل ادمین
│   ├── dashboard.php          # داشبورد ادمین
│   ├── panels.php             # مدیریت پنل‌ها
│   ├── representatives.php    # مدیریت نمایندگان
│   └── change_password.php   # تغییر رمز عبور
│
├── representative/            # پنل نماینده
│   ├── dashboard.php         # داشبورد نماینده
│   └── users.php             # مدیریت کاربران
│
├── api/                       # کلاس‌های API
│   └── XrayAPI.php           # کلاس اتصال به پنل 3x-ui
│
├── includes/                  # فایل‌های مشترک
│   ├── header.php            # هدر صفحات
│   └── footer.php            # فوتر صفحات
│
├── config.php                 # تنظیمات اصلی
├── database.sql              # ساختار دیتابیس
├── index.php                 # صفحه اصلی
├── login.php                 # صفحه ورود
├── logout.php                # خروج از سیستم
├── setup.php                 # اسکریپت نصب
├── test_api.php              # تست اتصال API
├── sync_traffic.php          # همگام‌سازی ترافیک
├── .htaccess                 # تنظیمات امنیتی
├── README.md                 # راهنمای کامل
├── API_NOTES.md              # نکات API
└── PROJECT_SUMMARY.md        # این فایل
```

## نحوه استفاده

### 1. نصب
1. فایل `database.sql` را import کنید
2. تنظیمات `config.php` را تغییر دهید
3. فایل `setup.php` را اجرا کنید

### 2. ورود به عنوان ادمین
- نام کاربری: `admin`
- رمز عبور: `admin123`

### 3. افزودن پنل 3x-ui
- از منوی "مدیریت پنل‌ها" وارد شوید
- اطلاعات پنل را وارد کنید

### 4. افزودن نماینده
- از منوی "مدیریت نمایندگان" وارد شوید
- نماینده جدید را اضافه کنید

### 5. ورود نماینده و ساخت کاربر
- نماینده با نام کاربری و رمز عبور خود وارد می‌شود
- می‌تواند کاربران جدید بسازد و مدیریت کند

## نکات مهم

1. **API پنل**: ممکن است API پنل 3x-ui در نسخه‌های مختلف متفاوت باشد. در صورت مشکل، فایل `API_NOTES.md` را مطالعه کنید و از `test_api.php` برای تست استفاده کنید.

2. **همگام‌سازی ترافیک**: برای به‌روزرسانی خودکار ترافیک، اسکریپت `sync_traffic.php` را به صورت cron job اجرا کنید.

3. **امنیت**: 
   - پس از نصب، رمز عبور ادمین را تغییر دهید
   - SALT را در `config.php` تغییر دهید
   - از HTTPS استفاده کنید

4. **تست**: قبل از استفاده در محیط production، اتصال به پنل را با `test_api.php` تست کنید.

## پشتیبانی

در صورت بروز مشکل:
1. فایل `test_api.php` را اجرا کنید
2. لاگ خطاها را بررسی کنید
3. فایل `API_NOTES.md` را مطالعه کنید
4. endpoint های API را در `api/XrayAPI.php` بررسی کنید

## مجوز

این پروژه تحت مجوز GPL-3.0 منتشر شده است.
