Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drupal通过代码在投票API中创建投票_Api_Drupal_Module_Voting - Fatal编程技术网

Drupal通过代码在投票API中创建投票

Drupal通过代码在投票API中创建投票,api,drupal,module,voting,Api,Drupal,Module,Voting,我正在编写一个自定义模块,我想让它做的部分工作是创建一个与节点关联的投票,我正在尝试找出如何从我的模块调用投票API。我查阅了文档,但有点稀疏。这里是我不久前编写的一个模块的示例 while ($data = db_fetch_object($result)) { $node = node_load($data->nid); $node_terms = taxonomy_node_get_terms($node); $vote['value'] = 0; $vote['va

我正在编写一个自定义模块,我想让它做的部分工作是创建一个与节点关联的投票,我正在尝试找出如何从我的模块调用投票API。我查阅了文档,但有点稀疏。

这里是我不久前编写的一个模块的示例

while ($data = db_fetch_object($result)) {
  $node = node_load($data->nid);
  $node_terms = taxonomy_node_get_terms($node);
  $vote['value'] = 0;
  $vote['value_type'] = 'points';
  foreach ($node_terms as $term) {
    $vote['value'] = $vote['value'] + $users_tags[$term->name];
  }
  $vote['content_id'] = $node->nid;
  if (isset($vote['content_id'])) {
    votingapi_set_votes($vote);
  }
}

这只是另一个使用此功能的示例:

function _ept_set_vote($nid, $status, $uid = NULL) {
  global $user;

  $vote = array(
    array(
      'entity_type' => 'node',
      'value' => 1,
      'entity_id' => $nid,
      'uid' => (!$uid) ? $user->uid : $uid,
      'tag' => $status
    )
  );

  votingapi_set_votes($vote, array());
}
我这样称呼它:

switch($task_status){
      case('start'):
        _ept_set_vote($nid, "Start");
        break;
      case('completed'):
        _ept_set_vote($nid, "Completed");
        break;
    }

好极了,我想这就是我所需要的,我要试试看!