Title:

Discussion Next Gen


Description:

This add on allows easy publications of any Notes documents to discussion applications via one click on a new toolbar icon. So Notes users can now easily share information with their colleagues or other external people.



Contributors:

Niklas Heidloff, Brian Leonard, Steve Castledine


Catalog Entry URL:
http://www.openntf.org/catalogs/a2cat.nsf/topicThread.xsp?action=openDocument&documentId=755F132E2C75C50A8525765B002BF8DD

Download URL:
http://www.openntf.org/Projects/pmt.nsf/downloadcounter?openagent&project=Discussion%20Next%20Gen&release=AO091026&unid=5707022CF1B6B6F88625765B002AC0AE&attachment=DiscussionAddOns091026.zip

Date:
10/26/2009

Main Doc UNID:
FE3A320557D8ED29862575F600228F12

Project Code: <?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="bin"/>
</classpath>

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>com.ibm.lotuslabs.context.service</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.ManifestBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.SchemaBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>


c:\documents and settings\administrator\desktop\sources\com.ibm.lotuslabs.context.service\bin\com\ibm\lotuslabs\context\service\document\DocumentContextService$1.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\com.ibm.lotuslabs.context.service\bin\com\ibm\lotuslabs\context\service\document\DocumentContextService$2.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\com.ibm.lotuslabs.context.service\bin\com\ibm\lotuslabs\context\service\document\DocumentContextService$3.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\com.ibm.lotuslabs.context.service\bin\com\ibm\lotuslabs\context\service\document\DocumentContextService.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\com.ibm.lotuslabs.context.service\bin\com\ibm\lotuslabs\context\service\document\DocumentSelection.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\com.ibm.lotuslabs.context.service\bin\com\ibm\lotuslabs\context\service\document\IDocumentContext.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\com.ibm.lotuslabs.context.service\bin\com\ibm\lotuslabs\context\service\document\IDocumentContextAdapter.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\com.ibm.lotuslabs.context.service\bin\com\ibm\lotuslabs\context\service\document\IDocumentContextListener.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\com.ibm.lotuslabs.context.service\bin\com\ibm\lotuslabs\context\service\internal\ContextPlugin.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\com.ibm.lotuslabs.context.service\bin\com\ibm\lotuslabs\context\service\internal\ContextUtil.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\com.ibm.lotuslabs.context.service\bin\com\ibm\lotuslabs\context\service\internal\DocumentContext.class
************************************************************************
[Error] - File could not be written...

source.. = src/
output.. = bin/
bin.includes = META-INF/,\
.

Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Context Plug-in
Bundle-SymbolicName: com.ibm.lotuslabs.context.service
Bundle-Version: 1.0.0
Bundle-Activator: com.ibm.lotuslabs.context.service.internal.ContextPlugin
Bundle-Vendor: IBM
Bundle-Localization: plugin
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
org.eclipse.ui.views,
com.ibm.rcp.jfaceex
Eclipse-LazyStart: true
Export-Package: com.ibm.lotuslabs.context.service.document

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package com.ibm.lotuslabs.context.service.document;

import java.net.URI;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.ISelectionProvider;
import org.eclipse.ui.IPartListener;
import org.eclipse.ui.IPropertyListener;
import org.eclipse.ui.ISelectionListener;
import org.eclipse.ui.ISelectionService;
import org.eclipse.ui.IWindowListener;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.IWorkbenchPartConstants;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.PlatformUI;

/**
* Gives the ability to add a listener to know the current document / selection.
*
* @author bleonard
*/
public class DocumentContextService implements ISelectionListener, IWindowListener, IPartListener {

private static DocumentContextService instance;
public static DocumentContextService getDefault() {
// singleton pattern
if(instance==null)
instance = new DocumentContextService();
return instance;
}

private List uriListeners = new ArrayList();
private List selListeners = new ArrayList();
private IWorkbenchWindow currentWindow;
private IWorkbenchPart currentPart;
private DocumentSelection currentSelection;

public DocumentContextService() {
super();
PlatformUI.getWorkbench().addWindowListener(this);

// start with current window
IWorkbenchWindow win = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
if(win!=null) {
windowActivated(win);
}
}

// our listener (URI changes)
public void addListener(IDocumentContextListener listener) {
uriListeners.add(listener);
}
// all selection changes
public void addSelectionListener(IDocumentContextListener listener) {
selListeners.add(listener);
}
public void removeListener(IDocumentContextListener listener) {
uriListeners.remove(listener);
selListeners.remove(listener);
}



private ISelectionService getSelectionService() {
IWorkbenchWindow win = getWorkbenchWindow();
if(win==null)
return null;
return win.getSelectionService();
}
private ISelection getSelection() {
ISelectionService service = getSelectionService();
if(service==null)
return null;
return service.getSelection();
}
private IWorkbenchWindow getWorkbenchWindow() {
if(currentWindow!=null)
return currentWindow;
// figure it out
return PlatformUI.getWorkbench().getActiveWorkbenchWindow();
}

public DocumentSelection getDocumentSelection() {
if(currentSelection!=null)
return currentSelection;
// figure it out
IWorkbenchPart part = getWorkbenchPart();
if(part!=null)
return new DocumentSelection(part,getSelection());
return null;
}
public IWorkbenchPart getWorkbenchPart() {
if(currentPart!=null)
return currentPart;
// figure it out
IWorkbenchWindow win = getWorkbenchWindow();
if(win!=null)
return win.getPartService().getActivePart();
return null;
}



// notified by eclipse selection listener
public void selectionChanged(final IWorkbenchPart part, final ISelection selection) {
currentPart = part;
if(uriListeners.size()==0 && selListeners.size()==0)
return; // nothing in list

// only make this once
final DocumentSelection con = new DocumentSelection(part, selection);
// how different is this?
boolean same = false;
if(currentSelection!=null) {
IDocumentContext[] old = currentSelection.getItems();
IDocumentContext[] now = con.getItems();
if(old.length==now.length) {
same = true;
for(int i=0; i<now.length; i++) {
if(old[i].equals(now[i]))
continue;
// they are also the same if the URIs are the same
URI oldURI = old[i].getURI();
URI nowURI = now[i].getURI();
if(oldURI==null || nowURI==null || !oldURI.equals(nowURI)) {
same = false;
break;
}
}
}
}
// still always update the current selection
currentSelection = con;

if(same && selListeners.size()==0) {
return; // all document listeners, just get out.
}

// who we are going to tell about it
List notifyList = new ArrayList();
notifyList.addAll(selListeners); // these always want to know
if(!same) { // these only want to know if really different
notifyList.addAll(uriListeners);
}

Iterator itr = notifyList.iterator();
while(itr.hasNext()) {
final Object o = itr.next();
Job notify = new Job("Document Context Notification") {
public IStatus run(IProgressMonitor monitor) {
if(o instanceof IDocumentContextListener) {
((IDocumentContextListener)o).selectionChanged(part,con);
}
return Status.OK_STATUS;
}
};
notify.setSystem(true);
notify.schedule();
}
}


// IWindowListener
public void windowActivated(IWorkbenchWindow w) {
w.getSelectionService().addPostSelectionListener(this);
w.getPartService().addPartListener(this);
currentWindow = w;

// start with current part
IWorkbenchPart part = w.getPartService().getActivePart();
if(part!=null) {
partActivated(part);
}

}
public void windowDeactivated(IWorkbenchWindow w) {
w.getSelectionService().removePostSelectionListener(this);
w.getPartService().removePartListener(this);
currentWindow = null;
}
public void windowOpened(IWorkbenchWindow arg0) {}
public void windowClosed(IWorkbenchWindow arg0) {}


// listen for the title of the current part to change
private IPropertyListener titleListener = new IPropertyListener() {
public void propertyChanged(Object arg0, int arg1) {
if(arg0 instanceof IWorkbenchPart && arg0==currentPart) {
if(arg1==IWorkbenchPartConstants.PROP_TITLE) {
IWorkbenchPart part = (IWorkbenchPart)arg0;
ISelectionProvider provider = part.getSite().getSelectionProvider();
ISelection sel = null;
if(provider!=null)
sel = provider.getSelection();
selectionChanged(part, sel);
}
}
}
};


// IPartListener
private IWorkbenchPart activatingPart;
public void partActivated(final IWorkbenchPart part) {
currentSelection = null;
activatingPart = part;
Job job = new Job("Document Context Part Activation") {
public IStatus run(IProgressMonitor monitor) {
if(part==currentPart || part!=activatingPart || currentSelection!=null)
return Status.CANCEL_STATUS;
selectionChanged(part, null);
part.addPropertyListener(titleListener);
return Status.OK_STATUS;
}
};
job.setSystem(true);
// wait a little bit to see if it has it's own selection
//job.schedule(1500);
}
public void partDeactivated(IWorkbenchPart part) {
// in case we added it
part.removePropertyListener(titleListener);
}
public void partBroughtToTop(IWorkbenchPart arg0) {}
public void partClosed(IWorkbenchPart arg0) {}
public void partOpened(IWorkbenchPart arg0) {}



}

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package com.ibm.lotuslabs.context.service.document;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.ui.IWorkbenchPart;

import com.ibm.lotuslabs.context.service.internal.ContextUtil;
import com.ibm.lotuslabs.context.service.internal.DocumentContext;

/**
* Container for the selected documents.
*
* @author bleonard
*/
public class DocumentSelection implements IStructuredSelection {

private ISelection selection;
private IWorkbenchPart part;
private List items;

/**
* @param part current ViewPart
* @param selection current selection
*/
public DocumentSelection(IWorkbenchPart part, ISelection selection) {
this.selection = selection;
this.part = part;
this.items = null;
}

/**
* @return the original selection (not the stuff we derived from it)
*/
public ISelection getSelection(){
return selection;
}


private List getItemList() {
if(items==null)
items = buildItems();
return items;
}

/**
* Takes the current selection and viewpart and tries to derive ICleintItem
* objects from it.
* @return List of IClientItem objects
*/
private List buildItems() {
List list = new ArrayList();
if(selection!=null && selection instanceof IStructuredSelection) {
Object[] obj = ((IStructuredSelection)selection).toArray();
for(int i=0; i<obj.length; i++) {
IDocumentContext item = DocumentSelection.getDocumentContext(this.part,obj[i]);
if(item!=null) {
list.add(item);
}
}
}
else if(selection!=null) {
IDocumentContext item = DocumentSelection.getDocumentContext(this.part,selection);
if(item!=null) {
list.add(item);
}
}

if(list.size()==0 && this.part!=null) {
// use the view part itself
IDocumentContext item = DocumentSelection.getDocumentContext(part,part);
if(item!=null) {
list.add(item);
}
}
return list;
}

/**
* @return client items of this selection
*/
public IDocumentContext[] getItems() {
List list = getItemList();
return (IDocumentContext[]) list.toArray(new IDocumentContext[list.size()]);
}


/**
* Uses adapaters to map the current selection and part to an IClientItem
* @param part current ViewPart
* @param o Object we want a IClientItem for
* @return
*/
public static IDocumentContext getDocumentContext(IWorkbenchPart part, Object o) {
IDocumentContext item = (IDocumentContext)ContextUtil.getAdapterObject(o,IDocumentContext.class);
if(item==null) {
IDocumentContextAdapter ad = (IDocumentContextAdapter) ContextUtil.getAdapterObject(o, IDocumentContextAdapter.class);
if(ad!=null)
item = ad.getDocumentContext(part, o);
}
// use the default
if(item==null)
item = new DocumentContext(part,o);
return item;
}


// Implement ISelection
public boolean isEmpty() {
return getItemList().size()==0;
}

// Implement IStructedSelection
public Object getFirstElement() {
List list = getItemList();
if(list.size()==0)
return null;
return list.get(0);
}

public Iterator iterator() {
return getItemList().iterator();
}

public int size() {
return getItemList().size();
}

public Object[] toArray() {
return getItems();
}

public List toList() {
return getItemList();
}
}

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package com.ibm.lotuslabs.context.service.document;

import java.net.URI;
import java.util.Properties;

import org.eclipse.jface.resource.ImageDescriptor;

/**
* Interface for information about a document.
*
* @author bleonard
*/
public interface IDocumentContext {
public ImageDescriptor getImageDescriptor();
public String getLabel();

public Properties getProperties();

public URI getURI();

// to get original object back in case it's needed
public Object getObject();
}

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package com.ibm.lotuslabs.context.service.document;

import org.eclipse.ui.IWorkbenchPart;

/**
* Interface for plug-ins to make the transform.
*
* @author bleonard
*/
public interface IDocumentContextAdapter {
/**
* @param part current ViewPart
* @param object selected object
* @return IDocumentContext to describe Object
*/
public IDocumentContext getDocumentContext(IWorkbenchPart part, Object object);
}

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package com.ibm.lotuslabs.context.service.document;

import org.eclipse.ui.IWorkbenchPart;

/**
* Interface to add a listener for document changes.
*
* @author bleonard
*/
public interface IDocumentContextListener {
/**
* Allows notification if selection changes
* @param part current ViewPart
* @param cselection current selection
*/

public void selectionChanged(IWorkbenchPart part, DocumentSelection context);
}

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package com.ibm.lotuslabs.context.service.internal;

import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;

/**
* The activator class controls the plug-in life cycle
*/
public class ContextPlugin extends AbstractUIPlugin {

// The plug-in ID
public static final String PLUGIN_ID = "com.ibm.lotuslabs.ui.context";

// The shared instance
private static ContextPlugin plugin;

/**
* The constructor
*/
public ContextPlugin() {
plugin = this;
}

/*
* (non-Javadoc)
* @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
*/
public void start(BundleContext context) throws Exception {
super.start(context);
}

/*
* (non-Javadoc)
* @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
*/
public void stop(BundleContext context) throws Exception {
plugin = null;
super.stop(context);
}

/**
* Returns the shared instance
*
* @return the shared instance
*/
public static ContextPlugin getDefault() {
return plugin;
}

}

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package com.ibm.lotuslabs.context.service.internal;

import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.core.runtime.IAdapterManager;
import org.eclipse.core.runtime.Platform;

public class ContextUtil {
/**
* Helper method to get the adapter for a given object
* @param o the object
* @param clazz what you want it to adapt to
* @return Object of type clazz
*/
public static Object getAdapterObject(Object o, Class clazz) {
Object item = null;
if(clazz.isInstance(o))
item = o;
else if(o instanceof IAdaptable) {
item = ((IAdaptable)o).getAdapter(clazz);
}
if(item==null) {
IAdapterManager man = Platform.getAdapterManager();
if(man!=null)
item = man.getAdapter(o, clazz);
}
return item;
}
}

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package com.ibm.lotuslabs.context.service.internal;

import java.net.URI;
import java.net.URISyntaxException;
import java.util.Properties;

import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.swt.graphics.Image;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.model.IWorkbenchAdapter;
import org.eclipse.ui.views.properties.IPropertyDescriptor;
import org.eclipse.ui.views.properties.IPropertySource;

import com.ibm.lotuslabs.context.service.document.IDocumentContext;
import com.ibm.rcp.jface.launcher.IURIProvider;

/**
* Extracts document information about about a selection object.
* Represents the document within the DocumentSelection.
*
* @author bleonard
*/
public class DocumentContext implements IDocumentContext {

private IWorkbenchPart part;
private Object obj;
private String label;
private URI uri;
private ImageDescriptor icon;
private Properties properties;

/**
* Tries to map these things into an IDocumentContext
* @param part current viewpart
* @param obj selected object
*/
public DocumentContext(IWorkbenchPart part, Object obj) {
this.part = part;
this.obj = obj;

IURIProvider provider = (IURIProvider) ContextUtil.getAdapterObject(obj, IURIProvider.class);
if(provider!=null) {
this.uri = provider.getURI();
this.label = provider.getTitle();
this.icon = provider.getImageDescriptor();
}

if(this.label==null || this.icon==null) {
// can this thing be a workbench adapter?
IWorkbenchAdapter wba = (IWorkbenchAdapter) ContextUtil.getAdapterObject(obj, IWorkbenchAdapter.class);
if(wba!=null) {
if(this.label!=null)
this.label = wba.getLabel(obj);
if(this.icon!=null)
this.icon = wba.getImageDescriptor(obj);
}
if(this.icon==null) {
Image i = part.getTitleImage();
if(i!=null)
this.icon = ImageDescriptor.createFromImage(i);
}
}

// can this thing be a uri?
if(uri==null)
uri = (URI) ContextUtil.getAdapterObject(obj, URI.class);

// can this thing be a property source?
IPropertySource prop = (IPropertySource) ContextUtil.getAdapterObject(obj, IPropertySource.class);
if(prop!=null)
properties = buildProperties(prop); // fills up any non-null data
}

private Properties buildProperties(IPropertySource source) {
if(source==null)
return null;
IPropertyDescriptor[] descs = source.getPropertyDescriptors();
if(descs==null || descs.length==0)
return null;

Properties prop = new Properties();
for(int i=0;i<descs.length;i++) {
Object id = descs[i].getId();
String name = descs[i].getDisplayName();
String value = source.getPropertyValue(descs[i].getId()).toString();

if(this.uri==null) {
if(((id!=null && id.toString().equalsIgnoreCase("URI"))
|| (name!=null && name.equalsIgnoreCase("URI"))) ||
((id!=null && id.toString().equalsIgnoreCase("URL"))
|| (name!=null && name.equalsIgnoreCase("URL")))) {
try {
this.uri = new URI(value);
continue;
} catch (URISyntaxException e) { }
}
}
if(this.label==null) {
// TODO: if prop isn't null, but label is, use prop to get label
}
prop.setProperty(name, value);
}
return prop;
}

public Object getObject() {
return obj;
}

public IWorkbenchPart getPart() {
return part;
}

public ImageDescriptor getImageDescriptor() {
return icon;
}

public String getLabel() {
if(label==null && part!=null)
return part.getTitle();
return label;
}

public URI getURI() {
return uri;
}

public Properties getProperties() {
return properties;
}
}

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>org.openntf.discussion.addons.feature</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.pde.FeatureBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.pde.FeatureNature</nature>
</natures>
</projectDescription>

bin.includes = feature.xml

<?xml version="1.0" encoding="UTF-8"?>
<feature
id="org.openntf.discussion.addons.feature"
label="Discussion Add Ons"
version="1.0.0">

<description url="http://www.youtube.com/watch?v=9VH0irA4Soo">
Add on to discussion template to easily copy Notes documents into discussion applications.
</description>

<copyright url="http://www.ibm.com">
© Copyright IBM Corp. 2009

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at:

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied. See the License for the specific language governing
permissions and limitations under the License.
</copyright>

<license url="http://www.apache.org/licenses/LICENSE-2.0.txt">
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.

"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:

(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and

(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.

You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

</license>

<plugin
id="com.ibm.lotuslabs.context.service"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>

<plugin
id="org.openntf.discussion.addons.toolbar"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>

</feature>

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="bin"/>
</classpath>

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>org.openntf.discussion.addons.toolbar</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.ManifestBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.SchemaBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\preferences\DiscussionsPreferencePage$1.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\preferences\DiscussionsPreferencePage$2$1$1.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\preferences\DiscussionsPreferencePage$2$1$2.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\preferences\DiscussionsPreferencePage$2$1.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\preferences\DiscussionsPreferencePage$2.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\preferences\DiscussionsPreferencePage$3.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\preferences\DiscussionsPreferencePage.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\preferences\PreferenceConstants.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\preferences\PreferenceInitializer.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\toolbar\actions\OpenPreferences.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\toolbar\actions\PublishDocument$1.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\toolbar\actions\PublishDocument$2.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\toolbar\actions\PublishDocument$3.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\toolbar\actions\PublishDocument$4.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\toolbar\actions\PublishDocument.class
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\bin\org\openntf\discussion\addons\toolbar\Activator.class
************************************************************************
[Error] - File could not be written...

source.. = src/
output.. = bin/
bin.includes = plugin.xml,\
META-INF/,\
.,\
icons/


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\icons\disc.gif
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.toolbar\icons\setup.gif
************************************************************************
[Error] - File could not be written...

Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: org.openntf.discussion.addons.toolbar
Bundle-SymbolicName: org.openntf.discussion.addons.toolbar; singleton:=true
Bundle-Version: 1.0.0
Bundle-Activator: org.openntf.discussion.addons.toolbar.Activator
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
com.ibm.rcp.ui,
com.ibm.notes.java.api,
com.ibm.lotuslabs.context.service,
com.ibm.notes.java.ui;bundle-version="8.5.1"
Bundle-ActivationPolicy: lazy

<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>

<extension
point="org.eclipse.ui.actionSets">
<actionSet
label="Discussion"
visible="true"
id="org.openntf.discussion.addons.toolbar.actionSet">
<menu
label="Discussion"
id="discussionMenu">
<separator
name="discussionGroup">
</separator>
</menu>
<action
label="Setup"
icon="icons/setup.gif"
class="org.openntf.discussion.addons.toolbar.actions.OpenPreferences"
tooltip="Configure Discussion Applications ..."
menubarPath="discussionMenu/discussionGroup"
toolbarPath="discussionGroup"
id="org.openntf.discussion.addons.toolbar.actions.Configure">
</action>

<action
label="Publish Document"
icon="icons/disc.gif"
class="org.openntf.discussion.addons.toolbar.actions.PublishDocument"
tooltip="Publish selected Document to Discussion Application"
menubarPath="discussionMenu/discussionGroup"
toolbarPath="discussionGroup"
style="pulldown"
id="org.openntf.discussion.addons.toolbar.actions.PublishDocument">
</action>
</actionSet>
</extension>

<extension
point="org.eclipse.ui.preferencePages">
<page
class="org.openntf.discussion.addons.preferences.DiscussionsPreferencePage"
id="org.openntf.discussion.addons.preferences.DiscussionsPreferencePage"
name="Discussions"/>
</extension>
<extension
point="org.eclipse.core.runtime.preferences">
<initializer class="org.openntf.discussion.addons.preferences.PreferenceInitializer"/>
</extension>
</plugin>

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package org.openntf.discussion.addons.preferences;

import lotus.domino.Database;
import lotus.domino.NotesException;
import lotus.domino.Session;
import lotus.domino.Form;

import com.ibm.notes.java.api.data.NotesDatabaseData;
import com.ibm.notes.java.api.util.NotesSessionJob;
import com.ibm.notes.java.ui.prompt.Prompt;

import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.preference.PreferencePage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.MessageBox;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableColumn;
import org.eclipse.swt.widgets.TableItem;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
import org.eclipse.ui.IWorkbenchWindow;
import org.openntf.discussion.addons.toolbar.Activator;

public class DiscussionsPreferencePage extends PreferencePage implements
IWorkbenchPreferencePage {
private IWorkbenchWindow window;
public static final String PAGE_ID = "org.openntf.discussion.addons.toolbar.DiscussionsPreferencePage";

private Table table;
private Button addBt;
private Button removeBt;
private IPreferenceStore ps;
Composite _mainPart = null;

public DiscussionsPreferencePage() {
setPreferenceStore(Activator.getDefault().getPreferenceStore());
setDescription("Define your favorite discussion applications here. The first one is the default discussion application.");
}

protected Control createContents(Composite parent) {
createMainPart(parent);
loadAction();
return parent;
}

public void init(IWorkbench arg0) {
ps = Activator.getDefault().getPreferenceStore();
setPreferenceStore(Activator.getDefault().getPreferenceStore());
window = arg0.getActiveWorkbenchWindow();
}

private void createMainPart(Composite parent) {
Composite mainPart = new Composite(parent, SWT.NONE);
_mainPart = mainPart;
mainPart.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
GridLayout gridLayout = new GridLayout(3, false);
gridLayout.marginHeight = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);
gridLayout.marginWidth = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);
gridLayout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);
gridLayout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);

mainPart.setLayout(gridLayout);
table = new Table(mainPart, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL
| SWT.FULL_SELECTION);

String[] columnNames = new String[] { "Application Name",
"Server Notes Name", "Database Path and Name" };
int[] columnWidths = new int[] { 150, 120, 260 };
for (int i = 0; i < columnNames.length; ++i) {
TableColumn column = new TableColumn(table, SWT.LEFT);
column.setText(columnNames[i]);
column.setWidth(columnWidths[i]);
}
table.setHeaderVisible(true);
table.setLinesVisible(true);
GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 3);
gd.heightHint = 350;
table.setLayoutData(gd);

table.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
removeBt.setEnabled(true);
}
});

addBt = new Button(mainPart, SWT.NONE);
addBt.setEnabled(true);
addBt.setText("Add");
addBt.setToolTipText("Add Discussion Application");
addBt.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
addBt.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {

try {
NotesDatabaseData chosen = Prompt.ChooseDatabase();
if (chosen != null) {

final String server = chosen.getServer();
final String filePath = chosen.getFilePath();

NotesSessionJob job = new NotesSessionJob("Notes Job") {
protected IStatus runInNotesThread(Session session,
IProgressMonitor monitor) {
try {
Database database = session.getDatabase(
server, filePath);

if (database != null) {
if (!database.isOpen())
database.open();

final String databaseName = database
.getTitle();

Form form = database
.getForm("Main Topic");
final String formName;
Display display = _mainPart
.getDisplay();

if (form == null) {
final IWorkbenchWindow win = window;

display.syncExec(new Runnable() {
public void run() {

MessageDialog
.openInformation(
win
.getShell(),
"Discussions AddOn",
"Please select a discussion application.");
}
});

} else {
formName = form.getName();

display.syncExec(new Runnable() {
public void run() {

TableItem[] tp = table
.getItems();
int length = tp.length;
TableItem newItem = new TableItem(
table, SWT.NONE,
length);
newItem.setText(0, databaseName);
newItem.setText(1, server);
newItem
.setText(2,
filePath);
}
});
}
database.recycle();
}

} catch (NotesException e) {
e.printStackTrace();
}
return Status.OK_STATUS;
}
};
job.schedule();

}
} catch (Exception ne) {
}

}
});

removeBt = new Button(mainPart, SWT.NONE);
removeBt.setEnabled(false);
removeBt.setText("Remove");
removeBt.setToolTipText("Remove Discussion Application");
removeBt
.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
removeBt.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
removeAction();
}
});
}

private void removeAction() {
int index = table.getSelectionIndex();
if (index != -1) {
MessageBox mb = new MessageBox(this.getShell(), SWT.ICON_WARNING
| SWT.YES | SWT.NO);
mb
.setText("Do you want to remove this discussion application reference?");
mb
.setMessage("Do you want to remove this discussion application reference?");
if (mb.open() == SWT.YES) {
table.remove(index);
}
}
}

private void loadAction() {
String tbItems = ps.getString(PreferenceConstants.TABLE_STORE_KEY);
if (tbItems != null && !tbItems.equals("")) {
String[] items = tbItems.split(PreferenceConstants.ITEM_SEPARATER);
for (int i = 0; i < items.length; i++) {
String item = items[i];
String[] results = item.split(PreferenceConstants.ITEM_DIVIDER);
if (results.length != 3)
continue;
TableItem tableItem = new TableItem(table, SWT.NONE);
tableItem.setText(0, results[0]);
tableItem.setText(1, results[1]);
tableItem.setText(2, results[2]);
}
}
}

private void saveAction() {
TableItem[] items = table.getItems();
if (items == null) {
return;
}
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < items.length; i++) {
if (items[i].getText(0) != null && items[i].getText(0) != "") {
buffer.append(items[i].getText(0));
buffer.append(PreferenceConstants.ITEM_DIVIDER);
buffer.append(items[i].getText(1));
buffer.append(PreferenceConstants.ITEM_DIVIDER);
buffer.append(items[i].getText(2));
if (i < items.length - 1) {
buffer.append(PreferenceConstants.ITEM_SEPARATER);
}
}
}
ps.setValue(PreferenceConstants.TABLE_STORE_KEY, buffer.toString());
}

public void performApply() {
performOk();
}

public boolean performOk() {
super.performOk();
saveAction();
return true;
}
}

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package org.openntf.discussion.addons.preferences;

public class PreferenceConstants {

public static final String TABLE_STORE_KEY = "table_store_key";

public static final String ITEM_SEPARATER = "##";

public static final String ITEM_DIVIDER = "%%";
}

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package org.openntf.discussion.addons.preferences;

import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
import org.eclipse.jface.preference.IPreferenceStore;
import org.openntf.discussion.addons.toolbar.Activator;

public class PreferenceInitializer extends AbstractPreferenceInitializer {

public PreferenceInitializer() {
}

public void initializeDefaultPreferences() {
IPreferenceStore store = Activator.getDefault()
.getPreferenceStore();

store.setDefault(PreferenceConstants.TABLE_STORE_KEY, "" + PreferenceConstants.ITEM_DIVIDER + PreferenceConstants.ITEM_SEPARATER+ ""+ PreferenceConstants.ITEM_DIVIDER+PreferenceConstants.ITEM_SEPARATER+ ""+ PreferenceConstants.ITEM_DIVIDER+"");
}
}

/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package org.openntf.discussion.addons.toolbar.actions;

import org.eclipse.jface.action.IAction;
import org.eclipse.jface.preference.PreferenceDialog;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.IWorkbenchWindowActionDelegate;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.dialogs.PreferencesUtil;

public class OpenPreferences implements IWorkbenchWindowActionDelegate {

public OpenPreferences() {
}

public void run(IAction action) {

PreferenceDialog dlg = PreferencesUtil
.createPreferenceDialogOn(
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
"org.openntf.discussion.addons.preferences.DiscussionsPreferencePage",
null, null);
dlg.open();
}

public void selectionChanged(IAction action, ISelection selection) {
}

public void dispose() {
}

public void init(IWorkbenchWindow window) {
}
}
/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package org.openntf.discussion.addons.toolbar.actions;

import lotus.domino.ACL;
import lotus.domino.Database;
import lotus.domino.Document;
import lotus.domino.NotesException;
import lotus.domino.RichTextItem;
import lotus.domino.Session;

import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.jface.action.Action;
import org.eclipse.jface.action.ActionContributionItem;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.action.IContributionItem;
import org.eclipse.jface.action.MenuManager;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.swt.program.Program;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.IWorkbenchWindowPulldownDelegate2;
import org.openntf.discussion.addons.preferences.PreferenceConstants;
import org.openntf.discussion.addons.toolbar.Activator;
import org.eclipse.swt.events.MenuAdapter;
import org.eclipse.swt.events.MenuEvent;
import org.eclipse.swt.widgets.MenuItem;

import com.ibm.lotuslabs.context.service.document.DocumentContextService;
import com.ibm.lotuslabs.context.service.document.DocumentSelection;
import com.ibm.lotuslabs.context.service.document.IDocumentContext;
import com.ibm.notes.java.api.util.NotesSessionJob;

