Umbraco Codegarden 2016

Umbraco Codegarden 2016

This years annual Umbraco festival – Umbraco Codegarden 2016 is running from the 15th to the 17th of June and is being held at the Umbraco HQ in Odense.

It’s 3 full days where the Umbraco community gather for cool sessions from the core team and community experts, workshops, dinner, beers and networking.

If you were not able to attend this year, you can watch the live streams, as this years event is being broadcast live.

Umbraco Codegarden 2016 live streams:

Entrance room
Main room
Back room

Read more about Codegarden 2016, or check out the schedule.

Sitecore: Reset Sitecore admin password

If you forgot the admin password for Sitecore, you can reset it to default (admin/b), by running this SQL script against the core database

/*******************************************************************
* PURPOSE: Resets the Sitecore admin password to 'b'
* DATE            AUTHOR                 
*-------------------------------------------------------------------
* 04-04-14        Nehemiah J             
*******************************************************************/

/* Change the Sitecore DB Name */
USE [SITECORE_CORE_DB]
GO

DELETE FROM [aspnet_Membership] WHERE UserId = N'b09bbcde-9b3c-4dcd-b69e-67f615ce01e9'
GO
DELETE FROM [aspnet_Profile] WHERE UserId = N'b09bbcde-9b3c-4dcd-b69e-67f615ce01e9'
GO
DELETE FROM [aspnet_Users] WHERE UserId = N'b09bbcde-9b3c-4dcd-b69e-67f615ce01e9'
GO

