Posts in Category: Development

New Extensible Profile System in svn

I just committed the new Extensible Profile System to svn branches/2.x

Anyone who can help test before the release, it would be greatly appreciated. Post in the forums if you have any difficulty or questions.

With this feature, user profile properties are specified in mojoProfile.config file, you can totally customize what properties show up on the user profile page and you can also specify properties that are required for Registration on the site. You can specify any System data type that can be serialized as a string. Boolean properties will be rendered as checkboxes, all other types will be rendered as a textbox. It is also possible to configure dropdown lists, see the Gender property in mojoProfile.config for example syntax:
<add    name="Gender"
                type="System.String"
                allowMarkup="false" 
                labelResourceKey="GenderLabel"
                lazyLoad="false"
                requiredForRegistration="false"
                readOnly="false"
                allowAnonymous="false"
                visibleToAnonymous="false"
                visibleToAuthenticated="true"
                visibleToUser="true"
                editableByUser="true"
                regexValidationExpression=""
                validationErrorResourceKey=""
                onlyAvailableForRoles=""
                defaultValue=""
                includeHelpLink="true"
                >
            <OptionList>
                <Option value="" TextResourceKey="GenderUnselectedLabel"></Option>
                <Option value="M" TextResourceKey="GenderMaleLabel"></Option>
                <Option value="F" TextResourceKey="GenderFemaleLabel"></Option>
                <Option value="T" TextResourceKey="missingkeytest"></Option>
            </OptionList>
        </add>

I'll be working on documentation for this new feature tomorrow, so more to come, but I'm hoping some brave developers will jump right in and try it out.

Update 1/5/2007: I've just completed the documentation for this feature here, let me know if there is anything unclear or any feedback for improving the documentation or the feature itself.

Browser specific bug in Search

I just got a bug report about getting an error page on this site when trying to use the search feature. After looking into it, I cannot reproduce the problem using the latest Firefox browser, but with IE7 I get an error page 100% of the time.

I no longer have a machine running IE6 so I don't know if its just IE7 or not. If anyone out there has IE6 and can confirm if this error happens using it or not I would appreciate it. Anyone who finds this error does happen for them in Firefox please let me know, but so far it doesn't happen for me except in IE7.

Update: I also am not able to replicate this bug in IE7 using my local machine http://localhost/mojoportal/

Weird.

Thanks,

Joe

Update Again: In IE7 the error happens I think partly because of the cross page postback from the SearchInput control to SearchResults.aspx. Even more odd, is if I go straight to the page http://www.mojoportal.com/SearchResults.aspx and do a search with IE7 I get no error, but I also get no results.

Update Problem Solved:
It turns out that the cause of this was a little script I placed in my skin from Technorati that was supposed to just link to my technorati profile. Even though I saved my settings on technorati to not include their blog search button it was still doing it. Removing their script fixed the problem that was happening in IE when trying to do search on this site.

Significant Namespace changes in svn/branches/2.x

Heads up to those working from svn and those who have developed their own custom features.

I've done some major re-organization of namespaces that will require changes to custom modules/features you have developed (outside of mjoPortal svn) in order to keep in sync with the newest/next versions of mojoPortal

If you get branches/2.x and test your custom features you will find some things broken due to the namespace changes. The functionality has not been removed, just moved so if you have any trouble finding the new methods post in the forums and I will try to help.

Some of the changes include, moving SiteUtils out of mojoPortal.Business into mojoPortal.Web and moving some of its functionality into WebUtils in a new project mojoPortal.Web.Framework

The main goal of the changes was to remove the reference from mojoPortal.Business to System.Web and to organize things a little more. While namespace changes can be painful for those with custom features I think that these changes will be very beneficial in the long run and I will be happy to help anyone with the needed changes in their own libraries.

Because some of the business objects need some web specific extensions I created another class library project:
mojoPortal.Business.WebHelpers
which provides things like caching support and other extensions that require a reference to System.Web
These are the things that previously were in mojoPortal.Business and needed the reference to System.Web

I also added a class library:
mojoPortal.Web.Framework
where I have moved functionality that s useful to any web application, this library has no reference to mojoPortal.Business

A few key changes:
SiteUtils.GetCurrentSiteSettings() is now CacheHelper.GetCurrentSiteSettings()
SiteUtils.GetCurrentPage() is now CacheHelper.GetCurrentPage()
SiteUser.IsInRoles(...) is now WebUser.IsInRoles(...)
SiteUser.IsInRole(...) is now WebUser.IsInRole(...)

After some more testing I will likely make a new release of mojoPortal to get these changes out before making any changes that require db schema changes

Any help from the community in testing branches/2.x before the release is greatly encouraged and appreciated.

Anonymous Checkout From Subversion is Working Again

For anyone who has been having trouble with anonymous checkout from svn, it is finally working again.

There was a major outage last week and it took a while to get everything configured again but as of now everything seems to be working as it should.

Joe

Now from Charlotte, NC

I've completed my move to Charlotte. Still doing some unpacking and settling in but I have my machines all up and running and getting back to some mojoPortal development. I still haven't closed on my house in TN so I have to go back probably for a day sometime next week.

I'm still currently working full time for Integration Management of Brentwood TN until November 15. After that I will still be doing some work for them but mainly launching Source Tree Solutions so I can devote more time to advancing mojoPortal. I'm very excited and full of ideas to take mojoPortal to the next level.

Wish I could have made it up to the Mono Meeting but at least got to watch some of it thanks to the guys at Mono-Cast.