This commit is contained in:
Jake Kasper
2025-08-29 08:20:07 -04:00
parent e40c457179
commit 72670e0386
2 changed files with 11 additions and 24 deletions

View File

@@ -40,12 +40,12 @@ const AdminEquipment = () => {
try {
setLoading(true);
const [equipmentResponse, typesResponse] = await Promise.all([
equipmentAPI.getEquipment(),
equipmentAPI.getEquipmentTypes()
equipmentAPI.getAll(),
equipmentAPI.getTypes()
]);
setEquipment(equipmentResponse.data.data.equipment || []);
setEquipmentTypes(typesResponse.data.data.types || []);
setEquipmentTypes(typesResponse.data.data.equipmentTypes || []);
} catch (error) {
console.error('Failed to fetch equipment:', error);
toast.error('Failed to load equipment');
@@ -57,7 +57,7 @@ const AdminEquipment = () => {
const handleCreate = async (e) => {
e.preventDefault();
try {
await equipmentAPI.createEquipment(formData);
await equipmentAPI.create(formData);
toast.success('Equipment created successfully');
setShowCreateModal(false);
resetForm();
@@ -71,7 +71,7 @@ const AdminEquipment = () => {
const handleUpdate = async (e) => {
e.preventDefault();
try {
await equipmentAPI.updateEquipment(selectedEquipment.id, formData);
await equipmentAPI.update(selectedEquipment.id, formData);
toast.success('Equipment updated successfully');
setShowEditModal(false);
resetForm();
@@ -84,7 +84,7 @@ const AdminEquipment = () => {
const handleDelete = async () => {
try {
await equipmentAPI.deleteEquipment(selectedEquipment.id);
await equipmentAPI.delete(selectedEquipment.id);
toast.success('Equipment deleted successfully');
setShowDeleteModal(false);
setSelectedEquipment(null);

View File

@@ -20,7 +20,6 @@ const AdminProducts = () => {
const [searchTerm, setSearchTerm] = useState('');
const [categoryFilter, setCategoryFilter] = useState('all');
const [typeFilter, setTypeFilter] = useState('all');
const [productTypeFilter, setProductTypeFilter] = useState('all'); // shared vs custom
const [selectedProduct, setSelectedProduct] = useState(null);
const [showCreateModal, setShowCreateModal] = useState(false);
const [showEditModal, setShowEditModal] = useState(false);
@@ -43,7 +42,7 @@ const AdminProducts = () => {
try {
setLoading(true);
const [productsResponse, categoriesResponse] = await Promise.all([
productsAPI.getProducts({
adminAPI.getProducts({
search: searchTerm,
category: categoryFilter !== 'all' ? categoryFilter : '',
type: typeFilter !== 'all' ? typeFilter : ''
@@ -51,8 +50,8 @@ const AdminProducts = () => {
productsAPI.getCategories()
]);
setProducts(productsResponse.data.data.sharedProducts || []);
setUserProducts(productsResponse.data.data.userProducts || []);
setProducts(productsResponse.data.data.products || []);
setUserProducts([]); // Admin can only manage shared products for now
setCategories(categoriesResponse.data.data.categories || []);
} catch (error) {
console.error('Failed to fetch products:', error);
@@ -162,11 +161,8 @@ const AdminProducts = () => {
}));
};
// Filter products based on shared/custom filter
const allProducts = [
...(productTypeFilter === 'custom' ? [] : products.map(p => ({ ...p, isShared: true }))),
...(productTypeFilter === 'shared' ? [] : userProducts.map(p => ({ ...p, isShared: false })))
];
// Only show shared products for admin management
const allProducts = products.map(p => ({ ...p, isShared: true }));
const ProductForm = ({ onSubmit, submitText }) => (
<form onSubmit={onSubmit} className="space-y-4">
@@ -381,15 +377,6 @@ const AdminProducts = () => {
<option value="seed">Seed</option>
<option value="powder">Powder</option>
</select>
<select
value={productTypeFilter}
onChange={(e) => setProductTypeFilter(e.target.value)}
className="px-4 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500"
>
<option value="all">Shared & Custom</option>
<option value="shared">Shared Only</option>
<option value="custom">Custom Only</option>
</select>
</div>
</div>