public static function getByUserId($uid)
 {
     /**
      * @var $db \PDO
      */
     global $db;
     // Prepare SELECT
     $stmt = $db->prepare("SELECT `id` FROM " . self::$tableName . " WHERE user = ?");
     $stmt->execute(array($uid));
     if ($stmt->rowCount() == 0) {
         throw new MailSubscriptionNotFoundException();
     }
     $dataFromDB = $stmt->fetch(\PDO::FETCH_ASSOC);
     $mailSubscription = MailSubscription::getById($dataFromDB['id']);
     return $mailSubscription;
 }
示例#2
0
        header("Content-Type: text/html");
        print json_encode(array("status" => "error", "errors" => $file->getErrors()));
        exit;
    }
});
$app->get("/mailsubscription/:uid", function ($uid) {
    try {
        $mailSubscription = MailSubscription::getByUserId($uid);
        $subscribed = true;
    } catch (MailSubscriptionNotFoundException $e) {
        $subscribed = false;
    }
    outputJSON(array("subscribed" => $subscribed));
});
$app->get("/mailsubscription/subscribe/:uid", function ($uid) {
    try {
        $mailSubscription = MailSubscription::getByUserId($uid);
    } catch (MailSubscriptionNotFoundException $e) {
        $mailSubscription = new MailSubscription();
        $mailSubscription->setUser($uid);
        $mailSubscription->save();
    }
});
$app->get("/mailsubscription/unsubscribe/:uid", function ($uid) {
    try {
        $mailSubscription = MailSubscription::getByUserId($uid);
        $mailSubscription->delete();
    } catch (MailSubscriptionNotFoundException $e) {
    }
});
$app->run();