Ethan's leaning would be to make it so that there are real cards (as in, represented in the db) for any "name part" in use. In other words, the only cards that are actually virtual would be those that are created by combining real cards. It would be highly impractical to represent all of those in the db. But everything listed above as "builtin" should probably have an associated card in the database. The builtin cards then become just another form of a card extension, but they only extend the x+*self set.
Currently, some virtual star cards are real, and some not:
The above are all initialized at startup time and are coded in their own partials.
Then there are three searches:
What about *email?
yeah, I'd say there should be a *email card (will mostly be a placeholder, but it's consistent with above, right?)
eventually we want the email info to actually live in a card that actually uses the *email name. eventually :)
--Ethan McCutchen.....Thu Jan 20 12:37:25 -0800 2011
Ah right, as per expose card metadata in cards --John
This change will be required at some point to support some of the refactoring going on now. The key point is that the *names referred to in the code will have to have cards so that they can have both a name and a codename. Right now, the key and codename for these cards has to be the same because there is one source for both in the code. If a Wagn admin or owner wants to rename these cards, right now they would have to change to code, and of course this will be an issue for translation (non-English Wagns) too.
I'm pretty sure that the keys and codenames for all cards can be constructed from the keys and codenames of their parts. In other words only simple cards need codenames and keys, but for searching the database had better have the complete keys. I suspect that codename will only ever be used for simple names.
--Gerry Gleason.....Thu Jan 20 14:09:49 -0800 2011
Can builtins even be stored in the database now? Do we have a way to know which ones are builtins, etc.? Wagn initialization adds the content too, so it may just work to add the records and have the initialization cache them with content. Better would be really having cards for them. Oh, wait, they don't have content, just code in app/views/builtins. I suspect there will be a natural point to address these issues in the ongoing work.
--Gerry Gleason.....Thu Jan 20 14:14:18 -0800 2011
We did this in Wagn 1.7.1
--Ethan McCutchen.....Thu Dec 01 13:54:28 -0800 2011