Archive for August 2008

Aug 17

Soul Glo mp3

25 comments - Post a comment

I found this in my itunes playlist today.

Soul Glo mp3

Whats up? Url rewriting is a pretty cool thing to have. [especially when people ask you for it] There’s a lot of requests by people who want to implement full on url rewriting or extension less urls in SharePoint 2007. After messing around for a little bit it, I came up with a good way to do it. When I was looking for examples on the web there were a lot of people saying that it couldnt be done. I thought, wtf, serial? But in the end it actually didn’t take much to implement it. Here’s an HttpModule that I wrote to do the work.

The key pieces are the this.app.BeginRequest += new EventHandler(app_BeginRequest) which
steps in front of the request and allows the module to get its redirect on.

And HttpContext.Current.RewritePath(redirect, false); will push the necessary headers n such forward so that the receiving .aspx page will understand how to correctly post back.

using System;
using System.Data;
using System.Data.SqlClient;
using System.Reflection;
using System.Collections;
using System.Text;
using System.Web;
using System.Web.Caching;
using System.Web.SessionState;
using System.Security.Cryptography;
using System.Configuration;
using System.Threading;
using System.IO;
using System.Security;
using System.Security.Principal;

namespace ScaredPanda
{
    public sealed class RewriteHttpModule : IHttpModule
    {
        HttpApplication app = null;
        ///
        /// Initializes the httpmodule
        ///
        public void Init(HttpApplication httpapp)
        {
            this.app = httpapp;
            this.app.BeginRequest += new EventHandler(app_BeginRequest);
        }

        public void app_BeginRequest(Object s, EventArgs e)
        {
            try
            {
		//determine if the income request is a url that we wish to rewrite.
		//in this case we are looking for an extension-less request
                string url = HttpContext.Current.Request.RawUrl.Trim();
                if (url != string.Empty
                    && url != "/"
                    && !url.EndsWith("/pages")
                    && !url.Contains(".aspx")
                    && url.IndexOf("/", 1) == -1)
                {
                    //this will build out the the new url that the user is redirected
                    //to ie pandas.aspx?pandaID=123
                    string redirect = ReturnRedirectUrl(url.Replace("/", ""));

		    //if you do a HttpContext.Current.RewritePath without the 'false' parameter,
                    //the receiving sharepoint page will not handle post backs correctly
		    //this is extremely useful in situations where users/admins will be doing a
                   //'site actions'  event
                   HttpContext.Current.RewritePath(redirect, false);
                }
            }
            catch (Exception ex)
            {
                //rubbish
            }
        }
    }
}

A couple weeks ago we had some super amazing seats to the FC Barcelona vs Chivas de Guadalajara match at Soldier Field in Chicago. These are some of the pictures from the match that FC Barca ended up winning 5-2.

FC Barcelona vs Chivas
FC Barcelona vs Chivas
FC Barcelona vs Chivas
FC Barcelona vs Chivas
FC Barcelona vs Chivas
FC Barcelona vs ChivasBarca and Chivas walking onto the pitch
FC Barcelona vs Chivas

    Tere! Scrrd panda - a place for my friends and family to see what i'm up to; and an occasional code post.
  • 89.3 The Current

  • recently written

  • categories

  • Archive