createChamber method
Future<void>
createChamber(
)
override
Implementation
@override
Future<void> createChamber() async {
AppConfig.logger.d("Start ${newChamberNameController.text} and ${newChamberDescController.text}");
try {
errorMsg.value = '';
if((isPublicNewChamber.value && newChamberNameController.text.isNotEmpty && newChamberDescController.text.isNotEmpty)
|| (!isPublicNewChamber.value && newChamberNameController.text.isNotEmpty)) {
Chamber newItemlist = Chamber.createBasic(newChamberNameController.text, newChamberDescController.text);
newItemlist.ownerId = ownerId;
newItemlist.ownerName = ownerName;
newItemlist.ownerType = ownerType;
String newItemlistId = "";
if (profile.position?.latitude != 0.0) {
newItemlist.position = profile.position!;
}
newItemlist.public = isPublicNewChamber.value;
newItemlistId = await ChamberFirestore().insert(newItemlist);
///DEPRECATED
// if(isPublicNewItemlist.value) {
// AppConfig.logger.i("Inserting Public Chamber to Public collection");
// newItemlistId = await ChamberFirestore().insert(newItemlist);
// } else {
// AppConfig.logger.i("Inserting Private Chamber to collection for profileId ${newItemlist.ownerId}");
// newItemlistId = await ChamberFirestore().insert(newItemlist);
// }
AppConfig.logger.i("Empty Chamber created successfully for profile ${newItemlist.ownerId}");
newItemlist.id = newItemlistId;
if(newItemlistId.isNotEmpty){
chambers[newItemlistId] = newItemlist;
AppConfig.logger.t("Itemlists $chambers");
clearNewChamber();
AppUtilities.showSnackBar(
title: GeneratorTranslationConstants.chamberPrefs.tr,
message: GeneratorTranslationConstants.chamberCreated.tr
);
} else {
AppConfig.logger.d("Something happens trying to insert chamber");
}
} else {
AppConfig.logger.d(MessageTranslationConstants.pleaseFillItemlistInfo.tr);
errorMsg.value = newChamberNameController.text.isEmpty ? MessageTranslationConstants.pleaseAddName
: MessageTranslationConstants.pleaseAddDescription;
AppUtilities.showSnackBar(
title: CommonTranslationConstants.addNewItemlist.tr,
message: MessageTranslationConstants.pleaseFillItemlistInfo.tr,
);
}
} catch (e) {
AppConfig.logger.e(e.toString());
}
update([AppPageIdConstants.chamber]);
}