private function deletePushConfig() { if ($this->app_connection_id && $this->registration_id) { $result = Db::getInstance()->delete('mobassistantconnector_push_notifications', "`device_id` = '" . pSQL($this->registration_id) . "' AND `app_connection_id` = " . (int) $this->app_connection_id); if ($result) { $ret = array('success' => 'true'); } else { $ret = array('error' => 'could_not_delete_data'); } } else { $ret = array('error' => 'missing_parameters'); } deleteEmptyDevices(); return $ret; }
function deleteDevice($ids) { $ids = prepareIds($ids); if (!$ids) { return Tools::jsonEncode('Parameters are incorrect'); } $result = Db::getInstance()->delete('mobassistantconnector_push_notifications', '`id` IN (' . $ids . ')'); deleteEmptyDevices(); if ($result) { return Tools::jsonEncode('success'); } return Tools::jsonEncode('Some error occurred'); }
private function proceedGoogleResponse($response, $device_ids) { $json = array(); if ($response) { $json = Tools::jsonDecode($response, true); if (!is_array($json)) { $json = array(); } } $failure = isset($json['failure']) ? $json['failure'] : null; $canonical_ids = isset($json['canonical_ids']) ? $json['canonical_ids'] : null; if ($failure || $canonical_ids) { $results = isset($json['results']) ? $json['results'] : array(); foreach ($results as $id => $result) { $new_reg_id = isset($result['registration_id']) ? $result['registration_id'] : null; $error = isset($result['error']) ? $result['error'] : null; if ($new_reg_id) { // It's duplicated deviceId if (in_array($new_reg_id, $device_ids) && $new_reg_id != $device_ids[$id]) { // Delete old Db::getInstance()->delete(self::T_PUSH_NOTIFICATIONS, "`device_id` = '" . pSQL($device_ids[$id]) . "'"); deleteEmptyDevices(); /*foreach ($device_id_actions as $setting_num => $device_id) { if ($device_id['push_device_id'] == $device_ids[$id]) unset($device_id_actions[$setting_num]); }*/ } else { if (!in_array($new_reg_id, $device_ids)) { Db::getInstance()->update(self::T_PUSH_NOTIFICATIONS, array('device_id' => $new_reg_id), "`device_id` = '" . pSQL($device_ids[$id]) . "'"); /*foreach ($device_id_actions as $device_id) { if ($device_id['push_device_id'] == $device_ids[$id]) $device_id_actions[$setting_num]['push_device_id'] = $new_reg_id; }*/ } } } else { if ($error) { // Unset not registered device id Db::getInstance()->delete(self::T_PUSH_NOTIFICATIONS, "`device_id` = '" . pSQL($device_ids[$id]) . "'"); deleteEmptyDevices(); /*if ($error == 'NotRegistered' || $error == 'InvalidRegistration') { foreach ($device_id_actions as $setting_num => $device_id) { if ($device_id['push_device_id'] == $device_ids[$id]) unset($device_id_actions[$setting_num]); } }*/ } } } } // return $device_id_actions; }