I got User Registration all hooked up and running today. There’s some polish that needs to be done for sure but users can check for unique user names, input a password, provide their email address and make themselves a user account. This is also the first time I’ve used MD5 to protect the users password. Amazingly simple to use. Perhaps there will be a video tutorial up at polyGeek.com soon.
Long day today. Got two of the big remaining feaures done today. Email reminders and email friends.
Reminders was the hardest because it requries quite a bit more PHP that I know but I got it sussed out and working. The easy part is submitting the data to MySQL Database – been here, done that. But once that’s done I need to have a script that will be called to run on the entries in the reminders table and look for entries who’s date matches today. Then do a while-loop on the records returned to send out the email.
The thing that made it take so long to develope is that errors in PHP aren’t exactly descriptive. Debugging PHP is a pain. When I finally got everything working I used CronJobs to run the script once every day.
The email a friend feature was pretty much cake. Just a lot of details to iron out. Using EmailValidators to make sure that the entered email addresses are all good to go is pretty easy to do in Flex. But it’s been a long time since I used a validator.
Oh, I also signed up RunPee and Gorlog for Twitter accounts.
Tomorrow I think I’ll take it easy and do a few odds and ends, maybe set up a store at CafePress.com.
This weekend was quite productive. First I nailed down the emailing from Flex functionality an Saturday. Then on Sunday I got the deepLinking enabled.
I’ve worked with deepLinking before on XanaduWest.com years ago so the concept is familiar to me. Flex adds the HistoryManager class which is amazingly helpful. In this case I had to customize the way it worked because I’m working with a custom component that doesn’t do any history management by default.
In the future this is something that I’ll implement early on in the project. Because I had gotten so far along with it it turned into a bit of a hack to wedge deepLinking/HistoryManagement in after the fact. But it works, and that’s what matters most.
So now I can email a link to someone which will take them directly to a specific RunPee view and the browser back-button and forward-button works.
I believe this is the last of the plumbing level functionality that I need to add to RunPee. Most of what’s left is UX, expanding existing features, that sort of thing. At this rate I’ll be in public beta in a few weeks. Well in time for 360Flex.
One of the important features I would like to implement on RunPee.com is to let a user schedule an email reminder so that they can be prompted to come back to the site and update it. For instance after they see a movie they might want to be prompted to come back to RunPee and vote on a peeTime that they used, or something like that.
First off I have to figure out how to send and email through PHP via Flex. Turned out to be surprisingly simple. My only problem was that I copied some of the PHP code from a tutorial and then wrote part of it myself. The end result was that I called a variable $header in one place and $headers in another. PHP was nice enough to fail silently so that it took a bunch of digging before I noticed the problem.
I posted the code for doing this over at polyGeek.com.
Beyond that I needed to figure out how to run a PHP script on a timer so that I could check the database to see if there were any emails to send out. Again, this turned out to be very simple. In the Cpanel there’s a service called Cron jobs – read a tutorial on it here. That does exactly what I need.
Now I just need to write the SQL and create the UI for entering a reminder. This is one of the few big ticket items left on my 2Do list for RunPee. The other is deepLinking. Which would have been easier to do had I built it in from the beginning but no matter. I’ll tackle that tomorrow.
Today, 4th of July, is the day RunPee.com went into family-alpha – you know, that’s where only a handful of friends/family can see the prototype and start offering feedback and reporting bugs.
Currently there are 27 items on my 2Do list for the app. If I can handle one item a day I’ll make my public beta launch before the 360Flex conference.
Oh, wait, I forgot that I need to make T-shirts. Now it’s 28 items on the 2Do list. 🙂