Can you please tell me what database table(s) are related to making a group private? And also what table(s) are related to displaying a group's admin/owner username on the group profile page next to the Group Admin heading?
I have JPayPlans setup to create a new group upon registration, but I need to figure out how to make that group private, and get the group owner's username to display on the group profile page. Knowing what tables are involved might help me to find a solution.
Thanks for your help,
Bruce
Hi Bruce,
database table for making a group private:
table: #_community_groups
field: approvals = 1
table: #_users
field: name
Thanks Albertus,
I got the private group working.
But I still can't figure out why the username isn't working correctly. For a couple of registrations the username displays on the private group's profile below the Group Admin heading, on others it doesn't.
I am also having a problem with the confirmation link in the email sent to the new registrant. When I click it, I'm sent to a page with the message, "There is no such task provided." in the mainbody area of the page. Do you think this could be a part of the problem? Is there something extra that happens when the user confirms, besides being activated?
Anyway, I manually activated the Joomla User, but that didn't fix the Group Admin display. I've confirmed that the user is in the JS Member list. And I've confirmed that the user's Subscription is Active in JPayPlans. And I've also confirmed that the user is the assigned Group Admin in JS Groups.
Here are the mySQL INSERT statements I'm using in JPayPlans for the registration (including the JPayPlans tokens):
INSERT INTO `#__community_groups`( `ownerid`, `categoryid`, `name`,`description`,`website`,`approvals`,`published`,`membercount`,`created`) VALUES ([[USER_USER_ID]],6,"[[USERDETAIL_CFAFFILIATENAME]]","Challenge group for athletes of [[USERDETAIL_CFAFFILIATENAME]]\.","[[USERDETAIL_WEBSITE]]",1,1,1,CURDATE());
INSERT INTO `#__community_groups_members`(`groupid`,`memberid`,`approved`,`permissions`) SELECT count( * ),[[USER_USER_ID]] ,1,1
FROM `#__community_groups`;
INSERT INTO `#__community_fields_values`(`id`,`user_id`,`field_id`,`value`) VALUES ([[USER_USER_ID]],16,"[[USERDETAIL_CFAFFILIATENAME]]");
Hi Albert,
That's troublesome, because I definitely submitted them, though the site name wasn't available in the pulldown menu so I had to choose what was available in order to submit the form.
I'll see if it gives me the form again upon submitting this reply. [It did, and I've re-added the admin credentials.]
Bruce
This is solved. In JPayPlans there is an app called One Click Checkout which I had enabled. Doing so was interfering with the JPayPlans JomSocial registration app function. Vivek from JPayPlans disabled it and the confirmation now works properly — though it is the long 3 or 4 page JomSocial registration process.Bruce wrote: Thanks Albertus,
I am also having a problem with the confirmation link in the email sent to the new registrant. When I click it, I'm sent to a page with the message, "There is no such task provided."
Albert,Albertus wrote: table for displaying a group's admin/owner username on the group profile page next to the Group Admin heading:
table: #_users field: name
{"stream":1}
{"discussordering":"0","photopermission":"2","videopermission":"-1","eventpermission":"1","grouprecentphotos":"6","grouprecentvideos":"6","grouprecentevents":"6","newmembernotification":"1","joinrequestnotification":"1","wallnotification":"1","groupdiscussionfilesharing":0,"groupannouncementfilesharing":0,"stream":1}
Hi Bruce,
about owner group username. after I deep dive with your site. I found the problem at your MySQL insert statement for 'community_groups_members' table.
your insert statement:
INSERT INTO `#__community_groups`( `ownerid`, `categoryid`, `name`,`description`,`website`,`approvals`,`published`,`membercount`,`created`) VALUES ([[USER_USER_ID]],6,"[[USERDETAIL_CFAFFILIATENAME]]","Challenge group for athletes of [[USERDETAIL_CFAFFILIATENAME]]\.","[[USERDETAIL_WEBSITE]]",1,1,1,CURDATE());
INSERT INTO `#__community_groups_members`(`groupid`,`memberid`,`approved`,`permissions`) SELECT count( * ),[[USER_USER_ID]] ,1,1
FROM `#__community_groups`;
INSERT INTO `#__community_fields_values`(`id`,`user_id`,`field_id`,`value`) VALUES ([[USER_USER_ID]],16,"[[USERDETAIL_CFAFFILIATENAME]]");
INSERT INTO `#__community_groups_members`(`groupid`,`memberid`,`approved`,`permissions`) SELECT MAX(`id`),[[USER_USER_ID]] ,1,1
FROM `#__community_groups`;
Thanks Albert, that worked. The Group Admin's fullname is now displaying next to the heading.
As for the community_fields_values INSERT statement, wouldn't it be better to fill in some of the values beforehand with known values?
Albertus wrote: and table community_fields_values at your insert statement. that table not related with groups.
and 'params' that needed for groups display also. you can using same 'params' for every private groups. you can copy paste that 'params' from private group where created by Jomsocial it self at your DB.
{"discussordering":"0","photopermission":"2","videopermission":"-1","eventpermission":"1","grouprecentphotos":"6","grouprecentvideos":"6","grouprecentevents":"6","newmembernotification":"1","joinrequestnotification":"1","wallnotification":"1","groupdiscussionfilesharing":0,"groupannouncementfilesharing":0,"stream":1}
Hi Bruce,
If you want put that params value at PHP insert statement. can be done like this (e.g):
$sql = 'INSERT INTO `#__community_groups`( `ownerid`, `categoryid`, `name`,`description`,`website`,`approvals`,`published`,`membercount`,`created`, `params`) VALUES (88,6,"nama tets","Challenge group for athletes of ewqe\.","web",1,1,1,CURDATE(),\'{\"discussordering\":0,\"photopermission\":1,\"videopermission\":1,\"eventpermission\":1,\"grouprecentphotos\":6,\"grouprecentvideos\":6,\"grouprecentevents\":6,\"newmembernotification\":1,\"joinrequestnotification\":1,\"wallnotification\":1,\"groupdiscussionfilesharing\":0,\"groupannouncementfilesharing\":0,\"stream\":1}\')';