Solved

Designing Login forms using domcfg.nsf

Posted on 2004-08-17
8
1,619 Views
Last Modified: 2013-12-18
Hi ,

I want to know if this is possible and if it is ,how do i proceed?

I am designing a job search website. In one of the forms , i have a hotspot button called "Login" . Once the user clicks on login, i want the user to see the customized login form that i have created in domcfg.nsf.
Now, Once th user enters username and password , it should authenticate the user and take her to her job profile form.


How can i do this?

thanks,
Jay

0
Comment
Question by:jaggernat
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
8 Comments
 
LVL 24

Accepted Solution

by:
HemanthaKumar earned 500 total points
ID: 11823162
First,

1. Enable session based authentication in server document
2. Create Mapping document - should define what will be the form which will be used to login

Copy the $$login form from domcfg.nsf  into your database (this is the form used in step 2) and set redirect to the agent which will identify the user and open the job profile form accordingly...

~Hemanth
0
 
LVL 15

Expert Comment

by:Bozzie4
ID: 11823199
After enabling session authentication and creating the mapping document, any url with ?login in it will show you the customized login form.

So eg. /db.nsf?open&login or /db.nsf/myagent?open&login will show the login form.

Tom
0
 
LVL 31

Expert Comment

by:qwaletee
ID: 11823299
You really have two questions:

1) How to use a custom login instead of the default

2) How to direct the user to a specific page upon login

Hemantha has answered the first part.  (Note: You usually have a server-wide custom login, and you USUALLY put it in the domcfg.nsf, but it can reside elsewhere.  The key is to specify a "Mapping a login form" on the domcfg.nsf CREATE document menu.)

As to the second part...

This depends on how you have set up profiles.  For example, if there is a separate database containing profiles, and each profile has a readers name field, so that most users will have only one document available to them in the database, you coudl simply do this:

Set the database Anonymous access to No Access
Create a view of all documents in the DB
Specify a URL of /profilesdb.nsf/nameoftheview/$First

When the user clicks on thelink before logging in, Domino will recognize that the ACL prevents the user from getting in, and will force authentication.  The authentication page keeps track of the URL the user was trying to reach, and on successful login, will direct the user to that page.  So, after logging in, the usre is back at /profilesdb.nsf/nameoftheview/$First.  That URL attenpts to open the first document shown in the view, which will always be the user's own profile, since taht is the only document the user can see.
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 10

Author Comment

by:jaggernat
ID: 11897007
hello guys,

sorry for the little delay..


I had this simple question.  In my R5 databse , there is a button in my form which has the following formulae

@command([toolstunmacro]; "agentname") with the agent named "agentname"

when i open the form on the browser and click the button, it says "form processed" instead of running the agent.

Agent properties are:

name : agentname
shared agent
run all documents in database
use @command


any help would be greatly appreciated.

thanks,
Jay.



0
 
LVL 19

Expert Comment

by:madheeswar
ID: 11899704
in your form create a $$Return field.

And the default value should be:
"Your form is processed. Thank you for visiting."

the above message will be displayed. And you can specify where to redirect also.
0
 
LVL 19

Expert Comment

by:madheeswar
ID: 11899718
in the $$Return Field, u can use below options:

Redirecting to:
a view:
"[/" + @ReplaceSubstring( @Subset(@DbName;-1) ; "\\" : " " ; "/" : "+") + "/" + "YourViewname"+ "?OpenView]"  

a form:
"[/" + @ReplaceSubstring( @Subset(@DbName;-1) ; "\\" : " " ; "/" : "+") + "/" + "YourFormname"+ "?Openform]"  

Hope u got it.
0
 
LVL 10

Author Comment

by:jaggernat
ID: 11904769
yes i got it,,,but how do i know the agent has executed at the background ....
the agent is supposed to create a person document in names.nsf.

this is a part of the code :

<<<< Set db = session.GetDatabase("", "names.nsf")
      Set view = db.GetView("($Users)")
      Set persDoc = view.GetDocumentByKey(doc.UserName(0))
      If (persDoc Is Nothing) Then
            Call doc.Save(True, False)
            Print "[/" & session.CurrentDatabase.FilePath & "/ThankYou?OpenPage]"
            Exit Sub
      Else
            doc.Message = "Person Document for this UserName already exist."
            Exit Sub
            
      End If
      Exit Sub
>>>>>>>

So now the problem is that when user clicks the createprofile button, it should create a profile by the username. Incase username already exists, it should say "person document already exists".


thanks,
J

0
 
LVL 19

Expert Comment

by:madheeswar
ID: 11909995
Set db = session.GetDatabase("", "names.nsf")
     Set view = db.GetView("($Users)")
     Set persDoc = view.GetDocumentByKey(doc.UserName(0))
     If (persDoc Is Nothing) Then
          Call doc.Save(True, False)
          Print "[/" & session.CurrentDatabase.FilePath & "/ThankYou?OpenPage]"
          Exit Sub
     Else
          Print "Person Document for this UserName already exist."
          Exit Sub
         
     End If
     Exit Sub
try the above.
or u can use alert also.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

You’ve got a lotus Domino web server, and you have been told that “leverage browser caching” is a must do. This means that we have to tell the browser everywhere in the web to use cache. In other words, we set (and send) an expiration date in the HT…
For beginners of Lotus Notes user this is important to know about the types of files and their location supported by IBM Notes. Mostly users are unaware about how many file types are created and what their usages are. This Article is fully dedicated…
This video Micro Tutorial shows how to password-protect PDF files with free software. Many software products can do this, such as Adobe Acrobat (but not Adobe Reader), Nuance PaperPort, and Nuance Power PDF, but they are not free products. This vide…
Michael from AdRem Software explains how to view the most utilized and worst performing nodes in your network, by accessing the Top Charts view in NetCrunch network monitor (https://www.adremsoft.com/). Top Charts is a view in which you can set seve…

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question