web-dev-qa-db-ja.com

反対票のマイナスユーザーポイント

投票用に Vote up/down モジュールを構成しました。投票ごとに、コンテンツの作成者は賛成票に5ポイントが付与されますが、反対票には問題があります!ダウン投票でユーザーポイントをマイナスする方法がわかりませんか?たとえば、投票者が投票した場合、ユーザーポイントから3ポイントがマイナスになります。
インストールされているモジュール:

  1. 上/下に投票
  2. ユーザーポイント
  3. 投票API
  4. 投票ルール
  5. ルールモジュール...
2
rakibtg

この答え ですでに述べたように、私はあなたの問題の1つが、挿入ルールの賛成または反対の投票がトリガーされたかどうかを判断することだと思います。 (私はあなたに良いとき、私はここで間違っているかもしれません)。

それがたった1票セットでマイナス票があるとしましょう。条件のポジティブチェックをネガティブポイントチェックに調整する必要があります。私は自分のルールをまだ環境に置いていたので、それらを複製してそれらの変更を行いました:

(マイナスポイントはおそらくマイナスの助成金になるでしょう。)

Event: User votes on a Node

Condition: User has role(s)
Parameter: User: [vote:user], Roles: authenticated user

Condition: Check the value of the vote
Parameter: Vote: [vote], Operator: is lower than or equal to, Data value: 0

Action
Grant points to a user
Parameter: User: [vote:user], Points: -3, Points category: General, Operation: Insert, Moderate: Use the site default

書き出す:

{ "rules_substract_down_voter" : {
    "LABEL" : "substract down voter",
    "PLUGIN" : "reaction rule",
    "REQUIRES" : [ "rules", "voting_rules", "userpoints_rules" ],
    "ON" : [ "voting_rules_insert_node" ],
    "IF" : [
      { "user_has_role" : { "account" : [ "vote:user" ], "roles" : { "value" : { "2" : "2" } } } },
      { "voting_rules_condition_check_vote_value" : { "vote" : [ "vote" ], "operator" : "\u003C=", "value" : "0" } }
    ],
    "DO" : [
      { "userpoints_action_grant_points" : {
          "user" : [ "vote:user" ],
          "points" : "-3",
          "tid" : "0",
          "entity" : [ "" ],
          "operation" : "Insert",
          "display" : 1,
          "moderate" : "default"
        }
      }
    ]
  }
}

したがって、まだ確認する必要があることがいくつかあります。

  • 投票/アップダウンは1つまたは2つのルールセットを使用しますか?
  • 2つ使用する場合、ルールでそれをどのように決定しますか?
  • あなたがやったよりもそれが反対票を持つものだけなら。
1
Andre Baumeier