INSERT [dbo].[aspnet_Membership] ([ApplicationId], [UserId], [Password], [PasswordFormat], [PasswordSalt], [MobilePIN], [Email], [LoweredEmail], [PasswordQuestion], [PasswordAnswer], [IsApproved], [IsLockedOut], [CreateDate], [LastLoginDate], [LastPasswordChangedDate], [LastLockoutDate], [FailedPasswordAttemptCount], [FailedPasswordAttemptWindowStart], [FailedPasswordAnswerAttemptCount], [FailedPasswordAnswerAttemptWindowStart], [Comment]) VALUES (N'e0656bf5-52dd-4d6b-a85a-733561eabf65', N'b09bbcde-9b3c-4dcd-b69e-67f615ce01e9', N'qOvF8m8F2IcWMvfOBjJYHmfLABc=', 1, N'OM5gu45RQuJ76itRvkSPFw==', NULL, N'', N'', NULL, NULL, 1, 0, CAST(0x00009C7E00B986EC AS DateTime), CAST(0x0000A30001519E04 AS DateTime), CAST(0x00009C7E00B986EC AS DateTime), CAST(0xFFFF2FB300000000 AS DateTime), 0, CAST(0xFFFF2FB300000000 AS DateTime), 0, CAST(0xFFFF2FB300000000 AS DateTime), N'Sitecore Administrator')
GO
INSERT [dbo].[aspnet_Profile] ([UserId], [PropertyNames], [PropertyValuesString], [PropertyValuesBinary], [LastUpdatedDate]) VALUES (N'b09bbcde-9b3c-4dcd-b69e-67f615ce01e9', N'IsAdministrator:S:0:4:Portrait:S:4:27:FullName:S:31:13:ProfileItemId:S:44:38:SerializedData:B:0:3875:', N'TruePeople/16x16/Astrologer.pngAdministrator{AE4C4969-5B7E-4B4E-9042-B2D8701CE214}', 0x0001000000FFFFFFFF01000000000000000401000000E20153797374656D2E436F6C6C656374696F6E732E47656E657269632E44696374696F6E61727960325B5B53797374656D2E537472696E672C206D73636F726C69622C2056657273696F6E3D342E302E302E302C2043756C747572653D6E65757472616C2C205075626C69634B6579546F6B656E3D623737613563353631393334653038395D2C5B53797374656D2E537472696E672C206D73636F726C69622C2056657273696F6E3D342E302E302E302C2043756C747572653D6E65757472616C2C205075626C69634B6579546F6B656E3D623737613563353631393334653038395D5D040000000756657273696F6E08436F6D7061726572084861736853697A650D4B657956616C756550616972730003000308920153797374656D2E436F6C6C656374696F6E732E47656E657269632E47656E65726963457175616C697479436F6D706172657260315B5B53797374656D2E537472696E672C206D73636F726C69622C2056657273696F6E3D342E302E302E302C2043756C747572653D6E65757472616C2C205075626C69634B6579546F6B656E3D623737613563353631393334653038395D5D08E60153797374656D2E436F6C6C656374696F6E732E47656E657269632E4B657956616C75655061697260325B5B53797374656D2E537472696E672C206D73636F726C69622C2056657273696F6E3D342E302E302E302C2043756C747572653D6E65757472616C2C205075626C69634B6579546F6B656E3D623737613563353631393334653038395D2C5B53797374656D2E537472696E672C206D73636F726C69622C2056657273696F6E3D342E302E302E302C2043756C747572653D6E65757472616C2C205075626C69634B6579546F6B656E3D623737613563353631393334653038395D5D5B5DCE00000009020000002500000009030000000402000000920153797374656D2E436F6C6C656374696F6E732E47656E657269632E47656E65726963457175616C697479436F6D706172657260315B5B53797374656D2E537472696E672C206D73636F726C69622C2056657273696F6E3D342E302E302E302C2043756C747572653D6E65757472616C2C205075626C69634B6579546F6B656E3D623737613563353631393334653038395D5D00000000070300000000010000001500000003E40153797374656D2E436F6C6C656374696F6E732E47656E657269632E4B657956616C75655061697260325B5B53797374656D2E537472696E672C206D73636F726C69622C2056657273696F6E3D342E302E302E302C2043756C747572653D6E65757472616C2C205075626C69634B6579546F6B656E3D623737613563353631393334653038395D2C5B53797374656D2E537472696E672C206D73636F726C69622C2056657273696F6E3D342E302E302E302C2043756C747572653D6E65757472616C2C205075626C69634B6579546F6B656E3D623737613563353631393334653038395D5D04FCFFFFFFE40153797374656D2E436F6C6C656374696F6E732E47656E657269632E4B657956616C75655061697260325B5B53797374656D2E537472696E672C206D73636F726C69622C2056657273696F6E3D342E302E302E302C2043756C747572653D6E65757472616C2C205075626C69634B6579546F6B656E3D623737613563353631393334653038395D2C5B53797374656D2E537472696E672C206D73636F726C69622C2056657273696F6E3D342E302E302E302C2043756C747572653D6E65757472616C2C205075626C69634B6579546F6B656E3D623737613563353631393334653038395D5D02000000036B65790576616C7565010106050000000957616C6C70617065720606000000312F73697465636F72652F7368656C6C2F7468656D65732F6261636B67726F756E64732F6C69676874686F7573652E6A706701F9FFFFFFFCFFFFFF06080000001357616C6C70617065724261636B67726F756E640609000000072330373333374301F6FFFFFFFCFFFFFF060B0000001157616C6C7061706572506F736974696F6E060C0000000643656E74657201F3FFFFFFFCFFFFFF060E0000001464696765737463726564656E7469616C68617368060F00000020373130373464333335653834393632396562616532383434656165333436306101F0FFFFFFFCFFFFFF06110000002164696765737463726564656E7469616C68617368776974686F7574646F6D61696E061200000020313961323764323333663534633962303930303764303533326634666464343301EDFFFFFFFCFFFFFF06140000001F2F73697465636F72655C61646D696E2F526962626F6E2F4D792053747269700615000000267B44333341303634312D394631432D343938342D383334322D3036353543334430463132337D01EAFFFFFFFCFFFFFF06170000000D5061636B616765722F46696C6506180000002F536D61727420546F6F6C7320204164642056657273696F6E20616E6420436F707920436F6E74656E7431302E7A697001E7FFFFFFFCFFFFFF061A000000372F73697465636F72655C61646D696E2F557365724F7074696F6E732E436F6E74656E74456469746F722E56697369626C65537472697073061B000000AC037B43334643454242392D463338462D344142342D383537462D4346433431354236413334327D7C7B44304643393944392D354336352D343341332D414342362D3434393544343446423045377D7C7B39324144453739322D363833462D343830442D413330412D3031433146314241414235337D7C7B46353142433531412D463541462D343144462D414431312D4630443142343846464339337D7C7B36353533363336462D453930342D344632442D423232322D3039304430413236323938437D7C7B34434636343731362D384238432D344142432D383643322D4639433546334646313132387D7C7B44363030433133392D393244372D343844452D424239462D3438313241334442394138427D7C7B34383936374331392D433338372D343534442D384544322D3536324446313430394430387D7C7B41454439354537452D383734412D344346302D393234422D3844443930464338443733307D7C7B33333645393943382D433435462D344342372D393133362D4339463846453830324538467D7C7B42423246424235352D454243382D343732342D394131462D3337424346454430333730447D01E4FFFFFFFCFFFFFF061D000000312F73697465636F72655C61646D696E2F436F6E74656E7420456469746F722F53656374696F6E732F436F6C6C6170736564061E0000000B517569636B496E666F3D3001E1FFFFFFFCFFFFFF0620000000232F73697465636F72655C61646D696E2F4D656469612F55706C6F616465644974656D730621000000E0043230313430323039543231303432342373697465636F72653A2F2F6D61737465722F7B44363441363142352D463836332D343634432D423534352D3045434639423637373141437D3F6C616E673D64652D4445267665723D317C73697465636F72653A2F2F6D61737465722F7B35413631433446392D363730322D343143352D424245422D3131393439453243453345467D3F6C616E673D64652D4445267665723D317C73697465636F72653A2F2F6D61737465722F7B31413033373138442D364338462D343732322D424332352D3635464539424245353839367D3F6C616E673D64652D4445267665723D317C73697465636F72653A2F2F6D61737465722F7B39464445464539452D343742332D343532392D394333332D3431394230333239314430467D3F6C616E673D64652D4445267665723D317C73697465636F72653A2F2F6D61737465722F7B38374530313239352D363545342D343943372D383939442D3544304441433744434534387D3F6C616E673D64652D4445267665723D317C73697465636F72653A2F2F6D61737465722F7B34393134424644442D303830392D344635302D413235332D3545423030353232454544337D3F6C616E673D64652D4445267665723D317C73697465636F72653A2F2F6D61737465722F7B42373138433944302D383636332D343746342D424635392D3245434443354633353038317D3F6C616E673D64652D4445267665723D317C73697465636F72653A2F2F6D61737465722F7B42443643364230462D304333382D344433432D393131322D3141444535443537434536347D3F6C616E673D64652D4445267665723D317C01DEFFFFFFFCFFFFFF0623000000212F73697465636F72655C61646D696E2F5075626C6973682F4C616E677561676573062400000002656E01DBFFFFFFFCFFFFFF06260000001F2F73697465636F72655C61646D696E2F5075626C6973682F546172676574730627000000267B38453038303632362D444443332D344546342D413144312D4630424534413230303235347D01D8FFFFFFFCFFFFFF06290000002A2F73697465636F72655C61646D696E2F5075626C6973682F496E6372656D656E74616C5075626C697368062A0000000566616C736501D5FFFFFFFCFFFFFF062C000000242F73697465636F72655C61646D696E2F5075626C6973682F536D6172745075626C697368092A00000001D2FFFFFFFCFFFFFF062F000000212F73697465636F72655C61646D696E2F5075626C6973682F52657075626C6973680630000000047472756501CFFFFFFFFCFFFFFF0632000000272F73697465636F72655C61646D696E2F5075626C6973682F5075626C6973684368696C6472656E093000000001CCFFFFFFFCFFFFFF0635000000282F73697465636F72655C61646D696E2F436F6E74656E7420456469746F722F4C616E67756167657306360000000B65742D45457C656E2D474201C9FFFFFFFCFFFFFF0638000000222F73697465636F72655C61646D696E2F4C69737476696577732F4974656D4C69737406390000000744657461696C7301C6FFFFFFFCFFFFFF063B0000001F2F73697465636F72655C61646D696E732F526563656E74557365724C697374063C0000001173697465636F72655C546573745573657201C3FFFFFFFCFFFFFF063E000000292F73697465636F72655C61646D696E2F486973746F72792F4164642E46726F6D2E54656D706C617465063F000000267B42463242384441322D334342412D343835442D384638352D3337383842384146424442467D01C0FFFFFFFCFFFFFF0641000000202F73697465636F72655C61646D696E2F486973746F72792F54656D706C6174650642000000267B42463242384441322D334342412D343835442D384638352D3337383842384146424442467D0B, CAST(0x0000A2F500D2B376 AS DateTime))
GO
INSERT [dbo].[aspnet_Users] ([ApplicationId], [UserId], [UserName], [LoweredUserName], [MobileAlias], [IsAnonymous], [LastActivityDate]) VALUES (N'e0656bf5-52dd-4d6b-a85a-733561eabf65', N'b09bbcde-9b3c-4dcd-b69e-67f615ce01e9', N'sitecore\Admin', N'sitecore\admin', NULL, 0, CAST(0x0000A3000151A230 AS DateTime))
GO

