Liferay: Create-account hook functionality - liferay

I have recently taken interest in Liferay portals.
Today I created a create account hook that is a drop down of some values I've set.
My problem is, that the hook has no functionality. Essentially, I want to have the users organization set from the dropdown. (Select org 1, you get put in org 1). Is there a way to be able to do this?
Thanks!

You can fetch all organizations by using below code and then add user into selected organizations.
OrganizationLocalServiceUtil.getOrganizations(WorkflowConstants.ALL_POS, WorkflowConstants.ALL_POS);

Related

Can we create a work item on behalf of others in TFS 2018?

We have an automation in place to move information from BUG to a customized ticket template (Infra Requests.xml) in case of infrastructural issues. Currently an AD account is being used to create tickets. I want to use the CreatedBy field from Bug to create Infra Requests. I know we have way to check-in behalf and queued-build behalf, wondering if we have similar for create-workitem.
You can create a work item and update the CreatedBy field with the bypassRules option. The same question was here: How to change the Created By field on a Work Item in TFS?
Link to rest api: Work Items - Create

Add new fields to create_account.jsp without custom fields functionality in Liferay

I want to add 15 new fields to my user account creation page in Liferay. How it is possible other than custom fields, expando tables? Because I know how to use custom fields. I have more fields so it will be difficult to manage. Through hook I want to add more fields to account creation page.
Fields are related to user.
Create one selectbox that will have list of organizations available in my application.
Create one selectbox that will have list of roles available in my application.
onclicking of save button that should redirect to 3rd party payment gateway. Once paid amount it will create account for that user.
After paid amount all the above fields need to add under extra table with related columns and maps to the user_ table with userId as a primary key.
assign that organization to the user which is selected above and similar for role also.
I am using Liferay 6.2. Please let me know if any one have any ideas!
Learn Java. A modification of the platform to the extent that you're mentioning won't work without knowing Java. You'll introduce all kinds of issues in your system.
Then there are two options:
Just implement a custom portlet that takes all the values that you want, saves them where you want and queues them in your payment system. Disable Liferay's "do-it-yourself-signup" and place your own links to the "create account" portlet. This will be easiest to maintain
Alternatively, override Liferay's JSP that's used for the "create account" UI as well as the action that's handling the data. The default implementation would save everything in Liferay's database - including custom fields. As you implement it yourself, you can do whatever you want with this data.

How can I fetch the existing table data in aportlet

I am trying to create the user by site admin so I have created a portlet which has basic user details form and in the action class I called the UserLocalServiceUtil.adduser(). Now the values are inserting into the DB in USER_. Now I want to display the list of created users by only site admin how can I do that? I have the following queries.
1) How can I fetch the values from USER_ in my portlet. Do I need to create the service builder OR are there API methods to fetch the values from the USER_ table?
2) I want to display only the users list which is created by site admin in my portlet. I don't want to display the whole company list of users. So How can I achieve this?
Suggest me any references or guidelines to do this.
Your help will be very much appreciated.
For Q1 :
http://cdn.docs.liferay.com/portal/6.1/javadocs/com/liferay/portal/service/UserLocalServiceUtil.html#getUsers(int, int)
This might help you. You don't need service builder for that. Just create a simple Liferay MVC portlet and call the relevant methods.
for Q2 : I don't think this would be possible by API methods. What you can do is to set an expando variable for user at time of creation by site-admin. And # time of fetching users, you can cross-check the value of that field manually.
EDIT :
One more point for suggestion : Never create user with Site-Admin role for user creation. This role is supposed to manage site & user assignment to the site. You can use more appropriate role i.e. Org-Admin rather than site-Admin.
How to set an expando variable while adding the user?
Liferay provides Expando API interface, which you can use while creation of user in your portlet. refer following links Developing with Expando, Liferay Expando API
I hope this would be helpful to you.

Liferay auto assign users to an organization on register

How do I auto-assign a user to an organization when they register to a liferay portal?
You can automatically assign new users to sites, roles and user groups, but not organizations.
Anyway, there are surely many ways to achieve what you want with just a few lines of code.
For example, you can develop a hook plugin which overrides the addUserWithWorkflow method of the UserLocalService service, so you can add a new organization ID to the organizationIds parameter before calling super.addUserWithWorkflow(...).
Hope it helps!

Cognos Planning 10 -- Setting up user security

I am editing user security and am trying to give a user access to an e.List item. I select the user using the [...] button and successfully find that user by searching in our AD domain.
After I select the user and press OK, that user does not come into the CAC, just this error The filter will only accept groups and roles. Users will not be added to the filter. I don't see any filters here at all.
Have you seen this before and is it possible to set up security by users?
Thank you,
WE
Answer from ericlfg on http://www.cognoise.com/community/index.php/board,15.0.html:
Hi William,
The message you are receiving is by design. In order to add a specific user, rather than a group or role, that use needs to be a member of some kind of hierarchy in your security provider.
Ex: If you're using cognos groups and roles with a Role called "Test". You would populate this test role with members from your namespace. In the CAC, you would then select the Test group when you click on the elipsis and then that will allow you to select your individual user (or alternatively the Test role).
The same would be true if you're trying to add members directly from your 3rd party authentication provider. The individual users need to be part of a roll-up role or group in order to add that roll-up role or group to the filter. Once added to the filter you can select the individual users.
Hope this helps.

Resources