Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Online help system

by MrCromeDome (Deacon)
on Aug 14, 2001 at 00:11 UTC ( [id://104575]=perlquestion: print w/replies, xml ) Need Help??

MrCromeDome has asked for the wisdom of the Perl Monks concerning the following question:

Disclaimer: Some of you may find this to be very perl specific, and others of you may think is has no business being here ;) My apologies if you are one of the latter.

I'm attempting to design a help system for an online application that I've recently written (in perl). I need to make this easily expandable, and able to be edited by non-programmers (or, at least, people not necessarily familiar with HTML or perl).

There is already a set format that each page should follow (thank you, HTML::Template!). However, to use this I would require the maintainers of the help pages to know perl (which means that I have to maintain the pages, which is what I'm trying to avoid here!).

My question then is this (ok, my several questions are this): have many of you run up against a project like this before (I assume several of you have)? What was your solution? My knowledge of XML is practically non-existent, but from what little I know, this seems like it might be a good place/time to learn and implement it. I'm figuring I need to develop some sort of parsing mechanism and (as always!) using perl seems like my best solution.

I'm not really looking for code here, but just a place to start (I think I'll do fine with the code once I have an avenue to pursue). I've never tried to implement something like this, nor has anyone else here.

Thank you for your time and patience.
MrCromeDome

Replies are listed 'Best First'.
Re: Online help system
by dondelelcaro (Monk) on Aug 14, 2001 at 01:04 UTC
    For some of the online help systems I've set up, I have found FAQ-O-Matic to be pretty helpfull, and really easy to setup. It's obviously more geared towards a faq style online help system.

    Beyond that, in some other projects, I've used mysql coupled with perl, ala Open Interact, to handle simple text based additions to the help document, linking, etc. That way users don't have to know html or perl, they just have to be able to read and type into a form.

    In the end though, it really depends on what sort of help system would be most benificial to you. I would really recommend searching around the net to find one that seems to fit the type of application you have and the type of questions that you seem to be getting, and beg the system administrator (or programmer) to hand over code.
Re: Online help system
by John M. Dlugosz (Monsignor) on Aug 14, 2001 at 00:19 UTC
    My take on things: whatever you use, the authors will have to learn it. So, (1) use something you already know, and (2) how much they have to learn should be well-documented and finite, and (3) what they don't know shouldn't haunt them.

Re: Online help system
by bikeNomad (Priest) on Aug 14, 2001 at 03:02 UTC
    If you're using HTML::Template, why should your authors have to know Perl? Your Perl could and should be isolated from the actual HTML. You may have to provide some context for their pages (like, for instance, providing index entries), but there's no Perl needed to write templates that use HTML::Template.
Re: Online help system
by Rudif (Hermit) on Aug 14, 2001 at 02:20 UTC
    Would your non-programmers be willing to learn POD?
    You could teach them POD, in which they would write and maintain the doc sources.
    You would use Perl (your script, using standard Perl podlator modules) to convert POD to HTML after each update to doc sources.

    Rudif
Re: Online help system
by MrCromeDome (Deacon) on Aug 14, 2001 at 00:17 UTC
    Addendum: The other reason for pursuing something like this (I feel) is rather simple: I could just write a number of static HTML pages with the desired formatting, but I'm trying to eliminate a lot redundant maintenance chores (for example, should we decide to change the look and feel of this site at a later date, I'd prefer not to have to change 50 separate HTML files).

    Sorry for not including that in the original post ;)

    MrCromeDome

      Without knowing what your pages look like, it seems that you might be able to use server-side includes. Just define header/footer files with your standard "look and feel" and tell your users to put SSI include tags for those files at the top and bottom of their content.

      That way, if you want to change your 'look and feel,' you only have to change the files that get included.

Re: Online help system
by Anonymous Monk on Aug 14, 2001 at 10:24 UTC
    Possibly, you should have a look at one of the many Wiki systems. E.g. take TWiki at www.twiki.org, which is pure Perl.
Re: Online help system
by perigeeV (Hermit) on Aug 14, 2001 at 14:24 UTC
    Well, what you're doing is accepting arbitrary input from users and then serving it out. Just because the users are "trusted" doesn't let you out of validating and scrubbing the input. Since you have an established framework to follow, why not just write a CGI based form to accept their input. You can use CGI.pm to do the dirty work for you. Then do what you want with the data. You can write it into a static page, or parse it into an XML structure that can be dynamically displayed/searched. I would suggest an intermediate structure so that editting a node would be easier.

    If you want to avoid a .htaccess password mess, run a local server that does the data wrangling and then auto updates the live server.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://104575]
Approved by root
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others meditating upon the Monastery: (3)
As of 2024-03-29 07:31 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found