Umbraco ImageGen Razor Helper

With ImageGen for Umbraco you can automatically resize and cache images server side. I presume you already know ImageGen, why this guide won’t dig more into the concepts and functionality here for.

Instead I’ll show you how to make a Razor Helper, with a helper method which returns a processed image.
A Razor Helper is a helper class with methods you can use across your Razor Views.

1. Create a new .cshtml class and place it in /App_Code

2. Reference the following assemblies

@using System.Web.Mvc
@using umbraco.MacroEngines

3. Create the following helper method


@helper ImageGenNiceUrl(DynamicNode imageNode, int width, int height)
{
    //Get image with ImageGen and return just the URL with set width/height
    if (imageNode != null)
    {
        @MvcHtmlString.Create(String.Format("{0}{1}{2}{3}{4}{5}", "/ImageGen.ashx?image=", imageNode.NiceUrl, "&width=", width, "&height=", height))
    
    }
}

The method takes the parameters DynamicNode, width and height, and returns the image url as a string.
I assume you have ImageGen installed and placed ImageGen.ashx in the root of your website, otherwise change the first parameter in String.Format to the appropriate.
We need to use MvcHtmlString.Create, otherwise “&” will be returned as:

&

and ImageGen won’t recognize the parameters.

ImageGen supports several other parameters, so you can extend the method as desired. This is just to show you the basics.

