#!/bin/sh

PREREQ=""
DESCRIPTION="Configuring accessibility options..."

. /scripts/functions

prereqs()
{
       echo "$PREREQ"
}

case $1 in
# get pre-requisites
prereqs)
       prereqs
       exit 0
       ;;
esac

log_begin_msg "$DESCRIPTION"

gct() {
    chroot /root su $USERNAME -- gconftool-2 "$@"
}

for x in $(cat /proc/cmdline); do
                case $x in
                        # Lesser Visual Impairment
                        access=v1)
                        gct -s -t string /desktop/gnome/interface/gtk_theme HighContrastLargePrint
                        gct -s -t string /desktop/gnome/interface/icon_theme HighContrast
                        gct -s -t string /desktop/gnome/interface/monospace_font_name "monospace 18"
                        gct -s -t string /desktop/gnome/interface/font_name "sans 18"
                        gct -s -t string /apps/metacity/general/theme Atlanta
                        gct -s -t string /desktop/gnome/background/picture_filename ""
                        gct -s -t string /desktop/gnome/background/picture_options none
                        gct "-s -t string /desktop/gnome/background/primary_color \#666666"
                        gct "-s -t string /desktop/gnome/background/secondary_color \#7F7F7F"
                        gct -s -t string /desktop/gnome/background/color_shading_type solid
                        gct -s -t int /desktop/gnome/peripherals/mouse/cursor_size 48
                        gct -s -t string /desktop/gnome/peripherals/mouse/cursor_theme whiteglass
                        ;;
                        # Moderate Visual Impairment
                        access=v2)
                        gct -s -t bool /desktop/gnome/interface/accessibility true
                        gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [gnopernicus]
                        gct -s -t bool /apps/gnopernicus/srcore/mag_active true
                        gct -s -t bool /apps/gnopernicus/srcore/sp_active false
                        ;;
                        # Blindness
                        access=v3)
                        gct -s -t bool /desktop/gnome/sound/enable_esd false
                        gct -s -t bool /desktop/gnome/interface/accessibility true
                        gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [gnopernicus]
                        gct -s -t bool /apps/gnopernicus/srcore/sp_active true
                        gct -s -t bool /apps/gnopernicus/srcore/mag_active false
                        ;;
                        # Minor Motor Difficulties
                        access=m1)
                        gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
                        gct -s -t bool /desktop/gnome/accessibility/keyboard/mousekeys_enable true
                        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
                        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep true
                        gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
                        gct -s -t bool /desktop/gnome/peripherals/keyboard/repeat true
                        gct -s -t int /desktop/gnome/peripherals/keyboard/delay 700
                        gct -s -t int /desktop/gnome/peripherals/keyboard/rate 10
                        ;;
                        # Motor Difficulties - pointing devices
                        access=m2)
                        gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
                        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
                        gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep false
                        gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
                        gct -s -t bool /desktop/gnome/interface/accessibility true
                        gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats gok
                        ;;
		esac
done
log_end_msg
