$sUnit = process_db_input($_POST['unit']); $sAction = process_db_input($_POST['action']); $iObjectId = (int) $_POST['object_id']; switch ($_POST['direction']) { case 'subscribe': if (isset($_POST['user_id']) && (int) $_POST['user_id'] != 0) { $aResult = $oSubscription->subscribeMember((int) $_POST['user_id'], $sUnit, $sAction, $iObjectId); } else { if (isset($_POST['user_name']) && isset($_POST['user_email'])) { $aResult = $oSubscription->subscribeVisitor($_POST['user_name'], $_POST['user_email'], $sUnit, $sAction, $iObjectId); } } break; case 'unsubscribe': if (isset($_POST['user_id']) && (int) $_POST['user_id'] != 0) { $aResult = $oSubscription->unsubscribeMember((int) $_POST['user_id'], $sUnit, $sAction, $iObjectId); } else { if (isset($_POST['user_name']) && isset($_POST['user_email'])) { $aResult = $oSubscription->unsubscribeVisitor($_POST['user_name'], $_POST['user_email'], $sUnit, $sAction, $iObjectId); } } break; } header('Content-Type:text/javascript'); $oJson = new Services_JSON(); echo $oJson->encode($aResult); } else { if (isset($_GET['sid'])) { $aResult = $oSubscription->unsubscribe(array('type' => 'sid', 'sid' => $_GET['sid'])); if (isset($_GET['js']) && (int) $_GET['js'] == 1) { $oJson = new Services_JSON();