Chris Pollett > Students > Kamboj

    Print View

    [Bio]

    [Blog]

    [CS297 Proposal]

    [CS297 Del #01 (study of wiki systems) - PDF]

    [CS297 Del #02 (adding multiple users)]

    [CS297 Del #03 (fetch links)]

    [CS297 Del #04 (what links here)]

    [CS297 Report - PDF]

    [CS298 Proposal]

    [CS298 Del #01 (getting relationship types)]

    [CS298 Del #02 (displaying to and from links)]

    [CS298 Del #03 (advanced search)]

    [CS298 Report - PDF]

    [CS298 Presentation - PDF]

























CS 297 Deliverable 02

Adding Multiple Users to a Group in Yioop

Description

Under the Social Component in Yioop, one can add manage groups. There are scenarios when one needs to add multiple users to a group at a single time. E.g.: All students requesting to be a part of a class group created by Dr. Pollett.

There was a small issue in Yioop related to adding multiple users to a group at a time. The details of the issue are as follows:

1. There are 10 users requesting to join a group that are displayed at a time.

2. In case of more than 10 requests, the admin has to click on ">>" to view the next 10 requests and so on.

3. While approving/denying the join request of nth request (n>10), the admin is brought back to the first set of users i.e. first 10 users (1<=n<=10).

4. Basically, there is a small bug which has to be resolved for the admin to stay on the same set of users, where he/she is presently working and not being brought to the first page of users.

5. This saves time and efforts while adding multiple users at a time.

6. To sum up, while adding large number of users to a group, if a user is activated/deleted/banned/reinstated in the group, then it brings the admin back to the beginning of the list of users in the group. For instance, there are 21 users in the group and the admin adds user 16 to the group, then upon Activating user 16, the admin is brought back to the beginning of the list of users in that group. The issue here is that the admin has to traverse the list sequentially to reach to user 16. This can be problematic if there are very large number of users, say 50 or 100.

Steps to Reproduce the Issue

The following steps would assist in reproducing the issue:

1. Access Yioop homepage as an admin

2. Go to Social->Manage Groups->Click the group in which you got multiple user requests ( User requests can also be created by making multiple user accounts and requesting access to the particular group, say "TestGroup.")

3. Click Edit under Actions and then click on the link which displays the number of user requests under Members.

4. Click on the link. It displays the number of users, requesting access to the group.

5. Scroll next pages of the list using ">>". Choose one of the users and activate the user there by clicking Activate.

6. The admin would be brought back to the beginning of the list.

Results

The issue is resolved by passing the parameter which states where exactly in the list of users are we presently. While performing any action (activated / deleted / banned / reinstated) on a particular user requesting access, if its position in the list is saved to a parameter which is passed to a method where the actual action is performed then the issue gets resolved.

The argument passed is "group_limit" and another parameter taken into consideration is "NUM_RESULTS_PER_PAGE", e.g.: 10 users per page

Code tested on 45 users after making a Test Group and performing all actions: Activate, Delete, Ban and Reinstate. Thus, similar functionality was implemented for all kinds of actions possible for any user.

Patch created and accepted by Dr. Pollett

Deliverables

Mantis Bug ID:0000177

src/configs/Config.php

src/controllers/components/SocialComponent.php

src/views/elements/ManagegroupsElement.php

References

Yioop Documentation: Link