6.0.0-git
2024-04-25

Diff for ApplyGlobal between 5 and 6

Below are the steps to copy preferences of one user to all the other

users which are listed in the userlist text file.



1. Create an user account, name it 'publicprofile' and set up the preferences for that account

the way you want all the other accounts to be set up.



2. Create a plain text file containing the list of all the users to which new preferences are to be applied and

name it 'users.txt'



 e.g.

#user.txt contains list of all the user whose preferences are to be changed as per the default profile

user1

user2

user3



3. Copy the script below and save it as 'defaultprofile.sh'



<code type="bash">

#!/usr/bin/ksh



NEW_USERS="/data/users.txt"

cat ${NEW_USERS} | 

while read USER

do

echo "DROP TABLE default_prefs;"

echo "CREATE TABLE default_prefs as SELECT * FROM horde_prefs WHERE

pref_uid='publicprofile';"

echo "UPDATE default_prefs set pref_uid = '$USER';"

echo "DELETE FROM horde_prefs where pref_uid = '$USER';"

echo "INSERT INTO horde_prefs SELECT * FROM default_prefs;"

echo "COMMIT;"

done

</code>



4. run the following command at the shell prompt



{{sh defaultprofile.sh > applypref.sql}}



5. after creating 'applypref.sql' run the following commands at the shell prompt



{{su horde}}

{{psql{{psql -d horde < applypref.sql}}



That will copy all the preferences from default user to the users specified in the list.



Jigish



Plan B is to set the properties in the corresponding prefs.php and that's all.

 [Dilyan Palauzov]