markClicked method
dynamic
markClicked(
- String id
)
Implementation
markClicked(String id) async {
final notifData = state["notifData"];
final configData = state["config"];
final notifications = notifData["notifications"];
var clickedNotification;
notifications.forEach((item) {
if (item["n_id"] == id) {
clickedNotification = item;
}
});
if (clickedNotification != null && clickedNotification["seen_on"] == null) {
try {
ApiClient().markNotificationClicked(state["config"], id);
clickedNotification["seen_on"] = epochNow();
updateNotifData({
"notifications": [...notifications]
}, updateRerender: true);
// store in local storage
final storageData = {
"notifications": [...notifications.take(configData["batchSize"])],
"subscriberId": configData["subscriberId"]
};
setClientNotificationStorage(configData["storage_key"], storageData);
} catch (e) {
print('SUPRSEND: error marking notification clicked ${e.toString()}');
}
}
}