Impacted versions: 10.0

Steps to reproduce:
- Install a new language
- Open the language and click on "Deactivate"
![image](https://user-images.githubusercontent.com/6352350/33546866-7b2a9412-d8e2-11e7-818e-6a5be3801dc0.png)

You'll now get a traceback:
![image](https://user-images.githubusercontent.com/6352350/33546831-5ec2581e-d8e2-11e7-8887-08c0443bb1d8.png)

The issue is coming from https://github.com/odoo/odoo/blob/ab52c636c34b6f8b472a3b45ee162824de08fca4/odoo/addons/base/res/res_lang.py#L227


Current behavior:
Expected singleton error.

Expected behavior: Language is deactivated.


odoo/addons/base/res/res_lang.py
for lang in self:
            for pattern in lang._disallowed_datetime_patterns:
                if (lang.time_format and pattern in lang.time_format) or \
                        (lang.date_format and pattern in lang.date_format):
                    raise ValidationError(_('Invalid date/time format directive specified. '
                                            'Please refer to the list of allowed directives, '
                                            'displayed when you edit a language.'))
    @api.constrains('grouping')
    def _check_grouping(self):
        warning = _('The Separator Format should be like [,n] where 0 < n :starting from Unit digit. '
                    '-1 will end the separation. e.g. [3,2,-1] will represent 106500 to be 1,06,500;'
                    '[1,2,-1] will represent it to be 106,50,0;[3] will represent it as 106,500. '
                    'Provided as the thousand separator in each case.')
        for lang in self:
            try:
                if not all(isinstance(x, int) for x in json.loads(lang.grouping)):
                    raise ValidationError(warning)
            except Exception:
                raise ValidationError(warning)
    @api.model_cr
    def _register_hook(self):
        
        if not self.search_count([]):
            _logger.error("No language is active.")
    @api.model
    def load_lang(self, lang, lang_name=None):