in

SharePoint Blogs

The Best Place for SharePoint-related Blogs

The Mossman

Adventures in Sharepoint 2007 Customization
  • New Blog Location

    I have moved my blog off of SharePointBlogs.com, the new URL is http://blog.drisgill.com and the RSS feed should stay the same (if you are using my FeedBurner) http://feeds.feedburner.com/themossman. SharePointBlogs is a great place to start blogging but for someone that is focused on branding like myself, I really needed something with more control over the look and feel. I'm hoping The Dean can aggregate my new blog here as I know a lot of people come here for their daily news.

     p.s. As you can tell the cat is officially out of the bag on my true identity. Sorry to disappoint everyone that thought I was Steve Jobs or Bill Gates.

     

  • Big Changes for the Mossman (Plus a New SP Book)

    July 4th 2008 was Mossman independence day, in that I have left my cubicle job at a large consulting firm and have begun working with a few small dedicated SharePoint consulting companies. I will be focused on helping them with their MOSS branding efforts.

    Also, in the coming days/weeks I will be removing the veil of secrecy surrounding my true identity. Truth is, the only reason I started this pseudonym was because I was never sure what my employers policy on work blogging was. In related news I have a book coming out in September with Wrox entitled "Professional SharePoint 2007 Design". This book will be focused on just the design and branding process with SharePoint. The Amazon page for the book lists my true identity (and a photo of my face!). Can anyone guess which author I am?

    Wrox: Professional SharePoint 2007 Design

  • New Article: Automated SharePoint Site Branding

    My good buddy Ted Pattison just published an article with the MSDN Magazine entitled "Automated SharePoint Site Branding". He discusses many different ways to programmatically activate SharePoint branding such as master pages, images, alternate CSS and more. He even discusses switching out the application master pages as well.

    Automated SharePoint Site Branding

  • Common Theme Problem: "Write Error on file _themes\"

    When placing custom SharePoint themes into the 12 folder, sometimes you may run into this error when you try to select your new theme:

    "Write Error on file _themes\"

    Typically, this error happens when you are making changes to a theme and decide to make backups of some of your images by doing a simple file copy and paste. I'm not exactly sure what about this process causes the error, but simply moving the copied files to the desktop (or somewhere other then the theme folder) should correct the problem. Be sure to perform another IISRESET before re-selecting the theme.

  • Kivati Studio (SharePoint RAD GUI) Released

    Check out this new product from Kivati, seems like they took all of the SharePoint web service API's and abstracted them out into a GUI layer that allows developers to rapidly build SharePoint applications. I'm sure the devil is in the details, but the demo looks pretty slick. They show how a skilled user could wire together a workflow application and build a deployment package just by clicking away.

    Kivati.com

     

  • IE8 Beta 1 with SharePoint (Revisit)

    Ok, if you've read my previous post where I talk about IE8 rendering out of the box MOSS Master Pages poorly, you may have been confused by some of my results. Turns out I was using the Developer Tools to switch the Render Mode manually to IE8 which is not accurate. Turns out if a webpage does NOT include a doctype (like default.master and application.master do not) IE8 will default its rendering behavior to the old way of browsing (quirks mode in this case). Thus default.master and application.master, while still not great, do render exactly the same in IE8 as they would in IE7. Now BlueBand on the other hand (and the other "bands") DOES have a doctype so it renders in IE8 mode by default and thusly has problems.

    So, it would seem that the best case scenario for now with custom Master Pages, is to declare a doctype of your choice, but to include the new meta tag that forces IE7 rendering (since otherwise OOTB moss will have many problems). I for one, hope that the next service pack or version includes the appropriate back-end code to support full compliant mode.

    P.s. Turns out you can always check your rendering mode quickly with this bookmarklet: http://www.enhanceie.com/ie/ie8.asp

  • IE8 Beta 1 SharePoint Screenshots

    I went and grabbed the IE8 early beta and tried it out in a Vista VM. So far, the out of the box MOSS experience isn't looking so hot. Of course you could always switch it to IE7 browsing mode and everything looks great. My own MOSS designs look pretty funky as well. Here are some screenshots of IE8 and the out of the box SharePoint UI's:

    UPDATE #4 - Ok, after asking some questions on the IEBlog, I now understand what I was seeing in MOSS. Default.master does indeed render in IE7 mode by default, while Blueband renders in IE8 mode. You can check the render mode easily with this bookmarklet: http://www.enhanceie.com/ie/ie8.asp

    UPDATE #3 - This is what I get for posting so early in the beta. Just read the latest post on the IE8 Blog. Based on their description, I think the MOSS ootb default.master would render in IE7 mode by default as it does not have a doctype. This is why it looks normal in IE8 UNLESS you manually force the browser to render in IE8 mode with the Developer Tools... at least this is my latest theory.

    UPDATE #2 - Looks like I might have gotten fooled by the IE8 Developer Tools. I was using the Change Compatibility Mode to switch back and forth between IE7 and IE8 rendering. I'm not sure why, but this really messes up my MOSS UI. After closing and opening IE8 the MOSS UI's look better. Very strange... thanks to Wictor for pointing out the flaws in my screenshots. Maybe I can chalk this up to this being an early beta.

    UPDATE - on the Acid Test screenshot. Looks like its a known issue with some of the mirrored Acid Test links, from the IEBlog: "IE8 fails the copies of ACID2 due to the cross domain security checks IE performs for ActiveX controls.  Since IE does not natively handle HTML content in the OBJECT tag, but rather uses IE’s rendering engine as an ActiveX to display this HTML content, the same cross domain security checks also apply."

    Default.master:

    BlueBand.master:

    Manage Web Part Menu:

    Admin Menu:

  • IE8 Will Render in Standards Mode by Default

    As the title implies, the IE8 team has reversed their decision to have IE8 render in IE7 mode by default and instead have it render in full Acid2 confirmed standards goodness by default.

    Read the post here

    My question is, will the SharePoint team release a standards based default.master (hint: a doctype would help) or will they just tag it to render in IE7 Mode?

  • Google Sites != MOSS Killer (yet)

    Just previewed the new Google Sites functionality that was released (http://sites.google.com) recently. It is supposedly their attempt to capture some of the collaboration market that MOSS plays in. To be fair, it's early in the lifecycle of Google Sites, but at this point I think it would only be a viable alternative for shops that need a minimal collaborative environment. The UI is very slick however, Microsoft could take a few cues from them in that department (especially the nice cross browser Ajax interfaces, and deadly simple usage patterns).

    To try it out, at least for now, you need to have your own domain name to push up some files to verify that you are your own "company". Once you do that, you will be able to create sites, invite contributors, pick from some style templates, share files and documents, create web pages, create announcements, create very rudimentary lists, and create dashboards (which consist of small widgets for other Google apps).

    I think given enough time, Google could have a pretty solid product for small business collaboration, but as it stands now, I don't think Enterprise customers will use it. If they come out with a version that companies could install on their own servers behind firewalls, only then could it come close to competing with MOSS.

  • Mossman's Weather Web Part

    I recently created a simple weather web part to enter into Iain Munro's content editor web part contest. Actually, I created two, one using the US National Weather service feeds which don't seem to have restrictions on usage, and one that worked with Yahoo weather which has some restrictions on for-profit usage. Iain wanted the Yahoo one because it supports other countries other than the US, but there seems to be some stability issues with the Yahoo Weather RSS feed, where sometimes it doesn't send the full data (has anyone else experienced this?). So for now, I will just post the National Weather service one. To use it, add the web part to your page and to change the city listed, just modify the shared web part and edit the XML Link to reflect one of the XML URLs listed at this url: http://www.weather.gov/data/current_obs/seek.php?state=fl&Find=Find

    Download the Web Part here: CurrentWeather_WebPart.zip

  • Update to my SharePoint Name.dll ActiveX Fix

    Dave Ginn recently tried out my name.dll fix (read more about it in my previous post) and ran into a problem with some users not being able to access the Site Actions menu. Personally, I have deployed the code to several external MOSS sites and not run into the problem. Let me know in the comments if you have used my fix code successfully or not, as I'm trying to determine what sort of setup causes it to occur.

    Note: Dave fixed his problem with some code modifications and posted it to his site. I may end up rolling this code back into my source here at this blog.

  • Microsoft Revamping Virtualization Strategy

    According to the news wire, Microsoft is embracing virtualization full force in the coming months. This is great news for us SharePoint developers as we live in VM's. Heres some quotes from the blurb:

    Microsoft also said it will expand an alliance with another virtual desktop computing company, Citrix Systems Inc., that will help their respective products work well together.

    Redmond-based Microsoft also announced it will cut the cost of licensing Windows for use on virtual machines to $23 from $78 per year for its big business customers.

    Microsoft Takes Virtual Step Forward

  • Favicon's in a SharePoint Master Page

    My buddy John Ross had asked me if I knew anything about adding Favicons to SharePoint branding, so this post is for him. He pointed me to this post on MindSharp Blogs. This method didn't work for him when he tried it so was wondering how I did one for a project we worked on. I think the method in that post technically should work as IIS will pickup favicons that are in your IIS root, but I think SharePoint may be blocking access in some instances. For me, in traditional html, I have always preferred to call out favicons specifically with a <link> tag in the html <head> this way I ensure that my code, not the server, is handling the file. So now, how do you do this in SharePoint? Here are my steps

    Drag a favicon.ico file to the Images directory of your MOSS site with SharePoint designer.

    Add the following line to your Master Page at the bottom of the head section right before the </head> tag:

    • <link rel="shortcut icon" href="/images/favicon.ico" />

    Check-in, publish, and approve your Master Page so that anonymous folks can see the change.

    Refresh the site, and you should see the favicon.

    If you have problems seeing the icon, IE could be caching it, try Firefox and it should show eventually in IE.

    More info on Favicons

    Info on clearing IE's Favicon cache

     

  • Rumor: Microsoft to Buy Logitech?

    There's a rumor around the intertubes (and apparently on wall street) that Microsoft is making a bid to become the world leader in the pc hardware accessory market. I'm a big fan of both company's mice and keyboards, so this could be an interesting synergy.

    New York Times: Logitech Shares Jump on Microsoft Bid Rumors

  • NewsGator's FeedDemon and NetNewsWire RSS Readers are now FREE

    Mossman has always been a huge fan of NewsGator's FeedDemon, now even more so, since it has had a price drop to $0.00. Many of you may already be using Outlook for your desktop RSS reading, but I urge you to try FeedDemon for some more advanced features.

    Posted Jan 10 2008, 12:52 AM by mossman with no comments
    Filed under:
  • SharePoint Designer SP1 Released

    I don't normally like to repost stuff to death, but something that could be missed in the flurry of Office service pack 1's that have been released today is the SPD SP1 release. I just installed it in my local SharePoint Designer instance and so far I haven't had any problems (though I admittedly haven't put it through the paces yet). It seems slightly more responsive though that may be just a placebo affect. If you have any remarkable positive or negative upgrade outcomes, post a reply here.

    Link to the SharePoint Designer SP1 Download for the lazy

  • Lost Another One to Ditec (or should I say Apple)

    The Mossman was swayed by the Mac store inside the Best Buy and is now the owner of a Macbook Pro. Don't worry too much though as I've done the Boot Camp thing and installed Vista! It works really great and runs Vista surprisingly well. You can see from the photo that I got a Vista Experience rating of 4.8 and this is the low end Macbook Pro:

    I'll post here if I have any problems living my Microsoft existence in a Mac world.
  • SharePoint 2007 Predicted by "Joel on Software" Back in 2004?

    I was wikipedia'ing the word "Portal" today at work and stumbled across an interesting article from Joel on Software (if you have never read his blog, you might as well read up... because it full of pure gold) on how Microsoft has "Lost the API War"... written in 2004. Its interesting to see his points in this article and how they parallel with what Microsoft has done with SharePoint 2007. From what I can tell, he was "dead on" and Microsoft (despite being accused of often times being slow to market) was able to notice the same trends and create a viable contender for continuing its domination over the API through SharePoint 2007 and the web. If you don't feel like reading the whole post I'll sum it up with a quote:

    "None of this bodes well for Microsoft and the profits it enjoyed thanks to its API power. The new API is HTML, and the new winners in the application development marketplace will be the people who can make HTML sing." - Joel on Software (June 2004)

    Fast forward three years and it looks like Microsoft may have achieved that. Sure its not quite perfect still, but I think SharePoint does a better job of fitting what Joel was talking about then most other options available today, especially for the enterprise marketplace.

  • Using Firebug to Manage CSS Effectively

    I often talk about the benefits of using Firebug for Firefox in the MSDN Design and Customization Forums. Rather than try to type out a long winded article on why it rules, I found a video that should help to convince non believers that it is truly superior to the IE Developers Toolbar:

    Firebug 1.0 Beta Screencast by Jesse Newland

     Takes a little bit of time to download the video, but its worth it.

  • Fixing the name.dll ActiveX Problem the Mossman Way

    Have you seen this message on public facing SharePoint sites:

    The Web site wants to run the following add-on: 'Name ActiveX Control' from 'Microsoft Corporation'. If you trust the Web site and the add-on and want to allow it to run, click here...

    For an example of one (at least until they fix it), check out:

    http://www.mseventseurope.com/teched/07/itforum/content/Pages/Default.aspx 

    There are quite a few nice examples of internet facing SharePoint 2007 sites on the interwebs these days, however many of them seem to be plagued by this minor annoyance that seems to have slipped through the Microsoft cracks. The problem is compounded by the fact that most developers won't even notice the issue until their portal is available to internet users. This is due to the fact that the problem is seen only in Internet Explorer 7 and only when you are visiting a WSS v3 website that is NOT in your trusted site list for IE. You will not see the message most of the time in your local environment because, by default IE knows you are visiting an intranet site and auto-magically puts the site in your trusted list... then as soon as you visit the site with an external domain name, boom, your see the warning pop up.

    Apparently, SharePoint is trying to access "Presence" information that is available in Office, and for some reason they decided to name this ActiveX "name.dll", which really couldn't sound more like a trojan horse. Asking for more information on the ActiveX control doesn't help either. Most end users get immediately turned off to your website, and generally its just not a very professional way to present your portal.

    So, I'm sure your thinking "Mossman, how do I correct this problem?" Microsoft has a knowledgebase article on the topic here: http://support.microsoft.com/kb/931509. But, at least for me, this never works, since the "InitNoPresence.js" seems to always load after my custom .js in a SharePoint publishing site. What I do instead is include my own custom javascript file in the PlaceHolderAdditionalPageHead of my master page which overrides the offending out of the box javascript line. This ensure2 that our javascript is always loaded last in the chain (which is key). I have no idea if this is an approved way of tackling the problem, but it effectively does the same thing described in the kb article, only it actually works. So, without further fanfare, I will show you my code. You are free to use it in your sites but please leave in my comments.

    In your master page, place a reference to my custom javascript file in your <head> section after a PlaceHolderAdditionalPageHead, like this:

    <head runat="server">
        <asp:ContentPlaceHolder id="PlaceHolderAdditionalPageHead" runat="server"/>
        <script type="text/javascript" src="/_catalogs/masterpage/custom_activex_override.js"></script>
    </head>

    Now upload the following javascript file to the "_catalogs/masterpage" directory of your SharePoint site. Also, you might as well Publish and Approve the uploaded file as well (since anonymous users won't be able to see it otherwise).

    custom_activex_override.js

    Basically, this javascript file overrides the out of the box "ProcessDefaultOnLoad" and comments out the call to "ProcessImn()" which causes the ActiveX to be called.

    Please, feel free to try it out and let me know if you experience any problems or if you have any suggestions on better ways to tackle this problem.

     

  • Adding Prompt Text Inside of a Search Text Box

    I had a client need today to make the out of the box SharePoint search box have the prompt text actually inside the box instead of before the box. I'm not sure what you call this pattern exactly but you can find it on many modern websites including on Amazon's homepage in the A9 search box in the top right corner. The boxes I'm referring to usually have the text "Website Search" or something similar inside them and when you click the box to add your search terms, javascript usually clears them out for you.

    So, I set out to make this work in the MOSS search box, and found some difficulty at first, my immediate thought was to add it with a "value" property, but SharePoint pretty much ignored that. So, I then thought I could do it in javascript, but SharePoint gives the search box a dynamic ID name like "ctl00_PlaceHolderSearchArea_SearchBox_SD06736D6_InputKeywords", so that proved difficult.

    At the end of the day though it turns out the SharePoint already has our back when it comes to this. Apparently you can just use the QueryPromptString property of the MOSS search box. This actually takes care of all the work for you including the javascript part that clears the box when you click on it!

  • Take Rich Finn Out of the Dryer Cuz He's Hot ;)

    If you haven't checked out his blog before, it might be time to pay him a visit. I did the other day for his post about using the PortalSiteMapProvider to make custom navigation, and I left him a comment that a real world example would be nifty. Rich, being the awesome guy he is (or perhaps he just has no life) actually posted a very lengthy code sample the very next day!

    Check out his example of using the Telerik menu with SharePoint PortalSiteMapProvider its a hot one! Now I have some code to try out in my VM tomorrow.

  • Virtual Machine Settings and Performance (my non scientific tests)


    I recently performed some very subjective non scientific benchmark results for how my new pc runs MOSS in a VMWare virtual machine. The pc is a Dell Dimension 9200 Dual Core with 3 gigs of memory, and unless I mention it specifically the tests will have both cpu's turned on (you can turn one off in the vmware settings), 1.5 gigs of memory for the vm, a 20 gig hd pre-allocated to the vm, and will have hardware virtualization enabled in the bios of the host machine. I used PassMark Performance Test v6.1 trial edition to do the testing. I mainly just wanted to learn a little more about how VM performance works, since I'm fairly new to the concept. Hopefully someone else can learn something useful from my homework.

    Based on my readings of the test (and perhaps should have been obvious from the start) its best to run with both cpu's on, hardware virtualization on, and with the vm installed on a seperate internal hard drive.


    Host machine
    (bigger numbers are better)
    ---------------------------------------
    CPU  1079.6
    memory  460.0
    disk  332.8
    passmrk  440.8

    ========================


    1 CPU On
    Yes hardware virtualization
    VM on same HD

    ----------------------------
    CPU  540.7
    memory  397.7
    disk  113.4
    passmrk  240.3


    Both CPU's
    No hardware virtualization
    VM on same HD

    ----------------------------
    CPU 1053.7
    memory  423.9
    disk  142.2
    passmrk  389.2


    Both CPU's
    Yes hardware virtualization
    VM on same HD

    ----------------------------
    CPU 1066.5
    memory  429.6
    disk   110.1
    passmrk  387.3


    Both CPU's
    No hardware virtualization
    VM on Seperate Internal HD

    ----------------------------
    CPU 1023.0
    memory  430.3
    disk  285.0
    passmrk  445.1


    Both CPU's
    Yes hardware virtualization
    VM on Seperate Internal HD

    ----------------------------
    CPU 1084.9
    memory  430.7
    disk  462.1
    passmrk  478.6


    Both CPU's
    Yes hardware virtualization
    VM on External USB2.0 HD

    ----------------------------
    CPU 1057.7
    memory  377.7
    disk  105.7
    passmrk  409.4

  • New SharePoint 2007 Publishing Portal

    As my friends John Ross (on Moss) and Andrew Connell have mentioned already today, the new web portal for Orange County Public Schools has just gone live. The team I work for was responsible for transitioning their website from a loose confederation of around 50 department managed websites into one unified Microsoft SharePoint 2007 publishing portal. I think the key differentiator for the site (compared to many other public SharePoint sites) is that it is maintaned not by a central team, but instead by these 50 departments and their respective employees. As for the initiative, I was primarily responsible for all of the public facing UI elements of the portal. This included several customized masterpages, layouts, tons of css, custom webparts, custom XSL transformations, and restyling of several out of the box webparts. We had a lot of fun working on the project, but there was also considerable pain as well. Our team owes a great debt to the entire SharePoint blogging community as a whole for getting us through these rough spots because when this project began there were very few official sources of information on SharePoint. So, thanks to all of you!

    You can read a lot more about the initiative on John Ross's blog. Or you can check the site out for yourself at www.ocps.net

  • Problems Copying Virtual Machines to an External Drive?

    If you are new to the world of virtualization (as I am), you may run across the same problem that I did today. While attempting to move a bunch of vm's over to my external usb harddrive I was constantly getting errors about there not being enough space (despite having plenty of room):

    Cannot copy FILENAME: There is not enough free disk space. Delete one or more files to free disk space, and then try again

    Turns out the problem is with the external drive being formatted with Fat32. I guess you can't copy files bigger than 2 gigs to a Fat32 drive. The good news is you can run the following command to convert a Fat32 to NTFS and alleviate this problem (though you may want to research the up and downsides of doing this). From a dos prompt run:

    convert F: /fs:ntfs

    This will convert the F drive to NTFS for you. Note: you cannot convert back to Fat32, so make sure you want to do it.

More Posts Next page »

Need SharePoint Training? Attend a SharePoint Bootcamp!

Posts (c) their respective authors. Everything else (c) 2007 SharePoint Experts