Our helper method is now done, and we can use it in our Razor Views.

4. Example:

<img src="@LayoutHelper.ImageGenNiceUrl(currentNode.Media("imagePicker"), 128, 256)" />

currentNode reflects a DynamicNode, which contains a image picker with the property name “imagePicker”.
128 (width), 256 (height) is the proportions we want our image to be.

If you provide width and height with 0 value for both parameters, the image won’t be scaled. Providing 0 for just one of the parameters, will scale the opposite parameter.
You can choose to include

<img></img>

in your helper, but I prefer it this way, as it makes it very easy to extend with eg. class, data or other properties.

If you want to read more about Razor Helpers, check out this post by Scott Gu.

Umbraco Contour XSLT transformed mail with link

Umbraco Contour seem to have a bug when sending mail out with a file upload. You would expect to get a clickable link in the email, but instead Contour inserts the file location without domain – as plain text, making it rather useless. Of course you can see the uploaded file from “Entries” in Contour, but a better and expected UX would be to be able to click the link in the mail.

As for now, this can only be done by using the type “Send xslt transformed email” from “Workflows” in Contour. Using the below XSLT file will give you a clickable link with the filename, in your received email.

When creating a “Workflow”, simply choose the type “Send xslt transformed email” and choose the XSLT file below.

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:user="urn:my-scripts"
xmlns:umbraco.library="urn:umbraco.library"
exclude-result-prefixes="xsl msxsl user umbraco.library">
 
  <xsl:output method="html" media-type="text/html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
  doctype-system="DTD/xhtml1-strict.dtd"
  cdata-section-elements="script style"
  indent="yes"
  encoding="utf-8"/>
 
  <xsl:param name="records" />
 
  <xsl:template match="/">
    <table style="border-collapse:collapse;border:1px solid black;">
          <xsl:for-each select="$records//fields/child::*">
			<xsl:sort select="@sortorder" data-type="number"/>
           <tr style="border:1px solid black;">
                  <td valign="top" style="border:1px solid black;padding:5px;font-family:Verdana,Helvetica,Arial,sans-serif;font-size:11px;">
                      <strong>
                       <xsl:value-of select="./caption"/>
                      </strong>
                </td>
                <td valign="top" style="border:1px solid black;padding:5px;font-family:Verdana,Helvetica,Arial,sans-serif;font-size:11px;">
                      <xsl:choose>
                         <xsl:when test="contains(.//value, '/umbraco/plugins/umbracoContour/files/')">
                             <a href="http://{umbraco.library:RequestServerVariables('SERVER_NAME')}{.//value}">
								<xsl:value-of select="substring-after(substring-after(.//value, '/files/'), '/')"/>						 
                           </a>
                         </xsl:when>
                          <xsl:otherwise>
                              <xsl:for-each select="./values/value">
                                  <xsl:if test="position() &gt; 1">
                                   <br />
                                  </xsl:if>
                                <xsl:value-of select="umbraco.library:ReplaceLineBreaks(.)"/>
                           </xsl:for-each>
                          </xsl:otherwise>
                     </xsl:choose>
                  </td>
            </tr>
        </xsl:for-each>
      </table>
  </xsl:template>
