_ _____ .___ __ _______ __ ______ _____ .___ __ ____ _ _______ _ _ 
         ____|   \ _/   _   \ _/  __  \ _____|   \ _/___/__/   _   \_ _ 
     _ _/    \    \\_   |____\\_  :/   \\_   \    \\_     /____|   _/// 
     \\\_    /     |______    |   /____//   __\   |       |   ______|   
       _    /|     _    :/    _         _   \:    _       _   \:    _ d
     _ /    \:     \_   /     \_        \_   \    \_      \_   \    \ _ 
     \\\      _____//_________//________//________//______//__      /// 
     - -\____/------------------------------------------------\____/- - 

     -- useDIZ v1.10 by dMG/t!s 20090426 - asciiscene[-AT-]gmail.com --

 What is it?
 -----------

 useDIZ is a multifunctional irc channel script for eggdrop. It does the
 following things:

 - Greets users joining irc channel through a notice
 - Announces new uploads to irc channel
 - Dupechecks uploads against a database and removes duplicate uploads
   (works for all filetypes)
 - Attaches a textfile with advertizement, upload date and time to uploaded
   textfiles. If the advertizement file is missing, useDIZ will add the
   script- and author names in it's place
 - Automatically creates, populates and sorts a database if it doesn't
   exist under the (user configurable) path
 - Allows users that are registered and have set a password for the bot to
   use !get command to download files from the filesystem without having to
   log in. Safety measures have been made to assure that no file outside of
   the $rootdir can be downloaded
 - Extracts and displays the file_id.diz of a textfile. useDIZ finds the
   path recursively under the $rootdir and lets the user know if the file
   is lacking a file_id.diz or is missing. If the diz command is used from
   within the filesystem, the current path of the user will be used instead
 - Has a built in search function to recursively find the path of a file
   under the $rootdir. Good for situations when only the path of a known
   filename is needed for fast and easy download, possibly using !get
 - Has a built in help function that accepts arguments for different sections
   of the easilly editable external help file. Open help.txt for syntax
 - Shows filesystem statistics when triggered by !stats command

 useDIZ was created by consolidating the following scripts that i have
 previously written: showDIZ, getDIZ and putDIZ together with some
 other ideas.

 This script was written for #ascii on ircNET.

 Example output:
 ---------------

 <@dMG> !diz lp!-ssfm.txt
 <@hosee2> -=( showing file_id.diz for lp!-ssfm.txt )=-
 <@hosee2>                                  _.____    
 <@hosee2>  L  W P R  F i L .____ _          /    
 <@hosee2>    ............._,-' `-......... _!/// __  
 <@hosee2> __::::::___ _  /      ) \_     :(....)   | 
 <@hosee2>   ::::::      ( ______\_ (     ::::::::  | 
 <@hosee2> _ ......_      \(     \`   lP! .::::   | 
 <@hosee2>    .    /______ )\\ !  )_(             | 
 <@hosee2>   /    /   _   \ _`.-'__ SOULSURVIVORS  | 
 <@hosee2>  /    /_  /    ///(__//_(_   PART TWO    | 
 <@hosee2> / Mt  / /    / (     )/ / LOWPROSOUL FM | 
 <@hosee2> \_____/ _____/   )     \ ) BEATS & SKITS | 
 <@hosee2> __ /____\  _____/       )___________ ____| 
 <@hosee2>  /_________\                       //__ _  
 <@hosee2>
 <@hosee2> file size of lp!-ssfm.txt is 81511 bytes.
 <@hosee2> found under path /_archive/l/lp!-ssfm.txt.
 <@hosee2> --==(\/)- useDIZ v1.10 by dMG/t!s -(\/)==--

 Prerequisites
 -------------

 The following changes must be made to your eggdrop.conf file:

 Add or uncomment the line saying 'loadmodule filesys'.

 Change the following paths to where your bot is installed:

 set files-path "/path/to/your/bot/filesys"
 set incoming-path "/path/to/your/bot/filesys/incoming"

 Add or uncomment the line saying 'loadmodule console'.

 Install:
 --------

 Copy useDIZ.tcl to your botdir/scripts directory.
 Copy help.txt to whereever you want it and set the helpfile path (see below).
 Add 'source scripts/useDIZ.tcl' at the end of your eggdrop.conf.

 Configure:
 ----------

 set channel  "#ascii"
 set botdir   "/home/user/eggdrop"
 set rootdir  "$botdir/filesys"    #It should be safe to leave this as is
 set adfile   "$botdir/ad.txt"     #Advertizement to append to (text) uploads
 set dbfile   "$botdir/db.txt"     #Path to database
 set helpfile "$botdir/help.txt"   #Path to helpfile

 Edit help.txt to suit your needs.

 useDIZ is set up to only work for users with the +v flag (except for the help
 and join functions). To change this behaviour so that anyone can use the
 commands, change the 'v' in the bind lines below to '-'. For more
 information and a list of flags, consult the eggdrop tcl documentation.

 useDIZ has been tested using eggdrop v1.6.19.
 Don't forget to .rehash or start your eggdrop!

 Usage:
 ------

 On public channel:

 !help [section]
 !diz 
 !search 
 !get [[path] ] #Requires password set in bot!
 !stats

 By private message:

 /msg  !help [section]
 /msg  !diz 
 /msg  !search 

 On filesystem:

 diz 
 search 

 Everything else should(tm) work by itself.

 Changelog
 ---------

 v1.00 - Initial release
 v1.01 - Forgot to add helpfile to distribution archive
       - Cleaned up some code, fixed indetions and added some missing
         non-mandatory return values
 v1.02 - Added the wrong version script to 1.01 archive. I'm clearly
         too tired for this right now. Sorry about that
 v1.10 - useDIZ now handles file_id.diz parsing internally, thus the
         external txtdiz command is no longer needed
       - Fixed two hardcoded paths in the stats function
       - Minor fixes to the helpfile
       - Added some return values i had missed
       - Added a check if $helpfile is missing
       - Removed some faulty global variables
       - Documented help.txt



This site's contents, concept and design are (C)2003-2009 dMG/t!s^dS!
and/or the respective copyright holder.