<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Brain Lava</title>
	
	<link>http://brainlava.com</link>
	<description>Thoughts on WordPress &amp; SharePoint Branding</description>
	<lastBuildDate>Mon, 06 Feb 2012 13:57:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/BrainLava" /><feedburner:info uri="brainlava" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Fix for SharePoint 2010 scrolling problems for Chrome, iOS4 &amp; Android</title>
		<link>http://feedproxy.google.com/~r/BrainLava/~3/mrtxRkCiUAs/</link>
		<comments>http://brainlava.com/fix-for-sharepoint-2010-scrolling-for-chrome-ios4-android/#comments</comments>
		<pubDate>Mon, 06 Feb 2012 00:37:52 +0000</pubDate>
		<dc:creator>nicole</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[anonymous users]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[downloads]]></category>
		<category><![CDATA[google chrome]]></category>
		<category><![CDATA[iOS4]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[masterpage]]></category>
		<category><![CDATA[scrolling]]></category>
		<category><![CDATA[sharepoint]]></category>
		<category><![CDATA[sharepoint 2010]]></category>
		<category><![CDATA[sharepoint ribbon]]></category>
		<category><![CDATA[tips & tricks]]></category>

		<guid isPermaLink="false">http://brainlava.com/?p=97</guid>
		<description><![CDATA[The other day a public facing website that had been built upon the SharePoint 2010 platform was experiencing some scrolling issues. After a date with Google and a few furrowed brows, I crafted a hybrid solution of my own that worked best for my particular scenario. The Problem Scrolling did not work when visiting the [...]]]></description>
			<content:encoded><![CDATA[<p>The other day a public facing website that had been built upon the SharePoint 2010 platform was experiencing some scrolling issues. After a date with Google and a few furrowed brows, I crafted a hybrid solution of my own that worked best for my particular scenario.</p>
<h2>The Problem</h2>
<p>Scrolling did not work when visiting the site using:</p>
<ul>
<li>Google Chrome</li>
<li>An iPad or iPhone that was running iOS4</li>
<li>Google Android phones</li>
</ul>
<h2>The Solution</h2>
<p>I was able to identify that the source of these scrolling issues was due to the manner in which the static placement of the SharePoint 2010 &#8220;Ribbon&#8221; was implemented. Essentially the default browser scrolling behaviour has been overridden and replaced with a JavaScript solution that has a few problems. While I appreciate the improved authoring experience that the static ribbon provides for content authors, it serves no purpose for anonymous visitors to the site. </p>
<p>Below is what I did to hide the ribbon control, and override the JavaScript scroll bar if you are an anonymous visitor. </p>
<p>Let&#8217;s just jump right in, shall we? </p>
<blockquote><p>Psst&#8230;If you don&#8217;t care about the <strong><em>&#8220;why?&#8221;</em></strong> and just want the final solution go ahead and <a href="http://brainlava.com/admin/wp-content/uploads/v4-NoRibbonAnon.master" target="_blank">download my updated v4.master</a>.</p></blockquote>
<h3>Step 1: Right above the closing head tag you want to place the following LoginView snippet.</h3>
<p><strong>Why?</strong> Because we want to override the body.v4master { overflow: hidden; } default SharePoint declaration but only for anonymous users.</p>
<pre class="brush: xml; title: ; notranslate">
     &lt;asp:LoginView id=&quot;LoginView&quot; runat=&quot;server&quot;&gt;
          &lt;AnonymousTemplate&gt;
               &lt;style type=&quot;text/css&quot;&gt;
                    body.v4master { overflow:auto; }
               &lt;/style&gt;
          &lt;/AnonymousTemplate&gt;
     &lt;/asp:LoginView&gt;
</pre>
<h3>Step 2: Remove that pesky scroll=&#8221;no&#8221; on the body tag.</h3>
<p><strong>Why?</strong> Because if we don&#8217;t then we will not be able to scroll on IE7.</p>
<p><strong>Look for this:</strong></p>
<pre class="brush: xml; title: ; notranslate">
&lt;body scroll=&quot;no&quot; onload=&quot;if (typeof(_spBodyOnLoadWrapper) != 'undefined') _spBodyOnLoadWrapper();&quot; class=&quot;v4master&quot;&gt;
</pre>
<p><strong>And replace with this:</strong></p>
<pre class="brush: xml; title: ; notranslate">
&lt;body onload=&quot;if (typeof(_spBodyOnLoadWrapper) != 'undefined') _spBodyOnLoadWrapper();&quot; class=&quot;v4master&quot;&gt;
</pre>
<h3>Step 3: Hide the Ribbon Control so it only appear when the user has the ability to add or remove personal Web Parts on a Web Part Page.</h3>
<p><strong>Why?</strong> I do not want the ribbon control to load unless the user is logged in. I tried using the AnonymousTemplate logic above but it created some other issues which will be a follow up post.</p>
<p><strong>Security Trimmed Control, Permissions &#8230; What?</strong> Yeah I thought the same thing the first time I discovered this control. You can read more about the different built-in permissions available in SharePoint Foundation over here: <a href="http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spbasepermissions.aspx" target="_blank">SPBasePermissions Enumeration</a>. It&#8217;s worth your time to take a look.</p>
<p><strong>Look for the id=&#8221;s4-ribbonrow&#8221; and include the SharePoint:SPSecurityTrimmedControl above it: </strong></p>
<pre class="brush: xml; title: ; notranslate">
&lt;Sharepoint:SPSecurityTrimmedControl runat=&quot;server&quot; Permissions=&quot;AddDelPrivateWebParts&quot;&gt;
     &lt;div id=&quot;s4-ribbonrow&quot; class=&quot;s4-pr s4-ribbonrowhidetitle&quot;&gt;
          &lt;div id=&quot;s4-ribboncont&quot;&gt;
</pre>
<p><strong>Now to close the tag look for the closing #s4-ribbonrow div tag, and add the closing SharePoint:SPSecurityTrimmedControl tag.</strong></p>
<pre class="brush: xml; title: ; notranslate">
                    &lt;Triggers&gt;
                         &lt;asp:PostBackTrigger ControlID=&quot;WebPartAdder&quot; /&gt;
                    &lt;/Triggers&gt;
               &lt;/asp:UpdatePanel&gt;
          &lt;/div&gt;
     &lt;/div&gt;
&lt;/SharePoint:SPSecurityTrimmedControl&gt;
</pre>
<h3>Step 4: Only display the the #s4-workspace div if the user is logged in.</h3>
<p><strong>Why?</strong> Because through JavaScript SharePoint adds an inline height and width to this div that is then referenced in their scrollbar JavaScript code. In my solution I did not need, or want it, for Anonymous visitors.</p>
<p><strong>NOTE:</strong> The opening and close #s4-workspace divs will now appear yellow because the MasterPage will not be able to see that they are in fact matching tags. Do not worry though because once the page renders for the visitor, everything will work just fine.</p>
<p><strong>Search for div that has id=&#8221;s4-workspace&#8221; and replace it with the code below.</strong></p>
<pre class="brush: xml; title: ; notranslate">
&lt;asp:LoginView runat=&quot;server&quot;&gt;
     &lt;LoggedInTemplate&gt;
          &lt;div id=&quot;s4-workspace&quot;&gt;
     &lt;/LoggedInTemplate&gt;
&lt;/asp:LoginView&gt;
</pre>
<p><strong>Search for the closing #s4-workspace div and replace it with the code below.</strong></p>
<pre class="brush: xml; title: ; notranslate">
&lt;asp:LoginView runat=&quot;server&quot;&gt;
     &lt;LoggedInTemplate&gt;
          &lt;/div&gt;
     &lt;/LoggedInTemplate&gt;
&lt;/asp:LoginView&gt;
</pre>
<h3>Step 5: <a href="http://brainlava.com/admin/wp-content/uploads/v4-NoRibbonAnon.master" target="_blank">Download my updated v4.master</a> with all the changes described above.</h3>
<h2>Caveats</h2>
<p>While this solution worked for my scenario, I obviously can not promise it will work for you. I did notice one issue of a double scroll bar if a content author accessed the the site using IE7. This particular authoring scenario was not a requirement and the client agreed it was an acceptable trade off.</p>
<p>I also wanted to thank the people that took the time to create their own tutorials that helped me with my own solution.</p>
<ul>
<li><a href="http://www.topsharepoint.com/hide-the-ribbon-from-anonymous-users" target="_blank">Hiding the SharePoint Ribbon from Anonymous Users</a></li>
<li><a href="http://kyleschaeffer.com/sharepoint/sharepoint-2010-scrolling/" target="_blank">SharePoint 2010 Scrolling</a></li>
<li><a href="http://www.siolon.com/blog/hiding-the-sharepoint-ribbon-from-anonymous-users/" target="_blank">Hide the Ribbon from Anonymous Users</a></li>
</ul>
<p>Cheers!</p>
<img src="http://feeds.feedburner.com/~r/BrainLava/~4/mrtxRkCiUAs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://brainlava.com/fix-for-sharepoint-2010-scrolling-for-chrome-ios4-android/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://brainlava.com/fix-for-sharepoint-2010-scrolling-for-chrome-ios4-android/</feedburner:origLink></item>
		<item>
		<title>Summary Link Web Part: Is it worth the code bloat?</title>
		<link>http://feedproxy.google.com/~r/BrainLava/~3/zGs_D_BrQPA/</link>
		<comments>http://brainlava.com/summary-link-web-part-is-it-worth-the-code-bloat/#comments</comments>
		<pubDate>Mon, 02 Jan 2012 19:45:06 +0000</pubDate>
		<dc:creator>nicole</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[MOSS]]></category>
		<category><![CDATA[sharepoint]]></category>
		<category><![CDATA[SharePoint 2007]]></category>
		<category><![CDATA[sharepoint 2010]]></category>
		<category><![CDATA[summary link]]></category>
		<category><![CDATA[thoughts]]></category>
		<category><![CDATA[web parts]]></category>

		<guid isPermaLink="false">http://brainlava.com/?p=55</guid>
		<description><![CDATA[Sometimes as a SharePoint front-end developer you have to sacrifice the desire for the leanest code possible in order to create a better authoring experience. Take for example the common requirement for authors to add Quick Links to a page. The Summary Link Web Part is perfect for this task but I would often overlook [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-medium wp-image-86" style="float: left; margin-right: 10px;" title="Summary-Link-Webpart" src="http://brainlava.com/admin/wp-content/uploads/Summary-Link-Webpart-300x137.jpg" alt="" width="300" height="137" />Sometimes as a SharePoint front-end developer you have to sacrifice the desire for the leanest code possible in order to create a better authoring experience. Take for example the common requirement for authors to add Quick Links to a page. The Summary Link Web Part is perfect for this task but I would often overlook it because it generates unnecessary HTML. Instead, if a stylized list was required, I would create a Reusable Content snippet or a custom style that would appear in the Styles drop down. It kept my code nice and clean and I thought both options were relatively easy to use.</p>
<p>Well, I was not entirely correct on that last assumption. Sure they might be easy if the author has a basic understanding of HTML, but without that knowledge these methods can become frustrating. At some point the author will perform an unexpected keystroke in the rich text editor, causing something to go awry. Maybe it&#8217;s an odd line break or a tag that will not seem to close. At that point they can delete what they have done and start again, or look at the HTML and see if they can track down the issue. For an author that only wants to have the page published as soon as possible, both options could be time consuming and less than desirable.</p>
<p>This is where the Summary Link Web Part comes into play. I find myself leveraging this particular web part much more often, spending the time to ensure that all the built in styles work with the overall design of the site.  This gives the author many more options to add stylized links to the page without having to fiddle with any code. They simply fill out the fields in the add new link dialog and click OK. They can also easily group and reorder links without having to deal with the mess that can happen when you copy and paste in a rich text editor.</p>
<p>Does the bloated mark-up still bother me? Sure it does, but when I train authors and see how much easier it is for them to use this web part compared to watching them struggle with code snippets, I feel the trade off is acceptable.</p>
<p>Interested in seeing what the Summary Link Web Part can do? Check out Microsoft&#8217;s &#8220;<a href="http://office.microsoft.com/en-us/sharepoint-server-help/use-and-configure-a-summary-link-web-part-or-a-summary-link-field-control-HA010155168.aspx" target="_blank">Use and configure a Summary Link Web Part or a Summary Link field control</a>&#8221; article for a step by step explanation on how to use its functions.</p>
<img src="http://feeds.feedburner.com/~r/BrainLava/~4/zGs_D_BrQPA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://brainlava.com/summary-link-web-part-is-it-worth-the-code-bloat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://brainlava.com/summary-link-web-part-is-it-worth-the-code-bloat/</feedburner:origLink></item>
		<item>
		<title>Google Analytics: Mobile Screen Resolutions</title>
		<link>http://feedproxy.google.com/~r/BrainLava/~3/30wxGVrBRLc/</link>
		<comments>http://brainlava.com/google-analytics-mobile-screen-resolutions/#comments</comments>
		<pubDate>Thu, 29 Dec 2011 06:58:59 +0000</pubDate>
		<dc:creator>nicole</dc:creator>
				<category><![CDATA[Google Anatlytics]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[google analytics]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[screen resolution]]></category>

		<guid isPermaLink="false">http://brainlava.com/?p=41</guid>
		<description><![CDATA[I mentioned in my previous post that I had a plan to work on a mobile site for Brain Lava. Well, the next day I created some alternate CSS using the CSS3 media queries. It was working fine both in portrait and landscape mode for my iPhone but when I tested it against a friend&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>I mentioned in my previous post that I had a plan to work on a mobile site for Brain Lava. Well, the next day I created some alternate CSS using the CSS3 media queries. It was working fine both in portrait and landscape mode for my iPhone but when I tested it against a friend&#8217;s Android I was surprised that it was not picking up the mobile view of the site when in landscape mode. To troubleshoot the issue, and potentially avoid the same issue with other devices, I wanted to know the screen resolutions for the mobile devices that were visiting my site so I headed over to Google Analytics.</p>
<p>After a bit of time wading through the Google Analytics interface, I was abashed to admit that I could not find the stats for screen resolutions anywhere. So, the next day I asked my workmates for some help and after a bit of time clicking around <a href="https://twitter.com/#!/prbnsn" target="_blank">Pete</a> was able to help me track down how to display the screen resolutions for mobile. I thought I would share it in case someone else found locating this information a bit frustrating.</p>
<h3>Step 1</h3>
<p>In the left hand panel of the Google Analytics Dashboard select the &#8220;<strong>Devices&#8221;</strong> section located under &#8220;<strong>AUDIENCE</strong> &gt; <strong>Mobile</strong>&#8221;</p>
<p style="text-align: center;"><img class="size-full wp-image-46 aligncenter" title="Google Analytics: Mobile View" src="http://brainlava.com/admin/wp-content/uploads/2011/12/Screen-shot-2011-12-29-at-1.37.31-AM.png" alt="" width="224" height="469" /></p>
<p>&nbsp;</p>
<h3>Step 2</h3>
<p>Click on the <strong>&#8220;Select&#8221;</strong> drop down beside the Secondary dimension label. Expand the <strong>&#8220;Technology&#8221;</strong> heading and select <strong>&#8220;Screen Resolution&#8221;</strong></p>
<p><strong></strong><br />
<img class="aligncenter size-full wp-image-50" title="Google Analytics: Mobile Screen Resolution" src="http://brainlava.com/admin/wp-content/uploads/2011/12/Screen-shot-2011-12-29-at-1.43.45-AM.png" alt="" width="481" height="333" /></p>
<h3>Step 3</h3>
<p>Well there is no Step 3 to be honest except to maybe go and treat yourself to something nice for working so hard.</p>
<img src="http://feeds.feedburner.com/~r/BrainLava/~4/30wxGVrBRLc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://brainlava.com/google-analytics-mobile-screen-resolutions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://brainlava.com/google-analytics-mobile-screen-resolutions/</feedburner:origLink></item>
		<item>
		<title>Welcome to Brain Lava!</title>
		<link>http://feedproxy.google.com/~r/BrainLava/~3/wxCU9k-peeo/</link>
		<comments>http://brainlava.com/welcome-to-brain-lava/#comments</comments>
		<pubDate>Tue, 13 Dec 2011 04:45:56 +0000</pubDate>
		<dc:creator>nicole</dc:creator>
				<category><![CDATA[Random]]></category>
		<category><![CDATA[a start]]></category>

		<guid isPermaLink="false">http://brainlava.com/admin/?p=1</guid>
		<description><![CDATA[I will admit it, this site has been a very long time coming. Brain Lava is a domain that I registered many moons ago with the idea that I wanted it to be a place where I could share my technical thoughts. Over the years, however, I never seemed to find the time to create [...]]]></description>
			<content:encoded><![CDATA[<p>I will admit it, this site has been a very long time coming. Brain Lava is a domain that I registered many moons ago with the idea that I wanted it to be a place where I could share my technical thoughts. Over the years, however, I never seemed to find the time to create a design for the site and, so it sat, collecting virtual dust with an incredibly lame &#8220;Coming Soon&#8221; page. I did have a great logo though, created by my talented husband, and artist, <a href="http://ghoulishgary.com/" title="Ghoulish Gary Pullin" target="_blank">Gary Pullin</a>. </p>
<p>Well last weekend I decided to do something about it. I gave myself a deadline last Saturday to design and implement a site by this Sunday. Well it&#8217;s Sunday night and I am pretty excited to say that I met my goal! Despite the holiday parties, decorating the apartment, christmas shopping and several get together&#8217;s with friends, I was able to carve out enough time to complete the mini project.</p>
<p>I have a few things that I am still hoping to iron out, images I want to combine, and a mobile site to create. Overall though I am happy to finally have Brain Lava up and running. A friend once said it&#8217;s OK if the beginning is not perfect&#8230;at least it is a beginning.</p>
<img src="http://feeds.feedburner.com/~r/BrainLava/~4/wxCU9k-peeo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://brainlava.com/welcome-to-brain-lava/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://brainlava.com/welcome-to-brain-lava/</feedburner:origLink></item>
	</channel>
</rss>