</xsl:stylesheet>

https://gist.github.com/PaulSorensen/7983503

Check if member exist Umbraco C#

To check if a user exist in the Umbraco membership section, we use the ASP.NET Membership API.

var userName = "myUserName";
var memberExist = false;
 
if(Membership.GetUser(userName) != null)
{
    memberExist = true;
}

The SQL-Server database could not be opened Dynamicweb

Please wait!
The SQL-Server database could not be opened ('') - the error is:
System.Data.SqlClient.SqlException (0x80131904): Login failed for user ''.

Ever ran into this problem with Dynamicweb, and thought you had set up everything correctly?
Well, I had to set up IIS, SQL Server and a new local installation of Dynamicweb up on a new machine.

Installed IIS8 and SQL Server Express 2012.
I created a new website in IIS and pointed it to the application folder as well as a virtual directory for the files folder.
Edited files\GlobalSettings.aspx

<password>mypass</password>
<type>ms_sqlserver</type>
<username>myuser</username>
<database>mydatabase</database>
<sqlserver>.\sqlexpress</sqlserver>
<integratedsecurity>false</integratedsecurity>

I downloaded and restored the DefaultEmptyData8SQL.zip database from developer.dynamicweb-cms.com
Mapped “myuser” to the database and gave it following database roles: db_datareader, db_datawriter, db_ddladmin and public.

Even though, I still got this error.
One thing I forgot, was to enable “SQL Server and Windows Authentication mode”, as this was a new installation of SQL Server.

Here’s how to do it, if you didn’t enable it in the installation process:

Go into SQL Server Management Studio – Win+R type ssms [Enter]
Right click your SQL instance – mine is called “.\sqlexpress (SQl Server version number – User\PC-Name)
Click on “Properties”, Go into “Security” chose “SQL Server and Windows Authentication mode” and then click [Ok]

SQL Server and Windows Authentication Mode

You’ll need to restart your SQL Server for the changes to take effect:

Win+R – cmd [Enter]
Stop and start SQL Server (Express)

net stop mssq$sqlexpress
net start mssql$sqlexpress

Taadaa! :)

Display stock state & price DynamicWeb

Following markup and template tags will display stock state and price for an item in DynamicWeb eCommerce 8

<!--@If Defined(Ecom:Product:Stock.Text)-->
<div class="<!--@Ecom:Product:Stock.ID-->" id="productstock">
<h2><!--@Translate(stocheader, "Stock status")--></h2>
<span class="stocktext" style="display:block"><!--@Ecom:Product:Stock.Text-->: <img src="<!--@Ecom:Product:Stock.Image.Clean--/>" alt="" /></span>
<span class="stockdeliverytext">Delivery time: <!--@Ecom:Product:Stock.DeliveryText--> <!--@Ecom:Product:Stock.DeliveryUnit--></span>
<span style="display:block"><!--@Ecom:Product.Price--></span>
</div>
<!--@EndIf(Ecom:Product:Stock.Text)-->

W3C Validator: #call_to_action h4{padding:0px 5px;}

I was checking this site with W3C Validator, and got the error:

<strong>Element style not allowed as child of element div in this context. (Suppressing further errors from this subtree.)</strong>

<style type="text/css">#call_to_action h4{padding:0px 5px;}</style>

