Update of /cvs/scoop/scoop/struct
In directory lithium.sabren.com:/tmp/cvs-serv12208/struct

Modified Files:
	scoop.sql 
Log Message:
I'll get this damn patch committed someday.

Calendar module bugfixes and block updates.

--rusty


Index: scoop.sql
===================================================================
RCS file: /cvs/scoop/scoop/struct/scoop.sql,v
retrieving revision 1.204
retrieving revision 1.205
diff -C2 -d -r1.204 -r1.205
*** scoop.sql	23 Jan 2005 03:45:59 -0000	1.204
--- scoop.sql	25 Jan 2005 15:22:21 -0000	1.205
***************
*** 196,203 ****
  
  INSERT INTO blocks VALUES ('footer','<DIV id=\"footer\">\r\n<P><A href=\"http://sourceforge.net\"><IMG src=\"http://sourceforge.net/sflogo.php?group_id=4901&type=1\" width=\"88\" height=\"31\" border=\"0\" alt=\"SourceForge Logo\"></A> \r\n<A HREF=\"http://scoop.kuro5hin.org\"><IMG SRC=\"%%imagedir%%/new_powered.gif\" ALT=\"Powered by Scoop\" BORDER=0></A></P>\r\n\r\n<FORM NAME=\"Search\" ACTION=\"%%rootdir%%\" METHOD=\"POST\">\r\n  <INPUT TYPE=\"hidden\" NAME=\"op\" VALUE=\"search\">\r\n  <INPUT TYPE=\"text\" SIZE=20 NAME=\"string\"><INPUT TYPE=\"submit\" VALUE=\"Search\">\r\n</FORM> \r\n\r\n<P>%%smallfont%%All trademarks and copyrights on this page are owned by their respective companies.  Comments are owned by the Poster. The Rest © 2004 The Management \r\n%%smallfont_end%%</P>\r\n</DIV>','1','<P>This block is used at the bottom of each page. It should be fairly self-contained HTML, and contain any copyright notices and badges you want displayed at the bottom of all pag!
 es. This block has no special keys.</P>','General','default','en');
! INSERT INTO blocks VALUES ('index_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n<LINK rel=\"stylesheet\" type=\"text/css\" href=\"%%rootdir%%/css/main\">\r\n</HEAD>\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <TR>\r\n    <!-- Left info column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"20%\" HEIGHT=20>\r\n      <!-- About Scoop -->\r\n      %%scoop_intro%%\r\n      <!-- X About Scoop -->\r\n    </TD>\r\n    <!-- X Left info column -->\r\n\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"55%\">\r\n      %%BOX,section_title%%\r\n      %%CONTENT%%\r\n    </TD>\r\n    <!-- X center content section -->\r\n\r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" width=\"25%\">\r\n        \r\n      %%BOX,main_menu%%\r\n      %%BOX,ad_box%%\r\n      %%BOX,user_box%%\r!
 \n      %%BOX,rdf_feeds%%\r\n      %%BOX,hotlist_box%%\r\n      %%BOX,admin_tools%%\r\n      %%BOX,poll_box%%\r\n      %%BOX,older_list_box%%\r\n\r\n    </TD>\r\n    <!-- X Right boxes column -->\r\n\r\n  </TR>        \r\n  <!-- X main page block -->\r\n</TABLE>\r\n<!-- X Main layout table -->\r\n\r\n%%footer%%\r\n\r\n<CENTER>%%BOX,menu_footer%%</CENTER>\r\n</BODY>\r\n</HTML>\r\n','1','<P>This block is used to build the front and section story index pages. It must be a full HTML page; dynamic content is added through the use of special keys. The special keys recognised are:</P>\n<DL>\n <DT>subtitle</DT>\n  <DD>This is replaced with the display name of the section being displayed.</DD>\n <DT>CONTENT</DT>\n  <DD>This is replaced with the story summaries for all of the stories that should be displayed on this page. It is built using the block <B>story_summary</B> once for each story displayed.</DD>\n</DL>\n','Page Templates','default','en');
  INSERT INTO blocks VALUES ('header','<!-- header table -->\r\n<DIV id=\"header\">\r\n%%section_links%%\r\n<A href=\"%%rootdir%%/\"><IMG SRC=\"%%imagedir%%/small_logo.jpg\" BORDER=0 ALT=\"Scoop -- the free news and discussion system\"></A>\r\n</DIV>\r\n<!-- X header table -->\r\n%%dynamicmode_iframe%%','1','<P>This block is used at the top of each page. It should be fairly self-contained HTML, and contain any site-wide navigation you want displayed at the top of all pages. This block has one special key; dynamicmode_iframe is replaced with an IFRAME tag on pages displaying dynamic comments, and with nothing otherwise.</P>','General','default','en');
  INSERT INTO blocks VALUES ('comment','<!-- start comment -->\r\n<DIV class=\"commenthead\">\r\n<A NAME=\"%%cid%%\">%%norm_font%%%%new%% <B>%%subject%%</B></A>\r\n%%rating_format%% (<A CLASS=\"light\" HREF=\"%%rootdir%%/comments/%%sid%%/%%cid%%#%%cid%%\">#%%cid%%</A>)%%norm_font_end%% <BR>%%norm_font%%by %%name%% %%email%% on %%date%%\r\n<BR>%%user_info%%%%edit_user%% %%url%%%%norm_font_end%%\r\n</DIV>\r\n\r\n<DIV class=\"commentbody\">\r\n%%norm_font%%%%comment%%\r\n<BR>%%sig%%\r\n<BR>%%actions%%%%norm_font_end%%\r\n</DIV>\r\n%%replies%%\r\n<!-- end comment -->\r\n','1','<P>This block is used to format each topical comment attached to a story or poll.  It is not used directly in any block, but is called repeatedly in the code, once for each topical comment displayed.  (Editorial comments use the block <B>moderation_comment</B>).  This should be a self-contained chunk of HTML code that can be nested arbitrarily deep.  The special keys recognised are:</P>\n<DL>\n <DT>uid</DT!
 >\n  <DD>The numeric user ID of the comment poster</DD>\n <DT>edit_user</DT>\n  <DD>The edit user link, only displayed if the user viewing the page has the perm <B>edit_user</B>.</DD>\n <DT>name</DT>\n  <DD>The nickname of the comment poster</DD>\n <DT>date</DT>\n  <DD>A formatted time/date string</DD>\n <DT>subject</DT>\n  <DD>The subject of the comment</DD>\n <DT>new</DT>\n  <DD>The contents of the block <B>new_comment_marker</B>, if the comment is not yet marked as read for the user viewing the comment.  Use this, not new_comment_marker, in this block.</DD>\n <DT>member</DT>\n  <DD>The contents of the block <B>mark_(groupname)</B>, if it exists for the poster\'s group</DD>\n <DT>sig</DT>\n  <DD>The user\'s signature, if one is set.</DD>\n <DT>rating_format</DT>\n  <DD>If ratings are turned off, or the user chooses not to see ratings, this is blanked; if ratings should be displayed, this is replaced with the contents of the block <B>rating_format</B> which may use the spe!
 cial keys <B>score</B> and <B>num_ratings</B> to display the current r
atings.</DD>\n <DT>comment</DT>\n  <DD>The body of the comment</DD>\n <DT>cid</DT>\n  <DD>The comment ID. This plus the sid uniquely identifies each comment.</DD>\n <DT>actions</DT>\n  <DD>The parent, reply, delete, toggle, and dynamic mode expand and collapse links; each part according to permissions.</DD>\n <DT>user_info</DT>\n  <DD>A link to the comment poster\'s user info page.</DD>\n <DT>sid</DT>\n  <DD>The story ID.  This plus the cid uniquely identifies each comment; this alone uniquely identifies each story or poll.</DD>\n <DT>score</DT>\n  <DD>The comment\'s current score, an average of all the ratings.</DD>\n <DT>num_ratings</DT>\n  <DD>The number of ratings given to the comment.</DD>\n <DT>email</DT>\n  <DD>The user\'s \"fake email\" from their user preferences in a mailto: link, if present</DD>\n <DT>url</DT>\n  <DD>The user\'s homepage from their user preferences in a link, if present</DD>\n <DT>replies</DT>\n  <DD>All comment replies.  If in threaded or minimal!
 , this is formatted as just the subject; if in nested, this is formatted as the full comment.</DD>\n</DL>','Comments','default','en');
! INSERT INTO blocks VALUES ('admin_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n<LINK rel=\"stylesheet\" type=\"text/css\" href=\"%%rootdir%%/css/main\">\r\n</HEAD>\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <!-- Main page block -->\r\n  <TR>\r\n		\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"72%\">\r\n      %%CONTENT%%\r\n    </TD>\r\n    <!-- X center content section -->\r\n		\r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"25%\">\r\n\r\n      %%BOX,main_menu%%\r\n      %%BOX,hotlist_box%%\r\n      %%BOX,user_box%%\r\n      %%BOX,admin_tools%%\r\n		\r\n    </TD>\r\n    <!-- X Right boxes column -->\r\n  </TR>\r\n  <!-- X main page block -->\r\n</TABLE>\r\n<!-- X Main layout table -->\r\n\r\n%%footer%%\r\n\r\n<CENTER>%%BOX,menu_foot!
 er%%</CENTER>\r\n</BODY>\r\n','1','This block is used to build most pages on the site.  It must be a full HTML page; dynamic content is added through the use of special keys.  The special keys recognised are:</P>\n<DL>\n <DT>subtitle</DT>\n  <DD>This is replaced with an appropriate subtitle indicating which page is currently being viewed.</DD>\n <DT>CONTENT</DT>\n  <DD>This is replaced with any other content specific to the page being requested.  It is provided by the function or box named in the Ops Admin Tool which handles the op (the first pseudo-directory) of the page.</P>\n<P>This block is used to create the Admin Tools pages, including the Blocks Admin Tool, so be very careful when changing it.  If you break this block, you will not be able to use any of the Admin Tools anymore and will not be able to fix it without going directly to the database.</P>','Page Templates','default','en');
  INSERT INTO blocks VALUES ('story_info','<!-- Story info -->\r\n<DIV class=\"story_info\">\r\n  %%smallfont%%%%story_info%%%%smallfont_end%%\r\n</DIV>\r\n<!-- X Story info -->\r\n\r\n','1','<P>This block displays information about the story and links to some of the things you can do. It recognizes one special key, story_info, which is replaced with the story name, number and type of comments, and the \'post a comment\' and \'edit\' links as permissions allow.</P>','Stories','default','en');
  INSERT INTO blocks VALUES ('story_summary','<DIV class=\"story_summary\">\r\n<DIV class=\"story_title\"><H2>%%title%%</H2>\r\n%%norm_font%%%%hotlist%%%%norm_font_end%%\r\n<BR>%%topic_img%%</DIV>\r\n\r\n<P>%%smallfont%%By %%info%%, Section %%section_link%%\r\n<BR>Posted on %%time%%%%smallfont_end%%</P>\r\n\r\n<DIV class=\"introtext\">\r\n%%norm_font%%%%introtext%%%%norm_font_end%%\r\n</DIV>\r\n<P>%%norm_font%%%%stats%% %%readmore%%%%norm_font_end%%</P>\r\n</DIV>','1','<P>This block is used to format the story headlines and introtext, both on the index pages and the story pages. It should be a self-contained bit of HTML that lays out the story\'s information. The following special keys are recognized:</P>\n<DL>\n <DT>info</DT>\n  <DD>The author\'s name and the story\'s \"department\" (if used)</DD>\n <DT>title</DT>\n  <DD>The story\'s title</DD>\n <DT>introtext</DT>\n  <DD>The formatted contents of the story\'s introtext field</DD>\n <DT>hotlist</DT>\n  <DD>The link to eithe!
 r add or remove the story to the user\'s hotlist. Blank for anonymous users and stories that haven\'t been published yet.</DD>\n <DT>topic_img</DT>\n  <DD>The topic image, linked to the search results for that topic.</DD>\n <DT>topic_text</DT>\n  <DD>The alt text for the topic image as a text link, linked to the search results for that topic.</DD>\n <DT>time</DT>\n  <DD>The localized time the story was posted.</DD>\n <DT>sid</DT>\n  <DD>The story ID; can be used in custom links.</DD>\n <DT>section_icon</DT>\n  <DD>The file name of the section icon; can be used in an IMG tag to display an icon.</DD>\n <DT>section_title</DT>\n  <DD>The title of the section.</DD>\n <DT>aid</DT>\n  <DD>The nickname of the story author</DD>\n <DT>section</DT>\n  <DD>The title of the section.</DD>\n <DT>new</DT>\n  <DD>The new story marker; displays the contents of the block <B>new_story_marker</B> if the logged-in user has not yet read the story, otherwise blank.</DD>\n <DT>readmore</DT>\n  <DD>!
 The link to the full story, drawing on either the block <B>readmore_tx
t</B> or <B>no_body_txt</B> as appropriate. Also the link to edit the story, if the user has the appropriate perms.</DD>\n <DT>stats</DT>\n  <DD>The number of comments and unread comments, and the number of words in the story.</DD>\n <DT>section_link</DT>\n  <DD>The section title as a link to the section index page</DD>\n</DL>','Stories','default','en');
--- 196,203 ----
  
  INSERT INTO blocks VALUES ('footer','<DIV id=\"footer\">\r\n<P><A href=\"http://sourceforge.net\"><IMG src=\"http://sourceforge.net/sflogo.php?group_id=4901&type=1\" width=\"88\" height=\"31\" border=\"0\" alt=\"SourceForge Logo\"></A> \r\n<A HREF=\"http://scoop.kuro5hin.org\"><IMG SRC=\"%%imagedir%%/new_powered.gif\" ALT=\"Powered by Scoop\" BORDER=0></A></P>\r\n\r\n<FORM NAME=\"Search\" ACTION=\"%%rootdir%%\" METHOD=\"POST\">\r\n  <INPUT TYPE=\"hidden\" NAME=\"op\" VALUE=\"search\">\r\n  <INPUT TYPE=\"text\" SIZE=20 NAME=\"string\"><INPUT TYPE=\"submit\" VALUE=\"Search\">\r\n</FORM> \r\n\r\n<P>%%smallfont%%All trademarks and copyrights on this page are owned by their respective companies.  Comments are owned by the Poster. The Rest © 2004 The Management \r\n%%smallfont_end%%</P>\r\n</DIV>','1','<P>This block is used at the bottom of each page. It should be fairly self-contained HTML, and contain any copyright notices and badges you want displayed at the bottom of all pag!
 es. This block has no special keys.</P>','General','default','en');
! INSERT INTO blocks VALUES ('index_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n%%css_includes%%\r\n</HEAD>\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <TR>\r\n    <!-- Left info column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"20%\" HEIGHT=20>\r\n      <!-- About Scoop -->\r\n      %%scoop_intro%%\r\n      <!-- X About Scoop -->\r\n    </TD>\r\n    <!-- X Left info column -->\r\n\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"55%\">\r\n      %%BOX,section_title%%\r\n      %%CONTENT%%\r\n    </TD>\r\n    <!-- X center content section -->\r\n\r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" width=\"25%\">\r\n        \r\n      %%BOX,main_menu%%\r\n      %%BOX,ad_box%%\r\n      %%BOX,user_box%%\r\n      %%BOX,rdf_feeds%%\r\n      %%BOX,hotlist_box%%\r\!
 n      %%BOX,admin_tools%%\r\n      %%BOX,poll_box%%\r\n      %%BOX,older_list_box%%\r\n\r\n    </TD>\r\n    <!-- X Right boxes column -->\r\n\r\n  </TR>        \r\n  <!-- X main page block -->\r\n</TABLE>\r\n<!-- X Main layout table -->\r\n\r\n%%footer%%\r\n\r\n<CENTER>%%BOX,menu_footer%%</CENTER>\r\n</BODY>\r\n</HTML>\r\n','1','<P>This block is used to build the front and section story index pages. It must be a full HTML page; dynamic content is added through the use of special keys. The special keys recognised are:</p>\r\n<DL>\r\n <DT>subtitle</dt>\r\n  <DD>This is replaced with the display name of the section being displayed.</dd>\r\n <DT>CONTENT</dt>\r\n  <DD>This is replaced with the story summaries for all of the stories that should be displayed on this page. It is built using the block <B>story_summary</b> once for each story displayed.</dd>\r\n</dl>\r\n','Page Templates','default','en');
  INSERT INTO blocks VALUES ('header','<!-- header table -->\r\n<DIV id=\"header\">\r\n%%section_links%%\r\n<A href=\"%%rootdir%%/\"><IMG SRC=\"%%imagedir%%/small_logo.jpg\" BORDER=0 ALT=\"Scoop -- the free news and discussion system\"></A>\r\n</DIV>\r\n<!-- X header table -->\r\n%%dynamicmode_iframe%%','1','<P>This block is used at the top of each page. It should be fairly self-contained HTML, and contain any site-wide navigation you want displayed at the top of all pages. This block has one special key; dynamicmode_iframe is replaced with an IFRAME tag on pages displaying dynamic comments, and with nothing otherwise.</P>','General','default','en');
  INSERT INTO blocks VALUES ('comment','<!-- start comment -->\r\n<DIV class=\"commenthead\">\r\n<A NAME=\"%%cid%%\">%%norm_font%%%%new%% <B>%%subject%%</B></A>\r\n%%rating_format%% (<A CLASS=\"light\" HREF=\"%%rootdir%%/comments/%%sid%%/%%cid%%#%%cid%%\">#%%cid%%</A>)%%norm_font_end%% <BR>%%norm_font%%by %%name%% %%email%% on %%date%%\r\n<BR>%%user_info%%%%edit_user%% %%url%%%%norm_font_end%%\r\n</DIV>\r\n\r\n<DIV class=\"commentbody\">\r\n%%norm_font%%%%comment%%\r\n<BR>%%sig%%\r\n<BR>%%actions%%%%norm_font_end%%\r\n</DIV>\r\n%%replies%%\r\n<!-- end comment -->\r\n','1','<P>This block is used to format each topical comment attached to a story or poll.  It is not used directly in any block, but is called repeatedly in the code, once for each topical comment displayed.  (Editorial comments use the block <B>moderation_comment</B>).  This should be a self-contained chunk of HTML code that can be nested arbitrarily deep.  The special keys recognised are:</P>\n<DL>\n <DT>uid</DT!
 >\n  <DD>The numeric user ID of the comment poster</DD>\n <DT>edit_user</DT>\n  <DD>The edit user link, only displayed if the user viewing the page has the perm <B>edit_user</B>.</DD>\n <DT>name</DT>\n  <DD>The nickname of the comment poster</DD>\n <DT>date</DT>\n  <DD>A formatted time/date string</DD>\n <DT>subject</DT>\n  <DD>The subject of the comment</DD>\n <DT>new</DT>\n  <DD>The contents of the block <B>new_comment_marker</B>, if the comment is not yet marked as read for the user viewing the comment.  Use this, not new_comment_marker, in this block.</DD>\n <DT>member</DT>\n  <DD>The contents of the block <B>mark_(groupname)</B>, if it exists for the poster\'s group</DD>\n <DT>sig</DT>\n  <DD>The user\'s signature, if one is set.</DD>\n <DT>rating_format</DT>\n  <DD>If ratings are turned off, or the user chooses not to see ratings, this is blanked; if ratings should be displayed, this is replaced with the contents of the block <B>rating_format</B> which may use the spe!
 cial keys <B>score</B> and <B>num_ratings</B> to display the current r
atings.</DD>\n <DT>comment</DT>\n  <DD>The body of the comment</DD>\n <DT>cid</DT>\n  <DD>The comment ID. This plus the sid uniquely identifies each comment.</DD>\n <DT>actions</DT>\n  <DD>The parent, reply, delete, toggle, and dynamic mode expand and collapse links; each part according to permissions.</DD>\n <DT>user_info</DT>\n  <DD>A link to the comment poster\'s user info page.</DD>\n <DT>sid</DT>\n  <DD>The story ID.  This plus the cid uniquely identifies each comment; this alone uniquely identifies each story or poll.</DD>\n <DT>score</DT>\n  <DD>The comment\'s current score, an average of all the ratings.</DD>\n <DT>num_ratings</DT>\n  <DD>The number of ratings given to the comment.</DD>\n <DT>email</DT>\n  <DD>The user\'s \"fake email\" from their user preferences in a mailto: link, if present</DD>\n <DT>url</DT>\n  <DD>The user\'s homepage from their user preferences in a link, if present</DD>\n <DT>replies</DT>\n  <DD>All comment replies.  If in threaded or minimal!
 , this is formatted as just the subject; if in nested, this is formatted as the full comment.</DD>\n</DL>','Comments','default','en');
! INSERT INTO blocks VALUES ('admin_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n%%css_includes%%\r\n</HEAD>\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <!-- Main page block -->\r\n  <TR>\r\n		\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"72%\">\r\n      %%CONTENT%%\r\n    </TD>\r\n    <!-- X center content section -->\r\n		\r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"25%\">\r\n\r\n      %%BOX,main_menu%%\r\n      %%BOX,hotlist_box%%\r\n      %%BOX,user_box%%\r\n      %%BOX,admin_tools%%\r\n		\r\n    </TD>\r\n    <!-- X Right boxes column -->\r\n  </TR>\r\n  <!-- X main page block -->\r\n</TABLE>\r\n<!-- X Main layout table -->\r\n\r\n%%footer%%\r\n\r\n<CENTER>%%BOX,menu_footer%%</CENTER>\r\n</BODY>\r\n','1','This block is used to !
 build most pages on the site.  It must be a full HTML page; dynamic content is added through the use of special keys.  The special keys recognised are:</P>\n<DL>\n <DT>subtitle</DT>\n  <DD>This is replaced with an appropriate subtitle indicating which page is currently being viewed.</DD>\n <DT>CONTENT</DT>\n  <DD>This is replaced with any other content specific to the page being requested.  It is provided by the function or box named in the Ops Admin Tool which handles the op (the first pseudo-directory) of the page.</P>\n<P>This block is used to create the Admin Tools pages, including the Blocks Admin Tool, so be very careful when changing it.  If you break this block, you will not be able to use any of the Admin Tools anymore and will not be able to fix it without going directly to the database.</P>','Page Templates','default','en');
  INSERT INTO blocks VALUES ('story_info','<!-- Story info -->\r\n<DIV class=\"story_info\">\r\n  %%smallfont%%%%story_info%%%%smallfont_end%%\r\n</DIV>\r\n<!-- X Story info -->\r\n\r\n','1','<P>This block displays information about the story and links to some of the things you can do. It recognizes one special key, story_info, which is replaced with the story name, number and type of comments, and the \'post a comment\' and \'edit\' links as permissions allow.</P>','Stories','default','en');
  INSERT INTO blocks VALUES ('story_summary','<DIV class=\"story_summary\">\r\n<DIV class=\"story_title\"><H2>%%title%%</H2>\r\n%%norm_font%%%%hotlist%%%%norm_font_end%%\r\n<BR>%%topic_img%%</DIV>\r\n\r\n<P>%%smallfont%%By %%info%%, Section %%section_link%%\r\n<BR>Posted on %%time%%%%smallfont_end%%</P>\r\n\r\n<DIV class=\"introtext\">\r\n%%norm_font%%%%introtext%%%%norm_font_end%%\r\n</DIV>\r\n<P>%%norm_font%%%%stats%% %%readmore%%%%norm_font_end%%</P>\r\n</DIV>','1','<P>This block is used to format the story headlines and introtext, both on the index pages and the story pages. It should be a self-contained bit of HTML that lays out the story\'s information. The following special keys are recognized:</P>\n<DL>\n <DT>info</DT>\n  <DD>The author\'s name and the story\'s \"department\" (if used)</DD>\n <DT>title</DT>\n  <DD>The story\'s title</DD>\n <DT>introtext</DT>\n  <DD>The formatted contents of the story\'s introtext field</DD>\n <DT>hotlist</DT>\n  <DD>The link to eithe!
 r add or remove the story to the user\'s hotlist. Blank for anonymous users and stories that haven\'t been published yet.</DD>\n <DT>topic_img</DT>\n  <DD>The topic image, linked to the search results for that topic.</DD>\n <DT>topic_text</DT>\n  <DD>The alt text for the topic image as a text link, linked to the search results for that topic.</DD>\n <DT>time</DT>\n  <DD>The localized time the story was posted.</DD>\n <DT>sid</DT>\n  <DD>The story ID; can be used in custom links.</DD>\n <DT>section_icon</DT>\n  <DD>The file name of the section icon; can be used in an IMG tag to display an icon.</DD>\n <DT>section_title</DT>\n  <DD>The title of the section.</DD>\n <DT>aid</DT>\n  <DD>The nickname of the story author</DD>\n <DT>section</DT>\n  <DD>The title of the section.</DD>\n <DT>new</DT>\n  <DD>The new story marker; displays the contents of the block <B>new_story_marker</B> if the logged-in user has not yet read the story, otherwise blank.</DD>\n <DT>readmore</DT>\n  <DD>!
 The link to the full story, drawing on either the block <B>readmore_tx
t</B> or <B>no_body_txt</B> as appropriate. Also the link to edit the story, if the user has the appropriate perms.</DD>\n <DT>stats</DT>\n  <DD>The number of comments and unread comments, and the number of words in the story.</DD>\n <DT>section_link</DT>\n  <DD>The section title as a link to the section index page</DD>\n</DL>','Stories','default','en');
***************
*** 217,224 ****
  INSERT INTO blocks VALUES ('vote_console','<!-- vote_console -->\r\n<DIV id+\"vote_console\">\r\n  <P>%%norm_font%%Your vote really does count! <B>You</B> decide whether this story ever sees the light of the front page. So vote!%%norm_font_end%%</P>\r\n\r\n<P>%%norm_font%%\r\n%%vote_form%%\r\n%%norm_font_end%%</P>\r\n</DIV>\r\n<!-- X vote_console -->\r\n','1','<P>This block is displayed below the story body for stories still in the voting queue. It should be self-contained HTML and explain what the voting is for. The special key vote_form is replaced with the actual form.</P>','Stories','default','en');
  INSERT INTO blocks VALUES ('blank_box','<DIV class=\"blank_box\">%%content%%</DIV>','1','<P>This block is used to provide a container for box output, and is not used directly in the page templates.  It should be self-contained HTML, and provide a \"blank\" frame for the box output.  The special keys recognised are:</P>\n<DL>\n <DT>title</DT>\n  <DD>The title of the box; if the box code returns a value for the title, that is used, otherwise the title field set in the Boxes Admin Tool is used</DD>\n <DT>content</DT>\n  <DD>The main body of the box.  This is the only thing the box code must return; if the box returns nothing or an empty string, the entire box (and its template) is not displayed at all</DD>\n <DT>bid</DT>\n  <DD>The internal name for the box.</DD>\n</DL>','Box Templates','default','en');
! INSERT INTO blocks VALUES ('story_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n<LINK rel=\"stylesheet\" type=\"text/css\" href=\"%%rootdir%%/css/main\">\r\n</HEAD>\r\n%%dynamicmode_javascript%%\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <!-- Main page block -->\r\n  <TR>\r\n		\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"75%\">\r\n      <!-- Story stuff -->\r\n      %%STORY%%\r\n      <!-- X story stuff -->\r\n    </TD>\r\n    <!-- X center content section -->\r\n		\r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"25%\">\r\n      %%BOX,main_menu%%\r\n      %%BOX,user_box%%\r\n      %%BOX,hotlist_box%%\r\n      %%BOX,admin_tools%%\r\n      %%BOX,poll_box%%\r\n      %%BOX,related_links%%\r\n      %%BOX,mod_stats%%\r\n    </TD>\r\n    <!
 !-- X Right boxes column -->\r\n  </TR>\r\n  <!-- X main page block -->\r\n</TABLE>\r\n<!-- X Main layout table -->\r\n\r\n<!-- comments -->\r\n%%CONTENT%%\r\n%%BOX,comment_controls%%\r\n%%COMMENTS%%\r\n%%BOX,comment_controls%%\r\n<!-- X comments -->\r\n\r\n%%footer%%\r\n\r\n<CENTER>%%BOX,menu_footer%%</CENTER>\r\n</BODY>\r\n</HTML>\r\n','1','<P>This block is used to build the story and comment display pages.  It must be a full HTML page. The special keys recognised are:</P>\n<DL>\n <DT>subtitle</DT>\n  <DD>This is replaced with an appropriate subtitle indicating which page is currently being viewed.</DD>\n <DT>dynamicmode_javascript</DT>\n  <DD>This is replaced with javascript for the dynamic comment display if the page template is being used for comment display.</DD>\n <DT>STORY</DT>\n  <DD>This is replaced with either the poll display or the story display, if either are being viewed.</DD>\n <DT>CONTENT</DT>\n  <DD>This is replaced with any other content specific to the p!
 age being requested.  It is provided by the function or box named in t
he Ops Admin Tool which handles the op (the first pseudo-directory) of the page.</DD>\n</DL>','Page Templates','default','en');
  INSERT INTO blocks VALUES ('attach_poll_message','<P>Using the form below, you can attach a poll to this story. Polls are not required, but if you want one, fill in a question and some answers.</P>','1','<P>This block is displayed below the story submission form and above the attached poll submission form.  It should be self-contained HTML and should contain an explanation of polls attached to stories.  There are no special keys.</P>','Polls,Stories','default','en');
! INSERT INTO blocks VALUES ('default_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n%%dynamicmode_javascript%%\r\n<LINK rel=\"stylesheet\" type=\"text/css\" href=\"%%rootdir%%/css/main\">\r\n</HEAD>\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <!-- Main page block -->\r\n  <TR>\r\n		\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"72%\">\r\n      %%STORY%%\r\n      %%BOX,comment_controls%%\r\n      %%CONTENT%%\r\n      %%BOX,comment_controls%%\r\n    </TD>\r\n    <!-- X center content section -->\r\n		\r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"25%\">\r\n\r\n      %%BOX,main_menu%%\r\n      %%BOX,hotlist_box%%\r\n      %%BOX,user_box%%\r\n      %%BOX,admin_tools%%\r\n		\r\n    </TD>\r\n    <!-- X Right boxes column -->\r\n  </TR>\r\n  !
 <!-- X main page block -->\r\n</TABLE>\r\n<!-- X Main layout table -->\r\n\r\n%%footer%%\r\n\r\n<CENTER>%%BOX,menu_footer%%</CENTER>\r\n</BODY>\r\n','1','<P>This block is used to build most pages on the site.  It must be a full HTML page; dynamic content is added through the use of special keys.  The special keys recognised are:</P>\n<DL>\n <DT>subtitle</DT>\n  <DD>This is replaced with an appropriate subtitle indicating which page is currently being viewed.</DD>\n <DT>dynamicmode_javascript</DT>\n  <DD>This is replaced with javascript for the dynamic comment display if the page template is being used for comment display.</DD>\n <DT>STORY</DT>\n  <DD>This is replaced with either the poll display or the story display, if either are being viewed.</DD>\n <DT>CONTENT</DT>\n  <DD>This is replaced with any other content specific to the page being requested.  It is provided by the function or box named in the Ops Admin Tool which handles the op (the first pseudo-directory) of the !
 page.  This can be forms, comments, special pages, or custom content f
rom your own boxes.</DD>\n</DL>','Page Templates','default','en');
! INSERT INTO blocks VALUES ('submit_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n<LINK rel=\"stylesheet\" type=\"text/css\" href=\"%%rootdir%%/css/main\">\r\n</HEAD>\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <!-- Main page block -->\r\n  <TR>\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"75%\">\r\n      %%STORY%%\r\n      %%CONTENT%%\r\n    </TD>\r\n    <!-- X center content section -->\r\n		\r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"25%\">\r\n      %%BOX,main_menu%%\r\n      %%BOX,hotlist_box%%\r\n      %%BOX,user_box%%\r\n      %%BOX,admin_tools%%\r\n      %%BOX,poll_box%%\r\n    </TD>\r\n    <!-- X Right boxes column -->\r\n  </TR>\r\n  <!-- X main page block -->\r\n</TABLE>\r\n<!-- X Main layout table -->\r\n\r\n%%footer%%\!
 r\n\r\n<CENTER>%%BOX,menu_footer%%</CENTER>\r\n</BODY>\r\n</HTML>\r\n','1','<P>This block is the page template used to build the story and ad submission forms. It must be a full HTML page. The special keys recognised are:</P>\n<DL>\n <DT>subtitle</DT>\n  <DD>This is replaced with an appropriate subtitle indicating which page is currently being viewed.</DD>\n <DT>STORY</DT>\n  <DD>This is replaced with either the poll display or the story display, if either are being viewed.</DD>\n <DT>CONTENT</DT>\n  <DD>This is replaced with any other content specific to the page being requested.  It is provided by the function or box named in the Ops Admin Tool which handles the op (the first pseudo-directory) of the page.</DD>\n</DL>','Page Templates','default','en');
  INSERT INTO blocks VALUES ('story_body','<DIV class=\"story_body\">%%norm_font%%\r\n%%bodytext%%\r\n%%norm_font_end%%</DIV>\r\n','1','<P>This block is used to format the body (extended copy only) of a story. It should be self-contained HTML. It recognizes one special key, bodytext, which is replaced with the formatted contents of the extended copy field of the story.</P>','Stories','default','en');
  INSERT INTO blocks VALUES ('readmore_txt','Full Story','1','<P>This block is used as the text of the link leading to the full story and comments, when there is a story body. If there is no story body, the block <B>no_body_txt</B> is used instead.</P>','Stories','default','en');
--- 217,224 ----
  INSERT INTO blocks VALUES ('vote_console','<!-- vote_console -->\r\n<DIV id+\"vote_console\">\r\n  <P>%%norm_font%%Your vote really does count! <B>You</B> decide whether this story ever sees the light of the front page. So vote!%%norm_font_end%%</P>\r\n\r\n<P>%%norm_font%%\r\n%%vote_form%%\r\n%%norm_font_end%%</P>\r\n</DIV>\r\n<!-- X vote_console -->\r\n','1','<P>This block is displayed below the story body for stories still in the voting queue. It should be self-contained HTML and explain what the voting is for. The special key vote_form is replaced with the actual form.</P>','Stories','default','en');
  INSERT INTO blocks VALUES ('blank_box','<DIV class=\"blank_box\">%%content%%</DIV>','1','<P>This block is used to provide a container for box output, and is not used directly in the page templates.  It should be self-contained HTML, and provide a \"blank\" frame for the box output.  The special keys recognised are:</P>\n<DL>\n <DT>title</DT>\n  <DD>The title of the box; if the box code returns a value for the title, that is used, otherwise the title field set in the Boxes Admin Tool is used</DD>\n <DT>content</DT>\n  <DD>The main body of the box.  This is the only thing the box code must return; if the box returns nothing or an empty string, the entire box (and its template) is not displayed at all</DD>\n <DT>bid</DT>\n  <DD>The internal name for the box.</DD>\n</DL>','Box Templates','default','en');
! INSERT INTO blocks VALUES ('story_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n%%css_includes%%\r\n</HEAD>\r\n%%dynamicmode_javascript%%\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <!-- Main page block -->\r\n  <TR>\r\n		\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"75%\">\r\n      <!-- Story stuff -->\r\n      %%STORY%%\r\n      <!-- X story stuff -->\r\n    </TD>\r\n    <!-- X center content section -->\r\n		\r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"25%\">\r\n      %%BOX,main_menu%%\r\n      %%BOX,user_box%%\r\n      %%BOX,hotlist_box%%\r\n      %%BOX,admin_tools%%\r\n      %%BOX,poll_box%%\r\n      %%BOX,related_links%%\r\n      %%BOX,mod_stats%%\r\n    </TD>\r\n    <!-- X Right boxes column -->\r\n  </TR>\r\n  <!-- X main !
 page block -->\r\n</TABLE>\r\n<!-- X Main layout table -->\r\n\r\n<!-- comments -->\r\n%%CONTENT%%\r\n%%BOX,comment_controls%%\r\n%%COMMENTS%%\r\n%%BOX,comment_controls%%\r\n<!-- X comments -->\r\n\r\n%%footer%%\r\n\r\n<CENTER>%%BOX,menu_footer%%</CENTER>\r\n</BODY>\r\n</HTML>\r\n','1','<P>This block is used to build the story and comment display pages.  It must be a full HTML page. The special keys recognised are:</P>\n<DL>\n <DT>subtitle</DT>\n  <DD>This is replaced with an appropriate subtitle indicating which page is currently being viewed.</DD>\n <DT>dynamicmode_javascript</DT>\n  <DD>This is replaced with javascript for the dynamic comment display if the page template is being used for comment display.</DD>\n <DT>STORY</DT>\n  <DD>This is replaced with either the poll display or the story display, if either are being viewed.</DD>\n <DT>CONTENT</DT>\n  <DD>This is replaced with any other content specific to the page being requested.  It is provided by the function or b!
 ox named in the Ops Admin Tool which handles the op (the first pseudo-
directory) of the page.</DD>\n</DL>','Page Templates','default','en');
  INSERT INTO blocks VALUES ('attach_poll_message','<P>Using the form below, you can attach a poll to this story. Polls are not required, but if you want one, fill in a question and some answers.</P>','1','<P>This block is displayed below the story submission form and above the attached poll submission form.  It should be self-contained HTML and should contain an explanation of polls attached to stories.  There are no special keys.</P>','Polls,Stories','default','en');
! INSERT INTO blocks VALUES ('default_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n%%dynamicmode_javascript%%\r\n%%css_includes%%\r\n</HEAD>\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <!-- Main page block -->\r\n  <TR>\r\n		\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"72%\">\r\n      %%STORY%%\r\n      %%BOX,comment_controls%%\r\n      %%CONTENT%%\r\n      %%BOX,comment_controls%%\r\n    </TD>\r\n    <!-- X center content section -->\r\n		\r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"25%\">\r\n\r\n      %%BOX,main_menu%%\r\n      %%BOX,hotlist_box%%\r\n      %%BOX,user_box%%\r\n      %%BOX,admin_tools%%\r\n		\r\n    </TD>\r\n    <!-- X Right boxes column -->\r\n  </TR>\r\n  <!-- X main page block -->\r\n</TABLE>\r\n<!-- X Main lay!
 out table -->\r\n\r\n%%footer%%\r\n\r\n<CENTER>%%BOX,menu_footer%%</CENTER>\r\n</BODY>\r\n','1','<P>This block is used to build most pages on the site.  It must be a full HTML page; dynamic content is added through the use of special keys.  The special keys recognised are:</P>\n<DL>\n <DT>subtitle</DT>\n  <DD>This is replaced with an appropriate subtitle indicating which page is currently being viewed.</DD>\n <DT>dynamicmode_javascript</DT>\n  <DD>This is replaced with javascript for the dynamic comment display if the page template is being used for comment display.</DD>\n <DT>STORY</DT>\n  <DD>This is replaced with either the poll display or the story display, if either are being viewed.</DD>\n <DT>CONTENT</DT>\n  <DD>This is replaced with any other content specific to the page being requested.  It is provided by the function or box named in the Ops Admin Tool which handles the op (the first pseudo-directory) of the page.  This can be forms, comments, special pages, or cus!
 tom content from your own boxes.</DD>\n</DL>','Page Templates','defaul
t','en');
! INSERT INTO blocks VALUES ('submit_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n%%css_includes%%\r\n</HEAD>\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <!-- Main page block -->\r\n  <TR>\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"75%\">\r\n      %%STORY%%\r\n      %%CONTENT%%\r\n    </TD>\r\n    <!-- X center content section -->\r\n		\r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"25%\">\r\n      %%BOX,main_menu%%\r\n      %%BOX,hotlist_box%%\r\n      %%BOX,user_box%%\r\n      %%BOX,admin_tools%%\r\n      %%BOX,poll_box%%\r\n    </TD>\r\n    <!-- X Right boxes column -->\r\n  </TR>\r\n  <!-- X main page block -->\r\n</TABLE>\r\n<!-- X Main layout table -->\r\n\r\n%%footer%%\r\n\r\n<CENTER>%%BOX,menu_footer%%</CENTER>\r\n</BODY>\r\!
 n</HTML>\r\n','1','<P>This block is the page template used to build the story and ad submission forms. It must be a full HTML page. The special keys recognised are:</P>\n<DL>\n <DT>subtitle</DT>\n  <DD>This is replaced with an appropriate subtitle indicating which page is currently being viewed.</DD>\n <DT>STORY</DT>\n  <DD>This is replaced with either the poll display or the story display, if either are being viewed.</DD>\n <DT>CONTENT</DT>\n  <DD>This is replaced with any other content specific to the page being requested.  It is provided by the function or box named in the Ops Admin Tool which handles the op (the first pseudo-directory) of the page.</DD>\n</DL>','Page Templates','default','en');
  INSERT INTO blocks VALUES ('story_body','<DIV class=\"story_body\">%%norm_font%%\r\n%%bodytext%%\r\n%%norm_font_end%%</DIV>\r\n','1','<P>This block is used to format the body (extended copy only) of a story. It should be self-contained HTML. It recognizes one special key, bodytext, which is replaced with the formatted contents of the extended copy field of the story.</P>','Stories','default','en');
  INSERT INTO blocks VALUES ('readmore_txt','Full Story','1','<P>This block is used as the text of the link leading to the full story and comments, when there is a story body. If there is no story body, the block <B>no_body_txt</B> is used instead.</P>','Stories','default','en');
***************
*** 283,287 ****
  INSERT INTO blocks VALUES ('donate_email_pledge','Thank you for your donation. Please remember to send $%%AMOUNT%% to our mailing address.',NULL,'<P>This block is an email sent to a user who has pledged to send a donation. It should be plain text and contain the amount the user has pledged and a reminder to send the amount. Putting the mailing address in this block is probably a good idea too. Because this is an email and is not sent through the usual processing given an HTML page, no keys except the following special keys will work.</P>\n<DL>\n <DT>AMOUNT</DT>\n  <DD>The amount pledged.</DD>\n</DL>','Emails','default','en');
  INSERT INTO blocks VALUES ('confirm_ad_renew','<P>%%norm_font%% Be sure this is the number of impressions you want to purchase, and hit \"Purchase\" below when you are ready to renew your ad %%norm_font_end%%</P>','1','<P>This block is used during the final confirmation step of ad renewal.  It should be reasonably self-contained HTML and contain a message explaining that this is the final confirmation step before the ad renewal is actually processed.  There are no special keys. Ad renewal is yet another unimplemented ad feature.</P>','Ads','default','en');
! INSERT INTO blocks VALUES ('dynamic_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n%%dynamicmode_javascript%%\r\n<LINK rel=\"stylesheet\" type=\"text/css\" href=\"%%rootdir%%/css/main\">\r\n</HEAD>\r\n<BODY onload=\"copyContent(%%mainpid%%,%%dynamicmode%%)\">\r\n%%CONTENT%%\r\n</BODY>\r\n</HTML>\r\n','1','<P>This block is a nearly empty page template used for loading individual comments in dynamic mode. It must contain the correct <B>BODY onload</B> event. You probably shouldn\'t change this, since it will never be seen directly anyway. There are two special keys: mainpid and dynamicmode; both are set by the code to indicate whether or not dynamic comments are in use.</P>','Comments,Page Templates','default','en');
  INSERT INTO blocks VALUES ('dynamic_collapse_thread_link','<img src=\"%%imagedir%%/dyn_cola.gif\" alt=\"--\" title=\"Collapse Subthread\" width=\"12\" height=\"12\" border=\"0\">',NULL,'<P>This block should contain either the text or an image used as the link to collapse an entire subthread of comments when expanded comments are viewed in either of the dynamic modes. If it is an image, it should have an alt element to stand in if the image is missing. It is placed with the actions at the bottom of the comment. This block has no special keys.</P>','Comments','default','en');
  INSERT INTO blocks VALUES ('ad_renewal_mail','Your ad on %%sitename%% has been renewed.\r\n\r\nAdvertisement details:\r\nTitle: %%TITLE%%\r\nText1: %%TEXT1%%\r\nURL: %%URL%%\r\nAdditional Impressions: %%IMPRESSIONS%%\r\n\r\nIf you have received this message in error, please reply and let us know.\r\n\r\n-%%sitename%%\r\n%%local_email%%\r\n','1','not used.  Yet another unimplemented ad feature.','Ads,Emails','default','en');
--- 283,287 ----
  INSERT INTO blocks VALUES ('donate_email_pledge','Thank you for your donation. Please remember to send $%%AMOUNT%% to our mailing address.',NULL,'<P>This block is an email sent to a user who has pledged to send a donation. It should be plain text and contain the amount the user has pledged and a reminder to send the amount. Putting the mailing address in this block is probably a good idea too. Because this is an email and is not sent through the usual processing given an HTML page, no keys except the following special keys will work.</P>\n<DL>\n <DT>AMOUNT</DT>\n  <DD>The amount pledged.</DD>\n</DL>','Emails','default','en');
  INSERT INTO blocks VALUES ('confirm_ad_renew','<P>%%norm_font%% Be sure this is the number of impressions you want to purchase, and hit \"Purchase\" below when you are ready to renew your ad %%norm_font_end%%</P>','1','<P>This block is used during the final confirmation step of ad renewal.  It should be reasonably self-contained HTML and contain a message explaining that this is the final confirmation step before the ad renewal is actually processed.  There are no special keys. Ad renewal is yet another unimplemented ad feature.</P>','Ads','default','en');
! INSERT INTO blocks VALUES ('dynamic_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n%%dynamicmode_javascript%%\r\n%%css_includes%%\r\n</HEAD>\r\n<BODY onload=\"copyContent(%%mainpid%%,%%dynamicmode%%)\">\r\n%%CONTENT%%\r\n</BODY>\r\n</HTML>\r\n','1','<P>This block is a nearly empty page template used for loading individual comments in dynamic mode. It must contain the correct <B>BODY onload</B> event. You probably shouldn\'t change this, since it will never be seen directly anyway. There are two special keys: mainpid and dynamicmode; both are set by the code to indicate whether or not dynamic comments are in use.</P>','Comments,Page Templates','default','en');
  INSERT INTO blocks VALUES ('dynamic_collapse_thread_link','<img src=\"%%imagedir%%/dyn_cola.gif\" alt=\"--\" title=\"Collapse Subthread\" width=\"12\" height=\"12\" border=\"0\">',NULL,'<P>This block should contain either the text or an image used as the link to collapse an entire subthread of comments when expanded comments are viewed in either of the dynamic modes. If it is an image, it should have an alt element to stand in if the image is missing. It is placed with the actions at the bottom of the comment. This block has no special keys.</P>','Comments','default','en');
  INSERT INTO blocks VALUES ('ad_renewal_mail','Your ad on %%sitename%% has been renewed.\r\n\r\nAdvertisement details:\r\nTitle: %%TITLE%%\r\nText1: %%TEXT1%%\r\nURL: %%URL%%\r\nAdditional Impressions: %%IMPRESSIONS%%\r\n\r\nIf you have received this message in error, please reply and let us know.\r\n\r\n-%%sitename%%\r\n%%local_email%%\r\n','1','not used.  Yet another unimplemented ad feature.','Ads,Emails','default','en');
***************
*** 318,322 ****
  INSERT INTO blocks VALUES ('dynamic_expand_link','<img src=%%imagedir%%/dyn_exp.gif width=12 height=16 ALT=+ border=0>',NULL,'<P>This block should contain either the text or an image used as the link to expand a single comment when viewing comments in either of the dynamic modes. If it is an image, it should have an alt element to stand in if the image is missing. It is placed near the subject at the top of the comment. This block has no special keys.</P>','Comments','default','en');
  INSERT INTO blocks VALUES ('dynamic_collapse_link','<img src=%%imagedir%%/dyn_col.gif width=12 height=16 ALT=- border=0>',NULL,'<P>This block should contain either the text or an image used as the link to collapse a comment when expanded comments are viewed in either of the dynamic modes. If it is an image, it should have an alt element to stand in if the image is missing. It is placed near the subject at the top of the comment; the block <B>dynamic_collapse_bottom_link</B> is the one used at the bottom. This block has no special keys.</P>','Comments','default','en');
! INSERT INTO blocks VALUES ('subscribe_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n<LINK rel=\"stylesheet\" type=\"text/css\" href=\"%%rootdir%%/css/main\">\r\n</HEAD>\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <!-- Main page block -->\r\n  <TR>\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"75%\">\r\n      %%CONTENT%%\r\n    </TD>\r\n    <!-- X center content section -->\r\n        \r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"25%\">\r\n      %%BOX,main_menu%%\r\n      %%BOX,hotlist_box%%\r\n      %%BOX,user_box%%\r\n      %%BOX,admin_tools%%\r\n      %%BOX,poll_box%%\r\n    </TD>\r\n    <!-- X Right boxes column -->\r\n  </TR>\r\n  <!-- X main page block -->\r\n</TABLE>\r\n<!-- X Main layout table -->\r\n\r\n%%footer%%\r\n\r\n<CE!
 NTER>%%BOX,menu_footer%%</CENTER>\r\n</BODY>\r\n</HTML>\r\n',NULL,'<P>This block is the page template used for subscription signup and payment. It must be a full HTML page. The special keys recognized are:</P>\n<DL>\n <DT>subtitle</DT>\n  <DD>This is replaced with an appropriate subtitle indicating which page is currently being viewed.</DD>\n <DT>CONTENT</DT>\n  <DD>This is replaced with any other content specific to the page being requested.  It is provided by the function or box named in the Ops Admin Tool which handles the op (the first pseudo-directory) of the page.</DD>\n</DL>','Page Templates','default','en');
  INSERT INTO blocks VALUES ('sub_manual_change_email','The user %%NICK%% has subscribed for %%MONTHS%% months of \r\nsubscription \"%%TYPE%%\". The user\'s existing group does \r\nnot allow group changes. Please review this user\'s request \r\nat %%URL%%.\r\n\r\n-%%sitename%%\r\n%%local_email%%','1','<P>This block is the body of an email sent to the site administrator (at the addresses in the variable <B>admin_alert</B>) notifying them of a user who has bought a subscription but cannot be placed in the subscriber group automatically. This is determined by the perm <B>sub_allow_group_change</B>. It should not contain any HTML formatting, and recognizes no keys except the special keys listed below, because it does not go through the normal page processing. The special keys recognized are:</P>\n<DL>\n <DT>NICK</DT>\n  <DD>The nickname of the user who bought the subscription</DD>\n <DT>TYPE</DT>\n  <DD>The name of the type of subscription bought or renewed</DD>\n <DT>MONTHS</DT!
 >\n  <DD>The number of months bought or renewed</DD>\n <DT>URL</DT>\n  <DD>The URL the administrator should visit to review the subscription</DD>\n <DT>sitename</DT>\n  <DD>The value of the variable sitename</DD>\n <DT>site_url</DT>\n  <DD>The value of the variable site_url</DD>\n <DT>local_email</DT>\n  <DD>The value of the variable local_email</DD>\n</DL>','Subscriptions,Emails','default','en');
  INSERT INTO blocks VALUES ('sub_email_success','Thank you for subscribing!\r\n\r\nYou have added %%MONTHS%% months to your subscription, of \r\nthe type \"%%TYPE%%\". Your subscription will expire on\r\n%%EXP_DATE%%.\r\n\r\n','1','<P>This block is the body of an email sent to a user when Scoop has successfully added to their subscription. It should not contain any HTML formatting, and recognizes no keys except the special keys listed below, because it does not go through the normal page processing before being emailed. The special keys recognized are:</P>\n<DL>\n <DT>TYPE</DT>\n  <DD>The name of the type of subscription bought or renewed</DD>\n <DT>MONTHS</DT>\n  <DD>The number of months bought or renewed</DD>\n <DT>EXP_DATE</DT>\n  <DD>The new expiry date of the subscription</DD>\n <DT>sitename</DT>\n  <DD>The value of the variable sitename</DD>\n <DT>site_url</DT>\n  <DD>The value of the variable site_url</DD>\n <DT>local_email</DT>\n  <DD>The value of the variable local!
 _email</DD>\n</DL>','Subscriptions,Emails','default','en');
--- 318,322 ----
  INSERT INTO blocks VALUES ('dynamic_expand_link','<img src=%%imagedir%%/dyn_exp.gif width=12 height=16 ALT=+ border=0>',NULL,'<P>This block should contain either the text or an image used as the link to expand a single comment when viewing comments in either of the dynamic modes. If it is an image, it should have an alt element to stand in if the image is missing. It is placed near the subject at the top of the comment. This block has no special keys.</P>','Comments','default','en');
  INSERT INTO blocks VALUES ('dynamic_collapse_link','<img src=%%imagedir%%/dyn_col.gif width=12 height=16 ALT=- border=0>',NULL,'<P>This block should contain either the text or an image used as the link to collapse a comment when expanded comments are viewed in either of the dynamic modes. If it is an image, it should have an alt element to stand in if the image is missing. It is placed near the subject at the top of the comment; the block <B>dynamic_collapse_bottom_link</B> is the one used at the bottom. This block has no special keys.</P>','Comments','default','en');
! INSERT INTO blocks VALUES ('subscribe_template','<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\r\n<HTML>\r\n<HEAD>\r\n<TITLE>%%sitename%% %%bars%% %%subtitle%%</TITLE>\r\n%%css_includes%%\r\n</HEAD>\r\n<BODY>\r\n\r\n%%header%%\r\n\r\n<!-- Main layout table -->\r\n<TABLE id=\"main\">\r\n  <!-- Main page block -->\r\n  <TR>\r\n    <!-- Center content section -->\r\n    <TD VALIGN=\"top\" width=\"75%\">\r\n      %%CONTENT%%\r\n    </TD>\r\n    <!-- X center content section -->\r\n        \r\n    <!-- Right boxes column -->\r\n    <TD VALIGN=\"top\" WIDTH=\"25%\">\r\n      %%BOX,main_menu%%\r\n      %%BOX,hotlist_box%%\r\n      %%BOX,user_box%%\r\n      %%BOX,admin_tools%%\r\n      %%BOX,poll_box%%\r\n    </TD>\r\n    <!-- X Right boxes column -->\r\n  </TR>\r\n  <!-- X main page block -->\r\n</TABLE>\r\n<!-- X Main layout table -->\r\n\r\n%%footer%%\r\n\r\n<CENTER>%%BOX,menu_footer%%</CENTER>\r\n</BODY>\r\n</HTML>\r!
 \n',NULL,'<P>This block is the page template used for subscription signup and payment. It must be a full HTML page. The special keys recognized are:</P>\n<DL>\n <DT>subtitle</DT>\n  <DD>This is replaced with an appropriate subtitle indicating which page is currently being viewed.</DD>\n <DT>CONTENT</DT>\n  <DD>This is replaced with any other content specific to the page being requested.  It is provided by the function or box named in the Ops Admin Tool which handles the op (the first pseudo-directory) of the page.</DD>\n</DL>','Page Templates','default','en');
  INSERT INTO blocks VALUES ('sub_manual_change_email','The user %%NICK%% has subscribed for %%MONTHS%% months of \r\nsubscription \"%%TYPE%%\". The user\'s existing group does \r\nnot allow group changes. Please review this user\'s request \r\nat %%URL%%.\r\n\r\n-%%sitename%%\r\n%%local_email%%','1','<P>This block is the body of an email sent to the site administrator (at the addresses in the variable <B>admin_alert</B>) notifying them of a user who has bought a subscription but cannot be placed in the subscriber group automatically. This is determined by the perm <B>sub_allow_group_change</B>. It should not contain any HTML formatting, and recognizes no keys except the special keys listed below, because it does not go through the normal page processing. The special keys recognized are:</P>\n<DL>\n <DT>NICK</DT>\n  <DD>The nickname of the user who bought the subscription</DD>\n <DT>TYPE</DT>\n  <DD>The name of the type of subscription bought or renewed</DD>\n <DT>MONTHS</DT!
 >\n  <DD>The number of months bought or renewed</DD>\n <DT>URL</DT>\n  <DD>The URL the administrator should visit to review the subscription</DD>\n <DT>sitename</DT>\n  <DD>The value of the variable sitename</DD>\n <DT>site_url</DT>\n  <DD>The value of the variable site_url</DD>\n <DT>local_email</DT>\n  <DD>The value of the variable local_email</DD>\n</DL>','Subscriptions,Emails','default','en');
  INSERT INTO blocks VALUES ('sub_email_success','Thank you for subscribing!\r\n\r\nYou have added %%MONTHS%% months to your subscription, of \r\nthe type \"%%TYPE%%\". Your subscription will expire on\r\n%%EXP_DATE%%.\r\n\r\n','1','<P>This block is the body of an email sent to a user when Scoop has successfully added to their subscription. It should not contain any HTML formatting, and recognizes no keys except the special keys listed below, because it does not go through the normal page processing before being emailed. The special keys recognized are:</P>\n<DL>\n <DT>TYPE</DT>\n  <DD>The name of the type of subscription bought or renewed</DD>\n <DT>MONTHS</DT>\n  <DD>The number of months bought or renewed</DD>\n <DT>EXP_DATE</DT>\n  <DD>The new expiry date of the subscription</DD>\n <DT>sitename</DT>\n  <DD>The value of the variable sitename</DD>\n <DT>site_url</DT>\n  <DD>The value of the variable site_url</DD>\n <DT>local_email</DT>\n  <DD>The value of the variable local!
 _email</DD>\n</DL>','Subscriptions,Emails','default','en');
***************
*** 358,362 ****
  INSERT INTO blocks VALUES ('ad_pay_paypal_msg','<p>%%norm_font%%<a\r\nhref=\"%%secure_site_url%%%%rootdir%%/special/adpay?type=paypal%%payment_args%%\"><img\r\nsrc=\"%%imagedir%%/paypal.gif\" width=\"87\" height=\"27\"\r\nborder=0 ALT=\"Pay with Paypal\">\r\n<br>Pay with Paypal</a>%%norm_font_end%%</p>','1','This message is displayed as part of the advert submission process. See the block ad_submitted_message for more information on where it will appear.\r\nThere are three special variables concerned with this. |num_impressions| will be replaced by the number of impressions ordered.\r\n|price| will be replace by the total cost of the order.\r\n|payment_args| must be present somewhere in the link url to correctly pass arguments to the payment method.','Ads','default','en');
  INSERT INTO blocks VALUES ('ad_free_msg','<p>This ad is free, you don\'t have to pay for it.','1','This message is displayed as part of the advert submission process. See the block ad_submitted_message for more information on where it will appear.\r\nThere are two special variables concerned with this. |num_impressions| will be replaced by the number of impressions ordered.\r\n|price| will be replace by the total cost of the order.','Ads','default','en');
! INSERT INTO blocks VALUES ('main_css','/* this makes IE6 not act retarded */\r\nh1, h2, h3, h4, h5, h6, p, div {\r\n         position: relative;\r\n}\r\n/* main page stuff */\r\nBODY       { background-color: #ffffff;\r\n             color: #000000; }\r\n\r\n:link      { color: #006699; }\r\n:visited   { color: #003366; }\r\n\r\n#main      { width: 100%;\r\n             border-spacing: 7px; }\r\n\r\n#main TD   { vertical-align: top; }\r\n\r\nH1         { background-color: %%title_bgcolor%%;\r\n             font-size: 1.6em;\r\n             padding: 3px;\r\n             margin: 0px; }\r\n\r\n.advert    { border: 1px solid #ff0000; }\r\n\r\n.loginform { text-align: right; }\r\n\r\n/* header and footer */\r\n\r\n#section_links { float: right;\r\n                 padding: 0.5em; }\r\n\r\n#footer    { text-align: center; }\r\n\r\n#footer FORM { display: inline; \r\n               vertical-align: top; }\r\n\r\n/* sidebar boxes */\r\n\r\n.box       { border: 1px solid black;\r\n !
             padding: 3px;\r\n             margin-bottom: 8px; }\r\n\r\n.box H2    { background-color: %%box_title_bg%%;\r\n             color: #ffffff;\r\n             font-size: 1.2em;\r\n             padding: 5px;\r\n             margin: -3px;\r\n             margin-bottom: 3px; }\r\n\r\n/* sections admin tool */\r\n/* this is because box_title_font is used in the code */\r\n/* and not in a DIV.box - this will be fixed in later */\r\n/* releases of Scoop as HTML is moved out of the code */\r\n\r\nTH H2        { color: #ffffff;\r\n               font-size: 1em; }\r\n\r\nTD H2        { color: #ffffff;\r\n               font-size: 1em; }\r\n\r\n/* story stuff */\r\n\r\n.story_title H2 { font-size: 1.2em;\r\n                  color: #000000;\r\n                  display: inline; }\r\n\r\n.story_summary { border-bottom: 1px dashed black;\r\n                 padding-top: 0.5em; }\r\n\r\n.story_body { padding-top: 0.5em; }\r\n\r\n.story_info { background-color: %%story_mod_bg%%;!
 \r\n              text-align: center; }\r\n\r\n#author_console { borde
r: 1px solid #006699;\r\n                  background-color: %%story_mod_bg%% }\r\n\r\n#vote_console { border: 1px solid #006699;\r\n                background-color: %%story_mod_bg%% }\r\n\r\n/* comment stuff */\r\n\r\n.commenthead { border: 1px solid #006699;\r\n               background-color: %%comment_head_bg%%; }\r\n\r\n.editorialhead { border: 1px solid #FF0000;\r\n                 background-color: %%comment_head_bg%%; }\r\n\n\n/* calendar stuff */\n\n.cal_head { background-color: %%comment_head_bg%%; }\n\n.cal_head UL { text-align: center; }\n\n.cal_head UL LI { display: inline;\n                  list-style-type: none; }\n\n.cal_head UL LI A#current { background-color: #ff0000;\n                            color: #ffffff;\n                            font-weight: bold; }\n\n.cal_body TD,TH { border: 1px solid black;\n                  padding: 3px; }\n\n.cal_body #today { background-color: #eeeeee; }\n\n.cal_body #other_month { background-color: #cccccc; }\n\n.date!
 _number { font-weight: bold;\n               font-size: large; }\n','1','<P>This block contains the CSS stylesheet for the site. It should be what you\'d expect to find in a .css file on the filesystem, except it recognizes the standard keys for interpolation. There are no special keys. This is sent to the client via the URL |rootdir|/css/main - any other stylesheets you create must also have _css at the end of their name if you want them accessible via the css op.</p>','CSS','default','en');
  INSERT INTO blocks VALUES ('sub_paypal_finished','Thank you, your PayPal payment has been recieved.',NULL,'Message displayed in the body of the page after a user returns from making a paypal payment.','Ads,Subscriptions','default','en');
  INSERT INTO blocks VALUES ('new_user_email_subject','Welcome to %%sitename%%','1','<P>This block defines the subject line for the email sent to new accounts. It should be short and not have any HTML. Because this is an email it is not processed the way web pages are and the only key recognized is the special key sitename, which is replaced with the contents of the site control <B>sitename</B></P>','Accounts,Emails','default','en');
--- 358,362 ----
  INSERT INTO blocks VALUES ('ad_pay_paypal_msg','<p>%%norm_font%%<a\r\nhref=\"%%secure_site_url%%%%rootdir%%/special/adpay?type=paypal%%payment_args%%\"><img\r\nsrc=\"%%imagedir%%/paypal.gif\" width=\"87\" height=\"27\"\r\nborder=0 ALT=\"Pay with Paypal\">\r\n<br>Pay with Paypal</a>%%norm_font_end%%</p>','1','This message is displayed as part of the advert submission process. See the block ad_submitted_message for more information on where it will appear.\r\nThere are three special variables concerned with this. |num_impressions| will be replaced by the number of impressions ordered.\r\n|price| will be replace by the total cost of the order.\r\n|payment_args| must be present somewhere in the link url to correctly pass arguments to the payment method.','Ads','default','en');
  INSERT INTO blocks VALUES ('ad_free_msg','<p>This ad is free, you don\'t have to pay for it.','1','This message is displayed as part of the advert submission process. See the block ad_submitted_message for more information on where it will appear.\r\nThere are two special variables concerned with this. |num_impressions| will be replaced by the number of impressions ordered.\r\n|price| will be replace by the total cost of the order.','Ads','default','en');
! INSERT INTO blocks VALUES ('main_css','/* this makes IE6 not act retarded */\r\nh1, h2, h3, h4, h5, h6, p, div {\r\n         position: relative;\r\n}\r\n/* main page stuff */\r\nBODY       { background-color: #ffffff;\r\n             color: #000000; }\r\n\r\n:link      { color: #006699; }\r\n:visited   { color: #003366; }\r\n\r\n#main      { width: 100%;\r\n             border-spacing: 7px; }\r\n\r\n#main TD   { vertical-align: top; }\r\n\r\nH1         { background-color: %%title_bgcolor%%;\r\n             font-size: 1.6em;\r\n             padding: 3px;\r\n             margin: 0px; }\r\n\r\n.advert    { border: 1px solid #ff0000; }\r\n\r\n.loginform { text-align: right; }\r\n\r\n/* header and footer */\r\n\r\n#section_links { float: right;\r\n                 padding: 0.5em; }\r\n\r\n#footer    { text-align: center; }\r\n\r\n#footer FORM { display: inline; \r\n               vertical-align: top; }\r\n\r\n/* sidebar boxes */\r\n\r\n.box       { border: 1px solid black;\r\n !
             padding: 3px;\r\n             margin-bottom: 8px; }\r\n\r\n.box H2    { background-color: %%box_title_bg%%;\r\n             color: #ffffff;\r\n             font-size: 1.2em;\r\n             padding: 5px;\r\n             margin: -3px;\r\n             margin-bottom: 3px; }\r\n\r\n/* sections admin tool */\r\n/* this is because box_title_font is used in the code */\r\n/* and not in a DIV.box - this will be fixed in later */\r\n/* releases of Scoop as HTML is moved out of the code */\r\n\r\nTH H2        { color: #ffffff;\r\n               font-size: 1em; }\r\n\r\nTD H2        { color: #ffffff;\r\n               font-size: 1em; }\r\n\r\n/* story stuff */\r\n\r\n.story_title H2 { font-size: 1.2em;\r\n                  color: #000000;\r\n                  display: inline; }\r\n\r\n.story_summary { border-bottom: 1px dashed black;\r\n                 padding-top: 0.5em; }\r\n\r\n.story_body { padding-top: 0.5em; }\r\n\r\n.story_info { background-color: %%story_mod_bg%%;!
 \r\n              text-align: center; }\r\n\r\n#author_console { borde
r: 1px solid #006699;\r\n                  background-color: %%story_mod_bg%% }\r\n\r\n#vote_console { border: 1px solid #006699;\r\n                background-color: %%story_mod_bg%% }\r\n\r\n/* comment stuff */\r\n\r\n.commenthead { border: 1px solid #006699;\r\n               background-color: %%comment_head_bg%%; }\r\n\r\n.editorialhead { border: 1px solid #FF0000;\r\n                 background-color: %%comment_head_bg%%; }\r\n\r\n\r\n/* misc css */\r\n\r\n.title { font-size: 1.2em;\r\n         fint-weight: bold;\r\n       }','1','<P>This block contains the CSS stylesheet for the site. It should be what you\'d expect to find in a .css file on the filesystem, except it recognizes the standard keys for interpolation. There are no special keys. This is sent to the client via the URL |rootdir|/css/main - any other stylesheets you create must also have _css at the end of their name if you want them accessible via the css op.</p>','CSS','default','en');
  INSERT INTO blocks VALUES ('sub_paypal_finished','Thank you, your PayPal payment has been recieved.',NULL,'Message displayed in the body of the page after a user returns from making a paypal payment.','Ads,Subscriptions','default','en');
  INSERT INTO blocks VALUES ('new_user_email_subject','Welcome to %%sitename%%','1','<P>This block defines the subject line for the email sent to new accounts. It should be short and not have any HTML. Because this is an email it is not processed the way web pages are and the only key recognized is the special key sitename, which is replaced with the contents of the site control <B>sitename</B></P>','Accounts,Emails','default','en');
***************
*** 386,390 ****
  INSERT INTO blocks VALUES ('userpref_oldpass_hidden','<INPUT TYPE=\"hidden\" NAME=\"verify_me\" value=\"%%pass%%\">','1','<P>This block is the hidden form element containing the user\'s old password. It is only used on the user\'s first login; the block <B>userpref_oldpass_field</B> is used the rest of the time.</P>','Accounts','default','en');
  INSERT INTO blocks VALUES ('required_pref_marker','<FONT color=\"#ff0000\">*</FONT>','1','','Accounts','default','en');
! INSERT INTO blocks VALUES ('special_page_layout','<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>\n  <TR>\n    <TD\nBGCOLOR=\"%%title_bgcolor%%\">%%title_font%%<B>%%title%%</B>%%title_font_end%%</TD>\n  </TR>\n  <TR><TD>&nbsp;</TD></TR>\n  <TR>\n<TD>%%norm_font%%%%content%%%%norm_font_end%%</TD>\n  </TR>\n</TABLE>','1','<P>This is the structure all pages created in the Special Pages admin tool are formatted with. The special keys are:</P>\n<DL>\n <DT>title</DT>\n  <DD>The title of the special page, as set in the Special Pages admin tool</DD>\n <DT>content</DT>\n  <DD>The content of the special page, as set in the Special Pages admin tool</DD>\n</DL>','Page Templates','default','en');
  INSERT INTO blocks VALUES ('admin_calendar_list','<P>%%msg%%</P>\n\n<TABLE width=\"100%\" cellpadding=\"2px\" cellspacing=\"0\">\n  <TR>\n    <TH>Calendar</TH>\n    <TH>Owner</TH>\n    <TH>Actions</TH>\n  </TR>\n%%calendar_list_rows%%\n</TABLE>\n\n<FORM name=\"newcal\" action=\"%%rootdir%%/admin/calendar/list\" method=\"POST\">\n  <P><B>Create a new site-wide calendar</B></P>\n  <P>Title: <INPUT type=\"text\" name=\"title\" size=\"30\">\n  <FIELDSET><LEGEND>View Permissions:</LEGEND>\n  <INPUT type=\"radio\" name=\"public_view\" value=\"public\"> Everybody\n  <BR><INPUT type=\"radio\" name=\"public_view\" value=\"invite\"> Only people on the invitation list\n  <BR><INPUT type=\"radio\" name=\"public_view\" value=\"private\"> Only admins\n  </FIELDSET><BR>\n  <FIELDSET><LEGEND>Submit permissions:</LEGEND>\n  <INPUT type=\"radio\" name=\"public_submit\" value=\"public\"> Everybody\n  <BR><INPUT type=\"radio\" name=\"public_submit\" value=\"modpublic\"> Everybody, but an admi!
 n will review the events before they\'re visible\n  <BR><INPUT type=\"radio\" name=\"public_submit\" value=\"invite\"> Only people on the invitation list\n  <BR><INPUT type=\"radio\" name=\"public_submit\" value=\"modinvite\"> Only people on the invitation list, but an admin will review the events before they\'re visible\n  <BR><INPUT type=\"radio\" name=\"public_submit\" value=\"private\"> Only admins</FIELDSET>\n  <BR><INPUT type=\"submit\" name=\"create\" value=\"Create\"></P>\n  \n</FORM>','1','<P>This block creates the calendar list admin tool. This is inserted into the block <B>admin_calendar_main</b> when you are working specifically with the calendar list. The names of the form elements should not be changed. The following special keys are recognized:</p>\n<DL>\n <DT>msg</dt>\n  <DD>Any status or error messages.</dd>\n <DT>calendar_list_rows</dt>\n  <DD>All of the rows containing the calendars. Each row is built from the block <B>admin_calendar_list_item</b>.</dd>\n!
 </dl>','Admin Pages','default','en');
  INSERT INTO blocks VALUES ('admin_calendar_list_item','  <TR>\n    <TD><A href=\"%%rootdir%%/calendar//%%cal_id%%\">%%title%%</A><BR>%%description%%</TD>\n    <TD><A href=\"%%rootdir%%/user/%%owner_nick%%\">%%owner_nick%%</A></TD>\n    <TD>[<A href=\"%%rootdir%%/admin/calendar/list?delete=%%cal_id%%\">delete</A>] [<A href=\"%%rootdir%%/editcalendar/settings/%%cal_id%%\">edit</A>]</TD>\n  </TR>\n','1','<P>This block formats a single item of the calendar list admin tool. The following special keys are recognized:</p>\n<DL>\n <DT>cal_id</dt>\n  <DD>The ID number of the calendar being formatted here</dd>\n <DT>title</dt>\n  <DD>The calendar\'s title</dd>\n <DT>owner</dt>\n  <DD>The calendar\'s owner\'s UID</dd>\n <DT>owner_nick</dt>\n  <DD>The calendar\'s owner\'s nickname</dd>\n <DT>description</dt>\n  <DD>The calendar description</dd>\n <DT>public_view</dt>\n  <DD>The view permission status</dd>\n <DT>public_submit</dt>\n  <DD>The event submission permission status</dd>\n</d!
 l>','Admin Pages','default','en');
--- 386,390 ----
  INSERT INTO blocks VALUES ('userpref_oldpass_hidden','<INPUT TYPE=\"hidden\" NAME=\"verify_me\" value=\"%%pass%%\">','1','<P>This block is the hidden form element containing the user\'s old password. It is only used on the user\'s first login; the block <B>userpref_oldpass_field</B> is used the rest of the time.</P>','Accounts','default','en');
  INSERT INTO blocks VALUES ('required_pref_marker','<FONT color=\"#ff0000\">*</FONT>','1','','Accounts','default','en');
! INSERT INTO blocks VALUES ('special_page_layout','<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>\r\n  <TR>\r\n    <TD\r\nBGCOLOR=\"%%title_bgcolor%%\">%%title_font%%<B>%%title%%</B>%%title_font_end%%</TD>\r\n  </TR>\r\n  <TR><TD> </TD></TR>\r\n  <TR>\r\n<TD>%%norm_font%%%%content%%%%norm_font_end%%</TD>\r\n  </TR>\r\n</TABLE>','1','<P>This is the structure all pages created in the Special Pages admin tool are formatted with. The special keys are:</P>\n<DL>\n <DT>title</DT>\n  <DD>The title of the special page, as set in the Special Pages admin tool</DD>\n <DT>content</DT>\n  <DD>The content of the special page, as set in the Special Pages admin tool</DD>\n</DL>','Page Templates','default','en');
  INSERT INTO blocks VALUES ('admin_calendar_list','<P>%%msg%%</P>\n\n<TABLE width=\"100%\" cellpadding=\"2px\" cellspacing=\"0\">\n  <TR>\n    <TH>Calendar</TH>\n    <TH>Owner</TH>\n    <TH>Actions</TH>\n  </TR>\n%%calendar_list_rows%%\n</TABLE>\n\n<FORM name=\"newcal\" action=\"%%rootdir%%/admin/calendar/list\" method=\"POST\">\n  <P><B>Create a new site-wide calendar</B></P>\n  <P>Title: <INPUT type=\"text\" name=\"title\" size=\"30\">\n  <FIELDSET><LEGEND>View Permissions:</LEGEND>\n  <INPUT type=\"radio\" name=\"public_view\" value=\"public\"> Everybody\n  <BR><INPUT type=\"radio\" name=\"public_view\" value=\"invite\"> Only people on the invitation list\n  <BR><INPUT type=\"radio\" name=\"public_view\" value=\"private\"> Only admins\n  </FIELDSET><BR>\n  <FIELDSET><LEGEND>Submit permissions:</LEGEND>\n  <INPUT type=\"radio\" name=\"public_submit\" value=\"public\"> Everybody\n  <BR><INPUT type=\"radio\" name=\"public_submit\" value=\"modpublic\"> Everybody, but an admi!
 n will review the events before they\'re visible\n  <BR><INPUT type=\"radio\" name=\"public_submit\" value=\"invite\"> Only people on the invitation list\n  <BR><INPUT type=\"radio\" name=\"public_submit\" value=\"modinvite\"> Only people on the invitation list, but an admin will review the events before they\'re visible\n  <BR><INPUT type=\"radio\" name=\"public_submit\" value=\"private\"> Only admins</FIELDSET>\n  <BR><INPUT type=\"submit\" name=\"create\" value=\"Create\"></P>\n  \n</FORM>','1','<P>This block creates the calendar list admin tool. This is inserted into the block <B>admin_calendar_main</b> when you are working specifically with the calendar list. The names of the form elements should not be changed. The following special keys are recognized:</p>\n<DL>\n <DT>msg</dt>\n  <DD>Any status or error messages.</dd>\n <DT>calendar_list_rows</dt>\n  <DD>All of the rows containing the calendars. Each row is built from the block <B>admin_calendar_list_item</b>.</dd>\n!
 </dl>','Admin Pages','default','en');
  INSERT INTO blocks VALUES ('admin_calendar_list_item','  <TR>\n    <TD><A href=\"%%rootdir%%/calendar//%%cal_id%%\">%%title%%</A><BR>%%description%%</TD>\n    <TD><A href=\"%%rootdir%%/user/%%owner_nick%%\">%%owner_nick%%</A></TD>\n    <TD>[<A href=\"%%rootdir%%/admin/calendar/list?delete=%%cal_id%%\">delete</A>] [<A href=\"%%rootdir%%/editcalendar/settings/%%cal_id%%\">edit</A>]</TD>\n  </TR>\n','1','<P>This block formats a single item of the calendar list admin tool. The following special keys are recognized:</p>\n<DL>\n <DT>cal_id</dt>\n  <DD>The ID number of the calendar being formatted here</dd>\n <DT>title</dt>\n  <DD>The calendar\'s title</dd>\n <DT>owner</dt>\n  <DD>The calendar\'s owner\'s UID</dd>\n <DT>owner_nick</dt>\n  <DD>The calendar\'s owner\'s nickname</dd>\n <DT>description</dt>\n  <DD>The calendar description</dd>\n <DT>public_view</dt>\n  <DD>The view permission status</dd>\n <DT>public_submit</dt>\n  <DD>The event submission permission status</dd>\n</d!
 l>','Admin Pages','default','en');
***************
*** 394,464 ****
  INSERT INTO blocks VALUES ('admin_event_list_item_cals','%%primary_marker%% <A href=\"%%rootdir%%/calendar//%%cal_id%%/%%date_start%%\">%%title%%</A> [<A href=\"%%rootdir%%/editcalendar/settings/%%cal_id%%\">edit</A>] <A href=\"%%rootdir%%/user/%%owner_nick%%\">%%owner_nick%%</A><br>\n','1','<P>This block is used to format each calendar an event is included in, for the event list in the calendars admin tool. The special keys recognized are:</p>\n<DL>\n <DT>primary_marker</dt>\n  <DD>A mark used to indicated which calendar the event is primarily associated with and hence where it draws its permissions from</dd>\n <DT>cal_id</dt>\n  <DD>The ID number of the calendar</dd>\n <DT>owner_nick</dt>\n  <DD>The owner of the calendar\'s nickname</dd>\n</dl>\n<P>Also recognized are all calendar properties and all event properties and event fields which do not share a name with a calendar property.</p>','Admin Pages','default','en');
  INSERT INTO blocks VALUES ('admin_event_properties','<form name=\"event_properties\" action=\"%%rootdir%%/admin/calendar/eventproperties\" method=\"post\">\n  <table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n    <tr><td>%%error_font%%%%admin_events_errormsg%%%%error_font_end%%</td></tr>\n    <tr>   \n      <td>%%norm_font%%<b>Property:</b> %%admin_events_property_menu%%\n        <input type=\"submit\" name=\"get\" value=\"Get Event Property\" /></font></td>\n    </tr><tr><td>\n%%norm_font%%<b>%%admin_events_delete_check%%</b></font>\n</td></tr>\n    <tr>\n      <td>%%norm_font%%<b>Property ID:</b>\n        <input type=\"text\" name=\"property\" value=\"%%admin_events_property%%\" size=\"40\" />\n      </font></td>\n    </tr>\n    <tr>\n      <td>%%norm_font%%<b>Title:</b>\n        <input type=\"text\" name=\"title\" value=\"%%admin_events_title%%\" size=\"40\" />\n      </font></td>\n    </tr>\n    <tr>\n      <td>%%norm_font%%<b>Format on event pag!
 e:</b><INPUT type=\"text\" size=\"40\" name=\"template\" value=\"%%admin_events_template%%\">%%norm_font_end%%</td>\n    </tr>\n    <tr>\n      <td>%%norm_font%%<b>Format in calendar view:</b><INPUT type=\"text\" size=\"40\" name=\"calendar_template\" value=\"%%admin_events_calendar_template%%\">%%norm_font_end%%</td>\n    </tr>\n    <tr>\n      <td><input type=\"checkbox\" name=\"enabled\" value=\"1\"%%admin_events_enabled_checked%% />\n        %%norm_font%%Enabled%%norm_font_end%%\n        <input type=\"checkbox\" name=\"required\" value=\"1\"%%admin_events_required_checked%% />\n        %%norm_font%%Required%%norm_font_end%%\n        <input type=\"checkbox\" name=\"html\" value=\"1\"%%admin_events_html_checked%% />\n        %%norm_font%%HTML allowed%%norm_font_end%%\n        <input type=\"checkbox\" name=\"is_date\" value=\"1\"%%admin_events_is_date_checked%% />\n        %%norm_font%%Property is a date%%norm_font_end%%\n      </td>\n    </tr>\n    <tr><td>%%norm_font%%<b!
 >Display order:</b> <input type=\"text\" name=\"display_order\" size=\
"5\" value=\"%%admin_events_display_order%%\"></td></tr>\n    <tr><td>%%norm_font%%<b>Form field:</b>\n    %%admin_events_field_list%% %%admin_events_field_edit%%%%norm_font_end%%</td>\n    </tr>\n    <tr><td>%%norm_font%%<b>Validation regex:</b> <INPUT type=\"text\" size=\"30\" name=\"regex\" value=\"%%admin_events_regex%%\">%%norm_font_end%%</td></tr>\n    <tr><td>%%norm_font%%<b>This property requires:</b>%%admin_events_requires_menu%%%%norm_font_end%%</td></tr>\n    <tr><td>%%norm_font%%<b>Description:</b>%%norm_font_end%%</td></tr>\n    <tr>\n      <td>%%norm_font%%\n        <textarea cols=\"50\" rows=\"5\" name=\"description\" wrap=\"soft\">%%admin_events_description%%</textarea>\n      </font></td>\n    </tr>\n    <tr><td>%%norm_font%%\n      <input type=\"submit\" name=\"write\" value=\"Save Event Property\" /> <input type=\"reset\" />\n    </font></td></tr>\n  </table>\n</form>\n','1','<P>This block is used to create the Event Properties Admin Tool page.  It must co!
 ntain all of the form elements used in the Event Properties Admin page, and should be self-contained HTML.  The special keys recognised are:</p>\n<DL>\n <DT>admin_events_errormsg</dt>\n  <DD>A message indicating whether a save was successful or not, and if not, the text of the error message</dd>\n <DT>admin_events_property_menu</dt>\n  <DD>The select box used to choose an event property to edit</dd>\n <DT>admin_events_delete_check</dt>\n  <DD>The delete checkbox displayed when an event property is being edited</dd>\n <DT>admin_events_template_menu</dt>\n  <DD>The select box used to choose the template block to use for a particular event property</dd>\n <DT>admin_events_template_link</dt>\n  <DD>A link to the block admin tool to edit the event property template selected for the event property currently being edited</dd>\n <DT>admin_events_enabled_checked</dt>\n  <DD>The \"checked\" status of the checkbox which determines whether or not the event property is enabled</dd>\n <D!
 T>admin_events_required_checked</dt>\n  <DD>The \"checked\" status of 
the checkbox which determines whether or not the event property is required</dd>\n <DT>admin_events_property</dt>\n  <DD>The name of the event property currently being edited</dd>\n <DT>admin_events_title</dt>\n  <DD>The title of the event property currently being edited</dd>\n <DT>admin_events_description</dt>\n  <DD>The description of the event property currently being edited</dd>\n <DT>admin_events_field</dt>\n  <DD>The HTML form field for the event property currently being edited.</dd>\n <DT>admin_events_order</dt>\n  <DD>The display order for the current event property</dd>\n </dl>\n<P>Do not change the names of the form elements, or remove any form elements, or event property editing may fail in unexpected ways.</p>','Admin Pages','default','en');
! INSERT INTO blocks VALUES ('calendar_body_daily','<DIV class=\"cal_head\">\n%%title_font%%%%calendar_title%% - %%date%%%%title_font_end%%\n<UL>\n%%BOX,calendar_datenav%%\n</UL>\n</DIV>\n\n<DIV class=\"cal_body\">\n<table width=\"100%\">\n<tr>%%day%%</tr>\n</table>\n%%subscribe_link%%\n%%BOX,calendar_actions%%</DIV>','1','<P>This block formats the body of the calendar in \"daily\" view. This should be a self-contained block of HTML that can be inserted anywhere. The following special keys are recognized:</P>\n<DL>\n <DT>day</DT>\n  <DD>the contents of <B>calendar_body_one_day</B> for the given date</DD>\n <DT>subscribe_link</DT>\n  <DD>The link to subscribe (or unsubscribe) to this calendar, if viewing one calendar.</DD>\n <DT>calendar_title</dt>\n  <DD>The title of the current calendar</dd>\n <DT>date</dt>\n  <DD>The date being viewed (YYYY-MM-DD)</dd>\n <DT>mediumdate</dt>\n  <DD>The date being viewed (DD-Mmm-YYYY)</dd>\n <DT>longdate</dt>\n  <DD>The date being viewed (Ww!
 wwww, DD Mmmmmmm YYYY)</dd>\n <DT>dow</dt>\n  <DD>The name of the day of the week being viewed (Monday, Tuesday, etc)</dd>\n <DT>dow_short</dt>\n  <DD>The abbreviated day of the week being viewed (Mon, Tues, etc)</dd>\n <DT>day_num</dt>\n  <DD>The day number</dd>\n <DT>day_ord</dt>\n  <DD>The day number in ordinal form (1st, 2nd, 3rd, etc)</dd>\n <DT>month</dt>\n  <DD>The name of the month</dd>\n <DT>monthnum</dt>\n  <DD>The number of the month</dd>\n <DT>year</dt>\n  <DD>The year.</dd>\n</DL>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('calendar_body_monthly','<DIV class=\"cal_head\">\n%%title_font%%%%calendar_title%% - %%longdate%%%%title_font_end%%\n<UL>\n%%BOX,calendar_datenav%%\n</UL>\n</DIV>\n\n<DIV class=\"cal_body\">\n<TABLE width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<TR>\n <TD>&nbsp;</TD>\n <TH>Monday</TH>\n <TH>Tuesday</TH>\n <TH>Wednesday</TH>\n <TH>Thursday</TH>\n <TH>Friday</TH>\n <TH>Saturday</TH>\n <TH>Sunday</TH>\n</TR>\n<TR>\n <TD><A href=\"%%rootdir%%/calendar/weekly/%%cal_id%%/%%wk1%%\">--></A></TD>\n %%wk1_d1%%\n %%wk1_d2%%\n %%wk1_d3%%\n %%wk1_d4%%\n %%wk1_d5%%\n %%wk1_d6%%\n %%wk1_d7%%\n</TR>\n<TR>\n <TD><A href=\"%%rootdir%%/calendar/weekly/%%cal_id%%/%%wk2%%\">--></A></TD>\n %%wk2_d1%%\n %%wk2_d2%%\n %%wk2_d3%%\n %%wk2_d4%%\n %%wk2_d5%%\n %%wk2_d6%%\n %%wk2_d7%%\n</TR>\n<TR>\n <TD><A href=\"%%rootdir%%/calendar/weekly/%%cal_id%%/%%wk3%%\">--></A></TD>\n %%wk3_d1%%\n %%wk3_d2%%\n %%wk3_d3%%\n %%wk3_d4%%\n %%wk3_d5%%\n %%wk3_d6%%\n %%wk3_d7%%\n</T!
 R>\n<TR>\n <TD><A href=\"%%rootdir%%/calendar/weekly/%%cal_id%%/%%wk4%%\">--></A></TD>\n %%wk4_d1%%\n %%wk4_d2%%\n %%wk4_d3%%\n %%wk4_d4%%\n %%wk4_d5%%\n %%wk4_d6%%\n %%wk4_d7%%\n</TR>\n<TR>\n <TD><A href=\"%%rootdir%%/calendar/weekly/%%cal_id%%/%%wk5%%\">--></A></TD>\n %%wk5_d1%%\n %%wk5_d2%%\n %%wk5_d3%%\n %%wk5_d4%%\n %%wk5_d5%%\n %%wk5_d6%%\n %%wk5_d7%%\n</TR>\n<TR>\n <TD><A href=\"%%rootdir%%/calendar/weekly/%%cal_id%%/%%wk6%%\">--></A></TD>\n %%wk6_d1%%\n %%wk6_d2%%\n %%wk6_d3%%\n %%wk6_d4%%\n %%wk6_d5%%\n %%wk6_d6%%\n %%wk6_d7%%\n</TR>\n</TABLE>\n%%subscribe_link%%\n%%BOX,calendar_actions%%</DIV>','1','<P>This block formats the body of the calendar in \"monthly\" view. This should be a self-contained block of HTML that can be inserted anywhere. The following special keys are recognized:</P>\n<DL>\n <DT>wk*_d*</DT>\n  <DD>The week number within the month and day number within the week. The code replaces each of these with the contents of <B>calendar_body_one_day</B> f!
 ormatted for the appropriate day.</DD>\n <DT>wk*</DT>\n  <DD>The week 
number within the month. The code replaces each of these with the date of the monday of that week.</DD>\n <DT>cal_id</DT>\n  <DD>The ID of the calendar currently being viewed, or zero for the current user\'s personal calendar view.</DD>\n <DT>subscribe_link</DT>\n  <DD>The link to subscribe (or unsubscribe) to this calendar, if viewing one calendar.</DD>\n <DT>calendar_title</dt>\n  <DD>The title of the current calendar</dd>\n <DT>date</dt>\n  <DD>The month being viewed (YYYY-MM)</dd>\n <DT>longdate</dt>\n  <DD>The month being viewed (Mmmmmmm YYYY)</dd>\n <DT>month</dt>\n  <DD>The name of the month</dd>\n <DT>monthnum</dt>\n  <DD>The number of the month</dd>\n <DT>year</dt>\n  <DD>The year.</dd>\n</DL>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('calendar_body_monthly_mini','<DIV class=\"cal_body\">\n<P align=\"center\"><A href=\"%%rootdir%%/calendar/monthly/\">%%month%% %%year%%</A></P>\n<TABLE width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<TR>\n <TH>M</TH>\n <TH>T</TH>\n <TH>W</TH>\n <TH>T</TH>\n <TH>F</TH>\n <TH>S</TH>\n <TH>S</TH>\n</TR>\n<TR>\n %%wk1_d1%%\n %%wk1_d2%%\n %%wk1_d3%%\n %%wk1_d4%%\n %%wk1_d5%%\n %%wk1_d6%%\n %%wk1_d7%%\n</TR>\n<TR>\n %%wk2_d1%%\n %%wk2_d2%%\n %%wk2_d3%%\n %%wk2_d4%%\n %%wk2_d5%%\n %%wk2_d6%%\n %%wk2_d7%%\n</TR>\n<TR>\n %%wk3_d1%%\n %%wk3_d2%%\n %%wk3_d3%%\n %%wk3_d4%%\n %%wk3_d5%%\n %%wk3_d6%%\n %%wk3_d7%%\n</TR>\n<TR>\n %%wk4_d1%%\n %%wk4_d2%%\n %%wk4_d3%%\n %%wk4_d4%%\n %%wk4_d5%%\n %%wk4_d6%%\n %%wk4_d7%%\n</TR>\n<TR>\n %%wk5_d1%%\n %%wk5_d2%%\n %%wk5_d3%%\n %%wk5_d4%%\n %%wk5_d5%%\n %%wk5_d6%%\n %%wk5_d7%%\n</TR>\n<TR>\n %%wk6_d1%%\n %%wk6_d2%%\n %%wk6_d3%%\n %%wk6_d4%%\n %%wk6_d5%%\n %%wk6_d6%%\n %%wk6_d7%%\n</TR>\n</TABLE>\n\n</DIV>','1','<!
 P>This block formats the body of the mini monthly calendar on the front page. This should be a self-contained block of HTML that can be inserted anywhere. The following special keys are recognized:</p>\n<DL>\n <DT>wk*_d*</dt>\n  <DD>The week number within the month and day number within the week. The code replaces each of these with the contents of <B>calendar_body_one_day</b> formatted for the appropriate day.</dd>\n <DT>cal_id</dt>\n  <DD>The ID of the calendar currently being viewed, or zero for the current user\'s personal calendar view.</dd>\n <DT>month</dt>\n  <DD>The current month</dd>\n <DT>year</dt>\n  <DD>The current year</dd>\n</dl>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('calendar_body_one_day','<TD%%hilight%%><DIV class=\"cal_day\">\n<DIV class=\"date_number\"><A href=\"%%rootdir%%/calendar/daily/%%cal_id%%/%%year%%-%%month%%-%%date_number%%\">%%date_number%%</A></DIV>\n%%events%%\n</DIV></TD>','1','<P>This block formats the inside of a single day from either <B>calendar_body_monthly</B>, <B>calendar_body_weekly</B>, or <B>calendar_body_daily</B>. By default it is a single table cell, so all three of the calendar templates must treat it as such and encapsulate it in the appropriate table structure. The following special keys are recognized:</P>\n<DL>\n <DT>hilight</DT>\n  <DD>If the date being formatted is the current date, this is replaced with the contents of <B>calendar_today_hilight</B>, otherwise it is cleared.</DD>\n <DT>cal_id</DT>\n  <DD>The ID of the calendar currently being viewed, or zero for the current user\'s personal calendar view.</DD>\n <DT>year</DT>\n  <DD>The year being viewed</DD>\n <DT>month!
 </DT>\n  <DD>The month being viewed</DD>\n <DT>date_number</DT>\n  <DD>The day being viewed</DD>\n <DT>usercal</dt>\n  <DD>If viewing another user\'s personal calendar view, the \"/user/nickname\" portion of the URL, otherwise blank</dd>\n<DT>events</DT>\n  <DD>All of the events for this day, each formatted according to <B>event_format_monthly</B>, <B>event_format_weekly</B>, or <B>event_format_daily</B>, depending on which calendar view is currently being used.</DD>\n</DL>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('calendar_body_weekly','<DIV class=\"cal_head\">\n%%title_font%%%%calendar_title%% - week starting %%mediumdate%%%%title_font_end%%\n<UL>\n%%BOX,calendar_datenav%%\n</UL>\n</DIV>\n\n<DIV class=\"cal_body\">\n<TABLE width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<TR>\n <TH>Monday</TH>\n <TH>Tuesday</TH>\n <TH>Wednesday</TH>\n <TH>Thursday</TH>\n <TH>Friday</TH>\n <TH>Saturday</TH>\n <TH>Sunday</TH>\n</TR>\n<TR>\n %%d1%%\n %%d2%%\n %%d3%%\n %%d4%%\n %%d5%%\n %%d6%%\n %%d7%%\n</TR>\n\n</TABLE>\n%%subscribe_link%%\n%%BOX,calendar_actions%%</DIV>','1','<P>This block formats the body of the calendar in \"weekly\" view. This should be a self-contained block of HTML that can be inserted anywhere. The following special keys are recognized:</P>\n<DL>\n <DT>d*</DT>\n  <DD>The day number within the current week. Each one is replaced with the block <B>calendar_body_one_day</B> formatted for the appropriate day.</DD>\n <DT>subscribe_link</DT>\n  <DD>The !
 link to subscribe (or unsubscribe) to this calendar, if viewing one calendar.</DD>\n <DT>date</dt>\n  <DD>The monday of the week being viewed (YYYY-MM-DD)</dd>\n <DT>mediumdate</dt>\n  <DD>The monday of the week being viewed (DD-Mmm-YYYY)</dd>\n <DT>longdate</dt>\n  <DD>The monday of the week being viewed (Wwwwww, DD Mmmmmmm YYYY)</dd>\n <DT>dow</dt>\n  <DD>Monday (the date displayed is always the monday of the week being viewed)</dd>\n <DT>dow_short</dt>\n  <DD>Mon (see above)</dd>\n <DT>day_num</dt>\n  <DD>The day number of the week\'s monday</dd>\n <DT>day_ord</dt>\n  <DD>The day number of the week\'s monday in ordinal form (1st, 2nd, 3rd, etc)</dd>\n <DT>month</dt>\n  <DD>The name of the month (if the week spans the end/beginning of a month, it is the month of the week\'s monday)</dd>\n <DT>monthnum</dt>\n  <DD>The number of the month</dd>\n <DT>year</dt>\n  <DD>The year (if the week spans the end/beginning of a year, it is the year of the week\'s monday)</dd>\n</DL>','!
 Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('calendar_error_body','%%title_font%%No Such Calendar%%title_font_end%%\n\n<P>Sorry, the calendar you requested either doesn\'t exist or is private. <A href=\"%%rootdir%%/my/calendar\">Your personal calendar view</A>.</P>','1','<P>This is the error message displayed when a user requests a calendar that either doesn\'t exist or which they don\'t have permission to see.</P>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('calendar_invitations','%%title_font%%Invite users%%title_font_end%%\n\n%%edit_calendar_links%%\n\n<P>%%msg%%</P>\n\n<P><B>Users invited to view this calendar</B></P>\n\n<UL>\n%%view_list%%\n</UL>\n%%view_add%%\n\n<P><B>Users invited to submit events to this calendar</B></P>\n\n<UL>\n%%submit_list%%\n</UL>\n%%submit_add%%','1','<P>This block formats the page where a calendar owner manages the invitation lists for their calendar. The following special keys are recognized:</p>\n<DL>\n <DT>msg</dt>\n  <DD>Any status or error message produced</dd>\n <DT>view_list</dt>\n  <DD>The list of users invited to view the calendar</dd>\n <DT>view_add</dt>\n  <DD>The form used to add users to the above list</dd>\n <DT>submit_list</dt>\n  <DD>The list of users invited to submit events to the calendar</dd>\n <DT>submit_add</dt>\n  <DD>The form used to add users to the above list</dd>\n</dl>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('calendar_invitations_add','<FORM action=\"%%rootdir%%/%%op%%/invite/%%cal_id%%\" method=\"POST\">\n<INPUT type=\"hidden\" name=\"action\" value=\"%%list%%_add\">\nNickname: <INPUT type=\"text\" name=\"nick\" size=\"20\"> <INPUT type=\"submit\" name=\"add\" value=\"Add\">\n</FORM>','1','<P>This block contains the form used in the block <B>calendar_invitations</b> and <B>event_invitations</b> to add to either list available in those two pages. The special keys recognized are:</p>\n<DL>\n <DT>op</dt>\n  <DD>The current op, either editcalendar or submitevent depending on whether we\'re working on a calendar or an event</dd>\n <DT>cal_id</dt>\n  <DD>The internal ID of either the calendar or the event, depending on which we\'re working on</dd>\n <DT>list</dt>\n  <DD>Which list, view or submit, this form is being used for</dd>\n</dl>','Calendars and Events','default','en');
  INSERT INTO blocks VALUES ('calendar_invitations_item','<LI><A href=\"%%rootdir%%/user/%%urlnick%%\">%%nickname%%</A> (<A href=\"%%rootdir%%/%%op%%/invite/%%cal_id%%?action=%%list%%_remove;nick=%%nickname%%\">remove</A>)</LI>','1','<P>This block formats a single item in either list in either calendar or event invitation management. The special keys recognized are:</p>\n<DL>\n <DT>urlnick</dt>\n  <DD>the user\'s url-escaped nickname</dd>\n <DT>op</dt>\n  <DD>the current op, either for the calendar or the event</dd>\n <DT>cal_id</dt>\n  <DD>the ID number of the calender or event currently being edited</dd>\n <DT>list</dt>\n  <DD>the name of the list, either view or submit, currently being displayed</dd>\n <DT>nickname</dt>\n  <DD>the user\'s nickname</dd>\n</dl>','Calendars and Events','default','en');
  INSERT INTO blocks VALUES ('calendar_navigation_hilight',' id=\"current\"','1','<P>The text placed in <B>calendar_navigation_item</B> to indicate the currently selected calendar date. By default this is an HTML id property for use with CSS, but it can be anything.</P>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('calendar_navigation_item','<LI><A href=\"%%rootdir%%%%usercal%%/calendar/%%type%%/%%cal_id%%/%%date%%\"%%css_id%%>%%nav_link%%</A></LI>\n','1','<P>This block formats a single item in the calendar navigation bar. By default it is a single list item, so the block <B>calendar_header</B> must contain the appropriate list start and end HTML. The following special keys are recognized:</P>\n<DL>\n <DT>type</DT>\n  <DD>The current calendar view: monthly, weekly, or daily.</DD>\n <DT>cal_id</DT>\n  <DD>The calendar ID of the current calendar, or zero for the user\'s personal calendar view.</DD>\n <DT>date</DT>\n  <DD>The link\'s destination date.</DD>\n <DT>css_id</DT>\n  <DD>The contents of <B>calendar_navigation_hilight</B> if this is the item for the current calendar, blank otherwise.</DD>\n <DT>nav_link</DT>\n  <DD>The formatted destination date.</DD>\n <DT>usercal</DT>\n  <DD>If viewing a user\'s personal calendar view, this becomes /user/nickname; !
 otherwise blank</DD>\n</DL>','Calendars and Events','default','en');
  INSERT INTO blocks VALUES ('calendar_other_month_hilight',' id=\"other_month\"','1','<P>The text placed in <B>calendar_body_one_day</b> to indicate days which are outside the range being displayed. This is only used in the monthly view, to fill in the grid. By default this is an HTML id property for use with CSS, but it can be anything.</p>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('calendar_settings','%%title_font%%%%pagetitle%%%%title_font_end%%\n\n%%edit_calendar_links%%\n\n<DIV>\n<FORM name=\"calendar_settings\" action=\"%%rootdir%%/editcalendar/settings/%%cal_id%%\" method=\"POST\">\n<P>%%msg%%</P>\n<P><B>Calendar Title:</B> <INPUT type=\"text\" size=\"50\" maxlength=\"100\" name=\"title\" value=\"%%title%%\"></P>\n<P><B>Description:</B><BR>\n<TEXTAREA name=\"description\" rows=\"%%textarea_rows%%\" cols=\"%%textarea_cols%%\">%%description%%</TEXTAREA></P>\n<FIELDSET><LEGEND>Who can see this calendar?</LEGEND>\n<INPUT type=\"radio\" name=\"public_view\" value=\"public\"%%view_public_checked%%> Everybody<BR>\n<INPUT type=\"radio\" name=\"public_view\" value=\"invite\"%%view_invite_checked%%> Only people on <A href=\"%%rootdir%%/editcalendar/invite/%%cal_id%%\">the invitation list</A><BR>\n<INPUT type=\"radio\" name=\"public_view\" value=\"private\"%%view_private_checked%%> Only me</FIELDSET>\n<FIELDSET><LEGEND>Who can s!
 ubmit events to this calendar?</LEGEND>\n<INPUT type=\"radio\" name=\"public_submit\" value=\"public\"%%submit_public_checked%%> Everybody<BR>\n<INPUT type=\"radio\" name=\"public_submit\" value=\"modpublic\"%%submit_modpublic_checked%%> Everybody, but I will review the events before they\'re visible<BR>\n<INPUT type=\"radio\" name=\"public_submit\" value=\"invite\"%%submit_invite_checked%%> Only people on <A href=\"%%rootdir%%/editcalendar/invite/%%cal_id%%\">the invitation list</A><BR>\n<INPUT type=\"radio\" name=\"public_submit\" value=\"modinvite\"%%submit_modinvite_checked%%> Only people on <A href=\"%%rootdir%%/editcalendar/invite/%%cal_id%%\">the invitation list</A>, but I will review the events before they\'re visible<BR>\n<INPUT type=\"radio\" name=\"public_submit\" value=\"private\"%%submit_private_checked%%> Only me</FIELDSET>\n<P><INPUT type=\"submit\" name=\"save\" value=\"Save\"></P>\n</FORM>\n<P><A href=\"%%rootdir%%/calendar//%%cal_id%%\">View this calendar<!
 /A></P>\n</DIV>','1','<P>This block is the form used to edit a particu
lar calendar. The special keys recognized are:</P>\n<DL>\n <DT>submit_*_checked, view_*_checked</DT>\n  <DD>The checked indicator for the permissions radio buttons</DD>\n <DT>pagetitle</DT>\n  <DD>The title of the page</DD>\n <DT>cal_id</DT>\n  <DD>The internal ID of the calendar we\'re editing</DD>\n <DT>msg</DT>\n  <DD>Any status or error message that comes up when we save a calendar</DD>\n <DT>title</DT>\n  <DD>The calendar title</DD>\n <DT>description</DT>\n  <DD>A description of what the calendar is for</DD> </DL>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('calendar_subscribe_item','<INPUT type=\"checkbox\" name=\"subscribe_item\" value=\"%%cal_value%%\"%%cal_checked%%> <A href=\"%%rootdir%%/calendar/%%view%%/%%cal_value%%/%%date%%\">%%cal_title%%</A><BR>\n','1','<P>This is one item in the list of calendars we can subscribe to. It is shown in the personal calendar view. If this is a list item, the block <B>calendar_subscribe_multi_form</B> must contain the list start and end tags. The following special keys are recognized:</P>\n<DL>\n <DT>cal_value</DT>\n  <DD>The calendar number for the calendar being displayed on this line</DD>\n <DT>cal_checked</DT>\n  <DD>the \'checked\' toggle to indicate if this calendar is in our subscription list or not</DD>\n <DT>view</DT>\n  <DD>monthly, weekly, or daily, depending on the current view</DD>\n <DT>date</dt>\n  <DD>The date of the calendar currently being viewed</dd>\n <DT>cal_title</DT>\n  <DD>The title of the calendar</DD>\n<DL>','Calendars and Events','de!
 fault','en');
  INSERT INTO blocks VALUES ('calendar_subscribe_link','<P><A href=\"/calendar/%%view%%/%%cal_id%%/%%date%%?subscribe=add\">Subscribe to this calendar</A></P>','1','<P>This block is the subscribe link shown underneath a calendar to which the user is not currently subscribed, if the site control <B>allow_personal_calendar_view</B> is on. The special keys recognized are:</P>\n<DL>\n <DT>view</DT>\n  <DD>The current view (monthly, weekly, or daily)</DD>\n <DT>cal_id</DT>\n  <DD>The ID number of the current calendar</DD>\n <DT>date</DT>\n  <DD>The current calendar\'s date</DD>\n</DL>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('calendar_subscribe_multi_form','<P>Calendars in your personal calendar view:<BR>\n<FORM name=\"calendar_subscribe\" action=\"%%rootdir%%%%usercal%%/calendar/%%view%%/%%cal_id%%/%%date%%\" method=\"post\">\n<INPUT type=\"hidden\" name=\"subscribe\" value=\"multi\">\n%%calendar_checks%%\n<BR>\n<INPUT type=\"submit\" name=\"save\" value=\"Update Calendar\">\n</FORM>','1','<P>This is the framework for the calendar subscription form shown underneath the personal calendar view, if the site control <B>allow_personal_calendar_view</B> is on. The special keys recognized are:</P>\n<DL>\n <DT>view</DT>\n  <DD>The current view (monthly, weekly, or daily)</DD>\n <DT>cal_id</DT>\n  <DD>The ID number of the current calendar</DD>\n <DT>date</DT>\n  <DD>The current calendar\'s date</DD>\n <DT>usercal</DT>\n  <DD>If we\'re in the user op, the user op and nickname, otherwise blank.</DD>\n <DT>calendar_checks</DT>\n  <DD>one copy of <B>calendar_subscribe_item</B> f!
 or each calendar the current user is allowed to subscribe to, checked appropriately.</DD>\n</DL>','Calendars and Events','default','en');
  INSERT INTO blocks VALUES ('calendar_today_hilight',' id=\"today\"','1','<P>The text placed in <B>calendar_body_one_day</B> to indicate today. By default this is an HTML id property for use with CSS, but it can be anything.</P>','Calendars and Events','default','en');
  INSERT INTO blocks VALUES ('calendar_unsubscribe_link','<P><A href=\"/calendar/%%view%%/%%cal_id%%/%%date%%?subscribe=remove\">Unsubscribe from this calendar</A></P>','1','<P>This block is the unsubscribe link shown underneath a calendar to which the user is currently subscribed, if the site control <B>allow_personal_calendar_view</B> is on. The special keys recognized are:</P>\n<DL>\n <DT>view</DT>\n  <DD>The current view (monthly, weekly, or daily)</DD>\n <DT>cal_id</DT>\n  <DD>The ID number of the current calendar</DD>\n <DT>date</DT>\n  <DD>The current calendar\'s date</DD>\n</DL>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('edit_calendar_links','<DIV class=\"caledit_menu\">\n<A href=\"%%rootdir%%/editcalendar/settings/%%cal_id%%\">Edit Calendar Settings</A>\n<A href=\"%%rootdir%%/editcalendar/moderate/%%cal_id%%\">Approve Submitted Events</A>\n<A href=\"%%rootdir%%/editcalendar/listevents/%%cal_id%%\">Event List</A>\n<A href=\"%%rootdir%%/editcalendar/invite/%%cal_id%%\">Invitation List</A>\n</DIV>','1','<P>This is the menu at the top of the calendar edit page which links to the other pages available through the calendar edit form. The only special key recognized is cal_id, the ID number of the calendar being edited.</p>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('event','%%title_font%%%%title%%%%title_font_end%%\n\n<DIV class=\"event_body\">\n<P id=\"description\">%%description%%</P>\n<P>Organizer: <A href=\"%%rootdir%%/user/uid:%%owner%%\">%%owner_nick%%</A></P>\n<P>Date: %%date_start%%</P><P>Calendar: <A href=\"%%rootdir%%/calendar//%%cal_id%%/%%date_start%%\">%%calendar_title%%</A></P>\n%%deadline%%\n%%address%%\n%%City%%\n%%state%%\n%%country%%\n%%rsvp%%\n<P>%%edit_link%% %%add_cal_link%% %%add_child_link%% %%event_sub_link%% %%add_story_link%%</P>\n</DIV>\n%%child_events%%\n\n<HR>\n\n<DIV class=\"event_stories\">\n%%BOX,event_stories%%\n</DIV>\n','1','<P>This block formats the page when viewing a single event in full detail. This should be a fully self-contained block of HTML. The special keys recognized are any defined event property name. Each one is replaced with the value of that property, formatted according to the template defined for that event property. If no template is defined, the value a!
 lone is used.</P>','Calendars and Events','default','en');
  INSERT INTO blocks VALUES ('event_add_child_link','[<A href=\"%%rootdir%%/submitevent/submit/%%eid%%?newchild=1\">Add a sub-event</A>]','1','<P>This is the link shown on the event page when the event displayed is a parent event and may have sub-events added, and the user viewing the event has permission to submit an event. The only special key recognized is eid, the current event\'s ID number.</p>','Calendars and Events','default','en');
  INSERT INTO blocks VALUES ('event_add_story_link','[<A href=\"%%rootdir%%/submitstory/?event=%%eid%%\">Write a story</A>]','1','<P>This is the link displayed when the current user has permission to submit a story to the event being displayed. The only special key recognized is eid, the current event\'s event ID number.</P>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('event_also_submit','<INPUT type=\"checkbox\" name=\"other_cals\" value=\"%%cal_value%%\"%%cal_checked%%> <A href=\"%%rootdir%%/calendar//%%cal_value%%\">%%cal_title%%</A><BR>\n','1','<P>This is a single item in the list of alternate calendars to submit an event to, on the event edit form. The following special keys are recognized:</p>\n<DL>\n <DT>cal_value</dt>\n  <DD>The ID number of the calendar in this list item</dd>\n <DT>cal_checked</dt>\n  <DD>The checked/unchecked indicator showing if the current event has been submitted to the calendar in this list item</dd>\n <DT>cal_title</dt>\n  <DD>The calendar\'s display title</dd>\n</dl>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('event_child_list','<P>Local events:</P>\n<UL>\n%%child_list%%\n</UL>\n','1','<P>This sets up the list of child events (or sub-events) on the display of a parent event. The only special key is child_list, which is built from one copy of event_child_list_item per child event.</p>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('event_child_list_item','  <LI><A href=\"%%rootdir%%/event/%%eid%%\">%%title%%</A></LI>\n','1','<P>This is one item in the list of child events (or sub-events) for a parent event. The special keys recognized are any defined event property.</p>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES ('event_edit_displaystatus','<SELECT name=\"displaystatus\" size=\"1\">\n  <OPTION value=\"-2\"%%pending_selected%%>Pending Moderation</OPTION>\n  <OPTION value=\"-1\"%%never_selected%%>Never Display</OPTION>\n  <OPTION value=\"0\"%%always_selected%%>Always Display</OPTION>\n</SELECT>','1','<P>This is the displaystatus selectbox shown on the event edit form to those users who have admin permissions for an event. The special keys recognized are the three *_selected keys, which show which option is currently set for the event being displayed.</p>','Calendars and Events','default','en');
! INSERT INTO blocks VALUES