OJS OCS OMP OHS

You are viewing the PKP Support Forum | PKP Home Wiki



Mass subscription import for all members of an association

Are you an Editor, Author, or Journal Manager in need of help? Want to talk to us about workflow issues? This is your forum.

Moderators: jmacgreg, michael, vgabler, John

Forum rules
The Public Knowledge Project Support Forum is moving to http://forum.pkp.sfu.ca

This forum will be maintained permanently as an archived historical resource, but all new questions should be added to the new forum. Questions will no longer be monitored on this old forum after March 30, 2015.

Mass subscription import for all members of an association

Postby kellner » Fri Apr 07, 2006 12:25 pm

Hello,

I'm currently looking at various open source journal management systems for migrating a print journal online. The journal is financed by the membership fees of an association, and subscription is tied membership in the association.

I've looked at OJS and find it extremely promising. But if I understand it correctly, every subscriber has to be entered manually. Is there some way, a plugin perhaps, that would allow to mass-import subscribed users?

I can see that it would be quite easy to convert our user data to import the several hundred records into the table "subscriptions" via SQL statements, but we would also need to create the subscribers as users in the same way (perhaps with a dummy password - but perhaps password encryption would be a problem for automagical user creation). Before I play around with our table structure to adjust it to OJS - is this at all feasible in OJS?

Thanks in advance,

Birgit Kellner
kellner
 
Posts: 39
Joined: Fri Apr 07, 2006 12:11 pm

Postby asmecher » Fri Apr 07, 2006 12:45 pm

Hi Birgit,

We'll definitely be adding subscription import/export functionality in a future release; in the meantime, feeding this data directly into the database is probably the best approach. For each user, you'll need to add the following:
  • An entry in the users table
  • An entry in the roles table marking the user as a reader (role ID 1048576)
  • An entry in the subscriptions table
To generate a password, you can use MySQL's hashing functions. If you've configured OJS to use MD5 hashing in config.inc.php, for example, you can insert a user with a generated password like this:
Code: Select all
INSERT INTO users (username, first_name, last_name, email, password, date_registered, date_last_login) VALUES ('my_username', 'John', 'Doe', 'john@johndoe.com', MD5(CONCAT('my_username', 'my_password')), now(), now());
Regards,
Alec Smecher
Open Journal Systems Team
asmecher
 
Posts: 10015
Joined: Wed Aug 10, 2005 12:56 pm

Postby kellner » Fri Apr 07, 2006 4:19 pm

Thank you! This sounds very good.

I've configured OJS with SHA1 encryption, but since the install is still empty, I can reinstall with MD5 if SQL imports with passwords only work with MD5.
kellner
 
Posts: 39
Joined: Fri Apr 07, 2006 12:11 pm

Postby asmecher » Sat Apr 08, 2006 1:40 pm

Hi Kellner,

No need, if your MySQL database supports the sha1 function -- just use it in place of the md5 function in the above SQL.

Regards,
Alec Smecher
Open Journal Systems Team
asmecher
 
Posts: 10015
Joined: Wed Aug 10, 2005 12:56 pm

Postby kellner » Sun Apr 09, 2006 1:42 am

Thank you!

Coincidentally: I was experimenting with user import via a user.dtd-based XML file, and noticed that the import function automatically puts the user name in lower case even if it actually begins with capitals. Bug or feature?
kellner
 
Posts: 39
Joined: Fri Apr 07, 2006 12:11 pm

Postby asmecher » Mon Apr 10, 2006 9:28 am

Hi kellner,

Usernames are automatically converted to lower case by the registration form and the user import plugin; this is a convention used to avoid ambiguities where users share the same username with different capitalizations.

Regards,
Alec Smecher
Open Journal Systems Team
asmecher
 
Posts: 10015
Joined: Wed Aug 10, 2005 12:56 pm


Return to OJS Editorial Support and Discussion

Who is online

Users browsing this forum: Yahoo [Bot] and 3 guests