Congratulations!

[Valid RSS] This is a valid RSS feed.

Recommendations

This feed is valid, but interoperability with the widest range of feed readers could be improved by implementing the following recommendations.

Source: http://wssdevelopment.blogspot.com/feeds/posts/default?alt=rss

  1. <?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-1691561765197444562</atom:id><lastBuildDate>Wed, 13 Mar 2024 07:50:05 +0000</lastBuildDate><category>Sharepoint Application Concepts</category><category>Development Approaches</category><category>Customization</category><category>SharePoint Designer</category><category>Tips and Tricks</category><category>End-To-End Solution</category><category>Planning</category><category>Web Services</category><category>General Observations</category><category>Business Data Catalog</category><category>CAML</category><category>Feature Development</category><category>Other Blogs</category><category>Requirements Gathering</category><category>Search</category><category>Site Definitions</category><category>Tools</category><category>jQuery</category><category>Authentication</category><category>Custom List View</category><category>End User Training</category><category>Free</category><category>InfoPath</category><category>Office 2007</category><category>Preview</category><category>Resources</category><category>User Profiles</category><category>WebDAV</category><category>Windows Vista</category><title>SharePoint Application Development</title><description>Explorations in using Microsoft Tools for SharePoint Development Tasks and Solutions</description><link>http://wssdevelopment.blogspot.com/</link><managingEditor>noreply@blogger.com (Chris)</managingEditor><generator>Blogger</generator><openSearch:totalResults>45</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-9124199875320126230</guid><pubDate>Wed, 07 Apr 2010 19:00:00 +0000</pubDate><atom:updated>2010-04-07T14:00:23.413-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">CAML</category><category domain="http://www.blogger.com/atom/ns#">Customization</category><category domain="http://www.blogger.com/atom/ns#">Development Approaches</category><category domain="http://www.blogger.com/atom/ns#">jQuery</category><category domain="http://www.blogger.com/atom/ns#">Tips and Tricks</category><title>Create a Featured News Section with jQuery</title><description>&lt;p&gt;I was surfing the web the other day and took special notice of a news ticker on a popular online site. This set me to thinking, could I accomplish something similar with SharePoint news? Here is how I was able to accomplish a featured news section for a SharePoint site. Here’s a screenshot of the final result:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/S7zWN5Y_5zI/AAAAAAAAANU/b24qy53F0g8/s1600-h/image%5B15%5D.png&quot;&gt;&lt;img style=&quot;border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/S7zWPA8PcYI/AAAAAAAAANY/jIbcsjBiTY0/image_thumb%5B9%5D.png?imgmax=800&quot; width=&quot;644&quot; height=&quot;305&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The site visitor is presented with the last five featured news items and can quickly switch between the stories by clicking on the tab located at the top of the page. This is a standard content editor web part and can be exported for use on other sites within the same web application.&lt;/p&gt;  &lt;p&gt;In order to complete the steps in this blog, you will need to obtain the following scripts:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://jquery.com&quot; target=&quot;_blank&quot;&gt;jQuery 1.4&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://flowplayer.org/tools/download.html&quot; target=&quot;_blank&quot;&gt;jQuery Tools&lt;/a&gt; – Download the full set of tools, they’re really very good tools. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://spservices.codeplex.com/&quot; target=&quot;_blank&quot;&gt;SPServices jQuery Library&lt;/a&gt; – Using 0.5.3 at the time of this writing. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;First, I created a resources document library on the top level of my SharePoint site and uploaded all of the scripts. I placed this in the top level site of the SharePoint web application so I could reference this library anywhere in SharePoint. I also created a “scratch pad page that I could edit in SharePoint designer”.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/S7zWPv-Zc5I/AAAAAAAAANc/NWwBrp6duRg/s1600-h/image%5B3%5D.png&quot;&gt;&lt;img style=&quot;border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/S7zWP811sBI/AAAAAAAAANg/ALat1n6IQSI/image_thumb%5B1%5D.png?imgmax=800&quot; width=&quot;540&quot; height=&quot;183&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I created a new content type based off the Article Page content type and included a few more items that are needed for my implementation of SharePoint such as Corporate Location and Industry. I also added a Yes/No site column called &lt;strong&gt;Featured Item&lt;/strong&gt; and a Publishing Image column I called &lt;strong&gt;Feature Image. &lt;/strong&gt;These two columns will be used by the “Featured News”.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/S7zWQWO76TI/AAAAAAAAANk/YIhcoT3YXv0/s1600-h/image%5B11%5D.png&quot;&gt;&lt;img style=&quot;border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/S7zWQ4YjC9I/AAAAAAAAANo/G8i0gRn9rj4/image_thumb%5B7%5D.png?imgmax=800&quot; width=&quot;644&quot; height=&quot;60&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Finally, I created a new layout page and attached it to the new content type. Now, when authoring news my editors have the ability to choose if they want to feature a news item and if that news item should include a feature image.&lt;/p&gt;  &lt;p&gt;With the content type configured and a few news articles published I opened SharePoint Designer with my scratch page open and ready for coding. The script reference needed to be added to the page.&lt;/p&gt;  &lt;pre style=&quot;border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 580px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px&quot;&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  1: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;/Resources/jquery-1.4.2.min.js&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  2. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  2: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;/Resources/jquery.SPServices-0.5.3.min.js&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  3. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  3: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;/Resources/jquery.tools.min.js&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  4.  
  5. &lt;p&gt;I also placed the content holders into the page.&lt;/p&gt;
  6.  
  7. &lt;pre style=&quot;border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 580px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px&quot;&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  1: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;FeaturedNews&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  8. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  2:    &lt;span style=&quot;color: #008000&quot;&gt;&amp;lt;!-- UL to hold all of the news items as tabs --&amp;gt;&lt;/span&gt;
  9. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  3:    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ul&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;NewsTabs&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  10. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  4:    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ul&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  11. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  5:    &lt;span style=&quot;color: #008000&quot;&gt;&amp;lt;!-- div to hold all of the returned news snippets --&amp;gt;&lt;/span&gt;
  12. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  6:    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;NewsPages&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  13. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  7:    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  14. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  8: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  15.  
  16. &lt;p&gt;To make it easier to work with my returned date, I created a javascript object that allows me to quickly reference the details of any single item. It also contains functions to aid in the HTML output that will be needed by the jQuery Tools library for rendering the tabs and news story snippets.&lt;/p&gt;
  17.  
  18. &lt;pre style=&quot;border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 580px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px&quot;&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  1: &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt; FeaturedNewsStory()
  19. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  2: {
  20. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  3:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.Title = &#39;&#39;;
  21. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  4:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.CompanyLocation = &#39;&#39;;
  22. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  5:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.Comments = &#39;&#39;;
  23. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  6:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.RollupImage = &#39;&#39;;
  24. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  7:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.FeatureImage = &#39;&#39;;
  25. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  8:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.ByLine = &#39;&#39;;
  26. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  9:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.PublishDate = &#39;&#39;;
  27. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 10:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.ServerURL = &#39;&#39;;
  28. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 11:  
  29. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 12:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.FeatureImageURL = &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt; () {
  30. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 13:     &lt;span style=&quot;color: #0000ff&quot;&gt;if&lt;/span&gt; (&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.FeatureImage != &lt;span style=&quot;color: #0000ff&quot;&gt;null&lt;/span&gt;) {
  31. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 14:       &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; startPos = &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.FeatureImage.indexOf(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;src=&lt;/span&gt;&amp;quot;);
  32. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 15:       &lt;span style=&quot;color: #0000ff&quot;&gt;if&lt;/span&gt; (startPos &amp;lt; 0) {
  33. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 16:         &lt;span style=&quot;color: #0000ff&quot;&gt;return&lt;/span&gt; &#39;N/A&#39;;
  34. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 17:       }
  35. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 18:       startPos += 5;
  36. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 19:       &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; endPos = &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.FeatureImage.indexOf(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;\&amp;quot;&lt;/span&gt;&amp;quot;,startPos);
  37. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 20:       &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; ImageURL = &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.FeatureImage.substring(startPos,endPos);
  38. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 21:       &lt;span style=&quot;color: #0000ff&quot;&gt;return&lt;/span&gt; ImageURL;
  39. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 22:     }
  40. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 23:     &lt;span style=&quot;color: #0000ff&quot;&gt;return&lt;/span&gt; &#39;N/A&#39;;
  41. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 24:   };
  42. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 25:  
  43. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 26:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.RollupImageURL = &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt; () {
  44. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 27:     &lt;span style=&quot;color: #0000ff&quot;&gt;if&lt;/span&gt; (&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.RollupImage != &lt;span style=&quot;color: #0000ff&quot;&gt;null&lt;/span&gt;) {
  45. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 28:       &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; startPos = &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.RollupImage.indexOf(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;src=&lt;/span&gt;&amp;quot;);
  46. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 29:       &lt;span style=&quot;color: #0000ff&quot;&gt;if&lt;/span&gt; (startPos &amp;lt; 0) {
  47. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 30:         &lt;span style=&quot;color: #0000ff&quot;&gt;return&lt;/span&gt; &#39;N/A&#39;;
  48. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 31:       }
  49. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 32:       startPos += 5;
  50. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 33:       &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; endPos = &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.RollupImage.indexOf(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;\&amp;quot;&lt;/span&gt;&amp;quot;,startPos);
  51. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 34:       &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; ImageURL = &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.RollupImage.substring(startPos,endPos);
  52. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 35:       &lt;span style=&quot;color: #0000ff&quot;&gt;return&lt;/span&gt; ImageURL;
  53. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 36:     }
  54. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 37:     &lt;span style=&quot;color: #0000ff&quot;&gt;return&lt;/span&gt; &#39;N/A&#39;;
  55. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 38:   };
  56. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 39:  
  57. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 40:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.GetStory = &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt;() {
  58. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 41:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; html = &#39;&#39;;
  59. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 42:     html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;div class=&#39;Page&#39;&amp;gt;&lt;/span&gt;&amp;quot;;
  60. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 43:     &lt;span style=&quot;color: #0000ff&quot;&gt;if&lt;/span&gt; (&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.FeatureImageURL() != &#39;N/A&#39;) {
  61. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 44:       html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;img src=&#39;&lt;/span&gt;&amp;quot; + &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.FeatureImageURL() + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&#39;/&amp;gt;&lt;/span&gt;&amp;quot;;
  62. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 45:     }
  63. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 46:     html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;h1&amp;gt;&lt;/span&gt;&amp;quot; + &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.Title + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;/h1&amp;gt;&lt;/span&gt;&amp;quot;;
  64. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 47:     html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;div class=&#39;Author&#39;&amp;gt;&lt;/span&gt;&amp;quot; + &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.ByLine + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&amp;quot;;
  65. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 48:     html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;div&amp;gt;&lt;/span&gt;&amp;quot; + &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.Comments + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&amp;quot;;
  66. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 49:     html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;div class=&#39;ReadMore&#39;&amp;gt;&amp;lt;a href=&#39;&lt;/span&gt;&amp;quot; + &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.ServerURL + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&#39;&amp;gt;Read More...&amp;lt;/a&amp;gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&amp;quot;;
  67. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 50:     html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;cite&amp;gt;&lt;/span&gt;&amp;quot; + &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.CompanyLocation + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;/cite&amp;gt;&lt;/span&gt;&amp;quot;;
  68. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 51:     html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&amp;quot;;
  69. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 52:     &lt;span style=&quot;color: #0000ff&quot;&gt;return&lt;/span&gt; html;
  70. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 53:   };
  71. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 54:  
  72. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 55:   &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.GetTab = &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt; () {
  73. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 56:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; html = &#39;&#39;;
  74. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 57:     html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;li&amp;gt;&amp;lt;a href=&#39;#&#39;&amp;gt;&lt;/span&gt;&amp;quot;;
  75. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 58:     &lt;span style=&quot;color: #0000ff&quot;&gt;if&lt;/span&gt; (&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.RollupImageURL() != &#39;N/A&#39;) {
  76. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 59:          html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;img src=&#39;&lt;/span&gt;&amp;quot; + &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.RollupImageURL() + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&#39; alt=&#39;&lt;/span&gt;&amp;quot; + &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.Title + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&#39;/&amp;gt;&lt;/span&gt;&amp;quot;;
  77. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 60:     }
  78. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 61:    
  79. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 62:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; month = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;;
  80. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 63:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; month = &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.PublishDate.substring(5,7);
  81. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 64:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; day = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;;
  82. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 65:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; day = &lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;.PublishDate.substring(8,10);
  83. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 66:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;;
  84. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 67:     &lt;span style=&quot;color: #0000ff&quot;&gt;switch&lt;/span&gt;(month)
  85. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 68:     {
  86. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 69:       &lt;span style=&quot;color: #0000ff&quot;&gt;case&lt;/span&gt; &#39;01&#39;:
  87. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 70:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;JAN &lt;/span&gt;&amp;quot; + day;
  88. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 71:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  89. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 72:       &lt;span style=&quot;color: #0000ff&quot;&gt;case&lt;/span&gt; &#39;02&#39;:
  90. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 73:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;FEB &lt;/span&gt;&amp;quot; + day;
  91. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 74:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  92. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 75:       &lt;span style=&quot;color: #0000ff&quot;&gt;case&lt;/span&gt; &#39;03&#39;:
  93. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 76:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;MAR &lt;/span&gt;&amp;quot; + day;
  94. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 77:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  95. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 78:       &lt;span style=&quot;color: #0000ff&quot;&gt;case&lt;/span&gt; &#39;04&#39;:
  96. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 79:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;APR &lt;/span&gt;&amp;quot; + day;
  97. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 80:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  98. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 81:       &lt;span style=&quot;color: #0000ff&quot;&gt;case&lt;/span&gt; &#39;05&#39;:
  99. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 82:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;MAY &lt;/span&gt;&amp;quot; + day;
  100. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 83:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  101. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 84:       &lt;span style=&quot;color: #0000ff&quot;&gt;case&lt;/span&gt; &#39;06&#39;:
  102. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 85:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;JUN &lt;/span&gt;&amp;quot; + day;
  103. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 86:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  104. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 87:       &lt;span style=&quot;color: #0000ff&quot;&gt;case&lt;/span&gt; &#39;07&#39;:
  105. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 88:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;JUL &lt;/span&gt;&amp;quot; + day;
  106. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 89:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  107. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 90:       &lt;span style=&quot;color: #0000ff&quot;&gt;case&lt;/span&gt; &#39;08&#39;:
  108. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 91:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;AUG &lt;/span&gt;&amp;quot; + day;
  109. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 92:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  110. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 93:       &lt;span style=&quot;color: #0000ff&quot;&gt;case&lt;/span&gt; &#39;09&#39;:
  111. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 94:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;SEP &lt;/span&gt;&amp;quot; + day;
  112. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 95:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  113. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 96:       &lt;span style=&quot;color: #0000ff&quot;&gt;case&lt;/span&gt; &#39;10&#39;:
  114. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 97:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;OCT &lt;/span&gt;&amp;quot; + day;
  115. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 98:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  116. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 99:       &lt;span style=&quot;color: #0000ff&quot;&gt;case&lt;/span&gt; &#39;11&#39;:
  117. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;100:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;NOV &lt;/span&gt;&amp;quot; + day;
  118. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;101:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  119. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;102:       &lt;span style=&quot;color: #0000ff&quot;&gt;default&lt;/span&gt;:
  120. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;103:         publishText = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;DEC &lt;/span&gt;&amp;quot; + day;
  121. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;104:         &lt;span style=&quot;color: #0000ff&quot;&gt;break&lt;/span&gt;;
  122. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;105:     }
  123. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;106:     html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;div class=&#39;PubDate&#39;&amp;gt;&lt;/span&gt;&amp;quot; + publishText + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&amp;quot;;
  124. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;107:     html += &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;/span&gt;&amp;quot;;
  125. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;108:     &lt;span style=&quot;color: #0000ff&quot;&gt;return&lt;/span&gt; html;
  126. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;109:   };
  127. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;110: }
  128. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;111: &lt;/pre&gt;&lt;/pre&gt;
  129.  
  130. &lt;p&gt;With an object in place to make it easier to work with returned items, I make use of the SPServices library to call the SharePoint lists web service and execute the GetListItems method. This method returns a series of items from a list based on a CAML query. In order to limit the selection, the CAML query I need to execute is:&lt;/p&gt;
  131.  
  132. &lt;pre style=&quot;border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 580px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px&quot;&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  1: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Query&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  133. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  2:    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Where&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  134. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  3:      &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;And&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  135. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  4:        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Eq&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  136. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  5:          &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;FieldRef&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;ContentType&#39;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  137. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  6:          &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Value&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Choice&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;Company Press Release&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Value&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  138. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  7:        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Eq&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  139. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  8:        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Eq&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  140. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  9:          &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;FieldRef&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Featured_x0020_Item&#39;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  141. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 10:          &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Value&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Boolean&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;1&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Value&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  142. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 11:        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Eq&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  143. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 12:      &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;And&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  144. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 13:    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Where&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  145. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 14:    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;OrderBy&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  146. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 15:      &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;FieldRef&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;ArticleStartDate&#39;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Ascending&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;False&#39;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  147. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 16:    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;OrderBy&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  148. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 17: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Query&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  149.  
  150. &lt;p&gt;This instructs SharePoint to only return items that are created based on my content type and have been set to be featured. It also instructs SharePoint to get the items based on the Article Date in descending order, placing the newest items at the top of the results.&lt;/p&gt;
  151.  
  152. &lt;p&gt;Using SPServices, the call is executed and then parsed using jQuery into an array of FeaturedNewsStory objects.&lt;/p&gt;
  153.  
  154. &lt;pre style=&quot;border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 580px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px&quot;&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  1: &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt; loadNewsArticles() {
  155. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  2:   &lt;span style=&quot;color: #008000&quot;&gt;//Create an array to hold all of the returned results.&lt;/span&gt;
  156. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  3:   &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; itemList = &lt;span style=&quot;color: #0000ff&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Array&lt;/span&gt;();
  157. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  4:
  158. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  5:   &lt;span style=&quot;color: #008000&quot;&gt;// Set up a temporary object to hold default values for the list.&lt;/span&gt;
  159. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  6:   &lt;span style=&quot;color: #008000&quot;&gt;// The CAMLQuery is defined in this object.&lt;/span&gt;
  160. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  7:   &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; newsDefaults = {
  161. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  8:     webURL: &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;/News&lt;/span&gt;&amp;quot;,
  162. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  9:     listName: &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Pages&lt;/span&gt;&amp;quot;,
  163. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 10:     CAMLViewFields: &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;ViewFields/&amp;gt;&lt;/span&gt;&amp;quot;,
  164. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 11:     CAMLQuery: &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;Query&amp;gt;&amp;lt;Where&amp;gt;&amp;lt;And&amp;gt;&amp;lt;Eq&amp;gt;&amp;lt;FieldRef Name=&#39;ContentType&#39; /&amp;gt;&amp;lt;Value Type=&#39;Choice&#39;&amp;gt;Company Press Release&amp;lt;/Value&amp;gt;&amp;lt;/Eq&amp;gt;&amp;lt;Eq&amp;gt;&amp;lt;FieldRef Name=&#39;Featured_x0020_Item&#39; /&amp;gt;&amp;lt;Value Type=&#39;Boolean&#39;&amp;gt;1&amp;lt;/Value&amp;gt;&amp;lt;/Eq&amp;gt;&amp;lt;/And&amp;gt;&amp;lt;/Where&amp;gt;&amp;lt;OrderBy&amp;gt;&amp;lt;FieldRef Name=&#39;ArticleStartDate&#39; Ascending=&#39;False&#39; /&amp;gt;&amp;lt;/OrderBy&amp;gt;&amp;lt;/Query&amp;gt;&lt;/span&gt;&amp;quot;,
  165. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 12:     CAMLRowLimit: 5,
  166. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 13:     CAMLQueryOptions: &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;QueryOptions/&amp;gt;&lt;/span&gt;&amp;quot;
  167. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 14:   };
  168. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 15:  
  169. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 16:   &lt;span style=&quot;color: #008000&quot;&gt;// Make use of the SPServices library to call the SharePoint lists web service&lt;/span&gt;
  170. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 17:   $().SPServices({
  171. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 18:     &lt;span style=&quot;color: #008000&quot;&gt;// Set the operation&lt;/span&gt;
  172. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 19:     operation: &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;GetListItems&lt;/span&gt;&amp;quot;,
  173. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 20:     &lt;span style=&quot;color: #008000&quot;&gt;// Required so something is returned.&lt;/span&gt;
  174. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 21:     async: &lt;span style=&quot;color: #0000ff&quot;&gt;false&lt;/span&gt;,
  175. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 22:     &lt;span style=&quot;color: #008000&quot;&gt;// Set the default WEBUrl where the news pages library is located&lt;/span&gt;
  176. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 23:     webURL: newsDefaults.webURL,
  177. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 24:     &lt;span style=&quot;color: #008000&quot;&gt;// Set the name of the list/library&lt;/span&gt;
  178. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 25:     listName: newsDefaults.listName,
  179. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 26:     &lt;span style=&quot;color: #008000&quot;&gt;// Set the View Fields&lt;/span&gt;
  180. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 27:     CAMLViewFields: newsDefaults.CAMLViewFields,
  181. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 28:     &lt;span style=&quot;color: #008000&quot;&gt;// Set the CAML Query&lt;/span&gt;
  182. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 29:     CAMLQuery: newsDefaults.CAMLQuery,
  183. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 30:     &lt;span style=&quot;color: #008000&quot;&gt;// Set the total number of items to return.&lt;/span&gt;
  184. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 31:     CAMLRowLimit: newsDefaults.CAMLRowLimit,
  185. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 32:     &lt;span style=&quot;color: #008000&quot;&gt;// Set the query options&lt;/span&gt;
  186. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 33:     CAMLQueryOptions: newsDefaults.CAMLQueryOptions,
  187. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 34:     &lt;span style=&quot;color: #008000&quot;&gt;// Set a callback function to handle the returned data.&lt;/span&gt;
  188. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 35:     completefunc: &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt;(xData, &lt;span style=&quot;color: #0000ff&quot;&gt;status&lt;/span&gt;) {
  189. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 36:       &lt;span style=&quot;color: #008000&quot;&gt;// Iterate through all returned rows and create a new FeaturedNewsStory&lt;/span&gt;
  190. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 37:       $(xData.responseXML).&lt;span style=&quot;color: #0000ff&quot;&gt;find&lt;/span&gt;(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;z\\:row&lt;/span&gt;&amp;quot;).each(&lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt; () {
  191. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 38:         &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; item = &lt;span style=&quot;color: #0000ff&quot;&gt;new&lt;/span&gt; FeaturedNewsStory();
  192. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 39:         item.Title = $(&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;).attr(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;ows_Title&lt;/span&gt;&amp;quot;);
  193. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 40:         item.CompanyLocation = $(&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;).attr(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;ows_Corporate_x0020_Location&lt;/span&gt;&amp;quot;);
  194. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 41:         item.Comments = $(&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;).attr(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;ows_Comments&lt;/span&gt;&amp;quot;);
  195. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 42:         item.RollupImage = $(&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;).attr(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;ows_PublishingRollupImage&lt;/span&gt;&amp;quot;);
  196. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 43:         item.FeatureImage = $(&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;).attr(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;ows_Featured_x0020_Image&lt;/span&gt;&amp;quot;);
  197. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 44:         item.PublishDate = $(&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;).attr(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;ows_ArticleStartDate&lt;/span&gt;&amp;quot;);
  198. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 45:         item.ByLine = $(&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;).attr(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;ows_ArticleByLine&lt;/span&gt;&amp;quot;);
  199. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 46:         item.ServerURL = $(&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;).attr(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;ows_ServerUrl&lt;/span&gt;&amp;quot;);
  200. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 47:         &lt;span style=&quot;color: #008000&quot;&gt;// Extend the array and place the new item into it.&lt;/span&gt;
  201. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 48:         itemList.push(item);
  202. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 49:       });
  203. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 50:     }  
  204. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 51:   });
  205. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 52:   &lt;span style=&quot;color: #008000&quot;&gt;// Return the array of items.&lt;/span&gt;
  206. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 53:   &lt;span style=&quot;color: #0000ff&quot;&gt;return&lt;/span&gt; itemList;
  207. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 54: }
  208. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 55: &lt;/pre&gt;&lt;/pre&gt;
  209.  
  210. &lt;p&gt;Finally, call the script once the page is ready and render the contents.&lt;/p&gt;
  211.  
  212. &lt;pre style=&quot;border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 580px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px&quot;&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  1: &lt;span style=&quot;color: #008000&quot;&gt;// Use the jQuery way to queue a function for execution when&lt;/span&gt;
  213. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  2: &lt;span style=&quot;color: #008000&quot;&gt;// the page is ready. &lt;/span&gt;
  214. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  3: $(&lt;span style=&quot;color: #0000ff&quot;&gt;document&lt;/span&gt;).ready(&lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt; () { initialize(); });
  215. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  4:
  216. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  5: &lt;span style=&quot;color: #008000&quot;&gt;// Function that makes a call to the web service and then&lt;/span&gt;
  217. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  6: &lt;span style=&quot;color: #008000&quot;&gt;// renders the featured news content within the specified &lt;/span&gt;
  218. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  7: &lt;span style=&quot;color: #008000&quot;&gt;// placeholders.&lt;/span&gt;
  219. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  8: &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt; initialize() {
  220. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  9:   &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; newsPages = $(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;#NewsPages&lt;/span&gt;&amp;quot;);
  221. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 10:   &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; newsTabs = $(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;#NewsTabs&lt;/span&gt;&amp;quot;);
  222. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 11:   &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; Items = &lt;span style=&quot;color: #0000ff&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Array&lt;/span&gt;();
  223. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 12:
  224. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 13:   &lt;span style=&quot;color: #008000&quot;&gt;// Get all of the featured news items.&lt;/span&gt;
  225. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 14:   Items = loadNewsArticles();
  226. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 15:   &lt;span style=&quot;color: #0000ff&quot;&gt;for&lt;/span&gt;(i=0; i &amp;lt; Items.&lt;span style=&quot;color: #0000ff&quot;&gt;length&lt;/span&gt;; i++)
  227. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 16:   {
  228. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 17:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; item = Items[i];
  229. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 18:     &lt;span style=&quot;color: #008000&quot;&gt;// Make use of the FeaturedNewsStory object to get the appropriate markup for a tab.&lt;/span&gt;
  230. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 19:     $(newsTabs).append(item.GetTab());
  231. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 20:     &lt;span style=&quot;color: #008000&quot;&gt;// Make use of the FeaturedNewsStory object to get the appropriate markup for a news snippet.&lt;/span&gt;
  232. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 21:     $(newsPages).append(item.GetStory());
  233. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 22:   }
  234. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 23:  
  235. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 24:   &lt;span style=&quot;color: #008000&quot;&gt;// Use jQuery Tools to create tabs.&lt;/span&gt;
  236. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 25:   $(newsTabs).tabs(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;#NewsPages &amp;gt; div&lt;/span&gt;&amp;quot;);
  237. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; 26: }&lt;/pre&gt;&lt;/pre&gt;
  238.  
  239. &lt;p&gt;While this may already be working, CSS is needed to improve the presentation. Here’s the full solution, including CSS, that is placed inside a standard content editor web part:&lt;/p&gt;
  240.  
  241. &lt;pre style=&quot;border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 580px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px&quot;&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;/Resources/jquery-1.4.2.min.js&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  242. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;/Resources/jquery.SPServices-0.5.3.min.js&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  243. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;/Resources/jquery.tools.min.js&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  244. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  245. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;var newsItems = new Array();
  246. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;$(document).ready(function () { initialize(); });
  247. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;function initialize() {
  248. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  var newsPages = $(&amp;quot;#NewsPages&amp;quot;);
  249. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  var newsTabs = $(&amp;quot;#NewsTabs&amp;quot;);
  250. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  var Items = new Array();
  251. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  Items = loadNewsArticles();
  252. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  for(i=0; i &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt; Items.length; i++)
  253. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  {
  254. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    var item = Items[i];
  255. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    $(newsTabs).append(item.GetTab());
  256. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    $(newsPages).append(item.GetStory());
  257. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  }
  258. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  
  259. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  $(newsTabs).tabs(&amp;quot;#NewsPages &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt; div&amp;quot;);
  260. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  261. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;function FeaturedNewsStory()
  262. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;{
  263. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.Title = &#39;&#39;;
  264. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.CompanyLocation = &#39;&#39;;
  265. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.Comments = &#39;&#39;;
  266. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.RollupImage = &#39;&#39;;
  267. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.FeatureImage = &#39;&#39;;
  268. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.ByLine = &#39;&#39;;
  269. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.PublishDate = &#39;&#39;;
  270. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.ServerURL = &#39;&#39;;
  271. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  
  272. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.FeatureImageURL = function () {
  273. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    if (this.FeatureImage != null) {
  274. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      var startPos = this.FeatureImage.indexOf(&amp;quot;src=&amp;quot;);
  275. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      if (startPos &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt; 0) {
  276. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        return &#39;N/A&#39;;
  277. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      }
  278. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      startPos += 5;
  279. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      var endPos = this.FeatureImage.indexOf(&amp;quot;\&amp;quot;&amp;quot;,startPos);
  280. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      var ImageURL = this.FeatureImage.substring(startPos,endPos);
  281. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      return ImageURL;
  282. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    }
  283. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    return &#39;N/A&#39;;
  284. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  };
  285. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  
  286. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.RollupImageURL = function () {
  287. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    if (this.RollupImage != null) {
  288. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      var startPos = this.RollupImage.indexOf(&amp;quot;src=&amp;quot;);
  289. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      if (startPos &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt; 0) {
  290. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        return &#39;N/A&#39;;
  291. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      }
  292. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      startPos += 5;
  293. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      var endPos = this.RollupImage.indexOf(&amp;quot;\&amp;quot;&amp;quot;,startPos);
  294. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      var ImageURL = this.RollupImage.substring(startPos,endPos);
  295. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      return ImageURL;
  296. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    }
  297. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    return &#39;N/A&#39;;
  298. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  };
  299. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  
  300. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.GetStory = function() {
  301. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    var html = &#39;&#39;;
  302. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;class&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Page&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;;
  303. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    if (this.FeatureImageURL() != &#39;N/A&#39;) {
  304. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;img&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;&amp;quot; + this.FeatureImageURL() + &amp;quot;&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&amp;quot;;
  305. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    }
  306. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;h1&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot; + this.Title + &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;h1&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;;
  307. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;class&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Author&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot; + this.ByLine + &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;;
  308. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot; + this.Comments + &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;;
  309. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;class&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;ReadMore&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;a&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;href&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;&amp;quot; + this.ServerURL + &amp;quot;&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;Read More...&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;a&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;;
  310. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;cite&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot; + this.CompanyLocation + &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;cite&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;;
  311. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;;
  312. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    return html;
  313. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  };
  314. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  
  315. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  this.GetTab = function () {
  316. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    var html = &#39;&#39;;
  317. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;li&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;a&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;href&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;#&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;;
  318. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    if (this.RollupImageURL() != &#39;N/A&#39;) {
  319. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;         html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;img&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;src&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;&amp;quot; + this.RollupImageURL() + &amp;quot;&#39;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;alt&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;&amp;quot; + this.Title + &amp;quot;&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&amp;quot;;
  320. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    }
  321. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    
  322. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    var month = &amp;quot;&amp;quot;;
  323. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    var month = this.PublishDate.substring(5,7);
  324. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    var day = &amp;quot;&amp;quot;;
  325. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    var day = this.PublishDate.substring(8,10);
  326. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    var publishText = &amp;quot;&amp;quot;;
  327. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    switch(month)
  328. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    {
  329. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      case &#39;01&#39;:
  330. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;JAN &amp;quot; + day;
  331. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  332. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      case &#39;02&#39;:
  333. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;FEB &amp;quot; + day;
  334. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  335. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      case &#39;03&#39;:
  336. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;MAR &amp;quot; + day;
  337. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  338. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      case &#39;04&#39;:
  339. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;APR &amp;quot; + day;
  340. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  341. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      case &#39;05&#39;:
  342. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;MAY &amp;quot; + day;
  343. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  344. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      case &#39;06&#39;:
  345. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;JUN &amp;quot; + day;
  346. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  347. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      case &#39;07&#39;:
  348. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;JUL &amp;quot; + day;
  349. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  350. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      case &#39;08&#39;:
  351. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;AUG &amp;quot; + day;
  352. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  353. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      case &#39;09&#39;:
  354. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;SEP &amp;quot; + day;
  355. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  356. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      case &#39;10&#39;:
  357. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;OCT &amp;quot; + day;
  358. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  359. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      case &#39;11&#39;:
  360. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;NOV &amp;quot; + day;
  361. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  362. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      default:
  363. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        publishText = &amp;quot;DEC &amp;quot; + day;
  364. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        break;
  365. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    }
  366. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;class&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;PubDate&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot; + publishText + &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;;
  367. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    html += &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;a&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;li&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;;
  368. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    return html;
  369. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  };
  370. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  371. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;function loadNewsArticles() {
  372. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  var itemList = new Array();
  373. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  var newsDefaults = {
  374. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    webURL: &amp;quot;/News&amp;quot;,
  375. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    listName: &amp;quot;Pages&amp;quot;,
  376. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    CAMLViewFields: &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ViewFields&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&amp;quot;,//&amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ViewFields&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;FieldRef&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;ID&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Featured_x0020_Image&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;FieldRef&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;ID&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Title&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;FieldRef&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;ID&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Comments&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;FieldRef&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;ID&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;PublishingRollupImage&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;FieldRef&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;ID&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Corporate_x0020_Location&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ViewFields&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;,
  377. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    CAMLQuery: &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Query&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Where&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;And&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Eq&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;FieldRef&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;ContentType&#39;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Value&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Choice&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;Company Press Release&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Value&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Eq&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Eq&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;FieldRef&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Featured_x0020_Item&#39;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Value&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;Boolean&#39;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;1&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Value&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Eq&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;And&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Where&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;OrderBy&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;FieldRef&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;ArticleStartDate&#39;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Ascending&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&#39;False&#39;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;OrderBy&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Query&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&amp;quot;,
  378. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    CAMLRowLimit: 5,
  379. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    CAMLQueryOptions: &amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;QueryOptions&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&amp;quot;
  380. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  };
  381. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  $().SPServices({
  382. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    operation: &amp;quot;GetListItems&amp;quot;,
  383. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    async: false,
  384. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    webURL: newsDefaults.webURL,
  385. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    listName: newsDefaults.listName,
  386. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    CAMLViewFields: newsDefaults.CAMLViewFields,
  387. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    CAMLQuery: newsDefaults.CAMLQuery,
  388. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    CAMLRowLimit: newsDefaults.CAMLRowLimit,
  389. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    CAMLQueryOptions: newsDefaults.CAMLQueryOptions,
  390. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    completefunc: function(xData, status) {
  391. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      $(xData.responseXML).find(&amp;quot;z\\:row&amp;quot;).each(function () {
  392. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        var item = new FeaturedNewsStory();
  393. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        item.Title = $(this).attr(&amp;quot;ows_Title&amp;quot;);
  394. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        item.CompanyLocation = $(this).attr(&amp;quot;ows_Corporate_x0020_Location&amp;quot;);
  395. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        item.Comments = $(this).attr(&amp;quot;ows_Comments&amp;quot;);
  396. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        item.RollupImage = $(this).attr(&amp;quot;ows_PublishingRollupImage&amp;quot;);
  397. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        item.FeatureImage = $(this).attr(&amp;quot;ows_Featured_x0020_Image&amp;quot;);
  398. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        item.PublishDate = $(this).attr(&amp;quot;ows_ArticleStartDate&amp;quot;);
  399. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        item.ByLine = $(this).attr(&amp;quot;ows_ArticleByLine&amp;quot;);
  400. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        item.ServerURL = $(this).attr(&amp;quot;ows_ServerUrl&amp;quot;);
  401. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        itemList.push(item);
  402. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      });
  403. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    }  
  404. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  });
  405. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  return itemList;
  406. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  407. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;script&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  408. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;style&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  409. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;#NewsTabs {
  410. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  margin: 0 !important;
  411. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  padding: 0px;
  412. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  height: 68px;
  413. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  border-bottom: 1px black solid;
  414. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  415. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;#NewsTabs li {
  416. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  float: left;
  417. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  padding: 0;
  418. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  margin: 0;
  419. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  list-style: none;
  420. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  421. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;#NewsTabs a {
  422. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  float:left;
  423. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  font-size:13px;
  424. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  display:block;
  425. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  padding:5px 30px;  
  426. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  text-decoration:none;
  427. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  border:1px solid #666;  
  428. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  border-bottom:0px;
  429. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  height:66px;
  430. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  background-color:#efefef;
  431. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  color:#777;
  432. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  margin-right:2px;
  433. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  -moz-border-radius-topleft: 4px;
  434. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  -moz-border-radius-topright:4px;
  435. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  position:relative;
  436. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  top:1px;  
  437. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  438. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;#NewsTabs li img
  439. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;{
  440. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  clear: both;
  441. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  text-align: center;
  442. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  width: 32px;
  443. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  margin-top: 8px;
  444. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  display: block;
  445. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  border: none;
  446. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  447. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;#NewsTabs a:hover {
  448. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  background-color:#F7F7F7;
  449. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  color:#333;
  450. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  451. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  
  452. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;/* selected tab */
  453. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;#NewsTabs a.current {
  454. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  background-color:#ddd;
  455. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  border-bottom:1px solid #ddd;  
  456. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  color:#000;  
  457. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  cursor:default;
  458. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  459. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;.Page
  460. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;{
  461. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  display:none;
  462. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  border:1px solid #666;
  463. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  border-width:0 1px 1px 1px;
  464. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  min-height:150px;
  465. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  padding:15px 20px;
  466. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  background-color:#ddd;  
  467. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  overflow: auto;  
  468. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  height: 275px;
  469. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  font-family: Arial, Helvetica, sans-serif;
  470. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  font-size: 12px;
  471. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  472. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;.PubDate
  473. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;{
  474. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  font-size: 8px;
  475. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  color: white;
  476. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  background: #444;
  477. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  margin-top: 4px;
  478. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  padding-left: 8px;
  479. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  padding-right: 8px;
  480. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  padding-top: 2px;
  481. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  padding-bottom: 2px;
  482. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  483. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;#FeaturedNews{
  484. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    width: 550px;
  485. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  486. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;#NewsPages img
  487. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;{
  488. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  float: right;
  489. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  width: 200px;
  490. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  margin: 0 3 0 15;
  491. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  border: 3px solid #666;
  492. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  493. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;#NewsPages cite
  494. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;{
  495. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  font-size: 12px;
  496. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  font-variant: normal;
  497. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  font-style: normal;
  498. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  padding-top: 0px;
  499. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  margin-top: 22px;
  500. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  display: inline-block;
  501. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  502. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;#NewsPages h1
  503. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;{
  504. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; font-size: 14px;
  505. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; padding-top: 0px;
  506. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; margin-top: 0px;
  507. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; padding-top: 8px;
  508. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; display: inline-block;
  509. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; border-top: 1px solid #666;
  510. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; border-bottom: 1px solid #666;
  511. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; padding-bottom: 8px;
  512. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt; margin-bottom: 16px;
  513. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  514. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;div.clear
  515. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;{
  516. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  clear: both;
  517. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;}
  518. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;style&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  519. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;FeaturedNews&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  520. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ul&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;NewsTabs&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  521. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ul&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  522. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;id&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;NewsPages&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  523. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  524. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;div&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  525. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffffff; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;/pre&gt;  </description><link>http://wssdevelopment.blogspot.com/2010/04/create-featured-news-section-with.html</link><author>noreply@blogger.com (Chris)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/_YBA30Jkzr-w/S7zWPA8PcYI/AAAAAAAAANY/jIbcsjBiTY0/s72-c/image_thumb%5B9%5D.png?imgmax=800" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-5448528200411859309</guid><pubDate>Wed, 27 Jan 2010 17:27:00 +0000</pubDate><atom:updated>2010-01-27T11:27:11.805-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tips and Tricks</category><title>I Need To… XSLT Modification for Sorting by Title</title><description>&lt;p&gt;Recently a co-worker contacted me about changing the XSLT in the &lt;strong&gt;I need to…&lt;/strong&gt; web part so that items in the drop down are sorted by Title instead of the default, which appears to be ID. Here’s the working response I was able to provide back to him:&lt;/p&gt;  &lt;p&gt;There is a sorting command available in xslt. It has to be placed within the XSLT area of the web-part, but you’ll have to make it XML Safe. Here’s the line to add: &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;lt;xsl:sort select=&amp;quot;@Title&amp;quot;/&amp;gt; &lt;/p&gt;  &lt;p&gt;I’ve modified the webpart file you sent to include this line. Here’s the text of the file with the changes highlighted: &lt;/p&gt;  &lt;pre style=&quot;border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 580px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px&quot;&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;webParts&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  526. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;webPart&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;xmlns&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;http://schemas.microsoft.com/WebPart/v3&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  527. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;metaData&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  528. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;type&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Microsoft.SharePoint.Portal.WebControls.TasksAndToolsWebPart, Microsoft.SharePoint.Portal, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  529. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;importErrorMessage&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;Cannot import this Web Part.&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;importErrorMessage&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  530. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;metaData&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  531. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;data&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  532. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;properties&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  533. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Height&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  534. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;HelpMode&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;helpmode&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;Modeless&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  535. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;ChromeType&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;chrometype&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;Default&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  536. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;PageSize&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;int&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;-1&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  537. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Description&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;Displays tasks and tools from a list&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  538. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;DataSourceID&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  539. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;MissingAssembly&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;Cannot import this Web Part.&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  540. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;ShowWithSampleData&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;bool&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;False&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  541. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;AllowConnect&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;bool&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;True&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  542. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Xsl&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  543. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                    &amp;amp;lt;xsl:stylesheet xmlns:x=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;
  544. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                    version=&amp;quot;1.0&amp;quot; exclude-result-prefixes=&amp;quot;xsl ddwrt slwrt msxsl&amp;quot; xmlns:ddwrt=&amp;quot;http://schemas.microsoft.com/WebParts/v2/DataView/runtime&amp;quot; xmlns:slwrt=&amp;quot;http://schemas.microsoft.com/WebParts/v3/SummaryLink/runtime&amp;quot;
  545. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                        xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot; xmlns:msxsl=&amp;quot;urn:schemas-microsoft-com:xslt&amp;quot; xmlns:tnt=&amp;quot;urn:schemas-microsoft-com:sharepoint:TasksAndToolsWebPart&amp;quot; &amp;amp;gt;
  546. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                        &amp;amp;lt;xsl:param name=&amp;quot;tasksAndtools_IsRTL&amp;quot; /&amp;amp;gt;
  547. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                        &amp;amp;lt;xsl:param name=&amp;quot;tasksAndTools_Width&amp;quot; /&amp;amp;gt;
  548. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                        &amp;amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;amp;gt;
  549. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                            &amp;amp;lt;xsl:call-template name=&amp;quot;MainTemplate&amp;quot;/&amp;amp;gt;
  550. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                        &amp;amp;lt;/xsl:template&amp;amp;gt;
  551. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                        &amp;amp;lt;xsl:template name=&amp;quot;MainTemplate&amp;quot; xmlns:ddwrt=&amp;quot;http://schemas.microsoft.com/WebParts/v2/DataView/runtime&amp;quot; xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot; xmlns:msxsl=&amp;quot;urn:schemas-microsoft-com:xslt&amp;quot;&amp;amp;gt;
  552. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                            &amp;amp;lt;xsl:variable name=&amp;quot;Rows&amp;quot; select=&amp;quot;/dsQueryResponse/NewDataSet/Row&amp;quot;/&amp;amp;gt;
  553. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                            &amp;amp;lt;xsl:variable name=&amp;quot;RowCount&amp;quot; select=&amp;quot;count($Rows)&amp;quot;/&amp;amp;gt;
  554. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                            &amp;amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;border-collapse:collapse; margin:0px;&amp;quot;&amp;amp;gt;
  555. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                &amp;amp;lt;tr style=&amp;quot;margin-top:3px;margin-bottom:1px;height:28px;border:0px;&amp;quot;&amp;amp;gt;
  556. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                    &amp;amp;lt;td style=&amp;quot;padding-left:4px; white-space:nowrap ;&amp;quot;&amp;amp;gt;
  557. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                        &amp;amp;lt;xsl:if test=&amp;quot;string-length($tasksAndTools_Width) != 0&amp;quot;&amp;amp;gt;                                                        
  558. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                            &amp;amp;lt;select id=&amp;quot;TasksAndToolsDDID&amp;quot; class=&amp;quot;ms-selwidth&amp;quot; style=&amp;quot;width:{$tasksAndTools_Width}&amp;quot; size=&amp;quot;1&amp;quot; title=&amp;quot;Choose a task that you need to perform&amp;quot; &amp;amp;gt;
  559. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                            &amp;amp;lt;option selected=&amp;quot;true&amp;quot; value=&amp;quot;0&amp;quot;&amp;amp;gt;Select Organization&amp;amp;lt;/option&amp;amp;gt;
  560. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                            &amp;amp;lt;xsl:call-template name=&amp;quot;MainTemplate.body&amp;quot;&amp;amp;gt;
  561. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                                &amp;amp;lt;xsl:with-param name=&amp;quot;Rows&amp;quot; select=&amp;quot;$Rows&amp;quot;/&amp;amp;gt;
  562. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                            &amp;amp;lt;/xsl:call-template&amp;amp;gt;
  563. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                        &amp;amp;lt;/select&amp;amp;gt;
  564. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                        &amp;amp;lt;/xsl:if&amp;amp;gt;
  565. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                        &amp;amp;lt;xsl:if test=&amp;quot;string-length($tasksAndTools_Width) = 0&amp;quot;&amp;amp;gt;
  566. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                        &amp;amp;lt;select id=&amp;quot;TasksAndToolsDDID&amp;quot; class=&amp;quot;ms-selwidth&amp;quot; size=&amp;quot;1&amp;quot; title=&amp;quot;Choose a task that you need to perform&amp;quot;&amp;amp;gt;
  567. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                            &amp;amp;lt;option selected=&amp;quot;true&amp;quot; value=&amp;quot;0&amp;quot;&amp;amp;gt;Select Organization&amp;amp;lt;/option&amp;amp;gt;
  568. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                            &amp;amp;lt;xsl:call-template name=&amp;quot;MainTemplate.body&amp;quot;&amp;amp;gt;
  569. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                                &amp;amp;lt;xsl:with-param name=&amp;quot;Rows&amp;quot; select=&amp;quot;$Rows&amp;quot;/&amp;amp;gt;
  570. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                            &amp;amp;lt;/xsl:call-template&amp;amp;gt;
  571. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                        &amp;amp;lt;/select&amp;amp;gt;
  572. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                        &amp;amp;lt;/xsl:if&amp;amp;gt;
  573. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                    &amp;amp;lt;/td&amp;amp;gt;
  574. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                    &amp;amp;lt;xsl:if test=&amp;quot;$tasksAndtools_IsRTL = true()&amp;quot;&amp;amp;gt;
  575. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                    &amp;amp;lt;td style=&amp;quot;padding-right:5px; padding-left: 14px;white-space:nowrap ;&amp;quot;&amp;amp;gt;                                                              
  576. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                        &amp;amp;lt;a id=&amp;quot;TasksAndToolsGo&amp;quot; accesskey=&amp;quot;G&amp;quot; title=&amp;quot;Go&amp;quot; href=&amp;quot;javascript:TATWP_jumpMenu()&amp;quot;&amp;amp;gt;
  577. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                            &amp;amp;lt;img title=&amp;quot;Go&amp;quot; alt=&amp;quot;Go&amp;quot; border=&amp;quot;0&amp;quot; src=&amp;quot;/_layouts/images/icongo01RTL.gif&amp;quot; style=&amp;quot;border-width:0px;&amp;quot; onmouseover=&amp;quot;this.src=&#39;/_layouts/images/icongo02RTL.gif&#39;&amp;quot; onmouseout=&amp;quot;this.src=&#39;/_layouts/images/icongo01RTL.gif&#39;&amp;quot;/&amp;amp;gt;
  578. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                        &amp;amp;lt;/a&amp;amp;gt;
  579. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                    &amp;amp;lt;/td&amp;amp;gt;
  580. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                    &amp;amp;lt;/xsl:if&amp;amp;gt;
  581. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                    &amp;amp;lt;xsl:if test=&amp;quot;$tasksAndtools_IsRTL = false()&amp;quot;&amp;amp;gt;
  582. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                    &amp;amp;lt;td style=&amp;quot;padding-right:14px; padding-left: 5px;white-space:nowrap ;&amp;quot;&amp;amp;gt;                                                              
  583. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                        &amp;amp;lt;a id=&amp;quot;TasksAndToolsGo&amp;quot; accesskey=&amp;quot;G&amp;quot; title=&amp;quot;Go&amp;quot; href=&amp;quot;javascript:TATWP_jumpMenu()&amp;quot;&amp;amp;gt;
  584. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                            &amp;amp;lt;img title=&amp;quot;Go&amp;quot; alt=&amp;quot;Go&amp;quot; border=&amp;quot;0&amp;quot; src=&amp;quot;/_layouts/images/icongo01.gif&amp;quot; style=&amp;quot;border-width:0px;&amp;quot; onmouseover=&amp;quot;this.src=&#39;/_layouts/images/icongo02.gif&#39;&amp;quot; onmouseout=&amp;quot;this.src=&#39;/_layouts/images/icongo01.gif&#39;&amp;quot; /&amp;amp;gt;
  585. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                        &amp;amp;lt;/a&amp;amp;gt;
  586. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                    &amp;amp;lt;/td&amp;amp;gt;                                                                    
  587. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                    &amp;amp;lt;/xsl:if&amp;amp;gt;
  588. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                &amp;amp;lt;/tr&amp;amp;gt;
  589. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                            &amp;amp;lt;/table&amp;amp;gt;
  590. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                        &amp;amp;lt;/xsl:template&amp;amp;gt;
  591. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                        &amp;amp;lt;xsl:template name=&amp;quot;MainTemplate.body&amp;quot; xmlns:ddwrt=&amp;quot;http://schemas.microsoft.com/WebParts/v2/DataView/runtime&amp;quot; xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot; xmlns:msxsl=&amp;quot;urn:schemas-microsoft-com:xslt&amp;quot;&amp;amp;gt;
  592. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                            &amp;amp;lt;xsl:param name=&amp;quot;Rows&amp;quot;/&amp;amp;gt;
  593. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                            &amp;amp;lt;xsl:for-each select=&amp;quot;$Rows&amp;quot;&amp;amp;gt;
  594. &lt;/pre&gt;&lt;pre style=&quot;background-color: #ffff00; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                &amp;amp;lt;xsl:sort select=&amp;quot;@Title&amp;quot;/&amp;amp;gt;
  595. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                &amp;amp;lt;xsl:variable name=&amp;quot;GroupStyle&amp;quot; select=&amp;quot;&#39;auto&#39;&amp;quot;/&amp;amp;gt;
  596. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                &amp;amp;lt;option style=&amp;quot;display:{$GroupStyle}&amp;quot; value=&amp;quot;{ddwrt:EnsureAllowedProtocol(substring-before(@URL, &#39;, &#39;))}&amp;quot; &amp;amp;gt;
  597. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                    &amp;amp;lt;xsl:value-of select=&amp;quot;@Title&amp;quot;/&amp;amp;gt;
  598. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                                &amp;amp;lt;/option&amp;amp;gt;
  599. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                            &amp;amp;lt;/xsl:for-each&amp;amp;gt;
  600. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                        &amp;amp;lt;/xsl:template&amp;amp;gt;
  601. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;                                    &amp;amp;lt;/xsl:stylesheet&amp;amp;gt;
  602. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  603. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;ViewFlag&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  604. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;FireInitialRow&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;bool&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;True&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  605. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;TitleUrl&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  606. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;NoDefaultStyle&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  607. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;ListName&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;null&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;true&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  608. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;TasksAndToolsWebUrl&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;/finance/ratemanagement/ba&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  609. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;AllowEdit&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;bool&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;True&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  610. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;ParameterBindings&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  611. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;CatalogIconImageUrl&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  612. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Default&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  613. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;ChromeState&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;chromestate&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;Normal&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  614. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;DataSourcesString&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  615. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Direction&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;direction&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;NotSet&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  616. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;FilterCategory&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;Visible&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  617. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;CacheXslStorage&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;bool&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;True&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  618. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;AllowMinimize&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;bool&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;True&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  619. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;UseSQLDataSourcePaging&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;bool&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;True&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  620. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;CacheXslTimeOut&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;int&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;86400&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  621. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;FilterFieldValue&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;Yes&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  622. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;ExportMode&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;exportmode&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;All&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  623. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;TasksAndToolsListName&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;ineedto&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  624. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;HelpUrl&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  625. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;SampleData&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;         &amp;amp;lt;dsQueryResponse&amp;amp;gt;          &amp;amp;lt;NewDataSet&amp;amp;gt;           &amp;amp;lt;Row /&amp;amp;gt;          &amp;amp;lt;/NewDataSet&amp;amp;gt;          &amp;amp;lt;/dsQueryResponse&amp;amp;gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  626. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;AllowClose&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;bool&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;True&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  627. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;DisplayName&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  628. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;TitleIconImageUrl&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  629. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;TasksAndToolsWidth&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;px;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  630. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;ViewContentTypeId&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  631. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;XslLink&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;null&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;true&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  632. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;AllowZoneChange&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;bool&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;True&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  633. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Hidden&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;bool&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;False&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  634. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;DataFields&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  635. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Title&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;See My Organization&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  636. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Width&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;string&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  637. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;        &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;AllowHide&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;bool&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;True&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;property&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  638. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;      &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;properties&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  639. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;    &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;data&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  640. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;  &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;webPart&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  641. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;webParts&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  642. &lt;/pre&gt;&lt;pre style=&quot;background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 10px&quot;&gt;&lt;/pre&gt;&lt;/pre&gt;
  643.  
  644. &lt;pre&gt;Just export the webpart from the site and make the change to the XSLT and then import the webpart back into the site.&lt;/pre&gt;  </description><link>http://wssdevelopment.blogspot.com/2010/01/i-need-to-xslt-modification-for-sorting.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-5979018453939462544</guid><pubDate>Wed, 27 Jan 2010 17:25:00 +0000</pubDate><atom:updated>2010-01-27T11:28:34.949-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Customization</category><category domain="http://www.blogger.com/atom/ns#">Development Approaches</category><title>Custom Theme and Feature Stapling via WSP files</title><description>Looking to deploy a custom theme in a solution file? Here’s how to modify the SPThemes.xml file programmatically using Linq to XML. The only thing missing would be clean-up of sites using the theme upon uninstall. &lt;br /&gt;
  645. &lt;a href=&quot;http://blogs.msdn.com/ketaanhs/archive/2009/07/01/modifying-spthemes-xml-programmatically-to-deploy-new-themes-moss-2007-wss-3-0.aspx&quot;&gt;http://blogs.msdn.com/ketaanhs/archive/2009/07/01/modifying-spthemes-xml-programmatically-to-deploy-new-themes-moss-2007-wss-3-0.aspx&lt;/a&gt; &lt;br /&gt;
  646. Recently used this for a client along with feature stapling to deploy a custom theme and then force all newly created sites to use the theme. I used the WSPBuilder templates for VS2008 (I prefer these above the templates VsWSS). &lt;br /&gt;
  647. Step 1: Create a WebApplication scoped feature to handle the FeatureStapling and create a SPFeatureReceiver for the feature to install the feature into the SPThemes file using the technique above.&lt;br /&gt;
  648. &lt;pre style=&quot;background-color: #fbfbfb; border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; border-right: #cecece 1px solid; border-top: #cecece 1px solid; min-height: 40px; overflow: auto; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; padding-top: 5px; width: 580px;&quot;&gt;&lt;br /&gt;
  649. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;Feature&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;xmlns&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;http://schemas.microsoft.com/sharepoint/&quot;&lt;/span&gt;
  650. &lt;/pre&gt;
  651. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Creator&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;Chris Quick, Tribridge&quot;&lt;/span&gt;
  652. &lt;/pre&gt;
  653. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Description&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;Forces default Client branding for all sites&quot;&lt;/span&gt;
  654. &lt;/pre&gt;
  655. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Hidden&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;false&quot;&lt;/span&gt;
  656. &lt;/pre&gt;
  657. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Id&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;9DEE24AC-1FF9-4fb3-AC07-2A0D9D616D99&quot;&lt;/span&gt;
  658. &lt;/pre&gt;
  659. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Scope&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;WebApplication&quot;&lt;/span&gt;
  660. &lt;/pre&gt;
  661. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Title&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;Client Default Branding&quot;&lt;/span&gt;
  662. &lt;/pre&gt;
  663. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Version&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;1.0.0.0&quot;&lt;/span&gt;
  664. &lt;/pre&gt;
  665. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;ReceiverAssembly&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;Client.SharePoint.Branding, Version=1.0.0.0, Culture=neutral, PublicKeyToken=7622be71ccc3f186&quot;&lt;/span&gt;
  666. &lt;/pre&gt;
  667. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;ReceiverClass&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;Client.SharePoint.Branding.ClientThemeInstaller&quot;&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;
  668. &lt;/pre&gt;
  669. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;  &lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;ElementManifests&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;
  670. &lt;/pre&gt;
  671. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;    &lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;ElementManifest&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;Location&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;elements.xml&quot;&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;/&amp;gt;&lt;/span&gt;
  672. &lt;/pre&gt;
  673. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;  &lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;ElementManifests&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;
  674. &lt;/pre&gt;
  675. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;Feature&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  676. &lt;br /&gt;
  677. &lt;/pre&gt;
  678. Step 2: Setup feature stapling in your ElementManifest file. Make sure the ID of the feature to staple is the ID of the feature that applies the branding (created next).&lt;br /&gt;
  679. &lt;pre style=&quot;background-color: #fbfbfb; border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; border-right: #cecece 1px solid; border-top: #cecece 1px solid; min-height: 40px; overflow: auto; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; padding-top: 5px; width: 580px;&quot;&gt;&lt;br /&gt;
  680. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;Elements&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;xmlns&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;http://schemas.microsoft.com/sharepoint/&quot;&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;
  681. &lt;/pre&gt;
  682. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;  &lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;FeatureSiteTemplateAssociation&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;Id&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;FA5FE9BA-8DCB-40c8-950B-517AC11FCC23&quot;&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;TemplateName&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;GLOBAL&quot;&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;/&amp;gt;&lt;/span&gt;
  683. &lt;/pre&gt;
  684. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;  &lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;FeatureSiteTemplateAssociation&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;Id&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;FA5FE9BA-8DCB-40c8-950B-517AC11FCC23&quot;&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;TemplateName&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;STS#1&quot;&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;/&amp;gt;&lt;/span&gt;
  685. &lt;/pre&gt;
  686. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;Elements&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  687. &lt;br /&gt;
  688. &lt;/pre&gt;
  689. Step 3: Create another feature scoped to the Web that will have a feature receiver using a co-worker’s method of applying a theme.&lt;br /&gt;
  690. &lt;pre style=&quot;background-color: #fbfbfb; border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; border-right: #cecece 1px solid; border-top: #cecece 1px solid; min-height: 40px; overflow: auto; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; padding-top: 5px; width: 580px;&quot;&gt;&lt;br /&gt;
  691. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;Feature&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;xmlns&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;http://schemas.microsoft.com/sharepoint/&quot;&lt;/span&gt;
  692. &lt;/pre&gt;
  693. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Creator&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;Chris Quick, Tribridge&quot;&lt;/span&gt;
  694. &lt;/pre&gt;
  695. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Description&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;Applies Branding to New Sites for Client&quot;&lt;/span&gt;
  696. &lt;/pre&gt;
  697. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Id&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;FA5FE9BA-8DCB-40c8-950B-517AC11FCC23&quot;&lt;/span&gt;
  698. &lt;/pre&gt;
  699. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Hidden&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;False&quot;&lt;/span&gt;
  700. &lt;/pre&gt;
  701. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Scope&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;Web&quot;&lt;/span&gt;
  702. &lt;/pre&gt;
  703. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Title&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;Client Branding Receiver&quot;&lt;/span&gt;
  704. &lt;/pre&gt;
  705. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;Version&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;1.0.0.0&quot;&lt;/span&gt;
  706. &lt;/pre&gt;
  707. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;ReceiverAssembly&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;Client.SharePoint.Branding, Version=1.0.0.0, Culture=neutral, PublicKeyToken=7622be71ccc3f186&quot;&lt;/span&gt;
  708. &lt;/pre&gt;
  709. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;         &lt;span style=&quot;color: red;&quot;&gt;ReceiverClass&lt;/span&gt;=&lt;span style=&quot;color: blue;&quot;&gt;&quot;Client.SharePoint.Branding.ClientBrandFeatureReceiver&quot;&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;
  710. &lt;/pre&gt;
  711. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;  
  712. &lt;/pre&gt;
  713. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: maroon;&quot;&gt;Feature&lt;/span&gt;&lt;span style=&quot;color: blue;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  714. &lt;br /&gt;
  715. &lt;/pre&gt;
  716. &lt;pre style=&quot;background-color: #fbfbfb; border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; border-right: #cecece 1px solid; border-top: #cecece 1px solid; min-height: 40px; overflow: auto; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; padding-top: 5px; width: 580px;&quot;&gt;&lt;br /&gt;
  717. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;using&lt;/span&gt; System;
  718. &lt;/pre&gt;
  719. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;using&lt;/span&gt; System.Collections.Generic;
  720. &lt;/pre&gt;
  721. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;using&lt;/span&gt; System.Text;
  722. &lt;/pre&gt;
  723. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;using&lt;/span&gt; Microsoft.SharePoint;
  724. &lt;/pre&gt;
  725. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;/pre&gt;
  726. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;namespace&lt;/span&gt; Client.SharePoint.Branding
  727. &lt;/pre&gt;
  728. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;{
  729. &lt;/pre&gt;
  730. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;    &lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; ClientBrandFeatureReceiver : SPFeatureReceiver
  731. &lt;/pre&gt;
  732. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;    {
  733. &lt;/pre&gt;
  734. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;override&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; FeatureActivated(SPFeatureReceiverProperties properties)
  735. &lt;/pre&gt;
  736. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        {
  737. &lt;/pre&gt;
  738. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            SPWeb currentWeb = (SPWeb)properties.Feature.Parent;
  739. &lt;/pre&gt;
  740. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.AllowUnsafeUpdates = &lt;span style=&quot;color: blue;&quot;&gt;true&lt;/span&gt;;
  741. &lt;/pre&gt;
  742. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.ApplyTheme(&quot;&lt;span style=&quot;color: darkred;&quot;&gt;Client&lt;/span&gt;&quot;);
  743. &lt;/pre&gt;
  744. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.SiteLogoUrl = &quot;&lt;span style=&quot;color: darkred;&quot;&gt;/_layouts/images/Client/Client-logo.gif&lt;/span&gt;&quot;;
  745. &lt;/pre&gt;
  746. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.Update();
  747. &lt;/pre&gt;
  748. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.AllowUnsafeUpdates = &lt;span style=&quot;color: blue;&quot;&gt;false&lt;/span&gt;;
  749. &lt;/pre&gt;
  750. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.Dispose();
  751. &lt;/pre&gt;
  752. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        }
  753. &lt;/pre&gt;
  754. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;/pre&gt;
  755. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;override&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; FeatureDeactivating(SPFeatureReceiverProperties properties)
  756. &lt;/pre&gt;
  757. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        {
  758. &lt;/pre&gt;
  759. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            SPWeb currentWeb = (SPWeb)properties.Feature.Parent;
  760. &lt;/pre&gt;
  761. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.AllowUnsafeUpdates = &lt;span style=&quot;color: blue;&quot;&gt;true&lt;/span&gt;;
  762. &lt;/pre&gt;
  763. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            &lt;span style=&quot;color: blue;&quot;&gt;string&lt;/span&gt; theme = currentWeb.Theme;
  764. &lt;/pre&gt;
  765. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            &lt;span style=&quot;color: blue;&quot;&gt;string&lt;/span&gt; logoUrl = currentWeb.SiteLogoUrl;
  766. &lt;/pre&gt;
  767. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.ApplyTheme(&quot;&lt;span style=&quot;color: darkred;&quot;&gt;none&lt;/span&gt;&quot;);
  768. &lt;/pre&gt;
  769. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.SiteLogoUrl = &quot;&lt;span style=&quot;color: darkred;&quot;&gt;/_layouts/images/titlegraphic.gif&lt;/span&gt;&quot;;
  770. &lt;/pre&gt;
  771. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.Update();
  772. &lt;/pre&gt;
  773. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.AllowUnsafeUpdates = &lt;span style=&quot;color: blue;&quot;&gt;false&lt;/span&gt;;
  774. &lt;/pre&gt;
  775. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            currentWeb.Dispose();
  776. &lt;/pre&gt;
  777. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        }
  778. &lt;/pre&gt;
  779. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;/pre&gt;
  780. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;override&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; FeatureInstalled(SPFeatureReceiverProperties properties)
  781. &lt;/pre&gt;
  782. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        {
  783. &lt;/pre&gt;
  784. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            &lt;span style=&quot;color: green;&quot;&gt;// Not being used&lt;/span&gt;
  785. &lt;/pre&gt;
  786. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        }
  787. &lt;/pre&gt;
  788. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;&lt;/pre&gt;
  789. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;override&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; FeatureUninstalling(SPFeatureReceiverProperties properties)
  790. &lt;/pre&gt;
  791. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        {
  792. &lt;/pre&gt;
  793. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;            &lt;span style=&quot;color: green;&quot;&gt;// Not being used&lt;/span&gt;
  794. &lt;/pre&gt;
  795. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;        }
  796. &lt;/pre&gt;
  797. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;    }
  798. &lt;/pre&gt;
  799. &lt;pre style=&quot;background-color: #fbfbfb; font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace; font-size: 10px; margin: 0em; width: 100%;&quot;&gt;}&lt;/pre&gt;
  800. &lt;br /&gt;
  801. &lt;/pre&gt;
  802. I’m also taking the opportunity to apply the client’s default logo for the site upon activation of the feature. &lt;br /&gt;
  803. Step 4: Put your theme into the solution and make sure it deploys to the TEMPLATE/THEMES folder and place any images into the appropriate folders within TEMPLATE/IMAGES.&lt;br /&gt;
  804. Step 5: Build the WSP and deploy to SharePoint for testing. You will need to activate the feature on the Web Application before creating any new sites. When you create new sites, the feature should automatically be activated to deploy the custom theme branding to all news sites on that web application. There is plenty of room for improvement, so comments are welcome!&lt;br /&gt;</description><link>http://wssdevelopment.blogspot.com/2010/01/custom-theme-and-feature-stapling-via.html</link><author>noreply@blogger.com (Chris)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-483915361811447994</guid><pubDate>Fri, 11 Dec 2009 15:26:00 +0000</pubDate><atom:updated>2009-12-11T09:26:31.398-06:00</atom:updated><title>The Return of EndUserSharePoint.com</title><description>Earlier this week, &lt;a href=&quot;http://endusersharepoint.com/&quot;&gt;EndUserSharePoint.com&lt;/a&gt; relaunched with a new hosting provider. Along with the relaunch of the website, a new look and feel has been applied and a lot of new features have been incorporated. Hurry over and check it out!&lt;br /&gt;
  805. &lt;br /&gt;
  806. While you&#39;re at it, &lt;a href=&quot;http://www.endusersharepoint.com/category/author/chris-quick/&quot;&gt;here are the articles&lt;/a&gt; that I&#39;ve publised on EUSP.&lt;br /&gt;</description><link>http://wssdevelopment.blogspot.com/2009/12/return-of-endusersharepointcom.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-6643418996472401219</guid><pubDate>Thu, 03 Dec 2009 00:21:00 +0000</pubDate><atom:updated>2009-12-02T18:22:36.952-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">General Observations</category><title>End User SharePoint Down!</title><description>I hate to see this for a good friend, but the most popular SharePoint site on the net has gone down. Jump over to &lt;a href=&quot;http://www.endusersharepoint.com/&quot;&gt;http://www.endusersharepoint.com/&lt;/a&gt; to encourage Mark Miller to keep plugging away at getting the site back online - I know he&#39;s working diligently to get it going again.&lt;br /&gt;
  807. &lt;br /&gt;
  808. It does appear that he was able to retrieve all of his content (posts and comments), so at least nothing was lost. &lt;br /&gt;
  809. &lt;br /&gt;
  810. Mark, here&#39;s wishing you the best in getting your site operational again. There&#39;s a big hole in the SharePoint community without the resources available on your site.&lt;br /&gt;</description><link>http://wssdevelopment.blogspot.com/2009/12/end-user-sharepoint-down.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-4812391905219470142</guid><pubDate>Thu, 19 Nov 2009 02:11:00 +0000</pubDate><atom:updated>2009-11-18T20:11:29.584-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">jQuery</category><title>jQuery Modal Display Optimization</title><description>&lt;p&gt;I have been doing a lot of work with jQuery lately and decided that I would create my own modal popup display. However, I want to look for ways to optimize this code, if there are any. Anyone have any suggestions?&lt;/p&gt;  &lt;pre style=&quot;border-right: #cecece 1px solid; padding-right: 5px; border-top: #cecece 1px solid; padding-left: 5px; min-height: 40px; padding-bottom: 5px; overflow: auto; border-left: #cecece 1px solid; width: 650px; padding-top: 5px; border-bottom: #cecece 1px solid; background-color: #fbfbfb&quot;&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1: jQuery.fn.showAlert = &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt;(text, duration, opacity, inSpeed, outSpeed, width) {
  811. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; content = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;div id=\&amp;quot;alert\&amp;quot;&amp;gt;&amp;lt;div id=\&amp;quot;boxes\&amp;quot;&amp;gt;&amp;lt;div id=\&amp;quot;dialog\&amp;quot; class=\&amp;quot;window\&amp;quot;&amp;gt;&lt;/span&gt;&amp;quot; + text + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;div id=\&amp;quot;close\&amp;quot;&amp;gt;OK&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;div id=\&amp;quot;mask\&amp;quot; name=\&amp;quot;modal\&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;/span&gt;&amp;quot;;
  812. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:     $(&lt;span style=&quot;color: #0000ff&quot;&gt;this&lt;/span&gt;).append(content);
  813. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; mask = $(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;#mask&lt;/span&gt;&amp;quot;);
  814. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:     mask.css({ &#39;position&#39;: &#39;absolute&#39;,
  815. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:         &#39;z-index&#39;: 9000,
  816. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:         &#39;background-color&#39;: &#39;#000&#39;,
  817. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:         &#39;&lt;span style=&quot;color: #0000ff&quot;&gt;top&lt;/span&gt;&#39;: &#39;0px&#39;,
  818. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:         &#39;left&#39;: &#39;0px&#39;,
  819. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:         &#39;opacity&#39;: 0
  820. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 11:     });
  821. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 12:
  822. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 13:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; dialogContainer = $(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;#boxes&lt;/span&gt;&amp;quot;);
  823. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 14:     dialogContainer.css({ &#39;width&#39;: width,
  824. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 15:         &#39;height&#39;: &#39;250px&#39;
  825. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 16:     });
  826. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 17:
  827. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 18:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; dialog = $(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;#dialog&lt;/span&gt;&amp;quot;);
  828. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 19:     dialog.css({
  829. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 20:         &#39;position&#39;: &#39;absolute&#39;,
  830. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 21:         &#39;z-index&#39;: 9999,
  831. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 22:         &#39;background-color&#39;: &#39;#ffffff&#39;,
  832. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 23:         &#39;&lt;span style=&quot;color: #0000ff&quot;&gt;top&lt;/span&gt;&#39;: &#39;0px&#39;,
  833. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 24:         &#39;left&#39;: &#39;0px&#39;,
  834. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 25:         &#39;padding&#39;: &#39;5px&#39;,
  835. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 26:         &#39;border&#39;: &#39;solid 2px black&#39;,
  836. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 27:         &#39;width&#39;: width
  837. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 28:     });
  838. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 29:     dialog.hide();
  839. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 30:
  840. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 31:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; maskHeight = $(&lt;span style=&quot;color: #0000ff&quot;&gt;document&lt;/span&gt;).height();
  841. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 32:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; maskWidth = $(&lt;span style=&quot;color: #0000ff&quot;&gt;document&lt;/span&gt;).width();
  842. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 33:
  843. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 34:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; dialogTop = ($(&lt;span style=&quot;color: #0000ff&quot;&gt;window&lt;/span&gt;).height() - dialog.height()) / 2 + $(&lt;span style=&quot;color: #0000ff&quot;&gt;window&lt;/span&gt;).scrollTop() + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;px&lt;/span&gt;&amp;quot;;
  844. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 35:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; dialogLeft = ($(&lt;span style=&quot;color: #0000ff&quot;&gt;window&lt;/span&gt;).width() - dialog.width()) / 2 + $(&lt;span style=&quot;color: #0000ff&quot;&gt;window&lt;/span&gt;).scrollLeft() + &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;px&lt;/span&gt;&amp;quot;;
  845. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 36:
  846. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 37:     dialog.css({ &#39;&lt;span style=&quot;color: #0000ff&quot;&gt;top&lt;/span&gt;&#39;: dialogTop, &#39;left&#39;: dialogLeft });
  847. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 38:
  848. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 39:     mask.css({ &#39;width&#39;: maskWidth, &#39;height&#39;: maskHeight });
  849. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 40:     mask.fadeTo(inSpeed, opacity);
  850. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 41:
  851. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 42:     dialog.fadeIn(inSpeed);
  852. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 43:
  853. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 44:     &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;close&lt;/span&gt; = $(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;#close&lt;/span&gt;&amp;quot;);
  854. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 45:     &lt;span style=&quot;color: #0000ff&quot;&gt;if&lt;/span&gt; (duration &amp;lt; 0) {
  855. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 46:         &lt;span style=&quot;color: #0000ff&quot;&gt;close&lt;/span&gt;.css({ &#39;cursor&#39;: &#39;pointer&#39; }).click(&lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt;() {
  856. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 47:             &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; newSpeed = outSpeed / 2;
  857. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 48:             dialog.fadeOut(newSpeed, &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt;() {
  858. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 49:                 mask.fadeOut(newSpeed, &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt;() {
  859. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 50:                     $(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;#alert&lt;/span&gt;&amp;quot;).remove();
  860. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 51:                 });
  861. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 52:             });
  862. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 53:         });
  863. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 54:     }
  864. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 55:     &lt;span style=&quot;color: #0000ff&quot;&gt;else&lt;/span&gt; {
  865. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 56:         &lt;span style=&quot;color: #0000ff&quot;&gt;close&lt;/span&gt;.hide();
  866. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 57:         &lt;span style=&quot;color: #0000ff&quot;&gt;window&lt;/span&gt;.&lt;span style=&quot;color: #0000ff&quot;&gt;setTimeout&lt;/span&gt;(&lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt;() {
  867. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 58:             &lt;span style=&quot;color: #0000ff&quot;&gt;var&lt;/span&gt; newSpeed = outSpeed / 2;
  868. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 59:             dialog.fadeOut(newSpeed, &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt;() {
  869. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 60:                 mask.fadeOut(newSpeed, &lt;span style=&quot;color: #0000ff&quot;&gt;function&lt;/span&gt;() {
  870. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 61:                     $(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;#alert&lt;/span&gt;&amp;quot;).remove();
  871. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 62:                 });
  872. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 63:             });
  873. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 64:         }, duration);
  874. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 65:     }
  875. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 66: }
  876. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 67: &lt;/pre&gt;&lt;/pre&gt;  </description><link>http://wssdevelopment.blogspot.com/2009/11/jquery-modal-display-optimization.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-3335726326747028538</guid><pubDate>Wed, 28 Oct 2009 16:04:00 +0000</pubDate><atom:updated>2009-10-28T11:04:59.227-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint Designer</category><category domain="http://www.blogger.com/atom/ns#">Web Services</category><title>Using XML Web Services in SharePoint Designer</title><description>&lt;p&gt;I noticed that I had promised better details on a &lt;a href=&quot;http://wssdevelopment.blogspot.com/2007/09/using-web-services-in-sharepoint.html&quot;&gt;previous post&lt;/a&gt;, so I have decided to include step by step instructions on building a solution that queries an XML web service for data and displays that information in SharePoint 2007. I apologize that it has taken me two years to get back to this, and I hope you will still find this information valuable.&lt;/p&gt;  &lt;p&gt;In the post, I described how I used SharePoint Designer to query an XML web service to build a course roster system for our professors. This is a very simple solution that allows a faculty member to go to SharePoint and display their courses and view the students enrolled in that course from data in our ERP system.&lt;/p&gt;  &lt;p&gt;Starting in SharePoint designer, I open the site where this solution would be placed. The site I’m using has a Pages document library, but any document library should work. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/Suhre_KtNdI/AAAAAAAAAKs/EYFarmyB7uo/s1600-h/image%5B4%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;105&quot; alt=&quot;image&quot; src=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/SuhrfMCOxLI/AAAAAAAAAKw/VsnjjEfBTZE/image_thumb%5B9%5D.png?imgmax=800&quot; width=&quot;202&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I need two pages: one to display the available courses and another to display the students enrolled in the course. A page can be created by right clicking on the window and choosing new aspx page. Following this process, I create these two pages: &lt;strong&gt;CourseRoster.aspx&lt;/strong&gt; and &lt;strong&gt;StudentsInCourse.aspx&lt;/strong&gt;. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/SuhrfemOJkI/AAAAAAAAAK0/b2D8-Jmj6DQ/s1600-h/image%5B8%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;389&quot; alt=&quot;image&quot; src=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/SuhrfpYEr5I/AAAAAAAAAK4/bhre5bb1bPU/image_thumb%5B11%5D.png?imgmax=800&quot; width=&quot;477&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now, the web service data sources need to be created. I begin by opening &lt;strong&gt;Manage Data Sources&lt;/strong&gt; from the &lt;strong&gt;Data View&lt;/strong&gt; menu. This opens the Data Source Library task pane. I locate the XML Web Services node and expand it. Next, I click on &lt;strong&gt;Connect to a web service…&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/SuhrfzEbrOI/AAAAAAAAAK8/gqd__fXSn9Q/s1600-h/image%5B12%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;452&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/SuhrgHivKOI/AAAAAAAAALA/ftfFu5J_Rsc/image_thumb%5B13%5D.png?imgmax=800&quot; width=&quot;267&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The data source properties window will open and show the Source Tab. To help identify this data source, I begin by going to the General Tab and providing a name that is more descriptive than the default one that will be created. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh6.ggpht.com/_YBA30Jkzr-w/Suhrgps7K-I/AAAAAAAAALE/Af2zRpX3Xy0/s1600-h/image%5B16%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;610&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/SuhrhFSf0sI/AAAAAAAAALI/4vEoBrnTDGU/image_thumb%5B15%5D.png?imgmax=800&quot; width=&quot;498&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;On the Source tab, I provide the details on how to contact the web service, connect to the web service by clicking on &lt;strong&gt;Connect Now&lt;/strong&gt; and select the appropriate method. (Notice that you do have the ability to use web services to update data as well, but this is beyond the scope of this post.). Any parameters that are needed for the web service will be displayed in the parameters box at the bottom of the dialog. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/SuhrhSQDGqI/AAAAAAAAALM/pf_Kvh2uqps/s1600-h/image%5B20%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;610&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/Suhrhha5ZLI/AAAAAAAAALQ/RZNUBhokSm4/image_thumb%5B17%5D.png?imgmax=800&quot; width=&quot;498&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;So that I can customize the parameters sent to the web service, I need to make modifications to the parameters. I click on the parameters that will need to allow to be set dynamically and then click on Modify. In this case, the Login will need to be provided dynamically; However, for simplicity, I will only be using the default value for this data source. &lt;/p&gt;  &lt;p&gt;When I click on Modify, the parameter properties dialog will open. I insure the checkbox for &lt;strong&gt;The value of this parameter can be set via a Web Part connection&lt;/strong&gt; is checked and provide a default value to use for the initial query of the data source. When the values are set correctly, I click OK to close the dialog.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/SuhriFI37KI/AAAAAAAAALU/koMvWAhaxQ8/s1600-h/image%5B24%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;201&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/SuhriRAKjUI/AAAAAAAAALY/FuDOnj-R7KU/image_thumb%5B19%5D.png?imgmax=800&quot; width=&quot;354&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;If the web service required authentication, I would change properties on the Login tab. Fortunately, the web service that I am using does not require authentication, so I click OK to create the new data source. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/SuhripNiBYI/AAAAAAAAALc/PmxisDKCEsI/s1600-h/image%5B28%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;610&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/SuhrjG2b1BI/AAAAAAAAALg/QYmoE-GrNuY/image_thumb%5B21%5D.png?imgmax=800&quot; width=&quot;498&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This data source will be used to get the list of courses for a specific professor. Since the same web service also has a method to get the students currently enrolled in the course, I can simply make a copy of this web service and modify the settings appropriately. &lt;/p&gt;  &lt;p&gt;To do this, I right click on the web service I just created and choose &lt;strong&gt;Copy and Modify&lt;/strong&gt;. Again, I change the name on the general tab to provide a better name for the data source. In my case, this one is called &lt;strong&gt;&lt;em&gt;StudentsInCourseWebService&lt;/em&gt;&lt;/strong&gt;. On the source tab, I click reconnect and choose the new method to use. Again, I need to modify the parameters. This web service method expects a parameter named SYN. This is the unique identifier of a course in our organization, so it will need to be provided dynamically.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/SuhrjqDSoYI/AAAAAAAAALk/B-L7-AeXS0w/s1600-h/image%5B32%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;610&quot; alt=&quot;image&quot; src=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/Suhrj4dhaFI/AAAAAAAAALo/GuMvs515AOo/image_thumb%5B23%5D.png?imgmax=800&quot; width=&quot;498&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now I have both of my web service data sources ready, it’s time to use the data! First, I open the &lt;strong&gt;CourseRoster.aspx&lt;/strong&gt; page in SharePoint designer. A blank ASP.NET page is displayed. With the page active, I open the data source library task pane and locate the data source that queries the courses for the current professor. I right click on it and choose Show Data.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/SuhrkKQsgVI/AAAAAAAAALs/uZVlMOnn_z0/s1600-h/image%5B36%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;189&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/SuhrkcaiVgI/AAAAAAAAALw/CX8WqV2qnAY/image_thumb%5B25%5D.png?imgmax=800&quot; width=&quot;318&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This queries the web service using the default value and returns the results in the Data Source Details task pane. Now, I CTRL-Click on all the fields that will need to be displayed on the data source and then click on &lt;strong&gt;Insert Selected Fields as… &amp;gt; Multiple Item View&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh6.ggpht.com/_YBA30Jkzr-w/Suhrktu_IhI/AAAAAAAAAL0/9W-WRuMTCdo/s1600-h/image%5B40%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;331&quot; alt=&quot;image&quot; src=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/Suhrk3yrbfI/AAAAAAAAAL4/9jp8MCFiyTg/image_thumb%5B27%5D.png?imgmax=800&quot; width=&quot;287&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The CourseRoster.aspx page now displays a list of available courses using the default value provided to the web service. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/SuhrlbPjgvI/AAAAAAAAAL8/bxzTzqNwwrE/s1600-h/image%5B97%5D.png&quot; target=&quot;_blank&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;166&quot; alt=&quot;image&quot; src=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/SuhrlrR0c1I/AAAAAAAAAMA/t1iuhK3Wy74/image_thumb%5B68%5D.png?imgmax=800&quot; width=&quot;244&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I want the professor to be able to click on the course number to open the course and view currently enrolled students. To do this, I move the mouse cursor over one of the items in the CourseNumber row and look for the task widget (I’m not sure what the actual name of it is, but it’s a little gray arrow).&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/SuhrlxyAq7I/AAAAAAAAAME/sg6iNQymfHw/s1600-h/image%5B49%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;36&quot; alt=&quot;image&quot; src=&quot;http://lh6.ggpht.com/_YBA30Jkzr-w/SuhrmMqVcdI/AAAAAAAAAMI/R_WzGJuuBCQ/image_thumb%5B36%5D.png?imgmax=800&quot; width=&quot;271&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I click on the widget and the properties of this field are be displayed. I need this to be a hyperlink, so I choose Hyperlink in the Format As dropdown.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh6.ggpht.com/_YBA30Jkzr-w/SuhrmdwcLDI/AAAAAAAAAMM/CglJRX2GZEc/s1600-h/image%5B53%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;217&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/SuhrmgVtVaI/AAAAAAAAAMQ/EH5M0DQ_5J0/image_thumb%5B38%5D.png?imgmax=800&quot; width=&quot;363&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;A message warning me hyperlinks should only be used in a trusted environment appears. I click Yes to confirm the creation of a hyperlink and the hyperlink properties window is displayed. I will leave the text to display as &lt;strong&gt;{CourseNumber}&lt;/strong&gt;, but I need to change the Address to &lt;strong&gt;StudentsInCourse.aspx?SYN={SYN}&lt;/strong&gt;. I confirm this by clicking on OK.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/SuhrnEvuxHI/AAAAAAAAAMU/GHJse-Gabd0/s1600-h/image%5B98%5D.png&quot; target=&quot;_blank&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;124&quot; alt=&quot;image&quot; src=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/SuhrnVidu2I/AAAAAAAAAMY/szH2ZpioJ88/image_thumb%5B69%5D.png?imgmax=800&quot; width=&quot;244&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I now move to the StudentsInCourse.aspx page and make sure it is the active page in SharePoint designer. I reopen the Data Source Library task pane to locate the data source that gets the students in a specific course. Right clicking on it, as before, I choose to Show Data. Again, I choose the columns to display and click on &lt;strong&gt;Insert Selected Items As Multiple Item View&lt;/strong&gt;. There is now a list of students for the default value provided in the data source. This is not the desired result, so I need to specify a source for the parameter. I locate the widget for the data source and click on Parameters.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/Suhrnke49cI/AAAAAAAAAMc/Y_zKuXJEQVg/s1600-h/image%5B61%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;290&quot; alt=&quot;image&quot; src=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/Suhrn1BhvfI/AAAAAAAAAMg/BnEEEMirBnM/image_thumb%5B42%5D.png?imgmax=800&quot; width=&quot;313&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The SYN parameter is available, I just need to specify the source. This is done be choosing Query String in the parameter source drop down and setting the Query String Variable to SYN.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/SuhroKW8g0I/AAAAAAAAAMk/17EG8T9ajJM/s1600-h/image%5B65%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;337&quot; alt=&quot;image&quot; src=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/SuhroSj5h2I/AAAAAAAAAMo/fJtb8N3Yiek/image_thumb%5B44%5D.png?imgmax=800&quot; width=&quot;506&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now, it’s time for testing. To insure that everything is working, I save everything and go back to the &lt;strong&gt;CourseRoster.aspx&lt;/strong&gt; page and click on the preview button on the toolbar.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/Suhroo6pmzI/AAAAAAAAAMs/Zn86DFPN3do/s1600-h/image%5B68%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;37&quot; alt=&quot;image&quot; src=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/Suhro7_pw7I/AAAAAAAAAMw/iVv4EB_WBdQ/image_thumb%5B45%5D.png?imgmax=800&quot; width=&quot;140&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This opens Internet Explorer to the CourseRoster.aspx page with a list of courses. I can click on a specific course to view the students enrolled in the course.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/SuhrpIEPpUI/AAAAAAAAAM0/kK7GHZN02xE/s1600-h/image%5B99%5D.png&quot; target=&quot;_blank&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;134&quot; alt=&quot;image&quot; src=&quot;http://lh5.ggpht.com/_YBA30Jkzr-w/SuhrphKSXtI/AAAAAAAAAM4/ydrw_qyVwRM/image_thumb%5B70%5D.png?imgmax=800&quot; width=&quot;244&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Finally, I need to apply the SharePoint master pages to these pages. To do this I go back to SharePoint Designer and click on Format &amp;gt; Master Page &amp;gt; Attach Master Page. I choose to attach the Default Master and match any content regions that need to be setup.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/Suhrpx4sAHI/AAAAAAAAAM8/xC0MM7iTm58/s1600-h/image%5B100%5D.png&quot; target=&quot;_blank&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;147&quot; alt=&quot;image&quot; src=&quot;http://lh6.ggpht.com/_YBA30Jkzr-w/SuhrqIoR3hI/AAAAAAAAANA/5njs0IXdzeg/image_thumb%5B71%5D.png?imgmax=800&quot; width=&quot;244&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;When completed, the page is now wrapped in SharePoint. I do the same thing for the StudentsInCourse.aspx page and the solution is now complete.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/SuhrqfNV6BI/AAAAAAAAANE/JBzwJ1MFGbI/s1600-h/image%5B101%5D.png&quot; target=&quot;_blank&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;155&quot; alt=&quot;image&quot; src=&quot;http://lh6.ggpht.com/_YBA30Jkzr-w/SuhrqtzPktI/AAAAAAAAANI/2YysmCfqjP4/image_thumb%5B72%5D.png?imgmax=800&quot; width=&quot;244&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  </description><link>http://wssdevelopment.blogspot.com/2009/10/using-xml-web-services-in-sharepoint.html</link><author>noreply@blogger.com (Chris)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/_YBA30Jkzr-w/SuhrfMCOxLI/AAAAAAAAAKw/VsnjjEfBTZE/s72-c/image_thumb%5B9%5D.png?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-1697603939044959383</guid><pubDate>Thu, 22 Oct 2009 20:39:00 +0000</pubDate><atom:updated>2009-10-23T13:17:57.480-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Development Approaches</category><category domain="http://www.blogger.com/atom/ns#">End-To-End Solution</category><category domain="http://www.blogger.com/atom/ns#">Feature Development</category><category domain="http://www.blogger.com/atom/ns#">Sharepoint Application Concepts</category><title>End-To-End Solution – Custom Document Library and Completed Feature Activated</title><description>&lt;p&gt;Life has been interesting the past week or so. I have a co-worker that will be out for a few weeks and have been busy getting some things finished prior to his departure. During this time, I have taken on some additional responsibilities that have slowed my progress a bit. However, I’m still planning on finishing this series. The goal is to complete my feature this week and dive into using some of the SharePoint web services in an ASP.NET application.&lt;/p&gt;  &lt;p&gt;In this post, I plan to cover the development of a custom document library to hold all of my KB articles. This custom document library is being used so I can create a custom action and application page to activate and deactivate an event receiver specific to this document library.&lt;/p&gt;  &lt;h3&gt;Custom Document Library Definition&lt;/h3&gt;  &lt;p&gt;In the last post, I described how I created a custom list for use in hosting the available categories for my KB articles. Using the same techniques, we will add a new custom document library template that will hold the KB articles for use in the final solution. Because I need block attempts to delete KB articles, I will need an event receiver to fire each time an attempt is made to remove an item from the library. However, I need to have the ability for site administrators to selectively turn this on and off as there may be times when an article needs to be removed. &lt;/p&gt;  &lt;p&gt;The first attempt was to use a standard document library and attach the custom action to the library, but it can be difficult to find the proper library as you really need to know the GUID of the list. By creating a custom document library, the custom action can be bound to a specific type of list. &lt;/p&gt;  &lt;p&gt;Here is the definition of the custom document library:&lt;/p&gt;  &lt;pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1:   &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ListTemplate&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;kbdoclib&amp;quot;&lt;/span&gt;
  877. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;10801&amp;quot;&lt;/span&gt;
  878. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:                 &lt;span style=&quot;color: #ff0000&quot;&gt;BaseType&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;1&amp;quot;&lt;/span&gt;
  879. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:                 &lt;span style=&quot;color: #ff0000&quot;&gt;OnQuickLaunch&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;TRUE&amp;quot;&lt;/span&gt;
  880. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:                 &lt;span style=&quot;color: #ff0000&quot;&gt;SecurityBits&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;11&amp;quot;&lt;/span&gt;
  881. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Sequence&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;1000&amp;quot;&lt;/span&gt;
  882. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:                 &lt;span style=&quot;color: #ff0000&quot;&gt;DisplayName&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;KB Document Library&amp;quot;&lt;/span&gt;
  883. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Hidden&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;TRUE&amp;quot;&lt;/span&gt;
  884. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Description&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Document library containing documents for use in authoring KB Articles.&amp;quot;&lt;/span&gt;
  885. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Image&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;/_layouts/images/itdl.gif&amp;quot;&lt;/span&gt;
  886. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 11:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Category&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Libraries&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  887.  
  888. &lt;p&gt;For the &lt;em&gt;Type&lt;/em&gt; attribute – line 2 above – the next available integer above 10000 was chosen based on our organization’s requirements. Since the category list template type was 10800, the next available number for our organization is 10801. &lt;/p&gt;
  889.  
  890. &lt;p&gt;In the category list template, the &lt;em&gt;BaseType&lt;/em&gt; was set to 0 indicating that the template would be derived from the generic list. This time, the &lt;em&gt;BaseType&lt;/em&gt; attribute for the list is 1. This indicates that this list template will be a document library. For those that are interested, here are the base types:&lt;/p&gt;
  891.  
  892. &lt;ol&gt;
  893.  &lt;li&gt;BaseType=”0” - Generic List &lt;/li&gt;
  894.  
  895.  &lt;li&gt;BaseType=”1” – Document Library &lt;/li&gt;
  896.  
  897.  &lt;li&gt;BaseType=”3” – Discussion Forum &lt;/li&gt;
  898.  
  899.  &lt;li&gt;BaseType=”4” – Vote or Survey &lt;/li&gt;
  900.  
  901.  &lt;li&gt;BaseType=”5” – Issues List &lt;/li&gt;
  902. &lt;/ol&gt;
  903.  
  904. &lt;p&gt;Please notice there is no &lt;em&gt;BaseType&lt;/em&gt; of 2. Todd Bleeker points out in his book Developer’s Guide to Windows SharePoint Services 3.0 that this was not implemented in WSS v2 or in the current version.&lt;/p&gt;
  905.  
  906. &lt;p&gt;This XML fragment is part of the file named CustomListDefinitions.xml located in the root of the solution. Here is the entire contents of the file:&lt;/p&gt;
  907.  
  908. &lt;pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;?&lt;/span&gt;xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; &lt;span style=&quot;color: #0000ff&quot;&gt;?&amp;gt;&lt;/span&gt;
  909. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Elements&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;xmlns&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;http://schemas.microsoft.com/sharepoint/&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  910. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:   &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ListTemplate&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;10800&amp;quot;&lt;/span&gt;
  911. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:                 &lt;span style=&quot;color: #ff0000&quot;&gt;BaseType&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;0&amp;quot;&lt;/span&gt;
  912. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;CategoryList&amp;quot;&lt;/span&gt;
  913. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:                 &lt;span style=&quot;color: #ff0000&quot;&gt;DisplayName&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Category List&amp;quot;&lt;/span&gt;
  914. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Description&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Contains a list of categories&amp;quot;&lt;/span&gt;
  915. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:                 &lt;span style=&quot;color: #ff0000&quot;&gt;SecurityBits&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;11&amp;quot;&lt;/span&gt;
  916. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:                 &lt;span style=&quot;color: #ff0000&quot;&gt;VersioningEnabled&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;false&amp;quot;&lt;/span&gt;
  917. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Hidden&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;TRUE&amp;quot;&lt;/span&gt;
  918. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 11:                 &lt;span style=&quot;color: #ff0000&quot;&gt;DisableAttachments&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;true&amp;quot;&lt;/span&gt;
  919. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 12:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Category&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Custom Lists&amp;quot;&lt;/span&gt;
  920. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 13:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Sequence&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;100&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  921. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 14:   &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ListTemplate&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;kbdoclib&amp;quot;&lt;/span&gt;
  922. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 15:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;10801&amp;quot;&lt;/span&gt;
  923. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 16:                 &lt;span style=&quot;color: #ff0000&quot;&gt;BaseType&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;1&amp;quot;&lt;/span&gt;
  924. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 17:                 &lt;span style=&quot;color: #ff0000&quot;&gt;OnQuickLaunch&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;TRUE&amp;quot;&lt;/span&gt;
  925. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 18:                 &lt;span style=&quot;color: #ff0000&quot;&gt;SecurityBits&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;11&amp;quot;&lt;/span&gt;
  926. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 19:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Sequence&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;1000&amp;quot;&lt;/span&gt;
  927. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 20:                 &lt;span style=&quot;color: #ff0000&quot;&gt;DisplayName&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;KB Document Library&amp;quot;&lt;/span&gt;
  928. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 21:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Hidden&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;TRUE&amp;quot;&lt;/span&gt;
  929. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 22:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Description&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Document library containing documents for use in authoring KB Articles.&amp;quot;&lt;/span&gt;
  930. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 23:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Image&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;/_layouts/images/itdl.gif&amp;quot;&lt;/span&gt;
  931. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 24:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Category&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Libraries&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  932. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 25: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Elements&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  933. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 26: &lt;/pre&gt;&lt;/pre&gt;
  934.  
  935. &lt;p&gt;Now a schema.xml file is needed. This file should be placed in a folder named kbdoclib under the root of the feature’s folder. To simplify this process, the default document library schema is copied from &amp;lt;12 hive&amp;gt;/TEMPLATES/FEATURES/DocLib/DocLib/schema.xml. Nothing will be changed in the schema of the template. Instead, it has been elected that the feature activated event will do the heavy lifting of adding the required content types and assigning new views.&lt;/p&gt;
  936.  
  937. &lt;h3&gt;Completing Feature Activated&lt;/h3&gt;
  938.  
  939. &lt;p&gt;Now, I’m going to post a lot of the code that is used by the feature activated and then explain how it all works in this solution.&lt;/p&gt;
  940.  
  941. &lt;p&gt;First up is the FeatureActivated method:&lt;/p&gt;
  942.  
  943. &lt;pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1:     &lt;span style=&quot;color: #0000ff&quot;&gt;Public&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Overrides&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Sub&lt;/span&gt; FeatureActivated(&lt;span style=&quot;color: #0000ff&quot;&gt;ByVal&lt;/span&gt; properties &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Microsoft.SharePoint.SPFeatureReceiverProperties)
  944. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2:         &lt;span style=&quot;color: #0000ff&quot;&gt;Using&lt;/span&gt; mSite &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPSite = &lt;span style=&quot;color: #0000ff&quot;&gt;CType&lt;/span&gt;(properties.Feature.Parent, SPSite)
  945. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:             &lt;span style=&quot;color: #0000ff&quot;&gt;Using&lt;/span&gt; mWeb &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPWeb = mSite.RootWeb
  946. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:                 CreateApproverRole(mWeb)
  947. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:                 CreateApproverGroup(mWeb)
  948. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:                 &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; list &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPList = CreateCategoryListInstance(mWeb)
  949. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:                 CreateCategoryLookupSiteColumn(mWeb, list)
  950. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:                 UpdateKBDocumentContentType(mWeb)
  951. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:                 &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; library &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPDocumentLibrary = CreateKBDocumentLibrary(mWeb)
  952. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:             &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Using&lt;/span&gt;
  953. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 11:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Using&lt;/span&gt;
  954. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 12:     &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Sub&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  955.  
  956. &lt;p&gt;To help with readability, I have broken the code down into the steps I will be taking when this feature is activated. &lt;/p&gt;
  957.  
  958. &lt;ol&gt;
  959.  &lt;li&gt;First, I need to get a reference to the current site and web (lines 2 and 3). &lt;/li&gt;
  960.  
  961.  &lt;li&gt;Next, I will be creating a new role within SharePoint that will be used to handle approval of documents in the KB document library (line 4). &lt;/li&gt;
  962.  
  963.  &lt;li&gt;The role will be assigned to a group. (line 5) &lt;/li&gt;
  964.  
  965.  &lt;li&gt;A new category list will be created based on the list definition defined in a &lt;a href=&quot;http://wssdevelopment.blogspot.com/2009/09/end-to-end-solution-custom-list.html&quot; target=&quot;_blank&quot;&gt;previous article&lt;/a&gt;. (line 6) &lt;/li&gt;
  966.  
  967.  &lt;li&gt;A new site column will be created that will lookup information stored in the category list. (line 7) &lt;/li&gt;
  968.  
  969.  &lt;li&gt;The KB Content type will be updated to use the new site column created in step 5. (line 8) &lt;/li&gt;
  970.  
  971.  &lt;li&gt;A new document library will be created utilizing all of the features that have been provisioned. &lt;/li&gt;
  972. &lt;/ol&gt;
  973.  
  974. &lt;h4&gt;&lt;/h4&gt;
  975.  
  976. &lt;h4&gt;Method: CreateApproverRole&lt;/h4&gt;
  977.  
  978. &lt;pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1:     &lt;span style=&quot;color: #0000ff&quot;&gt;Protected&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Sub&lt;/span&gt; CreateApproverRole(&lt;span style=&quot;color: #0000ff&quot;&gt;ByVal&lt;/span&gt; web &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPWeb)
  979. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Create a new role&lt;/span&gt;
  980. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; ApproveRole &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPRoleDefinition
  981. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; createRole &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Boolean&lt;/span&gt; = &lt;span style=&quot;color: #0000ff&quot;&gt;False&lt;/span&gt;
  982. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:         &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  983. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:             ApproveRole = web.RoleDefinitions(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Approve&lt;/span&gt;&amp;quot;)
  984. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:         &lt;span style=&quot;color: #0000ff&quot;&gt;Catch&lt;/span&gt; ex &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Exception
  985. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:             createRole = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;
  986. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  987. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:
  988. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 11:         &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt; createRole = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Then&lt;/span&gt;
  989. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 12:             ApproveRole = &lt;span style=&quot;color: #0000ff&quot;&gt;New&lt;/span&gt; SPRoleDefinition()
  990. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 13:
  991. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 14:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Get the contribute role as a base&lt;/span&gt;
  992. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 15:             &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; ContributeRole &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPRoleDefinition = web.RoleDefinitions(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Contribute&lt;/span&gt;&amp;quot;)
  993. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 16:
  994. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 17:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add the approval rights to the role and set name and description&lt;/span&gt;
  995. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 18:             ApproveRole.BasePermissions = ContributeRole.BasePermissions &lt;span style=&quot;color: #0000ff&quot;&gt;Or&lt;/span&gt; SPBasePermissions.ApproveItems
  996. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 19:             ApproveRole.Description = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Allows add, edit, delete and approve rights to list items in a site.&lt;/span&gt;&amp;quot;
  997. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 20:             ApproveRole.Name = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Approve&lt;/span&gt;&amp;quot;
  998. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 21:
  999. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 22:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add the new role to the web&lt;/span&gt;
  1000. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 23:             web.RoleDefinitions.Add(ApproveRole)
  1001. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 24:
  1002. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 25:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Update the web&lt;/span&gt;
  1003. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 26:             web.Update()
  1004. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 27:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt;
  1005. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 28:     &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Sub&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  1006.  
  1007. &lt;p&gt;&lt;/p&gt;
  1008.  
  1009. &lt;p&gt;So that a duplicate role is not created, an attempt to retrieve an existing role named “Approve” is made. &lt;/p&gt;
  1010.  
  1011. &lt;p&gt;If the role does not exist, then an exception will be thrown that will indicate the role could not be found on the current site. If the role must be created, the Contribute role is used as the base (line 15). The role has approve rights added and a description and name set. This is then added to the SPWeb and the all important SPWeb.Update() method is called to apply these changes (line 26).&lt;/p&gt;
  1012.  
  1013. &lt;p&gt;These role definitions are the permission settings that can be found in Permission Levels under Advanced Permissions &amp;gt; Permission Levels.&lt;/p&gt;
  1014.  
  1015. &lt;p&gt;&lt;a href=&quot;http://lh3.ggpht.com/_YBA30Jkzr-w/SuDDHOdqmUI/AAAAAAAAAKk/fznXWdCZ8jg/s1600-h/image%5B20%5D.png&quot;&gt;&lt;img title=&quot;image&quot; style=&quot;border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px&quot; height=&quot;375&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/_YBA30Jkzr-w/SuDDHT5yB-I/AAAAAAAAAKo/lelyx9bWIKk/image_thumb%5B18%5D.png?imgmax=800&quot; width=&quot;603&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
  1016.  
  1017. &lt;h4&gt;Method: CreateApproverGroup&lt;/h4&gt;
  1018.  
  1019. &lt;p&gt;Now that the role has been created, a new group will need to be added so users can be added/removed from this role easily.&lt;/p&gt;
  1020.  
  1021. &lt;pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1:     &lt;span style=&quot;color: #0000ff&quot;&gt;Protected&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Sub&lt;/span&gt; CreateApproverGroup(&lt;span style=&quot;color: #0000ff&quot;&gt;ByVal&lt;/span&gt; web &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPWeb)
  1022. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Get the owner group by finding the group with full permissions on the site.&lt;/span&gt;
  1023. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; OwnerGroup &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPGroup = &lt;span style=&quot;color: #0000ff&quot;&gt;Nothing&lt;/span&gt;
  1024. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:         OwnerGroup = web.AssociatedOwnerGroup &lt;span style=&quot;color: #008000&quot;&gt;&#39;web.ParentWeb.AssociatedOwnerGroup&lt;/span&gt;
  1025. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:
  1026. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; Approvers &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPGroup
  1027. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; createGroup &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Boolean&lt;/span&gt; = &lt;span style=&quot;color: #0000ff&quot;&gt;False&lt;/span&gt;
  1028. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:         &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1029. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:             Approvers = web.SiteGroups(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Approvers&lt;/span&gt;&amp;quot;)
  1030. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:         &lt;span style=&quot;color: #0000ff&quot;&gt;Catch&lt;/span&gt; ex &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Exception
  1031. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 11:             createGroup = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;
  1032. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 12:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1033. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 13:
  1034. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 14:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Create the approvers group&lt;/span&gt;
  1035. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 15:         &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt; createGroup = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Then&lt;/span&gt;
  1036. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 16:             web.SiteGroups.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Approvers&lt;/span&gt;&amp;quot;, OwnerGroup, web.CurrentUser, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Allows users to approve items in lists and libraries.&lt;/span&gt;&amp;quot;)
  1037. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 17:             &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; ApproverGroup &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPGroup = web.SiteGroups(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Approvers&lt;/span&gt;&amp;quot;)
  1038. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 18:
  1039. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 19:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Set the permission via a role definition for the group.&lt;/span&gt;
  1040. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 20:             &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; ApproverGroupAssignment &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;New&lt;/span&gt; SPRoleAssignment(ApproverGroup)
  1041. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 21:             &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; ApproverGroupRoleDefinition &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPRoleDefinition = web.RoleDefinitions(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Approve&lt;/span&gt;&amp;quot;)
  1042. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 22:             ApproverGroupAssignment.RoleDefinitionBindings.Add(ApproverGroupRoleDefinition)
  1043. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 23:             web.RoleAssignments.Add(ApproverGroupAssignment)
  1044. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 24:
  1045. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 25:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Apply the updates to the web site&lt;/span&gt;
  1046. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 26:             web.Update()
  1047. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 27:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt;
  1048. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 28:     &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Sub&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  1049.  
  1050. &lt;p&gt;Again, similar logic will be used to determine if the group needs to be added to this web site. One thing to point out, I struggled with how to get the current owner group since I determined I would prefer the owner of this new group to be the Site Owners group instead of the user activating the feature. After searching the MSDN documentation, I happened across a little property that I had not seen before on the SPWeb object – AssociatedOwnerGroup (line 4). Using this, the owner of the new group could easily be set to the owner group of the site.&lt;/p&gt;
  1051.  
  1052. &lt;p&gt;If the group is not found, it is added to the site via the SPWeb object (line 16). After it is added, the Approver role needs to be assigned to the group. &lt;/p&gt;
  1053.  
  1054. &lt;ol&gt;
  1055.  &lt;li&gt;To do this the group is retrieved from the SiteGroups property of the SPWeb. (line 17) &lt;/li&gt;
  1056.  
  1057.  &lt;li&gt;A new role assignment is created. (line 20) &lt;/li&gt;
  1058.  
  1059.  &lt;li&gt;The role definition is retrieved. (line 21) &lt;/li&gt;
  1060.  
  1061.  &lt;li&gt;Using the role assignment and role definition, a new binding is added to the existing bindings. (line 22) &lt;/li&gt;
  1062.  
  1063.  &lt;li&gt;The new role assignment is added to the SPWeb. (line 23) &lt;/li&gt;
  1064.  
  1065.  &lt;li&gt;Everything is updated in the SPWeb &lt;/li&gt;
  1066. &lt;/ol&gt;
  1067.  
  1068. &lt;h4&gt;Method: CreateCategoryListInstance&lt;/h4&gt;
  1069.  
  1070. &lt;p&gt;Now that the permissions and groups have been handled, it is time to begin creating and linking content that will be used by this feature.&lt;/p&gt;
  1071.  
  1072. &lt;pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1:     &lt;span style=&quot;color: #0000ff&quot;&gt;Protected&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Function&lt;/span&gt; CreateCategoryListInstance(&lt;span style=&quot;color: #0000ff&quot;&gt;ByVal&lt;/span&gt; web &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPWeb) &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPList
  1073. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Create a new list for the categories and store the GUID for use later.&lt;/span&gt;
  1074. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; list &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPList
  1075. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; listID &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Guid
  1076. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:         &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1077. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:             list = web.Lists(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Category List&lt;/span&gt;&amp;quot;)
  1078. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:             listID = list.ID
  1079. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:         &lt;span style=&quot;color: #0000ff&quot;&gt;Catch&lt;/span&gt; ex &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Exception
  1080. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:             list = &lt;span style=&quot;color: #0000ff&quot;&gt;Nothing&lt;/span&gt;
  1081. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1082. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 11:
  1083. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 12:         &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt; list &lt;span style=&quot;color: #0000ff&quot;&gt;Is&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Nothing&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Then&lt;/span&gt;
  1084. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 13:             listID = web.Lists.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Category List&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;List containing categories used in KB Article Creation&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Lists/Cats&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;386CF027-6AC7-460a-A7D6-4E503B2B6293&lt;/span&gt;&amp;quot;, 10800, 100)
  1085. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 14:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt;
  1086. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 15:
  1087. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 16:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Store the GUID of the new list for clean-up later if needed.&lt;/span&gt;
  1088. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 17:         &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt; web.AllProperties.ContainsKey(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;KBCategoryList&lt;/span&gt;&amp;quot;) = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Then&lt;/span&gt;
  1089. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 18:             web.AllProperties(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;KBCategoryList&lt;/span&gt;&amp;quot;) = listID.ToString()
  1090. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 19:         &lt;span style=&quot;color: #0000ff&quot;&gt;Else&lt;/span&gt;
  1091. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 20:             web.AllProperties.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;KBCategoryList&lt;/span&gt;&amp;quot;, listID.ToString())
  1092. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 21:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt;
  1093. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 22:         web.Update()
  1094. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 23:
  1095. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 24:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Retrieve the new list and provide some updates.&lt;/span&gt;
  1096. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 25:         &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt; list &lt;span style=&quot;color: #0000ff&quot;&gt;Is&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Nothing&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Then&lt;/span&gt;
  1097. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 26:             list = web.Lists(listID)
  1098. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 27:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt;
  1099. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 28:         list.ContentTypesEnabled = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt; &lt;span style=&quot;color: #008000&quot;&gt;&#39; Use the specified content type&lt;/span&gt;
  1100. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 29:         list.EnableAttachments = &lt;span style=&quot;color: #0000ff&quot;&gt;False&lt;/span&gt;  &lt;span style=&quot;color: #008000&quot;&gt;&#39; No attachments&lt;/span&gt;
  1101. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 30:         list.AllowDeletion = &lt;span style=&quot;color: #0000ff&quot;&gt;False&lt;/span&gt;      &lt;span style=&quot;color: #008000&quot;&gt;&#39; Don&#39;t want this one to accidentally get deleted&lt;/span&gt;
  1102. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 31:         list.Hidden = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;              &lt;span style=&quot;color: #008000&quot;&gt;&#39; Don&#39;t show this in the view all site content area&lt;/span&gt;
  1103. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 32:         list.NoCrawl = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Don&#39;t include items from this list in search results&lt;/span&gt;
  1104. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 33:         list.OnQuickLaunch = &lt;span style=&quot;color: #0000ff&quot;&gt;False&lt;/span&gt;      &lt;span style=&quot;color: #008000&quot;&gt;&#39; Don&#39;t show a link to this list on the quick launch&lt;/span&gt;
  1105. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 34:         list.Update()
  1106. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 35:
  1107. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 36:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Return the list&lt;/span&gt;
  1108. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 37:         &lt;span style=&quot;color: #0000ff&quot;&gt;Return&lt;/span&gt; list
  1109. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 38:     &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Function&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  1110.  
  1111. &lt;p&gt;Much of this code is already documented with comments. However, here are the raw steps being used.&lt;/p&gt;
  1112.  
  1113. &lt;ol&gt;
  1114.  &lt;li&gt;The existing list is found or a new list is created. (lines 3-14) &lt;/li&gt;
  1115.  
  1116.  &lt;li&gt;The GUID of the list is stored in the web properties (lines 17-22)
  1117.    &lt;br /&gt;This is done to help other developers on the team quickly locate key lists within the SharePoint implementation. Utilities may be written to update the categories programatically or make changes to existing items. &lt;/li&gt;
  1118.  
  1119.  &lt;li&gt;The properties of the list are updated (line 28-34) &lt;/li&gt;
  1120. &lt;/ol&gt;
  1121.  
  1122. &lt;h4&gt;Method: CreateCategoryLookupSiteColumn&lt;/h4&gt;
  1123.  
  1124. &lt;p&gt;Now that the category list has been created, a new site column can be created to perform lookups on the list.&lt;/p&gt;
  1125.  
  1126. &lt;pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1:     &lt;span style=&quot;color: #0000ff&quot;&gt;Protected&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Function&lt;/span&gt; CreateCategoryLookupSiteColumn(&lt;span style=&quot;color: #0000ff&quot;&gt;ByVal&lt;/span&gt; web &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPWeb, &lt;span style=&quot;color: #0000ff&quot;&gt;ByVal&lt;/span&gt; list &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPList) &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Boolean&lt;/span&gt;
  1127. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2:         &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1128. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Define the format for this lookup field&lt;/span&gt;
  1129. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:             &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; fieldXMLFormat &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;String&lt;/span&gt; = _
  1130. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:                &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;Field ID=&lt;/span&gt;&amp;quot;&amp;quot;{{3324B767-6CB6-4789-A0ED-60FB39BAC648}}&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;quot; &amp;amp; _
  1131. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:                &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt; Name=&lt;/span&gt;&amp;quot;&amp;quot;SWBTS_KBCategory&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; StaticName=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;SWBTS_KBCategory&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;quot; &amp;amp; _
  1132. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:                &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt; DisplayName=&lt;/span&gt;&amp;quot;&amp;quot;Category&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;Lookup&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; List=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;{0}&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;quot; &amp;amp; _
  1133. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:                &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt; ShowField=&lt;/span&gt;&amp;quot;&amp;quot;Title&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; LCID=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;1033&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;quot; &amp;amp; _
  1134. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:                &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt; Group=&lt;/span&gt;&amp;quot;&amp;quot;Knowledge Base Columns&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;quot; &amp;amp; _
  1135. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:                &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt; UnlimitedLengthInDocumentLibrary=&lt;/span&gt;&amp;quot;&amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;false&lt;/span&gt;&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;
  1136. &lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 11:
  1137. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 12:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Using the format and apply the category list GUID to the string&lt;/span&gt;
  1138. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 13:             &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; fieldXML &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;String&lt;/span&gt; = &lt;span style=&quot;color: #0000ff&quot;&gt;String&lt;/span&gt;.Format(fieldXMLFormat, list.ID.ToString())
  1139. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 14:
  1140. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 15:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add the field to the site columns collection&lt;/span&gt;
  1141. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 16:             web.Fields.AddFieldAsXml(fieldXML)
  1142. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 17:             web.Update()
  1143. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 18:             &lt;span style=&quot;color: #0000ff&quot;&gt;Return&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;
  1144. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 19:         &lt;span style=&quot;color: #0000ff&quot;&gt;Catch&lt;/span&gt; ex &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Exception
  1145. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 20:             &lt;span style=&quot;color: #0000ff&quot;&gt;Return&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;False&lt;/span&gt;
  1146. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 21:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1147. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 22:     &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Function&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  1148.  
  1149. &lt;p&gt;The easiest way to create a new field is to use the XML markup to define the field. Notice that there is a placeholder on line 7 for the GUID of the list. This is where most of the issues in creating lookup columns in features were experienced by me. Once it was determined that using the list GUID was necessary for the site column to work properly, it was decided that this was the best way to implement the site lookup column (line 13).&lt;/p&gt;
  1150.  
  1151. &lt;p&gt;The field is then added to the current web context and the web updated with the new site column (lines 16 – 17).&lt;/p&gt;
  1152.  
  1153. &lt;h4&gt;Method: UpdateKBDocumentContentType&lt;/h4&gt;
  1154.  
  1155. &lt;p&gt;Now that the site column has been added containing the categories for the system, the underlying content types need to be updated with a reference to this new site column.&lt;/p&gt;
  1156.  
  1157. &lt;pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1:    &lt;span style=&quot;color: #0000ff&quot;&gt;Protected&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Function&lt;/span&gt; UpdateKBDocumentContentType(&lt;span style=&quot;color: #0000ff&quot;&gt;ByVal&lt;/span&gt; web &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPWeb) &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Boolean&lt;/span&gt;
  1158. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2:         &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1159. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Get the IT Knowledge Base Article content type&lt;/span&gt;
  1160. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:             &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; CT &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPContentType = web.ContentTypes(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;IT Knowledge Base Article&lt;/span&gt;&amp;quot;)
  1161. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:
  1162. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Create the GUID for the site column to add to the content type&lt;/span&gt;
  1163. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:             &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; fieldID &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Guid = &lt;span style=&quot;color: #0000ff&quot;&gt;New&lt;/span&gt; Guid(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;3324B767-6CB6-4789-A0ED-60FB39BAC648&lt;/span&gt;&amp;quot;)
  1164. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:
  1165. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add a new link to the site column for the IT Knowledge Base Article content type&lt;/span&gt;
  1166. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:             CT.FieldLinks.Add(&lt;span style=&quot;color: #0000ff&quot;&gt;New&lt;/span&gt; SPFieldLink(web.Fields(fieldID)))
  1167. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 11:
  1168. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 12:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Update the content type and all child content types.&lt;/span&gt;
  1169. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 13:             CT.Update(&lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;)
  1170. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 14:
  1171. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 15:             &lt;span style=&quot;color: #0000ff&quot;&gt;Return&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;
  1172. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 16:         &lt;span style=&quot;color: #0000ff&quot;&gt;Catch&lt;/span&gt; ex &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Exception
  1173. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 17:             &lt;span style=&quot;color: #0000ff&quot;&gt;Return&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;False&lt;/span&gt;
  1174. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 18:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1175. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 19:     &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Function&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  1176.  
  1177. &lt;p&gt;The content type is located and then a new field link is added to the content type (line 10). The content type is then updated.&lt;/p&gt;
  1178.  
  1179. &lt;h4&gt;Method: CreateKBDocumentLibrary&lt;/h4&gt;
  1180.  
  1181. &lt;p&gt;Finally, all of the pieces are in place to create the document library that will house all of the KB documents. Now, it just needs to be added using the following code:&lt;/p&gt;
  1182.  
  1183. &lt;pre style=&quot;border-right: #cecece 1px solid; padding-right: 5px; border-top: #cecece 1px solid; padding-left: 5px; min-height: 40px; padding-bottom: 5px; overflow: auto; border-left: #cecece 1px solid; width: 650px; padding-top: 5px; border-bottom: #cecece 1px solid; background-color: #fbfbfb&quot;&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1:     &lt;span style=&quot;color: #0000ff&quot;&gt;Protected&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Function&lt;/span&gt; CreateKBDocumentLibrary(&lt;span style=&quot;color: #0000ff&quot;&gt;ByVal&lt;/span&gt; web &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPWeb) &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPDocumentLibrary
  1184. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; kbDocLibraryID &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Guid
  1185. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; docLibrary &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPDocumentLibrary
  1186. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:         &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1187. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:             docLibrary = web.Lists(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Knowledge Base Repository&lt;/span&gt;&amp;quot;)
  1188. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:             kbDocLibraryID = docLibrary.ID
  1189. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:         &lt;span style=&quot;color: #0000ff&quot;&gt;Catch&lt;/span&gt; ex &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Exception
  1190. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:             docLibrary = &lt;span style=&quot;color: #0000ff&quot;&gt;Nothing&lt;/span&gt;
  1191. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1192. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:
  1193. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 11:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Create the new document library and store the guid.&lt;/span&gt;
  1194. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 12:         &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt; docLibrary &lt;span style=&quot;color: #0000ff&quot;&gt;Is&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Nothing&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Then&lt;/span&gt;
  1195. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 13:             &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1196. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 14:                 kbDocLibraryID = web.Lists.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;KB&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Knowledge base articles and resources.&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;KB&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;386CF027-6AC7-460a-A7D6-4E503B2B6293&lt;/span&gt;&amp;quot;, 10801, 101)
  1197. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 15:             &lt;span style=&quot;color: #0000ff&quot;&gt;Catch&lt;/span&gt; ex &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Exception
  1198. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 16:                 kbDocLibraryID = web.Lists(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;KB&lt;/span&gt;&amp;quot;).ID
  1199. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 17:             &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1200. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 18:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt;
  1201. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 19:
  1202. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 20:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Store the GUID in the document properties for use when deactivating the feature.&lt;/span&gt;
  1203. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 21:         &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt; web.AllProperties.ContainsKey(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;KBDocID&lt;/span&gt;&amp;quot;) &lt;span style=&quot;color: #0000ff&quot;&gt;Then&lt;/span&gt;
  1204. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 22:             web.AllProperties(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;KBDocID&lt;/span&gt;&amp;quot;) = kbDocLibraryID.ToString()
  1205. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 23:         &lt;span style=&quot;color: #0000ff&quot;&gt;Else&lt;/span&gt;
  1206. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 24:             web.AllProperties.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;KBDocID&lt;/span&gt;&amp;quot;, kbDocLibraryID.ToString())
  1207. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 25:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt;
  1208. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 26:         web.Update()
  1209. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 27:
  1210. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 28:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Update the document library and turn on the ability to use content types.&lt;/span&gt;
  1211. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 29:         &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt; docLibrary &lt;span style=&quot;color: #0000ff&quot;&gt;Is&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Nothing&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Then&lt;/span&gt;
  1212. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 30:             docLibrary = web.Lists(kbDocLibraryID)
  1213. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 31:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;If&lt;/span&gt;
  1214. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 32:         docLibrary.ContentTypesEnabled = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;
  1215. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 33:         docLibrary.Update()
  1216. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 34:
  1217. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 35:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Get a reference for the content types that will be changed.&lt;/span&gt;
  1218. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 36:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; docType &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPContentType = docLibrary.ContentTypes(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Document&lt;/span&gt;&amp;quot;)                      &lt;span style=&quot;color: #008000&quot;&gt;&#39; Document content type declared in the library&lt;/span&gt;
  1219. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 37:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; kbType &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPContentType = web.ContentTypes(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;IT Knowledge Base Article&lt;/span&gt;&amp;quot;)             &lt;span style=&quot;color: #008000&quot;&gt;&#39; New IT content type declared in the web site&lt;/span&gt;
  1220. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 38:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; hicupType &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPContentType = web.ContentTypes(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;HICUP Knowledge Base Article&lt;/span&gt;&amp;quot;)       &lt;span style=&quot;color: #008000&quot;&gt;&#39; Content Type for old KB Articles&lt;/span&gt;
  1221. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 39:
  1222. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 40:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add the new KB type and remove the generic document type&lt;/span&gt;
  1223. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 41:         &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1224. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 42:             &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; kbDocLibraryType &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPContentType = docLibrary.ContentTypes.Add(kbType)
  1225. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 43:             &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; hicupDocLibraryType &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPContentType = docLibrary.ContentTypes.Add(hicupType)
  1226. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 44:             hicupDocLibraryType.Hidden = &lt;span style=&quot;color: #0000ff&quot;&gt;False&lt;/span&gt;
  1227. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 45:             docLibrary.Update()
  1228. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 46:
  1229. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 47:             &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; fieldID &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Guid = &lt;span style=&quot;color: #0000ff&quot;&gt;New&lt;/span&gt; Guid(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;3324B767-6CB6-4789-A0ED-60FB39BAC648&lt;/span&gt;&amp;quot;)
  1230. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 48:
  1231. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 49:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Insure the category column is linked to the document library for this content type&lt;/span&gt;
  1232. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 50:             hicupDocLibraryType.FieldLinks.Add(&lt;span style=&quot;color: #0000ff&quot;&gt;New&lt;/span&gt; SPFieldLink(web.Fields(fieldID)))
  1233. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 51:             hicupDocLibraryType.Update()
  1234. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 52:
  1235. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 53:             &lt;span style=&quot;color: #008000&quot;&gt;&#39; Remove the original document content type -- it isn&#39;t needed for this library&lt;/span&gt;
  1236. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 54:             docLibrary.ContentTypes.Delete(docType.Id)
  1237. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 55:             docLibrary.Update()
  1238. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 56:         &lt;span style=&quot;color: #0000ff&quot;&gt;Catch&lt;/span&gt; ex &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; Exception
  1239. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 57:         &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Try&lt;/span&gt;
  1240. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 58:
  1241. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 59:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Set some additional properties for the library.&lt;/span&gt;
  1242. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 60:         docLibrary.Title = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Knowledge Base Repository&lt;/span&gt;&amp;quot;
  1243. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 61:         docLibrary.EnableFolderCreation = &lt;span style=&quot;color: #0000ff&quot;&gt;False&lt;/span&gt;                             &lt;span style=&quot;color: #008000&quot;&gt;&#39; No folder nesting allowed!&lt;/span&gt;
  1244. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 62:         docLibrary.EnableModeration = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;                                  &lt;span style=&quot;color: #008000&quot;&gt;&#39; Items must be approved.&lt;/span&gt;
  1245. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 63:         docLibrary.EnableVersioning = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;                                  &lt;span style=&quot;color: #008000&quot;&gt;&#39; Enable versions for historical tracking&lt;/span&gt;
  1246. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 64:         docLibrary.EnableMinorVersions = &lt;span style=&quot;color: #0000ff&quot;&gt;False&lt;/span&gt;                              &lt;span style=&quot;color: #008000&quot;&gt;&#39; Do not use minor versions for draft revisions&lt;/span&gt;
  1247. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 65:         docLibrary.DraftVersionVisibility = DraftVisibilityType.Reader      &lt;span style=&quot;color: #008000&quot;&gt;&#39; Allow everyone to read all documents&lt;/span&gt;
  1248. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 66:         docLibrary.MajorVersionLimit = 8                                    &lt;span style=&quot;color: #008000&quot;&gt;&#39; Only store the last 8 major versions&lt;/span&gt;
  1249. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 67:         docLibrary.ForceCheckout = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;                                     &lt;span style=&quot;color: #008000&quot;&gt;&#39; You must check out these documents to edit&lt;/span&gt;
  1250. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 68:         docLibrary.OnQuickLaunch = &lt;span style=&quot;color: #0000ff&quot;&gt;True&lt;/span&gt;                                     &lt;span style=&quot;color: #008000&quot;&gt;&#39; Create a navigational link to the library&lt;/span&gt;
  1251. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 69:         docLibrary.Update()
  1252. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 70:
  1253. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 71:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Update the document library views&lt;/span&gt;
  1254. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 72:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; defaultViewFieldsArray() &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;String&lt;/span&gt; = {&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;DocIcon&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;LinkFilename&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;SWBTS_KBCategory&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;_UIVersionString&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Modified&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Editor&lt;/span&gt;&amp;quot;, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;CheckoutUser&lt;/span&gt;&amp;quot;}
  1255. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 73:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; defaultViewFields &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;New&lt;/span&gt; System.Collections.Specialized.StringCollection()
  1256. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 74:         defaultViewFields.AddRange(defaultViewFieldsArray)
  1257. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 75:
  1258. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 76:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add new columns to the default view&lt;/span&gt;
  1259. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 77:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; defaultView &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPView = docLibrary.DefaultView
  1260. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 78:         defaultView.ViewFields.DeleteAll()              &lt;span style=&quot;color: #008000&quot;&gt;&#39; Remove all the old columns, we want to start with a clean view&lt;/span&gt;
  1261. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 79:         &lt;span style=&quot;color: #0000ff&quot;&gt;For&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Each&lt;/span&gt; fieldName &lt;span style=&quot;color: #0000ff&quot;&gt;In&lt;/span&gt; defaultViewFields         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Iterate through the defaultViewFields array to add them to the view&lt;/span&gt;
  1262. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 80:             defaultView.ViewFields.Add(fieldName)       &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add the field to the view&lt;/span&gt;
  1263. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 81:         &lt;span style=&quot;color: #0000ff&quot;&gt;Next&lt;/span&gt;
  1264. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 82:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Change the query&lt;/span&gt;
  1265. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 83:         defaultView.Query = &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;GroupBy Collapse=&lt;/span&gt;&amp;quot;&amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;FALSE&lt;/span&gt;&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; GroupLimit=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;100&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;ContentType&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;_ModerationStatus&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/GroupBy&amp;gt;&amp;lt;OrderBy&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;FileLeafRef&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/OrderBy&amp;gt;&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;
  1266. &lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 84:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Set a new row limit&lt;/span&gt;
  1267. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 85:         defaultView.RowLimit = 50
  1268. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 86:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Update the default view&lt;/span&gt;
  1269. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 87:         defaultView.Update()
  1270. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 88:
  1271. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 89:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add a new view to show only the articles transferred from the old system.&lt;/span&gt;
  1272. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 90:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; oldItemsView &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPView = docLibrary.Views.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;KB Articles&lt;/span&gt;&amp;quot;, defaultViewFields, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;GroupBy Collapse=&lt;/span&gt;&amp;quot;&amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;FALSE&lt;/span&gt;&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; GroupLimit=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;100&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;_ModerationStatus&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/GroupBy&amp;gt;&amp;lt;OrderBy&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;FileLeafRef&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/OrderBy&amp;gt;&amp;lt;Where&amp;gt;&amp;lt;Eq&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;ContentType&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;Value Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;Text&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;gt;HICUP Knowledge Base Article&amp;lt;/Value&amp;gt;&amp;lt;/Eq&amp;gt;&amp;lt;/Where&amp;gt;&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;, 100, True, False)
  1273. &lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 91:         oldItemsView.ViewFields.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;SWBTS_OriginalAuthor&lt;/span&gt;&amp;quot;)
  1274. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 92:         oldItemsView.ViewFields.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;SWBTS_OriginalKBID&lt;/span&gt;&amp;quot;)
  1275. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 93:         oldItemsView.ViewFields.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;SWBTS_OriginalPublished&lt;/span&gt;&amp;quot;)
  1276. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 94:         oldItemsView.Update()
  1277. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 95:         docLibrary.Update()
  1278. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 96:
  1279. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 97:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add a new view to show articles grouped by category.&lt;/span&gt;
  1280. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 98:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; categoryView &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPView = docLibrary.Views.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;By Category&lt;/span&gt;&amp;quot;, defaultViewFields, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;GroupBy Collapse=&lt;/span&gt;&amp;quot;&amp;quot;&lt;span style=&quot;color: #0000ff&quot;&gt;FALSE&lt;/span&gt;&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; GroupLimit=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;100&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;SWBTS_KBCategory&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/GroupBy&amp;gt;&amp;lt;OrderBy&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;FileLeafRef&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/OrderBy&amp;gt;&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;, 200, True, False)
  1281. &lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 99:         categoryView.ViewFields.Delete(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;SWBTS_KBCategory&lt;/span&gt;&amp;quot;)      &lt;span style=&quot;color: #008000&quot;&gt;&#39;Since we are grouping by category, remove the category column from the view&lt;/span&gt;
  1282. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;100:         categoryView.Update()
  1283. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;101:         docLibrary.Update()
  1284. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;102:
  1285. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;103:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add a new view to show articles that have been rejected.&lt;/span&gt;
  1286. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;104:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; rejectedView &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPView = docLibrary.Views.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;My Rejected Items&lt;/span&gt;&amp;quot;, defaultViewFields, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;OrderBy&amp;gt;&amp;lt;FieldRef Name=&lt;/span&gt;&amp;quot;&amp;quot;Modified&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; Ascending=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;FALSE&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/OrderBy&amp;gt;&amp;lt;Where&amp;gt;&amp;lt;&lt;span style=&quot;color: #0000ff&quot;&gt;And&lt;/span&gt;&amp;gt;&amp;lt;Eq&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;_ModerationStatus&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;Value Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;ModStat&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;gt;Rejected&amp;lt;/Value&amp;gt;&amp;lt;/Eq&amp;gt;&amp;lt;Eq&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;Author&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;Value Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;Integer&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;gt;&amp;lt;UserID Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;Integer&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/Value&amp;gt;&amp;lt;/Eq&amp;gt;&amp;lt;/&lt;span style=&quot;color: #0000ff&quot;&gt;And&lt;/span&gt;&amp;gt;&amp;lt;/Where&amp;gt;&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;, 15, True, False)
  1287. &lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;105:         rejectedView.Update()
  1288. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;106:         docLibrary.Update()
  1289. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;107:
  1290. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;108:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add a new view to show articles that need to be reviewed&lt;/span&gt;
  1291. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;109:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; reviewView &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPView = docLibrary.Views.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;Needing Review&lt;/span&gt;&amp;quot;, defaultViewFields, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;OrderBy&amp;gt;&amp;lt;FieldRef Name=&lt;/span&gt;&amp;quot;&amp;quot;SWBTS_ReviewDate&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/OrderBy&amp;gt;&amp;lt;Where&amp;gt;&amp;lt;Leq&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;SWBTS_ReviewDate&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;Value Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;DateTime&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;gt;&amp;lt;Today /&amp;gt;&amp;lt;/Value&amp;gt;&amp;lt;/Leq&amp;gt;&amp;lt;/Where&amp;gt;&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;, 50, True, False)
  1292. &lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;110:         reviewView.ViewFields.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;SWBTS_ReviewDate&lt;/span&gt;&amp;quot;)
  1293. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;111:         reviewView.Update()
  1294. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;112:         docLibrary.Update()
  1295. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;113:
  1296. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;114:         &lt;span style=&quot;color: #008000&quot;&gt;&#39; Add a new view to show my articles that need to be reviewed&lt;/span&gt;
  1297. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;115:         &lt;span style=&quot;color: #0000ff&quot;&gt;Dim&lt;/span&gt; myReviewView &lt;span style=&quot;color: #0000ff&quot;&gt;As&lt;/span&gt; SPView = docLibrary.Views.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;My Documents to Review&lt;/span&gt;&amp;quot;, defaultViewFields, &amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&amp;lt;OrderBy&amp;gt;&amp;lt;FieldRef Name=&lt;/span&gt;&amp;quot;&amp;quot;SWBTS_ReviewDate&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/OrderBy&amp;gt;&amp;lt;Where&amp;gt;&amp;lt;&lt;span style=&quot;color: #0000ff&quot;&gt;And&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #0000ff&quot;&gt;Or&lt;/span&gt;&amp;gt;&amp;lt;&lt;span style=&quot;color: #0000ff&quot;&gt;And&lt;/span&gt;&amp;gt;&amp;lt;Leq&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;SWBTS_ReviewDate&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;Value Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;DateTime&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;gt;&amp;lt;Today /&amp;gt;&amp;lt;/Value&amp;gt;&amp;lt;/Leq&amp;gt;&amp;lt;Eq&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;Author&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;Value Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;Integer&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;gt;&amp;lt;UserID Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;Integer&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/Value&amp;gt;&amp;lt;/Eq&amp;gt;&amp;lt;/&lt;span style=&quot;color: #0000ff&quot;&gt;And&lt;/span&gt;&amp;gt;&amp;lt;Leq&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;SWBTS_ReviewDate&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;Value Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;DateTime&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;gt;&amp;lt;Today /&amp;gt;&amp;lt;/Value&amp;gt;&amp;lt;/Leq&amp;gt;&amp;lt;/&lt;span style=&quot;color: #0000ff&quot;&gt;Or&lt;/span&gt;&amp;gt;&amp;lt;Eq&amp;gt;&amp;lt;FieldRef Name=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;Editor&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;Value Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;Integer&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;&amp;gt;&amp;lt;UserID Type=&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot;Integer&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;&lt;/span&gt;&amp;quot; /&amp;gt;&amp;lt;/Value&amp;gt;&amp;lt;/Eq&amp;gt;&amp;lt;/&lt;span style=&quot;color: #0000ff&quot;&gt;And&lt;/span&gt;&amp;gt;&amp;lt;/Where&amp;gt;&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;, 20, True, False)
  1298. &lt;/span&gt;&lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;116:         reviewView.ViewFields.Add(&amp;quot;&lt;span style=&quot;color: #8b0000&quot;&gt;SWBTS_ReviewDate&lt;/span&gt;&amp;quot;)
  1299. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;117:         myReviewView.Update()
  1300. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;118:         docLibrary.Update()
  1301. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;119:
  1302. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;120:         &lt;span style=&quot;color: #0000ff&quot;&gt;Return&lt;/span&gt; docLibrary
  1303. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;121:     &lt;span style=&quot;color: #0000ff&quot;&gt;End&lt;/span&gt; &lt;span style=&quot;color: #0000ff&quot;&gt;Function&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  1304.  
  1305. &lt;p&gt;Admittedly, there is a lot of code above. I would normally stay away from posting this much code, but this also gives an opportunity to show how to do a bunch of things when creating lists and libraries programatically in SharePoint. So, for the broad sweeping brush of what’s happening above:&lt;/p&gt;
  1306.  
  1307. &lt;ol&gt;
  1308.  &lt;li&gt;Find or create the KB Document library. (lines 4-26) &lt;/li&gt;
  1309.  
  1310.  &lt;li&gt;Turn on content types for the library. (lines 29-33) &lt;/li&gt;
  1311.  
  1312.  &lt;li&gt;Add and remove content types. (lines 36-55) &lt;/li&gt;
  1313.  
  1314.  &lt;li&gt;Change some of the settings of the library. (lines 60-69) &lt;/li&gt;
  1315.  
  1316.  &lt;li&gt;Add a bunch of public views for the library. (lines 72-118) &lt;/li&gt;
  1317. &lt;/ol&gt;
  1318.  
  1319. &lt;p&gt;If you follow the comments, you will see a lot of details on what is being done in the code. &lt;/p&gt;  </description><link>http://wssdevelopment.blogspot.com/2009/10/end-to-end-solution-custom-document.html</link><author>noreply@blogger.com (Chris)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/_YBA30Jkzr-w/SuDDHT5yB-I/AAAAAAAAAKo/lelyx9bWIKk/s72-c/image_thumb%5B18%5D.png?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-2090492841396679291</guid><pubDate>Fri, 09 Oct 2009 15:45:00 +0000</pubDate><atom:updated>2009-10-09T10:45:44.243-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Development Approaches</category><category domain="http://www.blogger.com/atom/ns#">Resources</category><category domain="http://www.blogger.com/atom/ns#">Web Services</category><title>Resources: LINQ to XML for SharePoint Lists Web Service</title><description>As I have been continuing the development of the end-to-end solution, I have been doing a lot of work with the SharePoint web services -- specifically the lists.asmx web service used for working with lists in SharePoint.&lt;br /&gt;
  1320. &lt;br /&gt;
  1321. Anyone who has dealt with this web service knows that SharePoint is happy to provide you with a lot of XML to parse. In an effort to make these easier, I began exploring the use of LINQ to XML since I&#39;m not the biggest fan of writing my own XPath queries. In this quest, I came across two articles that were very useful and I hope you will find these useful as well.&lt;br /&gt;
  1322. &lt;br /&gt;
  1323. &lt;a href=&quot;http://www.u2u.info/Blogs/karine/Lists/Posts/Post.aspx?ID=36&quot;&gt;Using LINQ to XML in combination with the Lists.asmx&lt;/a&gt;&lt;br /&gt;
  1324. This article describes how to use LINQ to XML in conjunction with the&amp;nbsp; GetListCollection() method of the lists.asmx web service. I made use of this in my client application to populate a combo-box.&lt;br /&gt;
  1325. &lt;br /&gt;
  1326. &lt;a href=&quot;http://dotnetstep.blogspot.com/2009/01/sharepoint-to-linq.html&quot;&gt;SharePoint to Linq&lt;/a&gt;&lt;br /&gt;
  1327. Using this site, I was able to learn how to use LINQ to XML to build queries and anonymous types for data-binding list data to my client application. &lt;br /&gt;
  1328. &lt;br /&gt;
  1329. I&#39;m in the process of refactoring some of the end-to-end solution I&#39;ve been working on, so that has slowed me down a bit in getting the next posts up. I hope to get the refactoring completed soon so I can share the steps I&#39;ve taken to create an end-to-end solution in SharePoint 2007. &lt;br /&gt;
  1330. &lt;br /&gt;</description><link>http://wssdevelopment.blogspot.com/2009/10/resources-linq-to-xml-for-sharepoint.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-5989891329123049745</guid><pubDate>Fri, 25 Sep 2009 04:21:00 +0000</pubDate><atom:updated>2009-10-23T13:17:57.481-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Development Approaches</category><category domain="http://www.blogger.com/atom/ns#">End-To-End Solution</category><category domain="http://www.blogger.com/atom/ns#">Feature Development</category><category domain="http://www.blogger.com/atom/ns#">Sharepoint Application Concepts</category><title>End-To-End Solution – Custom List Definition</title><description>&lt;p&gt;Today, I will continue to discuss the end-to-end solution I’ve been building for my organization. In &lt;a href=&quot;http://wssdevelopment.blogspot.com/2009/09/sharepoint-development-solution-end-to.html&quot;&gt;Part 1&lt;/a&gt;, I began by describing my requirements and started building my solution. In the &lt;a href=&quot;http://wssdevelopment.blogspot.com/2009/09/end-to-end-solution-feature-receiver.html&quot;&gt;last post&lt;/a&gt;, I began building a feature receiver that fires when the feature is activated on my site collection.&lt;/p&gt;  &lt;p&gt;In the last few posts, I think I became guilty of trying to cover too much at a time, so I’ve decided to limit this post the definition of my custom list. This is so I slow down and spend more time discussing the parts of the solution. I hope this change will allow me to make some things a little more understandable. &lt;/p&gt;  &lt;p&gt;In the solution’s FEATURE folder, a new XML file is created that will contain the definition of my custom list. Again, I will set the schema of this file to use the wss.xsd located in the [12 Hive]/TEMPLATES/XML/ folder. To do this, in the properties window of the file and locate the Schema property. Click on the ellipses to show all of the currently available schema definitions. Click on &lt;strong&gt;Add&lt;/strong&gt; and navigate the the [12 HIVE]/TEMPLATES/XML/wss.xsd file. This will enable intellisense for the document.&lt;/p&gt;  &lt;p&gt;This is the definition of the list template:&lt;/p&gt;  &lt;pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Elements&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;xmlns&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;http://schemas.microsoft.com/sharepoint/&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  1331. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2:   &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ListTemplate&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Type&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;10800&amp;quot;&lt;/span&gt;
  1332. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:                 &lt;span style=&quot;color: #ff0000&quot;&gt;BaseType&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;0&amp;quot;&lt;/span&gt;
  1333. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;CategoryList&amp;quot;&lt;/span&gt;
  1334. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:                 &lt;span style=&quot;color: #ff0000&quot;&gt;DisplayName&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Category List&amp;quot;&lt;/span&gt;
  1335. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Description&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Contains a list of categories&amp;quot;&lt;/span&gt;
  1336. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:                 &lt;span style=&quot;color: #ff0000&quot;&gt;SecurityBits&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;11&amp;quot;&lt;/span&gt;
  1337. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:                 &lt;span style=&quot;color: #ff0000&quot;&gt;VersioningEnabled&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;false&amp;quot;&lt;/span&gt;
  1338. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Hidden&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;TRUE&amp;quot;&lt;/span&gt;
  1339. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:                 &lt;span style=&quot;color: #ff0000&quot;&gt;DisableAttachments&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;true&amp;quot;&lt;/span&gt;
  1340. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 11:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Category&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Custom Lists&amp;quot;&lt;/span&gt;
  1341. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 12:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Sequence&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;100&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  1342. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 13: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Elements&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  1343.  
  1344. &lt;p&gt;Since this file will define a new element in SharePoint, the root node of my XML file is &lt;strong&gt;Elements.&lt;/strong&gt; Inside the &lt;strong&gt;Elements&lt;/strong&gt; node, the &lt;strong&gt;ListTemplate&lt;/strong&gt; node is used to define a new list template to be used on the SharePoint site. The list templates show up when creating a new content for the SharePoint site. &lt;/p&gt;
  1345.  
  1346. &lt;p&gt;I will be honest, I’m not sure what some of the attributes are for and welcome feedback from any that do, but I will discuss the ones that I do know.&lt;/p&gt;
  1347.  
  1348. &lt;p&gt;First, Type is an identifier for the type of list. Microsoft recommends that you use any five digit number over 10000. I randomly selected 10800 because our organization plans to start at 10800 for any custom lists defined through features.&lt;/p&gt;
  1349.  
  1350. &lt;p&gt;&lt;strong&gt;Name&lt;/strong&gt; is the internal name of the list. This will also be the name of the folder that contains the schema file for the list. &lt;strong&gt;DisplayName&lt;/strong&gt; is the list that will be displayed on the content creation screen in SharePoint. &lt;strong&gt;Description&lt;/strong&gt; contains the description that will be displayed when the list is highlighted when creating content.&lt;/p&gt;
  1351.  
  1352. &lt;p&gt;&lt;strong&gt;VersioningEnabled &lt;/strong&gt;will turn on versioning in this list by default when it is created. Because this list will be synchronized with an external database, versioning will help make sure that any category can be rolled back to a previous version if needed.&lt;/p&gt;
  1353.  
  1354. &lt;p&gt;&lt;strong&gt;Hidden&lt;/strong&gt; will determine if this list type shows up to be created in the user interface. By setting this to TRUE, the list definition will not be displayed. This is being done because there should only be one Category list on the site, and that one will be created when the feature is activated.&lt;/p&gt;
  1355.  
  1356. &lt;p&gt;&lt;strong&gt;DisableAttachments&lt;/strong&gt; when set to true will turn off attachments on any instances of this list. Attachments will not be needed in this list, so they will be turned off by default.&lt;/p&gt;
  1357.  
  1358. &lt;p&gt;&lt;strong&gt;Category&lt;/strong&gt; is one of the visible category columns on the create content page. &lt;strong&gt;Sequence&lt;/strong&gt; sets the display order in the UI. Since this will not be used in the current solution, they will not be necessary and are here for demonstration purposes only.&lt;/p&gt;
  1359.  
  1360. &lt;p&gt;A new folder needs to be added to the root of the current solution folder. This folder should be the same name at the name used in the list definition, found on line 4.&lt;/p&gt;
  1361.  
  1362. &lt;pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffff00&quot;&gt;  4:                 &lt;span style=&quot;color: #ff0000&quot;&gt;Name&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;CategoryList&amp;quot;&lt;/span&gt;
  1363. &lt;/pre&gt;&lt;/pre&gt;
  1364.  
  1365. &lt;p&gt;My solution hierarchy should be:&lt;/p&gt;
  1366.  
  1367. &lt;ul&gt;
  1368.  &lt;li&gt;Project
  1369.    &lt;ul&gt;
  1370.      &lt;li&gt;12
  1371.        &lt;ul&gt;
  1372.          &lt;li&gt;TEMPLATE
  1373.            &lt;ul&gt;
  1374.              &lt;li&gt;FEATURES
  1375.                &lt;ul&gt;
  1376.                  &lt;li&gt;KBRepository
  1377.                    &lt;ul&gt;
  1378.                      &lt;li&gt;CategoryList &lt;/li&gt;
  1379.                    &lt;/ul&gt;
  1380.                  &lt;/li&gt;
  1381.                &lt;/ul&gt;
  1382.              &lt;/li&gt;
  1383.            &lt;/ul&gt;
  1384.          &lt;/li&gt;
  1385.        &lt;/ul&gt;
  1386.      &lt;/li&gt;
  1387.    &lt;/ul&gt;
  1388.  &lt;/li&gt;
  1389. &lt;/ul&gt;
  1390.  
  1391. &lt;p&gt;To begin with the schema.xml file used for the list, start by copying the schema.xml file from [12 Hive]/TEMPLATE/FEATURES/CustomList/CustomList/schema.xml. Place a copy of this file into the CategoryList folder and begin making customizations to the list. You can then follow the information provided in Andrew Connell’s blog on a &lt;a href=&quot;http://www.andrewconnell.com/blog/archive/2009/02/08/A-Quicker-Way-to-Create-Custom-SharePoint-List-Templates.aspx&quot; target=&quot;_blank&quot;&gt;quicker way to create list definitions&lt;/a&gt;.&lt;/p&gt;
  1392.  
  1393. &lt;p&gt;Finally, the FEATURE.XML file needs to be updated to contain a reference to the new files that have been added to the solution.&lt;/p&gt;
  1394.  
  1395. &lt;pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  1: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Feature&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;xmlns&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;http://schemas.microsoft.com/sharepoint/&amp;quot;&lt;/span&gt;
  1396. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  2:          &lt;span style=&quot;color: #ff0000&quot;&gt;Scope&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Site&amp;quot;&lt;/span&gt;
  1397. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  3:          &lt;span style=&quot;color: #ff0000&quot;&gt;Creator&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Software Development&amp;quot;&lt;/span&gt;
  1398. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  4:          &lt;span style=&quot;color: #ff0000&quot;&gt;Id&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;386CF027-6AC7-460a-A7D6-4E503B2B6293&amp;quot;&lt;/span&gt;
  1399. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  5:          &lt;span style=&quot;color: #ff0000&quot;&gt;Description&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;Sets up this site collection for KB&amp;quot;&lt;/span&gt;
  1400. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  6:          &lt;span style=&quot;color: #ff0000&quot;&gt;Title&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;KB Repository&amp;quot;&lt;/span&gt;
  1401. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  7:          &lt;span style=&quot;color: #ff0000&quot;&gt;Version&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;1.0.0.0&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  1402. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt;  8:   &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ElementManifests&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  1403. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt;  9:     &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ElementManifest&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Location&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;KBItemFields.xml&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  1404. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 10:     &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ElementManifest&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Location&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;KBContentTypes.xml&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  1405. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffff00&quot;&gt; 11:     &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ElementManifest&lt;/span&gt; &lt;span style=&quot;color: #ff0000&quot;&gt;Location&lt;/span&gt;=&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;quot;CategoryList.xml&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;/&amp;gt;&lt;/span&gt;
  1406. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #ffffff&quot;&gt; 12:   &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;ElementManifests&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;
  1407. &lt;/pre&gt;&lt;pre style=&quot;font-size: 11px; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; background-color: #e2e2e2&quot;&gt; 13: &lt;span style=&quot;color: #0000ff&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000&quot;&gt;Feature&lt;/span&gt;&lt;span style=&quot;color: #0000ff&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  1408.  
  1409. &lt;p&gt;The next post will complete the feature receiver.&lt;/p&gt;
  1410.  
  1411. &lt;p&gt;Posts in series:&lt;/p&gt;
  1412.  
  1413. &lt;ul&gt;
  1414.  &lt;li&gt;&lt;a href=&quot;http://wssdevelopment.blogspot.com/2009/09/sharepoint-development-solution-end-to.html&quot; target=&quot;_blank&quot;&gt;SharePoint Development Solution End-To-End&lt;/a&gt; &lt;/li&gt;
  1415.  
  1416.  &lt;li&gt;&lt;a href=&quot;http://wssdevelopment.blogspot.com/2009/09/end-to-end-solution-feature-receiver.html&quot; target=&quot;_blank&quot;&gt;End-To-End Solution – Feature Receiver Part 1&lt;/a&gt; &lt;/li&gt;
  1417. &lt;/ul&gt;  </description><link>http://wssdevelopment.blogspot.com/2009/09/end-to-end-solution-custom-list.html</link><author>noreply@blogger.com (Chris)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-6410797433753553635</guid><pubDate>Wed, 23 Sep 2009 03:15:00 +0000</pubDate><atom:updated>2009-10-23T13:17:57.481-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Development Approaches</category><category domain="http://www.blogger.com/atom/ns#">End-To-End Solution</category><category domain="http://www.blogger.com/atom/ns#">Sharepoint Application Concepts</category><title>End-To-End Solution – Feature Receiver Part 1</title><description>&lt;p&gt;
  1418. As promised, this post will be focused on creating a feature receiver that will allow me to perform some actions when the feature is activated or deactivated on the site. I plan to go a bit slower now that I’m posting code so that I make sure I explain both the code and the decision process behind the code. As stated earlier, I welcome feedback, especially if I’m missing an easier or “best-practices” way of performing my task. Please be sure to check out my &lt;a href=&quot;http://wssdevelopment.blogspot.com/2009/09/sharepoint-development-solution-end-to.html&quot;&gt;first post&lt;/a&gt; in this series for more information on the scope of this project and the initial feature definition.&lt;/p&gt;
  1419. &lt;p&gt;
  1420. In the existing project, a new class file was created. This was accomplished by right clicking on the project node in solution explorer and choosing add new class. I want the code file to exist outside of the 12 folder since I do not want the code file to be included in my solution file. I named the class KBFeatureReceiver. &lt;/p&gt;
  1421. &lt;p&gt;
  1422. At this point, references to the SharePoint assemblies need to be added. If you are developing on a machine with SharePoint installed (highly recommended) you can simply right click on the project node and choose to add references. Browse the .Net tab for Windows SharePoint Services and add this as a new reference to the project. &lt;/p&gt;
  1423. &lt;p&gt;
  1424. Inside the newly created class file, you will need to add some &lt;em&gt;&lt;strong&gt;Imports&lt;/strong&gt; &lt;/em&gt;(C# Using) statements to remove the necessity of typing full namespaces.&lt;/p&gt;
  1425. &lt;div class=&quot;csharpcode&quot;&gt;
  1426. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   1:  &lt;/span&gt;&lt;span class=&quot;kwrd&quot;&gt;Imports&lt;/span&gt; Microsoft.SharePoint&lt;/pre&gt;
  1427.  
  1428. &lt;/div&gt;
  1429.  
  1430. &lt;style type=&quot;text/css&quot;&gt;
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436. .csharpcode, .csharpcode pre
  1437. {
  1438. font-size: small;
  1439. color: black;
  1440. font-family: consolas, &quot;Courier New&quot;, courier, monospace;
  1441. background-color: #ffffff;
  1442. /*white-space: pre;*/
  1443. }
  1444. .csharpcode pre { margin: 0em; }
  1445. .csharpcode .rem { color: #008000; }
  1446. .csharpcode .kwrd { color: #0000ff; }
  1447. .csharpcode .str { color: #006080; }
  1448. .csharpcode .op { color: #0000c0; }
  1449. .csharpcode .preproc { color: #cc6633; }
  1450. .csharpcode .asp { background-color: #ffff00; }
  1451. .csharpcode .html { color: #800000; }
  1452. .csharpcode .attr { color: #ff0000; }
  1453. .csharpcode .alt
  1454. {
  1455. background-color: #f4f4f4;
  1456. width: 100%;
  1457. margin: 0em;
  1458. }
  1459. .csharpcode .lnum { color: #606060; }&lt;/style&gt;
  1460.  
  1461. &lt;p&gt;
  1462. The class will need to inherit from the &lt;strong&gt;SPFeatureReciever&lt;/strong&gt; class located in the SharePoint assembly. There are four methods that you must override to implement a custom feature receiver: &lt;/p&gt;
  1463.  
  1464.  
  1465. &lt;ol&gt;
  1466. &lt;li&gt;FeatureActivated – occurs when the feature is activated. This is the place where I will want to create my custom list and special site column. &lt;/li&gt;
  1467.  
  1468.  
  1469. &lt;li&gt;FeatureDeactivating – occurs when the feature is deactivated. Here I will place code that will clean-up any customizations. &lt;/li&gt;
  1470.  
  1471.  
  1472. &lt;li&gt;FeatureInstalled – occurs when the feature is installed on the server. &lt;/li&gt;
  1473.  
  1474.  
  1475. &lt;li&gt;FeatureUninstalling – occurs when the feature is uninstalled from the server. &lt;/li&gt;
  1476.  
  1477. &lt;/ol&gt;
  1478.  
  1479.  
  1480. &lt;p&gt;
  1481. Thus far, this is the code I have:&lt;/p&gt;
  1482.  
  1483.  
  1484. &lt;div class=&quot;csharpcode&quot;&gt;
  1485.  
  1486. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   1:  &lt;/span&gt;&lt;span class=&quot;kwrd&quot;&gt;Imports&lt;/span&gt; Microsoft.SharePoint&lt;/pre&gt;
  1487.  
  1488.  
  1489. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   2:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1490.  
  1491.  
  1492. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   3:  &lt;/span&gt;&lt;span class=&quot;kwrd&quot;&gt;Public&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Class&lt;/span&gt; KBFeatureReceiver&lt;/pre&gt;
  1493.  
  1494.  
  1495. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   4:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;Inherits&lt;/span&gt; SPFeatureReceiver&lt;/pre&gt;
  1496.  
  1497.  
  1498. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   5:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1499.  
  1500.  
  1501. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   6:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;Public&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Overrides&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Sub&lt;/span&gt; FeatureActivated(&lt;span class=&quot;kwrd&quot;&gt;ByVal&lt;/span&gt; properties &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPFeatureReceiverProperties)&lt;/pre&gt;
  1502.  
  1503.  
  1504. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   7:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1505.  
  1506.  
  1507. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   8:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Sub&lt;/span&gt;&lt;/pre&gt;
  1508.  
  1509.  
  1510. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   9:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1511.  
  1512.  
  1513. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  10:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;Public&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Overrides&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Sub&lt;/span&gt; FeatureDeactivating(&lt;span class=&quot;kwrd&quot;&gt;ByVal&lt;/span&gt; properties &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPFeatureReceiverProperties)&lt;/pre&gt;
  1514.  
  1515.  
  1516. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  11:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1517.  
  1518.  
  1519. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  12:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Sub&lt;/span&gt;&lt;/pre&gt;
  1520.  
  1521.  
  1522. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  13:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1523.  
  1524.  
  1525. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  14:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;Public&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Overrides&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Sub&lt;/span&gt; FeatureInstalled(&lt;span class=&quot;kwrd&quot;&gt;ByVal&lt;/span&gt; properties &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPFeatureReceiverProperties)&lt;/pre&gt;
  1526.  
  1527.  
  1528. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  15:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1529.  
  1530.  
  1531. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  16:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Sub&lt;/span&gt;&lt;/pre&gt;
  1532.  
  1533.  
  1534. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  17:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1535.  
  1536.  
  1537. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  18:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;Public&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Overrides&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Sub&lt;/span&gt; FeatureUninstalling(&lt;span class=&quot;kwrd&quot;&gt;ByVal&lt;/span&gt; properties &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPFeatureReceiverProperties)&lt;/pre&gt;
  1538.  
  1539.  
  1540. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  19:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1541.  
  1542.  
  1543. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  20:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Sub&lt;/span&gt;&lt;/pre&gt;
  1544.  
  1545.  
  1546. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  21:  &lt;/span&gt;&lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; Class&lt;/pre&gt;
  1547.  
  1548. &lt;/div&gt;
  1549.  
  1550. &lt;style type=&quot;text/css&quot;&gt;
  1551.  
  1552.  
  1553.  
  1554.  
  1555. .csharpcode, .csharpcode pre
  1556. {
  1557. font-size: small;
  1558. color: black;
  1559. font-family: consolas, &quot;Courier New&quot;, courier, monospace;
  1560. background-color: #ffffff;
  1561. /*white-space: pre;*/
  1562. }
  1563. .csharpcode pre { margin: 0em; }
  1564. .csharpcode .rem { color: #008000; }
  1565. .csharpcode .kwrd { color: #0000ff; }
  1566. .csharpcode .str { color: #006080; }
  1567. .csharpcode .op { color: #0000c0; }
  1568. .csharpcode .preproc { color: #cc6633; }
  1569. .csharpcode .asp { background-color: #ffff00; }
  1570. .csharpcode .html { color: #800000; }
  1571. .csharpcode .attr { color: #ff0000; }
  1572. .csharpcode .alt
  1573. {
  1574. background-color: #f4f4f4;
  1575. width: 100%;
  1576. margin: 0em;
  1577. }
  1578. .csharpcode .lnum { color: #606060; }&lt;/style&gt;
  1579.  
  1580. &lt;p&gt;
  1581. Personally, I like to segment my code into smaller areas of responsibility, so I’m going to create several methods to perform additional tasks. In order to maintain a reference to the SPWeb object, I will make this a parameter of each method. Based on my requirements, I need a method to create a list, remove a list, create a site column and remove a site column. Remember, as you work with the SPWeb and SPSite objects, it is very important to make sure these objects are disposed of properly. &lt;/p&gt;
  1582.  
  1583.  
  1584. &lt;p&gt;
  1585. Notice that each of the overridden methods has a single parameter – properties. Using this parameter, you can gain a reference to the calling SPSite object via &lt;em&gt;properties.Feature.Parent. &lt;/em&gt;The call will return a generic object that should be cast into an SPSite object. From this point, the SharePoint OM is available to the code. The FeatureActivated method now looks like the following:&lt;/p&gt;
  1586.  
  1587.  
  1588. &lt;div class=&quot;csharpcode&quot;&gt;
  1589.  
  1590. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   1:  &lt;/span&gt;&lt;span class=&quot;kwrd&quot;&gt;Public&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Overrides&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Sub&lt;/span&gt; FeatureActivated(&lt;span class=&quot;kwrd&quot;&gt;ByVal&lt;/span&gt; properties &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPFeatureReceiverProperties)&lt;/pre&gt;
  1591.  
  1592.  
  1593. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   2:  &lt;/span&gt;    Using mSite &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPSite = &lt;span class=&quot;kwrd&quot;&gt;CType&lt;/span&gt;(properties.Feature.Parent, SPSite)&lt;/pre&gt;
  1594.  
  1595.  
  1596. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   3:  &lt;/span&gt;       Using mWeb &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPWeb = mSite.RootWeb&lt;/pre&gt;
  1597.  
  1598.  
  1599. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   4:  &lt;/span&gt;         &lt;span class=&quot;kwrd&quot;&gt;Dim&lt;/span&gt; list &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPList = CreateCategoryListInstance(web)&lt;/pre&gt;
  1600.  
  1601.  
  1602. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   5:  &lt;/span&gt;         CreateCategoryLookupSiteColumn(web, list)&lt;/pre&gt;
  1603.  
  1604.  
  1605. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   6:  &lt;/span&gt;       &lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; Using&lt;/pre&gt;
  1606.  
  1607.  
  1608. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   7:  &lt;/span&gt;   &lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; Using&lt;/pre&gt;
  1609.  
  1610.  
  1611. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   8:  &lt;/span&gt;&lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Sub&lt;/span&gt;&lt;/pre&gt;
  1612.  
  1613. &lt;/div&gt;
  1614.  
  1615. &lt;style type=&quot;text/css&quot;&gt;
  1616.  
  1617.  
  1618. .csharpcode, .csharpcode pre
  1619. {
  1620. font-size: small;
  1621. color: black;
  1622. font-family: consolas, &quot;Courier New&quot;, courier, monospace;
  1623. background-color: #ffffff;
  1624. /*white-space: pre;*/
  1625. }
  1626. .csharpcode pre { margin: 0em; }
  1627. .csharpcode .rem { color: #008000; }
  1628. .csharpcode .kwrd { color: #0000ff; }
  1629. .csharpcode .str { color: #006080; }
  1630. .csharpcode .op { color: #0000c0; }
  1631. .csharpcode .preproc { color: #cc6633; }
  1632. .csharpcode .asp { background-color: #ffff00; }
  1633. .csharpcode .html { color: #800000; }
  1634. .csharpcode .attr { color: #ff0000; }
  1635. .csharpcode .alt
  1636. {
  1637. background-color: #f4f4f4;
  1638. width: 100%;
  1639. margin: 0em;
  1640. }
  1641. .csharpcode .lnum { color: #606060; }&lt;/style&gt;
  1642.  
  1643. &lt;p&gt;
  1644. The method makes use of Using statements. This statement will help by automatically disposing of disposable objects. On line 4 a call is made to create a new category list instance and return the newly created list. The reference to the newly created list is then passed as a parameter to the method that creates the category lookup column.&lt;/p&gt;
  1645.  
  1646.  
  1647. &lt;p&gt;
  1648. Here the the CreateCategoryListInstace method:&lt;/p&gt;
  1649.  
  1650.  
  1651. &lt;div class=&quot;csharpcode&quot;&gt;
  1652.  
  1653. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   1:  &lt;/span&gt;&lt;span class=&quot;kwrd&quot;&gt;Protected&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Function&lt;/span&gt; CreateCategoryListInstance(&lt;span class=&quot;kwrd&quot;&gt;ByVal&lt;/span&gt; web &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPWeb) &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPList&lt;/pre&gt;
  1654.  
  1655.  
  1656. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   2:  &lt;/span&gt;    &lt;span class=&quot;rem&quot;&gt;&#39; Create a new list for the categories and store the GUID for use later.&lt;/span&gt;&lt;/pre&gt;
  1657.  
  1658.  
  1659. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   3:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;Dim&lt;/span&gt; list &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPList&lt;/pre&gt;
  1660.  
  1661.  
  1662. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   4:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;Dim&lt;/span&gt; listID &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; Guid&lt;/pre&gt;
  1663.  
  1664.  
  1665. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   5:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1666.  
  1667.  
  1668. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   6:  &lt;/span&gt;    listID = web.Lists.Add(&lt;span class=&quot;str&quot;&gt;&amp;quot;Category List&amp;quot;&lt;/span&gt;, &amp;amp; _&lt;/pre&gt;
  1669.  
  1670.  
  1671. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   7:  &lt;/span&gt;                           &lt;span class=&quot;str&quot;&gt;&amp;quot;List Description&amp;quot;&lt;/span&gt;, &lt;span class=&quot;str&quot;&gt;&amp;quot;Lists/HICUPCats&amp;quot;&lt;/span&gt;, &amp;amp; _&lt;/pre&gt;
  1672.  
  1673.  
  1674. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   8:  &lt;/span&gt;                           &lt;span class=&quot;str&quot;&gt;&amp;quot;386CF027-6AC7-460a-A7D6-4E503B2B6293&amp;quot;&lt;/span&gt;, &lt;span class=&quot;str&quot;&gt;&amp;quot; &amp;amp; _&lt;/pre&gt;
  1675.  
  1676.  
  1677. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   9:  &lt;/span&gt;                           10800, 100)&lt;/pre&gt;
  1678.  
  1679.  
  1680. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  10:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1681.  
  1682.  
  1683. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  11:  &lt;/span&gt;    &#39; Store the GUID of the new list for clean-up later if needed.&lt;/pre&gt;
  1684.  
  1685.  
  1686. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  12:  &lt;/span&gt;    If web.AllProperties.ContainsKey(&amp;quot;&lt;/span&gt;HICUPCategoryList&lt;span class=&quot;str&quot;&gt;&amp;quot;) = True Then&lt;/pre&gt;
  1687.  
  1688.  
  1689. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  13:  &lt;/span&gt;        web.AllProperties(&amp;quot;&lt;/span&gt;HICUPCategoryList&lt;span class=&quot;str&quot;&gt;&amp;quot;) = listID.ToString()&lt;/pre&gt;
  1690.  
  1691.  
  1692. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  14:  &lt;/span&gt;    Else&lt;/pre&gt;
  1693.  
  1694.  
  1695. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  15:  &lt;/span&gt;        web.AllProperties.Add(&amp;quot;&lt;/span&gt;HICUPCategoryList&amp;quot;, listID.ToString())&lt;/pre&gt;
  1696.  
  1697.  
  1698. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  16:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;If&lt;/span&gt;&lt;/pre&gt;
  1699.  
  1700.  
  1701. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  17:  &lt;/span&gt;    web.Update()&lt;/pre&gt;
  1702.  
  1703.  
  1704. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  18:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1705.  
  1706.  
  1707. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  19:  &lt;/span&gt;    &lt;span class=&quot;rem&quot;&gt;&#39; Return the list&lt;/span&gt;&lt;/pre&gt;
  1708.  
  1709.  
  1710. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  20:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;Return&lt;/span&gt; list&lt;/pre&gt;
  1711.  
  1712.  
  1713. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  21:  &lt;/span&gt;&lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Function&lt;/span&gt;&lt;/pre&gt;
  1714.  
  1715. &lt;/div&gt;
  1716.  
  1717. &lt;style type=&quot;text/css&quot;&gt;
  1718.  
  1719.  
  1720. .csharpcode, .csharpcode pre
  1721. {
  1722. font-size: small;
  1723. color: black;
  1724. font-family: consolas, &quot;Courier New&quot;, courier, monospace;
  1725. background-color: #ffffff;
  1726. /*white-space: pre;*/
  1727. }
  1728. .csharpcode pre { margin: 0em; }
  1729. .csharpcode .rem { color: #008000; }
  1730. .csharpcode .kwrd { color: #0000ff; }
  1731. .csharpcode .str { color: #006080; }
  1732. .csharpcode .op { color: #0000c0; }
  1733. .csharpcode .preproc { color: #cc6633; }
  1734. .csharpcode .asp { background-color: #ffff00; }
  1735. .csharpcode .html { color: #800000; }
  1736. .csharpcode .attr { color: #ff0000; }
  1737. .csharpcode .alt
  1738. {
  1739. background-color: #f4f4f4;
  1740. width: 100%;
  1741. margin: 0em;
  1742. }
  1743. .csharpcode .lnum { color: #606060; }&lt;/style&gt;
  1744.  
  1745. &lt;p&gt;
  1746. First, a new list is created (Lines 6-9). The creation of the list makes use of a custom list definition that is defined in the feature (more about this in a future article). For simplicity, you can create replace 10800 on line 9 with the TypeID for a custom list (I believe it is 100). &lt;/p&gt;
  1747.  
  1748.  
  1749. &lt;p&gt;
  1750. After the list is created, the GUID for the list is stored as a property of the SPWeb.AllProperties HashTable. This will allow code that will be developed later to quickly find this list without the need of iterating through the lists on the site or hoping the name of the list hasn’t been changed. Line 17 makes a call to SPWeb.Update() which will apply the settings up to this point.&lt;/p&gt;
  1751.  
  1752.  
  1753. &lt;p&gt;
  1754. Here is the final code that will be discussed for this post, &lt;strong&gt;CreateCategoryLookupSiteColumn&lt;/strong&gt;:&lt;/p&gt;
  1755.  
  1756.  
  1757. &lt;div class=&quot;csharpcode&quot;&gt;
  1758.  
  1759. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   1:  &lt;/span&gt;&lt;span class=&quot;kwrd&quot;&gt;Protected&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Function&lt;/span&gt; CreateCategoryLookupSiteColumn(&lt;span class=&quot;kwrd&quot;&gt;ByVal&lt;/span&gt; web &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPWeb, &amp;amp; _&lt;/pre&gt;
  1760.  
  1761.  
  1762. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   2:  &lt;/span&gt;                                                  &lt;span class=&quot;kwrd&quot;&gt;ByVal&lt;/span&gt; list &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; SPList) &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Boolean&lt;/span&gt;&lt;/pre&gt;
  1763.  
  1764.  
  1765. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   3:  &lt;/span&gt;   &lt;span class=&quot;kwrd&quot;&gt;Try&lt;/span&gt;&lt;/pre&gt;
  1766.  
  1767.  
  1768. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   4:  &lt;/span&gt;        &lt;span class=&quot;rem&quot;&gt;&#39; Define the format for this lookup field&lt;/span&gt;&lt;/pre&gt;
  1769.  
  1770.  
  1771. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   5:  &lt;/span&gt;        &lt;span class=&quot;kwrd&quot;&gt;Dim&lt;/span&gt; fieldXMLFormat &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;String&lt;/span&gt;&lt;/pre&gt;
  1772.  
  1773.  
  1774. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   6:  &lt;/span&gt;        fieldXMLFormat = &lt;span class=&quot;str&quot;&gt;&amp;quot;&amp;lt;Field ID=&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;{{3324B767-6CB6-4789-A0ED-60FB39BAC648}}&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt; &amp;amp; _&lt;/pre&gt;
  1775.  
  1776.  
  1777. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   7:  &lt;/span&gt;                         &lt;span class=&quot;str&quot;&gt;&amp;quot; Name=&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;SWBTS_KBCategory&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt; &amp;amp; _&lt;/pre&gt;
  1778.  
  1779.  
  1780. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;   8:  &lt;/span&gt;                         &lt;span class=&quot;str&quot;&gt;&amp;quot; StaticName=&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;SWBTS_KBCategory&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt; &amp;amp; _&lt;/pre&gt;
  1781.  
  1782.  
  1783. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;   9:  &lt;/span&gt;                         &lt;span class=&quot;str&quot;&gt;&amp;quot; DisplayName=&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;Category&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot; Type=&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;Lookup&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot; List=&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;{0}&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt; &amp;amp; _&lt;/pre&gt;
  1784.  
  1785.  
  1786. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  10:  &lt;/span&gt;                         &lt;span class=&quot;str&quot;&gt;&amp;quot; ShowField=&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;Title&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot; LCID=&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;1033&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt; &amp;amp; _ &lt;/pre&gt;
  1787.  
  1788.  
  1789. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  11:  &lt;/span&gt;                         &lt;span class=&quot;str&quot;&gt;&amp;quot; Group=&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;HICUP Knowledge Base Columns&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt; &amp;amp; _&lt;/pre&gt;
  1790.  
  1791.  
  1792. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  12:  &lt;/span&gt;                         &lt;span class=&quot;str&quot;&gt;&amp;quot; UnlimitedLengthInDocumentLibrary=&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&amp;quot; /&amp;gt;&amp;quot;&lt;/span&gt;&lt;/pre&gt;
  1793.  
  1794.  
  1795. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  13:  &lt;/span&gt;                         &lt;/pre&gt;
  1796.  
  1797.  
  1798. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  14:  &lt;/span&gt;        &lt;span class=&quot;rem&quot;&gt;&#39; Using the format and apply the category list GUID to the string&lt;/span&gt;&lt;/pre&gt;
  1799.  
  1800.  
  1801. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  15:  &lt;/span&gt;        &lt;span class=&quot;kwrd&quot;&gt;Dim&lt;/span&gt; fieldXML &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;String&lt;/span&gt; = &lt;span class=&quot;kwrd&quot;&gt;String&lt;/span&gt;.Format(fieldXMLFormat, list.ID.ToString())&lt;/pre&gt;
  1802.  
  1803.  
  1804. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  16:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;
  1805.  
  1806.  
  1807. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  17:  &lt;/span&gt;        &lt;span class=&quot;rem&quot;&gt;&#39; Add the field to the site columns collection&lt;/span&gt;&lt;/pre&gt;
  1808.  
  1809.  
  1810. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  18:  &lt;/span&gt;        web.Fields.AddFieldAsXml(fieldXML)&lt;/pre&gt;
  1811.  
  1812.  
  1813. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  19:  &lt;/span&gt;        web.Update()&lt;/pre&gt;
  1814.  
  1815.  
  1816. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  20:  &lt;/span&gt;        &lt;span class=&quot;kwrd&quot;&gt;Return&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;True&lt;/span&gt;&lt;/pre&gt;
  1817.  
  1818.  
  1819. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  21:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;Catch&lt;/span&gt; ex &lt;span class=&quot;kwrd&quot;&gt;As&lt;/span&gt; Exception&lt;/pre&gt;
  1820.  
  1821.  
  1822. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  22:  &lt;/span&gt;        &lt;span class=&quot;kwrd&quot;&gt;Return&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;False&lt;/span&gt;&lt;/pre&gt;
  1823.  
  1824.  
  1825. &lt;pre class=&quot;alt&quot;&gt;&lt;span class=&quot;lnum&quot;&gt;  23:  &lt;/span&gt;    &lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Try&lt;/span&gt;&lt;/pre&gt;
  1826.  
  1827.  
  1828. &lt;pre&gt;&lt;span class=&quot;lnum&quot;&gt;  24:  &lt;/span&gt;&lt;span class=&quot;kwrd&quot;&gt;End&lt;/span&gt; &lt;span class=&quot;kwrd&quot;&gt;Function&lt;/span&gt;&lt;/pre&gt;
  1829.  
  1830. &lt;/div&gt;
  1831.  
  1832. &lt;style type=&quot;text/css&quot;&gt;
  1833.  
  1834.  
  1835. .csharpcode, .csharpcode pre
  1836. {
  1837. font-size: small;
  1838. color: black;
  1839. font-family: consolas, &quot;Courier New&quot;, courier, monospace;
  1840. background-color: #ffffff;
  1841. /*white-space: pre;*/
  1842. }
  1843. .csharpcode pre { margin: 0em; }
  1844. .csharpcode .rem { color: #008000; }
  1845. .csharpcode .kwrd { color: #0000ff; }
  1846. .csharpcode .str { color: #006080; }
  1847. .csharpcode .op { color: #0000c0; }
  1848. .csharpcode .preproc { color: #cc6633; }
  1849. .csharpcode .asp { background-color: #ffff00; }
  1850. .csharpcode .html { color: #800000; }
  1851. .csharpcode .attr { color: #ff0000; }
  1852. .csharpcode .alt
  1853. {
  1854. background-color: #f4f4f4;
  1855. width: 100%;
  1856. margin: 0em;
  1857. }
  1858. .csharpcode .lnum { color: #606060; }&lt;/style&gt;
  1859.  
  1860. &lt;p&gt;
  1861. Lines 6-12 are used to create the XML that will be used to define the lookup column. This information follows the standard field definition schema that is used in feature definitions. Line 15 adds the GUID of the Category List to the XML. Line 18 adds the field to the current SPWeb and the all important SPWeb.Update() method is called in line 19 to apply these changes.&lt;/p&gt;
  1862.  
  1863.  
  1864. &lt;p&gt;
  1865. The original idea was to use a feature to create this field definition, but experimentation never resulted in a successful lookup field. This was the best way in the time allotted to accomplish the goal.&lt;/p&gt;
  1866.  
  1867.  
  1868. &lt;p&gt;
  1869. In my next post I plan on defining the deactivating methods, updating my feature with a custom list definition and adding the lookup site column to the KB Article Content Type defined in the previous post. &lt;/p&gt;
  1870.  
  1871.  
  1872. &lt;p&gt;
  1873. Again, please provide any feedback or comments.&lt;/p&gt;</description><link>http://wssdevelopment.blogspot.com/2009/09/end-to-end-solution-feature-receiver.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-1477478655160075201</guid><pubDate>Tue, 22 Sep 2009 03:48:00 +0000</pubDate><atom:updated>2009-09-21T22:48:00.826-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Preview</category><title>SharePoint 2010 Preview</title><description>&lt;p&gt;Several weeks ago, Microsoft released some information through videos for the up and coming release of SharePoint 2010. If you haven’t already viewed &lt;a href=&quot;http://sharepoint.microsoft.com/2010/Sneak_Peek/Pages/Developer-Video.aspx&quot; target=&quot;_blank&quot;&gt;these videos&lt;/a&gt;, what are you waiting for?&lt;/p&gt;  &lt;p&gt;In short, one of the features that has been announced for developers is a first class development environment for SharePoint. One can only hope we either have better remote debugging support or the ability to install a “SharePoint Developer Version” on our Windows 7 desktops, but the ability to visually design web parts is a huge plus in my book. (I know, I know, some of you hard-core server control developers are disappointed).&lt;/p&gt;  &lt;p&gt;Much more information should become available throughout the SharePoint conference – and while we’re on that topic, if you want to buy me a ticket to the conference I would gladly accept the opportunity to go!&lt;/p&gt;  </description><link>http://wssdevelopment.blogspot.com/2009/09/sharepoint-2010-preview.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-3288089340491237106</guid><pubDate>Mon, 21 Sep 2009 15:57:00 +0000</pubDate><atom:updated>2009-10-23T13:17:57.482-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Development Approaches</category><category domain="http://www.blogger.com/atom/ns#">End-To-End Solution</category><title>SharePoint Development Solution End-To-End</title><description>&lt;p&gt;Over the next few weeks I plan on putting together an end-to-end solution that I&#39;ve been working on for one of our internal clients. The goal is to demonstrate some of the things that I&#39;ve learned (and continue to learn) while building a solution for SharePoint. I welcome feedback and tips as I&#39;m sure there may be better ways to accomplish some of my goals.&lt;/p&gt;  &lt;p&gt;The project is to build a document management system for the authoring and distribution of Information Technology Knowledge Base Articles using SharePoint and Microsoft Word. These articles will be linked to a custom in-house ticket management system. We must also move over 400 existing articles into the SharePoint site and attach the appropriate metadata.&lt;/p&gt;  &lt;p&gt;The current system works well for simple tasks, but when assembling complex documents with screenshots, tables and reports, the current system can be limited and cumbsome. For documents that will contain screenshots or images, the author must prepare all of their screenshots or images ahead of time, upload them to the system and then create the links to those images in the current system. While this process works, the workflow is very cumbersome and takes more time than it should.&lt;/p&gt;  &lt;p&gt;Here are the primary goals of this project:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Leverage SharePoint Document Authoring, Workflow, Search and Metadata for the creation and management of Knowledge Base Articles&lt;/li&gt;    &lt;li&gt;Define and collect required metadata for KB documents to make key information available for previewing.&lt;/li&gt;    &lt;li&gt;Standardize document creation process by using a predefined template.&lt;/li&gt;    &lt;li&gt;Maintain existing documentation and update links from the work orders to the knowledge base articles.&lt;/li&gt;    &lt;li&gt;Synchronize categories between existing system and SharePoint and keep them up-to-date.&lt;/li&gt;    &lt;li&gt;Leverage SharePoint Search Web Service to find and link KB documents in SharePoint to work orders.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;To create the solution, I will be using &lt;a href=&quot;http://wspbuilder.codeplex.com/&quot;&gt;WSPBuilder&lt;/a&gt; to create and maintain my feature. This Codeplex project does much of the heavy lifting of preparing and deploying the solution package. I have decided to deploy a feature as the current internal work order system may eventually be used by multiple internal clients to manage their work orders. By deploying the SharePoint side of the project as a SharePoint Solution (wsp), any existing or new sites in SharePoint can be made a container for Knowledge Base Articles. I had considered just creating a site definition and adding it to SharePoint, but I would rather have the option of either creating a new site or extending an existing site to contain these items. If I had decided to do a site definition, I would only be able to create new sites and would be unable to extend the current site collection.&lt;/p&gt;  &lt;p&gt;To start this series, I created the layout of my feature in Visual Studio 2008. In visual studio, I created a new WSPBuilder Project. This project template is installed with the WSPBuilder project from Codeplex. The new project template will create a new project with a signing key, the 12 hive root folder and a solutionid.txt file. On the 12 hive, I created the TEMPLATES and FEATURES folders. These are the folders in the 12 hive that contain all of the configuration information for SharePoint. Inside the features folder, I added my custom folder (KBRepository) that will contain the XML definition files for my custom feature.&lt;/p&gt;  &lt;p&gt;When done, my folder stucture appears as follows:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Solution&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;VS Project&lt;/li&gt;      &lt;ul&gt;       &lt;li&gt;12&lt;/li&gt;        &lt;ul&gt;         &lt;li&gt;TEMPLATE&lt;/li&gt;          &lt;ul&gt;           &lt;li&gt;FEATURES&lt;/li&gt;            &lt;ul&gt;             &lt;li&gt;KBRepository&lt;/li&gt;           &lt;/ul&gt;         &lt;/ul&gt;       &lt;/ul&gt;     &lt;/ul&gt;      &lt;li&gt;KBRepository.snk&lt;/li&gt;      &lt;li&gt;solutionid.txt&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p&gt;Inside the KBRepository folder, I added the Feature.xml file that will contain the definition of my new feature. To make authoring the XML file a little easier, locate Schemas in your Properties window and click the ellipses. Click Add and then navigate to your 12 hive/TEMPLATE/XML and click on wss.xsd. Visual Studio will now provide intellisense to help define the feature. Here is the feature definition:   &lt;br /&gt;&lt;/p&gt;  &lt;div class=&quot;CodeBox&quot;&gt;   &lt;br /&gt;&amp;lt;Feature xmlns=&amp;quot;http://schemas.microsoft.com/sharepoint/&amp;quot;    &lt;br /&gt;Scope=&amp;quot;Site&amp;quot;    &lt;br /&gt;Creator=&amp;quot;Software Development&amp;quot;    &lt;br /&gt;Id=&amp;quot;386CF027-6AC7-460a-A7D6-4E503B2B6293&amp;quot;    &lt;br /&gt;Description=&amp;quot;Sets up this site collection to author and manage KB Articles&amp;quot;    &lt;br /&gt;Title=&amp;quot;KB Repository&amp;quot;    &lt;br /&gt;Version=&amp;quot;1.0.0.0&amp;quot;&amp;gt;    &lt;br /&gt;&amp;lt;ElementManifests&amp;gt;    &lt;br /&gt;&amp;lt;ElementManifest Location=&amp;quot;KBItemFields.xml&amp;quot;/&amp;gt;    &lt;br /&gt;&amp;lt;ElementManifest Location=&amp;quot;KBContentTypes.xml&amp;quot;/&amp;gt;    &lt;br /&gt;&amp;lt;/ElementManifests&amp;gt;    &lt;br /&gt;&amp;lt;/Feature&amp;gt;    &lt;br /&gt;&lt;/div&gt;  &lt;br /&gt;  &lt;p&gt;Notice I have two element manifest files. These two files will be used to create site columns and content types that will be used by other parts of my solution. The KBItemFields.xml and KBContentTypes.xml files were also created in the root of the KBRepository folder. &lt;/p&gt;  &lt;p&gt;I opened KBItemFields.xml and added the following XML. (Remember, if you click on Schemas and associate the wss.xsd you&#39;ll get intellisense support).   &lt;br /&gt;&lt;/p&gt;  &lt;br /&gt;  &lt;div class=&quot;CodeBox&quot;&gt;   &lt;br /&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; ?&amp;gt;    &lt;br /&gt;&amp;lt;Elements xmlns=&amp;quot;http://schemas.microsoft.com/sharepoint/&amp;quot;&amp;gt;    &lt;br /&gt;&amp;lt;Field ID=&amp;quot;{B180626E-4DD1-44ca-9157-00639A0945DA}&amp;quot;    &lt;br /&gt;Name=&amp;quot;WSSAPPDEV_CategoryID&amp;quot;    &lt;br /&gt;StaticName=&amp;quot;WSSAPPDEV_CategoryID&amp;quot;    &lt;br /&gt;DisplayName=&amp;quot;Reference Category ID&amp;quot;    &lt;br /&gt;Type=&amp;quot;Number&amp;quot;    &lt;br /&gt;Min=&amp;quot;0&amp;quot;    &lt;br /&gt;Decimals=&amp;quot;0&amp;quot;    &lt;br /&gt;Commas=&amp;quot;false&amp;quot;    &lt;br /&gt;LCID=&amp;quot;1033&amp;quot;    &lt;br /&gt;Indexed=&amp;quot;false&amp;quot;    &lt;br /&gt;Group=&amp;quot;Category Columns&amp;quot;/&amp;gt;    &lt;br /&gt;&amp;lt;Field ID=&amp;quot;{58AD2A67-B08C-4803-956F-82F425201D6B}&amp;quot;    &lt;br /&gt;Name=&amp;quot;WSSAPPDEV_CatDescription&amp;quot;    &lt;br /&gt;StaticName=&amp;quot;WSSAPPDEV_CatDescription&amp;quot;    &lt;br /&gt;DisplayName=&amp;quot;Category Description&amp;quot;    &lt;br /&gt;Type=&amp;quot;Note&amp;quot;    &lt;br /&gt;NumLines=&amp;quot;5&amp;quot;    &lt;br /&gt;LCID=&amp;quot;1033&amp;quot;    &lt;br /&gt;RichText=&amp;quot;false&amp;quot;    &lt;br /&gt;Indexed=&amp;quot;false&amp;quot;    &lt;br /&gt;Group=&amp;quot;Category Columns&amp;quot;/&amp;gt;    &lt;br /&gt;&amp;lt;Field ID=&amp;quot;{793E8479-066B-41be-B494-0D4207B8BD0A}&amp;quot;    &lt;br /&gt;Name=&amp;quot;WSSAPPDEV_Active&amp;quot;    &lt;br /&gt;StaticName=&amp;quot;WSSAPPDEV_Active&amp;quot;    &lt;br /&gt;DisplayName=&amp;quot;Active Category&amp;quot;    &lt;br /&gt;Type=&amp;quot;Boolean&amp;quot;    &lt;br /&gt;LCID=&amp;quot;1033&amp;quot;    &lt;br /&gt;Indexed=&amp;quot;false&amp;quot;    &lt;br /&gt;Group=&amp;quot;HICUP Category Columns&amp;quot;/&amp;gt;    &lt;br /&gt;&amp;lt;Field ID=&amp;quot;{A4F4E2EA-80CB-4a16-ACC5-060E922EB06C}&amp;quot;    &lt;br /&gt;Name=&amp;quot;WSSAPPDEV_CustomerCat&amp;quot;    &lt;br /&gt;StaticName=&amp;quot;WSSAPPDEV_CustomerCat&amp;quot;    &lt;br /&gt;DisplayName=&amp;quot;Customer Category&amp;quot;    &lt;br /&gt;Type=&amp;quot;Boolean&amp;quot;    &lt;br /&gt;LCID=&amp;quot;1033&amp;quot;    &lt;br /&gt;Indexed=&amp;quot;false&amp;quot;    &lt;br /&gt;Group=&amp;quot;Category Columns&amp;quot;    &lt;br /&gt;/&amp;gt;    &lt;br /&gt;&amp;lt;Field ID=&amp;quot;{DFE30371-501F-4dd3-B11A-54C762AFEE09}&amp;quot;    &lt;br /&gt;Name=&amp;quot;WSSAPPDEV_Keywords&amp;quot;    &lt;br /&gt;StaticName=&amp;quot;WSSAPPDEV_Keywords&amp;quot;    &lt;br /&gt;DisplayName=&amp;quot;Keyword List&amp;quot;    &lt;br /&gt;Type=&amp;quot;Text&amp;quot;    &lt;br /&gt;MaxLength=&amp;quot;1000&amp;quot;    &lt;br /&gt;Indexed=&amp;quot;true&amp;quot;    &lt;br /&gt;LCID=&amp;quot;1033&amp;quot;    &lt;br /&gt;Group=&amp;quot;Knowledge Base Columns&amp;quot;/&amp;gt;    &lt;br /&gt;&amp;lt;Field ID=&amp;quot;{C486FB10-F649-476a-8606-495F900DD383}&amp;quot;    &lt;br /&gt;Name=&amp;quot;WSSAPPDEV_ReviewDate&amp;quot;    &lt;br /&gt;StaticName=&amp;quot;WSSAPPDEV_ReviewDate&amp;quot;    &lt;br /&gt;DisplayName=&amp;quot;Review Needed Date&amp;quot;    &lt;br /&gt;Type=&amp;quot;DateTime&amp;quot;    &lt;br /&gt;Format=&amp;quot;DateOnly&amp;quot;    &lt;br /&gt;Indexed=&amp;quot;false&amp;quot;    &lt;br /&gt;LCID=&amp;quot;1033&amp;quot;    &lt;br /&gt;Group=&amp;quot;Knowledge Base Columns&amp;quot;/&amp;gt;    &lt;br /&gt;&amp;lt;/Elements&amp;gt;    &lt;br /&gt;&lt;/div&gt;  &lt;br /&gt;  &lt;p&gt;Now in the KBContentTypes.xml, I provided the following XML:   &lt;br /&gt;&lt;/p&gt;  &lt;div class=&quot;CodeBox&quot;&gt;   &lt;br /&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; ?&amp;gt;    &lt;br /&gt;&amp;lt;Elements xmlns=&amp;quot;http://schemas.microsoft.com/sharepoint/&amp;quot;&amp;gt;    &lt;br /&gt;&amp;lt;!-- CATEGORY --&amp;gt;    &lt;br /&gt;&amp;lt;ContentType ID=&amp;quot;0x0100aa4bb14f2f8746db941ef9b5e52b4cDF&amp;quot; Name=&amp;quot;KB Category&amp;quot; Description=&amp;quot;A category contained in the KB system&amp;quot;    &lt;br /&gt;Group=&amp;quot;KB&amp;quot; Hidden=&amp;quot;FALSE&amp;quot; Version=&amp;quot;1&amp;quot;&amp;gt;    &lt;br /&gt;&amp;lt;FieldRefs&amp;gt;    &lt;br /&gt;&amp;lt;FieldRef ID=&amp;quot;{B180626E-4DD1-44ca-9157-00639A0945DA}&amp;quot; Name=&amp;quot;WSSAPPDEV_CategoryID&amp;quot; ShowInDisplayForm=&amp;quot;TRUE&amp;quot; ShowInEditForm=&amp;quot;FALSE&amp;quot; Required=&amp;quot;TRUE&amp;quot; ShowInNewForm=&amp;quot;FALSE&amp;quot; /&amp;gt;    &lt;br /&gt;&amp;lt;FieldRef ID=&amp;quot;{58AD2A67-B08C-4803-956F-82F425201D6B}&amp;quot; Name=&amp;quot;WSSAPPDEV_CatDescription&amp;quot; ShowInDisplayForm=&amp;quot;TRUE&amp;quot; ShowInEditForm=&amp;quot;FALSE&amp;quot; Required=&amp;quot;FALSE&amp;quot; ShowInNewForm=&amp;quot;FALSE&amp;quot;/&amp;gt;    &lt;br /&gt;&amp;lt;FieldRef ID=&amp;quot;{793E8479-066B-41be-B494-0D4207B8BD0A}&amp;quot; Name=&amp;quot;WSSAPPDEV_Active&amp;quot; ShowInDisplayForm=&amp;quot;TRUE&amp;quot; ShowInEditForm=&amp;quot;FALSE&amp;quot; Required=&amp;quot;TRUE&amp;quot; /&amp;gt;    &lt;br /&gt;&amp;lt;FieldRef ID=&amp;quot;{A4F4E2EA-80CB-4a16-ACC5-060E922EB06C}&amp;quot; Name=&amp;quot;WSSAPPDEV_CustomerCat&amp;quot; ShowInDisplayForm=&amp;quot;TRUE&amp;quot; ShowInEditForm=&amp;quot;FALSE&amp;quot; Required=&amp;quot;TRUE&amp;quot;/&amp;gt;    &lt;br /&gt;&amp;lt;/FieldRefs&amp;gt;    &lt;br /&gt;&amp;lt;/ContentType&amp;gt;    &lt;br /&gt;&amp;lt;!-- KNOWLEDGE BASE --&amp;gt;    &lt;br /&gt;&amp;lt;ContentType ID=&amp;quot;0x010100aa4bb14f2f8746db941ef9b5e52b4cF0&amp;quot; Name=&amp;quot;IT Knowledge Base Article&amp;quot; Description=&amp;quot;Knowledge Base Information Article for KB&amp;quot;    &lt;br /&gt;Group=&amp;quot;KB&amp;quot; Hidden=&amp;quot;FALSE&amp;quot; Version=&amp;quot;1&amp;quot;&amp;gt;    &lt;br /&gt;&amp;lt;FieldRefs&amp;gt;    &lt;br /&gt;&amp;lt;FieldRef ID=&amp;quot;{DFE30371-501F-4dd3-B11A-54C762AFEE09}&amp;quot; Name=&amp;quot;WSSAPPDEV_Keywords&amp;quot; Required=&amp;quot;TRUE&amp;quot; /&amp;gt;    &lt;br /&gt;&amp;lt;FieldRef ID=&amp;quot;{C486FB10-F649-476a-8606-495F900DD383}&amp;quot; Name=&amp;quot;WSSAPPDEV_ReviewDate&amp;quot; Required=&amp;quot;TRUE&amp;quot; /&amp;gt;    &lt;br /&gt;&amp;lt;/FieldRefs&amp;gt;    &lt;br /&gt;&amp;lt;/ContentType&amp;gt;    &lt;br /&gt;&amp;lt;/Elements&amp;gt;&lt;/div&gt;  &lt;br /&gt;  &lt;p&gt;I&#39;m ready to deploy and test my budding solution. If you right click on the project node in your solution explorer, there is a new WSPBuilder Menu. From this menu, select Deploy and it will deploy to the SharePoint instance on the local machine. &lt;/p&gt;  &lt;p&gt;Upon successful deployment, navigate to site and activate the feature by going to Site Actions &amp;gt; Site Collection Features and choosing to activate the feature. The feature has been scoped as &lt;em&gt;Site&lt;/em&gt;, so this places it into the Site Collection Features. After activation, the new site columns and content types have been added to the root level of the site.&lt;/p&gt;  &lt;p&gt;Congratulations, you have successfully built and deployed your first feature to SharePoint. In my next installment, I am going to create a feature receiver and programatically create some new lists to contain the categories and KB documents. I will also create a site column that performs a lookup into my category list and add the new site column to the IT Knowledge Base Article content type.&lt;/p&gt;  </description><link>http://wssdevelopment.blogspot.com/2009/09/sharepoint-development-solution-end-to.html</link><author>noreply@blogger.com (Chris)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-5091683421575546235</guid><pubDate>Tue, 15 Sep 2009 15:33:00 +0000</pubDate><atom:updated>2009-09-15T11:02:25.349-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Business Data Catalog</category><title>BDC Application Definition Designer ShowInPicker Quirks</title><description>&lt;style type=&quot;text/css&quot;&gt;
  1874. .FormatFix
  1875. {
  1876. margin: 0px;
  1877. }
  1878. &lt;/style&gt;
  1879. &lt;p&gt;Today I was doing some work using the BDC Application Definition Designer for SharePoint 2007 and discovered some very odd behavior. My current project has me defining a business data catalog that points to our help desk work order system to gather categories for a list of knowledge base articles. I completed the design of my BDC application and deployed it into SharePoint, created a new column in my document library to pick the desired entity only to get the message &lt;span style=&quot;color: rgb(204, 0, 0);&quot;&gt;&quot;There are no Business Data Types loaded in the Catalog&quot;&lt;/span&gt;. Oddly, the data type was there prior to changing a single property on one of my type descriptors: ShowInPicker.&lt;/p&gt;
  1880.  
  1881. &lt;p&gt;I had set this value on the name of the category since the default item displayed in the picker is the identifier of the entity. It is very difficult for users to pick a category when all that is displayed is a series of numbers, thus driving me to set the value of ShowInPicker to true for my category name field. So, I examined the XML created and discovered:&lt;/p&gt;
  1882. &lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1883. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;TypeDescriptor&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1884. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;TypeName&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;System.String&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1885. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;Name&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;CategoryName&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1886. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;DefaultDisplayName&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;Category
  1887. Name&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1888. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;LocalizedDisplayNames&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1889. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;LocalizedDisplayName&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1890. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;LCID&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;1033&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;Category
  1891. Name&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;lt;/&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;LocalizedDisplayName&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1892. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;/&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;LocalizedDisplayNames&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1893. &lt;p&gt;&amp;lt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;Properties&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1894. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;Property&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1895. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;Name&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;ShowInPicker&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1896. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;Type&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;System.Boolean&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;true&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;lt;/&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;Property&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1897. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;/&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;Properties&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1898. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;/&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;TypeDescriptor&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1899. &lt;/font&gt;&lt;p&gt;I remove the line &lt;property name=&quot;ShowInPicker&quot;&gt; and imported the definition once more. Now my business data type showed up again. After searching, I discovered an &lt;a href=&quot;http://paulgalvin.spaces.live.com/Blog/cns%211CC1EDB3DAA9B8AA%21761.entry&quot;&gt;article&lt;/a&gt; by Paul Galvin describing how to set the ShowInPicker value. In his article, I discovered another property that I wasn&#39;t including in my definition: DisplayByDefault.&lt;/p&gt;
  1900. &lt;p&gt;I went back to the Application Definition Designer and added this under the properties node for my category name and exported the LOB definition. Again, I imported this into SharePoint and received the same error message - &lt;span style=&quot;color: rgb(204, 0, 0);&quot;&gt;&quot;There are no Business Data Types loaded in the Catalog&quot;&lt;/span&gt;. Upon exploration of the XML, I discovered the following:&lt;/p&gt;
  1901. &lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1902. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;TypeDescriptor&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1903. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;TypeName&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;System.String&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1904. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;Name&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;CategoryName&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1905. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;DefaultDisplayName&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;Category
  1906. Name&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1907. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;LocalizedDisplayNames&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1908. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;LocalizedDisplayName&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1909. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;LCID&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;1033&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;Category
  1910. Name&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;lt;/&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;LocalizedDisplayName&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1911. &lt;p&gt;&amp;lt;/&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;LocalizedDisplayNames&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1912. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;Properties&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1913. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;Property&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1914. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;Name&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;ShowInPicker&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1915. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;Type&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;System.Boolean&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;true&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;lt;/&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;Property&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1916. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;Property&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1917. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;Name&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;DisplayByDefault&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;
  1918. &lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#ff0000&quot;&gt;Type&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;=&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;System.Boolean&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;&amp;quot;&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/font&gt;&lt;font SIZE=&quot;2&quot;&gt;true&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;lt;/&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;Property&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1919. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;/&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;Properties&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/p&gt;
  1920. &lt;p class=&quot;FormatFix&quot;&gt;&amp;lt;/&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#a31515&quot;&gt;TypeDescriptor&lt;/font&gt;&lt;font SIZE=&quot;2&quot; COLOR=&quot;#0000ff&quot;&gt;&amp;gt;&lt;/font&gt;&lt;/p&gt;
  1921. &lt;p&gt;The new property had been added, but the order was different from Paul&amp;#39;s, so
  1922. I changed the order and imported the definition again. This time, everything
  1923. worked as properly and I could view the category name in the picker. &lt;/p&gt;
  1924. &lt;p&gt;&lt;strong&gt;Moral of the story:&lt;/strong&gt; Use the Application Definition Designer
  1925. to get you started in defining your BDC application definition and then go back
  1926. to make tweaks like this by hand.&lt;/p&gt;</description><link>http://wssdevelopment.blogspot.com/2009/09/bdc-application-definition-designer.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-4994160472421968609</guid><pubDate>Tue, 03 Feb 2009 14:39:00 +0000</pubDate><atom:updated>2009-02-03T08:40:33.332-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">End User Training</category><title>Online Study Group for Seamless Teamwork</title><description>Only 2 Days to Go Until the Seamless Teamwork Online Study Group.
  1927.  
  1928. From the shores of Sydney Australia (well, the City actually, not the beach!), I’m already thinking ahead a couple of days for when the Online Study Group for Seamless Teamwork will kick off. It is appropriate that I think this way, because I’m in Sydney today (and was in Melbourne Australia yesterday) to deliver 4 face-to-face editions of the Seamless Teamwork seminar for corporates.
  1929.  
  1930. Read More on &lt;a href=&quot;http://www.endusersharepoint.com/?p=1279&quot;&gt;EndUserSharePoint.com&lt;/a&gt;.</description><link>http://wssdevelopment.blogspot.com/2009/02/online-study-group-for-seamless.html</link><author>noreply@blogger.com (Chris)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-6621856045163843324</guid><pubDate>Mon, 15 Sep 2008 12:14:00 +0000</pubDate><atom:updated>2008-09-15T07:23:26.205-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Free</category><category domain="http://www.blogger.com/atom/ns#">Other Blogs</category><category domain="http://www.blogger.com/atom/ns#">Tips and Tricks</category><title>Free Online Seminar on SharePoint Dashboards</title><description>Mark Miller at &lt;a href=&quot;http://www.endusersharepoint.com/&quot; target=&quot;_blank&quot;&gt;EndUserSharePoint.com&lt;/a&gt; is hosting a free 1 hour presentation on SharePoint dashboards. This presentation is targeted towards end users, but I would recommend that developers take some time to check it out. It is simply amazing what the end-user is empowered to do in SharePoint, and it may help you with ideas for your projects. The presentation is scheduled for 1pm EST, Tuesday (that&#39;s tomorrow).
  1931.  
  1932. I recently attended one of Mark&#39;s presentations, and you will not be disappointed. He is an excellent communicator and does a great job of educating you in SharePoint. Visit &lt;a href=&quot;http://www.endusersharepoint.com/?p=785&quot; target=&quot;_blank&quot;&gt;http://www.endusersharepoint.com/?p=785&lt;/a&gt; for more details.</description><link>http://wssdevelopment.blogspot.com/2008/09/free-online-seminar-on-sharepoint.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-4882422054783854533</guid><pubDate>Wed, 18 Jun 2008 14:30:00 +0000</pubDate><atom:updated>2008-06-18T09:37:27.873-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Other Blogs</category><category domain="http://www.blogger.com/atom/ns#">Search</category><title>Guest Posts on EndUserSharePoint.com</title><description>I have teamed up with a great group of guest bloggers on Mark Miller&#39;s site, &lt;a href=&quot;http://www.endusersharepoint.com/&quot;&gt;EndUserSharePoint.com&lt;/a&gt;. The site is dedicated to assisting end users with the every-day use of SharePoint.
  1933.  
  1934. I am writing a series on how to create a team site search center.  Here are links to my two articles already posted on the site:
  1935. &lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://www.endusersharepoint.com/?p=358&quot; rel=&quot;bookmark&quot;&gt;Exploiting or being Exploited by SharePoint Search&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.endusersharepoint.com/?p=388&quot; rel=&quot;bookmark&quot;&gt;EndUserSharePoint.com: First Steps in Defining Search Scope&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; &lt;/p&gt;</description><link>http://wssdevelopment.blogspot.com/2008/06/guest-posts-on-endusersharepointcom.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-8877915346246105086</guid><pubDate>Tue, 06 May 2008 20:16:00 +0000</pubDate><atom:updated>2008-05-06T15:23:44.575-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Sharepoint Application Concepts</category><title>Resources worth reading for SharePoint Developers</title><description>Yesterday, &lt;a href=&quot;http://www.binarywave.com/blogs/eshupps/Lists/Posts/AllPosts.aspx&quot;&gt;Eric Shupps&lt;/a&gt; posted a &lt;a href=&quot;http://www.binarywave.com/blogs/eshupps/Lists/Posts/ViewPost.aspx?ID=118&quot;&gt;great article&lt;/a&gt; for getting started with SharePoint development. If you are just getting started with development for SharePoint, I highly suggest taking a few minutes to read his article.
  1936.  
  1937. Also, here are some good resources for you to consider when starting to develop for SharePoint.
  1938. &lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://msdn.microsoft.com/en-us/library/bb687949.aspx&quot;&gt;Best Practices: Common Coding Issues When Using the SharePoint Object Model&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://msdn.microsoft.com/en-us/library/bb985502.aspx&quot;&gt;Checklist for Creating SharePoint Web Parts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://msdn.microsoft.com/en-us/library/aa973248.aspx&quot;&gt;Best Practices: Using Disposable Windows SharePoint Services Objects&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;</description><link>http://wssdevelopment.blogspot.com/2008/05/resources-worth-reading-for-sharepoint.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-878095251711709850</guid><pubDate>Wed, 30 Apr 2008 01:54:00 +0000</pubDate><atom:updated>2008-04-29T20:57:01.039-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tips and Tricks</category><title>Broken Web Parts</title><description>Have you ever had a web-part that started creating errors that wouldn&#39;t allow you to get to your page for editing it? Here&#39;s a cool little tip that might get you up and going with much less frustration.
  1939.  
  1940. Append ?contents=1 to the end of your URL for the page that contains your problematic web part. This will take you to the web-parts management page that will allow you to remove the troublesome web-part from the page.
  1941.  
  1942. &lt;strong&gt;https://&amp;lt;server&amp;gt;/&amp;lt;site&amp;gt;/?contents=1&lt;/strong&gt;</description><link>http://wssdevelopment.blogspot.com/2008/04/broken-web-parts.html</link><author>noreply@blogger.com (Chris)</author><thr:total>5</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-295437661056121253</guid><pubDate>Mon, 14 Apr 2008 20:50:00 +0000</pubDate><atom:updated>2008-04-14T16:00:00.272-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">General Observations</category><title>DevConnections, Orlando, Florida</title><description>Just a heads up for any that are interested, I&#39;m headed to DevConnections next week. I&#39;m exicited about the possibilities and things that I&#39;ll be exploring while there. Here are a few of the sessions that I&#39;m planning to attend:
  1943.  
  1944. &lt;strong&gt;Design Powerful Workflows with SharePoint Designer&lt;/strong&gt;
  1945. Workflows are essential to business processes. The ability to route a document through multiple stages, gathering feedback, and getting approval from multiple people is a routine procedure in many companies. Now you can take advantage of SharePoint’s built-in support for workflows to design powerful multi-step workflows. You will learn how to make use of the built-in workflows directly through SharePoint’s interface. Then you will see how to develop powerful workflows—without any code—using Microsoft Office SharePoint Designer.
  1946.  
  1947. &lt;strong&gt;Intelligent Dashboards Made Simple&lt;/strong&gt;
  1948. Microsoft Office SharePoint Server 2007 (MOSS) incorporates significant enhancements in presenting Business Intelligence data to the end user allowing them to share, control, and reuse business information to make better decisions. MOSS is utilized to enable information workers to build business intelligence (BI) dashboards in any SharePoint site. The dashboard can provide a bird’s eye view to easily and quickly analyze data or to measure progress of any organizational metrics or goals. This session will show how easy it is to build a powerful BI dashboard using information from various data sources. Even data from Excel spreadsheets, hosted in SharePoint document libraries, will be used along with other data sources. The end result will show a visualization of Key Performance Indicators, graphs, and charts of the data that’s easy to understand and analyze.
  1949.  
  1950. &lt;strong&gt;Quick Integration from SharePoint to Your Application
  1951. &lt;/strong&gt;Do you need a quick way to add search to your application? Do you want to add document management including version control and check in/out? In this session, you’ll learn how you can use SharePoint to add more robust features to your application—and how you can use SharePoint to provide a central framework around your existing individual applications.
  1952.  
  1953. &lt;strong&gt;The Hidden Architect—Building Solutions for Smaller Organizations&lt;/strong&gt;
  1954. Large enterprises and governments with large projects can justify and afford formal system architecture and design and can afford the loss when a project self-destructs (as they so often do). But what about smaller businesses and their Web applications? These organizations fall victim daily to poorly designed solutions that aren&#39;t what they needed in the first place. They need help figuring out what they really need—help they often don&#39;t realize they need and are reluctant to pay for. It&#39;s not enough to be a Web or application developer when it comes to this kind of client or project—you have to be a system architect as well, even though you don&#39;t wear the title and may not be able to charge for the service. So how do you become a system architect? This session might be a good start. You’ll cover requirements, economics, client management, creative and flexible design strategies, and how to look beyond &quot;best practices&quot; design patterns to find solutions that fit the client, instead of trying to fit the client to the solution. P.S. Bring your favorite horror stories for show and tell!
  1955.  
  1956. If you&#39;re planning on attending this event, I&#39;d love to meet you. I&#39;m always interested in meeting those entrenched in the SharePoint world! It amazes me the number of tricks and tips I learn from each individual I&#39;ve had the opportunity to meet!</description><link>http://wssdevelopment.blogspot.com/2008/04/devconnections-orlando-florida.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-1856389891102081678</guid><pubDate>Mon, 14 Apr 2008 20:32:00 +0000</pubDate><atom:updated>2008-04-14T15:39:59.527-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Customization</category><category domain="http://www.blogger.com/atom/ns#">SharePoint Designer</category><category domain="http://www.blogger.com/atom/ns#">Site Definitions</category><title>Training Site Template Available for Download</title><description>As promised, here is the training site template available for download. Please be advised that this file is for &lt;strong&gt;demonstration purposes only&lt;/strong&gt;. I am making it available to the community as an educational resource only, and therefore offer &lt;strong&gt;&lt;span style=&quot;color:#ff0000;&quot;&gt;no support&lt;/span&gt;&lt;/strong&gt; for the actual installation and use of the template.
  1957.  
  1958. &lt;strong&gt;&lt;a href=&quot;http://cid-77c19aea045535c8.skydrive.live.com/self.aspx/Public/TrainingSiteTemplate.zip&quot;&gt;TrainingSiteTemplate&lt;/a&gt;&lt;/strong&gt; on SkyDrive.
  1959.  
  1960. Known Issues
  1961. &lt;ol&gt;&lt;li&gt;&lt;strong&gt;Opening in SharePoint Designer shows as unable to render.
  1962. &lt;/strong&gt;I have no idea why this happens, but hopefully it will be addressed by Microsoft at some time. The error message is non-descriptive at best and makes it difficult to troubleshoot.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Web Part Connections have been removed&lt;/strong&gt;
  1963. In the original template, all of the items made use of web part connections to filter the main list of training resources. I continuously received error messages when provisioning a new site with established web part connections. I believe this may be another short-fall of SharePoint designer, as this has been my experience no matter how many different SharePoint deployments I&#39;ve used.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Please feel free to comment on your experiences with this site definition. I hope it helps you envision a plan for your own templates and zero-code solutions.&lt;/p&gt;</description><link>http://wssdevelopment.blogspot.com/2008/04/training-site-template-available-for.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-458166952453115440</guid><pubDate>Tue, 08 Apr 2008 20:55:00 +0000</pubDate><atom:updated>2008-04-08T16:19:03.627-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">General Observations</category><title>Heroes Happen {here}</title><description>I just got back in from a day at the Heroes Happen {here} launch event hosted here in the DFW area. It&#39;s interesting to see the roadmap that Microsoft has put before us as we move forward in our industry.
  1964.  
  1965. One of the points from the keynote that most intrigued me is the idea of changing the 80/20 rule. This is the rule that states in most IT departments, 80% of your time is maintenance and only 20% is innovation. The new goal for the 2008 line of server products is to try to move IT from a cost center to a strategic asset in the company. This means that the 80/20 rule would still apply, but now &lt;strong&gt;80% of your time is innovation&lt;/strong&gt;.
  1966.  
  1967. Personally, I don&#39;t see this is an attainable or realistic goal. It is a good one, but the reality is that most IT departments spend a large chunk of their time recovering from poor communication between the user and the IT professional. Until users and IT professionals can begin speaking the same language, there will always be a level of communication missing.
  1968.  
  1969. One thing that didn&#39;t seem to be a factor in this new 80/20 idea is cost. While it would be great to spend 80% of your time in innovation, that also means you are potentially &lt;strong&gt;spending more&lt;/strong&gt; to attain that innovation. With that stated, I think the new line of server products will be a great boost in the right direction.
  1970.  
  1971. There is a feature that has excited me with SQL 2008. In SQL 2008, the SQL Report Designer has been transformed into a stand-alone application. This means that the report designer can be placed on a desktop as a stand alone application, enabling business users to create reports from data housed in SQL 2008 databases. As a developer, one of the things that bothers me most is the continual request for new reports. By giving the end user a tool like this, I can now forcus my time on building the complex reports while allowing the business user to tweak the reports.
  1972.  
  1973. Also, SQL 2008 Reporting Services also includes gauges for use in your reports. I believe this is a new addition to the platform, and one that has been needed for quite some time. Don&#39;t go looking for fancy new color schemes or exciting graphically diverse charts though. They still look very similar to the charts found in 2005.
  1974.  
  1975. Unfortunately, the only break-out I was able to attend was the first session of the developer track. While informative, since we have migrated our team to Visual Studio 2008 it was rehashing all of the things we&#39;d already discovered or heard from other Microsoft events. There were some other tracks that looked interesting, but I had personal obligations that I required me to leave (and since it is an hour trip from Dallas to Fort Worth by train, I had to leave).
  1976.  
  1977. Overall, I&#39;m excited about the possibilities of this new product line, but I&#39;m going to have to spend some time diving deeper into the new features and resources for these products. Having just recovered from being on the front edge with Office 2007, SharePoint 2007 and Windows Vista, I think we&#39;re going to give these products a year or so to mature.</description><link>http://wssdevelopment.blogspot.com/2008/04/heroes-happen-here.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-5640223358039632134</guid><pubDate>Mon, 07 Apr 2008 17:28:00 +0000</pubDate><atom:updated>2008-04-07T12:35:08.135-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Planning</category><category domain="http://www.blogger.com/atom/ns#">Tools</category><title>Two Articles with Developer Implications</title><description>&lt;p&gt;Hello again! I apologize for the long period of silence, but I hope to be back over the next month with a few posts. In the mean time, here are a couple of blog posts that I have recently found that I think would be good for consideration by developers.&lt;/p&gt;
  1978. &lt;ul&gt;
  1979. &lt;li&gt;&lt;A href=&quot;http://www.endusersharepoint.com/?p=234&quot; target=&quot;_blank&quot;&gt;EndUserSharePoint.com: Five Ways to Manage a SharePoint Site Collection with SharePoint&lt;/a&gt;&lt;br/&gt;
  1980. This is an excellent tip on governance structures. Where this might be applicable to a developer is the use of a workflow to assist in the provisioning of sites.
  1981. &lt;li&gt;&lt;a href=&quot;http://www.endusersharepoint.com/?p=230&quot; target=&quot;_blank&quot;&gt;EndUserSharePoint.com: Weekly Newsletter&lt;/a&gt;&lt;br/&gt;
  1982. Another good article with a tip on when you might want to use a blog vs. a wiki. We have begun using this tip internally to help us support various software platforms. It&#39;s worth a look as a developer to take back to your development teams to discuss ideas on collaborating with your code!
  1983. &lt;/ul&gt;
  1984. &lt;p&gt;Also, I am planning to post the zero code training site this month, so be on the lookout!&lt;/p&gt;</description><link>http://wssdevelopment.blogspot.com/2008/04/two-articles-with-developer.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-9016041253836367443</guid><pubDate>Wed, 06 Feb 2008 17:52:00 +0000</pubDate><atom:updated>2008-02-06T12:08:32.504-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">CAML</category><category domain="http://www.blogger.com/atom/ns#">Sharepoint Application Concepts</category><title>Controlling the Result Type for Calculate Fields</title><description>I recently was faced with the problem of rendering a calculated field using a feature. The feature creates and provisions a set of columns and content-types available for use in the site. However, one of the problems I faced was creating a calculated field that needed to render it&#39;s output as currency. Since SharePoint users the defaults when defining new fields, it was performing the calculations correctly, but displaying them as raw, unformatted text.
  1985.  
  1986. When looking through the SDK, there doesn&#39;t appear to be any way to control the content (or it has not yet been documented). So, I decided I&#39;d let SharePoint help me out. I created a new list and added several currency columns to the list. I then created a calculated column that would subtract the last currency number from the first currency number. Next, I saved the list as a list definition and downloaded it to my local computer.
  1987.  
  1988. The &lt;strong&gt;.stp&lt;/strong&gt; file that is created is nothing more than a CAB file. I appended the filename with &lt;strong&gt;.cab&lt;/strong&gt; and then opened it up. Inside is a manifest.xml file that contains the definition of the list (if you&#39;re ambitious enough, you could create your own list definitions and upload them by reversing the process).
  1989.  
  1990. Opening the manifest.xml file, I then locate all of the field definitions for the list. This is where I found the payload. There is an attribute that can be added to a calculated column definition to control the result of the calculation. It is the &lt;strong&gt;ResultType &lt;/strong&gt;attribute. So, here&#39;s my definition:
  1991.  
  1992. &lt;pre&gt;
  1993.          &amp;lt;Field Type=&quot;Currency&quot; DisplayName=&quot;Val1&quot; Required=&quot;FALSE&quot;
  1994.                Decimals=&quot;2&quot; LCID=&quot;1033&quot; ID=&quot;{66df31d6-dd22-4a17-8d4f-5f4b9a1be790}&quot;
  1995.                SourceID=&quot;{02d65904-8cbb-407d-9668-67441581ed38}&quot;
  1996.                StaticName=&quot;_x0056_al1&quot; Name=&quot;_x0056_al1&quot; ColName=&quot;float1&quot;
  1997.                RowOrdinal=&quot;0&quot; Version=&quot;1&quot;/&amp;gt;
  1998.          &amp;lt;Field Type=&quot;Currency&quot; DisplayName=&quot;Val2&quot; Required=&quot;FALSE&quot;
  1999.                Decimals=&quot;2&quot; LCID=&quot;1033&quot; ID=&quot;{66c6624c-88fb-4d26-9c5b-3615548b76db}&quot;
  2000.                SourceID=&quot;{02d65904-8cbb-407d-9668-67441581ed38}&quot;
  2001.                StaticName=&quot;_x0056_al2&quot; Name=&quot;_x0056_al2&quot; ColName=&quot;float2&quot;
  2002.                RowOrdinal=&quot;0&quot; Version=&quot;1&quot;/&amp;gt;
  2003.          &amp;lt;Field Type=&quot;Calculated&quot; DisplayName=&quot;Var&quot; Format=&quot;DateOnly&quot;
  2004.                Decimals=&quot;2&quot; LCID=&quot;1033&quot; &lt;strong style=&quot;color: red;&quot;&gt;ResultType=&quot;Currency&quot;&lt;/strong&gt; ReadOnly=&quot;TRUE&quot;
  2005.                ID=&quot;{a415e859-b8f9-4168-a63d-e5fbcbbfba7b}&quot;
  2006.                SourceID=&quot;{02d65904-8cbb-407d-9668-67441581ed38}&quot; StaticName=&quot;Var&quot;
  2007.                Name=&quot;Var&quot; ColName=&quot;sql_variant1&quot; RowOrdinal=&quot;0&quot;&amp;gt;
  2008.                &amp;lt;Formula&amp;gt;=_x0056_al2-_x0056_al1&amp;lt;/Formula&amp;gt;
  2009.                &amp;lt;FieldRefs&amp;gt;
  2010.                   &amp;lt;FieldRef Name=&quot;_x0056_al1&quot;/&amp;gt;
  2011.                   &amp;lt;FieldRef Name=&quot;_x0056_al2&quot;/&amp;gt;
  2012.                &amp;lt;/FieldRefs&amp;gt;
  2013.          &amp;lt;/Field&amp;gt;
  2014. &lt;/pre&gt;
  2015.  
  2016. As you can see, the calculated field&#39;s result type is controlled by the &lt;strong&gt;ResultType&lt;/strong&gt; attribute. I took this new found knowledge back into my project, plugged it in and everything worked just as expected!</description><link>http://wssdevelopment.blogspot.com/2008/02/controlling-result-type-for-calculate.html</link><author>noreply@blogger.com (Chris)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-1691561765197444562.post-5645784623127870087</guid><pubDate>Fri, 01 Feb 2008 17:15:00 +0000</pubDate><atom:updated>2008-02-01T11:17:09.766-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Customization</category><category domain="http://www.blogger.com/atom/ns#">SharePoint Designer</category><title>Create a Zero Code Web-Based Training Site</title><description>&lt;p&gt;One of the best tips I&#39;ve come across recently has been the use of a &lt;a href=&quot;http://creativecommons.org/licenses/by/3.0/&quot; rel=&quot;license&quot;&gt;Creative Commons Attribution 3.0 License&lt;/a&gt; javascript library called &lt;a href=&quot;http://www.dolem.com/lytebox/&quot;&gt;LyteBox&lt;/a&gt;. This library allows you to incorporate some pretty cool effects into SharePoint using a simple content editor web part. Using this javascript library, a content editor web part and SharePoint Designer, my plan is to walk through creating a simple training site that gives users a Web 2.0 feel to training content.&lt;/p&gt;&lt;p&gt;
  2017. First, download the scripts from the link above. After you have downloaded the scripts, create a new blank site. We&#39;re going to add our own lists and libraries to this site, so there is no need for us to have any existing content.&lt;/p&gt;
  2018. &lt;h2&gt;Getting LyteBox Setup&lt;/h2&gt;
  2019. &lt;p&gt;When you&#39;re new site has been provisioned, create a new document library called &lt;strong&gt;LyteBox&lt;/strong&gt; and place all of the scripts and images into this library. Be sure to place all of the images in a new folder in this library called images.&lt;/p&gt;
  2020. &lt;p&gt;
  2021. &lt;img src=&quot;http://lh5.google.com/christopheroquick/R6ND_SV8vNI/AAAAAAAAAFk/gLoCaVcCGSk/LyteBoxDocLib.jpg&quot; /&gt;&amp;nbsp;&lt;/p&gt;
  2022. &lt;p&gt;Now, edit the page of your site and add a new content editor web part to top-right zone of the homepage (default.aspx). Edit the shared web-part and include the following lines using the source editor:&lt;/p&gt;
  2023. &lt;pre&gt;&amp;lt;script type=&quot;text/javascript&quot; language=&quot;javascript&quot; src=&quot;lytebox/lytebox.js&quot;&amp;gt;&amp;lt;/script&amp;gt;
  2024. &amp;lt;link rel=&quot;stylesheet&quot; href=&quot;lytebox/lytebox.css&quot; type=&quot;text/css&quot; media=&quot;screen&quot; /&amp;gt;&lt;/pre&gt;
  2025. &lt;p&gt;Change the Appearance of the web part and turn off the chrome. This way, the web part will not be displayed at all. If you&#39;d like, export this web-part for reuse in other places in SharePoint.&lt;/p&gt;
  2026. &lt;h2&gt;Creating Training Libraries and Lists&lt;/h2&gt;
  2027. &lt;p&gt;Next, we need to create a few libraries and lists to use for our site. I need
  2028. a library to contain basic HTML pages and resources for those pages, a list to
  2029. create categories for the training labs and a list to contain the actual
  2030. training labs.&lt;/p&gt;
  2031. &lt;p&gt;Create a new document library called &lt;strong&gt;Resources&lt;/strong&gt; and upload a
  2032. few sample HTML pages (or create them with SharePoint Designer or a similar
  2033. tool). This will be the place that you can upload all of the materials needed
  2034. for your training labs. Our organization will be creating Camtasia projects for
  2035. the users to review. You could include anything that is HTML based for your
  2036. users in the library.&lt;/p&gt;
  2037. &lt;p&gt;Next, create a custom list to contain a list of categories. I named this list
  2038. &lt;strong&gt;Categories&lt;/strong&gt; and added the following items: Excel 2007, Word
  2039. 2007, SharePoint 2007. This list will be used as a lookup for categorizing your
  2040. training sessions (and as a connected web-part for filtering the list of
  2041. available labs).&lt;/p&gt;
  2042. &lt;p&gt;Now, the next list is the &amp;quot;meat and potatoes&amp;quot; list because this is where you
  2043. will be organizing the labs that are available. Create another custom list
  2044. called &lt;strong&gt;Training Labs&lt;/strong&gt; and add the following columns to the list:&lt;/p&gt;
  2045. &lt;ul&gt;
  2046. &lt;li&gt;Category, Lookup, Required -- linked to Categories - Title&lt;/li&gt;
  2047. &lt;li&gt;Description, Multiline&lt;/li&gt;
  2048. &lt;li&gt;Width, Number&lt;/li&gt;
  2049. &lt;li&gt;Height, Number&lt;/li&gt;
  2050. &lt;li&gt;Resource Link, HyperLink/Picture -- set to hyperlinks&lt;/li&gt;
  2051. &lt;/ul&gt;
  2052. &lt;p&gt;At this point, you may want to create some items for testing when we get into
  2053. SharePoint designer. The idea is each item will provide a link to the resource
  2054. using the resource link column. This will be linked to an HTML page in the
  2055. Resources library. The &lt;strong&gt;width &lt;/strong&gt;and &lt;strong&gt;height &lt;/strong&gt;
  2056. columns will be used to control how large the LyteBox window becomes using some
  2057. cool SharePoint designer items.&lt;/p&gt;
  2058. &lt;p&gt;Now the basic lists are available and ready to use for your site. Its time to
  2059. start wiring up all the pieces with SharePoint Designer.&lt;/p&gt;
  2060. &lt;h2&gt;SharePoint Designer&lt;/h2&gt;
  2061. &lt;p&gt;Open the site using SharePoint designer and then double click &lt;strong&gt;
  2062. default.aspx&lt;/strong&gt; to open the page. In the toolbox (or click Task Panes), go
  2063. to the Data Source Library and locate the &lt;strong&gt;Training Labs&lt;/strong&gt; list.
  2064. Click on the list and choose Show Data. In the list, highlight the title column
  2065. and drag this over to the default.aspx page right zone. Drop it in place below
  2066. the content editor we placed in the page earlier.&lt;/p&gt;
  2067. &lt;p&gt;Now, using the Common Data View Tasks Widget, modify the columns you wish to
  2068. display. I added in the description and category fields to my display. Click on
  2069. the widget for the title column and change it into a hyperlink column. For the
  2070. hyperlinks properties, make sure the Text to Display is set to &lt;strong&gt;{@Title}&lt;/strong&gt;
  2071. and the Address is set to &lt;strong&gt;{substring-before(@Resource_x0020_Link,&amp;#39;, &amp;#39;)}&lt;/strong&gt;.
  2072. The easiest way to do this is to click on the Fx button for Address and choose
  2073. the Resource Link from the list and then do the same for the Text to display.&lt;/p&gt;
  2074. &lt;p&gt;
  2075. &lt;img src=&quot;http://lh3.google.com/christopheroquick/R6NOhyV8vPI/AAAAAAAAAGM/SSh6ThfHSxQ/LyteBoxEditHyper.jpg&quot; /&gt;&amp;nbsp;&lt;/p&gt;
  2076. &lt;p&gt;Now for the fun part. You will need to make some modifications to the tag
  2077. properties of the hyperlink so the LyteBox script will execute on the link. In
  2078. the &lt;strong&gt;rel&lt;/strong&gt; attribute, set it to &lt;strong&gt;lyteframe&lt;/strong&gt;. Then
  2079. locate the &lt;strong&gt;rev&lt;/strong&gt; attribute and choose the function box. Make sure
  2080. to use the following function in the dialog:&lt;/p&gt;
  2081. &lt;pre&gt;concat(&#39;width: &#39;,@Width,&#39;px; height: &#39;,@Height,&#39;px; scrolling: no;&#39;) &lt;/pre&gt;
  2082. &lt;p&gt;Now, your properties should look something like the following:&lt;/p&gt;
  2083. &lt;p&gt;
  2084. &lt;img src=&quot;http://lh5.google.com/christopheroquick/R6NQDSV8vQI/AAAAAAAAAGs/RjJZEtiQK_0/LyteBoxTagProps.jpg?imgdl=1&quot; /&gt;&amp;nbsp;&lt;/p&gt;
  2085. &lt;p&gt;You should be ready to save your page and begin testing it out. If you have
  2086. been successful, your resources should load up in a Web 2.0 feeling box that
  2087. dims the surrounding area and displays the content in the box.&lt;/p&gt;
  2088. &lt;h2&gt;Filtering Content&lt;/h2&gt;
  2089. &lt;p&gt;The final step to make this site more useful is to allow your users to filter
  2090. the content based on the category. To do this, in SharePoint, edit your page and
  2091. add a web part for your Categories list to the Right zone (you can also do this
  2092. from inside of SharePoint Designer, but I prefer SharePoint&amp;#39;s ability to set the
  2093. properties of the web part). &lt;/p&gt;
  2094. &lt;p&gt;Go back into SharePoint designer and reload the page. Right click on your
  2095. Categories Web Part and choose Web Part Connections. &lt;/p&gt;
  2096. &lt;ul&gt;
  2097. &lt;li&gt;Set the connection to &lt;strong&gt;Provide Row To&lt;/strong&gt; and click Next.
  2098. &lt;/li&gt;
  2099. &lt;li&gt;Choose to &lt;strong&gt;Connect to a Web Part on this Page&lt;/strong&gt; and click
  2100. Next.&lt;/li&gt;
  2101. &lt;li&gt;Choose the &lt;strong&gt;Target Web Part&lt;/strong&gt; as your Training Labs
  2102. DataView and the &lt;strong&gt;Target Action&lt;/strong&gt; to Get Filter Values From&lt;/li&gt;
  2103. &lt;li&gt;Match up the columns between the Categories List and the Training Labs
  2104. List. This should be to set the Categories List to Title on the same row as
  2105. the Training Labs category row.&lt;/li&gt;
  2106. &lt;li&gt;Click on Finish.&lt;/li&gt;
  2107. &lt;/ul&gt;
  2108. &lt;p&gt;Now save the page and load it up in your Browser. Test that the filter gets
  2109. applied and you can now review training labs based on the way your filter is
  2110. set.&lt;/p&gt;
  2111. &lt;p&gt;I&amp;#39;ll see if I can&amp;#39;t upload the template I&amp;#39;ve created for you to dissect and
  2112. play with. My final template looks like the following:&lt;/p&gt;
  2113. &lt;p&gt;
  2114. &lt;img src=&quot;http://lh5.google.com/christopheroquick/R6NTqSV8vRI/AAAAAAAAAHM/jhtJlRdFoLg/LyteBoxFinal.jpg?imgdl=1&quot; /&gt;&amp;nbsp;&lt;/p&gt;</description><link>http://wssdevelopment.blogspot.com/2008/02/create-zero-code-web-based-training.html</link><author>noreply@blogger.com (Chris)</author><thr:total>10</thr:total></item></channel></rss>

If you would like to create a banner that links to this page (i.e. this validation result), do the following:

  1. Download the "valid RSS" banner.

  2. Upload the image to your own server. (This step is important. Please do not link directly to the image on this server.)

  3. Add this HTML to your page (change the image src attribute if necessary):

If you would like to create a text link instead, here is the URL you can use:

http://www.feedvalidator.org/check.cgi?url=http%3A//wssdevelopment.blogspot.com/feeds/posts/default%3Falt%3Drss

Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda