<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>db/data/board_category.sql</filename>
    </added>
    <added>
      <filename>resources/items/paints/blue.png</filename>
    </added>
    <added>
      <filename>resources/items/paints/red.png</filename>
    </added>
    <added>
      <filename>resources/items/paints/rozen.png</filename>
    </added>
    <added>
      <filename>resources/items/toys/bowl.png</filename>
    </added>
    <added>
      <filename>resources/shopkeepers/general_store.png</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,3 +1,19 @@
+== 1.3.0 (2007-12-09) ==
+* A minor bug reported by Haywire has been fixed. If a non-logged-in client
+  attempted to view a forum post, instead of being asked to log in, a parse
+  error would be thrown.
+
+* Items now stack in the inventory. More than one item can be used, given,
+  or destroyed at once. Certain classes of items can only be used one at a time
+  (ie, you only want to use one paint brush in a stack). These can still be
+  given and destroyed in bulk.
+
+* Shop keeper, toy, and paintbrush images added. Art by Tigress.
+
+* Boards now have categories. Like boards, entire categories may be permission-
+  protected to prevent people from seeing them. The breadcrumbs for each board
+  page have been updated to include the category.
+
 == 1.2.2.4 (2007-10-10) ==
 * The users online count in the footer now only counts logged-in users. 
   Previously, all users and guests were counted. However, guests online is not</diff>
      <filename>CHANGES</filename>
    </modified>
    <modified>
      <diff>@@ -7,6 +7,7 @@
 == Testers / Bug Reporters ==
 * Edward &lt;are.you.cursed@gmail.com&gt;
 * Patra &lt;http://www.virtualpetlist.com/member.php?u=1495&gt;
+* Haywire &lt;http://www.virtualpetlist.com/member.php?u=418&gt;
 
 == Special Thanks ==
 * The rest of the Yasashii crew.</diff>
      <filename>CREDITS</filename>
    </modified>
    <modified>
      <diff>@@ -9,8 +9,11 @@ The /external_lib/ folder contains a variety of libraries, from APHP to Smarty.
 These libraries all have their own licenses specified, and as such, the above
 statement *does not apply* to these packages. 
 
-Adobe's Spry library (all javascript) is found in /resources/script/spry. It is under a 
-BSD license. See the files for specifics.
+Adobe's Spry library (all javascript) is found in /resources/script/spry. It is
+under a BSD license. See the files for specifics.
+
+The /includes/classes/inflector.class.php library is from CakePHP and is 
+distributed under the MIT license.
 
 == License URLs ==
 &lt;http://www.gnu.org/licenses/gpl-2.0.txt&gt;
@@ -18,5 +21,6 @@ BSD license. See the files for specifics.
 &lt;http://creativecommons.org/licenses/by-sa/2.5/legalcode&gt;
 &lt;http://creativecommons.org/licenses/by-sa/3.0/legalcode&gt;
 &lt;http://www.opensource.org/licenses/bsd-license.php&gt;
+&lt;http://www.opensource.org/licenses/mit-license.php&gt;
 
 See the docs/licenses folder for fulltexts of these licenses.</diff>
      <filename>LICENSE</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,70 @@
