invoice template and config localization, #12367
[freeside.git] / FS / FS / Schema.pm
index 9cf644b..b36205c 100644 (file)
@@ -117,6 +117,7 @@ sub dbdef_dist {
     #false laziness w/sub indices in DBIx::DBSchema::DBD (well, sorta)
     #and sub sql_create_table in DBIx::DBSchema::Table (slighty more?)
     my $unique = $tables_hashref->{$tablename}{'unique'};
+    warn "missing index for $tablename\n" unless defined $tables_hashref->{$tablename}{'index'};
     my @index  = @{ $tables_hashref->{$tablename}{'index'} };
 
     # kludge to avoid avoid "BLOB/TEXT column 'statustext' used in key
@@ -700,6 +701,7 @@ sub tables_hashref {
         'duration', 'int', 'NULL', '',  0, '',
         'phonenum', 'varchar', 'NULL', 15, '', '',
         'accountcode', 'varchar',  'NULL',      20, '', '',
+        'startdate',  @date_type, '', '', 
         'regionname', 'varchar', 'NULL', $char_d, '', '',
         'detail',  'varchar', '', 255, '', '', 
       ],
@@ -817,7 +819,7 @@ sub tables_hashref {
         'classnum', 'int', 'NULL', '', '', '',
         'custbatch', 'varchar', 'NULL', $char_d, '', '',
 #        'titlenum', 'int',  'NULL',   '', '', '', 
-        'last',     'varchar', '',     $char_d, '', '', 
+        'last',     'varchar', '',   2*$char_d, '', '', 
 #        'middle',   'varchar', 'NULL', $char_d, '', '', 
         'first',    'varchar', '',     $char_d, '', '', 
         'ss',       'varchar', 'NULL', 11, '', '', 
@@ -837,7 +839,7 @@ sub tables_hashref {
         'daytime',  'varchar', 'NULL', 20, '', '', 
         'night',    'varchar', 'NULL', 20, '', '', 
         'fax',      'varchar', 'NULL', 12, '', '', 
-        'ship_last',     'varchar', 'NULL', $char_d, '', '', 
+        'ship_last',     'varchar', 'NULL', 2*$char_d, '', '', 
 #        'ship_middle',   'varchar', 'NULL', $char_d, '', '', 
         'ship_first',    'varchar', 'NULL', $char_d, '', '', 
         'ship_company',  'varchar', 'NULL', $char_d, '', '', 
@@ -860,7 +862,7 @@ sub tables_hashref {
         'paystart_month', 'int', 'NULL', '', '', '', 
         'paystart_year',  'int', 'NULL', '', '', '', 
         'payissue', 'varchar', 'NULL', 2, '', '', 
-        'payname',  'varchar', 'NULL', $char_d, '', '', 
+        'payname',  'varchar', 'NULL', 2*$char_d, '', '', 
         'paystate', 'varchar', 'NULL', $char_d, '', '', 
         'paytype',  'varchar', 'NULL', $char_d, '', '', 
         'payip',    'varchar', 'NULL', 15, '', '', 
@@ -882,6 +884,7 @@ sub tables_hashref {
         'accountcode_cdr', 'char', 'NULL', 1, '', '',
         'billday',   'int', 'NULL', '', '', '',
         'edit_subject', 'char', 'NULL', 1, '', '',
+        'locale', 'varchar', 'NULL', 16, '', '', 
       ],
       'primary_key' => 'custnum',
       'unique' => [ [ 'agentnum', 'agent_custid' ] ],
@@ -1617,7 +1620,7 @@ sub tables_hashref {
       'columns' => [
         'pkgpart',       'serial',    '',   '', '', '', 
         'pkg',           'varchar',   '',   $char_d, '', '', 
-        'comment',       'varchar',   '',   $char_d, '', '', 
+        'comment',       'varchar',   '', 2*$char_d, '', '', 
         'promo_code',    'varchar', 'NULL', $char_d, '', '', 
         'setup',         @perl_type, '', '', 
         'freq',          'varchar',   '',   $char_d, '', '', #billing frequency
@@ -1863,7 +1866,7 @@ sub tables_hashref {
         'popnum',    'int',    'NULL',   '', '', '', 
         'uid',       'int', 'NULL',   '', '', '', 
         'gid',       'int', 'NULL',   '', '', '', 
-        'finger',    'varchar',   'NULL',   $char_d, '', '', 
+        'finger',    'varchar',   'NULL',   2*$char_d, '', '', 
         'dir',       'varchar',   'NULL',   $char_d, '', '', 
         'shell',     'varchar',   'NULL',   $char_d, '', '', 
         'quota',     'varchar',   'NULL',   $char_d, '', '', 
@@ -2762,7 +2765,7 @@ sub tables_hashref {
       ],
       'primary_key' => 'bannum',
       'unique'      => [],
-      'index '      => [ [ 'payby', 'payinfo' ], [ 'usernum' ], ],
+      'index      => [ [ 'payby', 'payinfo' ], [ 'usernum' ], ],
     },
 
     'pkg_category' => {
@@ -3263,13 +3266,14 @@ sub tables_hashref {
 
     'conf' => {
       'columns' => [
-        'confnum',  'serial',  '', '', '', '', 
-        'agentnum', 'int',  'NULL', '', '', '', 
-        'name',     'varchar', '', $char_d, '', '', 
-        'value',    'text', 'NULL', '', '', '',
+        'confnum',  'serial',     '',      '', '', '', 
+        'agentnum', 'int',    'NULL',      '', '', '', 
+        'locale',   'varchar','NULL',      16, '', '',
+        'name',     'varchar',    '', $char_d, '', '', 
+        'value',    'text',   'NULL',      '', '', '',
       ],
       'primary_key' => 'confnum',
-      'unique' => [ [ 'agentnum', 'name' ]],
+      'unique' => [ [ 'agentnum', 'locale', 'name' ] ],
       'index' => [],
     },
 
@@ -3338,13 +3342,14 @@ sub tables_hashref {
 
     'bill_batch' => {
       'columns' => [
-        'batchnum',         'serial',     '', '', '', '',
-        'status',             'char', 'NULL','1', '', '',
-        'pdf',                'blob', 'NULL', '', '', '',
+        'batchnum',         'serial',     '',  '', '', '',
+        'agentnum',            'int', 'NULL',  '', '', '',
+        'status',             'char', 'NULL', '1', '', '',
+        'pdf',                'blob', 'NULL',  '', '', '',
       ],
       'primary_key' => 'batchnum',
       'unique'      => [],
-      'index'       => [],
+      'index'       => [ ['agentnum'] ],
     },
 
     'cust_bill_batch' => {
@@ -3383,8 +3388,21 @@ sub tables_hashref {
         'bcc_addr',  'varchar', 'NULL',     255, '', '',
       ],
       'primary_key' => 'msgnum',
-      'unique'      => [ ['msgname', 'mime_type'] ],
-      'index'       => [ ['agentnum'], ]
+      'unique'      => [ ],
+      'index'       => [ ['agentnum'], ],
+    },
+
+    'template_content' => {
+      'columns' => [
+        'contentnum', 'serial',     '',      '', '', '',
+        'msgnum',        'int',     '',      '', '', '',
+        'locale',    'varchar', 'NULL',      16, '', '',
+        'subject',   'varchar', 'NULL',     512, '', '',
+        'body',         'text', 'NULL',      '', '', '',
+      ],
+      'primary_key' => 'contentnum',
+      'unique'      => [ ['msgnum', 'locale'] ],
+      'index'       => [ ],
     },
 
     'cust_msg' => {