Jim
Mon Dec 13 15:06:42 CST 2004
I've come up with a much easier way to accomplish this task.
First create a batch file with a csvde command inside, here's the on I
use;
csvde -f users.csv -s dc1 -d "ou=users,dc=domain,dc=com" -r
"(objectclass=user)" -l
givenname,sn,mail,department,physicaldeliveryofficename,telephonenumber,facsimiletelephonenumber
This creates a .csv file containing whatever ldap fields you specify, I
scheduled this to run hourly.
Here's the HTML code I used to take the information in the csv and turn
it into a sortable table;
<HTML>
<HEAD>
<TITLE>Corporate Directory</TITLE></HEAD>
<BODY BGCOLOR="#FFFFFF" LINK="#808080" VLINK="#808080" ALINK="#808080"
text="#005a5a">
<BLOCKQUOTE CLASS="body">
<div style="display:none">
<OBJECT id="users"
CLASSID="clsid:333C7BC4-460F-11D0-BC04-0080C7055A83">
<PARAM NAME="DataURL" VALUE="users.csv">
<PARAM NAME="UseHeader" VALUE="True">
<PARAM NAME="Sort" VALUE="sn; givenname">
</OBJECT>
</div>
<P>
<TABLE datasrc=#users cellspacing="0" cellpadding="0">
<THEAD><TR STYLE="font-weight:bold">
<TD width="100">
<font size="2" color="#808080" face="Verdana"><a
href="javascript:sortbygivenname()">
<span style="text-decoration: none; font-weight:400">First
Name <img border ="0" src="sort.gif"></span></a></font></TD><TD
width="100">
<font size="2" color="#808080" face="Verdana"><a
href="javascript:sortbysn()">
<span style="text-decoration: none; font-weight:400">Last
Name <img border ="0" src="sort.gif"></span></a></font></TD><TD
width="175">
<font size="2" color="#808080" face="Verdana"><a
href="javascript:sortbymail()">
<span style="text-decoration: none; font-weight:400">E-mail
Address <img border ="0" src="sort.gif"></span></a></font></TD><TD
width="175">
<font size="2" color="#808080" face="Verdana"><a
href="javascript:sortbydepartment()">
<span style="text-decoration: none;
font-weight:400">Department <img border ="0"
src="sort.gif"></span></a></font></TD><TD width="60">
<font size="2" color="#808080" face="Verdana"><a
href="javascript:sortbyphysicaldeliveryofficename()">
<span style="text-decoration: none; font-weight:400">Office <img
border ="0" src="sort.gif"></span></a></font></TD><TD width="60">
<font size="2" color="#808080" face="Verdana"><a
href="javascript:sortbytelephonenumber()">
<span style="text-decoration: none; font-weight:400">Phone <img
border ="0" src="sort.gif"></span></a></font></TD><TD width="60">
<font size="2" color="#808080" face="Verdana"><a
href="javascript:sortbyfacsimiletelephonenumber()">
<span style="text-decoration: none; font-weight:400">Fax <img
border ="0" src="sort.gif"></span></a></font></TD>
</TR></THEAD>
<TBODY>
<TR>
<TD><DIV datafld="givenname" style="border-top:1px solid #C0C0C0;
font-family: Verdana; font-size: 10pt; color: #005A5A;
border-left-width:1px; border-right-width:1px"></DIV></TD>
<TD><DIV datafld="sn" style="border-top:1px solid #C0C0C0;
font-family: Verdana; font-size: 10pt; color: #005a5a"></DIV></TD>
<TD><A DATAFLD="mail" STYLE='Text-Decoration: underline'
ONMOUSEOVER='if(this.href.indexOf("mailto:") == -1){ this.href =
"mailto:" + this.href};'><DIV datafld="mail" style="border-top:1px
solid #C0C0C0; font-family: Verdana; font-size: 10pt; color:
#005a5a"></DIV></a></TD>
<TD><DIV datafld="department" style="border-top:1px solid #C0C0C0;
font-family: Verdana; font-size: 10pt; color: #005a5a"></DIV></TD>
<TD><DIV datafld="physicaldeliveryofficename" style="border-top:1px
solid #C0C0C0; font-family: Verdana; font-size: 10pt; color:
#005a5a"></DIV></TD>
<TD><DIV datafld="telephonenumber" style="border-top:1px solid
#C0C0C0; font-family: Verdana; font-size: 10pt; color:
#005a5a"></DIV></TD>
<TD><DIV datafld="facsimiletelephonenumber" style="border-top:1px
solid #C0C0C0; font-family: Verdana; font-size: 10pt; color:
#005a5a"></DIV></TD>
</TR>
</TBODY>
</TABLE>
<SCRIPT type="text/javascript">
var tdcobj=document.all.users
var sortgivennamestring="-givenname"
var sortsnstring="-sn"
var sortmailstring="-mail"
var sortdepartmentstring="-department"
var sortphysicaldeliveryofficenamestring="-physicaldeliveryofficename"
var sorttelephonenumberstring="-telephonenumber"
var sortfacsimiletelephonenumberstring="-facsimiletelephonenumber"
function sortbygivenname(){
sortgivennamestring=(sortgivennamestring!="+givenname")? "+givenname" :
"-givenname"
tdcobj.Sort=sortgivennamestring
tdcobj.reset()
}
function sortbysn(){
sortsnstring=(sortsnstring!="+sn")? "+sn" : "-sn"
tdcobj.Sort=sortsnstring
tdcobj.reset()
}
function sortbymail(){
sortmailstring=(sortmailstring!="+mail")? "+mail" : "-mail"
tdcobj.Sort=sortmailstring
tdcobj.reset()
}
function sortbydepartment(){
sortdepartmentstring=(sortdepartmentstring!="+department")?
"+department" : "-department"
tdcobj.Sort=sortdepartmentstring
tdcobj.reset()
}
function sortbyphysicaldeliveryofficename(){
sortphysicaldeliveryofficenamestring=(sortphysicaldeliveryofficenamestring!="+physicaldeliveryofficename")?
"+physicaldeliveryofficename" : "-physicaldeliveryofficename"
tdcobj.Sort=sortphysicaldeliveryofficenamestring
tdcobj.reset()
}
function sortbytelephonenumber(){
sorttelephonenumberstring=(sorttelephonenumberstring!="+telephonenumber")?
"+telephonenumber" : "-telephonenumber"
tdcobj.Sort=sorttelephonenumberstring
tdcobj.reset()
}
function sortbyfacsimiletelephonenumber(){
sortfacsimiletelephonenumberstring=(sortfacsimiletelephonenumberstring!="+facsimiletelephonenumber")?
"+facsimiletelephonenumber" : "-facsimiletelephonenumber"
tdcobj.Sort=sortfacsimiletelephonenumberstring
tdcobj.reset()
}
</SCRIPT>
</BLOCKQUOTE>
</BODY>
</HTML>
Just cut/paste/modify and you've got your directory
tedteng wrote:
> Last year I used to code a web [art to import the user
name/dept/phone number
> from ad but it seems the coding is awaful when i lookat it today. if
u r
> interested, pls check this url:
>
> Import Contacts From User Profile
>
http://www.msd2d.com/Content/Tip_viewitem_03.aspx?section=SharePoint&category=Development&id=27d106a5-1f31-4d94-8ace-956306e3bbbe
>
> br
>
> ted
>
> "Sebastian Meyer" wrote:
>
> > Hello Group,
> >
> > is it possible to create a SharePoint WebPage which is
(dynamically) fed by
> > the Active Directory?
> > Username/Department/Phonenumbers?
> >
> > Thanks,
> >
> > Sebastian Meyer
> >
> >
> >