+== 1.2.2.4 to 1.3.0 ==
+To upgrade from Kitto 1.2.2.4 to 1.3.0, run the following SQL:
+
+    ALTER TABLE `user_item` ADD `quantity` INT UNSIGNED DEFAULT '1' NOT NULL ;
+    ALTER TABLE `item_class` ADD `one_per_use` ENUM( 'N', 'Y' ) DEFAULT 'N' NOT NULL AFTER `verb` ;
+
+    CREATE TABLE `board_category` (
+      `board_category_id` INT NOT NULL AUTO_INCREMENT ,
+      `category_name` VARCHAR( 50 ) NOT NULL ,
+      `order_by` TINYINT DEFAULT '0' NOT NULL ,
+      `required_permission_id` INT NOT NULL ,
+      PRIMARY KEY ( `board_category_id` ) ,
+      INDEX ( `required_permission_id` )
+    ) TYPE = innodb;
+
+    ALTER TABLE `board` ADD `board_category_id` INT NOT NULL AFTER `board_id` ;
+    ALTER TABLE `board` ADD INDEX ( `board_category_id` ) ;
+
+Then, upload the following changed/new files. If you have customized a file in 
+this list, you will need to merge the changes. If you have not customized a 
+file, it is recommended that you overwrite it with the updated version.
+
+    -- New Art
+    * resources/items/toys (created folder)
+    * resources/items/paints (created folder)
+    * resources/shopkeepers (created folder)
+    
+    -- Item stacking
+    * includes/classes/inflectors (added folder with one file)
+    * scripts/items/list.php (lines 65-66)
+    * scripts/items/detail.php (large number of changes; advised to upload new 
+      version)
+    * scripts/shops/shop.php (lines 140-174)
+    * includes/classes/item/item.class.php (modified #giveItem(), added: 
+      #getInflectedName(), #makeActionText())
+    * includes/classes/item/food_item.class.php (modified #feedTo())
+    * includes/classes/item/toy_item.class.php (modified #playWith())
+    * includes/classes/item/paint_item.class.php (modified #paint())
+    * template/templates/items/details.tpl (quantity stuff added)
+    * template/templates/items/list.tpl (quantity stuff added)
+    * template/templates/items/give_form.tpl (quantity stuff added)
+    * template/templates/items/use_form.tpl (quantity stuff added)
+
+    -- Board Categories
+    * includes/classes/board/board_category.class.php (new file)
+    * includes/classes/board/board.class.php (added 47-52, added 59-65, 
+      added 67-73. Modified #hasAccess())
+    * scripts/boards/create_thread.php (added line 61)
+    * scripts/boards/edit_post.php (added line 86)
+    * scripts/boards/edit_thread.php (added line 76)
+    * scripts/boards/post_list.php (added line 82)
+    * scripts/boards/board_list.php (large change, advised to upload new copy) 
+    * scripts/boards/thread_list.php (added line 84)
+    * template/templates/boards/board_list.tpl (breadcrumb line)
+    * template/templates/boards/thread_list.tpl (breadcrumb line)
+    * template/templates/boards/edit_post.tpl (breadcrumb line)
+    * template/templates/boards/edit_thread.tpl (breadcrumb line)
+    * template/templates/boards/post_list.tpl (breadcrumb line)
+    * template/templates/boards/new_thread.tpl (breadcrumb line)
+
+    -- General
+    * index.php (lines 97-111 modified)
+    * includes/classes/classes.config.php (37-40 added, 84 added)
+
+After that, check your boards. Each one must now be underneath a board_category.
+Sample categories can be found in the db/data/board_category.sql file.
+
 == 1.2.2.x to 1.2.2.4 ==
 To upgrade an earlier 1.2.2.x release to 1.2.2.4, update the following files or
 manually merge the changes:</diff>
      <filename>UPGRADING</filename>
    </modified>
    <modified>
      <diff>@@ -22,7 +22,7 @@
 
 /*!40000 ALTER TABLE `board` DISABLE KEYS */;
 LOCK TABLES `board` WRITE;
-INSERT INTO `board` (`board_id`, `board_name`, `board_descr`, `board_locked`, `news_source`, `required_permission_id`, `order_by`) VALUES (1,'News &amp; Announcements','The latest news and annoucements are posted here.','Y','Y',0,1),(2,'General Chat','Discuss the KittoKittoKitto project here.','N','N',0,3),(3,'Suggestions / Bugs','Found a bug? Have a brilliant, earth-shattering idea? Tell us!','N','N',0,6),(4,'Staff Board','This is a board restricted to staff members.','N','N',13,100);
+INSERT INTO `board` (`board_id`, `board_category_id`, `board_name`, `board_descr`, `board_locked`, `news_source`, `required_permission_id`, `order_by`) VALUES (1,1,'News &amp; Announcements','The latest news and annoucements are posted here.','Y','Y',0,1),(2,1,'General Chat','Discuss the KittoKittoKitto project here.','N','N',0,3),(3,1,'Suggestions / Bugs','Found a bug? Have a brilliant, earth-shattering idea? Tell us!','N','N',0,6),(4,3,'Staff Board','This is a board restricted to staff members.','N','N',13,100),(5,2,'For Sale','Awesome deals on today\'s hottest products.','N','N',0,0),(6,2,'Groups','Organization for player-run groups.','N','N',0,1);
 UNLOCK TABLES;
 /*!40000 ALTER TABLE `board` ENABLE KEYS */;
 /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;</diff>
      <filename>db/data/board.sql</filename>
    </modified>
    <modified>
      <diff>@@ -22,7 +22,7 @@
 
 /*!40000 ALTER TABLE `cron_tab` DISABLE KEYS */;
 LOCK TABLES `cron_tab` WRITE;
-INSERT INTO `cron_tab` (`cron_tab_id`, `cron_class`, `cron_frequency_seconds`, `unixtime_next_run`, `enabled`) VALUES (1,'Job_RestockShops',3600,1191465199,'Y'),(2,'Job_UserOnline',300,1191461899,'Y');
+INSERT INTO `cron_tab` (`cron_tab_id`, `cron_class`, `cron_frequency_seconds`, `unixtime_next_run`, `enabled`) VALUES (1,'Job_RestockShops',3600,1197247436,'Y'),(2,'Job_UserOnline',300,1197244104,'Y');
 UNLOCK TABLES;
 /*!40000 ALTER TABLE `cron_tab` ENABLE KEYS */;
 /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;</diff>
      <filename>db/data/cron_tab.sql</filename>
    </modified>
    <modified>
      <diff>@@ -22,7 +22,7 @@
 
 /*!40000 ALTER TABLE `item_class` DISABLE KEYS */;
 LOCK TABLES `item_class` WRITE;
-INSERT INTO `item_class` (`item_class_id`, `php_class`, `class_descr`, `relative_image_dir`, `verb`) VALUES (1,'Food_Item','Food','food','feed'),(2,'Toy_Item','Toy','toys','play with'),(3,'Paint_Item','Paint','paints','paint');
+INSERT INTO `item_class` (`item_class_id`, `php_class`, `class_descr`, `relative_image_dir`, `verb`, `one_per_use`) VALUES (1,'Food_Item','Food','food','feed','N'),(2,'Toy_Item','Toy','toys','play with','N'),(3,'Paint_Item','Paint','paints','paint','Y');
 UNLOCK TABLES;
 /*!40000 ALTER TABLE `item_class` ENABLE KEYS */;
 /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;</diff>
      <filename>db/data/item_class.sql</filename>
    </modified>
    <modified>
      <diff>@@ -22,7 +22,7 @@
 
 /*!40000 ALTER TABLE `item_type` DISABLE KEYS */;
 LOCK TABLES `item_type` WRITE;
-INSERT INTO `item_type` (`item_type_id`, `item_name`, `item_descr`, `item_class_id`, `happiness_bonus`, `hunger_bonus`, `pet_specie_color_id`, `item_image`) VALUES (1,'Apple','A delicious, healthy red apple.',1,0,3,0,'apple.png'),(5,'Rozen Paintbrush','&lt;p&gt;The Rozen paintbrush is delicious paint. You must use it~desu!&lt;/p&gt;',3,0,0,3,'rozen.png');
+INSERT INTO `item_type` (`item_type_id`, `item_name`, `item_descr`, `item_class_id`, `happiness_bonus`, `hunger_bonus`, `pet_specie_color_id`, `item_image`) VALUES (1,'Red Apple','A delicious, healthy red apple.',1,0,3,0,'apple.png'),(5,'Rozen Paintbrush','&lt;p&gt;The Rozen paintbrush is delicious paint. You must use it~desu!&lt;/p&gt;',3,0,0,3,'rozen.png'),(6,'Grubby Bowl','This is an old wooden bowl. Since there is nothing else, your pet will have to amuse itself with this.',2,1,0,0,'bowl.png'),(7,'Red Paintbrush','This will turn your pet red.',3,0,0,1,'red.png'),(8,'Blue Paintbrush','This will turn your pet blue.',3,0,0,1,'blue.png');
 UNLOCK TABLES;
 /*!40000 ALTER TABLE `item_type` ENABLE KEYS */;
 /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;</diff>
      <filename>db/data/item_type.sql</filename>
    </modified>
    <modified>
      <diff>@@ -22,7 +22,7 @@
 
 /*!40000 ALTER TABLE `shop` DISABLE KEYS */;
 LOCK TABLES `shop` WRITE;
-INSERT INTO `shop` (`shop_id`, `shop_name`, `shop_image`, `welcome_text`) VALUES (1,'General Store','colonel.png','Welcome to the general store. We can supply you with anything you might need.');
+INSERT INTO `shop` (`shop_id`, `shop_name`, `shop_image`, `welcome_text`) VALUES (1,'General Store','general_store.png','Welcome to the general store. We can supply you with anything you might need.');
 UNLOCK TABLES;
 /*!40000 ALTER TABLE `shop` ENABLE KEYS */;
 /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;</diff>
      <filename>db/data/shop.sql</filename>
    </modified>
    <modified>
      <diff>@@ -22,7 +22,7 @@
 
 /*!40000 ALTER TABLE `shop_restock` DISABLE KEYS */;
 LOCK TABLES `shop_restock` WRITE;
-INSERT INTO `shop_restock` (`shop_restock_id`, `shop_id`, `item_type_id`, `restock_frequency_seconds`, `unixtime_next_restock`, `min_price`, `max_price`, `min_quantity`, `max_quantity`, `store_quantity_cap`) VALUES (1,1,1,3600,1191465199,1,15,5,10,30);
+INSERT INTO `shop_restock` (`shop_restock_id`, `shop_id`, `item_type_id`, `restock_frequency_seconds`, `unixtime_next_restock`, `min_price`, `max_price`, `min_quantity`, `max_quantity`, `store_quantity_cap`) VALUES (1,1,1,3600,1197247012,1,15,5,10,30),(2,1,6,1200,1197244613,5,15,5,10,15),(3,1,8,2600,1197246121,50,100,2,5,10),(4,1,7,2600,1197246121,50,100,2,5,10),(5,1,5,2800,1197246636,1000,5000,1,2,2);
 UNLOCK TABLES;
 /*!40000 ALTER TABLE `shop_restock` ENABLE KEYS */;
 /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;</diff>
      <filename>db/data/shop_restock.sql</filename>
    </modified>
    <modified>
      <diff>@@ -3,7 +3,7 @@
 -- http://www.phpmyadmin.net
 -- 
 -- Host: localhost
--- Generation Time: Oct 03, 2007 at 06:45 PM
+-- Generation Time: Dec 09, 2007 at 06:34 PM
 -- Server version: 5.0.22
 -- PHP Version: 5.1.2
 -- 
@@ -24,7 +24,7 @@ CREATE TABLE `avatar` (
   `active` enum('Y','N') NOT NULL default 'Y',
   PRIMARY KEY  (`avatar_id`),
   UNIQUE KEY `avatar_image` (`avatar_image`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
+) ENGINE=InnoDB AUTO_INCREMENT=3 ;
 
 -- --------------------------------------------------------
 
@@ -35,6 +35,7 @@ CREATE TABLE `avatar` (
 DROP TABLE IF EXISTS `board`;
 CREATE TABLE `board` (
   `board_id` smallint(3) NOT NULL auto_increment,
+  `board_category_id` int(11) NOT NULL,
   `board_name` varchar(100) NOT NULL,
   `board_descr` varchar(255) NOT NULL,
   `board_locked` enum('N','Y') NOT NULL default 'N',
@@ -42,8 +43,25 @@ CREATE TABLE `board` (
   `required_permission_id` int(11) NOT NULL,
   `order_by` tinyint(2) NOT NULL,
   PRIMARY KEY  (`board_id`),
+  KEY `required_permission_id` (`required_permission_id`),
+  KEY `board_category_id` (`board_category_id`)
+) ENGINE=InnoDB AUTO_INCREMENT=7 ;
+
+-- --------------------------------------------------------
+
+-- 
+-- Table structure for table `board_category`
+-- 
+
+DROP TABLE IF EXISTS `board_category`;
+CREATE TABLE `board_category` (
+  `board_category_id` int(11) NOT NULL auto_increment,
+  `category_name` varchar(50) NOT NULL,
+  `order_by` tinyint(4) NOT NULL default '0',
+  `required_permission_id` int(11) NOT NULL,
+  PRIMARY KEY  (`board_category_id`),
   KEY `required_permission_id` (`required_permission_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
+) ENGINE=InnoDB AUTO_INCREMENT=4 ;
 
 -- --------------------------------------------------------
 
@@ -64,7 +82,7 @@ CREATE TABLE `board_thread` (
   PRIMARY KEY  (`board_thread_id`),
   KEY `board_id` (`board_id`),
   KEY `user_id` (`user_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=267 ;
+) ENGINE=InnoDB AUTO_INCREMENT=267 ;
 
 -- --------------------------------------------------------
 
@@ -82,7 +100,7 @@ CREATE TABLE `board_thread_post` (
   PRIMARY KEY  (`board_thread_post_id`),
   KEY `board_thread_id` (`board_thread_id`),
   KEY `user_id` (`user_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=324 ;
+) ENGINE=InnoDB AUTO_INCREMENT=324 ;
 
 -- --------------------------------------------------------
 
@@ -98,7 +116,7 @@ CREATE TABLE `cron_tab` (
   `unixtime_next_run` bigint(11) unsigned NOT NULL,
   `enabled` enum('Y','N') NOT NULL default 'Y',
   PRIMARY KEY  (`cron_tab_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
+) ENGINE=InnoDB AUTO_INCREMENT=3 ;
 
 -- --------------------------------------------------------
 
@@ -112,7 +130,7 @@ CREATE TABLE `datetime_format` (
   `datetime_format_name` varchar(30) NOT NULL,
   `datetime_format` text NOT NULL,
   PRIMARY KEY  (`datetime_format_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
+) ENGINE=InnoDB AUTO_INCREMENT=4 ;
 
 -- --------------------------------------------------------
 
@@ -127,8 +145,9 @@ CREATE TABLE `item_class` (
   `class_descr` varchar(30) NOT NULL,
   `relative_image_dir` varchar(50) NOT NULL,
   `verb` varchar(30) NOT NULL,
+  `one_per_use` enum('N','Y') NOT NULL default 'N',
   PRIMARY KEY  (`item_class_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
+) ENGINE=InnoDB AUTO_INCREMENT=4 ;
 
 -- --------------------------------------------------------
 
@@ -149,7 +168,7 @@ CREATE TABLE `item_type` (
   PRIMARY KEY  (`item_type_id`),
   KEY `item_class_id` (`item_class_id`),
   KEY `pet_specie_color_id` (`pet_specie_color_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
+) ENGINE=InnoDB AUTO_INCREMENT=7 ;
 
 -- --------------------------------------------------------
 
@@ -171,7 +190,7 @@ CREATE TABLE `jump_page` (
   `active` enum('Y','N') NOT NULL default 'Y',
   PRIMARY KEY  (`jump_page_id`),
   UNIQUE KEY `page_slug` (`page_slug`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=72 ;
+) ENGINE=InnoDB AUTO_INCREMENT=72 ;
 
 -- --------------------------------------------------------
 
@@ -189,7 +208,7 @@ CREATE TABLE `pet_specie` (
   `max_happiness` tinyint(3) unsigned NOT NULL,
   `available` enum('Y','N') NOT NULL default 'Y',
   PRIMARY KEY  (`pet_specie_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;
+) ENGINE=InnoDB AUTO_INCREMENT=3 ;
 
 -- --------------------------------------------------------
 
@@ -204,7 +223,7 @@ CREATE TABLE `pet_specie_color` (
   `color_img` varchar(200) NOT NULL,
   `base_color` enum('N','Y') NOT NULL default 'N',
   PRIMARY KEY  (`pet_specie_color_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
+) ENGINE=InnoDB AUTO_INCREMENT=4 ;
 
 -- --------------------------------------------------------
 
@@ -219,7 +238,7 @@ CREATE TABLE `pet_specie_pet_specie_color` (
   `pet_specie_color_id` int(11) NOT NULL,
   PRIMARY KEY  (`pet_specie_pet_specie_color_id`),
   UNIQUE KEY `pet_specie_id` (`pet_specie_id`,`pet_specie_color_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='Links a color to a specie. Without entry, specie cannot beco' AUTO_INCREMENT=10 ;
+) ENGINE=InnoDB COMMENT='Links a color to a specie. Without entry, specie cannot beco' AUTO_INCREMENT=10 ;
 
 -- --------------------------------------------------------
 
@@ -234,7 +253,7 @@ CREATE TABLE `shop` (
   `shop_image` varchar(200) NOT NULL,
   `welcome_text` text NOT NULL,
   PRIMARY KEY  (`shop_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
+) ENGINE=InnoDB AUTO_INCREMENT=2 ;
 
 -- --------------------------------------------------------
 
@@ -252,7 +271,7 @@ CREATE TABLE `shop_inventory` (
   PRIMARY KEY  (`shop_inventory_id`),
   KEY `item_type_id` (`item_type_id`),
   KEY `shop_id` (`shop_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=10 ;
+) ENGINE=InnoDB AUTO_INCREMENT=14 ;
 
 -- --------------------------------------------------------
 
@@ -274,7 +293,7 @@ CREATE TABLE `shop_restock` (
   `store_quantity_cap` smallint(3) unsigned NOT NULL,
   PRIMARY KEY  (`shop_restock_id`),
   KEY `shop_id` (`shop_id`,`item_type_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
+) ENGINE=InnoDB AUTO_INCREMENT=3 ;
 
 -- --------------------------------------------------------
 
@@ -290,7 +309,7 @@ CREATE TABLE `staff_group` (
   `show_staff_group` enum('Y','N') NOT NULL default 'Y',
   `order_by` tinyint(4) NOT NULL default '0',
   PRIMARY KEY  (`staff_group_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=16 ;
+) ENGINE=InnoDB AUTO_INCREMENT=16 ;
 
 -- --------------------------------------------------------
 
@@ -305,7 +324,7 @@ CREATE TABLE `staff_group_staff_permission` (
   `staff_permission_id` int(11) NOT NULL,
   PRIMARY KEY  (`staff_group_staff_permission`),
   UNIQUE KEY `staff_group_id` (`staff_group_id`,`staff_permission_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=23 ;
+) ENGINE=InnoDB AUTO_INCREMENT=24 ;
 
 -- --------------------------------------------------------
 
@@ -319,7 +338,7 @@ CREATE TABLE `staff_permission` (
   `api_name` varchar(50) NOT NULL,
   `permission_name` varchar(50) NOT NULL,
   PRIMARY KEY  (`staff_permission_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=14 ;
+) ENGINE=InnoDB AUTO_INCREMENT=14 ;
 
 -- --------------------------------------------------------
 
@@ -336,7 +355,7 @@ CREATE TABLE `timezone` (
   `timezone_offset` float(3,1) NOT NULL,
   `order_by` tinyint(1) NOT NULL default '0',
   PRIMARY KEY  (`timezone_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=60 ;
+) ENGINE=InnoDB AUTO_INCREMENT=60 ;
 
 -- --------------------------------------------------------
 
@@ -380,7 +399,7 @@ CREATE TABLE `user` (
   KEY `avatar_id` (`avatar_id`),
   KEY `timezone_id` (`timezone_id`),
   KEY `datetime_format_id` (`datetime_format_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
+) ENGINE=InnoDB AUTO_INCREMENT=4 ;
 
 -- --------------------------------------------------------
 
@@ -393,10 +412,11 @@ CREATE TABLE `user_item` (
   `user_item_id` int(11) NOT NULL auto_increment,
   `user_id` int(11) NOT NULL,
   `item_type_id` int(11) NOT NULL,
+  `quantity` int(10) unsigned NOT NULL default '1',
   PRIMARY KEY  (`user_item_id`),
   KEY `user_id` (`user_id`),
   KEY `item_type_id` (`item_type_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=163 ;
+) ENGINE=InnoDB AUTO_INCREMENT=11 ;
 
 -- --------------------------------------------------------
 
@@ -417,7 +437,7 @@ CREATE TABLE `user_message` (
   PRIMARY KEY  (`user_message_id`),
   KEY `sender_user_id` (`sender_user_id`),
   KEY `recipient_user_id` (`recipient_user_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=127 ;
+) ENGINE=InnoDB AUTO_INCREMENT=127 ;
 
 -- --------------------------------------------------------
 
@@ -434,7 +454,7 @@ CREATE TABLE `user_notification` (
   `notification_datetime` datetime NOT NULL,
   PRIMARY KEY  (`user_notification_id`),
   KEY `user_id` (`user_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=28 ;
+) ENGINE=InnoDB AUTO_INCREMENT=4 ;
 
 -- --------------------------------------------------------
 
@@ -453,7 +473,7 @@ CREATE TABLE `user_online` (
   PRIMARY KEY  (`user_online_id`),
   KEY `user_id` (`user_id`),
   KEY `client_ip` (`client_ip`)
-) ENGINE=MEMORY DEFAULT CHARSET=latin1 AUTO_INCREMENT=10 ;
+) ENGINE=MEMORY AUTO_INCREMENT=10 ;
 
 -- --------------------------------------------------------
 
@@ -476,7 +496,7 @@ CREATE TABLE `user_pet` (
   PRIMARY KEY  (`user_pet_id`),
   KEY `user_id` (`user_id`),
   KEY `pet_specie_id` (`pet_specie_id`,`pet_specie_color_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='Pets = specie + user + color.' AUTO_INCREMENT=2 ;
+) ENGINE=InnoDB COMMENT='Pets = specie + user + color.' AUTO_INCREMENT=2 ;
 
 -- --------------------------------------------------------
 
@@ -491,4 +511,4 @@ CREATE TABLE `user_staff_group` (
   `staff_group_id` int(11) NOT NULL,
   PRIMARY KEY  (`user_staff_group_id`),
   UNIQUE KEY `user_id` (`user_id`,`staff_group_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;
+) ENGINE=InnoDB AUTO_INCREMENT=9 ;</diff>
      <filename>db/mysql4_ddl.sql</filename>
    </modified>
    <modified>
      <diff>@@ -36,6 +36,7 @@ CREATE TABLE `avatar` (
 DROP TABLE IF EXISTS `board`;
 CREATE TABLE `board` (
   `board_id` smallint(3) NOT NULL auto_increment,
+  `board_category_id` int(11) NOT NULL,
   `board_name` varchar(100) NOT NULL,
   `board_descr` varchar(255) NOT NULL,
   `board_locked` enum('N','Y') NOT NULL default 'N',
@@ -43,6 +44,21 @@ CREATE TABLE `board` (
   `required_permission_id` int(11) NOT NULL,
   `order_by` tinyint(2) NOT NULL,
   PRIMARY KEY  (`board_id`),
+  KEY `required_permission_id` (`required_permission_id`),
+  KEY `board_category_id` (`board_category_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+
+--
+-- Table structure for table `board_category`
+--
+
+DROP TABLE IF EXISTS `board_category`;
+CREATE TABLE `board_category` (
+  `board_category_id` int(11) NOT NULL auto_increment,
+  `category_name` varchar(50) NOT NULL,
+  `order_by` tinyint(4) NOT NULL default '0',
+  `required_permission_id` int(11) NOT NULL,
+  PRIMARY KEY  (`board_category_id`),
   KEY `required_permission_id` (`required_permission_id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 
@@ -118,6 +134,7 @@ CREATE TABLE `item_class` (
   `class_descr` varchar(30) NOT NULL,
   `relative_image_dir` varchar(50) NOT NULL,
   `verb` varchar(30) NOT NULL,
+  `one_per_use` enum('N','Y') NOT NULL default 'N',
   PRIMARY KEY  (`item_class_id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 
@@ -356,6 +373,7 @@ CREATE TABLE `user_item` (
   `user_item_id` int(11) NOT NULL auto_increment,
   `user_id` int(11) NOT NULL,
   `item_type_id` int(11) NOT NULL,
+  `quantity` int(10) unsigned NOT NULL default '1',
   PRIMARY KEY  (`user_item_id`),
   KEY `user_id` (`user_id`),
   KEY `item_type_id` (`item_type_id`)</diff>
      <filename>db/mysql5_ddl.sql</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 #!/bin/bash
-tables=( jump_page item_class item_type pet_specie pet_specie_color cron_tab shop_restock board avatar timezone datetime_format staff_permission staff_group shop pet_specie_pet_specie_color )
+tables=( jump_page item_class item_type pet_specie pet_specie_color cron_tab shop_restock board avatar timezone datetime_format staff_permission staff_group shop pet_specie_pet_specie_color board_category )
 
 if [ &quot;$1&quot; = '' ]
 then</diff>
      <filename>db/refresh_dump.sh</filename>
    </modified>
    <modified>
      <diff>@@ -47,13 +47,13 @@ $MODULES = array(
 // Warnings.
 $WARNING = array(
     'register_globals' =&gt; array(
-                            'value' =&gt; ( ini_get('register_globals') == false ? true : false ),
-                            'help' =&gt; &quot;Register_globals being turned on is considered bad practice. You &lt;em&gt;should&lt;/em&gt; add ini_set('register_globals','Off'); to your Kitto config file after you successfully complete the installation.&quot;,
-                        ),
+        'value' =&gt; ( ini_get('register_globals') == false ? true : false ),
+        'help' =&gt; &quot;Register_globals being turned on is considered bad practice. You &lt;em&gt;should&lt;/em&gt; add ini_set('register_globals','Off'); to your Kitto config file after you successfully complete the installation.&quot;,
+    ),
     'display_errors' =&gt; array(
-                            'value' =&gt; ini_get('display_errors'),
-                            'help' =&gt; &quot;PHP errors will not be sent to the screen - only to an error_log somewhere on your server. This may be a major inconvenience to you as your set Kitto up. If you have problems with a blank white screen, you are probably getting PHP errors, and they are being surpressed. Add ini_set('display_errors','On'); to your Kitto config file to address this.&quot;,
-                        ),
+        'value' =&gt; ini_get('display_errors'),
+        'help' =&gt; &quot;PHP errors will not be sent to the screen - only to an error_log somewhere on your server. This may be a major inconvenience to you as your set Kitto up. If you have problems with a blank white screen, you are probably getting PHP errors, and they are being surpressed. Add ini_set('display_errors','On'); to your Kitto config file to address this.&quot;,
+    ),
 );
 
 $INFO = array(</diff>
      <filename>system_check.php</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>d36207316fc5283a584aca4cc8c43ff7667c22f0</id>
    </parent>
  </parents>
  <author>
    <name>nevans</name>
    <email>nevans</email>
  </author>
  <url>http://github.com/OwlManAtt/kittokittokitto/commit/70259eed6f64cd310609fc0eccf5a73702c7205a</url>
  <id>70259eed6f64cd310609fc0eccf5a73702c7205a</id>
  <committed-date>2007-12-09T15:48:52-08:00</committed-date>
  <authored-date>2007-12-09T15:48:52-08:00</authored-date>
  <message>Art, db, and misc for 1.3.0</message>
  <tree>fad489d26e2f398d7ba73d60adcc9e777b833d2c</tree>
  <committer>
    <name>nevans</name>
    <email>nevans</email>
  </committer>
</commit>
