예제 #1
0
    $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();