refactoring & fix 3174.1

git-svn-id: http://farmanager.com/svn/trunk@9629 72235d2c-c60c-0410-a47a-a0032694dc5d
cleanup

git-svn-id: http://farmanager.com/svn/trunk@9631 72235d2c-c60c-0410-a47a-a0032694dc5d