Wednesday, July 9. 2008"TrainTracker"I've added timetable information for trains based on scheduled data. Also moved to a new URL to reflect further plans. There is still a bit of cleaning up of duplicate data to do, but its otherwise functional Check it out at http://iphone.itransit.com.au/. -bok
Friday, July 4. 2008Melbourne Public Transport + Google Maps
While I'm detailing apps that I've played with but never published, there's the beginning of something larger with regards to Melbourne's Public Transport system.
For the moment, its just a google maps version of the network maps with some station/stop info, but you can check it out at http://transport.odynia.org/maps/. I had planned on going the full stretch and making it the ultimate resource of its type, but my time doesn't seem to be my own lately! bok TramTracker
I wrote this a few weeks back as a proof-of-concept and first iPhone web app, but I was somewhat surprised today to find that someone else had the same idea!
Here then is my TramTracker webapp for the iPhone/iPod Touch. http://transport.odynia.org/iphone You should also check out this thread on MacTalk for info on the other TramTracker product for your iPhone. I have a lot of plans for getting a site with decent info about Melbourne's public transport network - the metlink site is slow and bloated. Need to find the time to do it! Sunday, December 30. 2007New Beginnings
Hi everyone!
You may notice a new theme to this blog - I'm planning on starting posting regularly again so I thought a nice change of scenery was worth it. We're getting ready to make a move from country NSW to Melbourne, so there is lots of do bok Tuesday, August 22. 2006BUBBLES!The future.. is Bubbles!
Weeeee
Yes, so I am excited, watch this space!
-bok
Wednesday, August 2. 2006Playing with GridsThis seems to be the most popular subject available on this blog. Seems no one has tried playing with the Microsoft CRM grids as much as me, which is rather interesting
A while back I touched on how to "colourise" the grid rows, a reader comment got me thinking about how I could satisfy an internal request here. In our old system, they used a dummy entry to trigger a filter which changed the formatting to highlight it. IE they created a record of type "notice" and it would make it bold and bright purple! Couldn't miss it!
So they've asked whether it would be possible to implement something similar with CRM. As these screenshots show, it is!
Before
After
As you can see, a huge improvement, they should have no problems working out that there are no more repairs to be booked for those days
This uses the same colourising code as the previous post, with a few additions
Click on a comment to hide it. Click here to show all comments.
// if someone can work out why the computers here insist the week starts at Thursday what would beThis will take the contents of a lookup field in the grid, check its GUID against the correct one, and if it is remove all TD's from the field except for the one containing the lookup, and then expand and modify it.
Now please remember, this is a VERY BASIC example. If you modify the view at all or the view contains different fields it won't work. This goes for all grid modifying via javascript. Its also very definitely NOT SUPPORTED by Microsoft. So don't ask them.
From Steve:
Hi, I'm thinking whether we can modify the grid view such as add .gif images in the column?
I need to do that because there's a user requirement which the customer wants me to show different gif images (like traffic lights) based on the status.... Do you have any idea? Sure do Steve!
What you would do, is once you are in the loop checking each row, instead of replacing the background colour (or in addition to) you could add an image to a column, or replace the icon. To replace the icon you would be looking at something like:
grid.childNodes[i].childNodes[1].innerHTML = '<img src="http://server/your/img_here.gif" alt=""This has been tested and seems to work
As always, I hope this helps someone!
-bok
Update!
I get several requests a week for the content of statuses.aspx, and given that I don't actively work with Microsoft CRM anymore I figure it might just be easier if I post the source here. Feel free to comment if you need help, keep in mind though that I'll probably be a bit rusty by now
<%@ Page Language="c#" Debug="true"%>
Thursday, July 27. 2006Xnyo DevelopmentWell its official...
There's 116 pages of the Xnyo source printed out in pretty syntax-colours on my desk with a plethora of scribbles, crosses-out, adjustments and notes on there. I've found ALOT of areas that I'm just not satisfied with and want to redo. So I dare say this will end up being a full re-write.
I'll try to make it as backwards compatible as possible, but one thing is for sure, this will be a forward looking rewrite, meaning that unfortunately it won't be PHP4 compatible. I want to start making use of exceptions and better OO practices. Things like autoloading will be incorporated into the plugin system. Exceptions for the errors, __get() and __set() for config options. I'll investigate extra things like PDO and the new filter extension that'll be in 5.2 (which functions remarkably similar to my filter stuff..) and see how they go. I'll keep this blog up to date with development notes as I go.
Should be interesting
-bok
Wednesday, July 19. 2006Xnyo, Smarty, AJAXBeen playing recently with ideas on what I could make Xnyo's AJAX functionality look like. I've started to take a basic look at how other libraries are doing it, so this may evolve in the furture.
So far, I have this:
Click on a comment to hide it. Click here to show all comments.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
this is very very early stages yet, just me mainly pushing some ideas onto something more concrete than my brain.
The basic idea here, is that the {effect} function will create an event (or function?) called login_failure that will call the shake effect on the first element found inside it. The {post} function seen in the button element will then post to Pavid (the Xnyo XMLRPC backend) calling the $xnyo->login() method, passing the values of the username and password field. On an error it would trigger the login_failure event, causing the loginbox to shake.
Make sense? Please feel free to leave any comments.
-bok
Thursday, June 29. 2006PHP SecurityIt seems that once again people are trying to spread Fear Uncertainty and Doubt (FUD) about the security of PHP. The article http://www.owasp.org/index.php/PHP_Top_5 lists what they consider to be PHP security faults.
This is simply not true. None of the faults listed here are actually PHP-specific. The items they list could occur on any programming language if the programmer was sufficiently inexperienced. Further, any and all of the faults have been made harder to access by recent versions of PHP.
The article does make for a good read though, on some of the basic security practices you should undertake on any language, and would likely have been well received if not worded in such a manner that it could be perceived as an attack
Remember though, a programming language is only as secure as the person using it. Read up on your security practices and you'll be right. Pay attention to security announcements, most major open source projects have them in an easy to access place, and always keep your software uptodate with patches!
-bok
Showing / Hiding Fields For User Who Created ItemRonald Lemmen has recently pulled out several stops in what was possible with CRM in his attempts to be able to show and hide fields based on the user logged in, and what roles they have.
I won't repeat his excellent work, but I will put forth an idea I had as to another possible use, one which I've had to implement here to keep up with Management's demands..
In this one, using Ronald's code to get the user id of the logged in user, we can compare it to the created by field. This of course requires that we have the created by field on the form somewhere. Then you can use the following code (the getUserId() function is from Ronald's blog) to check whether this is the user who created this object, and show/hide a section (or field or tab or whatever) based on that information.
Click on a comment to hide it. Click here to show all comments.
function getUserId()
It's a really simple idea. Can have some interesting uses, particularly if you combine it with the Security Role functions. This means you could make it so that only the person who created the item can change certain values, unless they're a high level manager.
Think about it
-bok
Wednesday, June 21. 2006TrackbacksI've gone with the flow and disabled the reception of trackbacks on my blog. The things were just becoming too much hassle to cleanup. The last thing I wanted this blog to become is another receptical for spam.
I'll still send out trackbacks to blogs that support it, it is a useful feature after all. But who honestly clicks on trackback spam? How can they be making money from this??
-bok
"Colourising" Microsoft CRM GridsRecently I came up with a nice idea: what if we could shade the rows in grids?
I thought through it, and realised it was possible. Of course its not possible to make it automatically colourise the grid, at least not without editing the aspx pages and that would go well beyond the realms of the supported customisations.
Before we go further, please remember that this is not a supported customisation either as it involves searching/editing the html output, which Microsoft is well within its right to change at any time.
The code that does this is split into two bits. You could go ahead and add the "colourise" code to the isv.config.xml file, but i really hate editing that all the time
Like so:
<Button Title="Colourise" ToolTip="Colourise active grid view"That loads up the following script.
scripts/colourify.js
Click on a comment to hide it. Click here to show all comments.
/**
As you can see, it has limited application but can be useful for a "quick glance". Some shortcomings include not holding the colourised status through reloads, changing the grid page, resorting the grid, etc, as well as the loss of the blue "selected row", as you can see below this only comes up with a white font instead of black. This is also a basic prototype version. I'll extend it at some point in the future to be able to colourised based on owner, dates, or whatever columns are there
I suppose I should show some screenshots of what this actually does..
Before
After
Enjoy!
-bok
PS. I've had several requests for the source to statuses.aspx. If you would like to see this leave a comment and I'll be happy to email it through, not going to post it here though as my C# is very basic - I've only been coding in it for 6 weeks
Update!
I get several requests a week for the content of statuses.aspx, and given that I don't actively work with Microsoft CRM anymore I figure it might just be easier if I post the source here. Feel free to comment if you need help, keep in mind though that I'll probably be a bit rusty by now
<%@ Page Language="c#" Debug="true"%>
Monday, June 12. 2006Thoughts on the next XnyoHowdy,
There's been a lot talk lately about things like Active Record. I too have taken to this concept, and will adapt it into Xnyo 4. I'll be taking the extra step though, and trying to adapt its simplicity and implicitly enable more complex scenarios.
I plan on doing this by extending the existing database specifications section we have, to allow for complex relationships between tables, that will be automatically re-assembled coming into and out of the database. It should be interesting!
The AJAX wave is sweeping across the internet, and there are some killer javascript libraries out there. Several languages have taken the step to incorporate javascript functionality into the language (like ruby with .rjs). I'll be undertaking several approaches to determine what I feel to be the best way to embed ajax functionality into Xnyo. Maybe something like {div id="divone" effect="fadein" when="someobj.onclick"}, I'm not sure though, definitely something I need to think about.
Been thinking alot about backwards compatibility with Xnyo 3. Looking at the minimal install-base for 3, I'm not sure its such a top priority after all. It might be worth redesigning Xnyo from a better OO standpoint, with a "compatibility layer" to run 3.0 applications transparently. Of course if I do this I'll still support 3, not that it needs much of it.
Please, let me know your thoughts, comments and feedback are always welcome!
-bok
Tuesday, June 6. 2006Icons in MenuItemsSince the release of CRM 3.0 there has been examples of menu's in the "Action Bar" having icons next to the menu items. Such as this:
While it appears that there is no documentation (at least not in 3.0.4 of the SDK) as to being able to do this in the page's menu, it is actually possible, as this shows:
All you need to do is add the Icon attribute to your MenuItem entry in the isv.config.xml file, ie:
Click on a comment to hide it. Click here to show all comments.
<MenuItem Title="1. Check-in Computer" AccessKey="1" Icon="/icons/repairs/checkin.gif"Enjoy!
-bok
PS. Thanks must go to Ben Vollmer for the source of the icons, he has posted a list of places you can find your own icons on his blog.
Saturday, June 3. 2006Disappearing CalendarSeveral people have reported that their settings disappear when using the Outlook Client for CRM alongside the Web Client. This is a commonly known problem, and there are several solutions. There is no "correct" solution, any one could best suit your needs.
Delete the temporary files.
As reported on TIDBITS on MS CRM clearing your temporary internet files resolves this issue. This works by deleting the CRM cookie thats stored in your browser.
Use different URLs for accessing CRM.
As reported on Mid Atlantic Microsoft CRM and on the Microsoft CRM Newsgroups you simply need to set the URL to access Microsoft CRM to be different for each service necessary.
For example: Say you host your CRM service on an IIS Website using the IP Address 10.0.0.9 and you access it using http://crm/. In most cases http://crm.yourdomain.com/ should work also. Because this problem lies in the cookie Microsoft CRM uses to know which client you're using, if you specify say http://crm.yourdomain.com/ in the CRM Outlook Client, that means that the cookie will be issued with the crm.yourdomain.com domain set. If you then use http://crm/ to access the CRM Web Client, CRM won't see the first cookie as it is using "crm" as its domain setting.
Voila, fully functional clients
Hope someone will find this useful!
-bok
« previous page
(Page 2 of 3, totaling 40 entries)
» next page
|
QuicksearchArchivesCategoriesThursday, March 11 2010
Should I be getting excited about this meeting? Thursday, March 11 2010 I think Brumby has enough to do without trying to get involved in other states. Can we get our stuff up to scratch first? http://tr.im/RmHc Thursday, March 11 2010 I think I did my back on the train trying to stay upright. Ugh Thursday, March 11 2010 And there it goes. I was just dozing off when i started thinking about work. Designing systems in my head again. Thursday, March 11 2010 I suppose I should get some sleep. Wouldn't do to be falling asleep while @somtum is trying to talk me into building stuff. Thursday, March 11 2010 @kahlerisms but in answer to your question, the viaduct is the one over Spencer St, yes Thursday, March 11 2010 @kahlerisms sweet, thanks Thursday, March 11 2010 @kahlerisms F1 special!? Thursday, March 11 2010 @kahlerisms catch the tram from the elizabeth st terminus instead of waiting like a sucker :P Wednesday, March 10 2010 @kahlerisms still the best by far. I've stopped updating my library now and just play through the videos section :( XaBitError on line 146 of /var/www/vhosts/odynia.org/blog/site/bundled-libs/Onyx/RSS.php: File has an XML error (EntityRef: expecting ';' at line 635). MacTalkThursday Morning News
Thursday, March 11. 2010 Tutorial: How To Make All Your Album Art Show Up In iTunes Thursday, March 11. 2010 MacTalk in New York: Manhattan Ain’t Cheap, Plus an FAQ Wednesday, March 10. 2010 Wednesday Morning News Wednesday, March 10. 2010 Can Touch This #44 – The Cat in the Hat Came Back Tuesday, March 9. 2010 Syndicate This Blog |

