私の質問は非常に簡単です: ユーザーの現在のユーザー ポイントの量がルール モジュールでマイナスになっているかどうかを確認するにはどうすればよいですか? ユーザーにユーザー ポイントが付与されたときにアクティブ化する必要があるアクションを作成したいと考えています。イベントは設定したのですが、条件の設定方法がわかりません。
編集:ルールの条件で「カスタム PHP コードの実行」オプションを取得するために、PHP フィルター モジュールを有効にしました。(以前にこれを行う必要があることを知りませんでした...) このコードを使用して、ユーザーのユーザー ポイントがマイナスかどうかを確認しました。
global $user;
$num_pts = userpoints_get_current_points($user->uid, 'all');
$neg_pts = $num_pts < 0;
残念ながら、ユーザー ポイントの量がマイナスの場合でも、常に「false」と評価されます。私もこれを試しました:
$num_pts = userpoints_get_current_points([userpoints-transaction:user]->uid, 'all');
$neg_pts = $num_pts < 0;
しかし、それもうまくいきませんでした(同じ理由)。どちらの場合も、エラー メッセージは表示されません。
これらのコード スニペットは間違っていますか? 正しいものはどのように見えますか?