foreach my $table ( keys %$data ) {
+ #warn "popuilating $table\n";
+
my $class = "FS::$table";
eval "use $class;";
die $@ if $@;
+ $class->_populate_initial_data(%opt)
+ if $class->can('_populate_initial_data');
+
my @records = @{ $data->{$table} };
foreach my $record ( @records ) {
+
my $args = delete($record->{'_insert_args'}) || [];
my $object = $class->new( $record );
my $error = $object->insert( @$args );
die "error inserting record into $table: $error\n"
if $error;
+
+ #my $pkey = $object->primary_key;
+ #my $pkeyvalue = $object->$pkey();
+ #warn " inserted $pkeyvalue\n";
+
}
}
#tie my %hash, 'Tie::DxHash',
tie my %hash, 'Tie::IxHash',
+ #bootstrap user
+ 'access_user' => [
+ { 'username' => 'fs_bootstrap',
+ '_password' => 'changeme', #will trigger warning if you try to enable
+ 'last' => 'User',
+ 'first' => 'Bootstrap',
+ 'disabled' => 'Y',
+ },
+ ],
+
#superuser group
'access_group' => [
{ 'groupname' => 'Superuser' },
],
+ #reason types
+ 'reason_type' => [],
+
#XXX need default new-style billing events
# #billing events
# 'part_bill_event' => [
#which would only sell regular packages of services. Click on View/Edit
#agent types and Add a new agent type.
'agent_type' => [
- { 'atype' => 'internal' },
+ { 'atype' => 'Internal' },
],
#Allow this agent type to sell the package you created above.
#not yet....
- #)
+ #usage classes
+ 'usage_class' => [],
+
+ #phone types
+ 'phone_type' => [],
+
;
\%hash;
use FS::AccessRight;
use FS::access_right;
- foreach my $rightname ( FS::AccessRight->rights ) {
+ foreach my $rightname ( FS::AccessRight->default_superuser_rights ) {
my $access_right = new FS::access_right {
'righttype' => 'FS::access_group',
'rightobjnum' => 1, #$supergroup->groupnum,
'en_US' => 'Username in use',
},
+ 'phonenum_in_use' => {
+ 'en_US' => 'Phone number in use',
+ },
+
'illegal_email_invoice_address' => {
'en_US' => 'Illegal email invoice address',
},
'en_US' => 'Driver\'s License State',
},
+ 'invalid_domain' => {
+ 'en_US' => 'Invalid domain',
+ },
+
);
}