RSS Feed
I recently completed the development of a feature which is attached to site definitions via a site staple. The feature is a building block, designed to be used by other solution developers when building their own custom site definitions. Rather than continually modifying the staple in my feature (requiring my solution to be rebuilt and redeployed) I wrote a quick little tool that allows them to generate their own staple. With just a little more work I made it generic enough for anyone, and today dropped it onto Codeplex. Hope it helps.
Installation This is just a single command-line executable, so download it from here and then get started.
Usage Base Site Staple Feature Generator ------------------------------- Usage: zsStapleGenerator <StapleTitle> <SiteDefinitions> <FeatureGuid> <Scope> <FeatureFolder>
<StapleTitle> Name you would like to give the new StapleFeature <SiteDefinitions> List of the SiteDefinition to be stapled (';' or ',' delimited) <FeatureGuid> The Guid of the Feature that is to be stapled <Scope> Either 'WebApplication' or 'Farm' <FeatureFolder> The New folder where you would like to create the feature.
Notes This is obviously just producing the feature, you would next need to wrap it up into an installable solution file. I stopped here as there are many ways to do this. After you have created the new feature you can obviously tweak it to your hearts content, the beauty is that all that typing is avoided.
Just wanted to let you know that I dropped a new build of the Tagged Links solution today:
I did a walk-through here: Tagged Links Walk-through
It introduces the following fixes:
Getting close now, looking to have it complete by mid-May, as always, would like to get your feedback, email me at: daniel@zevenseas.com and you can always try it out here:
This attribute doesn't quite work the way I expected it to, or the way I have seen it described in other places on the web. (The documentation is not as clear as it should be. I really wish it did work the way described in Chris's great post!)
From the official documentation (http://msdn2.microsoft.com/en-us/library/ms459213.aspx) we find that it is designed to:
IgnoreIfAlreadyExists Optional Boolean. TRUE to provision the view even if the file already exists at the specified URL; otherwise, FALSE.
IgnoreIfAlreadyExists
Optional Boolean. TRUE to provision the view even if the file already exists at the specified URL; otherwise, FALSE.
To fully understand how this attribute worked I set up the following test:
So, in summary, it appears this attribute actually does exactly what it says (even if it really could have said it clearer), it ignores the provisioning of the file if a file with the same name already exists. At this point I have to wonder just how useful such an attribute really is!
Anyway, I'm going to return to investigating the easiest way to replace an existing file via a feature, but if anyone out there has had a different experience then I would love to hear about it.
I have had a couple of people ping me about content that was available on my old Point2Share site (especially the upgrade stuff) and I'm pleased to say that I have finally got around to going through the old blog and pulling out content that remains useful today.
Too much has changed now for me to just bring that server back online (not to mention maintenance effort) so I'm just going to republish them here, apologies for the duplication, you just never know when someone is going to find it useful via Google!
Last week we released "Tagged Links", a solution that brings Social Bookmarking to SharePoint (WSS/MOSS). Today I would like to take you on a walk-through of how it works and the capabilities it provides.
What is the one thing you should know about the "Tagged Links" solution?
Well, that it has everything the "Links List" has, but a lot more! Take a look through the walk-through below, email me at daniel@zevenseas.com for more information, or try it yourself:
As you can see a "Tagged Links" list looks like any other SharePoint List, the only exception is the text appearing just above the view.
To create a browser button for quickly adding links to this list, right-click the below link, select 'Add to Favorites...' and select the 'Links' folder in your favorites: Add link to MyDemoSite - Tagged Links
This will appear above all "Tagged Links" lists and provides you with a way to add a shortcut to your browser that quickly adds useful websites you find to the list.
This is how it works:
1) Right click on the "Add link to Tagged Links - Tagged Links" link, and select "Add to Favorites"
You may be prompted with the following:
If so, select "Yes" because the "Tagged Links" list is a trusted source.
2) When prompted by your browser, place the shortcut in the "Links" folder:
3) After clicking "Add", notice that a new button has been placed on the "Links" toolbar in your browser (if that has been turned on):
4) Finally, lets see what this shortcut can do for us. Browse to a page, for example my blog http://community.zevenseas.com/blogs/daniel, then, lets pretend (yes I know it is difficult) that you wanted to add my site into your tagged links list. With a standard links list you would have to copy the URL, browse to your links list, create a new item, paste in the URL and then enter a title. With a "Tagged Links" browser shortcut we do that for you!
Click on the "Add link to MyDemoSite - Tagged Links"
Notice that the URL and Title fields are already completed for you and that you are taken directly to the "New Item" form from the web site you were viewing when you clicked the button. All you need to do now, is tag it.
While you can tag information in SharePoint with "Choice" or "Lookup" fields, it's not quite as easy as we wanted it to be, so we have introduced a new "Tags" field. Behind the scenes it is a standard "Choice" field with a "Fillin" option, however, unlike the standard Choice field with the Fill-in enabled, when you enter a new fill-in value, it's automatically added to the list of choices in the field itself. This means that next time you save a link, that tag is already available and just a checkbox tick away.
Lets see it in action.
In this example lets say we wanted to tag my blog with our company name "zevenseas". Unfortunately this value has not yet been added to the Choice list. In a standard links list this would mean going into list settings, modifying the "Tags" field, adding the choice and then refreshing my page. With "Tagged Links" we just type it in, along with any other Tags separated by a "," or a ";".
Now watch what happens when I save the item, and then go back in to edit it:
Notice that those new tags are now Choices defined in the choice list, just to confirm lets take a look:
So that is a real time saver, and it means that your Tags can be kept more consistent.
Keeping tags as consistent as possible across your "Tagged Links" lists is going to make the information you store there easier to find. To help you do this we have introduced the concept of "Global Tags". These are a set of tags that you define at the Site Collection level, and are then available to any "Tagged Links" list, in any site, within the Site Collection.
To define these Global Tags open site settings and then click on "Global Tags" under the galleries heading:
This will take you to the following list, where you define Tags by simply entering them in:
When defined these are available via your "Tagged Links" list toward the bottom of the form:
Of course all this information is useless if there is not an easy way to find what you are looking for. So in addition to standard SharePoint views, we have included two specialised views, the Tag Cloud and the Tag List. These are shown below, and provide a simple way to one-click filter the information you are seeing.
This concludes the tour, I hope it has been informative, any questions please mail me at daniel@zevenseas.com and if you would like to have a play around yourself, then feel free to log on here:
Site: Tagged Links Username: Coral\DemoUser Password: DemoUser
NEW: Tagged Links Walk-through
Inspired by the many great social bookmarking services available today, I've been working to bring their important features to SharePoint (MOSS and WSS). The results is a solution we are making available today in Beta called "Tagged Links", which really does what it says, its an enhanced links list focused around tagging, organising and sharing your favourite links.
The key features that have been added to the standard links list include the following:
Integration with the browser so that creating a new link is just a button press away. It automatically fills in the URL and Title for you.
Simple tagging. Tagging a link is just the click of a checkbox, while adding new tags is as simple as filling in a text box. The best bit is that new tags are added to the list for selection next time.
Built in Tag Cloud and Tag List views.
Ability to define "Global Tags" which are consistent and available throughout the entire site collection.
So download it and have fun. Please remember that this is Beta, so expect the odd bug or two, and don't use in production for live data, there may not be an upgrade path to the final version. If you do find anything, please let us know, also keen for your feedback, so if you have any comments, please email me directly at daniel@zevenseas.com. I will follow this post up with a detailed walk-through shortly, but the install zip includes an installation readme.
To celebrate the release of the Community Kit for SharePoint: Enhanced Blog Edition 2.0 (CKS:EBE) zevenseas, in partnership with PixelMill, would like to offer the first 20 people to email us at openzeas@zevenseas.com a free, hosted blog, powered by the CKS:EBE.
The CKS:EBE brings the most critical features required to run a successful internet facing blog, including:
This offer came together at the recent SharePoint conference, and was the result of a discussion about the CKS kit and what it means to community building. At zevenseas we have been lucky enough to work with a number of customers on ways to engage with the people who care most about their products and services. We’ve used the CKS to build out a platform that enables them to do this effectively, on SharePoint, with blogging at its core. We hope this offer is the beginning of another small community.
PixelMill, our SharePoint Designer Partners, have worked with us on these projects and wanted to be able to demonstrate just how attractive these blogs can be. To do that they have offered, for free, a selection of their premium design themes built for CKS:EBE. These are just the first of a number of new themes they will be offering to help your blog stand out, so be sure to take a look at their gallery.
Of course, none of this would be possible without the team who put the toolkit together. A big thanks to the CKS Team below, we’re really excited about its future:
Vince Rothwell (MTF) Nadeem Mitha (Linkbacks) Ari Bakker (Themes) Heather Waterman (Themes) Yvonne Harryman (QA) Matthew McDermott (Documentation/QA) Shane Perran (Themes) Gaetan Bouveret (QA) Keith Bunge (Various) Steven Van de Craen (Captcha) Brent Bolleman (EBE-PM) Lawrence Liu (CKS-PM)
Mark Wagner has pulled together web wide resources, and added his own insights, to a thoroughly well written piece on best practices when making changes to the web.config file. I placed a bookmark on it earlier in the week after hitting an issue where changes in some code I was reviewing did not seem to be propagated across all servers in a farm, a quick read of his post helped me identify exactly why.
SharePoint 2007 (WSS and MOSS) allows you to easily and safely add and remove modifications to the web.config file. This post briefly covers what the SPWebConfigModification class can do for you, and how to best to use it.
Thanks Mark:
One of the first questions I've been receiving from customers who are looking to deploy the CKS:EBE is "Where is the search box?". While there are a number of solutions to this problem, I thought it might be useful to share the approach, source and solution that I have taken.
Announcing the zevenseas CKS:EBE Search Feature.
Download
The Solution
The approach I decided to take was to create a feature composed of two core components:
Screenshots (click to enlarge)
Installation
This will install two solutions:
a) zevenseas Community Solutions Library This installs the files needed to access the evolving zevenseas Community Solutions library. Its a library that will grow over time to include a number of solutions for SharePoint. The first of these is the more flexible search box. b) zevenseas CKS:EBE Search This is the feature which, when installed, can be activated on any CKS:EBE site, to add the search functionality.
a) zevenseas Community Solutions Library This installs the files needed to access the evolving zevenseas Community Solutions library. Its a library that will grow over time to include a number of solutions for SharePoint. The first of these is the more flexible search box.
b) zevenseas CKS:EBE Search This is the feature which, when installed, can be activated on any CKS:EBE site, to add the search functionality.
Once these solutions have been installed, you will need to add the new zsSearchBox to your theme masterpage.
Adding the zsSearchBox to your theme.master page
1) Open your theme.master page using SharePoint Designer
2) Add the following line to the registrations at the very top of the page:
<%@ Register TagPrefix="zs" Namespace="zevenseas.Community.Web.UI.WebControls" Assembly="zevenseas.Community.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=613a6064cdb9c7d1" %>
3) Find the location in the source where you would like to insert the search box and then place the following:
<zs:zsSearchBox SearchResultPageURL="/search.aspx" searchboxwidth="140" ShowAdvancedSearchLink="false" runat="server" />
The zsSearchBox
The zsSearchBox currently supports a number of parameters, for example:
Look forward to your feedback, hope you find it useful.
Before I begin to describe this "Quick and Dirty" little tool I've put together, I just wanted to send a big congratulations to the entire CKS:EBE team on their 2.0 release. They have put together a fantastic solution, one that, in my opinion, adds essential extensions to the basic SharePoint Blog platform.
Over the last couple of months I have been lucky enough to work closely with Heather Waterman from PixelMill on the development of custom themes for the CKS:EBE. The development of these themes often takes place in SharePoint Designer, and when completed they are provided as a set of files in a folder structure. This is fine for a small number of blogs, where the files can be easily added via a drag and drop operation in SharePoint Designer, but for deploying to lots of blogs, this is just not feasible.
What you need to do is turn this folder structure into a SharePoint Feature. You could of course do this manually, but with potentially hundreds of files needing to be added to an ElementManifest you would only attempt this if you enjoyed typing lessons in high school and had 100% accuracy.
Screenshots
Transforms this:
To this:
More importantly, after installing the new feature, add the new theme to your CKS:EBE blog is as easy as clicking: Activate.
And then selecting your theme:
This is just a single, command-line executable, so download it from here and then get started.
Usage
CKS:EBE Theme Feature Generator ------------------------------- Usage: zsThemeFeatureGenerator <ThemeName> <NewFeatureFolder> <CurrentThemeFolder>
The existing SharePoint Designer theme should have the following folder structure: \Theme \Theme\Images
Notes
This is obviously just producing the feature, you would next need to wrap it up into an installable solution file. I stopped here as there are many ways to do this. My current favourite is the SmartTemplates tool, but after seeing it at the conference, I'm going to check out STSDEV.
After you have created the new feature you can obviously tweak it to your hearts content, the beauty is that all that typing is avoided.