[ic] Setting price_level in userdb

Jamie Neil interchange-users@icdevgroup.org
Thu May 22 12:20:01 2003


Short of resorting to the data tag, can anyone tell me how to set the
price_level field in UserDB when I create a new user?

I've tried creating a value called price_level before I call userdb with the
new_account method, but although this works for username, fname, lname etc.
I can't get it to work for price_level. I've also tried using save and
set_preferences, with a value and scratch value, but nothing seems to work.
Here some context:

if ( !$failed ) {
        $Tag->value( { name => email, set => $email, hide => 1 } );
        $Tag->value( { name => fname, set => $fname, hide => 1 } );
        $Tag->value( { name => lname, set => $lname, hide => 1 } );
        $Tag->value( { name => price_level, set => "stgc_member", hide =>
1 } );
        if ( $Tag->userdb ( {
                function => new_account,
                assign_username => 1,
                password => $password,
                verify => $password,
                profile => stgc,
        } ) ) {
                Log("INFO, member added: username=$Session->{username};
memberid=$memberid");
                return "OK\n";
        }
        else {
                Log("ERROR, failed to add member to database:
memberid=$memberid");
                return "ERROR, failed to add user to database\n";
        }
}

The custom profile "stgc" is in catalog.cfg and I have tried it with and
without the "scratch price_level" directive.

I've now run out of ideas :(

Thanks,

Jamie Neil
Versado I.T. Services Ltd.