public class PublishDocument implements IWorkbenchWindowPulldownDelegate2 {
private DocumentContextService service;
private MenuManager dropDownMenuMgr;
private Menu expandMenu = null;

public PublishDocument() {
}

public void run(IAction action) {
String server = "";
String filePath = "";

IPreferenceStore ps = null;
ps = Activator.getDefault().getPreferenceStore();

String tbItems = ps.getString(PreferenceConstants.TABLE_STORE_KEY);
if (tbItems != null && !tbItems.equals("")) {
String[] items = tbItems.split(PreferenceConstants.ITEM_SEPARATER);
if (items.length < 1)
return;
String item = items[0];
String[] results = item.split(PreferenceConstants.ITEM_DIVIDER);

server = results[1];
filePath = results[2];
}

publishDocument(server, filePath);
}

public void publishDocument(String server, String filePath) {

service = DocumentContextService.getDefault();

DocumentSelection sel = service.getDocumentSelection();

if (sel instanceof DocumentSelection) {
final IDocumentContext[] array = ((DocumentSelection) sel)
.getItems();

if ((array != null) && (array.length > 0)) {
IDocumentContext docContext = array[0];

java.net.URI uri = docContext.getURI();
String lastURI = uri.toString();

createTopic(lastURI, server, filePath);
}
}
}

public void selectionChanged(IAction action, ISelection selection) {
}

public void dispose() {
if (dropDownMenuMgr != null) {
dropDownMenuMgr.dispose();
dropDownMenuMgr = null;
}
if (expandMenu != null) {
expandMenu.dispose();
expandMenu = null;
}
}

public void init(IWorkbenchWindow window) {
}

private void createDropDownMenuMgr() {

dropDownMenuMgr = new MenuManager();

IPreferenceStore ps = null;
ps = Activator.getDefault().getPreferenceStore();

String tbItems = ps.getString(PreferenceConstants.TABLE_STORE_KEY);
if (tbItems != null && !tbItems.equals("")) {
String[] items = tbItems.split(PreferenceConstants.ITEM_SEPARATER);
for (int i = 0; i < items.length; i++) {
String item = items[i];
String[] results = item.split(PreferenceConstants.ITEM_DIVIDER);
if (results.length != 3)
continue;

final String server = results[1];
final String filePath = results[2];

String s = server;
if (server.equalsIgnoreCase("")) s = "local";

dropDownMenuMgr.add(new Action(results[0] + " (" + s + ")") {

public void run() {
publishDocument(server, filePath);
}
});
}
}
}

public Menu getMenu(Control parent) {
if (expandMenu != null) {
expandMenu.dispose();
}
expandMenu = new Menu(parent);
populateMenu(expandMenu);
addListener();
return expandMenu;
}

public Menu getMenu(Menu parent) {
if (expandMenu != null) {
expandMenu.dispose();
}
expandMenu = new Menu(parent);
populateMenu(expandMenu);
addListener();
return expandMenu;
}

public Menu populateMenu(Menu parent) {
createDropDownMenuMgr();
IContributionItem[] items = dropDownMenuMgr.getItems();
for (int i = 0; i < items.length; i++) {
IContributionItem item = items[i];
IContributionItem newItem = item;
if (item instanceof ActionContributionItem) {
newItem = new ActionContributionItem(
((ActionContributionItem) item).getAction());
}
newItem.fill(parent, -1);
}
return parent;
}

public static void createTopic(String url, String server, String filePath) {

final String u = url;
final String s = server;
final String f = filePath;

NotesSessionJob job = new NotesSessionJob("Notes Job") {
protected IStatus runInNotesThread(Session session,
IProgressMonitor monitor) {
try {
Database database = session.getDatabase(s, f);

if (database != null) {
if (!database.isOpen())
database.open();

Document doc = createTopicDocument(u, session, database);

String newUrl = doc.getNotesURL();
doc.recycle();

launchUrl(newUrl);

database.recycle();
}
} catch (NotesException e) {
e.printStackTrace();
}
return Status.OK_STATUS;
}
};
job.schedule();
}

public static void launchUrl(final String url) {
Job job = new Job("Launching URL") {
protected IStatus run(IProgressMonitor monitor) {
Program.launch(url);
return Status.OK_STATUS;
}
};
job.schedule();
}

public static Document createTopicDocument(String url, Session session,
Database db) throws NotesException {
Document doc = null;
Document selectedDoc = null;

if (db == null)
return null;

Object o = session.resolve(url);
if (o instanceof Document) {
selectedDoc = (Document) o;

String subject = selectedDoc.getItemValueString("Subject");

doc = db.createDocument();

doc.appendItemValue("Form", "MainTopic");
if (subject != null) {
if (subject.equalsIgnoreCase("")) {
doc.appendItemValue("Subject",
"Published from another Notes application");
} else {
doc.appendItemValue("Subject", subject);
}
}

doc.appendItemValue("MainID", doc.getUniversalID());
doc.appendItemValue("From", session.getUserName());
doc.appendItemValue("ThreadId", session.evaluate("@Unique", doc));

RichTextItem body = doc.createRichTextItem("Body");

boolean isMail = false;
Document reply = null;
try {
reply = selectedDoc.createReplyMessage(false);
if (reply != null)
isMail = true;
} catch (NotesException e) {
isMail = false;
}

if (isMail) {
body.appendRTItem((RichTextItem) reply.getFirstItem("Body"));
} else {
int accLevel = db.queryAccess(session.getUserName());
boolean editorOrMore = false;
switch (accLevel) {

case (ACL.LEVEL_AUTHOR):
editorOrMore = false;
break;
case (ACL.LEVEL_EDITOR):
editorOrMore = true;
break;
case (ACL.LEVEL_DESIGNER):
editorOrMore = true;
break;
case (ACL.LEVEL_MANAGER):
editorOrMore = true;
break;
default:
editorOrMore = false;
break;
}

if (editorOrMore == true) {
doc.save();
selectedDoc.renderToRTItem(body);
} else {
if (doc.hasItem("Body")) {
body.appendRTItem((RichTextItem) selectedDoc
.getFirstItem("Body"));
}
}
}

doc.save();
}
return doc;
}

private void addListener() {
expandMenu.addMenuListener(new MenuAdapter() {

public void menuShown(MenuEvent e) {

Menu m = (Menu) e.widget;
MenuItem[] items = m.getItems();
for (int i = 0; i < items.length; i++) {
items[i].dispose();
}
populateMenu(m);
}
});
}
}
/*
* © Copyright IBM Corp. 2009
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package org.openntf.discussion.addons.toolbar;

import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;

public class Activator extends AbstractUIPlugin {

// The plug-in ID
public static final String PLUGIN_ID = "org.openntf.discussion.addons.toolbar";

// The shared instance
private static Activator plugin;

/**
* The constructor
*/
public Activator() {
}

/*
* (non-Javadoc)
* @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
*/
public void start(BundleContext context) throws Exception {
super.start(context);
plugin = this;
}

/*
* (non-Javadoc)
* @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
*/
public void stop(BundleContext context) throws Exception {
plugin = null;
super.stop(context);
}

/**
* Returns the shared instance
*
* @return the shared instance
*/
public static Activator getDefault() {
return plugin;
}

/**
* Returns an image descriptor for the image file at the given
* plug-in relative path
*
* @param path the path
* @return the image descriptor
*/
public static ImageDescriptor getImageDescriptor(String path) {
return imageDescriptorFromPlugin(PLUGIN_ID, path);
}
}

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>org.openntf.discussion.addons.updatesite</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.pde.UpdateSiteBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.pde.UpdateSiteNature</nature>
</natures>
</projectDescription>


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.updatesite\features\org.openntf.discussion.addons.feature_1.0.0.jar
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.updatesite\plugins\com.ibm.lotuslabs.context.service_1.0.0.jar
************************************************************************
[Error] - File could not be written...


c:\documents and settings\administrator\desktop\sources\org.openntf.discussion.addons.updatesite\plugins\org.openntf.discussion.addons.toolbar_1.0.0.jar
************************************************************************
[Error] - File could not be written...

<?xml version="1.0" encoding="UTF-8"?>
<site>
<feature url="features/org.openntf.discussion.addons.feature_1.0.0.jar" id="org.openntf.discussion.addons.feature" version="1.0.0"/>
</site>


c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\.classpath
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="Local"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="WebContent/WEB-INF/classes"/>
</classpath>



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\.project
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>discussion8.nsf</name>
<comment>Discussion 8 Template</comment>
<projects></projects>
<buildSpec>
<buildCommand>
<name>com.ibm.designer.domino.javalib.javalibmarkerbuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.ibm.designer.domino.lscript.LSBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.ibm.designer.domino.design.jsvalidationbuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.ibm.designer.domino.ide.resources.BuildPropertiesBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.ibm.designer.domino.ide.resources.facesConfigbuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.ManifestBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.ibm.designer.domino.ide.resources.pluginXMLbuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.ibm.designer.domino.ide.resources.LWPDBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.pde.SchemaBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.ibm.designer.domino.xsp.editor.xpagesbuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>com.ibm.workplace.notes.filesystem.DDNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.pde.PluginNature</nature>
</natures>
</projectDescription>



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\AppProperties\database.properties
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE note SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<note default='true' class='icon' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035'>
<noteinfo noteid='11e' unid='85255A0A0010AC8E85254BD4001E8D43' sequence='8'>
<created><datetime>19800105T003342,43-05</datetime></created>
<modified><datetime>20100114T143441,85+00</datetime></modified>
<revised><datetime>20100114T143441,84+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,83+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143135,52+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Thomas Gumz/OU=Westford/O=IBM</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime>20081120T172120,02-05</datetime><datetime>20081120T172120,06-05</datetime><datetime
>20081120T172120,08-05</datetime><datetime>20081120T172129,71-05</datetime><datetime
dst='true'>20090922T003728,18-04</datetime><datetime dst='true'>20090922T003728,22-04</datetime><datetime
dst='true'>20090922T003728,24-04</datetime><datetime dst='true'>20090922T003754,26-04</datetime><datetime
>20091109T080637,50-05</datetime><datetime>20091109T080637,54-05</datetime><datetime
>20091109T080637,56-05</datetime><datetime>20091109T080707,35-05</datetime><datetime
>20091111T051818,84-05</datetime><datetime>20091111T060639,18-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<item name='$TemplateModTime'><datetime dst='true'>19980909T102333,41-04</datetime></item>
<item name='$TemplateServerName'><text>CN=Debbie Branco/O=Iris</text></item>
<item name='$TemplateFileName'><text>d:\data\discsw50.ntf</text></item>
<item name='$DefaultWebNavigator'><text>All Documents</text></item>
<item name='$LaunchWebViewName'><text>($All)</text></item>
<item name='IconBitmap' summary='true'>
<rawitemdata type='6'>
AiAgAgUA//+f////H////h////Af///AH///AA///gAH//wAA//8AAP/+AAB/4AAAf8AAAHPAAAB
jwAAAw8AAAAPAAAADwAAAAcAAAADAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAD
AAAABwAAwA8AAfAfAAP//wAH//8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAA
AAAAbwAAAAAAAAAAAAAAAAAAD28AAAAAAAAAAAAAAAAA/2FvAAAAAAAAAAAAAAAA/xYWH8AAAAAA
AAAAAAAM/2Fpn2b/AAAAAAAAAAAAzxYWyZkWFvAAAAAAAAAAAMFhYWzPYWHwAAAAAAAAAAz2FhYW
9hYWHwAAAAAADu7sYWFhaZ9hYW8AAAAAAPAADGEWFsmZFhYfAAAAAADxERxhYWHJmfFhbwAA8AAA
8REfxhYWyZn2FhAABvAAAPERccYRYcmZ8WHwAPbwAADxER/8YRYczxYfAPYW8AAA8RERH8YRERER
8PFhYfwAAPERcXF8xmZmbwYWiPZv8ADxER8fEfzMzMxhYoiBYW8A8REREREREREPFhYi9hYfAPER
cXFxcXERD2Fhb2FhYfDxER8fHx8REQ8WFoj2Fhbw8REREREREREPYWKIgWFh8PERcXFxcXERDxYS
iI8WFvDxER8fHx8REQ9hYoiPYWEA8REREREREREPFhKIjxYfAPERcXFxcR//DxFhIvFh8ADxER8f
HxHu7gzxERERHwAA8RERERER//4AzGZmZvAAAPEREREREf/gAADMzMzAAADxERERERH+AAAAAAAA
AAAA////////8AAAAAAAAAAAAA==
</rawitemdata></item>
<item name='$DefaultWebFrameset'><text>MainFrameset</text></item>
<item name='$LANGUAGE'><text>en</text></item>
<item name='$CSSExpires'><text>365</text></item>
<item name='$ImageExpires'><text>365</text></item>
<item name='$JSExpires'><text>365</text></item>
<item name='$DefaultXPage'><text>allDocuments.xsp</text></item>
<item name='$DefaultNavigator'><text>Main Navigator</text></item>
<item name='$DBTheme'><text>blue</text></item>
<item name='$DefaultClientXPage'><text>allDocuments.xsp</text></item>
<item name='$DefaultFrameset'><text>MainFrameset</text></item>
<item name='$DefaultCompApp'><text>Notes 8 Style Discussion Application.ca</text></item>
<item name='$FlagsNoRefresh'><text>QU</text></item>
<item name='$TITLE'><text>Discussion OpenNTF Extended (14/01/2010)
Discussion
#1Open85DiscussionExt</text></item>
<item name='$Daos'><text>0</text></item>
<item name='$Flags'><text>JR7!fZFQU</text></item></note>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\AppProperties\xspdesign.properties
************************************************************************



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\build.properties
************************************************************************
source.. = Local/
output.. = F/discussionOpenNTF.ntf/WebContent/WEB-INF/classes/



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Add Topic to Interest Profile
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Author's Profile
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Author's Profile(1)
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Cancel
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Cancel(1)
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Cancel(2)
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Chat with Author
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Close
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Edit
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\EmptyTrash
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Forward
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Forward as Bookmark
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Mark Private
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Mark Public
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Mark_2fUnmark Document as Expired
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Move to Trash
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\My Author Profile
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\My Interest Profile
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\New Main Topic
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\New Response
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\New Response to Main
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\New Response to Response
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Parent Preview
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Save & Close
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\actions\Shared Actions_English\Search
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE sharedactions SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<sharedactions xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3 v4strict' designerversion='8.5' language='en'
maxid='40'>
<noteinfo noteid='1d2' unid='09947BF48F15B48F852566390048AD5D' sequence='176'>
<created><datetime dst='true'>19980706T091349,73-04</datetime></created>
<modified><datetime>20100114T143442,01+00</datetime></modified>
<revised><datetime>20100114T143442,00+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,93+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,23-04</datetime><datetime
>20091111T052514,13-05</datetime><datetime>20091111T081329,63-05</datetime><datetime
>20091111T081349,63-05</datetime><datetime>20091111T081812,50-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<action title='Edit' icon='5' hide='preview edit previewedit' id='2'><code
event='click'><formula>@Command([EditDocument])</formula></code><code event='hidewhen'><formula
>REM {Hhide if user has less than editor access and is not the author of the document};
Filename := @DbName;
Level := @V4UserAccess(Filename);
Getlevel := @TextToNumber(@Subset(Level; 1));
abUser := @Name([Abbreviate]; @UserName);
abAuthor := @Name([Abbreviate]; From);
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
@UserName = "Anonymous" | (GetLevel &lt; 4 &amp; abUser != abAuthor) | hw="1"</formula></code></action>
<action title='Chat with Author' icon='128' hide='preview edit previewedit web'
id='38'><code event='click'><formula>_title := "Chat with Author";
_msg := "This is an Anonymous posting. Unable to initiate a chat with an Anonymous author.";

@If( @Contains(@LowerCase(form); "anonymous");
@Return(@Prompt([Ok]; _title; _msg)); ""
);

@Command([SendInstantMessage]; From)</formula></code><code event='hidewhen'><formula
>(@Version &lt; @Text(250)) | @IsInCompositeApp</formula></code></action>
<action title='Save &amp; Close' showinmenu='false' hide='preview read previewedit'
id='3'><imageref name='act_saveandclose.gif'/><code event='click'><formula
>REM {Can't use @isvalid on the web};
@If(
@ClientType != "Notes";
@Do(@Command([FileSave]); @Command([FileCloseWindow]));
@IsValid;
@Do(@Command([FileSave]); @Command([FileCloseWindow])); "")</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code></action>
<action title='New Main Topic' icon='30' showinmenu='false' hide='preview previewedit'
id='5'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"MainTopicOnly")</formula></code></action>
<action title='New Response' icon='30' showinmenu='false' hide='preview edit previewedit'
id='36'><code event='click'><formula>viewname := @Subset(@ViewTitle; -1);
@SetProfileField("tmpProfile"; "viewtitle"; viewname);
@PostedCommand([Compose];"Response")</formula></code><code event='hidewhen'><formula
>REM {hide from web if it's in a view};
@ClientType != "Notes" &amp; !@IsAvailable(form)</formula></code></action>
<action title='New Response to Response' showinmenu='false' hide='preview edit previewedit web'
id='7'><code event='click'><formula>REM {Notes only};
@PostedCommand([Compose];"ResponseToResponse")</formula></code></action>
<action title='New Response to Main' showinmenu='false' hide='preview edit previewedit web'
id='35'><code event='click'><formula>REM {notes only};
@Command([Compose]; "Response")</formula></code></action>
<action title='Mark Private' icon='36' hide='preview read previewedit' id='8'><code
event='click'><formula>FIELD readers := @Trim(@Unique(From : @UserName : "LocalDomainServers"));

@PostedCommand([RefreshHideFormulas]); @Command([ViewRefreshFields])</formula></code><code
event='hidewhen'><formula>@Elements(readers)&gt;0</formula></code></action>
<action title='Mark Public' icon='37' hide='preview read previewedit' id='9'><code
event='click'><formula>FIELD readers := @DeleteField;
@Command([ViewRefreshFields])</formula></code><code event='hidewhen'><formula
>@Elements(readers)&lt;1</formula></code></action>
<action title='Parent Preview' icon='32' showinmenu='false' hide='preview edit previewedit web'
id='13'><code event='click'><formula>REM {Notes only};
@Command([ShowHideParentPreview])</formula></code><code event='hidewhen'><formula
>@IsInCompositeApp</formula></code></action>
<action title='Search' showinmenu='false' hide='notes' id='17'><code event='click'><formula
>REM {Web only; in views};
@Command([ViewShowSearchBar])</formula></code></action>
<action title='Mark/Unmark Document as Expired' showinmenu='false' hide='read notes'
id='18'><code event='click'><formula>REM {Web only};
REM {use only in Documents};
@Command([FileSave]);
UNID:=@Text(@DocumentUniqueID );


@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebExpire?OpenAgent&amp;"+UNID);
@URLOpen(@WebDbName+"/WebExpire?OpenAgent&amp;"+UNID))</formula></code><code
event='hidewhen'><formula>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Close' icon='11' showinmenu='false' hide='preview previewedit web'
id='14'><code event='click'><formula>REM {Notes only};
FIELD SaveOptions := 0;
@Command([FileCloseWindow])</formula></code></action>
<action title='Forward as Bookmark' showinbar='false' hide='preview previewedit web'
id='26'><code event='click'><formula>@Command([Compose]; @MailDbName; "Bookmark")</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='preview previewedit web'
id='27'><imageref name='authprof.gif'/><code event='click'><formula>REM {notes only};
@Command([ToolsRunMacro]; "(ProfileButton)")</formula></code><code event='hidewhen'><formula
>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

UseOtherDB := @GetProfileField("Tempvars"; "UseOtherDB");
ReplicaIdLeft := @GetProfileField("Tempvars"; "ReplicaIdLeft");
ReplicaIdRight := @GetProfileField("Tempvars"; "ReplicaIdRight");

View := "LookupPersonalProfiles";

@If(UseOtherDB = "Yes"; LookupName := @DbLookup("" : "NoCache"; ReplicaIdLeft + ":" + ReplicaIdRight; View; Key; 1); LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1));

@IsError(LookupName)</formula></code></action>
<action title='Author&apos;s Profile' showinmenu='false' hide='notes' id='28'><code
event='hidewhen'><formula>abrName := @Name([Abbreviate]; From);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

View := "LookupPersonalProfiles";
LookupName := @DbLookup("" : "NoCache"; ""; View; Key; 1);
@IsError(LookupName)</formula></code><code event='onClick' for='web'><javascript
>var pathname = window.location.pathname;
var filename = pathname.substring(0,(pathname.lastIndexOf('nsf')+4));
var key = document.forms[0].AbrFrom.value;

var newWindow = window.open(filename + 'LookupPersonalProfiles/' + key + '?OpenDocument&amp;hw=1','secondary_window','toolbar=no,location=no,scrollbars=yes,directories=no,height=500,width=625');
</javascript></code></action>
<action title='Forward' showinbar='false' hide='preview previewedit web' id='29'><code
event='click'><formula>@Command([MailForward])</formula></code><code event='hidewhen'><formula
>@IsNewDoc</formula></code></action>
<action title='Add Topic to Interest Profile' showinmenu='false' hide='notes'
id='30'><code event='click'><formula>REM {web only};
UNID := @Text(@DocumentUniqueID);

