1

グループを作成する Web サービスを探しています。elgg で利用可能な Web サービスを調べました。グループに関連する次の Web サービスしか見つかりません -

グループ

  • group.join グループに参加する
  • group.leave グループからの脱退
  • group.forum.save_post 新しいトピックをグループに投稿する
  • group.forum.delete_post グループからのトピックの削除
  • group.forum.get_latest_post グループ内の最新の投稿を取得する
  • group.forum.get_reply 投稿に対する返信を取得する
  • group.forum.save_reply 返信を投稿する
  • group.forum.delete_reply 返信を削除する

elgg でグループ Web サービスを作成する方法はありますか。

4

2 に答える 2

1

次の関数とその定義を webservice ファイルに追加してください。ELGG/engine/lib/web_services.php

/**
 * The group.save API.
 * This API call lets a user to create group.
 *
 * @param string $name group name
 * @param string $briefdescription short description
 * @param string $description long description
 * @param string $interests tags comma separated
 * @param int $group_guid GUID of group if its edit request
 *
 * @return bool success/fail
 * @access public
 */
function group_save($name, $briefdescription, $description, $interests, $group_guid)
{ 
   //you can change/pass below parameters from POST
   $_GET['action']='groups/edit';
   $_POST['membership'] = '2';
   $_POST['activity_enable'] = 'yes';
   $_POST['blog_enable'] = 'yes';
   $_POST['forum_enable'] = 'yes';
   $_POST['pages_enable'] = 'yes';

   //include file at location "ELGG/mod/groups/actions/groups/edit.php"
   include_once '../../mod/groups/actions/groups/edit.php';

   //Or you can copy all code from that file and paste it here. And do modification according to your need.

}

最後に、次のような関数を公開する必要があります。

expose_function(
        "group.save",
        "group_save",
        array(
                        'name' => array ('type' => 'string'),
                        'briefdescription' => array ('type' => 'string'),
                        'description' => array ('type' => 'string'),
                        'interests' => array ('type' => 'string'),
                        'group_guid' => array ('type' => 'int', 'required' => false),
        ),
        'User add/edit group',
        'POST',
        true,
        true
    );
于 2013-11-20T09:05:18.030 に答える