]> gitweb.fluxo.info Git - lorea/elgg.git/commitdiff
updated the deprecated list_site_members() to use new ElggSite::listMembers() method...
authorcash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544>
Mon, 22 Nov 2010 23:11:29 +0000 (23:11 +0000)
committercash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544>
Mon, 22 Nov 2010 23:11:29 +0000 (23:11 +0000)
git-svn-id: http://code.elgg.org/elgg/trunk@7422 36083f99-b078-4883-b0ff-0f9b5a30f544

engine/classes/ElggSite.php
engine/lib/sites.php

index 93d442e0afe665b00de1646042eb059be9d0f4ea..aa94b9fd21a82f4c99ed185a8ab8486575b68a80 100644 (file)
@@ -196,22 +196,60 @@ class ElggSite extends ElggEntity {
        }
 
        /**
-        * Returns an array of ElggUser entities who are members of the site.
+        * Gets an array of ElggUser entities who are members of the site.
         *
-        * @param int $limit  Limit
-        * @param int $offset Offset
+        * @param array $options An associative array for key => value parameters
+        *                       accepted by elgg_get_entities(). Common parameters
+        *                       include 'limit', and 'offset'.
+        *                       Note: this was $limit before version 1.8
+        * @param int $offset Offset @deprecated parameter
+        *
+        * @todo remove $offset in 2.0
         *
         * @return array of ElggUsers
         */
-       public function getMembers($limit = 10, $offset = 0) {
-               return elgg_get_entities_from_relationship(array(
+       public function getMembers($options = array(), $offset = 0) {
+               if (!is_array($limit)) {
+                       elgg_deprecated_notice("ElggSite::getMembers has a different arguments!", 1.8);
+                       $options = array(
+                               'limit' => $options,
+                               'offset' => $offset,
+                       );
+               }
+               
+               $defaults = array(
                        'relationship' => 'member_of_site',
                        'relationship_guid' => $this->getGUID(),
                        'inverse_relationship' => TRUE,
-                       'types' => 'user',
-                       'limit' => $limit,
-                       'offset' => $offset
-               ));
+                       'type' => 'user',
+               );
+
+               $options = array_merge($defaults, $options);
+
+               return elgg_get_entities_from_relationship($options);
+       }
+
+       /**
+        * List the members of this site
+        *
+        * @param array $options An associative array for key => value parameters
+        *                       accepted by elgg_list_entities(). Common parameters
+        *                       include 'full_view', 'limit', and 'offset'.
+        *
+        * @return string
+        * @since 1.8.0
+        */
+       public function listMembers($options = array()) {
+               $defaults = array(
+                       'relationship' => 'member_of_site',
+                       'relationship_guid' => $this->getGUID(),
+                       'inverse_relationship' => TRUE,
+                       'type' => 'user',
+               );
+
+               $options = array_merge($defaults, $options);
+
+               return elgg_list_entities_from_relationship($options);
        }
 
        /**
index ac048c26b2ec9251d97c5375957abb4b86ca85ab..f8590a4e009d3c64bf9b7c9a3f30975fb5c67d44 100644 (file)
@@ -136,17 +136,12 @@ function get_site_members($site_guid, $limit = 10, $offset = 0) {
        elgg_deprecated_notice("get_site_members() deprecated.
                Use ElggSite::getMembers()", 1.8);
 
-       $site_guid = (int)$site_guid;
-       $limit = (int)$limit;
-       $offset = (int)$offset;
+       $site = get_entity($site_guid);
+       if ($site) {
+               return $site->getMembers($limit, $offset);
+       }
 
-       return elgg_get_entities_from_relationship(array(
-               'relationship' => 'member_of_site',
-               'relationship_guid' => $site_guid,
-               'inverse_relationship' => TRUE,
-               'types' => 'user',
-               'limit' => $limit, 'offset' => $offset
-       ));
+       return false;
 }
 
 /**
@@ -157,28 +152,23 @@ function get_site_members($site_guid, $limit = 10, $offset = 0) {
  * @param bool $fullview  Whether or not to display the full view (default: true)
  *
  * @return string A displayable list of members
- * @deprecated 1.8 Use elgg_list_entities_from_relationships() with relationship
- *                 'member_of_site'
+ * @deprecated 1.8 Use ElggSite::listMembers()
  */
 function list_site_members($site_guid, $limit = 10, $fullview = true) {
        elgg_deprecated_notice("list_site_members() deprecated.
-               Use elgg_list_entities_from_relationships()", 1.8);
+               Use ElggSite::listMembers()", 1.8);
 
-       $offset = (int) get_input('offset');
-       $limit = (int) $limit;
        $options = array(
-               'relationship' => 'member_of_site',
-               'relationship_guid' => $site_guid,
-               'inverse_relationship' => TRUE,
-               'types' => 'user',
                'limit' => $limit,
-               'offset' => $offset,
-               'count' => TRUE
+               'full_view' => $full_view,
        );
-       $count = (int) elgg_get_entities_from_relationship($options);
-       $entities = get_site_members($site_guid, $limit, $offset);
 
-       return elgg_view_entity_list($entities, $count, $offset, $limit, $fullview);
+       $site = get_entity($site_guid);
+       if ($site) {
+               return $site->listMembers($options);
+       }
+
+       return '';
 }
 
 /**