def UpdateLogic():

    ServerState = serv.server_state()
    ServerState.UpdateState()

    global PrevServerState

    if ServerState.IsDiffState( PrevServerState ) == False:       

        if ServerState.CpuTerm != PrevServerState.CpuTerm:
            if ServerState.CpuTerm == False:
                sc.SetLedColor( sc.LED_UP, sc.color( 222, 222, 0 ) )
                Log( "WARNING cpu term"	)
            else:
                sc.SetLedColor( sc.LED_UP, DefaultColor )
                Log( "OK cpu term"	)
        
        if ServerState.Raid != PrevServerState.Raid:
            if ServerState.Raid == False:
                sc.SetLedColor( sc.LED_ALL, sc.color( 222, 0, 0 ) )
                Log( "WARNING Raid"	)
            else:
                sc.SetLedColor( sc.LED_ALL, DefaultColor )
                Log( "OK Raid"	)
        
        if ServerState.Memory != PrevServerState.Memory:
            if ServerState.Memory == False:
                sc.SetLedColor( sc.LED_DOWN, sc.color( 0, 222, 222 ) )
                Log( "WARNING Memory"	)
            else:
                sc.SetLedColor( sc.LED_DOWN, DefaultColor )
                Log( "OK Memory"	)
        
        if ServerState.HddRaid != PrevServerState.HddRaid:
            if ServerState.HddRaid == False:
                sc.SetLedColor( sc.LED_RIGHT, sc.color( 0, 0, 222 ) )
                Log( "WARNING HddRaid"	)
            else:
                sc.SetLedColor( sc.LED_RIGHT, DefaultColor )
                Log( "OK HddRaid"	)

        if ServerState.HddTorrent != PrevServerState.HddTorrent:
            if ServerState.HddTorrent == False:
                sc.SetLedColor( sc.LED_LEFT, sc.color( 0, 0, 222 ) )
                Log( "WARNING HddTorrent"	)
            else:
                sc.SetLedColor( sc.LED_LEFT, DefaultColor )
                Log( "OK HddTorrent"	)

        if ServerState.HddSystem != PrevServerState.HddSystem:
            if ServerState.HddSystem == False:
                sc.SetLedColor( sc.LED_LEFT, sc.color( 0, 0, 222 ) )
                sc.SetLedColor( sc.LED_RIGHT, sc.color( 0, 0, 222 ) )
                Log( "WARNING HddSystem"	)
            else:
                sc.SetLedColor( sc.LED_LEFT, DefaultColor )
                sc.SetLedColor( sc.LED_RIGHT, DefaultColor )
                Log( "OK HddSystem"	)

    PrevServerState = copy.deepcopy( ServerState )
FanSpeedLo =    [  80, 120, 130, 180, 220 ]
FanSpeedHi =    [ 120, 160, 180, 220, 255 ]
TermSpeedCount = 5

DefaultColor = sc.color( 111, 111, 111 )
temp_add = [0] * 4
fan_power_add = [0] * 4
manual_fan_power_hdd = [0] * 4

   
g_Config = ConfigParser.RawConfigParser 
Log_Path = "/raid/sustem/logs/hid_serv/"
Status_File = "hidserv"

LogicIsChange = 0
PrevServerState = serv.server_state()
#-----------------------------------------------

def ReloadConfig():
    try:         
        g_Config = ConfigParser.RawConfigParser()
        g_Config.read( CONFIG_PATCH )

        global Log_Path
        Log_Path = g_Config.get('main', 'log_path')
        global Status_File
        Status_File = g_Config.get('main', 'status_file')
        
        global DefaultColor
        DefaultColor.R = g_Config.getint('mode_normal_color', 'r')
        DefaultColor.G = g_Config.getint('mode_normal_color', 'g')