function clientside_validation($properties)
    {

        // default properties of the client-side validation
        $defaults = array(
            'clientside_disabled'       =>  false,
            'close_tips'                =>  true,
            'disable_upload_validation' =>  false,
            'on_ready'                  =>  false,
            'scroll_to_error'           =>  true,
            'tips_position'             =>  'left',
            'validate_on_the_fly'       =>  false,
            'validate_all'              =>  false,
        );

        // set the default properties for the client-side validation
        if (!isset($this->form_properties['clientside_validation'])) $this->form_properties['clientside_validation'] = $defaults;

        // if client-side validation needs to be disabled
        if ($properties == false) $this->form_properties['clientside_validation']['clientside_disabled'] = true;

        // if custom settings for client-side validation
        elseif (is_array($properties))

            // merge the new settings with the old ones
            $this->form_properties['clientside_validation'] = array_merge($this->form_properties['clientside_validation'], $properties);

    }