Steven Heynderickx wrote on 11 Jan 2010 17:13
with the module NewPage one can create a new page with for example a given category, parent, tags…
With this in mind is there a possibility for on the fly creating of a new category with a default template?
Why I would use it:
Imagen a user fills out a profile. This profile will ask him/her his/her profession. Imagen there would be this pagepath-thing… so they can choos from existing possibilities or they can create a new option.
Now I would like to show them a extra profile (if they just created a new profession, this will be the default) that is a live template. So lets say "John" is a student and he selects the student… his next page will be student:123 with an according student:_template. But Kathy want to select rocketscientist, an option that is not there yet. So that option is created… but while creating this option I wish that a category named rocketscientist is created with the default template. Why do those profiles need to split up? Well is is possible that Kathy is a rocketscientist, but maybe she is also a student at the same time.
If there are other ways to do this I will gladly read them here but "tags" are no option
Rewind to the use case and set aside your idea of a solution :-)
Problem statement: you imagine a case where you want a user to select multiple jobs.
Solution: offer multiple fields (main job, second job).
Now a critique of your analysis (not unkind but hopefully useful):
So…
Cheers!
Portfolio
So in advance I don't know how many jobs… so main job… second is no option.
Indeed, I asked for more info on Pagepath… because it is not clear to me, and I don't see all the possibilities.
There is also a big questionmark on how ListPages will cooparate with this for example…
Tell me how I can list al the people who choose "writer" as a jobtitle via a pagepath
I need to make an interface for "wikidot-dummies" so I plan to use forms for this. Since only a text-field is available at this moment… I could not try the pagepath… but I wish to know what I can do with it.
Yes please do give me a solution.
"Solution: offer multiple fields (main job, second job)." is no good solution since I don't know how many jobs people will want to indicate…
So now you see, using a specific problem (like jobs) makes you think that "oh who in the world has more than two jobs…"… Well if you see my question in a bigger persective, you will know that your solution was not really a good one.
I am saying this in a gentle very calm voice and I wish to make only things better here at wikidot… I am really smiling now :-) truely!
A - S I M P L E - P L A N by ARTiZEN a startingpoint for simple wikidot solutions.
Since you don't seem to read my comments, this is the email I got. Look carefully at where it says "not title in email". Now read your signature and tell me what you think.
Back to your use case, again before jumping to solutions (which are by definition wrong, and in this case, very wrong), please just expand your 1-line problem statement with necessary information.
You see, the fact that you want to assign multiple jobs is not clear, you did not say it, and it's taking us wasteful effort to discover it.
Can you understand that this waste of time is avoidable?
Portfolio
Just a bit of clarification for you Steven, assuming that I'm understanding this correctly myself:
The process for improving features here at Wikidot seems to be linked very strongly to the design stages of the Software Development Life Cycle, where you would define the customer's problem, then propose a solution, and check back with the customer (possibly with the use of a prototype) to make sure that the solution matches what the customer needs.
All over the place, but particularly on the projects forum, you seem to be asking for ways to automatically create categories. The problem is that categories aren't designed to work like that, and the more I read your posts, the more I think that your problems can easily be solved by using just one category, one live template and multiple tags.
Having recently discovered that you haven't used Live Templates before, this makes me think that you don't realise that the answer is right there in front of you. Instead, you're asking for auto-creating categories when it's not needed, and would completely mess up your site's structure (most likely).
Please… look into Live Templates and learn how to use them . I'd be very happy to help you with this as I use them a lot these days myself . They will probably solve most of your problems already.
Then you would have a page called profile:kathy, with a live template located at profile:_template.
The profile:kathy page will have the following tags: rocket-scientist and student.
The Live Template will include something like this:
~ Leiger - Wikidot Community Admin - Volunteer
Wikidot: Official Documentation | Wikidot Discord server | NEW: Wikiroo, backup tool (in development)
Okay, just read this part of your post.
Why are tags not an option? You essentially have two types of tags that are completely separated — normal and hidden. You are able to use tags for job roles and also for any administrative needs, without conflict.
~ Leiger - Wikidot Community Admin - Volunteer
Wikidot: Official Documentation | Wikidot Discord server | NEW: Wikiroo, backup tool (in development)
What makes you say such a thing? My sites and my comments burst open from the live templates… Strange that you write something like that…
@ pieter, Is it wise, just to drop all my theoretical questions about things that are not yet in wikidot and just sit still and quiet untill things are made? If not can I expect an answer to the question "how I can list al the people who choose "writer" as a jobtitle via a pagepath"
Tag are no option because, unlike the other things I suggested, they are nowhere mentioned in the designs in the following way:
using data-forms there is no way mentioned that content of the actual form can become a tag of the page that is created. Further I don't wish for the user to first fill out a form and then add the exact same info as a tag afterwards.
A - S I M P L E - P L A N by ARTiZEN a startingpoint for simple wikidot solutions.
Theoretical questions are useless, we have literally hundreds of them. We can only work on the basis of solid, existing needs and a clear argument that working on feature X will create Y amount of value for Wikidot users. "What if?" discussions are not just pointless, they are a solid waste of time unless they happen within a scope of R&D into specific areas where we know we have problems to solve and need to look around for possible solutions.
Your mix of ideas, solutions, and restrictions does not work.
If you actually make clear questions you may get useful answers. If you produce long unclear proposals that we need to untangle and try to put into context, the answers are likely to be less useful.
Yes, perhaps, if you ask the question clearly.
Portfolio
I think what pieter means is that you're saying this:
You: "How can I list all of the writers as a job title? I will use the pagepath attribute"
Pieter: "You just answered your own question…"
But it should be…
You: "How can I list all of the writers as a job title?"
Pieter: "The pagepath attribute might work, but it's not suited for that just yet. Let's see if we can redesign it."
~ Leiger - Wikidot Community Admin - Volunteer
Wikidot: Official Documentation | Wikidot Discord server | NEW: Wikiroo, backup tool (in development)
I'll assume you actually did ask the question "how I can list al the people who choose "writer" as a jobtitle via a pagepath" rather than ask me if you could expect an answer to it.
Breaking down your problem:
Let's assume a use case for each of these because that is still missing. Especially the use case for N references rather than a small fixed number, say 2 or 3. The use case for part 2 is more obvious: this tells us how much a pagepath item is actually used.
By "pagepath tree" I mean the collection of (e.g.) authors, organized into a parent-child tree of some arbitrary, organic shape, and by "pagepath item" I mean (e.g.) a single author.
To solve part 1 minimally, therefore, I'd use 2 or 3 pagepath fields. This is a common question in user interface design and there are two solutions. Imagine storing N phone numbers for a person's profile. Design one is to let the user add phone numbers, and define for each one, its type (home, mobile, office,…) Design two is to offer the user a set of fields with fixed labels (Home:… Mobile:… Office:…). You can make a hybrid of these, with an extensible list where the start is at least predesigned. However, it is more usable to stick to a simple predefined set rather than an open ended list.
To solve part 2, once the question is properly asked, the answer is clear. "How do I list/count pages that XYZ?" is always answered by "ListPages/CountPages". So here we want to design a ListPages selector that selects pages that refer to (perhaps) the current page via a pagepath reference.
At this stage you hopefully see that (a) clear and precise questions are essential and (b) the effort it took to get these questions out of your initial posting and (c) that we're not finished.
In order to properly design a selector in ListPages that does this, we need a real use case. We need to know what actual scenario you wish to create. Where are you showing the list? Is it on the pagepath item page or somewhere else? Is this part of a larger use case?
At this stage imaginary use cases usually fail, and designs based on them will be bogus. Real problems, real solutions.
Thanks for reading this and understanding the reasons for approaching the long piece of string from the end, rather than the middle.
Portfolio
I'm sure you wrote somewhere that you'd never used live templates before… but don't have the link at the moment :S
~ Leiger - Wikidot Community Admin - Volunteer
Wikidot: Official Documentation | Wikidot Discord server | NEW: Wikiroo, backup tool (in development)
Use case is like this:
Would this be a good description?
Now… I could be wrong in the use of the pagepath, so it could be a wrong assumption, but you now have the most clear use-case I can offer. Hopefully this functionallity will be integrated becaus I don't think this is a rare use of resources meaning getting data and harvesting info.
A - S I M P L E - P L A N by ARTiZEN a startingpoint for simple wikidot solutions.
If people want to register themselves as plumber, baker, and candlestick maker, so that others will find them as such, they will create three profiles. One in the plumber section, one in the baker section, one in the candlestick section. Each time they will want detail on those profiles, thus each profile must be a page, not simply a field in a general profile. Thus the proper structure is:
Portfolio
Okay… I am making a site (platform… big site) where people can give recentions on books. I would make this with a user-interface based on the functionality of data-forms. I ask them to give me a list of book titles that have the same "feel" (as like in amazon "if you like this, you probably will like this…")… Probably the referenced books will not be a possible selection since there are so many books in the world. But after time the bestsellers and icon-books will be in there.
So now I am a reader and i find this site and I wish to find (maybe) a book that someone thought was in the same style as one that I read namely "moby dick"… So please computer give me a list of all the books of wich other people said that they are a bit like "moby dick"
Now this example stands completely loose from profiles… becaus in this site books don't have a profile, user have one.
of course this could all be solved with tags… now I am on slippery ground… since it's a waist of my time to suggest solutions, but what if you could say that the content in a field from the data-form should be saved as a tag… My problem would be solved
A - S I M P L E - P L A N by ARTiZEN a startingpoint for simple wikidot solutions.
Remember that Wikidot is not a general purpose web development platform, and never will be: it is a wiki with tags, workflow and (eventually) forms and customizable reporting that can be used to create certain types of userspace tools. The goal is to solve applications that rely on social workflow: forums, issue trackers, wikis, social databases.
Let's take your scenario, which is a good one. This is how to describe a use case, a high-level walk through of what you want to see as the user experience, with no mention of solutions or constraints.
I'd propose the solution I already explained above:
This would give us a two-category design, book: and recommendation:, and two templates that make it all work.
An alternate and simpler design would be to allow up to, e.g. 5 recommendations for a book, and simply list these in the form. This gets rid of the need for an extra category but also limits the functionality: no details, no discussion, etc.
It is the difference between a first-class object (a recommendation page that can be formatted, rated, commented) and a simple reference.
I'd probably try both, in a real application, because the simpler approach is definitely much easier to use but may in the end prove restricting. We cannot judge such tradeoffs immediately or in theory, they need proving.
Portfolio
Hi Steven,
A lot of people were surprised by what I made… the Extended NewPage Module, which essentially duplicates what already exists. The advanced feature of it is that you can specify what the resulting page's UNIX (URL) name will be.
If you want the Extended NewPage Module to create a live template for the user's specified category: