Fixed issue with loading, due to a missing comma, the loadUsers/loadModules was never called, fixed syntax error with ModuleImage to ModuleImageURL so that default image url is loaded for the module Add page.

This commit is contained in:
bobbert committed 2025-12-09 15:01:00 +00:00
1 parent c4880737c6
commit a8010b3005
3 files changed
+33 -38

No files matched your search

+1 -1
View File
@@ -19,7 +19,7 @@ const ModuleForm = ({originalModule, onSubmit, onCancel}) => {
// Initialisation ------------- // Initialisation -------------
defaultModule.ModuleID = Math.floor(100000 + Math.random() * 900000); defaultModule.ModuleID = Math.floor(100000 + Math.random() * 900000);
defaultModule.ModuleImage = 'https://images.freeimages.com/images/small-preview/cf5/cellphone-1313194.jpg'; defaultModule.ModuleImageURL = 'https://images.freeimages.com/images/small-preview/cf5/cellphone-1313194.jpg';
const yearsEndpoint = 'https://softwarehub.uk/unibase/api/years'; const yearsEndpoint = 'https://softwarehub.uk/unibase/api/years';
+12 -17
View File
@@ -17,28 +17,14 @@ const ModuleListScreen = ({navigation}) => {
// State ---------------------- // State ----------------------
const [modules, isLoading, loadModules] = useLoad(modulesEndpoint); const [modules, , isLoading, loadModules] = useLoad(modulesEndpoint);
// Handlers ------------------- // Handlers -------------------
const onDelete = async (module) => {
const deleteEndpoint = `${modulesEndpoint}/${module.ModuleID}`;
const result = await API.delete(deleteEndpoint, module);
if (result.isSuccess) {
await loadModules(modulesEndpoint)
navigation.goBack();
} else
Alert.alert(result.message);
}
// This code is the old handleAdd which added to local state.
// const handleAdd = (module) => setModules([...modules, module]);
//new handleAdd which posts to the API
const handleAdd = async (module) => { const handleAdd = async (module) => {
const result = await API.post(modulesEndpoint, module); const result = await API.post(modulesEndpoint, module);
if (result.isSuccess) { if (result.isSuccess) {
await loadModules(modulesEndpoint) loadModules(modulesEndpoint)
navigation.goBack(); navigation.goBack();
} else } else
Alert.alert(result.message); Alert.alert(result.message);
@@ -48,12 +34,21 @@ const ModuleListScreen = ({navigation}) => {
const putEndpoint = `${modulesEndpoint}/${module.ModuleID}`; const putEndpoint = `${modulesEndpoint}/${module.ModuleID}`;
const result = await API.put(putEndpoint, module); const result = await API.put(putEndpoint, module);
if ( result.isSuccess ) { if ( result.isSuccess ) {
await loadModules(modulesEndpoint) loadModules(modulesEndpoint)
navigation.navigate('ModuleListScreen'); navigation.navigate('ModuleListScreen');
} else } else
Alert.alert(result.message); Alert.alert(result.message);
}; };
const onDelete = async (module) => {
const deleteEndpoint = `${modulesEndpoint}/${module.ModuleID}`;
const result = await API.delete(deleteEndpoint, module);
if (result.isSuccess) {
loadModules(modulesEndpoint)
navigation.goBack();
} else
Alert.alert(result.message);
}
const goToViewScreen = (module) => const goToViewScreen = (module) =>
navigation.navigate('ModuleViewScreen', {module, onDelete, onModify }); navigation.navigate('ModuleViewScreen', {module, onDelete, onModify });
+20 -20
View File
@@ -13,10 +13,29 @@ const UserListScreen = ({navigation}) => {
const usersEndpoint = 'https://softwarehub.uk/unibase/api/users'; const usersEndpoint = 'https://softwarehub.uk/unibase/api/users';
// State ---------------------- // State ----------------------
const [users, isLoading, loadUsers] = useLoad(usersEndpoint); const [users, , isLoading, loadUsers] = useLoad(usersEndpoint);
// Handlers ------------------- // Handlers -------------------
const handleAdd = async (user) => {
const result = await API.post(usersEndpoint, user);
if (result.isSuccess) {
loadUsers(usersEndpoint)
navigation.goBack();
} else
Alert.alert(result.message);
};
const onModify = async (user) => {
const putEndpoint = `${usersEndpoint}/${user.UserID}`;
const result = await API.put(putEndpoint, user);
if ( result.isSuccess ) {
loadUsers(usersEndpoint)
navigation.navigate('UserListScreen');
} else
Alert.alert(result.message);
};
const onDelete = async (user) => { const onDelete = async (user) => {
const deleteEndpoint = `${usersEndpoint}/${user.UserID}`; const deleteEndpoint = `${usersEndpoint}/${user.UserID}`;
const result = await API.delete(deleteEndpoint, user); const result = await API.delete(deleteEndpoint, user);
@@ -27,25 +46,6 @@ const UserListScreen = ({navigation}) => {
Alert.alert(result.message); Alert.alert(result.message);
} }
const handleAdd = async (user) => {
const result = await API.post(usersEndpoint, user);
if (result.isSuccess) {
await loadUsers(usersEndpoint)
navigation.goBack();
} else
Alert.alert(result.message);
};
const onModify = async (user) => {
const putEndpoint = `${usersEndpoint}/${user.UserID}`;
const result = await API.put(putEndpoint, user);
if ( result.isSuccess ) {
await loadUsers(usersEndpoint)
navigation.navigate('UserListScreen');
} else
Alert.alert(result.message);
};
const goToViewScreen = (user) => const goToViewScreen = (user) =>
navigation.navigate('UserViewScreen', {user, onDelete, onModify}); navigation.navigate('UserViewScreen', {user, onDelete, onModify});