Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
THRUST SERVICES & TOOLS
CLOUD EDITIONS
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Content Management (Extended ECM)
API, SDK, REST and Web Services
User Profile Modifications
General_Dynamics_IT
Hello,Running LL 9.1 SP2 and our customer would like some changes made to the user profile on the General tab. Here is what we would like to do:1) Add a table to the LL schema with the new fields with a foreign key to the kuaf table by ID.2) Modify the appropriate weblingo files to display the new fields.3) Modify the functions/scripts to retrieve and submit data for the user record.I have looked in the code using Builder and found that the UAPI.GetUserByID() function returns the user record. The user record has a predefined number of fields that I believe would need to be modified to extract the data from the new fields. Is this correct thinking? Can the UAPI functions be modified? If not, what should my thinking be on this?Any help appreciated.Thanks,Mike
Find more posts tagged with
Comments
General_Dynamics_IT
Looks like I found part of the answer to my questions. Yes, the API's can be modified using Java, C/C++ or Visual Basic once installed on the machine.Is this the best way to approach this problem? Your feedback is much appreciated.Thanks,Mike
Magnus_Salgo_(IDNordicAdmin_(Delete)_2300172)
best way is doing this inside Livelink with callbacksI think for a skilled Livelink programmer this takes 1-2 days.We have done things like that for some customers where we extend the profile with more data for an LDAP systemIf you should try doing it yourself have a look at WEBUSER/UserCallbackRegardsMagnus S?lg?salgo@ids.se+46-8-7046349Here is the documentation#ifdef DOCDescription: This Object is used to control additional extended user attribute fields. It is registered into the UserCallbacksSubsystem also in LLIAPI.Fields: fTabName - If defined this is the name for an additional tab on the user dialog page The name must not be blank (reserved for internal use) fHTMLFile - The name of the HTML file that is used in the new user page, edit user page and the user dialog pages (undefined if there is none) fBaseTabAddOn - The number of pixels that the 'base' user dialog should be extended (usually about 20 pixels per row) .. this needs to be specified if the HTML snipit file add fields to the base dialog (BASE_TAB) fTabHeight - If this attributes extension has its own tab page in the user dialog this field specified the window height needed for that tab.. this needs to be specified if the HTML snipit file add fields to the base dialog (BASE_TAB) fSelectUserSignature - The string signature to uniquely identify the usage of CBSelectUser callback. Non-Overidable Methos: HTMLFile - Returns the HTML 'snipet' file for this user attributes extension.Overidable Methods: CrkAttr - Virtual method to crack the extended attributes CBNew - Called when a new user is created (Deprecated) *** CBUserNew - Called when a new user is created (New) *** CBNewPre - Called when a new user is about to be created * CBUpdate - Called when an existing user is updated (Old) ** CBUserUpdate - Called when an existing user is updated (New) ** CBUpdatePre - Called when an existing user is about to be updated * CBDeleteUser - Called when an existing user has been deleted CBDeleteGroup - Called when an existing group has been deleted CBLogin - Called when a user logs in CBLogout - Called when a user logs out CBChange - Called when a user changes thier own password CBChangePre - Called when a user is about to change thier own password CBDialogPre - Called when a user dialog is about to be displayed CBChooseUser - Called when the choose user dialog utility is used. CBDisplayName - Called when $LLIAPI.UsersPkg.UserDisplayNameGet function is called. CBDisplayNames - Called when $LLIAPI.UsersPkg.UserDisplayNamesAdd function is called. CBDomainNew - Called when a new domain is created. * These callbacks should set the argument named 'data' .. this field is available to the html snipits as .fData ** Either CBUpdate or CBUserUpdate should be used. They are basically the same except that CBUserUpdate accepts an assoc with 2 addition data: NewUserData and ExpireDateAssoc. *** CBUserNew should be used to support domain users feature. CBNew works but it lacks the information of the space which the new user is in. #endif
General_Dynamics_IT
Thanks for the information. I'll take a look at that.
General_Dynamics_IT
Hi Magnus,I took a look at the WEBUSER node in Builder and I see the UserCallback which contains UserGeneral and UserPhoto. If I wanted to add another section say UserExtraInfo, would I have to edit the WEBUSER node or can I create a new module called WEBUSEREXTRA that would be called whenever information needed to be displayed for that section?I know you could modify the WEBUSER Ospace but I would guess that you would want to stay away from modifying default Ospaces of Livelink.Just trying to understand the best practices that should be implemented for this task.Thanks,Mike