+
+
handleChange('name', e.target.value)}
+ className={`mt-1 block w-full rounded-md shadow-sm sm:text-sm ${
+ errors.name
+ ? 'border-red-300 focus:border-red-500 focus:ring-red-500'
+ : 'border-gray-300 focus:border-blue-500 focus:ring-blue-500'
+ }`}
+ placeholder="e.g., Theory, Lab, Practical"
+ maxLength={100}
+ required
+ />
+ {errors.name && (
+
{errors.name}
+ )}
+
+
+
+
+ handleChange('is_lab', e.target.checked)}
+ className="h-4 w-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500"
+ />
+
+
+
+ Check this if this subject type represents laboratory courses (requires 3 consecutive slots)
+
+
+
+ handleChange('default_consecutive_preferred', e.target.checked)}
+ className="h-4 w-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500"
+ />
+
+
+
+ When scheduling, prefer consecutive time slots for this subject type
+
+
+