first part of ACL and re-skinning work and some other small stuff
[freeside.git] / FS / FS / Schema.pm
index a049b8b..e811856 100644 (file)
@@ -244,6 +244,8 @@ sub tables_hashref {
 
   my $username_len = 32; #usernamemax config file
 
+    # name type nullability length default local
+
   return {
 
     'agent' => {
@@ -437,6 +439,7 @@ sub tables_hashref {
         'refnum',   'int',  '',     '', '', '', 
         'referral_custnum', 'int',  'NULL', '', '', '', 
         'comments', 'text', 'NULL', '', '', '', 
+        'spool_cdr','char', 'NULL', 1, '', '', 
       ],
       'primary_key' => 'custnum',
       'unique' => [],
@@ -444,6 +447,9 @@ sub tables_hashref {
       'index' => [ ['last'], [ 'company' ], [ 'referral_custnum' ],
                    [ 'daytime' ], [ 'night' ], [ 'fax' ], [ 'refnum' ],
                    [ 'county' ], [ 'state' ], [ 'country' ], [ 'zip' ],
+                   [ 'ship_last' ], [ 'ship_company' ],
+                   [ 'payby' ], [ 'paydate' ],
+
                  ],
     },
 
@@ -1146,7 +1152,8 @@ sub tables_hashref {
         'orig_regionnum',  'int', 'NULL', '', '', '', 
         'dest_regionnum',  'int',     '', '', '', '', 
         'min_included',    'int',     '', '', '', '', 
-        'min_charge',      @money_type, '', '', 
+        #'min_charge',      @money_type, '', '', 
+        'min_charge',      'decimal', '', '10,5', '', '', 
         'sec_granularity', 'int',     '', '', '', '', 
         #time period (link to table of periods)?
       ],
@@ -1416,14 +1423,14 @@ sub tables_hashref {
       'index'       => [],
     },
 
-    #map upstream rateid (XXX or rateplanid?) to ours...
-    'cdr_upstream_rate' => { # XXX or 'cdr_upstream_rateplan' ??
+    #map upstream rateid to ours...
+    'cdr_upstream_rate' => {
       'columns' => [
-        # XXX or 'upstream_rateplanid' ??
-        'upstream_rateid', 'int', 'NULL', '', '', '',
+        'upstreamratenum', 'serial',  '', '', '', '',
+        'upstream_rateid', 'varchar', '', $char_d, '', '', 
         'ratedetailnum',   'int', 'NULL', '', '', '',
       ],
-      'primary_key' => '', #XXX need a primary key
+      'primary_key' => 'upstreamratenum', #XXX need a primary key
       'unique' => [ [ 'upstream_rateid' ] ], #unless we add another field, yeah
       'index'  => [],
     },
@@ -1442,16 +1449,94 @@ sub tables_hashref {
 
     'inventory_class' => {
       'columns' => [
-        'classnum',  'serial',       '', '', '', '',
-        'classname', 'varchar', $char_d, '', '', '',
+        'classnum',  'serial',       '',      '', '', '',
+        'classname', 'varchar',      '', $char_d, '', '',
       ],
       'primary_key' => 'classnum',
       'unique' => [],
       'index'  => [],
     },
 
+    'access_user' => {
+      'columns' => [
+        'usernum',   'serial',  '',      '', '', '',
+        'username',  'varchar', '', $char_d, '', '',
+        '_password', 'varchar', '', $char_d, '', '',
+        'last',      'varchar', '', $char_d, '', '', 
+        'first',     'varchar', '', $char_d, '', '', 
+      ],
+      'primary_key' => 'usernum',
+      'unique' => [ [ 'username' ] ],
+      'index'  => [],
+    },
+
+    'access_user_pref' => {
+      'columns' => [
+        'prefnum',    'serial',       '', '', '', '',
+        'usernum',     'int',       '', '', '', '',
+        'prefname', 'varchar', '', $char_d, '', '', 
+        'prefvalue', 'text', 'NULL', '', '', '', 
+      ],
+      'primary_key' => 'prefnum',
+      'unique' => [],
+      'index'  => [ [ 'usernum' ] ],
+    },
+
+    'access_group' => {
+      'columns' => [
+        'groupnum',   'serial', '',      '', '', '',
+        'groupname', 'varchar', '', $char_d, '', '',
+      ],
+      'primary_key' => 'groupnum',
+      'unique' => [ [ 'groupname' ] ],
+      'index'  => [],
+    },
+
+    'access_usergroup' => {
+      'columns' => [
+        'usergroupnum', 'serial', '', '', '', '',
+        'usernum',         'int', '', '', '', '',
+        'groupnum',        'int', '', '', '', '',
+      ],
+      'primary_key' => 'usergroupnum',
+      'unique' => [ [ 'usernum', 'groupnum' ] ],
+      'index'  => [ [ 'usernum' ] ],
+    },
+
+    'access_groupagent' => {
+      'columns' => [
+        'groupagentnum', 'serial', '', '', '', '',
+        'groupnum',         'int', '', '', '', '',
+        'agentnum',         'int', '', '', '', '',
+      ],
+      'primary_key' => 'groupagentnum',
+      'unique' => [ [ 'groupnum', 'agentnum' ] ],
+      'index'  => [ [ 'groupnum' ] ],
+    },
+
+    'access_right' => {
+      'columns' => [
+        'rightnum',   'serial', '',      '', '', '',
+        'righttype', 'varchar', '', $char_d, '', '',
+        'rightobjnum',   'int', '',      '', '', '',
+        'rightname', 'varchar', '',      '', '', '',
+      ],
+      'primary_key' => 'rightnum',
+      'unique' => [ [ 'righttype', 'rightobjnum', 'rightname' ] ],
+      'index'  => [],
+    },
+
   };
 
+    #'new_table' => {
+    #  'columns' => [
+    #    'num', 'serial',       '', '', '', '',
+    #  ],
+    #  'primary_key' => 'num',
+    #  'unique' => [],
+    #  'index'  => [],
+    #},
+
 }
 
 =back