Introduced tt_work_categories table for remote work plugin.
authorNik Okuntseff <support@anuko.com>
Tue, 23 Apr 2019 12:10:36 +0000 (12:10 +0000)
committerNik Okuntseff <support@anuko.com>
Tue, 23 Apr 2019 12:10:36 +0000 (12:10 +0000)
WEB-INF/templates/footer.tpl
dbinstall.php
mysql.sql

index 675f20d..d060170 100644 (file)
@@ -12,7 +12,7 @@
       <br>
       <table cellspacing="0" cellpadding="4" width="100%" border="0">
         <tr>
-          <td align="center">&nbsp;Anuko Time Tracker 1.19.2.4974 | Copyright &copy; <a href="https://www.anuko.com/lp/tt_3.htm" target="_blank">Anuko</a> |
+          <td align="center">&nbsp;Anuko Time Tracker 1.19.3.4975 | Copyright &copy; <a href="https://www.anuko.com/lp/tt_3.htm" target="_blank">Anuko</a> |
             <a href="https://www.anuko.com/lp/tt_4.htm" target="_blank">{$i18n.footer.credits}</a> |
             <a href="https://www.anuko.com/lp/tt_5.htm" target="_blank">{$i18n.footer.license}</a> |
             <a href="https://www.anuko.com/lp/tt_7.htm" target="_blank">{$i18n.footer.improve}</a>
index e979e1b..d318f9b 100644 (file)
@@ -1161,10 +1161,16 @@ if ($_POST) {
     ttExecute("UPDATE `tt_site_config` SET param_value = '1.19.0', modified = now() where param_name = 'version_db' and param_value = '1.18.61'");
   }
 
-  if ($_POST["convert11900to11902"]) {
+  if ($_POST["convert11900to11903"]) {
     ttExecute("CREATE TABLE `tt_work_currencies` (`id` int(10) unsigned NOT NULL,`name` varchar(10) NOT NULL,PRIMARY KEY (`id`))");
     ttExecute("create unique index currency_idx on tt_work_currencies(`name`)");
     ttExecute("INSERT INTO `tt_work_currencies` (`id`, `name`) VALUES ('1', 'USD'), ('2', 'CAD'), ('3', 'AUD'), ('4', 'EUR'), ('5', 'NZD')");
+    ttExecute("CREATE TABLE `tt_work_categories` (`id` int(10) unsigned NOT NULL, `parents` text default NULL, `name` varchar(64) NOT NULL, `name_localized` text default NULL, PRIMARY KEY (`id`))");
+    ttExecute("INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('1', NULL, 'Coding', 'es:Codificación,ru:Кодирование')");
+    ttExecute("INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('2', NULL, 'Other', 'es:Otra,ru:Другое')");
+    ttExecute("INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('3', '1', 'PHP', NULL)");
+    ttExecute("INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('4', '1', 'C/C++', NULL)");
+    ttExecute("UPDATE `tt_site_config` SET param_value = '1.19.3', modified = now() where param_name = 'version_db' and param_value = '1.19.0'");
   }
 
   if ($_POST["cleanup"]) {
@@ -1214,7 +1220,7 @@ if ($_POST) {
 <h2>DB Install</h2>
 <table width="80%" border="1" cellpadding="10" cellspacing="0">
   <tr>
-    <td width="80%"><b>Create database structure (v1.19.2)</b>
+    <td width="80%"><b>Create database structure (v1.19.3)</b>
     <br>(applies only to new installations, do not execute when updating)</br></td><td><input type="submit" name="crstructure" value="Create"></td>
   </tr>
 </table>
@@ -1263,8 +1269,8 @@ if ($_POST) {
     <td><input type="submit" name="convert11797to11900" value="Update"></td>
   </tr>
   <tr valign="top">
-    <td>Update database structure (v1.19 to v1.19.2)</td>
-    <td><input type="submit" name="convert11900to11902" value="Update"></td>
+    <td>Update database structure (v1.19 to v1.19.3)</td>
+    <td><input type="submit" name="convert11900to11903" value="Update"></td>
   </tr>
 </table>
 
index 40065f0..c14045c 100644 (file)
--- a/mysql.sql
+++ b/mysql.sql
@@ -577,22 +577,23 @@ INSERT INTO `tt_work_currencies` (`id`, `name`) VALUES ('1', 'USD'), ('2', 'CAD'
 
 
 #
-# Structure for table tt_work_categories. WORK IN PROGRESS!
+# Structure for table tt_work_categories.
 # This table keeps work categories supported by remote work plugin.
 #
-# CREATE TABLE `tt_work_categories` (
-#  `id` int(10) unsigned NOT NULL,            # category id
-#  `parent_id` int(10) unsigned default NULL, # parent category id
-#  `level` tinyint(4) default 0,              # sub-category level
-#
-#  Localized name fields below for all supported languages?
-#  `name_en` varhar(64) NOT NULL,             # English.
-#  `name_de` varhar(64) default NULL,         # German.
-#  `name_fr` varhar(64) default NULL,         # French.
-#  `name_ru` varhar(64) default NULL,         # Russian.
-#
-# PRIMARY KEY  (`id`)
-# );
+CREATE TABLE `tt_work_categories` (
+  `id` int(10) unsigned NOT NULL,     # Category id.
+  `parents` text default NULL,        # Comma-separated list of parent ids associated with this category.
+  `name` varchar(64) NOT NULL,        # English category name.
+  `name_localized` text default NULL, # Comma-separated list of localized category names in other languages.
+                                      # Example: es:Codificación,ru:Кодирование.
+  PRIMARY KEY  (`id`)
+);
+
+# Insert some default categories. Table content to be updated at run time, though.
+INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('1', NULL, 'Coding', 'es:Codificación,ru:Кодирование');
+INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('2', NULL, 'Other', 'es:Otra,ru:Другое');
+INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('3', '1', 'PHP', NULL);
+INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('4', '1', 'C/C++', NULL);
 
 
 #