Untuk D7, saya sarankan untuk mencari kombinasi dari alternatif ini, dan modul yang sering digunakan, untuk mengurangi (atau menambah) poin pengguna ketika beberapa node dimatikan (atau downvote seperti itu dihapus lagi, yang mungkin terjadi juga ...):
Di bawah ini adalah aturan yang diperlukan, untuk masing-masing kasus ini (gunakan UI Aturan untuk mengimpornya di situs Anda sendiri, setelah Anda mengaktifkan modul yang diperlukan yang disebutkan di atas). Asumsi yang dibuat dalam aturan ini:
- Mereka menggunakan tipe konten dengan nama mesin
article
(sesuaikan nama ini agar sesuai dengan nama mesin Anda sendiri, atau hilangkan Ketentuan Aturan yang memungkinkan untuk semua jenis konten yang dapat dipilih).
- Nilai downvote cocok dengan "
-1
".
Turunkan simpul
Aturan di bawah ini akan mengurangi -2 (memberikan -2) poin pengguna untuk downvote (ke pembuat node) ... DAN juga -1 poin pengguna untuk pemilih:
{ "rules_votedown_node" : {
"LABEL" : "votedown_node",
"PLUGIN" : "reaction rule",
"OWNER" : "rules",
"REQUIRES" : [ "rules", "voting_rules", "userpoints_rules" ],
"ON" : { "voting_rules_insert_node" : [] },
"IF" : [
{ "node_is_of_type" : {
"node" : [ "node" ],
"type" : { "value" : { "article" : "article" } }
}
},
{ "voting_rules_condition_check_vote_value" : { "vote" : [ "vote" ], "value" : "-1" } }
],
"DO" : [
{ "userpoints_action_grant_points" : {
"user" : [ "node:author" ],
"points" : "-2",
"tid" : "0",
"entity" : [ "" ],
"description" : "Receive downvote to [node:type-name] \u0022[node:title]\u0022",
"operation" : "DownvoteReceived",
"reference" : "By uid=[vote:uid], for [node:type-name] to q=\u003Ca href=\u0022\/node\/[node:nid]\u0022\u003E[node:title]\u003C\/a\u003E",
"display" : "1",
"moderate" : "default"
}
},
{ "userpoints_action_grant_points" : {
"user" : [ "vote:user" ],
"points" : "-1",
"tid" : "0",
"entity" : [ "" ],
"description" : "Issue downvote to [node:type-name] \u0022[node:title]\u0022",
"operation" : "DownvoteIssued",
"reference" : "From uid=[node:author:uid], for [node:type-name] to q=\u003Ca href=\u0022\/node\/[node:nid]\u0022\u003E[node:title]\u003C\/a\u003E",
"display" : "1",
"moderate" : "default"
}
}
]
}
}
Batalkan downvote sebuah node
Aturan di bawah ini akan memberikan +2 (= menghapus -2) poin pengguna untuk downvote yang dibatalkan (ke pembuat node) ... DAN juga +1 poin pengguna untuk pemilih:
{ "rules_votedown_node_cancel" : {
"LABEL" : "votedown_node_cancel",
"PLUGIN" : "reaction rule",
"OWNER" : "rules",
"REQUIRES" : [ "rules", "voting_rules", "userpoints_rules" ],
"ON" : { "voting_rules_delete_node" : [] },
"IF" : [
{ "node_is_of_type" : {
"node" : [ "node" ],
"type" : { "value" : { "article" : "article" } }
}
},
{ "voting_rules_condition_check_vote_value" : { "vote" : [ "vote" ], "value" : "-1" } }
],
"DO" : [
{ "userpoints_action_grant_points" : {
"user" : [ "node:author" ],
"points" : "2",
"tid" : "0",
"entity" : [ "" ],
"description" : "Cancel downvote to [node:type-name] \u0022[node:title]\u0022",
"operation" : "DownvoteCancelled",
"reference" : "By uid=[vote:uid], for [node:type-name] to q=\u003Ca href=\u0022\/node\/[node:nid]\u0022\u003E[node:title]\u003C\/a\u003E",
"display" : "1",
"moderate" : "default"
}
},
{ "userpoints_action_grant_points" : {
"user" : [ "vote:user" ],
"points" : "1",
"tid" : "0",
"entity" : [ "" ],
"description" : "Withdraw downvote to [node:type-name] \u0022[node:title]\u0022",
"operation" : "DownvoteWithdrawn",
"reference" : "From uid=[node:author:uid], for [node:type-name] to q=\u003Ca href=\u0022\/node\/[node:nid]\u0022\u003E[node:title]\u003C\/a\u003E",
"display" : "1",
"moderate" : "default"
}
}
]
}
}
Meskipun mungkin tidak jelas dari hanya menelusuri aturan yang diekspor di atas, perhatikan description
, operation
dan reference
digunakan dalam setiap transaksi User Point.
Dengan menggunakan aturan seperti itu, konfigurasi berapa banyak biaya untuk upvote dan / atau downvotes hanyalah masalah mengadaptasi nilai-nilai titik pengguna yang akan diberikan (atau dihapus) menggunakan UI Aturan.
Perhatikan juga description
, operation
dan reference
digunakan dalam setiap transaksi Poin Pengguna. Itu juga akan meningkatkan laporan Poin Pengguna khas (melalui berbagai detail yang ditambahkan dalam transaksi poin pengguna yang sebenarnya).
Menggunakan modul Aturan Bersyarat , Anda juga dapat menggabungkan aturan-aturan ini dalam satu aturan (yang menyederhanakan pemeliharaannya).
Pekerjaan rumah : sesuaikan aturan yang ditunjukkan di atas untuk menerapkan sesuatu yang mirip dengan hadiah di SE (= transfer sejumlah Poin Pengguna dari satu pengguna ke pengguna lain).
PS: " jika Anda memilih sesuatu, Anda mendapatkan poin reputasi berlabuh " (pada SE) hanya berlaku untuk jawaban, bukan untuk pertanyaan. Untuk memperbaiki yang Anda inginkan, hanya masalah menambahkan Ketentuan Aturan tambahan yang sesuai (misalnya berdasarkan jenis konten demikian).