<div><dl><dt>Contexts in which element <a href="http://dev.w3.org/html5/spec-author-view/#the-style-element">style</a> may be used:</dt><dd>If the <a href="http://dev.w3.org/html5/spec-author-view/#attr-style-scoped">scoped</a> attribute is absent: where <a href="http://dev.w3.org/html5/spec-author-view/#metadata-content">metadata content</a> is expected.</dd><dd>If the <a href="http://dev.w3.org/html5/spec-author-view/#attr-style-scoped">scoped</a> attribute is absent: in a <a href="http://dev.w3.org/html5/spec-author-view/#the-noscript-element">noscript</a> element that is a child of a <a href="http://dev.w3.org/html5/spec-author-view/#the-head-element">head</a> element.</dd><dd>If the <a href="http://dev.w3.org/html5/spec-author-view/#attr-style-scoped">scoped</a> attribute is present: where <a href="http://dev.w3.org/html5/spec-author-view/#flow-content">flow content</a> is expected, but before any other <a href="http://dev.w3.org/html5/spec-author-view/#flow-content">flow content</a> other than <a href="http://dev.w3.org/html5/spec-author-view/#inter-element-whitespace">inter-element whitespace</a>, and not as the child of an element whose content model is <a href="http://dev.w3.org/html5/spec-author-view/#transparent">transparent</a>.</dd><dt>Content model for element <a href="http://dev.w3.org/html5/spec-author-view/#the-div-element">div</a>:</dt><dd><a href="http://dev.w3.org/html5/spec-author-view/#flow-content">Flow content</a>.</dd></dl></div>

After some digging around, I found out it was the plugin Social Essentials which was causing these errors. A WordPress pluging for sharing your posts to social networks.

For now I’ll be using Simple Social Sharing, till I might find a better alternative.

Umbraco 3.0.6 to 4.7.1.1 Upgrade

As I have been struggling with upgrading Umbraco 3.0.6 to 4.7.1.1, I thought I would post a small guide for later use, as I most likely have to go through this again.

Please be aware of this guide is for Umbraco 3.0.6 to 4.7.1.1
Upgrading from prior version of Umbraco, vil require you to upgrade to 3.0.6 first.

1. Take backup of your binaries and database!

2. Upgrade from Umbraco 3 > 4.0.4.2 (upgrading from 3 > 4.7 will make the upgrade stall at 20%)
2.1 Download the binaries and extract them to your Umbraco dir
Note: Umbraco 3 and 4.0.4.2 must both run on ASP.NET 2.0 Classic Application Pools

Umbraco 4.0.4.2: http://umbraco.codeplex.com/releases/view/37337
Umbraco 4.7.1.1: http://umbraco.codeplex.com/releases/view/73692

3. Upgrade from Umbraco 4.0.4.2 > 4.7.1.1
3.1 Download the binaries and extract them to your Umbraco dir
3.2 Run your site and a automated upgrade will start – looking just like the normal Umbraco 4.7 installation
Note: Change Application Pool to ASP.NET 4.0 (Integrated pipeline mode) before you run the upgrade

Umbraco install screen

4. XML schemes
Umbraco 4.5 and forth uses a new XML shcema, therefor you have to make sure it’s enabled
in /config/umbracoSettings.config

<!-- to enable new content schema, this needs to be false -->
false

Love the double meaning aye? ;)

5. Passwords
Version prior to Umbraco 4 used clear typed passwords – therefor your old passwords are stored as clear type in the database.
Umbraco 4.7 however uses hashed passwords, but because your passwords are stored in clear type, we have to enable the feature
in web.config.

Set both the “UmbracoMembershipProvider” and “UsersMembershipProvider” to passwordFormat=”Clear” like shown below

6. If you are using XSLT, which you probably are, since Razor first got introduced in Umbraco 4.7, you have to manually
go through your scrips and and change them to fit the new schema. There are some scripts out there which can help you, but
they don’t work 100%.
I have been lucky though, to get _some_ of my XSLT convertet to the new schema with “XsltUpdater for Umbraco
Use at your own risk – if you dare. ;)

Reference about the new chages:
http://our.umbraco.org/wiki/reference/xslt/45-xml-schema

7. Republishing
Now log in to your Umbraco installation http://site.com/umbraco/

Go through all your nodes and republish them (don’t just hit republish entire site, or it won’t work and you probably will break something)
This step is important to make all your XSLT work again with the new schema.
Please note that you most likely will loose some relations and sort orders in tabs, but not more than it’s pretty fast to fix.

/Paul Sørensen

The create dialog for “Media” does not match anything defined in the “~/umbraco/config/create/UI.xml”

After upgrading an Umbraco installation from 3.0 to 4.7.1.1, I got the error:

"The create dialog for "Media" does not match anything defined in the "~/umbraco/config/create/UI.xml" while trying to upload images.

To fix this, simply open UI.xml located in: /umbraco/config/create/
Search for:

<nodetype alias="media"></nodetype>

and rename it to uppercase:

<nodetype alias="Media"></nodetype>

Restart IIS and problem should be solved.

The create dialog for Media...