Aggiungi punti utente per ogni voto positivo


8

Il mio sito drupal 7 ha un sistema di valutazione degli utenti per i contenuti degli autori, ma il problema è che ogni voto positivo o negativo non aggiunge automaticamente punti nel profilo degli utenti. Ma penso, è possibile dal modulo Punti utente . Dalla pagina del modulo Karma di Userpoints ho appreso che il modulo di voto su / giù consente a un elettore di aggiungere o sottrarre punti all'autore di un determinato nodo o commento, assegnando così o punendo l'autore per ciò che hanno scritto.
Quindi, ho configurato con successo il modulo voto / su , ecco uno screenshot di una vista del mio sito Web:
inserisci qui la descrizione dell'immagine
ora la mia domanda è: come aggiungere punti automaticamente per i voti usando il modulo voto / su e il modulo Punti utente? Quindi, se un utente vota un contenuto, l'utente lo farà per quell'autore del contenuto 10 + 5 = 15! {Ecco 10il punto utente precedente per l'autore del contenuto ed 5è il valore per ogni voto positivo!} Non riesco a capire come farlo automaticamente? Qualche idea? Grazie

Risposte:


6

C'è un modulo per aggiungere regole all'API di voto: http://drupal.org/project/voting_rules

I punti utente vengono forniti con supporto delle regole native.

Ho appena impostato il tutto sul mio ambiente di test, ho aggiunto una nuova regola con

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 greather than, Data value: 0

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

informazioni aggiuntive: è necessario abilitare userpoint e userpoints_rules , nonché voting_rules

Ecco l'esportazione della regola

{ "rules_reward_voter" : {
    "LABEL" : "reward 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" : "\u003E", "value" : "0" } }
    ],
    "DO" : [
      { "userpoints_action_grant_points" : {
          "user" : [ "vote:user" ],
          "points" : "5",
          "tid" : "0",
          "entity" : [ "" ],
          "operation" : "Insert",
          "display" : 1,
          "moderate" : "default"
        }
      }
    ]
  }
}

molte grazie per la rapida risposta, ma mi sto solo bloccando durante la configurazione delle condizioni nella regola? Se possibile, puoi descrivermi di più sul processo?
rakibtg,

Ho fatto un aggiornamento su questo
Andre Baumeier il

grazie mille per il tuo aiuto, lo applicherò e ti ;)
busserò di

ho riscontrato un problema, un aumento del voto aumenta i punti utente per l'elettore ma non per l'autore! inoltre, per favore, fate qualcosa per il voto negativo (-5 punti) ... sono un principiante alla drupal ... a proposito, grazie per il vostro aiuto:)
rakibtg,

Ho aggiunto la condizione. aggiornata la risposta :)
Andre Baumeier,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.