Property Center is tenant friendly!

I just completed updating Property Center with a couple new features.  This update most notably allows tenants to request user accounts.  Tenant user accounts allow tenants to log in to your website to add maintenance requests, view their maintenance request history, check their current balance, and view their lease history (including payments/fees). 

By default, Property Center turns on anonymous maintenance requests and tenant user account requests.  As always, Property Center is very configurable and allows you to turn off tenant user account requests and/or anonymous maintenance requests.  So it’s simple to facilitate these additional cases:

  • You can set up Property Center so that tenants have to log in to request maintenance.
  • You can configure Property Center so that tenants cannot log in, but anyone can request maintenance.
  • You can set up Property Center so that tenants cannot request user accounts and anonymous maintenance requests are disabled.

These are all of the changes made with this update:

Additions

  • Tenants can be assigned to user accounts. This allows tenants to
    log in to perform certain tasks not available to anonymous users. You
    can assign roles to these accounts just like any other user account.
    They also have special permissions:

    • They’re able to view lease information and lease transactions only for leases assigned to them.
    • They cannot view other users in the system.
  • Maintenance requests can be requested anonymously or with a tenant user account.
  • Email addresses are validated properly throughout the system.
  • Added additional name templates for generated units (add a new property page)
  • Export as pdf menu item added to the account invoices action menu

Changes

  • Vacant unit counts on the map where changed slightly. Red unit
    counts were hard to see on the orange background, so they were changed
    to black.

Bug Fixes

  • Fixed the vacant unit count color on the property details window
    in the map view. It used to show a green count if there were vacant
    units. Now it correctly shows the count as red.
  • Fixed custom appearance render bug with IE 6

MS releases fix for Vista

This amazes me… 

Microsoft has announced “Windows Vista” was actually a new type of computer virus created by disgruntled employees.  This new type of virus became so popular throughout Microsoft, that was mistakenly put on cds and shipped to customers.  Please be aware that “Windows Vista” is not a Microsoft supported operating system and rather a complex computer virus.  The virus apparently affects RAM usage and general PC performance.  Microsoft has provided a download to fix the problem.  Users with slower connections can contact Microsoft directly to order the cd.

Via MS PressPass 

Nested repeater performance [Resolved]

After failing to receive and answer in the newsgroups and forums, for my nested repeater performance issue, I contacted ScottGu directly.  He didn’t seem sure of what was happening either, so he forwarded the info to a co-worker.  Polita answered:

The repeater calls databind on all its item children in the
ItemDataBound event. So the inner repeater is databound once by the
outer databound, and once by you in your Outer_ItemCreated event
handler. To make the inner repeater bind just once, remove the call to
DataBind in Outer_ItemCreated.

So, it’s not a bug on the asp.net side of things… just in the way fuzzy logic flows through my brain.  Either way, knowing this isn’t a bug and is easily remedied is a nice feeling… Thanks Scott and Polita for clearing this up!
 

xsd.exe fails with statements

I wanted to generate some classes from two related schemas tonight, and unfortunately xsd.exe failed.  It didn’t seem to recognize the <xsd:import> statement in the main xsd file.  Apparently the schemaLocation attribute is considered a hint and is not in the spec.  so… MS doesn’t recognize it.  Anyway, in order to get xsd.exe to work properly, you just have to specify all of the files as parameters. 

So instead of something like

xsd.exe MyParent.xsd /c

I had to use

xsd.exe MyChild.xsd MyParent.xsd /c

Lovely weather in Feb 2007

It’s days like these that really make me appreciate living in Wisconsin.  I love how snow looks when it has just fallen and is still sticking to trees.  I’ve been living temporarily in Green Bay, and that gave me an excellent opportunity to take some pictures yesterday and today.  Molly had some fun playing in the snow as well… You can find more pictures here.

Baird's Creek in Green Bay Molly jumping a logMolly is running...Winter berries

The type arguments for method cannot be inferred from the usage…

I created a helper method to iterate a list of strongly typed objects.  It was to be a simple method, that just returning a property of the objects with a separator character between each.  The method signature looked like the following:

public static string FormatMyList<T>(List<T> list, string separator)
{ … }

 
What I had overlooked, though, was that the property I was passing was only an IList object (due to being a property used with nHibernate).  So, I received an error message similar to the following: Compiler Error Message: CS0411:
The type arguments for method ‘TextFormatUtil.FormatMyList<T>(System.Collections.Generic.List<T>)’
cannot be inferred from the usage. Try specifying the type arguments
explicitly.

After correcting the method signature to use an IList, everything was fine…
 

A pledge to visit Europe in 2007

Hi all,

I would really like to see Europe again while I’m still somewhat young.  My current income does not allot much gas money for the trip, unfortunately.  This is where you can help me 🙂

If you can lend a buck or two to the cause, I will record everything that happens on the trip.  I’ll post blog entries, post pictures, and hopefully I’ll even be able to show some videos.