Windows Mobile 6.1 PopUp Work Around

WM6.1 Internet Explorer does not have support for multiple tabs/windows. So naturally, it blocks all popups. However, some sites require a popup to authenticate or to advance on in whatever you are trying to do. Here is an example situation from http://www.everythingwm.com/forum/threads/wm-6-1-internet-explorer-popup-blocker.33238/

WM 6.1 Internet Explorer Popup Blocker?

Hope that someone can help me…. I have Q9c running Mindows Mobile 6.1 and I need to disable the pop up blocker but don’t know how to. I’ve been all through the phone settings etc. but can’t see whether the phone even has it!! I use online banking alot and when I get into it, and after introducing my username and password, a new window is supposed to open but this pop up window does not show up. Instead of this a message shows up saying ” your pop up blocker is activated”…
Any sugestions?? Thanks a lot.:wink:

Many suggestions were download a different browser. But nowadays, WM6.1 is being phased out and the browsers have become unsupported. A work around that I stumbled upon requires that you have a physical keyboard.

  • Use the arrow keys to highlight the button that will initiate the popup.
  • Hold down the return key (enter key) until the popup opens within a new window.

Internet explorer will look like it’s freaking out, but hey you’ve been advanced to the next step. Note this has only been tested out on the Motorola MC9090 Inventory Handhelds.

IPv6

As IPv6 starts to roll out more and more, and Windows to update more and more, it may be time to turn IPv6 back on your computer. I wanted to put a reminder out that the IPv6 Cleaner also has a tool built in to change the IPv6 setting of the machine. After changing the setting reboot and Windows will take the new setting. IPv6 Activator is the same code that runs in the 6to4 Cleaner, just as a standalone app.

The following options are avaible:

  • Enable IPv6 – Windows Default
  • Disable IPv6 except critical components – Use if card problem persists
  • Disable native IPv6 interfaces
  • Disable all tunnel IPv6 interfaces
  • Disable all IPv6 interfaces except for the IPv6 loopback interface

Download:

https://github.com/daberkow/daberkow.github.io/tree/master/6to4CardCleaner

Download:

https://github.com/daberkow/daberkow.github.io/tree/master/IPv6Activator

QuickLogs

One project I worked on last semester was for my job at RPI Helpdesk; we needed a system to track how many people came in, along with the general type of problem they were having. We had an old system in place that was written in python but it broke, and did not give the administration side that much information. I wanted to keep the same easy to use interface that the previous program had, along with add features. and give more information on the back end.

This system is used to be a white webpage, with 12 options on it. Then a new interface was added for the touch screen at the desk, this interface had 12 big buttons that used JavaScript to submit it. One of them was user-error, which was not recorded. There was nothing else on the page but these 12 buttons, which tracked the number of clicks per week.

An entire code rewrite was planned; MySQL was going to be used for the database, while the front end was JavaScript and PHP. JQuery was used to make JavaScript work easily across browsers.

While I was making this I was thinking of things I could add to the software, first the old options were built into the tool; instead of having the options build in the database holds available options and which ones the administrator wants active. The new version connects to the CAS (Central Authentication System) of the school; once users are authenticated they are given rights.  Administrators get a settings option given to them, which standard users don’t ever see that option.

JavaScript was used for the button submits, this way the entire page doesn’t have to refresh. At the request of the helpdesk workers, an indication was put in that the ticket was submitted successfully. The top right corner displays “Recorded, entry: #”, this starts at a black box and fades into that number.

The look started as a genetic design, but then at version 3.2 the program look on the look of the Print Queue webpage that the helpdesk hosts. This is the start to a unified look to helpdesk software. As a side note, the version numbers started at 3 because this is the third version of QuickLogs to my knowledge.  Also the main interface is in a folder called “lite” because for a time a enhanced interface was being worked on, a entire ticketing system that included full descriptions, tickets, and follow ups with students who came in.  With course work, this was scarped but the folder structure remained.

One feature that wasn’t requested but I put in for fun was ticket tracking, when a user is not logged in and hits a button then the transaction is recorded under user “default”. When a user is logged in then they are given credit for the ticket. This doesn’t effect anything with the users work, no incentives were given, just friendly competition. The system was in use for about half a semester and this feature was not used at all. Then when a handful of users started using that system, it snowballed into more and more of the users logging in. Now users wanted to beat their coworkers and thus remembered to log a lot more often then before when the data went into a black hole. Later we found in the code there was a stats page, but this was not shown to anyone but administrators who knew about it. Also the old system did not have any long-term user facing statistics, it gave the weekly number then reset. The new system graphs 30 days of problems, what percentage went to each; last 30 days tickets per user; finally, a chart of 24 hours, 7 days, 30 days, 90 days, 365 days and all time tickets recorded. That way the user gets to see their part in records recorded.

