Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes ##1665 Mutation joinPublicOrganization not complatible with tal… #1683

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions lib/services/database_mutation_functions.dart
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ class DataBaseMutationFunctions {
// debugPrint(exception.linkException.toString());
if (showSnackBar) {
WidgetsBinding.instance.addPostFrameCallback(
(_) => navigationService.showTalawaErrorSnackBar(
(_) => navigationService.showTalawaSnackBar(
"Server not running/wrong url",
MessageType.info,
),
Expand Down Expand Up @@ -94,7 +94,7 @@ class DataBaseMutationFunctions {
if (exception.graphqlErrors[i].message == userNotFound.message) {
if (showSnackBar) {
WidgetsBinding.instance.addPostFrameCallback(
(_) => navigationService.showTalawaErrorDialog(
(_) => navigationService.showTalawaDialog(
"No account registered with this email",
MessageType.error,
),
Expand All @@ -106,7 +106,7 @@ class DataBaseMutationFunctions {
if (exception.graphqlErrors[i].message == memberRequestExist.message) {
if (showSnackBar) {
WidgetsBinding.instance.addPostFrameCallback(
(_) => navigationService.showTalawaErrorDialog(
(_) => navigationService.showTalawaDialog(
"Membership request already exist",
MessageType.error,
),
Expand All @@ -118,7 +118,7 @@ class DataBaseMutationFunctions {
if (exception.graphqlErrors[i].message == wrongCredentials.message) {
if (showSnackBar) {
WidgetsBinding.instance.addPostFrameCallback(
(_) => navigationService.showTalawaErrorDialog(
(_) => navigationService.showTalawaDialog(
"Enter a valid password",
MessageType.error,
),
Expand All @@ -130,7 +130,7 @@ class DataBaseMutationFunctions {
if (exception.graphqlErrors[i].message == organizationNotFound.message) {
if (showSnackBar) {
WidgetsBinding.instance.addPostFrameCallback(
(_) => navigationService.showTalawaErrorDialog(
(_) => navigationService.showTalawaDialog(
"Organization Not Found",
MessageType.error,
),
Expand All @@ -142,7 +142,7 @@ class DataBaseMutationFunctions {
if (exception.graphqlErrors[i].message == emailAccountPresent.message) {
if (showSnackBar) {
WidgetsBinding.instance.addPostFrameCallback(
(_) => navigationService.showTalawaErrorDialog(
(_) => navigationService.showTalawaDialog(
"Account with this email already registered",
MessageType.error,
),
Expand All @@ -154,7 +154,7 @@ class DataBaseMutationFunctions {
// if the error is unknown

WidgetsBinding.instance.addPostFrameCallback(
(_) => navigationService.showTalawaErrorDialog(
(_) => navigationService.showTalawaDialog(
"Something went wrong!",
MessageType.error,
),
Expand Down
10 changes: 5 additions & 5 deletions lib/services/navigation_service.dart
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import 'package:talawa/widgets/talawa_error_snackbar.dart';
/// * `showSnackBar`
/// * `pushDialog`
/// * `showTalawaErrorWidget`
/// * `showTalawaErrorDialog`
/// * `showTalawaDialog`
/// * `pop`
class NavigationService {
GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>();
Expand Down Expand Up @@ -103,15 +103,15 @@ class NavigationService {
);
}

void showTalawaErrorSnackBar(
void showTalawaSnackBar(
String errorMessage,
MessageType messageType, {
Duration duration = const Duration(seconds: 2),
}) {
ScaffoldMessenger.of(navigatorKey.currentContext!).showSnackBar(
SnackBar(
padding: EdgeInsets.zero,
content: TalawaErrorSnackBar(
content: TalawaSnackBar(
messageType: messageType,
errorMessage: errorMessage,
),
Expand All @@ -120,13 +120,13 @@ class NavigationService {
);
}

void showTalawaErrorDialog(String errorMessage, MessageType messageType) {
void showTalawaDialog(String errorMessage, MessageType messageType) {
showDialog(
context: navigatorKey.currentContext!,
barrierColor: Colors.transparent,
barrierDismissible: false,
builder: (BuildContext context) {
return TalawaErrorDialog(
return TalawaDialog(
errorMessage,
messageType: messageType,
);
Expand Down
2 changes: 1 addition & 1 deletion lib/services/user_config.dart
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ class UserConfig {
return true;
} on Exception catch (e) {
print(e);
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
"Couldn't update User details",
MessageType.error,
);
Expand Down
2 changes: 1 addition & 1 deletion lib/splash_screen.dart
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ class _SplashScreenState extends State<SplashScreen> {
final values = _initialUri!.queryParameters.values;

final fromInviteLink = navigationService.fromInviteLink;
final showSnackBar = navigationService.showTalawaErrorSnackBar;
final showSnackBar = navigationService.showTalawaSnackBar;
final pushReplacementScreen = navigationService.pushReplacementScreen;

final orgURI = GraphqlConfig.orgURI!;
Expand Down
31 changes: 20 additions & 11 deletions lib/utils/queries.dart
Original file line number Diff line number Diff line change
Expand Up @@ -226,18 +226,7 @@ class Queries {
joinPublicOrganization(organizationId: "$orgId") {
joinedOrganizations{
_id
name
image
description
isPublic
creator{
_id
firstName
lastName
image
}

}
}
}
''';
Expand Down Expand Up @@ -362,6 +351,26 @@ class Queries {
''';
}

String fetchOrgsJoinedByUser(String? userId) {
return '''
query {
getOrganizationWithUserID(id: "$userId"){
_id
name
image
description
isPublic
creator{
_id
firstName
lastName
image
}
}
}
''';
}

String userLanguage() {
return '''
query{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,10 @@ class AddPostViewModel extends BaseModel {
}
removeImage();
_controller.text = "";
_navigationService.showTalawaSnackBar(
"Post is uploaded",
MessageType.info,
);
_titleController.text = "";
notifyListeners();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -312,6 +312,6 @@ class ProfilePageViewModel extends BaseModel {

// show message on Snack Bar.
showSnackBar(String message) {
_navigationService.showTalawaErrorDialog(message, MessageType.error);
_navigationService.showTalawaDialog(message, MessageType.error);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -91,12 +91,12 @@ class SelectOrganizationViewModel extends BaseModel {
notifyListeners();
} else if (orgAlreadyJoined) {
selectedOrganization = OrgInfo(id: '-1');
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'Organisation already joined',
MessageType.warning,
);
} else {
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'Membership request already sent',
MessageType.warning,
);
Expand All @@ -116,7 +116,7 @@ class SelectOrganizationViewModel extends BaseModel {
arguments: selectedOrganization,
);
} else {
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'Select one organization to continue',
MessageType.warning,
duration: const Duration(milliseconds: 750),
Expand Down Expand Up @@ -152,14 +152,14 @@ class SelectOrganizationViewModel extends BaseModel {
);
} else {
navigationService.pop();
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'Joined ${selectedOrganization.name} successfully',
MessageType.info,
);
}
} on Exception catch (e) {
print(e);
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'SomeThing went wrong',
MessageType.error,
);
Expand All @@ -182,15 +182,15 @@ class SelectOrganizationViewModel extends BaseModel {
);
} else {
navigationService.pop();
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'Join in request sent to ${selectedOrganization.name} successfully',
MessageType.info,
);
}
}
} on Exception catch (e) {
print(e);
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'SomeThing went wrong',
MessageType.error,
);
Expand Down
14 changes: 7 additions & 7 deletions lib/view_model/pre_auth_view_models/set_url_view_model.dart
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ class SetUrlViewModel extends BaseModel {
navigationService.pushScreen(navigateTo, arguments: argument);
} else {
navigationService.pop();
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
"URL doesn't exist/no connection please check",
MessageType.error,
);
Expand Down Expand Up @@ -181,10 +181,10 @@ class SetUrlViewModel extends BaseModel {
box.put(imageUrlKey, "$uri/talawa/");
navigationService.pop();
graphqlConfig.getOrgUrl();
navigationService.showSnackBar("Url is valid");
navigationService.showTalawaSnackBar('Url is Valid', MessageType.info);
} else {
navigationService.pop();
navigationService.showTalawaErrorDialog(
navigationService.showTalawaDialog(
"URL doesn't exist/no connection please check",
MessageType.info,
);
Expand Down Expand Up @@ -283,25 +283,25 @@ class SetUrlViewModel extends BaseModel {
navigationService.pushScreen('/selectOrg', arguments: orgId);
} on CameraException catch (e) {
debugPrint(e.toString());
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
"The Camera is not working",
MessageType.error,
);
} on QrEmbeddedImageException catch (e) {
debugPrint(e.toString());
navigationService.showTalawaErrorDialog(
navigationService.showTalawaDialog(
"The QR is not Working",
MessageType.error,
);
} on QrUnsupportedVersionException catch (e) {
debugPrint(e.toString());
navigationService.showTalawaErrorDialog(
navigationService.showTalawaDialog(
"This QR version is not Supported.",
MessageType.error,
);
} on Exception catch (e) {
debugPrint(e.toString());
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
"This QR is not for the App",
MessageType.error,
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,25 +100,29 @@ class SignupDetailsViewModel extends BaseModel {
await databaseFunctions.gqlAuthMutation(
queries.joinOrgById(selectedOrganization.id!),
) as QueryResult;

final List<OrgInfo>? joinedOrg = (result
.data!['joinPublicOrganization']
['joinedOrganizations'] as List<dynamic>?)
?.map((e) => OrgInfo.fromJson(e as Map<String, dynamic>))
.toList();
userConfig.updateUserJoinedOrg(joinedOrg!);
userConfig.saveCurrentOrgInHive(
userConfig.currentUser.joinedOrganizations![0],
);
navigationService.removeAllAndPush(
Routes.mainScreen,
Routes.splashScreen,
arguments:
MainScreenArgs(mainScreenIndex: 0, fromSignUp: true),
);
if (result.data!.isNotEmpty) {
final QueryResult result =
await databaseFunctions.gqlAuthMutation(
queries.fetchOrgsJoinedByUser(signedInUser.id),
) as QueryResult;
final List<OrgInfo>? joinedOrg = (result
.data!['getOrganizationWithUserID'] as List<dynamic>?)
?.map((e) => OrgInfo.fromJson(e as Map<String, dynamic>))
.toList();
userConfig.updateUserJoinedOrg(joinedOrg!);
userConfig.saveCurrentOrgInHive(
userConfig.currentUser.joinedOrganizations![0],
);
navigationService.removeAllAndPush(
Routes.mainScreen,
Routes.splashScreen,
arguments:
MainScreenArgs(mainScreenIndex: 0, fromSignUp: true),
);
}
} on Exception catch (e) {
print(e);
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'SomeThing went wrong',
MessageType.error,
);
Expand All @@ -142,7 +146,7 @@ class SignupDetailsViewModel extends BaseModel {
);
} on Exception catch (e) {
print(e);
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'SomeThing went wrong',
MessageType.error,
);
Expand All @@ -152,7 +156,7 @@ class SignupDetailsViewModel extends BaseModel {
}
} on Exception catch (e) {
print(e);
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'SomeThing went wrong',
MessageType.error,
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,14 +53,14 @@ class CustomDrawerViewModel extends BaseModel {
// if `selectedOrg` is equal to `switchOrg` and `switchToOrg` present or not.
if (selectedOrg == switchToOrg && isPresentinSwitchableOrg(switchToOrg)) {
// _navigationService.pop();
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'${switchToOrg.name} already selected',
MessageType.warning,
);
} else {
userConfig.saveCurrentOrgInHive(switchToOrg);
setSelectedOrganizationName(switchToOrg);
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
'Switched to ${switchToOrg.name}',
MessageType.info,
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -216,7 +216,7 @@ class JoinOrganisationAfterAuth extends StatelessWidget {
Navigator.pop(navigationService.navigatorKey.currentContext!);
model.initialise(model.orgId);
} else {
navigationService.showTalawaErrorSnackBar(
navigationService.showTalawaSnackBar(
"Organisation on different server, logout and scan qr again",
MessageType.error,
);
Expand Down
Loading