

<?php $__env->startSection('title', 'إضافة وحدة تنظيمية جديدة'); ?>

<?php $__env->startSection('content'); ?>
    <div class="container">
        <div class="row justify-content-center">
            <div class="col-md-8">
                <div class="card">
                    <div class="card-header"><?php echo e(__('إضافة وحدة تنظيمية جديدة')); ?></div>

                    <div class="card-body">
                        <form method="POST" action="<?php echo e(route('organizational-units.store')); ?>">
                            <?php echo csrf_field(); ?>

                            <div class="row mb-3">
                                <label for="name" class="col-md-4 col-form-label text-md-end"><?php echo e(__('اسم الوحدة')); ?></label>

                                <div class="col-md-6">
                                    <input id="name" type="text" class="form-control <?php $__errorArgs = ['name'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?> is-invalid <?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>" name="name" value="<?php echo e(old('name')); ?>" required autofocus>

                                    <?php $__errorArgs = ['name'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
                                        <span class="invalid-feedback" role="alert">
                                            <strong><?php echo e($message); ?></strong>
                                        </span>
                                    <?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
                                </div>
                            </div>

                            <div class="row mb-3">
                                <label for="unit_type_id" class="col-md-4 col-form-label text-md-end"><?php echo e(__('نوع الوحدة')); ?></label>

                                <div class="col-md-6">
                                    <select id="unit_type_id" class="form-control <?php $__errorArgs = ['unit_type_id'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?> is-invalid <?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>" name="unit_type_id" required>
                                        <option value="">اختر نوع الوحدة</option>
                                        <?php $__currentLoopData = $unitTypes; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $unitType): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
                                            <option value="<?php echo e($unitType->id); ?>" 
                                                    data-level="<?php echo e($unitType->level ?? 999); ?>" 
                                                    <?php echo e(old('unit_type_id') == $unitType->id ? 'selected' : ''); ?>>
                                                <?php echo e($unitType->type_name); ?> (مستوى: <?php echo e($unitType->level ?? 1); ?>)
                                            </option>
                                        <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
                                    </select>

                                    <?php $__errorArgs = ['unit_type_id'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
                                        <span class="invalid-feedback" role="alert">
                                            <strong><?php echo e($message); ?></strong>
                                        </span>
                                    <?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
                                </div>
                            </div>

                            <div class="row mb-3">
                                <label for="parent_id" class="col-md-4 col-form-label text-md-end"><?php echo e(__('الوحدة الأب')); ?></label>

                                <div class="col-md-6">
                                    <select id="parent_id" class="form-control <?php $__errorArgs = ['parent_id'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?> is-invalid <?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>" name="parent_id">
                                        <option value="">لا يوجد (وحدة رئيسية)</option>
                                        <?php $__currentLoopData = $parentUnits; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $parent): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
                                            <option value="<?php echo e($parent->id); ?>" 
                                                    data-level="<?php echo e($parent->unitType->level ?? 999); ?>" 
                                                    <?php echo e(old('parent_id') == $parent->id ? 'selected' : ''); ?>>
                                                <?php echo e($parent->name); ?> (<?php echo e($parent->unitType->type_name ?? 'N/A'); ?>)
                                            </option>
                                        <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
                                    </select>

                                    <?php $__errorArgs = ['parent_id'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
                                        <span class="invalid-feedback" role="alert">
                                            <strong><?php echo e($message); ?></strong>
                                        </span>
                                    <?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
                                </div>
                            </div>

                            <div class="row mb-0">
                                <div class="col-md-6 offset-md-4">
                                    <button type="submit" class="btn btn-primary">
                                        <?php echo e(__('إضافة')); ?>

                                    </button>
                                    <a href="<?php echo e(route('organizational-units.index')); ?>" class="btn btn-secondary"><?php echo e(__('إلغاء')); ?></a>
                                </div>
                            </div>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    const unitTypeSelect = document.getElementById('unit_type_id');
    const parentSelect = document.getElementById('parent_id');
    
    if (!unitTypeSelect || !parentSelect) return;
    
    // حفظ جميع الخيارات الأصلية للوحدة الأب
    const allParentOptions = Array.from(parentSelect.options);
    
    function filterParentUnits() {
        const selectedUnitType = unitTypeSelect.options[unitTypeSelect.selectedIndex];
        if (!selectedUnitType || !selectedUnitType.value) {
            // إذا لم يتم اختيار نوع وحدة، إظهار جميع الوحدات
            parentSelect.innerHTML = '';
            allParentOptions.forEach(option => {
                parentSelect.appendChild(option.cloneNode(true));
            });
            return;
        }
        
        const selectedLevel = parseInt(selectedUnitType.getAttribute('data-level')) || 999;
        
        // مسح القائمة الحالية
        parentSelect.innerHTML = '';
        
        // إضافة الخيار الافتراضي
        const defaultOption = document.createElement('option');
        defaultOption.value = '';
        defaultOption.textContent = 'لا يوجد (وحدة رئيسية)';
        parentSelect.appendChild(defaultOption);
        
        // إضافة فقط الوحدات التي لها level أقل من level نوع الوحدة المختار
        allParentOptions.forEach(option => {
            if (option.value === '') return; // تخطي الخيار الافتراضي
            
            const parentLevel = parseInt(option.getAttribute('data-level')) || 999;
            
            // إظهار فقط الوحدات التي لها level أقل (أعلى في التراتبية)
            if (parentLevel < selectedLevel) {
                const newOption = option.cloneNode(true);
                parentSelect.appendChild(newOption);
            }
        });
    }
    
    // عند تغيير نوع الوحدة
    unitTypeSelect.addEventListener('change', function() {
        filterParentUnits();
    });
    
    // تصفية عند تحميل الصفحة إذا كان هناك نوع وحدة محدد مسبقاً
    if (unitTypeSelect.value) {
        filterParentUnits();
    }
});
</script>
<?php $__env->stopSection(); ?>


<?php echo $__env->make('layouts.app', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?><?php /**PATH C:\xampp82\htdocs\GeneralProject-form\resources\views/organizational-units/create.blade.php ENDPATH**/ ?>