home *** CD-ROM | disk | FTP | other *** search
/ Windows News 2006 October / wn148cd2.iso / Windows / Communiquer / Blog / Blog80Beta5Setup.exe / Blog.txt < prev    next >
Text File  |  2006-02-25  |  49KB  |  684 lines

  1. Blog version 8.0 beta 5
  2. ~~~~~~~~~~~~~~~~~~~~~~~
  3.  
  4. Table of Contents
  5. -----------------
  6.  
  7. Part  1 - Introduction
  8. Part  2 - What's New
  9. Part  3 - Installation
  10. Part  4 - Usage
  11. Part  5 - Server and Client Modes
  12. Part  6 - Problems/Incompatibilities
  13. Part  7 - Bug Reports/Suggestions
  14. Part  8 - Version History
  15. Part  9 - Future Plans
  16. Part 10 - Credits/Thanks
  17.  
  18. Part 1 - Introduction
  19.  
  20.     Blog is simply an application that I wrote to emulate Blogger (www.blogger.com) locally on my
  21.     hard disk instead of on a remote server. I wanted to be free of Internet access and maintainance
  22.     problems at the server end. I had used Blogger for a while and had come to like the service a
  23.     lot but it was missing a few features that I really wanted and so Blog was born. Blog provides
  24.     all the functionality of Blogger plus more except in one are - the ability to share the the 
  25.     task/burden of posting with multiple people. While Blog does have rudimentary shared posting 
  26.     capability via it's new Server and Client modes, remote users currently cannot edit or delete 
  27.     posts that they'd already made - this can only be done on the Server. Other than that, Blog is a
  28.     fairly versatile tool that a lot of users have come to like ...
  29.     
  30. Part 2 - What's New
  31.     + Added support for searching the current entry
  32.     + Added category support for posting via XMLRPC APIs
  33.     + Added the ability to post and retrieve from server-based blogging tools that support XMLRPC APIs
  34.     + Added option to not check for the Internet connection when publishing etc.
  35.     + Added a "format" attribute to all date and time tags in Blog
  36.     + Added an option to allow/disallow posting for future dates
  37.     + Added an ID column to the left-hand side entry table so that you can identify entries by ID (for troubleshooting mostly)
  38.     * Added WYSIWYG support for the search results display
  39.     * Fixed search functionality
  40.     * Fixed not being able to toggle live spellchecking on and off
  41.     * Fixed no live spellchecking being available in HTML view
  42.     * Fixed the bold dates on the calendar not getting updated after a purge
  43.     * Modified the image link dialog so that it has more options and an image preview
  44.  
  45. Part 3 - Installation
  46.     
  47.         If you are doing a completely new install of Blog, all you have to do is run the Blog
  48.     Setup program and it will install the program, create desktop and Start Menu icons for you
  49.     and then you can simply run Blog to get started on the task of setting up Blog.
  50.        
  51.         If you are doing an upgrade of an existing install and the previous version is 5.0 or later:
  52.     a) Backup your existing Blog data in the Blog direcotry.
  53.     b) Download the Blog Installer and run it. Point it to your existing Blog directory.
  54.     c) Run Blog - that's it :p
  55.     
  56.         If you are doing an upgrade of an existing install and previous version is 4.0 or earlier:
  57.     a) Download the Blog Conversion utility, extract it to the directory where you have Blog
  58.        installed, Run it and if there are any conversion options since your version, select the 
  59.        appropriate Convert menu option or options - if there are multiple options since your 
  60.        version run all of them.
  61.     b) Follow the steps above for a 5.0 or later upgrade.
  62.        
  63. Part 4 - Usage
  64.  
  65.     Blog is basically a database application which stores all entries you type in and additionally
  66.     posts the entries to a site (or sites) of your choice. Before you can begin working with Blog
  67.     however, you must configure a few things such as the FTP site(s) you want to use, the templates
  68.     to be used to publish your entries and the journal(s) that you will be publishing to as well
  69.     as the locations of these journals.
  70.     
  71.     In order to configure all the above mentioned settings, you must select Journal Management from
  72.     the Tools menu or the toolbar and you will be presented with a dialog to configure all these
  73.     settings. The FTP Sites tab allows you to name the FTP sites that you use and to define the login
  74.     information for each site. Additionally the FTP Sites tab has an FTP Site check box which when
  75.     unchecked marks that site as a local directory on your hard disk or a shared drive on a network. 
  76.     You then do not have to enter any information for the site besides the site name. The site name is
  77.     simply a descriptive name for the site which uniquely identifies the site. The FTP Site value is
  78.     where you identify the URL (but not the directory/path part of the URL) or the IP address for your
  79.     FTP server. The rest of the values should be fairly self explanatory but if not, you can always
  80.     refer to the tooltips that popup when you hold your mouse cursor over a certain field for a little
  81.     while.
  82.     
  83.     The Templates tab will already contain several predefined templates for the various types of 
  84.     templates used in Blog. You can customize them to suit your needs or better still make a copy
  85.     of an existing template and modify it till your journal looks the way you want it to. The 
  86.     Remote Template value allows you you to type in (or browse to) a file on your hard disk which 
  87.     contains the contents for that particular template. Any changes to the file will be reflected 
  88.     in the template when you next publish using Blog. Note that the term "remote template" does not
  89.     mean you can use a template on an FTP server or a file on the Internet - it has to be a file on
  90.     your hard disk or a shared drive on the network.
  91.     
  92.     The third tab - Journals - allows you to define your journal(s) and to specify certain settings
  93.     individual to each journal such as the date formats to be displayed for the journal entries and
  94.     the archive links, the archive type (monthly or weekly), whehther to display entries and archive
  95.     links in reverse or normal order, the name to be displayed as the author for that particular
  96.     journal (in case you don't have Use Windows User Name checked under globabl options) and the
  97.     URL linked to that journal so that you can browse the journal with a click of a button. The More...
  98.     tag value field defines the text that will be displaed if you were to use the <$BlogMore> tag (the
  99.     usage of this tag will be explained later on ...) Blog also has the ability to send out a weekly or
  100.     monthly digest of all entries in the journal via e-mail to subscribed users and you can configure
  101.     the digest from the Journals tab. Most of the settings for the digest are easy to understand - the
  102.     Strip HTML setting defines whether all HTML tags in the entries will be removed or not and this 
  103.     setting also controls whether the Digest is sent as plain text or HTML e-mail.
  104.     
  105.     The Sites tab allows you to define the site(s) and template(s) used for each of your journals. 
  106.     Using this dialog, you can define multiple sites for the same journal. It is also possible for 
  107.     you to define multiple journals for the same site or to use different templates for each site or 
  108.     each journal. It is as versatile as you need it to be :-) If you are using a local directory 
  109.     simply select the non-FTP site you defined earlier on the FTP Sites tab, give the full path to the 
  110.     directory as the Full Path value and Blog will simply copy over the files when publishing your 
  111.     journal. If you are not publishing to the root directory on your FTP server, then you need to give 
  112.     the absolute path to the directory from the root - when I say absolute path, I mean the path to 
  113.     the directory you want from the root of the FTP server but not the server adddress path. For 
  114.     example, if your journal is in ftp.myftp.com/mylog then you'd put /mylog for the Full Path value 
  115.     but if you are publishing to the root, then you can leave this value blank. You can also specify 
  116.     the Image Directory for that site in case you want any image files you link to from Blog to be 
  117.     placed in a location other than where the journal file itself will be. But be aware that image 
  118.     files will be uploaded to this directory only if you include them via the Image ... right-click 
  119.     link option. Otherwise, image files added to the Upload Manager will be treated as normal files 
  120.     since Blog has no way to differentiate between image files and other files. Note that the Archive
  121.     Template value actually defines the look of the archive table of contents and not archived entries -
  122.     archived entries are formatted using the Journal template. In case, you need a different extension
  123.     for your archived files (such as PHP to allow you to use PHP scripting), you can use the Archvie
  124.     Extension value to define what the file extension for all archive files should be. In case you are
  125.     using the built-in comments in Blog, the Comments Template allows you to assign a template which 
  126.     will define how any comments are displayed. Blog also has a feature where you can assign multiple
  127.     categories to any entry and display all entries per category as part of the category archives.
  128.     However, a point to be noted is that while normal date-wise archives can be automatically created,
  129.     category archives aren't automatically created and have to be always explicitly created from the
  130.     Tools menu's Publish Archives... option. The Category Template value defines how the archive display
  131.     for each category will look. Active checkbox allows you to deactivate a certain site and stop it
  132.     from being included in the publish process for a given journal and the Auto-archive checkbox lets
  133.     you decide whether to automatically create date-wise archives each time you publish or not.
  134.      
  135.     Once you have all the configuration done, all that remains is to make your journal entries. To 
  136.     make an entry, select the date of your choice from the calendar control Blog screen and then 
  137.     click the New Entry button on the toolbar or select New Entry from the Journal menu item and 
  138.     you should see that a new entry is created for the selected date and current time in the entry 
  139.     grid in the lower left hand corner of the screen. Now you can simply type whatever you want in 
  140.     the edit control on the top of the screen and click the Save button on the toolbar or the 
  141.     appropriate menu item to save your entry. You can also simply start typing if there are no 
  142.     entries at all for that date and when you click the Save button, the Date and Time will be
  143.     automatically populated for you. Note that you can have Blog automatically detect carriage returns 
  144.     and insert an HTML paragraph tag and/or line break tag depending on the number of carriage returns.
  145.     This feature is controlled by the Automatic Spacing checkbox on the Options dialog and it's two
  146.     sub-options: Paragraph on single CR/LF and Double <br/> for paragraph. The first sub-option lets
  147.     you choose whether to have all carriage returns identify a new paragraph or to have single carriage
  148.     returns be treated as line breaks and only double carriage returns to be treated as a new paragraph.
  149.     The second sub-option allows you to use two line breaks instead of using an explicit paragraph tag,
  150.     depending on your choice for layout/coding. You can also enter a title for the current entry on the 
  151.     edit line above the entry box.
  152.     
  153.     If your entry contained HTML code and you want to make sure that it displays as you intended, 
  154.     you can use the Preview toolbar button or the Preview Entry option on the Journal menu. This 
  155.     will bring forward the preview pane and hide the comments and category displays which are
  156.     usually to be seen below the entry window. When you click the Preview button again, the 
  157.     preview pane will hide and the comments and category view will be revealed. If you change the
  158.     current entry and want to refresh the preview, simply use the Refresh option on the right-click
  159.     context menu of the Preview pane.
  160.     
  161.     If you have more than one journal defined, you can select the journal of your choice from the 
  162.     toolbar using the two arrow buttons next to it and so switch journals easily. All publishing 
  163.     of entries will be performed for the currently selected journal.
  164.     
  165.     If you have multiple sites, it is possible to have different templates for each site and so 
  166.     have the same entries but with completely different looks at each site. The Blog installation 
  167.     will come with a several templates by default - these are sample templates that I have create
  168.     to give you an idea of what each type of template should look like. Feel free to modify them
  169.     or to create your own templates based on them.
  170.     
  171.     A template is simply a full HTML file without the journal entries or the archive links to 
  172.     weekly archive files. You simply tell Blog where to insert entries by using a pair of special 
  173.     tags - <Blog> and </Blog>. All Blog related stuff has to go within these tags. For a journal, 
  174.     you can use several extra tags:
  175.         <$BlogAnchor> - The point at which to insert the permalink anchor tag for each Blog entry
  176.         <$BlogAuthor> - The author of the entry
  177.         <$BlogComment> - Provide a link to send a comment via e-mail if there are no other comments
  178.             or provide a link to a page containig already sent comments.
  179.         <$BlogCommentCount> - The number of comments for the current entry (blank when zero)
  180.         <$BlogDate> - The date of the entry
  181.         <$BlogEntry> - The journal entry itself or the comment (if the template is for a comments page)
  182.         <$BlogExt> - An internal variable (usually) to handle the file extension for the blog
  183.         <$BlogID> - A unique identification number for each journal entry
  184.         <$BlogImgDir> - An internal variable to handle image linking
  185.         <$BlogLink> - The unique URL to the current entry
  186.         <$BlogMore> - A tag which allows you to put long posts on a different page automatically
  187.             and create a link to them instead of having the whole thin on your main page.
  188.         <$BlogTime> - The time of the entry
  189.         <$BlogSummary> - Provides the first x (x is defined via the Options dialog) number of 
  190.             characters of each entry. If the entry is shorter than x, then the full entry is provided.
  191.         <$BlogTitle> - The title for the current entry 
  192.         
  193.             The following tags need to be placed outside the <Blog> and </Blog> tags for the main
  194.         journal but the <$BlogArchive> entry can be used in an archive template as well - in which
  195.         case, it has to be in between the <Blog> and </Blog> tags:
  196.         <$BlogArchive> - This tag returns the archive links as an HTML table
  197.         <BlogArchives> - The start of a configurable archive display section
  198.         </BlogArchives> - The end of a configurable archive display section
  199.         <$BlogArcText> - Link text to be displayed for monthly/weekly archives inside a <BlogArchives>
  200.             and </BlogArchives> section
  201.         <$BlogArcFile> - File name for a monthly/weekly archive file inside a <BlogArchives> and
  202.             </BlogArchives> section
  203.         <$BlogArcCatText> - Similar to <$BlogArcText> but for categorized archives
  204.         <$BlogArcCatFile> - Similar to <$BlogArcFile> but for categorized archives
  205.         <$BlogArchivePrev> - The name of the previous Archive file
  206.         <$BlogArchiveNext> - The name of the next Archive file
  207.         <$BlogDigestSubscribe> - Provide the href link for subscribing to the digest version 
  208.         <$BlogDigestUnsubscribe> - Provide the link for unsubscribing from the digest version
  209.         <$BlogNewComment> - Provide the link for sending a comment (works only from a comments template)
  210.         <$BlogSysDate> - The current system date at the time of publishing
  211.         <$BlogSysTime> - The current system time at the time of publishing
  212.         <$BlogCookie> - If you have downloaded Cee, the cookie manager, and installed it in the
  213.             same directory as Blog and loaded some fortune cookies into the database then you 
  214.             can use this tag to display a different fortune cookie each time you publish your journal
  215.         
  216.     Blog also has a set of Blog tags named <BlogHeader> and </BlogHeader>. These tags have to 
  217.     be placed within the <Blog> and </Blog> tags but act as a mechanism for displaying any
  218.     date specific information that you might want to display for a set of entries for the 
  219.     same date. Basically, anything within the <BlogHeader> and </BlogHeader> tags are displayed 
  220.     only once per each date.
  221.         
  222.     For an archive table of contents template, there is only one special tag to go within the 
  223.     <Blog> and </Blog> tags and that is, <$BlogArchive>. This tag simply tells Blog where to place 
  224.     entries in the Archive table of contents. There is a modifier to the <$BlogArchive> tag which 
  225.     tells Blog how many columns of archival entries to display on the main archive page. You do 
  226.     this simply by adding the modifier cols as in <$BlogArchive cols=3> which would display three 
  227.     columns of archive entries. If no modifier is specified, a single column will be displayed by 
  228.     default. Incidentally, the archive template is used to define the table of contents files. The 
  229.     individual archived entries for each week are created using the same template used for journal 
  230.     entries and the files are automatically named by date. It is not necessary to always have the
  231.     archive table of contents on a separate file - if you want to display your archives (either
  232.     date-wise or category-wise) on your main journal itself, you can use the <BlogArchives> and
  233.     </BlogArchives> tags and define the look for the table of contents within these two tags. 
  234.     Refer to the external Blog tags section to see what tags can be used within the <BlogArchives>
  235.     and </BlogArchives> tags.
  236.     
  237.     Both the journal publishing and archiving processes upload the created files automatically
  238.     to your site/s or copy them over to a local directory if you are using a non-FTP site. If 
  239.     you are using an FTP site, you should be connected to the Internet when you select Publish 
  240.     or Archive if you haven't checked the Automatically dial out checkbox on the Options dialog
  241.     and selected a properly configured dial-up connection from the dropdown list. You should also 
  242.     have one or more active sites defined for your journal. If you check the Automatically 
  243.     Disconnect checkbox on the Options dialog, Blog will terminate your dial-up session once it is
  244.     done publishing.
  245.         
  246. Part 5 - Server and Client Modes
  247.  
  248.     Blog 6.0 added a new configuration option named Mode to Blog under a newly created Mode tab in the 
  249.     Blog Options dialog. Mode can have three different values:    Standard, Client and Server. In Standard
  250.     mode, Blog works just the way it did before version 6.0 whereas Client and Server modes allow multiple
  251.     users to post to the same journal without the need for an actual server-based system that most users
  252.     might not be able afford or know how to configure. In order for multiple users to be able to post, one
  253.     machine will have to run Blog in Server mode whereas all the other machines will run in Client mode.
  254.     There are however a few caveats, the main one being that the Client and Server machines should have
  255.     the same journal names (even down to case) since that's the way that Blog identifies which journal a
  256.     post is intended for - by journal name. The other problem is that while this method allows multiple
  257.     users to post, there currently is no way for a remote user to edit/delete an entry that they've made.
  258.     
  259.     The Server machine allows a user to both post entries of their own and to receive entries from other
  260.     users via e-mail and incorporate them into the journal before publishing. A machine running Blog in
  261.     Client mode on the other hand only allows a user to make an entry and send it off via e-mail to the
  262.     Server. You will have most of the standard functionality of Blog but will be missing a few things
  263.     such as the ability to link to older entries (since you won't have all the older entries on your 
  264.     machine and even the ones you can link to will probably point to an invalid location) and the ability
  265.     to upload files. You can even make multiple entries and post them via Client mode but note that in 
  266.     Client mode it is always the currently selected entry which is mailed out.
  267.     
  268.     If you select Server mode, you will need to configure Blog to check a specific e-mail address for posts
  269.     intended for your journal. In order to do this, you'll have to provide your POP server address as well
  270.     as the login and password for the POP server. The Subject Header value defines how Blog detects a post
  271.     intended for Blog. It is set to [Blog] by default but you can change this to some other value but in
  272.     that case, all Clients posting to your journal have to change the Subject Header value so that they all
  273.     have the same value. Otherwise, Blog will not detect incoming posts intended for Blog. The Delete Mail
  274.     check box is checked by default and should usually be left that way unless you want to do some debugging.
  275.     All it does is delete the posts intended for Blog (only those - not all of your unread e-mails <g>) after
  276.     Blog has retrieved them. If you do not check this box, Blog will leave those e-mails on the server and it
  277.     will create a duplicate entry the next time you publish using Blog - and since you can't have two entries
  278.     for the same journal on the same date and time, this will result in a Blog crash :p
  279.     
  280.     If you select Server Mode, you will note that a new Server tab gets added to the Options dialog. This tab
  281.     contains a few settings specific to Blog Server such as automated publishing and the ability to limit who
  282.     can (or cannot) post to your journals. The automated publishing option simply allows you to leave your
  283.     machine on and have Blog automatically check for new posts at a given time interval and update your site
  284.     with any new posts it finds. The Include/Exclude list allows you to limit the users who post to your 
  285.     journal. If this option is not selected, then anybody can post to your journal as long as they know the 
  286.     correct Subject Header and journal name. But if you enable this option and select Allow, only those people
  287.     whose e-mail address is on the list are allowed to post to your journal. Similarly, if you select Ban, all
  288.     people whose e-mail address matches those on the list, are not allowed to post and their posts are simply
  289.     ignored. There is also a checkbox which says "Publish Only if there are e-mails" - this checkbox can be a
  290.     bit confusing since this affects the working of Blog depending on the condition. If you check the box and
  291.     leave blog to publish automatically on timer, then Blog will publish to your site only if there are any
  292.     Blog related e-mails, otherwise it will do nothing. However, if this checkbox is not checked, then Blog
  293.     will republish your journal each time the timer goes off, irrespective of whether there are new entries
  294.     or not. However, if you click the toolbar publish button under Blog Server mode, Blog will always publish
  295.     whether there are new e-mails with entries or not since Blog assumes that you know what you're doing :p
  296.     
  297.     The Client mode settings include mail server settings (SMTP) and a from and to address. Please note the 
  298.     tooltip on the From: address for the from address format. It's important to have the name as well as 
  299.     the e-mail address as in the tooltip example if you want the author to be properly filled out in Blog.
  300.     The To: address simply specifies who the e-mailed entry is from and can be extremely important if the
  301.     server at the other end has an Include/Exclude list set up based on e-mail. If you are setting the 
  302.     Client up for your own use on the road, then both the From: and To: addresses probably will be the same
  303.     one. So why have two different values? Because if you are using a shared journal then the From: address
  304.     will be different depending on who does the posting. The Authenticate check box is used to force Blog to 
  305.     authenticate with the provided login and password in case your ISP/mail server requires authentication 
  306.     - normally, you should be able to leave this box unchecked. The other value of note is Subject Header, 
  307.     which as mentioned earlier for the Server Mode settings, should be the same on both the Client and Server.
  308.     
  309. Part 6 - Problems/Incompatibilities
  310.  
  311.     - None that I'm aware of.
  312.     
  313. Part 7 - Bug Reports/Suggestions
  314.  
  315.     There are a couple of ways to get support or to offer suggestions:
  316.     - You can join the rooksoft@yahoogroups.com list (send mail to rooksoft-subscribe@yahoogroups.
  317.       com)
  318.     - You can use the online RookSoft support forums at: http://forums.farook.org
  319.     - Unfortunately, no free personal support will be provided for Blog though there is the option to
  320.       pay for personal support. However, you can e-mail me at fahim@farook.org with bug reports and
  321.       suggestions
  322.  
  323. Part 8 - Version History
  324.     8.0B3    (20 January 2004)
  325.     + Added a new <$BlogAnchor> tag to control where the named anchor for a permalink goes
  326.     + Added a new option under the General tab of the Options dialog to specify whether to use the new <$BlogAnchor> tag or not
  327.     + Added the option to ping several blog monitoring services and an options setting to turn it off
  328.     * Fixed separators on a custom toolbar causing an AV when the custom definition dialog is closed
  329.     * Fixed deleting a custom snippet which has a button on the toolbar causing an AV
  330.     * Permanently fixed an internal problem dealing with hard coded icon counts swelling the Blog.INI file
  331.     * Fixed using CTRL+A to select all text not working in HTML view
  332.     * Fixed Undo, Redo, Cut, Copy and Paste not working in HTML view
  333.     * Fixed the pop-up menu entry for Hyperlink (Ctrl+L) not working in HTML view
  334.     * Fixed the font and background colour buttons not working
  335.     * Fixed (?) remote templates having their first few characters truncated
  336.     * Fixed entries with images needing to be published twice in some cases for the main file changes to show up
  337.     * Fixed the font family and size combo boxes not reflecting the font info for the current text
  338.     * Switched the version numbering from 0-based to 1-based (not a feature :p)
  339.  
  340.     8.0B2    (12 November 2003)
  341.     + Added upgrade routine to convert existing entries to display in the normal view
  342.     + Toolbars are now dockable and can be floated over the Blog window by double-clicking
  343.     + Added a strikeout button to the format toolbar
  344.     + Added the ability to insert tables in the normal view (needs more work though)
  345.     * Fixed hyperlink adding and editing not working in normal view
  346.     * Changed the file link dialog to handle both local and remote file links
  347.     * Changed the hyperlink dialog to handle both remote and local file links
  348.     * Changed the menus and toolbars to use Toolbar2K and TBX
  349.     * Rewrote the menu customization routines so that they aren't so buggy
  350.     * Fixed pre 8.0 entries with images getting truncated on publish
  351.     * Eliminated the need for the Blog.cfg files - toolbar customizations are now saved in an INI file
  352.     
  353.     8.0B1    (05 November 2003)
  354.     * Fixed external Blog tags not being parsed for archive table of contents template
  355.     * Fixed paste operations with CTRL+V always going to the entry window
  356.     * Fixed (?) drawing issues when scrolling the entry window
  357.     * Changed the number of posts to display on main page entry value from a maximum of 99 to 9999
  358.     * Made all external tags ($BlogSysTime, $BlogSysDate, $BlogCookie etc.) repeatable
  359.     + Added the ability to save file and image uploads to be saved across Blog sessions
  360.  
  361.     7.1        (26 February 2003)
  362.     + Added a collapsible splitter for the Category panel
  363.     * Moved the preview and comments to different tabs and put the Category panel beside the entry box
  364.     * Changed <$BlogNewComment> tag parsing to allow multiple instances of the tag in the same template
  365.     * Fixed a bug in e-mail entry checking for replacement which didn't take the journal into account
  366.     * Fixed the last digest date not being populated when a new journal is added
  367.     * Fixed problems with adding custom code snippet buttons to the edit toolbar
  368.     * Fixed the Allow/Ban values for Entries and Comments being switched
  369.     * Fixed resizing the Find results dialog not resizing the entry box
  370.     * Fixed the last month/week not appearing in the archive table of contents when there is only one entry for that period
  371.  
  372.     7.0        (31 October 2002)
  373.     + Added code to detect database corruption on startup and repair the affected tables
  374.     + Added option to convert carriage returns to paragraphs and line breaks
  375.     + Added sub-option to convert single carriage returns to paragraphs (for backward compatibility)
  376.     + Added sub-option to insert two <br/> tags instead of a <p> tag
  377.     * Fixed deleting a record causing a DBISAM error
  378.     * Changed code to not put paragraph tags if a Digest has HTML stripping enabled
  379.     * Fixed the calendar bold display not getting updated after an entry is deleted
  380.     * Fixed minor bugs in the purge entries dialog
  381.     * Changed certain HTML tags generated by Blog to be XHTML 1.1 compliant
  382.     * Fixed image linking problems when linking to a remote file (when it's a URL of an image file)
  383.     * Fixed HTML digests not displaying properly on the e-mail client
  384.     * Changed the behaviour of the Refresh context menu item on the preview pane to reload the entry
  385.     * Changed the comments display a bit and allowed deleting of comments on pressing DEL
  386.  
  387.     7.0B6    (03 October 2002)
  388.     + Added code to remember the Log window size and position 
  389.     + Encrypted passwords saved in the Blog.INI file
  390.     + Added HTML code stripping capabilities for the digest feature
  391.     * Fixed deleting an entry causing a database error
  392.     * Fixed the <$BlogCookie> tag causing an error when Cee is not installed
  393.     * Fixed not being able to remove all categorizations once you've assigned categorizations to an entry
  394.     * Fixed a second instance of Blog deleting data files
  395.     * Fixed the installer appending "Blog" if you want to change the default install directory and browse for it
  396.     * Fixed the journal file being uploaded to the image directory under certain circumstances
  397.     
  398.     7.0B5    (18 September 2002)
  399.     + Added option to order archives in reverse either by date or time or by both
  400.     * Fixed categorized archives not following the order (reverse/normal) used by normal archives
  401.     * Changed category table of contents listing to be sorted alphabetically
  402.     * Fixed not being able to use spaces in category descriptions
  403.     
  404.     7.0B3    (16 September 2002)
  405.     * Fixed the custom snippet buttons disappearing from the toolbar when new ones are defined
  406.     * Fixed entry deletion not removing categorization associations for that entry
  407.     * Fixed not being able to make more than one post per day ...
  408.     * Fixed "Invalid Media" error on Backup on some machines ?
  409.     
  410.     7.0B2    (13 September 2002)
  411.     + Added the ability to send out a periodic digest of entries via e-mail
  412.     + Added two new external Blog tags <$BlogDigestSubscribe> and <$BlogDigestUnsubscribe> to handle digest membership
  413.     + Added the ability to send comments via e-mail
  414.     + Added a new Blog entry tag named <$BlogComment> to handle the display and entry of new comments
  415.     + Added a new Blog entry tag, <$BlogCommentCount> to display the number of comments for an entry
  416.     + Added a new Blog external tag, <$BlogNewComment> to provide a new comment link from the Comments display page
  417.     + Added a Backup item to the Tools menu to allow the backing up of Blog data
  418.     + Added a Repair item to the Tools menu to allow users to repair damaged data tables
  419.     + Added the facility to assign multiple categorizations for each entry and to display these categorizations
  420.     + Added two new tags - <BlogArchives> and </BlogArchives> to enclose an archive entry section to allow better customization
  421.     + Added <$BlogArcText> and <$BlogArcFile> tags to define by-date archive entries
  422.     + Added <$BlogArcCatText> and <$BlogArcCatFile> tags to define by category archive entries
  423.     + Added <$BlogSummary> tag to provide the first few words (length configurable) of an entry
  424.     + Added saving Blog logging to a text file which is automatically cleared up after 100k
  425.     + Added code to delete an existing entry if another e-mail for the same date and time, by the same author, is received with an empty body
  426.     + Added a query to backup data before data conversion for a new version (on upgrading ...)
  427.     + Added a menu option to trigger the sending out of the digest for the current period (even if it has already been sent)
  428.     * Changed Server mode behaviour to replace an existing entry if a new one is by the same author and for the same date and time
  429.     * Changed the firewall configuration to use the new proxy configuration options for the Indy 9.0 components (no explicit SOCKS support)
  430.     * Fixed the Internet connectivity check to ignore check if posting only to local sites, only for Standard mode
  431.      
  432.     6.10    (16 August 2002)
  433.     * Fixed changing of journals not updating the calendar bold dates properly
  434.     * Changed the <$BlogArchivePrev> and <$BlogArchiveNext> tags to return just the file name not HTML code
  435.     * Fixed the <$BlogArchivePrev> and <$BlogArchiveNext> tags to verify that the archive pointed to actually exists
  436.     * Fixed the All Journals option for the Find dialog causing an error
  437.     * Fixed the Link button on the Find dialog causing an error when clicked
  438.     * Fixed the ability to run more than one instance of Blog
  439.     * Changed snippet insertion to place the cursor between the tags if no selection is made
  440.     * Fixed <$BlogImgDir> & <$BlogExt> tags at the end of an entry causing the removal of the last character
  441.     - Removed all the HTML tag insertion options from the edit right-click context menu
  442.     + Added a new Custom menu which allows definition of custom code snippets
  443.     + Added displaying dates on the Link to older entries dialog in bold for dates with entries
  444.     
  445.     6.00    (27 June 2002)
  446.     * Fixed Blog looking for a Net connection even when only publishing to local sites
  447.     * Changed the image directory linking to use relative paths if possible
  448.     
  449.     6.0B3    (20 June 2002)
  450.     + Added option to control whether Blog is minimized to the system tray or not
  451.     + Compressed the final executable with UPX to get a much smaller EXE file
  452.     + Added code to attach files and images to the e-mail under Client mode
  453.     + Added code to upload all attached files to the image directory on the web server under Server Mode
  454.     + Added Server mode option to not publish if there are no e-mailed entries
  455.     * Changed Client mode behaviour to link even files to point to the image directory
  456.     * Fixed the new version numbering causing problems under non-English number formatting
  457.     * Fixed font type and size settings not taking effect after a restart of Blog
  458.     * Fixed an AV (Access Violation) error on sending using Client Mode (not fatal)
  459.  
  460.     6.0B2    (10 June 2002)
  461.     + Added new General option to specify whether the http:// checkbox on the Link dialog is chcked by default or not
  462.     + Added option to edit entries displayed in the search results dialog
  463.     + Added option to specify whether to auto-save entries when idle or not
  464.     + Added options to automatically connect and disconnect from the Internet via dial-up connections
  465.     + Added three modes to Blog: standard, server & client and options to handle these modes
  466.     + Added a timed automatic publish option for Blog in Server mode
  467.     + Added the facility to either allow or disallow posters based on e-mail address in Server mode
  468.     + Added a new internal variable named <$BlogImgDir> so that image linking works properly
  469.     + Added option to confirm entry deletes
  470.     + Added code to display dates with entries in bold on the Blog calendar
  471.     * Fixed Preview cutting off the first character of the post
  472.     * Fixed multiple <$BlogExt> tags in one post not being parsed properly
  473.     * Fixed problem in FTP directory changing - now it should not go beyond virtual root
  474.     * Fixed the FTP connection not being re-established if the host is the same but the user names are different
  475.     * Fixed the last characters on the archive table of contents being cut off sometimes.
  476.     * Added better hints to the Full Path value fields
  477.     * Fixed the live spell-check option on the Edit menu not working after a restart of Blog
  478.     
  479.     5.0        (22 January 2002)
  480.     + Added database change detection and conversion to Blog itself instead of an external utility
  481.     + Added <$BlogSysDate> and <$BlogSysTime> tags to display the system time when publishing
  482.     + Added idle handling for Blog to write data to disk when Blog is idle
  483.     + Added HTML syntax highlighting to the template edit dialog
  484.     + Added a search option to search across journals or a specific journal
  485.     + Added an option to the Insert URL dialog to specify whehter to add http:// to the link
  486.     + Added an option to the Insert URL dialog to specify whehter to open the link in a new window
  487.     - Removed code which would automatically add http:// to a link if it wasn't present
  488.     * Converted the internal database structures to use DBISAM 3.0
  489.     * Fixed proxy support not being enabled unless you make some change to the options
  490.     * Fixed bug with deleting with unsaved changes which can potentially cause data corruption
  491.     * Fixed the linking to older entries dialog entry display not being scrollable
  492.     * Fixed problem with many of the edit right-click menu insert options inserting stuff at the wrong place if the entry had been saved.
  493.  
  494.     5.0B1    (07 September 2001)
  495.     + Added enabling and disabling of Save button based on changes
  496.     + Added spell checker and thesaurus capabilities
  497.     + Added syntax highlighting for HTML code
  498.     + Added multi-level redo
  499.     + Added a cookie database and support for displaying a fortune cookie with the <$BlogCookie> tag
  500.     + Added Cut, Copy and Paste options to the edit window context menu
  501.     * Fixed context menu insertions not being saved on already saved entries
  502.     * Fixed exiting with changes not prompting the user to save changes
  503.     * Fixed <$BlogArchivePrev> and <$BlogArchiveNext> sometimes being mistaken for <$BlogArchive>
  504.     * Fixed <$BlogArchivePrev> and <$BlogArchiveNext> sometimes not pointing to the correct file for the journal (not archives)
  505.     * Fixed <$BlogArchivePrev> and <$BlogArchiveNext> pointing to non-existent pages for oldest and newest
  506.  
  507.     4.0        (24 August 2001)
  508.     + Added OK & Cancel buttons to the Journal Management dialog (automatically saves/removes changes)
  509.     + Added hints for all values under the Journal management dialog
  510.     + Added option to display journal entries in ascending as well as descending order
  511.     + Added option to save Windows login name as the Author name for journal
  512.     + Added code to save the author name per entry instead of going by a global setting
  513.     + Added the option to have a different author name per journal
  514.     + Added Option to open the ReadMe via Help
  515.     + Added option to choose labels used by Blog for day and month names
  516.     + Added CTRL+ENTER as the shortcut key for a line break tag
  517.     + Added option to launch the default browser to display current journal's site
  518.     + Added option to specify a separate image upload directory per site
  519.     + Added check to automatically add "http://" to hyperlink inserts if it's not there
  520.     + Added shortcuts CTRL+N,CTRL+S,CTRL+D for New Entry, Save Entry and Delete Entry respectively
  521.     + Added a remote template option to have a given template linked to an external file
  522.     + Reintroduced the purge option and made it more flexible
  523.     + Added a title per entry and a new <$BlogTitle> tag to display it
  524.     + Added toolbar buttons for bold, italic and web preview
  525.     * Moved some of the Global Options to the Journal level so that each Journal can have separate settings
  526.     * Fixed trying to change journals with unsaved changes causing an error
  527.     * Fixed no date being displayed for subsequent sites if there's only one entry and multiple sites
  528.     * Fixed an FTP "Connected" message being treated as an error
  529.     * Fixed changing the calendar date with unsaved changes and saying 'Yes' to the prompt saving to the wrong date
  530.  
  531.     3.7        (13 August 2001)
  532.     + Added saving of visibility of the main toolbar and the edit toolbar
  533.     + Added Bold and Italics options and CTRL+B and CTRL+I shortcuts for them
  534.     + Added shortcuts for HyperLinks (CTRL+H) and Image (CTRL+M)
  535.     + Added the option for Blog to be minimized to the system tray
  536.     + When you have the Monthly archive format the table of contents entries show differently
  537.     + You can now have the <$BlogArchive> tag even in your main journal
  538.     + Added code to detect unsaved entries when New Entry is clicked and to prompt to save
  539.     + Added code to detect unsaved entries when Publish is clicked and to prompt to save
  540.     + Added functionality to allow only one instance of Blog to run
  541.     - Removed the new customizable menus since people didn't like them
  542.     * Modified the database structures to avoid a potential date related problem
  543.     * Fixed certain problems with changes not being updated immediately
  544.     * Fixed Blog having problems under non-English versions of Windows
  545.     * Fixed the move to parent directory command causing errors with certain FTP servers
  546.     * Fixed linking to older entries not working properly
  547.  
  548.     3.5        (03 August 2001)
  549.     - Removed the new animated menus since it causes a problem under Win95
  550.     + Added option to specify the time format used for <$BlogTime> tags
  551.     + Added <$BlogExt> tag to specify file extensions in linking
  552.     + Added <$BlogLink> tag to specify the archived link for the current story
  553.     + Added the option to specify archive type - weekly or monthly
  554.     + Added code to automatically save and restore the Blog window size and placement
  555.     + Added Edit menu with Select All and Undo options
  556.     + Added multi-level undo
  557.     + Added option to turn off automatically converting carriage returns to paragraph tags
  558.     + Added option to specify whether the number of days for which posts are shown is absolute or by actual entries
  559.     * Fixed the archive extension not being set properly for Entry Links
  560.     * Changed the code so that the same FTP site is not connected to multiple times
  561.     * Changed the archiving code to be more flexible
  562.     * Moved AutoArchive and Last Archived Date from being Journal specific options to site specific ones
  563.     * Changed Auto-archive to publish archives each time you publish the journal
  564.     * Fixed a problem when used on a machine using a non-American date format
  565.     * Changed the publishing start date from the current date to the last entry date
  566.     
  567.     3.0        (30 July 2001)
  568.     - Removed the journal being deleted when the final site for that journal was deleted
  569.     - Removed new journals being added via the Sites tab (in future, use the Journal tab)
  570.     + Added functionality to delete all sites and entries for a journal when it's deleted
  571.     + Added hints for the database navigation buttons on the Journal tab
  572.     + Added option to specify the extension for all archived entry files
  573.     * Fixed code allowing all journals to be deleted and still let Blog function
  574.     * Fixed the auto-inserted entry anchors not having a closing tag
  575.     * Fixed archiving through the Archive option only creating the table of contents file
  576.     * Modified the carriage returns to paragraph tag conversion code to be standards compliant
  577.  
  578.     3.0B1    (27 July 2001)
  579.     + Added an error check when trying to run Archive with no entries
  580.     + Added code to create Archive links only for weeks that have entries
  581.     + Added a new Autoarchive option per journal and a new tab to edit journal specific information
  582.     + Added a Last Archived value to display when a given journal was last archived
  583.     + Added code to automatically create archival entries each time a journal is published
  584.     + Added a modifier named cols to the <$BlogArchive> tag so that you can have multiple columns
  585.     + Added code to automatically insert a unique anchor for each entry for linking to other entries
  586.     + Added a dialog (and an option) to select previous entries to link to
  587.     + Added an option to specify the date format for archive entry links
  588.     * Modified the look and feel of the main menu
  589.     * Fixed a crash that occurs if you start an entry and then click on the calendar control
  590.     * Modified Blog functionality so that carriage returns are changed to paragraph tags at time of publishing
  591.     
  592.     2.5        (23 July 2001)
  593.     + Added hints for database navigation buttons on the Journal management dialog
  594.     * Fixed the File Upload manager closing when the Add button was clicked
  595.     * Fixed Blog tags besides <Blog> and </Blog> needing to be case sensitive
  596.     + Added a new <$BlogID> tag to uniquely identify each journal entry
  597.     * Fixed problems with the order of entries when they are entered for an older date
  598.     
  599.     2.5B2    (18 July 2001)
  600.     + Added an Upload File Manager so that you can manage the extra files uploaded by Blog
  601.     + Added a new toolbar for the journal entry box for frequently used right-click items
  602.     + Added an option to customize the Blog toolbars and to save customizations
  603.     - Removed the Edit Entry item from the menu since it was superfluous
  604.     * Fixed the Blog specific tags being case-sensitive
  605.     * Fixed warning messages when clicking on the Save button more than once
  606.     * Fixed the final character of a template being removed under certain circumstances
  607.     * Fixed the journals and entries not being deleted when the last site for that journal is removed
  608.     * Changed the journal management dialog resizeable so that template definitions are easier to edit
  609.     
  610.     2.5B1    (12 July 2001)
  611.     * Fixed the angle bracket code not working in all browsers except IE due to missing a ;
  612.     * Fixed the Purge option confirmation dialog displaying codes instead of a line break
  613.     * Fixed bug in archive publishing code which would create the archive files multiple times
  614.       when you publish to more than one site
  615.     + Added an option to specify number of days worth of old posts to display in your journal
  616.     + Added a new right-click menu option for File Links to the journal entry section
  617.     + Added dialogs for specifying HyperLinks, Images and File Links
  618.     + Added code to automatically upload images and files referenced via the new dialogs
  619.     
  620.     2.0        (18 June 2001)
  621.     + Added code to prevent errors when trying to delete with no entries for that date
  622.     + Added code to insert date and time at time of saving (for when the user starts typing without
  623.       clicking New Entry)
  624.     + Added option to be able to specify date formatting of your choice for publishing entries
  625.     + Added option to specify journal author and a Blog specific tag to display it
  626.     + Added new Blog tag to specify header information by date
  627.     + Added support for non-FTP sites so that you can publish to local drives
  628.     + Added an option to purge all entries for a particular journal
  629.     + Added an Options dialog and an INI file to save settings
  630.     + Added PASV support
  631.     + Added SOCKS Proxy support
  632.     * Fixed a crash which would occur if you tried to Publish immediately after a template change
  633.  
  634.     1.5        (11 June 2001)
  635.     - Removed the Convert menu entry under Tools (which shouldn't have been there in the first place)
  636.     - Removed extra button (OK/Cancel/Help) on dialogs that really didn't need them
  637.     * Modified the wording for all menu entries which lead to a dialog to contain ellipsis
  638.     * Changed the Journal name drop-down on the toolbar so that it actually works
  639.     * Merged the Journal Management and Options dialogs and named it Journal Management
  640.     + Added a log window to the main Blog window to display connection information
  641.     * Changed the main window so that it is resizeable and easier to control/access
  642.     * Modified the sites/journal definition so that you can define more than one journal for a site
  643.       much more easily.
  644.     + Added error handling and logging for FTP transfers
  645.     + Added the functionality detect a carriage return in the edit window automatically and to insert
  646.       a new HTML paragraph tag.
  647.     * Set Blog to create all temporary files in your system temp directory.
  648.       
  649.     1.1        (06 May 2001)
  650.     * Recompiled to use the DBISAM database engine thus eliminating the BDE
  651.     * Fixed a minor bug which published last 8 days worht of entries instead of 7 days
  652.     * Fixed archive entries not being generated for the last week in a given date range
  653.     - Removed the InstallShield installer as it is no longer needed to support the BDE
  654.     
  655.     1.0     (09 April 2001)
  656.     * Brand spanking new release of Blog
  657.  
  658. Part 9 - Future Plans
  659.  
  660.     * Perhaps some tools to make HTML composition easier - I haven't decided whehter I should or
  661.       not since some people don't really like the idea :-)
  662.     * Context sensitive help and better documentation
  663.     * A wizard based interface to make setting up Blog much easier
  664.     * Automation for multiple blogs since currently the digest and automatic publishing in Server
  665.       mode will only work for the currently selected journal 
  666.  
  667. Part 10 - Credits/Thanks
  668.  
  669.     - Ryan Pertusio for being kind enough to purchase a copy of PlusMemo in my name
  670.     - Nigel for all the suggestions that went into Blog 6.0 and for the idea of Phlogs :p
  671.     - Addictive Software (www.addictivesoftware.com) for providing me with a free copy of their
  672.       excellent Addict spell checker component
  673.     - Phil, Tyran, Bauke and Frank for the suggestions that went into making Blog 4.0 what it is    
  674.     - Jeroen, Welmoet and Tracie who worked with me tirelessly to figure out certain bugs in Blog 
  675.     - Jason who single-handedly pushed Blog from 3.0 to 3.5 with a host of suggestions and bug
  676.       reports <vbg>
  677.     - Chris (jugg) who always listens to my ideas and my problems with coding and always comes up
  678.       with excellent suggestions.
  679.     - Elevate Software (www.elevatesoft.com) for providing me with a free copy of the DBISAM engine
  680.       which makes the addition of database support for most of my Delphi software a breeze.
  681.     - sinesolis for the great new Blog icons that give Blog an entirely new look
  682.       
  683. Fahim (Fahim@farook.org)
  684. last updated: 20/01/2004