Solved

Dialog List from a view with Link

Posted on 2000-03-16
10
378 Views
Last Modified: 2013-12-18
I am creating a web page with a dialog list. The dialog list pulls the items from a view that I have created. On the computed dialog list formula I used
@DbColumn("";"";"WebView";1).
for the column I used
"[<a href="+URLName+">"+Title+"</a>
What I want is when I choose the dialog list it will open a particular URL. This can be easily done if you hardcode it using JavaScript on page, but what I want is that it pulls the data from a view which is easily maintainable.I am hoping for your help. Thanks.

from,
Barkley
0
Comment
Question by:Barkley
10 Comments
 
LVL 24

Expert Comment

by:HemanthaKumar
Comment Utility
Hi

From ur statement I understand that u wan't to open a dialog window where user chooses the option and that value should reflect in the field, right !

If so then u can't use dialog list used in notes as it is in the web, for that u should go for window opener javascript function. You can do it, for that there are few steps to be followed, if this is what u r looking for , let me know .


~Hemanth



0
 

Author Comment

by:Barkley
Comment Utility
Hemanth,
  Yes that is what I wanted, what I want is whenever the user clicks on one of the items in the dialog list, it will open the window of that link.But the items on that link, comes from a view not hardcoded.

Thanks,
Dennis
0
 
LVL 6

Expert Comment

by:ghassan99
Comment Utility
Create a form with 2 fields, 'Title' & 'URL'.  Create a view say 'Webs' with 2 columns 'Title' & 'URL' too which corresponds to the 2 fields in the form created above.  Make sure the first column is sorted.  Create your addresses from that form, eg. Title: Lotus, URL: http://www.lotus.com.
In your main form that will be displayed on the web, create a keyword field with this fomula: @DbColumn("";"";"webs";1), call the field say 'urls'.  Add a button next to it, call it 'Go To' with this formula:
@Command([FileCloseWindow]);
@Command([ToolsRunMacro];"redir")

'redir' is an agent that you must create with this code in the initialize event:

Dim s As New notessession
Dim doc,doc1 As notesdocument
Dim db As notesdatabase
Dim v As notesview
Set doc = s.documentcontext
Set db = s.currentdatabase
Set v = db.getview("Webs")
test = doc.urls
Set doc1 = v.getdocumentbykey(test(0))
test1 = doc1.url
Print "[" + test1(0) + "]"

The agent must be shared and 'Run Once...' and 'Manually from the Actions Menu'

I created this on R5, and tested it locally on R4 successfuly.  I believe it might create problems on R4 while not on local, but probably there is a workaround.

-Gus
0
 

Author Comment

by:Barkley
Comment Utility
ghassan99,
   Thanks for the reply.This will work if there is a button but what I wanted was the user will just click on the item and will trigger the URL. I am looking at the OnClick event which is JavaScript.
This is what I have also done:
Create a form with 2 fields, 'Title' & 'URL'.  Create a view say 'Webs' with 2 columns 'Title' & 'URL' too which corresponds to the 2 fields in the form created above.  Make sure the first column is sorted.  Create your addresses from that form, eg. Title: Lotus, URL: http://www.lotus.com.
In your main form that will be displayed on the web, create a keyword field with this fomula: @DbColumn("";"";"webs";1), call the field say 'urls'.  
On the event OnClick I call  a
javascript.

"<script language=\"JavaScript\">
function ref()
{location=document.forms[0].urls.options[0].text}</script>
This works if the URL is shown on the dialog list but if the Title is shown it does not work. I have to link the title and the URL whenever I click.
Thanks.

from,
Barkley







0
 

Author Comment

by:Barkley
Comment Utility
My problem now is how do I pass the  data from Notes R5 to JavaScript. I can get the URL link using DBLookup but I can only trigger it though the OnClick of JavaScript.If Notes and JavaScript can't pass the data, is there a Notes command similar to OnClick? Or a JavaScript that can do a DBLookup?

Need help,
Barkley
0
Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

 
LVL 6

Expert Comment

by:ghassan99
Comment Utility
Then try and start the agent in JS, something like:
window.location="http://www.abc.com/redir?openagent"
in the onclick JS event.

-Gus
0
 

Expert Comment

by:LRM
Comment Utility
Hi Barkley,

Create a  form with 2 fields,"JavaScriptArray", “Choice”  and "$$HTMLHead".

The formula for the field JavaScriptArray is as follows:

"if(document.forms[0].KeywordfieldName.options[document.forms[0].KeywordfieldName.selectedIndex].text==\""
+@DbColumn("":"nocache";"";"webs";1)+"\"{"
+@NewLine
var url=\""+@DbColumn("":"nocache";"";"webs";2)+"\";"
+@NewLine
+"parent.location=url;"
+"}"

The formula for the field $$HTMLHead is as follows:

"<SCRIPT language=JavaScript>"+@NewLine
+<!--"+@NewLine
"function go(){"+@NewLine
+"     "+@Implode(JavaScriptArray;@NewLine)+@NewLine
+@NewLine
+"}"+@NewLine
+@NewLine
+"//-->"+@NewLine
+"</SCRIPT>"

The formula for the field Choice is as follows:

@DbColumn("":"nocache";"";"webs";1)

You can call the above JavaScript function in onChange event of Choice Field so that it will trigger when the user selects a value from the Keyword field.


~LRM
0
 
LVL 1

Accepted Solution

by:
bennyliaw earned 100 total points
Comment Utility
I believe LRM resolution should work, and I also have another simpler alternative.

Use the form with 2 fields that you already have.
In your "WebView", first column will be the title field and the second  is the url field.

Use following formula for the dialog list:
@DbColumn("";"";"WebView";1) + "|" + @DbColumn("";"";"WebView";2)

In th onchange event use following javascript:
location = document.forms[0].KeywordfieldName.options[document.forms[0].KeywordfieldName.selectedIndex].value

Let me know whether it works
benny@ematic.com
0
 

Author Comment

by:Barkley
Comment Utility
bennyliaw,
  your answer worked. So I will give you the points.
  I would also like to thank ghassan99 and LRM, their proposals all worked.But I have to choose the simplest answer.

Thanks to you guys for helping me.

from,
Barkley
0
 
LVL 6

Expert Comment

by:ghassan99
Comment Utility
Anytime...

-Gus
0

Featured Post

Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

Join & Write a Comment

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…
Article by: Rob
Notes 8.5 Archiving Steps and Tips This article covers setting up a Notes archive, and helps understand some of the menu choices making setting up and maintaining a Notes archive file easier.
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…

743 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

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now