Hello List,

I don't know why it happens, but sometimes I do have several 
Appointments where the classification differs between the 
vcalendar and quick tables.

This results in a really slow thunderbird startup.

I can use Mirko Stoffers script he posted last year, but I had to
modify it. His original script only corrects private events, but I
needed also confidential events.

Regards
Michael


######################################
#!/bin/bash

# !!!this script might cause DAMAGE to your computer and comes with absolutely 
NO WARRANTY!!!

# this script only work with PostgreSQL

# I commented the line that actually takes action. Uncomment it at your own 
risk!

# http://www.mail-archive.com/users%40sogo.nu/msg07999.html

if [ `whoami` != "postgres" ]
then
  echo "this script should run as database user"
  exit
fi

defaultdatabase=$USER
indextable=sogo_folder_info

read -p "Database ($defaultdatabase): " database

if [ -z "$database" ]
then
  database=$defaultdatabase
fi

tableIds=`psql -t $database -c "select c_folder_id from $indextable where 
c_folder_type = 'Appointment';"`

for tableId in $tableIds
do
        table=`psql -t $database -c "select split_part(c_location, '/', 5) from 
$indextable where c_folder_id='$tableId';"`
        qtable=`psql -t $database -c "select split_part(c_quick_location, '/', 
5) from $indextable where c_folder_id='$tableId';"`
        privateEvents=`psql -t $database -c "select c_name from $table where 
c_content like '%CLASS:PRIVATE%';"`
        for privateEvent in $privateEvents
        do
                echo "psql -t $database -c \"update $qtable set 
c_classification=1 where c_name='$privateEvent';\""
                #res=`psql -t $database -c "update $qtable set 
c_classification=1 where c_name='$privateEvent';"`
                #echo $res
        done
        confidentialEvents=`psql -t $database -c "select c_name from $table 
where c_content like '%CLASS:CONFIDENTIAL%';"`
        for confidentialEvent in $confidentialEvents
        do
                echo "psql -t $database -c \"update $qtable set 
c_classification=2 where c_name='$confidentialEvent';\""
                #res=`psql -t $database -c "update $qtable set 
c_classification=2 where c_name='$confidentialEvent';"`
                #echo $res
        done
done

echo "This was a test run! Uncomment the psql update line in the
script. And comment this line out."
######################################


-- 
----------------------------------------------------------
os-cillation GmbH
----------------------------------------------------------
Softwareentwicklung, Auftragsprogrammierung, IT-Consulting
iPhone/iPad, Linux, Windows, Web, Android, Embedded-System
----------------------------------------------------------
GF: Oliver Schweissgut, Dipl.-Ing. technische Informatik
T: +49 271 31368-0  F: +49 271 31368-18
Hohler Weg 75, 57072 Siegen, Germany
USt-ID: DE276692229, HRB 9478, AG Siegen
---------------------------------------------------------- 
-- 
[email protected]
https://inverse.ca/sogo/lists

Reply via email to