Rogers online self-service



  • I've just completed moving into a new house and am going through all of the family's various services to get the contact information updated. All but one have gone quite smoothly, with Rogers (my cell provider) being the exception. Attempting to enter our new address and phone number (the local telco insists the old number was not portal, another WTF by itself) fails miserably, as apparently our province and postal code are invalid.

    <p">The site uses server-side form authentication, which is good. However, it uses Javascript to generate parts of the form, notably the province/state selector. There's a few problems with it:

    </p">

    1. It's generating the state/province list client-side, during page load.
    2. The script doing so appears first thing in the output, BEFORE the <html> tag
    3. <li">The output special cases U.S. and Canadian locations. No problem with that, but...

    4. The US states are output via long blob of if() statements to put in the "selected" attribute as follows:
      var = strProv_selected = "";

      strProv = 'xx'

      jsState = jsState + "<option value='xx     '"
      if (strProv_sel == strProv) {
          jsState = jsState + "selected"
      }
         jsState = jsState + ">Xxxxx"

      // repeat many many many times
    5. Canadian provinces are apparently not allowed to be pre-selected on form-load. In their code block:
      jsProv = jsProv + "<option value='XX'"
      jsProv = jsProv + "Xxxx"
      jsProv = jsProv + "</OPTION>"
      // repeat 9 times
    6. There's also a long chunk of code in each country's section for entry of zip or postal code, but basically includes exactly the same information for each, except the US section has "Zip Code" for the <input>'s label, and the Canadian section has "Postal Code"
    7. There's also a special case for people using a Netscape-identified browser which is NOT Firefox (navigator.appName == 'Netscape' && !navigator.userAgent.indexOf("Firefox")) which apparently tests for the existence of layers by dynamically building one, interspersed with debugging alert()'s such as "alert('before open')" and "alert('after close')"
    8. Fully one-third of the page is chunks of Javascript of various sorts
    9. The site uses a mix of old-school <font> tags and new-but-not-quite-as-cool CSS, but uses it only within font tags: <font class="body-bold" style="color: red">
    10. It provides (hopefully) every possible street type in a dropdown (st, blvd, cres, green, down, glade, etc...) but inexplicably does so without  a few terabytes (ok, being sarcastic here) of Javascript to put in a "selected" attribute. But each street type takes up 4 lines, and is indented by about 300 miles.
    11. Many chunks of commented-out html.... Personally I hate it when a dynamically generated page spits out that stuff. If you're going to disable a part of the page, disable it on the server and save everyone a few kilobytes of essentially useless bandwidth usage
    12. Certain links on the page are done via href="javascript:somefunction(new-address-here)" whose sole purpose seems to be to insert a couple parameters into the new page's query line. But these parameters are constant, and could've just as easily been spit out into the links when the page was generated.
    13. </li">

    Sigh... all this for a simple contact update form... and it doesn't work. Guess I should have moved to another province (or state), or maybe I should try to moving to each in turn and see if there's one out there that will actually validate so I can conform to their TOS and keep my contact info updated (and valid).



    oh... and one more thing:

     

    13. Their sessions have a ridiculously low time-out, on the order of 5 minutes, which I exceeded a few times trying to get this post to format properly in this ridiculously stupid editor.



  • You know as soon as you see a mixture of font tags and CSS that they beat on their web developers and don't pay them enough for the priviledge. That's like a flinch response in a victim of domestic abuse.



  • Wow, what a mess.

    I had a similar problem recently when installing Verizon DSL for my wife's parents.  The first screen of the setup application kept dying with an IE script error, so rather than have to deal with their tech support, I started poking around the install CD.  The application was basically just a form-loader for HTML pages with lots of javascript.  I finally found the error -- some invisible control character which it was choking on -- by running the files through a javascript-to-java compiler and seeing where it failed.  Removed the offending character, and voila, it worked!

    Unfortunately, that application turned out to be the hardware setup guide, which I had completed before even bothering with the software.  The real setup was web-based... which also choked (likely due to the same error I had just fixed).  So I ended up on the phone with tech support anyway (a whole other story, standard hassles, not really worth repeating here) just to have the guy walk me through the DSL modem configuration, which the Verizon software was apparently just a "user-friendly" (har!) wrapper around.  Could have saved me a day's worth of trouble had they just included the manufacturer's instructions.

     


Log in to reply