DataStores
This is a real cool concept.
Brian came up with it, and it had half the team scratching their heads over how it worked, and why we needed it in the beginning.
Now that I understand it too, it's Awesome!
So quickly.
A datastore is a database table. Each module can have
one. It stores information that that module wants to store.
Example: The datastore for the audio module will store key->value pairs of information about audio items.
Key value pairs look like this:
* song_name = "thriller"
* artist_name = "michael jackson"
* release_date = "Dec 2, 1983"
* etc......
And this is Awesome why?:
It is awesome because combined with the "Form Designer" it allows the admin to add any other values to be collected that they want to collect.
Huh?
* It means, that you don't need a new module to change the way a module works.
* It means, that forms are now really customizable without changing code.
* It means, that you can add any other fields you want when bands upload a song to the form that they use.
mmmm....
It also means that instead of having JR4's {jr_ranking} template function that only worked on things it was setup to use, JR5's {jrCore_list} function will also work on any module that was
created by anyone.
It also means that you can search on anything in a datastore and are no longer restricted to existing listing definitions.
It makes Jamroom much more open to 3rd party developers developing modules and JR5 skin designers instantly knowing how to use those modules because they work the same as all other modules with datastores.
ah, ok, that's pretty awesome.