The timer feature has been added to the project hours mobile apps. The beta version of the android app update for Project Hours is available on: https://play.google.com/apps/testing/com.projecthours.projecthours Try out the app, and especially the new timer feature and send us you valuable feedback!
New features:
- Multiple language support (English and Dutch)
- Timer feature added
Regards,
Bert-Jan
woensdag 15 maart 2017
zaterdag 4 februari 2017
Working on new mobile features
The timer feature is available on the Project Hours web site and it must be added to the project hours mobile apps. At the same time I want to make the mobile apps multilingual. And finally, for the next release I want to add user license info and a privacy policy.
The multilingual feature is finished, most time went into sorting out how to deal with localization for Windows Universal Apps, Microsoft renamed the resource file extension for UWP apps from .RESX to RESW. In itself not a problem but I want to keep all translations for the three platforms in one place and Xamarin still uses RESX for iOS and Android. Eventually I ended up with a pre build batch file that copies the RESX to a RESW file before building the UWP application.
More info: Universal Windows App Localization
Before I can start building the timer feature in Xamarin, I will have to extend the REST interface that is used by the mobile apps so that it supports creating, pausing, stopping and saving timers. Currently I am working on the REST interface. I realized that mobile apps with timers will generate a lot of REST service calls, for instance to get progress on running timers, so the first thing I did was adding some caching to store data so calls to the SQL database are minimized. Usernames, passwords and active timers will be cached for a couple of hours in order to speed things up. I am using the good old System.Web.Caching.Cache that has been around for years in .NET
To be continued...
The multilingual feature is finished, most time went into sorting out how to deal with localization for Windows Universal Apps, Microsoft renamed the resource file extension for UWP apps from .RESX to RESW. In itself not a problem but I want to keep all translations for the three platforms in one place and Xamarin still uses RESX for iOS and Android. Eventually I ended up with a pre build batch file that copies the RESX to a RESW file before building the UWP application.
More info: Universal Windows App Localization
Before I can start building the timer feature in Xamarin, I will have to extend the REST interface that is used by the mobile apps so that it supports creating, pausing, stopping and saving timers. Currently I am working on the REST interface. I realized that mobile apps with timers will generate a lot of REST service calls, for instance to get progress on running timers, so the first thing I did was adding some caching to store data so calls to the SQL database are minimized. Usernames, passwords and active timers will be cached for a couple of hours in order to speed things up. I am using the good old System.Web.Caching.Cache that has been around for years in .NET
To be continued...
woensdag 1 februari 2017
Fixed issue with cached content
In past week two users reported issues that time entries from other users were displayed in their overviews! Not good.. I looked into the matter and I think this is because some JSON responses were being cached and displayed to several users while the content in those JSON responses was only meant for one person. To disable caching of JSON responses on the IIS Server, I added the following attribute on each controller that has JSON actions:
[OutputCache(NoStore = true, Duration = 0)]
Perhaps a bit of overkill to specify this for all actions on a controller, but it is important that cached content is never served to the wrong user..
More about ASP.NET MVC caching in these links:
Bert-Jan
zondag 22 januari 2017
Timer feature available for beta testing
I published the new timer feature to the Project Hours Test Site for beta testing (use the Demo login to try it out.)
The timer runs on the server, the timer web page has buttons to start, pause, resume, cancel and stop and save time. If all goes wel the feature will be available on Project Hours by the end of next week. I am working on some localization issues as you can see in the screen shot below.
Bert-Jan
zondag 8 januari 2017
Building a timer feature for Project Hours
I am back from a relaxing skiing holiday in France, time to continue improving Project Hours! On request I am adding a timer feature. Users will be able to start and stop a timer to track time spent on projects and activities. The timer will run on the server, no need to keep the Project Hours program or web site open while the timer runs. The timer feature will be available on the web site first, mobile apps will follow.To be continued.. Bert-Jan
zondag 11 december 2016
Added User Group feature and more
Today Project Hours has been updated with some new features:
- User groups. It is now possible to define user groups and add users to specific groups. When downloading a report, user groups can be specified. In this way reports per user group, i.e. company department, are possible.
- Administrators can now update the organisation name.
- Administrators can set users to inactive. This is useful, for instance when users leave the organisation.
- When logging in in Demo mode, you are logged in with admin rights. In this way all features except for user management are available in demo mode.
- The Report Download page has been redesigned and now has a responsive layout.
That's is for now!
Bert-Jan
zondag 20 november 2016
New Trial Period Registration Page added to Project Hours
Today the new registration page for Project Hours went live. On this page you can sign-up for a two-month trial for your organisation or just for yourself.
Previously new users had to send a request via email and I would create an account to start with. This is now automated with the new form:
It was fun to build, notice the Google reCaptcha checkbox that makes sure the page will not be abused by automated scripts.
Bert-Jan
Previously new users had to send a request via email and I would create an account to start with. This is now automated with the new form:
It was fun to build, notice the Google reCaptcha checkbox that makes sure the page will not be abused by automated scripts.
Bert-Jan
Abonneren op:
Posts (Atom)





