Welcome Guest, Not a member yet? Register   Sign In
MidgetForms
#1

[eluser]Benjamin Midget[/eluser]
(The title is not meant to be derogatory. My last name is Midget and it's named after myself.)

I put together a library for use with CI that makes form generation really simple - especially in combination with IgnitedRecord.

I have a link for it at here (hosted on my web design company site) where you can download the library as well as a CodeIgniter-inspired instruction manual.

The goals of this library are:

1. Automate form generation with validation
2. Make updating records and creating new ones as simple as possible
3. Have an all-in-one interface for forms that automatically loads them, validates them, loads what to do upon validation success, and what to do after that all in one, nice object-oriented interface.
4. Be highly configurable
5. Incorporate IgnitedRecord
6. Make life in general easier. (It's difficult enough as it is.)

The biggest limitation on this release is no support for checkbox groups and radio groups. It's something I am going to address very quickly (probably next week), but if your forms don't require that, as many don't, then it the library is very usable right now.

Please feel free to play around with it and let me know what you think. I am going to set up subversion for it next week with public trunk access. Anyone who's interested on really working on this with me, feel free to contact me and I can make you a SVN account for updating and stuff.

I feel pretty passionate about getting this to the big 1.0 release because I want my life easier.

Download Link
#2

[eluser]Benjamin Midget[/eluser]
One thing I forgot to add to the manual before putting it online is the following associative arrays are used for the config file:

$defaults - element defaults
$globals - element globals
$fGlobals - form globals
$ignore - auto-ignore elements

You can use % do mean any character in $igore. Thus,
Code:
$ignore = array ( '%id');
would ignore both the element named "id" as well as the element named "user_id".
#3

[eluser]abmcr[/eluser]
3 questions:
1) it is possible to have an example working code?
2) upload field is possible?
3) for manage a tables relationship?

Thank you
#4

[eluser]Phil Sturgeon[/eluser]
Will this suffer from the same problems Rapyd always had? Specifically how easy is it to add a drop-down boxes or other inputs that handle data in a joined table?
#5

[eluser]Benjamin Midget[/eluser]
Thanks for the responses. In answer to your questions:

I just put up a walkthrough sample included with the latest code (download it here). You will find the walkthrough in the manual, and I set up a blank CI install (called walkthrough) inside the download with everything all set up for some testing.

Upload fields are possible and I'm hoping to get them implemented next week.

The whole point of MidgetForms is to make creating dropdown lists, checkbox lists, radio lists from a related table extremely easy to do, style, and validate. That said, only select lists is supported until I add support for the latter two next week.

Also, I want to fully support joined tables as a form and that's in the near-future roadmap after I get checkbox groups and radio groups working how I want them to. I think without this functionality MidgetForms would never be truly useful. And I want it useful.

------------

I feel really bad as I originally released a sort of broken version of MidgetForms (a stupid error I fixed but didn't update on the website). That was version 0.1.0 and the working version is 0.1.1 (available here).

Since I didn't think any of the abilities are inherently apparent, I put together a walkthrough example app and documentation in the new version. I think a quick run through that will really help people see how it works.
#6

[eluser]abmcr[/eluser]
Thank you ..... great work...
#7

[eluser]sideshowbob[/eluser]
Hi there,

Just wanted to say that MidgetForms looks good so far, I finally got frustrated enough with CI forms to look for a better way and I think I've found it!

Your user guide is pretty good (must have taken a while to write) and I managed to get through all of it without issue.
A more complex example would be good though to show usage of more of the parameters.

Really can't wait for the next release, will you be adding a changelog/roadmap/rss ??

Bob
#8

[eluser]Benjamin Midget[/eluser]
Thanks for the kind words.

As for a changelog and a roadmap, I plan on adding both to the home page when I get a chance. RSS is a great idea, too.

I'm just finishing up a big project right now and will be looking to get to the 1.0 release out shortly after that. At that point I'll also get an RSS feed, and official roadmap as well as SVN running.

A brief partial roadmap:

• Radio buttons, checkbox groups
• Custom validation rules
• From master configs - this means you can define several types of forms in your config file. Useful for sites that use 2 or more form configurations.
• File upload handling
• Multiple file upload handling
• Joined Table IgniteForms - this is away to create a form using a joined table and map each input to its appropriate table.
• Support for non-yaml IR models
• Manual re-write - the initial manual was never formally put together. Instead it came to be in unorganized bits and pieces in order to share the library with someone while we developed a website. Needless to say, MidgetForms needs a new manual. The manual also needs to contain a complete list of every available method.
• Template support so my PHP-illiterate designer friends can create a form and stick individual elements from the full MF object where they belong while MF still does the rest


These changes will bring MF (no pun intended) to 1.0, and I'd be happy to put together a complex example once I finish these items.

Also in the roadmap for my personal use is some javascript implementation (Nothing against it, but I use Mootools and don't have any plans for JQuery anything). Specifically, the forms will first do basic validation with javascript first to save a refresh when submit is clicked. Unfortunately, I don't feel JS validation is enough, and even when using JS validation, I run the form through php validation, too. Along with the JS validation is a calendar picker plugin and AJAX (Flash with SWIFF, really) file uploads support.
#9

[eluser]sideshowbob[/eluser]
That all sounds really cool, I have a couple of projects coming up where I could really use nearly all of those features!

I don't know what your timelines are but I'm excited about the next version.

Any chance of a quick rss feed so I can keep track of this one?

Awesome work.

Bob
#10

[eluser]abmcr[/eluser]
[quote author="sidehowbob" date="1222778329"]That all sounds really cool, I have a couple of projects coming up where I could really use nearly all of those features!

[/quote]
I also... very interest roadmap...




Theme © iAndrew 2016 - Forum software by © MyBB