@If( @TextToNumber(@Version) &lt; 174;
@URLOpen("/" + @ReplaceSubstring(@Subset(@DbName; -1); " "; "+") + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login");
@URLOpen(@WebDbName + "/WebAddTopic?OpenAgent&amp;" + UNID + "&amp;login"))</formula></code><code
event='hidewhen'><formula>@IsNewDoc</formula></code></action>
<action title='Move to Trash' showinmenu='false' hide='notes' id='31'><code
event='click'><formula>@Command([MoveToTrash])</formula></code></action>
<action title='EmptyTrash' showinmenu='false' hide='notes' id='32'><code event='click'><formula
>@Command([EmptyTrash])</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='23'><code event='hidewhen'><formula
>REM {Hide if person clicked the 'Author's Profile' button};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1"</formula></code><code event='onClick' for='web'><javascript>history.back()</javascript></code><code
event='onBlur' for='web'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code><code
event='onClick' for='client'><javascript>history.back()</javascript></code><code
event='onBlur' for='client'><javascript>//Hidden if user has clicked the "Author's Profile" button (doc. comes up in a jscript window)</javascript></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='33'><code event='click'><formula
>REM {web non-new docs};
@Command([OpenView]; "($All)")</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | @IsNewDoc</formula></code></action>
<action title='Cancel' showinmenu='false' hide='notes' id='34'><code event='click'><formula
>REM {web new docs};
CurrentView := @GetProfileField("tmpProfile"; "viewtitle");
@Command([OpenView]; CurrentView)</formula></code><code event='hidewhen'><formula
>REM {Hide if 'Author's Profile' button was clckd};
hw := @RightBack(QUERY_STRING_DECODED; "hw=");
hw = "1" | !@IsNewDoc</formula></code></action>
<action title='My Author Profile' id='39'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(AuthorProfileNew-Edit)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebAuthorProfileNew-Edit?OpenAgent&amp;login")))</formula></code></action>
<action title='My Interest Profile' id='40'><code event='click'><formula>abrName := @Name([Abbreviate]; @UserName);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
UName := @ReplaceSubstring(abrNameReplSpace; "/"; "__");
@SetProfileField("TempVars"; "ProfileKey"; UName);

@If(@ClientType = "Notes";
@Command([ToolsRunMacro]; "(EditInterestProfile)");
@If(@TextToNumber(@Version) &lt; 174;
@URLOpen("/"+@ReplaceSubstring(@Subset(@DbName; -1);" ";"+")+"/WebEditInterestProfile?OpenAgent&amp;login");
@URLOpen(@WebDbName+"/WebEditInterestProfile?OpenAgent&amp;login")))</formula></code></action>
<item name='$$ScriptName' summary='false' sign='true'><text>$ACTIONS</text></item></sharedactions>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(AuthorProfileNew-Edit).lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(AuthorProfileNew-Edit)' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3' publicaccess='false'
designerversion='8.5' language='en' comment='Used in Leader/Facilitator Options hotspot'
restrictions='unrestricted'>
<noteinfo noteid='1f6' unid='E1AE00F03D54FC8F85256679006BF8DB' sequence='31'>
<created><datetime dst='true'>19980908T153920,59-04</datetime></created>
<modified><datetime>20100114T143442,59+00</datetime></modified>
<revised><datetime>20100114T143442,58+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,27+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143146,33+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,37-04</datetime><datetime
>20091111T052601,82-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,27+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='options'><lotusscript>Option Public
Use "DiscussionRoutines"
Option Declare

</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize
Dim session As New NotesSession
Dim uiwork As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim DbProfile As NotesDocument
Dim authorView As NotesView
Dim authorDoc As NotesDocument
Dim dbpath As String
Dim key As Variant
Dim getunid As Variant

Set db = session.currentdatabase
Set DbProfile = db.GetProfileDocument( "TempVars")
key = dbProfile.ProfileKey
dbpath = getdbpath

Dim useOtherDB As String
Dim server As String
Dim databaseName As String
Dim replicaId As String
Dim item As NotesItem
Set item = DbProfile.GetFirstItem("UseOtherDB")
If Not item Is Nothing Then
useOtherDB = item.Text
Else
useOtherDB = ""
End If
Set item = DbProfile.GetFirstItem("ReplicaId")
If Not item Is Nothing Then
replicaId = item.Text
Else
replicaId = ""
End If
Set item = DbProfile.GetFirstItem("Server")
If Not item Is Nothing Then
server = item.Text
Else
server = ""
End If
Set item = DbProfile.GetFirstItem("DatabaseName")
If Not item Is Nothing Then
databaseName = item.Text
Else
databaseName = ""
End If

If (useOtherDB = "Yes") Then
Dim targetdb As New NotesDatabase( "", "" )
If targetdb.OpenByReplicaID( server, replicaId ) Then
Set authorView = targetdb.getview("LookupPersonalProfiles")
End If
Else
Set authorView = db.getview("LookupPersonalProfiles")
End If

Call authorView.refresh
Set authorDoc = authorView.getdocumentbykey(key(0))

If authorDoc Is Nothing Then
If (useOtherDB = "Yes") Then
Set uidoc=uiwork.ComposeDocument(server, databaseName, "PersonalProfile")
Else
Set uidoc=uiwork.ComposeDocument(, , "PersonalProfile")
End If
ElseIf Not authorDoc Is Nothing Then
Set uidoc=uiwork.EditDocument(True,authorDoc, False)
End If

dbProfile.ProfileKey = ""

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime>20091111T052601,82-05</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(DisplayProfileAgent).fa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(DisplayProfileAgent)' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3' publicaccess='false'
language='en'>
<noteinfo noteid='1be' unid='6F0FBFCC41EC6C2C852565980046CDBA' sequence='15'>
<created><datetime>19980126T075321,86-05</datetime></created>
<modified><datetime>20100114T143442,45+00</datetime></modified>
<revised><datetime>20100114T143442,44+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,19+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143142,80+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,19+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='action'>
<simpleaction action='runformula'><formula>SELECT
@DialogBox("ProfileDisplay"; [AutoVertFit]: [AutoHorzFit] : [NoFieldUpdate] : [NoCancel] : [NoNewFields] : [NoFieldUpdate] : [SizeToTable])</formula></simpleaction></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime dst='true'>20090910T094147,31-04</datetime></agentmodified>
<agentrun><datetime dst='true'>20090914T044130,13-04</datetime></agentrun>
<runlog>Started running agent 'DisplayProfileAgent' on 14.09.2009 04:41:28
1 document(s) were modified by formula
Done running agent 'DisplayProfileAgent' on 14.09.2009 04:41:30
</runlog></rundata>
<item name='$CIAOTime' sign='true'><datetime dst='true'>19971006T093619,76-04</datetime></item>
<item name='$CIAOCheckOutComment' sign='true'><text/></item></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(EditInterestProfile).lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(EditInterestProfile)' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3' publicaccess='false'
language='en' comment='Used in Leader/Facilitator Options hotspot'>
<noteinfo noteid='20a' unid='723763F31C0B79518525667D00492C76' sequence='19'>
<created><datetime dst='true'>19980912T091915,10-04</datetime></created>
<modified><datetime>20100114T143442,65+00</datetime></modified>
<revised><datetime>20100114T143442,64+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,32+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143147,13+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,32+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='options'><lotusscript>Option Public
Use "DiscussionRoutines"
Option Declare

</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize
Dim session As New notessession
Dim uiwork As New notesuiworkspace
Dim uidoc As notesuidocument
Dim DbProfile As NotesDocument
Dim authorView As notesview
Dim authorDoc As notesdocument
Dim dbpath As String
Dim key As Variant
Dim getunid As Variant

Set db = session.currentdatabase
Set DbProfile = db.GetProfileDocument( "TempVars")
key = dbProfile.ProfileKey
dbpath = getdbpath

Set authorView = db.getview("LookupInterestProfiles")
Call authorView.refresh
Set authorDoc = authorView.getdocumentbykey(key(0))

If authorDoc Is Nothing Then
Set uidoc=uiwork.ComposeDocument(, , "Interest Profile")
Elseif Not authorDoc Is Nothing Then
Set uidoc=uiwork.EditDocument(True,authorDoc, False)
End If

dbProfile.ProfileKey = ""

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0' agentdata='8BD7D6F19163C7C9852574660077D6E0'>
<agentmodified><datetime dst='true'>20090910T094147,63-04</datetime></agentmodified>
<agentrun><datetime dst='true'>20090914T032446,02-04</datetime></agentrun>
<runlog>Started running agent 'EditInterestProfile' on 14.09.2009 03:24:45
Ran LotusScript code
Done running agent 'EditInterestProfile' on 14.09.2009 03:24:46
</runlog></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(Initialize ThreadIds).lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(Initialize ThreadIds)' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3' publicaccess='false'
language='en' comment='If you want to convert existing documents such that they are identified as threads, run this once against all documents.'>
<noteinfo noteid='13e' unid='280FE73D62B5263D85256203005CDE72' sequence='26'>
<created><datetime dst='true'>19950724T125422,58-04</datetime></created>
<modified><datetime>20100114T143441,97+00</datetime></modified>
<revised><datetime>20100114T143441,96+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,90+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143136,79+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143441,90+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='all'/><code event='options'><lotusscript>Option Public


</lotusscript></code><code event='declarations'><lotusscript>Dim s As NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim note As NotesDocument
Dim parent As NotesDocument
</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize

Set s = New NotesSession
Set db = s.CurrentDatabase
Set view = db.GetView("($All)")
Set note = view.GetFirstDocument

Do Until note Is Nothing
FormName = note.Form
Subject = note.Subject
Select Case FormName(0)
Case "MainTopic", "Main Topic"
note.NewsLetterSubject = Subject(0)
Case "Response", "AnonymousResponse", "Response (Anonymous)"
OriginalSubject = note.OriginalSubject
note.NewsLetterSubject = Subject(0) &amp; " (Response to: -" &amp; OriginalSubject(0) &amp; "-)"
Case "ResponseToResponse", "Response to Response"
OriginalSubject = note.OriginalSubject
note.NewsLetterSubject = Subject(0) &amp; " (Response to Response to: -" &amp; OriginalSubject(0) &amp; "-)"
End Select
If note.IsResponse Then
Set parent = view.GetParentDocument(note)
Do Until parent.IsResponse = False
Set parent = view.GetParentDocument(parent)
Loop
NewId = parent.ThreadId
Else
NewId = Evaluate("@Unique")
End If
note.ThreadId = NewId(0)
note.save True, True
Set note = view.GetNextDocument(note)
Loop

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime>19990309T143023,03-05</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(ProfileButton).fa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(ProfileButton)' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3' publicaccess='false'
language='en'>
<noteinfo noteid='1b2' unid='393255CBD2AC0D1B85256598004604EF' sequence='16'>
<created><datetime>19980126T074447,83-05</datetime></created>
<modified><datetime>20100114T143442,43+00</datetime></modified>
<revised><datetime>20100114T143442,42+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,19+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143142,33+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,19+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='action'>
<simpleaction action='runformula'><formula>abrName := @Name([Abbreviate]; from);
abrNameReplSpace := @ReplaceSubstring(abrName; " "; "_");
Key := @ReplaceSubstring(abrNameReplSpace; "/"; "__");

DialogTitle := "Personal Profile";
@SetProfileField("TempVars"; "ProfileKey"; Key);
@Command([ToolsRunMacro]; "(DisplayProfileAgent)");SELECT @All</formula></simpleaction></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime dst='true'>20090910T094147,29-04</datetime></agentmodified>
<agentrun><datetime dst='true'>20090914T044130,15-04</datetime></agentrun>
<runlog>Started running agent 'ProfileButton' on 14.09.2009 04:41:28
1 document(s) were modified by formula
Done running agent 'ProfileButton' on 14.09.2009 04:41:30
</runlog></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(WebAddTopic).lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(WebAddTopic)' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3' runaswebuser='true'
publicaccess='false' language='en' comment='This agent adds the current main topic to the users Interest Profile.'>
<noteinfo noteid='18a' unid='9324D1FCEB763322852564CD005C7FFF' sequence='35'>
<created><datetime dst='true'>19970707T125020,79-04</datetime></created>
<modified><datetime>20100114T143442,29+00</datetime></modified>
<revised><datetime>20100114T143442,28+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,13+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143140,61+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,13+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='options'><lotusscript>Option Public
Use "wStringResource"
Use "DiscussionRoutines"


</lotusscript></code><code event='declarations'><lotusscript>Dim view As NotesView
Dim profile As NotesDocument
Dim item As NotesItem
Dim Position As Integer
Dim originalnote As notesdocument
Dim CurrentDocumentURL As String
Dim webuser As NotesName

</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize
InstantiateObjects
Dim nab As New notesdatabase("","names.nsf")
Dim userview As notesview
dbpath = getdbpath

'Get the original Note that we are trying to add to the users interest profile
OriginalUNID = Mid(note.Query_String(0), Instr(note.Query_String(0), "&amp;")+1, 32)
Set OriginalNote = db.getdocumentbyunid(originalunid)
'Obtain the correct authenticated web user name of the person
'find the remote user's full name

If nab.isopen Then
Set userview = nab.getview("($Users)")
Dim userdoc As notesdocument
Set userdoc = userview.getdocumentbykey(note.remote_user(0))
If Not(userdoc Is Nothing) Then
Set webuser = New notesname(userdoc.fullname(0))
End If
End If

'These variables are for creating a response message to the user when we are done
CurrentDocumentURL = "&lt;hr&gt;&lt;font size=2&gt;&lt;a href=/"+dbpath+"/($All)/"+Lcase(originalUNID)+"?OpenDocument&gt;" + GetString(1) + "&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
TopicView = "&lt;a href=/" + dbpath + "/($All)?OpenView&gt;" + GetString(2) + "&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
CategoryView = " &lt;a href=/" + dbpath + "/by+Category?OpenView&gt;" + GetString(3) + "&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
AuthorView = "&lt;a href=/" + dbpath + "/AuthorView?OpenView&gt;" + GetString(4) + "&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
altnameview ="&lt;a href=/"+dbpath+"/By+Alternate+Name?OpenView&gt;" + GetString(5) + "&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp&lt;hr&gt;"

'Get the subject field and remove any commas
Subject = OriginalNote.Subject
ThreadSubject = Subject(0)
Do
Position = Instr(1, ThreadSubject, ",")
If Position &gt; 0 Then Mid(ThreadSubject, Position, 1) = "."
Loop Until Position = 0


ThreadId = OriginalNote.ThreadId

If ThreadId(0) = "" Then
Print "&lt;b&gt;" + GetString(6) + "&lt;/b&gt;&lt;BR&gt;"+CurrentDocmentURL+topicview+categoryview+authorview+AltNameView
Exit Sub
End If
Set view = db.GetView("($Profiles)")
'Compile the correct key to find the unique interest profile for this user
key = "Interest Profile" &amp; webuser.common
Set profile = view.GetDocumentByKey(key,False)

If profile Is Nothing Then
'If there is no Interest profile, create one and add the topic to it
Set profile = New NotesDocument(db)
profile.Form = "Interest Profile"
Set item = New NotesItem(profile, "PersonName", webuser.common, AUTHORS)
profile.Subject = "Interest Profile for " &amp; webuser.common
profile.ProtectFromArchive = 1
profile.ProfileThreads = ThreadId(0)
If ThreadSubject = "" Then
profile.profilethreadsubjects = GetString(25)+Cstr(threadid(0))
Else
profile.ProfileThreadSubjects = ThreadSubject
End If

Set item = New NotesItem(profile, "Readers", webuser.canonical, READERS)
item.IsSummary = True
Else
If profile.hasitem("ProfileThreads") Then

Set item = profile.GetFirstItem("ProfileThreads")
If item.Contains(ThreadId(0)) Then
Print "&lt;b&gt;" + GetString(7) + "&lt;/b&gt;&lt;BR&gt;"+CurrentDocumentURL+topicview+categoryview+authorview+AltNameView
Exit Sub
Else
item.AppendToTextList(ThreadId(0))
Set item = profile.GetFirstItem("ProfileThreadSubjects")

If ThreadSubject = "" Then
item.AppendToTextList(GetString(25)+Cstr(threadid(0)))
Elseif profile.ProfileThreadSubjects(0) = "" Then
Call profile.replaceitemvalue("ProfileThreadSubjects", Subject)
Else
item.AppendToTextList(ThreadSubject)
End If


End If
Else
profile.profilethreads = threadid(0)
If ThreadSubject = "" Then
profile.profilethreadsubjects = GetString(25)+Cstr(threadid(0))
Else
profile.profilethreadsubjects = threadsubject
End If

End If
End If
profile.Save True, True
If ThreadSubject = "" Then
Print "&lt;b&gt;"+GetString(26)+GetString(8)+"&lt;/b&gt;&lt;br&gt;"+ CurrentDocumentURL+topicview+categoryview+authorview+altnameview
Else
Print "&lt;b&gt;"+threadsubject+" "+GetString(8)+"&lt;/b&gt;&lt;br&gt;"+ CurrentDocumentURL+topicview+categoryview+authorview+altnameview
End If

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime>19990309T143028,58-05</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(WebAuthorProfileNew-Edit).lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(WebAuthorProfileNew-Edit)' xmlns='http://www.lotus.com/dxl'
version='8.5' maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3'
runaswebuser='true' publicaccess='false' language='en' comment='Used in Leader/Facilitator Options hotspot'>
<noteinfo noteid='202' unid='5A94AB15B57E4ED28525667A004F4FCD' sequence='23'>
<created><datetime dst='true'>19980909T102617,73-04</datetime></created>
<modified><datetime>20100114T143442,63+00</datetime></modified>
<revised><datetime>20100114T143442,62+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,30+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143146,80+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,30+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='options'><lotusscript>Option Public
Use "DiscussionRoutines"
Option Declare
Option Compare Nocase

</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize
Dim session As New notessession
Dim DbProfile As NotesDocument
Dim authorView As notesview
Dim authorDoc As notesdocument
Dim agent As notesagent
Dim clientType As Variant
Dim dbpath As String
Dim key As Variant
Dim getunid As Variant

Set db = session.currentdatabase
Set DbProfile = db.GetProfileDocument( "TempVars")
clientType = DbProfile.clientType
key = dbProfile.ProfileKey

Dim dbug As New noteslog("AuthorProfileNew-EditWeb")
'logging is for debug purposes
Set dbug = New NotesLog("AuthorProfileNew-EditWeb")
'to turn off the debug log, set this to False
dbug.LogActions = True
dbug.OpenAgentLog

dbug.logaction("Agent running")

dbpath = getdbpath

Set authorView = db.getview("LookupPersonalProfiles")

Call authorView.refresh
dbug.logaction("Key= " + key(0))
Set authorDoc = authorView.getdocumentbykey(key(0), True)

If authorDoc Is Nothing Then
Print "[/"+dbpath+"/"+"PersonalProfile?OpenForm]"
Else
getUNID = authorDoc.universalid
dbug.logaction("UNID=" + getUNID)
Print "[/"+dbpath+"/($All)/"+Lcase(getUNID)+"?EditDocument]"
End If

dbProfile.clientType = ""
dbProfile.ProfileKey = ""

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime dst='true'>19990422T101123,85-04</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(WebEditInterestProfile).lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(WebEditInterestProfile)' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3' runaswebuser='true'
publicaccess='false' language='en' comment='This agent opens the correct Interest Profile for a web user.'>
<noteinfo noteid='22a' unid='15AB823937FA579E8525668D004165DF' sequence='21'>
<created><datetime dst='true'>19980928T075419,19-04</datetime></created>
<modified><datetime>20100114T143442,75+00</datetime></modified>
<revised><datetime>20100114T143442,74+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,37+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143148,40+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,37+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='options'><lotusscript>Option Public
Use "DiscussionRoutines"
Option Declare
Option Compare Nocase

</lotusscript></code><code event='declarations'><lotusscript>'WebEditInterestProfile:





</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize

Dim session As New notessession
Dim DbProfile As NotesDocument
Dim authorView As notesview
Dim authorDoc As notesdocument
Dim key As Variant
Dim getunid As Variant

Set db = session.currentdatabase
Set DbProfile = db.GetProfileDocument( "TempVars")
key = dbProfile.ProfileKey
dbpath = getdbpath

Set authorView = db.getview("LookupInterestProfiles")

Call authorView.refresh
Set authorDoc = authorView.getdocumentbykey(key(0), True)

If authorDoc Is Nothing Then
Print "[/"+dbpath+"/"+"Interest+Profile?OpenForm]"
Else
getUNID = authorDoc.universalid
Print "[/"+dbpath+"/LookupInterestProfiles/" + Lcase(getUNID)+"?EditDocument]"
End If

dbProfile.ProfileKey = ""
End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime dst='true'>19990422T100904,29-04</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(WebExpire).lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(WebExpire)' xmlns='http://www.lotus.com/dxl' version='8.5' maintenanceversion='1.0'
replicaid='85257656001B3035' hide='v3' runaswebuser='true' publicaccess='false'
language='en' comment='This performs the expiring/unexpiring of document functions for the web user.'>
<noteinfo noteid='16a' unid='B1CBAD77C5AC8ED38525649C006A9D4E' sequence='62'>
<created><datetime dst='true'>19970519T152430,86-04</datetime></created>
<modified><datetime>20100114T143442,17+00</datetime></modified>
<revised><datetime>20100114T143442,16+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,04+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143138,55+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,04+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='options'><lotusscript>Option Public
Use "wStringResource"
Use "DiscussionRoutines"

</lotusscript></code><code event='declarations'><lotusscript>Dim topicview As String
Dim favorites As String
Dim categoryview As String
Dim archivingview As String
Dim authorview As String
Dim originalnote As notesdocument

</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize
InstantiateObjects
dbpath = getdbpath

'Get real document
OriginalUNID = Mid(note.Query_String(0), Instr(note.Query_String(0), "&amp;")+1, 32)
Set originalNote = db.getdocumentbyunid(originalunid)

CurrentDocument = "&lt;hr&gt;&lt;font size=2&gt;&lt;a href=/"+dbpath+"/($All)/"+Lcase(originalUNID)+"?OpenDocument&gt;"+GetString(1)+"&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
TopicView = "&lt;a href=/" + dbpath + "/($All)?OpenView&gt;"+GetString(2)+"&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
CategoryView = " &lt;a href=/" + dbpath + "/by+Category?OpenView&gt;"+GetString(3)+"&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
AuthorView = "&lt;a href=/" + dbpath + "/AuthorView?OpenView&gt;"+GetString(4)+"&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
AltnameView ="&lt;a href=/"+dbpath+"/By+Alternate+Name?OpenView&gt;"+GetString(5)+"&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp&lt;hr&gt;"


If Originalnote.hasitem("protectfromarchive") Then
Print "&lt;b&gt;"+Originalnote.form(0)+ "&lt;h3&gt;" + GetString(12) + "&lt;/h3&gt;&lt;/b&gt;"+Currentdocument+topicview+categoryview+authorview+favorites+altnameview
Elseif OriginalNote.hasitem("expiredate") Then
If originalnote.expiredate(0) &lt;&gt; "" Then
Print "&lt;h3&gt;" + GetString(13) + "&lt;/h3&gt;" + Currentdocument+topicview+categoryview+authorview+favorites+AltNameView
OriginalNote.Removeitem("Expiredate")
Call OriginalNote.save(True, False)
Else
OriginalNote.expiredate = Today
Call OriginalNote.save(True,False)
Print "&lt;h3&gt;" + GetString(14) + "&lt;/h3&gt;" + Currentdocument+topicview+categoryview+authorview+favorites+AltNameView
End If
Else
OriginalNote.expiredate = Today
Call OriginalNote.save(True,False)
Print "&lt;h3&gt;" + GetString(14) + "&lt;/h3&gt;" + Currentdocument+topicview+categoryview+authorview+favorites+AltNameView
End If

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime>19990309T143036,51-05</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(WebInterestProfileOpen).lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(WebInterestProfileOpen)' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3' runaswebuser='true'
publicaccess='false' language='en' comment='WebQueryOpen agent on the Interest Profile'>
<noteinfo noteid='19a' unid='593D7053794BCA92852564D6006DCAF6' sequence='25'>
<created><datetime dst='true'>19970716T155913,82-04</datetime></created>
<modified><datetime>20100114T143442,35+00</datetime></modified>
<revised><datetime>20100114T143442,34+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,16+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143141,41+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,16+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='options'><lotusscript>Option Public
Use "DiscussionRoutines"
Use "wStringResource"

</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize
InstantiateObjects

'remove all of these so they can ger resest with default values each time the doc is opened
If note.isnewnote Then Exit Sub
note.WebProfileCategories = note.ProfileCategories
note.WebProfileStrings = note.ProfileStrings
Exit Sub

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime>19990309T143038,78-05</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(WebInterestProfSave).lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(WebInterestProfSave)' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3' runaswebuser='true'
publicaccess='false' language='en' comment='Web Query Save agent for Interest Profile form'>
<noteinfo noteid='222' unid='4A1CDF82E21FB0138525668A006365F2' sequence='18'>
<created><datetime dst='true'>19980925T140541,62-04</datetime></created>
<modified><datetime>20100114T143442,73+00</datetime></modified>
<revised><datetime>20100114T143442,72+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,37+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143148,10+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,37+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='options'><lotusscript>Option Public
Use "DiscussionRoutines"

</lotusscript></code><code event='declarations'><lotusscript>Dim webuser As notesname
</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize

InstantiateObjects
IsWebUser = True
Set webuser = New notesname(note.personname(0))

If note.isnewnote Then
note.Subject = "Newsletter Profile for " &amp; webuser.common
note.ProtectFromArchive = 1
End If

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime>19990309T143041,20-05</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(WebRemoveThread).lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(WebRemoveThread)' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3' runaswebuser='true'
publicaccess='false' language='en' comment='This agent removes the selected thread from the users Interest Profile. It is the querysaveagent on the RemoveThread form.'>
<noteinfo noteid='176' unid='4017F6AD4A913E26852564AB00402EF3' sequence='88'>
<created><datetime dst='true'>19970603T074103,23-04</datetime></created>
<modified><datetime>20100114T143442,21+00</datetime></modified>
<revised><datetime>20100114T143442,20+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,05+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143139,01+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,05+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='options'><lotusscript>Option Public
Use "wStringResource"
Use "DiscussionRoutines"



</lotusscript></code><code event='declarations'><lotusscript>Dim view As NotesView
Dim profile As NotesDocument
Dim item As NotesItem
Dim Position As Integer
Dim originalnote As notesdocument
Dim CurrentDocumentURL As String
Dim profileurl As String
Dim profileunid As String
Dim threadids As Variant
Dim subjects As Variant
Dim removethreads As Variant
</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize
InstantiateObjects
dbpath = getdbpath
'Get referer url because that's the profile

profileUNID= Mid ( note.HTTP_Referer(0), Instr(note.HTTP_Referer(0), "=")+1,32)

Set profile = db.GetDocumentByUNID(profileUNID)

CurrentDocumentURL = "&lt;hr&gt;&lt;font size=2&gt;&lt;a href=/"+dbpath+"/($All)/"+profileunid+"?OpenDocument&gt;"+GetString(15)+"&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
TopicView = "&lt;a href=/" + dbpath + "/($All)?OpenView&gt;"+GetString(2)+"&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
CategoryView = "&lt;a href=/" + dbpath + "/by+Category?OpenView&gt;"+GetString(3)+"&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
AuthorView = "&lt;a href=/" + dbpath + "/AuthorView?OpenView&gt;"+GetString(4)+"&lt;/a&gt;&lt;/b&gt;&amp;nbsp&amp;nbsp&amp;nbsp"
AltnameView ="&lt;a href=/"+dbpath+"/By+Alternate+Name?OpenView&gt;"+GetString(5)+"&lt;/a&gt;&amp;nbsp&amp;nbsp&amp;nbsp&lt;hr&gt;"


If profile Is Nothing Then
Print "&lt;b&gt;"+GetString(16)+"&lt;/b&gt;"+CurrentDocumentURL+Topicview+CategoryView+AuthorView+AltNameView
Exit Sub
Else

'Get ThreadID list and ProfileThreadSubject list
ThreadIds = profile.ProfileThreads
Subjects = profile.ProfileThreadSubjects
'Get Thread subjects which should be removed
RemoveThreads = note.RemoveSubjects
If RemoveThreads(0) &lt;&gt; "" Then
'Remove the thread subjects from the existing profile
RemoveSubjects
'Rewrite the new values to the profile
Else
Print "&lt;b&gt; "GetString(24)+"&lt;/b&gt;&lt;br&gt;"+currentdocumenturl+Topicview+CategoryView+AuthorView+AltNameView
Exit Sub
End If
'Rewrite the new values to the profile

Call profile.replaceitemvalue("ProfileThreads",ThreadIDs)
Call profile.replaceitemvalue("ProfileThreadSubjects", Subjects)
Print "&lt;b&gt;"+GetString(17)+"&lt;/b&gt;&lt;br&gt;"+ CurrentDocumentURL+topicview+categoryview+authorview+AltNameView

End If

profile.Save True, True


End Sub


</lotusscript></code><code event='RemoveSubjects'><lotusscript>Sub RemoveSubjects

'This routine removes all of the elements in the removethreads array from the subjects array
Forall j In RemoveThreads
CurrentElementtoRemove = j
index=0
Forall i In Subjects
'This set of statements gives us the matching index number to remove in the ThreadIDs list
If currentelementtoremove = i Then
ThreadIDs(index)=""
Subjects(index)=""
End If
index=index+1
End Forall
End Forall
End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime>19990309T143043,53-05</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\(xpConfigProfile).lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='(xpConfigProfile)' xmlns='http://www.lotus.com/dxl' version='8.5'
maintenanceversion='1.0' replicaid='85257656001B3035' hide='web v3' publicaccess='false'
designerversion='7' language='en' restrictions='unrestricted'>
<noteinfo noteid='2ce' unid='F19CE3B0303FC2D08525745F0019699D' sequence='35'>
<created><datetime dst='true'>20080605T003734,37-04</datetime></created>
<modified><datetime>20100114T143443,51+00</datetime></modified>
<revised><datetime>20100114T143443,50+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,85+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143158,85+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20080605T003734,59-04</datetime><datetime
dst='true'>20080605T003805,51-04</datetime><datetime dst='true'>20080605T003831,59-04</datetime><datetime
dst='true'>20080605T003923,82-04</datetime><datetime dst='true'>20080605T004241,59-04</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,85+00</datetime></designchange>
<trigger type='agentlist'/>
<documentset type='runonce'/><code event='options'><lotusscript>Option Public
Option Declare

Use "lsClassException"

</lotusscript></code><code event='declarations'><lotusscript>Const MODULE_NAME = "xpConfigProfile"

</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize

On Error Goto ERROR_HANDLER

Const FORM_NAME = "xpConfigProfile"
Const VIEW_NAME = "xpConfigProfile"

Dim session As NotesSession
Dim uiworkspace As NotesUIWorkspace
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument

Set session = New NotesSession
Set uiworkspace = New NotesUIWorkspace
Set db = session.CurrentDatabase
Set view = db.GetView(VIEW_NAME)

Call view.refresh()

Set doc = view.GetFirstDocument()
If doc Is Nothing Then
Call uiworkspace.ComposeDocument(, , FORM_NAME)
Else
Call uiworkspace.EditDocument(True, doc, False)
End If

Exit Sub

ERROR_HANDLER:

Call oException.HandleError(MODULE_NAME, "", Null)
Exit Sub

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0' agentdata='1491E441012F4FF98525747F000BC1E4'>
<agentmodified><datetime dst='true'>20090910T094148,55-04</datetime></agentmodified>
<agentrun><datetime dst='true'>20090911T040251,79-04</datetime></agentrun>
<runlog>Started running agent 'xpConfigProfile' on 11.09.2009 04:02:51
Ran LotusScript code
Done running agent 'xpConfigProfile' on 11.09.2009 04:02:51
</runlog></rundata>
<item name='$POID'><datetime dst='true'>20050602T134551,21-04</datetime></item></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\Add Topic_2fThread To Interest Profile.lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='Add Topic/Thread To Interest Profile' xmlns='http://www.lotus.com/dxl'
version='8.5' maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3'
publicaccess='false' designerversion='7' language='en' restrictions='unrestricted'>
<noteinfo noteid='132' unid='4343E80188C369EE852561E7006707F8' sequence='74'>
<created><datetime dst='true'>19950626T144522,48-04</datetime></created>
<modified><datetime>20100114T143441,93+00</datetime></modified>
<revised><datetime>20100114T143441,92+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,88+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143136,32+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143441,88+00</datetime></designchange>
<trigger type='actionsmenu'/>
<documentset type='selected'/><code event='options'><lotusscript>Option Public

Use "wStringResource"


</lotusscript></code><code event='declarations'><lotusscript>Dim w As NotesUIWorkspace
Dim s As NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim note As NotesDocument
Dim profile As NotesDocument
Dim collection As NotesDocumentCollection
Dim item As NotesItem
Dim Position As Integer


'variables to translate
Const msg1 = "Please choose only one document."
Const title1 = "Add Thread"
Const msg2 = "You must first select a document. Note: highlight bar cannot be on a category."
Const msg3 = "This action cannot be run on the Interest Profile."
Const msg4 = "The document you have chosen cannot be added to an interest profile."
Const title4 = "This document is not a Thread"
Const msg5 = "Interest Profile for "
Const msg6 = "This topic is already in your Interest Profile."
Const msg7 = "The current topic has been added to your Interest Profile. You will be notified by mail when new responses appear in this topic."
'END variables to translate


</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize

Set s = New NotesSession
Set db = s.CurrentDatabase
Set collection = db.UnprocessedDocuments
If collection.Count &gt; 1 Then
Messagebox msg1, 64, title1
Exit Sub
Elseif collection.Count &lt;1 Then
Messagebox msg2, 64
Exit Sub
End If
Set note = collection.GetFirstDocument

If note.form(0) = "Interest Profile" Then
Messagebox msg3, 64
Exit Sub
End If

'Get the subject field and remove any commas (Notes thinks they are multivalue separaters)
Subject = note.Subject
ThreadSubject = Subject(0)
Do
Position = Instr(1, ThreadSubject, ",")
If Position &gt; 0 Then Mid(ThreadSubject, Position, 1) = "."
Loop Until Position = 0

ThreadId = note.ThreadId

If ThreadId(0) = "" Then
Messagebox msg4, 0 + 64, title4
Exit Sub
End If

Set view = db.GetView("($Profiles)")
Call view.Refresh

key = "Interest Profile" &amp; s.CommonUserName
Set profile = view.GetDocumentByKey(key,False)
If profile Is Nothing Then
Set profile = New NotesDocument(db)
profile.Form = "Interest Profile"
Set item = New NotesItem(profile, "PersonName", s.CommonUserName, AUTHORS)
profile.Subject = msg5 &amp; s.CommonUserName
profile.ProtectFromArchive = 1
profile.FullPersonName = Evaluate("@username")
profile.ProfileThreads = ThreadId(0)
If ThreadSubject = "" Then
profile.profilethreadsubjects = GetString(25)+Cstr(threadid(0))
Else
profile.ProfileThreadSubjects = ThreadSubject
End If
ReaderNames = Evaluate("(@UserName : ""LocalDomainServers"")")
Set item = New NotesItem(profile, "Readers", ReaderNames, READERS)
item.IsSummary = True
Else
Set item = profile.GetFirstItem("ProfileThreads")
If item.Contains(ThreadId(0)) Then
Messagebox msg6, 64, title1
Exit Sub
Else
item.AppendToTextList(ThreadId(0))
Set item = profile.GetFirstItem("ProfileThreadSubjects")
If ThreadSubject = "" Then
item.AppendToTextList(GetString(25)+Cstr(threadid(0)))
Elseif profile.ProfileThreadSubjects(0) = "" Then
Call profile.replaceitemvalue("ProfileThreadSubjects", Subject)
Else
item.AppendToTextList(ThreadSubject)
End If
End If
End If

profile.Save True, True

Messagebox msg7, 0 + 64, title1

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime dst='true'>20080703T193401,85-04</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\Convert My Interest Profile to a Subscription.lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='Convert My Interest Profile to a Subscription' xmlns='http://www.lotus.com/dxl'
version='8.5' maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3'
publicaccess='false' designerversion='5' language='en' comment='Only available to R5 and above.'>
<noteinfo noteid='236' unid='F6DCF91AD460F5D385256690004BFC77' sequence='52'>
<created><datetime dst='true'>19981001T094958,31-04</datetime></created>
<modified><datetime>20100114T143442,79+00</datetime></modified>
<revised><datetime>20100114T143442,78+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,40+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143148,93+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,40+00</datetime></designchange>
<trigger type='actionsmenu'/>
<documentset type='runonce'/><code event='options'><lotusscript>Option Public
Option Declare
</lotusscript></code><code event='declarations'><lotusscript>'Convert My Newsletter Profile to a Subscription:

'Variables to translate
Const msg1 = "You do not currently have an Interest Profile. Select Create--Subscription to create a subscription for this discussion database."
Const title1 = "Document not found"
Const msg2 = "The subscription has been successfully created! Future subscriptions to this database can be created by selecting Create-Subscription."
Const title2 = "Successful"
Const error46 = "This feature is only available to Notes clients which are running Release 5.0 and above."
Const title3 = "Alert"
Const msg4 = "Enter a title for your subscription: "
Const title4 = "Converting Interest Profile to Subscription"

Const msg5 = "You either did not enter a title or you clicked Cancel. Do you wish to continue?"
Const msg6 = "Interest profile was not converted to a subscription."

</lotusscript></code><code event='initialize'><lotusscript>'END variables to translate
Sub Initialize
Dim session As New notessession
Dim uiwork As New notesuiworkspace
Dim db As notesdatabase
Dim interestView As notesview
Dim interestDoc As notesdocument
Dim dbTitle As String
Dim repID As String
Dim key As String
Dim user As Variant
Dim item As Variant
Dim auth As Variant
Dim subj As Variant
Dim cat As Variant
Dim ev As Variant
Dim thr As Variant
Dim title As String
Dim SubscriptionDoc As notesdocument
Dim headDB As New NotesDatabase("", "headline.nsf")
Dim Sver As Variant
Dim Iver As Integer
Dim YN As Integer

Sver = Evaluate("@version")
Iver = Cint(Sver(0))

If Iver &lt; 160 Then
Msgbox error46, 16, title3 'user is running release prior to R5.0
Exit Sub
End If

Set db = session.currentdatabase
repID = db.replicaID
dbTitle = db.title
Set user = New notesname(session.username)

Set interestView = db.getview("($Profiles)")
Call interestView.refresh
key = "Interest Profile" + user.common 'DNT

Set interestDoc = interestView.getdocumentbykey(key)

If interestDoc Is Nothing Then 'user doesn't have an interest profile
Msgbox msg1, 48, title1
Exit Sub
End If

title = Inputbox(msg4, title4, dbTitle)

YN=1

If title = "" Then
YN = uiwork.prompt(PROMPT_YESNO, title3, msg5)
End If

If YN = 0 Then
Msgbox msg6, 64
Exit Sub
End If


Set item = interestDoc.replaceitemvalue("Form", "($Subscription)")
auth = interestDoc.getitemvalue("ProfileAuthors")
subj = interestDoc.getitemvalue("ProfileStrings")
cat = interestDoc.getitemvalue("ProfileCategories")
ev = interestDoc.getitemvalue("ProfileEvents")
thr = interestDoc.getitemvalue("ProfileThreadSubjects")

If auth(0) &lt;&gt; "" Then
Set item = interestdoc.replaceitemvalue("AuthorMatch", "1")
End If

If subj(0) &lt;&gt; "" Then
Set item = interestdoc.replaceitemvalue("SubjectMatch", "1")
End If

If cat(0) &lt;&gt; "" Then
Set item = interestdoc.replaceitemvalue("CategoryMatch", "1")
End If

If ev(0) &lt;&gt; "" Then
Set item = interestdoc.replaceitemvalue("EventMatch", "1")
End If

If thr(0) &lt;&gt; "" Then
Set item = interestdoc.replaceitemvalue("ThreadMatch", "1")
End If

Set item = interestdoc.replaceitemvalue("$HLTitle", title)

Set item = interestdoc.replaceitemvalue("$HLMonitorDB", Left(repID, 8) + ":" + Right(repID,8))

Call interestDoc.computewithform(0,0)
Call interestDoc.save(True, False)
Set SubscriptionDoc = interestDoc.CopyToDatabase(headDB)
SubscriptionDoc.formDBIDitem = repID
Set item = SubscriptionDoc.replaceitemvalue("test", "1")
Call SubscriptionDoc.save(False,False)

InterestDoc.remove(True)
Msgbox msg2, 64, title2 'successful subscription creation

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime>19991206T120912,76-08</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\Mark_2fUnmark Document As Expired.lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='Mark/Unmark Document As Expired' xmlns='http://www.lotus.com/dxl'
version='8.5' maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3'
publicaccess='false' designerversion='6' language='en' comment='This is for a Notes user only.'
restrictions='unrestricted'>
<noteinfo noteid='15a' unid='1DABDB9FB2EAAE67852562830051A61A' sequence='44'>
<created><datetime>19951129T095149,38-05</datetime></created>
<modified><datetime>20100114T143442,11+00</datetime></modified>
<revised><datetime>20100114T143442,10+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,01+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143137,90+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,01+00</datetime></designchange>
<trigger type='actionsmenu'/>
<documentset type='selected'/><code event='options'><lotusscript>Option Public
Option Declare
</lotusscript></code><code event='declarations'><lotusscript>Dim UIwork As NotesUIWorkspace
Dim UIview As NotesUIView
Dim Session As NotesSession

Dim db As notesdatabase
Dim doc As notesdocument

Dim UIdoc As notesuidocument

Dim collection As NotesDocumentCollection

Dim i As Integer
Dim PFA As Variant
Dim FormItem As Variant
Dim ExDate As Variant
Dim ExQues As Variant
Dim Subj As Variant

'The following variables are available to be translated
Const Msg1 ="This "
Const Msg2 =" cannot be marked as expired."
Const Msg3 = " is already Marked Expired. Do you wish to remove the expiration flag?"
Const Msg4 = "The requested action has been completed. The document must be saved for the changes to take effect."
Const Msg5 = "You must first select a document. Note: highlight bar cannot be on a category."
Const msg6 = "Document has not yet been saved"
Const msg7 = "Cannot mark document(s) as expired because archiving has not yet been set up for this database."
Const BoxTitle ="Already Marked Expired"
Const BoxTitle2 ="Expire Not Permitted"
'End translatable variables





</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize
Set UIwork = New notesuiworkspace
Set uiview = uiwork.currentview

Set session = New NotesSession

Set db = session.CurrentDatabase
Set collection = db.UnprocessedDocuments
Set UIdoc = UIwork.currentdocument

Dim archProfile As notesdocument
Set archProfile = db.getprofiledocument("Archive Profile")
If Not archProfile.hasitem("Enabled") Then
Msgbox Msg7
Exit Sub
End If

If collection.Count &lt; 1 Then
Msgbox Msg5
Exit Sub
End If

If uidoc Is Nothing Then
Goto continue
Elseif uidoc.isnewdoc And uiview Is Nothing Then
Msgbox Msg6
Exit Sub
End If

continue:
If Not UIdoc Is Nothing And UIview Is Nothing Then
Set doc = uidoc.document
Call SetSharedVariables
If Not(CheckArchiveProtection) Then
UIWork.editdocument(True)
Call RenderExpireDate(doc)
ExQues = doc.GetItemvalue("ExpireQuestion")
UIdoc.refresh
End If
Else
For i = 1 To collection.Count
Set doc = collection.GetNthDocument( i )
Call SetSharedVariables

If Not(CheckArchiveProtection) Then
Call RenderExpireDate(doc)
Call doc.save(True, True, True)
End If
Next
End If

End Sub
</lotusscript></code><code event='SetSharedVariables'><lotusscript>Sub SetSharedVariables
FormItem=doc.GetItemValue("Form")
ExDate=doc.GetItemValue("ExpireDate")
PFA = doc.HasItem( "PROTECTFROMARCHIVE" )
Subj=doc.GetitemValue("Subject")
End Sub
</lotusscript></code><code event='RenderExpireDate'><lotusscript>Sub RenderExpireDate(doc As notesdocument)
Dim UIwork As New notesuiworkspace

If Not ExDate(0) ="" Then
ExQues = Messagebox (Subj(0) &amp; Msg3, 4 + 32 + 0 , BoxTitle)

Select Case ExQues
Case Is = 2
Exit Sub
Case Is = 6
Call doc.ReplaceItemvalue("ExpireDate", "")
If Not UIdoc Is Nothing Then
Print Msg4
End If
Case Is = 7
Exit Sub
End Select

Else
Call doc.ReplaceItemValue ( "ExpireDate", Now)
If Not UIdoc Is Nothing Then
Print Msg4
End If

End If

End Sub
</lotusscript></code><code event='CheckArchiveProtection'><lotusscript>Function CheckArchiveProtection As Integer
If PFA Then
Messagebox Msg1 &amp; FormItem(0) &amp; Msg2 , 0 + 64, BoxTitle2

End If
CheckArchiveProtection = PFA
End Function
</lotusscript></code><code event='terminate'><lotusscript>Sub Terminate

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime>20020225T092248,53-05</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\Send Newsletters .lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='Send Newsletters ' alias=' Send Newsletters' xmlns='http://www.lotus.com/dxl'
version='8.5' maintenanceversion='1.0' replicaid='85257656001B3035' hide='v3'
publicaccess='false' designerversion='8.5' language='en' restrictions='unrestricted'
activatable='false' enabled='false'>
<noteinfo noteid='1da' unid='591EE967DA1D7B09852566390067D8C6' sequence='34'>
<created><datetime dst='true'>19980706T145417,02-04</datetime></created>
<modified><datetime>20100114T143442,03+00</datetime></modified>
<revised><datetime>20100114T143442,02+00</datetime></revised>
<lastaccessed><datetime>20100114T143441,96+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143144,63+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Niklas Heidloff/OU=Germany/O=IBM</name><name
>CN=Steve Castledine/OU=UK/O=IBM</name><name>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20091021T014258,25-04</datetime><datetime
>20091111T051227,62-05</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143441,96+00</datetime></designchange>
<trigger type='scheduled'>
<schedule type='daily' runlocation='any'>
<starttime><datetime>T010000,00</datetime></starttime></schedule></trigger>
<documentset type='modified'/><code event='options'><lotusscript>'Begin Do Not Translate
Use "wStringResource"
Option Declare

</lotusscript></code><code event='declarations'><lotusscript>'End Do Not Translate
'Begin Do Not Translate

Dim s As NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim note As NotesDocument
Dim profile As NotesDocument
Dim newnote As NotesDocument
Dim newsletter As NotesNewsLetter
Dim collection As NotesDocumentCollection
Dim pPersonName As Variant
Dim pCategories As Variant
Dim pEvents As Variant
Dim pAuthors As Variant
Dim pStrings As Variant
Dim pMyName As Variant
Dim pThreads As Variant
Dim searchtype As String
Dim query As String
Dim textlist As String
Dim totalquery As String
Dim failed As Integer
Dim abrAltFrom As Variant
Dim tmpDoc As NotesDocument
Dim formItem As NotesItem
Dim delDoc As NotesDocument

Const YES$ = "yes"
Const NO$ = "no"
Const WEB_URLS$ = "WebURLs"
Const NOTES_LINKS$ = "NotesLinks"
'End Do Not Translate

Const NO_SUBJECT$ = "[no subject]"

</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize
'Begin Do Not Translate
On Error GoTo ErrorCleanup

Set s = New NotesSession
Set db = s.CurrentDatabase
Set view = db.GetView("($Profiles)")
Set profile = view.GetFirstDocument
If profile Is Nothing Then Exit Sub
Failed = False

Do Until profile Is Nothing
pPersonName = profile.PersonName
Dim pSendTo As Variant
pSendTo = profile.FullPersonName
pCategories = profile.ProfileCategories
pAuthors = profile.ProfileAuthors
pStrings = profile.ProfileStrings
pMyName = profile.ProfileMyName
pThreads = profile.ProfileThreads

Dim informOfAllChangedDocuments As NotesItem
Dim informOfAllChangedDocumentsText As String
informOfAllChangedDocumentsText = NO
Set informOfAllChangedDocuments = profile.Getfirstitem("ProfileAllDocuments")
If (Not informOfAllChangedDocuments Is Nothing) Then
informOfAllChangedDocumentsText = informOfAllChangedDocuments.Text
End If

If (informOfAllChangedDocumentsText = YES) Then
Set collection = db.UnprocessedDocuments

Set tmpDoc = collection.getFirstDocument
Do Until tmpDoc Is Nothing
Set formItem = tmpDoc.getFirstItem("form")
If Not ((formItem.Text = "MainTopic") Or (formItem.Text = "Response")) Then
Set delDoc = tmpDoc
Set tmpDoc = collection.getNextDocument(tmpDoc)
Call collection.DeleteDocument(delDoc)
Call s.UpdateProcessedDoc(delDoc)
Else
Set tmpDoc = collection.getNextDocument(tmpDoc)
End If
Loop
Else
Dim informOfAllChangesInMyThreads As NotesItem
Dim informOfAllChangesInMyThreadsText As String
informOfAllChangesInMyThreadsText = NO
Set informOfAllChangesInMyThreads = profile.Getfirstitem("ProfileParticipatedThreads")
If (Not informOfAllChangesInMyThreads Is Nothing) Then
informOfAllChangesInMyThreadsText = informOfAllChangesInMyThreads.Text
End If

If (informOfAllChangesInMyThreadsText = YES) Then
Dim byAuthorView As NotesView
Dim dc As NotesDocumentCollection
Set byAuthorView = db.GetView("AuthorView")
Dim nam2 As NotesName
Set nam2 = s.CreateName(profile.FullPersonName(0))
Set dc = byAuthorView.GetAllDocumentsByKey(nam2.Abbreviated, True)

Set tmpDoc = dc.getFirstDocument

Do Until tmpDoc Is Nothing
Dim threadId As NotesItem
Set threadId = tmpDoc.getFirstItem("ThreadId")
If Not threadId Is Nothing Then
If Not ContainsThread(threadId.Text) Then

pThreads = AddThread(threadId.Text, pThreads)

End If
End If
Set tmpDoc = dc.Getnextdocument(tmpDoc)
Loop
End If

If pCategories(0) = "" And pAuthors(0) = "" And pStrings(0) = "" And pMyName(0) = "" And pThreads(0) = "" Then
'if all the fields are blank, don't bother to search
Else
' full text search doesn't seem to work anymore
'If db.IsFTIndexed = True Then
' DoFTSearch
'Else
DoFormulaSearch
'End If
End If
End If

If (Not collection Is Nothing) Then
If (collection.Count &gt; 0) Then
Dim configView As NotesView
Dim configDoc As NotesDocument
Dim mailSubjectString As String
Dim docMail As NotesDocument
Dim mailBody As NotesRichTextItem

Set docMail = db.createdocument
docMail.Form = "Memo"
docMail.From = s.UserName
docMail.Principle = s.UserName
docMail.SendTo = pSendTo(0)
docMail.Recipients = pPersonName(0)
docMail.PostedDate = Now

Dim linkTypeText As String
linkTypeText = WEB_URLS
Set configView = db.GetView("($xpConfigProfile)")
Set configDoc = configView.getFirstDocument
If Not configDoc Is Nothing Then
Dim linkTypeItem As NotesItem

Set linkTypeItem = configDoc.Getfirstitem("mailLinkType")
If (Not linkTypeItem Is Nothing) Then
linkTypeText = linkTypeItem.Text
End If
End If

mailSubjectString = getstring(33) &amp; db.Title
If Not configDoc Is Nothing Then
Dim item As NotesItem
Set item = configDoc.GetFirstItem("mailSubject")
If (Not item Is Nothing) Then
mailSubjectString = item.Text
If (mailSubjectString = "") Then
mailSubjectString = getstring(33) &amp; db.Title
End If
End If
End If
docMail.Subject = mailSubjectString

Dim body As NotesMIMEEntity
Dim stream As NotesStream
Dim bodyString As String

If Not configDoc Is Nothing Then
If (linkTypeText = NOTES_LINKS) Then
Set mailBody = docMail.CreateRichTextItem("Body")
Dim mailHeader As NotesRichTextItem
Set mailHeader = configDoc.Getfirstitem("mailHeader")
If (Not mailHeader Is Nothing) Then
Call mailBody.AppendRTItem(mailHeader)
End If
Call mailBody.AddNewLine(2)
Else
s.ConvertMIME = False
Set stream = s.CreateStream
Set body = docMail.CreateMIMEEntity

Dim mailHeaderHTML As NotesItem
Set mailHeaderHTML = configDoc.Getfirstitem("mailHeaderHTML")
If (Not mailHeaderHTML Is Nothing) Then
bodyString = mailHeaderHTML.Text
End If
bodyString = bodyString + "&lt;br&gt;"
End If
End If

Dim insertAbstractsItem As NotesItem
Dim insertAbstractsText As String
insertAbstractsText = NO
Set insertAbstractsItem = configDoc.Getfirstitem("mailInsertAbstracts")
If (Not insertAbstractsItem Is Nothing) Then
insertAbstractsText = insertAbstractsItem.Text
End If

Dim webURLItem As NotesItem
Dim webURLText As String
Set webURLItem = configDoc.Getfirstitem("mailWebURL")
If (Not webURLItem Is Nothing) Then
webURLText = webURLItem.Text
End If

Dim doc As NotesDocument
Set doc = collection.getFirstDocument
Do Until doc Is Nothing

Dim docItem As NotesItem
Set docItem = doc.GetFirstItem("Subject")
Dim docSubjectString As String
docSubjectString = NO_SUBJECT
If (Not docItem Is Nothing) Then
If (docItem.Text = "") Then
docSubjectString = NO_SUBJECT
Else
docSubjectString = docItem.Text
End If
End If

Dim fromItem As NotesItem
Set fromItem = doc.GetFirstItem("From")
Dim fromString As String
If (Not fromItem Is Nothing) Then
fromString = fromItem.Text
End If
Dim nam As NotesName
Set nam = s.CreateName(fromString)
fromString = nam.Common

If (linkTypeText = NOTES_LINKS) Then
Call mailBody.AppendDocLink(doc, docSubjectString)
Call mailBody.AppendText(" ")
Call mailBody.AppendText(docSubjectString + " (" + fromString + ")")
Call mailBody.AddNewLine(1)

If (insertAbstractsText = YES) Then
Dim docAbstractItem As NotesItem
Set docAbstractItem = doc.GetFirstItem("Abstract")
If (Not docAbstractItem Is Nothing) Then
If (Not docAbstractItem.Text = "") Then
Call mailBody.AppendText(docAbstractItem.Text)
Call mailBody.AddNewLine(2)
Else
Call mailBody.AddNewLine(1)
End If
Else
Call mailBody.AddNewLine(1)
End If
End If
Else
Dim docUNID As String
docUNID = doc.Universalid
bodyString = bodyString + "&lt;br&gt;" + "&lt;a href=" + webURLText + "/topicThread.xsp?action=openDocument&amp;documentId=" + docUNID + "&gt;" + docSubjectString + "&lt;/a&gt;" + " (" + fromString + ")"

If (insertAbstractsText = YES) Then
Dim docAbstract2Item As NotesItem
Set docAbstract2Item = doc.GetFirstItem("Abstract")
If (Not docAbstract2Item Is Nothing) Then
If (Not docAbstract2Item.Text = "") Then
bodyString = bodyString + "&lt;br&gt;" + docAbstract2Item.Text + "&lt;br&gt;"
Else
bodyString = bodyString + "&lt;br&gt;"
End If
Else
bodyString = bodyString + "&lt;br&gt;"
End If
End If
End If
Set doc = collection.getNextDocument(doc)
Loop

If Not configDoc Is Nothing Then
If (linkTypeText = NOTES_LINKS) Then
Dim mailFooter As NotesRichTextItem
Set mailFooter = configDoc.Getfirstitem("mailFooter")
If (Not mailFooter Is Nothing) Then
Call mailBody.AddNewLine(1)
Call mailBody.AppendRTItem(mailFooter)
End If
Else
Dim mailFooterHTML As NotesItem
Set mailFooterHTML = configDoc.Getfirstitem("mailFooterHTML")
If (Not mailFooterHTML Is Nothing) Then
bodyString = bodyString + "&lt;br&gt;&lt;br&gt;" + mailFooterHTML.Text
End If
End If
End If

If (linkTypeText = NOTES_LINKS) Then
Call docMail.send(False)
Else
Call stream.WriteText (bodyString)
Call body.SetContentFromText (stream, "text/html;charset=iso-8859-1",ENC_IDENTITY_8BIT)
Call docMail.send(False)
s.ConvertMIME = True
End If
End If
End If
Set profile = view.GetNextDocument(profile)
Loop

Set collection = db.UnprocessedDocuments
Dim n As Integer
For n = 1 To collection.Count
Set note = collection.GetNthDocument(n)
Call s.UpdateProcessedDoc(note)
Next

Exit Sub

ErrorCleanup:
Exit Sub
'End Do Not Translate
End Sub

</lotusscript></code><code event='DoFTSearch'><lotusscript>Sub DoFTSearch
'Begin Do Not Translate
searchtype = "FT"
totalquery = ""

ForAll n In pCategories
BuildTextList(n)
End ForAll
If textlist &lt;&gt; "" Then
query = "field Categories contains (" &amp; textlist &amp; ")"
BuildTotalQuery
End If

ForAll n In pAuthors
BuildTextList(n)
If textlist &lt;&gt; "" Then
query = "field AbbreviateFrom contains " &amp; textlist &amp; " Or field AltFrom contains " &amp; textlist
BuildTotalQuery
End If
End ForAll

ForAll n In pStrings
BuildTextList(n)
End ForAll
If pMyName(0) &lt;&gt; "" Then
ForAll n In pPersonName
BuildTextList(n)
End ForAll
End If
If textlist &lt;&gt; "" Then
query = "field Body contains (" &amp; textlist &amp; ") or field Subject contains (" &amp; textlist &amp; ")"
BuildTotalQuery
End If

ForAll n In pThreads
BuildTextList(n)
End ForAll
If textlist &lt;&gt; "" Then
query = "field ThreadId contains (" &amp; textlist &amp; ")"
BuildTotalQuery
End If

totalquery = totalquery &amp; " and (not(field form contains log, profile))"

Set collection = db.UnprocessedFTSearch(totalquery, 0)
'End Do Not Translate
End Sub

</lotusscript></code><code event='DoFormulaSearch'><lotusscript>

Sub DoFormulaSearch
'Begin Do Not Translate
searchtype = "Formula"
totalquery = ""

If pCategories(0) &lt;&gt; "" Then
ForAll n In pCategories
BuildTextList(n)
End ForAll
If textlist &lt;&gt; "" Then
query = "(@Contains(@UpperCase(Categories); @UpperCase(" &amp; textlist &amp;_
")) | @AllDescendants)"
BuildTotalQuery
End If
End If

If pAuthors(0) &lt;&gt; "" Then
ForAll n In pAuthors
BuildTextList(n)
End ForAll
If textlist &lt;&gt; "" Then
query = "@Contains(@UpperCase(AbbreviateFrom); @UpperCase(" &amp; textlist &amp; ")) | @Contains(@UpperCase(AltFrom); @UpperCase(" &amp; textlist &amp; "))"
BuildTotalQuery
End If
End If

If pStrings(0) &lt;&gt; "" Then
ForAll n In pStrings
BuildTextList(n)
End ForAll
If textlist &lt;&gt; "" Then
query = "@Contains(@UpperCase(Body); @UpperCase(" &amp; textlist &amp;_
")) | @Contains(@UpperCase(Subject); @UpperCase(" &amp; textlist &amp; "))"
BuildTotalQuery
End If
End If

If pMyName(0) &lt;&gt; "" Then
query = "@Contains(@UpperCase(Body); @UpperCase(" &amp; """" &amp; pPersonName(0) &amp; """" &amp;_
")) | @Contains(@UpperCase(Subject); @UpperCase(" &amp; """" &amp; pPersonName(0) &amp; """" &amp; "))"
BuildTotalQuery
End If

If pThreads(0) &lt;&gt; "" Then
ForAll n In pThreads
BuildTextList(n)
End ForAll
If textlist &lt;&gt; "" Then
query = "@Contains(@UpperCase(ThreadId); @UpperCase(" &amp; textlist &amp; "))"
BuildTotalQuery
End If
End If

totalquery = totalquery &amp; " &amp; @isavailable(NewsletterSubject) &amp; (!@Contains(Form; ""Log"" : ""Profile"")) &amp; (readers = """")"

Set collection = db.UnprocessedSearch(totalquery, Nothing, 0)
'End Do Not Translate
End Sub

</lotusscript></code><code event='BuildTextList'><lotusscript>Sub BuildTextList(n As Variant)
'Begin Do Not Translate
If searchtype = "FT" Then
If textlist = "" Then
textlist = n
Else
textlist = textlist &amp; ", " &amp; n
End If
Else
Dim nvalue As String
nvalue = """" &amp; n &amp; """"
If textlist = "" Then
textlist = nvalue
Else
textlist = textlist &amp; " : " &amp; nvalue
End If
End If
'End Do Not Translate
End Sub

</lotusscript></code><code event='BuildTotalQuery'><lotusscript>Sub BuildTotalQuery
'Begin Do Not Translate
If totalquery = "" Then
totalquery = query
Else
If searchtype = "FT" Then
totalquery = totalquery &amp; " or " &amp; query
Else
totalquery = totalquery &amp; " | " &amp; query
End If
query = ""
End If

textlist = ""
'End Do Not Translate
End Sub

</lotusscript></code><code event='ContainsThread'><lotusscript>Function ContainsThread(thread As String) As Integer
'Begin Do Not Translate
Dim out As Integer
out = False

ForAll entry In pThreads
If (entry = thread) Then
out = True
End If
End ForAll

ContainsThread = out
'End Do Not Translate
End Function

</lotusscript></code><code event='AddThread'><lotusscript>

Function AddThread (Value As Variant, ValueList As Variant)
'Begin Do Not Translate
Dim tmpValueList As Variant
Dim i As Integer
Dim x As Integer

ReDim tmpValueList(UBound(ValueList))

For i = 0 To UBound(ValueList)
tmpValueList(i) = ValueList(i)
Next

If UBound(tmpValueList) = 0 And CStr(tmpValueList(0)) = "" Then
x = 0
Else
x = UBound(tmpValueList) + 1
End If
ReDim Preserve tmpValueList(x)
tmpValueList(x) = Value

AddThread = tmpValueList
'End Do Not Translate
End Function</lotusscript></code>
<rundata processeddocs='0' exitcode='0'>
<agentmodified><datetime>20091111T051227,60-05</datetime></agentmodified></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\Agents\Upgrade Content to Version 8.5 .lsa
************************************************************************
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE agent SYSTEM 'xmlschemas/domino_8_5_1.dtd'>
<agent name='Upgrade Content to Version 8.5 ' alias=' agUpgrade' xmlns='http://www.lotus.com/dxl'
version='8.5' maintenanceversion='1.0' replicaid='85257656001B3035' hide='web v3'
publicaccess='false' designerversion='7' comment='Create abstracts for XPages views'>
<noteinfo noteid='2aa' unid='348FE19F38E301EC8525745900154FF8' sequence='82'>
<created><datetime dst='true'>20080529T235247,28-04</datetime></created>
<modified><datetime>20100114T143443,33+00</datetime></modified>
<revised><datetime>20100114T143443,32+00</datetime></revised>
<lastaccessed><datetime>20100114T143442,77+00</datetime></lastaccessed>
<addedtofile><datetime>20100114T143156,88+00</datetime></addedtofile></noteinfo>
<updatedby><name>CN=OpenNTF Developer/O=OpenNTF</name><name>CN=Steve Castledine/OU=UK/O=IBM</name><name
>CN=OpenNTF Developer/O=OpenNTF</name></updatedby>
<revisions><datetime dst='true'>20080529T235247,44-04</datetime><datetime
dst='true'>20080529T235254,83-04</datetime><datetime dst='true'>20080529T235401,15-04</datetime><datetime
dst='true'>20080529T235507,26-04</datetime><datetime dst='true'>20080529T235540,35-04</datetime></revisions>
<wassignedby><name>CN=OpenNTF Developer/O=OpenNTF</name></wassignedby>
<designchange><datetime>20100114T143442,77+00</datetime></designchange>
<trigger type='actionsmenu'/>
<documentset type='runonce'/><code event='options'><lotusscript>%REM ////////////////////////////////////////////////////////////////////////////////////

Upgrades existing docs in discussion dbs:
Creates "Abstract" items from existing "Body" items (used in XPages views)

written: Thomas Gumz, May 2008

%END REM ////////////////////////////////////////////////////////////////////////////////

Option Public
Option Declare

Use "lsClassException"

</lotusscript></code><code event='declarations'><lotusscript>Private Const MODULE_NAME = "agUpgrade"

Public Class cUpgrade

Private m_session As NotesSession
Private m_db As NotesDatabase

'-------------
Public Sub New
'-------------

On Error Goto ERROR_HANDLER

Set m_session = New NotesSession
Set m_db = m_session.CurrentDatabase

'requires at least DESIGNER access
If Not Me.HasAccess(ACLLEVEL_DESIGNER) Then
Msgbox NEED_DESIGNER_ACCESS, MB_OK + MB_ICONEXCLAMATION, m_db.Title
Exit Sub
End If

'run the upgrade...
Call Me.CreateAbstractFromBody()

Exit Sub

ERROR_HANDLER:

Call oException.RaiseError(MODULE_NAME, Typename(Me), Null)
Exit Sub

End Sub

'-------------------------
Private Function HasAccess(iRequestedLevel As Integer) As Boolean
'-------------------------

On Error Goto ERROR_HANDLER

Dim iCurrentLevel As Integer

If m_db.CurrentAccessLevel &gt;= iRequestedLevel Then
HasAccess = True
End If

Exit Function

ERROR_HANDLER:

Call oException.RaiseError(MODULE_NAME, Typename(Me), iRequestedLevel)
Exit Function

End Function

'---------------------------------
Private Sub CreateAbstractFromBody
'---------------------------------

On Error Goto ERROR_HANDLER

Const VIEW_NAME = "xpMostRecent"
Const COL_HASABSTRACT = 5
Const ITEM_BODY = "Body"
Const ITEM_ABSTRACT = "Abstract"
Const ABSTRACT_SIZE = 300

Dim view As NotesView
Dim vecoll As NotesViewEntryCollection
Dim viewEntry As NotesViewEntry

Dim doc As NotesDocument
Dim item As NotesItem
Dim sAbstract As String
Dim sEntryCount As String
Dim lConverted As Long
Dim vCols As Variant

Set view = m_db.GetView(VIEW_NAME)
If view Is Nothing Then Error 1000, sprintf1(ERR_VIEW_NOT_FOUND, VIEW_NAME)

'bring the view up-to-date, then lock it
Call view.Refresh()
view.AutoUpdate = False

sEntryCount = Cstr(view.EntryCount)
Set vecoll = view.AllEntries()
Set viewEntry = vecoll.GetFirstEntry()

While Not(viewEntry Is Nothing)

If viewEntry.IsValid Then

'only process entries which don't yet have the new abstract item
If viewEntry.ColumnValues(COL_HASABSTRACT) = 0 Then

Set doc = viewEntry.Document

'only process docs which actually have a body item we can abstract
If doc.HasItem(ITEM_BODY) Then

Set item = doc.GetFirstItem(ITEM_BODY)
sAbstract = item.Abstract(ABSTRACT_SIZE, False, False)

'in case we're truncating/clipping the last word
If Len(sAbstract) = ABSTRACT_SIZE Then

'get the text up to the last word before the last space
sAbstract = Strleftback(sAbstract, " ", 5)

'and append ellipsis "..."
sAbstract = sprintf1(ABSTRACT_ELLIPSIS, sAbstract)

End If

'save the new abstract item
Call doc.ReplaceItemValue(ITEM_ABSTRACT, sAbstract)
Call doc.Save(True, False, True)

'log progress
lConverted = lConverted + 1
Print sprintf2(UPGRADE_PROGRESS, Cstr(lConverted), sEntryCount)

End If
End If
End If

Set viewEntry = vecoll.GetNextEntry(viewEntry)
Wend

'log status
If lConverted = 0 Then
Msgbox sprintf2("%s1\n\n%s2", UPGRADE_ALREADY_DONE, UPGRADE_NOT_AGAIN), MB_OK + MB_ICONINFORMATION, m_db.Title
Else
Msgbox sprintf2("%s1\n\n%s2", UPGRADE_COMPLETED, UPGRADE_NOT_AGAIN), MB_OK + MB_ICONINFORMATION, m_db.Title
End If

Exit Sub

ERROR_HANDLER:

Call oException.RaiseError(MODULE_NAME, Typename(Me), sAbstract)

End Sub

End Class

</lotusscript></code><code event='initialize'><lotusscript>Sub Initialize

On Error Goto ERROR_HANDLER

'Upgrade the database
Dim oUpgrade As New cUpgrade

Exit Sub

ERROR_HANDLER:

Call oException.HandleError(MODULE_NAME, "", Null)
Exit Sub

End Sub</lotusscript></code>
<rundata processeddocs='0' exitcode='0' agentdata='C495B4C618834B2A85257489000C51DC'>
<agentmodified><datetime>20081120T172120,59-05</datetime></agentmodified>
<agentrun><datetime>20081121T082222,15+00</datetime></agentrun>
<runlog>Started running agent 'Upgrade Content to Version 8.5 | agUpgrade' on 21/11/2008 08:22:11
Ran LotusScript code
Done running agent 'Upgrade Content to Version 8.5 | agUpgrade' on 21/11/2008 08:22:22
</runlog></rundata></agent>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\dbscript.lsdb
************************************************************************



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\ScriptLibraries\DiscussionRoutines.lss
************************************************************************
'++LotusScript Development Environment:2:5:(Options):0:74
Option Public


'++LotusScript Development Environment:2:5:(Forward):0:1
Declare Sub Initialize
Declare Function GetDBPath
Declare Sub InstantiateObjects

'++LotusScript Development Environment:2:5:(Declarations):0:10
Dim s As NotesSession
Dim db As NotesDatabase
Dim dbpath As String
Dim note As NotesDocument
Dim IsWebUser As Integer

'++LotusScript Development Environment:2:2:Initialize:1:10
Sub Initialize

End Sub


'++LotusScript Development Environment:2:1:GetDBPath:1:8
Function GetDBPath
'check to see if the database is in a directory and swap the slash directions
'use @Webdbname for Rnext and db.filename for pre-Rnext

Dim session As New NotesSession
Dim tmpPath As String
Dim vtmppath As Variant
Dim tmpvers As Long

tmpvers=session.Notesbuildversion

If tmpvers>174 Then
vtmppath=Evaluate("@WebDbName")
tmpPath=vtmppath(0)
Else
Set db = session.currentdatabase
vtmpPath = db.filepath
tmpPath=vtmppath
End If



Do While Instr(tmpPath,"\") > 0
tmpPath = Left$(tmpPath, Instr(tmpPath,"\")-1) + "/" + Right$(tmpPath,Len(tmpPath)-Instr(tmpPath,"\"))
Loop

'check and see if there are any embedded spaces and replace them with +
Do While Instr(tmpPath," ") > 0
tmpPath = Left$(tmpPath, Instr(tmpPath," ")-1) + "+" + Right$(tmpPath,Len(tmpPath)-Instr(tmpPath," "))
Loop

GetDbPath = tmpPath

End Function

'++LotusScript Development Environment:2:2:InstantiateObjects:1:8
Sub InstantiateObjects
Set s = New NotesSession
Set db = s.CurrentDatabase
Set note = s.documentcontext
End Sub


c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\ScriptLibraries\lsClassException.lss
************************************************************************
'++LotusScript Development Environment:2:5:(Options):0:74
%REM ////////////////////////////////////////////////////////////////////////////////////

Implements exception handling and callstack reporting

written by: Thomas Gumz

Public Class cException
Public Sub New
Public Sub RaiseError(sModule As String, sClass As String, vOptional As Variant)
Public Sub HandleError(sModule As String, sClass As String, vOptional As Variant)

%END REM ////////////////////////////////////////////////////////////////////////////////

Option Declare

Use "lsResources"

%INCLUDE "lserr.lss"
%INCLUDE "lsconst.lss"
%INCLUDE "lsxbeerr.lss"

'++LotusScript Development Environment:2:5:(Forward):0:1
Declare Public Class cException
Declare Private Function HasUI As Boolean
Declare Sub Initialize
Declare Private Function Sprintf(sFormat As String, sData As String) As String
Declare Public Function Sprintf1(sFormat As String, sData1 As String) As String
Declare Public Function Sprintf2(sFormat As String, sData1 As String, sData2 As String) As String
Declare Public Function Sprintf3(sFormat As String, sData1 As String, sData2 As String, sData3 As String) As String
Declare Public Function Sprintf4(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String) As String
Declare Public Function Sprintf5(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String) As String
Declare Public Function Sprintf6(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String, sData6 As String) As String
Declare Public Function Sprintf7(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String, sData6 As String, sData7 As String) As String
Declare Public Function Sprintf8(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String, sData6 As String, sData7 As String, sData8 As String) As String
Declare Public Function Sprintf9(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String, sData6 As String, sData7 As String, sData8 As String, sData9 As String) As String
Declare Public Function Sprintf10(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String, sData6 As String, sData7 As String, sData8 As String, sData9 As String, sData10 As String) As String

'++LotusScript Development Environment:2:5:(Declarations):0:10
Private Const MODULE_NAME = "lsClassException"

Public Const SPRINTF_SEP = "|"

Public CR As String
Public LF As String
Public CRLF As String
Public TABCHAR As String

Public oException As cException 'globally available object instance

Public Class cException

Private m_Session As NotesSession
Private m_lStackFrame As Long
Private m_aCallStack() As String
Private m_sAdditional As String
Private m_sCaption As String

'-------------
Public Sub New
'-------------

Set m_session = New NotesSession
m_sCaption = sprintf1(ERR_CAPTION, m_session.CurrentDatabase.Title)

End Sub

'--------------------
Public Sub RaiseError(sModule As String, sClass As String, vOptional As Variant)
'--------------------

Call Me.ProcessError(sModule, sClass, Getthreadinfo(LSI_THREAD_CALLPROC), Error, Err, Erl, vOptional)
Error Err, Error 're-issue error to bubble it up in the chain...

End Sub

'---------------------
Public Sub HandleError(sModule As String, sClass As String, vOptional As Variant)
'---------------------

On Error Goto ERROR_HANDLER

Dim sMessage As String

Call Me.ProcessError(sModule, sClass, Getthreadinfo(LSI_THREAD_CALLPROC), Error, Err, Erl, vOptional)

'now that the error is handled, reset the callstack frame and error code...
m_lStackFrame = 0
Err = 0

If HasUI() = True Then

sMessage = Join(m_aCallStack, CR)
If Len(m_sAdditional) > 0 Then
sMessage = sMessage + m_sAdditional
End If
Msgbox sMessage, MB_OK + MB_ICONSTOP, m_sCaption

Else

Forall sStack In m_aCallStack
Msgbox sStack
End Forall
If Len(m_sAdditional) > 0 Then
Msgbox m_sAdditional
End If

End If

Exit Sub

ERROR_HANDLER:

Dim sMsg1 As String
Dim sMsg2 As String
Dim sMsg3 As String

sMsg1 = sprintf2(ERR_FORMAT_LOCATION, Error, Cstr(Err)) & CR & CR
sMsg2 = sprintf4(ERR_FORMAT_CLASS, MODULE_NAME, Typename(Me), Getthreadinfo(LSI_THREAD_PROC), Cstr(Erl)) & CR & CR
sMsg3 = Join(m_aCallStack, CR)
sMessage = sMsg1 + sMsg2 + sMsg3

Msgbox sMessage, MB_OK + MB_ICONSTOP, m_sCaption
End

End Sub

'-----------------------
Private Sub ProcessError(sModule As String, sClass As String, sFunction As String, sError As String, lErr As Long, lLine As Long, vOptional As Variant)
'-----------------------

On Error Goto ERROR_HANDLER

Dim sStackHeader As String
Dim sStackFrame As String

If m_lStackFrame = 0 Then

sStackHeader = sprintf2(ERR_FORMAT_LOCATION, sError, Cstr(lErr)) & CR

Redim Preserve m_aCallStack(m_lStackFrame)
m_aCallStack(m_lStackFrame) = sStackHeader
m_lStackFrame = m_lStackFrame + 1

If Not Isnull(vOptional) Then
If Len(Cstr(vOptional)) > 0 Then
m_sAdditional = CR + CR + sprintf1(ERR_ADDITIONAL_INFO, CR + Cstr(vOptional))
End If
End If

End If

If sClass = "" Then
sStackFrame = sprintf3(ERR_FORMAT_MODULE, sModule, sFunction, Cstr(lLine))
Else
sStackFrame = sprintf4(ERR_FORMAT_CLASS, sModule, sClass, sFunction, Cstr(lLine))
End If

If m_lStackFrame = 1 Then
sStackFrame = sStackFrame + "<---[Fault]" 'mark the offending call
End If

Redim Preserve m_aCallStack(m_lStackFrame)
m_aCallStack(m_lStackFrame) = Lcase$(sStackFrame)
m_lStackFrame = m_lStackFrame + 1

Exit Sub

ERROR_HANDLER:

Dim sMessage As String
Dim sMsg1 As String
Dim sMsg2 As String

sMsg1 = sprintf2(ERR_FORMAT_LOCATION, Error, Cstr(Err)) & CR
sMsg2 = sprintf4(ERR_FORMAT_CLASS, MODULE_NAME, Typename(Me), Getthreadinfo(LSI_THREAD_PROC), Cstr(Erl)) & CR & CR
sMessage = sMsg1 + sMsg2

Msgbox sMessage, MB_OK + MB_ICONSTOP, m_sCaption
End

End Sub

End Class

'++LotusScript Development Environment:2:1:HasUI:1:8
Private Function HasUI As Boolean

On Error Goto ERROR_HANDLER

Dim oUIWorkspace As New NotesUIWorkspace

HasUI = True

Exit Function

ERROR_HANDLER:

Err = 0
Exit Function

End Function
'++LotusScript Development Environment:2:2:Initialize:1:10
Sub Initialize

'create a single globally available exception object
If oException Is Nothing Then
Set oException = New cException
End If

TABCHAR = Chr$(9)
CR = Chr$(13)
LF = Chr$(10)
CRLF = CR + LF

End Sub
'++LotusScript Development Environment:2:1:Sprintf:1:8
Private Function Sprintf(sFormat As String, sData As String) As String

'C-style sprintf() function for string formatting. Currently only %s is implemented

'hsFormat: the input string, like "In %s2 we trust, but lock your %s1"
'hsData: the keywords separated by '|', like "Car|God"

On Error Goto ERROR_HANDLER

Dim vData As Variant
Dim iCounter As Integer

Const SPRINTF_SEP = "|"

vData = Split(sData, SPRINTF_SEP, , 5)
Sprintf = Replace(sFormat, "\n", CRLF)

For iCounter = 0 To Ubound(vData)
Sprintf = Replace(Sprintf, "%s" & iCounter + 1, vData(iCounter), , 1, 5)
Next iCounter

Exit Function

ERROR_HANDLER:

'can't use the oException object, circular reference
Msgbox "ERROR " & Error$ & " in line " & Erl & " in Sprintf(" & sFormat & ", " & sData & ")"
Exit Function

End Function


'++LotusScript Development Environment:2:1:Sprintf1:1:8
Public Function Sprintf1(sFormat As String, sData1 As String) As String

'1 argument wrapper for sprintf
Sprintf1 = Sprintf( _
sFormat, _
sData1)

End Function
'++LotusScript Development Environment:2:1:Sprintf2:1:8
Public Function Sprintf2(sFormat As String, sData1 As String, sData2 As String) As String

'2 argument wrapper for sprintf
Sprintf2 = Sprintf( _
sFormat, _
sData1 + SPRINTF_SEP + _
sData2)

End Function
'++LotusScript Development Environment:2:1:Sprintf3:1:8
Public Function Sprintf3(sFormat As String, sData1 As String, sData2 As String, sData3 As String) As String

'3 argument wrapper for sprintf
Sprintf3 = Sprintf( _
sFormat, _
sData1 + SPRINTF_SEP + _
sData2 + SPRINTF_SEP + _
sData3)

End Function
'++LotusScript Development Environment:2:1:Sprintf4:1:8
Public Function Sprintf4(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String) As String

'4 argument wrapper for sprintf
Sprintf4 = Sprintf( _
sFormat, _
sData1 + SPRINTF_SEP + _
sData2 + SPRINTF_SEP + _
sData3 + SPRINTF_SEP + _
sData4)

End Function
'++LotusScript Development Environment:2:1:Sprintf5:1:8
Public Function Sprintf5(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String) As String

'5 argument wrapper for sprintf
Sprintf5 = Sprintf( _
sFormat, _
sData1 + SPRINTF_SEP + _
sData2 + SPRINTF_SEP + _
sData3 + SPRINTF_SEP + _
sData4 + SPRINTF_SEP + _
sData5)

End Function
'++LotusScript Development Environment:2:1:Sprintf6:1:8
Public Function Sprintf6(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String, sData6 As String) As String

'6 argument wrapper for sprintf
Sprintf6 = Sprintf( _
sFormat, _
sData1 + SPRINTF_SEP + _
sData2 + SPRINTF_SEP + _
sData3 + SPRINTF_SEP + _
sData4 + SPRINTF_SEP + _
sData5 + SPRINTF_SEP + _
sData6)

End Function
'++LotusScript Development Environment:2:1:Sprintf7:1:8
Public Function Sprintf7(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String, sData6 As String, sData7 As String) As String

'7 argument wrapper for sprintf
Sprintf7 = Sprintf( _
sFormat, _
sData1 + SPRINTF_SEP + _
sData2 + SPRINTF_SEP + _
sData3 + SPRINTF_SEP + _
sData4 + SPRINTF_SEP + _
sData5 + SPRINTF_SEP + _
sData6 + SPRINTF_SEP + _
sData7)

End Function
'++LotusScript Development Environment:2:1:Sprintf8:1:8
Public Function Sprintf8(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String, sData6 As String, sData7 As String, sData8 As String) As String

'8 argument wrapper for sprintf
Sprintf8 = Sprintf( _
sFormat, _
sData1 + SPRINTF_SEP + _
sData2 + SPRINTF_SEP + _
sData3 + SPRINTF_SEP + _
sData4 + SPRINTF_SEP + _
sData5 + SPRINTF_SEP + _
sData6 + SPRINTF_SEP + _
sData7 + SPRINTF_SEP + _
sData8)

End Function
'++LotusScript Development Environment:2:1:Sprintf9:1:8
Public Function Sprintf9(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String, sData6 As String, sData7 As String, sData8 As String, sData9 As String) As String

'9 argument wrapper for sprintf
Sprintf9 = Sprintf( _
sFormat, _
sData1 + SPRINTF_SEP + _
sData2 + SPRINTF_SEP + _
sData3 + SPRINTF_SEP + _
sData4 + SPRINTF_SEP + _
sData5 + SPRINTF_SEP + _
sData6 + SPRINTF_SEP + _
sData7 + SPRINTF_SEP + _
sData8 + SPRINTF_SEP + _
sData9)

End Function
'++LotusScript Development Environment:2:1:Sprintf10:1:8
Public Function Sprintf10(sFormat As String, sData1 As String, sData2 As String, sData3 As String, sData4 As String, sData5 As String, sData6 As String, sData7 As String, sData8 As String, sData9 As String, sData10 As String) As String

'10 argument wrapper for sprintf
Sprintf10 = Sprintf( _
sFormat, _
sData1 + SPRINTF_SEP + _
sData2 + SPRINTF_SEP + _
sData3 + SPRINTF_SEP + _
sData4 + SPRINTF_SEP + _
sData5 + SPRINTF_SEP + _
sData6 + SPRINTF_SEP + _
sData7 + SPRINTF_SEP + _
sData8 + SPRINTF_SEP + _
sData9 + SPRINTF_SEP + _
sData10)

End Function


c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\ScriptLibraries\lsResources.lss
************************************************************************
'++LotusScript Development Environment:2:5:(Options):0:74
Option Public
Option Declare

'strings for exception handling UI
Const ERR_CAPTION = "Notes error in '%s1':"
Const ERR_FORMAT_LOCATION = "%s1 (#%s2) in:"
Const ERR_FORMAT_MODULE = "%s1: %s2 (line %s3)"
Const ERR_FORMAT_CLASS = "%s1: %s2::%s3 (line %s4)"
Const ERR_ADDITIONAL_INFO = "Additional Info: %s1"

Const ERR_VIEW_NOT_FOUND = "Unable to open view %s1: View not found"

Const UPGRADE_PROGRESS = "Upgrading %s1 of %s2 documents, please wait..."
Const UPGRADE_COMPLETED = "Upgrade sucessfully completed."
Const UPGRADE_ALREADY_DONE = "All documents were already up to date."
Const UPGRADE_NOT_AGAIN = "Note: You do not need to run this upgrade agent again."
Const ABSTRACT_ELLIPSIS = "%s1 ..."
Const NEED_DESIGNER_ACCESS = "You must have at least 'Designer' ACL rights in order to run this upgrade"

'used in "($Subscription)" and "($Replication)" forms
Const COMPILE_SUCCESS_TITLE = "Compiled Successfully"
Const COMPILE_SUCCESS_BODY = "There are no syntax errors, the formula compiled successfully."
Const COMPILE_FAILURE_TITLE = "Syntax Error"
Const COMPILE_FAILURE_BODY = "There is at least one syntax error in the formula. It did not compile."
Const COMPILE_FAILURE_SAVE_BODY = "There is at least one syntax error in the formula. This document could not be saved."

'++LotusScript Development Environment:2:5:(Forward):0:1

'++LotusScript Development Environment:2:5:(Declarations):0:2




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\ScriptLibraries\wStringResource.lss
************************************************************************
'++LotusScript Development Environment:2:5:(Options):0:74
Option Public

'++LotusScript Development Environment:2:5:(Forward):0:1
Declare Function GetString ( StringType As Integer) As String

'++LotusScript Development Environment:2:5:(Declarations):0:2

'++LotusScript Development Environment:2:1:GetString:1:8
Function GetString ( StringType As Integer) As String
'
Select Case StringType
Case 1 ' WebAddtopic, WebExpire
GetString = "Back to Previous Document"
Case 2 ' WebAddtopic, WebExpire, WebRemoveThread
GetString = "All Documents"
Case 3 ' WebAddtopic, WebExpire, WebRemoveThread
GetString = "by Category"
Case 4 ' WebAddtopic, WebExpire, WebRemoveThread
GetString = "by Author"
Case 5 ' WebAddtopic, WebExpire, WebRemoveThread
GetString = "by Alternate Name"
Case 6 ' WebAddtopic
GetString = "This document is not identified as a thread. Contact the database manager if you want all threads initialized."
Case 7 ' WebAddtopic
GetString = "This topic is already in your Interest Profile."
Case 8 ' WebAddtopic
GetString = "has been added to your Interest Profile. You will be notified by mail when new responses appear in this topic."
Case 9 ' WebArchiveSaveSettings
GetString = "You have successfully updated the Archive settings for this database. "
Case 10 'WebArchiveSaveSettings
getString = "Done"
' Case 11 ' WebDelete
' GetString = "The document has been deleted."
Case 12 ' WebExpire
GetString = " cannot be marked for expiration." ' leave the leading space..
Case 13 ' WebExpire
GetString = "The document's expiration date has been removed."
Case 14 ' WebExpire
GetString = "The current document has been marked for expiration."
Case 15 ' WebRemoveThread
GetString = "Back to Interest Profile"
Case 16 ' WebRemoveThread
GetString = "Profile document could not be found."
Case 17 ' WebRemoveThread
GetString = "The requested thread(s) have been removed from your Interest Profile."
Case 18 ' WebArchiveSubmit
GetString = "A problem was encountered while creating the archive database. Specified database may already exist or your database creation rights are limited."
Case 19 'WebArchiveSubmit
GetString = "You can only create an archive database on the Domino server that you are currently running on via a web browser. To create a database on a different server, use the Domino Designer client."
Case 20 'WebArchiveSubmit
GetString = "Archive Profile has been updated."
Case 21 'WebArchiveSave
GetString = "You will need to specify a location of the archive database before you can archive documents."
Case 22 'An error that we are not specifically handling
GetString = Err & " - " & Error
Case 23 'WebEditArchiveProfile
GetString = "Manager or Designer access is required to perform Archiving tasks."
Case 24 'Error message in WebRemoveThread agent for empty selection
GetString = "No threads were selected to remove from the Interest Profile."
Case 25 'Used in WebAddTopic agent
GetString = "Untitled - "
Case 26 'Used in WebAddTopic agent
GetString = "Untitled topic "
' Case 27 'used in WebDelete agent
' GetString = "You are not authorized to delete the document."
Case 28 'used for Web navigation
GetString = "By Date"
Case 29 'used for Web navigation
getString = "Mission/Team Members"
Case 30 'used for Web navigation
getString = "Go Back"
' Case 31 'used in WebDelete agent
' getstring = "You are not authorized to delete the document because you are not the document's original author."
' Case 32 'used in WebDelete agent
' getstring = "You have successfully deleted the document entitled: "
Case 33 'used in Send Newsletters agent
getstring = "Documents you requested from: "


End Select

End Function


c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\ScriptLibraries\xpAuthorProfile.jss
************************************************************************
/**
This server side script library is used by the "authorProfile" custom control.
It obtains information about the author from the authors profile document (if found)
and the number of documents authored.

The custom control just needs the FULLY QUALIFIED name of the person
like "Thomas Gumz/Westford/IBM" or "CN=Thomas Gumz/OU=Westford/O=IBM"

The name can be supplied to the control either by:
- setting the "lookupName" property, or
- including the url argument "&lookupName=" in the URL
(both the URL argument and property name is defined in KEYWORD_TOKEN below)
*/

var IMG_PLACEHOLDER = "xpPhotoPlaceholder.gif"
var VIEW_PROFILES = "xpAuthorProfiles";
var VIEW_POSTS = "xpAuthorPosts";

var COLUMN_FROM = 0;
var COLUMN_CREATED = 1;
var COLUMN_EMAIL = 2;
var COLUMN_PHONE = 3;
var COLUMN_ROLE = 4;
var COLUMN_PHOTO = 5;
var COLUMN_GOAL = 6;

var KEYWORD_TOKEN = "lookupName";

var FILTER_MAIN = ":Main";
var FILTER_RESPONSES = ":Resp";



function initAuthorProfile() {

var sLookupName:string = null;

// check if the name is supplied via a property
sLookupName = compositeData.getProperty(KEYWORD_TOKEN);

// if not, check for the URL argument
if (sLookupName == null) {
if (param.containsKey(KEYWORD_TOKEN)) {
sLookupName = param.get(KEYWORD_TOKEN);
}
}

if (sLookupName != null) {

var nNotesName:NotesName = session.createName(sLookupName);
var sCanonicalName:String = nNotesName.getCanonical();

compositeData.nameAbbreviated = nNotesName.getAbbreviated();
compositeData.categoryFilterMain = sCanonicalName + FILTER_MAIN;
compositeData.categoryFilterResponses = sCanonicalName + FILTER_RESPONSES;

getUserProfile(nNotesName);
getUserStats(nNotesName);

} else {
compositeData.profileFound = false;
}

}

function getUserProfile(name:NotesName) {

compositeData.profileFound = false;

// get the user profile information
var db:NotesDatabase;

if ((applicationScope.profileOtherDB == "Yes") | (applicationScope.profileOtherDB == "yes")) {

if (applicationScope.profileServer != "") {
db = session.getDatabase(applicationScope.profileServer, applicationScope.profileDB);
} else {
db = session.getDatabase(null, applicationScope.profileDB);
}
} else {
db = database;
}

if (db != null) {
if (db.isInService()) {

var view:NotesView = db.getView(VIEW_PROFILES);
view.setAutoUpdate(false);
var entry:NotesViewEntry = view.getEntryByKey(name.getCanonical(), true);

if (entry != null) {

var cols = entry.getColumnValues();

compositeData.name = name.getCommon();
compositeData.nameAbbreviated = name.getAbbreviated();
compositeData.created = cols[COLUMN_CREATED];
compositeData.email = cols[COLUMN_EMAIL];
compositeData.phone = cols[COLUMN_PHONE];
compositeData.role = cols[COLUMN_ROLE];
compositeData.goal = cols[COLUMN_GOAL];
compositeData.profileFound = true;

if (applicationScope.profileDB == "") {
compositeData.photoURL = getPhotoURL(cols[COLUMN_PHOTO]);
} else {
// tbd: how can I find out protocol here? context is not available here
compositeData.photoURL = applicationScope.profileURL + "/" + getPhotoURL(cols[COLUMN_PHOTO]);
}
}
}
}
}


function getUserStats(name:NotesName) {

// get the total number of main posts and response posts for the author

var db:NotesDatabase = database;
var view:NotesView = db.getView(VIEW_POSTS);
view.setAutoUpdate(false);
var nav:NotesViewNavigator;

nav = view.createViewNavFromCategory(compositeData.categoryFilterMain);
if (nav != null) {compositeData.postsMain = nav.getCount()}

nav = view.createViewNavFromCategory(compositeData.categoryFilterResponses);
if (nav != null) {compositeData.postsResponses = nav.getCount()}
}


function getPhotoURL(sFileName:string):string {

// build the URL for the photo (or the placeholder)
/*
var imageName:String = IMG_PLACEHOLDER;
if(!profileDoc.isNewNote()){
var al:java.util.List = profileDoc.getAttachmentList("attachment");
if(!al.isEmpty()){
var eo:NotesEmbeddedObject = al.get(0);
imageName = eo.getHref();
}
}
return(imageName);
*/

var sPhotoURL:string;

if (sFileName.length() > 0) {
sPhotoURL = entry.getUniversalID() + "/$file/" + sFileName;
} else {
sPhotoURL = IMG_PLACEHOLDER;
}
return sPhotoURL;
}



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\ScriptLibraries\xpCGIVariables.jss
************************************************************************
/*
This server side script library implements a class named "CGIVariables" which allows for easy access
to most CGI variables in XPages via javascript.

For example, to dump the remote users name, IP address and browser string to the server console, use:
Note: CGI variable names are case insensitive, so both "REMOTE_USER" or "Remote_User" etc. will work.

var cgi = new CGIVariables();
print ("Username: " + cgi.get("REMOTE_USER"));
print ("Address : " + cgi.get("REMOTE_ADDR"));
print ("Browser : " + cgi.get("HTTP_USER_AGENT"));

@author Thomas Gumz, IBM
@created 7/01/2008
@modified 6/26/2009
@version 2.0
*/

var CGIVariables = function () {

function _get(name) {

switch (name.toUpperCase()) {

case "AUTH_TYPE": return facesContext.getExternalContext().getRequest().getAuthType();
case "CONTENT_LENGTH": return facesContext.getExternalContext().getRequest().getContentLength();
case "CONTENT_TYPE": return facesContext.getExternalContext().getRequest().getContentType();
case "CONTEXT_PATH": return facesContext.getExternalContext().getRequest().getContextPath();
case "GATEWAY_INTERFACE": return "CGI/1.1";
case "HTTPS": return facesContext.getExternalContext().getRequest().isSecure() ? "ON" : "OFF";
case "PATH_INFO": return facesContext.getExternalContext().getRequest().getPathInfo();
case "PATH_TRANSLATED": return facesContext.getExternalContext().getRequest().getPathTranslated();
case "QUERY_STRING": return facesContext.getExternalContext().getRequest().getQueryString();
case "REMOTE_ADDR": return facesContext.getExternalContext().getRequest().getRemoteAddr();
case "REMOTE_HOST": return facesContext.getExternalContext().getRequest().getRemoteHost();
case "REMOTE_USER": return facesContext.getExternalContext().getRequest().getRemoteUser();
case "REQUEST_METHOD": return facesContext.getExternalContext().getRequest().getMethod();
case "REQUEST_SCHEME": return facesContext.getExternalContext().getRequest().getScheme();
case "REQUEST_URI": return facesContext.getExternalContext().getRequest().getRequestURI();
case "SCRIPT_NAME": return facesContext.getExternalContext().getRequest().getServletPath();
case "SERVER_NAME": return facesContext.getExternalContext().getRequest().getServerName();
case "SERVER_PORT": return facesContext.getExternalContext().getRequest().getServerPort();
case "SERVER_PROTOCOL": return facesContext.getExternalContext().getRequest().getProtocol();
case "SERVER_SOFTWARE": return facesContext.getExternalContext().getContext().getServerInfo();

// these are not really CGI variables, but useful, so lets just add them for convenience

case "HTTP_ACCEPT": return facesContext.getExternalContext().getRequest().getHeader("Accept");
case "HTTP_ACCEPT_ENCODING": return facesContext.getExternalContext().getRequest().getHeader("Accept-Encoding");
case "HTTP_ACCEPT_LANGUAGE": return facesContext.getExternalContext().getRequest().getHeader("Accept-Language");
case "HTTP_CONNECTION": return facesContext.getExternalContext().getRequest().getHeader("Connection");
case "HTTP_COOKIE": return facesContext.getExternalContext().getRequest().getHeader("Cookie");
case "HTTP_HOST": return facesContext.getExternalContext().getRequest().getHeader("Host");
case "HTTP_REFERER": return facesContext.getExternalContext().getRequest().getHeader("Referer");
case "HTTP_USER_AGENT": return facesContext.getExternalContext().getRequest().getHeader("User-Agent");
}
}

// ==========================================
// expose the public interface of this module
// ==========================================

return {
get: _get
}
}



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\ScriptLibraries\xpServerSide.jss
************************************************************************
/** Author: Tony McGuckin, IBM **/

DISPLAY_ALL_DOCUMENTS = 0;
DISPLAY_BY_MOST_RECENT = 1;
DISPLAY_BY_AUTHOR = 2;
DISPLAY_BY_TAG = 3;
DISPLAY_MY_DOCUMENTS = 4;
DISPLAY_AUTHOR_PROFILE = 5;
DISPLAY_TOPIC_THREAD = 6;

DEFAULT_ROW_COUNT = 25;

//-----------
function init() { // setup sessionScope defaults...
//-----------

initSession();
initCustomBranding();

} // end init

//------------------
function initSession() { // setup sessionScope defaults...
//------------------

// we need to do this EVERY TIME
if(sessionScope.effectiveUserName !== session.getEffectiveUserName()) {

// (re)cache current user name and ACL info (in case user login credetials change from anonymous to a real login)

var _request = facesContext.getExternalContext().getRequest();
var _cookies = _request.getHeader("Cookie"); //dnt
var _canonicalName = session.getEffectiveUserName();
var _nn:NotesName = session.createName(_canonicalName);

sessionScope.isSessionAuth = @Contains(_cookies, "DomAuthSessId") === 1 ? true : false; //dnt
sessionScope.effectiveUserName = _canonicalName;
sessionScope.commonUserName = _nn.getCommon();
sessionScope.abbreviatedUserName = _nn.getAbbreviated();
sessionScope.isAnonymous = sessionScope.effectiveUserName === "Anonymous"; //dnt
sessionScope.aclPrivileges = database.queryAccessPrivileges(sessionScope.effectiveUserName);
}

// everything else needs to be done only ONCE, so if we're already initialized, get out.
if(sessionScope.initApp === true) {
return;
}

sessionScope.path = facesContext.getExternalContext().getRequestContextPath();

// remember that we're initialized
sessionScope.initApp = true;

} // end initSession


//-------------------------
function initCustomBranding() {
//-------------------------

// Needs to be done only ONCE, so if we're already initialized, get out.
if (applicationScope.initCustomBranding === true) {
return;
}

var COLUMN_IMAGENAME = 0;
var COLUMN_IMAGETEXT = 1;
var COLUMN_FOOTERTEXT = 2;
var COLUMN_PROFILEDB = 3;
var COLUMN_PROFILESERVER = 4;
var COLUMN_PROFILEURL = 5;
var COLUMN_PROFILEOTHERDB = 6;

try {

// get the first entry in the view
var db:NotesDatabase = database;
var view:NotesView = db.getView("xpConfigProfile");
var vecoll:NotesViewEntryCollection = view.getAllEntries();
var entry:NotesViewEntry = vecoll.getFirstEntry();

if (entry != null) {

// skim the entry data off the view columns
var cols = entry.getColumnValues();
var sImageName = cols[COLUMN_IMAGENAME];
var sImageText = cols[COLUMN_IMAGETEXT];
var sFooterText = cols[COLUMN_FOOTERTEXT];
var sImageURL = (sImageName.length() > 0) ? (entry.getUniversalID() + "/$file/" + sImageName) : null;
var sProfileDB = cols[COLUMN_PROFILEDB];
var sProfileServer = cols[COLUMN_PROFILESERVER];
var sProfileURL = cols[COLUMN_PROFILEURL];
var sProfileOtherDB = cols[COLUMN_PROFILEOTHERDB];

// and store them as properties in the custom control
applicationScope.customImageURL = sImageURL;
applicationScope.customImageText = sImageText;
applicationScope.customFooterText = sFooterText;
applicationScope.profileDB = sProfileDB;
applicationScope.profileServer = sProfileServer;
applicationScope.profileURL = sProfileURL;
applicationScope.profileOtherDB = sProfileOtherDB;
}

// remember that we're initialized
applicationScope.initCustomBranding = true;

} catch (e) {
print (e);
}

} // end initCustomBranding

//---------------------
function setPageHistory(linkID) { // remember the current page name and title for the "back to XZY" link
//---------------------

sessionScope.historyPageName = view.getPageName();
sessionScope.historyPageTitle = getComponent(linkID).getTitle();

} // end setPageHistory

//---------------------
function setDisplayFormType(displayFormType) { // new topic or response? possible values 1 || 2
//---------------------
sessionScope.displayFormType = displayFormType;

} // end setDisplayFormType


//---------------------
function getDisplayFormType(){ // return the curent form type 1==new topic, 2==response
//---------------------
return sessionScope.displayFormType;

} // end getDisplayFormType




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\ScriptLibraries\xpTagCloudClient.js
************************************************************************
/** Author: Tony McGuckin, IBM **/

function sliderOnChange(sliderValue, sliderId) {
try{
if(!dojo.byId(sliderId)) return;
var tags = dojo.byId(sliderId).getElementsByTagName("a");
for(var i = 0; i < tags.length; i++){
var anchor = tags[i];
var classNumber = anchor.className.match(/(\d+)/); //finds the '4' in 'tagCloudSize4'
if(classNumber != null){
anchor.style.display = (classNumber[0] >= sliderValue) ? "inline" : "none";
}
}
}catch(e){
alert(e);
}
}


c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\Code\ScriptLibraries\xpTagCloudServer.jss
************************************************************************
/**

This server-side JavaScript module implements the "com_lotus_ccTagCloud"
object which is used by the "ccTagCloud" custom control.

@author Thomas Gumz, IBM
@created 1/1/09
@version 1.5
@modified 7/13/09

*/

var com_lotus_ccTagCloud = function () {

// CONST's
var LOG_OUTPUT = false;
var LOG_PREFIX = "TagCloud: "
var CSS_BASE_NAME = "tagCloudSize";

// default values
var _default = {
categoryColumn: 0, // the default column number of a categorized view to read from
maxTagLimit: 50, // the maximum amount of 'top' tags we generate
minEntryCount: null, // if null, tune the number based on the # of docs in the view
minViewCount: 50, // the minimum view entry count before we start tuning the MinEntryCount automatically
sortTags: "alphabet", // by default, tags are sorted alphabetically
slider: {
visible: false // the slider is hidden by default
},
cache: {
mode: "auto", // automatic (dynamic) cache control is the default
interval: 120 // the default cache refresh interval in seconds
}
}

// index offsets into our tag array
var _tagIndex = {
name: 0, // used to compute the link label in linkTagCloud
meta: 1, // used for requestParam links in linkTagCloud
count: 2, // used to compute the popup text in linkTagCloud
weight: 3 // used to compute the style class in linkTagCloud
}

// all other private member variables
var _database,
_viewName,
_categoryColumn,
_linkTargetPage,
_linkRequestParam,
_metaSep,
_isSliderVisible,
_cacheMode,
_cacheInterval,
_maxTagLimit,
_minEntryCount,
_computeMinEntryCount,
_sortTags,
_viewEntryCount,

_cloudSize,
_cloudArray,
_cloudCount,
_cloudTime,
_cloudInterval;

//-----------
function init() {
//-----------

// read config
getProperties();
}

//----------
function run() {
//----------

var start,
stop,
diff;

//separate multiple console outputs for better readability
log("-------------------");

// check our cache
if (isCloudCacheInvalid()) {

// start timer to measure how long it'll take to compute the cloud
start = new Date().getTime();

// do the actual work
createCloudFromView();
tuneAutoCacheInterval();

// stop timer
stop = new Date().getTime();
diff = Math.ceil((stop - start) / 1000);
log("Tag cloud for view '{0}' took {1} seconds to compute", _viewName, diff);
}

// set some properties of the custom control to be used on the page
setProperties();
}

//--------------------
function setProperties() {
//--------------------

// update 'read-only' custom properties (ie. used for a section header, etc)
compositeData.setProperty("size", _cloudSize);
compositeData.setProperty("title", I18n.format(compositeData.title, I18n.toString(_cloudSize)));
}

//--------------------
function getProperties() {
//--------------------

// first read the EXTERNAL properties defined in the xsp.properties file
getExternalXspProperties();

// then override them with db-specific properties if set
getInternalDbProperties();
}

//-------------------------------
function getExternalXspProperties() {
//-------------------------------

// check if certain settings are configured in the xsp.properties file
// either in this db in WebContent\WEB-INF\xsp.properties
// or on the server in \xsp\nsf\xsp.properties
// these values override db-specific values

// main properties
_sortTags = context.getProperty("app.tagCloud.sortTags") || _default.sortTags;
_maxTagLimit = Number(context.getProperty("app.tagCloud.maxTagLimit")) || _default.maxTagLimit;

// slider properties
_isSliderVisible = context.getProperty("app.tagCloud.slider.visible") || _default.slider.visible;

// cache properties
_cacheMode = context.getProperty("app.tagCloud.cache.mode") || _default.cache.mode;
_cacheInterval = Number(context.getProperty("app.tagCloud.cache.refreshInterval")) || _default.cache.interval;
}

//------------------------------
function getInternalDbProperties() {
//------------------------------

// main properties
var mainMap = compositeData;
_viewName = mainMap.get("viewName");
_database = mainMap.get("database");
_categoryColumn = mainMap.get("categoryColumn") || _default.categoryColumn;
_sortTags = mainMap.get("sortTags") || _sortTags;
_maxTagLimit = mainMap.get("maxTagLimit") || _maxTagLimit;
_minEntryCount = mainMap.get("minEntryCount") || _default.minEntryCount;

// slider properties group
var sliderMap = mainMap.get("slider");
_isSliderVisible = sliderMap && sliderMap.get("visible") || _isSliderVisible;

// cache properties group
var cacheMap = mainMap.get("cache");
_cacheMode = cacheMap && String(cacheMap.get("mode")) || _cacheMode;
_cacheInterval = cacheMap && Number(cacheMap.get("refreshInterval")) || _cacheInterval;

// links properties group
var linkMap = mainMap.get("links");
_linkTargetPage = linkMap && linkMap.get("targetPage");
_linkRequestParam = linkMap && linkMap.get("requestParam");
_metaSep = linkMap && linkMap.get("metaSeparator");
}

//---------------------
function getRepeatValue() {
//---------------------

// return the array
return _cloudArray;
}

//------------------
function getTagLabel(aTag) {
//------------------

// return the tag name as the label...
return aTag[_tagIndex.name];
}

//--------------------------
function getTagAlternateText(aTag) {
//--------------------------

// build the tag mouse-over popup text...
if (compositeData.alternateText) {
return I18n.format(compositeData.alternateText, Number(aTag[_tagIndex.count]).toFixed(0));
}
}

//------------------
function getCSSClass(aTag) {
//------------------

// return the CSS class name...
return CSS_BASE_NAME + parseInt(aTag[_tagIndex.weight]);
}

//----------------
function getTagUrl(aTag) {
//----------------

// if BOTH a requestParam and a page are specified, return a link to that page with the requestParam
if ((_linkTargetPage !== null) && (_linkRequestParam !== null)) {
var url = new XSPUrl(_linkTargetPage);
url.setParameter(_linkRequestParam, aTag[_tagIndex.meta]);
return url.toString();
}

// if ONLY a requestParam is specified, return a link to the current page with the requestParam
if ((_linkTargetPage === null) && (_linkRequestParam !== null)) {
var url = context.getUrl();
url.setParameter(_linkRequestParam, aTag[_tagIndex.meta]);
return url.toString();
}

// neither requestParam nor page are specified, return an empty link
return "";
}

//----------------------
function isSliderVisible() {
//----------------------
return _isSliderVisible;
}

//--------------------------
function isCloudCacheInvalid() {
//--------------------------

var theDb:NotesDatabase = database;

log("Checking cache for view '{0}'", _viewName);
log("Cache control is set to '{0}'", _cacheMode);

if (_cacheMode === "off") {
print(LOG_PREFIX + I18n.format("WARNING: TagCloud cache is disabled for view '{0}', impacting performance.", _viewName));
return true;
}

// check if the cloud array has been built at all
if (!_cloudArray) {
log("No cached data found for view '{0}'", _viewName);
return true;
}

// ................
// 1st-level cache: Let the minimum _cacheInterval elapse before considering refreshing the cache again
// ................

var currentTime = new Date().getTime();
var diffInSecs = Math.ceil((currentTime - _cloudTime) / 1000);

if (_cacheMode === "auto") { // otherwise use the manually set interval...
_cacheInterval = _cloudInterval || _cacheInterval;
}
log(_cacheMode + " cache refresh interval for view '{0}' is {1} seconds", _viewName, _cacheInterval);

if (diffInSecs < _cacheInterval) {
log("1st-level cache is still valid for {0} more seconds", (_cacheInterval - diffInSecs));
return false;
} else {
// the _cacheInterval has elapsed, cache the new timestamp and check the 2nd level cache
_cloudTime = currentTime;
log("1st-level cache has expired {0} seconds ago", Math.abs(_cacheInterval - diffInSecs));
}

if (_cacheMode === "manual") {
return true;
}

// ................
// 2nd-level cache: Compare if the view entry counts have changed
// ................

log("Checking 2nd-level cache for view '{0}'", _viewName);

if(_database) {
// a database other than this one has been specified, so open that one
theDb = openDatabase(_database);
}

// get the current view entry count
_viewEntryCount = theDb.getView(_viewName).getEntryCount();

// recycle
theDb = null;

// compute the minimum amount of added or removed documents from the view to trigger a cache refresh
var minimumDiff = parseInt(Math.sqrt(_viewEntryCount));
var actualDiff = Math.abs(_viewEntryCount - _cloudCount);

log("{0} docs variance required to trigger a cache invalidation", minimumDiff);
log("{0} docs variance detected", actualDiff);

if (actualDiff >= minimumDiff) {
log("View entry count has changed by {0} docs, invalidating 2nd-level cache", actualDiff);
return true;
} else {
log("View entry count has not changed significantly enough, 2nd-level cache is still valid");
return false;
}
}

//--------------------------
function createCloudFromView() {
//--------------------------

var theDb: NotesDatabase = database;
var theView: NotesView = null;
var nav: NotesViewNavigator = null;
var entry: NotesViewEntry = null;

var name; // the visible tag name
var metaData; // meta data for the tag name (used for requestParam links)
var aCloud = []; // array holding the tag cloud data (name, meta, count, weight)
var index = 0; // cloud array index
var count = 0; // tag count (# of child docs for the current category)
var high = 0; // high range count
var low = 999999; // low range count (seed initial, artificially high number)
var max = 10; // the maximum relative weight any tag can have (between 1 - 10)

_cloudSize = 0;

log("Computing tag cloud from view '{0}'", _viewName);

if(_database) {
// a database other than this one has been specified, so open that one
theDb = openDatabase(_database);
}

// open the view, lock it and get the current entry count (if we don't have it already from the 2nd level cache)
theView = theDb.getView(_viewName);
theView.AutoUpdate = false;
if (!_viewEntryCount) {
_viewEntryCount = theView.getEntryCount();
}

log("{0} view entries to process", _viewEntryCount);

if (_viewEntryCount === 0) {

// recycle handles
theView = null;
theDb = null;

return; // view is empty, get out
}

// iterate over the view
nav = theView.createViewNav();
entry = nav.getFirst();

// if the minEntryCount is null (ie. not explicitly set as a property),
// then compute the value based on the # of docs in the view
// this ensures reasonable peformance with very large views

if ( (_minEntryCount === null) || (_computeMinEntryCount) ) {

_computeMinEntryCount = true; // make sure we re-evaluate the next time around

if (_viewEntryCount < _default.minViewCount) {
_minEntryCount = 1;
log("MinEntryCount set to {0} because actual entry count of {1} < min threshold of {2}", _minEntryCount, _viewEntryCount, _default.minViewCount);
} else {
_minEntryCount = parseInt(Math.log(_viewEntryCount));
log("MinEntryCount tuned to {0} entries per category", _minEntryCount);
}
}

while (entry) {

if (entry.isCategory()) {
count = entry.getChildCount();
if (count >= _minEntryCount) { // only consider categories with 'enough' entries
name = entry.getColumnValues()[_categoryColumn];
if (name.length() > 0) {

// if a meta data separator is specifed, split off the metadata part
if (_metaSep) {
var aSplit = name.split(_metaSep);
name = aSplit[0];
metaData = aSplit[1];
} else {
metaData = name;
}

// find lowest and highest range counts
if (count > high) {high = count}
if (count < low) {low = count}

// add to array (leave weight as null for now, we'll compute that later)
aCloud[index++] = [name, metaData, count, null];
}
}
}
entry = nav.getNextCategory();
}

// recycle handles
entry = null;
nav = null;
theView = null;
theDb = null;

log("Found {0} tags with a minimum of {1} entries", index, _minEntryCount);

// sort the array by count (highest count first, in decreasing order)
aCloud.sort(sortDecreasing);

// retain the top 'n' entries only
aCloud = aCloud.slice(0, _maxTagLimit);
log("Reduced {0} tags to top {1} tags", index, _maxTagLimit);

// sort the tags alphabetically
if (_sortTags === "alphabet") {
aCloud.sort();
log("Sorted tags alphabetically");
}

// now compute the relative weight of each tag
var range = high - low;
var factor = max * low;
var pre1 = (max - 1) / range;
var pre2 = (high - factor) / range;

for (var i = 0; i < aCloud.length; i++) {
aCloud[i][_tagIndex.weight] = Math.round((pre1 * aCloud[i][_tagIndex.count]) + pre2);
}

// debug output of the final array
//for (i = 0; i < aCloud.length; i++) {print(aCloud[i])}

_cloudArray = aCloud;
_cloudSize = aCloud.length;
_cloudTime = new Date().getTime();
_cloudCount = _viewEntryCount;
}

// ---------------------------
function tuneAutoCacheInterval() {
// ---------------------------

if ((_cacheMode !== "auto") || (_viewEntryCount === 0)) {
return;
}

_cloudInterval = parseInt(Math.sqrt(_viewEntryCount));
log("Auto cache interval for {0} entries tuned to {1} seconds", _viewEntryCount, _cloudInterval);
}

// --------------------
function sortDecreasing(a, b) {
// --------------------

return b[_tagIndex.count] - a[_tagIndex.count];
}

//------------------
function isReplicaID(arg) {
//------------------

// regular expression to check for a valid replicaID (without colon; ie. CCC5748D0058B97B)
return (String(arg).match(/^[a-f0-9]{16}$/i))
}

//-------------------
function openDatabase(arg) {
//-------------------

var db:NotesDatabase;

if (isReplicaID(arg)) {
log("Using ReplicaID {0} to open database", arg);
db = session.getDatabase(null, null);
if (!db.openByReplicaID(null, arg)) {
db = null;
throw I18n.format("Unable to open ReplicaID {0}", arg);
}
} else {
// open via database name
db = session.getDatabase(null, arg, false);
if(db === null) {
throw I18n.format("Unable to open database {0}", arg);
}
}

log("Opened external database {0}", db.getFilePath());
return db;
}

//----------
function log(text) {
//----------

if (LOG_OUTPUT) {

// format number arguments into ints (ie. 12.0 becomes 12)...
for (var i = 1; i < arguments.length; i++) {
arguments[i] = arguments[i].toString();
}

switch(arguments.length) {
case 1: return print(LOG_PREFIX + I18n.format(text, arguments[0]));
case 2: return print(LOG_PREFIX + I18n.format(text, arguments[1]));
case 3: return print(LOG_PREFIX + I18n.format(text, arguments[1], arguments[2]));
case 4: return print(LOG_PREFIX + I18n.format(text, arguments[1], arguments[2], arguments[3]));
case 5: return print(LOG_PREFIX + I18n.format(text, arguments[1], arguments[2], arguments[3], arguments[4]));
case 6: return print(LOG_PREFIX + I18n.format(text, arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]));
default:return print(LOG_PREFIX + I18n.format(text, arguments[0]));
}
}
}

// ==========================================
// expose the public interface of this module
// ==========================================
return {

// public methods
init: init,
run: run,

// public properties
isSliderVisible: isSliderVisible,
getRepeatValue: getRepeatValue,
getCSSClass: getCSSClass,
getTagUrl: getTagUrl,
getTagAlternateText: getTagAlternateText,
getTagLabel: getTagLabel
}
}



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CompositeApplications\Applications\Notes 8 Style Discussion Application.ca
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<ibm-portal-composite xmlns="http://www.ibm.com/xmlns/prod/websphere/portal/v6.0/ibm-portal-composite" xmlns:var="http://www.ibm.com/xmlns/prod/websphere/portal/v6.0/ibm-portal-composite-variable" xmlns:base="http://www.ibm.com/xmlns/prod/websphere/portal/v6.0/ibm-portal-composite-base" xmlns:community="http://www.ibm.com/xmlns/prod/websphere/portal/v6.0/ibm-portal-composite-community">
<application-info guid="[rep_id]_8525762D00050852" category="default">
<base:title>
<base:nls-string xml:lang="en">Discussion Application</base:nls-string>
</base:title>
<base:description>
<base:nls-string xml:lang="en">Discussion Application</base:nls-string>
</base:description>
</application-info>
<business-component guid="[rep_id]_6_T6N1H4420G3SC02AVFRVVJ00H1" name="com.ibm.portal.blank.paa" handlerRef="local:ejb/ejb/com/ibm/wps/internalapp/service/PaaInstantiationServiceHome">
<var:component-role ref="Manager@6_T6N1H4420G3SC02AVFRVVJ00H1"/>
<var:component-role ref="Manager@3_T6N1H4420G3SC02AVFRVVJ0090"/>
<var:component-role ref="Manager@3_T6N1H4420G3SC02AVFRVVJ0097"/>
<var:component-role ref="Manager@3_T6N1H4420G3SC02AVFRVVJ00P3"/> <var:component-role ref="User@6_T6N1H4420G3SC02AVFRVVJ00H1"/>
<object-data>
<ibm-portal-topology xmlns="http://www.ibm.com/xmlns/prod/websphere/portal/v6.0/ibm-portal-topology" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.ibm.com/xmlns/prod/websphere/portal/v6.0/ibm-portal-topology ibm-portal-topology.xsd">
<component-tree>
<portlet-definition id="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y3MA__">
<description>
<base:nls-string xml:lang="en">Navigator</base:nls-string>
</description>
<preference name="com.ibm.rcp.aaf.wiring.hideProps">
<base:value value="SelectedEmailAddressChanged" xsi:type="base:String"/>
<base:value value="SelectedSubjectChanged" xsi:type="base:String"/>
<base:value value="SelectedNameChanged" xsi:type="base:String"/>
<base:value value="SelectedNotesDocumentURLChanged" xsi:type="base:String"/>
<base:value value="SelectedDateChanged" xsi:type="base:String"/>
<base:value value="SecondaryDateListChanged" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.moveable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.component.enable.window.actions">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.showTitle">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.showSwitch">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.comptype">
<base:value value="1" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.component.id">
<base:value value="com.ibm.notes.pimcomponents.mailNavigator" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.hideActions">
<base:value value="CreateNewMemoUsingEmailAddress" xsi:type="base:String"/>
<base:value value="CreateNewMemoUsingMailTo" xsi:type="base:String"/>
<base:value value="CreateNewMemoUsingString" xsi:type="base:String"/>
<base:value value="SetSelectedDate" xsi:type="base:String"/>
<base:value value="SetSecondaryDateList" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.viewId">
<base:value value="com.ibm.rcp.csiviews.viewpart.CSINavViewPart" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.provider.id">
<base:value value="com.ibm.rcp.aaf.domino.provider.DominoProvider" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.standalone">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.visible">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.closeable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.WiredProperties">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.csiviews.viewpart.dburl">
<base:value value="notes:///[rep_id]/MainFrameset?OpenFrameset" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.createdByAAF">
<base:value value="com.ibm.rcp.aaf.createdByAAF" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.portletappid">
<base:value value="null" xsi:type="base:String"/>
</preference>
<object-id value="[rep_id]_OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y2ZQ__"/>
<title>
<base:nls-string xml:lang="en">Navigator</base:nls-string>
</title>
<resource-link portletApplication="PlaceHolder_Portlet">
<name value="Notes Mail Navigator"/>
<portletId value="null"/>
</resource-link>
</portlet-definition>
<portlet-entity id="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y3MA__.1" portletDefinitionRef="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y3MA__">
<object-id value="[rep_id]_OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y2Yw__"/>
</portlet-entity>
<portlet-definition id="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y2OA__">
<description>
<base:nls-string xml:lang="en">Views</base:nls-string>
</description>
<preference name="com.ibm.rcp.aaf.wiring.hideProps">
<base:value value="SecondaryDateListChanged" xsi:type="base:String"/>
<base:value value="SelectedDateChanged" xsi:type="base:String"/>
</preference>
<preference name="SendTo">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="From">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.component.id">
<base:value value="com.ibm.notes.pimcomponents.mailView" xsi:type="base:String"/>
</preference>
<preference name="Subject">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.hideActions">
<base:value value="SetSecondaryDateList" xsi:type="base:String"/>
<base:value value="SetSelectedDate" xsi:type="base:String"/>
</preference>
<preference name="Principal">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.delimiter.value">
<base:value value="\0" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.ratio">
<base:value value="0.22343324" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.viewId">
<base:value value="com.ibm.rcp.csiviews.viewpart.CSIViewPart" xsi:type="base:String"/>
</preference>
<preference name="ConfidentialString">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.provider.id">
<base:value value="com.ibm.rcp.aaf.domino.provider.PIMProvider" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.closeable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="INetFrom">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.csiviews.viewpart.dburl">
<base:value value="notes:///[rep_id]/MainFrameset?OpenFrameset" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.container.applicationDefinition">
<base:value value="PHBsdWdpbj48ZXh0ZW5zaW9uIHBvaW50PSJvcmcuZWNsaXBzZS51aS52aWV3cyI+PHZpZXcgYWxsb3dNdWx0aXBsZT0idHJ1ZSIgY2xhc3M9ImNvbS5pYm0ubm90ZXMuY3NpLnZpZXcuY29udGFpbmVyLnZpZXdzLkNTSUNvbnRhaW5lclZpZXciIGlkPSJhcHBsaWNhdGlvbi12aWV3LWNvbS5pYm0ubm90ZXMudmlldy5jb250YWluZXIuY3NpLU0yTTNNMk0xWkRVd1pqYzVOamcyT0RvdE5UVXhOakZpWWpFNk1USXpOems1TXpnME1UTTZMVGRtWlRVXyIgbmFtZT0ibnVsbCIvPjwvZXh0ZW5zaW9uPjxleHRlbnNpb24gaWQ9ImFwcGxpY2F0aW9uLWNvbnRhaW5tZW50LWNvbS5pYm0ubm90ZXMudmlldy5jb250YWluZXIuY3NpLU0yTTNNMk0xWkRVd1pqYzVOamcyT0RvdE5UVXhOakZpWWpFNk1USXpOems1TXpnME1UTTZMVGRtWlRVXyIgcG9pbnQ9ImNvbS5pYm0ucmNwLmNvbXBvc2l0ZS5jb250YWluZXIuY29yZS5jb250YWlubWVudENvbmZpZ3VyYXRpb24iPjx2aWV3ICBpZD0iYXBwbGljYXRpb24tdmlldy1jb20uaWJtLm5vdGVzLnZpZXcuY29udGFpbmVyLmNzaS1NMk0zTTJNMVpEVXdaamM1TmpnMk9Eb3ROVFV4TmpGaVlqRTZNVEl6TnprNU16ZzBNVE02TFRkbVpUVV8iLz48bGFuZG1hcmtJZGVudGlmaWVyIGV4cHJlc3Npb249IkZvcm0iLz48bGFuZG1hcmsgZXhwcmVzc2lvbj0iKiI+PGV2ZW50IGlkPSJzZWxlY3Rpb24iPjxhY3Rpb25yZWYgaWQ9ImNvbS5pYm0ubm90ZXMudmlldy5jb250YWluZXIuYWN0aW9ucy5mb3JtdWxhIiBmaWVsZD0iQ29uZmlkZW50aWFsU3RyaW5nIiBwcm9wZXJ0eT0iQ29uZmlkZW50aWFsU3RyaW5nIi8+PGFjdGlvbnJlZiBpZD0iY29tLmlibS5ub3Rlcy52aWV3LmNvbnRhaW5lci5hY3Rpb25zLmZvcm11bGEiIGZpZWxkPSJATmFtZShbQ05dOyBDb3B5VG8pOyIgcHJvcGVydHk9IkNvcHlUbyIvPjxhY3Rpb25yZWYgaWQ9ImNvbS5pYm0ubm90ZXMudmlldy5jb250YWluZXIuYWN0aW9ucy5jb2x1bW4iIGZpZWxkPSIgOCAoRGF0ZSkiIHByb3BlcnR5PSJEZWxpdmVyZWREYXRlIi8+PGFjdGlvbnJlZiBpZD0iY29tLmlibS5ub3Rlcy52aWV3LmNvbnRhaW5lci5hY3Rpb25zLmNvbHVtbiIgZmllbGQ9IiA0IChTZW5kZXIpIiBwcm9wZXJ0eT0iRnJvbSIvPjxhY3Rpb25yZWYgaWQ9ImNvbS5pYm0ubm90ZXMudmlldy5jb250YWluZXIuYWN0aW9ucy5mb3JtdWxhIiBmaWVsZD0iRnJvbURvbWFpbiIgcHJvcGVydHk9IkZyb21Eb21haW4iLz48YWN0aW9ucmVmIGlkPSJjb20uaWJtLm5vdGVzLnZpZXcuY29udGFpbmVyLmFjdGlvbnMuZm9ybXVsYSIgZmllbGQ9IklOZXRGcm9tIiBwcm9wZXJ0eT0iSU5ldEZyb20iLz48YWN0aW9ucmVmIGlkPSJjb20uaWJtLm5vdGVzLnZpZXcuY29udGFpbmVyLmFjdGlvbnMuZm9ybXVsYSIgZmllbGQ9IkluZXRDb3B5VG8iIHByb3BlcnR5PSJJbmV0Q29weVRvIi8+PGFjdGlvbnJlZiBpZD0iY29tLmlibS5ub3Rlcy52aWV3LmNvbnRhaW5lci5hY3Rpb25zLmZvcm11bGEiIGZpZWxkPSJQcmluY2lwYWwiIHByb3BlcnR5PSJQcmluY2lwYWwiLz48YWN0aW9ucmVmIGlkPSJjb20uaWJtLm5vdGVzLnZpZXcuY29udGFpbmVyLmFjdGlvbnMuZm9ybXVsYSIgZmllbGQ9IkBOYW1lKFtDTl07IFNlbmRUbyk7IiBwcm9wZXJ0eT0iU2VuZFRvIi8+PGFjdGlvbnJlZiBpZD0iY29tLmlibS5ub3Rlcy52aWV3LmNvbnRhaW5lci5hY3Rpb25zLmNvbHVtbiIgZmllbGQ9IiA3IChTdWJqZWN0KSIgcHJvcGVydHk9IlN1YmplY3QiLz48L2V2ZW50PjwvbGFuZG1hcms+PHByb3BlcnRpZXM+PHByb3BlcnR5IGlkPSJDb25maWRlbnRpYWxTdHJpbmciLz48cHJvcGVydHkgaWQ9IkNvcHlUbyIvPjxwcm9wZXJ0eSBpZD0iRGVsaXZlcmVkRGF0ZSIvPjxwcm9wZXJ0eSBpZD0iRnJvbSIvPjxwcm9wZXJ0eSBpZD0iRnJvbURvbWFpbiIvPjxwcm9wZXJ0eSBpZD0iSU5ldEZyb20iLz48cHJvcGVydHkgaWQ9IkluZXRDb3B5VG8iLz48cHJvcGVydHkgaWQ9IlByaW5jaXBhbCIvPjxwcm9wZXJ0eSBpZD0iU2VuZFRvIi8+PHByb3BlcnR5IGlkPSJTdWJqZWN0Ii8+PC9wcm9wZXJ0aWVzPjwvZXh0ZW5zaW9uPjwvcGx1Z2luPg==" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.moveable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.component.enable.window.actions">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.extensionType">
<base:value value="app container" xsi:type="base:String"/>
</preference>
<preference name="InetCopyTo">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.showTitle">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.comptype">
<base:value value="0" xsi:type="base:String"/>
</preference>
<preference name="FromDomain">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="CopyTo">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.delimiter.line">
<base:value value="\0\0" xsi:type="base:String"/>
</preference>
<preference name="DeliveredDate">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.standalone">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.WiredProperties">
<base:value value="[{id=ConfidentialString}{dispname=ConfidentialString}{}]" xsi:type="base:String"/>
<base:value value="[{id=CopyTo}{dispname=CopyTo}{}]" xsi:type="base:String"/>
<base:value value="[{id=DeliveredDate}{dispname=DeliveredDate}{}]" xsi:type="base:String"/>
<base:value value="[{id=From}{dispname=From}{}]" xsi:type="base:String"/>
<base:value value="[{id=FromDomain}{dispname=FromDomain}{}]" xsi:type="base:String"/>
<base:value value="[{id=INetFrom}{dispname=INetFrom}{}]" xsi:type="base:String"/>
<base:value value="[{id=InetCopyTo}{dispname=InetCopyTo}{}]" xsi:type="base:String"/>
<base:value value="[{id=Principal}{dispname=Principal}{}]" xsi:type="base:String"/>
<base:value value="[{id=SendTo}{dispname=SendTo}{}]" xsi:type="base:String"/>
<base:value value="[{id=Subject}{dispname=Subject}{}]" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.visible">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.createdByAAF">
<base:value value="com.ibm.rcp.aaf.createdByAAF" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.portletappid">
<base:value value="null" xsi:type="base:String"/>
</preference>
<object-id value="[rep_id]_OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y2Ng__"/>
<title>
<base:nls-string xml:lang="en">Views</base:nls-string>
</title>
<resource-link portletApplication="PlaceHolder_Portlet">
<name value="Notes Mail View"/>
<portletId value="null"/>
</resource-link>
</portlet-definition>
<portlet-entity id="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y2OA__.1" portletDefinitionRef="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y2OA__">
<object-id value="[rep_id]_OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y2NA__"/>
</portlet-entity>
<portlet-definition id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOWQ_">
<description>
<base:nls-string xml:lang="en">Thread Viewer</base:nls-string>
</description>
<preference name="com.ibm.notes.viewCustomization.hideHeader">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.comp.maximized">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideActionBar">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.ratio">
<base:value value="0.5" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.viewId">
<base:value value="com.ibm.xsp.rcp.XspViewPart" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.provider.id">
<base:value value="com.ibm.rcp.aaf.domino.provider.DominoProvider" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.closeable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.moveable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.filterByCategory">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideNavigator">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.notesurl">
<base:value value="notes:///[rep_id]/ThreadViewer.component" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.component.enable.window.actions">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.extensionType">
<base:value value="simple view" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.showTitle">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.comptype">
<base:value value="0" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideColumnByName">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.standalone">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.visible">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.createdByAAF">
<base:value value="com.ibm.rcp.aaf.createdByAAF" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.portletappid">
<base:value value="null" xsi:type="base:String"/>
</preference>
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOWI_"/>
<title>
<base:nls-string xml:lang="en">Thread Viewer</base:nls-string>
</title>
<resource-link portletApplication="PlaceHolder_Portlet">
<name value="Thread Viewer"/>
<portletId value="null"/>
</resource-link>
</portlet-definition>
<portlet-entity id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOWQ_.1" portletDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOWQ_">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOTk_"/>
</portlet-entity>
<portlet-definition id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOTE_">
<description>
<base:nls-string xml:lang="en">Topic</base:nls-string>
</description>
<preference name="com.ibm.rcp.aaf.wiring.hideProps">
<base:value value="ThreadIdAndDocID" xsi:type="base:String"/>
<base:value value="NikTest" xsi:type="base:String"/>
<base:value value="lm: *" xsi:type="base:String"/>
<base:value value="MainId" xsi:type="base:String"/>
<base:value value="SelectedNotesDocumentURLChanged" xsi:type="base:String"/>
<base:value value="ParentDocumentUrlNoDesignChange" xsi:type="base:String"/>
<base:value value="ParentDocumentUrl" xsi:type="base:String"/>
<base:value value="LandmarkChanged" xsi:type="base:String"/>
<base:value value="ThreadViewerInputNoDesignChange" xsi:type="base:String"/>
<base:value value="NotesUrl" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideHeader">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.comp.maximized">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideActionBar">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.component.id">
<base:value value="com.ibm.notes.document.container" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.hideActions">
<base:value value="OpenNotesUrl" xsi:type="base:String"/>
<base:value value="$pbda-sMainId" xsi:type="base:String"/>
<base:value value="$pbda-sThreadIdAndDocID" xsi:type="base:String"/>
<base:value value="$pbda-sThreadViewerInputNoDesignChange" xsi:type="base:String"/>
<base:value value="SearchCurrentUIView" xsi:type="base:String"/>
<base:value value="$pbda-sThreadViewerInput" xsi:type="base:String"/>
<base:value value="FilterCurrentUIViewViaCategory" xsi:type="base:String"/>
<base:value value="$pbda-sParentDocumentUrlNoDesignChange" xsi:type="base:String"/>
<base:value value="$pbda-sSetNotesDocumentURL" xsi:type="base:String"/>
<base:value value="ShowNotesUrl" xsi:type="base:String"/>
<base:value value="$pbda-sNikTest" xsi:type="base:String"/>
<base:value value="$pbda-sParentDocumentUrl" xsi:type="base:String"/>
</preference>
<preference name="ThreadViewerInput">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.delimiter.value">
<base:value value="\0" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.ratio">
<base:value value="0.27478755" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.viewId">
<base:value value="application-view-com.ibm.notes.document.container.DocumentView-M2M3M2M1ZDUwZjc5Njg2ODoyODIyZWI3MjoxMjM3YWYxMTI0NzotN2ZjMQ__" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.provider.id">
<base:value value="com.ibm.rcp.aaf.domino.provider.DominoProvider" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.closeable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.container.applicationDefinition">
<base:value value="PHBsdWdpbj4NCjxleHRlbnNpb24gcG9pbnQ9Im9yZy5lY2xpcHNlLnVpLnZpZXdzIj4mI3gwQTs8dmlldyBhbGxvd011bHRpcGxlPSJ0cnVlIiBjbGFzcz0iY29tLmlibS5ub3Rlcy5kb2N1bWVudC5jb250YWluZXIudmlld3MuTm90ZXNEb2N1bWVudFZpZXciIGlkPSJhcHBsaWNhdGlvbi12aWV3LWNvbS5pYm0ubm90ZXMuZG9jdW1lbnQuY29udGFpbmVyLkRvY3VtZW50Vmlldy1NMk0zTTJNMVpEVXdaamM1TmpnMk9Eb3lPREl5WldJM01qb3hNak0zWVdZeE1USTBOem90TjJaak1RX18iIG5hbWU9Ik5vdGVzIERvY3VtZW50IENvbnRhaW5lciIvPiYjeDBBOzwvZXh0ZW5zaW9uPg0KPGV4dGVuc2lvbiBpZD0iYXBwbGljYXRpb24tY29udGFpbm1lbnQtY29tLmlibS5ub3Rlcy5kb2N1bWVudC5jb250YWluZXIuRG9jdW1lbnRWaWV3LU0yTTNNMk0xWkRVd1pqYzVOamcyT0RveU9ESXlaV0kzTWpveE1qTTNZV1l4TVRJME56b3ROMlpqTVFfXyIgcG9pbnQ9ImNvbS5pYm0ucmNwLmNvbXBvc2l0ZS5jb250YWluZXIuY29yZS5jb250YWlubWVudENvbmZpZ3VyYXRpb24iPg0KPHZpZXcgaWQ9ImFwcGxpY2F0aW9uLXZpZXctY29tLmlibS5ub3Rlcy5kb2N1bWVudC5jb250YWluZXIuRG9jdW1lbnRWaWV3LU0yTTNNMk0xWkRVd1pqYzVOamcyT0RveU9ESXlaV0kzTWpveE1qTTNZV1l4TVRJME56b3ROMlpqTVFfXyIgbmFtZXNwYWNlPSJFMzBGMzczNDhENUM2REEzREFGOUI5RTBBMzkyREYwRV9PREEyTjJabFpUYzFZMk16TldJM05qb3laREl6TXpkbU9Ub3hNak0zWlRoaVlqRXhNem90TjJRM1lnX18iLz4NCjxsYW5kbWFya0lkZW50aWZpZXIgZXhwcmVzc2lvbj0iJEZPUk0iLz4NCjxsYW5kbWFyayBleHByZXNzaW9uPSIqIj4NCjxldmVudCBpZD0iY29udGVudENvbXBsZXRlIj4NCjxwdWJsaXNoIGZpZWxkPSJmb3JtdWxhOlRocmVhZElkKyZxdW90OyMmcXVvdDsrQFRleHQoQERvY3VtZW50VW5pcXVlSUQpKyZxdW90OyMmcXVvdDsiIHByb3BlcnR5PSJUaHJlYWRWaWV3ZXJJbnB1dCIvPg0KPC9ldmVudD4NCjxldmVudCBpZD0iZGF0YUNoYW5nZSIvPg0KPC9sYW5kbWFyaz4NCjxwcm9wZXJ0aWVzPg0KPHByb3BlcnR5IGRpc3BsYXluYW1lPSJUaHJlYWRWaWV3ZXJJbnB1dCIgaWQ9IlRocmVhZFZpZXdlcklucHV0Ii8+DQo8L3Byb3BlcnRpZXM+DQo8L2V4dGVuc2lvbj4NCjwvcGx1Z2luPg==" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.filterByCategory">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.moveable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.remember.url">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.notesurl">
<base:value value="notes:///[rep_id]/MainTopic?OpenForm" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.extensionType">
<base:value value="app container" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.component.enable.window.actions">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.showTitle">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.comptype">
<base:value value="0" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideColumnByName">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.delimiter.line">
<base:value value="\0\0" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.isDocumentPlaceholder">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.standalone">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.WiredProperties">
<base:value value="[{id=ThreadViewerInput}{dispname=ThreadViewerInput}{dir=b}{}]" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.visible">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.close.policy">
<base:value value="Close Perspective" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.createdByAAF">
<base:value value="com.ibm.rcp.aaf.createdByAAF" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.portletappid">
<base:value value="null" xsi:type="base:String"/>
</preference>
<preference name=" Login">
<base:value value="" xsi:type="base:String"/>
</preference>
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOGY_"/>
<title>
<base:nls-string xml:lang="en">Topic</base:nls-string>
</title>
<resource-link portletApplication="PlaceHolder_Portlet">
<name value="Topic"/>
<portletId value="null"/>
</resource-link>
</portlet-definition>
<portlet-entity id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOTE_.1" portletDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOTE_">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOGQ_"/>
</portlet-entity>
<portlet-definition id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhODQ_">
<description>
<base:nls-string xml:lang="en">Notes URL Handler</base:nls-string>
</description>
<preference name="com.ibm.rcp.aaf.wiring.hideProps">
<base:value value="SelectedNotesDocumentURLChanged" xsi:type="base:String"/>
<base:value value="NotesUrl" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideHeader">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.comp.maximized">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideActionBar">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.hideActions">
<base:value value="SearchCurrentUIView" xsi:type="base:String"/>
<base:value value="FilterCurrentUIViewViaCategory" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.ratio">
<base:value value="0.5" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.viewId">
<base:value value="com.ibm.workplace.noteswc.views.NotesViewData" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.provider.id">
<base:value value="com.ibm.rcp.aaf.domino.provider.DominoProvider" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.closeable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.moveable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.filterByCategory">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideNavigator">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.notesurl">
<base:value value="notes:///[rep_id]/ViewerMainFrameset?OpenFrameset" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.component.enable.window.actions">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.extensionType">
<base:value value="simple view" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.showTitle">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.comptype">
<base:value value="0" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideColumnByName">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.standalone">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.visible">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.createdByAAF">
<base:value value="com.ibm.rcp.aaf.createdByAAF" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.portletappid">
<base:value value="null" xsi:type="base:String"/>
</preference>
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhODI_"/>
<title>
<base:nls-string xml:lang="en">Notes URL Handler</base:nls-string>
</title>
<resource-link portletApplication="PlaceHolder_Portlet">
<name value="Notes URL Handler"/>
<portletId value="null"/>
</resource-link>
</portlet-definition>
<portlet-entity id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhODQ_.1" portletDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhODQ_">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhODA_"/>
</portlet-entity>
<portlet-definition id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Zjk_">
<description>
<base:nls-string xml:lang="en">Thread Viewer</base:nls-string>
</description>
<preference name="com.ibm.notes.viewCustomization.hideHeader">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.comp.maximized">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideActionBar">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.ratio">
<base:value value="0.5" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.viewId">
<base:value value="com.ibm.xsp.rcp.XspViewPart" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.provider.id">
<base:value value="com.ibm.rcp.aaf.domino.provider.DominoProvider" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.closeable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.moveable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.filterByCategory">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideNavigator">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.notesurl">
<base:value value="notes:///[rep_id]/ThreadViewer.component" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.component.enable.window.actions">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.extensionType">
<base:value value="simple view" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.showTitle">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.comptype">
<base:value value="0" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideColumnByName">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.standalone">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.visible">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.createdByAAF">
<base:value value="com.ibm.rcp.aaf.createdByAAF" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.portletappid">
<base:value value="null" xsi:type="base:String"/>
</preference>
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Zjc_"/>
<title>
<base:nls-string xml:lang="en">Thread Viewer</base:nls-string>
</title>
<resource-link portletApplication="PlaceHolder_Portlet">
<name value="Thread Viewer"/>
<portletId value="null"/>
</resource-link>
</portlet-definition>
<portlet-entity id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Zjk_.1" portletDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Zjk_">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZjU_"/>
</portlet-entity>
<portlet-definition id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZWM_">
<description>
<base:nls-string xml:lang="en">Response</base:nls-string>
</description>
<preference name="com.ibm.rcp.aaf.wiring.hideProps">
<base:value value="ThreadIdAndDocID" xsi:type="base:String"/>
<base:value value="NikTest" xsi:type="base:String"/>
<base:value value="lm: *" xsi:type="base:String"/>
<base:value value="MainId" xsi:type="base:String"/>
<base:value value="SelectedNotesDocumentURLChanged" xsi:type="base:String"/>
<base:value value="ParentDocumentUrlNoDesignChange" xsi:type="base:String"/>
<base:value value="LandmarkChanged" xsi:type="base:String"/>
<base:value value="ThreadViewerInputNoDesignChange" xsi:type="base:String"/>
<base:value value="NotesUrl" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideHeader">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideActionBar">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.comp.maximized">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.component.id">
<base:value value="com.ibm.notes.document.container" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.hideActions">
<base:value value="OpenNotesUrl" xsi:type="base:String"/>
<base:value value="$pbda-sMainId" xsi:type="base:String"/>
<base:value value="$pbda-sThreadIdAndDocID" xsi:type="base:String"/>
<base:value value="$pbda-sThreadViewerInputNoDesignChange" xsi:type="base:String"/>
<base:value value="SearchCurrentUIView" xsi:type="base:String"/>
<base:value value="$pbda-sThreadViewerInput" xsi:type="base:String"/>
<base:value value="FilterCurrentUIViewViaCategory" xsi:type="base:String"/>
<base:value value="$pbda-sParentDocumentUrlNoDesignChange" xsi:type="base:String"/>
<base:value value="$pbda-sSetNotesDocumentURL" xsi:type="base:String"/>
<base:value value="ShowNotesUrl" xsi:type="base:String"/>
<base:value value="$pbda-sNikTest" xsi:type="base:String"/>
<base:value value="$pbda-sParentDocumentUrl" xsi:type="base:String"/>
</preference>
<preference name="ThreadViewerInput">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.delimiter.value">
<base:value value="\0" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.ratio">
<base:value value="0.2434128" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.viewId">
<base:value value="application-view-com.ibm.notes.document.container.DocumentView-M2M3M2M1ZDUwZjc5Njg2ODoyODIyZWI3MjoxMjM3YWYxMTI0NzotN2ZjMQ__" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.provider.id">
<base:value value="com.ibm.rcp.aaf.domino.provider.DominoProvider" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.closeable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.container.applicationDefinition">
<base:value value="PHBsdWdpbj4NCjxleHRlbnNpb24gcG9pbnQ9Im9yZy5lY2xpcHNlLnVpLnZpZXdzIj4mI3gwQTs8dmlldyBhbGxvd011bHRpcGxlPSJ0cnVlIiBjbGFzcz0iY29tLmlibS5ub3Rlcy5kb2N1bWVudC5jb250YWluZXIudmlld3MuTm90ZXNEb2N1bWVudFZpZXciIGlkPSJhcHBsaWNhdGlvbi12aWV3LWNvbS5pYm0ubm90ZXMuZG9jdW1lbnQuY29udGFpbmVyLkRvY3VtZW50Vmlldy1NMk0zTTJNMVpEVXdaamM1TmpnMk9Eb3lPREl5WldJM01qb3hNak0zWVdZeE1USTBOem90TjJaak1RX18iIG5hbWU9Ik5vdGVzIERvY3VtZW50IENvbnRhaW5lciIvPiYjeDBBOzwvZXh0ZW5zaW9uPg0KPGV4dGVuc2lvbiBpZD0iYXBwbGljYXRpb24tY29udGFpbm1lbnQtY29tLmlibS5ub3Rlcy5kb2N1bWVudC5jb250YWluZXIuRG9jdW1lbnRWaWV3LU0yTTNNMk0xWkRVd1pqYzVOamcyT0RveU9ESXlaV0kzTWpveE1qTTNZV1l4TVRJME56b3ROMlpqTVFfXyIgcG9pbnQ9ImNvbS5pYm0ucmNwLmNvbXBvc2l0ZS5jb250YWluZXIuY29yZS5jb250YWlubWVudENvbmZpZ3VyYXRpb24iPg0KPHZpZXcgaWQ9ImFwcGxpY2F0aW9uLXZpZXctY29tLmlibS5ub3Rlcy5kb2N1bWVudC5jb250YWluZXIuRG9jdW1lbnRWaWV3LU0yTTNNMk0xWkRVd1pqYzVOamcyT0RveU9ESXlaV0kzTWpveE1qTTNZV1l4TVRJME56b3ROMlpqTVFfXyIgbmFtZXNwYWNlPSIzODk1Q0M4MkVGMDcwRTA0MkVCNzA3RUU2NDJFRTBCOV9NRFZrTkRjME5tUXlOREF3TjJRNFl6b3ROekl3T0RCaU16VTZNVEkwTUdZek1HWXlaakU2TFRkaE1ESV8iLz4NCjxsYW5kbWFya0lkZW50aWZpZXIgZXhwcmVzc2lvbj0iJEZPUk0iLz4NCjxsYW5kbWFyayBleHByZXNzaW9uPSIqIj4NCjxldmVudCBpZD0iY29udGVudENvbXBsZXRlIj4NCjxwdWJsaXNoIGZpZWxkPSJmaWVsZDpUaHJlYWRWaWV3ZXJJbnB1dCIgcHJvcGVydHk9IlRocmVhZFZpZXdlcklucHV0Ii8+DQo8cHVibGlzaCBmaWVsZD0iZmllbGQ6UGFyZW50SWRVcmwiIHByb3BlcnR5PSJQYXJlbnREb2N1bWVudFVybCIvPg0KPC9ldmVudD4NCjxldmVudCBpZD0iZGF0YUNoYW5nZSIvPg0KPC9sYW5kbWFyaz4NCjxwcm9wZXJ0aWVzPg0KPHByb3BlcnR5IGRpc3BsYXluYW1lPSJUaHJlYWRWaWV3ZXJJbnB1dCIgaWQ9IlRocmVhZFZpZXdlcklucHV0Ii8+DQo8cHJvcGVydHkgZGlzcGxheW5hbWU9IlBhcmVudERvY3VtZW50VXJsIiBpZD0iUGFyZW50RG9jdW1lbnRVcmwiLz4NCjwvcHJvcGVydGllcz4NCjwvZXh0ZW5zaW9uPg0KPC9wbHVnaW4+" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.moveable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.filterByCategory">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.notesurl">
<base:value value="notes:///[rep_id]/MainTopic?OpenForm" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.remember.url">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.extensionType">
<base:value value="app container" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.component.enable.window.actions">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.showTitle">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.comptype">
<base:value value="0" xsi:type="base:String"/>
</preference>
<preference name="ParentDocumentUrl">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideColumnByName">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.delimiter.line">
<base:value value="\0\0" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.isDocumentPlaceholder">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.standalone">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.WiredProperties">
<base:value value="[{id=ThreadViewerInput}{dispname=ThreadViewerInput}{dir=b}{}]" xsi:type="base:String"/>
<base:value value="[{id=ParentDocumentUrl}{dispname=ParentDocumentUrl}{dir=b}{}]" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.visible">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.close.policy">
<base:value value="Close Perspective" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.createdByAAF">
<base:value value="com.ibm.rcp.aaf.createdByAAF" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.portletappid">
<base:value value="null" xsi:type="base:String"/>
</preference>
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZWE_"/>
<title>
<base:nls-string xml:lang="en">Response</base:nls-string>
</title>
<resource-link portletApplication="PlaceHolder_Portlet">
<name value="Response"/>
<portletId value="null"/>
</resource-link>
</portlet-definition>
<portlet-entity id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZWM_.1" portletDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZWM_">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZTg_"/>
</portlet-entity>
<portlet-definition id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZGU_">
<description>
<base:nls-string xml:lang="en">Notes URL Handler</base:nls-string>
</description>
<preference name="com.ibm.rcp.aaf.wiring.hideProps">
<base:value value="SelectedNotesDocumentURLChanged" xsi:type="base:String"/>
<base:value value="NotesUrl" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideHeader">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.comp.maximized">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideActionBar">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.wiring.hideActions">
<base:value value="SearchCurrentUIView" xsi:type="base:String"/>
<base:value value="FilterCurrentUIViewViaCategory" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.ratio">
<base:value value="0.5973072" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.viewId">
<base:value value="com.ibm.workplace.noteswc.views.NotesViewData" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.provider.id">
<base:value value="com.ibm.rcp.aaf.domino.provider.DominoProvider" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.closeable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.moveable">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.filterByCategory">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideNavigator">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.notesurl">
<base:value value="notes:///[rep_id]/ViewerMainFrameset?OpenFrameset" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.extensionType">
<base:value value="simple view" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.component.enable.window.actions">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.showTitle">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.comptype">
<base:value value="0" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.viewCustomization.hideColumnByName">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.standalone">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.visible">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.WiredProperties">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.createdByAAF">
<base:value value="com.ibm.rcp.aaf.createdByAAF" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.aaf.portletappid">
<base:value value="null" xsi:type="base:String"/>
</preference>
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZGM_"/>
<title>
<base:nls-string xml:lang="en">Notes URL Handler</base:nls-string>
</title>
<resource-link portletApplication="PlaceHolder_Portlet">
<name value="Notes URL Handler"/>
<portletId value="null"/>
</resource-link>
</portlet-definition>
<portlet-entity id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZGU_.1" portletDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZGU_">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZGE_"/>
</portlet-entity>
<wire id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Yzc_" ordinal="2002">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YmY_"/>
<source-info property="EntryClicked" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOWQ_.1"/>
<target-info param="NotesUrl" action="ShowNotesUrl" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhODQ_.1"/>
</wire>
<wire id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzY_" ordinal="2003">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YmQ_"/>
<source-info property="EntryDoubleClicked" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOWQ_.1"/>
<target-info param="NotesUrl" action="OpenNotesUrl" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhODQ_.1"/>
</wire>
<wire id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzU_" ordinal="3003">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YmI_"/>
<source-info property="EntryClicked" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Zjk_.1"/>
<target-info param="NotesUrl" action="ShowNotesUrl" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZGU_.1"/>
</wire>
<wire id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzQ_" ordinal="3004">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Yjk_"/>
<source-info property="EntryDoubleClicked" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Zjk_.1"/>
<target-info param="NotesUrl" action="OpenNotesUrl" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZGU_.1"/>
</wire>
<wire id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzM_" ordinal="2001">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Yjc_"/>
<source-info property="ThreadViewerInput" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOTE_.1"/>
<target-info param="DisplayThread" action="DisplayThread" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOWQ_.1"/>
</wire>
<wire id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzI_" ordinal="3001">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YjU_"/>
<source-info property="ParentDocumentUrl" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZWM_.1"/>
<target-info param="NotesUrl" action="ShowNotesUrl" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZGU_.1"/>
</wire>
<wire id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzE_" ordinal="3002">
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YjM_"/>
<source-info property="ThreadViewerInput" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZWM_.1"/>
<target-info param="DisplayThread" action="DisplayThread" portletEntityRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Zjk_.1"/>
</wire>
</component-tree>
<layout-tree>
<layout-element id="layout_TMP_10002">
<container xsi:type="SimpleContainer" orientation="row">
<container xsi:type="SimpleContainer" orientation="column">
<window id="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y3MA__.1window"/>
</container>
<container xsi:type="SimpleContainer" orientation="column">
<window id="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y2OA__.1window"/>
</container>
</container>
</layout-element>
<layout-element id="MainTopic.MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhYTY_">
<container xsi:type="SimpleContainer" orientation="row">
<container xsi:type="SimpleContainer" orientation="column">
<window id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOWQ_.1window"/>
</container>
<container xsi:type="SimpleContainer" orientation="column">
<container xsi:type="SimpleContainer" orientation="row">
<window id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOTE_.1window"/>
</container>
<container xsi:type="SimpleContainer" orientation="row">
<window id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhODQ_.1window"/>
</container>
</container>
</container>
</layout-element>
<layout-element id="Response.MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhMDM_">
<container xsi:type="SimpleContainer" orientation="row">
<container xsi:type="SimpleContainer" orientation="column">
<window id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Zjk_.1window"/>
</container>
<container xsi:type="SimpleContainer" orientation="column">
<container xsi:type="SimpleContainer" orientation="row">
<window id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZWM_.1window"/>
</container>
<container xsi:type="SimpleContainer" orientation="row">
<window id="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZGU_.1window"/>
</container>
</container>
</container>
</layout-element>
</layout-tree>
<navigation-element id="TMP_10000">
<title>
<base:nls-string xml:lang="en">Discussion Application</base:nls-string>
</title>
<description>
<base:nls-string xml:lang="en">Discussion Application</base:nls-string>
</description>
<preference name="com.ibm.portal.categoryGuid">
<base:value value="1HeDe13PG3IP6G1C03Q46P1DA6R46M9E46OOC6JP4JQ076JPC3Q473JD0" readOnly="false" required="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.useNavigator">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.navigationModel">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.portal.PageIcon">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.activities">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.alias">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.autoStart">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.launcher">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.hidden">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.useClonePages">
<base:value value="true" xsi:type="base:String"/>
</preference>
<parent-tree>
<parent-tree-ref value="wps.application.root" parameterId="portal.root"/>
</parent-tree>
<object-id value="[rep_id]_8525762D00050374"/>
<navigation-element id="TMP_10001" layoutElementRef="layout_TMP_10002">
<title>
<base:nls-string xml:lang="en">Main Page</base:nls-string>
</title>
<description>
<base:nls-string xml:lang="ar">صفحة خالية</base:nls-string>
<base:nls-string xml:lang="ca">Pŕgina buida</base:nls-string>
<base:nls-string xml:lang="cs">Prázdná stránka</base:nls-string>
<base:nls-string xml:lang="da">Tom side</base:nls-string>
<base:nls-string xml:lang="de">Leere Seite</base:nls-string>
<base:nls-string xml:lang="el">Κενή σελίδα</base:nls-string>
<base:nls-string xml:lang="en">Main Page</base:nls-string>
<base:nls-string xml:lang="es">Página en blanco</base:nls-string>
<base:nls-string xml:lang="fi">Tyhjä sivu</base:nls-string>
<base:nls-string xml:lang="fr">Page vide</base:nls-string>
<base:nls-string xml:lang="hu">Üres oldal</base:nls-string>
<base:nls-string xml:lang="it">Pagina vuota</base:nls-string>
<base:nls-string xml:lang="iw">דף ריק</base:nls-string>
<base:nls-string xml:lang="ja">空白ページ</base:nls-string>
<base:nls-string xml:lang="ko">공백 페이지</base:nls-string>
<base:nls-string xml:lang="nl">Lege pagina</base:nls-string>
<base:nls-string xml:lang="no">Tom side</base:nls-string>
<base:nls-string xml:lang="pl">Pusta strona</base:nls-string>
<base:nls-string xml:lang="pt">Página em branco</base:nls-string>
<base:nls-string xml:lang="pt-BR">Página Em Branco</base:nls-string>
<base:nls-string xml:lang="ro">Pagină goală</base:nls-string>
<base:nls-string xml:lang="ru">Пустая страница</base:nls-string>
<base:nls-string xml:lang="sk">Prázdna stránka</base:nls-string>
<base:nls-string xml:lang="sl">Prazna stran</base:nls-string>
<base:nls-string xml:lang="sv">Tom sida</base:nls-string>
<base:nls-string xml:lang="th">หน้าว่าง</base:nls-string>
<base:nls-string xml:lang="tr">Boş Sayfa</base:nls-string>
<base:nls-string xml:lang="uk">Порожня сторінка</base:nls-string>
<base:nls-string xml:lang="zh">空白页面</base:nls-string>
<base:nls-string xml:lang="zh-TW">空白頁面</base:nls-string>
</description>
<preference name="com.ibm.notes.enable.preferences">
<base:value value="true" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.portal.PageIcon">
<base:value value="nrpc:///8525764200495916/icon?file=DiscussionSide1001-2.nsf&amp;name=disussiondb.png" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.activities">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.alias">
<base:value value="" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.autoStart">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.launcher">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.hidden">
<base:value value="false" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.rcp.bookmark_level">
<base:value value="selection" xsi:type="base:String"/>
</preference>
<object-id value="[rep_id]_8525762D00052603"/>
<navigation-content windowRef="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y3MA__.1window" componentDefinitionRef="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y3MA__.1"/>
<navigation-content windowRef="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y2OA__.1window" componentDefinitionRef="OWM5M2UxZWQ0NmYyMTYxNDozZWQ3YTVhMDoxMjNhMzEzODBiYzotN2Y2OA__.1"/>
</navigation-element>
<navigation-element id="MainTopic.MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhYTY_" layoutElementRef="MainTopic.MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhYTY_">
<title>
<base:nls-string xml:lang="en">MainTopic</base:nls-string>
</title>
<description/>
<preference name="com.ibm.rcp.alias">
<base:value value="MainTopic" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.enable.preferences">
<base:value value="true" xsi:type="base:String"/>
</preference>
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhYTU_"/>
<navigation-content windowRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOWQ_.1window" componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOWQ_.1"/>
<navigation-content windowRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOTE_.1window" componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhOTE_.1"/>
<navigation-content windowRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhODQ_.1window" componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhODQ_.1"/>
<navigation-content componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Yzc_"/>
<navigation-content componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzY_"/>
<navigation-content componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzM_"/>
</navigation-element>
<navigation-element id="Response.MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhMDM_" layoutElementRef="Response.MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhMDM_">
<title>
<base:nls-string xml:lang="en">Response</base:nls-string>
</title>
<description/>
<preference name="com.ibm.rcp.alias">
<base:value value="Response" xsi:type="base:String"/>
</preference>
<preference name="com.ibm.notes.enable.preferences">
<base:value value="true" xsi:type="base:String"/>
</preference>
<object-id value="[rep_id]_MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTdhMDI_"/>
<navigation-content windowRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Zjk_.1window" componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5Zjk_.1"/>
<navigation-content windowRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZWM_.1window" componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZWM_.1"/>
<navigation-content windowRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZGU_.1window" componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5ZGU_.1"/>
<navigation-content componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzU_"/>
<navigation-content componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzQ_"/>
<navigation-content componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzI_"/>
<navigation-content componentDefinitionRef="MDVkNDc0NmQyNDAwN2Q4YzotNzIwODBiMzU6MTI0MGYzMGYyZjE6LTc5YzE_"/>
</navigation-element>
</navigation-element>
</ibm-portal-topology>
</object-data>
</business-component>
</ibm-portal-composite>




c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CompositeApplications\Components\ThreadViewer.component
************************************************************************
<Widget>
<pageType>0</pageType>
<type>0</type>
<geneditPage>false</geneditPage>
<allowInstanceContent>true</allowInstanceContent>
<resources/>
<publishedEvents>
<WidgetPublishedEvent>
<name>EntryClicked</name>
<inEvent>false</inEvent>
<outEvent>true</outEvent>
<payloadDefName>string</payloadDefName>
</WidgetPublishedEvent>
<WidgetPublishedEvent>
<name>DisplayThread</name>
<inEvent>true</inEvent>
<outEvent>false</outEvent>
<payloadDefName>string</payloadDefName>
</WidgetPublishedEvent>
<WidgetPublishedEvent>
<name>EntryDoubleClicked</name>
<inEvent>false</inEvent>
<outEvent>true</outEvent>
<payloadDefName>string</payloadDefName>
</WidgetPublishedEvent>
</publishedEvents>
<payloadDef/>
<modes>
<WidgetMode>
<mode__id>0</mode__id>
<pageType>0</pageType>
<type>0</type>
<page>threadViewer.xsp</page>
</WidgetMode>
<WidgetMode>
<mode__id>1</mode__id>
<pageType>0</pageType>
<type>0</type>
</WidgetMode>
<WidgetMode>
<mode__id>2</mode__id>
<pageType>0</pageType>
<type>0</type>
</WidgetMode>
</modes>
<attributes/>
<parameters/>
<paramValues/>
</Widget>


c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CompositeApplications\WiringProperties\notesurlhandler.wsdl
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<definitions name="testwsdl"
targetNamespace="http://www.ibm.com/wps/c2a/testwsdl"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:idt="http://www.ibm.com/xmlns/prod/datatype"
xmlns:portlet="http://www.ibm.com/wps/c2a"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://www.ibm.com/wps/c2a/testwsdl"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<types>
<xsd:schema targetNamespace="http://www.ibm.com/wps/c2a/testwsdl"/>
<xsd:schema targetNamespace="http://www.ibm.com/xmlns/prod/datatype">
<xsd:simpleType name="emailAddress822">
<xsd:restriction base="xsd:string"/>
</xsd:simpleType>
<xsd:simpleType name="distinguishedName">
<xsd:restriction base="xsd:string"/>
</xsd:simpleType>
<xsd:simpleType name="mailTo">
<xsd:restriction base="xsd:string"/>
</xsd:simpleType>
<xsd:simpleType name="url">
<xsd:restriction base="xsd:anyURI"/>
</xsd:simpleType>
</xsd:schema>
</types>
<message name="NotesUrl">
<part name="NotesUrl" type="xsd:string"/>
</message>
<portType name="testwsdl_Service">
<operation name="ShowNotesUrl">
<input message="tns:NotesUrl"/>
</operation>
<operation name="OpenNotesUrl">
<input message="tns:NotesUrl"/>
</operation>
<operation name="publish_NotesUrl">
<output message="tns:NotesUrl"/>
</operation>
</portType>
<binding name="testwsdlbinding" type="tns:testwsdl_Service">
<portlet:binding/>
<operation name="ShowNotesUrl">
<portlet:action activeOnStartup="true" caption="Show Notes URL"
description="" name="ShowNotesUrl" selectOnMultipleMatch="false" type="standard"/>
<input>
<portlet:param boundTo="request-attribute" name="NotesUrl" partname="NotesUrl"/>
</input>
</operation>
<operation name="OpenNotesUrl">
<portlet:action activeOnStartup="true" caption="Open Notes URL"
description="" name="OpenNotesUrl" selectOnMultipleMatch="false" type="standard"/>
<input>
<portlet:param boundTo="request-attribute" name="NotesUrl" partname="NotesUrl"/>
</input>
</operation>
<operation name="publish_NotesUrl">
<portlet:action activeOnStartup="true" name="publish_NotesUrl"
selectOnMultipleMatch="true" type="standard"/>
<output>
<portlet:param boundTo="request-attribute" caption=""
description="" name="NotesUrl" partname="NotesUrl"/>
</output>
</operation>
</binding>
</definitions>



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CustomControls\actionsBar.xsp
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<!-- Author: Tony McGuckin, IBM -->
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:panel themeId="Panel.actionsBar" loaded="${javascript:getDisplayFormType() == null}">
<xp:button value="New Topic" id="buttonNewTopic">
<xp:this.rendered><![CDATA[#{javascript:/* User must have the CREATE DOCUMENTS privilege in the ACL to create new posts */
if((sessionScope.aclPrivileges & lotus.domino.Database.DBACL_CREATE_DOCS) == 0) {
return false;
} else {
return true;
}}]]></xp:this.rendered>
<xp:eventHandler event="onclick" submit="true"
refreshMode="complete" execMode="partial" immediate="true">
<xp:this.action><![CDATA[#{javascript:setDisplayFormType(1);
context.reloadPage();}]]></xp:this.action>
</xp:eventHandler>
</xp:button>
</xp:panel>
</xp:view>


c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CustomControls\actionsBar.xsp-config
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<faces-config>
<faces-config-extension>
<namespace-uri>http://www.ibm.com/xsp/custom</namespace-uri>
<default-prefix>xc</default-prefix>
<public>true</public>
</faces-config-extension>
<composite-component>
<component-type>actionsBar</component-type>
<composite-name>actionsBar</composite-name>
<composite-file>/actionsBar.xsp</composite-file>
<composite-extension>
<designer-extension>
<in-palette>true</in-palette>
<render-markup>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&#xd;
&lt;xp:view xmlns:xp="http://www.ibm.com/xsp/core"&gt;&#xd;
&lt;xp:panel&gt;actionsBar&lt;/xp:panel&gt;&#xd;
&lt;/xp:view&gt;&#xd;
</render-markup>
</designer-extension>
</composite-extension>
<property>
<property-name>gotoPage</property-name>
<property-class>string</property-class>
<property-extension>
<designer-extension>
<editor>com.ibm.workplace.designer.property.editors.PagePicker</editor>
</designer-extension>
</property-extension>
</property>
</composite-component>
</faces-config>



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CustomControls\allDocumentsView.xsp
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<!-- Author: Tony McGuckin, IBM -->
<xp:view xmlns:xp="http://www.ibm.com/xsp/core"
xmlns:xc="http://www.ibm.com/xsp/custom">

<xp:this.data>
<xp:dominoView var="dominoView" viewName="xpAllDocuments"
search="#{javascript:param.searchValue}" dataCache="full">

<xp:this.expandLevel><![CDATA[#{javascript:if(sessionScope.ec==null || sessionScope.ec==0){return 1}{return 0}}]]></xp:this.expandLevel>
</xp:dominoView>
</xp:this.data>

<xp:table themeId="HtmlTable.view.footer">
<xp:tr themeId="HtmlTr.view.footer">
<xp:td themeId="HtmlTd.view.footer"
style="vertical-align: bottom ! important;padding-left:5px;width:190px">
<xp:div themeId="Panel.left">
<xp:link text="Collapse All"
id="linkCollapseAll" themeId="Link.collapse"
value="/allDocuments.xsp">
<xp:eventHandler event="onclick"
submit="true" refreshMode="complete"
execMode="partial" immediate="true">
<xp:this.action><![CDATA[#{javascript:sessionScope.ec = 0}]]></xp:this.action>
</xp:eventHandler>
</xp:link>
<xp:label id="label6" value="|"
themeId="Text.mediumSeparator">
</xp:label>
<xp:link text="Expand All"
id="linkExpandAll" themeId="Link.expand"
value="/allDocuments.xsp">

<xp:eventHandler event="onclick"
submit="true" refreshMode="complete"
execMode="partial" immediate="true">
<xp:this.action><![CDATA[#{javascript:sessionScope.ec = 1}]]></xp:this.action>
</xp:eventHandler>
</xp:link>
</xp:div>
</xp:td>
<xp:td themeId="HtmlTd.view.footer" align="right"
style="vertical-align: bottom ! important;padding-right:5px">
<xp:pager xp:key="headerPager"
layout="Previous Group Next" for="repeatList" id="pagerTop"
partialRefresh="true">
</xp:pager>
</xp:td>
</xp:tr>
</xp:table>

<xp:repeat id="repeatList" value="#{javascript:dominoView}"
var="rowData" rows="#{javascript:compositeData.rows}"
indexVar="repeatIndex">

<xp:this.facets>
<xp:text disableTheme="true" xp:key="header"
escape="false">
<xp:this.value><![CDATA]></xp:this.value>
</xp:text>
<xp:text disableTheme="true" xp:key="footer"
escape="false">
<xp:this.value><![CDATA
]></xp:this.value>
</xp:text>
</xp:this.facets>

<xp:tr themeId="HtmlTr.view">
<xp:td style="width:20px" themeId="HtmlTd.view">
<xp:image id="topicImage" themeId="Image.file">
<xp:this.url><![CDATA[#{javascript:if (rowData.getRead(sessionScope.effectiveUserName)) {
return "xpPostRead.gif"}else{return "xpPostUnread.gif";}}]]></xp:this.url>
<xp:this.alt><![CDATA[#{javascript:if (rowData.getRead(sessionScope.effectiveUserName)) {
return "Main Topic (Read)";
}else{ return "Main Topic (Unread)";}}]]></xp:this.alt>
<xp:this.rendered><![CDATA[#{javascript:var level=rowData.getIndentLevel();var rc = rowData.getDescendantCount();
;level == 0}]]></xp:this.rendered>
</xp:image>
</xp:td>
<xp:td style="width:20px" themeId="HtmlTd.view">
<xp:text escape="true" id="cfResponseCount"
themeId="ComputedField.view.meta" style="font-size:90%;">
<xp:this.rendered><![CDATA[#{javascript:

rc > 0 && level==0}]]></xp:this.rendered>
<xp:this.value>
<![CDATA[#{javascript:"" + parseInt(rc)}]]>
</xp:this.value>
</xp:text>
</xp:td>

<xp:td themeId="HtmlTd.view">
<xp:panel>
<xp:this.style>
<![CDATA[#{javascript:var level = rowData.getIndentLevel();
if(level != null && level > 0)
return "padding-left:" + (level * 10) + "px !important";
else return "";}]]>
</xp:this.style>

<xp:image id="image1" themeId="Image.file">
<xp:this.url><![CDATA[#{javascript:if (rowData.getRead(sessionScope.effectiveUserName)) {
return "xpResponseRead.gif";
}else{
return "xpResponseUnread.gif";
}}]]></xp:this.url>
<xp:this.alt><![CDATA[#{javascript:if (rowData.getRead(sessionScope.effectiveUserName)) {
return "Response (Read)";
}else{
return "Response (Unread)";
}}]]></xp:this.alt>
<xp:this.rendered><![CDATA[#{javascript:level > 0}]]></xp:this.rendered>
</xp:image>

<xp:link id="linkSubject" escape="true"
themeId="Link.view.topicTitle" value="/topicThread.xsp">
<xp:this.text>
<![CDATA[#{javascript:rowData.getColumnValue("Topic")}]]>
</xp:this.text>
<xp:this.parameters>
<xp:parameter name="action"
value="openDocument">
</xp:parameter>
<xp:parameter
value="#{javascript:rowData.getUniversalID()}"
name="documentId">
</xp:parameter>
</xp:this.parameters>

</xp:link>

</xp:panel>
</xp:td>
<xp:td style="width:110px" themeId="HtmlTd.view">
<xp:text escape="true" id="cfDate"
themeId="ComputedField.view.meta" style="font-size:90%;">
<xp:this.value>
<![CDATA[#{javascript:rowData.getColumnValue("All Dates")}]]>
</xp:this.value>
<xp:this.converter>
<xp:convertDateTime type="both"
dateStyle="medium" timeStyle="short">
</xp:convertDateTime>
</xp:this.converter>
</xp:text>
</xp:td>
<xp:td style="width:140px" themeId="HtmlTd.view">
<xp:panel themeId="Panel.rightAlignNoWrap">
<xp:link escape="true" themeId="Link.person"
id="linkFrom" style="font-size:90%;" value="/authorProfile.xsp">
<xp:this.text><![CDATA[#{javascript:rowData.getColumnValue("From")}]]></xp:this.text>
<xp:this.parameters>
<xp:parameter name="lookupName">
<xp:this.value><![CDATA[#{javascript:rowData.getColumnValue("From");}]]></xp:this.value>
</xp:parameter>
</xp:this.parameters>
</xp:link>
</xp:panel>
</xp:td>

</xp:tr>

</xp:repeat>
<xp:table themeId="HtmlTable.view.footer">
<xp:tr themeId="HtmlTr.view.footer">
<xp:td themeId="HtmlTd.view.footer"
style="vertical-align: bottom ! important;padding-left:5px">
<xp:panel themeId="Panel.left">
<xp:label value="Show: " id="labelShow"></xp:label>
<xp:link text="5" id="link5">
<xp:this.style>
<![CDATA[#{javascript:(compositeData.rows == 5) ? "color:#808080" : ""}]]>
</xp:this.style>
<xp:eventHandler event="onclick" submit="true"
refreshMode="partial"
refreshId="#{javascript:compositeData.refreshId}">
<xp:this.action>
<![CDATA[#{javascript:sessionScope.rows = 5;
var dt = getComponent("repeatList");
if(dt != null && dt.getRowCount() > 0) {
dt.setFirst(0);
}}]]>
</xp:this.action>
</xp:eventHandler>
</xp:link>
&#160;
<xp:label value="|" id="label8"
themeId="Text.smallSeparator">
</xp:label>
&#160;
<xp:link text="10" id="link10">
<xp:this.style>
<![CDATA[#{javascript:(compositeData.rows == 10) ? "color:#808080" : ""}]]>
</xp:this.style>
<xp:eventHandler event="onclick" submit="true"
refreshMode="partial"
refreshId="#{javascript:compositeData.refreshId}">
<xp:this.action>
<![CDATA[#{javascript:sessionScope.rows = 10;
var dt = getComponent("repeatList");
if(dt != null && dt.getRowCount() > 0) {
dt.setFirst(0);
}}]]>
</xp:this.action>
</xp:eventHandler>
</xp:link>
&#160;
<xp:label value="|" id="label9"
themeId="Text.smallSeparator">
</xp:label>
&#160;
<xp:link text="25" id="link25">
<xp:this.style>
<![CDATA[#{javascript:(compositeData.rows == 25) ? "color:#808080" : ""}]]>
</xp:this.style>
<xp:eventHandler event="onclick" submit="true"
refreshMode="partial"
refreshId="#{javascript:compositeData.refreshId}">
<xp:this.action>
<![CDATA[#{javascript:sessionScope.rows = 25;
var dt = getComponent("repeatList");
if(dt != null && dt.getRowCount() > 0) {
dt.setFirst(0);
}}]]>
</xp:this.action>
</xp:eventHandler>
</xp:link>
&#160;
<xp:label value="|" id="label10"
themeId="Text.smallSeparator">
</xp:label>
&#160;
<xp:link text="50" id="link50">
<xp:this.style>
<![CDATA[#{javascript:(compositeData.rows == 50) ? "color:#808080" : ""}]]>
</xp:this.style>
<xp:eventHandler event="onclick" submit="true"
refreshMode="partial"
refreshId="#{javascript:compositeData.refreshId}">
<xp:this.action>
<![CDATA[#{javascript:sessionScope.rows = 50;
var dt = getComponent("repeatList");
if(dt != null && dt.getRowCount() > 0) {
dt.setFirst(0);
}}]]>
</xp:this.action>
</xp:eventHandler>
</xp:link>
&#160;
<xp:label value="|" id="label11"
themeId="Text.smallSeparator">
</xp:label>
&#160;
<xp:link text="100" id="link100">
<xp:this.style>
<![CDATA[#{javascript:(compositeData.rows == 100) ? "color:#808080" : ""}]]>
</xp:this.style>
<xp:eventHandler event="onclick" submit="true"
refreshMode="partial"
refreshId="#{javascript:compositeData.refreshId}">
<xp:this.action>
<![CDATA[#{javascript:sessionScope.rows = 100;
var dt = getComponent("repeatList");
if(dt != null && dt.getRowCount() > 0) {
dt.setFirst(0);
}}]]>
</xp:this.action>
</xp:eventHandler>
</xp:link>
&#160;
<xp:label value=" entries" id="labelEntries"></xp:label>
</xp:panel>
</xp:td>
<xp:td themeId="HtmlTd.view.footer" align="right"
style="vertical-align: bottom ! important;padding-right:5px">
<xp:pager xp:key="headerPager" layout="Previous Group Next" for="repeatList" id="pager1" partialRefresh="true">
</xp:pager>
</xp:td>
</xp:tr>
</xp:table>
</xp:view>


c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CustomControls\allDocumentsView.xsp-config
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<faces-config>
<faces-config-extension>
<namespace-uri>http://www.ibm.com/xsp/custom</namespace-uri>
<default-prefix>xc</default-prefix>
<public>true</public>
</faces-config-extension>
<composite-component>
<component-type>allDocumentsView</component-type>
<composite-name>allDocumentsView</composite-name>
<composite-file>/allDocumentsView.xsp</composite-file>
<composite-extension>
<designer-extension>
<in-palette>true</in-palette>
<render-markup>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&#xd;
&lt;xp:view xmlns:xp="http://www.ibm.com/xsp/core"&gt;&#xd;
&lt;xp:panel&gt;allDocumentsView&lt;/xp:panel&gt;&#xd;
&lt;/xp:view&gt;</render-markup>
</designer-extension>
</composite-extension>
<property>
<property-name>rows</property-name>
<property-class>int</property-class>
<property-extension>
<designer-extension>
<default-value>5</default-value>
</designer-extension>
<collection-property>false</collection-property>
</property-extension>
</property>
<property>
<property-name>refreshId</property-name>
<property-class>string</property-class>
<property-extension>
<collection-property>false</collection-property>
</property-extension>
</property>
</composite-component>
</faces-config>



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CustomControls\authorProfileForm.xsp
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core"
xmlns:xc="http://www.ibm.com/xsp/custom" enableModifiedFlag="true">
<xp:this.data>
<xp:dominoDocument var="profileDoc" ignoreRequestParams="true"
computeWithForm="onsave" formName="PersonalProfile">
<xp:this.documentId><![CDATA[#{javascript:// obtain the document id for the logged in user if it exists...

var db:NotesDatabase;


if ((applicationScope.profileOtherDB == "Yes") | (applicationScope.profileOtherDB == "yes")) {

if (applicationScope.profileServer != "") {
db = session.getDatabase(applicationScope.profileServer, applicationScope.profileDB);
} else {
db = session.getDatabase(null, applicationScope.profileDB);
}
} else {
db = database;
}


var vw:NotesView = db.getView("xpAuthorProfiles");
var ve:NotesViewEntry = vw.getEntryByKey(sessionScope.effectiveUserName, true);
var unid = null;

if (null != ve) {
unid = ve.getUniversalID();
}
return(unid);


}]]></xp:this.documentId>
<xp:this.action><![CDATA[#{javascript:// obtain the document id for the logged in user if it exists...

var db:NotesDatabase;
if ((applicationScope.profileOtherDB == "Yes") | (applicationScope.profileOtherDB == "yes")) {

if (applicationScope.profileServer != "") {
db = session.getDatabase(applicationScope.profileServer, applicationScope.profileDB);
} else {
db = session.getDatabase(null, applicationScope.profileDB);
}
} else {
db = database;
}


var vw:NotesView = db.getView("xpAuthorProfiles");
var ve:NotesViewEntry = vw.getEntryByKey(sessionScope.effectiveUserName, true);

if (null != ve) {
return("openDocument");
}
return("newDocument");}]]></xp:this.action>
<xp:this.querySaveDocument><![CDATA[#{javascript:// flush out the old image if updating with a new one...
if(!profileDoc.isNewNote()){
var al:java.util.List = profileDoc.getAttachmentList("attachment");
if(!al.isEmpty()){
var lastItemIndex = al.size() - 1;
if(lastItemIndex > 0){
for(var i = lastItemIndex - 1; i >= 0; i--){
var eo:NotesEmbeddedObject = al.get(i);
profileDoc.removeAttachment("attachment", eo.getName());
}
}
}
}

// store user CGI variables...
var cgi = new CGIVariables();
profileDoc.replaceItemValue("Remote_User", cgi.get("REMOTE_USER"));
profileDoc.replaceItemValue("Remote_Addr", cgi.get("REMOTE_ADDR"));
cgi = null;}]]></xp:this.querySaveDocument>
<xp:this.databaseName><![CDATA[#{javascript:if ((applicationScope.profileOtherDB == "Yes") | (applicationScope.profileOtherDB == "yes")) {
applicationScope.profileServer + "!!" + applicationScope.profileDB;
} else {
"";
}}]]></xp:this.databaseName>


</xp:dominoDocument>
<xp:dominoDocument var="interestDoc">

<xp:this.documentId><![CDATA[#{javascript:

var db:NotesDatabase;
var vw:NotesView = db.getView("LookupInterestProfiles");
var ve:NotesViewEntry = vw.getEntryByKey(sessionScope.effectiveUserName, true);
var unid = null;

if (null != ve) {
unid = ve.getUniversalID();
}
return(unid);


}]]></xp:this.documentId>


</xp:dominoDocument>
</xp:this.data>
<xp:this.resources>
<xp:script src="/xpCGIVariables.jss" clientSide="false"></xp:script>
</xp:this.resources>
<xp:panel themeId="Panel.header">
<xp:label value="Author Profile for " id="labelAuthorProfile"
themeId="ComputedField.header.subtitle">
</xp:label>
<xp:text escape="true" themeId="ComputedField.header.subtitle"
id="cfAuthorProfileTitle">
<xp:this.value><![CDATA[#{javascript:var userName:NotesName = session.createName(compositeData.userName);
return(userName.getCommon());}]]></xp:this.value>
</xp:text>
</xp:panel>
<xp:table style="width:700px;height:100px;">
<xp:tr>
<xp:td rowspan="5" valign="top">
<xp:image id="image1" height="115px" width="115px">
<xp:this.url><![CDATA[#{javascript:var imageName:String = "xpPhotoPlaceholder.gif";
if(!profileDoc.isNewNote()){
imageName = applicationScope.profileURL + "/" + currentDocument.getDocument().getUniversalID() + "/$file/" + currentDocument.getDocument().getItemValueString("FileUpFilename");
}


return(imageName);}]]></xp:this.url>
<xp:this.alt><![CDATA[#{javascript:var name:NotesName = session.createName(compositeData.userName);
return(I18n.format(res.getString("profile.photo.alt"), name.getCommon()));}]]></xp:this.alt>
</xp:image>
</xp:td>
<xp:td rowspan="5" style="width:8px"></xp:td>
<xp:td style="height:20px" valign="top">
<xp:label value="Email:" id="labelEmail" for="Email1"></xp:label>
</xp:td>
<xp:td valign="top">
<xp:inputText value="#{profileDoc.Email}" id="Email"
style="width:240px">
</xp:inputText>
</xp:td>
<xp:td style="width:10px"></xp:td>
<xp:td valign="top">
<xp:label value="Role:" id="labelRole" for="Role1"></xp:label>
</xp:td>
<xp:td valign="top">
<xp:inputText value="#{profileDoc.Role}" id="Role"
style="width:240px">
</xp:inputText>
</xp:td>
</xp:tr>
<xp:tr>
<xp:td style="height:20px" valign="top">
<xp:label value="Phone:" id="labelPhone" for="Phone1"></xp:label>
</xp:td>
<xp:td valign="top">
<xp:inputText value="#{profileDoc.Phone}" id="Phone"
style="width:240px">
</xp:inputText>
</xp:td>
<xp:td></xp:td>
<xp:td style="height:20px" valign="top">
<xp:label value="Goals:" id="labelGoal" for="Goal1"></xp:label>
</xp:td>
<xp:td valign="top">
<xp:inputText value="#{profileDoc.Goal}" id="Goals"
style="width:240px">
</xp:inputText>
</xp:td>
</xp:tr>
<xp:tr>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
</xp:tr>
<xp:tr>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
</xp:tr>
<xp:tr>
<xp:td style="height:20px" valign="top">
<xp:label value="Photo:" id="pabelPhoto"
for="fileUpload1"
rendered="#{javascript:profileDoc.isEditable()}">
</xp:label>
</xp:td>
<xp:td valign="top">
<xp:fileUpload id="profileImage"
value="#{profileDoc.attachment}">
</xp:fileUpload>
</xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
</xp:tr>
<xp:tr>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
</xp:tr>
<xp:tr>
<xp:td colspan="4" valign="top">
<xp:button id="buttonEdit" value="Edit"
rendered="#{javascript:!profileDoc.isEditable()}">
<xp:eventHandler event="onclick" submit="true"
refreshMode="complete">
<xp:this.action>
<xp:changeDocumentMode mode="edit"></xp:changeDocumentMode>
</xp:this.action>
</xp:eventHandler>
</xp:button>
<xp:button value="Save" id="buttonSave"
rendered="#{javascript:profileDoc.isEditable()}">
<xp:eventHandler event="onclick" submit="true"
refreshMode="complete" immediate="false" save="false">
<xp:this.action>
<xp:save name="/authorProfile.xsp"></xp:save>
</xp:this.action>
</xp:eventHandler>
</xp:button>
<xp:link id="linkCancel" text="Cancel"
themeId="Link.action" value="/allDocuments.xsp">
</xp:link>
</xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
<xp:td></xp:td>
</xp:tr>
</xp:table>
</xp:view>


c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CustomControls\authorProfileForm.xsp-config
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<faces-config>
<faces-config-extension>
<namespace-uri>http://www.ibm.com/xsp/custom</namespace-uri>
<default-prefix>xc</default-prefix>
<public>true</public>
</faces-config-extension>
<composite-component>
<component-type>authorProfileForm</component-type>
<composite-name>authorProfileForm</composite-name>
<composite-file>/authorProfileForm.xsp</composite-file>
<composite-extension>
<designer-extension>
<in-palette>true</in-palette>
<render-markup>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&#xd;
&lt;xp:view xmlns:xp="http://www.ibm.com/xsp/core"&gt;&#xd;
&lt;xp:panel&gt;authorProfileForm&lt;/xp:panel&gt;&#xd;
&lt;/xp:view&gt;</render-markup>
</designer-extension>
</composite-extension>
<property>
<property-name>userName</property-name>
<property-class>string</property-class>
<property-extension>
<collection-property>false</collection-property>
</property-extension>
</property>
</composite-component>
</faces-config>



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CustomControls\authorProfileHeader.xsp
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:this.beforePageLoad><![CDATA[#{javascript:// setup properties for the custom control
initAuthorProfile();}]]></xp:this.beforePageLoad>
<xp:this.resources>
<xp:script src="/xpAuthorProfile.jss" clientSide="false"></xp:script>
</xp:this.resources>
<xp:table style="width:446.0px">
<xp:this.rendered><![CDATA[#{javascript:compositeData.profileFound ? true : false}]]></xp:this.rendered>
<xp:tr>
<xp:td rowspan="6">
<xp:image url="#{javascript:compositeData.photoURL;}" id="photo" alt="#{javascript:compositeData.name;}" style="padding-right:10px;padding-top:2px">
</xp:image>
</xp:td>
<xp:td style="width:408.0px">
<xp:label value="Name:" id="labelName"></xp:label>&#160;
<xp:text escape="true" id="name" style="font-weight:bold">
<xp:this.value><![CDATA[#{javascript:compositeData.nameAbbreviated}]]></xp:this.value>
</xp:text>
</xp:td>
</xp:tr>
<xp:tr>
<xp:td>
<xp:label value="Email:" id="labelEmail"></xp:label>&#160;
<xp:link escape="true" text="#{javascript:compositeData.email;}" id="linkEmail" style="font-weight:bold"><xp:this.value><![CDATA[#{javascript:"mailto:" + compositeData.email}]]></xp:this.value></xp:link></xp:td>
</xp:tr>
<xp:tr>
<xp:td>
<xp:label value="Phone:" id="labelPhone"></xp:label>
&#160;
<xp:text escape="true" id="phone" style="font-weight:bold">
<xp:this.value><![CDATA[#{javascript:compositeData.phone}]]></xp:this.value>
</xp:text>
</xp:td>
</xp:tr>
<xp:tr>
<xp:td>
<xp:label value="Registered:" id="labelRegistered"></xp:label>
&#160;
<xp:text escape="true" id="registration" style="font-weight:bold">
<xp:this.value><![CDATA[#{javascript:compositeData.created}]]></xp:this.value>
</xp:text>
</xp:td>
</xp:tr>
<xp:tr>
<xp:td>
<xp:label value="Main topics posted:" id="labelMainTopics"></xp:label>&#160;
<xp:text escape="true" id="postsMain" style="font-weight:bold">
<xp:this.value><![CDATA[#{javascript:compositeData.postsMain}]]></xp:this.value>
<xp:this.converter>
<xp:convertNumber integerOnly="true"></xp:convertNumber>
</xp:this.converter>
</xp:text>
</xp:td>
</xp:tr>
<xp:tr>
<xp:td>
<xp:label value="Responses posted:" id="labelResponses"></xp:label>&#160;
<xp:text escape="true" id="postsResponses" style="font-weight:bold">
<xp:this.value><![CDATA[#{javascript:compositeData.postsResponses}]]></xp:this.value>
<xp:this.converter>
<xp:convertNumber integerOnly="true"></xp:convertNumber>
</xp:this.converter>
</xp:text>
</xp:td>
</xp:tr>
</xp:table>
</xp:view>


c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CustomControls\authorProfileHeader.xsp-config
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<faces-config>
<faces-config-extension>
<namespace-uri>http://www.ibm.com/xsp/custom</namespace-uri>
<default-prefix>xc</default-prefix>
<public>true</public>
</faces-config-extension>
<composite-component>
<component-type>authorProfileHeader</component-type>
<composite-name>authorProfileHeader</composite-name>
<composite-file>/authorProfileHeader.xsp</composite-file>
<composite-extension>
<designer-extension>
<in-palette>true</in-palette>
<category/>
<render-markup>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&#xd;
&lt;xp:view xmlns:xp="http://www.ibm.com/xsp/core"&gt;&#xd;
&lt;xp:panel&gt;authorProfileHeader&lt;/xp:panel&gt;&#xd;
&lt;/xp:view&gt;</render-markup>
</designer-extension>
</composite-extension>
<property>
<property-name>lookupName</property-name>
<property-class>string</property-class>
</property>
<property>
<property-name>name</property-name>
<property-class>string</property-class>
<property-extension>
<designer-extension>
<editor/>
</designer-extension>
</property-extension>
</property>
<property>
<property-name>nameAbbreviated</property-name>
<property-class>string</property-class>
</property>
<property>
<property-name>email</property-name>
<property-class>string</property-class>
</property>
<property>
<property-name>photoURL</property-name>
<property-class>string</property-class>
</property>
<property>
<property-name>created</property-name>
<property-class>string</property-class>
<property-extension>
<designer-extension>
<editor/>
</designer-extension>
</property-extension>
</property>
<property>
<property-name>phone</property-name>
<property-class>string</property-class>
</property>
<property>
<property-name>role</property-name>
<property-class>string</property-class>
</property>
<property>
<property-name>goal</property-name>
<property-class>string</property-class>
</property>
<property>
<property-name>postsMain</property-name>
<property-class>int</property-class>
</property>
<property>
<property-name>postsResponses</property-name>
<property-class>int</property-class>
</property>
<property>
<property-name>categoryFilterMain</property-name>
<property-class>string</property-class>
</property>
<property>
<property-name>categoryFilterResponses</property-name>
<property-class>string</property-class>
</property>
<property>
<property-name>profileNotFound</property-name>
<property-class>boolean</property-class>
</property>
</composite-component>
</faces-config>



c:\documents and settings\administrator\desktop\temp\discussionOpenNTF.ntf\CustomControls\authorProfileView.xsp
************************************************************************
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" xmlns:xc="http://www.ibm.com/xsp/custom">
<xp:panel themeId="Panel.header">
<xp:text escape="true" themeId="ComputedField.header.subtitle" id="cfAuthorProfileTitle">
<xp:this.value><![CDATA[#{javascript:var cc = getComponent("ccProfileHeader").getPropertyMap();
var name = cc.getProperty("name");
var format = res.getString("authorprofile.title");

if (name == null) {
name = cc.getProperty("nameAbbreviated");
}

I18n.format(format, name);}]]></xp:this.value>
</xp:text>
</xp:panel>
<xc:authorProfileHeader id="ccProfileHeader"></xc:authorProfileHeader>
<xp:br></xp:br>
<xp:section id="sectionMainPosts" header="Recent topics">
<xp:viewPanel rows="10" id="viewPanel1" width="100%" pageName="/topicThread.xsp" cellpadding="0" cellspacing="0" var="mainPostsRow" partialRefresh="true">
<xp:this.facets>
<xp:pager xp:key="headerPager" id="pagerTop" partialRefresh="true">
<xp:pagerControl id="pagerControl1" type="Previous"></xp:pagerControl>
<xp:pagerControl id="pagerControl2" type="Separator"></xp:pagerControl>
<xp:pagerControl id="pagerControl6" type="Next"></xp:pagerControl>
</xp:pager>
<xp:pager xp:key="footerPager" id="pager1" partialRefresh="true">
<xp:pagerControl id="pagerControl3" type="Previous"></xp:pagerControl>
<xp:pagerControl id="pagerControl4" type="Separator"></xp:pagerControl>
<xp:pagerControl id="pagerControl5" type="Next"></xp:pagerControl>
</xp:pager>
</xp:this.facets>
<xp:this.data>
<xp:dominoView var="main" viewName="xpAuthorPosts"
ignoreRequestParams="true" requestParamPrefix="main"
dataCache="id">
<xp:this.categoryFilter><![CDATA[#{javascript:var cc = getComponent("ccProfileHeader").getPropertyMap();
cc.getProperty("categoryFilterMain");
}]]></xp:this.categoryFilter>
</xp:dominoView>
</xp:this.data>
<xp:viewColumn id="viewColumnDateMain" style="width:100px" columnName="Date">
<xp:viewColumnHeader id="viewColumnHeaderDateMain" style="width:100px" value="Date"></xp:viewColumnHeader>
</xp:viewColumn>
<xp:viewColumn columnName="Topic" id="viewColumnTopicMain"
displayAs="link" openDocAsReadonly="true">
<xp:this.pageUrl><![CDATA[#{javascript:"topicThread.xsp?documentId=" + ma