Another problem in the past for software like this has been a lack of documentation and information, after a student graduated and built a system like this all the knowledge was lost, it ran until it broke and a new person took over building a new one. Here the code was put on GitHub, all commented up.

That is a general overview of the QuickLogs project. It was a good learning experience for writing a whole web system. I got a enjoyment out of seeing people really use the system, and give feedback. At 8 months in there are around 5,000 records in the system at this point. Below is a gallery of two of the old interfaces, with 3 of the new ones.

 

GitHub: https://github.com/daberkow/QuickLogs

Summer 2012

The blog has been silent for a little while. I have been working at Cisco developing training software. Unfortunately the software is for internal use and at this time I am limited what I can say about it. But 3 months later and around 10,000 lines of code later I handed off the project to my coworkers.
Now back to school to continue studies, I think it is time for the Jukebox project to start up again. I have been researching libraries to use to play music and at this early point it may be the Mono version of XMA to play audio files. If anyone has any ideas for a java/mono/any Linux working library for mp3s that is easy pass it my way.

HTML5 Practice

One project I had the idea for and played around with is a Time Manager. I wanted to be able to track events and how much time I spent on different things. The problem is that I have a thousand classes and have to finish up things for the semester, so I put a few hours into this and I am going to shelf it for now.

A cool aspect of this (along with hindrance) is the system uses Web SQL, this is a HTML5 system; instead of using a MySQL or other centralized SQL database, your local browser is the SQL server. There are limitations to this, including the spec is new and limited. Along with it only seems to work in Chrome, Safari, and Opera; I have a spot in the code so if it fails to connect to a local data store it can switch to a more traditional method but I never got to that. It also tracks modified items to eventually it could sync those items to a central server, but that never got completed so its not in the github. Everything loads on one page and uses Javascript heavily to modify that page. I put facebook login in the system, I wanted a login system that I didnt have to worry about and I have never used facebook login before.

You can check it out at http://ntbl.co/time/ along with all the code at https://github.com/daberkow/Time-Manager

Jukebox Audio Player

I have been working on the Jukebox project while code for the Enstall project client is being worked on. I had to find a music playing library that would be fairly portable. While C# with mono can easily transport Windows, Linux, and Mac, I could not find a audio library that did that. I wanted to be able to decode mp3 files as well as other compressed audio formats.
One option I had was converting all the audio files to WAV files or OGG, but these files are significantly bigger; along with, going from a lossy format to those would be a waste of resources. After looking at around 6 audio solutions I went with the easiest. To the horrors of many, and the silent screams of some, I detect your OS, then unpack that OS version of VLC. Once unpacked it starts with only a Telnet interface; with this interface, another thread logs in and controls VLC. So I have a standardized communications language, and I don’t have to handling decoding, audio cards, audio channel selecting, ect.
If you have not used this before it is built for a program to control it, there are controls such as “get_playtime”. You get a nice computer readout from that. One downside is that there are slight differences from windows to Mac to Linux, but those are easily accounted for.
If anyone has another easier solution drop it in the comments but for cross compatibility this seems to be working well.

Enstall Project

I am working on a project called Enstall with a partner for RCOS @ RPI, it’s available at enstall.wordpress.com, the goal is to make a package management system. One may say “but Dan there are like 10 available and one or two are already open source…” That is true but most of them are aimed at IT personel, and controlling all the computers in a corporation, this is just for a student to install and get software from their school on their PERSONAL computer. That’s the dream.

6to4 Card Cleaner Github!

Here it is! The source code (all be it not great) for 6to4 card cleaner up on github. This program has become less useful recently because my school recently implemented IPv6 across the network, and that has seemed to fixed the problem, along with new images. Anyway have fun with it, build it out, add to it…

 

https://github.com/daberkow/6to4-Card-Cleaner

PHP/JS and C# Encryption

Here is some code from a project I have been working on and then shelved. A C# (mono) project creates a RSA public/private key pair, then gives the public side to a MySQL database. The private side is saved to the hard drive for later. Then PHP dynamically adds the currently active key public portion into javascript, which encrypts the users input, and saves it to MySQL. Then the C# application can get the keys it has saved in a good place, and decrypt the data in the database. Benefits of this include the web data is secured from the client to the server, and even if somehow someone steals your database off your webserver, they dont have the encryption keys to take it away. This system also has a way to deactivate a old key and move to a new one, if more code was put into it someone could revoke a old key and migrate all the data using it to a new key, but that wasn’t implemented. I thought this would be a cool project and I learned a lot about RSA public private keys, a lot of languages handle the keys differently; some take it in hex, some do it differently, some call the parts one thing, some call them other names. The javascript portion is based mostly off this library (link). JQuery is used for ease.

Feel free to give feed back or use this, open source fun.

https://github.com/daberkow/PHP_PublicKeyDemo