4 ms·
I too would love to read more about this. It sounds like a great general purpose solution. Are there any mandatory parts? Assuming not, how does sorting work?
by 0xffff2 6y ago
I too would love to read more about this. It sounds like a great general purpose solution.
Are there any mandatory parts? Assuming not, how does sorting work? Was it a matter of sort orders being pre-programmed for more common fields (e.g. sort by last name first, then by first name) and an assumption that any name that didn't include any of the pre-programmed parts was just stuck at the end? Was it even an issue? (i.e. how many people even had a name consisting entirely of "uncommon" fields?)
Edit: Another question. You said just two fields in the secondary table (perhaps you where simplifying though...). How does display work? Presumably the user expects their grandfather's middle initial to be printed in a particular location relative to all of the other parts of their name.
- unnouinceput 6y agoThe only mandatory part, from UI point of view, was the username in "users" table. On 2nd table (think was "userExt" called) everything was user generated and not required. From law point of view the data you entered in there was your responsibility to comply with both embassy requirements and your country issued ID's (personal identity card, passport, driver license, marriage license, etc). The document was also user generated from their defined fields and was user customizable. My implementation was to allow users move fields on the form however they liked and also had an option to be saved as template to be used further by same user or others. Sorting and filtering was the biggest issue. Since we talk about Kuweit, Unicode complaint was paramount, including Mongolian alphabet (not to mention classic pitfalls of Chinese, Japanese, Arabic). Initially I went with UTF-16. That was a big mistake and I've refactored that part of the code a year later to be UTF-8. Since this was also manually picked by Admin, it had a points system. For example if more then 10 different users would add a new field (let's say "tribe name") then Admin would get a notification about it and could be added as option, for future users, to pick when entering their data. Once defined in Admin part, it could be used for sorting/filtering like any other already defined field. As for exact sorting, I've simply let Unicode standard and the library used at the time to figure it out, I haven't done any special code on it. Best to let others smarter then you on that issue to do it, you just use their defined interfaces. Display for Admin would show all the user defined fields, one after another. Admin also had the possibility to view them in the user saved templates. In case of using a template from another user to current user, the form would simply show a red outline and empty space there if data was missing, and if the same user had other fields not used by current view they would be enumerated at the end of current form. Forms could be on as many pages as the user wanted. Remember, this was used by embassy and everything entered online would also be manually compared with the hard copy of them by the officer in charge of your application. I don't think pranking the embassy officer with a shitty form would be nice for you since he would simply reject your application and you had to pay (the least amount was on thousand of dollars) to begin the process. Only a bored billionaire would do something like that, usual folks took great care to actually be 100% accurate.